@backstage/cli 0.19.0-next.3 → 0.20.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.
Files changed (51) hide show
  1. package/CHANGELOG.md +138 -0
  2. package/config/jest.js +6 -7
  3. package/config/jestFileTransform.js +5 -3
  4. package/config/jestSucraseTransform.js +2 -2
  5. package/config/jestSwcTransform.js +1 -1
  6. package/config/jestYamlTransform.js +40 -0
  7. package/dist/cjs/{Lockfile-72b7072e.cjs.js → Lockfile-6785964d.cjs.js} +11 -3
  8. package/dist/cjs/{PackageGraph-cbbcb60d.cjs.js → PackageGraph-c010b470.cjs.js} +2 -2
  9. package/dist/cjs/{build-a80c880d.cjs.js → build-bf0c9be8.cjs.js} +9 -9
  10. package/dist/cjs/{buildBackend-f7c77b0b.cjs.js → buildBackend-b3cac554.cjs.js} +6 -6
  11. package/dist/cjs/{buildWorkspace-54b59635.cjs.js → buildWorkspace-ae6d11ad.cjs.js} +6 -6
  12. package/dist/cjs/{bump-1b765f38.cjs.js → bump-233971f4.cjs.js} +6 -6
  13. package/dist/cjs/{clean-d0639824.cjs.js → clean-04b9c3da.cjs.js} +2 -2
  14. package/dist/cjs/{clean-44c36da0.cjs.js → clean-97ff26db.cjs.js} +3 -3
  15. package/dist/cjs/{config-b04e9537.cjs.js → config-372b1847.cjs.js} +3 -3
  16. package/dist/cjs/{createDistWorkspace-ee244c42.cjs.js → createDistWorkspace-0d95621f.cjs.js} +6 -6
  17. package/dist/cjs/{createPlugin-38bde20d.cjs.js → createPlugin-3ba45c6e.cjs.js} +5 -5
  18. package/dist/cjs/{diff-106d4724.cjs.js → diff-6f41d16d.cjs.js} +2 -2
  19. package/dist/cjs/{docs-b4ec9616.cjs.js → docs-1fc5df4c.cjs.js} +4 -4
  20. package/dist/cjs/{fix-2e7bcb7b.cjs.js → fix-b1264da8.cjs.js} +3 -3
  21. package/dist/cjs/{index-22d71d53.cjs.js → index-5b93e829.cjs.js} +9 -9
  22. package/dist/cjs/{index-0b77afc5.cjs.js → index-78397b5a.cjs.js} +9 -9
  23. package/dist/cjs/{index-4a52b979.cjs.js → index-a0c84dfe.cjs.js} +73 -60
  24. package/dist/cjs/{index-ddecf380.cjs.js → index-ab294f1b.cjs.js} +2 -2
  25. package/dist/cjs/{info-dde556a3.cjs.js → info-05d5f8e8.cjs.js} +4 -4
  26. package/dist/cjs/{install-0198741a.cjs.js → install-bcc3993e.cjs.js} +4 -4
  27. package/dist/cjs/{lint-bac940ad.cjs.js → lint-3a772347.cjs.js} +4 -4
  28. package/dist/cjs/{lint-bbf17e89.cjs.js → lint-ab2bafa4.cjs.js} +3 -3
  29. package/dist/cjs/{lint-4ea1cd7d.cjs.js → lint-be221814.cjs.js} +2 -2
  30. package/dist/cjs/{list-deprecations-1a376bc8.cjs.js → list-deprecations-e8947967.cjs.js} +3 -3
  31. package/dist/cjs/{new-dc185c76.cjs.js → new-980110f9.cjs.js} +5 -5
  32. package/dist/cjs/{pack-17918a36.cjs.js → pack-f4977c5b.cjs.js} +2 -2
  33. package/dist/cjs/{packageLintConfigs-4b48e7c0.cjs.js → packageLintConfigs-37c9efdb.cjs.js} +4 -4
  34. package/dist/cjs/{packageRole-5a08fd56.cjs.js → packageRole-f7f8bddb.cjs.js} +3 -3
  35. package/dist/cjs/{packageRoles-1f3cfecc.cjs.js → packageRoles-fe1041b2.cjs.js} +2 -2
  36. package/dist/cjs/{packageScripts-3d6c88f7.cjs.js → packageScripts-adb1adda.cjs.js} +4 -4
  37. package/dist/cjs/{packages-032b4d94.cjs.js → packages-ca11689b.cjs.js} +3 -3
  38. package/dist/cjs/{paths-adb593c7.cjs.js → paths-55d51401.cjs.js} +7 -7
  39. package/dist/cjs/{print-69c54f76.cjs.js → print-0a762eba.cjs.js} +4 -4
  40. package/dist/cjs/{reactRouterDeps-af437b7b.cjs.js → reactRouterDeps-9be88dbe.cjs.js} +4 -4
  41. package/dist/cjs/{run-20edcac9.cjs.js → run-4d88b636.cjs.js} +2 -2
  42. package/dist/cjs/{schema-6176df9d.cjs.js → schema-df053149.cjs.js} +4 -4
  43. package/dist/cjs/{tasks-93484977.cjs.js → tasks-6a14164e.cjs.js} +2 -2
  44. package/dist/cjs/{test-7f135639.cjs.js → test-3650b6a2.cjs.js} +3 -3
  45. package/dist/cjs/test-596310c9.cjs.js +99 -0
  46. package/dist/cjs/{validate-6dc3e551.cjs.js → validate-6e7df086.cjs.js} +4 -4
  47. package/dist/index.cjs.js +1 -1
  48. package/package.json +19 -20
  49. package/templates/default-backend-plugin/package.json.hbs +6 -6
  50. package/templates/default-plugin/package.json.hbs +1 -1
  51. package/LICENSE +0 -201
