@backstage/cli 0.35.3-next.0 → 0.35.4-next.1

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 CHANGED
@@ -1,5 +1,14 @@
1
1
  # @backstage/cli
2
2
 
3
+ ## 0.35.4-next.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 5e3ef57: Added support for the new `peerModules` metadata field in `package.json`. This field allows plugin packages to declare modules that should be installed alongside them for cross-plugin integrations. The field is validated by `backstage-cli repo fix --publish`.
8
+ - Updated dependencies
9
+ - @backstage/integration@1.20.0-next.1
10
+ - @backstage/cli-node@0.2.18-next.1
11
+
3
12
  ## 0.35.3-next.0
4
13
 
5
14
  ### Patch Changes
@@ -318,6 +318,38 @@ function fixPluginPackages(pkg, repoPackages) {
318
318
  }
319
319
  }
320
320
  }
321
+ function fixPeerModules(pkg) {
322
+ const pkgBackstage = pkg.packageJson.backstage;
323
+ const role = pkgBackstage?.role;
324
+ if (!role) {
325
+ return;
326
+ }
327
+ const peerModules = pkgBackstage.peerModules;
328
+ if (peerModules === void 0) {
329
+ return;
330
+ }
331
+ const packagePath = path.relative(
332
+ paths.paths.targetRoot,
333
+ path.resolve(pkg.dir, "package.json")
334
+ );
335
+ if (role !== "backend-plugin" && role !== "frontend-plugin") {
336
+ throw new Error(
337
+ `The 'backstage.peerModules' field in "${pkg.packageJson.name}" can only be used on plugin packages (backend-plugin or frontend-plugin), but package has role '${role}' in "${packagePath}"`
338
+ );
339
+ }
340
+ if (!Array.isArray(peerModules)) {
341
+ throw new Error(
342
+ `Invalid 'backstage.peerModules' field in "${pkg.packageJson.name}", must be an array of package names in "${packagePath}"`
343
+ );
344
+ }
345
+ for (const entry of peerModules) {
346
+ if (typeof entry !== "string" || entry.length === 0) {
347
+ throw new Error(
348
+ `Invalid entry in 'backstage.peerModules' field in "${pkg.packageJson.name}", all entries must be non-empty package name strings in "${packagePath}"`
349
+ );
350
+ }
351
+ }
352
+ }
321
353
  async function command(opts) {
322
354
  const packages = await readFixablePackages();
323
355
  const fixRepositoryField = createRepositoryFieldFixer();
@@ -327,6 +359,7 @@ async function command(opts) {
327
359
  fixRepositoryField,
328
360
  fixPluginId,
329
361
  fixPluginPackages,
362
+ fixPeerModules,
330
363
  // Run the publish preflight check too, to make sure we don't uncover errors during publishing
331
364
  publishing.publishPreflightCheck
332
365
  );
@@ -348,6 +381,7 @@ async function command(opts) {
348
381
  exports.command = command;
349
382
  exports.createRepositoryFieldFixer = createRepositoryFieldFixer;
350
383
  exports.fixPackageExports = fixPackageExports;
384
+ exports.fixPeerModules = fixPeerModules;
351
385
  exports.fixPluginId = fixPluginId;
352
386
  exports.fixPluginPackages = fixPluginPackages;
353
387
  exports.fixSideEffects = fixSideEffects;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.15.1-next.0";
3
+ var version = "0.15.2-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "1.7.0-next.0";
3
+ var version = "1.7.0-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "1.10.4-next.0";
3
+ var version = "1.10.5-next.0";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.35.3-next.0";
3
+ var version = "0.35.4-next.1";
4
4
  var dependencies = {
5
5
  "@backstage/catalog-model": "workspace:^",
6
6
  "@backstage/cli-common": "workspace:^",
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "1.19.4-next.0";
3
+ var version = "1.19.5-next.0";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.18.6-next.0";
3
+ var version = "0.18.7-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "1.12.2-next.0";
3
+ var version = "1.12.3-next.0";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "1.1.20-next.0";
3
+ var version = "1.1.20-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.3.6-next.0";
3
+ var version = "0.4.0-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.14.0-next.0";
3
+ var version = "0.14.0-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.4.5-next.0";
3
+ var version = "0.4.6-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "1.7.15-next.0";
3
+ var version = "1.7.15-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.7.1";
3
+ var version = "0.7.2-next.0";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "0.12.4-next.0";
3
+ var version = "0.12.5-next.1";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.cjs.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/cli",
3
- "version": "0.35.3-next.0",
3
+ "version": "0.35.4-next.1",
4
4
  "description": "CLI for developing Backstage plugins and apps",
5
5
  "backstage": {
6
6
  "role": "cli"
@@ -49,12 +49,12 @@
49
49
  "dependencies": {
50
50
  "@backstage/catalog-model": "1.7.6",
51
51
  "@backstage/cli-common": "0.1.18-next.0",
52
- "@backstage/cli-node": "0.2.17-next.0",
52
+ "@backstage/cli-node": "0.2.18-next.1",
53
53
  "@backstage/config": "1.3.6",
54
54
  "@backstage/config-loader": "1.10.8-next.0",
55
55
  "@backstage/errors": "1.2.7",
56
56
  "@backstage/eslint-plugin": "0.2.1-next.0",
57
- "@backstage/integration": "1.19.3-next.0",
57
+ "@backstage/integration": "1.20.0-next.1",
58
58
  "@backstage/release-manifests": "0.0.13",
59
59
  "@backstage/types": "1.2.2",
60
60
  "@manypkg/get-packages": "^1.1.3",
@@ -146,22 +146,22 @@
146
146
  "zod-validation-error": "^4.0.2"
147
147
  },
148
148
  "devDependencies": {
149
- "@backstage/backend-plugin-api": "1.7.0-next.0",
150
- "@backstage/backend-test-utils": "1.10.4-next.0",
149
+ "@backstage/backend-plugin-api": "1.7.0-next.1",
150
+ "@backstage/backend-test-utils": "1.10.5-next.0",
151
151
  "@backstage/catalog-client": "1.12.1",
152
152
  "@backstage/config": "1.3.6",
153
- "@backstage/core-app-api": "1.19.4-next.0",
154
- "@backstage/core-components": "0.18.6-next.0",
155
- "@backstage/core-plugin-api": "1.12.2-next.0",
156
- "@backstage/dev-utils": "1.1.20-next.0",
153
+ "@backstage/core-app-api": "1.19.5-next.0",
154
+ "@backstage/core-components": "0.18.7-next.1",
155
+ "@backstage/core-plugin-api": "1.12.3-next.0",
156
+ "@backstage/dev-utils": "1.1.20-next.1",
157
157
  "@backstage/errors": "1.2.7",
158
158
  "@backstage/plugin-auth-backend": "0.26.1-next.0",
159
159
  "@backstage/plugin-auth-backend-module-guest-provider": "0.2.16-next.0",
160
160
  "@backstage/plugin-catalog-node": "1.21.0-next.0",
161
- "@backstage/plugin-scaffolder-node": "0.12.4-next.0",
161
+ "@backstage/plugin-scaffolder-node": "0.12.5-next.1",
162
162
  "@backstage/plugin-scaffolder-node-test-utils": "0.3.8-next.0",
163
- "@backstage/test-utils": "1.7.15-next.0",
164
- "@backstage/theme": "0.7.1",
163
+ "@backstage/test-utils": "1.7.15-next.1",
164
+ "@backstage/theme": "0.7.2-next.0",
165
165
  "@jest/environment-jsdom-abstract": "^30.0.0",
166
166
  "@pmmmwh/react-refresh-webpack-plugin": "^0.6.0",
167
167
  "@types/cross-spawn": "^6.0.2",