Repository navigation
chore(release): close the net10 analyzer window, release 2.7.1 - #148
Merged
Merged
Conversation
- Drop the net10-consumer CI job and the tests/Net10Consumer fixture. The analyzer support window is now net11.0, and the package metadata claims that host only. - Map the greeting result union to CLI exit codes: 0 success, 1 expected failure, 2 unknown result. The failure case gains its own test. - Set minPublishAgeHours to 72 on nuget.org, matching the Renovate three-day delay. The setting gates automatic version selection only. - Promote E128062 to Release 2.7.0, the version CI published, and bump the package to 2.7.1 for the narrowed host claim. - Keep LangVersion at 14.0. On latest the formatter rewrites collection initializers into the C# 15 collection expression argument form. - Record the Zstandard evaluation and split the ASP.NET Core notes into lode/dotnet/aspnet-core-performance.md. Co-Authored-By: Claude Co-Authored-By: Claude
- Regenerate all 16 docs pages against the current repo: net11, SDK 11.0.100, 214 diagnostic IDs across 11 projects, two CI jobs, the union result, and the publish age guard. - Replace the copied rule catalog in integration-patterns with representative rows per category, so the analyzer README stays the one source of truth. - Add scripts/internal/readme-audit.sh. It compares install versions, the SDK row, the project table, and both generated table diffs. - Rewrite the readme-auditor agent around that script. Both earlier runs hit the turn cap with no report. A live run now takes two tool calls and delivers the report. - Route the new script in the rules table, the scripts README, and the help catalog. Co-Authored-By: Claude Co-Authored-By: Claude
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Executive Summary
The repository moved to
net11.0in #147, but three things still claimednet10.0: the analyzer package metadata, the CI reach proof, and the release record. This change closes that window, finishes the union result work at the CLI entry point, and settles two evaluations from the follow-up list.Two items on the follow-up list are blocked upstream, not by this repository:
Microsoft.CodeAnalysis.CSharphas no release newer than 5.9.0 on nuget.org, so the analyzer cannot move to the SDK 11 Roslyn band yet.Microsoft.CodeAnalysis.Analyzer.Testing1.1.4 exposesReferenceAssemblies.Netcodes up toNet100only, so the E128062 default stays at 100.Code Changes
net10-consumerCI job and thetests/Net10Consumerfixture. The analyzer assemblies staynetstandard2.0so Roslyn can load them, and the package claims thenet11.0host only.CliAppnow callsIGreetingServiceand switches overGreetingResult.Greetingmaps to exit code 0,GreetingErrorto 1, and the empty case to 2. A failure writes its reason to standard error. The web entry point already mapped the same union.nuget.configsetsminPublishAgeHours="72"on nuget.org, matching the Renovate three-day delay. The attribute gates automatic version selection only:dotnet package add,dotnet package update, and floating versions. A pinned restore ignores it.LangVersion14.0. Raising it tolatestmade the formatter rewrite collection initializers into the C# 15 collection expression argument form, which touched 26 analyzer files. The comment now states that reason.E128062moved to a## Release 2.7.0section, the version CI published from build(net11): move the repo to net11 and keep net10 package reach #147. The package version is now 2.7.1 for the narrowed host claim.Tests and Tooling
scripts/check.sh: shell lint, format, build, and the full suite pass.scripts/test.sh --all: 2655 passed, 0 failed, 0 skipped.Invoke_WithBlankName_ReturnsExpectedFailureExitCodecovers the failure mapping.scripts/internal/analyzer-release-check.sh: 214 source IDs, 0 unshipped, 215 shipped, clean.scripts/readme-table-diff.sh --analyzer: no drift.1.5producedThe attribute 'nuget.org:minPublishAgeHours' has an unallowed value '1.5'.Review Guide
lode/dotnet/net11-upgrade.md, Analyzer Reach: the new support-window rules and the reason the Roslyn pin can lag the SDK band.lode/dotnet/aspnet-core-performance.md: the Zstandard evaluation and why compression stays off.lode/dependency-policy.md: the limits ofminPublishAgeHours.plans/roadmap.md: what remains blocked and why.Rollback
Revert the commit. Restoring the
net10-consumerjob needs the fixture directory back, because the job reads it. TheminPublishAgeHoursattribute is independent and can be removed alone.Links
plans/roadmap.md🤖 Generated with Claude Code
Follow-Up Commit
docs: refresh the wiki and bound the readme-auditordocs/. The previous generation ran 2026-05-29 and still described .NET 10, 90 diagnostic IDs, and the removed net10 consumer fixture.scripts/internal/readme-audit.sh. It checks install-snippet versions, the SDK row, the project table, and both generated table diffs in one call.readme-auditoragent around that script. Two earlier runs spent the full turn cap on hand checks and produced no report. The verified run makes two tool calls and returns the report.This commit changes no
.csfile, so/yeetskipped the build and test gate. Shell lint passed over all 80 scripts, the README audit reported clean, and the opencode agent mirror is in sync.