package/CHANGELOG.md CHANGED
@@ -1,5 +1,143 @@
1
1
  # @backstage/cli
2
2
 
3
+ ## 0.20.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - f368ad7279: **BREAKING**: Bumped `jest`, `jest-runtime`, and `jest-environment-jsdom` to v29. This is up from v27, so check out both the [v28](https://jestjs.io/docs/28.x/upgrading-to-jest28) and [v29](https://jestjs.io/docs/upgrading-to-jest29) (later [here](https://jestjs.io/docs/29.x/upgrading-to-jest29)) migration guides.
8
+
9
+ Particular changes that where encountered in the main Backstage repo are:
10
+
11
+ - The updated snapshot format.
12
+ - `jest.useFakeTimers('legacy')` is now `jest.useFakeTimers({ legacyFakeTimers: true })`.
13
+ - Error objects collected by `withLogCollector` from `@backstage/test-utils` are now objects with a `detail` property rather than a string.
14
+
15
+ ### Patch Changes
16
+
17
+ - 3e309107ca: Updated fallback versions of dependencies in all templates.
18
+ - 292a088807: Added a new `repo test` command.
19
+ - ba63cae41c: Updated lockfile parsing to have better support for Yarn 3.
20
+ - 2dddb32fea: Switched the Jest transform for YAML files to use a custom one available at `@backstage/cli/config/jestYamlTransform.js`.
21
+ - a541a3a78a: Switch to upfront resolution of `swc-loader` in Webpack config.
22
+ - cfb3598410: Removed `tsx` and `jsx` as supported extensions in backend packages. For most
23
+ repos, this will not have any effect. But if you inadvertently had added some
24
+ `tsx`/`jsx` files to your backend package, you may now start to see `code: 'MODULE_NOT_FOUND'` errors when launching the backend locally. The reason for
25
+ this is that the offending files get ignored during transpilation. Hence, the
26
+ importing file can no longer find anything to import.
27
+
28
+ The fix is to rename any `.tsx` files in your backend packages to `.ts` instead,
29
+ or `.jsx` to `.js`.
30
+
31
+ - Updated dependencies
32
+ - @backstage/cli-common@0.1.10
33
+ - @backstage/config@1.0.3-next.0
34
+ - @backstage/config-loader@1.1.5-next.0
35
+ - @backstage/errors@1.1.2-next.0
36
+ - @backstage/release-manifests@0.0.6
37
+ - @backstage/types@1.0.0
38
+
39
+ ## 0.19.0
40
+
41
+ ### Minor Changes
42
+
43
+ - 1fe6823bb5: Updated dependency `eslint-plugin-jest` to `^27.0.0`.
44
+
45
+ Note that this major update to the Jest plugin contains some breaking changes.
46
+ This means that some of your tests may start seeing some new lint errors. [Read
47
+ about them
48
+ here](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md#2700-2022-08-28).
49
+
50
+ These are mostly possible to fix automatically. You can try to run `yarn backstage-cli repo lint --fix` in your repo root to have most or all of them
51
+ corrected.
52
+
53
+ ### Patch Changes
54
+
55
+ - 8d886dd33e: The `create-plugin` and `create` commands have both been deprecated in favor of a new `new` command. The `new` command is functionally identical to `create`, but the new naming makes it possible to use as yarn script, since `yarn create` is reserved.
56
+ - cc63eb8611: Sort entries in skeleton.tar.gz for better docker layer caching
57
+ - 548053614a: Deprecated the `plugin:diff` command. If you wish to keep running similar checks in your project we recommend using bespoke scripts. A useful utility for such scripts is `@manypkg/get-packages`, which helps you enumerate all packages in a monorepo.
58
+ - 513b4dd4ef: The `versions:bump` command will now update dependency ranges in `package.json`, even if the new version is within the current range.
59
+ - 221e951298: Added support for custom certificate for webpack dev server.
60
+ - 934cc34563: Avoid validating the backend configuration schema when loading static configuration for building the frontend.
61
+ - 3d4f5daadf: Remove use of deprecated trimLeft/trimRight
62
+ - 817f3196f6: Added a new `migrate react-router-deps` command to aid in the migration to React Router v6 stable.
63
+ - 742cb4f3d7: Fix issue when using `.jsx` files inside tests
64
+ - e7600bdb04: Tweaked workspace packaging to not rewrite existing `package.json` files.
65
+ - 6ae0f6a719: Switch out `sucrase` for `swc` for transpilation.
66
+
67
+ `sucrase` is a little more relaxed when it comes to supporting the ways of mocking in `jest`. You might have to make some changes to your tests to meet the `jest` standard and spec if your tests seems to start failing.
68
+
69
+ Mocks that look like this are invalid, and they will throw a reference error in line with the `jest` documentation [here on example 3](https://jestjs.io/docs/es6-class-mocks#calling-jestmock-with-the-module-factory-parameter)
70
+
71
+ ```ts
72
+ const mockCommandExists = jest.fn();
73
+ jest.mock('command-exists', () => mockCommandExists);
74
+ ```
75
+
76
+ You might need to update these mocks to look a little like the following to defer the call to the `jest.fn()` spy until the mock is called.
77
+
78
+ ```ts
79
+ const mockCommandExists = jest.fn();
80
+ jest.mock(
81
+ 'command-exists',
82
+ () =>
83
+ (...args: any[]) =>
84
+ commandExists(...args),
85
+ );
86
+ ```
87
+
88
+ Also, imports are immutable. So it means that you might get some errors when trying to use `jest.spyOn` with starred imports. You might see an error like this:
89
+
90
+ ```log
91
+ TypeError: Cannot redefine property: executeFrameHandlerStrategy
92
+ at Function.defineProperty (<anonymous>)
93
+
94
+ 20 | import { AuthResolverContext } from '../types';
95
+ 21 |
96
+ > 22 | const mockFrameHandler = jest.spyOn(
97
+ | ^
98
+ 23 | helpers,
99
+ 24 | 'executeFrameHandlerStrategy',
100
+ 25 | ) as unknown as jest.MockedFunction<
101
+ ```
102
+
103
+ This happens when you try to do `import * as something from './something'` and then `jest.spyOn(something, 'test)`. You will need to add a `jest.mock` call to mock out the required starred import to return `jest.fn()` functions from the start. Something like this fixes the above test:
104
+
105
+ ```ts
106
+ jest.mock('../../helpers', () => ({
107
+ executeFrameHandlerStrategy: jest.fn(),
108
+ }));
109
+ ```
110
+
111
+ You can also remove any occurrence of `hot(App)` and any import of `react-hot-loader` if you're using the that package locally, as all this has now been replaced with [React Refresh](https://www.npmjs.com/package/react-refresh) which you will get out of the box with the new CLI.
112
+
113
+ **Note** If you're experiencing difficulties with running tests after the migration, please reach out to us on Discord to see if we can help, or raise an issue. But in the meantime you can switch back to the existing behaviour by using the following config in your root `package.json`.
114
+
115
+ ```json
116
+ "jest": {
117
+ "transform": {
118
+ "\\.(js|jsx|ts|tsx|mjs|cjs)$": "@backstage/cli/config/jestSucraseTransform.js",
119
+ "\\.(bmp|gif|jpg|jpeg|png|frag|xml|svg|eot|woff|woff2|ttf)$": "@backstage/cli/config/jestFileTransform.js",
120
+ "\\.(yaml)$": "jest-transform-yaml"
121
+ }
122
+ }
123
+ ```
124
+
125
+ - 1cb078ad9f: Fixed a misconfiguration where all modules where treated as ESM by the React Refresh plugin for Webpack.
126
+ - 1fd4f2746f: Removed internal dependencies on Lerna. It is now no longer necessary to have Lerna installed in a project to use all features of the Backstage CLI.
127
+ - 667d917488: Updated dependency `msw` to `^0.47.0`.
128
+ - 87ec2ba4d6: Updated dependency `msw` to `^0.46.0`.
129
+ - bf5e9030eb: Updated dependency `msw` to `^0.45.0`.
130
+ - 33fbd9f9a4: Updated dependency `@types/minimatch` to `^5.0.0`.
131
+ - 68c2697077: Added a new `backstage-cli repo clean` command that cleans the repo root and runs the clean script in all packages.
132
+ - 7d47def9c4: Added dependency on `@types/jest` v27. The `@types/jest` dependency has also been removed from the plugin template and should be removed from any of your own internal packages. If you wish to override the version of `@types/jest` or `jest`, use Yarn resolutions.
133
+ - a7e82c9b01: Updated `versions:bump` command to be compatible with Yarn 3.
134
+ - Updated dependencies
135
+ - @backstage/config-loader@1.1.4
136
+ - @backstage/cli-common@0.1.10
137
+ - @backstage/config@1.0.2
138
+ - @backstage/errors@1.1.1
139
+ - @backstage/release-manifests@0.0.6
140
+
3
141
  ## 0.19.0-next.3
4
142
 
5
143
  ### Patch Changes
package/config/jest.js CHANGED
@@ -27,7 +27,6 @@ const envOptions = {
27
27
 
28
28
  const transformIgnorePattern = [
29
29
  '@material-ui',
30
- '@rjsf',
31
30
  'ajv',
32
31
  'core-js',
33
32
  'jest-.*',
@@ -189,13 +188,13 @@ async function getProjectConfig(targetPath, displayName) {
189
188
  ],
190
189
  '\\.(bmp|gif|jpg|jpeg|png|frag|xml|svg|eot|woff|woff2|ttf)$':
191
190
  require.resolve('./jestFileTransform.js'),
192
- '\\.(yaml)$': require.resolve('jest-transform-yaml'),
191
+ '\\.(yaml)$': require.resolve('./jestYamlTransform'),
193
192
  },
194
193
 
195
194
  // A bit more opinionated
196
195
  testMatch: ['**/*.test.{js,jsx,ts,tsx,mjs,cjs}'],
197
196
 
198
- moduleLoader: envOptions.nextTests
197
+ runtime: envOptions.nextTests
199
198
  ? require.resolve('./jestCachingModuleLoader')
200
199
  : undefined,
201
200
 
@@ -210,16 +209,16 @@ async function getProjectConfig(targetPath, displayName) {
210
209
 
211
210
  const config = Object.assign(options, ...pkgJsonConfigs);
212
211
 
213
- // The config name is a cache key that lets us share the jest cache across projects.
214
- // If no explicit name was configured, generated one based on the configuration.
215
- if (!config.name) {
212
+ // The config id is a cache key that lets us share the jest cache across projects.
213
+ // If no explicit id was configured, generated one based on the configuration.
214
+ if (!config.id) {
216
215
  const configHash = crypto
217
216
  .createHash('md5')
218
217
  .update(version)
219
218
  .update(Buffer.alloc(1))
220
219
  .update(JSON.stringify(config.transform))
221
220
  .digest('hex');
222
- config.name = `backstage_cli_${configHash}`;
221
+ config.id = `backstage_cli_${configHash}`;
223
222
  }
224
223
 
225
224
  return config;
@@ -21,7 +21,8 @@ module.exports = {
21
21
  const assetFilename = JSON.stringify(path.basename(filename));
22
22
 
23
23
  if (filename.match(/\.icon\.svg$/)) {
24
- return `const React = require('react');
24
+ return {
25
+ code: `const React = require('react');
25
26
  const SvgIcon = require('@material-ui/core/SvgIcon').default;
26
27
  module.exports = {
27
28
  __esModule: true,
@@ -34,9 +35,10 @@ module.exports = {
34
35
  children: ${assetFilename}
35
36
  })
36
37
  })
37
- };`;
38
+ };`,
39
+ };
38
40
  }
39
41
 
40
- return `module.exports = ${assetFilename};`;
42
+ return { code: `module.exports = ${assetFilename};` };
41
43
  },
42
44
  };
