Skip to content

Enable the flow of NoWarns to inner build #3903

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
mthalman opened this issue Jan 5, 2024 · 4 comments
Closed

Enable the flow of NoWarns to inner build #3903

mthalman opened this issue Jan 5, 2024 · 4 comments
Labels
area-infra Source-build infrastructure and reporting

Comments

@mthalman
Copy link
Member

mthalman commented Jan 5, 2024

There can often be cases where Roslyn analyzer warnings (which typically get treated as errors) show up in the stage 2 build of source build. This is because the stage 2 build makes use of the most recent SDK to build the repos and those repos can have source which isn't compliant with new analyzers included in that SDK.

To unblock the build, it was often useful to simply add a NoWarn entry for the specific analyzer type. (It's up to the underlying repo to fix the issue and these analyzer issues shouldn't block a build of the VMR.) But the ability to set a NoWarn entry for a repo was removed as part of the changes in dotnet/installer#17712.

In the absence of ignoring the error, the only resolution is to apply the fix. Some fixes for analyzer issues can be quite extensive in some cases; others can be simple. The most expedient way to unblock the VMR build is to create a patch. But depending on the changes involved, this may not be a great solution. As we got closer to a release cutoff date, there's a need to have a quick turnaround to resolve these issues. Therefore, we should reconsider having a mechanism that allows us to flow NoWarn entries to the inner build of repos.

@ghost ghost added area-build Improvements in source-build's own build process untriaged labels Jan 5, 2024
@ViktorHofer
Copy link
Member

With the unified build, won't this issue go away as we can make the fix or set the NoWarn directly in that repo folder and that change would then automatically flow back into the repo?

@mthalman
Copy link
Member Author

mthalman commented Jan 8, 2024

With the unified build, won't this issue go away as we can make the fix or set the NoWarn directly in that repo folder and that change would then automatically flow back into the repo?

Yes, that's exactly why I originally didn't bother writing this issue. But after a conversation with @MichaelSimons we determined it would be worthwhile to have something at least written up. There may be a need to modify the plan that would enable backflow support based on schedule/resource constraints.

@MichaelSimons MichaelSimons added area-infra Source-build infrastructure and reporting and removed area-build Improvements in source-build's own build process labels Jan 11, 2024
@MichaelSimons MichaelSimons moved this from Backlog to 9.0 in .NET Source Build Jan 11, 2024
@MichaelSimons
Copy link
Member

[Triage] If the Unified Build is not shipped in 9.0, we may consider adding this infra back as it is a convenient way to address new compiler warnings from building with the latest SDK until the product team updates the code. The alternative is for the SB team to add a patch which is more difficult to maintain.

@MichaelSimons MichaelSimons moved this from 9.0 to 10.0 in .NET Source Build Jul 2, 2024
@MichaelSimons MichaelSimons moved this from 10.0 to 10 Candidate in .NET Source Build Feb 6, 2025
@MichaelSimons
Copy link
Member

[Triage] Closing as this is no longer relevant because of the following:

  1. Addition of Stage 2 legs in PR validation has eliminated the need to suppress new compiler warnings as they are surfaced before checkin.
  2. The long term plan is to remove the generic NoWarn infra. With the UB work, nowarns can be added directly to the affected projects.
  3. There is a plan to remove the inner builds all together.

@github-project-automation github-project-automation bot moved this from 10 Candidate to Done in .NET Source Build Mar 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-infra Source-build infrastructure and reporting
Projects
Archived in project
Development

No branches or pull requests

3 participants