@halospv3/hce.shared-config 3.0.0-develop.2 → 3.0.0-develop.21
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 +164 -0
- package/dotnet/.github/workflows/_unit_test.yml +0 -3
- package/dotnet/.github/workflows/dotnet-release.yml +0 -3
- package/dotnet/.github/workflows/sample-dotnet-build.yml +0 -3
- package/dotnet/PublishAll.targets +3 -2
- package/dotnet/ZipPublishDir.targets +24 -29
- package/mjs/CaseInsensitiveMap.d.ts +12 -0
- package/mjs/CaseInsensitiveMap.d.ts.map +1 -0
- package/mjs/CaseInsensitiveMap.mjs +33 -0
- package/mjs/CaseInsensitiveMap.mjs.map +1 -0
- package/mjs/commitlintConfig.d.ts +12 -0
- package/mjs/commitlintConfig.d.ts.map +1 -0
- package/mjs/commitlintConfig.mjs +13 -0
- package/mjs/commitlintConfig.mjs.map +1 -0
- package/mjs/debug.d.ts +6 -0
- package/mjs/debug.d.ts.map +1 -0
- package/mjs/debug.mjs +9 -0
- package/mjs/debug.mjs.map +1 -0
- package/mjs/dotnet/GithubNugetRegistryInfo.d.ts +38 -0
- package/mjs/dotnet/GithubNugetRegistryInfo.d.ts.map +1 -0
- package/mjs/dotnet/GithubNugetRegistryInfo.mjs +43 -0
- package/mjs/dotnet/GithubNugetRegistryInfo.mjs.map +1 -0
- package/mjs/dotnet/GitlabNugetRegistryInfo.d.ts +62 -0
- package/mjs/dotnet/GitlabNugetRegistryInfo.d.ts.map +1 -0
- package/mjs/dotnet/GitlabNugetRegistryInfo.mjs +99 -0
- package/mjs/dotnet/GitlabNugetRegistryInfo.mjs.map +1 -0
- package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.d.ts +2 -0
- package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.d.ts.map +1 -0
- package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.mjs +41 -0
- package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.mjs.map +1 -0
- package/mjs/dotnet/MSBuildProject.d.ts +256 -0
- package/mjs/dotnet/MSBuildProject.d.ts.map +1 -0
- package/mjs/dotnet/MSBuildProject.mjs +447 -0
- package/mjs/dotnet/MSBuildProject.mjs.map +1 -0
- package/mjs/dotnet/MSBuildProjectProperties.d.ts +170 -0
- package/mjs/dotnet/MSBuildProjectProperties.d.ts.map +1 -0
- package/mjs/dotnet/MSBuildProjectProperties.mjs +260 -0
- package/mjs/dotnet/MSBuildProjectProperties.mjs.map +1 -0
- package/mjs/dotnet/NugetProjectProperties.d.ts +379 -0
- package/mjs/dotnet/NugetProjectProperties.d.ts.map +1 -0
- package/mjs/dotnet/NugetProjectProperties.mjs +577 -0
- package/mjs/dotnet/NugetProjectProperties.mjs.map +1 -0
- package/mjs/dotnet/NugetRegistryInfo.d.ts +384 -0
- package/mjs/dotnet/NugetRegistryInfo.d.ts.map +1 -0
- package/mjs/dotnet/NugetRegistryInfo.mjs +752 -0
- package/mjs/dotnet/NugetRegistryInfo.mjs.map +1 -0
- package/mjs/dotnet/helpers.d.ts +63 -0
- package/mjs/dotnet/helpers.d.ts.map +1 -0
- package/mjs/dotnet/helpers.mjs +354 -0
- package/mjs/dotnet/helpers.mjs.map +1 -0
- package/mjs/dotnet/index.d.ts +9 -0
- package/mjs/dotnet/index.d.ts.map +1 -0
- package/mjs/dotnet/index.mjs +9 -0
- package/mjs/dotnet/index.mjs.map +1 -0
- package/mjs/dotnet.d.ts +2 -0
- package/mjs/dotnet.d.ts.map +1 -0
- package/mjs/dotnet.mjs +9 -0
- package/mjs/dotnet.mjs.map +1 -0
- package/mjs/eslintConfig.d.ts +4 -0
- package/mjs/eslintConfig.d.ts.map +1 -0
- package/mjs/eslintConfig.mjs +98 -0
- package/mjs/eslintConfig.mjs.map +1 -0
- package/mjs/index.d.ts +3 -0
- package/mjs/index.d.ts.map +1 -0
- package/mjs/index.mjs +4 -0
- package/mjs/index.mjs.map +1 -0
- package/mjs/insertPlugins.d.ts +18 -0
- package/mjs/insertPlugins.d.ts.map +1 -0
- package/mjs/insertPlugins.mjs +73 -0
- package/mjs/insertPlugins.mjs.map +1 -0
- package/mjs/semantic-release__commit-analyzer.d.mjs +2 -0
- package/mjs/semantic-release__commit-analyzer.d.mjs.map +1 -0
- package/mjs/semantic-release__exec.d.mjs +2 -0
- package/mjs/semantic-release__exec.d.mjs.map +1 -0
- package/mjs/semantic-release__git.d.mjs +2 -0
- package/mjs/semantic-release__git.d.mjs.map +1 -0
- package/mjs/semantic-release__github.d.mjs +2 -0
- package/mjs/semantic-release__github.d.mjs.map +1 -0
- package/mjs/semanticReleaseConfig.d.ts +97 -0
- package/mjs/semanticReleaseConfig.d.ts.map +1 -0
- package/mjs/semanticReleaseConfig.mjs +63 -0
- package/mjs/semanticReleaseConfig.mjs.map +1 -0
- package/mjs/semanticReleaseConfigDotnet.d.ts +109 -0
- package/mjs/semanticReleaseConfigDotnet.d.ts.map +1 -0
- package/mjs/semanticReleaseConfigDotnet.mjs +268 -0
- package/mjs/semanticReleaseConfigDotnet.mjs.map +1 -0
- package/mjs/setupGitPluginSpec.d.ts +22 -0
- package/mjs/setupGitPluginSpec.d.ts.map +1 -0
- package/mjs/setupGitPluginSpec.mjs +144 -0
- package/mjs/setupGitPluginSpec.mjs.map +1 -0
- package/mjs/utils/Exact.d.ts +20 -0
- package/mjs/utils/Exact.d.ts.map +1 -0
- package/mjs/utils/Exact.mjs +75 -0
- package/mjs/utils/Exact.mjs.map +1 -0
- package/mjs/utils/GracefulRecursion.d.mjs +2 -0
- package/mjs/utils/GracefulRecursion.d.mjs.map +1 -0
- package/mjs/utils/env.d.ts +24 -0
- package/mjs/utils/env.d.ts.map +1 -0
- package/mjs/utils/env.mjs +39 -0
- package/mjs/utils/env.mjs.map +1 -0
- package/mjs/utils/execAsync.d.ts +37 -0
- package/mjs/utils/execAsync.d.ts.map +1 -0
- package/mjs/utils/execAsync.mjs +59 -0
- package/mjs/utils/execAsync.mjs.map +1 -0
- package/mjs/utils/miscTypes.d.ts +13 -0
- package/mjs/utils/miscTypes.d.ts.map +1 -0
- package/mjs/utils/miscTypes.mjs +10 -0
- package/mjs/utils/miscTypes.mjs.map +1 -0
- package/mjs/utils/reflection/FunctionLike.d.mjs +2 -0
- package/mjs/utils/reflection/FunctionLike.d.mjs.map +1 -0
- package/mjs/utils/reflection/GetterDescriptor.d.mjs +2 -0
- package/mjs/utils/reflection/GetterDescriptor.d.mjs.map +1 -0
- package/mjs/utils/reflection/InstancePropertyDescriptorMap.d.mjs +2 -0
- package/mjs/utils/reflection/InstancePropertyDescriptorMap.d.mjs.map +1 -0
- package/mjs/utils/reflection/InstanceTypeOrSelfPropertyDescriptorMap.d.mjs +2 -0
- package/mjs/utils/reflection/InstanceTypeOrSelfPropertyDescriptorMap.d.mjs.map +1 -0
- package/mjs/utils/reflection/OwnGetterDescriptorMap.d.mjs +2 -0
- package/mjs/utils/reflection/OwnGetterDescriptorMap.d.mjs.map +1 -0
- package/mjs/utils/reflection/OwnKeyOf.d.mjs +2 -0
- package/mjs/utils/reflection/OwnKeyOf.d.mjs.map +1 -0
- package/mjs/utils/reflection/OwnPropertyDescriptorMap.d.mjs +2 -0
- package/mjs/utils/reflection/OwnPropertyDescriptorMap.d.mjs.map +1 -0
- package/mjs/utils/reflection/PropertyDescriptorMap.d.mjs +2 -0
- package/mjs/utils/reflection/PropertyDescriptorMap.d.mjs.map +1 -0
- package/mjs/utils/reflection/filterForGetters.d.ts +7 -0
- package/mjs/utils/reflection/filterForGetters.d.ts.map +1 -0
- package/mjs/utils/reflection/filterForGetters.mjs +27 -0
- package/mjs/utils/reflection/filterForGetters.mjs.map +1 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptors.d.ts +22 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptors.d.ts.map +1 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptors.mjs +34 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptors.mjs.map +1 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.d.ts +56 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.d.ts.map +1 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.mjs +72 -0
- package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.mjs.map +1 -0
- package/mjs/utils/reflection/getPrototypeChainOf.d.ts +16 -0
- package/mjs/utils/reflection/getPrototypeChainOf.d.ts.map +1 -0
- package/mjs/utils/reflection/getPrototypeChainOf.mjs +55 -0
- package/mjs/utils/reflection/getPrototypeChainOf.mjs.map +1 -0
- package/mjs/utils/reflection/getPrototypeOf.d.ts +8 -0
- package/mjs/utils/reflection/getPrototypeOf.d.ts.map +1 -0
- package/mjs/utils/reflection/getPrototypeOf.mjs +10 -0
- package/mjs/utils/reflection/getPrototypeOf.mjs.map +1 -0
- package/mjs/utils/reflection/inheritance.d.ts +180 -0
- package/mjs/utils/reflection/inheritance.d.ts.map +1 -0
- package/mjs/utils/reflection/inheritance.mjs +148 -0
- package/mjs/utils/reflection/inheritance.mjs.map +1 -0
- package/mjs/utils/reflection/isConstructor.d.ts +17 -0
- package/mjs/utils/reflection/isConstructor.d.ts.map +1 -0
- package/mjs/utils/reflection/isConstructor.mjs +63 -0
- package/mjs/utils/reflection/isConstructor.mjs.map +1 -0
- package/mjs/utils/reflection/isGetterDescriptor.d.ts +9 -0
- package/mjs/utils/reflection/isGetterDescriptor.d.ts.map +1 -0
- package/mjs/utils/reflection/isGetterDescriptor.mjs +12 -0
- package/mjs/utils/reflection/isGetterDescriptor.mjs.map +1 -0
- package/mjs/utils/reflection/listOwnGetters.d.ts +26 -0
- package/mjs/utils/reflection/listOwnGetters.d.ts.map +1 -0
- package/mjs/utils/reflection/listOwnGetters.mjs +39 -0
- package/mjs/utils/reflection/listOwnGetters.mjs.map +1 -0
- package/mjs/utils/reflection.d.ts +18 -0
- package/mjs/utils/reflection.d.ts.map +1 -0
- package/mjs/utils/reflection.mjs +10 -0
- package/mjs/utils/reflection.mjs.map +1 -0
- package/package.json +17 -17
- package/src/debug.ts +5 -4
- package/src/dotnet/GithubNugetRegistryInfo.ts +17 -9
- package/src/dotnet/GitlabNugetRegistryInfo.ts +19 -5
- package/src/dotnet/IsNextVersionAlreadyPublished.cli.ts +53 -36
- package/src/dotnet/MSBuildProject.ts +150 -5
- package/src/dotnet/MSBuildProjectProperties.ts +2 -1
- package/src/dotnet/NugetProjectProperties.ts +3 -2
- package/src/dotnet/NugetRegistryInfo.ts +94 -8
- package/src/dotnet/helpers.ts +87 -53
- package/src/dotnet/index.ts +8 -0
- package/src/dotnet.ts +1 -0
- package/src/insertPlugins.ts +116 -0
- package/src/semantic-release__exec.d.ts +1 -1
- package/src/semanticReleaseConfig.ts +8 -3
- package/src/semanticReleaseConfigDotnet.ts +90 -88
- package/src/setupGitPluginSpec.ts +4 -1
- package/src/tsconfig.json +1 -1
- package/src/utils/execAsync.ts +13 -1
- package/src/utils/miscTypes.ts +4 -3
- package/src/utils/reflection/inheritance.ts +1 -1
- package/tsconfig.base.json +54 -0
- package/tsconfig.json +22 -0
- package/tsconfig.mjs.json +8 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eslintConfig.mjs","sources":["../src/eslintConfig.ts"],"sourcesContent":null,"names":[],"mappings":"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"}
|
package/mjs/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,UAAU,IAAI,OAAO,EAAE,MAAM,4BAA4B,CAAC"}
|
package/mjs/index.mjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":null,"names":[],"mappings":";;AAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { PluginSpec } from 'semantic-release';
|
|
2
|
+
/**
|
|
3
|
+
* @param plugins {@link SemanticReleaseOptions.plugins}
|
|
4
|
+
* @param afterPluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must follow.
|
|
5
|
+
* @param insertPluginIDs The `string` IDs of plugins to insert into a copy of the {@link plugins} array.
|
|
6
|
+
* @param beforePluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must precede.
|
|
7
|
+
* @returns
|
|
8
|
+
* A modified copy of {@link plugins} with the given plugins inserted
|
|
9
|
+
* before {@link beforePluginsIDs} and after {@link afterPluginsIDs}.
|
|
10
|
+
*
|
|
11
|
+
* Inserted plugins will be a `[string, {}]` tuple.
|
|
12
|
+
* @throws {ReferenceError} This should never occur. One or more of the
|
|
13
|
+
* {@link afterPluginsIDs} had been found in {@link plugins}, but a `.find` call
|
|
14
|
+
* to get the highest index of the found plugins had returned `undefined`
|
|
15
|
+
* @throws {AggregateError} One or more error occurred when inserting plugins: `insertPlugin was instructed to insert one or more plugins after [${afterPluginsIDs.map(v => '"' + v + '"').join(', ')}] and before [${beforePluginsIDs.map(v => `"${v}"`).join(', ')}], but ${JSON.stringify(pluginIDs[indexOfLastAfter])} comes after ${JSON.stringify(pluginIDs[index])}!`
|
|
16
|
+
*/
|
|
17
|
+
export declare function insertPlugin(plugins: Exclude<PluginSpec, string>[], afterPluginsIDs: string[], insertPluginIDs: string[], beforePluginsIDs: string[]): Exclude<PluginSpec, string>[];
|
|
18
|
+
//# sourceMappingURL=insertPlugins.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insertPlugins.d.ts","sourceRoot":"","sources":["../src/insertPlugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEX,MAAM,kBAAkB,CAAC;AA0C1B;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EACtC,eAAe,EAAE,MAAM,EAAE,EACzB,eAAe,EAAE,MAAM,EAAE,EACzB,gBAAgB,EAAE,MAAM,EAAE,GACzB,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAkD/B"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 3.0.0
|
|
3
|
+
* @deprecated EXPERIMENTAL
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* [W.I.P. STUB]
|
|
8
|
+
*
|
|
9
|
+
* Given an array of {@link PluginInsertRuleSet}s, insert plugins into a
|
|
10
|
+
* {@link https://developer.mozilla.org/en-US/docs/Web/API/Window/structuredClone structured clone}
|
|
11
|
+
* (i.e. deep-copy) of the {@link plugins} array, sort the plugin entries, and
|
|
12
|
+
* return the modified array copy.
|
|
13
|
+
* @todo implement
|
|
14
|
+
* @param plugins Your {@link SemanticReleaseOptions.plugins} array.
|
|
15
|
+
* @param inserts An array of {@link PluginInsertRuleSet}s.
|
|
16
|
+
*
|
|
17
|
+
* If a plugin is already in the plugins array, inserting is skipped. The
|
|
18
|
+
* existing entry is sorted according to its ruleset.
|
|
19
|
+
*
|
|
20
|
+
* If any rulesets conflict, an error will be thrown.
|
|
21
|
+
* - error: A must precede B; B must precede A.
|
|
22
|
+
* - pass: C must precede D and E; D must precede E and follow B. Add ruleset
|
|
23
|
+
* interface: {Id:string, BeforeIds:string[], AfterIds:string[] }
|
|
24
|
+
* @returns A deep-cloned, modified copy of {@link plugins} with plugins
|
|
25
|
+
* inserted and sorted where needed.
|
|
26
|
+
* @since 3.0.0
|
|
27
|
+
* @deprecated EXPERIMENTAL
|
|
28
|
+
*/
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @param plugins {@link SemanticReleaseOptions.plugins}
|
|
33
|
+
* @param afterPluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must follow.
|
|
34
|
+
* @param insertPluginIDs The `string` IDs of plugins to insert into a copy of the {@link plugins} array.
|
|
35
|
+
* @param beforePluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must precede.
|
|
36
|
+
* @returns
|
|
37
|
+
* A modified copy of {@link plugins} with the given plugins inserted
|
|
38
|
+
* before {@link beforePluginsIDs} and after {@link afterPluginsIDs}.
|
|
39
|
+
*
|
|
40
|
+
* Inserted plugins will be a `[string, {}]` tuple.
|
|
41
|
+
* @throws {ReferenceError} This should never occur. One or more of the
|
|
42
|
+
* {@link afterPluginsIDs} had been found in {@link plugins}, but a `.find` call
|
|
43
|
+
* to get the highest index of the found plugins had returned `undefined`
|
|
44
|
+
* @throws {AggregateError} One or more error occurred when inserting plugins: `insertPlugin was instructed to insert one or more plugins after [${afterPluginsIDs.map(v => '"' + v + '"').join(', ')}] and before [${beforePluginsIDs.map(v => `"${v}"`).join(', ')}], but ${JSON.stringify(pluginIDs[indexOfLastAfter])} comes after ${JSON.stringify(pluginIDs[index])}!`
|
|
45
|
+
*/
|
|
46
|
+
function insertPlugin(plugins, afterPluginsIDs, insertPluginIDs, beforePluginsIDs) {
|
|
47
|
+
const pluginIDs = plugins.map(v => typeof v === 'string' ? v : v[0]);
|
|
48
|
+
|
|
49
|
+
// if any beforePluginIDs are ordered before the last afterPlugin, throw. Impossible to sort.
|
|
50
|
+
|
|
51
|
+
const indexOfLastAfter = afterPluginsIDs.filter(v => pluginIDs.includes(v)).map(v => pluginIDs.indexOf(v)).sort().find((_v, i, obj) => i === obj.length - 1);
|
|
52
|
+
if (undefined === indexOfLastAfter) throw new ReferenceError('An attempt to get the last element of an array returned undefined.');
|
|
53
|
+
const indicesOfBefore = beforePluginsIDs.filter(v => pluginIDs.includes(v)).map(v => pluginIDs.indexOf(v)).sort();
|
|
54
|
+
|
|
55
|
+
// This for-of collects *all* sorting errors. The resulting AggregateError
|
|
56
|
+
// notifies the API user of *all* errors in the order rather than just the
|
|
57
|
+
// first error encountered.
|
|
58
|
+
const errors = [];
|
|
59
|
+
for (const index of indicesOfBefore) {
|
|
60
|
+
if (index <= indexOfLastAfter) {
|
|
61
|
+
errors.push(new Error(`insertPlugin was instructed to insert one or more plugins after [${afterPluginsIDs.map(v => '"' + v + '"').join(', ')}] and before [${beforePluginsIDs.map(v => `"${v}"`).join(', ')}], but ${JSON.stringify(pluginIDs[indexOfLastAfter])} comes after ${JSON.stringify(pluginIDs[index])}!`));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (errors.length > 0) throw new AggregateError(errors, 'One or more errors occurred while inserting plugin configs into the Semantic Release config!');
|
|
65
|
+
|
|
66
|
+
// insert plugin(s)
|
|
67
|
+
|
|
68
|
+
const beforeInsert = plugins.slice(0, indexOfLastAfter + 1);
|
|
69
|
+
const afterInsert = plugins.slice(indexOfLastAfter + 1, plugins.length + 1);
|
|
70
|
+
return [...beforeInsert, ...insertPluginIDs.map(id => [id, {}]), ...afterInsert];
|
|
71
|
+
}
|
|
72
|
+
export { insertPlugin };
|
|
73
|
+
//# sourceMappingURL=insertPlugins.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insertPlugins.mjs","sources":["../src/insertPlugins.ts"],"sourcesContent":null,"names":[],"mappings":"AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAAS,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE;AAC1F,EAAE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;;AAEtE;;AAEA,EAAE,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9J,EAAE,IAAI,SAAS,KAAK,gBAAgB,EAAE,MAAM,IAAI,cAAc,CAAC,oEAAoE,CAAC;AACpI,EAAE,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;;AAEnH;AACA;AACA;AACA,EAAE,MAAM,MAAM,GAAG,EAAE;AACnB,EAAE,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE;AACvC,IAAI,IAAI,KAAK,IAAI,gBAAgB,EAAE;AACnC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,iEAAiE,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3T;AACA;AACA,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,8FAA8F,CAAC;;AAEzJ;;AAEA,EAAE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAAC;AAC7D,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AAC7E,EAAE,OAAO,CAAC,GAAG,YAAY,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC;AAClF;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-release__commit-analyzer.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-release__exec.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-release__git.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-release__github.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import type { Options as SRCommitAnalyzerOptions } from '@semantic-release/commit-analyzer';
|
|
2
|
+
import type { Options as SRExecOptions } from '@semantic-release/exec';
|
|
3
|
+
import type { Options as SRGitOptions } from '@semantic-release/git';
|
|
4
|
+
import type { Options as SRGithubOptions } from '@semantic-release/github';
|
|
5
|
+
import type { PluginSpec } from 'semantic-release';
|
|
6
|
+
import { DefaultOptions } from './setupGitPluginSpec.js';
|
|
7
|
+
export interface SRReleaseNotesGeneratorOptions {
|
|
8
|
+
/**
|
|
9
|
+
* conventional-changelog preset.
|
|
10
|
+
* @default 'angular'
|
|
11
|
+
*/
|
|
12
|
+
preset?: 'angular' | 'atom' | 'codemirror' | 'ember' | 'eslint' | 'express' | 'jquery' | 'jscs' | 'jshint' | 'conventionalcommits' | (string & Record<never, never>) | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Requireable npm package with a custom conventional-changelog preset.
|
|
15
|
+
*/
|
|
16
|
+
config?: string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Additional `conventional-changelog-parser` options that will overwrite ones loaded by `preset` or `config`.
|
|
19
|
+
*/
|
|
20
|
+
parserOpts: object;
|
|
21
|
+
/**
|
|
22
|
+
* Additional `conventional-changelog-writer` options that will overwrite ones loaded by `preset` or `config`.
|
|
23
|
+
*/
|
|
24
|
+
writerOpts: object;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A two-type PluginSpec to tie a plugin's name to its Options type. This is
|
|
28
|
+
* intended for use by plugins to associate their Options type with their plugin
|
|
29
|
+
* name.
|
|
30
|
+
*/
|
|
31
|
+
export type PluginSpecTuple<P extends string = string, T = unknown> = [P, T];
|
|
32
|
+
export type PluginSpecSRCommitAnalyzer<V extends SRCommitAnalyzerOptions = SRCommitAnalyzerOptions> = PluginSpecTuple<'@semantic-release/commit-analyzer', V>;
|
|
33
|
+
export type PluginSpecSRChangelog<V extends Record<'changelogFile' | 'changelogTitle', string>> = PluginSpecTuple<'@semantic-release/changelog', V>;
|
|
34
|
+
export type PluginSpecExportData<V extends Record<string, unknown> = Record<string, unknown>> = PluginSpecTuple<'semantic-release-export-data', V>;
|
|
35
|
+
export type PluginSpecSRReleaseNotesGen<V extends SRReleaseNotesGeneratorOptions = SRReleaseNotesGeneratorOptions> = PluginSpecTuple<'@semantic-release/release-notes-generator', V>;
|
|
36
|
+
export type PluginSpecSRExec<V extends SRExecOptions = SRExecOptions> = PluginSpecTuple<'@semantic-release/exec', V>;
|
|
37
|
+
export type PluginSpecSRGit<V extends SRGitOptions = SRGitOptions> = PluginSpecTuple<'@semantic-release/git', V>;
|
|
38
|
+
export type PluginSpecSRGithub<V extends SRGithubOptions = SRGithubOptions> = PluginSpecTuple<'@semantic-release/github', V>;
|
|
39
|
+
/**
|
|
40
|
+
* @satisfies { Readonly<PluginSpec[]> }
|
|
41
|
+
*/
|
|
42
|
+
export declare const defaultPlugins: readonly [
|
|
43
|
+
'@semantic-release/commit-analyzer',
|
|
44
|
+
'@semantic-release/release-notes-generator',
|
|
45
|
+
'@semantic-release/npm',
|
|
46
|
+
'@semantic-release/github'
|
|
47
|
+
];
|
|
48
|
+
/**
|
|
49
|
+
* @see baseConfig
|
|
50
|
+
*/
|
|
51
|
+
declare const _baseConfig: {
|
|
52
|
+
/** @see https://semantic-release.gitbook.io/semantic-release/usage/plugins#plugin-options-configuration */
|
|
53
|
+
preset: "conventionalcommits";
|
|
54
|
+
branches: ["main", {
|
|
55
|
+
name: "develop";
|
|
56
|
+
channel: "develop";
|
|
57
|
+
prerelease: true;
|
|
58
|
+
}];
|
|
59
|
+
plugins: [PluginSpecSRCommitAnalyzer, PluginSpecExportData, PluginSpecSRReleaseNotesGen, PluginSpecSRChangelog<Record<"changelogFile" | "changelogTitle", string>>, PluginSpecSRGit<typeof DefaultOptions>, PluginSpecSRExec, PluginSpecSRGithub<{
|
|
60
|
+
addReleases: "bottom";
|
|
61
|
+
assets: [{
|
|
62
|
+
path: "./publish/*";
|
|
63
|
+
}];
|
|
64
|
+
}>] | Exclude<PluginSpec, string>[];
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* The base configuration for various Semantic Release scenarios.
|
|
68
|
+
* - Prefers preset "conventionalcommits"
|
|
69
|
+
* (Conventional-Changelog-ConventionalCommits).
|
|
70
|
+
* - Creates tags and release commits on "main" branch, pre-releases on
|
|
71
|
+
* "develop" branch in "develop" channel.
|
|
72
|
+
* - Creates GitHub Releases.
|
|
73
|
+
* - Exports the following variables as GitHub Actions outputs:
|
|
74
|
+
* - "new-release-published": "true" | "false"
|
|
75
|
+
* - "new-release-version" : string
|
|
76
|
+
* - "new-release-git-tag" : string
|
|
77
|
+
* - includes default plugins (except `@semantic-release/npm`) and more
|
|
78
|
+
* - `@semantic-release/commit-analyzer`
|
|
79
|
+
* - semantic-release-export-data
|
|
80
|
+
* - `@semantic-release/release-notes-generator`
|
|
81
|
+
* - `@semantic-release/changelog`
|
|
82
|
+
* - `@semantic-release/git`
|
|
83
|
+
* - add modified CHANGELOG.md in release commit
|
|
84
|
+
* - `@semantic-release/exec`
|
|
85
|
+
* - does nothing by default. Included for convenience.
|
|
86
|
+
* - `@semantic-release/github`
|
|
87
|
+
* - uploads all files from `./publish/*`. This is non-recursive.
|
|
88
|
+
* - adds a list of links to related release pages (e.g. the release's page on npmjs.com)
|
|
89
|
+
*
|
|
90
|
+
* (OPTIONAL) update static Version strings before Git plugin
|
|
91
|
+
* - https://github.com/jpoehnelt/semantic-release-replace-plugin
|
|
92
|
+
* - https://github.com/droidsolutions/semantic-release-update-file
|
|
93
|
+
* @satisfies {Options}
|
|
94
|
+
*/
|
|
95
|
+
export declare const baseConfig: typeof _baseConfig;
|
|
96
|
+
export {};
|
|
97
|
+
//# sourceMappingURL=semanticReleaseConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semanticReleaseConfig.d.ts","sourceRoot":"","sources":["../src/semanticReleaseConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { DefaultOptions } from './setupGitPluginSpec.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* A two-type PluginSpec to tie a plugin's name to its Options type. This is
|
|
5
|
+
* intended for use by plugins to associate their Options type with their plugin
|
|
6
|
+
* name.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @satisfies { Readonly<PluginSpec[]> }
|
|
11
|
+
*/
|
|
12
|
+
const defaultPlugins = Object.freeze(['@semantic-release/commit-analyzer', '@semantic-release/release-notes-generator', '@semantic-release/npm', '@semantic-release/github']);
|
|
13
|
+
|
|
14
|
+
// define as const for string literals in type, then...
|
|
15
|
+
/**
|
|
16
|
+
* @see baseConfig
|
|
17
|
+
*/
|
|
18
|
+
const _baseConfig = {
|
|
19
|
+
/** @see https://semantic-release.gitbook.io/semantic-release/usage/plugins#plugin-options-configuration */
|
|
20
|
+
preset: 'conventionalcommits',
|
|
21
|
+
branches: ['main', {
|
|
22
|
+
name: 'develop',
|
|
23
|
+
channel: 'develop',
|
|
24
|
+
prerelease: true
|
|
25
|
+
}],
|
|
26
|
+
plugins: [['@semantic-release/commit-analyzer', {}], ['semantic-release-export-data', {}], ['@semantic-release/release-notes-generator', {}], ['@semantic-release/changelog', {}], ['@semantic-release/git', DefaultOptions], ['@semantic-release/exec', {}], ['@semantic-release/github', {
|
|
27
|
+
addReleases: 'bottom',
|
|
28
|
+
assets: ['./publish/*', '!./publish/.gitkeep']
|
|
29
|
+
}]]
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* The base configuration for various Semantic Release scenarios.
|
|
34
|
+
* - Prefers preset "conventionalcommits"
|
|
35
|
+
* (Conventional-Changelog-ConventionalCommits).
|
|
36
|
+
* - Creates tags and release commits on "main" branch, pre-releases on
|
|
37
|
+
* "develop" branch in "develop" channel.
|
|
38
|
+
* - Creates GitHub Releases.
|
|
39
|
+
* - Exports the following variables as GitHub Actions outputs:
|
|
40
|
+
* - "new-release-published": "true" | "false"
|
|
41
|
+
* - "new-release-version" : string
|
|
42
|
+
* - "new-release-git-tag" : string
|
|
43
|
+
* - includes default plugins (except `@semantic-release/npm`) and more
|
|
44
|
+
* - `@semantic-release/commit-analyzer`
|
|
45
|
+
* - semantic-release-export-data
|
|
46
|
+
* - `@semantic-release/release-notes-generator`
|
|
47
|
+
* - `@semantic-release/changelog`
|
|
48
|
+
* - `@semantic-release/git`
|
|
49
|
+
* - add modified CHANGELOG.md in release commit
|
|
50
|
+
* - `@semantic-release/exec`
|
|
51
|
+
* - does nothing by default. Included for convenience.
|
|
52
|
+
* - `@semantic-release/github`
|
|
53
|
+
* - uploads all files from `./publish/*`. This is non-recursive.
|
|
54
|
+
* - adds a list of links to related release pages (e.g. the release's page on npmjs.com)
|
|
55
|
+
*
|
|
56
|
+
* (OPTIONAL) update static Version strings before Git plugin
|
|
57
|
+
* - https://github.com/jpoehnelt/semantic-release-replace-plugin
|
|
58
|
+
* - https://github.com/droidsolutions/semantic-release-update-file
|
|
59
|
+
* @satisfies {Options}
|
|
60
|
+
*/
|
|
61
|
+
const baseConfig = _baseConfig;
|
|
62
|
+
export { baseConfig, defaultPlugins };
|
|
63
|
+
//# sourceMappingURL=semanticReleaseConfig.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semanticReleaseConfig.mjs","sources":["../src/semanticReleaseConfig.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACY,MAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,mCAAmC,EAAE,2CAA2C,EAAE,uBAAuB,EAAE,0BAA0B,CAAC;;AAEnL;AACA;AACA;AACA;AACA,MAAM,WAAW,GAAG;AACpB;AACA,EAAE,MAAM,EAAE,qBAAqB;AAC/B,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE;AACrB,IAAI,IAAI,EAAE,SAAS;AACnB,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,UAAU,EAAE;AAChB,GAAG,CAAC;AACJ,EAAE,OAAO,EAAE,CAAC,CAAC,mCAAmC,EAAE,EAAE,CAAC,EAAE,CAAC,8BAA8B,EAAE,EAAE,CAAC,EAAE,CAAC,2CAA2C,EAAE,EAAE,CAAC,EAAE,CAAC,6BAA6B,EAAE,EAAE,CAAC,EAAE,CAAC,uBAAuB,EAAE,cAAc,CAAC,EAAE,CAAC,wBAAwB,EAAE,EAAE,CAAC,EAAE,CAAC,0BAA0B,EAAE;AAC7R,IAAI,WAAW,EAAE,QAAQ;AACzB,IAAI,MAAM,EAAE,CAAC,aAAa,EAAE,qBAAqB;AACjD,GAAG,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,UAAU,GAAG;;;;"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # Semantic-Release Config Factory (dotnet)
|
|
3
|
+
* A functional Semantic-Release configuration for dotnet projects
|
|
4
|
+
*
|
|
5
|
+
* extends {@link baseConfig }
|
|
6
|
+
*
|
|
7
|
+
* <-- TABLE OF CONTENTS -->
|
|
8
|
+
* - configureDotnetRelease
|
|
9
|
+
* - Insert-Edit Plugins
|
|
10
|
+
* - Append Plugins
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
import type { Options } from 'semantic-release';
|
|
14
|
+
import { NugetRegistryInfo } from './dotnet/NugetRegistryInfo.js';
|
|
15
|
+
import { MSBuildProject } from './dotnet/MSBuildProject.js';
|
|
16
|
+
/**
|
|
17
|
+
*/
|
|
18
|
+
export declare class SemanticReleaseConfigDotnet {
|
|
19
|
+
private readonly options;
|
|
20
|
+
private readonly _projectsToPublish;
|
|
21
|
+
private _projectsToPackAndPush;
|
|
22
|
+
private readonly _evaluatedProjects;
|
|
23
|
+
/**
|
|
24
|
+
* Creates an instance of SemanticReleaseConfigDotnet.
|
|
25
|
+
* Configures {@link baseConfig} with `@semantic-release/exec` to `dotnet` publish, pack, and push.
|
|
26
|
+
*
|
|
27
|
+
* Note: To sign packages, create a Target in the corresponding project(s) e.g.
|
|
28
|
+
* ```xml
|
|
29
|
+
* <Target Name="SignNupkgs" AfterTargets="Pack">
|
|
30
|
+
* <Exec Command="dotnet nuget sign $(PackageOutputPath) [remaining args]" ConsoleToMsBuild="true" />
|
|
31
|
+
* </Target>
|
|
32
|
+
* ```
|
|
33
|
+
* Alternatively, splice your signing commands into the publishCmd string,
|
|
34
|
+
* inserting them before `dotnet nuget push`.
|
|
35
|
+
* If you sign different signatures depending on the NuGet registry,
|
|
36
|
+
* splice your signing command (with "overwrite signature" enabled, if
|
|
37
|
+
* desired) before the corresponding registry's `dotnet nuget push` command.
|
|
38
|
+
* @param projectsToPublish An array of dotnet projects' relative paths. If
|
|
39
|
+
* empty or unspecified, tries getting projects' semi-colon-separated relative
|
|
40
|
+
* paths from the `PROJECTS_TO_PUBLISH` environment variable. If configured as
|
|
41
|
+
* recommended, the projects' publish outputs will be zipped to '$PWD/publish'
|
|
42
|
+
* for use in the `publish` semantic-release step (typically, GitHub release).
|
|
43
|
+
* @param projectsToPackAndPush An array of dotnet projects' relative paths.
|
|
44
|
+
* If empty or unspecified, tries getting projects' semi-colon-separated
|
|
45
|
+
* relative paths from the `PROJECTS_TO_PACK_AND_PUSH` environment variable.
|
|
46
|
+
* Otherwise, no packages will be packed and pushed.
|
|
47
|
+
* If configured as recommended, `dotnet pack` will output the nupkg/snupkg
|
|
48
|
+
* files to `$PWD/publish` where they will be globbed by `dotnet nuget push`.
|
|
49
|
+
*/
|
|
50
|
+
constructor(projectsToPublish: string[] | MSBuildProject[], projectsToPackAndPush: string[] | NugetRegistryInfo[]);
|
|
51
|
+
get ProjectsToPublish(): string[] | MSBuildProject[];
|
|
52
|
+
get ProjectsToPackAndPush(): string[] | NugetRegistryInfo[];
|
|
53
|
+
get EvaluatedProjects(): MSBuildProject[];
|
|
54
|
+
insertPlugin(afterPluginsIDs: string[], insertPluginIDs: string[], beforePluginsIDs: string[]): void;
|
|
55
|
+
/**
|
|
56
|
+
* generate dotnet commands for \@semantic-release/exec, appending commands with ' && ' when necessary.
|
|
57
|
+
*
|
|
58
|
+
* Note: All strings in {@link this.ProjectsToPackAndPush} will be converted to basic {@link NugetRegistryInfo} instances with default values.
|
|
59
|
+
* If you need specific NRI settings or you need to push to GitLab-like or GitHub-like registries, instantiate them instead of passing their paths.
|
|
60
|
+
* @todo change to builder method? e.g. static async SetupDotnetCommands(this: SemanticReleaseConfigDotnet): Promise<SemanticReleaseConfigDotnet>
|
|
61
|
+
* @todo Add options param to allow users to enable pushing to GitLab, GitHub, NuGet.org with default settings -OR- with entirely custom settings.
|
|
62
|
+
* @see https://github.com/semantic-release/exec#usage
|
|
63
|
+
*/
|
|
64
|
+
setupDotnetCommands(): Promise<void>;
|
|
65
|
+
/**
|
|
66
|
+
* Insert a plugin into the plugins array.
|
|
67
|
+
* @deprecated EXPERIMENTAL: needs thorough tests implemented before use in production!
|
|
68
|
+
* @param insertAfterPluginIDs Plugins which should appear BEFORE
|
|
69
|
+
* {@link insertPluginIDs}.
|
|
70
|
+
* @param insertPluginIDs The plugin(s) to insert into the plugins array.
|
|
71
|
+
* @param insertBeforePluginsIDs plugins which should appear AFTER the
|
|
72
|
+
* inserted plugin(s).
|
|
73
|
+
*/
|
|
74
|
+
splicePlugin(insertAfterPluginIDs: string[], insertPluginIDs: string[], insertBeforePluginsIDs: string[]): void;
|
|
75
|
+
protected getTokenTestingCommands(): Promise<string>;
|
|
76
|
+
toOptions(): Options;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Configures {@link baseConfig} with `@semantic-release/exec` to `dotnet`
|
|
80
|
+
* publish, pack, and nuget-push.
|
|
81
|
+
* @param projectsToPublish
|
|
82
|
+
* An array of dotnet projects' relative paths -OR- an array of
|
|
83
|
+
* {@link MSBuildProject} instances.
|
|
84
|
+
* - If `MSBuildProject[]`, the instances will be used as-is.
|
|
85
|
+
* - If `[]`, tries getting projects' semi-colon-separated relative paths from
|
|
86
|
+
* the `PROJECTS_TO_PUBLISH` environment variable.
|
|
87
|
+
* - If configured as recommended, the projects' publish outputs will be zipped
|
|
88
|
+
* to '$PWD/publish' for use in the `publish` semantic-release step e.g. for a
|
|
89
|
+
* GitHub release.
|
|
90
|
+
* @param projectsToPackAndPush An array of dotnet projects' relative paths -OR-
|
|
91
|
+
* an array of instances of {@link NugetRegistryInfo} and/or derived classes.
|
|
92
|
+
* - If `NugetRegistryInfo[]`, no conversions or modifications will occur.
|
|
93
|
+
* - If `string[]`, the project paths will be converted to
|
|
94
|
+
* {@link NugetRegistryInfo} instances with default values. This may be undesired.
|
|
95
|
+
* - If `[]`, `dotnet pack` and `dotnet nuget push` commands will not be configured.
|
|
96
|
+
* - If `undefined`, tries getting projects' semi-colon-separated relative paths
|
|
97
|
+
* from the `PROJECTS_TO_PACK_AND_PUSH` environment variable.
|
|
98
|
+
* With the recommended configuration, `dotnet pack` will write the nupkg/snupkg
|
|
99
|
+
* files to `$PWD/publish` where they will be globbed by `dotnet nuget push`.
|
|
100
|
+
* @returns a semantic-release Options object, based on
|
|
101
|
+
* `@halospv3/hce.shared-config` (our base config), with the
|
|
102
|
+
* `@semantic-release/exec` plugin configured to `dotnet publish`, `pack`, and
|
|
103
|
+
* `push` the specified projects.
|
|
104
|
+
*/
|
|
105
|
+
export declare function getConfig(projectsToPublish: string[] | MSBuildProject[], projectsToPackAndPush?: string[] | NugetRegistryInfo[]): Promise<Options>;
|
|
106
|
+
/**
|
|
107
|
+
* @module semanticReleaseConfigDotnet
|
|
108
|
+
*/
|
|
109
|
+
//# sourceMappingURL=semanticReleaseConfigDotnet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semanticReleaseConfigDotnet.d.ts","sourceRoot":"","sources":["../src/semanticReleaseConfigDotnet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAMhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAQ5D;GACG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA8B;IACjE,OAAO,CAAC,sBAAsB,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmB;IAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;gBAED,iBAAiB,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,EAC9C,qBAAqB,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE;IAwCvD,IAAI,iBAAiB,IAAI,MAAM,EAAE,GAAG,cAAc,EAAE,CAEnD;IAED,IAAI,qBAAqB,IAAI,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAE1D;IAED,IAAI,iBAAiB,IAAI,cAAc,EAAE,CAExC;IAED,YAAY,CACV,eAAe,EAAE,MAAM,EAAE,EACzB,eAAe,EAAE,MAAM,EAAE,EACzB,gBAAgB,EAAE,MAAM,EAAE,GACzB,IAAI;IAIP;;;;;;;;OAQG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA6F1C;;;;;;;;OAQG;IACH,YAAY,CACV,oBAAoB,EAAE,MAAM,EAAE,EAC9B,eAAe,EAAE,MAAM,EAAE,EACzB,sBAAsB,EAAE,MAAM,EAAE,GAC/B,IAAI;cAmDS,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IAqC1D,SAAS,IAAI,OAAO;CAGrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,SAAS,CAC7B,iBAAiB,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,EAC9C,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,GACrD,OAAO,CAAC,OAAO,CAAC,CAqDlB;AAED;;GAEG"}
|