@@ -64,10 +64,10 @@ function createTransformer(config) {
64
64
  }
65
65
  // We only return the `map` result if source maps are enabled, as they
66
66
  // have a negative impact on the coverage accuracy.
67
- return code;
67
+ return { code };
68
68
  }
69
69
 
70
- return source;
70
+ return { code: source };
71
71
  };
72
72
 
73
73
  // TODO: contribute something like this to @sucrase/jest-plugin
@@ -21,7 +21,7 @@ function createTransformer(config) {
21
21
  const swcTransformer = createSwcTransformer(config);
22
22
  const process = (source, filePath, jestOptions) => {
23
23
  if (filePath.endsWith('.js') && !ESM_REGEX.test(source)) {
24
- return source;
24
+ return { code: source };
25
25
  }
26
26
 
27
27
  return swcTransformer.process(source, filePath, jestOptions);
@@ -0,0 +1,40 @@
1
+ /*
2
+ * Copyright 2022 The Backstage Authors
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ const yaml = require('yaml');
18
+ const crypto = require('crypto');
19
+
20
+ function createTransformer(config) {
21
+ const process = source => {
22
+ const json = JSON.stringify(yaml.parse(source), null, 2);
23
+ return { code: `module.exports = ${json}`, map: null };
24
+ };
25
+
26
+ const getCacheKey = sourceText => {
27
+ return crypto
28
+ .createHash('md5')
29
+ .update(sourceText)
30
+ .update(Buffer.alloc(1))
31
+ .update(JSON.stringify(config))
32
+ .update(Buffer.alloc(1))
33
+ .update('1') // increment whenever the transform logic in this file changes
34
+ .digest('hex');
35
+ };
36
+
37
+ return { process, getCacheKey };
38
+ }
39
+
40
+ module.exports = { createTransformer };
@@ -65,7 +65,7 @@ class Lockfile {
65
65
  for (const [key, value] of Object.entries(data)) {
66
66
  if (SPECIAL_OBJECT_KEYS.includes(key))
67
67
  continue;
68
- const [, name, range] = (_a = ENTRY_PATTERN.exec(key)) != null ? _a : [];
68
+ const [, name, ranges] = (_a = ENTRY_PATTERN.exec(key)) != null ? _a : [];
69
69
  if (!name) {
70
70
  throw new Error(`Failed to parse yarn.lock entry '${key}'`);
71
71
  }
@@ -74,7 +74,15 @@ class Lockfile {
74
74
  queries = [];
75
75
  packages.set(name, queries);
76
76
  }
77
- queries.push({ range, version: value.version });
77
+ for (let range of ranges.split(/\s*,\s*/)) {
78
+ if (range.startsWith(`${name}@`)) {
79
+ range = range.slice(`${name}@`.length);
80
+ }
81
+ if (range.startsWith("npm:")) {
82
+ range = range.slice("npm:".length);
83
+ }
84
+ queries.push({ range, version: value.version });
85
+ }
78
86
  }
