Skip to content

Commit b1a6311

Browse files
committed
Manage Dependencies centrally
Manage Packages Centrally using NuGet's CPVM feature. This uses `Directory.Packages.props` to store the package versions in one file.
1 parent e3395b2 commit b1a6311

14 files changed

+79
-31
lines changed

Directory.Build.props

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<Import Project="$(BuildToolsDirectory)Toolkit.Common.props" />
1111

1212
<ItemGroup>
13-
<PackageReference Include="Nerdbank.GitVersioning" Version="3.5.119" PrivateAssets="All" />
13+
<PackageReference Include="Nerdbank.GitVersioning" PrivateAssets="All" />
1414
</ItemGroup>
1515

1616
<Choose>
@@ -24,7 +24,7 @@
2424
<AllowedOutputExtensionsInPackageBuildOutputFolder>.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
2525
</PropertyGroup>
2626
<ItemGroup>
27-
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All" />
27+
<PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" />
2828
</ItemGroup>
2929
</When>
3030
</Choose>

Directory.Packages.props

+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<Project>
2+
3+
<PropertyGroup Label="Core">
4+
<NETStandardImplicitPackageVersion>2.0.3</NETStandardImplicitPackageVersion>
5+
</PropertyGroup>
6+
7+
<ItemGroup Label="System">
8+
<!-- BCL Extensions -->
9+
<PackageVersion Version="7.0.0" Include="Microsoft.Bcl.AsyncInterfaces" />
10+
<PackageVersion Version="1.1.1" Include="Microsoft.Bcl.HashCode" />
11+
<!-- Annotations -->
12+
<PackageVersion Version="5.0.0" Include="System.ComponentModel.Annotations" />
13+
<!-- Memory -->
14+
<PackageVersion Version="4.5.5" Include="System.Memory" />
15+
<!-- Reactive -->
16+
<PackageVersion Version="5.0.0" Include="System.Reactive" />
17+
<!-- Runtime -->
18+
<PackageVersion Version="6.0.0" Include="System.Runtime.CompilerServices.Unsafe" />
19+
<!-- Json -->
20+
<PackageVersion Version="7.0.0" Include="System.Text.Json" />
21+
<!-- Tasks -->
22+
<PackageVersion Version="4.5.4" Include="System.Threading.Tasks.Extensions" />
23+
</ItemGroup>
24+
25+
<ItemGroup Label="Core">
26+
<!-- PolySharp -->
27+
<PackageVersion Version="1.8.1" Include="PolySharp" />
28+
</ItemGroup>
29+
30+
<ItemGroup Label="Global">
31+
<!-- Build Helpers -->
32+
<PackageVersion Version="1.1.1" Include="Microsoft.SourceLink.GitHub" />
33+
<PackageVersion Version="3.5.119" Include="Nerdbank.GitVersioning" />
34+
<PackageVersion Version="1.1.118" Include="StyleCop.Analyzers" />
35+
</ItemGroup>
36+
37+
<ItemGroup Label="Tests">
38+
<!-- MSTest -->
39+
<PackageVersion Version="3.0.1" Include="MSTest.TestAdapter" />
40+
<PackageVersion Version="3.0.1" Include="MSTest.TestFramework" />
41+
<PackageVersion Version="17.4.1" Include="Microsoft.NET.Test.Sdk" />
42+
<!-- MSTest Extensions -->
43+
<PackageVersion Version="5.0.0" Include="Dbs.Signed3.Nito.AsyncEx.Context" />
44+
<PackageVersion Version="1.1.1" Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" />
45+
</ItemGroup>
46+
47+
</Project>

Directory.Solution.props

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<Project>
22

33
<PropertyGroup>
4+
<ManagePackageVersionsCentrally>True</ManagePackageVersionsCentrally>
45
<RestoreUseStaticGraphEvaluation>True</RestoreUseStaticGraphEvaluation>
56
</PropertyGroup>
67

src/CommunityToolkit.Diagnostics/CommunityToolkit.Diagnostics.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,14 @@
3131
<!-- .NET Standard 2.0 doesn't have the Span<T> type -->
3232
<When Condition="'$(TargetFramework)' == 'netstandard2.0'">
3333
<ItemGroup>
34-
<PackageReference Include="System.Memory" Version="4.5.5" />
34+
<PackageReference Include="System.Memory" />
3535
</ItemGroup>
3636
</When>
3737

3838
<!-- .NET Standard 2.1 doesn't have the Unsafe type -->
3939
<When Condition="'$(TargetFramework)' == 'netstandard2.1'">
4040
<ItemGroup>
41-
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
41+
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" />
4242
</ItemGroup>
4343
</When>
4444
</Choose>

src/CommunityToolkit.HighPerformance/CommunityToolkit.HighPerformance.csproj

+5-5
Original file line numberDiff line numberDiff line change
@@ -44,17 +44,17 @@
4444

4545
<!-- .NET Standard 2.0 doesn't have the Span<T>, HashCode and ValueTask types -->
4646
<ItemGroup>
47-
<PackageReference Include="Microsoft.Bcl.HashCode" Version="1.1.1" />
48-
<PackageReference Include="System.Memory" Version="4.5.5" />
49-
<PackageReference Include="System.Threading.Tasks.Extensions" Version="4.5.4" />
50-
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
47+
<PackageReference Include="Microsoft.Bcl.HashCode" />
48+
<PackageReference Include="System.Memory" />
49+
<PackageReference Include="System.Threading.Tasks.Extensions" />
50+
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" />
5151
</ItemGroup>
5252
</When>
5353

