@socketsecurity/lib 6.0.7 → 6.0.9
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/CHANGELOG.md +42 -0
- package/README.md +1 -1
- package/dist/ai/agent-context.d.mts +103 -0
- package/dist/ai/agent-context.js +157 -0
- package/dist/ai/backends.d.mts +83 -0
- package/dist/ai/backends.js +173 -0
- package/dist/ai/credentials.d.mts +49 -0
- package/dist/ai/credentials.js +82 -0
- package/dist/ai/discover.d.mts +4 -0
- package/dist/ai/discover.js +1 -1
- package/dist/ai/exec.d.mts +52 -0
- package/dist/ai/exec.js +92 -0
- package/dist/ai/http.d.mts +132 -0
- package/dist/ai/http.js +130 -0
- package/dist/ai/profiles.d.mts +41 -6
- package/dist/ai/profiles.js +52 -10
- package/dist/ai/route.d.mts +82 -0
- package/dist/ai/route.js +171 -0
- package/dist/ai/spawn.d.mts +42 -2
- package/dist/ai/spawn.js +146 -33
- package/dist/ai/subagent-status.d.mts +48 -0
- package/dist/ai/subagent-status.js +57 -0
- package/dist/ai/tier.d.mts +60 -0
- package/dist/ai/tier.js +53 -0
- package/dist/ai/types.d.mts +25 -2
- package/dist/ai/worktree.js +4 -0
- package/dist/archives/tar.js +1 -1
- package/dist/archives/zip.js +2 -2
- package/dist/argv/parse.d.ts +19 -2
- package/dist/argv/parse.js +1 -1
- package/dist/arrays/join.js +4 -0
- package/dist/bin/find.js +4 -4
- package/dist/bin/prim.cjs +23322 -18018
- package/dist/bin/resolve.js +2 -2
- package/dist/cache/ttl/store.js +2 -2
- package/dist/cli/check-primordials.d.ts +8 -3
- package/dist/cli/check-primordials.js +4 -4
- package/dist/compression/_internal.js +1 -1
- package/dist/compression/brotli.d.ts +1 -2
- package/dist/compression/brotli.js +5 -1
- package/dist/compression/gzip.js +5 -1
- package/dist/config/layers.d.ts +53 -0
- package/dist/config/layers.js +83 -0
- package/dist/constants/packages.d.ts +3 -0
- package/dist/constants/packages.js +2 -1
- package/dist/constants/socket.d.ts +2 -6
- package/dist/constants/socket.js +12 -14
- package/dist/cover/code.js +2 -2
- package/dist/crypto/hash.d.ts +4 -1
- package/dist/crypto/hash.js +4 -1
- package/dist/dlx/arborist.js +13 -3
- package/dist/dlx/binary-cache.js +1 -1
- package/dist/dlx/binary-resolution.js +1 -1
- package/dist/dlx/detect.d.ts +8 -0
- package/dist/dlx/firewall.d.ts +8 -0
- package/dist/dlx/lockfile.js +5 -2
- package/dist/dlx/manifest.js +1 -1
- package/dist/dlx/package.js +4 -0
- package/dist/eco/cargo/parse-lockfile.d.ts +1 -2
- package/dist/eco/cargo/parse-lockfile.js +3 -3
- package/dist/eco/manifest/detect-format.js +1 -1
- package/dist/eco/npm/npm/parse-lockfile.d.ts +3 -4
- package/dist/eco/npm/npm/parse-lockfile.js +2 -2
- package/dist/eco/npm/parse-package-json.d.ts +11 -0
- package/dist/eco/npm/parse-package-json.js +1 -1
- package/dist/eco/npm/pnpm/parse-lockfile.d.ts +5 -3
- package/dist/eco/npm/pnpm/parse-lockfile.js +3 -3
- package/dist/eco/npm/yarnpkg/yarn/exec.js +1 -1
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +1 -2
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +2 -2
- package/dist/env/proxy.js +1 -1
- package/dist/env/rewire.d.ts +6 -3
- package/dist/env/rewire.js +7 -8
- package/dist/env/socket.d.ts +7 -0
- package/dist/env/socket.js +10 -0
- package/dist/env/xdg.d.ts +17 -0
- package/dist/env/xdg.js +21 -1
- package/dist/errors/predicates.js +1 -1
- package/dist/errors/stack.js +1 -2
- package/dist/external/@npmcli/package-json.js +3455 -4881
- package/dist/external/@npmcli/promise-spawn.js +3 -1
- package/dist/external/@yarnpkg/extensions.js +1 -1
- package/dist/external/external-pack.js +1 -1
- package/dist/external/npm-pack.js +29164 -31799
- package/dist/external/pico-pack.js +4 -2
- package/dist/external/tar-fs.js +63 -16
- package/dist/external/which.js +3 -1
- package/dist/external-tools/bazel/asset-names.d.ts +1 -1
- package/dist/external-tools/bazel/asset-names.js +5 -2
- package/dist/external-tools/bazel/from-download.d.ts +1 -1
- package/dist/external-tools/bazel/from-download.js +5 -2
- package/dist/external-tools/bazel/resolve-bazel-version.js +4 -0
- package/dist/external-tools/bazel/resolve.d.ts +3 -3
- package/dist/external-tools/bazel/resolve.js +16 -8
- package/dist/external-tools/cdxgen/asset-names.d.ts +1 -1
- package/dist/external-tools/cdxgen/asset-names.js +5 -2
- package/dist/external-tools/cdxgen/from-download.d.ts +1 -1
- package/dist/external-tools/cdxgen/from-download.js +7 -4
- package/dist/external-tools/cdxgen/resolve.d.ts +3 -3
- package/dist/external-tools/cdxgen/resolve.js +16 -8
- package/dist/external-tools/from-download.d.ts +2 -2
- package/dist/external-tools/from-download.js +11 -5
- package/dist/external-tools/from-pip-venv.d.ts +1 -1
- package/dist/external-tools/from-pip-venv.js +12 -5
- package/dist/external-tools/janus/asset-names.d.ts +1 -1
- package/dist/external-tools/janus/asset-names.js +5 -2
- package/dist/external-tools/janus/from-download.d.ts +1 -1
- package/dist/external-tools/janus/from-download.js +5 -2
- package/dist/external-tools/janus/resolve.d.ts +3 -3
- package/dist/external-tools/janus/resolve.js +16 -8
- package/dist/external-tools/jre/asset-names.d.ts +1 -1
- package/dist/external-tools/jre/asset-names.js +5 -2
- package/dist/external-tools/jre/detect-platform-arch.js +1 -1
- package/dist/external-tools/jre/from-download.d.ts +1 -1
- package/dist/external-tools/jre/from-download.js +7 -4
- package/dist/external-tools/jre/from-java-home.js +2 -2
- package/dist/external-tools/jre/from-vfs.js +2 -2
- package/dist/external-tools/jre/resolve.d.ts +3 -3
- package/dist/external-tools/jre/resolve.js +16 -8
- package/dist/external-tools/manifest.d.ts +18 -0
- package/dist/external-tools/manifest.js +2 -2
- package/dist/external-tools/opengrep/asset-names.d.ts +1 -1
- package/dist/external-tools/opengrep/asset-names.js +5 -2
- package/dist/external-tools/opengrep/from-download.d.ts +1 -1
- package/dist/external-tools/opengrep/from-download.js +5 -2
- package/dist/external-tools/opengrep/resolve.d.ts +3 -3
- package/dist/external-tools/opengrep/resolve.js +16 -8
- package/dist/external-tools/python/asset-names.d.ts +1 -1
- package/dist/external-tools/python/asset-names.js +11 -4
- package/dist/external-tools/python/dlx.d.ts +3 -3
- package/dist/external-tools/python/dlx.js +20 -9
- package/dist/external-tools/python/from-download.d.ts +1 -1
- package/dist/external-tools/python/from-download.js +12 -5
- package/dist/external-tools/python/pin.js +6 -3
- package/dist/external-tools/python/pip-install.js +6 -3
- package/dist/external-tools/python/resolve.d.ts +3 -3
- package/dist/external-tools/python/resolve.js +19 -11
- package/dist/external-tools/python/uv-install.d.ts +89 -0
- package/dist/external-tools/python/uv-install.js +165 -0
- package/dist/external-tools/sbt/asset-names.d.ts +1 -1
- package/dist/external-tools/sbt/asset-names.js +5 -2
- package/dist/external-tools/sbt/from-download.d.ts +1 -1
- package/dist/external-tools/sbt/from-download.js +5 -2
- package/dist/external-tools/sbt/resolve.d.ts +3 -3
- package/dist/external-tools/sbt/resolve.js +16 -8
- package/dist/external-tools/skillspector/from-dlx.d.ts +1 -1
- package/dist/external-tools/skillspector/from-dlx.js +10 -3
- package/dist/external-tools/skillspector/from-uv.d.ts +30 -0
- package/dist/external-tools/skillspector/from-uv.js +56 -0
- package/dist/external-tools/skillspector/resolve.d.ts +20 -5
- package/dist/external-tools/skillspector/resolve.js +27 -6
- package/dist/external-tools/skillspector/types.d.ts +3 -1
- package/dist/external-tools/synp/asset-names.d.ts +1 -1
- package/dist/external-tools/synp/asset-names.js +6 -2
- package/dist/external-tools/synp/from-download.d.ts +1 -1
- package/dist/external-tools/synp/from-download.js +5 -2
- package/dist/external-tools/synp/resolve.d.ts +3 -3
- package/dist/external-tools/synp/resolve.js +16 -8
- package/dist/external-tools/trivy/asset-names.d.ts +1 -1
- package/dist/external-tools/trivy/asset-names.js +5 -2
- package/dist/external-tools/trivy/from-download.d.ts +1 -1
- package/dist/external-tools/trivy/from-download.js +7 -4
- package/dist/external-tools/trivy/resolve.d.ts +3 -3
- package/dist/external-tools/trivy/resolve.js +16 -8
- package/dist/external-tools/trufflehog/asset-names.d.ts +1 -1
- package/dist/external-tools/trufflehog/asset-names.js +5 -2
- package/dist/external-tools/trufflehog/from-download.d.ts +1 -1
- package/dist/external-tools/trufflehog/from-download.js +7 -4
- package/dist/external-tools/trufflehog/resolve.d.ts +3 -3
- package/dist/external-tools/trufflehog/resolve.js +16 -8
- package/dist/external-tools/uv/asset-names.d.ts +36 -0
- package/dist/external-tools/uv/asset-names.js +73 -0
- package/dist/external-tools/uv/from-download.d.ts +17 -0
- package/dist/external-tools/uv/from-download.js +50 -0
- package/dist/external-tools/uv/from-path.d.ts +5 -0
- package/dist/external-tools/uv/from-path.js +22 -0
- package/dist/external-tools/uv/from-vfs.d.ts +7 -0
- package/dist/external-tools/uv/from-vfs.js +26 -0
- package/dist/external-tools/uv/resolve.d.ts +25 -0
- package/dist/external-tools/uv/resolve.js +61 -0
- package/dist/external-tools/uv/types.d.ts +24 -0
- package/dist/external-tools/uv/types.js +2 -0
- package/dist/fleet/repo-config.d.ts +53 -0
- package/dist/fleet/repo-config.js +79 -0
- package/dist/fs/allowed-dirs-cache.d.ts +27 -1
- package/dist/fs/allowed-dirs-cache.js +39 -6
- package/dist/fs/copy.d.ts +88 -0
- package/dist/fs/copy.js +89 -0
- package/dist/fs/find.js +1 -1
- package/dist/fs/read-json-cache.d.ts +7 -0
- package/dist/fs/resolve-module.js +6 -2
- package/dist/fs/safe.js +1 -1
- package/dist/git/_internal.js +3 -3
- package/dist/git/repo.js +2 -4
- package/dist/git/staged.js +8 -0
- package/dist/git/tracked.d.ts +84 -0
- package/dist/git/tracked.js +163 -0
- package/dist/git/unstaged.js +8 -0
- package/dist/github/refs-graphql.js +4 -0
- package/dist/github/refs-rest.js +4 -0
- package/dist/globs/_internal.js +1 -1
- package/dist/globs/match.js +9 -1
- package/dist/globs/matcher.js +5 -1
- package/dist/http-request/browser.js +7 -3
- package/dist/http-request/checksum-file.js +1 -1
- package/dist/http-request/{browser-fetch.d.ts → fetch/browser.d.ts} +2 -2
- package/dist/http-request/{browser-fetch.js → fetch/browser.js} +4 -4
- package/dist/http-request/headers.js +1 -1
- package/dist/http-request/request-attempt.js +2 -2
- package/dist/http-request/user-agent.js +1 -1
- package/dist/integrity.d.ts +124 -71
- package/dist/integrity.js +168 -78
- package/dist/json/edit.js +38 -30
- package/dist/json/format.js +1 -1
- package/dist/logger/colors.d.ts +1 -2
- package/dist/logger/colors.js +2 -2
- package/dist/logger/symbols-builder.js +7 -8
- package/dist/logger/symbols.js +8 -8
- package/dist/native-messaging/install.d.ts +1 -1
- package/dist/native-messaging/install.js +7 -4
- package/dist/native-messaging/rate-limit.d.ts +7 -0
- package/dist/native-messaging/rate-limit.js +4 -0
- package/dist/node/async-hooks.js +1 -1
- package/dist/node/child-process.js +1 -1
- package/dist/node/crypto.js +1 -1
- package/dist/node/events.js +1 -1
- package/dist/node/fs-promises.js +1 -1
- package/dist/node/fs.d.ts +22 -6
- package/dist/node/fs.js +16 -3
- package/dist/node/http.js +1 -1
- package/dist/node/https.js +1 -1
- package/dist/node/module.d.ts +73 -2
- package/dist/node/module.js +97 -12
- package/dist/node/os.d.ts +10 -2
- package/dist/node/os.js +11 -4
- package/dist/node/path.d.ts +11 -2
- package/dist/node/path.js +17 -4
- package/dist/node/timers-promises.js +1 -1
- package/dist/node/url.js +1 -1
- package/dist/node/util.js +1 -1
- package/dist/objects/getters.js +1 -1
- package/dist/objects/mutate.js +2 -2
- package/dist/packages/edit-class.d.ts +2 -3
- package/dist/packages/edit-class.js +41 -35
- package/dist/packages/exports.js +4 -4
- package/dist/packages/fetch.js +1 -1
- package/dist/packages/isolation.js +2 -2
- package/dist/packages/licenses.js +2 -2
- package/dist/packages/manifest.d.ts +29 -0
- package/dist/packages/manifest.js +40 -4
- package/dist/packages/normalize.js +2 -2
- package/dist/packages/provenance.js +3 -3
- package/dist/packages/specs.js +1 -1
- package/dist/packages/tarball.js +4 -2
- package/dist/packages/types.d.ts +1 -2
- package/dist/paths/_internal.d.ts +1 -7
- package/dist/paths/_internal.js +9 -15
- package/dist/paths/conversion.js +1 -1
- package/dist/paths/dirnames.d.ts +1 -0
- package/dist/paths/dirnames.js +2 -0
- package/dist/paths/normalize.js +1 -1
- package/dist/paths/predicates.js +2 -1
- package/dist/paths/resolve.js +14 -19
- package/dist/paths/rewire.d.ts +5 -0
- package/dist/paths/socket.d.ts +137 -123
- package/dist/paths/socket.js +172 -131
- package/dist/perf/metrics.js +1 -1
- package/dist/perf/report.js +1 -1
- package/dist/primordials/process.d.ts +88 -0
- package/dist/primordials/process.js +132 -0
- package/dist/primordials/uncurry.d.ts +1 -2
- package/dist/process/spawn/child.js +8 -2
- package/dist/process/spawn/errors.js +1 -1
- package/dist/releases/github-archives.js +1 -1
- package/dist/releases/github-listing.d.ts +1 -2
- package/dist/schema/types.d.ts +3 -4
- package/dist/schema/validate.js +1 -1
- package/dist/secrets/broker.d.ts +35 -0
- package/dist/secrets/broker.js +72 -0
- package/dist/secrets/find.d.ts +8 -6
- package/dist/secrets/find.js +25 -5
- package/dist/secrets/keychain.d.ts +1 -1
- package/dist/secrets/linux.js +32 -44
- package/dist/secrets/macos.d.ts +1 -2
- package/dist/secrets/macos.js +20 -29
- package/dist/secrets/rc.d.ts +2 -2
- package/dist/secrets/rc.js +21 -13
- package/dist/secrets/socket-api-token.js +8 -0
- package/dist/secrets/windows.js +27 -33
- package/dist/shell/parse.d.ts +32 -0
- package/dist/shell/parse.js +60 -0
- package/dist/smol/detect.js +1 -1
- package/dist/smol/http.js +1 -1
- package/dist/smol/https.js +1 -1
- package/dist/smol/manifest.js +1 -1
- package/dist/smol/path.js +1 -1
- package/dist/smol/primordial.js +1 -1
- package/dist/smol/purl.js +1 -1
- package/dist/smol/versions.js +1 -1
- package/dist/smol/vfs.js +1 -1
- package/dist/sorts/_internal.d.ts +1 -2
- package/dist/sorts/_internal.js +2 -6
- package/dist/sorts/semver.js +2 -2
- package/dist/spinner/create-spinner-class.js +2 -2
- package/dist/spinner/spinner-internals.d.ts +1 -1
- package/dist/spinner/spinner-internals.js +9 -5
- package/dist/spinner/spinner.d.ts +4 -0
- package/dist/spinner/spinner.js +1 -1
- package/dist/stdio/progress.js +6 -2
- package/dist/stdio/prompts.d.ts +2 -10
- package/dist/stdio/prompts.js +11 -24
- package/dist/strings/format.js +1 -1
- package/dist/strings/search.js +1 -1
- package/dist/temporal/instant.js +2 -2
- package/dist/themes/context.d.ts +5 -3
- package/dist/themes/context.js +5 -6
- package/dist/url/assert-safe.d.ts +29 -0
- package/dist/url/assert-safe.js +54 -0
- package/dist/url/predicates.d.ts +31 -1
- package/dist/url/predicates.js +42 -1
- package/dist/url/types.d.ts +4 -0
- package/llms.txt +750 -0
- package/package.json +253 -125
|
@@ -79,6 +79,8 @@ const { NumberIsFinite: _p_NumberIsFinite, NumberIsInteger: _p_NumberIsInteger,
|
|
|
79
79
|
|
|
80
80
|
const { ObjectAssign: _p_ObjectAssign, ObjectCreate: _p_ObjectCreate, ObjectDefineProperty: _p_ObjectDefineProperty, ObjectKeys: _p_ObjectKeys } = require('../primordials/object.js')
|
|
81
81
|
|
|
82
|
+
const { processNextTick: _p_processNextTick } = require('../primordials/process.js')
|
|
83
|
+
|
|
82
84
|
const { PromiseAll: _p_PromiseAll, PromiseCtor: _p_PromiseCtor, PromiseRace: _p_PromiseRace, PromiseResolve: _p_PromiseResolve } = require('../primordials/promise.js')
|
|
83
85
|
|
|
84
86
|
const { RegExpCtor: _p_RegExpCtor } = require('../primordials/regexp.js')
|
|
@@ -4090,7 +4092,7 @@ var require_merge2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
4090
4092
|
merging = true;
|
|
4091
4093
|
let streams = streamsQueue.shift();
|
|
4092
4094
|
if (!streams) {
|
|
4093
|
-
|
|
4095
|
+
_p_processNextTick(endStream);
|
|
4094
4096
|
return;
|
|
4095
4097
|
}
|
|
4096
4098
|
if (!_p_ArrayIsArray(streams)) streams = [streams];
|
|
@@ -5038,7 +5040,7 @@ var require_queue = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
5038
5040
|
}
|
|
5039
5041
|
function drained() {
|
|
5040
5042
|
return new _p_PromiseCtor(function(resolve) {
|
|
5041
|
-
|
|
5043
|
+
_p_processNextTick(function() {
|
|
5042
5044
|
if (queue.idle()) resolve();
|
|
5043
5045
|
else {
|
|
5044
5046
|
var previousDrain = queue.drain;
|
package/dist/external/tar-fs.js
CHANGED
|
@@ -121,7 +121,7 @@ var require_fast_fifo = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
121
121
|
}));
|
|
122
122
|
|
|
123
123
|
//#endregion
|
|
124
|
-
//#region node_modules/.pnpm/b4a@1.8.
|
|
124
|
+
//#region node_modules/.pnpm/b4a@1.8.1/node_modules/b4a/index.js
|
|
125
125
|
var require_b4a = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
126
126
|
function isBuffer(value) {
|
|
127
127
|
return _p_BufferIsBuffer(value) || value instanceof Uint8Array;
|
|
@@ -499,13 +499,51 @@ var require_text_decoder = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
499
499
|
}));
|
|
500
500
|
|
|
501
501
|
//#endregion
|
|
502
|
-
//#region node_modules/.pnpm/streamx@2.
|
|
502
|
+
//#region node_modules/.pnpm/streamx@2.27.0/node_modules/streamx/lib/errors.js
|
|
503
|
+
var require_errors = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
504
|
+
module.exports = class StreamError extends Error {
|
|
505
|
+
constructor(msg, code, fn = StreamError) {
|
|
506
|
+
super(msg);
|
|
507
|
+
this.code = code;
|
|
508
|
+
if (Error.captureStackTrace) Error.captureStackTrace(this, fn);
|
|
509
|
+
}
|
|
510
|
+
static isStreamDestroyed(err) {
|
|
511
|
+
return err && err.code === "STREAM_DESTROYED";
|
|
512
|
+
}
|
|
513
|
+
static isPrematureClose(err) {
|
|
514
|
+
return err && err.code === "PREMATURE_CLOSE";
|
|
515
|
+
}
|
|
516
|
+
static isAborted(err) {
|
|
517
|
+
return err && err.code === "ABORTED";
|
|
518
|
+
}
|
|
519
|
+
static isBadArgument(err) {
|
|
520
|
+
return err && err.code === "BAD_ARGUMENT";
|
|
521
|
+
}
|
|
522
|
+
get name() {
|
|
523
|
+
return "StreamError";
|
|
524
|
+
}
|
|
525
|
+
static STREAM_DESTROYED() {
|
|
526
|
+
return new StreamError("Stream was destroyed", "STREAM_DESTROYED", StreamError.STREAM_DESTROYED);
|
|
527
|
+
}
|
|
528
|
+
static PREMATURE_CLOSE(msg = "Premature close") {
|
|
529
|
+
return new StreamError(msg, "PREMATURE_CLOSE", StreamError.PREMATURE_CLOSE);
|
|
530
|
+
}
|
|
531
|
+
static ABORTED() {
|
|
532
|
+
return new StreamError("Stream aborted", "ABORTED", StreamError.ABORTED);
|
|
533
|
+
}
|
|
534
|
+
static BAD_ARGUMENT(msg = "Bad argument") {
|
|
535
|
+
return new StreamError(msg, "BAD_ARGUMENT", StreamError.BAD_ARGUMENT);
|
|
536
|
+
}
|
|
537
|
+
};
|
|
538
|
+
}));
|
|
539
|
+
|
|
540
|
+
//#endregion
|
|
541
|
+
//#region node_modules/.pnpm/streamx@2.27.0/node_modules/streamx/index.js
|
|
503
542
|
var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
504
543
|
const { EventEmitter } = require_default();
|
|
505
|
-
const STREAM_DESTROYED = /* @__PURE__ */ new _p_ErrorCtor("Stream was destroyed");
|
|
506
|
-
const PREMATURE_CLOSE = /* @__PURE__ */ new _p_ErrorCtor("Premature close");
|
|
507
544
|
const FIFO = require_fast_fifo();
|
|
508
545
|
const TextDecoder = require_text_decoder();
|
|
546
|
+
const StreamError = require_errors();
|
|
509
547
|
const qmt = typeof queueMicrotask === "undefined" ? (fn) => global.process.nextTick(fn) : queueMicrotask;
|
|
510
548
|
const OPENING = 1;
|
|
511
549
|
const PREDESTROYING = 2;
|
|
@@ -709,7 +747,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
709
747
|
return (this.stream._duplexState & READ_DONE) !== 0;
|
|
710
748
|
}
|
|
711
749
|
pipe(pipeTo, cb) {
|
|
712
|
-
if (this.pipeTo !== null) throw
|
|
750
|
+
if (this.pipeTo !== null) throw StreamError.BAD_ARGUMENT("Can only pipe to one destination");
|
|
713
751
|
if (typeof cb !== "function") cb = null;
|
|
714
752
|
this.stream._duplexState |= READ_PIPE_DRAINED;
|
|
715
753
|
this.pipeTo = pipeTo;
|
|
@@ -868,14 +906,14 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
868
906
|
if (stream === this.to) {
|
|
869
907
|
this.to = null;
|
|
870
908
|
if (this.from !== null) {
|
|
871
|
-
if ((this.from._duplexState & READ_DONE) === 0 || !this.pipeToFinished) this.from.destroy(this.error ||
|
|
909
|
+
if ((this.from._duplexState & READ_DONE) === 0 || !this.pipeToFinished) this.from.destroy(this.error || StreamError.PREMATURE_CLOSE("Writable stream closed"));
|
|
872
910
|
return;
|
|
873
911
|
}
|
|
874
912
|
}
|
|
875
913
|
if (stream === this.from) {
|
|
876
914
|
this.from = null;
|
|
877
915
|
if (this.to !== null) {
|
|
878
|
-
if ((stream._duplexState & READ_DONE) === 0) this.to.destroy(this.error ||
|
|
916
|
+
if ((stream._duplexState & READ_DONE) === 0) this.to.destroy(this.error || StreamError.PREMATURE_CLOSE("Readable stream closed"));
|
|
879
917
|
return;
|
|
880
918
|
}
|
|
881
919
|
}
|
|
@@ -901,7 +939,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
901
939
|
}
|
|
902
940
|
function afterDestroy(err) {
|
|
903
941
|
const stream = this.stream;
|
|
904
|
-
if (!err && this.error
|
|
942
|
+
if (!err && !StreamError.isStreamDestroyed(this.error)) err = this.error;
|
|
905
943
|
if (err) stream.emit("error", err);
|
|
906
944
|
stream._duplexState |= DESTROYED;
|
|
907
945
|
stream.emit("close");
|
|
@@ -1017,7 +1055,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1017
1055
|
}
|
|
1018
1056
|
destroy(err) {
|
|
1019
1057
|
if ((this._duplexState & DESTROY_STATUS) === 0) {
|
|
1020
|
-
if (!err) err = STREAM_DESTROYED;
|
|
1058
|
+
if (!err) err = StreamError.STREAM_DESTROYED();
|
|
1021
1059
|
this._duplexState = (this._duplexState | DESTROYING) & NON_PRIMARY;
|
|
1022
1060
|
if (this._readableState !== null) {
|
|
1023
1061
|
this._readableState.highWaterMark = 0;
|
|
@@ -1047,6 +1085,15 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1047
1085
|
if (opts.encoding) this.setEncoding(opts.encoding);
|
|
1048
1086
|
}
|
|
1049
1087
|
}
|
|
1088
|
+
static deferred(fn, opts) {
|
|
1089
|
+
const out = new PassThrough(opts);
|
|
1090
|
+
fn().then((src) => {
|
|
1091
|
+
if (src === null) return out.end();
|
|
1092
|
+
if (out.destroying) return;
|
|
1093
|
+
pipeline(src, out, noop);
|
|
1094
|
+
}).catch((err) => out.destroy(err));
|
|
1095
|
+
return out;
|
|
1096
|
+
}
|
|
1050
1097
|
setEncoding(encoding) {
|
|
1051
1098
|
const dec = new TextDecoder(encoding);
|
|
1052
1099
|
const map = this._readableState.map || echo;
|
|
@@ -1165,7 +1212,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1165
1212
|
function ondata(data) {
|
|
1166
1213
|
if (promiseReject === null) return;
|
|
1167
1214
|
if (error) promiseReject(error);
|
|
1168
|
-
else if (data === null && (stream._duplexState & READ_DONE) === 0) promiseReject(STREAM_DESTROYED);
|
|
1215
|
+
else if (data === null && (stream._duplexState & READ_DONE) === 0) promiseReject(StreamError.STREAM_DESTROYED());
|
|
1169
1216
|
else promiseResolve({
|
|
1170
1217
|
value: data,
|
|
1171
1218
|
done: data === null
|
|
@@ -1339,7 +1386,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1339
1386
|
function pipeline(stream, ...streams) {
|
|
1340
1387
|
const all = _p_ArrayIsArray(stream) ? [...stream, ...streams] : [stream, ...streams];
|
|
1341
1388
|
const done = all.length && typeof all[all.length - 1] === "function" ? all.pop() : null;
|
|
1342
|
-
if (all.length < 2) throw
|
|
1389
|
+
if (all.length < 2) throw StreamError.BAD_ARGUMENT("Pipeline requires at least 2 streams");
|
|
1343
1390
|
let src = all[0];
|
|
1344
1391
|
let dest = null;
|
|
1345
1392
|
let error = null;
|
|
@@ -1362,15 +1409,15 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1362
1409
|
fin = true;
|
|
1363
1410
|
if (!autoDestroy) done(error);
|
|
1364
1411
|
});
|
|
1365
|
-
if (autoDestroy) dest.on("close", () => done(error || (fin ? null : PREMATURE_CLOSE)));
|
|
1412
|
+
if (autoDestroy) dest.on("close", () => done(error || (fin ? null : StreamError.PREMATURE_CLOSE())));
|
|
1366
1413
|
}
|
|
1367
1414
|
return dest;
|
|
1368
1415
|
function errorHandle(s, rd, wr, onerror) {
|
|
1369
1416
|
s.on("error", onerror);
|
|
1370
1417
|
s.on("close", onclose);
|
|
1371
1418
|
function onclose() {
|
|
1372
|
-
if (rd && s._readableState && !s._readableState.ended) return onerror(PREMATURE_CLOSE);
|
|
1373
|
-
if (wr && s._writableState && !s._writableState.ended) return onerror(PREMATURE_CLOSE);
|
|
1419
|
+
if (rd && s._readableState && !s._readableState.ended) return onerror(StreamError.PREMATURE_CLOSE());
|
|
1420
|
+
if (wr && s._writableState && !s._writableState.ended) return onerror(StreamError.PREMATURE_CLOSE());
|
|
1374
1421
|
}
|
|
1375
1422
|
}
|
|
1376
1423
|
function onerror(err) {
|
|
@@ -1402,7 +1449,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1402
1449
|
}
|
|
1403
1450
|
function getStreamError(stream, opts = {}) {
|
|
1404
1451
|
const err = stream._readableState && stream._readableState.error || stream._writableState && stream._writableState.error;
|
|
1405
|
-
return !opts.all && err
|
|
1452
|
+
return !opts.all && StreamError.isStreamDestroyed(err) ? null : err;
|
|
1406
1453
|
}
|
|
1407
1454
|
function isReadStreamx(stream) {
|
|
1408
1455
|
return isStreamx(stream) && stream.readable;
|
|
@@ -1418,7 +1465,7 @@ var require_streamx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1418
1465
|
}
|
|
1419
1466
|
function noop() {}
|
|
1420
1467
|
function abort() {
|
|
1421
|
-
this.destroy(
|
|
1468
|
+
this.destroy(StreamError.ABORTED());
|
|
1422
1469
|
}
|
|
1423
1470
|
function isWritev(s) {
|
|
1424
1471
|
return s._writev !== Writable.prototype._writev && s._writev !== Duplex.prototype._writev;
|
package/dist/external/which.js
CHANGED
|
@@ -5,6 +5,8 @@ const { SetCtor: _p_SetCtor } = require('../primordials/map-set.js')
|
|
|
5
5
|
|
|
6
6
|
const { ObjectAssign: _p_ObjectAssign, ObjectDefineProperty: _p_ObjectDefineProperty, ObjectGetOwnPropertyDescriptor: _p_ObjectGetOwnPropertyDescriptor } = require('../primordials/object.js')
|
|
7
7
|
|
|
8
|
+
const { processCwd: _p_processCwd } = require('../primordials/process.js')
|
|
9
|
+
|
|
8
10
|
const { RegExpCtor: _p_RegExpCtor } = require('../primordials/regexp.js')
|
|
9
11
|
|
|
10
12
|
const { StringPrototypeSubstring: _p_StringPrototypeSubstring } = require('../primordials/string.js')
|
|
@@ -214,7 +216,7 @@ var require_lib = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
214
216
|
const rRel = new _p_RegExpCtor(`^\\.${rSlash.source}`);
|
|
215
217
|
const getNotFoundError = (cmd) => _p_ObjectAssign(/* @__PURE__ */ new _p_ErrorCtor(`not found: ${cmd}`), { code: "ENOENT" });
|
|
216
218
|
const getPathInfo = (cmd, { path: optPath = process.env.PATH, pathExt: optPathExt = process.env.PATHEXT, delimiter: optDelimiter = delimiter }) => {
|
|
217
|
-
const pathEnv = cmd.match(rSlash) ? [""] : [...isWindows ? [
|
|
219
|
+
const pathEnv = cmd.match(rSlash) ? [""] : [...isWindows ? [_p_processCwd()] : [], ...(optPath || "").split(optDelimiter)];
|
|
218
220
|
if (isWindows) {
|
|
219
221
|
const pathExtExe = optPathExt || [
|
|
220
222
|
".EXE",
|
|
@@ -63,4 +63,4 @@ export interface BazelDownloadOptions {
|
|
|
63
63
|
* // → 'https://github.com/bazelbuild/bazel/releases/download/7.4.1/bazel-7.4.1-darwin-arm64'
|
|
64
64
|
* ```
|
|
65
65
|
*/
|
|
66
|
-
export declare function getBazelDownloadUrl(
|
|
66
|
+
export declare function getBazelDownloadUrl(options: BazelDownloadOptions): string | undefined;
|
|
@@ -91,8 +91,11 @@ function getBazelAssetEntry(platformArch) {
|
|
|
91
91
|
* // → 'https://github.com/bazelbuild/bazel/releases/download/7.4.1/bazel-7.4.1-darwin-arm64'
|
|
92
92
|
* ```
|
|
93
93
|
*/
|
|
94
|
-
function getBazelDownloadUrl(
|
|
95
|
-
const { platformArch, version } =
|
|
94
|
+
function getBazelDownloadUrl(options) {
|
|
95
|
+
const { platformArch, version } = {
|
|
96
|
+
__proto__: null,
|
|
97
|
+
...options
|
|
98
|
+
};
|
|
96
99
|
const entry = BAZEL_ASSET_MAP[platformArch];
|
|
97
100
|
if (!entry) return;
|
|
98
101
|
return `https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-${entry.suffix}`;
|
|
@@ -46,4 +46,4 @@ export interface BazelFromDownloadOptions {
|
|
|
46
46
|
* // → { path: '/.../bazel-7.4.1-darwin-arm64', source: 'download' }
|
|
47
47
|
* ```
|
|
48
48
|
*/
|
|
49
|
-
export declare function bazelFromDownload(
|
|
49
|
+
export declare function bazelFromDownload(options: BazelFromDownloadOptions): Promise<ResolvedBazel | undefined>;
|
|
@@ -31,8 +31,11 @@ const require_external_tools_bazel_asset_names = require('./asset-names.js');
|
|
|
31
31
|
* // → { path: '/.../bazel-7.4.1-darwin-arm64', source: 'download' }
|
|
32
32
|
* ```
|
|
33
33
|
*/
|
|
34
|
-
async function bazelFromDownload(
|
|
35
|
-
const { downloader, integrity, platformArch, version } =
|
|
34
|
+
async function bazelFromDownload(options) {
|
|
35
|
+
const { downloader, integrity, platformArch, version } = {
|
|
36
|
+
__proto__: null,
|
|
37
|
+
...options
|
|
38
|
+
};
|
|
36
39
|
const url = require_external_tools_bazel_asset_names.getBazelDownloadUrl({
|
|
37
40
|
version,
|
|
38
41
|
platformArch
|
|
@@ -21,6 +21,10 @@ node_process = require_runtime.__toESM(node_process);
|
|
|
21
21
|
* surfaces an actionable error.
|
|
22
22
|
*/
|
|
23
23
|
async function resolveBazelVersion(options) {
|
|
24
|
+
options = {
|
|
25
|
+
__proto__: null,
|
|
26
|
+
...options
|
|
27
|
+
};
|
|
24
28
|
const cwd = options?.cwd ?? node_process.default.cwd();
|
|
25
29
|
const envOverride = node_process.default.env["USE_BAZEL_VERSION"];
|
|
26
30
|
if (envOverride && envOverride.length > 0) return envOverride;
|
|
@@ -29,7 +29,7 @@ export interface ResolveBazelOptions {
|
|
|
29
29
|
downloader?: BinaryDownloader | undefined;
|
|
30
30
|
} | undefined;
|
|
31
31
|
}
|
|
32
|
-
export declare function cacheKey(
|
|
33
|
-
export declare function doResolveBazel(
|
|
32
|
+
export declare function cacheKey(options: ResolveBazelOptions | undefined): string;
|
|
33
|
+
export declare function doResolveBazel(options?: ResolveBazelOptions | undefined): Promise<ResolvedBazel | undefined>;
|
|
34
34
|
export declare function resetBazelResolution(): void;
|
|
35
|
-
export declare function resolveBazel(
|
|
35
|
+
export declare function resolveBazel(options?: ResolveBazelOptions | undefined): Promise<ResolvedBazel | undefined>;
|
|
@@ -23,26 +23,34 @@ const require_external_tools_bazel_from_path = require('./from-path.js');
|
|
|
23
23
|
* call can fall through to the download tier.
|
|
24
24
|
*/
|
|
25
25
|
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
26
|
-
function cacheKey(
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
function cacheKey(options) {
|
|
27
|
+
options = {
|
|
28
|
+
__proto__: null,
|
|
29
|
+
...options
|
|
30
|
+
};
|
|
31
|
+
if (!options?.downloadIfMissing) return "local-only";
|
|
32
|
+
const { integrity, platformArch, version } = options.downloadIfMissing;
|
|
29
33
|
return `dl:${version}:${platformArch}:${typeof integrity === "string" ? integrity : integrity ? `${integrity.type}:${integrity.value}` : ""}`;
|
|
30
34
|
}
|
|
31
|
-
async function doResolveBazel(
|
|
35
|
+
async function doResolveBazel(options) {
|
|
36
|
+
options = {
|
|
37
|
+
__proto__: null,
|
|
38
|
+
...options
|
|
39
|
+
};
|
|
32
40
|
const fromPath = await require_external_tools_bazel_from_path.bazelFromPath();
|
|
33
41
|
if (fromPath) return fromPath;
|
|
34
|
-
if (
|
|
42
|
+
if (options?.downloadIfMissing) return require_external_tools_bazel_from_download.bazelFromDownload(options.downloadIfMissing);
|
|
35
43
|
}
|
|
36
44
|
/* c8 ignore start - test-only escape hatch. */
|
|
37
45
|
function resetBazelResolution() {
|
|
38
46
|
resolutionCache.clear();
|
|
39
47
|
}
|
|
40
48
|
/* c8 ignore stop */
|
|
41
|
-
function resolveBazel(
|
|
42
|
-
const key = cacheKey(
|
|
49
|
+
function resolveBazel(options) {
|
|
50
|
+
const key = cacheKey(options);
|
|
43
51
|
let cached = resolutionCache.get(key);
|
|
44
52
|
if (!cached) {
|
|
45
|
-
cached = doResolveBazel(
|
|
53
|
+
cached = doResolveBazel(options);
|
|
46
54
|
resolutionCache.set(key, cached);
|
|
47
55
|
}
|
|
48
56
|
return cached;
|
|
@@ -51,7 +51,7 @@ export declare function getCdxgenAssetEntry(platformArch: string, variant?: Cdxg
|
|
|
51
51
|
* Build the GitHub release-asset download URL for an upstream cdxgen binary.
|
|
52
52
|
* Returns `undefined` when no entry exists for the requested platform-arch.
|
|
53
53
|
*/
|
|
54
|
-
export declare function getCdxgenDownloadUrl(
|
|
54
|
+
export declare function getCdxgenDownloadUrl(options: CdxgenDownloadOptions): string | undefined;
|
|
55
55
|
export declare function makeCdxgenEntry(baseTriple: string, variant: CdxgenVariant, ext?: '' | '.exe'): CdxgenAssetEntry;
|
|
56
56
|
export declare function makeCdxgenPlatformMap(variant: CdxgenVariant): Readonly<Record<string, CdxgenAssetEntry>>;
|
|
57
57
|
export declare const CDXGEN_SLIM_ASSET_MAP: Readonly<Record<string, CdxgenAssetEntry>>;
|
|
@@ -34,8 +34,11 @@ function getCdxgenAssetEntry(platformArch, variant = "slim") {
|
|
|
34
34
|
* Build the GitHub release-asset download URL for an upstream cdxgen binary.
|
|
35
35
|
* Returns `undefined` when no entry exists for the requested platform-arch.
|
|
36
36
|
*/
|
|
37
|
-
function getCdxgenDownloadUrl(
|
|
38
|
-
const { platformArch, variant = "slim", version } =
|
|
37
|
+
function getCdxgenDownloadUrl(options) {
|
|
38
|
+
const { platformArch, variant = "slim", version } = {
|
|
39
|
+
__proto__: null,
|
|
40
|
+
...options
|
|
41
|
+
};
|
|
39
42
|
const entry = getCdxgenAssetEntry(platformArch, variant);
|
|
40
43
|
if (!entry) return;
|
|
41
44
|
return `https://github.com/CycloneDX/cdxgen/releases/download/v${version}/` + entry.asset;
|
|
@@ -40,4 +40,4 @@ export interface CdxgenFromDownloadOptions {
|
|
|
40
40
|
*/
|
|
41
41
|
downloader?: BinaryDownloader | undefined;
|
|
42
42
|
}
|
|
43
|
-
export declare function cdxgenFromDownload(
|
|
43
|
+
export declare function cdxgenFromDownload(options: CdxgenFromDownloadOptions): Promise<ResolvedCdxgen | undefined>;
|
|
@@ -7,10 +7,10 @@ const require_fs_safe = require('../../fs/safe.js');
|
|
|
7
7
|
const require_external_tools_from_download = require('../from-download.js');
|
|
8
8
|
const require_external_tools_cdxgen_asset_names = require('./asset-names.js');
|
|
9
9
|
let node_fs = require("node:fs");
|
|
10
|
-
let node_path = require("node:path");
|
|
11
|
-
node_path = require_runtime.__toESM(node_path);
|
|
12
10
|
let node_process = require("node:process");
|
|
13
11
|
node_process = require_runtime.__toESM(node_process);
|
|
12
|
+
let node_path = require("node:path");
|
|
13
|
+
node_path = require_runtime.__toESM(node_path);
|
|
14
14
|
|
|
15
15
|
//#region src/external-tools/cdxgen/from-download.ts
|
|
16
16
|
/**
|
|
@@ -23,8 +23,11 @@ node_process = require_runtime.__toESM(node_process);
|
|
|
23
23
|
* for (none today; the asset map covers all 8 fleet targets) return
|
|
24
24
|
* `undefined` — callers should fall back to `cdxgenFromNpm()` for those.
|
|
25
25
|
*/
|
|
26
|
-
async function cdxgenFromDownload(
|
|
27
|
-
const { cacheDir, downloader, integrity, platformArch, variant = "slim", version } =
|
|
26
|
+
async function cdxgenFromDownload(options) {
|
|
27
|
+
const { cacheDir, downloader, integrity, platformArch, variant = "slim", version } = {
|
|
28
|
+
__proto__: null,
|
|
29
|
+
...options
|
|
30
|
+
};
|
|
28
31
|
const url = require_external_tools_cdxgen_asset_names.getCdxgenDownloadUrl({
|
|
29
32
|
platformArch,
|
|
30
33
|
variant,
|
|
@@ -26,7 +26,7 @@ export interface ResolveCdxgenOptions {
|
|
|
26
26
|
downloader?: BinaryDownloader | undefined;
|
|
27
27
|
} | undefined;
|
|
28
28
|
}
|
|
29
|
-
export declare function cacheKey(
|
|
30
|
-
export declare function doResolveCdxgen(
|
|
29
|
+
export declare function cacheKey(options: ResolveCdxgenOptions | undefined): string;
|
|
30
|
+
export declare function doResolveCdxgen(options?: ResolveCdxgenOptions | undefined): Promise<ResolvedCdxgen | undefined>;
|
|
31
31
|
export declare function resetCdxgenResolution(): void;
|
|
32
|
-
export declare function resolveCdxgen(
|
|
32
|
+
export declare function resolveCdxgen(options?: ResolveCdxgenOptions | undefined): Promise<ResolvedCdxgen | undefined>;
|
|
@@ -22,31 +22,39 @@ const require_external_tools_cdxgen_from_vfs = require('./from-vfs.js');
|
|
|
22
22
|
* option-shape.
|
|
23
23
|
*/
|
|
24
24
|
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
25
|
-
function cacheKey(
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
function cacheKey(options) {
|
|
26
|
+
options = {
|
|
27
|
+
__proto__: null,
|
|
28
|
+
...options
|
|
29
|
+
};
|
|
30
|
+
if (!options?.downloadIfMissing) return "local-only";
|
|
31
|
+
const { cacheDir, integrity, platformArch, variant, version } = options.downloadIfMissing;
|
|
28
32
|
const integrityKey = typeof integrity === "string" ? integrity : integrity ? `${integrity.type}:${integrity.value}` : "";
|
|
29
33
|
return `dl:${version}:${platformArch}:${variant ?? "slim"}:${integrityKey}:${cacheDir ?? ""}`;
|
|
30
34
|
}
|
|
31
|
-
async function doResolveCdxgen(
|
|
35
|
+
async function doResolveCdxgen(options) {
|
|
36
|
+
options = {
|
|
37
|
+
__proto__: null,
|
|
38
|
+
...options
|
|
39
|
+
};
|
|
32
40
|
const fromVfs = await require_external_tools_cdxgen_from_vfs.cdxgenFromVfs();
|
|
33
41
|
/* c8 ignore start - smol Node binary only. */
|
|
34
42
|
if (fromVfs) return fromVfs;
|
|
35
43
|
/* c8 ignore stop */
|
|
36
44
|
const fromPath = await require_external_tools_cdxgen_from_path.cdxgenFromPath();
|
|
37
45
|
if (fromPath) return fromPath;
|
|
38
|
-
if (
|
|
46
|
+
if (options?.downloadIfMissing) return require_external_tools_cdxgen_from_download.cdxgenFromDownload(options.downloadIfMissing);
|
|
39
47
|
}
|
|
40
48
|
/* c8 ignore start - test-only escape hatch. */
|
|
41
49
|
function resetCdxgenResolution() {
|
|
42
50
|
resolutionCache.clear();
|
|
43
51
|
}
|
|
44
52
|
/* c8 ignore stop */
|
|
45
|
-
function resolveCdxgen(
|
|
46
|
-
const key = cacheKey(
|
|
53
|
+
function resolveCdxgen(options) {
|
|
54
|
+
const key = cacheKey(options);
|
|
47
55
|
let cached = resolutionCache.get(key);
|
|
48
56
|
if (!cached) {
|
|
49
|
-
cached = doResolveCdxgen(
|
|
57
|
+
cached = doResolveCdxgen(options);
|
|
50
58
|
resolutionCache.set(key, cached);
|
|
51
59
|
}
|
|
52
60
|
return cached;
|
|
@@ -74,7 +74,7 @@ export interface DownloadAndExtractOptions extends DownloadOptions {
|
|
|
74
74
|
* // Caller constructs ResolvedJre from extractedDir.
|
|
75
75
|
* ```
|
|
76
76
|
*/
|
|
77
|
-
export declare function downloadAndExtractTool(
|
|
77
|
+
export declare function downloadAndExtractTool(options: DownloadAndExtractOptions): Promise<ExtractedTool>;
|
|
78
78
|
/**
|
|
79
79
|
* SRI integrity (`sha512-<base64>`) of a downloaded archive, surfaced on the
|
|
80
80
|
* per-tool `Resolved*` shapes. Set ONLY when `source === 'download'`; the
|
|
@@ -159,4 +159,4 @@ export interface DownloadOptions {
|
|
|
159
159
|
* })
|
|
160
160
|
* ```
|
|
161
161
|
*/
|
|
162
|
-
export declare function downloadToolArchive(
|
|
162
|
+
export declare function downloadToolArchive(options: DownloadOptions): Promise<DownloadedArchive>;
|
|
@@ -50,9 +50,12 @@ let node_fs = require("node:fs");
|
|
|
50
50
|
* // Caller constructs ResolvedJre from extractedDir.
|
|
51
51
|
* ```
|
|
52
52
|
*/
|
|
53
|
-
async function downloadAndExtractTool(
|
|
54
|
-
const archive = await downloadToolArchive(
|
|
55
|
-
const { extractOptions, extractedDir } =
|
|
53
|
+
async function downloadAndExtractTool(options) {
|
|
54
|
+
const archive = await downloadToolArchive(options);
|
|
55
|
+
const { extractOptions, extractedDir } = {
|
|
56
|
+
__proto__: null,
|
|
57
|
+
...options
|
|
58
|
+
};
|
|
56
59
|
let extracted = false;
|
|
57
60
|
if ((0, node_fs.existsSync)(extractedDir)) {
|
|
58
61
|
if ((await node_fs.promises.readdir(extractedDir)).length === 0) {
|
|
@@ -92,8 +95,11 @@ async function downloadAndExtractTool(opts) {
|
|
|
92
95
|
* })
|
|
93
96
|
* ```
|
|
94
97
|
*/
|
|
95
|
-
async function downloadToolArchive(
|
|
96
|
-
const { downloader, integrity, name, url } =
|
|
98
|
+
async function downloadToolArchive(options) {
|
|
99
|
+
const { downloader, integrity, name, url } = {
|
|
100
|
+
__proto__: null,
|
|
101
|
+
...options
|
|
102
|
+
};
|
|
97
103
|
const result = await (downloader ?? require_dlx_binary_download.downloadBinary)({
|
|
98
104
|
url,
|
|
99
105
|
name,
|
|
@@ -63,7 +63,7 @@ export interface CreatePipVenvResult {
|
|
|
63
63
|
* - The install succeeded but the entry-point was not created (caller passed a
|
|
64
64
|
* wrong `entryPoint` name, or the package has no console script).
|
|
65
65
|
*/
|
|
66
|
-
export declare function createPipVenv(
|
|
66
|
+
export declare function createPipVenv(options: CreatePipVenvOptions): Promise<CreatePipVenvResult>;
|
|
67
67
|
/**
|
|
68
68
|
* Locate a Python interpreter. Prefer `python3` on macOS/Linux, fall back to
|
|
69
69
|
* `python` (the Windows convention). Returns `undefined` when neither is on
|
|
@@ -6,10 +6,10 @@ const require_bin_which = require('../bin/which.js');
|
|
|
6
6
|
const require_process_spawn_child = require('../process/spawn/child.js');
|
|
7
7
|
const require_fs_safe = require('../fs/safe.js');
|
|
8
8
|
let node_fs = require("node:fs");
|
|
9
|
-
let node_path = require("node:path");
|
|
10
|
-
node_path = require_runtime.__toESM(node_path);
|
|
11
9
|
let node_process = require("node:process");
|
|
12
10
|
node_process = require_runtime.__toESM(node_process);
|
|
11
|
+
let node_path = require("node:path");
|
|
12
|
+
node_path = require_runtime.__toESM(node_path);
|
|
13
13
|
|
|
14
14
|
//#region src/external-tools/from-pip-venv.ts
|
|
15
15
|
/**
|
|
@@ -43,14 +43,21 @@ node_process = require_runtime.__toESM(node_process);
|
|
|
43
43
|
* - The install succeeded but the entry-point was not created (caller passed a
|
|
44
44
|
* wrong `entryPoint` name, or the package has no console script).
|
|
45
45
|
*/
|
|
46
|
-
async function createPipVenv(
|
|
47
|
-
|
|
46
|
+
async function createPipVenv(options) {
|
|
47
|
+
options = {
|
|
48
|
+
__proto__: null,
|
|
49
|
+
...options
|
|
50
|
+
};
|
|
51
|
+
const { cacheDir, entryPoint, installSpec } = {
|
|
52
|
+
__proto__: null,
|
|
53
|
+
...options
|
|
54
|
+
};
|
|
48
55
|
const entryBin = pipVenvEntryPointPath(cacheDir, entryPoint);
|
|
49
56
|
if ((0, node_fs.existsSync)(entryBin)) return {
|
|
50
57
|
entryPointPath: entryBin,
|
|
51
58
|
created: false
|
|
52
59
|
};
|
|
53
|
-
const python =
|
|
60
|
+
const python = options.python ?? await findPython();
|
|
54
61
|
if (!python) throw new Error("createPipVenv: no Python interpreter on PATH (looked for python3, python)");
|
|
55
62
|
await require_fs_safe.safeMkdir(node_path.default.dirname(cacheDir), { recursive: true });
|
|
56
63
|
await require_process_spawn_child.spawn(python, [
|
|
@@ -40,4 +40,4 @@ export interface JanusDownloadOptions {
|
|
|
40
40
|
*
|
|
41
41
|
* Reference: https://github.com/divmain/janus/releases.
|
|
42
42
|
*/
|
|
43
|
-
export declare function getJanusDownloadUrl(
|
|
43
|
+
export declare function getJanusDownloadUrl(options: JanusDownloadOptions): string | undefined;
|
|
@@ -36,8 +36,11 @@ function getJanusAssetEntry(platformArch) {
|
|
|
36
36
|
*
|
|
37
37
|
* Reference: https://github.com/divmain/janus/releases.
|
|
38
38
|
*/
|
|
39
|
-
function getJanusDownloadUrl(
|
|
40
|
-
const { platformArch, version } =
|
|
39
|
+
function getJanusDownloadUrl(options) {
|
|
40
|
+
const { platformArch, version } = {
|
|
41
|
+
__proto__: null,
|
|
42
|
+
...options
|
|
43
|
+
};
|
|
41
44
|
const entry = JANUS_ASSET_MAP[platformArch];
|
|
42
45
|
if (!entry) return;
|
|
43
46
|
return `https://github.com/divmain/janus/releases/download/v${version}/` + entry.asset;
|
|
@@ -23,4 +23,4 @@ export interface JanusFromDownloadOptions {
|
|
|
23
23
|
cacheDir?: string | undefined;
|
|
24
24
|
downloader?: BinaryDownloader | undefined;
|
|
25
25
|
}
|
|
26
|
-
export declare function janusFromDownload(
|
|
26
|
+
export declare function janusFromDownload(options: JanusFromDownloadOptions): Promise<ResolvedJanus>;
|
|
@@ -19,8 +19,11 @@ node_path = require_runtime.__toESM(node_path);
|
|
|
19
19
|
* per-process dlx cache, so multiple fleet consumers reuse the same extracted
|
|
20
20
|
* binary.
|
|
21
21
|
*/
|
|
22
|
-
async function janusFromDownload(
|
|
23
|
-
const { cacheDir, downloader, integrity, platformArch, version } =
|
|
22
|
+
async function janusFromDownload(options) {
|
|
23
|
+
const { cacheDir, downloader, integrity, platformArch, version } = {
|
|
24
|
+
__proto__: null,
|
|
25
|
+
...options
|
|
26
|
+
};
|
|
24
27
|
if (!require_external_tools_janus_asset_names.JANUS_SUPPORTED_PLATFORM_ARCHES.includes(platformArch)) throw new require_primordials_error.ErrorCtor(`janusFromDownload: platformArch must be one of [${require_external_tools_janus_asset_names.JANUS_SUPPORTED_PLATFORM_ARCHES.map((p) => `\`${p}\``).join(", ")}], got \`${platformArch}\`. Upstream janus only publishes the macOS arm64 build (see https://github.com/divmain/janus/releases); request \`darwin-arm64\` or use a different tool for other platforms.`);
|
|
25
28
|
const url = require_external_tools_janus_asset_names.getJanusDownloadUrl({
|
|
26
29
|
version,
|
|
@@ -22,7 +22,7 @@ export interface ResolveJanusOptions {
|
|
|
22
22
|
downloader?: BinaryDownloader | undefined;
|
|
23
23
|
} | undefined;
|
|
24
24
|
}
|
|
25
|
-
export declare function cacheKey(
|
|
26
|
-
export declare function doResolveJanus(
|
|
25
|
+
export declare function cacheKey(options: ResolveJanusOptions | undefined): string;
|
|
26
|
+
export declare function doResolveJanus(options?: ResolveJanusOptions | undefined): Promise<ResolvedJanus | undefined>;
|
|
27
27
|
export declare function resetJanusResolution(): void;
|
|
28
|
-
export declare function resolveJanus(
|
|
28
|
+
export declare function resolveJanus(options?: ResolveJanusOptions | undefined): Promise<ResolvedJanus | undefined>;
|