79
87
  return new Lockfile(path, packages, data, legacy);
80
88
  }
@@ -207,4 +215,4 @@ class Lockfile {
207
215
  }
208
216
 
209
217
  exports.Lockfile = Lockfile;
210
- //# sourceMappingURL=Lockfile-72b7072e.cjs.js.map
218
+ //# sourceMappingURL=Lockfile-6785964d.cjs.js.map
@@ -2,7 +2,7 @@
2
2
 
3
3
  var path = require('path');
4
4
  var getPackages = require('@manypkg/get-packages');
5
- var index = require('./index-4a52b979.cjs.js');
5
+ var index = require('./index-a0c84dfe.cjs.js');
6
6
  var errors = require('@backstage/errors');
7
7
  var child_process = require('child_process');
8
8
  var util = require('util');
@@ -166,4 +166,4 @@ class PackageGraph extends Map {
166
166
  }
167
167
 
168
168
  exports.PackageGraph = PackageGraph;
169
- //# sourceMappingURL=PackageGraph-cbbcb60d.cjs.js.map
169
+ //# sourceMappingURL=PackageGraph-c010b470.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-ee244c42.cjs.js');
6
- var PackageGraph = require('./PackageGraph-cbbcb60d.cjs.js');
5
+ var createDistWorkspace = require('./createDistWorkspace-0d95621f.cjs.js');
6
+ var PackageGraph = require('./PackageGraph-c010b470.cjs.js');
7
7
  var parallel = require('./parallel-a8f6219c.cjs.js');
