@build-script/package-tools 0.0.4 → 0.0.5
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/lib/command-file-map.generated.d.ts +2 -1
- package/lib/command-file-map.generated.d.ts.map +1 -1
- package/lib/command-file-map.generated.js +2 -1
- package/lib/command-file-map.generated.js.map +1 -1
- package/lib/commands/detect-package-change.d.ts.map +1 -1
- package/lib/commands/detect-package-change.js +3 -1
- package/lib/commands/detect-package-change.js.map +1 -1
- package/lib/commands/monorepo-bump-version.d.ts.map +1 -1
- package/lib/commands/monorepo-bump-version.js +13 -23
- package/lib/commands/monorepo-bump-version.js.map +1 -1
- package/lib/commands/monorepo-cnpm-sync.d.ts.map +1 -1
- package/lib/commands/monorepo-cnpm-sync.js +12 -2
- package/lib/commands/monorepo-cnpm-sync.js.map +1 -1
- package/lib/commands/monorepo-invalid.d.ts.map +1 -1
- package/lib/commands/monorepo-invalid.js +4 -2
- package/lib/commands/monorepo-invalid.js.map +1 -1
- package/lib/commands/monorepo-link-binaries.d.ts +22 -0
- package/lib/commands/monorepo-link-binaries.d.ts.map +1 -0
- package/lib/commands/monorepo-link-binaries.js +146 -0
- package/lib/commands/monorepo-link-binaries.js.map +1 -0
- package/lib/commands/monorepo-publish.d.ts.map +1 -1
- package/lib/commands/monorepo-publish.js +32 -35
- package/lib/commands/monorepo-publish.js.map +1 -1
- package/lib/commands/monorepo-tsconfig.d.ts.map +1 -1
- package/lib/commands/monorepo-tsconfig.js.map +1 -1
- package/lib/commands/monorepo-upgrade.d.ts.map +1 -1
- package/lib/commands/monorepo-upgrade.js +4 -2
- package/lib/commands/monorepo-upgrade.js.map +1 -1
- package/lib/commands/run-if-version-mismatch.d.ts.map +1 -1
- package/lib/commands/run-if-version-mismatch.js +6 -4
- package/lib/commands/run-if-version-mismatch.js.map +1 -1
- package/lib/commands/test.d.ts.map +1 -1
- package/lib/commands/test.js +3 -1
- package/lib/commands/test.js.map +1 -1
- package/lib/common/cache/native.npm.js +2 -2
- package/lib/common/cache/native.npm.js.map +1 -1
- package/lib/common/functions/cli.d.ts +3 -0
- package/lib/common/functions/cli.d.ts.map +1 -1
- package/lib/common/functions/cli.js.map +1 -1
- package/lib/common/git/git.d.ts.map +1 -1
- package/lib/common/git/git.js +3 -3
- package/lib/common/git/git.js.map +1 -1
- package/lib/common/package-manager/driver.abstract.d.ts +3 -3
- package/lib/common/package-manager/driver.abstract.d.ts.map +1 -1
- package/lib/common/package-manager/driver.abstract.js +2 -4
- package/lib/common/package-manager/driver.abstract.js.map +1 -1
- package/lib/common/package-manager/driver.pnpm.d.ts.map +1 -1
- package/lib/common/package-manager/driver.pnpm.js +6 -3
- package/lib/common/package-manager/driver.pnpm.js.map +1 -1
- package/lib/common/package-manager/functions.d.ts.map +1 -1
- package/lib/common/package-manager/functions.js.map +1 -1
- package/lib/common/package-manager/package-manager.d.ts +2 -2
- package/lib/common/package-manager/package-manager.d.ts.map +1 -1
- package/lib/common/package-manager/package-manager.js +0 -3
- package/lib/common/package-manager/package-manager.js.map +1 -1
- package/lib/common/package-manager/proxy.js +1 -1
- package/lib/common/package-manager/proxy.js.map +1 -1
- package/lib/common/shared-jobs/clear-cache.d.ts +3 -0
- package/lib/common/shared-jobs/clear-cache.d.ts.map +1 -0
- package/lib/common/shared-jobs/clear-cache.js +14 -0
- package/lib/common/shared-jobs/clear-cache.js.map +1 -0
- package/lib/common/shared-jobs/cnpm-sync.d.ts +0 -2
- package/lib/common/shared-jobs/cnpm-sync.d.ts.map +1 -1
- package/lib/common/shared-jobs/cnpm-sync.js +1 -22
- package/lib/common/shared-jobs/cnpm-sync.js.map +1 -1
- package/lib/common/taball/decompress.d.ts.map +1 -1
- package/lib/common/taball/decompress.js +4 -1
- package/lib/common/taball/decompress.js.map +1 -1
- package/lib/common/taball/file-download.js +1 -6
- package/lib/common/taball/file-download.js.map +1 -1
- package/lib/common/temp-work-folder.d.ts +2 -2
- package/lib/common/temp-work-folder.d.ts.map +1 -1
- package/lib/common/temp-work-folder.js.map +1 -1
- package/lib/common/version.generated.d.ts +2 -2
- package/lib/common/version.generated.js +2 -2
- package/lib/main.js +1 -1
- package/lib/main.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -12
- package/src/command-file-map.generated.ts +2 -1
- package/src/command-file-map.generator.ts +2 -2
- package/src/commands/detect-package-change.ts +3 -1
- package/src/commands/monorepo-bump-version.ts +17 -28
- package/src/commands/monorepo-cnpm-sync.ts +14 -2
- package/src/commands/monorepo-invalid.ts +4 -2
- package/src/commands/monorepo-link-binaries.ts +168 -0
- package/src/commands/monorepo-publish.ts +39 -48
- package/src/commands/monorepo-tsconfig.ts +1 -2
- package/src/commands/monorepo-upgrade.ts +4 -3
- package/src/commands/run-if-version-mismatch.ts +7 -7
- package/src/commands/test.ts +3 -1
- package/src/common/cache/native.npm.ts +2 -2
- package/src/common/functions/cli.ts +3 -0
- package/src/common/git/git.ts +4 -9
- package/src/common/package-manager/driver.abstract.ts +4 -7
- package/src/common/package-manager/driver.pnpm.ts +8 -3
- package/src/common/package-manager/functions.ts +2 -12
- package/src/common/package-manager/package-manager.ts +3 -13
- package/src/common/package-manager/proxy.ts +1 -1
- package/src/common/shared-jobs/clear-cache.ts +14 -0
- package/src/common/shared-jobs/cnpm-sync.ts +1 -25
- package/src/common/taball/decompress.ts +3 -1
- package/src/common/taball/file-download.ts +3 -14
- package/src/common/temp-work-folder.ts +2 -2
- package/src/common/version.generated.ts +2 -2
- package/src/common/version.generator.ts +1 -1
- package/src/main.ts +2 -14
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* GENERATED FILE, DO NOT MODIFY
|
|
3
3
|
* 这是生成的文件,千万不要修改
|
|
4
4
|
*
|
|
5
|
-
* @build-script/codegen 1.0.
|
|
5
|
+
* @build-script/codegen 1.0.5 - The Simple Code Generater
|
|
6
6
|
* https://github.com/GongT/baobao
|
|
7
7
|
*
|
|
8
8
|
******************************************************************************/
|
|
@@ -11,6 +11,7 @@ declare const _default: {
|
|
|
11
11
|
readonly "monorepo-bump-version": "./commands/monorepo-bump-version.js";
|
|
12
12
|
readonly "monorepo-cnpm-sync": "./commands/monorepo-cnpm-sync.js";
|
|
13
13
|
readonly "monorepo-invalid": "./commands/monorepo-invalid.js";
|
|
14
|
+
readonly "monorepo-link-binaries": "./commands/monorepo-link-binaries.js";
|
|
14
15
|
readonly "monorepo-list": "./commands/monorepo-list.js";
|
|
15
16
|
readonly "monorepo-publish": "./commands/monorepo-publish.js";
|
|
16
17
|
readonly "monorepo-tsconfig": "./commands/monorepo-tsconfig.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-file-map.generated.d.ts","sourceRoot":"","sources":["../src/command-file-map.generated.ts"],"names":[],"mappings":"AAKA;;;;;;;gFAOgF
|
|
1
|
+
{"version":3,"file":"command-file-map.generated.d.ts","sourceRoot":"","sources":["../src/command-file-map.generated.ts"],"names":[],"mappings":"AAKA;;;;;;;gFAOgF;;;;;;;;;;;;;;;AAEhF,wBAaW"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* GENERATED FILE, DO NOT MODIFY
|
|
8
8
|
* 这是生成的文件,千万不要修改
|
|
9
9
|
*
|
|
10
|
-
* @build-script/codegen 1.0.
|
|
10
|
+
* @build-script/codegen 1.0.5 - The Simple Code Generater
|
|
11
11
|
* https://github.com/GongT/baobao
|
|
12
12
|
*
|
|
13
13
|
******************************************************************************/
|
|
@@ -16,6 +16,7 @@ export default {
|
|
|
16
16
|
"monorepo-bump-version": "./commands/monorepo-bump-version.js",
|
|
17
17
|
"monorepo-cnpm-sync": "./commands/monorepo-cnpm-sync.js",
|
|
18
18
|
"monorepo-invalid": "./commands/monorepo-invalid.js",
|
|
19
|
+
"monorepo-link-binaries": "./commands/monorepo-link-binaries.js",
|
|
19
20
|
"monorepo-list": "./commands/monorepo-list.js",
|
|
20
21
|
"monorepo-publish": "./commands/monorepo-publish.js",
|
|
21
22
|
"monorepo-tsconfig": "./commands/monorepo-tsconfig.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-file-map.generated.js","sourceRoot":"","sources":["../src/command-file-map.generated.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,aAAa;AACb,wBAAwB;AACxB,0BAA0B;AAC1B,0BAA0B;AAC1B;;;;;;;gFAOgF;AAEhF,eAAe;IACd,uBAAuB,EAAE,qCAAqC;IAC9D,uBAAuB,EAAE,qCAAqC;IAC9D,oBAAoB,EAAE,kCAAkC;IACxD,kBAAkB,EAAE,gCAAgC;IACpD,eAAe,EAAE,6BAA6B;IAC9C,kBAAkB,EAAE,gCAAgC;IACpD,mBAAmB,EAAE,iCAAiC;IACtD,kBAAkB,EAAE,gCAAgC;IACpD,yBAAyB,EAAE,uCAAuC;IAClE,gBAAgB,EAAE,8BAA8B;IAChD,MAAM,EAAE,oBAAoB;CACnB,CAAC"}
|
|
1
|
+
{"version":3,"file":"command-file-map.generated.js","sourceRoot":"","sources":["../src/command-file-map.generated.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,aAAa;AACb,wBAAwB;AACxB,0BAA0B;AAC1B,0BAA0B;AAC1B;;;;;;;gFAOgF;AAEhF,eAAe;IACd,uBAAuB,EAAE,qCAAqC;IAC9D,uBAAuB,EAAE,qCAAqC;IAC9D,oBAAoB,EAAE,kCAAkC;IACxD,kBAAkB,EAAE,gCAAgC;IACpD,wBAAwB,EAAE,sCAAsC;IAChE,eAAe,EAAE,6BAA6B;IAC9C,kBAAkB,EAAE,gCAAgC;IACpD,mBAAmB,EAAE,iCAAiC;IACtD,kBAAkB,EAAE,gCAAgC;IACpD,yBAAyB,EAAE,uCAAuC;IAClE,gBAAgB,EAAE,8BAA8B;IAChD,MAAM,EAAE,oBAAoB;CACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect-package-change.d.ts","sourceRoot":"","sources":["../../src/commands/detect-package-change.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"detect-package-change.d.ts","sourceRoot":"","sources":["../../src/commands/detect-package-change.ts"],"names":[],"mappings":"AAGA,OAAO,EAAQ,aAAa,EAAuB,MAAM,4BAA4B,CAAC;AAQtF,qBAAa,OAAQ,SAAQ,aAAa;IACzC,UAAmB,MAAM,SAA2C;IACpE,UAAmB,YAAY,SAAiC;IAChE,UAAmB,KAAK,SAAM;IAC9B,UAAmB,UAAU;;;;;MAE3B;CACF;AAED,wBAAsB,IAAI,oBAuBzB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createWorkspaceOrPackage } from '@build-script/monorepo-lib';
|
|
1
2
|
import { logger } from '@idlebox/logger';
|
|
2
3
|
import { printLine } from '@idlebox/node';
|
|
3
4
|
import { argv, CommandDefine, isJsonOutput, pArgS } from '../common/functions/cli.js';
|
|
@@ -16,7 +17,8 @@ export class Command extends CommandDefine {
|
|
|
16
17
|
}
|
|
17
18
|
export async function main() {
|
|
18
19
|
const autoInc = argv.flag('--bump');
|
|
19
|
-
const
|
|
20
|
+
const workspace = await createWorkspaceOrPackage();
|
|
21
|
+
const pm = await createPackageManager(PackageManagerUsageKind.Read, workspace);
|
|
20
22
|
const pkgJson = await pm.loadPackageJson();
|
|
21
23
|
const { changedFiles, hasChange, remoteVersion } = await executeChangeDetect(pm, {});
|
|
22
24
|
if (autoInc) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect-package-change.js","sourceRoot":"","sources":["../../src/commands/detect-package-change.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,GAAG,CAAC;AAEzC,MAAM,OAAO,OAAQ,SAAQ,aAAa;IACtB,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IACjD,YAAY,GAAG,6BAA6B,CAAC;IAC7C,KAAK,GAAG,EAAE,CAAC;IACX,UAAU,GAAG;QAC/B,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,iCAAiC,EAAE;KACxE,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpC,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"detect-package-change.js","sourceRoot":"","sources":["../../src/commands/detect-package-change.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,GAAG,CAAC;AAEzC,MAAM,OAAO,OAAQ,SAAQ,aAAa;IACtB,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IACjD,YAAY,GAAG,6BAA6B,CAAC;IAC7C,KAAK,GAAG,EAAE,CAAC;IACX,UAAU,GAAG;QAC/B,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,iCAAiC,EAAE;KACxE,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpC,MAAM,SAAS,GAAG,MAAM,wBAAwB,EAAE,CAAC;IACnD,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE/E,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,eAAe,EAAE,CAAC;IAC3C,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,mBAAmB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAErF,IAAI,OAAO,EAAE,CAAC;QACb,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC3C,CAAC;YACD,MAAM,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC;IACF,CAAC;SAAM,CAAC;QACP,WAAW,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC;AAED,SAAS,WAAW,CAAC,YAAsB,EAAE,OAAgB;IAC5D,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACP,SAAS,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1C,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC7B,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-bump-version.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-bump-version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"monorepo-bump-version.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-bump-version.ts"],"names":[],"mappings":"AAKA,OAAO,EAAQ,aAAa,EAAO,MAAM,4BAA4B,CAAC;AAMtE,qBAAa,OAAQ,SAAQ,aAAa;IACzC,UAAmB,MAAM,SAAM;IAC/B,UAAmB,YAAY,SAA+C;IAC9E,UAAmB,KAAK,SAAM;IAC9B,UAAmB,UAAU;;;;;;;;;;;;;;;;;;;;;MAM3B;CACF;AAmGD,wBAAsB,IAAI,kBAoCzB"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { createWorkspace } from '@build-script/monorepo-lib';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { humanDate } from '@idlebox/common';
|
|
3
|
+
import { Job, JobGraphBuilder } from '@idlebox/dependency-graph';
|
|
4
4
|
import { logger } from '@idlebox/logger';
|
|
5
5
|
import { makeRe } from 'minimatch';
|
|
6
|
-
import { inspect } from 'node:util';
|
|
7
6
|
import { argv, CommandDefine, CSI } from '../common/functions/cli.js';
|
|
8
7
|
import { PackageManagerUsageKind } from '../common/package-manager/driver.abstract.js';
|
|
9
8
|
import { increaseVersion } from '../common/package-manager/package-json.js';
|
|
@@ -21,23 +20,18 @@ export class Command extends CommandDefine {
|
|
|
21
20
|
'--always': { flag: false, description: '强制执行,即使没有检测到变化' },
|
|
22
21
|
};
|
|
23
22
|
}
|
|
24
|
-
class BumpVersionJob {
|
|
25
|
-
|
|
23
|
+
class BumpVersionJob extends Job {
|
|
24
|
+
payload;
|
|
26
25
|
project;
|
|
27
26
|
workspace;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
onFailed = this._onFailed.event;
|
|
32
|
-
_onRunning = new Emitter();
|
|
33
|
-
onRunning = this._onRunning.event;
|
|
34
|
-
constructor(state, project, workspace) {
|
|
35
|
-
this.state = state;
|
|
27
|
+
constructor(name, deps, payload, project, workspace) {
|
|
28
|
+
super(name, deps);
|
|
29
|
+
this.payload = payload;
|
|
36
30
|
this.project = project;
|
|
37
31
|
this.workspace = workspace;
|
|
38
32
|
}
|
|
39
|
-
async
|
|
40
|
-
const { index, length, options, changedPackages } = this.
|
|
33
|
+
async _execute() {
|
|
34
|
+
const { index, length, options, changedPackages } = this.payload;
|
|
41
35
|
const w = length.toFixed(0).length;
|
|
42
36
|
console.log(`📦 [${(index + 1).toFixed(0).padStart(w)}/${length}] ${this.project.name}`);
|
|
43
37
|
if (this.project.packageJson.private && !options.allowPrivate) {
|
|
@@ -75,16 +69,12 @@ class BumpVersionJob {
|
|
|
75
69
|
}
|
|
76
70
|
}
|
|
77
71
|
}
|
|
78
|
-
[inspect.custom]() {
|
|
79
|
-
// TODO
|
|
80
|
-
return '~~~~~~~~';
|
|
81
|
-
}
|
|
82
72
|
}
|
|
83
73
|
function options() {
|
|
84
74
|
const excludes = argv.multiple('--exclude');
|
|
85
75
|
let excludeReg;
|
|
86
76
|
if (excludes.length > 0) {
|
|
87
|
-
|
|
77
|
+
const regTxt = [];
|
|
88
78
|
for (const exclude of excludes) {
|
|
89
79
|
const match = makeRe(exclude, { platform: 'linux' });
|
|
90
80
|
if (!match) {
|
|
@@ -116,14 +106,14 @@ export async function main() {
|
|
|
116
106
|
const workspace = await createWorkspace();
|
|
117
107
|
await workspace.decoupleDependencies();
|
|
118
108
|
const projects = await workspace.listPackages();
|
|
119
|
-
const graph = new
|
|
109
|
+
const graph = new JobGraphBuilder(1, logger);
|
|
120
110
|
const opts = options();
|
|
121
111
|
const changedPackages = [];
|
|
122
112
|
let index = 0;
|
|
123
113
|
for (const project of projects) {
|
|
124
114
|
if (!project.packageJson.name)
|
|
125
115
|
continue;
|
|
126
|
-
graph.addNode(project.packageJson.name, [],
|
|
116
|
+
graph.addNode(new BumpVersionJob(project.packageJson.name, [], {
|
|
127
117
|
index,
|
|
128
118
|
length: projects.length,
|
|
129
119
|
options: opts,
|
|
@@ -131,7 +121,7 @@ export async function main() {
|
|
|
131
121
|
}, project, workspace));
|
|
132
122
|
index++;
|
|
133
123
|
}
|
|
134
|
-
await graph.startup();
|
|
124
|
+
await graph.finalize().startup();
|
|
135
125
|
console.log(`🎉 所有任务完成,共修改了 ${changedPackages.length} 个包`);
|
|
136
126
|
}
|
|
137
127
|
//# sourceMappingURL=monorepo-bump-version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-bump-version.js","sourceRoot":"","sources":["../../src/commands/monorepo-bump-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA6C,MAAM,4BAA4B,CAAC;AACxG,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"monorepo-bump-version.js","sourceRoot":"","sources":["../../src/commands/monorepo-bump-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA6C,MAAM,4BAA4B,CAAC;AACxG,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,MAAM,OAAO,OAAQ,SAAQ,aAAa;IACtB,MAAM,GAAG,EAAE,CAAC;IACZ,YAAY,GAAG,2CAA2C,CAAC;IAC3D,KAAK,GAAG,EAAE,CAAC;IACX,UAAU,GAAG;QAC/B,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE;QAC7D,iBAAiB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,mBAAmB,EAAE;QACnE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE;QACnD,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE;QACxD,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE;KAC1D,CAAC;CACF;AASD,MAAM,cAAe,SAAQ,GAAS;IAInB;IACA;IACA;IALlB,YACC,IAAY,EACZ,IAAuB,EACN,OAAiB,EACjB,OAAqB,EACrB,SAA4B;QAE7C,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAJD,YAAO,GAAP,OAAO,CAAU;QACjB,YAAO,GAAP,OAAO,CAAc;QACrB,cAAS,GAAT,SAAS,CAAmB;IAG9C,CAAC;IAEkB,KAAK,CAAC,QAAQ;QAChC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACjE,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACzF,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACjF,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAC1B,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAExC,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5G,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,eAAe,EAAE,CAAC;YAC/C,MAAM,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACP,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE7B,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,cAAc,GAAG,IAAI,CAAC,CAAC;YAE9C,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5G,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,mBAAmB,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;YAE3G,IAAI,CAAC,aAAa,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;oBAClD,MAAM,IAAI,KAAK,CAAC,sCAAsC,EAAE,CAAC,WAAW,eAAe,CAAC,CAAC;gBACtF,CAAC;YACF,CAAC;iBAAM,IAAI,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACxC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAExC,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,eAAe,EAAE,CAAC;gBAC/C,MAAM,eAAe,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,gBAAgB,GAAG,UAAU,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAClG,CAAC;QACF,CAAC;IACF,CAAC;CACD;AAED,SAAS,OAAO;IACf,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,UAA8B,CAAC;IACnC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QACD,UAAU,GAAG,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;IAC3D,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAEnD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEtD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAA,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACjD,CAAC;IAED,OAAO;QACN,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,YAAY;KAC1B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC;IAC1C,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;IAEhD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7C,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI;YAAE,SAAS;QAExC,KAAK,CAAC,OAAO,CACZ,IAAI,cAAc,CACjB,OAAO,CAAC,WAAW,CAAC,IAAI,EACxB,EAAE,EACF;YACC,KAAK;YACL,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,OAAO,EAAE,IAAI;YACb,eAAe;SACf,EACD,OAAO,EACP,SAAS,CACT,CACD,CAAC;QAEF,KAAK,EAAE,CAAC;IACT,CAAC;IAED,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;IAEjC,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC;AAC5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-cnpm-sync.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-cnpm-sync.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAkB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"monorepo-cnpm-sync.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-cnpm-sync.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAkB,MAAM,4BAA4B,CAAC;AAM3E,qBAAa,OAAQ,SAAQ,aAAa;IACzC,UAAmB,MAAM,SAAM;IAC/B,UAAmB,YAAY,SAAmB;IAClD,UAAmB,KAAK,SAA6B;CACrD;AAED,wBAAsB,IAAI,kBAgBzB"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { createWorkspace } from '@build-script/monorepo-lib';
|
|
2
2
|
import { argv } from '@idlebox/args/default';
|
|
3
3
|
import { CommandDefine, isQuiet, pDesc } from '../common/functions/cli.js';
|
|
4
|
-
import {
|
|
4
|
+
import { PackageManagerUsageKind } from '../common/package-manager/driver.abstract.js';
|
|
5
|
+
import { createPackageManager } from '../common/package-manager/package-manager.js';
|
|
6
|
+
import { clearNpmMetaCache } from '../common/shared-jobs/clear-cache.js';
|
|
7
|
+
import { cnpmSyncNames } from '../common/shared-jobs/cnpm-sync.js';
|
|
5
8
|
export class Command extends CommandDefine {
|
|
6
9
|
_usage = '';
|
|
7
10
|
_description = '调用cnpm sync命令';
|
|
@@ -11,6 +14,13 @@ export async function main() {
|
|
|
11
14
|
const workspace = await createWorkspace();
|
|
12
15
|
const list = await workspace.listPackages();
|
|
13
16
|
const dry = argv.flag('--dry') > 0;
|
|
14
|
-
|
|
17
|
+
const names = list
|
|
18
|
+
.filter((e) => {
|
|
19
|
+
return !!e.packageJson.name && !e.packageJson.private;
|
|
20
|
+
})
|
|
21
|
+
.map((e) => e.packageJson.name);
|
|
22
|
+
await cnpmSyncNames(names, isQuiet, dry);
|
|
23
|
+
const pm = await createPackageManager(PackageManagerUsageKind.Read, workspace);
|
|
24
|
+
await clearNpmMetaCache(pm, names);
|
|
15
25
|
}
|
|
16
26
|
//# sourceMappingURL=monorepo-cnpm-sync.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-cnpm-sync.js","sourceRoot":"","sources":["../../src/commands/monorepo-cnpm-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"monorepo-cnpm-sync.js","sourceRoot":"","sources":["../../src/commands/monorepo-cnpm-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,MAAM,OAAO,OAAQ,SAAQ,aAAa;IACtB,MAAM,GAAG,EAAE,CAAC;IACZ,YAAY,GAAG,eAAe,CAAC;IAC/B,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;CACrD;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;IAE5C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEnC,MAAM,KAAK,GAAG,IAAI;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACb,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;IACvD,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEjC,MAAM,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IAEzC,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/E,MAAM,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-invalid.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-invalid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"monorepo-invalid.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-invalid.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAI3D,qBAAa,OAAQ,SAAQ,aAAa;IACzC,UAAmB,MAAM,SAAM;IAC/B,UAAmB,YAAY,SAAsC;IACrE,UAAmB,KAAK,SAAM;CAC9B;AAED,wBAAsB,IAAI,kBAWzB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createWorkspace } from '@build-script/monorepo-lib';
|
|
1
2
|
import { logger } from '@idlebox/logger';
|
|
2
3
|
import { CommandDefine } from '../common/functions/cli.js';
|
|
3
4
|
import { PackageManagerUsageKind } from '../common/package-manager/driver.abstract.js';
|
|
@@ -8,9 +9,10 @@ export class Command extends CommandDefine {
|
|
|
8
9
|
_help = '';
|
|
9
10
|
}
|
|
10
11
|
export async function main() {
|
|
11
|
-
const
|
|
12
|
+
const workspace = await createWorkspace();
|
|
13
|
+
const packageManager = await createPackageManager(PackageManagerUsageKind.Read, workspace);
|
|
12
14
|
const cache = await packageManager.createCacheHandler();
|
|
13
|
-
const list = await
|
|
15
|
+
const list = await workspace.listPackages();
|
|
14
16
|
logger.log('删除%d个项目在 %s 的npm缓存', list.length, cache.path);
|
|
15
17
|
for (const data of list) {
|
|
16
18
|
await cache.deleteMetadata(data.packageJson.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-invalid.js","sourceRoot":"","sources":["../../src/commands/monorepo-invalid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,MAAM,OAAO,OAAQ,SAAQ,aAAa;IACtB,MAAM,GAAG,EAAE,CAAC;IACZ,YAAY,GAAG,kCAAkC,CAAC;IAClD,KAAK,GAAG,EAAE,CAAC;CAC9B;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"monorepo-invalid.js","sourceRoot":"","sources":["../../src/commands/monorepo-invalid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,MAAM,OAAO,OAAQ,SAAQ,aAAa;IACtB,MAAM,GAAG,EAAE,CAAC;IACZ,YAAY,GAAG,kCAAkC,CAAC;IAClD,KAAK,GAAG,EAAE,CAAC;CAC9B;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3F,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,kBAAkB,EAAE,CAAC;IAExD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;IAE5C,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CommandDefine } from '../common/functions/cli.js';
|
|
2
|
+
export declare class Command extends CommandDefine {
|
|
3
|
+
protected _usage: string;
|
|
4
|
+
protected _description: string;
|
|
5
|
+
protected _help: string;
|
|
6
|
+
protected _arguments: {
|
|
7
|
+
'--from': {
|
|
8
|
+
flag: boolean;
|
|
9
|
+
description: string;
|
|
10
|
+
};
|
|
11
|
+
'--transparent': {
|
|
12
|
+
flag: boolean;
|
|
13
|
+
description: string;
|
|
14
|
+
};
|
|
15
|
+
'--recursive': {
|
|
16
|
+
flag: boolean;
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export declare function main(): Promise<void>;
|
|
22
|
+
//# sourceMappingURL=monorepo-link-binaries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monorepo-link-binaries.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-link-binaries.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAS,MAAM,4BAA4B,CAAC;AAElE,qBAAa,OAAQ,SAAQ,aAAa;IACzC,UAAmB,MAAM,SAAoD;IAC7E,UAAmB,YAAY,SAAqD;IACpF,UAAmB,KAAK,SAAgC;IACxD,UAAmB,UAAU;;;;;;;;;;;;;MAU3B;CACF;AAaD,wBAAsB,IAAI,kBAoDzB"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { createWorkspace } from '@build-script/monorepo-lib';
|
|
2
|
+
import { argv } from '@idlebox/args/default';
|
|
3
|
+
import { ensureLinkTargetSync } from '@idlebox/ensure-symlink';
|
|
4
|
+
import { logger } from '@idlebox/logger';
|
|
5
|
+
import { relativePath } from '@idlebox/node';
|
|
6
|
+
import { readFileSync } from 'node:fs';
|
|
7
|
+
import { basename, resolve } from 'node:path';
|
|
8
|
+
import { CommandDefine, pArgS } from '../common/functions/cli.js';
|
|
9
|
+
export class Command extends CommandDefine {
|
|
10
|
+
_usage = `${pArgS('--from=...')} ${pArgS('--recursive')}`;
|
|
11
|
+
_description = '将monorepo中每个项目的bins连接到当前项目的 ./node_modules/.bin';
|
|
12
|
+
_help = '存在bin同名时,monorepo项目优先于npm包';
|
|
13
|
+
_arguments = {
|
|
14
|
+
'--from': {
|
|
15
|
+
flag: false,
|
|
16
|
+
description: '将<value>视为各个项目的直接依赖 (必须是至少一个项目的依赖,否则找不到)',
|
|
17
|
+
},
|
|
18
|
+
'--transparent': {
|
|
19
|
+
flag: false,
|
|
20
|
+
description: '将<value>的所有直接依赖视为此项目的直接依赖',
|
|
21
|
+
},
|
|
22
|
+
'--recursive': { flag: true, description: '在每个项目中运行,而非当前项目' },
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export async function main() {
|
|
26
|
+
const recursiveMode = argv.flag('--recursive') > 0;
|
|
27
|
+
const workspace = await createWorkspace();
|
|
28
|
+
const localPackages = [];
|
|
29
|
+
const projectList = await workspace.listPackages();
|
|
30
|
+
for (const pkg of projectList) {
|
|
31
|
+
if (!pkg.packageJson.name)
|
|
32
|
+
continue;
|
|
33
|
+
localPackages.push(pkg.packageJson.name);
|
|
34
|
+
}
|
|
35
|
+
const additionalPackages = new Set(argv.multiple('--from'));
|
|
36
|
+
for (const projectName of argv.multiple('--transparent')) {
|
|
37
|
+
const proj = await workspace.getPackage(projectName);
|
|
38
|
+
if (!proj) {
|
|
39
|
+
throw new Error(`missing transparent project: ${projectName}`);
|
|
40
|
+
}
|
|
41
|
+
for (const item of depNames(proj.packageJson)) {
|
|
42
|
+
additionalPackages.add(item);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
for (const name of additionalPackages) {
|
|
46
|
+
if (await workspace.getPackage(name)) {
|
|
47
|
+
throw new Error('--from can not be a local package');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
const locals = await createBins(workspace, localPackages);
|
|
51
|
+
const globals = await createBins(workspace, [...additionalPackages]);
|
|
52
|
+
if (recursiveMode) {
|
|
53
|
+
for (const pkg of projectList) {
|
|
54
|
+
const current = await createBins(workspace, depNames(pkg.packageJson));
|
|
55
|
+
await execute({
|
|
56
|
+
deps: current,
|
|
57
|
+
globalDeps: globals,
|
|
58
|
+
monorepo: locals,
|
|
59
|
+
packageRoot: pkg.absolute,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
const pkg = await workspace.getNearestPackage(process.cwd());
|
|
65
|
+
const current = await createBins(workspace, depNames(pkg.packageJson));
|
|
66
|
+
await execute({
|
|
67
|
+
deps: current,
|
|
68
|
+
globalDeps: globals,
|
|
69
|
+
monorepo: locals,
|
|
70
|
+
packageRoot: pkg.absolute,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
async function execute(ctx) {
|
|
75
|
+
logger.log `linking binaries in project long<${ctx.packageRoot}>`;
|
|
76
|
+
const final = new Map();
|
|
77
|
+
for (const list of [ctx.globalDeps, ctx.deps, ctx.monorepo]) {
|
|
78
|
+
for (const bin of list) {
|
|
79
|
+
final.set(bin.name, bin.absolutePath);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
const dry = argv.flag('--dry') > 0;
|
|
83
|
+
const bindir = resolve(ctx.packageRoot, 'node_modules/.bin');
|
|
84
|
+
for (const [name, target] of final) {
|
|
85
|
+
const link = `${bindir}/${name}`;
|
|
86
|
+
const rel = relativePath(bindir, target);
|
|
87
|
+
if (dry) {
|
|
88
|
+
logger.success(`Would link ${link} -> ${rel}`);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
const ch = ensureLinkTargetSync(rel, link);
|
|
92
|
+
if (ch) {
|
|
93
|
+
logger.success `symlink: ${name} -> ${rel}`;
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
logger.debug `unchanged: ${name} -> ${rel}`;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
function depNames(pkgJson) {
|
|
102
|
+
const o = Object.assign({}, pkgJson.dependencies, pkgJson.devDependencies, pkgJson.optionalDependencies);
|
|
103
|
+
const r = [];
|
|
104
|
+
for (const [name, version] of Object.entries(o)) {
|
|
105
|
+
if (version.startsWith('workspace:')) {
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
r.push(name);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return r;
|
|
112
|
+
}
|
|
113
|
+
async function createBins(workspace, names) {
|
|
114
|
+
const bins = [];
|
|
115
|
+
const packageList = workspace.listPackages();
|
|
116
|
+
for (const want of names) {
|
|
117
|
+
for (const proj of await packageList) {
|
|
118
|
+
if (proj.name === want) {
|
|
119
|
+
makeBinMap(bins, proj.absolute, proj.packageJson);
|
|
120
|
+
}
|
|
121
|
+
const deps = depNames(proj.packageJson);
|
|
122
|
+
if (deps.includes(want)) {
|
|
123
|
+
const depRoot = resolve(proj.absolute, 'node_modules', want);
|
|
124
|
+
const pkgJson = JSON.parse(readFileSync(resolve(depRoot, 'package.json'), 'utf-8'));
|
|
125
|
+
makeBinMap(bins, depRoot, pkgJson);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return bins;
|
|
130
|
+
}
|
|
131
|
+
function makeBinMap(result, absolute, json) {
|
|
132
|
+
if (!json.bin)
|
|
133
|
+
return;
|
|
134
|
+
let bins = {};
|
|
135
|
+
if (typeof json.bin === 'string') {
|
|
136
|
+
bins[basename(json.name)] = json.bin;
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
bins = json.bin;
|
|
140
|
+
}
|
|
141
|
+
for (const [name, path] of Object.entries(bins)) {
|
|
142
|
+
const absolutePath = resolve(absolute, path);
|
|
143
|
+
result.push({ name, absolutePath });
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=monorepo-link-binaries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monorepo-link-binaries.js","sourceRoot":"","sources":["../../src/commands/monorepo-link-binaries.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo-publish.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-publish.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"monorepo-publish.d.ts","sourceRoot":"","sources":["../../src/commands/monorepo-publish.ts"],"names":[],"mappings":"AAOA,OAAO,EAAQ,aAAa,EAAc,MAAM,4BAA4B,CAAC;AAQ7E,qBAAa,OAAQ,SAAQ,aAAa;IACzC,UAAmB,MAAM,SAA2C;IACpE,UAAmB,YAAY,SAA6B;IAC5D,UAAmB,KAAK,SAAM;IAC9B,UAAmB,UAAU;;;;;;;;;;;;;MAI3B;CACF;AAqGD,wBAAsB,IAAI,kBAiHzB"}
|