Skip to content

Commit 704bf28

Browse files
authored
Enable NuGet package lock files with transitive dependency management (#181)
* Migrate to centralized package management with Directory.Packages.props * Generate NuGet package lock files for all projects * Add transitive NuGet dependencies to centralized package management Extracts all transitive dependencies from packages.lock.json files and adds them to Directory.Packages.props for explicit version control and better dependency management. * Update lock files after adding transitive dependencies to Directory.Packages.props Lock files now reflect the explicitly pinned transitive dependency versions from Directory.Packages.props, ensuring consistent package resolution across environments.
1 parent c574415 commit 704bf28

4 files changed

Lines changed: 649 additions & 0 deletions

File tree

Directory.Packages.props

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
<PropertyGroup>
33
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
44
<CentralPackageTransitivePinningEnabled>true</CentralPackageTransitivePinningEnabled>
5+
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
6+
<RestoreLockedMode Condition="'$(CI)' == 'true'">true</RestoreLockedMode>
57
</PropertyGroup>
68

79
<!-- Build-time tools -->
@@ -20,4 +22,29 @@
2022
<ItemGroup>
2123
<PackageVersion Include="YamlDotNet" Version="16.3.0" />
2224
</ItemGroup>
25+
26+
<!-- Transitive dependencies - Framework-independent -->
27+
<ItemGroup>
28+
<PackageVersion Include="Microsoft.ApplicationInsights" Version="2.23.0" />
29+
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="6.0.0" />
30+
<PackageVersion Include="Microsoft.DiaSymReader" Version="2.0.0" />
31+
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="6.0.2" />
32+
<PackageVersion Include="Microsoft.Testing.Extensions.Telemetry" Version="2.0.2" />
33+
<PackageVersion Include="Microsoft.Testing.Extensions.TrxReport.Abstractions" Version="2.0.2" />
34+
<PackageVersion Include="Microsoft.Testing.Platform" Version="2.0.2" />
35+
<PackageVersion Include="Microsoft.Testing.Platform.MSBuild" Version="2.0.2" />
36+
<PackageVersion Include="Microsoft.Win32.Registry" Version="5.0.0" />
37+
<PackageVersion Include="xunit.analyzers" Version="1.26.0" />
38+
<PackageVersion Include="xunit.v3.assert" Version="3.2.1" />
39+
<PackageVersion Include="xunit.v3.common" Version="3.2.1" />
40+
<PackageVersion Include="xunit.v3.core.mtp-v2" Version="3.2.1" />
41+
<PackageVersion Include="xunit.v3.extensibility.core" Version="3.2.1" />
42+
<PackageVersion Include="xunit.v3.runner.common" Version="3.2.1" />
43+
<PackageVersion Include="xunit.v3.runner.inproc.console" Version="3.2.1" />
44+
</ItemGroup>
45+
46+
<!-- Transitive dependencies - .NETStandard 2.0 only -->
47+
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
48+
<PackageVersion Include="Microsoft.NETCore.Platforms" Version="1.1.0" />
49+
</ItemGroup>
2350
</Project>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"version": 2,
3+
"dependencies": {
4+
"net10.0": {
5+
"YamlDotNet": {
6+
"type": "Direct",
7+
"requested": "[16.3.0, )",
8+
"resolved": "16.3.0",
9+
"contentHash": "SgMOdxbz8X65z8hraIs6hOEdnkH6hESTAIUa7viEngHOYaH+6q5XJmwr1+yb9vJpNQ19hCQY69xbFsLtXpobQA=="
10+
},
11+
"dockercomposebuilder": {
12+
"type": "Project",
13+
"dependencies": {
14+
"YamlDotNet": "[16.3.0, )"
15+
}
16+
}
17+
}
18+
}
19+
}

0 commit comments

Comments
 (0)