-
Notifications
You must be signed in to change notification settings - Fork 134
Expand file tree
/
Copy pathDirectory.Build.props
More file actions
46 lines (40 loc) · 2.06 KB
/
Copy pathDirectory.Build.props
File metadata and controls
46 lines (40 loc) · 2.06 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
<Project>
<PropertyGroup>
<NuGetAudit>true</NuGetAudit>
<NuGetAuditMode>all</NuGetAuditMode>
<NuGetAuditLevel>low</NuGetAuditLevel>
</PropertyGroup>
<!-- Treat all compiler and analyzer warnings as errors so the build stays clean and regressions
surface at build time instead of in review. Test projects keep MTP0001 / xUnit1051 as plain
warnings via the IsTestProject NoWarn block below. -->
<PropertyGroup>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<!-- MinVer derives PackageVersion / AssemblyVersion / FileVersion / InformationalVersion
from git tags. The latest tag (e.g. v2.2) sets the base; commits since the tag bump
the patch and append the height + pre-release suffix.
MinVerMinimumMajorMinor pins the develop branch's next-target line ahead of releases:
even before tagging v2.3.0 the dev builds publish as 2.3.0-dev.0.<height>, so
AuthenticationService can float Abblix.* on 2.3.0-dev.* immediately. Bump this when
the next-target moves (2.3 -> 2.4).
MinVerDefaultPreReleaseIdentifiers replaces the default "alpha.0" with "dev.0", so
the floating range AuthSvc consumes (2.3.0-dev.*) is unambiguous. Tagged releases
drop the suffix automatically (v2.3.0 -> 2.3.0). -->
<PropertyGroup>
<MinVerMinimumMajorMinor>2.4</MinVerMinimumMajorMinor>
<MinVerDefaultPreReleaseIdentifiers>dev.0</MinVerDefaultPreReleaseIdentifiers>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="MinVer" PrivateAssets="all" />
</ItemGroup>
<!-- SonarCloud's C# ruleset runs locally at build time via this analyzer.
Closes the feedback loop so Sonar findings surface in `dotnet build`
instead of waiting for a CI scan. PrivateAssets=all keeps the analyzer
out of the NuGet graph we ship to consumers. -->
<ItemGroup>
<PackageReference Include="SonarAnalyzer.CSharp">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>analyzers; build; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
</Project>