Repository navigation
Expand file tree
/
Copy pathDirectory.Packages.props
More file actions
62 lines (60 loc) · 3.8 KB
/
Copy pathDirectory.Packages.props
File metadata and controls
62 lines (60 loc) · 3.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<Project>
<PropertyGroup>
<!-- Set explicitly rather than relying on auto-detection. -->
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<CentralPackageTransitivePinningEnabled>true</CentralPackageTransitivePinningEnabled>
<!--
Keep compiler-facing Roslyn packages aligned with the minimum supported by
Purview.SourceGeneratorFramework. Roslyn 5.x uses the .NET 8 Immutable baseline,
allowing the generator assembly to be referenced by net8.0-net10.0 test projects.
-->
<RoslynCompilerVersion>5.9.0</RoslynCompilerVersion>
<RoslynAnalyzersVersion>5.9.0</RoslynAnalyzersVersion>
<TUnitVersion>1.68.17</TUnitVersion>
<PurviewSourceGenFramework>1.0.0</PurviewSourceGenFramework>
<DotnetRuntimeVersion>10.0.12</DotnetRuntimeVersion>
<!--
Microsoft.Extensions.Options and ...DependencyInjection.Abstractions are real dependencies of
the shipped Purview.ZodSharp package, so their version has to track the consumer's target
framework: referencing this package must not drag a net8.0 (LTS) application onto .NET 10
assemblies. Keep one entry per supported TFM and leave the default as the newest.
On net10.0 and later the SDK prunes these from the package graph entirely because the
targeted framework already supplies them — which is why the net11.0 dependency group in the
produced .nuspec is empty. That is expected, not a missing dependency.
The 8.x line needs two properties, because the packages did not ship in lockstep:
Options and DependencyInjection.Abstractions published 8.0.2, DependencyInjection stopped at
8.0.1, and DependencyInjection 8.0.1 itself depends on Abstractions >= 8.0.2. So the only
self-consistent 8.x set is DependencyInjection 8.0.1 with Options/Abstractions 8.0.2. Pinning
all three to one value fails NU1109 in one direction or the other. From 9.x onward the lines
are aligned again and both properties collapse to the same value.
-->
<MicrosoftExtensionsVersion>$(DotnetRuntimeVersion)</MicrosoftExtensionsVersion>
<MicrosoftExtensionsVersion Condition="'$(TargetFramework)' == 'net8.0'">8.0.2</MicrosoftExtensionsVersion>
<MicrosoftExtensionsVersion Condition="'$(TargetFramework)' == 'net9.0'">9.0.20</MicrosoftExtensionsVersion>
<MicrosoftExtensionsDIVersion>$(MicrosoftExtensionsVersion)</MicrosoftExtensionsDIVersion>
<MicrosoftExtensionsDIVersion Condition="'$(TargetFramework)' == 'net8.0'">8.0.1</MicrosoftExtensionsDIVersion>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="Bogus" Version="35.6.5" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="$(MicrosoftExtensionsDIVersion)" />
<PackageVersion
Include="Microsoft.Extensions.DependencyInjection.Abstractions"
Version="$(MicrosoftExtensionsVersion)"
/>
<PackageVersion Include="Microsoft.Extensions.Options" Version="$(MicrosoftExtensionsVersion)" />
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="10.0.401" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="$(RoslynCompilerVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(RoslynCompilerVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis.Analyzers" Version="$(RoslynAnalyzersVersion)" />
<PackageVersion Include="TUnit" Version="$(TUnitVersion)" />
<PackageVersion Include="TUnit.Mocks" Version="$(TUnitVersion)" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.4" />
<PackageVersion Include="System.Text.Json" Version="$(DotnetRuntimeVersion)" />
<PackageVersion Include="BenchmarkDotNet" Version="0.16.0-preview.2" />
<PackageVersion Include="Purview.SourceGeneratorFramework" Version="$(PurviewSourceGenFramework)" />
<PackageVersion
Include="Purview.SourceGeneratorFramework.Testing.TUnit"
Version="$(PurviewSourceGenFramework)"
/>
</ItemGroup>
</Project>