Ship the MSBuild task-authoring analyzers
- Dominant language
- C#
- Stars
- 5.5k
- Forks
- 1.5k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 141
Description
The MT task analyzer (which validates that multi-threaded tasks follow correct patterns like using `AbsolutePath` instead of `Path.GetFullPath`, avoiding static state, etc.) currently exists in the MSBuild repo but is not published as a consumable NuGet package. External teams (e.g., SDK) cannot easily use it to validate their task migrations.
## Steps
- [x] Publish to the internal feed as a NuGet package for early adopters [size XS]
- [x] [#14990](https://github.com/dotnet/msbuild/issues/14990) [#14991](https://github.com/dotnet/msbuild/issues/14991) [#14971](https://github.com/dotnet/msbuild/issues/14971) [#14979](https://github.com/dotnet/msbuild/issues/14979) Settle diagnostic scope, clear false positives, update msbuild docs [size L]
- [ ] Adopt in MSBuild, VMR and Arcade, improving detections from what real usage surfaces [size M]
- [ ] Ship publicly with `Microsoft.Build.Framework` [size XS] [Milestone: version 18.12]
## Stakeholders
Task authors in dotnet/sdk, dotnet/nuget, dotnet/roslyn, dotnet/arcade and the VMR, plus task authors referencing latest `Microsoft.Build.Framework`.
## Definition of done
A task author referencing `Microsoft.Build.Framework` gets the analyzer automatically, with a default scope that raises no new build-breaking diagnostics on non-MT tasks, documented configuration to opt in to full migration analysis, no known P1 false positives, and VMR and Arcade building against it.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.