@halospv3/hce.shared-config 2.6.4 → 3.0.0-develop.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +356 -101
- package/README.md +100 -87
- package/dotnet/.github/workflows/_unit_test.yml +6 -3
- package/dotnet/.github/workflows/ci.yml +2 -2
- package/dotnet/.github/workflows/dotnet-release.yml +31 -28
- package/dotnet/.github/workflows/sample-dotnet-build.yml +16 -11
- package/dotnet/ExecNupkgDeterministicator.README.md +20 -0
- package/dotnet/ExecNupkgDeterministicator.targets +173 -0
- package/dotnet/GitVersion.yml +3 -1
- package/dotnet/GitVersion6.0.yml +3 -1
- package/dotnet/HCE.Shared.sln +34 -0
- package/dotnet/HCE.Shared.targets +1 -0
- package/dotnet/PublishAll.targets +2 -0
- package/dotnet/SignAfterPack.targets +104 -0
- package/dotnet/samples/HCE.Shared.DeterministicNupkg/Dummy.cs +6 -0
- package/dotnet/samples/HCE.Shared.DeterministicNupkg/HCE.Shared.DeterministicNupkg.csproj +21 -0
- package/dotnet/samples/HCE.Shared.SignAfterPack/Class1.cs +6 -0
- package/dotnet/samples/HCE.Shared.SignAfterPack/HCE.Shared.SignAfterPack.csproj +21 -0
- package/dotnet/samples/HCE.Shared.SignAfterPack/sampleCert.samplepfx +0 -0
- package/dotnet/samples/README.md +7 -0
- package/package.json +72 -73
- package/src/CaseInsensitiveMap.ts +34 -0
- package/src/commitlintConfig.ts +17 -9
- package/src/debug.ts +3 -3
- package/src/dotnet/GithubNugetRegistryInfo.ts +60 -0
- package/src/dotnet/GitlabNugetRegistryInfo.ts +112 -0
- package/src/dotnet/IsNextVersionAlreadyPublished.cli.ts +44 -0
- package/src/dotnet/MSBuildProject.ts +557 -76
- package/src/dotnet/MSBuildProjectProperties.ts +280 -15
- package/src/dotnet/NugetProjectProperties.ts +608 -0
- package/src/dotnet/NugetRegistryInfo.ts +939 -0
- package/src/dotnet/helpers.ts +448 -0
- package/src/eslintConfig.ts +174 -71
- package/src/index.ts +1 -3
- package/src/semantic-release__commit-analyzer.d.ts +44 -38
- package/src/semantic-release__exec.d.ts +15 -0
- package/src/semantic-release__git.d.ts +85 -88
- package/src/semantic-release__github.d.ts +139 -139
- package/src/semanticReleaseConfig.ts +106 -47
- package/src/semanticReleaseConfigDotnet.ts +394 -104
- package/src/setupGitPluginSpec.ts +149 -57
- package/src/tsconfig.json +8 -8
- package/src/utils/Exact.ts +49 -0
- package/src/utils/GracefulRecursion.d.ts +12 -0
- package/src/utils/env.ts +44 -0
- package/src/utils/execAsync.ts +77 -0
- package/src/utils/miscTypes.ts +17 -0
- package/src/utils/reflection/FunctionLike.d.ts +17 -0
- package/src/utils/reflection/GetterDescriptor.d.ts +8 -0
- package/src/utils/reflection/InstancePropertyDescriptorMap.d.ts +32 -0
- package/src/utils/reflection/InstanceTypeOrSelfPropertyDescriptorMap.d.ts +20 -0
- package/src/utils/reflection/OwnGetterDescriptorMap.d.ts +17 -0
- package/src/utils/reflection/OwnKeyOf.d.ts +20 -0
- package/src/utils/reflection/OwnPropertyDescriptorMap.d.ts +82 -0
- package/src/utils/reflection/PropertyDescriptorMap.d.ts +15 -0
- package/src/utils/reflection/filterForGetters.ts +59 -0
- package/src/utils/reflection/getOwnPropertyDescriptors.ts +52 -0
- package/src/utils/reflection/getOwnPropertyDescriptorsRecursively.ts +127 -0
- package/src/utils/reflection/getPrototypeChainOf.ts +85 -0
- package/src/utils/reflection/getPrototypeOf.ts +12 -0
- package/src/utils/reflection/inheritance.ts +262 -0
- package/src/utils/reflection/isConstructor.ts +74 -0
- package/src/utils/reflection/isGetterDescriptor.ts +11 -0
- package/src/utils/reflection/listOwnGetters.ts +80 -0
- package/src/utils/reflection.ts +18 -0
- package/cjs/commitlintConfig-wrapper.mjs +0 -6
- package/cjs/commitlintConfig.cjs +0 -14
- package/cjs/commitlintConfig.cjs.map +0 -1
- package/cjs/commitlintConfig.d.ts +0 -4
- package/cjs/commitlintConfig.d.ts.map +0 -1
- package/cjs/debug.cjs +0 -13
- package/cjs/debug.cjs.map +0 -1
- package/cjs/debug.d.ts +0 -4
- package/cjs/debug.d.ts.map +0 -1
- package/cjs/dotnet/MSBuildProject.cjs +0 -84
- package/cjs/dotnet/MSBuildProject.cjs.map +0 -1
- package/cjs/dotnet/MSBuildProject.d.ts +0 -42
- package/cjs/dotnet/MSBuildProject.d.ts.map +0 -1
- package/cjs/dotnet/MSBuildProjectProperties.cjs +0 -22
- package/cjs/dotnet/MSBuildProjectProperties.cjs.map +0 -1
- package/cjs/dotnet/MSBuildProjectProperties.d.ts +0 -13
- package/cjs/dotnet/MSBuildProjectProperties.d.ts.map +0 -1
- package/cjs/dotnet/createDummyNupkg.cjs +0 -26
- package/cjs/dotnet/createDummyNupkg.cjs.map +0 -1
- package/cjs/dotnet/createDummyNupkg.d.ts +0 -2
- package/cjs/dotnet/createDummyNupkg.d.ts.map +0 -1
- package/cjs/dotnet/dotnetGHPR.cjs +0 -173
- package/cjs/dotnet/dotnetGHPR.cjs.map +0 -1
- package/cjs/dotnet/dotnetGHPR.d.ts +0 -37
- package/cjs/dotnet/dotnetGHPR.d.ts.map +0 -1
- package/cjs/dotnet/dotnetGLPR.cjs +0 -41
- package/cjs/dotnet/dotnetGLPR.cjs.map +0 -1
- package/cjs/dotnet/dotnetGLPR.d.ts +0 -13
- package/cjs/dotnet/dotnetGLPR.d.ts.map +0 -1
- package/cjs/dotnet/dotnetHelpers.cjs +0 -141
- package/cjs/dotnet/dotnetHelpers.cjs.map +0 -1
- package/cjs/dotnet/dotnetHelpers.d.ts +0 -26
- package/cjs/dotnet/dotnetHelpers.d.ts.map +0 -1
- package/cjs/dotnet-wrapper.mjs +0 -6
- package/cjs/dotnet.cjs +0 -15
- package/cjs/dotnet.cjs.map +0 -1
- package/cjs/dotnet.d.ts +0 -7
- package/cjs/dotnet.d.ts.map +0 -1
- package/cjs/envUtils-wrapper.mjs +0 -6
- package/cjs/envUtils.cjs +0 -37
- package/cjs/envUtils.cjs.map +0 -1
- package/cjs/envUtils.d.ts +0 -15
- package/cjs/envUtils.d.ts.map +0 -1
- package/cjs/eslintConfig-wrapper.mjs +0 -6
- package/cjs/eslintConfig.cjs +0 -52
- package/cjs/eslintConfig.cjs.map +0 -1
- package/cjs/eslintConfig.d.ts +0 -3
- package/cjs/eslintConfig.d.ts.map +0 -1
- package/cjs/findStaticConfig-wrapper.mjs +0 -6
- package/cjs/findStaticConfig.cjs +0 -34
- package/cjs/findStaticConfig.cjs.map +0 -1
- package/cjs/findStaticConfig.d.ts +0 -2
- package/cjs/findStaticConfig.d.ts.map +0 -1
- package/cjs/index-wrapper.mjs +0 -6
- package/cjs/index.cjs +0 -10
- package/cjs/index.cjs.map +0 -1
- package/cjs/index.d.ts +0 -5
- package/cjs/index.d.ts.map +0 -1
- package/cjs/semantic-release__commit-analyzer.d.cjs +0 -2
- package/cjs/semantic-release__commit-analyzer.d.cjs.map +0 -1
- package/cjs/semantic-release__git.d.cjs +0 -2
- package/cjs/semantic-release__git.d.cjs.map +0 -1
- package/cjs/semantic-release__github.d.cjs +0 -2
- package/cjs/semantic-release__github.d.cjs.map +0 -1
- package/cjs/semanticReleaseConfig-wrapper.mjs +0 -6
- package/cjs/semanticReleaseConfig.cjs +0 -33
- package/cjs/semanticReleaseConfig.cjs.map +0 -1
- package/cjs/semanticReleaseConfig.d.ts +0 -4
- package/cjs/semanticReleaseConfig.d.ts.map +0 -1
- package/cjs/semanticReleaseConfigDotnet-wrapper.mjs +0 -7
- package/cjs/semanticReleaseConfigDotnet.cjs +0 -112
- package/cjs/semanticReleaseConfigDotnet.cjs.map +0 -1
- package/cjs/semanticReleaseConfigDotnet.d.ts +0 -51
- package/cjs/semanticReleaseConfigDotnet.d.ts.map +0 -1
- package/cjs/setupGitPluginSpec-wrapper.mjs +0 -6
- package/cjs/setupGitPluginSpec.cjs +0 -67
- package/cjs/setupGitPluginSpec.cjs.map +0 -1
- package/cjs/setupGitPluginSpec.d.ts +0 -19
- package/cjs/setupGitPluginSpec.d.ts.map +0 -1
- package/src/dotnet/createDummyNupkg.ts +0 -30
- package/src/dotnet/dotnetGHPR.ts +0 -232
- package/src/dotnet/dotnetGLPR.ts +0 -46
- package/src/dotnet/dotnetHelpers.ts +0 -184
- package/src/dotnet.ts +0 -6
- package/src/envUtils.ts +0 -36
- package/src/findStaticConfig.ts +0 -31
- package/static/.releaserc.yml +0 -35
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
2
|
+
<!-- ExecNupkgDeterministicator
|
|
3
|
+
<Summary>
|
|
4
|
+
| Inputs | Values/Types | Default | Usage |
|
|
5
|
+
| - - - - - - - - - - - | - - - - - - - - - - - - - - | - - - - - - - - - - - - - - | - - - - - - |
|
|
6
|
+
| Deterministic | `'true'`/`'false'`/`''` | `'true'` | If true, run NupkgDeterministicator on the nupkg and snupkg (if applicable) |
|
|
7
|
+
| PackageOutputPath | string | `'$(OutputPath)'` | The directory in which the package was created |
|
|
8
|
+
| PackageId | string | `'$(AssemblyName)'` | Used to identify the nupkg and symbols package |
|
|
9
|
+
| PackageVersion | string | `'$(Version)'` | Used to identify the nupkg and symbols package |
|
|
10
|
+
| IncludeSymbols | `'true'`/`'false'`/`''` | `''` (falsey) | If true, deterministicate the symbols package |
|
|
11
|
+
| SymbolPackageFormat | `'symbols.nupkg'`/`'snupkg'`| `'symbols.nupkg'` (legacy) | Used to identify the symbols package |
|
|
12
|
+
</Summary>
|
|
13
|
+
TODO: contribute 'Kuinox.NupkgDeterministicator.MSBuild' and deprecate this target. https://github.com/Kuinox/NupkgDeterministicator
|
|
14
|
+
https://stackoverflow.com/a/16804205/14894786
|
|
15
|
+
|
|
16
|
+
The first "finished" version of this file is located at https://gist.github.com/BinToss/5776bf9efd962e8885f4427c72498480
|
|
17
|
+
-->
|
|
18
|
+
<Target Condition="'$(Deterministic)' == 'true'" Name="ExecNupkgDeterministicator" AfterTargets="Pack">
|
|
19
|
+
<PropertyGroup>
|
|
20
|
+
<_IsAlreadyDeterministic>false</_IsAlreadyDeterministic>
|
|
21
|
+
<_PackageFullPathNoExt>$(PackageOutputPath)\$(PackageId).$(PackageVersion)</_PackageFullPathNoExt>
|
|
22
|
+
<_PackageOutputPathIsFullyQualified>$([System.IO.Path]::IsPathFullyQualified("$(PackageOutputPath)"))</_PackageOutputPathIsFullyQualified>
|
|
23
|
+
<_PackageFullPathNoExt Condition=" '$(_PackageOutputPathIsFullyQualified)' != 'true' ">$(MSBuildProjectDirectory)\$(PackageOutputPath)\$(PackageId).$(PackageVersion)</_PackageFullPathNoExt>
|
|
24
|
+
<_PackageFullPath>$(_PackageFullPathNoExt).nupkg</_PackageFullPath>
|
|
25
|
+
<_PackageSymbolsFullPath Condition=" ('$(IncludeSymbols)' == 'true')">$(_PackageFullPathNoExt).$(SymbolPackageFormat)</_PackageSymbolsFullPath>
|
|
26
|
+
<_ToolListLocalExitCode>0</_ToolListLocalExitCode>
|
|
27
|
+
<_ToolListGlobalExitCode>0</_ToolListGlobalExitCode>
|
|
28
|
+
<!-- <PATH Condition=" '$(CI)' == 'true' AND '$(OS)' == 'Unix'">/usr/share/dotnet:$(PATH)</PATH> -->
|
|
29
|
+
<_PATH_multiline Condition=" '$(OS)' == 'Unix' ">
|
|
30
|
+
$(PATH.Replace(":", $([System.Environment]::NewLine)))
|
|
31
|
+
</_PATH_multiline>
|
|
32
|
+
<_PATH_multiline Condition=" '$(OS)' == 'Windows_NT' ">
|
|
33
|
+
$(PATH.Replace(";", $([System.Environment]::NewLine)))
|
|
34
|
+
</_PATH_multiline>
|
|
35
|
+
</PropertyGroup>
|
|
36
|
+
|
|
37
|
+
<Exec Command="dotnet --info" ConsoleToMSBuild="true" />
|
|
38
|
+
|
|
39
|
+
<!-- Check if the tool is installed locally (i.e. added to './.config/dotnet-tools.json') -->
|
|
40
|
+
<Exec
|
|
41
|
+
Command="dotnet tool list kuinox.nupkgdeterministicator"
|
|
42
|
+
StandardOutputImportance="low"
|
|
43
|
+
ContinueOnError="true" >
|
|
44
|
+
<Output TaskParameter="ExitCode" PropertyName="_ToolListLocalExitCode" />
|
|
45
|
+
</Exec>
|
|
46
|
+
<!-- Check if `dotnet tool` is unavailable. Yes, this is possible. It caused a week of panic. -->
|
|
47
|
+
<!-- A. No .NET SDK could be found. Only .NET runtimes. -->
|
|
48
|
+
<!-- B. The SDK version specified in global.json is unavailable. -->
|
|
49
|
+
<Error Condition=" '$(_ToolListLocalExitCode)' == '145' " Text="
|
|
50
|
+
`dotnet tool` subcommand is unavailable: .NET SDK not found.
|
|
51
|
+
If this occurs on a GitHub Actions runner, this process's PATH may be missing the `actions/setup-dotnet` SDK path. On Ubuntu runners, this is `/usr/share/dotnet/`.
|
|
52
|
+
Alternatively, this error could may the SDK version specified in the nearest global.json is unavailable.
|
|
53
|
+
Current PATH:
|
|
54
|
+
$(_PATH_multiline)"
|
|
55
|
+
/>
|
|
56
|
+
<!-- Error codes other than 0, 1, and 145 are unknown and cannot be handled. -->
|
|
57
|
+
<Error Condition=" ('$(_ToolListLocalExitCode)' != '0') AND ('$(_ToolListLocalExitCode)' != '1')"
|
|
58
|
+
Text="The Exec command 'dotnet tool list kuinox.nupkgdeterministicator' exited with the unrecognized code '$(_ToolListLocalExitCode)'."
|
|
59
|
+
/>
|
|
60
|
+
|
|
61
|
+
<!-- If the tool is not installed locally, check if it's installed globally. -->
|
|
62
|
+
<Exec Condition=" '$(_ToolListLocalExitCode)' == '1' "
|
|
63
|
+
Command="dotnet tool list -g kuinox.nupkgdeterministicator"
|
|
64
|
+
StandardOutputImportance="low"
|
|
65
|
+
ContinueOnError="true"
|
|
66
|
+
ConsoleToMsBuild="true" >
|
|
67
|
+
<Output TaskParameter="ExitCode" PropertyName="_ToolListGlobalExitCode" />
|
|
68
|
+
</Exec>
|
|
69
|
+
<!-- Error codes other than 0 and 1 are unknown and cannot be handled. -->
|
|
70
|
+
<Error Condition=" ('$(_ToolListGlobalExitCode)' != '0') AND ('$(_ToolListGlobalExitCode)' != '1')"
|
|
71
|
+
Text="The Exec command 'dotnet tool list -g kuinox.nupkgdeterministicator' exited with the unrecognized code '$(_ToolListGlobalExitCode)'."
|
|
72
|
+
/>
|
|
73
|
+
|
|
74
|
+
<!-- If NupkgDeterministicator not installed locally nor globally, Error -->
|
|
75
|
+
<Error Condition=" '$(_ToolListGlobalExitCode)' != '0' AND '$(_ToolListLocalExitCode)' != '0' "
|
|
76
|
+
Text="
|
|
77
|
+
Kuinox.NupkgDeterministicator is unavailable. Run ONE of the following commands and try again:
|
|
78
|
+
dotnet tool install -g Kuinox.NupkgDeterministicator
|
|
79
|
+
dotnet tool install --create-manifest-if-needed Kuinox.NupkgDeterministicator
|
|
80
|
+
" />
|
|
81
|
+
|
|
82
|
+
<PropertyGroup>
|
|
83
|
+
<_BaseCmd>NupkgDeterministicator</_BaseCmd>
|
|
84
|
+
<_BaseCmd Condition=" '$(_ToolListLocalExitCode)' == '0' ">dotnet tool run $(_BaseCmd)</_BaseCmd>
|
|
85
|
+
</PropertyGroup>
|
|
86
|
+
|
|
87
|
+
<Exec Command="dotnet tool restore" />
|
|
88
|
+
|
|
89
|
+
<!-- determinize the nupkg -->
|
|
90
|
+
<Exec
|
|
91
|
+
Command="$(_BaseCmd) $(_PackageFullPath)"
|
|
92
|
+
ConsoleToMsBuild="true"
|
|
93
|
+
IgnoreExitCode="true"
|
|
94
|
+
StandardErrorImportance="Low"
|
|
95
|
+
StandardOutputImportance="Low"
|
|
96
|
+
><Output
|
|
97
|
+
TaskParameter="ConsoleOutput"
|
|
98
|
+
ItemName="_ConsoleOutput" />
|
|
99
|
+
<Output
|
|
100
|
+
TaskParameter="ExitCode"
|
|
101
|
+
PropertyName="_ExitCode" />
|
|
102
|
+
</Exec>
|
|
103
|
+
|
|
104
|
+
<CreateProperty Value="@(_ConsoleOutput, '
|
|
105
|
+
')">
|
|
106
|
+
<Output TaskParameter="Value" PropertyName="_ConsoleOutput" />
|
|
107
|
+
</CreateProperty>
|
|
108
|
+
<CreateProperty Value="$(_ConsoleOutput.Contains('System.IO.Directory.Move'))">
|
|
109
|
+
<Output TaskParameter="Value" PropertyName="_IsAlreadyDeterministic" />
|
|
110
|
+
</CreateProperty>
|
|
111
|
+
|
|
112
|
+
<!-- Error 150 indicates that the .NET runtime required by this tool is unavailable (e.g. .NET runtime 6.0; Framework: 'Microsoft.NETCore.App', version '6.0.0' (x64)) -->
|
|
113
|
+
<!-- Error 135 indicates an unhandled exception. In the past, this was caused by an invalid path addressed by _PackageOutputPathIsFullyQualified. -->
|
|
114
|
+
<Error Condition=" '$(_ExitCode)' != '0' AND '$(_IsAlreadyDeterministic)' != 'true' "
|
|
115
|
+
Code="$(_ExitCode)"
|
|
116
|
+
Text="$(_ConsoleOutput)"
|
|
117
|
+
/>
|
|
118
|
+
|
|
119
|
+
<!-- if success and exit code 0... -->
|
|
120
|
+
<Message
|
|
121
|
+
Condition=" '$(_ExitCode)' == '0' "
|
|
122
|
+
Text="Determinized package '$(_PackageFullPath)'"
|
|
123
|
+
Importance="High"
|
|
124
|
+
/>
|
|
125
|
+
<!-- else if (System.IO.IOException: Source and destination path must be different.) -->
|
|
126
|
+
<Message
|
|
127
|
+
Condition=" '$(_IsAlreadyDeterministic)' == 'true' "
|
|
128
|
+
Text="Package up-to-date and deterministic ('$(_PackageFullPath)')"
|
|
129
|
+
Importance="High"
|
|
130
|
+
/>
|
|
131
|
+
|
|
132
|
+
<!-- determinize the snupkg -->
|
|
133
|
+
<Exec
|
|
134
|
+
Command="$(_BaseCmd) $(_PackageSymbolsFullPath)"
|
|
135
|
+
Condition=" '$(IncludeSymbols)' == 'true' "
|
|
136
|
+
ConsoleToMsBuild="true"
|
|
137
|
+
IgnoreExitCode="true"
|
|
138
|
+
StandardErrorImportance="Low"
|
|
139
|
+
StandardOutputImportance="Low"
|
|
140
|
+
><Output
|
|
141
|
+
TaskParameter="ConsoleOutput"
|
|
142
|
+
ItemName="ConsoleOutput" />
|
|
143
|
+
<Output
|
|
144
|
+
TaskParameter="ExitCode"
|
|
145
|
+
ItemName="ExitCode" />
|
|
146
|
+
</Exec>
|
|
147
|
+
|
|
148
|
+
<CreateProperty Value="@(_ConsoleOutput, '
|
|
149
|
+
')">
|
|
150
|
+
<Output TaskParameter="Value" PropertyName="_ConsoleOutput" />
|
|
151
|
+
</CreateProperty>
|
|
152
|
+
<CreateProperty Value="$(_ConsoleOutput.Contains('System.IO.Directory.Move'))">
|
|
153
|
+
<Output TaskParameter="Value" PropertyName="_IsAlreadyDeterministic" />
|
|
154
|
+
</CreateProperty>
|
|
155
|
+
|
|
156
|
+
<Error Condition=" '$(_ExitCode)' != '0' AND '$(_IsAlreadyDeterministic)' != 'true' "
|
|
157
|
+
Code="$(_ExitCode)"
|
|
158
|
+
Text="$(_ConsoleOutput)"
|
|
159
|
+
/>
|
|
160
|
+
|
|
161
|
+
<!-- if success and exit code 0... -->
|
|
162
|
+
<Message Condition=" '$(IncludeSymbols)' == 'true' AND '$(_ExitCode)' == '0' "
|
|
163
|
+
Text="Determinized package '$(_PackageSymbolsFullPath)'"
|
|
164
|
+
Importance="High"
|
|
165
|
+
/>
|
|
166
|
+
<!-- else if success and exit code -532462766 (System.IO.IOException: Source and destination path must be different.) -->
|
|
167
|
+
<Message
|
|
168
|
+
Condition=" '$(IncludeSymbols)' == 'true' AND '$(_IsAlreadyDeterministic)' == 'true' "
|
|
169
|
+
Text="Package up-to-date and deterministic ('$(_PackageSymbolsFullPath)')"
|
|
170
|
+
Importance="High"
|
|
171
|
+
/>
|
|
172
|
+
</Target>
|
|
173
|
+
</Project>
|
package/dotnet/GitVersion.yml
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/GitTools/GitVersion/main/schemas/5.12/GitVersion.configuration.json
|
|
2
2
|
# https://gitversion.net/docs/reference/configuration
|
|
3
3
|
mode: Mainline
|
|
4
|
-
major-version-bump-message:
|
|
4
|
+
major-version-bump-message:
|
|
5
|
+
"^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test)(\\([\\w\\s-]*\\))?(!:|:.*\\n\\n((.+\\n)+\\n)?BREAKING
|
|
6
|
+
CHANGE:\\s.+)"
|
|
5
7
|
minor-version-bump-message: "^(feat)(\\([\\w\\s-]*\\))?:"
|
|
6
8
|
patch-version-bump-message: "^(build|chore|ci|docs|fix|perf|refactor|revert|style|test)(\\([\\w\\s-]*\\))?:"
|
package/dotnet/GitVersion6.0.yml
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/GitTools/GitVersion/main/schemas/6.0/GitVersion.configuration.json
|
|
2
2
|
# https://gitversion.net/docs/reference/configuration
|
|
3
3
|
workflow: TrunkBased/v1
|
|
4
|
-
major-version-bump-message:
|
|
4
|
+
major-version-bump-message:
|
|
5
|
+
"^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test)(\\([\\w\\s-]*\\))?(!:|:.*\\n\\n((.+\\n)+\\n)?BREAKING
|
|
6
|
+
CHANGE:\\s.+)"
|
|
5
7
|
minor-version-bump-message: "^(feat)(\\([\\w\\s-]*\\))?:"
|
|
6
8
|
patch-version-bump-message: "^(build|chore|ci|docs|fix|perf|refactor|revert|style|test)(\\([\\w\\s-]*\\))?:"
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
|
|
2
|
+
Microsoft Visual Studio Solution File, Format Version 12.00
|
|
3
|
+
# Visual Studio Version 17
|
|
4
|
+
VisualStudioVersion = 17.0.31903.59
|
|
5
|
+
MinimumVisualStudioVersion = 10.0.40219.1
|
|
6
|
+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{2E51AEEF-16E6-4514-9178-A28DE5B0EEC2}"
|
|
7
|
+
EndProject
|
|
8
|
+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HCE.Shared.DeterministicNupkg", "samples\HCE.Shared.DeterministicNupkg\HCE.Shared.DeterministicNupkg.csproj", "{087A1847-2555-47E0-B6D0-FCD8BC100DC9}"
|
|
9
|
+
EndProject
|
|
10
|
+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HCE.Shared.SignAfterPack", "samples\HCE.Shared.SignAfterPack\HCE.Shared.SignAfterPack.csproj", "{F7577073-D5A0-48AC-8D86-6AE193BE6274}"
|
|
11
|
+
EndProject
|
|
12
|
+
Global
|
|
13
|
+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
14
|
+
Debug|Any CPU = Debug|Any CPU
|
|
15
|
+
Release|Any CPU = Release|Any CPU
|
|
16
|
+
EndGlobalSection
|
|
17
|
+
GlobalSection(SolutionProperties) = preSolution
|
|
18
|
+
HideSolutionNode = FALSE
|
|
19
|
+
EndGlobalSection
|
|
20
|
+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
21
|
+
{087A1847-2555-47E0-B6D0-FCD8BC100DC9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
22
|
+
{087A1847-2555-47E0-B6D0-FCD8BC100DC9}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
23
|
+
{087A1847-2555-47E0-B6D0-FCD8BC100DC9}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
24
|
+
{087A1847-2555-47E0-B6D0-FCD8BC100DC9}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
25
|
+
{F7577073-D5A0-48AC-8D86-6AE193BE6274}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
26
|
+
{F7577073-D5A0-48AC-8D86-6AE193BE6274}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
27
|
+
{F7577073-D5A0-48AC-8D86-6AE193BE6274}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
28
|
+
{F7577073-D5A0-48AC-8D86-6AE193BE6274}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
29
|
+
EndGlobalSection
|
|
30
|
+
GlobalSection(NestedProjects) = preSolution
|
|
31
|
+
{087A1847-2555-47E0-B6D0-FCD8BC100DC9} = {2E51AEEF-16E6-4514-9178-A28DE5B0EEC2}
|
|
32
|
+
{F7577073-D5A0-48AC-8D86-6AE193BE6274} = {2E51AEEF-16E6-4514-9178-A28DE5B0EEC2}
|
|
33
|
+
EndGlobalSection
|
|
34
|
+
EndGlobal
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Import all other .props and .targets in this directory
|
|
3
3
|
If you import this, you don't need to import anything else. -->
|
|
4
4
|
<Project Label="All HCE.Shared Properties and Targets">
|
|
5
|
+
<Import Project="./ExecNupkgDeterministicator.targets" />
|
|
5
6
|
<Import Project="./HCE.Shared.CI.props" />
|
|
6
7
|
<Import Project="./ZipPublishDir.targets" />
|
|
7
8
|
<!-- Must be explicitly targeted via 'dotnet project.csproj -t:PublishAll'. May lead to incompatibility errors -->
|
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
Multi-runtimes?
|
|
14
14
|
Only useful if you need Self-Contained i.e. include the runtime with your project.
|
|
15
15
|
If you want to publish Single-File, you don't *need* Self-Contained. Just inform users they must install a particular runtime/framework beforehand.
|
|
16
|
+
|
|
17
|
+
Note: "PlatformTarget" (CPU arch) is overridden by RuntimeIdentifier.
|
|
16
18
|
-->
|
|
17
19
|
<Project>
|
|
18
20
|
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
<!-- Inputs:
|
|
2
|
+
bool IncludeSymbols
|
|
3
|
+
string PackageId
|
|
4
|
+
string PackageOutputPath
|
|
5
|
+
string PackageVersion
|
|
6
|
+
/// formats: ["symbols.nupkg", "snupkg"]
|
|
7
|
+
string SymbolPackageFormat = "symbols.nupkg";
|
|
8
|
+
|
|
9
|
+
Also, see PropertyGroup 'DotnetNugetSign'
|
|
10
|
+
-->
|
|
11
|
+
<Project>
|
|
12
|
+
<PropertyGroup Condition=" '$(AssemblyName)' == '' ">
|
|
13
|
+
<AssemblyName>HCE.Shared.SignAfterPack</AssemblyName>
|
|
14
|
+
<PackageOutputPath>$(MSBuildThisFileDirectory)samples\HCE.Shared.SignAfterPack\bin\Release\</PackageOutputPath>
|
|
15
|
+
<PackageId>AssemblyName</PackageId>
|
|
16
|
+
<PackageVersion>1.0.0</PackageVersion>
|
|
17
|
+
<SymbolPackageFormat>symbols.nupkg</SymbolPackageFormat>
|
|
18
|
+
</PropertyGroup>
|
|
19
|
+
|
|
20
|
+
<PropertyGroup Label="DotnetNugetSign">
|
|
21
|
+
<!-- Directory where the signed package(s) should be saved. By default the original package is overwritten by the signed package. -->
|
|
22
|
+
<DotnetNugetSignOutput Condition=" '$(DotnetNugetSignOutput)' == '' "></DotnetNugetSignOutput>
|
|
23
|
+
<!-- File path to the certificate to be used while signing the package. -->
|
|
24
|
+
<DotnetNugetSignCertificatePath Condition=" '$(DotnetNugetSignCertificatePath)' == '' "></DotnetNugetSignCertificatePath>
|
|
25
|
+
<!-- (default: "My") Name of the X.509 certificate store to use to search for the certificate. Defaults to "My", the X.509 certificate store for personal certificates. This option should be used when specifying the certificate via $(DotnetNugetSignCertificateSubjectName) or $(DotnetNugetSignCertificateFingerprint).
|
|
26
|
+
(values: ["AddressBook","AuthRoot","CertificateAuthority","Disallowed","My","Root","TrustedPeople","TrustedPublisher"])
|
|
27
|
+
-->
|
|
28
|
+
<DotnetNugetSignCertificateStoreName Condition=" '$(DotnetNugetSignCertificateStoreName)' == '' "></DotnetNugetSignCertificateStoreName>
|
|
29
|
+
<!-- (default: "CurrentUser") Name of the X.509 certificate store to use to search for the certificate. Defaults to "CurrentUser", the X.509 certificate store used by the current user. This option should be used when specifying the certificate via $(DotnetNugetSignCertificateSubjectName) or $(DotnetNugetSignCertificateFingerprint). -->
|
|
30
|
+
<DotnetNugetSignCertificateStoreLocation Condition=" '$(DotnetNugetSignCertificateStoreLocation)' == '' "></DotnetNugetSignCertificateStoreLocation>
|
|
31
|
+
<!-- (required if DotnetNugetSignCertificatePath unspecified) Subject name of the certificate used to search a local certificate store for the certificate. The search is a case-insensitive string comparison using the supplied value, which will find all certificates with the subject name containing that string, regardless of other subject values. The certificate store can be specified by $(DotnetNugetSignCertificateStoreName) and $(DotnetNugetSignCertificateStoreLocation) options. -->
|
|
32
|
+
<DotnetNugetSignCertificateSubjectName Condition=" '$(DotnetNugetSignCertificateSubjectName)' == '' "></DotnetNugetSignCertificateSubjectName>
|
|
33
|
+
<!-- (required if DotnetNugetSignCertificatePath unspecified) SHA-1 fingerprint of the certificate used to search a local certificate store for the certificate. The certificate store can be specified by $(DotnetNugetSignCertificateStoreName) and $(DotnetNugetSignCertificateStoreLocation) options. -->
|
|
34
|
+
<DotnetNugetSignCertificateFingerprint Condition=" '$(DotnetNugetSignCertificateFingerprint)' == '' "></DotnetNugetSignCertificateFingerprint>
|
|
35
|
+
<!-- Password for the certificate, if needed. This option can be used to specify the password for the certificate. The command will throw an error message if certificate is password protected but password is not provided as input. -->
|
|
36
|
+
<DotnetNugetSignCertificatePassword Condition=" '$(DotnetNugetSignCertificatePassword)' == '' "></DotnetNugetSignCertificatePassword>
|
|
37
|
+
<!-- (default: "SHA256") Hash algorithm to be used by the RFC 3161 timestamp server. Defaults to SHA256. -->
|
|
38
|
+
<DotnetNugetSignHashAlgorithm Condition=" '$(DotnetNugetSignHashAlgorithm)' == '' "></DotnetNugetSignHashAlgorithm>
|
|
39
|
+
<!-- URL to an RFC 3161 timestamping server. Signed packages should include a timestamp to make sure the signature remains valid when the signing certificate has expired. Else the sign operation will produce a warning. See NU3002 (https://learn.microsoft.com/en-us/nuget/reference/errors-and-warnings/nu3002)
|
|
40
|
+
(Noah Sherwin: for the sake of convenience, I have set the default value of this property to https://rfc3161.ai.moda/) -->
|
|
41
|
+
<DotnetNugetSignTimestamper Condition=" '$(DotnetNugetSignTimestamper)' == '' ">https://rfc3161.ai.moda/</DotnetNugetSignTimestamper>
|
|
42
|
+
<!-- (default: "SHA256") Hash algorithm to be used by the RFC 3161 timestamp server. Defaults to SHA256. -->
|
|
43
|
+
<DotnetNugetSignTimestampHashAlgorithm Condition=" '$(DotnetNugetSignTimestampHashAlgorithm)' == '' "></DotnetNugetSignTimestampHashAlgorithm>
|
|
44
|
+
<!-- (default: false) Switch to indicate if the current signature should be overwritten. By default the command will fail if the package already has a signature. -->
|
|
45
|
+
<DotnetNugetSignOverwrite Condition=" '$(DotnetNugetSignOverwrite)' == '' "></DotnetNugetSignOverwrite>
|
|
46
|
+
</PropertyGroup>
|
|
47
|
+
|
|
48
|
+
<Target Name="SignAfterPack" AfterTargets="Pack">
|
|
49
|
+
<PropertyGroup>
|
|
50
|
+
|
|
51
|
+
<_PackageFileName>$(PackageId).$(PackageVersion).nupkg</_PackageFileName>
|
|
52
|
+
<_PackageFullPath>$([MSBuild]::NormalizePath($(PackageOutputPath), $(_PackageFileName)))</_PackageFullPath>
|
|
53
|
+
<_PackageFullPath>$([System.IO.Path]::GetRelativePath($(MSBuildProjectDirectory), $(_PackageFullPath)))</_PackageFullPath>
|
|
54
|
+
|
|
55
|
+
<_SymbolPackageFileName>$(PackageId).$(PackageVersion).$(SymbolPackageFormat)</_SymbolPackageFileName>
|
|
56
|
+
<_SymbolPackageFullPath>$([MSBuild]::NormalizePath($(PackageOutputPath), $(_SymbolPackageFileName)))</_SymbolPackageFullPath>
|
|
57
|
+
<_SymbolPackageFullPath>$([System.IO.Path]::GetRelativePath($(MSBuildProjectDirectory), $(_SymbolPackageFullPath)))</_SymbolPackageFullPath>
|
|
58
|
+
|
|
59
|
+
<!-- If a value contains a Space and is not enclosed by Double-Quotes, enclose it -->
|
|
60
|
+
<_space>$([MSBuild]::Escape(' '))</_space>
|
|
61
|
+
<_dquote>"</_dquote>
|
|
62
|
+
<_PackageFullPath Condition=" '$(_PackageFullPath.Contains($(_space)))' == 'true' AND '$(_PackageFullPath.StartsWith($(_dquote)))' == 'false' AND '$(_PackageFullPath.EndsWith($(_dquote)))' == 'false' ">"$(_PackageFullPath)"</_PackageFullPath>
|
|
63
|
+
<_SymbolPackageFullPath Condition=" '$(_SymbolPackageFullPath.Contains($(_space))' == 'true' AND '$(_SymbolPackageFullPath.StartsWith($(_dquote)))' == 'false' AND '$(_SymbolPackageFullPath.EndsWith($(_dquote)))' == 'false' ">"$(_SymbolPackageFullPath)"</_SymbolPackageFullPath>
|
|
64
|
+
<DotnetNugetSignOutput Condition=" '$(DotnetNugetSignOutput.Contains($(_space))' == 'true' AND '$(DotnetNugetSignOutput.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignOutput.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignOutput)</DotnetNugetSignOutput>
|
|
65
|
+
<DotnetNugetSignCertificatePath Condition=" '$(DotnetNugetSignCertificatePath.Contains($(_space))' == 'true' AND '$(DotnetNugetSignCertificatePath.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignCertificatePath.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignCertificatePath)"</DotnetNugetSignCertificatePath>
|
|
66
|
+
<DotnetNugetSignCertificateStoreName Condition=" '$(DotnetNugetSignCertificateStoreName.Contains($(_space))' == 'true' AND '$(DotnetNugetSignCertificateStoreName.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignCertificateStoreName.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignCertificateStoreName)"</DotnetNugetSignCertificateStoreName>
|
|
67
|
+
<DotnetNugetSignCertificateStoreLocation Condition=" '$(DotnetNugetSignCertificateStoreLocation.Contains($(_space))' == 'true' AND '$(DotnetNugetSignCertificateStoreLocation.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignCertificateStoreLocation.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignCertificateStoreLocation)"</DotnetNugetSignCertificateStoreLocation>
|
|
68
|
+
<DotnetNugetSignCertificateSubjectName Condition=" '$(DotnetNugetSignCertificateSubjectName.Contains($(_space))' == 'true' AND '$(DotnetNugetSignCertificateSubjectName.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignCertificateSubjectName.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignCertificateSubjectName)"</DotnetNugetSignCertificateSubjectName>
|
|
69
|
+
<DotnetNugetSignCertificateFingerprint Condition=" '$(DotnetNugetSignCertificateFingerprint.Contains($(_space))' == 'true' AND '$(DotnetNugetSignCertificateFingerprint.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignCertificateFingerprint.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignCertificateFingerprint)"</DotnetNugetSignCertificateFingerprint>
|
|
70
|
+
<DotnetNugetSignCertificatePassword Condition=" '$(DotnetNugetSignCertificatePassword.Contains($(_space))' == 'true' AND '$(DotnetNugetSignCertificatePassword.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignCertificatePassword.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignCertificatePassword)"</DotnetNugetSignCertificatePassword>
|
|
71
|
+
<DotnetNugetSignHashAlgorithm Condition=" '$(DotnetNugetSignHashAlgorithm.Contains($(_space))' == 'true' AND '$(DotnetNugetSignHashAlgorithm.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignHashAlgorithm.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignHashAlgorithm)"</DotnetNugetSignHashAlgorithm>
|
|
72
|
+
<DotnetNugetSignTimestamper Condition=" '$(DotnetNugetSignTimestamper.Contains($(_space))' == 'true' AND '$(DotnetNugetSignTimestamper.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignTimestamper.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignTimestamper)"</DotnetNugetSignTimestamper>
|
|
73
|
+
<DotnetNugetSignTimestampHashAlgorithm Condition=" '$(DotnetNugetSignTimestampHashAlgorithm.Contains($(_space))' == 'true' AND '$(DotnetNugetSignTimestampHashAlgorithm.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignTimestampHashAlgorithm.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignTimestampHashAlgorithm)"</DotnetNugetSignTimestampHashAlgorithm>
|
|
74
|
+
<DotnetNugetSignOverwrite Condition=" '$(DotnetNugetSignOverwrite.Contains($(_space))' == 'true' AND '$(DotnetNugetSignOverwrite.StartsWith($(_dquote))' == 'false' AND '$(DotnetNugetSignOverwrite.EndsWith($(_dquote))' == 'false' ">"$(DotnetNugetSignOverwrite)"</DotnetNugetSignOverwrite>
|
|
75
|
+
|
|
76
|
+
<!-- _argsDotnetNugetSign -->
|
|
77
|
+
|
|
78
|
+
<_argsDotnetNugetSignOutput Condition=" '$(DotnetNugetSignOutput)' != '' ">--output $(DotnetNugetSignOutput)</_argsDotnetNugetSignOutput>
|
|
79
|
+
<_argsDotnetNugetSignCertificatePath Condition=" '$(DotnetNugetSignCertificatePath)' != '' ">--certificate-path $(DotnetNugetSignCertificatePath.Trim())</_argsDotnetNugetSignCertificatePath>
|
|
80
|
+
<_argsDotnetNugetSignCertificateStoreName Condition=" '$(DotnetNugetSignCertificateStoreName)' != '' ">--certificate-store-name $(DotnetNugetSignCertificateStoreName)</_argsDotnetNugetSignCertificateStoreName>
|
|
81
|
+
<_argsDotnetNugetSignCertificateStoreLocation Condition=" '$(DotnetNugetSignCertificateStoreLocation)' != '' ">--certificate-store-location $(DotnetNugetSignCertificateStoreLocation)</_argsDotnetNugetSignCertificateStoreLocation>
|
|
82
|
+
<_argsDotnetNugetSignCertificateSubjectName Condition=" '$(DotnetNugetSignCertificateSubjectName)' != '' ">--certificate-subject-name $(DotnetNugetSignCertificateSubjectName)</_argsDotnetNugetSignCertificateSubjectName>
|
|
83
|
+
<_argsDotnetNugetSignCertificateFingerprint Condition=" '$(DotnetNugetSignCertificateFingerprint)' != '' ">--certificate-fingerprint $(DotnetNugetSignCertificateFingerprint)</_argsDotnetNugetSignCertificateFingerprint>
|
|
84
|
+
<_argsDotnetNugetSignCertificatePassword Condition=" '$(DotnetNugetSignCertificatePassword)' != '' ">--certificate-password $(DotnetNugetSignCertificatePassword)</_argsDotnetNugetSignCertificatePassword>
|
|
85
|
+
<_argsDotnetNugetSignHashAlgorithm Condition=" '$(DotnetNugetSignHashAlgorithm)' != '' ">--hash-algorithm $(DotnetNugetSignHashAlgorithm)</_argsDotnetNugetSignHashAlgorithm>
|
|
86
|
+
<_argsDotnetNugetSignTimestamper Condition=" '$(DotnetNugetSignTimestamper)' != '' ">--timestamper $(DotnetNugetSignTimestamper)</_argsDotnetNugetSignTimestamper>
|
|
87
|
+
<_argsDotnetNugetSignTimestampHashAlgorithm Condition=" '$(DotnetNugetSignTimestampHashAlgorithm)' != '' ">--timestamp-hash-algorithm $(DotnetNugetSignTimestampHashAlgorithm)</_argsDotnetNugetSignTimestampHashAlgorithm>
|
|
88
|
+
<_argsDotnetNugetSignOverwrite Condition=" '$(DotnetNugetSignOverwrite)' == 'true' ">--overwrite</_argsDotnetNugetSignOverwrite>
|
|
89
|
+
</PropertyGroup>
|
|
90
|
+
|
|
91
|
+
<ItemGroup>
|
|
92
|
+
<_args Include="$(_argsDotnetNugetSignOutput);$(_argsDotnetNugetSignCertificatePath)$(_argsDotnetNugetSignCertificateStoreName);$(_argsDotnetNugetSignCertificateStoreLocation);$(_argsDotnetNugetSignCertificateSubjectName);$(_argsDotnetNugetSignCertificateFingerprint);$(_argsDotnetNugetSignCertificatePassword);$(_argsDotnetNugetSignHashAlgorithm);$(_argsDotnetNugetSignTimestamper);$(_argsDotnetNugetSignTimestampHashAlgorithm);$(_argsDotnetNugetSignOverwrite)" /> <_PackageOutputs Include="$(_PackageFullPath)" />
|
|
93
|
+
<_PackageOutputs Condition=" '$(IncludeSymbols)' == 'true' " Include="$(_SymbolPackageFullPath)" />
|
|
94
|
+
</ItemGroup>
|
|
95
|
+
|
|
96
|
+
<Exec Condition=" '$(_SignAfterPackVerbose)' == 'true' "
|
|
97
|
+
Command="echo dotnet nuget sign @(_PackageOutputs, ' ') @(_args, ' ')" />
|
|
98
|
+
<Exec Command="dotnet nuget sign @(_PackageOutputs, ' ') @(_args, ' ')" />
|
|
99
|
+
</Target>
|
|
100
|
+
|
|
101
|
+
<!--
|
|
102
|
+
Todo: explore potential use of Nuget.Packaging's Signing namespace. See https://www.nuget.org/packages/NuGet.Packaging, https://github.com/NuGet/NuGet.Client/tree/dev/src/NuGet.Core/NuGet.Packaging/Signing
|
|
103
|
+
-->
|
|
104
|
+
</Project>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
|
2
|
+
|
|
3
|
+
<PropertyGroup>
|
|
4
|
+
<Description>A sample project for use by https://github.com/HaloSPV3/HCE.Shared. This package is published to test MSBuild Targets and other .NET/MSBuild capabilities.</Description>
|
|
5
|
+
<RepositoryUrl>https://github.com/HaloSPV3/HCE.Shared</RepositoryUrl>
|
|
6
|
+
<DevelopmentDependency>true</DevelopmentDependency>
|
|
7
|
+
<GenerateFullPaths>true</GenerateFullPaths>
|
|
8
|
+
<IncludeSymbols>true</IncludeSymbols>
|
|
9
|
+
<PackageOutputPath>packages</PackageOutputPath>
|
|
10
|
+
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
|
|
11
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
|
12
|
+
<Version>0.0.1-DUMMY</Version>
|
|
13
|
+
</PropertyGroup>
|
|
14
|
+
|
|
15
|
+
<!--
|
|
16
|
+
Executes Kuinox.NupkgDeterministicator after Pack to make the nupkg
|
|
17
|
+
(and symbols package, if applicable) deterministic.
|
|
18
|
+
See the targets file for its usage -->
|
|
19
|
+
<Import Project="../../ExecNupkgDeterministicator.targets" />
|
|
20
|
+
|
|
21
|
+
</Project>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
|
2
|
+
<PropertyGroup>
|
|
3
|
+
<Description>A sample project for use by https://github.com/HaloSPV3/HCE.Shared. This package is published to test MSBuild Targets and other .NET/MSBuild capabilities.</Description>
|
|
4
|
+
<RepositoryUrl>https://github.com/HaloSPV3/HCE.Shared</RepositoryUrl>
|
|
5
|
+
<DevelopmentDependency>true</DevelopmentDependency>
|
|
6
|
+
<TargetFramework>net8.0</TargetFramework>
|
|
7
|
+
<ImplicitUsings>enable</ImplicitUsings>
|
|
8
|
+
<Nullable>enable</Nullable>
|
|
9
|
+
<IncludeSymbols>true</IncludeSymbols>
|
|
10
|
+
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
|
|
11
|
+
</PropertyGroup>
|
|
12
|
+
|
|
13
|
+
<PropertyGroup>
|
|
14
|
+
<!-- This is a throwaway certificate used only for test-signing this project's nupkg.
|
|
15
|
+
Never `git add *.pfx` nor `git add` a password. -->
|
|
16
|
+
<DotnetNugetSignCertificatePassword>0</DotnetNugetSignCertificatePassword>
|
|
17
|
+
<DotnetNugetSignCertificatePath>./sampleCert.samplepfx</DotnetNugetSignCertificatePath>
|
|
18
|
+
<DotnetNugetSignOverwrite>true</DotnetNugetSignOverwrite>
|
|
19
|
+
</PropertyGroup>
|
|
20
|
+
<Import Project="../../SignAfterPack.targets" />
|
|
21
|
+
</Project>
|
|
Binary file
|