@hieuzest/yakumo 0.3.13 → 0.3.15

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.
@@ -0,0 +1,13 @@
1
+ import { Context } from '../index.js';
2
+ import { Awaitable } from 'cosmokit';
3
+ declare module '../index.js' {
4
+ interface PackageJson {
5
+ $copied?: boolean;
6
+ }
7
+ interface Events {
8
+ 'publish/before'(path: string, meta: PackageJson): Awaitable<void>;
9
+ 'publish/after'(path: string, meta: PackageJson): Awaitable<void>;
10
+ }
11
+ }
12
+ export declare const inject: string[];
13
+ export declare function apply(ctx: Context): void;
@@ -0,0 +1,127 @@
1
+ import { cwd, exit, fetchRemote, selectVersion, spawnAsync } from '../index.js';
2
+ import { gt, prerelease } from 'semver';
3
+ import { isNonNullable } from 'cosmokit';
4
+ import { join } from 'path';
5
+ import ora from 'ora';
6
+ import prompts from 'prompts';
7
+ import assert from 'assert';
8
+ async function getVersion(name, isNext = false) {
9
+ const remote = await fetchRemote(name).catch(() => null);
10
+ if (!remote)
11
+ return '0.0.0';
12
+ if (isNext) {
13
+ return selectVersion(remote, 'next') || selectVersion(remote, 'latest') || '0.0.0';
14
+ }
15
+ else {
16
+ return selectVersion(remote, 'latest') || '0.0.0';
17
+ }
18
+ }
19
+ function isNext(version) {
20
+ const parts = prerelease(version);
21
+ if (!parts)
22
+ return false;
23
+ return parts[0] !== 'rc';
24
+ }
25
+ function isBerry(manager) {
26
+ return manager?.name === 'yarn' && !manager.version.startsWith('1.');
27
+ }
28
+ async function publish(manager, path, meta, args, argv) {
29
+ // console.log(`publishing ${name}@${version} ...`)
30
+ if (!isBerry(manager)) {
31
+ args = [manager?.name || 'npm', 'publish', join(cwd, path), '--color', ...args];
32
+ return await spawnAsync(args, { stdio: argv.debug ? 'inherit' : 'ignore' });
33
+ }
34
+ return await spawnAsync(['yarn', 'workspace', meta.name, 'npm', 'publish', ...args], { stdio: argv.debug ? 'inherit' : 'ignore' });
35
+ }
36
+ async function parallel(list, fn) {
37
+ await Promise.all(list.map(fn));
38
+ }
39
+ async function serial(list, fn) {
40
+ for (const item of list)
41
+ await fn(item);
42
+ }
43
+ export const inject = ['yakumo'];
44
+ export function apply(ctx) {
45
+ ctx.register('publish', async () => {
46
+ const { argv } = ctx.yakumo;
47
+ const spinner = ora();
48
+ let paths = ctx.yakumo.locate(argv._, {
49
+ filter: (meta) => {
50
+ // 1. workspace roots are always private
51
+ // 2. ignore private packages if not explicitly specified
52
+ return argv._.length ? !meta.workspaces : !meta.private;
53
+ },
54
+ });
55
+ if (argv._.length) {
56
+ const pending = paths.filter(path => ctx.yakumo.workspaces[path].private);
57
+ if (pending.length) {
58
+ const paths = pending.map(path => ctx.yakumo.workspaces[path].name).join(', ');
59
+ const { value } = await prompts({
60
+ name: 'value',
61
+ type: 'confirm',
62
+ message: `workspace ${paths} ${pending.length > 1 ? 'are' : 'is'} private, switch to public?`,
63
+ });
64
+ if (!value)
65
+ exit('operation cancelled.');
66
+ await Promise.all(pending.map(async (path) => {
67
+ delete ctx.yakumo.workspaces[path].private;
68
+ await ctx.yakumo.save(path);
69
+ }));
70
+ }
71
+ }
72
+ let progress = 0, skipped = 0;
73
+ spinner.start(`Loading workspaces (0/${paths.length})`);
74
+ paths = (await Promise.all(paths.map(async (path) => {
75
+ const meta = ctx.yakumo.workspaces[path];
76
+ spinner.text = `Loading workspaces (${++progress}/${paths.length})`;
77
+ const version = await getVersion(meta.name, isNext(meta.version));
78
+ if (gt(meta.version, version))
79
+ return path;
80
+ skipped += 1;
81
+ }))).filter(isNonNullable);
82
+ spinner.succeed();
83
+ const total = paths.length;
84
+ if (!argv.debug && total > 0)
85
+ spinner.start(`Publishing packages (0/${total})`);
86
+ let completed = 0, failed = 0;
87
+ await (argv.debug ? serial : parallel)(paths, async (path) => {
88
+ const meta = ctx.yakumo.workspaces[path];
89
+ try {
90
+ await ctx.parallel('publish/before', path, meta);
91
+ const args = [
92
+ '--tag', argv.tag ?? (isNext(meta.version) ? 'next' : 'latest'),
93
+ '--access', argv.access ?? 'public',
94
+ ];
95
+ if (argv.registry)
96
+ args.push('--registry', argv.registry);
97
+ if (argv.otp)
98
+ args.push('--otp', argv.otp);
99
+ const code = await publish(ctx.yakumo.manager, path, meta, args, argv);
100
+ assert(!code);
101
+ // sync npm mirror
102
+ fetch('https://registry-direct.npmmirror.com/' + meta.name + '/sync?sync_upstream=true', {
103
+ method: 'PUT',
104
+ }).catch(() => { });
105
+ await ctx.parallel('publish/after', path, meta);
106
+ }
107
+ catch (e) {
108
+ failed++;
109
+ }
110
+ finally {
111
+ if (!argv.debug)
112
+ spinner.text = `Publishing packages (${++completed}/${total})`;
113
+ }
114
+ });
115
+ const skippedText = skipped ? `, ${skipped} skipped` : '';
116
+ if (failed) {
117
+ spinner.fail(`Published ${total - failed} packages, ${failed} failed${skippedText}.`);
118
+ process.exit(1);
119
+ }
120
+ else {
121
+ spinner.succeed(`Published ${total} packages${skippedText}.`);
122
+ }
123
+ }, {
124
+ boolean: ['debug'],
125
+ });
126
+ }
127
+ //# sourceMappingURL=publish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/plugins/publish.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,13 @@ export function apply(ctx) {
13
13
  });