8
- var index = require('./index-4a52b979.cjs.js');
9
- var packageRoles = require('./packageRoles-1f3cfecc.cjs.js');
10
- var buildBackend = require('./buildBackend-f7c77b0b.cjs.js');
8
+ var index = require('./index-a0c84dfe.cjs.js');
9
+ var packageRoles = require('./packageRoles-fe1041b2.cjs.js');
10
+ var buildBackend = require('./buildBackend-b3cac554.cjs.js');
11
11
  require('fs-extra');
12
12
  require('os');
13
13
  require('tar');
14
14
  require('lodash/partition');
15
- require('./run-20edcac9.cjs.js');
15
+ require('./run-4d88b636.cjs.js');
16
16
  require('child_process');
17
17
  require('util');
18
18
  require('@backstage/errors');
@@ -40,7 +40,7 @@ require('html-webpack-plugin');
40
40
  require('react-dev-utils/ModuleScopePlugin');
41
41
  require('run-script-webpack-plugin');
42
42
  require('webpack-node-externals');
43
- require('./paths-adb593c7.cjs.js');
43
+ require('./paths-55d51401.cjs.js');
44
44
  require('mini-css-extract-plugin');
45
45
  require('@pmmmwh/react-refresh-webpack-plugin');
46
46
  require('eslint-webpack-plugin');
@@ -50,7 +50,7 @@ require('react-dev-utils/FileSizeReporter');
50
50
  require('react-dev-utils/formatWebpackMessages');
51
51
  require('webpack-dev-server');