5454
<!-- .NET Standard 2.1 doesn't have the Unsafe type -->
5555
<When Condition="'$(TargetFramework)' == 'netstandard2.1'">
5656
<ItemGroup>
57-
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
57+
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" />
5858
</ItemGroup>
5959
</When>
6060
</Choose>

src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
</ItemGroup>
2626

2727
<ItemGroup>
28-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.0.1" PrivateAssets="All" Pack="false" />
28+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" VersionOverride="4.0.1" PrivateAssets="All" Pack="false" />
2929
</ItemGroup>
3030

3131
</Project>

src/CommunityToolkit.Mvvm.SourceGenerators/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
</ItemGroup>
2626

2727
<ItemGroup>
28-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.3.1" PrivateAssets="All" Pack="false" />
28+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" VersionOverride="4.3.1" PrivateAssets="All" Pack="false" />
2929
</ItemGroup>
3030

3131
</Project>

src/CommunityToolkit.Mvvm/CommunityToolkit.Mvvm.csproj

+6-6
Original file line numberDiff line numberDiff line change
@@ -53,16 +53,16 @@
5353

5454
<!-- .NET Standard 2.0 doesn't have the Span<T> and IAsyncEnumerable<T> types -->
5555
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
56-
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="7.0.0" />
57-
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />
58-
<PackageReference Include="System.Memory" Version="4.5.5" />
59-
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
56+
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" />
57+
<PackageReference Include="System.ComponentModel.Annotations" />
58+
<PackageReference Include="System.Memory" />
59+
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" />
6060
</ItemGroup>
6161

6262
<!-- .NET Standard 2.1 doesn't have the Unsafe type -->
6363
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1'">
64-
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />
65-
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
64+
<PackageReference Include="System.ComponentModel.Annotations" />
65+
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" />
6666
</ItemGroup>
6767

6868
<!-- Reference the various multi-targeted versions of the source generator project (one per Roslyn version) -->

src/Directory.Build.props

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<!-- Include PolySharp to generate polyfills for all projects (on their .NET Standard 2.x targets) -->
1414
<ItemGroup>
15-
<PackageReference Include="PolySharp" Version="1.8.1" PrivateAssets="All" IncludeAssets="Analyzers;Build" />
15+
<PackageReference Include="PolySharp" PrivateAssets="All" IncludeAssets="Analyzers;Build" />
1616
</ItemGroup>
1717

1818
<!-- Hook various extension targets at the right place in MSBuild target graph using built-in extension points -->

tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn40.UnitTests.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
</ItemGroup>
1111

1212
<ItemGroup>
13-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.0.1" />
14-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" Version="1.1.1" />
13+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" VersionOverride="4.0.1" />
14+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" />
1515
</ItemGroup>
1616

1717
</Project>

tests/CommunityToolkit.Mvvm.SourceGenerators.UnitTests/CommunityToolkit.Mvvm.SourceGenerators.Roslyn43.UnitTests.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
</ItemGroup>
1111

1212
<ItemGroup>
13-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.3.1" />
14-
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" Version="1.1.1" />
13+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" VersionOverride="4.3.1" />
14+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.MSTest" />
1515
</ItemGroup>
1616

1717
</Project>

tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn40.UnitTests.csproj

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
</ItemGroup>
1414

1515
<ItemGroup>
16-
<PackageReference Include="System.Reactive" Version="5.0.0" />
17-
<PackageReference Include="System.Text.Json" Version="7.0.0" />
18-
<PackageReference Include="Dbs.Signed3.Nito.AsyncEx.Context" Version="5.0.0" />
16+
<PackageReference Include="System.Reactive" />
17+
<PackageReference Include="System.Text.Json" />
18+
<PackageReference Include="Dbs.Signed3.Nito.AsyncEx.Context" />
1919
</ItemGroup>
2020

2121
</Project>

tests/CommunityToolkit.Mvvm.UnitTests/CommunityToolkit.Mvvm.Roslyn43.UnitTests.csproj

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
</ItemGroup>
1414

1515
<ItemGroup>
16-
<PackageReference Include="System.Reactive" Version="5.0.0" />
17-
<PackageReference Include="System.Text.Json" Version="7.0.0" />
18-
<PackageReference Include="Dbs.Signed3.Nito.AsyncEx.Context" Version="5.0.0" />
16+
<PackageReference Include="System.Reactive" />
17+
<PackageReference Include="System.Text.Json" />
18+
<PackageReference Include="Dbs.Signed3.Nito.AsyncEx.Context" />
1919
</ItemGroup>
2020

2121
</Project>

tests/Directory.Build.targets

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
<!-- MSTest v2 -->
66
<ItemGroup Condition="'$(IsTestProject)' == 'true'">
7-
<PackageReference Include="MSTest.TestAdapter" Version="3.0.1" />
8-
<PackageReference Include="MSTest.TestFramework" Version="3.0.1" />
9-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.1" />
7+
<PackageReference Include="MSTest.TestAdapter" />
8+
<PackageReference Include="MSTest.TestFramework" />
9+
<PackageReference Include="Microsoft.NET.Test.Sdk" />
1010
</ItemGroup>
1111

1212
</Project>

0 commit comments

Comments
 (0)