You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
chore(build): adopt central package management (Directory.Packages.props) for test-tooling versions #240
PR #239 (NUnit 3 to 4.6.1 upgrade) surfaced this follow-up. All 9 test csprojs now duplicate the same package versions row-for-row:
NUnit@4.6.1
NUnit3TestAdapter@4.6.0
Microsoft.NET.Test.Sdk@17.14.1
coverlet.collector@6.0.4
The first drift will be silent, and #239 itself resulted from precisely this pattern (four csprojs had drifted onto NUnit 3.13.3 + adapter 4.3.1/4.5.0 while the other five sat on 3.14.0 + 4.6.0).
Proposal
Add Directory.Packages.props at the repo root with:
<Project>
<PropertyGroup>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
</PropertyGroup>
<ItemGroup>
<PackageVersionInclude="NUnit"Version="4.6.1" />
<PackageVersionInclude="NUnit3TestAdapter"Version="4.6.0" />
<PackageVersionInclude="Microsoft.NET.Test.Sdk"Version="17.14.1" />
<PackageVersionInclude="coverlet.collector"Version="6.0.4" />
<!-- plus every other cross-cutting dependency in the tree -->
</ItemGroup>
</Project>
Strip the Version= attribute from every <PackageReference> across the tree.
Scope
All test csprojs (9)
All library csprojs (packages currently duplicated across projects)
All adapter / agent / module / example csprojs
Sequencing
Should land before the follow-up Stryker.NET adoption PR — Stryker will add yet another cross-cutting test-only package, and CPM saves that PR from another N-way sync.
Source
Improvement audit finding F-IMP-001 during PR #239 Ultrareview cycle 1 (2026-08-19). Related simplification / code-review agents also flagged the duplication as a maintenance risk.
Activity