52
52
  require('react-dev-utils/openBrowser');
53
- require('./config-b04e9537.cjs.js');
53
+ require('./config-372b1847.cjs.js');
54
54
  require('@backstage/config-loader');
55
55
  require('@backstage/config');
56
56
 
@@ -186,4 +186,4 @@ async function command(opts, cmd) {
186
186
  }
187
187
 
188
188
  exports.command = command;
189
- //# sourceMappingURL=build-a80c880d.cjs.js.map
189
+ //# sourceMappingURL=build-bf0c9be8.cjs.js.map
@@ -10,11 +10,11 @@ require('run-script-webpack-plugin');
10
10
  require('webpack-node-externals');
11
11
  require('@backstage/cli-common');
12
12
  require('@manypkg/get-packages');
13
- var paths = require('./paths-adb593c7.cjs.js');
13
+ var paths = require('./paths-55d51401.cjs.js');
14
14
  require('mini-css-extract-plugin');
15
15
  require('@pmmmwh/react-refresh-webpack-plugin');
16
- require('./index-4a52b979.cjs.js');
17
- require('./run-20edcac9.cjs.js');
16
+ require('./index-a0c84dfe.cjs.js');
17
+ require('./run-4d88b636.cjs.js');
18
18
  require('eslint-webpack-plugin');
19
19
  require('lodash/pickBy');
20
20
  var yn = require('yn');
@@ -24,10 +24,10 @@ var chalk = require('chalk');
24
24
  require('webpack-dev-server');
25
25
  require('react-dev-utils/openBrowser');
26
26
  var parallel = require('./parallel-a8f6219c.cjs.js');
27
- var config = require('./config-b04e9537.cjs.js');
27
+ var config = require('./config-372b1847.cjs.js');
28
28
  var os = require('os');
29
29
  var tar = require('tar');
30
- var createDistWorkspace = require('./createDistWorkspace-ee244c42.cjs.js');
30
+ var createDistWorkspace = require('./createDistWorkspace-0d95621f.cjs.js');
31
31
 
32
32
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
33
33
 
