@alipay/alipay-aipay 1.0.2 → 1.1.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/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +70 -21
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/prepare-tools.d.ts.map +1 -1
- package/dist/commands/prepare-tools.js +16 -4
- package/dist/commands/prepare-tools.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +8 -8
- package/dist/commands/update.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/alipay-cli.d.ts +6 -0
- package/dist/utils/alipay-cli.d.ts.map +1 -1
- package/dist/utils/alipay-cli.js +34 -18
- package/dist/utils/alipay-cli.js.map +1 -1
- package/dist/utils/file.d.ts +9 -2
- package/dist/utils/file.d.ts.map +1 -1
- package/dist/utils/file.js +33 -3
- package/dist/utils/file.js.map +1 -1
- package/dist/utils/gpg.d.ts.map +1 -1
- package/dist/utils/gpg.js +97 -53
- package/dist/utils/gpg.js.map +1 -1
- package/dist/utils/jq.d.ts.map +1 -1
- package/dist/utils/jq.js +6 -9
- package/dist/utils/jq.js.map +1 -1
- package/dist/utils/npm.d.ts.map +1 -1
- package/dist/utils/npm.js +2 -6
- package/dist/utils/npm.js.map +1 -1
- package/dist/utils/shell.d.ts +15 -2
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +216 -12
- package/dist/utils/shell.js.map +1 -1
- package/package.json +1 -1
- package/skill/SKILL.md +4 -1
- package/skill/VERSION +1 -0
- package/skill/references/integration/flow.md +7 -31
- package/skill/references/integration/modules/sandbox/a2m-sandbox-test.md +9 -2
- package/skill/references/integration/modules/sandbox/alipay-sandbox-tool.md +8 -5
- package/skill/references/integration/modules/sandbox/sandbox-setup-guide.md +98 -114
- package/skill/references/normal/alipay-cli-env.md +11 -9
- package/skill/references/normal/self-update.md +59 -0
- package/skill/references/onboarding/flow.md +26 -2
- package/skill/references/onboarding/modules/authorization.md +30 -9
- package/skill/references/onboarding/modules/product-sign.md +2 -0
- package/skill/references/onboarding/modules/scripts/auth.sh +15 -2
package/dist/utils/file.d.ts
CHANGED
|
@@ -31,14 +31,21 @@ export declare function readVersionFile(versionFilePath: string): Promise<Versio
|
|
|
31
31
|
* 读取安装记录。兼容旧版本曾写入 skill 目录内的隐藏记录文件。
|
|
32
32
|
*/
|
|
33
33
|
export declare function readVersionRecord(ctx: CommandContext): Promise<VersionRecord | null>;
|
|
34
|
+
export type VersionRecordWriteLocation = 'config' | 'legacy';
|
|
34
35
|
/**
|
|
35
|
-
* 将旧版 skill
|
|
36
|
+
* 将旧版 skill 目录内的隐藏安装记录迁移到用户配置目录;若用户配置目录不可写,
|
|
37
|
+
* 保留并更新 skill 目录内的兼容记录。
|
|
36
38
|
*/
|
|
37
|
-
export declare function migrateVersionRecord(ctx: CommandContext, record: VersionRecord): Promise<
|
|
39
|
+
export declare function migrateVersionRecord(ctx: CommandContext, record: VersionRecord): Promise<VersionRecordWriteLocation>;
|
|
38
40
|
/**
|
|
39
41
|
* 写入版本记录文件
|
|
40
42
|
*/
|
|
41
43
|
export declare function writeVersionFile(versionFilePath: string, record: VersionRecord): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* 写入安装记录。优先写入用户配置目录;若当前环境无法写入该目录,
|
|
46
|
+
* 降级写入 skill 目录内的旧版兼容记录文件。
|
|
47
|
+
*/
|
|
48
|
+
export declare function writeVersionRecordWithFallback(ctx: CommandContext, record: VersionRecord): Promise<VersionRecordWriteLocation>;
|
|
42
49
|
/**
|
|
43
50
|
* 安装 Skill 文件到目标目录
|
|
44
51
|
* 从包内 skill/ 目录复制 SKILL.md + references/ 到目标 skills 目录
|
package/dist/utils/file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjE;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO7D;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1D;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB/E;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAetE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS1D;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhE;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAO/B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAE/B;AAED
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjE;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO7D;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1D;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB/E;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAetE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS1D;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhE;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAO/B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAE/B;AAED,MAAM,MAAM,0BAA0B,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7D;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,0BAA0B,CAAC,CAMrC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,0BAA0B,CAAC,CAgBrC;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAuBf;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,MAAM,EAAE,CAAC,CAQnB"}
|
package/dist/utils/file.js
CHANGED
|
@@ -105,11 +105,15 @@ export async function readVersionRecord(ctx) {
|
|
|
105
105
|
return (await readVersionFile(ctx.versionFile)) ?? (await readVersionFile(ctx.legacyVersionFile));
|
|
106
106
|
}
|
|
107
107
|
/**
|
|
108
|
-
* 将旧版 skill
|
|
108
|
+
* 将旧版 skill 目录内的隐藏安装记录迁移到用户配置目录;若用户配置目录不可写,
|
|
109
|
+
* 保留并更新 skill 目录内的兼容记录。
|
|
109
110
|
*/
|
|
110
111
|
export async function migrateVersionRecord(ctx, record) {
|
|
111
|
-
await
|
|
112
|
-
|
|
112
|
+
const recordLocation = await writeVersionRecordWithFallback(ctx, record);
|
|
113
|
+
if (recordLocation === 'config') {
|
|
114
|
+
await removeFile(ctx.legacyVersionFile);
|
|
115
|
+
}
|
|
116
|
+
return recordLocation;
|
|
113
117
|
}
|
|
114
118
|
/**
|
|
115
119
|
* 写入版本记录文件
|
|
@@ -118,6 +122,27 @@ export async function writeVersionFile(versionFilePath, record) {
|
|
|
118
122
|
await ensureDir(path.dirname(versionFilePath));
|
|
119
123
|
await fs.writeFile(versionFilePath, JSON.stringify(record, null, 2), 'utf-8');
|
|
120
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* 写入安装记录。优先写入用户配置目录;若当前环境无法写入该目录,
|
|
127
|
+
* 降级写入 skill 目录内的旧版兼容记录文件。
|
|
128
|
+
*/
|
|
129
|
+
export async function writeVersionRecordWithFallback(ctx, record) {
|
|
130
|
+
try {
|
|
131
|
+
await writeVersionFile(ctx.versionFile, record);
|
|
132
|
+
return 'config';
|
|
133
|
+
}
|
|
134
|
+
catch (configError) {
|
|
135
|
+
try {
|
|
136
|
+
await writeVersionFile(ctx.legacyVersionFile, record);
|
|
137
|
+
return 'legacy';
|
|
138
|
+
}
|
|
139
|
+
catch (legacyError) {
|
|
140
|
+
const configMessage = configError instanceof Error ? configError.message : String(configError);
|
|
141
|
+
const legacyMessage = legacyError instanceof Error ? legacyError.message : String(legacyError);
|
|
142
|
+
throw new Error(`安装记录写入失败。用户配置目录: ${configMessage}; skill 目录兼容记录: ${legacyMessage}`);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
121
146
|
/**
|
|
122
147
|
* 安装 Skill 文件到目标目录
|
|
123
148
|
* 从包内 skill/ 目录复制 SKILL.md + references/ 到目标 skills 目录
|
|
@@ -125,12 +150,17 @@ export async function writeVersionFile(versionFilePath, record) {
|
|
|
125
150
|
export async function installSkillFiles(packageRoot, targetDir) {
|
|
126
151
|
const skillTargetDir = path.join(targetDir, SKILL_NAME);
|
|
127
152
|
const skillSourceDir = path.join(packageRoot, SKILL_DIR);
|
|
153
|
+
const packageJson = JSON.parse(await fs.readFile(path.join(packageRoot, 'package.json'), 'utf-8'));
|
|
128
154
|
await removeDir(skillTargetDir);
|
|
129
155
|
await ensureDir(skillTargetDir);
|
|
130
156
|
// 复制 SKILL.md
|
|
131
157
|
await fs.copyFile(path.join(skillSourceDir, 'SKILL.md'), path.join(skillTargetDir, 'SKILL.md'));
|
|
132
158
|
// 复制 references/ 并保留 .sh 执行权限
|
|
133
159
|
await copyDirWithPerms(path.join(skillSourceDir, 'references'), path.join(skillTargetDir, 'references'));
|
|
160
|
+
// 写入给 Skill 启动自更新检查使用的轻量版本文件。
|
|
161
|
+
if (packageJson.version) {
|
|
162
|
+
await fs.writeFile(path.join(skillTargetDir, 'VERSION'), `${packageJson.version}\n`, 'utf-8');
|
|
163
|
+
}
|
|
134
164
|
}
|
|
135
165
|
/**
|
|
136
166
|
* 检查 skill 是否已安装
|
package/dist/utils/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEpD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5B,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW,EAAE,IAAY;IAC9D,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAEtB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACrC,iBAAiB;YACjB,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAW,EAAE,IAAY;IACrD,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAEtB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW;QACX,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,eAAuB;IAEvB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAkB,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAmB;IAEnB,OAAO,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACpG,CAAC;AAID;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,GAAmB,EACnB,MAAqB;IAErB,MAAM,cAAc,GAAG,MAAM,8BAA8B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzE,IAAI,cAAc,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,eAAuB,EACvB,MAAqB;IAErB,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/C,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,GAAmB,EACnB,MAAqB;IAErB,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAChD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,WAAW,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,gBAAgB,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACrB,MAAM,aAAa,GAAG,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC/F,MAAM,aAAa,GAAG,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC/F,MAAM,IAAI,KAAK,CACb,oBAAoB,aAAa,mBAAmB,aAAa,EAAE,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,SAAiB;IAEjB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAyB,CAAC;IAC3H,MAAM,SAAS,CAAC,cAAc,CAAC,CAAC;IAChC,MAAM,SAAS,CAAC,cAAc,CAAC,CAAC;IAEhC,cAAc;IACd,MAAM,EAAE,CAAC,QAAQ,CACf,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,EACrC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CACtC,CAAC;IAEF,8BAA8B;IAC9B,MAAM,gBAAgB,CACpB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,EACvC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CACxC,CAAC;IAEF,8BAA8B;IAC9B,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC,OAAO,IAAI,EAAE,OAAO,CAAC,CAAC;IAChG,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAiB,EACjB,SAAiB;IAEjB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,SAAiB,EACjB,UAAoB;IAEpB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,MAAM,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;YAC5C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
package/dist/utils/gpg.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gpg.d.ts","sourceRoot":"","sources":["../../src/utils/gpg.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gpg.d.ts","sourceRoot":"","sources":["../../src/utils/gpg.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAsBnD;;GAEG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,CAqBzD;AAmPD;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAYnD;AAED;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAQlD"}
|
package/dist/utils/gpg.js
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
import { exec } from 'child_process';
|
|
2
|
-
import { promisify } from 'util';
|
|
3
1
|
import chalk from 'chalk';
|
|
4
|
-
import { execInteractive, isInteractive } from './shell.js';
|
|
5
|
-
const execAsync = promisify(exec);
|
|
2
|
+
import { execCommand, execInteractive, isInteractive } from './shell.js';
|
|
6
3
|
/**
|
|
7
4
|
* 检测 Linux 包管理器
|
|
8
5
|
*/
|
|
9
6
|
async function detectLinuxPackageManager() {
|
|
10
7
|
try {
|
|
11
|
-
await
|
|
8
|
+
await execCommand('which apt-get 2>/dev/null', 3000);
|
|
12
9
|
return 'apt';
|
|
13
10
|
}
|
|
14
11
|
catch {
|
|
15
12
|
// ignore
|
|
16
13
|
}
|
|
17
14
|
try {
|
|
18
|
-
await
|
|
15
|
+
await execCommand('which yum 2>/dev/null', 3000);
|
|
19
16
|
return 'yum';
|
|
20
17
|
}
|
|
21
18
|
catch {
|
|
@@ -28,12 +25,12 @@ async function detectLinuxPackageManager() {
|
|
|
28
25
|
*/
|
|
29
26
|
export async function checkGpg() {
|
|
30
27
|
try {
|
|
31
|
-
const { stdout } = await
|
|
28
|
+
const { stdout } = await execCommand('gpg --version', 5000);
|
|
32
29
|
const versionLine = stdout.split('\n')[0];
|
|
33
30
|
const match = versionLine.match(/(\d+\.\d+\.\d+)/);
|
|
34
31
|
let gpgPath = '';
|
|
35
32
|
try {
|
|
36
|
-
const { stdout: whichOut } = await
|
|
33
|
+
const { stdout: whichOut } = await execCommand('which gpg', 3000);
|
|
37
34
|
gpgPath = whichOut.trim();
|
|
38
35
|
}
|
|
39
36
|
catch {
|
|
@@ -59,6 +56,10 @@ const BREW_BOTTLE_MIRRORS = [
|
|
|
59
56
|
{ name: '阿里云', domain: 'https://mirrors.aliyun.com/homebrew-bottles' },
|
|
60
57
|
{ name: '中科大', domain: 'https://mirrors.ustc.edu.cn/homebrew-bottles' },
|
|
61
58
|
];
|
|
59
|
+
const BREW_DEFAULT_INSTALL_TIMEOUT = 2 * 60 * 1000;
|
|
60
|
+
const BREW_MIRROR_INSTALL_TIMEOUT = 8 * 60 * 1000;
|
|
61
|
+
const BREW_INSTALL_IDLE_TIMEOUT = 45 * 1000;
|
|
62
|
+
const BREW_MIRROR_PROBE_TIMEOUT = 7000;
|
|
62
63
|
function formatErrorTail(error) {
|
|
63
64
|
const message = error instanceof Error ? error.message : String(error);
|
|
64
65
|
return message
|
|
@@ -81,74 +82,118 @@ function formatErrorTail(error) {
|
|
|
81
82
|
* (否则 brew 不知道 gnupg 怎么装)
|
|
82
83
|
*/
|
|
83
84
|
function buildBrewInstallCommand(bottleDomain) {
|
|
84
|
-
|
|
85
|
-
`export HOMEBREW_BOTTLE_DOMAIN="${bottleDomain}"`,
|
|
85
|
+
const env = [
|
|
86
86
|
'export HOMEBREW_NO_AUTO_UPDATE=1',
|
|
87
87
|
'export HOMEBREW_NO_INSTALL_CLEANUP=1',
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
];
|
|
89
|
+
if (bottleDomain) {
|
|
90
|
+
env.unshift(`export HOMEBREW_BOTTLE_DOMAIN="${bottleDomain}"`);
|
|
91
|
+
}
|
|
92
|
+
return [...env, 'yes | brew install gnupg'].join(' && ');
|
|
93
|
+
}
|
|
94
|
+
async function probeBrewBottleMirror(mirror) {
|
|
95
|
+
const startedAt = Date.now();
|
|
96
|
+
const url = `${mirror.domain}/`;
|
|
97
|
+
try {
|
|
98
|
+
const { stdout } = await execCommand(`curl -L -sS -o /dev/null -w "%{http_code} %{time_total}" --connect-timeout 3 --max-time 5 "${url}"`, BREW_MIRROR_PROBE_TIMEOUT);
|
|
99
|
+
const [statusRaw, timeRaw] = stdout.trim().split(/\s+/);
|
|
100
|
+
const statusCode = Number(statusRaw);
|
|
101
|
+
const durationMs = Number.isFinite(Number(timeRaw))
|
|
102
|
+
? Math.round(Number(timeRaw) * 1000)
|
|
103
|
+
: Date.now() - startedAt;
|
|
104
|
+
return {
|
|
105
|
+
mirror,
|
|
106
|
+
reachable: statusCode >= 200 && statusCode < 500,
|
|
107
|
+
durationMs,
|
|
108
|
+
statusCode,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
return {
|
|
113
|
+
mirror,
|
|
114
|
+
reachable: false,
|
|
115
|
+
durationMs: Date.now() - startedAt,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async function selectFastestBrewBottleMirror() {
|
|
120
|
+
console.log(chalk.gray(' 并行探测 Homebrew bottle 镜像源...'));
|
|
121
|
+
const results = await Promise.all(BREW_BOTTLE_MIRRORS.map(probeBrewBottleMirror));
|
|
122
|
+
for (const result of results) {
|
|
123
|
+
const status = result.reachable
|
|
124
|
+
? `${result.durationMs}ms${result.statusCode ? ` HTTP ${result.statusCode}` : ''}`
|
|
125
|
+
: '不可用';
|
|
126
|
+
console.log(chalk.gray(` ${result.mirror.name}: ${status}`));
|
|
127
|
+
}
|
|
128
|
+
const fastest = results
|
|
129
|
+
.filter((result) => result.reachable)
|
|
130
|
+
.sort((a, b) => a.durationMs - b.durationMs)[0];
|
|
131
|
+
if (!fastest)
|
|
132
|
+
return null;
|
|
133
|
+
console.log(chalk.gray(` 选择 ${fastest.mirror.name} 镜像源安装 GPG`));
|
|
134
|
+
return fastest;
|
|
135
|
+
}
|
|
136
|
+
async function runBrewInstallGpg(command, timeout) {
|
|
137
|
+
await execInteractive(command, timeout, {
|
|
138
|
+
idleTimeout: BREW_INSTALL_IDLE_TIMEOUT,
|
|
139
|
+
});
|
|
140
|
+
const verify = await checkGpg();
|
|
141
|
+
if (verify.installed) {
|
|
142
|
+
console.log(chalk.green(` ✓ GPG 安装成功 (${verify.version})`));
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
return false;
|
|
90
146
|
}
|
|
91
147
|
// ============================================================
|
|
92
148
|
// macOS 安装 GPG
|
|
93
149
|
// ============================================================
|
|
94
150
|
/**
|
|
95
|
-
* macOS 安装 GPG
|
|
151
|
+
* macOS 安装 GPG:先使用 Homebrew 当前配置,失败后再探测镜像兜底
|
|
96
152
|
*
|
|
97
|
-
*
|
|
153
|
+
* 镜像兜底只换 bottle 下载源,其他 brew 行为保持默认。
|
|
98
154
|
* formula 索引下载(formulae.brew.sh)通常很快,不需要镜像。
|
|
99
155
|
* 真正慢的是 bottle 下载,用国内镜像加速即可。
|
|
100
156
|
*/
|
|
101
157
|
async function installGpgMacos() {
|
|
102
158
|
// 检查 brew 是否可用
|
|
103
159
|
try {
|
|
104
|
-
await
|
|
160
|
+
await execCommand('which brew', 3000);
|
|
105
161
|
}
|
|
106
162
|
catch {
|
|
107
163
|
console.log(chalk.red(' ✗ 未检测到 Homebrew,无法自动安装 GPG'));
|
|
108
164
|
console.log(chalk.gray(' 请先安装 Homebrew:'));
|
|
109
165
|
console.log(chalk.cyan(' /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"'));
|
|
110
|
-
console.log(chalk.gray('
|
|
166
|
+
console.log(chalk.gray(' 或配置 Homebrew bottle 镜像后手动安装 GPG'));
|
|
111
167
|
return false;
|
|
112
168
|
}
|
|
113
169
|
console.log(chalk.cyan(' ⏳ 使用 Homebrew 安装 GPG...\n'));
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
if (isInteractive()) {
|
|
119
|
-
// TTY 环境,让用户看到 brew 的实时输出
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
console.log(chalk.gray(` [${i + 1}/${BREW_BOTTLE_MIRRORS.length}] 使用${mirror.name}镜像源...`));
|
|
123
|
-
}
|
|
124
|
-
try {
|
|
125
|
-
await execInteractive(command, 120000); // 2 分钟超时:下不完说明源不通,立刻换下一个
|
|
126
|
-
// 验证安装
|
|
127
|
-
const verify = await checkGpg();
|
|
128
|
-
if (verify.installed) {
|
|
129
|
-
console.log(chalk.green(` ✓ GPG 安装成功 (${verify.version})`));
|
|
130
|
-
return true;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
catch (error) {
|
|
134
|
-
if (!isInteractive()) {
|
|
135
|
-
const detail = formatErrorTail(error);
|
|
136
|
-
if (detail)
|
|
137
|
-
console.log(chalk.gray(` 失败原因: ${detail}\n`));
|
|
138
|
-
}
|
|
170
|
+
try {
|
|
171
|
+
console.log(chalk.gray(' 先使用 Homebrew 当前配置安装 gnupg...'));
|
|
172
|
+
if (await runBrewInstallGpg(buildBrewInstallCommand(), BREW_DEFAULT_INSTALL_TIMEOUT)) {
|
|
173
|
+
return true;
|
|
139
174
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
if (!isInteractive()) {
|
|
178
|
+
const detail = formatErrorTail(error);
|
|
179
|
+
if (detail)
|
|
180
|
+
console.log(chalk.gray(` Homebrew 当前配置安装失败原因: ${detail}\n`));
|
|
143
181
|
}
|
|
144
182
|
}
|
|
145
|
-
|
|
146
|
-
|
|
183
|
+
console.log(chalk.yellow(' ⚠ Homebrew 当前配置安装未成功,尝试使用 bottle 镜像源兜底\n'));
|
|
184
|
+
const selectedMirror = await selectFastestBrewBottleMirror();
|
|
185
|
+
const command = buildBrewInstallCommand(selectedMirror?.mirror.domain);
|
|
186
|
+
if (!selectedMirror) {
|
|
187
|
+
console.log(chalk.red(' ✗ 未探测到可用 bottle 镜像源'));
|
|
188
|
+
console.log(chalk.gray(' 请配置 bottle 镜像后手动重试:'));
|
|
189
|
+
console.log(chalk.cyan(' export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"'));
|
|
190
|
+
console.log(chalk.cyan(' export HOMEBREW_NO_AUTO_UPDATE=1'));
|
|
191
|
+
console.log(chalk.cyan(' export HOMEBREW_NO_INSTALL_CLEANUP=1'));
|
|
192
|
+
console.log(chalk.cyan(' brew install gnupg'));
|
|
193
|
+
return false;
|
|
194
|
+
}
|
|
147
195
|
try {
|
|
148
|
-
await
|
|
149
|
-
const verify = await checkGpg();
|
|
150
|
-
if (verify.installed) {
|
|
151
|
-
console.log(chalk.green(` ✓ GPG 安装成功 (${verify.version})`));
|
|
196
|
+
if (await runBrewInstallGpg(command, BREW_MIRROR_INSTALL_TIMEOUT)) {
|
|
152
197
|
return true;
|
|
153
198
|
}
|
|
154
199
|
}
|
|
@@ -160,11 +205,10 @@ async function installGpgMacos() {
|
|
|
160
205
|
}
|
|
161
206
|
}
|
|
162
207
|
console.log(chalk.red(' ✗ GPG 自动安装失败'));
|
|
163
|
-
console.log(chalk.gray('
|
|
164
|
-
console.log(chalk.cyan(' brew install gnupg'));
|
|
165
|
-
console.log(chalk.gray(' 如果下载慢,设置 bottle 镜像后重试:'));
|
|
208
|
+
console.log(chalk.gray(' 请配置 bottle 镜像后手动重试:'));
|
|
166
209
|
console.log(chalk.cyan(' export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"'));
|
|
167
210
|
console.log(chalk.cyan(' export HOMEBREW_NO_AUTO_UPDATE=1'));
|
|
211
|
+
console.log(chalk.cyan(' export HOMEBREW_NO_INSTALL_CLEANUP=1'));
|
|
168
212
|
console.log(chalk.cyan(' brew install gnupg'));
|
|
169
213
|
return false;
|
|
170
214
|
}
|
package/dist/utils/gpg.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gpg.js","sourceRoot":"","sources":["../../src/utils/gpg.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"gpg.js","sourceRoot":"","sources":["../../src/utils/gpg.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/jq.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jq.d.ts","sourceRoot":"","sources":["../../src/utils/jq.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jq.d.ts","sourceRoot":"","sources":["../../src/utils/jq.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA6DnD;;GAEG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC,CAoBxD;AAiHD;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAYlD;AAED;;GAEG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAQjD"}
|
package/dist/utils/jq.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import { exec } from 'child_process';
|
|
2
|
-
import { promisify } from 'util';
|
|
3
1
|
import chalk from 'chalk';
|
|
4
|
-
import { execInteractive } from './shell.js';
|
|
5
|
-
const execAsync = promisify(exec);
|
|
2
|
+
import { execCommand, execInteractive } from './shell.js';
|
|
6
3
|
// ============================================================
|
|
7
4
|
// 国内 Bottle 镜像源(只用于加速二进制包下载)
|
|
8
5
|
// formula 索引走 brew 默认的 formulae.brew.sh,不设 API_DOMAIN
|
|
@@ -43,14 +40,14 @@ function buildBrewInstallCommand(bottleDomain) {
|
|
|
43
40
|
*/
|
|
44
41
|
async function detectLinuxPackageManager() {
|
|
45
42
|
try {
|
|
46
|
-
await
|
|
43
|
+
await execCommand('which apt-get 2>/dev/null', 3000);
|
|
47
44
|
return 'apt';
|
|
48
45
|
}
|
|
49
46
|
catch {
|
|
50
47
|
// ignore
|
|
51
48
|
}
|
|
52
49
|
try {
|
|
53
|
-
await
|
|
50
|
+
await execCommand('which yum 2>/dev/null', 3000);
|
|
54
51
|
return 'yum';
|
|
55
52
|
}
|
|
56
53
|
catch {
|
|
@@ -63,11 +60,11 @@ async function detectLinuxPackageManager() {
|
|
|
63
60
|
*/
|
|
64
61
|
export async function checkJq() {
|
|
65
62
|
try {
|
|
66
|
-
const { stdout } = await
|
|
63
|
+
const { stdout } = await execCommand('jq --version', 5000);
|
|
67
64
|
const version = stdout.trim().replace(/^jq-/, '');
|
|
68
65
|
let jqPath = '';
|
|
69
66
|
try {
|
|
70
|
-
const { stdout: whichOut } = await
|
|
67
|
+
const { stdout: whichOut } = await execCommand('which jq', 3000);
|
|
71
68
|
jqPath = whichOut.trim();
|
|
72
69
|
}
|
|
73
70
|
catch {
|
|
@@ -89,7 +86,7 @@ export async function checkJq() {
|
|
|
89
86
|
*/
|
|
90
87
|
async function installJqMacos() {
|
|
91
88
|
try {
|
|
92
|
-
await
|
|
89
|
+
await execCommand('which brew', 3000);
|
|
93
90
|
}
|
|
94
91
|
catch {
|
|
95
92
|
console.log(chalk.red(' ✗ 未检测到 Homebrew,无法自动安装 jq'));
|
package/dist/utils/jq.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jq.js","sourceRoot":"","sources":["../../src/utils/jq.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"jq.js","sourceRoot":"","sources":["../../src/utils/jq.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/npm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm.d.ts","sourceRoot":"","sources":["../../src/utils/npm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"npm.d.ts","sourceRoot":"","sources":["../../src/utils/npm.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAY/D;AAED;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,cAAc,CAAC,CAiB/D"}
|
package/dist/utils/npm.js
CHANGED
|
@@ -1,17 +1,13 @@
|
|
|
1
|
-
import { exec } from 'child_process';
|
|
2
|
-
import { promisify } from 'util';
|
|
3
1
|
import semver from 'semver';
|
|
4
2
|
import { getPackageVersion } from './config.js';
|
|
5
|
-
|
|
3
|
+
import { execCommand } from './shell.js';
|
|
6
4
|
const PACKAGE_NAME = '@alipay/alipay-aipay';
|
|
7
5
|
/**
|
|
8
6
|
* 从 npm registry 获取最新版本
|
|
9
7
|
*/
|
|
10
8
|
export async function getLatestVersion() {
|
|
11
9
|
try {
|
|
12
|
-
const { stdout } = await
|
|
13
|
-
timeout: 10000,
|
|
14
|
-
});
|
|
10
|
+
const { stdout } = await execCommand(`npm view ${PACKAGE_NAME} version --json`, 10000);
|
|
15
11
|
const version = stdout.trim().replace(/"/g, '');
|
|
16
12
|
return semver.valid(version);
|
|
17
13
|
}
|
package/dist/utils/npm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm.js","sourceRoot":"","sources":["../../src/utils/npm.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"npm.js","sourceRoot":"","sources":["../../src/utils/npm.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAW5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAClC,YAAY,YAAY,iBAAiB,EACzC,KAAK,CACN,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAChD,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAExC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,OAAO;YACP,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,KAAK;SACnB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO;QACP,MAAM;QACN,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;KACxC,CAAC;AACJ,CAAC"}
|
package/dist/utils/shell.d.ts
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
|
+
export interface ExecInteractiveOptions {
|
|
2
|
+
idleTimeout?: number;
|
|
3
|
+
}
|
|
4
|
+
export interface ExecCommandResult {
|
|
5
|
+
stdout: string;
|
|
6
|
+
stderr: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* 执行短命令并强制约束总耗时。使用独立进程组,超时时尽量杀掉 shell
|
|
10
|
+
* 及其子进程,避免工具检测命令异常时拖住 install/update。
|
|
11
|
+
*/
|
|
12
|
+
export declare function execCommand(command: string, timeout?: number): Promise<ExecCommandResult>;
|
|
1
13
|
/**
|
|
2
14
|
* 执行可能需要交互式输入的命令(如 sudo 密码、brew 确认等)
|
|
3
15
|
* 有 TTY 时使用 stdio: 'inherit' 让子进程直接访问终端
|
|
4
|
-
* 无 TTY 时(AI agent
|
|
16
|
+
* 无 TTY 时(AI agent 环境)捕获输出,供错误摘要使用
|
|
17
|
+
* 传入 idleTimeout 时,有输出就续期,只在长时间无输出时终止命令
|
|
5
18
|
*/
|
|
6
|
-
export declare function execInteractive(command: string, timeout?: number): Promise<number>;
|
|
19
|
+
export declare function execInteractive(command: string, timeout?: number, options?: ExecInteractiveOptions): Promise<number>;
|
|
7
20
|
/**
|
|
8
21
|
* 检测当前环境是否支持交互式输入(有 TTY)
|
|
9
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAiHvF;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,SAAS,EAChB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,MAAM,CAAC,CA2HjB;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC"}
|