Repository navigation
Expand file tree
/
Copy pathDirectory.Build.props
More file actions
85 lines (77 loc) · 4.34 KB
/
Copy pathDirectory.Build.props
File metadata and controls
85 lines (77 loc) · 4.34 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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<Project>
<!--
Single source of truth for the product version.
Release builds override PackageVersion from the git tag (see .github/workflows/release.yaml);
local and CI builds fall back to the values below.
-->
<PropertyGroup>
<VersionPrefix>1.7.0</VersionPrefix>
<!--
Empty at 1.0.0. Set it again to cut a prerelease of the next version; the file version
carries no prerelease part, so it stays put until the version it does carry changes.
-->
<VersionSuffix></VersionSuffix>
<!--
Pinned to the major for the whole of 1.x, deliberately. The assembly version is part of
assembly identity: moving it every minor release means a library compiled against 1.0.0.0
no longer matches the 1.2.0.0 a consuming application resolves, and the reference only
keeps working because the host papers over the difference. Holding it removes that
question entirely, and costs nothing — FileVersion below carries the real version for
anyone inspecting the binary, and the NuGet package version is what people actually
depend on. It moves at 2.0.0.
-->
<AssemblyVersion>1.0.0.0</AssemblyVersion>
<FileVersion>1.7.0.0</FileVersion>
</PropertyGroup>
<!--
The shipping libraries' target frameworks, in one place. net8.0 leaves support in November
2026, and dropping it should then be a one-line edit here rather than a sweep through every
csproj. The generator projects are deliberately not covered: a Roslyn analyzer has to target
netstandard2.0 and pins its own TFM.
-->
<PropertyGroup>
<LibraryTargetFrameworks>net8.0;net10.0</LibraryTargetFrameworks>
</PropertyGroup>
<!--
The xunit.v3 major that the xUnit test projects build and run against. CI runs both, through
scripts/test-xunit.sh for the second. 4 uses xunit.v3.mtp-off, not xunit.v3: the
Microsoft.Testing.Platform v2 that xunit.v3 4.x brings refuses the VSTest `dotnet test` on
the .NET 10 SDK, and xUnit ships mtp-off for exactly that. XunitV3Version and
XunitRunnerVersion can be set from the command line, which the prerelease workflow does.
-->
<PropertyGroup>
<XunitMajor Condition="'$(XunitMajor)' == ''">3</XunitMajor>
</PropertyGroup>
<PropertyGroup Condition="'$(XunitMajor)' == '3'">
<XunitV3Package>xunit.v3</XunitV3Package>
<XunitV3Version Condition="'$(XunitV3Version)' == ''">3.2.2</XunitV3Version>
<XunitRunnerVersion Condition="'$(XunitRunnerVersion)' == ''">3.1.5</XunitRunnerVersion>
<DependencyModulesXunitProject>DependencyModules.xUnit</DependencyModulesXunitProject>
</PropertyGroup>
<PropertyGroup Condition="'$(XunitMajor)' == '4'">
<XunitV3Package>xunit.v3.mtp-off</XunitV3Package>
<XunitV3Version Condition="'$(XunitV3Version)' == ''">4.0.1</XunitV3Version>
<XunitRunnerVersion Condition="'$(XunitRunnerVersion)' == ''">4.0.0</XunitRunnerVersion>
<DependencyModulesXunitProject>DependencyModules.xUnit4</DependencyModulesXunitProject>
</PropertyGroup>
<PropertyGroup>
<Authors>Ian Johnson</Authors>
<Company>Ian Johnson</Company>
<Copyright>Copyright (c) Ian Johnson</Copyright>
<PackageProjectUrl>https://github.com/ipjohnson/DependencyModules</PackageProjectUrl>
<RepositoryUrl>https://github.com/ipjohnson/DependencyModules</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageLicenseFile>LICENSE.txt</PackageLicenseFile>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageIcon>icon.png</PackageIcon>
<PackageTags>dependency-injection;di;ioc;source-generator;roslyn;servicecollection;modules</PackageTags>
<PackageReleaseNotes>https://github.com/ipjohnson/DependencyModules/releases</PackageReleaseNotes>
</PropertyGroup>
<!-- Deterministic, source-linked builds so consumers can step into the library. -->
<PropertyGroup>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<Deterministic>true</Deterministic>
<ContinuousIntegrationBuild Condition="'$(GITHUB_ACTIONS)' == 'true'">true</ContinuousIntegrationBuild>
</PropertyGroup>
</Project>