release-please 13.19.7 → 13.20.0
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 +22 -0
- package/README.md +2 -0
- package/build/src/factories/plugin-factory.js +4 -1
- package/build/src/manifest.d.ts +11 -3
- package/build/src/manifest.js +10 -4
- package/build/src/plugins/cargo-workspace.js +8 -2
- package/build/src/plugins/linked-versions.d.ts +6 -1
- package/build/src/plugins/linked-versions.js +6 -1
- package/build/src/plugins/workspace.d.ts +2 -0
- package/build/src/plugins/workspace.js +15 -17
- package/build/src/strategies/base.d.ts +1 -0
- package/build/src/strategies/java.d.ts +1 -0
- package/build/src/strategies/java.js +5 -1
- package/build/src/updaters/php/root-composer-update-packages.js +12 -5
- package/build/src/updaters/release-please-config.js +31 -1
- package/package.json +1 -1
- package/schemas/config.json +27 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,28 @@
|
|
|
4
4
|
|
|
5
5
|
[1]: https://www.npmjs.com/package/release-please?activeTab=versions
|
|
6
6
|
|
|
7
|
+
## [13.20.0](https://github.com/googleapis/release-please/compare/v13.19.9...v13.20.0) (2022-08-08)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
* allow plugins to skip merging in-scope pull requests ([#1550](https://github.com/googleapis/release-please/issues/1550)) ([354b1dc](https://github.com/googleapis/release-please/commit/354b1dc89c468e44b59507b4bb2f15d6723110ed))
|
|
13
|
+
* allow skipping snapshots for java strategies ([#1555](https://github.com/googleapis/release-please/issues/1555)) ([3430693](https://github.com/googleapis/release-please/commit/34306932e5fe21c89020b184a527c220d10c8390))
|
|
14
|
+
|
|
15
|
+
## [13.19.9](https://github.com/googleapis/release-please/compare/v13.19.8...v13.19.9) (2022-08-08)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Bug Fixes
|
|
19
|
+
|
|
20
|
+
* php root-composer-update-packages version replace ([#1553](https://github.com/googleapis/release-please/issues/1553)) ([41127e6](https://github.com/googleapis/release-please/commit/41127e688597a0af6502957d85ba8cd6214e9008))
|
|
21
|
+
|
|
22
|
+
## [13.19.8](https://github.com/googleapis/release-please/compare/v13.19.7...v13.19.8) (2022-08-03)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Bug Fixes
|
|
26
|
+
|
|
27
|
+
* convert ReleaserConfig JSON keys when bootstrapping ([#1535](https://github.com/googleapis/release-please/issues/1535)) ([64c267e](https://github.com/googleapis/release-please/commit/64c267e1c986029b6c483b924950135c138c510f)), closes [#1522](https://github.com/googleapis/release-please/issues/1522)
|
|
28
|
+
|
|
7
29
|
## [13.19.7](https://github.com/googleapis/release-please/compare/v13.19.6...v13.19.7) (2022-08-03)
|
|
8
30
|
|
|
9
31
|
|
package/README.md
CHANGED
|
@@ -206,6 +206,8 @@ This library follows [Semantic Versioning](http://semver.org/).
|
|
|
206
206
|
|
|
207
207
|
Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/release-please/blob/main/CONTRIBUTING.md).
|
|
208
208
|
|
|
209
|
+
For more information on the design of the library, see [design](https://github.com/googleapis/release-please/blob/main/docs/design.md).
|
|
210
|
+
|
|
209
211
|
## License
|
|
210
212
|
|
|
211
213
|
Apache Version 2.0
|
|
@@ -29,7 +29,10 @@ function buildPlugin(options) {
|
|
|
29
29
|
if (typeof options.type === 'object') {
|
|
30
30
|
const builder = pluginFactories[options.type.type];
|
|
31
31
|
if (builder) {
|
|
32
|
-
return builder(
|
|
32
|
+
return builder({
|
|
33
|
+
...options.type,
|
|
34
|
+
...options,
|
|
35
|
+
});
|
|
33
36
|
}
|
|
34
37
|
throw new errors_1.ConfigurationError(`Unknown plugin type: ${options.type.type}`, 'core', `${options.github.repository.owner}/${options.github.repository.repo}`);
|
|
35
38
|
}
|
package/build/src/manifest.d.ts
CHANGED
|
@@ -45,6 +45,8 @@ export interface ReleaserConfig {
|
|
|
45
45
|
pullRequestTitlePattern?: string;
|
|
46
46
|
tagSeparator?: string;
|
|
47
47
|
separatePullRequests?: boolean;
|
|
48
|
+
labels?: string[];
|
|
49
|
+
releaseLabels?: string[];
|
|
48
50
|
changelogSections?: ChangelogSection[];
|
|
49
51
|
changelogPath?: string;
|
|
50
52
|
changelogType?: ChangelogNotesType;
|
|
@@ -52,6 +54,7 @@ export interface ReleaserConfig {
|
|
|
52
54
|
versionFile?: string;
|
|
53
55
|
extraFiles?: ExtraFile[];
|
|
54
56
|
snapshotLabels?: string[];
|
|
57
|
+
skipSnapshot?: boolean;
|
|
55
58
|
}
|
|
56
59
|
export interface CandidateReleasePullRequest {
|
|
57
60
|
path: string;
|
|
@@ -83,9 +86,10 @@ interface ReleaserConfigJson {
|
|
|
83
86
|
'pull-request-title-pattern'?: string;
|
|
84
87
|
'separate-pull-requests'?: boolean;
|
|
85
88
|
'tag-separator'?: string;
|
|
86
|
-
'extra-files'?:
|
|
89
|
+
'extra-files'?: ExtraFile[];
|
|
87
90
|
'version-file'?: string;
|
|
88
91
|
'snapshot-label'?: string;
|
|
92
|
+
'skip-snapshot'?: boolean;
|
|
89
93
|
}
|
|
90
94
|
export interface ManifestOptions {
|
|
91
95
|
bootstrapSha?: string;
|
|
@@ -108,7 +112,7 @@ export interface ManifestOptions {
|
|
|
108
112
|
releaseSearchDepth?: number;
|
|
109
113
|
commitSearchDepth?: number;
|
|
110
114
|
}
|
|
111
|
-
interface ReleaserPackageConfig extends ReleaserConfigJson {
|
|
115
|
+
export interface ReleaserPackageConfig extends ReleaserConfigJson {
|
|
112
116
|
'package-name'?: string;
|
|
113
117
|
component?: string;
|
|
114
118
|
'changelog-path'?: string;
|
|
@@ -121,8 +125,12 @@ export interface LinkedVersionPluginConfig extends ConfigurablePluginType {
|
|
|
121
125
|
type: 'linked-versions';
|
|
122
126
|
groupName: string;
|
|
123
127
|
components: string[];
|
|
128
|
+
merge?: boolean;
|
|
129
|
+
}
|
|
130
|
+
export interface WorkspacePluginConfig extends ConfigurablePluginType {
|
|
131
|
+
merge?: boolean;
|
|
124
132
|
}
|
|
125
|
-
export declare type PluginType = DirectPluginType | ConfigurablePluginType | LinkedVersionPluginConfig;
|
|
133
|
+
export declare type PluginType = DirectPluginType | ConfigurablePluginType | LinkedVersionPluginConfig | WorkspacePluginConfig;
|
|
126
134
|
/**
|
|
127
135
|
* This is the schema of the manifest config json
|
|
128
136
|
*/
|
package/build/src/manifest.js
CHANGED
|
@@ -365,6 +365,7 @@ class Manifest {
|
|
|
365
365
|
plugins.push(new merge_1.Merge(this.github, this.targetBranch, this.repositoryConfig, this.groupPullRequestTitlePattern));
|
|
366
366
|
}
|
|
367
367
|
for (const plugin of plugins) {
|
|
368
|
+
logger_1.logger.debug(`running plugin: ${plugin.constructor.name}`);
|
|
368
369
|
newReleasePullRequests = await plugin.run(newReleasePullRequests);
|
|
369
370
|
}
|
|
370
371
|
return newReleasePullRequests.map(pullRequestWithConfig => pullRequestWithConfig.pullRequest);
|
|
@@ -707,6 +708,7 @@ exports.Manifest = Manifest;
|
|
|
707
708
|
* @returns {ReleaserConfig}
|
|
708
709
|
*/
|
|
709
710
|
function extractReleaserConfig(config) {
|
|
711
|
+
var _a, _b;
|
|
710
712
|
return {
|
|
711
713
|
releaseType: config['release-type'],
|
|
712
714
|
bumpMinorPreMajor: config['bump-minor-pre-major'],
|
|
@@ -729,6 +731,9 @@ function extractReleaserConfig(config) {
|
|
|
729
731
|
pullRequestTitlePattern: config['pull-request-title-pattern'],
|
|
730
732
|
tagSeparator: config['tag-separator'],
|
|
731
733
|
separatePullRequests: config['separate-pull-requests'],
|
|
734
|
+
labels: (_a = config['label']) === null || _a === void 0 ? void 0 : _a.split(','),
|
|
735
|
+
releaseLabels: (_b = config['release-label']) === null || _b === void 0 ? void 0 : _b.split(','),
|
|
736
|
+
skipSnapshot: config['skip-snapshot'],
|
|
732
737
|
};
|
|
733
738
|
}
|
|
734
739
|
/**
|
|
@@ -763,9 +768,9 @@ async function parseConfig(github, configFile, branch, onlyPath, releaseAs) {
|
|
|
763
768
|
separatePullRequests: config['separate-pull-requests'],
|
|
764
769
|
groupPullRequestTitlePattern: config['group-pull-request-title-pattern'],
|
|
765
770
|
plugins: config['plugins'],
|
|
766
|
-
labels: configLabel ===
|
|
767
|
-
releaseLabels: configReleaseLabel ===
|
|
768
|
-
snapshotLabels: configSnapshotLabel ===
|
|
771
|
+
labels: configLabel === null || configLabel === void 0 ? void 0 : configLabel.split(','),
|
|
772
|
+
releaseLabels: configReleaseLabel === null || configReleaseLabel === void 0 ? void 0 : configReleaseLabel.split(','),
|
|
773
|
+
snapshotLabels: configSnapshotLabel === null || configSnapshotLabel === void 0 ? void 0 : configSnapshotLabel.split(','),
|
|
769
774
|
releaseSearchDepth: config['release-search-depth'],
|
|
770
775
|
commitSearchDepth: config['commit-search-depth'],
|
|
771
776
|
sequentialCalls: config['sequential-calls'],
|
|
@@ -933,7 +938,7 @@ async function latestReleaseVersion(github, targetBranch, releaseFilter, config,
|
|
|
933
938
|
return candidateTagVersion.sort((a, b) => b.compare(a))[0];
|
|
934
939
|
}
|
|
935
940
|
function mergeReleaserConfig(defaultConfig, pathConfig) {
|
|
936
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
941
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
|
937
942
|
return {
|
|
938
943
|
releaseType: (_b = (_a = pathConfig.releaseType) !== null && _a !== void 0 ? _a : defaultConfig.releaseType) !== null && _b !== void 0 ? _b : 'node',
|
|
939
944
|
bumpMinorPreMajor: (_c = pathConfig.bumpMinorPreMajor) !== null && _c !== void 0 ? _c : defaultConfig.bumpMinorPreMajor,
|
|
@@ -955,6 +960,7 @@ function mergeReleaserConfig(defaultConfig, pathConfig) {
|
|
|
955
960
|
tagSeparator: (_u = pathConfig.tagSeparator) !== null && _u !== void 0 ? _u : defaultConfig.tagSeparator,
|
|
956
961
|
pullRequestTitlePattern: (_v = pathConfig.pullRequestTitlePattern) !== null && _v !== void 0 ? _v : defaultConfig.pullRequestTitlePattern,
|
|
957
962
|
separatePullRequests: (_w = pathConfig.separatePullRequests) !== null && _w !== void 0 ? _w : defaultConfig.separatePullRequests,
|
|
963
|
+
skipSnapshot: (_x = pathConfig.skipSnapshot) !== null && _x !== void 0 ? _x : defaultConfig.skipSnapshot,
|
|
958
964
|
};
|
|
959
965
|
}
|
|
960
966
|
/**
|
|
@@ -178,10 +178,16 @@ class CargoWorkspace extends workspace_1.WorkspacePlugin {
|
|
|
178
178
|
};
|
|
179
179
|
}
|
|
180
180
|
postProcessCandidates(candidates, updatedVersions) {
|
|
181
|
-
|
|
181
|
+
let rootCandidate = candidates.find(c => c.path === manifest_1.ROOT_PROJECT_PATH);
|
|
182
182
|
if (!rootCandidate) {
|
|
183
|
-
|
|
183
|
+
logger_1.logger.warn('Unable to find root candidate pull request');
|
|
184
|
+
rootCandidate = candidates.find(c => c.config.releaseType === 'rust');
|
|
184
185
|
}
|
|
186
|
+
if (!rootCandidate) {
|
|
187
|
+
logger_1.logger.warn('Unable to find a rust candidate pull request');
|
|
188
|
+
return candidates;
|
|
189
|
+
}
|
|
190
|
+
// Update the root Cargo.lock if it exists
|
|
185
191
|
rootCandidate.pullRequest.updates.push({
|
|
186
192
|
path: 'Cargo.lock',
|
|
187
193
|
createIfMissing: false,
|
|
@@ -4,6 +4,9 @@ import { GitHub } from '../github';
|
|
|
4
4
|
import { Strategy } from '../strategy';
|
|
5
5
|
import { Commit } from '../commit';
|
|
6
6
|
import { Release } from '../release';
|
|
7
|
+
interface LinkedVersionsPluginOptions {
|
|
8
|
+
merge?: boolean;
|
|
9
|
+
}
|
|
7
10
|
/**
|
|
8
11
|
* This plugin reconfigures strategies by linking multiple components
|
|
9
12
|
* together.
|
|
@@ -13,7 +16,8 @@ import { Release } from '../release';
|
|
|
13
16
|
export declare class LinkedVersions extends ManifestPlugin {
|
|
14
17
|
private groupName;
|
|
15
18
|
private components;
|
|
16
|
-
|
|
19
|
+
private merge;
|
|
20
|
+
constructor(github: GitHub, targetBranch: string, repositoryConfig: RepositoryConfig, groupName: string, components: string[], options?: LinkedVersionsPluginOptions);
|
|
17
21
|
/**
|
|
18
22
|
* Pre-configure strategies.
|
|
19
23
|
* @param {Record<string, Strategy>} strategiesByPath Strategies indexed by path
|
|
@@ -27,3 +31,4 @@ export declare class LinkedVersions extends ManifestPlugin {
|
|
|
27
31
|
*/
|
|
28
32
|
run(candidates: CandidateReleasePullRequest[]): Promise<CandidateReleasePullRequest[]>;
|
|
29
33
|
}
|
|
34
|
+
export {};
|
|
@@ -25,10 +25,12 @@ const merge_1 = require("./merge");
|
|
|
25
25
|
* Release notes are broken up using `<summary>`/`<details>` blocks.
|
|
26
26
|
*/
|
|
27
27
|
class LinkedVersions extends plugin_1.ManifestPlugin {
|
|
28
|
-
constructor(github, targetBranch, repositoryConfig, groupName, components) {
|
|
28
|
+
constructor(github, targetBranch, repositoryConfig, groupName, components, options = {}) {
|
|
29
|
+
var _a;
|
|
29
30
|
super(github, targetBranch, repositoryConfig);
|
|
30
31
|
this.groupName = groupName;
|
|
31
32
|
this.components = new Set(components);
|
|
33
|
+
this.merge = (_a = options.merge) !== null && _a !== void 0 ? _a : true;
|
|
32
34
|
}
|
|
33
35
|
/**
|
|
34
36
|
* Pre-configure strategies.
|
|
@@ -99,6 +101,9 @@ class LinkedVersions extends plugin_1.ManifestPlugin {
|
|
|
99
101
|
* @returns {CandidateReleasePullRequest[]} Updated pull requests
|
|
100
102
|
*/
|
|
101
103
|
async run(candidates) {
|
|
104
|
+
if (!this.merge) {
|
|
105
|
+
return candidates;
|
|
106
|
+
}
|
|
102
107
|
const [inScopeCandidates, outOfScopeCandidates] = candidates.reduce((collection, candidate) => {
|
|
103
108
|
if (!candidate.pullRequest.version) {
|
|
104
109
|
logger_1.logger.warn('pull request missing version', candidate);
|
|
@@ -10,6 +10,7 @@ export interface DependencyNode<T> {
|
|
|
10
10
|
export interface WorkspacePluginOptions {
|
|
11
11
|
manifestPath?: string;
|
|
12
12
|
updateAllPackages?: boolean;
|
|
13
|
+
merge?: boolean;
|
|
13
14
|
}
|
|
14
15
|
export interface AllPackages<T> {
|
|
15
16
|
allPackages: T[];
|
|
@@ -29,6 +30,7 @@ export interface AllPackages<T> {
|
|
|
29
30
|
export declare abstract class WorkspacePlugin<T> extends ManifestPlugin {
|
|
30
31
|
private updateAllPackages;
|
|
31
32
|
private manifestPath;
|
|
33
|
+
private merge;
|
|
32
34
|
constructor(github: GitHub, targetBranch: string, repositoryConfig: RepositoryConfig, options?: WorkspacePluginOptions);
|
|
33
35
|
run(candidates: CandidateReleasePullRequest[]): Promise<CandidateReleasePullRequest[]>;
|
|
34
36
|
/**
|
|
@@ -32,10 +32,11 @@ const release_please_manifest_1 = require("../updaters/release-please-manifest")
|
|
|
32
32
|
*/
|
|
33
33
|
class WorkspacePlugin extends plugin_1.ManifestPlugin {
|
|
34
34
|
constructor(github, targetBranch, repositoryConfig, options = {}) {
|
|
35
|
-
var _a, _b;
|
|
35
|
+
var _a, _b, _c;
|
|
36
36
|
super(github, targetBranch, repositoryConfig);
|
|
37
37
|
this.manifestPath = (_a = options.manifestPath) !== null && _a !== void 0 ? _a : manifest_1.DEFAULT_RELEASE_PLEASE_MANIFEST;
|
|
38
38
|
this.updateAllPackages = (_b = options.updateAllPackages) !== null && _b !== void 0 ? _b : false;
|
|
39
|
+
this.merge = (_c = options.merge) !== null && _c !== void 0 ? _c : true;
|
|
39
40
|
}
|
|
40
41
|
async run(candidates) {
|
|
41
42
|
logger_1.logger.info('Running workspace plugin');
|
|
@@ -100,23 +101,20 @@ class WorkspacePlugin extends plugin_1.ManifestPlugin {
|
|
|
100
101
|
newCandidates.push(newCandidate);
|
|
101
102
|
}
|
|
102
103
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
const newUpdates = newCandidates[0].pullRequest.updates;
|
|
108
|
-
newUpdates.push({
|
|
109
|
-
path: this.manifestPath,
|
|
110
|
-
createIfMissing: false,
|
|
111
|
-
updater: new release_please_manifest_1.ReleasePleaseManifest({
|
|
112
|
-
version: newCandidates[0].pullRequest.version,
|
|
113
|
-
versionsMap: updatedPathVersions,
|
|
114
|
-
}),
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
logger_1.logger.warn(`Expected 1 merged candidate, got ${newCandidates.length}`);
|
|
104
|
+
if (this.merge) {
|
|
105
|
+
logger_1.logger.info(`Merging ${newCandidates.length} in-scope candidates`);
|
|
106
|
+
const mergePlugin = new merge_1.Merge(this.github, this.targetBranch, this.repositoryConfig);
|
|
107
|
+
newCandidates = await mergePlugin.run(newCandidates);
|
|
119
108
|
}
|
|
109
|
+
const newUpdates = newCandidates[0].pullRequest.updates;
|
|
110
|
+
newUpdates.push({
|
|
111
|
+
path: this.manifestPath,
|
|
112
|
+
createIfMissing: false,
|
|
113
|
+
updater: new release_please_manifest_1.ReleasePleaseManifest({
|
|
114
|
+
version: newCandidates[0].pullRequest.version,
|
|
115
|
+
versionsMap: updatedPathVersions,
|
|
116
|
+
}),
|
|
117
|
+
});
|
|
120
118
|
logger_1.logger.info(`Post-processing ${newCandidates.length} in-scope candidates`);
|
|
121
119
|
newCandidates = this.postProcessCandidates(newCandidates, updatedVersions);
|
|
122
120
|
return [...outOfScopeCandidates, ...newCandidates];
|
|
@@ -16,6 +16,7 @@ export interface JavaBuildUpdatesOption extends BuildUpdatesOptions {
|
|
|
16
16
|
export declare class Java extends BaseStrategy {
|
|
17
17
|
protected readonly snapshotVersioning: VersioningStrategy;
|
|
18
18
|
protected readonly snapshotLabels: string[];
|
|
19
|
+
readonly skipSnapshot: boolean;
|
|
19
20
|
constructor(options: BaseStrategyOptions);
|
|
20
21
|
buildReleasePullRequest(commits: Commit[], latestRelease?: Release, draft?: boolean, labels?: string[]): Promise<ReleasePullRequest | undefined>;
|
|
21
22
|
protected buildSnapshotPullRequest(latestRelease?: Release, draft?: boolean, labels?: string[]): Promise<ReleasePullRequest>;
|
|
@@ -47,7 +47,7 @@ const CHANGELOG_SECTIONS = [
|
|
|
47
47
|
*/
|
|
48
48
|
class Java extends base_1.BaseStrategy {
|
|
49
49
|
constructor(options) {
|
|
50
|
-
var _a;
|
|
50
|
+
var _a, _b;
|
|
51
51
|
options.changelogSections = (_a = options.changelogSections) !== null && _a !== void 0 ? _a : CHANGELOG_SECTIONS;
|
|
52
52
|
// wrap the configured versioning strategy with snapshotting
|
|
53
53
|
const parentVersioningStrategy = options.versioningStrategy || new default_1.DefaultVersioningStrategy();
|
|
@@ -55,6 +55,7 @@ class Java extends base_1.BaseStrategy {
|
|
|
55
55
|
super(options);
|
|
56
56
|
this.snapshotVersioning = new java_add_snapshot_1.JavaAddSnapshot(parentVersioningStrategy);
|
|
57
57
|
this.snapshotLabels = options.snapshotLabels || manifest_1.DEFAULT_SNAPSHOT_LABELS;
|
|
58
|
+
this.skipSnapshot = (_b = options.skipSnapshot) !== null && _b !== void 0 ? _b : false;
|
|
58
59
|
}
|
|
59
60
|
async buildReleasePullRequest(commits, latestRelease, draft, labels = []) {
|
|
60
61
|
if (await this.needsSnapshot(commits, latestRelease)) {
|
|
@@ -107,6 +108,9 @@ class Java extends base_1.BaseStrategy {
|
|
|
107
108
|
}
|
|
108
109
|
async needsSnapshot(commits, latestRelease) {
|
|
109
110
|
var _a;
|
|
111
|
+
if (this.skipSnapshot) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
110
114
|
const component = await this.getComponent();
|
|
111
115
|
logger_1.logger.debug('component:', component);
|
|
112
116
|
const version = (_a = latestRelease === null || latestRelease === void 0 ? void 0 : latestRelease.tag) === null || _a === void 0 ? void 0 : _a.version;
|
|
@@ -33,11 +33,18 @@ class RootComposerUpdatePackages extends default_1.DefaultUpdater {
|
|
|
33
33
|
}
|
|
34
34
|
const parsed = JSON.parse(content);
|
|
35
35
|
if (this.versionsMap) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
for (const [key, version] of this.versionsMap.entries()) {
|
|
37
|
+
const toVersion = version.toString() || '1.0.0';
|
|
38
|
+
let fromVersion;
|
|
39
|
+
if (parsed.replace) {
|
|
40
|
+
fromVersion = parsed.replace[key];
|
|
41
|
+
parsed.replace[key] = toVersion;
|
|
42
|
+
}
|
|
43
|
+
if (parsed[key]) {
|
|
44
|
+
fromVersion !== null && fromVersion !== void 0 ? fromVersion : (fromVersion = parsed[key]);
|
|
45
|
+
parsed[key] = toVersion;
|
|
46
|
+
}
|
|
47
|
+
logger_1.logger.info(`updating ${key} from ${fromVersion} to ${toVersion}`);
|
|
41
48
|
}
|
|
42
49
|
}
|
|
43
50
|
return (0, json_stringify_1.jsonStringify)(parsed, content);
|
|
@@ -28,7 +28,7 @@ class ReleasePleaseConfig {
|
|
|
28
28
|
else {
|
|
29
29
|
parsed = { packages: {} };
|
|
30
30
|
}
|
|
31
|
-
parsed.packages[this.path] = this.config;
|
|
31
|
+
parsed.packages[this.path] = releaserConfigToJsonConfig(this.config);
|
|
32
32
|
if (content) {
|
|
33
33
|
return (0, json_stringify_1.jsonStringify)(parsed, content);
|
|
34
34
|
}
|
|
@@ -38,4 +38,34 @@ class ReleasePleaseConfig {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
exports.ReleasePleaseConfig = ReleasePleaseConfig;
|
|
41
|
+
function releaserConfigToJsonConfig(config) {
|
|
42
|
+
var _a, _b, _c;
|
|
43
|
+
const jsonConfig = {
|
|
44
|
+
'package-name': config.packageName,
|
|
45
|
+
component: config.component,
|
|
46
|
+
'changelog-path': config.changelogPath,
|
|
47
|
+
'release-type': config.releaseType,
|
|
48
|
+
'bump-minor-pre-major': config.bumpMinorPreMajor,
|
|
49
|
+
'bump-patch-for-minor-pre-major': config.bumpPatchForMinorPreMajor,
|
|
50
|
+
'changelog-sections': config.changelogSections,
|
|
51
|
+
'release-as': config.releaseAs,
|
|
52
|
+
'skip-github-release': config.skipGithubRelease,
|
|
53
|
+
draft: config.draft,
|
|
54
|
+
prerelease: config.prerelease,
|
|
55
|
+
'draft-pull-request': config.draftPullRequest,
|
|
56
|
+
label: (_a = config.labels) === null || _a === void 0 ? void 0 : _a.join(','),
|
|
57
|
+
'release-label': (_b = config.releaseLabels) === null || _b === void 0 ? void 0 : _b.join(','),
|
|
58
|
+
'include-component-in-tag': config.includeComponentInTag,
|
|
59
|
+
'include-v-in-tag': config.includeVInTag,
|
|
60
|
+
'changelog-type': config.changelogType,
|
|
61
|
+
'changelog-host': config.changelogHost,
|
|
62
|
+
'pull-request-title-pattern': config.pullRequestTitlePattern,
|
|
63
|
+
'separate-pull-requests': config.separatePullRequests,
|
|
64
|
+
'tag-separator': config.tagSeparator,
|
|
65
|
+
'extra-files': config.extraFiles,
|
|
66
|
+
'version-file': config.versionFile,
|
|
67
|
+
'snapshot-label': (_c = config.snapshotLabels) === null || _c === void 0 ? void 0 : _c.join(','), // Java-only
|
|
68
|
+
};
|
|
69
|
+
return jsonConfig;
|
|
70
|
+
}
|
|
41
71
|
//# sourceMappingURL=release-please-config.js.map
|
package/package.json
CHANGED
package/schemas/config.json
CHANGED
|
@@ -171,6 +171,10 @@
|
|
|
171
171
|
"snapshot-label": {
|
|
172
172
|
"description": "Label to add to snapshot pull request. Used by `java` strategies.",
|
|
173
173
|
"type": "string"
|
|
174
|
+
},
|
|
175
|
+
"skip-snapshot": {
|
|
176
|
+
"description": "If set, do not propose snapshot pull requests. Used by `java` strategies.",
|
|
177
|
+
"type": "boolean"
|
|
174
178
|
}
|
|
175
179
|
}
|
|
176
180
|
}
|
|
@@ -228,10 +232,33 @@
|
|
|
228
232
|
"items": {
|
|
229
233
|
"type": "string"
|
|
230
234
|
}
|
|
235
|
+
},
|
|
236
|
+
"merge": {
|
|
237
|
+
"description": "Whether to merge in-scope pull requests into a combined release pull request. Defaults to `true`.",
|
|
238
|
+
"type": "boolean"
|
|
231
239
|
}
|
|
232
240
|
},
|
|
233
241
|
"required": ["type", "groupName", "components"]
|
|
234
242
|
},
|
|
243
|
+
{
|
|
244
|
+
"description": "Configuration for various `workspace` plugins.",
|
|
245
|
+
"type": "object",
|
|
246
|
+
"properties": {
|
|
247
|
+
"type": {
|
|
248
|
+
"description": "The name of the plugin.",
|
|
249
|
+
"type": "string",
|
|
250
|
+
"enum": ["cargo-workspace", "maven-workspace", "node-workspace"]
|
|
251
|
+
},
|
|
252
|
+
"updateAllPackages": {
|
|
253
|
+
"description": "Whether to force updating all packages regardless of the dependency tree. Defaults to `false`.",
|
|
254
|
+
"type": "boolean"
|
|
255
|
+
},
|
|
256
|
+
"merge": {
|
|
257
|
+
"description": "Whether to merge in-scope pull requests into a combined release pull request. Defaults to `true`.",
|
|
258
|
+
"type": "boolean"
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
},
|
|
235
262
|
{
|
|
236
263
|
"description": "Other plugins",
|
|
237
264
|
"type": "object",
|