@backstage/cli 0.34.0-next.1 → 0.34.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 +67 -0
- package/asset-types/asset-types.d.ts +0 -38
- package/config/nodeTransformHooks.mjs +12 -0
- package/dist/lib/errors.cjs.js +44 -17
- package/dist/lib/run.cjs.js +7 -7
- package/dist/lib/version.cjs.js +40 -40
- package/dist/lib/versioning/packages.cjs.js +1 -1
- package/dist/modules/build/commands/package/build/command.cjs.js +3 -3
- package/dist/modules/build/commands/package/start/startFrontend.cjs.js +4 -7
- package/dist/modules/build/commands/repo/build.cjs.js +2 -3
- package/dist/modules/build/lib/buildFrontend.cjs.js +7 -10
- package/dist/modules/build/lib/builder/config.cjs.js +0 -7
- package/dist/modules/build/lib/bundler/bundle.cjs.js +24 -29
- package/dist/modules/build/lib/bundler/config.cjs.js +40 -28
- package/dist/modules/build/lib/bundler/optimization.cjs.js +6 -5
- package/dist/modules/build/lib/bundler/packageDetection.cjs.js +4 -9
- package/dist/modules/build/lib/bundler/server.cjs.js +18 -22
- package/dist/modules/build/lib/bundler/transforms.cjs.js +7 -35
- package/dist/modules/info/commands/info.cjs.js +1 -1
- package/dist/modules/new/index.cjs.js +7 -3
- package/dist/modules/new/lib/execution/PortableTemplater.cjs.js +1 -1
- package/dist/packages/backend-defaults/package.json.cjs.js +1 -1
- package/dist/packages/backend-plugin-api/package.json.cjs.js +1 -1
- package/dist/packages/backend-test-utils/package.json.cjs.js +1 -1
- package/dist/packages/catalog-client/package.json.cjs.js +1 -1
- package/dist/packages/cli/package.json.cjs.js +15 -19
- package/dist/packages/core-components/package.json.cjs.js +1 -1
- package/dist/packages/dev-utils/package.json.cjs.js +1 -1
- package/dist/packages/frontend-defaults/package.json.cjs.js +1 -1
- package/dist/packages/frontend-plugin-api/package.json.cjs.js +1 -1
- package/dist/packages/frontend-test-utils/package.json.cjs.js +1 -1
- package/dist/packages/test-utils/package.json.cjs.js +1 -1
- package/dist/packages/theme/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend-module-guest-provider/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-node/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-node/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-node-test-utils/package.json.cjs.js +1 -1
- package/dist/wiring/CliInitializer.cjs.js +4 -9
- package/package.json +71 -51
- package/dist/lib/removed.cjs.js +0 -13
- package/dist/lib/svgrTemplate.cjs.js +0 -23
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,72 @@
|
|
|
1
1
|
# @backstage/cli
|
|
2
2
|
|
|
3
|
+
## 0.34.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 38b4243: Added plugin and module templates for the new frontend system. These templates are not included by default, but can be included by adding `@backstage/cli/templates/new-frontend-plugin` and `@backstage/cli/templates/new-frontend-plugin-module` as [custom templates](https://backstage.io/docs/tooling/cli/templates#installing-custom-templates).
|
|
8
|
+
- 923ceb2: **BREAKING**: The new app build based on [Rspack](https://rspack.dev/) is now the default, and the `EXPERIMENTAL_RSPACK` flag has been removed. To revert to the old behavior, set the `LEGACY_WEBPACK_BUILD` environment flag and install the following optional dependencies:
|
|
9
|
+
|
|
10
|
+
```json
|
|
11
|
+
{
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@module-federation/enhanced": "^0.9.0",
|
|
14
|
+
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.7",
|
|
15
|
+
"esbuild-loader": "^4.0.0",
|
|
16
|
+
"eslint-webpack-plugin": "^4.2.0",
|
|
17
|
+
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
|
18
|
+
"mini-css-extract-plugin": "^2.4.2",
|
|
19
|
+
"terser-webpack-plugin": "^5.1.3",
|
|
20
|
+
"webpack": "^5.96.0",
|
|
21
|
+
"webpack-dev-server": "^5.0.0"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
If you do encounter a blocking issue that forces you to use the old WebPack build, please [open an issue](https://github.com/backstage/backstage/issues) explaining the problem. The WebPack build will be removed in a future release.
|
|
27
|
+
|
|
28
|
+
- eda80c7: **BREAKING**: Removed support for `.icon.svg` imports, which have been deprecated since the 1.19 release.
|
|
29
|
+
|
|
30
|
+
### Patch Changes
|
|
31
|
+
|
|
32
|
+
- 2b8082a: Internal refactor of error handling
|
|
33
|
+
- 8b1bf6e: Deprecated new frontend system config setting `app.experimental.packages` to just `app.packages`. The old config will continue working for the time being, but may be removed in a future release.
|
|
34
|
+
- ead626f: The Node.js transform in `@backstage/cli/config/nodeTransformHooks.mjs` now supports the built-in type stripping in Node.js, which is enabled by default from v22.18.0.
|
|
35
|
+
- a6af768: Allow js files to be processed by the nodeTransform loader
|
|
36
|
+
- Updated dependencies
|
|
37
|
+
- @backstage/cli-node@0.2.14
|
|
38
|
+
|
|
39
|
+
## 0.34.0-next.2
|
|
40
|
+
|
|
41
|
+
### Minor Changes
|
|
42
|
+
|
|
43
|
+
- 923ceb2: **BREAKING**: The new app build based on [Rspack](https://rspack.dev/) is now the default, and the `EXPERIMENTAL_RSPACK` flag has been removed. To revert to the old behavior, set the `LEGACY_WEBPACK_BUILD` environment flag and install the following optional dependencies:
|
|
44
|
+
|
|
45
|
+
```json
|
|
46
|
+
{
|
|
47
|
+
"dependencies": {
|
|
48
|
+
"@module-federation/enhanced": "^0.9.0",
|
|
49
|
+
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.7",
|
|
50
|
+
"esbuild-loader": "^4.0.0",
|
|
51
|
+
"eslint-webpack-plugin": "^4.2.0",
|
|
52
|
+
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
|
53
|
+
"mini-css-extract-plugin": "^2.4.2",
|
|
54
|
+
"terser-webpack-plugin": "^5.1.3",
|
|
55
|
+
"webpack": "^5.96.0",
|
|
56
|
+
"webpack-dev-server": "^5.0.0"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
If you do encounter a blocking issue that forces you to use the old WebPack build, please [open an issue](https://github.com/backstage/backstage/issues) explaining the problem. The WebPack build will be removed in a future release.
|
|
62
|
+
|
|
63
|
+
- eda80c7: **BREAKING**: Removed support for `.icon.svg` imports, which have been deprecated since the 1.19 release.
|
|
64
|
+
|
|
65
|
+
### Patch Changes
|
|
66
|
+
|
|
67
|
+
- 8b1bf6e: Deprecated new frontend system config setting `app.experimental.packages` to just `app.packages`. The old config will continue working for the time being, but may be removed in a future release.
|
|
68
|
+
- ead626f: The Node.js transform in `@backstage/cli/config/nodeTransformHooks.mjs` now supports the built-in type stripping in Node.js, which is enabled by default from v22.18.0.
|
|
69
|
+
|
|
3
70
|
## 0.34.0-next.1
|
|
4
71
|
|
|
5
72
|
### Minor Changes
|
|
@@ -65,44 +65,6 @@ declare module '*.yaml' {
|
|
|
65
65
|
export default src;
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
/**
|
|
69
|
-
* @deprecated support for .icon.svg extensions are being removed, inline the SVG elements in a MUI SvgIcon instead.
|
|
70
|
-
* @example
|
|
71
|
-
* ```tsx
|
|
72
|
-
* import SvgIcon from '@material-ui/core/SvgIcon';
|
|
73
|
-
*
|
|
74
|
-
* const MyIcon = () => (
|
|
75
|
-
* <SvgIcon>
|
|
76
|
-
* <g>
|
|
77
|
-
* <path d="..." />
|
|
78
|
-
* </g>
|
|
79
|
-
* </SvgIcon>
|
|
80
|
-
* )
|
|
81
|
-
* ```
|
|
82
|
-
*/
|
|
83
|
-
declare module '*.icon.svg' {
|
|
84
|
-
import { ComponentType } from 'react';
|
|
85
|
-
import { SvgIconProps } from '@material-ui/core';
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* @deprecated support for .icon.svg extensions are being removed, inline the SVG elements in a MUI SvgIcon instead.
|
|
89
|
-
* @example
|
|
90
|
-
* ```tsx
|
|
91
|
-
* import SvgIcon from '@material-ui/core/SvgIcon';
|
|
92
|
-
*
|
|
93
|
-
* const MyIcon = () => (
|
|
94
|
-
* <SvgIcon>
|
|
95
|
-
* <g>
|
|
96
|
-
* <path d="..." />
|
|
97
|
-
* </g>
|
|
98
|
-
* </SvgIcon>
|
|
99
|
-
* )
|
|
100
|
-
* ```
|
|
101
|
-
*/
|
|
102
|
-
const Icon: ComponentType<SvgIconProps>;
|
|
103
|
-
export default Icon;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
68
|
declare module '*.svg' {
|
|
107
69
|
const src: string;
|
|
108
70
|
export default src;
|
|
@@ -255,6 +255,18 @@ export async function load(url, context, nextLoad) {
|
|
|
255
255
|
return nextLoad(url, { ...context, format });
|
|
256
256
|
}
|
|
257
257
|
|
|
258
|
+
// If the Node.js version we're running supports TypeScript, i.e. type
|
|
259
|
+
// stripping, we hand over to the default loader. This is done for all cases
|
|
260
|
+
// except if we're loading a .ts file that's been resolved to CommonJS format.
|
|
261
|
+
// This is because these files aren't actually CommonJS in the Backstage build
|
|
262
|
+
// system, and need to be transformed to CommonJS.
|
|
263
|
+
if (
|
|
264
|
+
format === 'module-typescript' ||
|
|
265
|
+
(format === 'module-commonjs' && ext !== '.ts')
|
|
266
|
+
) {
|
|
267
|
+
return nextLoad(url, { ...context, format });
|
|
268
|
+
}
|
|
269
|
+
|
|
258
270
|
const transformed = await transformFile(fileURLToPath(url), {
|
|
259
271
|
sourceMaps: 'inline',
|
|
260
272
|
module: {
|
package/dist/lib/errors.cjs.js
CHANGED
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var errors = require('@backstage/errors');
|
|
3
4
|
var chalk = require('chalk');
|
|
4
5
|
|
|
5
6
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
6
7
|
|
|
7
8
|
var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
8
9
|
|
|
9
|
-
class
|
|
10
|
-
get name() {
|
|
11
|
-
return this.constructor.name;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
class ExitCodeError extends CustomError {
|
|
10
|
+
class ExitCodeError extends errors.CustomErrorBase {
|
|
15
11
|
code;
|
|
16
12
|
constructor(code, command) {
|
|
17
13
|
super(
|
|
@@ -20,26 +16,57 @@ class ExitCodeError extends CustomError {
|
|
|
20
16
|
this.code = code;
|
|
21
17
|
}
|
|
22
18
|
}
|
|
23
|
-
function
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
${chalk__default.default.red(error.message)}
|
|
19
|
+
function exit(message, code = 1) {
|
|
20
|
+
process.stderr.write(`
|
|
21
|
+
${chalk__default.default.red(message)}
|
|
27
22
|
|
|
28
23
|
`);
|
|
29
|
-
|
|
30
|
-
|
|
24
|
+
process.exit(code);
|
|
25
|
+
}
|
|
26
|
+
function exitWithError(error) {
|
|
27
|
+
if (!errors.isError(error)) {
|
|
31
28
|
process.stderr.write(`
|
|
32
|
-
${chalk__default.default.red(
|
|
29
|
+
${chalk__default.default.red(errors.stringifyError(error))}
|
|
33
30
|
|
|
34
31
|
`);
|
|
35
32
|
process.exit(1);
|
|
36
33
|
}
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
switch (error.name) {
|
|
35
|
+
case "InputError":
|
|
36
|
+
return exit(
|
|
37
|
+
error.message,
|
|
38
|
+
74
|
|
39
|
+
/* input/output error */
|
|
40
|
+
);
|
|
41
|
+
case "NotFoundError":
|
|
42
|
+
return exit(
|
|
43
|
+
error.message,
|
|
44
|
+
127
|
|
45
|
+
/* command not found */
|
|
46
|
+
);
|
|
47
|
+
case "NotImplementedError":
|
|
48
|
+
return exit(
|
|
49
|
+
error.message,
|
|
50
|
+
64
|
|
51
|
+
/* command line usage error */
|
|
52
|
+
);
|
|
53
|
+
case "AuthenticationError":
|
|
54
|
+
case "NotAllowedError":
|
|
55
|
+
return exit(
|
|
56
|
+
error.message,
|
|
57
|
+
77
|
|
58
|
+
/* permissino denied */
|
|
59
|
+
);
|
|
60
|
+
case "ExitCodeError":
|
|
61
|
+
return exit(
|
|
62
|
+
error.message,
|
|
63
|
+
"code" in error && typeof error.code === "number" ? error.code : 1
|
|
64
|
+
);
|
|
65
|
+
default:
|
|
66
|
+
return exit(errors.stringifyError(error), 1);
|
|
67
|
+
}
|
|
39
68
|
}
|
|
40
69
|
|
|
41
|
-
exports.CustomError = CustomError;
|
|
42
70
|
exports.ExitCodeError = ExitCodeError;
|
|
43
|
-
exports.NotFoundError = NotFoundError;
|
|
44
71
|
exports.exitWithError = exitWithError;
|
|
45
72
|
//# sourceMappingURL=errors.cjs.js.map
|
package/dist/lib/run.cjs.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var child_process = require('child_process');
|
|
4
|
-
var errors
|
|
4
|
+
var errors = require('./errors.cjs.js');
|
|
5
5
|
var util = require('util');
|
|
6
|
-
var errors = require('@backstage/errors');
|
|
6
|
+
var errors$1 = require('@backstage/errors');
|
|
7
7
|
|
|
8
8
|
const execFile = util.promisify(child_process.execFile);
|
|
9
9
|
async function run(name, args = [], options = {}) {
|
|
@@ -37,14 +37,14 @@ async function runPlain(cmd, ...args) {
|
|
|
37
37
|
const { stdout } = await execFile(cmd, args, { shell: true });
|
|
38
38
|
return stdout.trim();
|
|
39
39
|
} catch (error) {
|
|
40
|
-
errors.assertError(error);
|
|
40
|
+
errors$1.assertError(error);
|
|
41
41
|
if ("stderr" in error) {
|
|
42
42
|
process.stderr.write(error.stderr);
|
|
43
43
|
}
|
|
44
44
|
if (typeof error.code === "number") {
|
|
45
|
-
throw new errors
|
|
45
|
+
throw new errors.ExitCodeError(error.code, [cmd, ...args].join(" "));
|
|
46
46
|
}
|
|
47
|
-
throw new errors.ForwardedError("Unknown execution error", error);
|
|
47
|
+
throw new errors$1.ForwardedError("Unknown execution error", error);
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
async function runCheck(cmd, ...args) {
|
|
@@ -58,7 +58,7 @@ async function runCheck(cmd, ...args) {
|
|
|
58
58
|
async function waitForExit(child, name) {
|
|
59
59
|
if (typeof child.exitCode === "number") {
|
|
60
60
|
if (child.exitCode) {
|
|
61
|
-
throw new errors
|
|
61
|
+
throw new errors.ExitCodeError(child.exitCode, name);
|
|
62
62
|
}
|
|
63
63
|
return;
|
|
64
64
|
}
|
|
@@ -66,7 +66,7 @@ async function waitForExit(child, name) {
|
|
|
66
66
|
child.once("error", (error) => reject(error));
|
|
67
67
|
child.once("exit", (code) => {
|
|
68
68
|
if (code) {
|
|
69
|
-
reject(new errors
|
|
69
|
+
reject(new errors.ExitCodeError(code, name));
|
|
70
70
|
} else {
|
|
71
71
|
resolve();
|
|
72
72
|
}
|
package/dist/lib/version.cjs.js
CHANGED
|
@@ -3,27 +3,27 @@
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
4
|
var semver = require('semver');
|
|
5
5
|
var paths = require('./paths.cjs.js');
|
|
6
|
-
var _package$
|
|
7
|
-
var _package$
|
|
8
|
-
var _package$
|
|
9
|
-
var _package$
|
|
10
|
-
var _package$
|
|
11
|
-
var _package$
|
|
12
|
-
var _package$
|
|
13
|
-
var _package$
|
|
14
|
-
var _package$
|
|
6
|
+
var _package$j = require('../packages/backend-plugin-api/package.json.cjs.js');
|
|
7
|
+
var _package$i = require('../packages/backend-test-utils/package.json.cjs.js');
|
|
8
|
+
var _package$h = require('../packages/catalog-client/package.json.cjs.js');
|
|
9
|
+
var _package$g = require('../packages/cli/package.json.cjs.js');
|
|
10
|
+
var _package$f = require('../packages/config/package.json.cjs.js');
|
|
11
|
+
var _package$e = require('../packages/core-app-api/package.json.cjs.js');
|
|
12
|
+
var _package$d = require('../packages/core-components/package.json.cjs.js');
|
|
13
|
+
var _package$c = require('../packages/core-plugin-api/package.json.cjs.js');
|
|
14
|
+
var _package$b = require('../packages/dev-utils/package.json.cjs.js');
|
|
15
15
|
var _package$a = require('../packages/errors/package.json.cjs.js');
|
|
16
|
-
var _package$
|
|
17
|
-
var _package$
|
|
18
|
-
var _package$
|
|
19
|
-
var _package$
|
|
20
|
-
var _package$
|
|
21
|
-
var _package$
|
|
22
|
-
var _package$
|
|
23
|
-
var _package$
|
|
24
|
-
var _package
|
|
25
|
-
var _package$
|
|
26
|
-
var _package = require('../packages/backend-defaults/package.json.cjs.js');
|
|
16
|
+
var _package$9 = require('../packages/frontend-defaults/package.json.cjs.js');
|
|
17
|
+
var _package$8 = require('../packages/frontend-plugin-api/package.json.cjs.js');
|
|
18
|
+
var _package$7 = require('../packages/frontend-test-utils/package.json.cjs.js');
|
|
19
|
+
var _package$6 = require('../packages/test-utils/package.json.cjs.js');
|
|
20
|
+
var _package$4 = require('../plugins/scaffolder-node/package.json.cjs.js');
|
|
21
|
+
var _package$3 = require('../plugins/scaffolder-node-test-utils/package.json.cjs.js');
|
|
22
|
+
var _package$2 = require('../plugins/auth-backend/package.json.cjs.js');
|
|
23
|
+
var _package$1 = require('../plugins/auth-backend-module-guest-provider/package.json.cjs.js');
|
|
24
|
+
var _package = require('../plugins/catalog-node/package.json.cjs.js');
|
|
25
|
+
var _package$5 = require('../packages/theme/package.json.cjs.js');
|
|
26
|
+
var _package$k = require('../packages/backend-defaults/package.json.cjs.js');
|
|
27
27
|
|
|
28
28
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
29
29
|
|
|
@@ -31,27 +31,27 @@ var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
|
31
31
|
var semver__default = /*#__PURE__*/_interopDefaultCompat(semver);
|
|
32
32
|
|
|
33
33
|
const packageVersions = {
|
|
34
|
-
"@backstage/backend-defaults": _package.version,
|
|
35
|
-
"@backstage/backend-plugin-api": _package$
|
|
36
|
-
"@backstage/backend-test-utils": _package$
|
|
37
|
-
"@backstage/catalog-client": _package$
|
|
38
|
-
"@backstage/cli": _package$
|
|
39
|
-
"@backstage/config": _package$
|
|
40
|
-
"@backstage/core-app-api": _package$
|
|
41
|
-
"@backstage/core-components": _package$
|
|
42
|
-
"@backstage/core-plugin-api": _package$
|
|
43
|
-
"@backstage/dev-utils": _package$
|
|
34
|
+
"@backstage/backend-defaults": _package$k.version,
|
|
35
|
+
"@backstage/backend-plugin-api": _package$j.version,
|
|
36
|
+
"@backstage/backend-test-utils": _package$i.version,
|
|
37
|
+
"@backstage/catalog-client": _package$h.version,
|
|
38
|
+
"@backstage/cli": _package$g.version,
|
|
39
|
+
"@backstage/config": _package$f.version,
|
|
40
|
+
"@backstage/core-app-api": _package$e.version,
|
|
41
|
+
"@backstage/core-components": _package$d.version,
|
|
42
|
+
"@backstage/core-plugin-api": _package$c.version,
|
|
43
|
+
"@backstage/dev-utils": _package$b.version,
|
|
44
44
|
"@backstage/errors": _package$a.version,
|
|
45
|
-
"@backstage/frontend-defaults": _package$
|
|
46
|
-
"@backstage/frontend-plugin-api": _package$
|
|
47
|
-
"@backstage/frontend-test-utils": _package$
|
|
48
|
-
"@backstage/test-utils": _package$
|
|
49
|
-
"@backstage/theme": _package$
|
|
50
|
-
"@backstage/plugin-scaffolder-node": _package$
|
|
51
|
-
"@backstage/plugin-scaffolder-node-test-utils": _package$
|
|
52
|
-
"@backstage/plugin-auth-backend": _package$
|
|
53
|
-
"@backstage/plugin-auth-backend-module-guest-provider": _package$
|
|
54
|
-
"@backstage/plugin-catalog-node": _package
|
|
45
|
+
"@backstage/frontend-defaults": _package$9.version,
|
|
46
|
+
"@backstage/frontend-plugin-api": _package$8.version,
|
|
47
|
+
"@backstage/frontend-test-utils": _package$7.version,
|
|
48
|
+
"@backstage/test-utils": _package$6.version,
|
|
49
|
+
"@backstage/theme": _package$5.version,
|
|
50
|
+
"@backstage/plugin-scaffolder-node": _package$4.version,
|
|
51
|
+
"@backstage/plugin-scaffolder-node-test-utils": _package$3.version,
|
|
52
|
+
"@backstage/plugin-auth-backend": _package$2.version,
|
|
53
|
+
"@backstage/plugin-auth-backend-module-guest-provider": _package$1.version,
|
|
54
|
+
"@backstage/plugin-catalog-node": _package.version
|
|
55
55
|
};
|
|
56
56
|
function findVersion() {
|
|
57
57
|
const pkgContent = fs__default.default.readFileSync(paths.paths.resolveOwn("package.json"), "utf8");
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var minimatch = require('minimatch');
|
|
4
4
|
var getPackages = require('@manypkg/get-packages');
|
|
5
|
-
var errors = require('../errors.cjs.js');
|
|
6
5
|
var yarn = require('./yarn.cjs.js');
|
|
7
6
|
var run = require('../run.cjs.js');
|
|
7
|
+
var errors = require('@backstage/errors');
|
|
8
8
|
|
|
9
9
|
const DEP_TYPES = [
|
|
10
10
|
"dependencies",
|
|
@@ -15,7 +15,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
|
|
|
15
15
|
var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
16
16
|
|
|
17
17
|
async function command(opts) {
|
|
18
|
-
const
|
|
18
|
+
const webpack = process.env.LEGACY_WEBPACK_BUILD ? require("webpack") : void 0;
|
|
19
19
|
const role$1 = await role.findRoleFromCommand(opts);
|
|
20
20
|
if (role$1 === "frontend" || role$1 === "backend") {
|
|
21
21
|
const configPaths = opts.config.map((arg) => {
|
|
@@ -29,7 +29,7 @@ async function command(opts) {
|
|
|
29
29
|
targetDir: paths.paths.targetDir,
|
|
30
30
|
configPaths,
|
|
31
31
|
writeStats: Boolean(opts.stats),
|
|
32
|
-
|
|
32
|
+
webpack
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
35
|
return buildBackend.buildBackend({
|
|
@@ -50,7 +50,7 @@ async function command(opts) {
|
|
|
50
50
|
configPaths: [],
|
|
51
51
|
writeStats: Boolean(opts.stats),
|
|
52
52
|
isModuleFederationRemote: true,
|
|
53
|
-
|
|
53
|
+
webpack
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
56
|
const roleInfo = cliNode.PackageRoles.getRoleInfo(role$1);
|
|
@@ -3,20 +3,17 @@
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
4
|
var path = require('path');
|
|
5
5
|
require('yn');
|
|
6
|
-
require('
|
|
6
|
+
require('@rspack/core');
|
|
7
7
|
require('react-dev-utils/FileSizeReporter');
|
|
8
8
|
require('react-dev-utils/formatWebpackMessages');
|
|
9
|
-
require('eslint-
|
|
10
|
-
require('
|
|
9
|
+
require('eslint-rspack-plugin');
|
|
10
|
+
require('ts-checker-rspack-plugin');
|
|
11
11
|
require('html-webpack-plugin');
|
|
12
|
-
require('@module-federation/enhanced/webpack');
|
|
13
12
|
require('react-dev-utils/ModuleScopePlugin');
|
|
14
|
-
require('@
|
|
13
|
+
require('@module-federation/enhanced/rspack');
|
|
15
14
|
var paths = require('../../../../../lib/paths.cjs.js');
|
|
16
|
-
require('../../../lib/bundler/optimization.cjs.js');
|
|
17
15
|
require('lodash/pickBy');
|
|
18
16
|
require('../../../../../lib/run.cjs.js');
|
|
19
|
-
require('mini-css-extract-plugin');
|
|
20
17
|
require('../../../../../lib/version.cjs.js');
|
|
21
18
|
var hasReactDomClient = require('../../../lib/bundler/hasReactDomClient.cjs.js');
|
|
22
19
|
require('@manypkg/get-packages');
|
|
@@ -16,8 +16,7 @@ var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
|
16
16
|
|
|
17
17
|
async function command(opts, cmd) {
|
|
18
18
|
let packages = await cliNode.PackageGraph.listTargetPackages();
|
|
19
|
-
const
|
|
20
|
-
const rspack = shouldUseRspack ? require("@rspack/core") : void 0;
|
|
19
|
+
const webpack = process.env.LEGACY_WEBPACK_BUILD ? require("webpack") : void 0;
|
|
21
20
|
if (opts.since) {
|
|
22
21
|
const graph = cliNode.PackageGraph.fromPackages(packages);
|
|
23
22
|
const changedPackages = await graph.listChangedPackages({
|
|
@@ -86,7 +85,7 @@ async function command(opts, cmd) {
|
|
|
86
85
|
targetDir: pkg.dir,
|
|
87
86
|
configPaths: buildOptions.config ?? [],
|
|
88
87
|
writeStats: Boolean(buildOptions.stats),
|
|
89
|
-
|
|
88
|
+
webpack
|
|
90
89
|
});
|
|
91
90
|
}
|
|
92
91
|
});
|
|
@@ -6,20 +6,17 @@ var bundle = require('./bundler/bundle.cjs.js');
|
|
|
6
6
|
var moduleFederation = require('./bundler/moduleFederation.cjs.js');
|
|
7
7
|
require('chalk');
|
|
8
8
|
require('react-dev-utils/openBrowser');
|
|
9
|
-
require('
|
|
10
|
-
require('
|
|
9
|
+
require('@rspack/core');
|
|
10
|
+
require('@rspack/dev-server');
|
|
11
11
|
require('../../../lib/paths.cjs.js');
|
|
12
12
|
var config = require('../../config/lib/config.cjs.js');
|
|
13
|
-
require('eslint-
|
|
14
|
-
require('
|
|
13
|
+
require('eslint-rspack-plugin');
|
|
14
|
+
require('ts-checker-rspack-plugin');
|
|
15
15
|
require('html-webpack-plugin');
|
|
16
|
-
require('@module-federation/enhanced/webpack');
|
|
17
16
|
require('react-dev-utils/ModuleScopePlugin');
|
|
18
|
-
require('@
|
|
19
|
-
require('./bundler/optimization.cjs.js');
|
|
17
|
+
require('@module-federation/enhanced/rspack');
|
|
20
18
|
require('lodash/pickBy');
|
|
21
19
|
require('../../../lib/run.cjs.js');
|
|
22
|
-
require('mini-css-extract-plugin');
|
|
23
20
|
require('../../../lib/version.cjs.js');
|
|
24
21
|
require('yn');
|
|
25
22
|
require('@manypkg/get-packages');
|
|
@@ -31,7 +28,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
|
|
|
31
28
|
var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
32
29
|
|
|
33
30
|
async function buildFrontend(options) {
|
|
34
|
-
const { targetDir, writeStats, configPaths,
|
|
31
|
+
const { targetDir, writeStats, configPaths, webpack } = options;
|
|
35
32
|
const packageJson = await fs__default.default.readJson(
|
|
36
33
|
path.resolve(targetDir, "package.json")
|
|
37
34
|
);
|
|
@@ -49,7 +46,7 @@ async function buildFrontend(options) {
|
|
|
49
46
|
args: configPaths,
|
|
50
47
|
fromPackage: packageJson.name
|
|
51
48
|
}),
|
|
52
|
-
|
|
49
|
+
webpack
|
|
53
50
|
});
|
|
54
51
|
}
|
|
55
52
|
|
|
@@ -7,14 +7,12 @@ var commonjs = require('@rollup/plugin-commonjs');
|
|
|
7
7
|
var resolve = require('@rollup/plugin-node-resolve');
|
|
8
8
|
var postcss = require('rollup-plugin-postcss');
|
|
9
9
|
var esbuild = require('rollup-plugin-esbuild');
|
|
10
|
-
var svgr = require('@svgr/rollup');
|
|
11
10
|
var dts = require('rollup-plugin-dts');
|
|
12
11
|
var json = require('@rollup/plugin-json');
|
|
13
12
|
var yaml = require('@rollup/plugin-yaml');
|
|
14
13
|
var plugins = require('./plugins.cjs.js');
|
|
15
14
|
var types = require('./types.cjs.js');
|
|
16
15
|
var paths = require('../../../../lib/paths.cjs.js');
|
|
17
|
-
var svgrTemplate = require('../../../../lib/svgrTemplate.cjs.js');
|
|
18
16
|
var entryPoints = require('../../../../lib/entryPoints.cjs.js');
|
|
19
17
|
|
|
20
18
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
@@ -25,7 +23,6 @@ var commonjs__default = /*#__PURE__*/_interopDefaultCompat(commonjs);
|
|
|
25
23
|
var resolve__default = /*#__PURE__*/_interopDefaultCompat(resolve);
|
|
26
24
|
var postcss__default = /*#__PURE__*/_interopDefaultCompat(postcss);
|
|
27
25
|
var esbuild__default = /*#__PURE__*/_interopDefaultCompat(esbuild);
|
|
28
|
-
var svgr__default = /*#__PURE__*/_interopDefaultCompat(svgr);
|
|
29
26
|
var dts__default = /*#__PURE__*/_interopDefaultCompat(dts);
|
|
30
27
|
var json__default = /*#__PURE__*/_interopDefaultCompat(json);
|
|
31
28
|
var yaml__default = /*#__PURE__*/_interopDefaultCompat(yaml);
|
|
@@ -201,10 +198,6 @@ async function makeRollupConfigs(options) {
|
|
|
201
198
|
}),
|
|
202
199
|
json__default.default(),
|
|
203
200
|
yaml__default.default(),
|
|
204
|
-
svgr__default.default({
|
|
205
|
-
include: /\.icon\.svg$/,
|
|
206
|
-
template: svgrTemplate.svgrTemplate
|
|
207
|
-
}),
|
|
208
201
|
esbuild__default.default({
|
|
209
202
|
target: "ES2022",
|
|
210
203
|
minify: options.minify
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var yn = require('yn');
|
|
4
4
|
var fs = require('fs-extra');
|
|
5
5
|
var path = require('path');
|
|
6
|
-
var
|
|
6
|
+
var core = require('@rspack/core');
|
|
7
7
|
var FileSizeReporter = require('react-dev-utils/FileSizeReporter');
|
|
8
8
|
var formatWebpackMessages = require('react-dev-utils/formatWebpackMessages');
|
|
9
9
|
var config = require('./config.cjs.js');
|
|
@@ -15,7 +15,6 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
|
|
|
15
15
|
|
|
16
16
|
var yn__default = /*#__PURE__*/_interopDefaultCompat(yn);
|
|
17
17
|
var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
18
|
-
var webpack__default = /*#__PURE__*/_interopDefaultCompat(webpack);
|
|
19
18
|
var formatWebpackMessages__default = /*#__PURE__*/_interopDefaultCompat(formatWebpackMessages);
|
|
20
19
|
var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
21
20
|
|
|
@@ -26,7 +25,7 @@ function applyContextToError(error, moduleName) {
|
|
|
26
25
|
${error}`;
|
|
27
26
|
}
|
|
28
27
|
async function buildBundle(options) {
|
|
29
|
-
const { statsJsonEnabled, schema: configSchema,
|
|
28
|
+
const { statsJsonEnabled, schema: configSchema, webpack } = options;
|
|
30
29
|
const paths$1 = paths.resolveBundlingPaths(options);
|
|
31
30
|
const publicPaths = await paths.resolveOptionalBundlingPaths({
|
|
32
31
|
targetDir: options.targetDir,
|
|
@@ -91,12 +90,10 @@ async function buildBundle(options) {
|
|
|
91
90
|
{ spaces: 2 }
|
|
92
91
|
);
|
|
93
92
|
}
|
|
94
|
-
if (
|
|
95
|
-
console.log(
|
|
96
|
-
chalk__default.default.yellow(`\u26A0\uFE0F WARNING: Using experimental RSPack bundler.`)
|
|
97
|
-
);
|
|
93
|
+
if (webpack) {
|
|
94
|
+
console.log(chalk__default.default.yellow(`\u26A0\uFE0F WARNING: Using legacy WebPack bundler`));
|
|
98
95
|
}
|
|
99
|
-
const { stats } = await build(configs, isCi,
|
|
96
|
+
const { stats } = await build(configs, isCi, webpack);
|
|
100
97
|
if (!stats) {
|
|
101
98
|
throw new Error("No stats returned");
|
|
102
99
|
}
|
|
@@ -124,29 +121,27 @@ async function buildBundle(options) {
|
|
|
124
121
|
);
|
|
125
122
|
}
|
|
126
123
|
}
|
|
127
|
-
async function build(configs, isCi,
|
|
128
|
-
const bundler =
|
|
129
|
-
const stats = await new Promise(
|
|
130
|
-
(
|
|
131
|
-
|
|
132
|
-
if (err) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
throw new Error(errors2[0]);
|
|
141
|
-
} else {
|
|
142
|
-
reject(err);
|
|
143
|
-
}
|
|
124
|
+
async function build(configs, isCi, webpack) {
|
|
125
|
+
const bundler = webpack ?? core.rspack;
|
|
126
|
+
const stats = await new Promise((resolve, reject) => {
|
|
127
|
+
bundler(configs, (err, buildStats) => {
|
|
128
|
+
if (err) {
|
|
129
|
+
if (err.message) {
|
|
130
|
+
const { errors: errors2 } = formatWebpackMessages__default.default({
|
|
131
|
+
errors: [err.message],
|
|
132
|
+
warnings: new Array(),
|
|
133
|
+
_showErrors: true,
|
|
134
|
+
_showWarnings: true
|
|
135
|
+
});
|
|
136
|
+
throw new Error(errors2[0]);
|
|
144
137
|
} else {
|
|
145
|
-
|
|
138
|
+
reject(err);
|
|
146
139
|
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
|
|
140
|
+
} else {
|
|
141
|
+
resolve(buildStats);
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
});
|
|
150
145
|
if (!stats) {
|
|
151
146
|
throw new Error("Failed to compile: No stats provided");
|
|
152
147
|
}
|