Repository navigation
V11.0.0/double digits - #6
Merged
Merged
Conversation
Resolve the shared framework directory by parsed NuGet version instead of string prefix matching, so prerelease and non-numeric folders no longer break runtime resolution. A regression test covers the selection rules.
The retained package surface no longer targets .NET 9, so the library projects and the SDK pin move to .NET 10 and .NET 11.
Runtime packages are selected per target framework so newer generation assets never land in older TFM groups.
Test projects run on the same target matrix as the packages, and the .NET 9 specific package override is no longer needed.
The validation tests read the .NET 11 runtime version from Directory.Packages.props and assert that the package carries no .NET 9 assets.
The CI test matrix runs on the same two targets the package supports.
The devcontainer builds on the .NET 11 SDK and keeps .NET 10 side by side as the previous runtime.
The README, contributing guide, agent guide, and integration docs describe the .NET 10 and .NET 11 targets instead of the retired .NET 9 target.
The changelog records the .NET 11 target, the removal of the .NET 9 target, and the validation package preparation change, so users can see what this release changes.
[High impact] The changes since the previous review appear safe to merge. SummaryThe PR moves the retained package and tests to .NET 10/11, improves shared-framework selection, and brings in upstream branch-coverage and local-function changes. Changes since the previous review document that work:
No actionable new issues were found. No previous findings were supplied. Tests were not run. Reviews (5) · Last reviewed commit: "💬 require dated upstream synchronizatio..." · Reviewed by Greptile |
The current SDK emits one conditional jump for both pattern matching and the equivalent logical expression, so the tests should expect the same two covered paths.
Move the Microsoft Testing Platform, test SDK, xUnit, Moq, LinqKit and NuGet.Packaging/NuGet.Versioning pins to current releases. NuGet.Versioning for netstandard2.0 stays on 6.14.3, the newest release that still supports that target.
Branches that cannot be reached from method entry, including through exception handlers, can never be covered and were inflating the missed-branch count. Each branch now records whether it is reachable, unreachable branches are excluded from branch totals, and the Cobertura, LCOV and OpenCover reporters skip them. State files written before this change still read back as reachable.
The reachability change and the MTP configuration, report format and threshold paths need regression coverage. These tests pin the new IsReachable behavior, the reporter output for unreachable branches, and the shared-framework resolution fix.
Record the 11.0.0 changes: .NET 11 support, the .NET 9 target removal, branch reachability, dependency bumps and the local-function and shared-framework fixes.
Keep the README installation example consistent with the Microsoft Testing Platform and xUnit versions selected by the upstream sync.
Record the original Coverlet marker, verified Codebelt tag targets, inherited upstream history, selective ports, exclusions, behavioral differences, and historical CI outcomes. Link the ledger from the README and expose it in the solution items so readers can audit what each sync contains.
Require UPSTREAM.md updates alongside every sync, with operation dates, source and destination evidence, exclusions, adaptations, and actual validation outcomes. Keep meaningful fork differences explicit and preserve the distinct roles of the README, changelog, and maintenance guidance.
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.
This pull request retargets the retained Codebelt.Coverlet.MTP package and its test projects from .NET 9 to a .NET 10 and .NET 11 matrix. It also fixes shared framework resolution so prerelease and non-numeric runtime folders no longer break instrumentation.
Framework retargeting:
net10.0andnet11.0alongsidenetstandard2.0, and the SDK pin inglobal.jsonmoves to .NET 11.Runtime dependencies:
Shared framework resolution:
Validation and tests:
Tooling and documentation: