-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDirectory.Build.props
More file actions
78 lines (66 loc) · 3.65 KB
/
Copy pathDirectory.Build.props
File metadata and controls
78 lines (66 loc) · 3.65 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
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="General">
<Authors>Xavier John</Authors>
<Company>$(Authors)</Company>
<Copyright>Copyright © $(Company) 2026. All rights reserved.</Copyright>
<NeutralLanguage>en</NeutralLanguage>
<DefaultLanguage>en-US</DefaultLanguage>
<SolutionDir Condition=" '$(SolutionDir)' == '' OR '$(SolutionDir)' == '*Undefined if not building a solution or within Visual Studio*' ">$(MSBuildThisFileDirectory)</SolutionDir>
<IsTestProject>$(MSBuildProjectName.EndsWith('.Tests'))</IsTestProject>
<TargetFramework>net10.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<LangVersion>Latest</LangVersion>
<AnalysisLevel>latest-Recommended</AnalysisLevel>
<RepositoryType>git</RepositoryType>
<AllowMissingPrunePackageData>true</AllowMissingPrunePackageData>
<!-- Trim/AOT analyzers for library compatibility (opt-in) -->
<EnableTrimAnalyzer>true</EnableTrimAnalyzer>
<EnableAotAnalyzer>true</EnableAotAnalyzer>
</PropertyGroup>
<PropertyGroup Label="nuget">
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<RepositoryUrl>https://github.com/xavierjohn/Trellis.Microservices.git</RepositoryUrl>
<PackageProjectUrl>https://github.com/xavierjohn/Trellis.Microservices</PackageProjectUrl>
<PackageIcon>icon.png</PackageIcon>
<PackageReadmeFile>README.md</PackageReadmeFile>
</PropertyGroup>
<PropertyGroup Label="Build">
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
</PropertyGroup>
<PropertyGroup Label="Coverage">
<!-- Exclude T4-generated and source-generated files from coverage to keep metrics meaningful -->
<ExcludeByFile>$(ExcludeByFile);**/*.g.cs;**/System.Text.RegularExpressions.Generator/**/*.cs</ExcludeByFile>
<Exclude>$(Exclude);[System.Text.RegularExpressions.Generated.*]*</Exclude>
</PropertyGroup>
<ItemGroup>
<InternalsVisibleTo Include="$(MSBuildProjectName).Tests" />
<PackageReference Include="Nerdbank.GitVersioning" PrivateAssets="all" />
<PackageReference Include="DotNet.ReproducibleBuilds" PrivateAssets="All"/>
<PackageReference Include="Roslynator.Analyzers" PrivateAssets="all" />
</ItemGroup>
<PropertyGroup Condition=" '$(IsTestProject)' == 'false' ">
<RootNamespace>Trellis</RootNamespace>
<AssemblyName>$(MSBuildProjectName)</AssemblyName>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
<DebugType>embedded</DebugType>
<!-- Detect breaking changes in library APIs -->
<EnablePackageValidation>true</EnablePackageValidation>
<!-- Release hygiene mirrors xavierjohn/Trellis: DotNet.ReproducibleBuilds bundles
Microsoft.SourceLink.GitHub and sets Deterministic, ContinuousIntegrationBuild
(under CI), EmbedUntrackedSources. The properties below cover what it does NOT
enable by default. DebugType=embedded puts the PDB inside the DLL so symbols
travel with the binary; symbol packages are intentionally disabled. -->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
</PropertyGroup>
<ItemGroup Condition=" '$(IsTestProject)' == 'false' ">
<None Include="$(MSBuildThisFileDirectory)icon.png" Pack="true" PackagePath="\" />
</ItemGroup>
<ImportGroup Condition=" '$(IsTestProject)' == 'true' ">
<Import Project="$(MSBuildThisFileDirectory)build/test.props"/>
</ImportGroup>
</Project>