@hagicode/hagiscript 0.1.4 → 0.1.6-dev.36.1.bfa23c6
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/LICENSE +21 -0
- package/README.md +21 -1
- package/dist/commands/npm-sync-commands.js +7 -0
- package/dist/commands/npm-sync-commands.js.map +1 -1
- package/dist/runtime/command-launch.d.ts +31 -1
- package/dist/runtime/command-launch.js +71 -7
- package/dist/runtime/command-launch.js.map +1 -1
- package/dist/runtime/node-extract.d.ts +5 -1
- package/dist/runtime/node-extract.js +18 -22
- package/dist/runtime/node-extract.js.map +1 -1
- package/dist/runtime/node-platform.d.ts +1 -0
- package/dist/runtime/node-platform.js +10 -0
- package/dist/runtime/node-platform.js.map +1 -1
- package/dist/runtime/node-release.d.ts +1 -1
- package/dist/runtime/node-release.js +12 -9
- package/dist/runtime/node-release.js.map +1 -1
- package/dist/runtime/node-verify.js +5 -10
- package/dist/runtime/node-verify.js.map +1 -1
- package/dist/runtime/npm-global.d.ts +1 -0
- package/dist/runtime/npm-global.js +14 -19
- package/dist/runtime/npm-global.js.map +1 -1
- package/dist/runtime/npm-sync.d.ts +5 -1
- package/dist/runtime/npm-sync.js +54 -52
- package/dist/runtime/npm-sync.js.map +1 -1
- package/package.json +3 -1
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 HagiCode
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Hagiscript
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/@hagicode/hagiscript)
|
|
4
|
+
[](https://www.npmjs.com/package/@hagicode/hagiscript)
|
|
5
|
+
[](./LICENSE)
|
|
6
|
+
|
|
3
7
|
`@hagicode/hagiscript` is the scoped npm package foundation for future Hagiscript language tooling. This initial package intentionally keeps runtime behavior small: it exposes version metadata, a baseline runtime-info API, and an executable CLI placeholder that can be built, tested, packed, and published safely.
|
|
4
8
|
|
|
5
9
|
## Installation Assumptions
|
|
@@ -99,6 +103,7 @@ Reason: missing executable
|
|
|
99
103
|
```bash
|
|
100
104
|
hagiscript npm-sync --manifest ./manifest.json
|
|
101
105
|
hagiscript npm-sync --runtime /opt/hagiscript/node --manifest ./manifest.json
|
|
106
|
+
hagiscript npm-sync --manifest ./manifest.json --force
|
|
102
107
|
hagiscript npm-sync --manifest ./manifest.json --registry-mirror https://registry.npmmirror.com/
|
|
103
108
|
hagiscript npm-sync --manifest ./manifest.json --registry-mirror https://registry.npmmirror.com/ --mirror-only
|
|
104
109
|
```
|
|
@@ -119,6 +124,8 @@ Compatibility manifest schema:
|
|
|
119
124
|
|
|
120
125
|
The required `version` field accepts package.json-style semver ranges such as `^1.2.0`, `>=1.0.0 <2.0.0`, or `1.0.0 || 2.0.0`. The optional `target` field controls the selector used for `npm install -g`; when omitted, Hagiscript installs `<package>@<version>`.
|
|
121
126
|
|
|
127
|
+
By default, `npm-sync` plans installed packages that already satisfy the requested range as `noop` and skips `npm install -g` for them. Use `--force` to skip that installed-package satisfaction check and re-run sync for matching packages. `--force` does not upgrade packages to the latest version and does not change semver selection; it only turns an otherwise skipped `noop` action into an executable `sync` action.
|
|
128
|
+
|
|
122
129
|
The optional top-level `registryMirror` field configures the npm registry used for both inventory and install commands. It must be a non-empty absolute `http:` or `https:` URL. When present, HagiScript first appends `--registry <registryMirror>` to `npm list -g --depth=0 --json` and `npm install -g <package>@<selector>` without changing package selection. If that mirror-backed npm command fails, HagiScript automatically retries the same inventory or install command once against the official npm registry `https://registry.npmjs.org/`. This mirror-first retry scope is intentionally limited to npm inventory and package mutation commands; runtime validation, manifest validation, and package planning do not retry. This is useful for public mirrors such as `https://registry.npmmirror.com/` or enterprise registries such as `https://npm.company.example/repository/npm/`.
|
|
123
130
|
|
|
124
131
|
Product-managed tool sync can use the expanded `tools` manifest shape. Mandatory tools are always included using internally pinned versions from `src/runtime/tool-sync-catalog.config.json`: OpenSpec skills (`skills@1.5.1`), OmniRoute (`omniroute@3.6.9`), and code-server (`code-server@4.117.0`). Optional agent CLI sync is enabled explicitly; selected built-in CLIs or custom npm packages are added when provided.
|
|
@@ -168,7 +175,7 @@ Example manifest for openspec and skills tooling:
|
|
|
168
175
|
}
|
|
169
176
|
```
|
|
170
177
|
|
|
171
|
-
During execution, Hagiscript validates the manifest and runtime before any npm install command runs, lists global packages with `/opt/hagiscript/node/bin/npm list -g --depth=0 --json`, plans no-op, install, upgrade, downgrade, or sync actions, and then runs `npm install -g <package>@<selector>` only for packages that need changes.
|
|
178
|
+
During execution, Hagiscript validates the manifest and runtime before any npm install command runs, lists global packages with `/opt/hagiscript/node/bin/npm list -g --depth=0 --json`, plans no-op, install, upgrade, downgrade, or sync actions, and then runs `npm install -g <package>@<selector>` only for packages that need changes. With `--force`, packages that already satisfy the requested range are replanned from `noop` to `sync`, so the same selector is installed again to re-sync the existing target.
|
|
172
179
|
|
|
173
180
|
Example output:
|
|
174
181
|
|
|
@@ -197,6 +204,15 @@ No-op: 1
|
|
|
197
204
|
Changed: 1
|
|
198
205
|
```
|
|
199
206
|
|
|
207
|
+
Forced re-sync example:
|
|
208
|
+
|
|
209
|
+
```text
|
|
210
|
+
$ hagiscript npm-sync --manifest ./manifest.json --force
|
|
211
|
+
Plan: @openspec/cli sync installed=1.0.2 required=^1.0.0 selector=@openspec/cli@^1.0.0
|
|
212
|
+
Install: @openspec/cli using @openspec/cli@^1.0.0
|
|
213
|
+
Synced: @openspec/cli (sync)
|
|
214
|
+
```
|
|
215
|
+
|
|
200
216
|
When fallback is triggered, HagiScript logs `Fallback used: ...` during execution and records `Fallback detail: ...` in the final summary so CI or desktop automation can see which mirror failed, which official registry retry was used, and whether that retry succeeded.
|
|
201
217
|
|
|
202
218
|
Use the library API from ESM consumers:
|
|
@@ -266,3 +282,7 @@ npm run publish:check-prereqs
|
|
|
266
282
|
```
|
|
267
283
|
|
|
268
284
|
For local manual releases, run plain `npm publish` after logging in with an npm account that can publish under `@hagicode`.
|
|
285
|
+
|
|
286
|
+
## License
|
|
287
|
+
|
|
288
|
+
MIT. See [LICENSE](./LICENSE).
|
|
@@ -12,7 +12,9 @@ export function registerNpmSyncCommand(program) {
|
|
|
12
12
|
.option("--managed-runtime <path>", "HagiScript-managed runtime directory to verify or install before sync")
|
|
13
13
|
.option("--manifest <path>", "npm-sync manifest JSON file")
|
|
14
14
|
.option("--registry-mirror <url>", "npm registry mirror URL to use for this sync run")
|
|
15
|
+
.option("--prefix <path>", "npm global prefix directory for inventory and package installation")
|
|
15
16
|
.option("--mirror-only", "disable automatic retry against https://registry.npmjs.org/ when a registry mirror is configured")
|
|
17
|
+
.option("--force", "skip installed-package satisfaction checks and re-sync packages that already match the requested range")
|
|
16
18
|
.option("--selected-agent-cli <id>", "selected optional agent CLI ID for product-managed tool sync", collectValues, [])
|
|
17
19
|
.option("--custom-agent-cli <package[@version]>", "custom npm-installable agent CLI for product-managed tool sync", collectValues, [])
|
|
18
20
|
.action(async (options, command) => {
|
|
@@ -20,6 +22,9 @@ export function registerNpmSyncCommand(program) {
|
|
|
20
22
|
? validatePathOption(options.runtime, "--runtime")
|
|
21
23
|
: undefined;
|
|
22
24
|
const registryMirror = validateRegistryMirror(options.registryMirror, "--registry-mirror");
|
|
25
|
+
const prefix = options.prefix
|
|
26
|
+
? validatePathOption(options.prefix, "--prefix")
|
|
27
|
+
: undefined;
|
|
23
28
|
const selectedAgentCliIds = options.selectedAgentCli ?? [];
|
|
24
29
|
const customAgentCliSelectors = options.customAgentCli ?? [];
|
|
25
30
|
const hasInlineToolSelection = selectedAgentCliIds.length > 0 || customAgentCliSelectors.length > 0;
|
|
@@ -44,6 +49,8 @@ export function registerNpmSyncCommand(program) {
|
|
|
44
49
|
manifestPath,
|
|
45
50
|
registryMirror,
|
|
46
51
|
fallbackPolicy,
|
|
52
|
+
force: options.force ?? false,
|
|
53
|
+
npmOptions: prefix ? { prefix } : undefined,
|
|
47
54
|
onLog: printNpmSyncLog
|
|
48
55
|
});
|
|
49
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm-sync-commands.js","sourceRoot":"","sources":["../../src/commands/npm-sync-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,qCAAqC,EACrC,yBAAyB,EAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EAIvB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"npm-sync-commands.js","sourceRoot":"","sources":["../../src/commands/npm-sync-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,qCAAqC,EACrC,yBAAyB,EAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EAIvB,MAAM,wBAAwB,CAAC;AAchC,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CACV,qGAAqG,CACtG;SACA,MAAM,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;SAChE,MAAM,CACL,0BAA0B,EAC1B,uEAAuE,CACxE;SACA,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;SAC1D,MAAM,CACL,yBAAyB,EACzB,kDAAkD,CACnD;SACA,MAAM,CACL,iBAAiB,EACjB,oEAAoE,CACrE;SACA,MAAM,CACL,eAAe,EACf,kGAAkG,CACnG;SACA,MAAM,CACL,SAAS,EACT,wGAAwG,CACzG;SACA,MAAM,CACL,2BAA2B,EAC3B,8DAA8D,EAC9D,aAAa,EACb,EAAE,CACH;SACA,MAAM,CACL,wCAAwC,EACxC,gEAAgE,EAChE,aAAa,EACb,EAAE,CACH;SACA,MAAM,CAAC,KAAK,EAAE,OAA8B,EAAE,OAAgB,EAAE,EAAE;QACjE,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO;YACrC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC;YAClD,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,cAAc,GAAG,sBAAsB,CAC3C,OAAO,CAAC,cAAc,EACtB,mBAAmB,CACpB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;YAC3B,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC;YAChD,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;QAC3D,MAAM,uBAAuB,GAAG,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;QAC7D,MAAM,sBAAsB,GAC1B,mBAAmB,CAAC,MAAM,GAAG,CAAC,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ;YACnC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC;YACpD,CAAC,CAAC,sBAAsB;gBACtB,CAAC,CAAC,MAAM,uBAAuB,CAC3B,mBAAmB,EACnB,uBAAuB,CACxB;gBACH,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,oBAAoB,CAC5B,uFAAuF,CACxF,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,OAAO,CAAC,cAAc;YAC/C,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC;YACjE,CAAC,CAAC,qCAAqC,EAAE,CAAC;QAE5C,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,eAAe,IAAI,CAAC,MAAM,yBAAyB,CAAC;gBACtE,eAAe,EAAE,kBAAkB;aACpC,CAAC,CAAC,CAAC,eAAe,CAAC;YACpB,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;YAEnE,MAAM,cAAc,CAAC;gBACnB,WAAW;gBACX,YAAY;gBACZ,cAAc;gBACd,cAAc;gBACd,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;gBAC7B,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;gBAC3C,KAAK,EAAE,eAAe;aACvB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,aAAa,CAAC,KAAa,EAAE,QAAkB;IACtD,OAAO,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,mBAAsC,EACtC,uBAA0C;IAE1C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACtD,MAAM,SAAS,CACb,YAAY,EACZ,IAAI,CAAC,SAAS,CACZ;QACE,KAAK,EAAE;YACL,2BAA2B,EAAE,IAAI;YACjC,2BAA2B,EAAE,mBAAmB;YAChD,eAAe,EAAE,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,CAAC;SAClE;KACF,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAgB;IAK3C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChC,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAC9C,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACzB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEzB,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;IACpD,OAAO;QACL,WAAW;QACX,OAAO;QACP,MAAM,EAAE,OAAO;KAChB,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAyB,EACzB,UAAkB;IAElB,MAAM,UAAU,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IACjC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,oBAAoB,CAAC,GAAG,UAAU,4BAA4B,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,oBAAoB,CAC5B,GAAG,UAAU,iCAAiC,CAC/C,CAAC;IACJ,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,eAAe,CAAC,KAAsB;IAC7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,iBAAiB;YACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uBAAuB,KAAK,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,mBAAmB,KAAK,CAAC,QAAQ,KAAK,CACvG,CAAC;YACF,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC;YACrE,CAAC;YACD,MAAM;QACR,KAAK,iBAAiB;YACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC;YACnE,MAAM;QACR,KAAK,eAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,kBAAkB,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAC1D,CAAC;YACF,MAAM;QACR,KAAK,aAAa;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wDAAwD,KAAK,CAAC,cAAc,IAAI,CACjF,CAAC;YACF,MAAM;QACR,KAAK,eAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,sBAAsB,KAAK,CAAC,OAAO,CAAC,eAAe,IAAI,CACxD,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,KAAK,CAAC,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,CACnE,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,QAAQ,KAAK,CAAC,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,CAChE,CAAC;YACF,MAAM;QACR,KAAK,WAAW;YACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6BAA6B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAC3E,CAAC;YACF,MAAM;QACR,KAAK,gBAAgB;YACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,cAAc,KAAK,CAAC,MAAM,CAAC,gBAAgB,IAAI,SAAS,aAAa,KAAK,CAAC,MAAM,CAAC,aAAa,aAAa,KAAK,CAAC,MAAM,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAChP,CAAC;YACF,MAAM;QACR,KAAK,MAAM;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,KAAK,CAAC,MAAM,CAAC,WAAW,4BAA4B,CAC9D,CAAC;YACF,MAAM;QACR,KAAK,eAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,YAAY,KAAK,CAAC,MAAM,CAAC,WAAW,UAAU,KAAK,CAAC,MAAM,CAAC,uBAAuB,IAAI,CACvF,CAAC;YACF,MAAM;QACR,KAAK,kBAAkB;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,WAAW,KAAK,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CACjE,CAAC;YACF,MAAM;QACR,KAAK,SAAS;YACZ,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,MAAM;IACV,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,OAAuB;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,OAAO,CAAC,OAAO,CAAC,eAAe,IAAI,CAAC,CAAC;IACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;IAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IACpD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;QACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;QACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAChF,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;IAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;IACtD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,mBAAmB,CAAC,QAA8B;IACzD,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW;QACzC,CAAC,CAAC,YAAY,QAAQ,CAAC,WAAW,EAAE;QACpC,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,GAAG,QAAQ,CAAC,WAAW,GAAG,cAAc,WAAW,QAAQ,CAAC,cAAc,aAAa,QAAQ,CAAC,gBAAgB,YAAY,QAAQ,CAAC,cAAc,EAAE,CAAC;AAC/J,CAAC;AAED,SAAS,kBAAkB,CAAC,MAG3B;IACC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,SAAS,MAAM,CAAC,MAAM,UAAU,MAAM,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;AACzE,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,KAAK,YAAY,0BAA0B,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IAED,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;YACvD,IAAI,KAAK,CAAC,cAAc,KAAK,aAAa,EAAE,CAAC;gBAC3C,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACtD,KAAK,CAAC,IAAI,CAAC,sBAAsB,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CACR,mBAAmB,KAAK,CAAC,aAAa,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACvF,CAAC;YACF,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjD,KAAK,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjD,KAAK,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CACR,2BAA2B,KAAK,CAAC,eAAe,CAAC,OAAO,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACnG,CAAC;YACF,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnD,KAAK,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACxE,CAAC;YACD,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnD,KAAK,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;YACnD,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChE,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/C,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -4,6 +4,36 @@ export interface CommandLaunchOptions {
|
|
|
4
4
|
export interface RuntimeExecFileOptions {
|
|
5
5
|
shell?: boolean;
|
|
6
6
|
}
|
|
7
|
+
export interface CommandRunnerOptions {
|
|
8
|
+
cwd?: string;
|
|
9
|
+
env?: NodeJS.ProcessEnv;
|
|
10
|
+
timeoutMs?: number;
|
|
11
|
+
shell?: boolean;
|
|
12
|
+
maxBuffer?: number;
|
|
13
|
+
}
|
|
14
|
+
export interface CommandResult {
|
|
15
|
+
command: string;
|
|
16
|
+
args: string[];
|
|
17
|
+
stdout: string;
|
|
18
|
+
stderr: string;
|
|
19
|
+
cwd?: string;
|
|
20
|
+
exitCode?: number;
|
|
21
|
+
signal?: string;
|
|
22
|
+
timedOut?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface CommandFailureContext extends CommandResult {
|
|
25
|
+
exitCode?: number;
|
|
26
|
+
signal?: string;
|
|
27
|
+
timedOut: boolean;
|
|
28
|
+
failed: boolean;
|
|
29
|
+
shortMessage?: string;
|
|
30
|
+
}
|
|
31
|
+
export type CommandRunner = (command: string, args: string[], options?: CommandRunnerOptions) => Promise<CommandResult>;
|
|
32
|
+
export declare class CommandExecutionError extends Error {
|
|
33
|
+
readonly context: CommandFailureContext;
|
|
34
|
+
constructor(message: string, context: CommandFailureContext, options?: ErrorOptions);
|
|
35
|
+
}
|
|
7
36
|
export declare function normalizeCommandPath(commandPath: string): string;
|
|
8
|
-
export declare function requiresShellLaunch(
|
|
37
|
+
export declare function requiresShellLaunch(_commandPath: string, _platform?: NodeJS.Platform): boolean;
|
|
9
38
|
export declare function getCommandLaunchOptions(commandPath: string, options?: CommandLaunchOptions): RuntimeExecFileOptions;
|
|
39
|
+
export declare const runCommand: CommandRunner;
|
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { execa } from "execa";
|
|
2
|
+
export class CommandExecutionError extends Error {
|
|
3
|
+
context;
|
|
4
|
+
constructor(message, context, options) {
|
|
5
|
+
super(message, options);
|
|
6
|
+
this.name = "CommandExecutionError";
|
|
7
|
+
this.context = context;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
2
10
|
export function normalizeCommandPath(commandPath) {
|
|
3
11
|
const trimmed = commandPath.trim();
|
|
4
12
|
if (trimmed.length >= 2) {
|
|
@@ -10,16 +18,72 @@ export function normalizeCommandPath(commandPath) {
|
|
|
10
18
|
}
|
|
11
19
|
return trimmed;
|
|
12
20
|
}
|
|
13
|
-
export function requiresShellLaunch(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const extension = extname(normalizeCommandPath(commandPath)).toLowerCase();
|
|
18
|
-
return extension === ".cmd" || extension === ".bat";
|
|
21
|
+
export function requiresShellLaunch(_commandPath, _platform = process.platform) {
|
|
22
|
+
// Execa already handles Windows command shims without a shell wrapper.
|
|
23
|
+
// Keeping direct execution preserves argv boundaries for paths with spaces.
|
|
24
|
+
return false;
|
|
19
25
|
}
|
|
20
26
|
export function getCommandLaunchOptions(commandPath, options = {}) {
|
|
21
27
|
return requiresShellLaunch(commandPath, options.platform)
|
|
22
28
|
? { shell: true }
|
|
23
29
|
: {};
|
|
24
30
|
}
|
|
31
|
+
export const runCommand = async (command, args, options = {}) => {
|
|
32
|
+
try {
|
|
33
|
+
const result = await execa(command, args, {
|
|
34
|
+
cwd: options.cwd,
|
|
35
|
+
env: options.env,
|
|
36
|
+
timeout: options.timeoutMs,
|
|
37
|
+
shell: options.shell,
|
|
38
|
+
windowsHide: true,
|
|
39
|
+
maxBuffer: options.maxBuffer,
|
|
40
|
+
stdout: "pipe",
|
|
41
|
+
stderr: "pipe"
|
|
42
|
+
});
|
|
43
|
+
return {
|
|
44
|
+
command,
|
|
45
|
+
args,
|
|
46
|
+
stdout: normalizeOutput(result.stdout),
|
|
47
|
+
stderr: normalizeOutput(result.stderr),
|
|
48
|
+
cwd: result.cwd,
|
|
49
|
+
exitCode: result.exitCode,
|
|
50
|
+
signal: result.signal,
|
|
51
|
+
timedOut: result.timedOut
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
throw normalizeCommandError(command, args, error, options);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
function normalizeCommandError(command, args, error, options) {
|
|
59
|
+
const execaError = error;
|
|
60
|
+
const stdout = normalizeOutput(execaError.stdout);
|
|
61
|
+
const stderr = normalizeOutput(execaError.stderr);
|
|
62
|
+
const shortMessage = execaError.shortMessage ?? execaError.message;
|
|
63
|
+
const timedOut = execaError.timedOut === true;
|
|
64
|
+
const exitCode = typeof execaError.exitCode === "number" ? execaError.exitCode : undefined;
|
|
65
|
+
const signal = typeof execaError.signal === "string" ? execaError.signal : undefined;
|
|
66
|
+
const failed = execaError.failed !== false;
|
|
67
|
+
return new CommandExecutionError(shortMessage ?? `Command failed: ${command} ${args.join(" ")}`, {
|
|
68
|
+
command,
|
|
69
|
+
args,
|
|
70
|
+
stdout,
|
|
71
|
+
stderr,
|
|
72
|
+
cwd: typeof execaError.cwd === "string" ? execaError.cwd : options.cwd,
|
|
73
|
+
exitCode,
|
|
74
|
+
signal,
|
|
75
|
+
timedOut,
|
|
76
|
+
failed,
|
|
77
|
+
shortMessage
|
|
78
|
+
}, error instanceof Error ? { cause: error } : undefined);
|
|
79
|
+
}
|
|
80
|
+
function normalizeOutput(output) {
|
|
81
|
+
if (typeof output === "string") {
|
|
82
|
+
return output;
|
|
83
|
+
}
|
|
84
|
+
if (Buffer.isBuffer(output)) {
|
|
85
|
+
return output.toString("utf8");
|
|
86
|
+
}
|
|
87
|
+
return "";
|
|
88
|
+
}
|
|
25
89
|
//# sourceMappingURL=command-launch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-launch.js","sourceRoot":"","sources":["../../src/runtime/command-launch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"command-launch.js","sourceRoot":"","sources":["../../src/runtime/command-launch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
import { runCommand } from "./command-launch.js";
|
|
1
2
|
export declare class NodeRuntimeExtractionError extends Error {
|
|
2
3
|
constructor(message: string, options?: ErrorOptions);
|
|
3
4
|
}
|
|
4
|
-
export declare function extractNodeArchive(archivePath: string, stagingDirectory: string, archiveExtension: "zip" | "tar.xz"): Promise<string>;
|
|
5
|
+
export declare function extractNodeArchive(archivePath: string, stagingDirectory: string, archiveExtension: "zip" | "tar.xz", options?: NodeArchiveExtractionOptions): Promise<string>;
|
|
6
|
+
export interface NodeArchiveExtractionOptions {
|
|
7
|
+
runCommand?: typeof runCommand;
|
|
8
|
+
}
|
|
5
9
|
export declare function moveExtractedRootToTarget(extractedRoot: string, targetDirectory: string): Promise<void>;
|
|
6
10
|
export declare function assertTargetIsEmptyOrMissing(targetDirectory: string): Promise<void>;
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { createWriteStream } from "node:fs";
|
|
2
2
|
import { mkdir, readdir, readFile, rename, rm, stat, writeFile } from "node:fs/promises";
|
|
3
3
|
import { basename, dirname, join, relative, sep } from "node:path";
|
|
4
|
-
import { spawn } from "node:child_process";
|
|
5
4
|
import { createGunzip, gunzipSync } from "node:zlib";
|
|
6
5
|
import { pipeline } from "node:stream/promises";
|
|
7
6
|
import { createReadStream } from "node:fs";
|
|
7
|
+
import { CommandExecutionError, runCommand } from "./command-launch.js";
|
|
8
8
|
export class NodeRuntimeExtractionError extends Error {
|
|
9
9
|
constructor(message, options) {
|
|
10
10
|
super(message, options);
|
|
11
11
|
this.name = "NodeRuntimeExtractionError";
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
export async function extractNodeArchive(archivePath, stagingDirectory, archiveExtension) {
|
|
14
|
+
export async function extractNodeArchive(archivePath, stagingDirectory, archiveExtension, options = {}) {
|
|
15
15
|
await mkdir(stagingDirectory, { recursive: true });
|
|
16
16
|
if (archiveExtension === "zip") {
|
|
17
|
-
await extractZip(archivePath, stagingDirectory);
|
|
17
|
+
await extractZip(archivePath, stagingDirectory, options);
|
|
18
18
|
}
|
|
19
19
|
else {
|
|
20
|
-
await extractTar(archivePath, stagingDirectory);
|
|
20
|
+
await extractTar(archivePath, stagingDirectory, options);
|
|
21
21
|
}
|
|
22
22
|
return findExtractedRoot(stagingDirectory);
|
|
23
23
|
}
|
|
@@ -48,7 +48,7 @@ export async function assertTargetIsEmptyOrMissing(targetDirectory) {
|
|
|
48
48
|
throw error;
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
async function extractZip(archivePath, destination) {
|
|
51
|
+
async function extractZip(archivePath, destination, options) {
|
|
52
52
|
const extractors = ["unzip", "bsdtar"];
|
|
53
53
|
let lastError;
|
|
54
54
|
for (const extractor of extractors) {
|
|
@@ -56,7 +56,7 @@ async function extractZip(archivePath, destination) {
|
|
|
56
56
|
const args = extractor === "unzip"
|
|
57
57
|
? ["-q", archivePath, "-d", destination]
|
|
58
58
|
: ["-xf", archivePath, "-C", destination];
|
|
59
|
-
await runExtractor(extractor, args);
|
|
59
|
+
await runExtractor(extractor, args, options);
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
62
|
catch (error) {
|
|
@@ -65,9 +65,9 @@ async function extractZip(archivePath, destination) {
|
|
|
65
65
|
}
|
|
66
66
|
throw new NodeRuntimeExtractionError("Failed to extract zip archive. Install unzip or bsdtar, or provide a valid Node.js archive.", lastError ? { cause: lastError } : undefined);
|
|
67
67
|
}
|
|
68
|
-
async function extractTar(archivePath, destination) {
|
|
68
|
+
async function extractTar(archivePath, destination, options) {
|
|
69
69
|
try {
|
|
70
|
-
await runExtractor("tar", ["-xJf", archivePath, "-C", destination]);
|
|
70
|
+
await runExtractor("tar", ["-xJf", archivePath, "-C", destination], options);
|
|
71
71
|
}
|
|
72
72
|
catch (error) {
|
|
73
73
|
const directError = error instanceof Error ? error : new Error(String(error));
|
|
@@ -79,20 +79,16 @@ async function extractTar(archivePath, destination) {
|
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
async function runExtractor(command, args) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
reject(new Error(`${command} exited with code ${code ?? "unknown"}: ${Buffer.concat(stderr).toString("utf8").trim()}`));
|
|
94
|
-
});
|
|
95
|
-
});
|
|
82
|
+
async function runExtractor(command, args, options) {
|
|
83
|
+
try {
|
|
84
|
+
await (options.runCommand ?? runCommand)(command, args);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
if (error instanceof CommandExecutionError) {
|
|
88
|
+
throw new Error(`${command} exited with code ${error.context.exitCode ?? "unknown"}: ${error.context.stderr.trim()}`);
|
|
89
|
+
}
|
|
90
|
+
throw error;
|
|
91
|
+
}
|
|
96
92
|
}
|
|
97
93
|
async function findExtractedRoot(stagingDirectory) {
|
|
98
94
|
const entries = await readdir(stagingDirectory, { withFileTypes: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-extract.js","sourceRoot":"","sources":["../../src/runtime/node-extract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,MAAM,EACN,EAAE,EACF,IAAI,EACJ,SAAS,EACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"node-extract.js","sourceRoot":"","sources":["../../src/runtime/node-extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export interface NodePlatformTarget {
|
|
|
4
4
|
os: NodeOperatingSystem;
|
|
5
5
|
arch: NodeArchitecture;
|
|
6
6
|
nodeFileKey: `${NodeOperatingSystem}-${NodeArchitecture}`;
|
|
7
|
+
releaseFileKey: string;
|
|
7
8
|
archiveExtension: "zip" | "tar.xz";
|
|
8
9
|
executableName: "node.exe" | "node";
|
|
9
10
|
npmExecutableName: "npm.cmd" | "npm";
|
|
@@ -11,11 +11,21 @@ export function mapNodePlatform(platform = process.platform, arch = process.arch
|
|
|
11
11
|
os,
|
|
12
12
|
arch: nodeArch,
|
|
13
13
|
nodeFileKey: `${os}-${nodeArch}`,
|
|
14
|
+
releaseFileKey: getReleaseFileKey(os, nodeArch),
|
|
14
15
|
archiveExtension: os === "win" ? "zip" : "tar.xz",
|
|
15
16
|
executableName: os === "win" ? "node.exe" : "node",
|
|
16
17
|
npmExecutableName: os === "win" ? "npm.cmd" : "npm"
|
|
17
18
|
};
|
|
18
19
|
}
|
|
20
|
+
function getReleaseFileKey(os, arch) {
|
|
21
|
+
if (os === "darwin") {
|
|
22
|
+
return `osx-${arch}-tar`;
|
|
23
|
+
}
|
|
24
|
+
if (os === "win") {
|
|
25
|
+
return `win-${arch}-zip`;
|
|
26
|
+
}
|
|
27
|
+
return `${os}-${arch}`;
|
|
28
|
+
}
|
|
19
29
|
function mapOperatingSystem(platform) {
|
|
20
30
|
switch (platform) {
|
|
21
31
|
case "win32":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-platform.js","sourceRoot":"","sources":["../../src/runtime/node-platform.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node-platform.js","sourceRoot":"","sources":["../../src/runtime/node-platform.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAC7B,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAC3B,IAAI,GAAG,OAAO,CAAC,IAAI;IAEnB,MAAM,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAEvC,OAAO;QACL,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,GAAG,EAAE,IAAI,QAAQ,EAAE;QAChC,cAAc,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC;QAC/C,gBAAgB,EAAE,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;QACjD,cAAc,EAAE,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;QAClD,iBAAiB,EAAE,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,EAAuB,EACvB,IAAsB;IAEtB,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,OAAO,OAAO,IAAI,MAAM,CAAC;IAC3B,CAAC;IAED,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QACjB,OAAO,OAAO,IAAI,MAAM,CAAC;IAC3B,CAAC;IAED,OAAO,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC;QACf,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB;YACE,MAAM,IAAI,4BAA4B,CACpC,8DAA8D,QAAQ,EAAE,CACzE,CAAC;IACN,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,MAAM,IAAI,4BAA4B,CACpC,8DAA8D,IAAI,EAAE,CACrE,CAAC;IACN,CAAC;AACH,CAAC"}
|
|
@@ -23,6 +23,6 @@ export declare class NodeRuntimeSourcePolicyError extends Error {
|
|
|
23
23
|
export declare function normalizeVersionSelector(selector?: string): string;
|
|
24
24
|
export declare function validateVersionSelector(selector?: string): void;
|
|
25
25
|
export declare function fetchNodeReleaseMetadata(fetchImpl?: typeof fetch, baseUrl?: string): Promise<NodeReleaseMetadata[]>;
|
|
26
|
-
export declare function resolveNodeRelease(releases: NodeReleaseMetadata[], selector?: string): NodeReleaseMetadata;
|
|
26
|
+
export declare function resolveNodeRelease(releases: NodeReleaseMetadata[], selector?: string, platform?: NodePlatformTarget): NodeReleaseMetadata;
|
|
27
27
|
export declare function selectNodeArchive(releases: NodeReleaseMetadata[], selector?: string, platform?: NodePlatformTarget, baseUrl?: string): SelectedNodeArchive;
|
|
28
28
|
export declare function assertOfficialNodeDistBaseUrl(baseUrl: string): void;
|
|
@@ -43,11 +43,11 @@ export async function fetchNodeReleaseMetadata(fetchImpl = fetch, baseUrl = OFFI
|
|
|
43
43
|
}
|
|
44
44
|
return data.map(parseReleaseMetadata);
|
|
45
45
|
}
|
|
46
|
-
export function resolveNodeRelease(releases, selector) {
|
|
46
|
+
export function resolveNodeRelease(releases, selector, platform) {
|
|
47
47
|
validateVersionSelector(selector);
|
|
48
48
|
const normalized = normalizeVersionSelector(selector);
|
|
49
49
|
const sorted = [...releases].sort(compareReleaseDescending);
|
|
50
|
-
const selected = selectRelease(sorted, normalized);
|
|
50
|
+
const selected = selectRelease(sorted, normalized, platform);
|
|
51
51
|
if (!selected) {
|
|
52
52
|
throw new NodeVersionSelectorError(`No Node.js release matched version selector: ${selector ?? DEFAULT_NODE_MAJOR}`);
|
|
53
53
|
}
|
|
@@ -55,8 +55,8 @@ export function resolveNodeRelease(releases, selector) {
|
|
|
55
55
|
}
|
|
56
56
|
export function selectNodeArchive(releases, selector, platform = mapNodePlatform(), baseUrl = OFFICIAL_NODE_DIST_BASE_URL) {
|
|
57
57
|
assertOfficialNodeDistBaseUrl(baseUrl);
|
|
58
|
-
const release = resolveNodeRelease(releases, selector);
|
|
59
|
-
if (!release.files.includes(platform.
|
|
58
|
+
const release = resolveNodeRelease(releases, selector, platform);
|
|
59
|
+
if (!release.files.includes(platform.releaseFileKey)) {
|
|
60
60
|
throw new Error(`Node.js ${release.version} does not publish an archive for ${platform.nodeFileKey}.`);
|
|
61
61
|
}
|
|
62
62
|
const fileName = `node-${release.version}-${platform.nodeFileKey}.${platform.archiveExtension}`;
|
|
@@ -109,19 +109,22 @@ function parseReleaseMetadata(value) {
|
|
|
109
109
|
npm: typeof record.npm === "string" ? record.npm : undefined
|
|
110
110
|
};
|
|
111
111
|
}
|
|
112
|
-
function selectRelease(releases, selector) {
|
|
112
|
+
function selectRelease(releases, selector, platform) {
|
|
113
|
+
const candidates = platform
|
|
114
|
+
? releases.filter((release) => release.files.includes(platform.releaseFileKey))
|
|
115
|
+
: releases;
|
|
113
116
|
if (selector === "lts") {
|
|
114
|
-
return
|
|
117
|
+
return candidates.find((release) => Boolean(release.lts));
|
|
115
118
|
}
|
|
116
119
|
if (selector === "latest" || selector === "current") {
|
|
117
|
-
return
|
|
120
|
+
return candidates[0];
|
|
118
121
|
}
|
|
119
122
|
if (/^v?\d+$/.test(selector)) {
|
|
120
123
|
const major = Number(selector.replace(/^v/, ""));
|
|
121
|
-
return
|
|
124
|
+
return candidates.find((release) => getMajorVersion(release.version) === major);
|
|
122
125
|
}
|
|
123
126
|
const exact = selector.startsWith("v") ? selector : `v${selector}`;
|
|
124
|
-
return
|
|
127
|
+
return candidates.find((release) => release.version === exact);
|
|
125
128
|
}
|
|
126
129
|
function compareReleaseDescending(left, right) {
|
|
127
130
|
const leftParts = parseVersionParts(left.version);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-release.js","sourceRoot":"","sources":["../../src/runtime/node-release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AAE9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,2BAA2B,GAAG,yBAAyB,CAAC;AAiBrE,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAiB;IACxD,MAAM,OAAO,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjC,OAAO,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;QACvB,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,QAAiB;IACvD,MAAM,UAAU,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,OAAO;IACT,CAAC;IAED,IAAI,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,MAAM,IAAI,wBAAwB,CAChC,qCAAqC,QAAQ,IAAI,EAAE,uDAAuD,CAC3G,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,YAA0B,KAAK,EAC/B,OAAO,GAAG,2BAA2B;IAErC,6BAA6B,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,aAAa,EAAE;QACxD,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;KACxC,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,kDAAkD,QAAQ,CAAC,MAAM,EAAE,CACpE,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAY,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,QAA+B,EAC/B,QAAiB;
|
|
1
|
+
{"version":3,"file":"node-release.js","sourceRoot":"","sources":["../../src/runtime/node-release.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { access } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { constants } from "node:fs";
|
|
4
|
-
import {
|
|
5
|
-
import { promisify } from "node:util";
|
|
6
|
-
import { getCommandLaunchOptions } from "./command-launch.js";
|
|
7
|
-
const execFileAsync = promisify(execFile);
|
|
4
|
+
import { CommandExecutionError, getCommandLaunchOptions, runCommand as defaultRunCommand } from "./command-launch.js";
|
|
8
5
|
export async function verifyNodeRuntime(targetDirectory, options = {}) {
|
|
9
6
|
const timeoutMs = options.timeoutMs ?? 15_000;
|
|
10
7
|
const runCommand = options.runCommand ?? runVersionCommand;
|
|
@@ -53,17 +50,15 @@ export function getRuntimeExecutablePaths(targetDirectory, platform = process.pl
|
|
|
53
50
|
}
|
|
54
51
|
async function runVersionCommand(command, args, timeoutMs, launchOptions = {}) {
|
|
55
52
|
try {
|
|
56
|
-
const { stdout } = await
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
...launchOptions,
|
|
53
|
+
const { stdout } = await defaultRunCommand(command, args, {
|
|
54
|
+
timeoutMs,
|
|
55
|
+
shell: launchOptions.shell,
|
|
60
56
|
maxBuffer: 1024 * 1024
|
|
61
57
|
});
|
|
62
58
|
return stdout;
|
|
63
59
|
}
|
|
64
60
|
catch (error) {
|
|
65
|
-
const
|
|
66
|
-
const stderr = typeof execError.stderr === "string" ? execError.stderr.trim() : "";
|
|
61
|
+
const stderr = error instanceof CommandExecutionError ? error.context.stderr.trim() : "";
|
|
67
62
|
throw new Error(stderr.length > 0
|
|
68
63
|
? stderr
|
|
69
64
|
: `Command failed: ${command} ${args.join(" ")}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-verify.js","sourceRoot":"","sources":["../../src/runtime/node-verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"node-verify.js","sourceRoot":"","sources":["../../src/runtime/node-verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ export interface NpmGlobalCommandOptions {
|
|
|
16
16
|
env?: NodeJS.ProcessEnv;
|
|
17
17
|
platform?: NodeJS.Platform;
|
|
18
18
|
registryMirror?: string;
|
|
19
|
+
prefix?: string;
|
|
19
20
|
runCommand?: (command: string, args: string[], timeoutMs: number, launchOptions?: {
|
|
20
21
|
shell?: boolean;
|
|
21
22
|
}) => Promise<NpmCommandResult>;
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { promisify } from "node:util";
|
|
3
|
-
import { getCommandLaunchOptions } from "./command-launch.js";
|
|
4
|
-
const execFileAsync = promisify(execFile);
|
|
1
|
+
import { CommandExecutionError, getCommandLaunchOptions, runCommand as defaultRunCommand } from "./command-launch.js";
|
|
5
2
|
export class NpmCommandError extends Error {
|
|
6
3
|
context;
|
|
7
4
|
constructor(message, context) {
|
|
@@ -17,15 +14,16 @@ export async function installGlobalPackage(npmPath, selector, options = {}) {
|
|
|
17
14
|
return runNpmCommand(npmPath, buildInstallGlobalPackageArgs(selector, options), options);
|
|
18
15
|
}
|
|
19
16
|
export function buildListGlobalPackagesArgs(options = {}) {
|
|
20
|
-
return
|
|
17
|
+
return appendGlobalNpmOptions(["list", "-g", "--depth=0", "--json"], options);
|
|
21
18
|
}
|
|
22
19
|
export function buildInstallGlobalPackageArgs(selector, options = {}) {
|
|
23
|
-
return
|
|
20
|
+
return appendGlobalNpmOptions(["install", "-g", selector], options);
|
|
24
21
|
}
|
|
25
|
-
function
|
|
26
|
-
|
|
22
|
+
function appendGlobalNpmOptions(args, options) {
|
|
23
|
+
const nextArgs = options.registryMirror
|
|
27
24
|
? [...args, "--registry", options.registryMirror]
|
|
28
|
-
: args;
|
|
25
|
+
: [...args];
|
|
26
|
+
return options.prefix ? [...nextArgs, "--prefix", options.prefix] : nextArgs;
|
|
29
27
|
}
|
|
30
28
|
async function runNpmCommand(npmPath, args, options) {
|
|
31
29
|
const timeoutMs = options.timeoutMs ?? 120_000;
|
|
@@ -36,11 +34,10 @@ async function runNpmCommand(npmPath, args, options) {
|
|
|
36
34
|
}
|
|
37
35
|
async function execNpmCommand(command, args, timeoutMs, env, launchOptions = {}) {
|
|
38
36
|
try {
|
|
39
|
-
const { stdout, stderr } = await
|
|
40
|
-
|
|
41
|
-
windowsHide: true,
|
|
37
|
+
const { stdout, stderr } = await defaultRunCommand(command, args, {
|
|
38
|
+
timeoutMs,
|
|
42
39
|
env,
|
|
43
|
-
|
|
40
|
+
shell: launchOptions.shell,
|
|
44
41
|
maxBuffer: 10 * 1024 * 1024
|
|
45
42
|
});
|
|
46
43
|
return {
|
|
@@ -51,15 +48,13 @@ async function execNpmCommand(command, args, timeoutMs, env, launchOptions = {})
|
|
|
51
48
|
};
|
|
52
49
|
}
|
|
53
50
|
catch (error) {
|
|
54
|
-
const
|
|
55
|
-
const stdout = typeof execError.stdout === "string" ? execError.stdout : "";
|
|
56
|
-
const stderr = typeof execError.stderr === "string" ? execError.stderr : "";
|
|
51
|
+
const context = error instanceof CommandExecutionError ? error.context : undefined;
|
|
57
52
|
throw new NpmCommandError(`npm command failed: ${command} ${args.join(" ")}`, {
|
|
58
53
|
command,
|
|
59
54
|
args,
|
|
60
|
-
stdout,
|
|
61
|
-
stderr,
|
|
62
|
-
exitCode:
|
|
55
|
+
stdout: context?.stdout ?? "",
|
|
56
|
+
stderr: context?.stderr ?? "",
|
|
57
|
+
exitCode: context?.exitCode
|
|
63
58
|
});
|
|
64
59
|
}
|
|
65
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm-global.js","sourceRoot":"","sources":["../../src/runtime/npm-global.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"npm-global.js","sourceRoot":"","sources":["../../src/runtime/npm-global.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,10 +79,14 @@ export interface NpmSyncOptions {
|
|
|
79
79
|
manifestPath: string;
|
|
80
80
|
registryMirror?: string;
|
|
81
81
|
fallbackPolicy?: NpmSyncFallbackPolicy;
|
|
82
|
+
force?: boolean;
|
|
82
83
|
npmOptions?: NpmGlobalCommandOptions;
|
|
83
84
|
verifyRuntime?: typeof verifyNodeRuntime;
|
|
84
85
|
onLog?: (event: NpmSyncLogEvent) => void;
|
|
85
86
|
}
|
|
87
|
+
export interface NpmSyncPlanOptions {
|
|
88
|
+
force?: boolean;
|
|
89
|
+
}
|
|
86
90
|
export type NpmSyncLogEvent = {
|
|
87
91
|
type: "manifest-loaded";
|
|
88
92
|
manifestPath: string;
|
|
@@ -154,5 +158,5 @@ export declare function loadNpmSyncManifest(manifestPath: string): Promise<NpmSy
|
|
|
154
158
|
export declare function validateNpmSyncManifest(value: unknown): NpmSyncManifest;
|
|
155
159
|
export declare function validateRegistryMirror(value: unknown, path?: string): string | undefined;
|
|
156
160
|
export declare function normalizeGlobalInventory(stdout: string): InstalledGlobalPackages;
|
|
157
|
-
export declare function createNpmSyncPlan(manifest: NpmSyncManifest, installed: InstalledGlobalPackages): NpmSyncPlannedAction[];
|
|
161
|
+
export declare function createNpmSyncPlan(manifest: NpmSyncManifest, installed: InstalledGlobalPackages, options?: NpmSyncPlanOptions): NpmSyncPlannedAction[];
|
|
158
162
|
export declare function syncNpmGlobals(options: NpmSyncOptions): Promise<NpmSyncSummary>;
|
package/dist/runtime/npm-sync.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { readFile } from "node:fs/promises";
|
|
2
|
-
import { basename } from "node:path";
|
|
1
|
+
import { mkdir, readFile } from "node:fs/promises";
|
|
2
|
+
import { basename, join } from "node:path";
|
|
3
3
|
import semver from "semver";
|
|
4
4
|
import { installGlobalPackage, listGlobalPackages, NpmCommandError } from "./npm-global.js";
|
|
5
5
|
import { verifyNodeRuntime } from "./node-verify.js";
|
|
@@ -139,7 +139,8 @@ export function normalizeGlobalInventory(stdout) {
|
|
|
139
139
|
}
|
|
140
140
|
return installed;
|
|
141
141
|
}
|
|
142
|
-
export function createNpmSyncPlan(manifest, installed) {
|
|
142
|
+
export function createNpmSyncPlan(manifest, installed, options = {}) {
|
|
143
|
+
const force = options.force ?? false;
|
|
143
144
|
return Object.entries(manifest.packages)
|
|
144
145
|
.sort(([left], [right]) => left.localeCompare(right))
|
|
145
146
|
.map(([packageName, entry]) => {
|
|
@@ -166,7 +167,7 @@ export function createNpmSyncPlan(manifest, installed) {
|
|
|
166
167
|
targetSelector,
|
|
167
168
|
selectedInstallSelector,
|
|
168
169
|
installedVersion,
|
|
169
|
-
action: "noop",
|
|
170
|
+
action: force ? "sync" : "noop",
|
|
170
171
|
...metadata
|
|
171
172
|
};
|
|
172
173
|
}
|
|
@@ -224,29 +225,26 @@ export async function syncNpmGlobals(options) {
|
|
|
224
225
|
...options.npmOptions,
|
|
225
226
|
env: createRuntimeNpmEnv(runtime.targetDirectory, options.npmOptions?.env)
|
|
226
227
|
};
|
|
228
|
+
await prepareNpmGlobalPrefix(npmOptions.prefix, npmOptions.platform);
|
|
227
229
|
const fallbackEvents = [];
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
if (execution.fallback) {
|
|
241
|
-
fallbackEvents.push(execution.fallback);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
catch (error) {
|
|
245
|
-
throw error;
|
|
230
|
+
const inventoryExecution = await executeMirrorAwareNpmCommand({
|
|
231
|
+
commandKind: "inventory",
|
|
232
|
+
message: "Failed to list npm global packages",
|
|
233
|
+
npmOptions,
|
|
234
|
+
registryMirror,
|
|
235
|
+
fallbackPolicy,
|
|
236
|
+
onLog: options.onLog,
|
|
237
|
+
execute: (commandOptions) => listGlobalPackages(runtime.npmPath, commandOptions)
|
|
238
|
+
});
|
|
239
|
+
const inventoryResult = inventoryExecution.result;
|
|
240
|
+
if (inventoryExecution.fallback) {
|
|
241
|
+
fallbackEvents.push(inventoryExecution.fallback);
|
|
246
242
|
}
|
|
247
243
|
const installed = normalizeGlobalInventory(inventoryResult.stdout);
|
|
248
244
|
options.onLog?.({ type: "inventory", packages: installed });
|
|
249
|
-
const plan = createNpmSyncPlan(manifest, installed
|
|
245
|
+
const plan = createNpmSyncPlan(manifest, installed, {
|
|
246
|
+
force: options.force ?? false
|
|
247
|
+
});
|
|
250
248
|
const actions = [];
|
|
251
249
|
for (const action of plan) {
|
|
252
250
|
options.onLog?.({ type: "planned-action", action });
|
|
@@ -257,36 +255,31 @@ export async function syncNpmGlobals(options) {
|
|
|
257
255
|
continue;
|
|
258
256
|
}
|
|
259
257
|
options.onLog?.({ type: "install-start", action });
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
fallbackEvents.push(execution.fallback);
|
|
284
|
-
}
|
|
285
|
-
options.onLog?.({ type: "install-complete", action: result });
|
|
286
|
-
}
|
|
287
|
-
catch (error) {
|
|
288
|
-
throw error;
|
|
258
|
+
const execution = await executeMirrorAwareNpmCommand({
|
|
259
|
+
commandKind: "install",
|
|
260
|
+
message: `Failed to sync package ${action.packageName}`,
|
|
261
|
+
packageName: action.packageName,
|
|
262
|
+
npmOptions,
|
|
263
|
+
registryMirror,
|
|
264
|
+
fallbackPolicy,
|
|
265
|
+
onLog: options.onLog,
|
|
266
|
+
execute: (commandOptions) => installGlobalPackage(runtime.npmPath, action.selectedInstallSelector, commandOptions)
|
|
267
|
+
});
|
|
268
|
+
const installResult = execution.result;
|
|
269
|
+
const result = {
|
|
270
|
+
...action,
|
|
271
|
+
changed: true,
|
|
272
|
+
command: installResult.command,
|
|
273
|
+
args: installResult.args,
|
|
274
|
+
stdout: installResult.stdout,
|
|
275
|
+
stderr: installResult.stderr,
|
|
276
|
+
fallback: execution.fallback
|
|
277
|
+
};
|
|
278
|
+
actions.push(result);
|
|
279
|
+
if (execution.fallback) {
|
|
280
|
+
fallbackEvents.push(execution.fallback);
|
|
289
281
|
}
|
|
282
|
+
options.onLog?.({ type: "install-complete", action: result });
|
|
290
283
|
}
|
|
291
284
|
const summary = {
|
|
292
285
|
runtime,
|
|
@@ -365,6 +358,15 @@ function withRegistryMirror(options, registryMirror) {
|
|
|
365
358
|
function normalizeFallbackPolicy(value) {
|
|
366
359
|
return value === "mirror-only" ? "mirror-only" : "auto";
|
|
367
360
|
}
|
|
361
|
+
async function prepareNpmGlobalPrefix(prefix, platform = process.platform) {
|
|
362
|
+
if (!prefix) {
|
|
363
|
+
return;
|
|
364
|
+
}
|
|
365
|
+
const requiredDirectories = platform === "win32"
|
|
366
|
+
? [join(prefix, "node_modules")]
|
|
367
|
+
: [join(prefix, "lib", "node_modules"), join(prefix, "bin")];
|
|
368
|
+
await Promise.all(requiredDirectories.map((directory) => mkdir(directory, { recursive: true })));
|
|
369
|
+
}
|
|
368
370
|
function validateToolSyncManifest(value, registryMirror, existingErrors) {
|
|
369
371
|
if (existingErrors.length > 0) {
|
|
370
372
|
throw new NpmManifestValidationError([...existingErrors]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm-sync.js","sourceRoot":"","sources":["../../src/runtime/npm-sync.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"npm-sync.js","sourceRoot":"","sources":["../../src/runtime/npm-sync.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hagicode/hagiscript",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6-dev.36.1.bfa23c6",
|
|
4
4
|
"description": "Scoped npm package foundation for Hagiscript language tooling.",
|
|
5
|
+
"license": "MIT",
|
|
5
6
|
"homepage": "https://github.com/HagiCode-org/hagiscript#readme",
|
|
6
7
|
"bugs": {
|
|
7
8
|
"url": "https://github.com/HagiCode-org/hagiscript/issues"
|
|
@@ -57,6 +58,7 @@
|
|
|
57
58
|
},
|
|
58
59
|
"dependencies": {
|
|
59
60
|
"commander": "^14.0.1",
|
|
61
|
+
"execa": "^9.6.1",
|
|
60
62
|
"semver": "^7.7.4"
|
|
61
63
|
},
|
|
62
64
|
"devDependencies": {
|