Skip to content
This repository was archived by the owner on Jul 6, 2026. It is now read-only.

Commit 8c9eece

Browse files
authored
[build] Enable NuGet's Central Package Management (#1114)
Context: c936d09 Enable NuGet's [Central Package Management][0]. Although this is similar to the "homegrown" centralized package version management we currently have (c936d09), using the "official" version means that there is additional tooling support available, such as being supported by `dotnet add package`, Visual Studio, and dependabot. Central Package Management also requires [Package Source Mapping][1], so we also add that information to our `NuGet.config`. [0]: https://learn.microsoft.com/nuget/consume-packages/central-package-management [1]: https://learn.microsoft.com/nuget/consume-packages/package-source-mapping
1 parent 93c50fe commit 8c9eece

6 files changed

Lines changed: 47 additions & 27 deletions

File tree

‎Directory.Build.props‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
<ProduceReferenceAssemblyInOutDir>true</ProduceReferenceAssemblyInOutDir>
1010
<DotNetTargetFrameworkVersion>7.0</DotNetTargetFrameworkVersion>
1111
<DotNetTargetFramework>net$(DotNetTargetFrameworkVersion)</DotNetTargetFramework>
12+
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
1213
</PropertyGroup>
1314

1415
<Import

‎Directory.Build.targets‎

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,37 +3,18 @@
33

44
<!-- Add Roslyn analyzers NuGet to all projects -->
55
<ItemGroupCondition=" '$(DisableRoslynAnalyzers)' != 'True' ">
6-
<PackageReferenceInclude="Microsoft.CodeAnalysis.FxCopAnalyzers"Version="3.3.0">
6+
<PackageReferenceInclude="Microsoft.CodeAnalysis.FxCopAnalyzers">
77
<PrivateAssets>all</PrivateAssets>
88
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
99
</PackageReference>
1010
</ItemGroup>
1111

12-
<!--NuGet Dependencies-->
12+
<!--Set Assets for NUnit3TestAdapter-->
1313
<ItemGroup>
14-
<PackageReferenceUpdate="GitInfo"Version="2.1.2" />
15-
<PackageReferenceUpdate="HtmlAgilityPack"Version="1.11.30" />
16-
<PackageReferenceUpdate="Irony"Version="1.1.0" />
17-
<PackageReferenceUpdate="Microsoft.Build.Framework"Version="17.3.2" />
18-
<PackageReferenceUpdate="Microsoft.Build.Utilities.Core"Version="17.3.2" />
19-
<PackageReferenceUpdate="Microsoft.CodeAnalysis.CSharp"Version="4.3.1" />
20-
<PackageReferenceUpdate="Microsoft.CSharp"Version="4.7.0" />
21-
<PackageReferenceUpdate="Microsoft.DotNet.GenAPI"Version="7.0.0-beta.22103.1" />
22-
<PackageReferenceUpdate="Microsoft.NET.Test.Sdk"Version="17.5.0-preview-20221003-04" />
23-
<PackageReferenceUpdate="Microsoft.NETFramework.ReferenceAssemblies"Version="1.0.3" />
24-
<PackageReferenceUpdate="Microsoft.SourceLink.GitHub"Version="1.1.1" />
25-
<PackageReferenceUpdate="Microsoft.Xml.SgmlReader"Version="1.8.16" />
26-
<PackageReferenceUpdate="Mono.CSharp"Version="4.0.0.143" />
27-
<PackageReferenceUpdate="Mono.Linq.Expressions"Version="2.0.0" />
28-
<PackageReferenceUpdate="Mono.Options"Version="6.12.0.148" />
29-
<PackageReferenceUpdate="Mono.Terminal"Version="5.4.2" />
30-
<PackageReferenceUpdate="nunit"Version="3.13.2" />
31-
<PackageReferenceUpdate="NUnit.ConsoleRunner"Version="3.12.0" />
32-
<PackageReferenceUpdate="NUnit3TestAdapter"Version="4.0.0">
14+
<PackageReferenceUpdate="NUnit3TestAdapter">
3315
<PrivateAssets>all</PrivateAssets>
3416
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3517
</PackageReference>
36-
<PackageReferenceUpdate="protobuf-net"Version="2.4.4" />
3718
</ItemGroup>
3819

3920
<ImportProject="build-tools\scripts\VersionInfo.targets" />

