Skip to content

Resolve analyzers from the analyzers group in project.assets.json - #54646

Open
martinrrm wants to merge 4 commits into
mainfrom
mruizmares-analyzer-assets
Open

Resolve analyzers from the analyzers group in project.assets.json#54646
martinrrm wants to merge 4 commits into
mainfrom
mruizmares-analyzer-assets

Conversation

@martinrrm

@martinrrm martinrrm commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Summary

This is the SDK (build) half of the "indicate analyzer assets in project.assets.json" feature (spec: NuGet/Home#14455). It teaches ResolvePackageAssets to consume the new analyzers group that NuGet restore writes into project.assets.json, instead of scanning every file under analyzers/ in each package.

What changes

When restore has recorded RestoreEnableAnalyzerAssets in the assets file (opt-in, gated to .NET 11+ on the restore side), ResolvePackageAssets now:

  • Reads analyzers from the analyzers group in each package's target rather than scanning library.Files. The group already has PrivateAssets / ExcludeAssets / IncludeAssets applied by restore.
  • Selects by metadata instead of parsing paths:
    • codeLanguage must match the project language, or be language-agnostic (any);
    • among compiler-version-specific analyzers the highest applicable compilerApiVersion wins; if the project's compiler version is unknown, every variant is treated as version-agnostic.
  • Honors the restore decision, not the raw MSBuild property. The decision reads RestoreMetadata.RestoreEnableAnalyzerAssets persisted in the assets file, because the .NET 11 TFM gate lives in NuGet's targets (not imported at build). When the feature is enabled but a package has no analyzers group, the SDK does not fall back to legacy scanning.
  • Preserves legacy behavior when the feature is off (the default): the existing path-based AnalyzerResolver scanning is used unchanged.
  • Emits Low-importance diagnostics for each analyzer included/excluded and why, visible at -v detailed, matching the selection-tracing style used elsewhere in these tasks.

Comment thread src/Tasks/Microsoft.NET.Build.Tasks/ResolvePackageAssets.cs Outdated
@martinrrm
martinrrm force-pushed the mruizmares-analyzer-assets branch 2 times, most recently from aa965e8 to 5b831f4 Compare July 23, 2026 18:28
@martinrrm
martinrrm marked this pull request as ready for review August 5, 2026 18:17
@martinrrm
martinrrm requested a review from a team as a code owner August 5, 2026 18:17
Copilot AI review requested due to automatic review settings August 5, 2026 18:17
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
2 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the SDK’s ResolvePackageAssets task to resolve analyzers using the new analyzers group in project.assets.json (when restore has opted in via persisted restore metadata), avoiding legacy package-file scanning and applying analyzer selection based on language and compiler API version metadata.

Changes:

  • Switched analyzer resolution to prefer lock-file analyzers group assets when RestoreEnableAnalyzerAssets is persisted by restore; otherwise preserved legacy scanning.
  • Added/expanded unit tests for language + compiler-version analyzer selection semantics and multi-targeting behavior.
  • Extended dotnet build integration coverage to validate both legacy and new analyzer-resolution modes.
Show a summary per file
File Description
test/Microsoft.NET.Build.Tasks.Tests/GivenAResolvePackageAssetsTask.cs Adds unit tests covering analyzer-group selection (language, compiler version, placeholders, multi-targeting) and feature-flag behaviors.
test/dotnet.Tests/CommandTests/Build/GivenDotnetBuildBuildsCsproj.cs Extends integration test matrix to run with analyzer-assets enabled/disabled and validates restore emitted expected assets-file shape.
src/Tasks/Microsoft.NET.Build.Tasks/ResolvePackageAssets.cs Implements analyzer resolution from the lock-file analyzers group (when enabled) and adds metadata-based language/compiler-version selection.

Copilot's findings

  • Files reviewed: 3/3 changed files
  • Comments generated: 2

Comment thread src/Tasks/Microsoft.NET.Build.Tasks/ResolvePackageAssets.cs
Comment thread test/dotnet.Tests/CommandTests/Build/GivenDotnetBuildBuildsCsproj.cs Outdated
baronfel added a commit to dotnet/core that referenced this pull request Aug 6, 2026
- Clarify analyzer assets section: link asset-control docs, note the
  SDK-side consumer (dotnet/sdk#54646) hasn't landed yet, reframe the
  call-to-action toward analyzer package authors.
- Rewrite the multithreaded MSBuild restore section to reference SDK
  10.0.300 instead of an MSBuild version number, clarify default/GA is
  still a future release, simplify the migration description, and
  compress the NuGetProcessState detail into a plugin-author note.
- Correct the Pack section to describe the revert/re-implementation
  history (#7541 -> #7593 revert -> #7603 fix) and add qualitative
  impact language.
- Remove leftover internal audit HTML comments.
- Remove the Community contributors section (OvesN is an MSBuild team
  member, not an external contributor).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167
baronfel added a commit to dotnet/core that referenced this pull request Aug 6, 2026
* [release-notes] NuGet in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Address review feedback on NuGet Preview 7 release notes

- Clarify analyzer assets section: link asset-control docs, note the
  SDK-side consumer (dotnet/sdk#54646) hasn't landed yet, reframe the
  call-to-action toward analyzer package authors.
- Rewrite the multithreaded MSBuild restore section to reference SDK
  10.0.300 instead of an MSBuild version number, clarify default/GA is
  still a future release, simplify the migration description, and
  compress the NuGetProcessState detail into a plugin-author note.
- Correct the Pack section to describe the revert/re-implementation
  history (#7541 -> #7593 revert -> #7603 fix) and add qualitative
  impact language.
- Remove leftover internal audit HTML comments.
- Remove the Community contributors section (OvesN is an MSBuild team
  member, not an external contributor).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

* Remove Visual Studio section from NuGet Preview 7 release notes

Removes the Fix Vulnerabilities with GitHub Copilot Error List bullet
and its TOC entry, per feedback that this doc should stay focused on
dotnet CLI/MSBuild/tooling-related NuGet changes, and the VS version
this feature ships in is not yet confirmed.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

* Add NU5052 pack warning note for non-restricted package IDs

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Chet Husk <chusk3@gmail.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167
@martinrrm
martinrrm requested a review from kartheekp-ms August 10, 2026 18:05
danroth27 added a commit to dotnet/core that referenced this pull request Aug 11, 2026
* [release-notes] .NET 11 Preview 7 base metadata

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] Entity Framework Core in .NET 11 Preview 7 (#10506)

Co-authored-by: AndriySvyryd <6539701+AndriySvyryd@users.noreply.github.com>

* [release-notes] WPF in .NET 11 Preview 7 (#10514)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] F# in .NET 11 Preview 7 (#10507)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] MSBuild in .NET 11 Preview 7 (#10509)

* [release-notes] MSBuild in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Address PR review feedback on MSBuild Preview 7 notes

- Reframe MT mode wording to state MSBuild Server as a prerequisite
  instead of using 'auto-engaged'.
- Fix TaskEnvironment constructor sample to use the documented
  TaskEnvironment.Fallback pattern instead of a null-dereferencing path.
- Add warning that tasks moving exclusively to constructor-injected
  TaskEnvironment are unusable on older MSBuild hosts.
- Move task-host environment-delta detail into its own section with
  concrete IPC payload benchmarks from an OrchardCore build.
- Replace 'change wave 18.10' phrasing with '.NET 11' framing for the
  evaluation short-circuit story.
- Remove the reverted 'Restore skips a redundant evaluation' section.
- Note the expected future dotnet CLI trim/AOT use of evaluation and
  link the draft SDK PR.
- Remove internal verification/filtered-feature HTML comments.
- Add a performance paragraph to Multithreaded mode progress citing
  verified last-week dashboard numbers for OrchardCore rebuild with
  -mt (26% faster on Windows, 23% faster on Linux).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c4a002ba-a6e0-4140-890a-a441743a8c43

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Chet Husk <chusk3@gmail.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5
Copilot-Session: c4a002ba-a6e0-4140-890a-a441743a8c43

* [release-notes] SDK in .NET 11 Preview 7 (#10512)

* [release-notes] SDK in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Address review feedback and reorganize sdk.md by command

- Add shipped MAUI device deployment workflow (dotnet/sdk#55260) to
  dotnet test MAUI section: device selection before build, RID
  participation, DeployToDevice before ComputeRunArguments, and
  consistent project/solution/multi-target behavior
- Correct file-based apps introduction to .NET 10 (not earlier previews)
- Reframe virtual-project cache fix (dotnet/sdk#54958) around preventing
  intermittent "project file could not be loaded" failures
- Add concrete example for dotnet test --list-tests json
- Add actionable callout for NoBuild=true/BuildProjectReferences=false
  breaking change
- Trim dotnet/templating repo merge to a brief mention
- Address inline review comments: drop crash-cause detail, split tool
  packaging RID extensibility as its own SDK Tools feature, cite
  NativeAOT CLI startup wins from shipped PRs, note MSBuild
  partial-evaluation speeds up CLI hot paths, use ".NET tools" instead
  of "global tools", enumerate AOT command surface, link to MSBuild
  release notes, focus MSBuild server wording on warm-process reuse
- Reorganize top-level sections by command: group all four dotnet test
  sections contiguously, followed by file-based apps, container
  publishing, and tool packaging; update TOC to match

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 20da5e7c-c15a-4782-8134-546ed6dcced3

* Address Amaury's review feedback on dotnet test reporter section

- Promote artifact consolidation (dotnet/sdk#55453) to a first-class
  bullet describing the default multi-module MTP behavior change, with
  --no-artifact-post-processing (dotnet/sdk#55493) as the opt-out detail
  instead of leading with only the opt-out.
- Add missing bullet for large failing-host output truncation in
  dotnet test summaries (dotnet/sdk#55300).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 20da5e7c-c15a-4782-8134-546ed6dcced3

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Chet Husk <chusk3@gmail.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5
Copilot-Session: 20da5e7c-c15a-4782-8134-546ed6dcced3

* [release-notes] NuGet in .NET 11 Preview 7 (#10510)

* [release-notes] NuGet in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Address review feedback on NuGet Preview 7 release notes

- Clarify analyzer assets section: link asset-control docs, note the
  SDK-side consumer (dotnet/sdk#54646) hasn't landed yet, reframe the
  call-to-action toward analyzer package authors.
- Rewrite the multithreaded MSBuild restore section to reference SDK
  10.0.300 instead of an MSBuild version number, clarify default/GA is
  still a future release, simplify the migration description, and
  compress the NuGetProcessState detail into a plugin-author note.
- Correct the Pack section to describe the revert/re-implementation
  history (#7541 -> #7593 revert -> #7603 fix) and add qualitative
  impact language.
- Remove leftover internal audit HTML comments.
- Remove the Community contributors section (OvesN is an MSBuild team
  member, not an external contributor).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

* Remove Visual Studio section from NuGet Preview 7 release notes

Removes the Fix Vulnerabilities with GitHub Copilot Error List bullet
and its TOC entry, per feedback that this doc should stay focused on
dotnet CLI/MSBuild/tooling-related NuGet changes, and the VS version
this feature ships in is not yet confirmed.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

* Add NU5052 pack warning note for non-restricted package IDs

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Chet Husk <chusk3@gmail.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167

* [release-notes] ASP.NET Core in .NET 11 Preview 7 (#10502)

* [release-notes] C# in .NET 11 Preview 7 (#10504)

* [release-notes] C# in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* General edit pass

Clean up some syntax and explanations.

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Bill Wagner <wiwagn@microsoft.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] Runtime in .NET 11 Preview 7 (#10511)

* [release-notes] Runtime in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] Libraries in .NET 11 Preview 7 (#10508)

* [release-notes] Libraries in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Fix decimal example comments

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Correct connection eviction example

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Fix SHA3 and SM4 example

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Make DNS example report empty results

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Fix closed hierarchy JSON example

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Complete assembly location example

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Add EmptyServiceProvider example imports

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Address remaining review feedback

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Add ZIP incorrect password example

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: be1dc3bd-37d0-49ad-b7b9-1770f515f3dc

* Document additional Preview 7 library APIs

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6b319915-c921-49f7-a574-01e289c1d952

* Refine decimal floating-point overview

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6b319915-c921-49f7-a574-01e289c1d952

* Consolidate new ZIP APIs

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6b319915-c921-49f7-a574-01e289c1d952

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5
Copilot-Session: be1dc3bd-37d0-49ad-b7b9-1770f515f3dc
Copilot-Session: 6b319915-c921-49f7-a574-01e289c1d952

* Address Libraries release notes feedback

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Remove Identity.Stores API Diff -- it was just a typo correction in a attribute text.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Apply suggestion for JsonDerivedType attributes

Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>

* [release-notes] Containers in .NET 11 Preview 7 (#10503)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] .NET MAUI in .NET 11 Preview 7 (#10505)

* [release-notes] .NET MAUI in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Update .NET MAUI Preview 7 release notes

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Address Preview 7 release note feedback

Clarify passkey setup requirements and FastDeploy2 behavior, and remove dangling links to release notes that have not merged.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* Correct compiled binding fallback notes

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* docs(maui): link Preview 7 feature guidance

Connect release-note highlights to the durable Learn articles that document configuration and migration details.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* docs(maui): address Preview 7 review feedback

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* docs(maui): cover Apple page handlers

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: David Ortinau <david.ortinau@microsoft.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* [release-notes] Windows Forms in .NET 11 Preview 7 (#10513)

* [release-notes] Windows Forms in .NET 11 Preview 7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Use a flat list of PR links for bug fixes

One bullet per fix, linking to the PR, with a cleaned-up version of the PR or issue title as the display text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Group bug fixes by area again

Keeps the one-bullet-per-PR link format, but restores the area/namespace grouping so the list is scannable.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Revise WinForms Preview 7 release notes for clarity (#10518)

* Revise WinForms Preview 7 release notes for clarity

Updated the Windows Forms Preview 7 release notes to include modernized rendering adapters and clarified the usage of visual styles.

* Revise WinForms preview 7 documentation

Updated WinForms preview notes to clarify visual styles opt-in, form reveal modes, and added details on SuspendPainting functionality.

* Update winforms.md

* Fix WinForms release notes markdown lint

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Klaus Löffelmann <9663150+KlausLoeffelmann@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

* Clean up .NET 11 Preview 7 release index

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AndriySvyryd <6539701+AndriySvyryd@users.noreply.github.com>
Co-authored-by: Chet Husk <chusk3@gmail.com>
Co-authored-by: Bill Wagner <wiwagn@microsoft.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
Co-authored-by: David Ortinau <david.ortinau@microsoft.com>
Co-authored-by: Klaus Löffelmann <9663150+KlausLoeffelmann@users.noreply.github.com>
Copilot-Session: a851ab96-8780-407d-97d0-50eed422ead5
Copilot-Session: c4a002ba-a6e0-4140-890a-a441743a8c43
Copilot-Session: 20da5e7c-c15a-4782-8134-546ed6dcced3
Copilot-Session: 784bc4a4-693b-43cf-a55e-626a5b560167
Copilot-Session: be1dc3bd-37d0-49ad-b7b9-1770f515f3dc
Copilot-Session: 6b319915-c921-49f7-a574-01e289c1d952
Treat restore metadata and target analyzer groups as authoritative when the feature is enabled while preserving legacy package scanning when disabled. Reuse the existing analyzer resolver and add focused unit and restore-to-build coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c2487ed6-8e7a-4e23-9be7-4941cdfe9b8e
Avoid allocating compiler names on modern .NET and parse the assets file for semantic test assertions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 42436a94-4466-4134-a8f6-8c44fa48f514
Restore analyzer-asset-enabled cases with the built SDK before invoking Full MSBuild, so the test does not depend on Visual Studio's in-box NuGet writing the new assets metadata.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 42436a94-4466-4134-a8f6-8c44fa48f514
@martinrrm
martinrrm force-pushed the mruizmares-analyzer-assets branch from 0f004f2 to 4970019 Compare August 18, 2026 22:37
@martinrrm
martinrrm requested review from a team and removed request for a team August 18, 2026 22:37
@martinrrm

Copy link
Copy Markdown
Contributor Author

@dotnet/dotnet-cli Hi! Who would be a good reviewer for this change other than nuget team? Thanks!

@dsplaisted

Copy link
Copy Markdown
Member

It sounds like you can't opt in to the new behavior for .NET 10 and lower. Why is that? Does something break about the behavior in that case?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants