@ai-ecoverse/slicc-jsh 0.3.3 → 0.3.4

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.
@@ -10,7 +10,7 @@ import vm from "node:vm";
10
10
  // package.json
11
11
  var package_default = {
12
12
  name: "@ai-ecoverse/slicc-jsh",
13
- version: "0.3.3",
13
+ version: "0.3.4",
14
14
  description: "Node.js-compatible runtime for slicc-kernel: the node and jsh commands (abi: js)",
15
15
  type: "module",
16
16
  license: "Apache-2.0",
package/dist/jsh.mjs CHANGED
@@ -1585,7 +1585,7 @@ function assignProcessExitCode(value) {
1585
1585
  // package.json
1586
1586
  var package_default = {
1587
1587
  name: "@ai-ecoverse/slicc-jsh",
1588
- version: "0.3.3",
1588
+ version: "0.3.4",
1589
1589
  description: "Node.js-compatible runtime for slicc-kernel: the node and jsh commands (abi: js)",
1590
1590
  type: "module",
1591
1591
  license: "Apache-2.0",
@@ -16444,6 +16444,25 @@ function readProcessCreds(ctx) {
16444
16444
  }
16445
16445
  return { uid: 0, euid: 0, gid: 0, egid: 0, groups: [0] };
16446
16446
  }
16447
+ function resolveNodeExecPath(ctx) {
16448
+ const fs = ctx?.sync?.fs;
16449
+ const pathEnv = ctx?.env?.PATH ?? "/usr/local/bin:/usr/bin:/bin";
16450
+ for (const dir of String(pathEnv).split(":")) {
16451
+ if (!dir) continue;
16452
+ const candidate = dir.endsWith("/") ? `${dir}node` : `${dir}/node`;
16453
+ try {
16454
+ if (fs?.exists?.(candidate)) {
16455
+ try {
16456
+ return typeof fs.realpath === "function" ? fs.realpath(candidate) : candidate;
16457
+ } catch {
16458
+ return candidate;
16459
+ }
16460
+ }
16461
+ } catch {
16462
+ }
16463
+ }
16464
+ return "/usr/bin/node";
16465
+ }
16447
16466
  var Process = class extends EventEmitter {
16448
16467
  constructor({ ctx, argv, nextTick, onExit, handles, Buffer: Buffer2 }) {
16449
16468
  super();
@@ -16464,7 +16483,7 @@ var Process = class extends EventEmitter {
16464
16483
  this.arch = "x64";
16465
16484
  this.pid = ctx.pid;
16466
16485
  this.ppid = void 0;
16467
- this.execPath = "/node_modules/@ai-ecoverse/slicc-jsh/dist/node.mjs";
16486
+ this.execPath = resolveNodeExecPath(ctx);
16468
16487
  this.execArgv = [];
16469
16488
  this.nextTick = nextTick.nextTick.bind(nextTick);
16470
16489
  this._umask = 18;
@@ -1 +1 @@
1
- {"inputs":{"src/runtime/exit.mjs":{"bytes":1670,"imports":[],"format":"esm"},"package.json":{"bytes":2579,"imports":[],"format":"esm","with":{"type":"json"}},"src/jsh/parse-flags.mjs":{"bytes":1829,"imports":[],"format":"esm"},"src/jsh/sliccy/exec.mjs":{"bytes":4790,"imports":[],"format":"esm"},"src/jsh/sliccy/http.mjs":{"bytes":5865,"imports":[],"format":"esm"},"src/jsh/sliccy/pure.mjs":{"bytes":7087,"imports":[],"format":"esm"},"src/jsh/sliccy/index.mjs":{"bytes":2910,"imports":[{"path":"src/jsh/sliccy/exec.mjs","kind":"import-statement","original":"./exec.mjs"},{"path":"src/jsh/sliccy/http.mjs","kind":"import-statement","original":"./http.mjs"},{"path":"src/jsh/sliccy/pure.mjs","kind":"import-statement","original":"./pure.mjs"}],"format":"esm"},"src/jsh/run.mjs":{"bytes":4655,"imports":[{"path":"package.json","kind":"import-statement","original":"../../package.json","with":{"type":"json"}},{"path":"src/jsh/parse-flags.mjs","kind":"import-statement","original":"./parse-flags.mjs"},{"path":"src/jsh/sliccy/index.mjs","kind":"import-statement","original":"./sliccy/index.mjs"}],"format":"esm"},"src/jsh/kernel.mjs":{"bytes":5909,"imports":[{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"../runtime/exit.mjs"},{"path":"src/jsh/run.mjs","kind":"import-statement","original":"./run.mjs"}],"format":"esm"},"src/runtime/async-handles.mjs":{"bytes":2272,"imports":[],"format":"esm"},"src/runtime/buffer.mjs":{"bytes":37245,"imports":[],"format":"esm"},"node_modules/node-inspect-extracted/dist/inspect.js":{"bytes":51340,"imports":[],"format":"cjs"},"node_modules/node-inspect-extracted/index.mjs":{"bytes":380,"imports":[{"path":"node_modules/node-inspect-extracted/dist/inspect.js","kind":"import-statement","original":"./dist/inspect.js"}],"format":"esm"},"src/runtime/builtins/util.mjs":{"bytes":4208,"imports":[{"path":"node_modules/node-inspect-extracted/index.mjs","kind":"import-statement","original":"node-inspect-extracted"}],"format":"esm"},"node_modules/acorn/dist/acorn.mjs":{"bytes":234658,"imports":[],"format":"esm"},"src/runtime/esm/transform.mjs":{"bytes":25854,"imports":[{"path":"node_modules/acorn/dist/acorn.mjs","kind":"import-statement","original":"acorn"}],"format":"esm"},"src/runtime/path.mjs":{"bytes":4249,"imports":[],"format":"esm"},"src/runtime/builtins/assert.mjs":{"bytes":20298,"imports":[{"path":"node_modules/node-inspect-extracted/index.mjs","kind":"import-statement","original":"node-inspect-extracted"}],"format":"esm"},"src/runtime/builtins/events.mjs":{"bytes":2406,"imports":[],"format":"esm"},"src/runtime/builtins/child-process.mjs":{"bytes":17552,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/fs.mjs":{"bytes":35102,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"}],"format":"esm"},"src/runtime/builtins/http.mjs":{"bytes":30054,"imports":[{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/https.mjs":{"bytes":8217,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/net.mjs":{"bytes":17353,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/os.mjs":{"bytes":719,"imports":[],"format":"esm"},"src/runtime/builtins/querystring.mjs":{"bytes":1235,"imports":[],"format":"esm"},"src/runtime/vendor-embedded.mjs":{"bytes":242925,"imports":[],"format":"esm"},"src/runtime/vendor-load.mjs":{"bytes":3872,"imports":[{"path":"src/runtime/vendor-embedded.mjs","kind":"import-statement","original":"./vendor-embedded.mjs"}],"format":"esm"},"src/runtime/builtins/stream.mjs":{"bytes":1276,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/vendor-load.mjs","kind":"import-statement","original":"../vendor-load.mjs"}],"format":"esm"},"src/runtime/builtins/string-decoder.mjs":{"bytes":3902,"imports":[{"path":"src/runtime/vendor-load.mjs","kind":"import-statement","original":"../vendor-load.mjs"}],"format":"esm"},"src/runtime/builtins/timers-module.mjs":{"bytes":1138,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"}],"format":"esm"},"src/runtime/builtins/url.mjs":{"bytes":1774,"imports":[],"format":"esm"},"src/runtime/cjs/builtins.mjs":{"bytes":4969,"imports":[{"path":"src/runtime/builtins/assert.mjs","kind":"import-statement","original":"../builtins/assert.mjs"},{"path":"src/runtime/builtins/child-process.mjs","kind":"import-statement","original":"../builtins/child-process.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"../builtins/events.mjs"},{"path":"src/runtime/builtins/fs.mjs","kind":"import-statement","original":"../builtins/fs.mjs"},{"path":"src/runtime/builtins/http.mjs","kind":"import-statement","original":"../builtins/http.mjs"},{"path":"src/runtime/builtins/https.mjs","kind":"import-statement","original":"../builtins/https.mjs"},{"path":"src/runtime/builtins/net.mjs","kind":"import-statement","original":"../builtins/net.mjs"},{"path":"src/runtime/builtins/os.mjs","kind":"import-statement","original":"../builtins/os.mjs"},{"path":"src/runtime/builtins/querystring.mjs","kind":"import-statement","original":"../builtins/querystring.mjs"},{"path":"src/runtime/builtins/stream.mjs","kind":"import-statement","original":"../builtins/stream.mjs"},{"path":"src/runtime/builtins/string-decoder.mjs","kind":"import-statement","original":"../builtins/string-decoder.mjs"},{"path":"src/runtime/builtins/timers-module.mjs","kind":"import-statement","original":"../builtins/timers-module.mjs"},{"path":"src/runtime/builtins/url.mjs","kind":"import-statement","original":"../builtins/url.mjs"},{"path":"src/runtime/builtins/util.mjs","kind":"import-statement","original":"../builtins/util.mjs"}],"format":"esm"},"src/runtime/cjs/errors.mjs":{"bytes":882,"imports":[],"format":"esm"},"src/runtime/cjs/resolve.mjs":{"bytes":9966,"imports":[{"path":"src/runtime/cjs/errors.mjs","kind":"import-statement","original":"./errors.mjs"}],"format":"esm"},"src/runtime/cjs/loader.mjs":{"bytes":13441,"imports":[{"path":"src/runtime/esm/transform.mjs","kind":"import-statement","original":"../esm/transform.mjs"},{"path":"src/runtime/path.mjs","kind":"import-statement","original":"../path.mjs"},{"path":"src/runtime/cjs/builtins.mjs","kind":"import-statement","original":"./builtins.mjs"},{"path":"src/runtime/cjs/resolve.mjs","kind":"import-statement","original":"./resolve.mjs"}],"format":"esm"},"src/runtime/cli.mjs":{"bytes":2291,"imports":[],"format":"esm"},"src/runtime/console.mjs":{"bytes":4413,"imports":[],"format":"esm"},"src/runtime/esm/loader.mjs":{"bytes":13249,"imports":[{"path":"src/runtime/path.mjs","kind":"import-statement","original":"../path.mjs"},{"path":"src/runtime/cjs/resolve.mjs","kind":"import-statement","original":"../cjs/resolve.mjs"},{"path":"src/runtime/esm/transform.mjs","kind":"import-statement","original":"./transform.mjs"}],"format":"esm"},"src/runtime/stack.mjs":{"bytes":8404,"imports":[],"format":"esm"},"src/runtime/errors-format.mjs":{"bytes":11779,"imports":[{"path":"src/runtime/stack.mjs","kind":"import-statement","original":"./stack.mjs"}],"format":"esm"},"src/runtime/handles.mjs":{"bytes":800,"imports":[],"format":"esm"},"src/runtime/next-tick.mjs":{"bytes":1268,"imports":[],"format":"esm"},"src/runtime/process.mjs":{"bytes":15294,"imports":[{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./builtins/events.mjs"},{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"./exit.mjs"}],"format":"esm"},"src/runtime/timers.mjs":{"bytes":3775,"imports":[],"format":"esm"},"src/runtime/web/fetch.mjs":{"bytes":443,"imports":[],"format":"esm"},"src/runtime/web/websocket.mjs":{"bytes":9771,"imports":[{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"../exit.mjs"}],"format":"esm"},"src/runtime/run.mjs":{"bytes":17936,"imports":[{"path":"src/jsh/kernel.mjs","kind":"import-statement","original":"../jsh/kernel.mjs"},{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"./async-handles.mjs"},{"path":"src/runtime/buffer.mjs","kind":"import-statement","original":"./buffer.mjs"},{"path":"src/runtime/builtins/util.mjs","kind":"import-statement","original":"./builtins/util.mjs"},{"path":"src/runtime/cjs/loader.mjs","kind":"import-statement","original":"./cjs/loader.mjs"},{"path":"src/runtime/cli.mjs","kind":"import-statement","original":"./cli.mjs"},{"path":"src/runtime/console.mjs","kind":"import-statement","original":"./console.mjs"},{"path":"src/runtime/esm/loader.mjs","kind":"import-statement","original":"./esm/loader.mjs"},{"path":"src/runtime/esm/transform.mjs","kind":"import-statement","original":"./esm/transform.mjs"},{"path":"src/runtime/errors-format.mjs","kind":"import-statement","original":"./errors-format.mjs"},{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"./exit.mjs"},{"path":"src/runtime/handles.mjs","kind":"import-statement","original":"./handles.mjs"},{"path":"src/runtime/next-tick.mjs","kind":"import-statement","original":"./next-tick.mjs"},{"path":"src/runtime/process.mjs","kind":"import-statement","original":"./process.mjs"},{"path":"src/runtime/stack.mjs","kind":"import-statement","original":"./stack.mjs"},{"path":"src/runtime/timers.mjs","kind":"import-statement","original":"./timers.mjs"},{"path":"src/runtime/web/fetch.mjs","kind":"import-statement","original":"./web/fetch.mjs"},{"path":"src/runtime/web/websocket.mjs","kind":"import-statement","original":"./web/websocket.mjs"}],"format":"esm"},"src/node.mjs":{"bytes":233,"imports":[{"path":"src/runtime/run.mjs","kind":"import-statement","original":"./runtime/run.mjs"}],"format":"esm"},"src/jsh.mjs":{"bytes":1273,"imports":[{"path":"src/jsh/kernel.mjs","kind":"import-statement","original":"./jsh/kernel.mjs"},{"path":"src/jsh/run.mjs","kind":"import-statement","original":"./jsh/run.mjs"},{"path":"src/runtime/run.mjs","kind":"import-statement","original":"./runtime/run.mjs"}],"format":"esm"}},"outputs":{"dist/node.mjs":{"imports":[],"exports":["default"],"entryPoint":"src/node.mjs","inputs":{"node_modules/node-inspect-extracted/dist/inspect.js":{"bytesInOutput":86401},"src/runtime/exit.mjs":{"bytesInOutput":1573},"package.json":{"bytesInOutput":2504},"src/jsh/parse-flags.mjs":{"bytesInOutput":1558},"src/jsh/sliccy/exec.mjs":{"bytesInOutput":4077},"src/jsh/sliccy/http.mjs":{"bytesInOutput":5497},"src/jsh/sliccy/pure.mjs":{"bytesInOutput":6246},"src/jsh/sliccy/index.mjs":{"bytesInOutput":2229},"src/jsh/run.mjs":{"bytesInOutput":2930},"src/jsh/kernel.mjs":{"bytesInOutput":4606},"src/runtime/async-handles.mjs":{"bytesInOutput":1156},"src/runtime/buffer.mjs":{"bytesInOutput":36834},"node_modules/node-inspect-extracted/index.mjs":{"bytesInOutput":387},"src/runtime/builtins/util.mjs":{"bytesInOutput":3726},"node_modules/acorn/dist/acorn.mjs":{"bytesInOutput":203908},"src/runtime/esm/transform.mjs":{"bytesInOutput":20720},"src/runtime/path.mjs":{"bytesInOutput":4196},"src/runtime/builtins/assert.mjs":{"bytesInOutput":19383},"src/runtime/builtins/events.mjs":{"bytesInOutput":2336},"src/runtime/builtins/child-process.mjs":{"bytesInOutput":15697},"src/runtime/builtins/fs.mjs":{"bytesInOutput":33539},"src/runtime/builtins/http.mjs":{"bytesInOutput":27190},"src/runtime/builtins/https.mjs":{"bytesInOutput":7341},"src/runtime/builtins/net.mjs":{"bytesInOutput":14529},"src/runtime/builtins/os.mjs":{"bytesInOutput":648},"src/runtime/builtins/querystring.mjs":{"bytesInOutput":1197},"src/runtime/vendor-embedded.mjs":{"bytesInOutput":241089},"src/runtime/vendor-load.mjs":{"bytesInOutput":2914},"src/runtime/builtins/stream.mjs":{"bytesInOutput":1139},"src/runtime/builtins/string-decoder.mjs":{"bytesInOutput":3222},"src/runtime/builtins/timers-module.mjs":{"bytesInOutput":969},"src/runtime/builtins/url.mjs":{"bytesInOutput":1697},"src/runtime/cjs/builtins.mjs":{"bytesInOutput":4158},"src/runtime/cjs/errors.mjs":{"bytesInOutput":574},"src/runtime/cjs/resolve.mjs":{"bytesInOutput":8866},"src/runtime/cjs/loader.mjs":{"bytesInOutput":11203},"src/runtime/cli.mjs":{"bytesInOutput":2165},"src/runtime/console.mjs":{"bytesInOutput":4414},"src/runtime/esm/loader.mjs":{"bytesInOutput":11287},"src/runtime/stack.mjs":{"bytesInOutput":6887},"src/runtime/errors-format.mjs":{"bytesInOutput":9795},"src/runtime/handles.mjs":{"bytesInOutput":688},"src/runtime/next-tick.mjs":{"bytesInOutput":900},"src/runtime/process.mjs":{"bytesInOutput":14431},"src/runtime/timers.mjs":{"bytesInOutput":3529},"src/runtime/web/fetch.mjs":{"bytesInOutput":358},"src/runtime/web/websocket.mjs":{"bytesInOutput":8204},"src/runtime/run.mjs":{"bytesInOutput":13844},"src/node.mjs":{"bytesInOutput":52}},"bytes":865753},"dist/jsh.mjs":{"imports":[],"exports":["default"],"entryPoint":"src/jsh.mjs","inputs":{"node_modules/node-inspect-extracted/dist/inspect.js":{"bytesInOutput":86401},"src/runtime/exit.mjs":{"bytesInOutput":1573},"package.json":{"bytesInOutput":2504},"src/jsh/parse-flags.mjs":{"bytesInOutput":1558},"src/jsh/sliccy/exec.mjs":{"bytesInOutput":4077},"src/jsh/sliccy/http.mjs":{"bytesInOutput":5497},"src/jsh/sliccy/pure.mjs":{"bytesInOutput":6246},"src/jsh/sliccy/index.mjs":{"bytesInOutput":2229},"src/jsh/run.mjs":{"bytesInOutput":2930},"src/jsh/kernel.mjs":{"bytesInOutput":4606},"src/runtime/async-handles.mjs":{"bytesInOutput":1156},"src/runtime/buffer.mjs":{"bytesInOutput":36834},"node_modules/node-inspect-extracted/index.mjs":{"bytesInOutput":387},"src/runtime/builtins/util.mjs":{"bytesInOutput":3726},"node_modules/acorn/dist/acorn.mjs":{"bytesInOutput":203908},"src/runtime/esm/transform.mjs":{"bytesInOutput":20720},"src/runtime/path.mjs":{"bytesInOutput":4196},"src/runtime/builtins/assert.mjs":{"bytesInOutput":19383},"src/runtime/builtins/events.mjs":{"bytesInOutput":2336},"src/runtime/builtins/child-process.mjs":{"bytesInOutput":15697},"src/runtime/builtins/fs.mjs":{"bytesInOutput":33539},"src/runtime/builtins/http.mjs":{"bytesInOutput":27190},"src/runtime/builtins/https.mjs":{"bytesInOutput":7341},"src/runtime/builtins/net.mjs":{"bytesInOutput":14529},"src/runtime/builtins/os.mjs":{"bytesInOutput":648},"src/runtime/builtins/querystring.mjs":{"bytesInOutput":1197},"src/runtime/vendor-embedded.mjs":{"bytesInOutput":241089},"src/runtime/vendor-load.mjs":{"bytesInOutput":2914},"src/runtime/builtins/stream.mjs":{"bytesInOutput":1139},"src/runtime/builtins/string-decoder.mjs":{"bytesInOutput":3222},"src/runtime/builtins/timers-module.mjs":{"bytesInOutput":969},"src/runtime/builtins/url.mjs":{"bytesInOutput":1697},"src/runtime/cjs/builtins.mjs":{"bytesInOutput":4158},"src/runtime/cjs/errors.mjs":{"bytesInOutput":574},"src/runtime/cjs/resolve.mjs":{"bytesInOutput":8866},"src/runtime/cjs/loader.mjs":{"bytesInOutput":11203},"src/runtime/cli.mjs":{"bytesInOutput":2165},"src/runtime/console.mjs":{"bytesInOutput":4414},"src/runtime/esm/loader.mjs":{"bytesInOutput":11287},"src/runtime/stack.mjs":{"bytesInOutput":6887},"src/runtime/errors-format.mjs":{"bytesInOutput":9795},"src/runtime/handles.mjs":{"bytesInOutput":688},"src/runtime/next-tick.mjs":{"bytesInOutput":900},"src/runtime/process.mjs":{"bytesInOutput":14431},"src/runtime/timers.mjs":{"bytesInOutput":3529},"src/runtime/web/fetch.mjs":{"bytesInOutput":358},"src/runtime/web/websocket.mjs":{"bytesInOutput":8204},"src/runtime/run.mjs":{"bytesInOutput":13844},"src/jsh.mjs":{"bytesInOutput":761}},"bytes":866461}}}
1
+ {"inputs":{"src/runtime/exit.mjs":{"bytes":1670,"imports":[],"format":"esm"},"package.json":{"bytes":2579,"imports":[],"format":"esm","with":{"type":"json"}},"src/jsh/parse-flags.mjs":{"bytes":1829,"imports":[],"format":"esm"},"src/jsh/sliccy/exec.mjs":{"bytes":4790,"imports":[],"format":"esm"},"src/jsh/sliccy/http.mjs":{"bytes":5865,"imports":[],"format":"esm"},"src/jsh/sliccy/pure.mjs":{"bytes":7087,"imports":[],"format":"esm"},"src/jsh/sliccy/index.mjs":{"bytes":2910,"imports":[{"path":"src/jsh/sliccy/exec.mjs","kind":"import-statement","original":"./exec.mjs"},{"path":"src/jsh/sliccy/http.mjs","kind":"import-statement","original":"./http.mjs"},{"path":"src/jsh/sliccy/pure.mjs","kind":"import-statement","original":"./pure.mjs"}],"format":"esm"},"src/jsh/run.mjs":{"bytes":4655,"imports":[{"path":"package.json","kind":"import-statement","original":"../../package.json","with":{"type":"json"}},{"path":"src/jsh/parse-flags.mjs","kind":"import-statement","original":"./parse-flags.mjs"},{"path":"src/jsh/sliccy/index.mjs","kind":"import-statement","original":"./sliccy/index.mjs"}],"format":"esm"},"src/jsh/kernel.mjs":{"bytes":5909,"imports":[{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"../runtime/exit.mjs"},{"path":"src/jsh/run.mjs","kind":"import-statement","original":"./run.mjs"}],"format":"esm"},"src/runtime/async-handles.mjs":{"bytes":2272,"imports":[],"format":"esm"},"src/runtime/buffer.mjs":{"bytes":37245,"imports":[],"format":"esm"},"node_modules/node-inspect-extracted/dist/inspect.js":{"bytes":51340,"imports":[],"format":"cjs"},"node_modules/node-inspect-extracted/index.mjs":{"bytes":380,"imports":[{"path":"node_modules/node-inspect-extracted/dist/inspect.js","kind":"import-statement","original":"./dist/inspect.js"}],"format":"esm"},"src/runtime/builtins/util.mjs":{"bytes":4208,"imports":[{"path":"node_modules/node-inspect-extracted/index.mjs","kind":"import-statement","original":"node-inspect-extracted"}],"format":"esm"},"node_modules/acorn/dist/acorn.mjs":{"bytes":234658,"imports":[],"format":"esm"},"src/runtime/esm/transform.mjs":{"bytes":25854,"imports":[{"path":"node_modules/acorn/dist/acorn.mjs","kind":"import-statement","original":"acorn"}],"format":"esm"},"src/runtime/path.mjs":{"bytes":4249,"imports":[],"format":"esm"},"src/runtime/builtins/assert.mjs":{"bytes":20298,"imports":[{"path":"node_modules/node-inspect-extracted/index.mjs","kind":"import-statement","original":"node-inspect-extracted"}],"format":"esm"},"src/runtime/builtins/events.mjs":{"bytes":2406,"imports":[],"format":"esm"},"src/runtime/builtins/child-process.mjs":{"bytes":17552,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/fs.mjs":{"bytes":35102,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"}],"format":"esm"},"src/runtime/builtins/http.mjs":{"bytes":30054,"imports":[{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/https.mjs":{"bytes":8217,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/net.mjs":{"bytes":17353,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./events.mjs"}],"format":"esm"},"src/runtime/builtins/os.mjs":{"bytes":719,"imports":[],"format":"esm"},"src/runtime/builtins/querystring.mjs":{"bytes":1235,"imports":[],"format":"esm"},"src/runtime/vendor-embedded.mjs":{"bytes":242925,"imports":[],"format":"esm"},"src/runtime/vendor-load.mjs":{"bytes":3872,"imports":[{"path":"src/runtime/vendor-embedded.mjs","kind":"import-statement","original":"./vendor-embedded.mjs"}],"format":"esm"},"src/runtime/builtins/stream.mjs":{"bytes":1276,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"},{"path":"src/runtime/vendor-load.mjs","kind":"import-statement","original":"../vendor-load.mjs"}],"format":"esm"},"src/runtime/builtins/string-decoder.mjs":{"bytes":3902,"imports":[{"path":"src/runtime/vendor-load.mjs","kind":"import-statement","original":"../vendor-load.mjs"}],"format":"esm"},"src/runtime/builtins/timers-module.mjs":{"bytes":1138,"imports":[{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"../async-handles.mjs"}],"format":"esm"},"src/runtime/builtins/url.mjs":{"bytes":1774,"imports":[],"format":"esm"},"src/runtime/cjs/builtins.mjs":{"bytes":4969,"imports":[{"path":"src/runtime/builtins/assert.mjs","kind":"import-statement","original":"../builtins/assert.mjs"},{"path":"src/runtime/builtins/child-process.mjs","kind":"import-statement","original":"../builtins/child-process.mjs"},{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"../builtins/events.mjs"},{"path":"src/runtime/builtins/fs.mjs","kind":"import-statement","original":"../builtins/fs.mjs"},{"path":"src/runtime/builtins/http.mjs","kind":"import-statement","original":"../builtins/http.mjs"},{"path":"src/runtime/builtins/https.mjs","kind":"import-statement","original":"../builtins/https.mjs"},{"path":"src/runtime/builtins/net.mjs","kind":"import-statement","original":"../builtins/net.mjs"},{"path":"src/runtime/builtins/os.mjs","kind":"import-statement","original":"../builtins/os.mjs"},{"path":"src/runtime/builtins/querystring.mjs","kind":"import-statement","original":"../builtins/querystring.mjs"},{"path":"src/runtime/builtins/stream.mjs","kind":"import-statement","original":"../builtins/stream.mjs"},{"path":"src/runtime/builtins/string-decoder.mjs","kind":"import-statement","original":"../builtins/string-decoder.mjs"},{"path":"src/runtime/builtins/timers-module.mjs","kind":"import-statement","original":"../builtins/timers-module.mjs"},{"path":"src/runtime/builtins/url.mjs","kind":"import-statement","original":"../builtins/url.mjs"},{"path":"src/runtime/builtins/util.mjs","kind":"import-statement","original":"../builtins/util.mjs"}],"format":"esm"},"src/runtime/cjs/errors.mjs":{"bytes":882,"imports":[],"format":"esm"},"src/runtime/cjs/resolve.mjs":{"bytes":9966,"imports":[{"path":"src/runtime/cjs/errors.mjs","kind":"import-statement","original":"./errors.mjs"}],"format":"esm"},"src/runtime/cjs/loader.mjs":{"bytes":13441,"imports":[{"path":"src/runtime/esm/transform.mjs","kind":"import-statement","original":"../esm/transform.mjs"},{"path":"src/runtime/path.mjs","kind":"import-statement","original":"../path.mjs"},{"path":"src/runtime/cjs/builtins.mjs","kind":"import-statement","original":"./builtins.mjs"},{"path":"src/runtime/cjs/resolve.mjs","kind":"import-statement","original":"./resolve.mjs"}],"format":"esm"},"src/runtime/cli.mjs":{"bytes":2291,"imports":[],"format":"esm"},"src/runtime/console.mjs":{"bytes":4413,"imports":[],"format":"esm"},"src/runtime/esm/loader.mjs":{"bytes":13249,"imports":[{"path":"src/runtime/path.mjs","kind":"import-statement","original":"../path.mjs"},{"path":"src/runtime/cjs/resolve.mjs","kind":"import-statement","original":"../cjs/resolve.mjs"},{"path":"src/runtime/esm/transform.mjs","kind":"import-statement","original":"./transform.mjs"}],"format":"esm"},"src/runtime/stack.mjs":{"bytes":8404,"imports":[],"format":"esm"},"src/runtime/errors-format.mjs":{"bytes":11779,"imports":[{"path":"src/runtime/stack.mjs","kind":"import-statement","original":"./stack.mjs"}],"format":"esm"},"src/runtime/handles.mjs":{"bytes":800,"imports":[],"format":"esm"},"src/runtime/next-tick.mjs":{"bytes":1268,"imports":[],"format":"esm"},"src/runtime/process.mjs":{"bytes":16081,"imports":[{"path":"src/runtime/builtins/events.mjs","kind":"import-statement","original":"./builtins/events.mjs"},{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"./exit.mjs"}],"format":"esm"},"src/runtime/timers.mjs":{"bytes":3775,"imports":[],"format":"esm"},"src/runtime/web/fetch.mjs":{"bytes":443,"imports":[],"format":"esm"},"src/runtime/web/websocket.mjs":{"bytes":9771,"imports":[{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"../exit.mjs"}],"format":"esm"},"src/runtime/run.mjs":{"bytes":17936,"imports":[{"path":"src/jsh/kernel.mjs","kind":"import-statement","original":"../jsh/kernel.mjs"},{"path":"src/runtime/async-handles.mjs","kind":"import-statement","original":"./async-handles.mjs"},{"path":"src/runtime/buffer.mjs","kind":"import-statement","original":"./buffer.mjs"},{"path":"src/runtime/builtins/util.mjs","kind":"import-statement","original":"./builtins/util.mjs"},{"path":"src/runtime/cjs/loader.mjs","kind":"import-statement","original":"./cjs/loader.mjs"},{"path":"src/runtime/cli.mjs","kind":"import-statement","original":"./cli.mjs"},{"path":"src/runtime/console.mjs","kind":"import-statement","original":"./console.mjs"},{"path":"src/runtime/esm/loader.mjs","kind":"import-statement","original":"./esm/loader.mjs"},{"path":"src/runtime/esm/transform.mjs","kind":"import-statement","original":"./esm/transform.mjs"},{"path":"src/runtime/errors-format.mjs","kind":"import-statement","original":"./errors-format.mjs"},{"path":"src/runtime/exit.mjs","kind":"import-statement","original":"./exit.mjs"},{"path":"src/runtime/handles.mjs","kind":"import-statement","original":"./handles.mjs"},{"path":"src/runtime/next-tick.mjs","kind":"import-statement","original":"./next-tick.mjs"},{"path":"src/runtime/process.mjs","kind":"import-statement","original":"./process.mjs"},{"path":"src/runtime/stack.mjs","kind":"import-statement","original":"./stack.mjs"},{"path":"src/runtime/timers.mjs","kind":"import-statement","original":"./timers.mjs"},{"path":"src/runtime/web/fetch.mjs","kind":"import-statement","original":"./web/fetch.mjs"},{"path":"src/runtime/web/websocket.mjs","kind":"import-statement","original":"./web/websocket.mjs"}],"format":"esm"},"src/node.mjs":{"bytes":233,"imports":[{"path":"src/runtime/run.mjs","kind":"import-statement","original":"./runtime/run.mjs"}],"format":"esm"},"src/jsh.mjs":{"bytes":1273,"imports":[{"path":"src/jsh/kernel.mjs","kind":"import-statement","original":"./jsh/kernel.mjs"},{"path":"src/jsh/run.mjs","kind":"import-statement","original":"./jsh/run.mjs"},{"path":"src/runtime/run.mjs","kind":"import-statement","original":"./runtime/run.mjs"}],"format":"esm"}},"outputs":{"dist/node.mjs":{"imports":[],"exports":["default"],"entryPoint":"src/node.mjs","inputs":{"node_modules/node-inspect-extracted/dist/inspect.js":{"bytesInOutput":86401},"src/runtime/exit.mjs":{"bytesInOutput":1573},"package.json":{"bytesInOutput":2504},"src/jsh/parse-flags.mjs":{"bytesInOutput":1558},"src/jsh/sliccy/exec.mjs":{"bytesInOutput":4077},"src/jsh/sliccy/http.mjs":{"bytesInOutput":5497},"src/jsh/sliccy/pure.mjs":{"bytesInOutput":6246},"src/jsh/sliccy/index.mjs":{"bytesInOutput":2229},"src/jsh/run.mjs":{"bytesInOutput":2930},"src/jsh/kernel.mjs":{"bytesInOutput":4606},"src/runtime/async-handles.mjs":{"bytesInOutput":1156},"src/runtime/buffer.mjs":{"bytesInOutput":36834},"node_modules/node-inspect-extracted/index.mjs":{"bytesInOutput":387},"src/runtime/builtins/util.mjs":{"bytesInOutput":3726},"node_modules/acorn/dist/acorn.mjs":{"bytesInOutput":203908},"src/runtime/esm/transform.mjs":{"bytesInOutput":20720},"src/runtime/path.mjs":{"bytesInOutput":4196},"src/runtime/builtins/assert.mjs":{"bytesInOutput":19383},"src/runtime/builtins/events.mjs":{"bytesInOutput":2336},"src/runtime/builtins/child-process.mjs":{"bytesInOutput":15697},"src/runtime/builtins/fs.mjs":{"bytesInOutput":33539},"src/runtime/builtins/http.mjs":{"bytesInOutput":27190},"src/runtime/builtins/https.mjs":{"bytesInOutput":7341},"src/runtime/builtins/net.mjs":{"bytesInOutput":14529},"src/runtime/builtins/os.mjs":{"bytesInOutput":648},"src/runtime/builtins/querystring.mjs":{"bytesInOutput":1197},"src/runtime/vendor-embedded.mjs":{"bytesInOutput":241089},"src/runtime/vendor-load.mjs":{"bytesInOutput":2914},"src/runtime/builtins/stream.mjs":{"bytesInOutput":1139},"src/runtime/builtins/string-decoder.mjs":{"bytesInOutput":3222},"src/runtime/builtins/timers-module.mjs":{"bytesInOutput":969},"src/runtime/builtins/url.mjs":{"bytesInOutput":1697},"src/runtime/cjs/builtins.mjs":{"bytesInOutput":4158},"src/runtime/cjs/errors.mjs":{"bytesInOutput":574},"src/runtime/cjs/resolve.mjs":{"bytesInOutput":8866},"src/runtime/cjs/loader.mjs":{"bytesInOutput":11203},"src/runtime/cli.mjs":{"bytesInOutput":2165},"src/runtime/console.mjs":{"bytesInOutput":4414},"src/runtime/esm/loader.mjs":{"bytesInOutput":11287},"src/runtime/stack.mjs":{"bytesInOutput":6887},"src/runtime/errors-format.mjs":{"bytesInOutput":9795},"src/runtime/handles.mjs":{"bytesInOutput":688},"src/runtime/next-tick.mjs":{"bytesInOutput":900},"src/runtime/process.mjs":{"bytesInOutput":14947},"src/runtime/timers.mjs":{"bytesInOutput":3529},"src/runtime/web/fetch.mjs":{"bytesInOutput":358},"src/runtime/web/websocket.mjs":{"bytesInOutput":8204},"src/runtime/run.mjs":{"bytesInOutput":13844},"src/node.mjs":{"bytesInOutput":52}},"bytes":866269},"dist/jsh.mjs":{"imports":[],"exports":["default"],"entryPoint":"src/jsh.mjs","inputs":{"node_modules/node-inspect-extracted/dist/inspect.js":{"bytesInOutput":86401},"src/runtime/exit.mjs":{"bytesInOutput":1573},"package.json":{"bytesInOutput":2504},"src/jsh/parse-flags.mjs":{"bytesInOutput":1558},"src/jsh/sliccy/exec.mjs":{"bytesInOutput":4077},"src/jsh/sliccy/http.mjs":{"bytesInOutput":5497},"src/jsh/sliccy/pure.mjs":{"bytesInOutput":6246},"src/jsh/sliccy/index.mjs":{"bytesInOutput":2229},"src/jsh/run.mjs":{"bytesInOutput":2930},"src/jsh/kernel.mjs":{"bytesInOutput":4606},"src/runtime/async-handles.mjs":{"bytesInOutput":1156},"src/runtime/buffer.mjs":{"bytesInOutput":36834},"node_modules/node-inspect-extracted/index.mjs":{"bytesInOutput":387},"src/runtime/builtins/util.mjs":{"bytesInOutput":3726},"node_modules/acorn/dist/acorn.mjs":{"bytesInOutput":203908},"src/runtime/esm/transform.mjs":{"bytesInOutput":20720},"src/runtime/path.mjs":{"bytesInOutput":4196},"src/runtime/builtins/assert.mjs":{"bytesInOutput":19383},"src/runtime/builtins/events.mjs":{"bytesInOutput":2336},"src/runtime/builtins/child-process.mjs":{"bytesInOutput":15697},"src/runtime/builtins/fs.mjs":{"bytesInOutput":33539},"src/runtime/builtins/http.mjs":{"bytesInOutput":27190},"src/runtime/builtins/https.mjs":{"bytesInOutput":7341},"src/runtime/builtins/net.mjs":{"bytesInOutput":14529},"src/runtime/builtins/os.mjs":{"bytesInOutput":648},"src/runtime/builtins/querystring.mjs":{"bytesInOutput":1197},"src/runtime/vendor-embedded.mjs":{"bytesInOutput":241089},"src/runtime/vendor-load.mjs":{"bytesInOutput":2914},"src/runtime/builtins/stream.mjs":{"bytesInOutput":1139},"src/runtime/builtins/string-decoder.mjs":{"bytesInOutput":3222},"src/runtime/builtins/timers-module.mjs":{"bytesInOutput":969},"src/runtime/builtins/url.mjs":{"bytesInOutput":1697},"src/runtime/cjs/builtins.mjs":{"bytesInOutput":4158},"src/runtime/cjs/errors.mjs":{"bytesInOutput":574},"src/runtime/cjs/resolve.mjs":{"bytesInOutput":8866},"src/runtime/cjs/loader.mjs":{"bytesInOutput":11203},"src/runtime/cli.mjs":{"bytesInOutput":2165},"src/runtime/console.mjs":{"bytesInOutput":4414},"src/runtime/esm/loader.mjs":{"bytesInOutput":11287},"src/runtime/stack.mjs":{"bytesInOutput":6887},"src/runtime/errors-format.mjs":{"bytesInOutput":9795},"src/runtime/handles.mjs":{"bytesInOutput":688},"src/runtime/next-tick.mjs":{"bytesInOutput":900},"src/runtime/process.mjs":{"bytesInOutput":14947},"src/runtime/timers.mjs":{"bytesInOutput":3529},"src/runtime/web/fetch.mjs":{"bytesInOutput":358},"src/runtime/web/websocket.mjs":{"bytesInOutput":8204},"src/runtime/run.mjs":{"bytesInOutput":13844},"src/jsh.mjs":{"bytesInOutput":761}},"bytes":866977}}}
package/dist/node.mjs CHANGED
@@ -1585,7 +1585,7 @@ function assignProcessExitCode(value) {
1585
1585
  // package.json
1586
1586
  var package_default = {
1587
1587
  name: "@ai-ecoverse/slicc-jsh",
1588
- version: "0.3.3",
1588
+ version: "0.3.4",
1589
1589
  description: "Node.js-compatible runtime for slicc-kernel: the node and jsh commands (abi: js)",
1590
1590
  type: "module",
1591
1591
  license: "Apache-2.0",
@@ -16444,6 +16444,25 @@ function readProcessCreds(ctx) {
16444
16444
  }
16445
16445
  return { uid: 0, euid: 0, gid: 0, egid: 0, groups: [0] };
16446
16446
  }
16447
+ function resolveNodeExecPath(ctx) {
16448
+ const fs = ctx?.sync?.fs;
16449
+ const pathEnv = ctx?.env?.PATH ?? "/usr/local/bin:/usr/bin:/bin";
16450
+ for (const dir of String(pathEnv).split(":")) {
16451
+ if (!dir) continue;
16452
+ const candidate = dir.endsWith("/") ? `${dir}node` : `${dir}/node`;
16453
+ try {
16454
+ if (fs?.exists?.(candidate)) {
16455
+ try {
16456
+ return typeof fs.realpath === "function" ? fs.realpath(candidate) : candidate;
16457
+ } catch {
16458
+ return candidate;
16459
+ }
16460
+ }
16461
+ } catch {
16462
+ }
16463
+ }
16464
+ return "/usr/bin/node";
16465
+ }
16447
16466
  var Process = class extends EventEmitter {
16448
16467
  constructor({ ctx, argv, nextTick, onExit, handles, Buffer: Buffer2 }) {
16449
16468
  super();
@@ -16464,7 +16483,7 @@ var Process = class extends EventEmitter {
16464
16483
  this.arch = "x64";
16465
16484
  this.pid = ctx.pid;
16466
16485
  this.ppid = void 0;
16467
- this.execPath = "/node_modules/@ai-ecoverse/slicc-jsh/dist/node.mjs";
16486
+ this.execPath = resolveNodeExecPath(ctx);
16468
16487
  this.execArgv = [];
16469
16488
  this.nextTick = nextTick.nextTick.bind(nextTick);
16470
16489
  this._umask = 18;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-ecoverse/slicc-jsh",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Node.js-compatible runtime for slicc-kernel: the node and jsh commands (abi: js)",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",