@salesforce/plugin-release-management 4.5.26 → 4.6.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/README.md +112 -135
- package/bin/dev.js +8 -6
- package/bin/run.js +7 -5
- package/lib/amazonS3.d.ts +4 -8
- package/lib/amazonS3.js +76 -81
- package/lib/amazonS3.js.map +1 -1
- package/lib/codeSigning/NpmName.js +5 -9
- package/lib/codeSigning/NpmName.js.map +1 -1
- package/lib/codeSigning/SimplifiedSigning.d.ts +1 -1
- package/lib/codeSigning/SimplifiedSigning.js +16 -21
- package/lib/codeSigning/SimplifiedSigning.js.map +1 -1
- package/lib/codeSigning/error.js +2 -6
- package/lib/codeSigning/error.js.map +1 -1
- package/lib/codeSigning/packAndSign.d.ts +2 -2
- package/lib/codeSigning/packAndSign.js +45 -44
- package/lib/codeSigning/packAndSign.js.map +1 -1
- package/lib/codeSigning/upload.d.ts +1 -1
- package/lib/codeSigning/upload.js +4 -8
- package/lib/codeSigning/upload.js.map +1 -1
- package/lib/commands/channel/promote.d.ts +11 -4
- package/lib/commands/channel/promote.js +113 -115
- package/lib/commands/channel/promote.js.map +1 -1
- package/lib/commands/cli/artifacts/compare.js +58 -52
- package/lib/commands/cli/artifacts/compare.js.map +1 -1
- package/lib/commands/cli/install/jit/test.d.ts +1 -1
- package/lib/commands/cli/install/jit/test.js +18 -21
- package/lib/commands/cli/install/jit/test.js.map +1 -1
- package/lib/commands/cli/install/test.d.ts +4 -4
- package/lib/commands/cli/install/test.js +114 -106
- package/lib/commands/cli/install/test.js.map +1 -1
- package/lib/commands/cli/release/automerge.d.ts +5 -5
- package/lib/commands/cli/release/automerge.js +44 -47
- package/lib/commands/cli/release/automerge.js.map +1 -1
- package/lib/commands/cli/release/build.d.ts +12 -12
- package/lib/commands/cli/release/build.js +78 -81
- package/lib/commands/cli/release/build.js.map +1 -1
- package/lib/commands/cli/releasenotes.d.ts +4 -4
- package/lib/commands/cli/releasenotes.js +49 -54
- package/lib/commands/cli/releasenotes.js.map +1 -1
- package/lib/commands/cli/tarballs/prepare.js +31 -33
- package/lib/commands/cli/tarballs/prepare.js.map +1 -1
- package/lib/commands/cli/tarballs/smoke.js +33 -32
- package/lib/commands/cli/tarballs/smoke.js.map +1 -1
- package/lib/commands/cli/tarballs/verify.d.ts +1 -1
- package/lib/commands/cli/tarballs/verify.js +58 -62
- package/lib/commands/cli/tarballs/verify.js.map +1 -1
- package/lib/commands/cli/versions/inspect.d.ts +4 -3
- package/lib/commands/cli/versions/inspect.js +79 -84
- package/lib/commands/cli/versions/inspect.js.map +1 -1
- package/lib/commands/dependabot/automerge.d.ts +6 -6
- package/lib/commands/dependabot/automerge.js +48 -48
- package/lib/commands/dependabot/automerge.js.map +1 -1
- package/lib/commands/github/check/closed.d.ts +7 -5
- package/lib/commands/github/check/closed.js +25 -28
- package/lib/commands/github/check/closed.js.map +1 -1
- package/lib/commands/npm/dependencies/pin.d.ts +3 -3
- package/lib/commands/npm/dependencies/pin.js +21 -24
- package/lib/commands/npm/dependencies/pin.js.map +1 -1
- package/lib/commands/npm/package/release.d.ts +11 -12
- package/lib/commands/npm/package/release.js +58 -61
- package/lib/commands/npm/package/release.js.map +1 -1
- package/lib/commands/repositories/index.d.ts +4 -3
- package/lib/commands/repositories/index.js +17 -20
- package/lib/commands/repositories/index.js.map +1 -1
- package/lib/dependabot.d.ts +1 -1
- package/lib/dependabot.js +13 -17
- package/lib/dependabot.js.map +1 -1
- package/lib/dependencies.d.ts +1 -1
- package/lib/dependencies.js +3 -7
- package/lib/dependencies.js.map +1 -1
- package/lib/index.d.ts +1 -2
- package/lib/index.js +1 -2
- package/lib/index.js.map +1 -1
- package/lib/jit.js +18 -22
- package/lib/jit.js.map +1 -1
- package/lib/package.d.ts +0 -2
- package/lib/package.js +36 -59
- package/lib/package.js.map +1 -1
- package/lib/registry.js +19 -18
- package/lib/registry.js.map +1 -1
- package/lib/repositories.js +5 -9
- package/lib/repositories.js.map +1 -1
- package/lib/repository.d.ts +5 -7
- package/lib/repository.js +41 -43
- package/lib/repository.js.map +1 -1
- package/lib/types.js +4 -7
- package/lib/types.js.map +1 -1
- package/npm-shrinkwrap.json +2992 -2265
- package/oclif.manifest.json +17 -69
- package/package.json +12 -11
- package/lib/commands/cli/schemas/compare.d.ts +0 -19
- package/lib/commands/cli/schemas/compare.js +0 -114
- package/lib/commands/cli/schemas/compare.js.map +0 -1
- package/messages/cli.schemas.compare.md +0 -7
|
@@ -5,18 +5,18 @@ export default class build extends SfCommand<void> {
|
|
|
5
5
|
static readonly examples: string[];
|
|
6
6
|
static readonly aliases: string[];
|
|
7
7
|
static readonly flags: {
|
|
8
|
-
'start-from-npm-dist-tag': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
-
'start-from-github-ref': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
-
'release-channel': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
-
'build-only': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
12
|
-
resolutions: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
13
|
-
only: import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
14
|
-
'pinned-deps': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
15
|
-
jit: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
-
label: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
17
|
-
patch: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
18
|
-
empty: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
19
|
-
'pr-base-branch': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
'start-from-npm-dist-tag': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
9
|
+
'start-from-github-ref': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
10
|
+
'release-channel': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
11
|
+
'build-only': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
12
|
+
resolutions: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
13
|
+
only: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string[], import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
14
|
+
'pinned-deps': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
15
|
+
jit: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
16
|
+
label: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
17
|
+
patch: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
18
|
+
empty: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
19
|
+
'pr-base-branch': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
20
20
|
};
|
|
21
21
|
run(): Promise<void>;
|
|
22
22
|
private distTagToGithubRef;
|
|
@@ -1,23 +1,79 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/*
|
|
3
2
|
* Copyright (c) 2020, salesforce.com, inc.
|
|
4
3
|
* All rights reserved.
|
|
5
4
|
* Licensed under the BSD 3-Clause license.
|
|
6
5
|
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
6
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
7
|
+
import { promisify } from 'node:util';
|
|
8
|
+
import { exec as execSync } from 'node:child_process';
|
|
9
|
+
import { arrayWithDeprecation, Flags, SfCommand, Ux } from '@salesforce/sf-plugins-core';
|
|
10
|
+
import { ensureString } from '@salesforce/ts-types';
|
|
11
|
+
import { Env } from '@salesforce/kit';
|
|
12
|
+
import { Octokit } from '@octokit/core';
|
|
13
|
+
import { Messages, SfError } from '@salesforce/core';
|
|
14
|
+
import { PackageRepo } from '../../../repository.js';
|
|
15
|
+
const exec = promisify(execSync);
|
|
16
|
+
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
17
|
+
const messages = Messages.loadMessages('@salesforce/plugin-release-management', 'cli.release.build');
|
|
18
|
+
export default class build extends SfCommand {
|
|
19
|
+
static description = messages.getMessage('description');
|
|
20
|
+
static summary = messages.getMessage('description');
|
|
21
|
+
static examples = messages.getMessages('examples');
|
|
22
|
+
static aliases = ['cli:latestrc:build'];
|
|
23
|
+
static flags = {
|
|
24
|
+
'start-from-npm-dist-tag': Flags.string({
|
|
25
|
+
summary: messages.getMessage('flags.start-from-npm-dist-tag.summary'),
|
|
26
|
+
char: 'd',
|
|
27
|
+
aliases: ['rctag'],
|
|
28
|
+
deprecateAliases: true,
|
|
29
|
+
exactlyOne: ['start-from-npm-dist-tag', 'start-from-github-ref'],
|
|
30
|
+
}),
|
|
31
|
+
'start-from-github-ref': Flags.string({
|
|
32
|
+
summary: messages.getMessage('flags.start-from-github-ref.summary'),
|
|
33
|
+
char: 'g',
|
|
34
|
+
exactlyOne: ['start-from-npm-dist-tag', 'start-from-github-ref'],
|
|
35
|
+
}),
|
|
36
|
+
'release-channel': Flags.string({
|
|
37
|
+
summary: messages.getMessage('flags.release-channel.summary'),
|
|
38
|
+
char: 'c',
|
|
39
|
+
required: true,
|
|
40
|
+
}),
|
|
41
|
+
'build-only': Flags.boolean({
|
|
42
|
+
summary: messages.getMessage('flags.build-only.summary'),
|
|
43
|
+
default: false,
|
|
44
|
+
}),
|
|
45
|
+
resolutions: Flags.boolean({
|
|
46
|
+
summary: messages.getMessage('flags.resolutions.summary'),
|
|
47
|
+
default: true,
|
|
48
|
+
allowNo: true,
|
|
49
|
+
}),
|
|
50
|
+
only: arrayWithDeprecation({
|
|
51
|
+
summary: messages.getMessage('flags.only.summary'),
|
|
52
|
+
}),
|
|
53
|
+
'pinned-deps': Flags.boolean({
|
|
54
|
+
summary: messages.getMessage('flags.pinned-deps.summary'),
|
|
55
|
+
default: true,
|
|
56
|
+
allowNo: true,
|
|
57
|
+
}),
|
|
58
|
+
jit: Flags.boolean({
|
|
59
|
+
summary: messages.getMessage('flags.jit.summary'),
|
|
60
|
+
default: true,
|
|
61
|
+
allowNo: true,
|
|
62
|
+
}),
|
|
63
|
+
label: Flags.string({
|
|
64
|
+
summary: messages.getMessage('flags.label.summary'),
|
|
65
|
+
multiple: true,
|
|
66
|
+
}),
|
|
67
|
+
patch: Flags.boolean({
|
|
68
|
+
summary: messages.getMessage('flags.patch.summary'),
|
|
69
|
+
}),
|
|
70
|
+
empty: Flags.boolean({
|
|
71
|
+
summary: messages.getMessage('flags.empty.summary'),
|
|
72
|
+
}),
|
|
73
|
+
'pr-base-branch': Flags.string({
|
|
74
|
+
summary: messages.getMessage('flags.pr-base-branch.summary'),
|
|
75
|
+
}),
|
|
76
|
+
};
|
|
21
77
|
/* eslint-disable complexity */
|
|
22
78
|
async run() {
|
|
23
79
|
const { flags } = await this.parse(build);
|
|
@@ -27,10 +83,10 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
27
83
|
this.log(`NOTE: The release channel '${flags['release-channel']}' is not one of 'latest', 'latest-rc', 'nightly'. It will released as a prerelease.`);
|
|
28
84
|
}
|
|
29
85
|
const auth = pushChangesToGitHub
|
|
30
|
-
?
|
|
86
|
+
? ensureString(new Env().getString('GH_TOKEN') ?? new Env().getString('GITHUB_TOKEN'), 'The GH_TOKEN env var is required to push changes to GitHub. Use the --build-only flag to skip GitHub operations (a manual push will then be needed)')
|
|
31
87
|
: undefined;
|
|
32
88
|
// if the github ref is not provided, the dist tag must be
|
|
33
|
-
const ref = flags['start-from-github-ref'] ?? (await this.distTagToGithubRef(
|
|
89
|
+
const ref = flags['start-from-github-ref'] ?? (await this.distTagToGithubRef(ensureString(flags['start-from-npm-dist-tag'])));
|
|
34
90
|
// Check out "starting point"
|
|
35
91
|
// Works with sha (detached): "git checkout f476e8e"
|
|
36
92
|
// Works with remote branch: "git checkout my-branch"
|
|
@@ -46,7 +102,7 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
46
102
|
? await this.createAndPushBaseBranch(ref)
|
|
47
103
|
: 'main';
|
|
48
104
|
}
|
|
49
|
-
const repo = await
|
|
105
|
+
const repo = await PackageRepo.create({ ux: new Ux({ jsonEnabled: this.jsonEnabled() }) });
|
|
50
106
|
// Get the current version for the "starting point"
|
|
51
107
|
const currentVersion = repo.package.packageJson.version;
|
|
52
108
|
// TODO: We might want to check and see if nextVersion exists in npm
|
|
@@ -73,7 +129,7 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
73
129
|
this.log(`Bumping the following dependencies only: ${flags.only.join(', ')}`);
|
|
74
130
|
const bumped = repo.package.bumpDependencyVersions(flags.only);
|
|
75
131
|
if (!bumped.length) {
|
|
76
|
-
throw new
|
|
132
|
+
throw new SfError('No version changes made. Confirm you are passing the correct dependency and version to --only.');
|
|
77
133
|
}
|
|
78
134
|
}
|
|
79
135
|
else {
|
|
@@ -103,14 +159,14 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
103
159
|
await this.exec('yarn oclif readme --no-aliases --repository-prefix "<%- repo %>/blob/<%- version %>/<%- commandPath %>"');
|
|
104
160
|
this.log('Updates complete');
|
|
105
161
|
if (pushChangesToGitHub) {
|
|
106
|
-
const octokit = new
|
|
162
|
+
const octokit = new Octokit({ auth });
|
|
107
163
|
await this.maybeSetGitConfig(octokit);
|
|
108
164
|
// commit package.json/yarn.lock and potentially command-snapshot changes
|
|
109
165
|
await this.exec('git add .');
|
|
110
166
|
await this.exec(`git commit -m "chore(release): bump to ${nextVersion}"`);
|
|
111
167
|
await this.exec(`git push --set-upstream origin ${branchName} --no-verify`);
|
|
112
168
|
if (!repo.package.packageJson.repository) {
|
|
113
|
-
throw new
|
|
169
|
+
throw new SfError('The repository field is required in the package.json. This is used to determine the repo owner and name to create the release PR.');
|
|
114
170
|
}
|
|
115
171
|
const [repoOwner, repoName] = repo.package.packageJson.repository.split('/');
|
|
116
172
|
const releaseDetails = `
|
|
@@ -141,7 +197,7 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
141
197
|
}
|
|
142
198
|
async distTagToGithubRef(distTag) {
|
|
143
199
|
this.log(`Flag '--start-from-npm-dist-tag' passed, looking up version for ${distTag}`);
|
|
144
|
-
const temp = await
|
|
200
|
+
const temp = await PackageRepo.create({ ux: new Ux({ jsonEnabled: this.jsonEnabled() }) });
|
|
145
201
|
return temp.package.getDistTags(temp.package.packageJson.name)[distTag];
|
|
146
202
|
}
|
|
147
203
|
async createAndPushBaseBranch(ref) {
|
|
@@ -172,7 +228,7 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
172
228
|
// An error will throw before `stdout` is able to be log above. The child_process.exec adds stdout and stderr to the error object
|
|
173
229
|
const error = err;
|
|
174
230
|
this.log(error.stdout);
|
|
175
|
-
throw new
|
|
231
|
+
throw new SfError(err.message);
|
|
176
232
|
}
|
|
177
233
|
}
|
|
178
234
|
async maybeSetGitConfig(octokit) {
|
|
@@ -187,63 +243,4 @@ class build extends sf_plugins_core_1.SfCommand {
|
|
|
187
243
|
}
|
|
188
244
|
}
|
|
189
245
|
}
|
|
190
|
-
build.description = messages.getMessage('description');
|
|
191
|
-
build.summary = messages.getMessage('description');
|
|
192
|
-
build.examples = messages.getMessages('examples');
|
|
193
|
-
build.aliases = ['cli:latestrc:build'];
|
|
194
|
-
build.flags = {
|
|
195
|
-
'start-from-npm-dist-tag': sf_plugins_core_1.Flags.string({
|
|
196
|
-
summary: messages.getMessage('flags.start-from-npm-dist-tag.summary'),
|
|
197
|
-
char: 'd',
|
|
198
|
-
aliases: ['rctag'],
|
|
199
|
-
deprecateAliases: true,
|
|
200
|
-
exactlyOne: ['start-from-npm-dist-tag', 'start-from-github-ref'],
|
|
201
|
-
}),
|
|
202
|
-
'start-from-github-ref': sf_plugins_core_1.Flags.string({
|
|
203
|
-
summary: messages.getMessage('flags.start-from-github-ref.summary'),
|
|
204
|
-
char: 'g',
|
|
205
|
-
exactlyOne: ['start-from-npm-dist-tag', 'start-from-github-ref'],
|
|
206
|
-
}),
|
|
207
|
-
'release-channel': sf_plugins_core_1.Flags.string({
|
|
208
|
-
summary: messages.getMessage('flags.release-channel.summary'),
|
|
209
|
-
char: 'c',
|
|
210
|
-
required: true,
|
|
211
|
-
}),
|
|
212
|
-
'build-only': sf_plugins_core_1.Flags.boolean({
|
|
213
|
-
summary: messages.getMessage('flags.build-only.summary'),
|
|
214
|
-
default: false,
|
|
215
|
-
}),
|
|
216
|
-
resolutions: sf_plugins_core_1.Flags.boolean({
|
|
217
|
-
summary: messages.getMessage('flags.resolutions.summary'),
|
|
218
|
-
default: true,
|
|
219
|
-
allowNo: true,
|
|
220
|
-
}),
|
|
221
|
-
only: (0, sf_plugins_core_1.arrayWithDeprecation)({
|
|
222
|
-
summary: messages.getMessage('flags.only.summary'),
|
|
223
|
-
}),
|
|
224
|
-
'pinned-deps': sf_plugins_core_1.Flags.boolean({
|
|
225
|
-
summary: messages.getMessage('flags.pinned-deps.summary'),
|
|
226
|
-
default: true,
|
|
227
|
-
allowNo: true,
|
|
228
|
-
}),
|
|
229
|
-
jit: sf_plugins_core_1.Flags.boolean({
|
|
230
|
-
summary: messages.getMessage('flags.jit.summary'),
|
|
231
|
-
default: true,
|
|
232
|
-
allowNo: true,
|
|
233
|
-
}),
|
|
234
|
-
label: sf_plugins_core_1.Flags.string({
|
|
235
|
-
summary: messages.getMessage('flags.label.summary'),
|
|
236
|
-
multiple: true,
|
|
237
|
-
}),
|
|
238
|
-
patch: sf_plugins_core_1.Flags.boolean({
|
|
239
|
-
summary: messages.getMessage('flags.patch.summary'),
|
|
240
|
-
}),
|
|
241
|
-
empty: sf_plugins_core_1.Flags.boolean({
|
|
242
|
-
summary: messages.getMessage('flags.empty.summary'),
|
|
243
|
-
}),
|
|
244
|
-
'pr-base-branch': sf_plugins_core_1.Flags.string({
|
|
245
|
-
summary: messages.getMessage('flags.pr-base-branch.summary'),
|
|
246
|
-
}),
|
|
247
|
-
};
|
|
248
|
-
exports.default = build;
|
|
249
246
|
//# sourceMappingURL=build.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../src/commands/cli/release/build.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../src/commands/cli/release/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,15 @@ type Change = {
|
|
|
8
8
|
plugin: string;
|
|
9
9
|
title: string;
|
|
10
10
|
};
|
|
11
|
-
type ChangesByPlugin = Record<string, Change[]>;
|
|
11
|
+
export type ChangesByPlugin = Record<string, Change[]>;
|
|
12
12
|
export default class ReleaseNotes extends SfCommand<ChangesByPlugin> {
|
|
13
13
|
static readonly summary: string;
|
|
14
14
|
static readonly description: string;
|
|
15
15
|
static readonly examples: string[];
|
|
16
16
|
static readonly flags: {
|
|
17
|
-
cli: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
-
since: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
-
markdown: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
17
|
+
cli: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
18
|
+
since: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
|
|
19
|
+
markdown: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
20
20
|
};
|
|
21
21
|
private octokit;
|
|
22
22
|
private usernames;
|
|
@@ -1,34 +1,50 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/*
|
|
3
2
|
* Copyright (c) 2020, salesforce.com, inc.
|
|
4
3
|
* All rights reserved.
|
|
5
4
|
* Licensed under the BSD 3-Clause license.
|
|
6
5
|
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
6
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
7
|
+
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
8
|
+
import { ensure, ensureString } from '@salesforce/ts-types';
|
|
9
|
+
import { Env } from '@salesforce/kit';
|
|
10
|
+
import { Octokit } from '@octokit/core';
|
|
11
|
+
import chalk from 'chalk';
|
|
12
|
+
import { Messages, SfError } from '@salesforce/core';
|
|
13
|
+
import shelljs from 'shelljs';
|
|
14
|
+
import semver from 'semver';
|
|
15
|
+
import { CLI } from '../../types.js';
|
|
16
|
+
import { parseAliasedPackageName, parsePackageVersion } from '../../package.js';
|
|
17
|
+
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
18
|
+
const messages = Messages.loadMessages('@salesforce/plugin-release-management', 'cli.releasenotes');
|
|
19
|
+
export default class ReleaseNotes extends SfCommand {
|
|
20
|
+
static summary = messages.getMessage('description');
|
|
21
|
+
static description = messages.getMessage('description');
|
|
22
|
+
static examples = messages.getMessages('examples');
|
|
23
|
+
static flags = {
|
|
24
|
+
cli: Flags.string({
|
|
25
|
+
summary: messages.getMessage('flags.cli.summary'),
|
|
26
|
+
options: Object.values(CLI),
|
|
27
|
+
char: 'c',
|
|
28
|
+
required: true,
|
|
29
|
+
}),
|
|
30
|
+
since: Flags.string({
|
|
31
|
+
summary: messages.getMessage('flags.since.summary'),
|
|
32
|
+
char: 's',
|
|
33
|
+
}),
|
|
34
|
+
markdown: Flags.boolean({
|
|
35
|
+
summary: messages.getMessage('flags.markdown.summary'),
|
|
36
|
+
char: 'm',
|
|
37
|
+
default: false,
|
|
38
|
+
}),
|
|
39
|
+
};
|
|
40
|
+
octokit;
|
|
41
|
+
usernames = new Map();
|
|
26
42
|
async run() {
|
|
27
43
|
const { flags } = await this.parse(ReleaseNotes);
|
|
28
|
-
const auth =
|
|
29
|
-
this.octokit = new
|
|
30
|
-
const cli =
|
|
31
|
-
const fullName = cli ===
|
|
44
|
+
const auth = ensureString(new Env().getString('GH_TOKEN'), 'GH_TOKEN is required to be set in the environment');
|
|
45
|
+
this.octokit = new Octokit({ auth });
|
|
46
|
+
const cli = ensure(flags.cli);
|
|
47
|
+
const fullName = cli === CLI.SF ? '@salesforce/cli' : 'sfdx-cli';
|
|
32
48
|
const npmPackage = getNpmPackage(fullName, flags.since ?? 'latest');
|
|
33
49
|
const latestrc = getNpmPackage(fullName, 'latest-rc');
|
|
34
50
|
const oldPlugins = normalizePlugins(npmPackage);
|
|
@@ -88,7 +104,7 @@ class ReleaseNotes extends sf_plugins_core_1.SfCommand {
|
|
|
88
104
|
const npmPackage = getNpmPackage(plugin);
|
|
89
105
|
const homepage = npmPackage.homepage ?? (npmPackage.name === 'salesforce-alm' ? 'salesforcecli/toolbelt' : null);
|
|
90
106
|
if (!homepage) {
|
|
91
|
-
throw new
|
|
107
|
+
throw new SfError(`No github url found for ${npmPackage.name}`, 'GitUrlNotFound');
|
|
92
108
|
}
|
|
93
109
|
const [owner, repo] = homepage.replace('https://github.com/', '').replace(/#(.*)/g, '').split('/');
|
|
94
110
|
const pullRequests = await this.octokit.request('GET /repos/{owner}/{repo}/pulls', {
|
|
@@ -102,7 +118,7 @@ class ReleaseNotes extends sf_plugins_core_1.SfCommand {
|
|
|
102
118
|
const changes = (await Promise.all(pullRequests.data
|
|
103
119
|
.filter((pr) => pr.merged_at && (!publishDate || pr.merged_at > publishDate) && !pr.user?.login.includes('dependabot'))
|
|
104
120
|
.map(async (pr) => {
|
|
105
|
-
const username = await this.getNameOfUser(
|
|
121
|
+
const username = await this.getNameOfUser(ensureString(pr.user?.login, `No user.login property found for ${JSON.stringify(pr)}`));
|
|
106
122
|
const author = pr.user?.login === username ? username : `${username} (${pr.user?.login})`;
|
|
107
123
|
return {
|
|
108
124
|
author,
|
|
@@ -118,17 +134,17 @@ class ReleaseNotes extends sf_plugins_core_1.SfCommand {
|
|
|
118
134
|
}
|
|
119
135
|
logChanges(changesByPlugin) {
|
|
120
136
|
for (const [plugin, changes] of Object.entries(changesByPlugin)) {
|
|
121
|
-
this.styledHeader(
|
|
137
|
+
this.styledHeader(chalk.cyan(plugin));
|
|
122
138
|
for (const change of changes) {
|
|
123
|
-
this.log(
|
|
139
|
+
this.log(chalk.bold(`${change.title}`));
|
|
124
140
|
for (const [key, value] of Object.entries(change)) {
|
|
125
141
|
if (['title', 'plugin'].includes(key))
|
|
126
142
|
continue;
|
|
127
143
|
if (key === 'description') {
|
|
128
|
-
this.log(`${key}:\n${
|
|
144
|
+
this.log(`${key}:\n${chalk.dim(value)}`);
|
|
129
145
|
}
|
|
130
146
|
else {
|
|
131
|
-
this.log(`${key}: ${
|
|
147
|
+
this.log(`${key}: ${chalk.dim(value)}`);
|
|
132
148
|
}
|
|
133
149
|
}
|
|
134
150
|
this.log();
|
|
@@ -157,29 +173,8 @@ class ReleaseNotes extends sf_plugins_core_1.SfCommand {
|
|
|
157
173
|
}
|
|
158
174
|
}
|
|
159
175
|
}
|
|
160
|
-
ReleaseNotes.summary = messages.getMessage('description');
|
|
161
|
-
ReleaseNotes.description = messages.getMessage('description');
|
|
162
|
-
ReleaseNotes.examples = messages.getMessages('examples');
|
|
163
|
-
ReleaseNotes.flags = {
|
|
164
|
-
cli: sf_plugins_core_1.Flags.string({
|
|
165
|
-
summary: messages.getMessage('flags.cli.summary'),
|
|
166
|
-
options: Object.values(types_1.CLI),
|
|
167
|
-
char: 'c',
|
|
168
|
-
required: true,
|
|
169
|
-
}),
|
|
170
|
-
since: sf_plugins_core_1.Flags.string({
|
|
171
|
-
summary: messages.getMessage('flags.since.summary'),
|
|
172
|
-
char: 's',
|
|
173
|
-
}),
|
|
174
|
-
markdown: sf_plugins_core_1.Flags.boolean({
|
|
175
|
-
summary: messages.getMessage('flags.markdown.summary'),
|
|
176
|
-
char: 'm',
|
|
177
|
-
default: false,
|
|
178
|
-
}),
|
|
179
|
-
};
|
|
180
|
-
exports.default = ReleaseNotes;
|
|
181
176
|
const getNpmPackage = (name, version = 'latest') => {
|
|
182
|
-
const result =
|
|
177
|
+
const result = shelljs.exec(`npm view ${name}@${version} --json`, { silent: true });
|
|
183
178
|
return JSON.parse(result.stdout);
|
|
184
179
|
};
|
|
185
180
|
const normalizePlugins = (npmPackage) => {
|
|
@@ -187,11 +182,11 @@ const normalizePlugins = (npmPackage) => {
|
|
|
187
182
|
const dependencies = npmPackage.dependencies ?? {};
|
|
188
183
|
// return normalized;
|
|
189
184
|
const pluginsTuples = plugins.map((p) => {
|
|
190
|
-
const version =
|
|
185
|
+
const version = parsePackageVersion(dependencies[p]);
|
|
191
186
|
if (!version) {
|
|
192
|
-
throw new
|
|
187
|
+
throw new SfError(`Could not find version for ${p}`, 'VersionNotFound');
|
|
193
188
|
}
|
|
194
|
-
const name = dependencies[p].startsWith('npm:') ?
|
|
189
|
+
const name = dependencies[p].startsWith('npm:') ? parseAliasedPackageName(dependencies[p]) : p;
|
|
195
190
|
return [name, version];
|
|
196
191
|
});
|
|
197
192
|
return new Map([[npmPackage.name, npmPackage.version], ...pluginsTuples]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"releasenotes.js","sourceRoot":"","sources":["../../../src/commands/cli/releasenotes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"releasenotes.js","sourceRoot":"","sources":["../../../src/commands/cli/releasenotes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,43 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/*
|
|
3
2
|
* Copyright (c) 2021, salesforce.com, inc.
|
|
4
3
|
* All rights reserved.
|
|
5
4
|
* Licensed under the BSD 3-Clause license.
|
|
6
5
|
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
6
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const messages = core_1.Messages.loadMessages('@salesforce/plugin-release-management', 'cli.tarballs.prepare');
|
|
7
|
+
import fg from 'fast-glob';
|
|
8
|
+
import shelljs from 'shelljs';
|
|
9
|
+
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
10
|
+
import { Messages } from '@salesforce/core';
|
|
11
|
+
import chalk from 'chalk';
|
|
12
|
+
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
13
|
+
const messages = Messages.loadMessages('@salesforce/plugin-release-management', 'cli.tarballs.prepare');
|
|
16
14
|
/**
|
|
17
15
|
* The functionality of this command is taken entirely from https://github.com/salesforcecli/sfdx-cli/blob/v7.109.0/scripts/clean-for-tarballs
|
|
18
16
|
*/
|
|
19
|
-
class Prepare extends
|
|
17
|
+
export default class Prepare extends SfCommand {
|
|
18
|
+
static summary = messages.getMessage('description');
|
|
19
|
+
static description = messages.getMessage('description');
|
|
20
|
+
static examples = messages.getMessages('examples');
|
|
21
|
+
static flags = {
|
|
22
|
+
dryrun: Flags.boolean({
|
|
23
|
+
summary: messages.getMessage('flags.dryrun.summary'),
|
|
24
|
+
default: false,
|
|
25
|
+
char: 'd',
|
|
26
|
+
}),
|
|
27
|
+
types: Flags.boolean({
|
|
28
|
+
summary: messages.getMessage('flags.types.summary'),
|
|
29
|
+
default: false,
|
|
30
|
+
char: 't',
|
|
31
|
+
}),
|
|
32
|
+
verbose: Flags.boolean({
|
|
33
|
+
summary: messages.getMessage('flags.verbose.summary'),
|
|
34
|
+
}),
|
|
35
|
+
};
|
|
36
|
+
flags;
|
|
20
37
|
async run() {
|
|
21
38
|
const { flags } = await this.parse(Prepare);
|
|
22
39
|
this.flags = flags;
|
|
23
|
-
const workingDir =
|
|
40
|
+
const workingDir = shelljs.pwd().stdout;
|
|
24
41
|
const baseDirGlob = `${workingDir}/node_modules`;
|
|
25
42
|
// Remove JSforceTestSuite from dist
|
|
26
43
|
const jsForceTestSuite = await find(`${baseDirGlob}/JSforceTestSuite`, { onlyDirectories: true });
|
|
@@ -88,36 +105,17 @@ class Prepare extends sf_plugins_core_1.SfCommand {
|
|
|
88
105
|
if (!files.length)
|
|
89
106
|
return;
|
|
90
107
|
const msg = this.flags.dryrun
|
|
91
|
-
? `${
|
|
92
|
-
: `${
|
|
108
|
+
? `${chalk.red.bold('[DRYRUN] Removing:')} ${files.length} ${type}`
|
|
109
|
+
: `${chalk.red.bold('Removing:')} ${files.length} ${type}`;
|
|
93
110
|
this.log(msg);
|
|
94
111
|
if (this.flags.verbose) {
|
|
95
112
|
files.forEach((f) => this.log(` ${f}`));
|
|
96
113
|
}
|
|
97
114
|
if (!this.flags.dryrun) {
|
|
98
|
-
files.forEach((f) =>
|
|
115
|
+
files.forEach((f) => shelljs.rm('-rf', f));
|
|
99
116
|
}
|
|
100
117
|
}
|
|
101
118
|
}
|
|
102
|
-
Prepare.summary = messages.getMessage('description');
|
|
103
|
-
Prepare.description = messages.getMessage('description');
|
|
104
|
-
Prepare.examples = messages.getMessages('examples');
|
|
105
|
-
Prepare.flags = {
|
|
106
|
-
dryrun: sf_plugins_core_1.Flags.boolean({
|
|
107
|
-
summary: messages.getMessage('flags.dryrun.summary'),
|
|
108
|
-
default: false,
|
|
109
|
-
char: 'd',
|
|
110
|
-
}),
|
|
111
|
-
types: sf_plugins_core_1.Flags.boolean({
|
|
112
|
-
summary: messages.getMessage('flags.types.summary'),
|
|
113
|
-
default: false,
|
|
114
|
-
char: 't',
|
|
115
|
-
}),
|
|
116
|
-
verbose: sf_plugins_core_1.Flags.boolean({
|
|
117
|
-
summary: messages.getMessage('flags.verbose.summary'),
|
|
118
|
-
}),
|
|
119
|
-
};
|
|
120
|
-
exports.default = Prepare;
|
|
121
119
|
const find = async (globPattern, options = {}) => {
|
|
122
120
|
const patterns = [globPattern];
|
|
123
121
|
if (options.excludeDirectories) {
|