@backstage/cli 0.26.11 → 0.27.0-next.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 +35 -0
- package/config/eslint-factory.js +1 -0
- package/dist/cjs/Lockfile-B4mqBkH6.cjs.js +86 -0
- package/dist/cjs/{build-DwlXzIpR.cjs.js → build-D5DoFqm6.cjs.js} +8 -13
- package/dist/cjs/{buildBackend-CrncxAY5.cjs.js → buildBackend-UK6nC6VL.cjs.js} +17 -41
- package/dist/cjs/{buildWorkspace-D95Cv1QN.cjs.js → buildWorkspace-Z-hpJt9g.cjs.js} +4 -4
- package/dist/cjs/{bump-b90k9Vrg.cjs.js → bump-Qc4jNLOA.cjs.js} +7 -84
- package/dist/cjs/{clean-Bev614vS.cjs.js → clean-CB6dTqaG.cjs.js} +2 -2
- package/dist/cjs/{clean-Cn9pRgoI.cjs.js → clean-DlsJGDLw.cjs.js} +2 -2
- package/dist/cjs/{codeowners-C_BzEYI6.cjs.js → codeowners-0MT7UP_S.cjs.js} +2 -2
- package/dist/cjs/{config-EizsMYjy.cjs.js → config-B1bkp-HP.cjs.js} +43 -35
- package/dist/cjs/{createDistWorkspace-CqCdLqOV.cjs.js → createDistWorkspace-0v54ePDJ.cjs.js} +3 -3
- package/dist/cjs/{createPlugin-Dp_zJ1vU.cjs.js → createPlugin-CUOGhq6P.cjs.js} +6 -6
- package/dist/cjs/{diff-SflPPir6.cjs.js → diff-BaiaASdN.cjs.js} +2 -2
- package/dist/cjs/{docs-B0MlNQaZ.cjs.js → docs-D8vejOxE.cjs.js} +3 -3
- package/dist/cjs/{fix-BoMIpogO.cjs.js → fix-C7T4cvOB.cjs.js} +2 -2
- package/dist/cjs/{index-Do6EL2Yb.cjs.js → index-1VtfY6wb.cjs.js} +4 -4
- package/dist/cjs/{index-D6bTzT6C.cjs.js → index-B8Ebu0mP.cjs.js} +19 -15
- package/dist/cjs/{index-7vT98W4X.cjs.js → index-BAcLy7dK.cjs.js} +47 -47
- package/dist/cjs/{index-nl4fBJN1.cjs.js → index-Bu7Vqly9.cjs.js} +49 -63
- package/dist/cjs/{index-JoytU5ZM.cjs.js → index-F8W-9gIc.cjs.js} +2 -2
- package/dist/cjs/{info-BRPLyhql.cjs.js → info-D_IhL0i0.cjs.js} +4 -4
- package/dist/cjs/{install-DBTY3GMv.cjs.js → install-DGaf_UuL.cjs.js} +5 -5
- package/dist/cjs/{lint-DmKqylEy.cjs.js → lint-CRqMLZJ5.cjs.js} +2 -2
- package/dist/cjs/lint-Dkx_fBkS.cjs.js +10 -0
- package/dist/cjs/{lint-6Ua9puez.cjs.js → lint-EJvdRB7_.cjs.js} +2 -2
- package/dist/cjs/{list-deprecations-DNYfBnHZ.cjs.js → list-deprecations-COfvNjrB.cjs.js} +2 -2
- package/dist/cjs/{packageDetection-DlDcN5Ll.cjs.js → moduleFederation-CQZbFAit.cjs.js} +94 -25
- package/dist/cjs/{new-WebKpNSz.cjs.js → new-DB_oe66E.cjs.js} +6 -6
- package/dist/cjs/{pack-5if7U6_6.cjs.js → pack-BcxxlYor.cjs.js} +2 -2
- package/dist/cjs/{packageExports-Ddqkury2.cjs.js → packageExports-FpoAU1Be.cjs.js} +3 -3
- package/dist/cjs/{packageLintConfigs-CrhcoEVX.cjs.js → packageLintConfigs-D7LMvTow.cjs.js} +3 -3
- package/dist/cjs/{packageRole-CBF_rIK0.cjs.js → packageRole-BeuvccV9.cjs.js} +2 -2
- package/dist/cjs/{packages-RRALGdRj.cjs.js → packages-DPPEGYIi.cjs.js} +3 -3
- package/dist/cjs/{print-Caq1MMDY.cjs.js → print-DuJqsJ2y.cjs.js} +3 -3
- package/dist/cjs/{role-DNHddFRX.cjs.js → role-DAaP4LE5.cjs.js} +2 -2
- package/dist/cjs/{run-Dyr28990.cjs.js → run-CPcG7YxR.cjs.js} +2 -2
- package/dist/cjs/{schema-CXKpYRvf.cjs.js → schema-CR794PHv.cjs.js} +3 -3
- package/dist/cjs/{tasks-CMO3PrbZ.cjs.js → tasks-4L8FqWEM.cjs.js} +2 -2
- package/dist/cjs/{test-CTXtMelk.cjs.js → test-303IpaqN.cjs.js} +3 -3
- package/dist/cjs/{test-CyF0ge7_.cjs.js → test-y8AV0JOP.cjs.js} +3 -3
- package/dist/cjs/{validate-CPunUthn.cjs.js → validate-DZJIL6CK.cjs.js} +3 -3
- package/dist/index.cjs.js +1 -1
- package/package.json +10 -10
- package/templates/default-backend-plugin/package.json.hbs +0 -1
- package/templates/default-backend-plugin/src/service/router.ts +2 -3
- package/dist/cjs/Lockfile-BndFvzHc.cjs.js +0 -221
- package/dist/cjs/lint-CCzUmZcU.cjs.js +0 -112
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
# @backstage/cli
|
|
2
2
|
|
|
3
|
+
## 0.27.0-next.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 32a38e1: **BREAKING**: The lockfile (`yarn.lock`) dependency analysis and mutations have been removed from several commands.
|
|
8
|
+
|
|
9
|
+
The `versions:bump` command will no longer attempt to bump and deduplicate dependencies by modifying the lockfile, it will only update `package.json` files.
|
|
10
|
+
|
|
11
|
+
The `versions:check` command has been removed, since its only purpose was verification and mutation of the lockfile. We recommend using the `yarn dedupe` command instead, or the `yarn-deduplicate` package if you're using Yarn classic.
|
|
12
|
+
|
|
13
|
+
The check that was built into the `package start` command has been removed, it will no longer warn about lockfile mismatches.
|
|
14
|
+
|
|
15
|
+
The packages in the Backstage ecosystem handle package duplications much better now than when these CLI features were first introduced, so the need for these features has diminished. By removing them, we drastically reduce the integration between the Backstage CLI and Yarn, making it much easier to add support for other package managers in the future.
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- 7eb08a6: Add frontend-dynamic-container role to eslint config factory
|
|
20
|
+
- fbc7819: Use ES2022 in CLI bundler
|
|
21
|
+
- e53074f: Updated default backend plugin to use `RootConfigService` instead of `Config`. This also removes the dependency on `@backstage/config` as it's no longer used.
|
|
22
|
+
- ee2b0e5: The experimental module federation build now has the ability to force the use of development versions of `react` and `react-dom` by setting the `FORCE_REACT_DEVELOPMENT` flag.
|
|
23
|
+
- 239dffc: Remove usage of deprecated functionality from @backstage/config-loader
|
|
24
|
+
- 0eedec3: Add support for dynamic plugins via the EXPERIMENTAL_MODULE_FEDERATION environment variable when running `yarn start`.
|
|
25
|
+
- dc4fb4f: Fix for `repo build --all` not properly detecting the experimental public entry point.
|
|
26
|
+
- Updated dependencies
|
|
27
|
+
- @backstage/integration@1.14.0-next.0
|
|
28
|
+
- @backstage/config-loader@1.8.2-next.0
|
|
29
|
+
- @backstage/catalog-model@1.5.0
|
|
30
|
+
- @backstage/cli-common@0.1.14
|
|
31
|
+
- @backstage/cli-node@0.2.7
|
|
32
|
+
- @backstage/config@1.2.0
|
|
33
|
+
- @backstage/errors@1.2.4
|
|
34
|
+
- @backstage/eslint-plugin@0.1.8
|
|
35
|
+
- @backstage/release-manifests@0.0.11
|
|
36
|
+
- @backstage/types@1.1.1
|
|
37
|
+
|
|
3
38
|
## 0.26.11
|
|
4
39
|
|
|
5
40
|
### Patch Changes
|
package/config/eslint-factory.js
CHANGED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fs = require('fs-extra');
|
|
4
|
+
var parsers = require('@yarnpkg/parsers');
|
|
5
|
+
var lockfile = require('@yarnpkg/lockfile');
|
|
6
|
+
|
|
7
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
8
|
+
|
|
9
|
+
var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
10
|
+
|
|
11
|
+
const ENTRY_PATTERN = /^((?:@[^/]+\/)?[^@/]+)@(.+)$/;
|
|
12
|
+
const NEW_HEADER = `${[
|
|
13
|
+
`# This file is generated by running "yarn install" inside your project.
|
|
14
|
+
`,
|
|
15
|
+
`# Manual changes might be lost - proceed with caution!
|
|
16
|
+
`
|
|
17
|
+
].join(``)}
|
|
18
|
+
`;
|
|
19
|
+
const LEGACY_REGEX = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;
|
|
20
|
+
const SPECIAL_OBJECT_KEYS = [
|
|
21
|
+
`__metadata`,
|
|
22
|
+
`version`,
|
|
23
|
+
`resolution`,
|
|
24
|
+
`dependencies`,
|
|
25
|
+
`peerDependencies`,
|
|
26
|
+
`dependenciesMeta`,
|
|
27
|
+
`peerDependenciesMeta`,
|
|
28
|
+
`binaries`
|
|
29
|
+
];
|
|
30
|
+
class Lockfile {
|
|
31
|
+
constructor(packages, data, legacy = false) {
|
|
32
|
+
this.packages = packages;
|
|
33
|
+
this.data = data;
|
|
34
|
+
this.legacy = legacy;
|
|
35
|
+
}
|
|
36
|
+
static async load(path) {
|
|
37
|
+
const lockfileContents = await fs__default.default.readFile(path, "utf8");
|
|
38
|
+
return Lockfile.parse(lockfileContents);
|
|
39
|
+
}
|
|
40
|
+
static parse(content) {
|
|
41
|
+
const legacy = LEGACY_REGEX.test(content);
|
|
42
|
+
let data;
|
|
43
|
+
try {
|
|
44
|
+
data = parsers.parseSyml(content);
|
|
45
|
+
} catch (err) {
|
|
46
|
+
throw new Error(`Failed yarn.lock parse, ${err}`);
|
|
47
|
+
}
|
|
48
|
+
const packages = /* @__PURE__ */ new Map();
|
|
49
|
+
for (const [key, value] of Object.entries(data)) {
|
|
50
|
+
if (SPECIAL_OBJECT_KEYS.includes(key)) continue;
|
|
51
|
+
const [, name, ranges] = ENTRY_PATTERN.exec(key) ?? [];
|
|
52
|
+
if (!name) {
|
|
53
|
+
throw new Error(`Failed to parse yarn.lock entry '${key}'`);
|
|
54
|
+
}
|
|
55
|
+
let queries = packages.get(name);
|
|
56
|
+
if (!queries) {
|
|
57
|
+
queries = [];
|
|
58
|
+
packages.set(name, queries);
|
|
59
|
+
}
|
|
60
|
+
for (let range of ranges.split(/\s*,\s*/)) {
|
|
61
|
+
if (range.startsWith(`${name}@`)) {
|
|
62
|
+
range = range.slice(`${name}@`.length);
|
|
63
|
+
}
|
|
64
|
+
if (range.startsWith("npm:")) {
|
|
65
|
+
range = range.slice("npm:".length);
|
|
66
|
+
}
|
|
67
|
+
queries.push({ range, version: value.version, dataKey: key });
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return new Lockfile(packages, data, legacy);
|
|
71
|
+
}
|
|
72
|
+
/** Get the entries for a single package in the lockfile */
|
|
73
|
+
get(name) {
|
|
74
|
+
return this.packages.get(name);
|
|
75
|
+
}
|
|
76
|
+
/** Returns the name of all packages available in the lockfile */
|
|
77
|
+
keys() {
|
|
78
|
+
return this.packages.keys();
|
|
79
|
+
}
|
|
80
|
+
toString() {
|
|
81
|
+
return this.legacy ? lockfile.stringify(this.data) : NEW_HEADER + parsers.stringifySyml(this.data);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
exports.Lockfile = Lockfile;
|
|
86
|
+
//# sourceMappingURL=Lockfile-B4mqBkH6.cjs.js.map
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var path = require('path');
|
|
5
|
-
var createDistWorkspace = require('./createDistWorkspace-
|
|
6
|
-
var index = require('./index-
|
|
5
|
+
var createDistWorkspace = require('./createDistWorkspace-0v54ePDJ.cjs.js');
|
|
6
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
7
7
|
var cliNode = require('@backstage/cli-node');
|
|
8
8
|
var parallel = require('./parallel-BszNaKyc.cjs.js');
|
|
9
|
-
var buildBackend = require('./buildBackend-
|
|
9
|
+
var buildBackend = require('./buildBackend-UK6nC6VL.cjs.js');
|
|
10
10
|
require('fs-extra');
|
|
11
11
|
require('p-limit');
|
|
12
12
|
require('os');
|
|
13
13
|
require('tar');
|
|
14
14
|
require('lodash/partition');
|
|
15
|
-
require('./run-
|
|
15
|
+
require('./run-CPcG7YxR.cjs.js');
|
|
16
16
|
require('child_process');
|
|
17
17
|
require('util');
|
|
18
18
|
require('@backstage/errors');
|
|
@@ -41,26 +41,21 @@ require('html-webpack-plugin');
|
|
|
41
41
|
require('@module-federation/enhanced/webpack');
|
|
42
42
|
require('react-dev-utils/ModuleScopePlugin');
|
|
43
43
|
require('run-script-webpack-plugin');
|
|
44
|
+
require('@pmmmwh/react-refresh-webpack-plugin');
|
|
44
45
|
require('@manypkg/get-packages');
|
|
45
46
|
require('webpack-node-externals');
|
|
46
|
-
require('./
|
|
47
|
+
require('./moduleFederation-CQZbFAit.cjs.js');
|
|
47
48
|
require('lodash/pickBy');
|
|
48
49
|
require('mini-css-extract-plugin');
|
|
49
|
-
require('@pmmmwh/react-refresh-webpack-plugin');
|
|
50
50
|
require('yn');
|
|
51
51
|
require('@backstage/config');
|
|
52
52
|
require('chokidar');
|
|
53
53
|
require('p-queue');
|
|
54
54
|
require('react-dev-utils/FileSizeReporter');
|
|
55
55
|
require('react-dev-utils/formatWebpackMessages');
|
|
56
|
-
require('lodash/uniq');
|
|
57
56
|
require('react-dev-utils/openBrowser');
|
|
58
57
|
require('webpack-dev-server');
|
|
59
|
-
require('
|
|
60
|
-
require('@yarnpkg/lockfile');
|
|
61
|
-
require('minimatch');
|
|
62
|
-
require('./yarn-Ukl9MOS0.cjs.js');
|
|
63
|
-
require('./config-EizsMYjy.cjs.js');
|
|
58
|
+
require('./config-B1bkp-HP.cjs.js');
|
|
64
59
|
require('@backstage/config-loader');
|
|
65
60
|
|
|
66
61
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
@@ -194,4 +189,4 @@ async function command(opts, cmd) {
|
|
|
194
189
|
}
|
|
195
190
|
|
|
196
191
|
exports.command = command;
|
|
197
|
-
//# sourceMappingURL=build-
|
|
192
|
+
//# sourceMappingURL=build-D5DoFqm6.cjs.js.map
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
4
|
var path = require('path');
|
|
5
5
|
var webpack = require('webpack');
|
|
6
|
+
var chalk = require('chalk');
|
|
6
7
|
require('eslint-webpack-plugin');
|
|
7
8
|
require('fork-ts-checker-webpack-plugin');
|
|
8
9
|
require('html-webpack-plugin');
|
|
@@ -10,41 +11,32 @@ require('@module-federation/enhanced/webpack');
|
|
|
10
11
|
require('@backstage/cli-common');
|
|
11
12
|
require('react-dev-utils/ModuleScopePlugin');
|
|
12
13
|
require('run-script-webpack-plugin');
|
|
13
|
-
require('
|
|
14
|
+
require('@pmmmwh/react-refresh-webpack-plugin');
|
|
15
|
+
require('./index-BAcLy7dK.cjs.js');
|
|
14
16
|
require('@manypkg/get-packages');
|
|
15
17
|
require('webpack-node-externals');
|
|
16
|
-
var
|
|
18
|
+
var moduleFederation = require('./moduleFederation-CQZbFAit.cjs.js');
|
|
17
19
|
require('lodash/pickBy');
|
|
18
|
-
require('./run-
|
|
20
|
+
require('./run-CPcG7YxR.cjs.js');
|
|
19
21
|
require('mini-css-extract-plugin');
|
|
20
|
-
require('@pmmmwh/react-refresh-webpack-plugin');
|
|
21
22
|
var yn = require('yn');
|
|
22
23
|
var FileSizeReporter = require('react-dev-utils/FileSizeReporter');
|
|
23
24
|
var formatWebpackMessages = require('react-dev-utils/formatWebpackMessages');
|
|
24
|
-
var chalk = require('chalk');
|
|
25
|
-
require('@backstage/cli-node');
|
|
26
|
-
require('lodash/uniq');
|
|
27
25
|
require('react-dev-utils/openBrowser');
|
|
28
26
|
require('webpack-dev-server');
|
|
29
|
-
require('
|
|
30
|
-
require('@yarnpkg/parsers');
|
|
31
|
-
require('@yarnpkg/lockfile');
|
|
32
|
-
require('minimatch');
|
|
33
|
-
require('./yarn-Ukl9MOS0.cjs.js');
|
|
34
|
-
require('lodash/partition');
|
|
35
|
-
var config = require('./config-EizsMYjy.cjs.js');
|
|
27
|
+
var config = require('./config-B1bkp-HP.cjs.js');
|
|
36
28
|
var parallel = require('./parallel-BszNaKyc.cjs.js');
|
|
37
29
|
var os = require('os');
|
|
38
30
|
var tar = require('tar');
|
|
39
|
-
var createDistWorkspace = require('./createDistWorkspace-
|
|
31
|
+
var createDistWorkspace = require('./createDistWorkspace-0v54ePDJ.cjs.js');
|
|
40
32
|
|
|
41
33
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
42
34
|
|
|
43
35
|
var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
44
36
|
var webpack__default = /*#__PURE__*/_interopDefaultCompat(webpack);
|
|
37
|
+
var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
45
38
|
var yn__default = /*#__PURE__*/_interopDefaultCompat(yn);
|
|
46
39
|
var formatWebpackMessages__default = /*#__PURE__*/_interopDefaultCompat(formatWebpackMessages);
|
|
47
|
-
var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
48
40
|
var os__default = /*#__PURE__*/_interopDefaultCompat(os);
|
|
49
41
|
var tar__default = /*#__PURE__*/_interopDefaultCompat(tar);
|
|
50
42
|
|
|
@@ -56,8 +48,9 @@ function applyContextToError(error, moduleName) {
|
|
|
56
48
|
}
|
|
57
49
|
async function buildBundle(options) {
|
|
58
50
|
const { statsJsonEnabled, schema: configSchema } = options;
|
|
59
|
-
const paths =
|
|
60
|
-
const publicPaths = await
|
|
51
|
+
const paths = moduleFederation.resolveBundlingPaths(options);
|
|
52
|
+
const publicPaths = await moduleFederation.resolveOptionalBundlingPaths({
|
|
53
|
+
targetDir: options.targetDir,
|
|
61
54
|
entry: "src/index-public-experimental",
|
|
62
55
|
dist: "dist/public"
|
|
63
56
|
});
|
|
@@ -69,14 +62,14 @@ async function buildBundle(options) {
|
|
|
69
62
|
};
|
|
70
63
|
const configs = [];
|
|
71
64
|
if (options.moduleFederation?.mode === "remote") {
|
|
72
|
-
configs.push(await
|
|
65
|
+
configs.push(await moduleFederation.createConfig(paths, commonConfigOptions));
|
|
73
66
|
} else {
|
|
74
|
-
const detectedModulesEntryPoint = await
|
|
67
|
+
const detectedModulesEntryPoint = await moduleFederation.createDetectedModulesEntryPoint({
|
|
75
68
|
config: options.fullConfig,
|
|
76
69
|
targetPath: paths.targetPath
|
|
77
70
|
});
|
|
78
71
|
configs.push(
|
|
79
|
-
await
|
|
72
|
+
await moduleFederation.createConfig(paths, {
|
|
80
73
|
...commonConfigOptions,
|
|
81
74
|
additionalEntryPoints: detectedModulesEntryPoint,
|
|
82
75
|
appMode: publicPaths ? "protected" : "public"
|
|
@@ -89,7 +82,7 @@ async function buildBundle(options) {
|
|
|
89
82
|
)
|
|
90
83
|
);
|
|
91
84
|
configs.push(
|
|
92
|
-
await
|
|
85
|
+
await moduleFederation.createConfig(publicPaths, {
|
|
93
86
|
...commonConfigOptions,
|
|
94
87
|
appMode: "public"
|
|
95
88
|
})
|
|
@@ -205,23 +198,6 @@ async function build(configs, isCi) {
|
|
|
205
198
|
return { stats };
|
|
206
199
|
}
|
|
207
200
|
|
|
208
|
-
function getModuleFederationOptions(name, isRemote) {
|
|
209
|
-
if (!isRemote && !process.env.EXPERIMENTAL_MODULE_FEDERATION) {
|
|
210
|
-
return void 0;
|
|
211
|
-
}
|
|
212
|
-
console.log(
|
|
213
|
-
chalk__default.default.yellow(
|
|
214
|
-
`\u26A0\uFE0F WARNING: Module federation is experimental and will receive immediate breaking changes in the future.`
|
|
215
|
-
)
|
|
216
|
-
);
|
|
217
|
-
return {
|
|
218
|
-
mode: isRemote ? "remote" : "host",
|
|
219
|
-
// The default output mode requires the name to be a usable as a code
|
|
220
|
-
// symbol, there might be better options here but for now we need to
|
|
221
|
-
// sanitize the name.
|
|
222
|
-
name: name.replaceAll("@", "").replaceAll("/", "__").replaceAll("-", "_")
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
201
|
async function buildFrontend(options) {
|
|
226
202
|
const { targetDir, writeStats, configPaths } = options;
|
|
227
203
|
const { name } = await fs__default.default.readJson(path.resolve(targetDir, "package.json"));
|
|
@@ -230,7 +206,7 @@ async function buildFrontend(options) {
|
|
|
230
206
|
entry: "src/index",
|
|
231
207
|
parallelism: parallel.getEnvironmentParallelism(),
|
|
232
208
|
statsJsonEnabled: writeStats,
|
|
233
|
-
moduleFederation: getModuleFederationOptions(
|
|
209
|
+
moduleFederation: moduleFederation.getModuleFederationOptions(
|
|
234
210
|
name,
|
|
235
211
|
options.isModuleFederationRemote
|
|
236
212
|
),
|
|
@@ -287,4 +263,4 @@ async function buildBackend(options) {
|
|
|
287
263
|
|
|
288
264
|
exports.buildBackend = buildBackend;
|
|
289
265
|
exports.buildFrontend = buildFrontend;
|
|
290
|
-
//# sourceMappingURL=buildBackend-
|
|
266
|
+
//# sourceMappingURL=buildBackend-UK6nC6VL.cjs.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
|
-
var createDistWorkspace = require('./createDistWorkspace-
|
|
4
|
+
var createDistWorkspace = require('./createDistWorkspace-0v54ePDJ.cjs.js');
|
|
5
5
|
require('chalk');
|
|
6
6
|
require('path');
|
|
7
7
|
require('p-limit');
|
|
8
8
|
require('os');
|
|
9
9
|
require('tar');
|
|
10
10
|
require('lodash/partition');
|
|
11
|
-
require('./index-
|
|
11
|
+
require('./index-BAcLy7dK.cjs.js');
|
|
12
12
|
require('commander');
|
|
13
13
|
require('semver');
|
|
14
14
|
require('@backstage/cli-common');
|
|
15
15
|
require('@backstage/errors');
|
|
16
|
-
require('./run-
|
|
16
|
+
require('./run-CPcG7YxR.cjs.js');
|
|
17
17
|
require('child_process');
|
|
18
18
|
require('util');
|
|
19
19
|
require('rollup');
|
|
@@ -49,4 +49,4 @@ var buildWorkspace = async (dir, packages, options) => {
|
|
|
49
49
|
};
|
|
50
50
|
|
|
51
51
|
exports.default = buildWorkspace;
|
|
52
|
-
//# sourceMappingURL=buildWorkspace-
|
|
52
|
+
//# sourceMappingURL=buildWorkspace-Z-hpJt9g.cjs.js.map
|
|
@@ -5,18 +5,17 @@ var fs = require('fs-extra');
|
|
|
5
5
|
var chalk = require('chalk');
|
|
6
6
|
var ora = require('ora');
|
|
7
7
|
var semver = require('semver');
|
|
8
|
-
var minimatch = require('minimatch');
|
|
9
8
|
var errors = require('@backstage/errors');
|
|
10
9
|
var path = require('path');
|
|
11
|
-
var run = require('./run-
|
|
12
|
-
var index = require('./index-
|
|
13
|
-
var Lockfile = require('./Lockfile-
|
|
14
|
-
var packages = require('./packages-
|
|
15
|
-
var lint = require('./lint-CCzUmZcU.cjs.js');
|
|
10
|
+
var run = require('./run-CPcG7YxR.cjs.js');
|
|
11
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
12
|
+
var Lockfile = require('./Lockfile-B4mqBkH6.cjs.js');
|
|
13
|
+
var packages = require('./packages-DPPEGYIi.cjs.js');
|
|
16
14
|
var cliCommon = require('@backstage/cli-common');
|
|
17
15
|
var parallel = require('./parallel-BszNaKyc.cjs.js');
|
|
18
16
|
var releaseManifests = require('@backstage/release-manifests');
|
|
19
17
|
var cliNode = require('@backstage/cli-node');
|
|
18
|
+
var minimatch = require('minimatch');
|
|
20
19
|
var replace = require('replace-in-file');
|
|
21
20
|
|
|
22
21
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
@@ -180,7 +179,6 @@ var bump = async (opts) => {
|
|
|
180
179
|
}
|
|
181
180
|
const dependencyMap = await packages.mapDependencies(index.paths.targetDir, pattern);
|
|
182
181
|
const versionBumps = /* @__PURE__ */ new Map();
|
|
183
|
-
const unlocked = Array();
|
|
184
182
|
await parallel.runParallelWorkers({
|
|
185
183
|
parallelismFactor: 4,
|
|
186
184
|
items: dependencyMap.entries(),
|
|
@@ -209,58 +207,11 @@ var bump = async (opts) => {
|
|
|
209
207
|
}
|
|
210
208
|
}
|
|
211
209
|
});
|
|
212
|
-
|
|
213
|
-
await parallel.runParallelWorkers({
|
|
214
|
-
parallelismFactor: 4,
|
|
215
|
-
items: lockfile.keys(),
|
|
216
|
-
async worker(name) {
|
|
217
|
-
if (!filter(name)) {
|
|
218
|
-
return;
|
|
219
|
-
}
|
|
220
|
-
let target;
|
|
221
|
-
try {
|
|
222
|
-
target = await findTargetVersion(name);
|
|
223
|
-
} catch (error) {
|
|
224
|
-
if (errors.isError(error) && error.name === "NotFoundError") {
|
|
225
|
-
console.log(`Package info not found, ignoring package ${name}`);
|
|
226
|
-
return;
|
|
227
|
-
}
|
|
228
|
-
throw error;
|
|
229
|
-
}
|
|
230
|
-
for (const entry of lockfile.get(name) ?? []) {
|
|
231
|
-
if (!semver__default.default.satisfies(target, entry.range)) {
|
|
232
|
-
continue;
|
|
233
|
-
}
|
|
234
|
-
unlocked.push({ name, range: entry.range, target });
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
});
|
|
238
|
-
console.log();
|
|
239
|
-
if (versionBumps.size === 0 && unlocked.length === 0) {
|
|
210
|
+
if (versionBumps.size === 0) {
|
|
240
211
|
console.log(chalk__default.default.green("All Backstage packages are up to date!"));
|
|
241
212
|
} else {
|
|
242
213
|
console.log(chalk__default.default.yellow("Some packages are outdated, updating"));
|
|
243
214
|
console.log();
|
|
244
|
-
if (unlocked.length > 0) {
|
|
245
|
-
const removed = /* @__PURE__ */ new Set();
|
|
246
|
-
for (const { name, range, target } of unlocked) {
|
|
247
|
-
const existingEntry = lockfile.get(name)?.find((e) => e.range === range);
|
|
248
|
-
if (existingEntry?.version === target) {
|
|
249
|
-
continue;
|
|
250
|
-
}
|
|
251
|
-
const key = JSON.stringify({ name, range });
|
|
252
|
-
if (!removed.has(key)) {
|
|
253
|
-
removed.add(key);
|
|
254
|
-
console.log(
|
|
255
|
-
`${chalk__default.default.magenta("unlocking")} ${name}@${chalk__default.default.yellow(
|
|
256
|
-
range
|
|
257
|
-
)} ~> ${chalk__default.default.yellow(target)}`
|
|
258
|
-
);
|
|
259
|
-
lockfile.remove(name, range);
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
await lockfile.save(lockfilePath);
|
|
263
|
-
}
|
|
264
215
|
const breakingUpdates = /* @__PURE__ */ new Map();
|
|
265
216
|
await parallel.runParallelWorkers({
|
|
266
217
|
parallelismFactor: 4,
|
|
@@ -350,34 +301,6 @@ var bump = async (opts) => {
|
|
|
350
301
|
console.log(chalk__default.default.green("Version bump complete!"));
|
|
351
302
|
}
|
|
352
303
|
console.log();
|
|
353
|
-
const dedupLockfile = await Lockfile.Lockfile.load(lockfilePath);
|
|
354
|
-
const result = dedupLockfile.analyze({
|
|
355
|
-
filter,
|
|
356
|
-
localPackages: cliNode.PackageGraph.fromPackages(
|
|
357
|
-
await cliNode.PackageGraph.listTargetPackages()
|
|
358
|
-
)
|
|
359
|
-
});
|
|
360
|
-
const forbiddenNewRanges = result.newRanges.filter(
|
|
361
|
-
({ name }) => lint.forbiddenDuplicatesFilter(name)
|
|
362
|
-
);
|
|
363
|
-
if (forbiddenNewRanges.length > 0) {
|
|
364
|
-
console.log(chalk__default.default.yellow(" \u26A0\uFE0F Warning! \u26A0\uFE0F"));
|
|
365
|
-
console.log();
|
|
366
|
-
console.log(
|
|
367
|
-
chalk__default.default.yellow(
|
|
368
|
-
" The below package(s) have incompatible duplicate installations, likely due to a bad dependency in a plugin."
|
|
369
|
-
)
|
|
370
|
-
);
|
|
371
|
-
console.log(
|
|
372
|
-
chalk__default.default.yellow(
|
|
373
|
-
" You can investigate this by running `yarn why <package-name>`, and report the issue to the plugin maintainers."
|
|
374
|
-
)
|
|
375
|
-
);
|
|
376
|
-
console.log();
|
|
377
|
-
for (const { name } of forbiddenNewRanges) {
|
|
378
|
-
console.log(chalk__default.default.yellow(` ${name}`));
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
304
|
};
|
|
382
305
|
function createStrictVersionFinder(options) {
|
|
383
306
|
const releasePackages = new Map(
|
|
@@ -530,4 +453,4 @@ var bump$1 = /*#__PURE__*/Object.freeze({
|
|
|
530
453
|
|
|
531
454
|
exports.bump = bump$1;
|
|
532
455
|
exports.migrate = migrate$1;
|
|
533
|
-
//# sourceMappingURL=bump-
|
|
456
|
+
//# sourceMappingURL=bump-Qc4jNLOA.cjs.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
|
-
var index = require('./index-
|
|
4
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
5
5
|
require('commander');
|
|
6
6
|
require('chalk');
|
|
7
7
|
require('semver');
|
|
@@ -19,4 +19,4 @@ async function clean() {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
exports.default = clean;
|
|
22
|
-
//# sourceMappingURL=clean-
|
|
22
|
+
//# sourceMappingURL=clean-CB6dTqaG.cjs.js.map
|
|
@@ -5,7 +5,7 @@ var fs = require('fs-extra');
|
|
|
5
5
|
var path = require('path');
|
|
6
6
|
var util = require('util');
|
|
7
7
|
var cliNode = require('@backstage/cli-node');
|
|
8
|
-
var index = require('./index-
|
|
8
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
9
9
|
require('commander');
|
|
10
10
|
require('chalk');
|
|
11
11
|
require('semver');
|
|
@@ -45,4 +45,4 @@ async function command() {
|
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
exports.command = command;
|
|
48
|
-
//# sourceMappingURL=clean-
|
|
48
|
+
//# sourceMappingURL=clean-DlsJGDLw.cjs.js.map
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
4
|
var path = require('path');
|
|
5
|
-
var index = require('./index-
|
|
5
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
6
6
|
|
|
7
7
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
8
8
|
|
|
@@ -88,4 +88,4 @@ async function addCodeownersEntry(ownedPath, ownerStr, codeownersFilePath) {
|
|
|
88
88
|
exports.addCodeownersEntry = addCodeownersEntry;
|
|
89
89
|
exports.getCodeownersFilePath = getCodeownersFilePath;
|
|
90
90
|
exports.parseOwnerIds = parseOwnerIds;
|
|
91
|
-
//# sourceMappingURL=codeowners-
|
|
91
|
+
//# sourceMappingURL=codeowners-0MT7UP_S.cjs.js.map
|
|
@@ -2,26 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
var configLoader = require('@backstage/config-loader');
|
|
4
4
|
var config = require('@backstage/config');
|
|
5
|
-
var index = require('./index-
|
|
5
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
6
6
|
var getPackages = require('@manypkg/get-packages');
|
|
7
7
|
var cliNode = require('@backstage/cli-node');
|
|
8
8
|
|
|
9
|
-
function isValidUrl(url) {
|
|
10
|
-
try {
|
|
11
|
-
new URL(url);
|
|
12
|
-
return true;
|
|
13
|
-
} catch {
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
|
|
18
9
|
async function loadCliConfig(options) {
|
|
19
|
-
const configTargets = [];
|
|
20
|
-
options.args.forEach((arg) => {
|
|
21
|
-
if (!isValidUrl(arg)) {
|
|
22
|
-
configTargets.push({ path: index.paths.resolveTarget(arg) });
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
10
|
const { packages } = await getPackages.getPackages(index.paths.targetDir);
|
|
26
11
|
let localPackageNames;
|
|
27
12
|
if (options.fromPackage) {
|
|
@@ -47,26 +32,50 @@ async function loadCliConfig(options) {
|
|
|
47
32
|
packagePaths: [index.paths.resolveTargetRoot("package.json")],
|
|
48
33
|
noUndeclaredProperties: options.strict
|
|
49
34
|
});
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
35
|
+
const source = configLoader.ConfigSources.default({
|
|
36
|
+
allowMissingDefaultConfig: true,
|
|
37
|
+
substitutionFunc: options.mockEnv ? async (name) => process.env[name] || "x" : void 0,
|
|
38
|
+
watch: Boolean(options.watch),
|
|
39
|
+
rootDir: index.paths.targetRoot,
|
|
40
|
+
argv: options.args
|
|
41
|
+
});
|
|
42
|
+
const appConfigs = await new Promise((resolve, reject) => {
|
|
43
|
+
async function loadConfigReaderLoop() {
|
|
44
|
+
let loaded = false;
|
|
45
|
+
try {
|
|
46
|
+
const abortController = new AbortController();
|
|
47
|
+
for await (const { configs } of source.readConfigData({
|
|
48
|
+
signal: abortController.signal
|
|
49
|
+
})) {
|
|
50
|
+
if (loaded) {
|
|
51
|
+
const newFrontendAppConfigs = schema.process(configs, {
|
|
52
|
+
visibility: options.fullVisibility ? ["frontend", "backend", "secret"] : ["frontend"],
|
|
53
|
+
withFilteredKeys: options.withFilteredKeys,
|
|
54
|
+
withDeprecatedKeys: options.withDeprecatedKeys,
|
|
55
|
+
ignoreSchemaErrors: !options.strict
|
|
56
|
+
});
|
|
57
|
+
options.watch?.(newFrontendAppConfigs);
|
|
58
|
+
} else {
|
|
59
|
+
resolve(configs);
|
|
60
|
+
loaded = true;
|
|
61
|
+
if (!options.watch) {
|
|
62
|
+
abortController.abort();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
} catch (error) {
|
|
67
|
+
if (loaded) {
|
|
68
|
+
console.error(`Failed to reload configuration, ${error}`);
|
|
69
|
+
} else {
|
|
70
|
+
reject(error);
|
|
71
|
+
}
|
|
63
72
|
}
|
|
64
73
|
}
|
|
74
|
+
loadConfigReaderLoop();
|
|
65
75
|
});
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
`
|
|
69
|
-
);
|
|
76
|
+
const configurationLoadedMessage = appConfigs.length ? `Loaded config from ${appConfigs.map((c) => c.context).join(", ")}` : `No configuration files found, running without config`;
|
|
77
|
+
process.stderr.write(`${configurationLoadedMessage}
|
|
78
|
+
`);
|
|
70
79
|
try {
|
|
71
80
|
const frontendAppConfigs = schema.process(appConfigs, {
|
|
72
81
|
visibility: options.fullVisibility ? ["frontend", "backend", "secret"] : ["frontend"],
|
|
@@ -95,6 +104,5 @@ async function loadCliConfig(options) {
|
|
|
95
104
|
}
|
|
96
105
|
}
|
|
97
106
|
|
|
98
|
-
exports.isValidUrl = isValidUrl;
|
|
99
107
|
exports.loadCliConfig = loadCliConfig;
|
|
100
|
-
//# sourceMappingURL=config-
|
|
108
|
+
//# sourceMappingURL=config-B1bkp-HP.cjs.js.map
|
package/dist/cjs/{createDistWorkspace-CqCdLqOV.cjs.js → createDistWorkspace-0v54ePDJ.cjs.js}
RENAMED
|
@@ -7,8 +7,8 @@ var pLimit = require('p-limit');
|
|
|
7
7
|
var os = require('os');
|
|
8
8
|
var tar = require('tar');
|
|
9
9
|
var partition = require('lodash/partition');
|
|
10
|
-
var index = require('./index-
|
|
11
|
-
var run = require('./run-
|
|
10
|
+
var index = require('./index-BAcLy7dK.cjs.js');
|
|
11
|
+
var run = require('./run-CPcG7YxR.cjs.js');
|
|
12
12
|
var rollup = require('rollup');
|
|
13
13
|
var commonjs = require('@rollup/plugin-commonjs');
|
|
14
14
|
var resolve = require('@rollup/plugin-node-resolve');
|
|
@@ -560,4 +560,4 @@ exports.buildPackage = buildPackage;
|
|
|
560
560
|
exports.buildPackages = buildPackages;
|
|
561
561
|
exports.createDistWorkspace = createDistWorkspace;
|
|
562
562
|
exports.getOutputsForRole = getOutputsForRole;
|
|
563
|
-
//# sourceMappingURL=createDistWorkspace-
|
|
563
|
+
//# sourceMappingURL=createDistWorkspace-0v54ePDJ.cjs.js.map
|