‎Directory.Packages.props‎

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<Project>
2+
3+
<PropertyGroup>
4+
<_XamarinAndroidCecilVersionCondition=" '$(_XamarinAndroidCecilVersion)' == '' ">0.11.4</_XamarinAndroidCecilVersion>
5+
</PropertyGroup>
6+
7+
<ItemGroup>
8+
<PackageVersionInclude="GitInfo"Version="2.1.2" />
9+
<PackageVersionInclude="HtmlAgilityPack"Version="1.11.30" />
10+
<PackageVersionInclude="Irony"Version="1.1.0" />
11+
<PackageVersionInclude="Microsoft.Build.Framework"Version="17.3.2" />
12+
<PackageVersionInclude="Microsoft.Build.Utilities.Core"Version="17.3.2" />
13+
<PackageVersionInclude="Microsoft.CodeAnalysis.CSharp"Version="4.3.1" />
14+
<PackageVersionInclude="Microsoft.CodeAnalysis.FxCopAnalyzers"Version="3.3.0" />
15+
<PackageVersionInclude="Microsoft.CSharp"Version="4.7.0" />
16+
<PackageVersionInclude="Microsoft.DotNet.GenAPI"Version="7.0.0-beta.22103.1" />
17+
<PackageVersionInclude="Microsoft.NET.Test.Sdk"Version="17.5.0-preview-20221003-04" />
18+
<PackageVersionInclude="Microsoft.SourceLink.GitHub"Version="1.1.1" />
19+
<PackageVersionInclude="Microsoft.Xml.SgmlReader"Version="1.8.16" />
20+
<PackageVersionInclude="Mono.Cecil"Version="$(_XamarinAndroidCecilVersion)" />
21+
<PackageVersionInclude="Mono.CSharp"Version="4.0.0.143" />
22+
<PackageVersionInclude="Mono.Linq.Expressions"Version="2.0.0" />
23+
<PackageVersionInclude="Mono.Options"Version="6.12.0.148" />
24+
<PackageVersionInclude="Mono.Terminal"Version="5.4.2" />
25+
<PackageVersionInclude="nunit"Version="3.13.2" />
26+
<PackageVersionInclude="NUnit.ConsoleRunner"Version="3.12.0" />
27+
<PackageVersionInclude="NUnit3TestAdapter"Version="4.0.0" />
28+
<PackageVersionInclude="protobuf-net"Version="2.4.4" />
29+
</ItemGroup>
30+
31+
</Project>

‎NuGet.Config‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,14 @@
1111
<!-- For Microsoft.DotNet.GenAPI -->
1212
<addkey="dotnet-eng"value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json"protocolVersion="3" />
1313
</packageSources>
14+
15+
<packageSourceMapping>
16+
<!-- key value for <packageSource> should match key values from <packageSources> element -->
17+
<packageSourcekey="dotnet-public">
18+
<packagepattern="*" />
19+
</packageSource>
20+
<packageSourcekey="dotnet-eng">
21+
<packagepattern="Microsoft.DotNet.GenAPI" />
22+
</packageSource>
23+
</packageSourceMapping>
1424
</configuration>

‎build-tools/scripts/cecil.projitems‎

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Projectxmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<PropertyGroup>
4-
<_XamarinAndroidCecilVersionCondition=" '$(_XamarinAndroidCecilVersion)' == '' ">0.11.4</_XamarinAndroidCecilVersion>
5-
</PropertyGroup>
63
<ItemGroupCondition=" '$(_XamarinAndroidCecilPath)' == '' ">
7-
<PackageReferenceInclude="Mono.Cecil"Version="$(_XamarinAndroidCecilVersion)"/>
4+
<PackageReferenceInclude="Mono.Cecil" />
85
</ItemGroup>
96
<ItemGroupCondition=" '$(_XamarinAndroidCecilPath)' != '' ">
107
<ReferenceInclude="$(_XamarinAndroidCecilPath)" />

‎tests/Java.Interop.Tools.Expressions-Tests/Java.Interop.Tools.Expressions-Tests.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
<Import Project="..\..\build-tools\scripts\cecil.projitems" />
2525
-->
2626
<ItemGroup>
27-
<PackageReferenceInclude="Mono.Cecil"Version="0.11.4"/>
27+
<PackageReferenceInclude="Mono.Cecil" />
2828
<PackageReferenceInclude="Mono.Linq.Expressions" />
2929
</ItemGroup>
3030

0 commit comments

Comments
 (0)