Bump xunit.v3 and runner to 4.0.0 alongside Xunit.DependencyInjection 12.0.1 - #44
Merged
Merged
Conversation
… 12.0.1 Xunit.DependencyInjection 12.0.1 targets xunit.v3 4.x, so bumping it alone resolved xunit.v3.extensibility.core 4.0.0 against the pinned 3.2.2 packages and failed restore with NU1608 (dependabot PR #42). Bump xunit.v3 and xunit.runner.visualstudio to 4.0.0 with it. xunit.v3 4.x makes the Microsoft.Testing.Platform runner the default entry point, which drops the VSTest target coverlet.msbuild hooks — `dotnet test` then errors out and no cobertura report is written, taking the coverage ratchet and the CI coverage artifact with it. Set IsTestingPlatformApplication=false for test projects to keep the VSTest entry point via xunit.runner.visualstudio 4.0.0. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018oQ2H2BWF3GVGTR9udJTRG
marklauter
force-pushed
the
chore/xunit-v4
branch
from
September 5, 2026 18:01
ec4ad94 to
75f1247
Compare
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.
Supersedes #42.
Dependabot bumped
Xunit.DependencyInjection11.3.1 → 12.0.1 on its own in #42. That version targets xunit.v3 4.x, so it resolvedxunit.v3.extensibility.core/xunit.v3.common4.0.0 against the pinned 3.2.2 packages and failed restore withNU1608(warning-as-error), takingtest (Debug),test (Release),format, andsubmit-nugetdown with it.Bumping
xunit.v3andxunit.runner.visualstudioto 4.0.0 alongside it fixes the restore, but surfaces a second problem: xunit.v3 4.x makes the Microsoft.Testing.Platform runner the default entry point and drops the VSTest bridge that shipped asxunit.v3.core.mtp-v1in 3.2.2. Under MTP,dotnet testerrors withMTP0001("Testing with VSTest target is no longer supported…"), and opting into MTP mode viaglobal.jsonruns the tests but writes no cobertura report — coverlet.msbuild hooks the VSTest target. That would silently drop the coverage ratchet, break thecoverage-coberturaartifact upload (if-no-files-found: error), and break the shared build gate, which passes VSTest--loggerargs.Setting
IsTestingPlatformApplication=falsefor test projects keeps the VSTest entry point throughxunit.runner.visualstudio4.0.0, so coverage and the ratchet are untouched. Migrating to MTP mode properly is a larger change — replacing coverlet.msbuild with the MTP coverage extension and reworking the threshold gate — and is left for its own PR.Verified locally: build gate green (format → build → test), 144/144 tests passing in both Debug and Release, coverage 99.32/92.44/95.31 against the 95/90/95 floors.
🤖 Generated with Claude Code
https://claude.ai/code/session_018oQ2H2BWF3GVGTR9udJTRG