@@ -195,4 +195,4 @@ async function buildBackend(options) {
195
195
 
196
196
  exports.buildBackend = buildBackend;
197
197
  exports.buildFrontend = buildFrontend;
198
- //# sourceMappingURL=buildBackend-f7c77b0b.cjs.js.map
198
+ //# sourceMappingURL=buildBackend-b3cac554.cjs.js.map
@@ -1,21 +1,21 @@
1
1
  'use strict';
2
2
 
3
3
  var fs = require('fs-extra');
4
- var createDistWorkspace = require('./createDistWorkspace-ee244c42.cjs.js');
4
+ var createDistWorkspace = require('./createDistWorkspace-0d95621f.cjs.js');
5
5
  require('chalk');
6
6
  require('path');
7
7
  require('os');
8
8
  require('tar');
9
9
  require('lodash/partition');
10
- require('./index-4a52b979.cjs.js');
10
+ require('./index-a0c84dfe.cjs.js');
11
11
  require('commander');
12
12
  require('semver');
13
13
  require('@backstage/cli-common');
14
14
  require('@backstage/errors');
15
- require('./run-20edcac9.cjs.js');
15
+ require('./run-4d88b636.cjs.js');
16
16
  require('child_process');
17
17
  require('util');
18
- require('./PackageGraph-cbbcb60d.cjs.js');
18
+ require('./PackageGraph-c010b470.cjs.js');
19
19
  require('@manypkg/get-packages');
20
20
  require('rollup');
21
21
  require('@rollup/plugin-commonjs');
@@ -30,7 +30,7 @@ require('rollup-pluginutils');
30
30
  require('./svgrTemplate-550efce6.cjs.js');
31
31
  require('./parallel-a8f6219c.cjs.js');
32
32
  require('worker_threads');
33
- require('./packageRoles-1f3cfecc.cjs.js');
33
+ require('./packageRoles-fe1041b2.cjs.js');
34
34
  require('zod');
35
35
  require('npm-packlist');
36
36
 
@@ -48,4 +48,4 @@ var buildWorkspace = async (dir, packages) => {
48
48
  };
49
49
 
50
50
  exports["default"] = buildWorkspace;
51
- //# sourceMappingURL=buildWorkspace-54b59635.cjs.js.map
51
+ //# sourceMappingURL=buildWorkspace-ae6d11ad.cjs.js.map
@@ -7,11 +7,11 @@ var semver = require('semver');
7
7
  var minimatch = require('minimatch');
8
8
  var errors = require('@backstage/errors');
9
9
  var path = require('path');
10
- var run = require('./run-20edcac9.cjs.js');
11
- var index = require('./index-4a52b979.cjs.js');
12
- var Lockfile = require('./Lockfile-72b7072e.cjs.js');
13
- var packages = require('./packages-032b4d94.cjs.js');
14
- var lint = require('./lint-bac940ad.cjs.js');
10
+ var run = require('./run-4d88b636.cjs.js');
11
+ var index = require('./index-a0c84dfe.cjs.js');
12
+ var Lockfile = require('./Lockfile-6785964d.cjs.js');
13
+ var packages = require('./packages-ca11689b.cjs.js');
14
+ var lint = require('./lint-3a772347.cjs.js');
15
15
  var cliCommon = require('@backstage/cli-common');
16
16
  var parallel = require('./parallel-a8f6219c.cjs.js');
17
17
  var releaseManifests = require('@backstage/release-manifests');
@@ -396,4 +396,4 @@ exports.bumpBackstageJsonVersion = bumpBackstageJsonVersion;
396
396
  exports.createStrictVersionFinder = createStrictVersionFinder;
397
397
  exports.createVersionFinder = createVersionFinder;
398
398
  exports["default"] = bump;
399
- //# sourceMappingURL=bump-1b765f38.cjs.js.map
399
+ //# sourceMappingURL=bump-233971f4.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-4a52b979.cjs.js');
4
+ var index = require('./index-a0c84dfe.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-d0639824.cjs.js.map
22
+ //# sourceMappingURL=clean-04b9c3da.cjs.js.map
@@ -4,8 +4,8 @@ var child_process = require('child_process');
4
4
  var fs = require('fs-extra');
5
5
  var path = require('path');
6
6
  var util = require('util');
7
- var PackageGraph = require('./PackageGraph-cbbcb60d.cjs.js');
8
- var index = require('./index-4a52b979.cjs.js');
7
+ var PackageGraph = require('./PackageGraph-c010b470.cjs.js');
8
+ var index = require('./index-a0c84dfe.cjs.js');
9
9
  require('@manypkg/get-packages');
10
10
  require('@backstage/errors');
11
11
  require('commander');
@@ -47,4 +47,4 @@ async function command() {
47
47
  }
48
48
 
49
49
  exports.command = command;
50
- //# sourceMappingURL=clean-44c36da0.cjs.js.map
50
+ //# sourceMappingURL=clean-97ff26db.cjs.js.map
@@ -2,9 +2,9 @@
2
2
 
3
3
  var configLoader = require('@backstage/config-loader');
4
4
  var config = require('@backstage/config');
5
- var index = require('./index-4a52b979.cjs.js');
5
+ var index = require('./index-a0c84dfe.cjs.js');
6
6
  var getPackages = require('@manypkg/get-packages');
7
- var PackageGraph = require('./PackageGraph-cbbcb60d.cjs.js');
7
+ var PackageGraph = require('./PackageGraph-c010b470.cjs.js');
8
8
 
9
9
  function isValidUrl(url) {
10
10
  try {
@@ -82,4 +82,4 @@ async function loadCliConfig(options) {
82
82
  }
83
83
 
84
84
  exports.loadCliConfig = loadCliConfig;
85
- //# sourceMappingURL=config-b04e9537.cjs.js.map
85
+ //# sourceMappingURL=config-372b1847.cjs.js.map
@@ -6,9 +6,9 @@ var path = require('path');
6
6
  var os = require('os');
7
7
  var tar = require('tar');
8
8
  var partition = require('lodash/partition');
9
- var index = require('./index-4a52b979.cjs.js');
10
- var run = require('./run-20edcac9.cjs.js');
11
- var PackageGraph = require('./PackageGraph-cbbcb60d.cjs.js');
9
+ var index = require('./index-a0c84dfe.cjs.js');
10
+ var run = require('./run-4d88b636.cjs.js');
11
+ var PackageGraph = require('./PackageGraph-c010b470.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');
@@ -21,7 +21,7 @@ var yaml = require('@rollup/plugin-yaml');
21
21
  var rollupPluginutils = require('rollup-pluginutils');
22
22
  var svgrTemplate = require('./svgrTemplate-550efce6.cjs.js');
23
23
  var parallel = require('./parallel-a8f6219c.cjs.js');
24
- var packageRoles = require('./packageRoles-1f3cfecc.cjs.js');
24
+ var packageRoles = require('./packageRoles-fe1041b2.cjs.js');
25
25
  var npmPackList = require('npm-packlist');
26
26
 
27
27
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -646,7 +646,7 @@ async function createDistWorkspace(packageNames, options = {}) {
646
646
  const skeletonFiles = targets.map((target) => {
647
647
  const dir = path.relative(index.paths.targetRoot, target.dir);
648
648
  return path.join(dir, "package.json");
649
- });
649
+ }).sort();
650
650
  await tar__default["default"].create(
651
651
  {
652
652
  file: path.resolve(targetDir, options.skeleton),
@@ -736,4 +736,4 @@ exports.buildPackage = buildPackage;
736
736
  exports.buildPackages = buildPackages;
737
737
  exports.createDistWorkspace = createDistWorkspace;
738
738
  exports.getOutputsForRole = getOutputsForRole;
739
- //# sourceMappingURL=createDistWorkspace-ee244c42.cjs.js.map
739
+ //# sourceMappingURL=createDistWorkspace-0d95621f.cjs.js.map
@@ -10,13 +10,13 @@ var camelCase = require('lodash/camelCase');
10
10
  var upperFirst = require('lodash/upperFirst');
11
11
  var os = require('os');
12
12
  var errors = require('@backstage/errors');
13
- var tasks = require('./tasks-93484977.cjs.js');
14
- var index = require('./index-4a52b979.cjs.js');
15
- var Lockfile = require('./Lockfile-72b7072e.cjs.js');
13
+ var tasks = require('./tasks-6a14164e.cjs.js');
14
+ var index = require('./index-a0c84dfe.cjs.js');
15
+ var Lockfile = require('./Lockfile-6785964d.cjs.js');
16
16
  require('minimatch');
17
17
  require('@manypkg/get-packages');
18
18
  require('./yarn-6cd89e16.cjs.js');
19
- require('./run-20edcac9.cjs.js');
19
+ require('./run-4d88b636.cjs.js');
20
20
  require('handlebars');
21
21
  require('ora');
22
22
  require('recursive-readdir');
@@ -275,4 +275,4 @@ exports.addPluginExtensionToApp = addPluginExtensionToApp;
275
275
  exports.capitalize = capitalize;
276
276
  exports["default"] = createPlugin;
277
277
  exports.movePlugin = movePlugin;
278
- //# sourceMappingURL=createPlugin-38bde20d.cjs.js.map
278
+ //# sourceMappingURL=createPlugin-3ba45c6e.cjs.js.map
@@ -7,7 +7,7 @@ var path = require('path');
7
7
  var inquirer = require('inquirer');
8
8
  var handlebars = require('handlebars');
9
9
  var recursive = require('recursive-readdir');
10
- var index = require('./index-4a52b979.cjs.js');
10
+ var index = require('./index-a0c84dfe.cjs.js');
11
11
  require('commander');
12
12
  require('semver');
13
13
  require('@backstage/cli-common');
@@ -432,4 +432,4 @@ async function readPluginData() {
432
432
  }
433
433
 
434
434
  exports["default"] = diff;
435
- //# sourceMappingURL=diff-106d4724.cjs.js.map
435
+ //# sourceMappingURL=diff-6f41d16d.cjs.js.map
@@ -2,9 +2,9 @@
2
2
 
3
3
  var configLoader = require('@backstage/config-loader');
4
4
  var openBrowser = require('react-dev-utils/openBrowser');
5
- var config = require('./config-b04e9537.cjs.js');
5
+ var config = require('./config-372b1847.cjs.js');
6
6
  require('@backstage/config');
7
- require('./index-4a52b979.cjs.js');
7
+ require('./index-a0c84dfe.cjs.js');
8
8
  require('commander');
9
9
  require('chalk');
10
10
  require('fs-extra');
@@ -12,7 +12,7 @@ require('semver');
12
12
  require('@backstage/cli-common');
13
13
  require('@backstage/errors');
14
14
  require('@manypkg/get-packages');
15
- require('./PackageGraph-cbbcb60d.cjs.js');
15
+ require('./PackageGraph-c010b470.cjs.js');
16
16
  require('path');
17
17
  require('child_process');
18
18
  require('util');
@@ -37,4 +37,4 @@ var docs = async (opts) => {
37
37
  };
38
38
 
39
39
  exports["default"] = docs;
40
- //# sourceMappingURL=docs-b4ec9616.cjs.js.map
40
+ //# sourceMappingURL=docs-1fc5df4c.cjs.js.map
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-4a52b979.cjs.js');
3
+ var index = require('./index-a0c84dfe.cjs.js');
4
4
  var eslint = require('eslint');
5
5
  var path = require('path');
6
6
  var fs = require('fs-extra');
7
7
  var cliCommon = require('@backstage/cli-common');
8
- var PackageGraph = require('./PackageGraph-cbbcb60d.cjs.js');
8
+ var PackageGraph = require('./PackageGraph-c010b470.cjs.js');
9
9
  require('commander');
10
10
  require('chalk');
11
11
  require('semver');
@@ -123,4 +123,4 @@ async function command() {
123
123
  }
124
124
 
125
125
  exports.command = command;
126
- //# sourceMappingURL=fix-2e7bcb7b.cjs.js.map
126
+ //# sourceMappingURL=fix-b1264da8.cjs.js.map