14
14
  for (const path of paths) {
15
15
  const agent = manager?.name || 'npm';
16
- await spawnAsync([agent, 'run', command, ...rest], {
16
+ const code = await spawnAsync([agent, 'run', command, ...rest], {
17
17
  cwd: cwd + path,
18
18
  stdio: 'inherit',
19
19
  shell: true,
20
20
  });
21
+ if (code)
22
+ process.exit(code);
21
23
  }
22
24
  });
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/plugins/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE1D,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAA;AAEhC,MAAM,UAAU,KAAK,CAAC,GAAY;IAChC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAA;QAChC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAa,CAAA;QACjD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAChD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;YACtC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;SACnB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACf,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,OAAO,EAAE,IAAI,IAAI,KAAK,CAAA;YACpC,MAAM,UAAU,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE;gBACjD,GAAG,EAAE,GAAG,GAAG,IAAI;gBACf,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,IAAI;aACZ,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/plugins/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE1D,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAA;AAEhC,MAAM,UAAU,KAAK,CAAC,GAAY;IAChC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAA;QAChC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAa,CAAA;QACjD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAChD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;YACtC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;SACnB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACf,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,OAAO,EAAE,IAAI,IAAI,KAAK,CAAA;YACpC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE;gBAC9D,GAAG,EAAE,GAAG,GAAG,IAAI;gBACf,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,IAAI;aACZ,CAAC,CAAA;YACF,IAAI,IAAI;gBAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Context } from '../index.js';
2
+ export declare const inject: string[];
3
+ export declare function apply(ctx: Context): void;
@@ -0,0 +1,18 @@
1
+ import kleur from 'kleur';
2
+ export const inject = ['yakumo'];
3
+ export function apply(ctx) {
4
+ ctx.register('setup-buildtools', async (name, ...rest) => {
5
+ const paths = ctx.yakumo.locate(ctx.yakumo.argv._);
6
+ for (const name of paths) {
7
+ const json = ctx.yakumo.workspaces[name];
8
+ json.devDependencies ??= {};
9
+ json.devDependencies['@hieuzest/koishi-buildtools'] = '^1.0.2';
10
+ if (!('koishi' in json.devDependencies)) {
11
+ json.devDependencies['koishi'] = '^4.18.9';
12
+ }
13
+ ctx.yakumo.save(name);
14
+ console.log(kleur.green(`Added buildtools to ${json.name}`));
15
+ }
16
+ });
17
+ }
18
+ //# sourceMappingURL=setup_buildtools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup_buildtools.js","sourceRoot":"","sources":["../../src/plugins/setup_buildtools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAA;AAEhC,MAAM,UAAU,KAAK,CAAC,GAAY;IAChC,GAAG,CAAC,QAAQ,CAAC,kBAAkB,EAAE,KAAK,EAAE,IAAY,EAAE,GAAG,IAAc,EAAE,EAAE;QACzE,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACxC,IAAI,CAAC,eAAe,KAAK,EAAE,CAAA;YAC3B,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,GAAG,QAAQ,CAAA;YAC9D,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAA;YAC5C,CAAC;YACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@hieuzest/yakumo",
3
3
  "description": "Fork of Yakumo",
4
- "version": "0.3.13",
4
+ "version": "0.3.15",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
7
7
  "typings": "lib/index.d.ts",
8
8
  "exports": {
9
9
  ".": "./lib/index.js",
10
10
  "./upgrade": "./lib/plugins/upgrade.js",
11
+ "./publish": "./lib/plugins/publish.js",
11
12
  "./verbose": "./lib/plugins/verbose.js",
12
13
  "./hooks": "./lib/plugins/hooks.js",
13
14
  "./run": "./lib/plugins/run.js",