rman 1.3.0 → 2.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +63 -19
- package/cli.d.ts +5 -0
- package/cli.js +214 -88
- package/commands/build.command.d.ts +177 -3
- package/commands/build.command.js +20 -10
- package/commands/changed.command.d.ts +80 -3
- package/commands/changed.command.js +19 -12
- package/commands/changelog.command.d.ts +192 -3
- package/commands/changelog.command.js +87 -43
- package/commands/config.command.d.ts +44 -3
- package/commands/config.command.js +30 -19
- package/commands/diff.command.d.ts +37 -3
- package/commands/diff.command.js +25 -16
- package/commands/exec.command.d.ts +193 -3
- package/commands/exec.command.js +60 -58
- package/commands/github-release.command.d.ts +154 -3
- package/commands/github-release.command.js +67 -37
- package/commands/import.command.d.ts +36 -3
- package/commands/import.command.js +28 -20
- package/commands/info.command.d.ts +35 -7
- package/commands/info.command.js +36 -30
- package/commands/list.command.d.ts +163 -3
- package/commands/list.command.js +109 -71
- package/commands/publish.command.d.ts +231 -0
- package/commands/publish.command.js +304 -0
- package/commands/run.command.d.ts +186 -6
- package/commands/run.command.js +26 -72
- package/commands/test.command.d.ts +173 -3
- package/commands/test.command.js +16 -10
- package/commands/version.command.d.ts +317 -3
- package/commands/version.command.js +149 -69
- package/commands.d.ts +32 -0
- package/commands.js +28 -0
- package/constants.js +1 -1
- package/core/application.d.ts +116 -0
- package/core/application.js +143 -0
- package/core/command-builder.d.ts +14 -0
- package/core/command-builder.js +78 -0
- package/core/config.d.ts +140 -19
- package/core/config.js +258 -74
- package/core/core-services.d.ts +14 -0
- package/core/core-services.js +30 -0
- package/core/core-targets.d.ts +14 -0
- package/core/core-targets.js +16 -0
- package/core/custom-command.d.ts +42 -6
- package/core/custom-command.js +44 -17
- package/core/extends-config.d.ts +13 -5
- package/core/extends-config.js +52 -12
- package/core/load-config-module.d.ts +28 -0
- package/core/load-config-module.js +42 -0
- package/core/manifest.d.ts +47 -25
- package/core/manifest.js +51 -69
- package/core/merge-config.d.ts +33 -34
- package/core/merge-config.js +137 -92
- package/core/package.d.ts +145 -17
- package/core/package.js +128 -36
- package/core/plugin-loader.d.ts +65 -0
- package/core/plugin-loader.js +234 -0
- package/core/plugin.d.ts +135 -90
- package/core/plugin.js +70 -173
- package/core/publish-target.d.ts +124 -0
- package/core/publish-target.js +30 -0
- package/core/registry.d.ts +30 -0
- package/core/registry.js +47 -0
- package/core/repository.d.ts +72 -9
- package/core/repository.js +293 -44
- package/core/resolve-target.d.ts +1 -1
- package/core/resolve-target.js +1 -1
- package/core/service.d.ts +49 -0
- package/core/service.js +40 -0
- package/core/version-scheme.d.ts +23 -1
- package/core/version-scheme.js +29 -1
- package/core/workspace.d.ts +84 -33
- package/core/workspace.js +63 -22
- package/index.d.ts +111 -14
- package/index.js +85 -9
- package/interfaces/rman-config.interface.d.ts +725 -202
- package/interfaces/rman-config.interface.js +61 -1
- package/package.json +2 -1
- package/plugins/builtins.d.ts +44 -0
- package/plugins/builtins.js +33 -0
- package/plugins/detect.d.ts +78 -0
- package/plugins/detect.js +70 -0
- package/plugins/node/augmentation/rman.augmentation.d.ts +84 -0
- package/plugins/node/augmentation/rman.augmentation.js +1 -0
- package/plugins/node/augmentation/system-info.augmentation.d.ts +26 -0
- package/plugins/node/augmentation/system-info.augmentation.js +79 -0
- package/plugins/node/commands/ci.command.d.ts +131 -0
- package/plugins/node/commands/ci.command.js +59 -0
- package/plugins/node/commands/clean.command.d.ts +183 -0
- package/plugins/node/commands/clean.command.js +73 -0
- package/plugins/node/index.d.ts +29 -0
- package/plugins/node/index.js +40 -0
- package/plugins/node/node-config.interface.d.ts +77 -0
- package/plugins/node/node-config.interface.js +7 -0
- package/plugins/node/node-manifest.provider.d.ts +68 -0
- package/plugins/node/node-manifest.provider.js +125 -0
- package/plugins/node/node.platform.d.ts +53 -0
- package/plugins/node/node.platform.js +134 -0
- package/plugins/node/npm-publish-target.d.ts +73 -0
- package/plugins/node/npm-publish-target.js +96 -0
- package/plugins/node/services/ci.service.d.ts +47 -0
- package/plugins/node/services/ci.service.js +213 -0
- package/plugins/node/services/clean.service.d.ts +53 -0
- package/plugins/node/services/clean.service.js +237 -0
- package/plugins/node/services/publish.service.d.ts +114 -0
- package/plugins/node/services/publish.service.js +371 -0
- package/plugins/node/services/version-plan.service.d.ts +44 -0
- package/plugins/node/services/version-plan.service.js +58 -0
- package/plugins/node/utils/npm-view.d.ts +48 -0
- package/plugins/node/utils/npm-view.js +71 -0
- package/plugins/node/utils/workspace-range.d.ts +26 -0
- package/plugins/node/utils/workspace-range.js +28 -0
- package/services/change-hash.service.d.ts +2 -2
- package/services/change-hash.service.js +2 -2
- package/services/changelog.service.d.ts +62 -51
- package/services/changelog.service.js +14 -11
- package/services/docker-publish.service.d.ts +50 -29
- package/services/docker-publish.service.js +43 -20
- package/services/exec.service.d.ts +23 -12
- package/services/exec.service.js +14 -9
- package/services/github-release.service.d.ts +44 -33
- package/services/github-release.service.js +13 -10
- package/services/import.service.d.ts +25 -14
- package/services/import.service.js +9 -5
- package/services/list.service.d.ts +62 -10
- package/services/list.service.js +62 -15
- package/services/run.service.d.ts +22 -13
- package/services/run.service.js +262 -223
- package/services/version-plan.service.d.ts +27 -4
- package/services/version-plan.service.js +42 -15
- package/services/version.service.d.ts +31 -11
- package/services/version.service.js +29 -13
- package/targets/docker.target.d.ts +53 -0
- package/targets/docker.target.js +40 -0
- package/utils/bin-path.d.ts +6 -7
- package/utils/bin-path.js +7 -18
- package/utils/branch-guard.d.ts +29 -0
- package/utils/branch-guard.js +31 -0
- package/utils/exec.d.ts +10 -0
- package/utils/exec.js +1 -1
- package/utils/logger.d.ts +1 -1
- package/utils/logger.js +1 -1
- package/utils/package-filter.d.ts +127 -7
- package/utils/package-filter.js +197 -16
- package/utils/printable-config.d.ts +1 -1
- package/utils/printable-config.js +1 -1
- package/utils/run-bin.d.ts +10 -0
- package/utils/run-bin.js +1 -1
- package/utils/run-options.d.ts +97 -0
- package/utils/run-options.js +81 -0
- package/utils/version-stamp.d.ts +1 -1
- package/utils/version-stamp.js +1 -1
|
@@ -1,3 +1,177 @@
|
|
|
1
|
-
import type
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { type RmanConfig } from '../interfaces/rman-config.interface.js';
|
|
2
|
+
declare const COMMAND: "build";
|
|
3
|
+
declare const config: {
|
|
4
|
+
parallel: {
|
|
5
|
+
target: "cli";
|
|
6
|
+
describe: string;
|
|
7
|
+
coerce: (v: unknown) => boolean | number | undefined;
|
|
8
|
+
};
|
|
9
|
+
bail: {
|
|
10
|
+
target: "cli";
|
|
11
|
+
describe: string;
|
|
12
|
+
type: "boolean";
|
|
13
|
+
};
|
|
14
|
+
topo: {
|
|
15
|
+
target: "cli";
|
|
16
|
+
describe: string;
|
|
17
|
+
type: "boolean";
|
|
18
|
+
};
|
|
19
|
+
progress: {
|
|
20
|
+
target: "cli";
|
|
21
|
+
describe: string;
|
|
22
|
+
type: "boolean";
|
|
23
|
+
};
|
|
24
|
+
changed: {
|
|
25
|
+
target: "cli";
|
|
26
|
+
alias: string;
|
|
27
|
+
describe: string;
|
|
28
|
+
type: "boolean";
|
|
29
|
+
};
|
|
30
|
+
changedSince: {
|
|
31
|
+
target: "cli";
|
|
32
|
+
cliName: string;
|
|
33
|
+
describe: string;
|
|
34
|
+
type: "string";
|
|
35
|
+
conflicts: string;
|
|
36
|
+
};
|
|
37
|
+
fromRoot: {
|
|
38
|
+
target: "cli";
|
|
39
|
+
cliName: string;
|
|
40
|
+
alias: string;
|
|
41
|
+
describe: string;
|
|
42
|
+
type: "boolean";
|
|
43
|
+
};
|
|
44
|
+
allowBranch: {
|
|
45
|
+
target: "cli";
|
|
46
|
+
cliName: string;
|
|
47
|
+
describe: string;
|
|
48
|
+
type: "string";
|
|
49
|
+
};
|
|
50
|
+
ignoreBranch: {
|
|
51
|
+
target: "cli";
|
|
52
|
+
cliName: string;
|
|
53
|
+
describe: string;
|
|
54
|
+
type: "string";
|
|
55
|
+
};
|
|
56
|
+
scope: {
|
|
57
|
+
target: "cli";
|
|
58
|
+
describe: string;
|
|
59
|
+
type: "string";
|
|
60
|
+
};
|
|
61
|
+
ignore: {
|
|
62
|
+
target: "cli";
|
|
63
|
+
describe: string;
|
|
64
|
+
type: "string";
|
|
65
|
+
};
|
|
66
|
+
platform: {
|
|
67
|
+
target: "cli";
|
|
68
|
+
describe: string;
|
|
69
|
+
type: "string";
|
|
70
|
+
};
|
|
71
|
+
deps: {
|
|
72
|
+
target: "cli";
|
|
73
|
+
describe: string;
|
|
74
|
+
type: "boolean";
|
|
75
|
+
};
|
|
76
|
+
dependents: {
|
|
77
|
+
target: "cli";
|
|
78
|
+
describe: string;
|
|
79
|
+
type: "boolean";
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
type Args = RmanConfig.ArgsOf<typeof config, typeof COMMAND>;
|
|
83
|
+
declare const buildCommand: (app: import("../index.js").RmanApplication) => {
|
|
84
|
+
command: "build";
|
|
85
|
+
describe: string;
|
|
86
|
+
/**
|
|
87
|
+
* Read, not owned - and it owns nothing at all. `build` is `run build` under another name, so its
|
|
88
|
+
* settings live in `run.build`, which belongs to `run`. Two commands cannot contribute under one
|
|
89
|
+
* top-level key (interface merging is not a deep merge), and this is why they never needed to.
|
|
90
|
+
*/
|
|
91
|
+
configKeys: string[];
|
|
92
|
+
config: {
|
|
93
|
+
parallel: {
|
|
94
|
+
target: "cli";
|
|
95
|
+
describe: string;
|
|
96
|
+
coerce: (v: unknown) => boolean | number | undefined;
|
|
97
|
+
};
|
|
98
|
+
bail: {
|
|
99
|
+
target: "cli";
|
|
100
|
+
describe: string;
|
|
101
|
+
type: "boolean";
|
|
102
|
+
};
|
|
103
|
+
topo: {
|
|
104
|
+
target: "cli";
|
|
105
|
+
describe: string;
|
|
106
|
+
type: "boolean";
|
|
107
|
+
};
|
|
108
|
+
progress: {
|
|
109
|
+
target: "cli";
|
|
110
|
+
describe: string;
|
|
111
|
+
type: "boolean";
|
|
112
|
+
};
|
|
113
|
+
changed: {
|
|
114
|
+
target: "cli";
|
|
115
|
+
alias: string;
|
|
116
|
+
describe: string;
|
|
117
|
+
type: "boolean";
|
|
118
|
+
};
|
|
119
|
+
changedSince: {
|
|
120
|
+
target: "cli";
|
|
121
|
+
cliName: string;
|
|
122
|
+
describe: string;
|
|
123
|
+
type: "string";
|
|
124
|
+
conflicts: string;
|
|
125
|
+
};
|
|
126
|
+
fromRoot: {
|
|
127
|
+
target: "cli";
|
|
128
|
+
cliName: string;
|
|
129
|
+
alias: string;
|
|
130
|
+
describe: string;
|
|
131
|
+
type: "boolean";
|
|
132
|
+
};
|
|
133
|
+
allowBranch: {
|
|
134
|
+
target: "cli";
|
|
135
|
+
cliName: string;
|
|
136
|
+
describe: string;
|
|
137
|
+
type: "string";
|
|
138
|
+
};
|
|
139
|
+
ignoreBranch: {
|
|
140
|
+
target: "cli";
|
|
141
|
+
cliName: string;
|
|
142
|
+
describe: string;
|
|
143
|
+
type: "string";
|
|
144
|
+
};
|
|
145
|
+
scope: {
|
|
146
|
+
target: "cli";
|
|
147
|
+
describe: string;
|
|
148
|
+
type: "string";
|
|
149
|
+
};
|
|
150
|
+
ignore: {
|
|
151
|
+
target: "cli";
|
|
152
|
+
describe: string;
|
|
153
|
+
type: "string";
|
|
154
|
+
};
|
|
155
|
+
platform: {
|
|
156
|
+
target: "cli";
|
|
157
|
+
describe: string;
|
|
158
|
+
type: "string";
|
|
159
|
+
};
|
|
160
|
+
deps: {
|
|
161
|
+
target: "cli";
|
|
162
|
+
describe: string;
|
|
163
|
+
type: "boolean";
|
|
164
|
+
};
|
|
165
|
+
dependents: {
|
|
166
|
+
target: "cli";
|
|
167
|
+
describe: string;
|
|
168
|
+
type: "boolean";
|
|
169
|
+
};
|
|
170
|
+
};
|
|
171
|
+
examples: {
|
|
172
|
+
command: string;
|
|
173
|
+
description: string;
|
|
174
|
+
}[];
|
|
175
|
+
handler: (args: Args) => Promise<void>;
|
|
176
|
+
};
|
|
177
|
+
export default buildCommand;
|
|
@@ -1,15 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { registerCommand } from '../interfaces/rman-config.interface.js';
|
|
2
2
|
import { assertAllowedBranch, readBranchGuardOptions } from '../utils/branch-guard.js';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
import { readRunOptions, runOptions } from '../utils/run-options.js';
|
|
4
|
+
const COMMAND = 'build';
|
|
5
|
+
const config = runOptions;
|
|
6
|
+
const buildCommand = registerCommand(app => {
|
|
7
|
+
const repository = app.repository;
|
|
8
|
+
return {
|
|
9
|
+
command: COMMAND,
|
|
8
10
|
describe: 'Alias for "run build"',
|
|
9
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Read, not owned - and it owns nothing at all. `build` is `run build` under another name, so its
|
|
13
|
+
* settings live in `run.build`, which belongs to `run`. Two commands cannot contribute under one
|
|
14
|
+
* top-level key (interface merging is not a deep merge), and this is why they never needed to.
|
|
15
|
+
*/
|
|
16
|
+
configKeys: ['run.build'],
|
|
17
|
+
config,
|
|
18
|
+
examples: [{ command: '$0 build', description: '# Builds packages' }],
|
|
10
19
|
handler: async (args) => {
|
|
11
20
|
await assertAllowedBranch(repository, readBranchGuardOptions(args));
|
|
12
|
-
await
|
|
21
|
+
await app.getService('run').runScript('build', { ...readRunOptions(args), commandName: 'build' });
|
|
13
22
|
},
|
|
14
|
-
}
|
|
15
|
-
}
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
export default buildCommand;
|
|
@@ -1,3 +1,80 @@
|
|
|
1
|
-
import type
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { type RmanConfig } from '../interfaces/rman-config.interface.js';
|
|
2
|
+
declare const COMMAND: "changed";
|
|
3
|
+
declare const config: {
|
|
4
|
+
json: {
|
|
5
|
+
target: "cli";
|
|
6
|
+
alias: string;
|
|
7
|
+
describe: string;
|
|
8
|
+
type: "boolean";
|
|
9
|
+
};
|
|
10
|
+
scope: {
|
|
11
|
+
target: "cli";
|
|
12
|
+
describe: string;
|
|
13
|
+
type: "string";
|
|
14
|
+
};
|
|
15
|
+
ignore: {
|
|
16
|
+
target: "cli";
|
|
17
|
+
describe: string;
|
|
18
|
+
type: "string";
|
|
19
|
+
};
|
|
20
|
+
platform: {
|
|
21
|
+
target: "cli";
|
|
22
|
+
describe: string;
|
|
23
|
+
type: "string";
|
|
24
|
+
};
|
|
25
|
+
deps: {
|
|
26
|
+
target: "cli";
|
|
27
|
+
describe: string;
|
|
28
|
+
type: "boolean";
|
|
29
|
+
};
|
|
30
|
+
dependents: {
|
|
31
|
+
target: "cli";
|
|
32
|
+
describe: string;
|
|
33
|
+
type: "boolean";
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
type Args = RmanConfig.ArgsOf<typeof config, typeof COMMAND>;
|
|
37
|
+
/** Declares no `target: 'config'` option, so it contributes nothing to `RmanConfig` and writes no
|
|
38
|
+
* augmentation - a command that owns no config key simply has none. */
|
|
39
|
+
declare const changedCommand: (app: import("../index.js").RmanApplication) => {
|
|
40
|
+
command: "changed";
|
|
41
|
+
describe: string;
|
|
42
|
+
config: {
|
|
43
|
+
json: {
|
|
44
|
+
target: "cli";
|
|
45
|
+
alias: string;
|
|
46
|
+
describe: string;
|
|
47
|
+
type: "boolean";
|
|
48
|
+
};
|
|
49
|
+
scope: {
|
|
50
|
+
target: "cli";
|
|
51
|
+
describe: string;
|
|
52
|
+
type: "string";
|
|
53
|
+
};
|
|
54
|
+
ignore: {
|
|
55
|
+
target: "cli";
|
|
56
|
+
describe: string;
|
|
57
|
+
type: "string";
|
|
58
|
+
};
|
|
59
|
+
platform: {
|
|
60
|
+
target: "cli";
|
|
61
|
+
describe: string;
|
|
62
|
+
type: "string";
|
|
63
|
+
};
|
|
64
|
+
deps: {
|
|
65
|
+
target: "cli";
|
|
66
|
+
describe: string;
|
|
67
|
+
type: "boolean";
|
|
68
|
+
};
|
|
69
|
+
dependents: {
|
|
70
|
+
target: "cli";
|
|
71
|
+
describe: string;
|
|
72
|
+
type: "boolean";
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
examples: {
|
|
76
|
+
command: string;
|
|
77
|
+
}[];
|
|
78
|
+
handler: (args: Args) => Promise<void>;
|
|
79
|
+
};
|
|
80
|
+
export default changedCommand;
|
|
@@ -1,17 +1,23 @@
|
|
|
1
1
|
import colors from 'ansi-colors';
|
|
2
|
+
import { registerCommand } from '../interfaces/rman-config.interface.js';
|
|
2
3
|
import { VersionPlanService } from '../services/version-plan.service.js';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
import { packageFilterOptions, readPackageFilterOptions } from '../utils/package-filter.js';
|
|
5
|
+
const COMMAND = 'changed';
|
|
6
|
+
const config = {
|
|
7
|
+
...packageFilterOptions,
|
|
8
|
+
json: { target: 'cli', alias: 'j', describe: 'Print output as JSON', type: 'boolean' },
|
|
9
|
+
};
|
|
10
|
+
/** Declares no `target: 'config'` option, so it contributes nothing to `RmanConfig` and writes no
|
|
11
|
+
* augmentation - a command that owns no config key simply has none. */
|
|
12
|
+
const changedCommand = registerCommand(app => {
|
|
13
|
+
const repository = app.repository;
|
|
14
|
+
return {
|
|
15
|
+
command: COMMAND,
|
|
7
16
|
describe: 'Shows which packages the next "version" run would bump, without changing anything',
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
describe: 'Print output as JSON',
|
|
11
|
-
type: 'boolean',
|
|
12
|
-
}),
|
|
17
|
+
config,
|
|
18
|
+
examples: [{ command: '$0 changed' }, { command: '$0 changed --json' }],
|
|
13
19
|
handler: async (args) => {
|
|
14
|
-
const plan = await VersionPlanService.getPlanner().getPlan(repository, readPackageFilterOptions(args));
|
|
20
|
+
const plan = await VersionPlanService.getPlanner(app).getPlan(repository, readPackageFilterOptions(args));
|
|
15
21
|
const changed = plan.filter(e => e.status === 'bump');
|
|
16
22
|
if (args.json) {
|
|
17
23
|
console.log(JSON.stringify(changed.map(e => ({ name: e.package.name, group: e.group, from: e.from, to: e.to, reason: e.reason })), undefined, 2));
|
|
@@ -25,5 +31,6 @@ export function initCli(repository, program) {
|
|
|
25
31
|
console.log(colors.green('changed'), colors.cyan(e.package.name), colors.gray(`(${e.group})`), e.from, '->', colors.yellow(e.to));
|
|
26
32
|
}
|
|
27
33
|
},
|
|
28
|
-
}
|
|
29
|
-
}
|
|
34
|
+
};
|
|
35
|
+
});
|
|
36
|
+
export default changedCommand;
|
|
@@ -1,3 +1,192 @@
|
|
|
1
|
-
import type
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { type RmanConfig } from '../interfaces/rman-config.interface.js';
|
|
2
|
+
declare const COMMAND: "changelog";
|
|
3
|
+
declare const config: {
|
|
4
|
+
from: {
|
|
5
|
+
target: "cli";
|
|
6
|
+
describe: string;
|
|
7
|
+
type: "string";
|
|
8
|
+
};
|
|
9
|
+
write: {
|
|
10
|
+
target: "cli";
|
|
11
|
+
describe: string;
|
|
12
|
+
type: "boolean";
|
|
13
|
+
};
|
|
14
|
+
/** The one option here that is also a config key - hence `'both'`, and hence this command
|
|
15
|
+
* contributing `changelog.filePath` to `RmanConfig`. */
|
|
16
|
+
filePath: {
|
|
17
|
+
target: "both";
|
|
18
|
+
cliName: string;
|
|
19
|
+
describe: string;
|
|
20
|
+
type: "string";
|
|
21
|
+
};
|
|
22
|
+
includeSkipped: {
|
|
23
|
+
target: "cli";
|
|
24
|
+
cliName: string;
|
|
25
|
+
describe: string;
|
|
26
|
+
type: "boolean";
|
|
27
|
+
};
|
|
28
|
+
releaseVersion: {
|
|
29
|
+
target: "cli";
|
|
30
|
+
cliName: string;
|
|
31
|
+
describe: string;
|
|
32
|
+
type: "string";
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Config-only, from here down - `.rmanrc "changelog.*"` keys with no reason to be a flag. All
|
|
36
|
+
* three are plain strings or a string list, so this command needs no `Extra` at all: its whole
|
|
37
|
+
* config block is derived from what is declared here.
|
|
38
|
+
*/
|
|
39
|
+
ignoreTypes: {
|
|
40
|
+
target: "config";
|
|
41
|
+
describe: string;
|
|
42
|
+
type: "string";
|
|
43
|
+
array: true;
|
|
44
|
+
};
|
|
45
|
+
template: {
|
|
46
|
+
target: "config";
|
|
47
|
+
describe: string;
|
|
48
|
+
type: "string";
|
|
49
|
+
};
|
|
50
|
+
tagPattern: {
|
|
51
|
+
target: "config";
|
|
52
|
+
describe: string;
|
|
53
|
+
type: "string";
|
|
54
|
+
};
|
|
55
|
+
fromRoot: {
|
|
56
|
+
target: "cli";
|
|
57
|
+
cliName: string;
|
|
58
|
+
alias: string;
|
|
59
|
+
describe: string;
|
|
60
|
+
type: "boolean";
|
|
61
|
+
};
|
|
62
|
+
scope: {
|
|
63
|
+
target: "cli";
|
|
64
|
+
describe: string;
|
|
65
|
+
type: "string";
|
|
66
|
+
};
|
|
67
|
+
ignore: {
|
|
68
|
+
target: "cli";
|
|
69
|
+
describe: string;
|
|
70
|
+
type: "string";
|
|
71
|
+
};
|
|
72
|
+
platform: {
|
|
73
|
+
target: "cli";
|
|
74
|
+
describe: string;
|
|
75
|
+
type: "string";
|
|
76
|
+
};
|
|
77
|
+
deps: {
|
|
78
|
+
target: "cli";
|
|
79
|
+
describe: string;
|
|
80
|
+
type: "boolean";
|
|
81
|
+
};
|
|
82
|
+
dependents: {
|
|
83
|
+
target: "cli";
|
|
84
|
+
describe: string;
|
|
85
|
+
type: "boolean";
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
type Args = RmanConfig.ArgsOf<typeof config, typeof COMMAND>;
|
|
89
|
+
declare const changelogCommand: (app: import("../index.js").RmanApplication) => {
|
|
90
|
+
command: "changelog";
|
|
91
|
+
describe: string;
|
|
92
|
+
/** Read, not owned: `publish.skip` is `publish`'s key, reused here on purpose - a package that is
|
|
93
|
+
* never distributed gets no release notes either. */
|
|
94
|
+
configKeys: string[];
|
|
95
|
+
config: {
|
|
96
|
+
from: {
|
|
97
|
+
target: "cli";
|
|
98
|
+
describe: string;
|
|
99
|
+
type: "string";
|
|
100
|
+
};
|
|
101
|
+
write: {
|
|
102
|
+
target: "cli";
|
|
103
|
+
describe: string;
|
|
104
|
+
type: "boolean";
|
|
105
|
+
};
|
|
106
|
+
/** The one option here that is also a config key - hence `'both'`, and hence this command
|
|
107
|
+
* contributing `changelog.filePath` to `RmanConfig`. */
|
|
108
|
+
filePath: {
|
|
109
|
+
target: "both";
|
|
110
|
+
cliName: string;
|
|
111
|
+
describe: string;
|
|
112
|
+
type: "string";
|
|
113
|
+
};
|
|
114
|
+
includeSkipped: {
|
|
115
|
+
target: "cli";
|
|
116
|
+
cliName: string;
|
|
117
|
+
describe: string;
|
|
118
|
+
type: "boolean";
|
|
119
|
+
};
|
|
120
|
+
releaseVersion: {
|
|
121
|
+
target: "cli";
|
|
122
|
+
cliName: string;
|
|
123
|
+
describe: string;
|
|
124
|
+
type: "string";
|
|
125
|
+
};
|
|
126
|
+
/**
|
|
127
|
+
* Config-only, from here down - `.rmanrc "changelog.*"` keys with no reason to be a flag. All
|
|
128
|
+
* three are plain strings or a string list, so this command needs no `Extra` at all: its whole
|
|
129
|
+
* config block is derived from what is declared here.
|
|
130
|
+
*/
|
|
131
|
+
ignoreTypes: {
|
|
132
|
+
target: "config";
|
|
133
|
+
describe: string;
|
|
134
|
+
type: "string";
|
|
135
|
+
array: true;
|
|
136
|
+
};
|
|
137
|
+
template: {
|
|
138
|
+
target: "config";
|
|
139
|
+
describe: string;
|
|
140
|
+
type: "string";
|
|
141
|
+
};
|
|
142
|
+
tagPattern: {
|
|
143
|
+
target: "config";
|
|
144
|
+
describe: string;
|
|
145
|
+
type: "string";
|
|
146
|
+
};
|
|
147
|
+
fromRoot: {
|
|
148
|
+
target: "cli";
|
|
149
|
+
cliName: string;
|
|
150
|
+
alias: string;
|
|
151
|
+
describe: string;
|
|
152
|
+
type: "boolean";
|
|
153
|
+
};
|
|
154
|
+
scope: {
|
|
155
|
+
target: "cli";
|
|
156
|
+
describe: string;
|
|
157
|
+
type: "string";
|
|
158
|
+
};
|
|
159
|
+
ignore: {
|
|
160
|
+
target: "cli";
|
|
161
|
+
describe: string;
|
|
162
|
+
type: "string";
|
|
163
|
+
};
|
|
164
|
+
platform: {
|
|
165
|
+
target: "cli";
|
|
166
|
+
describe: string;
|
|
167
|
+
type: "string";
|
|
168
|
+
};
|
|
169
|
+
deps: {
|
|
170
|
+
target: "cli";
|
|
171
|
+
describe: string;
|
|
172
|
+
type: "boolean";
|
|
173
|
+
};
|
|
174
|
+
dependents: {
|
|
175
|
+
target: "cli";
|
|
176
|
+
describe: string;
|
|
177
|
+
type: "boolean";
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
examples: {
|
|
181
|
+
command: string;
|
|
182
|
+
description: string;
|
|
183
|
+
}[];
|
|
184
|
+
handler: (args: Args) => Promise<void>;
|
|
185
|
+
};
|
|
186
|
+
export default changelogCommand;
|
|
187
|
+
declare module '../interfaces/rman-config.interface.js' {
|
|
188
|
+
namespace RmanConfig {
|
|
189
|
+
interface CommandConfigs extends RmanConfig.CommandContribution<ReturnType<typeof changelogCommand>> {
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|