@socketsecurity/lib 6.0.6 → 6.0.8
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 +46 -1
- 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 +6 -2
- package/dist/ai/discover.js +4 -3
- 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 +69 -0
- package/dist/ai/route.js +156 -0
- package/dist/ai/spawn.d.mts +10 -2
- package/dist/ai/spawn.js +56 -31
- 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 +31 -6
- package/dist/ai/worktree.d.mts +6 -6
- package/dist/ai/worktree.js +5 -1
- package/dist/ansi/strip.d.ts +1 -1
- package/dist/ansi/strip.js +0 -2
- package/dist/archives/_internal.js +7 -9
- package/dist/archives/extract.js +1 -1
- package/dist/archives/tar.js +7 -7
- package/dist/archives/zip.js +5 -7
- package/dist/argv/flag-predicates.d.ts +12 -12
- package/dist/argv/flag-predicates.js +17 -17
- package/dist/argv/flag-types.d.ts +18 -18
- package/dist/argv/flag-types.js +4 -4
- package/dist/argv/parse.d.ts +20 -3
- package/dist/argv/parse.js +1 -1
- package/dist/arrays/_internal.js +11 -12
- package/dist/arrays/chunk.js +0 -1
- package/dist/arrays/join.d.ts +37 -3
- package/dist/arrays/join.js +47 -7
- package/dist/arrays/unique.js +0 -1
- package/dist/bin/_internal.d.ts +1 -1
- package/dist/bin/_internal.js +1 -1
- package/dist/bin/exec.js +2 -3
- package/dist/bin/find.js +17 -17
- package/dist/bin/prim.cjs +36175 -35861
- package/dist/bin/resolve.js +13 -14
- package/dist/bin/which.js +8 -8
- package/dist/cache/ttl/store.js +6 -6
- package/dist/checks/primordials-defaults.d.ts +3 -3
- package/dist/checks/primordials-defaults.js +3 -3
- package/dist/checks/primordials.js +4 -3
- package/dist/{bin → cli}/check-primordials.d.ts +18 -13
- package/dist/{bin → cli}/check-primordials.js +58 -55
- package/dist/{bin → cli}/check.js +3 -3
- package/dist/{bin → cli}/socket-lib.d.ts +1 -1
- package/dist/{bin → cli}/socket-lib.js +4 -4
- package/dist/colors/socket-palette.js +7 -9
- package/dist/compression/_internal.d.ts +12 -12
- package/dist/compression/_internal.js +18 -18
- package/dist/compression/brotli.d.ts +26 -27
- package/dist/compression/brotli.js +39 -35
- package/dist/compression/gzip.d.ts +23 -23
- package/dist/compression/gzip.js +46 -42
- package/dist/constants/agents.d.ts +3 -1
- package/dist/constants/agents.js +15 -11
- package/dist/constants/licenses.js +3 -3
- package/dist/constants/node.d.ts +23 -0
- package/dist/constants/node.js +47 -15
- package/dist/constants/packages.d.ts +3 -0
- package/dist/constants/packages.js +24 -29
- package/dist/constants/platform.d.ts +30 -3
- package/dist/constants/platform.js +72 -12
- package/dist/constants/runtime.d.ts +22 -0
- package/dist/constants/runtime.js +32 -0
- package/dist/constants/socket.d.ts +2 -6
- package/dist/constants/socket.js +12 -14
- package/dist/cover/code.js +10 -10
- package/dist/cover/formatters.js +5 -5
- package/dist/crypto/hash.d.ts +30 -2
- package/dist/crypto/hash.js +47 -13
- package/dist/debug/_internal.js +4 -6
- package/dist/debug/caller-info.js +3 -4
- package/dist/debug/namespace.d.ts +7 -0
- package/dist/debug/namespace.js +21 -12
- package/dist/debug/output.js +21 -24
- package/dist/debug/types.d.ts +4 -4
- package/dist/dlx/arborist.js +18 -8
- package/dist/dlx/binary-cache.js +15 -15
- package/dist/dlx/binary-download.d.ts +1 -1
- package/dist/dlx/binary-download.js +11 -11
- package/dist/dlx/binary-resolution.js +17 -15
- package/dist/dlx/binary-types.d.ts +5 -5
- package/dist/dlx/binary.js +5 -5
- package/dist/dlx/cache.js +1 -1
- package/dist/dlx/detect.d.ts +42 -25
- package/dist/dlx/detect.js +86 -77
- package/dist/dlx/dir.js +2 -2
- package/dist/dlx/firewall.d.ts +9 -1
- package/dist/dlx/firewall.js +1 -1
- package/dist/dlx/lockfile.d.ts +19 -18
- package/dist/dlx/lockfile.js +19 -16
- package/dist/dlx/manifest.d.ts +6 -6
- package/dist/dlx/manifest.js +5 -5
- package/dist/dlx/package.d.ts +10 -10
- package/dist/dlx/package.js +20 -16
- package/dist/dlx/packages.js +4 -4
- package/dist/dlx/paths.js +7 -7
- package/dist/dlx/spec.js +1 -1
- package/dist/dlx/types.d.ts +28 -27
- package/dist/eco/cargo/parse-lockfile.d.ts +2 -3
- package/dist/eco/cargo/parse-lockfile.js +5 -5
- package/dist/eco/manifest/analyze-lockfile.js +2 -2
- package/dist/eco/manifest/detect-format.js +5 -5
- package/dist/eco/manifest/find-packages.js +2 -2
- package/dist/eco/manifest/get-package-versions.js +2 -2
- package/dist/eco/manifest/get-package.js +2 -2
- package/dist/eco/manifest/parse-lockfile.js +2 -2
- package/dist/eco/manifest/parse-manifest.js +2 -2
- package/dist/eco/manifest/parse.js +2 -2
- package/dist/eco/npm/npm/exec.js +2 -2
- package/dist/eco/npm/npm/flags.js +7 -12
- package/dist/eco/npm/npm/parse-lockfile.d.ts +17 -18
- package/dist/eco/npm/npm/parse-lockfile.js +4 -4
- package/dist/eco/npm/parse-package-json.d.ts +11 -0
- package/dist/eco/npm/parse-package-json.js +3 -3
- package/dist/eco/npm/pnpm/exec.d.ts +1 -1
- package/dist/eco/npm/pnpm/exec.js +5 -5
- package/dist/eco/npm/pnpm/flags.js +0 -3
- package/dist/eco/npm/pnpm/parse-lockfile.d.ts +6 -4
- package/dist/eco/npm/pnpm/parse-lockfile.js +7 -7
- package/dist/eco/npm/script.js +9 -6
- package/dist/eco/npm/yarnpkg/yarn/exec.js +4 -4
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +3 -4
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +9 -9
- package/dist/effects/pulse-frames.d.ts +3 -1
- package/dist/effects/shimmer-keyframes.d.ts +1 -1
- package/dist/effects/shimmer-terminal.d.ts +1 -1
- package/dist/env/boolean.js +0 -1
- package/dist/env/ci.js +0 -1
- package/dist/env/debug.js +0 -1
- package/dist/env/github-status.d.ts +51 -0
- package/dist/env/github-status.js +90 -0
- package/dist/env/github.js +0 -8
- package/dist/env/home.js +0 -1
- package/dist/env/locale.js +0 -3
- package/dist/env/node-auth-token.js +0 -1
- package/dist/env/node-env.js +0 -1
- package/dist/env/node-version-managers.d.ts +53 -0
- package/dist/env/node-version-managers.js +90 -0
- package/dist/env/npm.js +0 -5
- package/dist/env/number.js +0 -1
- package/dist/env/package-manager.js +3 -6
- package/dist/env/path.js +0 -1
- package/dist/env/pre-commit.js +1 -2
- package/dist/env/proxy.js +1 -1
- package/dist/env/rewire.d.ts +8 -6
- package/dist/env/rewire.js +16 -17
- package/dist/env/shell.js +0 -1
- package/dist/env/socket-cli.js +5 -18
- package/dist/env/socket-mcp.d.ts +114 -0
- package/dist/env/socket-mcp.js +146 -0
- package/dist/env/socket.d.ts +8 -109
- package/dist/env/socket.js +22 -167
- package/dist/env/string.js +0 -1
- package/dist/env/temp-dir.js +0 -3
- package/dist/env/term.js +0 -1
- package/dist/env/test.js +3 -6
- package/dist/env/windows.js +0 -4
- package/dist/env/xdg.js +0 -3
- package/dist/errors/predicates.js +1 -1
- package/dist/events/exit/_internal.d.ts +11 -9
- package/dist/events/exit/_internal.js +31 -35
- package/dist/events/exit/handler.js +3 -4
- package/dist/events/exit/intercept.js +4 -6
- package/dist/events/exit/lifecycle.js +16 -18
- package/dist/events/exit/signals.js +1 -2
- package/dist/events/exit/types.d.ts +6 -5
- package/dist/external/@npmcli/package-json.js +2 -2
- package/dist/external/@npmcli/promise-spawn.js +3 -1
- package/dist/external/npm-pack.js +2 -2
- package/dist/external/pico-pack.js +4 -2
- 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/read-bazel-version-file.js +1 -1
- 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/bazel/types.d.ts +1 -1
- 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/from-vfs.js +1 -1
- package/dist/external-tools/cdxgen/resolve.d.ts +3 -3
- package/dist/external-tools/cdxgen/resolve.js +16 -8
- package/dist/external-tools/cdxgen/types.d.ts +1 -1
- package/dist/external-tools/from-download.d.ts +3 -3
- package/dist/external-tools/from-download.js +12 -6
- 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/from-vfs.js +1 -1
- package/dist/external-tools/janus/resolve.d.ts +3 -3
- package/dist/external-tools/janus/resolve.js +16 -8
- package/dist/external-tools/janus/types.d.ts +1 -1
- 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.d.ts +10 -6
- package/dist/external-tools/jre/detect-platform-arch.js +29 -14
- 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 +3 -3
- package/dist/external-tools/jre/resolve.d.ts +3 -3
- package/dist/external-tools/jre/resolve.js +16 -8
- package/dist/external-tools/jre/types.d.ts +1 -1
- package/dist/external-tools/manifest.d.ts +25 -7
- package/dist/external-tools/manifest.js +13 -13
- 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/from-vfs.js +1 -1
- package/dist/external-tools/opengrep/resolve.d.ts +3 -3
- package/dist/external-tools/opengrep/resolve.js +16 -8
- package/dist/external-tools/opengrep/types.d.ts +1 -1
- package/dist/external-tools/python/asset-names.d.ts +76 -0
- package/dist/external-tools/python/asset-names.js +111 -0
- package/dist/external-tools/python/dlx.d.ts +80 -0
- package/dist/external-tools/python/dlx.js +98 -0
- package/dist/external-tools/python/from-download.d.ts +53 -0
- package/dist/external-tools/python/from-download.js +75 -0
- package/dist/external-tools/python/from-path.d.ts +7 -0
- package/dist/external-tools/python/from-path.js +23 -0
- package/dist/external-tools/python/pin.d.ts +121 -0
- package/dist/external-tools/python/pin.js +176 -0
- package/dist/external-tools/python/pip-install.d.ts +75 -0
- package/dist/external-tools/python/pip-install.js +142 -0
- package/dist/external-tools/python/resolve.d.ts +42 -0
- package/dist/external-tools/python/resolve.js +66 -0
- package/dist/external-tools/python/types.d.ts +49 -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/from-vfs.js +1 -1
- package/dist/external-tools/sbt/resolve.d.ts +3 -3
- package/dist/external-tools/sbt/resolve.js +16 -8
- package/dist/external-tools/sbt/types.d.ts +1 -1
- 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-path.js +3 -5
- package/dist/external-tools/skillspector/from-vfs.js +1 -1
- package/dist/external-tools/skillspector/resolve.d.ts +2 -2
- package/dist/external-tools/skillspector/resolve.js +14 -6
- 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 +7 -4
- package/dist/external-tools/synp/from-vfs.js +1 -1
- 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/from-vfs.js +1 -1
- package/dist/external-tools/trivy/resolve.d.ts +3 -3
- package/dist/external-tools/trivy/resolve.js +16 -8
- package/dist/external-tools/trivy/types.d.ts +1 -1
- 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/from-vfs.js +1 -1
- package/dist/external-tools/trufflehog/resolve.d.ts +3 -3
- package/dist/external-tools/trufflehog/resolve.js +16 -8
- package/dist/external-tools/trufflehog/types.d.ts +1 -1
- package/dist/fs/_internal.d.ts +1 -1
- package/dist/fs/_internal.js +7 -7
- package/dist/fs/access.js +5 -9
- package/dist/fs/allowed-dirs-cache.d.ts +47 -0
- package/dist/fs/allowed-dirs-cache.js +69 -0
- package/dist/fs/encoding.js +5 -7
- package/dist/fs/{find-up.js → find.js} +12 -14
- package/dist/fs/inspect.js +7 -13
- package/dist/fs/read-dir.js +7 -10
- package/dist/fs/read-file.js +8 -14
- package/dist/fs/read-json-cache.d.ts +13 -4
- package/dist/fs/read-json-cache.js +9 -6
- package/dist/fs/read-json.js +4 -6
- package/dist/fs/resolve-module.js +7 -3
- package/dist/fs/safe.d.ts +1 -1
- package/dist/fs/safe.js +13 -14
- package/dist/fs/unique.js +4 -5
- package/dist/fs/validate.js +1 -2
- package/dist/fs/write-json.js +4 -5
- package/dist/git/_internal.js +11 -11
- package/dist/git/changed.js +4 -4
- package/dist/git/repo.js +5 -7
- package/dist/git/staged.js +12 -4
- package/dist/git/tracked.d.ts +84 -0
- package/dist/git/tracked.js +163 -0
- package/dist/git/unstaged.js +12 -4
- package/dist/github/ghsa.js +2 -2
- package/dist/github/refs-cache.d.ts +1 -1
- package/dist/github/refs-cache.js +5 -5
- package/dist/github/refs-graphql.js +4 -0
- package/dist/github/refs-rest.js +9 -5
- package/dist/github/refs.js +15 -10
- package/dist/github/{fetch.js → request.js} +13 -2
- package/dist/github/token.js +1 -1
- package/dist/github/types.d.ts +1 -1
- package/dist/globs/_internal.js +8 -10
- package/dist/globs/match.js +13 -7
- package/dist/globs/matcher.d.ts +3 -3
- package/dist/globs/matcher.js +16 -14
- package/dist/globs/stream.js +1 -2
- package/dist/globs/types.d.ts +24 -24
- package/dist/http-request/_internal.d.ts +1 -1
- package/dist/http-request/browser.js +10 -4
- package/dist/http-request/checksum-file.d.ts +55 -0
- package/dist/http-request/checksum-file.js +95 -0
- package/dist/http-request/download-types.d.ts +15 -23
- package/dist/http-request/download.js +3 -3
- 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 -2
- package/dist/http-request/request-attempt.js +38 -34
- package/dist/http-request/request-types.d.ts +2 -2
- package/dist/http-request/request.js +1 -1
- package/dist/http-request/user-agent.js +4 -5
- package/dist/integrity.d.ts +92 -18
- package/dist/integrity.js +125 -30
- package/dist/ipc/directory.js +2 -2
- package/dist/ipc/paths.js +1 -1
- package/dist/ipc/write.js +1 -1
- package/dist/ipc-cli/get.js +12 -12
- package/dist/json/edit.js +51 -44
- package/dist/json/format.js +1 -1
- package/dist/json/parse.d.ts +1 -1
- package/dist/json/parse.js +3 -7
- package/dist/logger/_internal.d.ts +4 -4
- package/dist/logger/_internal.js +3 -3
- package/dist/logger/colors.js +4 -3
- package/dist/logger/console-methods.d.ts +132 -0
- package/dist/logger/console-methods.js +169 -0
- package/dist/logger/console.d.ts +12 -0
- package/dist/logger/console.js +42 -11
- package/dist/logger/indentation-methods.d.ts +81 -0
- package/dist/logger/indentation-methods.js +121 -0
- package/dist/logger/node.d.ts +16 -338
- package/dist/logger/node.js +75 -608
- package/dist/logger/options.d.ts +39 -0
- package/dist/logger/options.js +47 -0
- package/dist/logger/semantic-methods.d.ts +63 -0
- package/dist/logger/semantic-methods.js +108 -0
- package/dist/logger/stream-methods.d.ts +63 -0
- package/dist/logger/stream-methods.js +101 -0
- package/dist/logger/stream.d.ts +37 -0
- package/dist/logger/stream.js +42 -0
- package/dist/logger/symbols-builder.js +9 -9
- package/dist/logger/symbols.d.ts +2 -25
- package/dist/logger/symbols.js +53 -74
- package/dist/logger/types.d.ts +1 -1
- package/dist/memo/types.d.ts +6 -6
- package/dist/native-messaging/host.d.ts +20 -0
- package/dist/native-messaging/host.js +120 -0
- package/dist/native-messaging/index.d.ts +5 -0
- package/dist/native-messaging/index.js +22 -0
- package/dist/native-messaging/install.d.ts +60 -0
- package/dist/native-messaging/install.js +144 -0
- package/dist/native-messaging/rate-limit.d.ts +69 -0
- package/dist/native-messaging/rate-limit.js +119 -0
- package/dist/native-messaging/run.d.ts +10 -0
- package/dist/native-messaging/run.js +17 -0
- package/dist/node/async-hooks.js +4 -3
- package/dist/node/child-process.js +4 -3
- package/dist/node/crypto.js +4 -3
- package/dist/node/events.js +4 -3
- package/dist/node/fs-promises.js +4 -3
- package/dist/node/fs.d.ts +22 -6
- package/dist/node/fs.js +17 -3
- package/dist/node/http.js +4 -3
- package/dist/node/https.js +4 -3
- package/dist/node/module.js +10 -6
- package/dist/node/os.d.ts +10 -2
- package/dist/node/os.js +12 -4
- package/dist/node/path.d.ts +11 -2
- package/dist/node/path.js +18 -4
- package/dist/node/timers-promises.js +4 -3
- package/dist/node/url.js +4 -3
- package/dist/node/util.js +4 -3
- package/dist/objects/getters.js +6 -8
- package/dist/objects/inspect.js +1 -4
- package/dist/objects/mutate.js +4 -5
- package/dist/objects/predicates.js +1 -5
- package/dist/objects/sort.js +3 -7
- package/dist/packages/edit-class.d.ts +2 -3
- package/dist/packages/edit-class.js +53 -48
- package/dist/packages/edit.js +12 -14
- package/dist/packages/exports.js +15 -21
- package/dist/packages/fetch.d.ts +16 -0
- package/dist/packages/fetch.js +81 -0
- package/dist/packages/find.d.ts +55 -0
- package/dist/packages/find.js +65 -0
- package/dist/packages/isolation.js +14 -14
- package/dist/packages/licenses.js +18 -18
- package/dist/packages/manifest.js +16 -19
- package/dist/packages/metadata-extensions.d.ts +14 -0
- package/dist/packages/metadata-extensions.js +43 -0
- package/dist/packages/normalize.js +6 -10
- package/dist/packages/provenance.js +17 -19
- package/dist/packages/read.d.ts +29 -0
- package/dist/packages/read.js +66 -0
- package/dist/packages/specs.d.ts +48 -1
- package/dist/packages/specs.js +75 -12
- package/dist/packages/tarball.d.ts +24 -0
- package/dist/packages/tarball.js +81 -0
- package/dist/packages/types.d.ts +22 -22
- package/dist/packages/validation.js +0 -3
- package/dist/paths/_internal.d.ts +2 -1
- package/dist/paths/_internal.js +7 -19
- package/dist/paths/conversion.js +5 -9
- package/dist/paths/dirnames.d.ts +1 -0
- package/dist/paths/dirnames.js +2 -0
- package/dist/paths/filenames.d.ts +0 -1
- package/dist/paths/filenames.js +0 -2
- package/dist/paths/normalize.js +4 -5
- package/dist/paths/packages.js +4 -7
- package/dist/paths/predicates.js +9 -16
- package/dist/paths/resolve.js +17 -25
- package/dist/paths/rewire.d.ts +5 -0
- package/dist/paths/rewire.js +3 -3
- package/dist/paths/socket.d.ts +74 -111
- package/dist/paths/socket.js +106 -139
- package/dist/paths/walk.d.ts +1 -1
- package/dist/paths/walk.js +4 -4
- package/dist/perf/report.js +2 -2
- package/dist/perf/types.d.ts +1 -1
- package/dist/pkg-ext/data.js +1 -1
- package/dist/primordials/array.js +9 -9
- package/dist/primordials/date.js +2 -2
- package/dist/primordials/error.js +3 -3
- package/dist/primordials/headers.d.ts +10 -0
- package/dist/primordials/headers.js +23 -0
- package/dist/primordials/intl.d.ts +13 -0
- package/dist/primordials/intl.js +26 -0
- package/dist/primordials/math.js +33 -33
- package/dist/primordials/number.js +9 -9
- package/dist/primordials/object.js +5 -5
- package/dist/primordials/process.d.ts +88 -0
- package/dist/primordials/process.js +132 -0
- package/dist/primordials/string.d.ts +2 -2
- package/dist/primordials/string.js +6 -6
- package/dist/primordials/symbol.js +3 -3
- package/dist/primordials/uncurry.d.ts +1 -2
- package/dist/primordials/uncurry.js +9 -9
- package/dist/process/abort.js +3 -3
- package/dist/process/lock-manager.js +8 -8
- package/dist/process/spawn/_internal.js +6 -8
- package/dist/process/spawn/child.js +20 -14
- package/dist/process/spawn/errors.js +3 -5
- package/dist/process/spawn/kill-tree.d.ts +53 -0
- package/dist/process/spawn/kill-tree.js +85 -0
- package/dist/process/spawn/stdio.js +0 -1
- package/dist/process/spawn/types.d.ts +5 -5
- package/dist/process/transient.js +2 -2
- package/dist/promises/_internal.d.ts +2 -1
- package/dist/promises/_internal.js +2 -6
- package/dist/promises/iterate.js +11 -15
- package/dist/promises/options.js +3 -6
- package/dist/promises/retry.js +4 -5
- package/dist/promises/timers.d.ts +30 -0
- package/dist/promises/timers.js +48 -0
- package/dist/regexps/spec.js +1 -1
- package/dist/releases/github-archives.d.ts +6 -6
- package/dist/releases/github-archives.js +3 -3
- package/dist/releases/github-asset-url.d.ts +1 -1
- package/dist/releases/github-asset-url.js +5 -5
- package/dist/releases/github-downloads.d.ts +1 -1
- package/dist/releases/github-downloads.js +3 -3
- package/dist/releases/github-listing.d.ts +12 -4
- package/dist/releases/github-listing.js +20 -7
- package/dist/releases/github-retry-config.js +1 -1
- package/dist/releases/github-types.d.ts +6 -6
- package/dist/releases/socket-btm-binary-naming.d.ts +107 -0
- package/dist/releases/socket-btm-binary-naming.js +155 -0
- package/dist/releases/socket-btm.d.ts +8 -115
- package/dist/releases/socket-btm.js +16 -159
- package/dist/schema/types.d.ts +4 -5
- package/dist/schema/validate.js +1 -1
- package/dist/sea/detect.js +6 -6
- package/dist/secrets/_internal.d.ts +2 -2
- package/dist/secrets/_internal.js +2 -2
- package/dist/secrets/compare.d.ts +45 -0
- package/dist/secrets/compare.js +61 -0
- package/dist/secrets/find.d.ts +2 -2
- package/dist/secrets/find.js +10 -4
- package/dist/secrets/keychain.d.ts +1 -1
- package/dist/secrets/keychain.js +6 -4
- package/dist/secrets/linux.js +40 -52
- package/dist/secrets/macos.d.ts +2 -3
- package/dist/secrets/macos.js +24 -33
- package/dist/secrets/rc.d.ts +4 -4
- package/dist/secrets/rc.js +27 -17
- package/dist/secrets/socket-api-token.d.ts +4 -4
- package/dist/secrets/socket-api-token.js +26 -9
- package/dist/secrets/windows.js +32 -37
- package/dist/shadow/skip.js +2 -2
- package/dist/shell/parse.d.ts +32 -0
- package/dist/shell/parse.js +60 -0
- package/dist/smol/detect.js +9 -10
- package/dist/smol/http.js +6 -7
- package/dist/smol/https.js +6 -7
- package/dist/smol/manifest.d.ts +1 -1
- package/dist/smol/manifest.js +6 -7
- package/dist/smol/path.d.ts +1 -1
- package/dist/smol/path.js +7 -8
- package/dist/smol/primordial.d.ts +4 -0
- package/dist/smol/primordial.js +6 -7
- package/dist/smol/purl.d.ts +1 -1
- package/dist/smol/purl.js +7 -8
- package/dist/smol/versions.js +6 -7
- package/dist/smol/vfs.js +6 -7
- package/dist/sorts/_internal.js +6 -8
- package/dist/sorts/natural.js +10 -12
- package/dist/sorts/semver.js +1 -2
- package/dist/sorts/strings.js +0 -1
- package/dist/sorts/types.d.ts +1 -1
- package/dist/spinner/create-spinner-class.d.ts +38 -0
- package/dist/spinner/create-spinner-class.js +302 -0
- package/dist/spinner/default.js +8 -9
- package/dist/spinner/spinner-internals.d.ts +36 -0
- package/dist/spinner/spinner-internals.js +105 -0
- package/dist/spinner/spinner-shimmer-methods.d.ts +54 -0
- package/dist/spinner/spinner-shimmer-methods.js +143 -0
- package/dist/spinner/spinner-status-methods.d.ts +40 -0
- package/dist/spinner/spinner-status-methods.js +133 -0
- package/dist/spinner/spinner.d.ts +8 -5
- package/dist/spinner/spinner.js +19 -706
- package/dist/spinner/types.d.ts +3 -1
- package/dist/spinner/with.d.ts +10 -0
- package/dist/spinner/with.js +16 -2
- package/dist/stdio/divider.js +1 -1
- package/dist/stdio/footer.js +3 -3
- package/dist/stdio/header.js +4 -4
- package/dist/stdio/progress.js +10 -6
- package/dist/stdio/prompts.d.ts +7 -5
- package/dist/stdio/prompts.js +7 -8
- package/dist/stdio/stdout.js +3 -3
- package/dist/streams/parallel.js +3 -5
- package/dist/streams/transform.js +2 -3
- package/dist/strings/format.js +2 -6
- package/dist/strings/predicates.js +0 -2
- package/dist/strings/search.js +1 -2
- package/dist/strings/transform.js +0 -3
- package/dist/strings/width.js +9 -10
- package/dist/tables/bordered.js +4 -3
- package/dist/tables/padding.js +1 -1
- package/dist/tables/simple.js +8 -5
- package/dist/temporal/instant.js +1 -1
- package/dist/temporal/slots.js +6 -6
- package/dist/temporal/system.js +9 -9
- package/dist/themes/context.d.ts +3 -2
- package/dist/themes/context.js +4 -5
- package/dist/themes/themes.js +15 -15
- package/dist/themes/types.d.ts +3 -3
- package/dist/url/assert-safe.d.ts +29 -0
- package/dist/url/assert-safe.js +54 -0
- package/dist/url/parse.js +0 -2
- package/dist/url/predicates.d.ts +31 -1
- package/dist/url/predicates.js +43 -3
- package/dist/url/search-params.js +3 -9
- package/dist/url/types.d.ts +9 -5
- package/dist/versions/_internal.js +3 -3
- package/dist/words/article.js +0 -1
- package/dist/words/capitalize.js +0 -1
- package/dist/words/pluralize.js +15 -5
- package/package.json +419 -216
- package/dist/external-tools/uv/asset-names.d.ts +0 -36
- package/dist/external-tools/uv/asset-names.js +0 -70
- package/dist/external-tools/uv/from-download.d.ts +0 -17
- package/dist/external-tools/uv/from-download.js +0 -47
- package/dist/external-tools/uv/from-path.d.ts +0 -5
- package/dist/external-tools/uv/from-path.js +0 -22
- package/dist/external-tools/uv/from-vfs.d.ts +0 -7
- package/dist/external-tools/uv/from-vfs.js +0 -26
- package/dist/external-tools/uv/resolve.d.ts +0 -25
- package/dist/external-tools/uv/resolve.js +0 -53
- package/dist/external-tools/uv/types.d.ts +0 -24
- package/dist/fs/path-cache.d.ts +0 -21
- package/dist/fs/path-cache.js +0 -34
- package/dist/http-request/checksums.d.ts +0 -69
- package/dist/http-request/checksums.js +0 -108
- package/dist/http-request/http-request.d.ts +0 -12
- package/dist/http-request/http-request.js +0 -11
- package/dist/packages/operations.d.ts +0 -113
- package/dist/packages/operations.js +0 -304
- package/dist/ssri/convert.d.ts +0 -48
- package/dist/ssri/convert.js +0 -69
- package/dist/ssri/parse.d.ts +0 -27
- package/dist/ssri/parse.js +0 -41
- package/dist/ssri/validate.d.ts +0 -41
- package/dist/ssri/validate.js +0 -56
- /package/dist/{bin → cli}/check.d.ts +0 -0
- /package/dist/external-tools/{uv → python}/types.js +0 -0
- /package/dist/fs/{find-up.d.ts → find.d.ts} +0 -0
- /package/dist/github/{fetch.d.ts → request.d.ts} +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_primordials_map_set = require('../../primordials/map-set.js');
|
|
5
|
+
const require_external_tools_python_asset_names = require('./asset-names.js');
|
|
6
|
+
const require_external_tools_python_from_download = require('./from-download.js');
|
|
7
|
+
const require_external_tools_python_from_path = require('./from-path.js');
|
|
8
|
+
|
|
9
|
+
//#region src/external-tools/python/resolve.ts
|
|
10
|
+
/**
|
|
11
|
+
* @file `resolvePython()` — CPython resolution entry point. Tries each source
|
|
12
|
+
* in order:
|
|
13
|
+
*
|
|
14
|
+
* 1. PATH — `python3` / `python` on the system PATH.
|
|
15
|
+
* 2. download — python-build-standalone CPython into the DLX cache (only when
|
|
16
|
+
* `downloadIfMissing` is passed). Returns `undefined` if all enabled
|
|
17
|
+
* sources miss. Memoized per option-shape so repeated calls in one process
|
|
18
|
+
* don't re-probe / re-download. NOTE: unlike the JRE / removed-uv
|
|
19
|
+
* resolvers there is no VFS tier here — a CPython runtime is not embedded
|
|
20
|
+
* in the smol Node binary. Add a `from-vfs` tier here if that changes.
|
|
21
|
+
*/
|
|
22
|
+
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
23
|
+
function cacheKey(options) {
|
|
24
|
+
options = {
|
|
25
|
+
__proto__: null,
|
|
26
|
+
...options
|
|
27
|
+
};
|
|
28
|
+
const prefer = options?.preferDownload ? "prefer:" : "";
|
|
29
|
+
if (!options?.downloadIfMissing) return `${prefer}local-only`;
|
|
30
|
+
const { cacheDir, integrity, tag, version } = options.downloadIfMissing;
|
|
31
|
+
return `${prefer}dl:${version}:${tag}:${options.downloadIfMissing.arch ?? require_external_tools_python_asset_names.getPythonArch() ?? "unknown"}:${typeof integrity === "string" ? integrity : integrity ? `${integrity.type}:${integrity.value}` : ""}:${cacheDir ?? ""}`;
|
|
32
|
+
}
|
|
33
|
+
async function doResolvePython(options) {
|
|
34
|
+
options = {
|
|
35
|
+
__proto__: null,
|
|
36
|
+
...options
|
|
37
|
+
};
|
|
38
|
+
const dl = options?.downloadIfMissing;
|
|
39
|
+
if (options?.preferDownload && dl) {
|
|
40
|
+
const fromDownload = await require_external_tools_python_from_download.pythonFromDownload(dl);
|
|
41
|
+
if (fromDownload) return fromDownload;
|
|
42
|
+
}
|
|
43
|
+
const fromPath = await require_external_tools_python_from_path.pythonFromPath();
|
|
44
|
+
if (fromPath) return fromPath;
|
|
45
|
+
if (dl) return require_external_tools_python_from_download.pythonFromDownload(dl);
|
|
46
|
+
}
|
|
47
|
+
/* c8 ignore start - test-only escape hatch. */
|
|
48
|
+
function resetPythonResolution() {
|
|
49
|
+
resolutionCache.clear();
|
|
50
|
+
}
|
|
51
|
+
/* c8 ignore stop */
|
|
52
|
+
function resolvePython(options) {
|
|
53
|
+
const key = cacheKey(options);
|
|
54
|
+
let cached = resolutionCache.get(key);
|
|
55
|
+
if (!cached) {
|
|
56
|
+
cached = doResolvePython(options);
|
|
57
|
+
resolutionCache.set(key, cached);
|
|
58
|
+
}
|
|
59
|
+
return cached;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
//#endregion
|
|
63
|
+
exports.cacheKey = cacheKey;
|
|
64
|
+
exports.doResolvePython = doResolvePython;
|
|
65
|
+
exports.resetPythonResolution = resetPythonResolution;
|
|
66
|
+
exports.resolvePython = resolvePython;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Types for the python-build-standalone DLX resolver. A "resolved python"
|
|
3
|
+
* is an absolute path to a CPython interpreter plus the tier that found it.
|
|
4
|
+
*/
|
|
5
|
+
import type { ResolvedToolIntegrity } from '../from-download';
|
|
6
|
+
/**
|
|
7
|
+
* Which resolver tier produced the interpreter.
|
|
8
|
+
*
|
|
9
|
+
* - `path` — an interpreter already on PATH (system / pyenv / etc.).
|
|
10
|
+
* - `download` — a python-build-standalone CPython fetched into the DLX cache.
|
|
11
|
+
*/
|
|
12
|
+
export type PythonSource = 'download' | 'path';
|
|
13
|
+
export interface ResolvedPython {
|
|
14
|
+
/**
|
|
15
|
+
* Absolute path to the `python3` (or `python.exe`) executable.
|
|
16
|
+
*/
|
|
17
|
+
readonly path: string;
|
|
18
|
+
/**
|
|
19
|
+
* Which resolver tier found this interpreter.
|
|
20
|
+
*/
|
|
21
|
+
readonly source: PythonSource;
|
|
22
|
+
/**
|
|
23
|
+
* SRI integrity of the downloaded archive. Set only when `source ===
|
|
24
|
+
* 'download'`; the PATH tier references an interpreter already on disk and
|
|
25
|
+
* computes no hash. See {@link ResolvedToolIntegrity}.
|
|
26
|
+
*/
|
|
27
|
+
readonly integrity?: ResolvedToolIntegrity | undefined;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Pin describing which python-build-standalone build to fetch. The caller
|
|
31
|
+
* supplies these from its own `external-tools.json` (or `bundle-tools.json`) —
|
|
32
|
+
* the library does not embed a default version, so each consumer controls its
|
|
33
|
+
* own pin + soak.
|
|
34
|
+
*/
|
|
35
|
+
export interface PythonBuildPin {
|
|
36
|
+
/**
|
|
37
|
+
* CPython version, e.g. `3.11.14`.
|
|
38
|
+
*/
|
|
39
|
+
readonly version: string;
|
|
40
|
+
/**
|
|
41
|
+
* Python-build-standalone release tag, e.g. `20260203`.
|
|
42
|
+
*/
|
|
43
|
+
readonly tag: string;
|
|
44
|
+
/**
|
|
45
|
+
* Optional per-platform integrity (hex SHA-256 or SRI). Keyed by the asset
|
|
46
|
+
* filename so the resolver can verify the exact tarball it downloads.
|
|
47
|
+
*/
|
|
48
|
+
readonly integrity?: string | undefined;
|
|
49
|
+
}
|
|
@@ -28,4 +28,4 @@ export interface SbtDownloadOptions {
|
|
|
28
28
|
* // → 'https://github.com/sbt/sbt/releases/download/v1.10.7/sbt-1.10.7.tgz'
|
|
29
29
|
* ```
|
|
30
30
|
*/
|
|
31
|
-
export declare function getSbtDownloadUrl(
|
|
31
|
+
export declare function getSbtDownloadUrl(options: SbtDownloadOptions): string;
|
|
@@ -15,8 +15,11 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
15
15
|
* // → 'https://github.com/sbt/sbt/releases/download/v1.10.7/sbt-1.10.7.tgz'
|
|
16
16
|
* ```
|
|
17
17
|
*/
|
|
18
|
-
function getSbtDownloadUrl(
|
|
19
|
-
const { version } =
|
|
18
|
+
function getSbtDownloadUrl(options) {
|
|
19
|
+
const { version } = {
|
|
20
|
+
__proto__: null,
|
|
21
|
+
...options
|
|
22
|
+
};
|
|
20
23
|
return `https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz`;
|
|
21
24
|
}
|
|
22
25
|
|
|
@@ -41,4 +41,4 @@ export interface SbtFromDownloadOptions {
|
|
|
41
41
|
* // → { path: '/.../bin/sbt', isJar: false, source: 'download' }
|
|
42
42
|
* ```
|
|
43
43
|
*/
|
|
44
|
-
export declare function sbtFromDownload(
|
|
44
|
+
export declare function sbtFromDownload(options: SbtFromDownloadOptions): Promise<ResolvedSbt | undefined>;
|
|
@@ -29,8 +29,11 @@ node_path = require_runtime.__toESM(node_path);
|
|
|
29
29
|
* // → { path: '/.../bin/sbt', isJar: false, source: 'download' }
|
|
30
30
|
* ```
|
|
31
31
|
*/
|
|
32
|
-
async function sbtFromDownload(
|
|
33
|
-
const { cacheDir, downloader, integrity, version } =
|
|
32
|
+
async function sbtFromDownload(options) {
|
|
33
|
+
const { cacheDir, downloader, integrity, version } = {
|
|
34
|
+
__proto__: null,
|
|
35
|
+
...options
|
|
36
|
+
};
|
|
34
37
|
const url = require_external_tools_sbt_asset_names.getSbtDownloadUrl({ version });
|
|
35
38
|
const extractedDir = cacheDir ?? node_path.default.join(require_paths_socket.getSocketDlxDir(), "sbt", version);
|
|
36
39
|
const archive = await require_external_tools_from_download.downloadAndExtractTool({
|
|
@@ -17,7 +17,7 @@ const require_smol_vfs = require('../../smol/vfs.js');
|
|
|
17
17
|
*/
|
|
18
18
|
const SBT_VFS_KEY = "sbt-launch.jar";
|
|
19
19
|
async function sbtFromVfs() {
|
|
20
|
-
const vfs =
|
|
20
|
+
const vfs = require_smol_vfs.getSmolVfs();
|
|
21
21
|
if (!vfs) return;
|
|
22
22
|
/* c8 ignore start - smol Node binary only. */
|
|
23
23
|
if (!vfs.has("sbt-launch.jar")) return;
|
|
@@ -25,7 +25,7 @@ export interface ResolveSbtOptions {
|
|
|
25
25
|
downloader?: BinaryDownloader | undefined;
|
|
26
26
|
} | undefined;
|
|
27
27
|
}
|
|
28
|
-
export declare function cacheKey(
|
|
29
|
-
export declare function doResolveSbt(
|
|
28
|
+
export declare function cacheKey(options: ResolveSbtOptions | undefined): string;
|
|
29
|
+
export declare function doResolveSbt(options?: ResolveSbtOptions | undefined): Promise<ResolvedSbt | undefined>;
|
|
30
30
|
export declare function resetSbtResolution(): void;
|
|
31
|
-
export declare function resolveSbt(
|
|
31
|
+
export declare function resolveSbt(options?: ResolveSbtOptions | undefined): Promise<ResolvedSbt | undefined>;
|
|
@@ -20,30 +20,38 @@ const require_external_tools_sbt_from_vfs = require('./from-vfs.js');
|
|
|
20
20
|
* Memoized per option-shape.
|
|
21
21
|
*/
|
|
22
22
|
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
23
|
-
function cacheKey(
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
function cacheKey(options) {
|
|
24
|
+
options = {
|
|
25
|
+
__proto__: null,
|
|
26
|
+
...options
|
|
27
|
+
};
|
|
28
|
+
if (!options?.downloadIfMissing) return "local-only";
|
|
29
|
+
const { cacheDir, integrity, version } = options.downloadIfMissing;
|
|
26
30
|
return `dl:${version}:${typeof integrity === "string" ? integrity : integrity ? `${integrity.type}:${integrity.value}` : ""}:${cacheDir ?? ""}`;
|
|
27
31
|
}
|
|
28
|
-
async function doResolveSbt(
|
|
32
|
+
async function doResolveSbt(options) {
|
|
33
|
+
options = {
|
|
34
|
+
__proto__: null,
|
|
35
|
+
...options
|
|
36
|
+
};
|
|
29
37
|
const fromVfs = await require_external_tools_sbt_from_vfs.sbtFromVfs();
|
|
30
38
|
/* c8 ignore start - smol Node binary only. */
|
|
31
39
|
if (fromVfs) return fromVfs;
|
|
32
40
|
/* c8 ignore stop */
|
|
33
41
|
const fromPath = await require_external_tools_sbt_from_path.sbtFromPath();
|
|
34
42
|
if (fromPath) return fromPath;
|
|
35
|
-
if (
|
|
43
|
+
if (options?.downloadIfMissing) return require_external_tools_sbt_from_download.sbtFromDownload(options.downloadIfMissing);
|
|
36
44
|
}
|
|
37
45
|
/* c8 ignore start - test-only escape hatch. */
|
|
38
46
|
function resetSbtResolution() {
|
|
39
47
|
resolutionCache.clear();
|
|
40
48
|
}
|
|
41
49
|
/* c8 ignore stop */
|
|
42
|
-
function resolveSbt(
|
|
43
|
-
const key = cacheKey(
|
|
50
|
+
function resolveSbt(options) {
|
|
51
|
+
const key = cacheKey(options);
|
|
44
52
|
let cached = resolutionCache.get(key);
|
|
45
53
|
if (!cached) {
|
|
46
|
-
cached = doResolveSbt(
|
|
54
|
+
cached = doResolveSbt(options);
|
|
47
55
|
resolutionCache.set(key, cached);
|
|
48
56
|
}
|
|
49
57
|
return cached;
|
|
@@ -21,4 +21,4 @@ export interface SkillSpectorFromDlxOptions {
|
|
|
21
21
|
*/
|
|
22
22
|
readonly cacheDir?: string | undefined;
|
|
23
23
|
}
|
|
24
|
-
export declare function skillspectorFromDlx(
|
|
24
|
+
export declare function skillspectorFromDlx(options: SkillSpectorFromDlxOptions): Promise<ResolvedSkillSpector | undefined>;
|
|
@@ -18,10 +18,17 @@ node_path = require_runtime.__toESM(node_path);
|
|
|
18
18
|
* venv when its `skillspector` entry-point already exists.
|
|
19
19
|
*/
|
|
20
20
|
const UPSTREAM_REPO = "https://github.com/NVIDIA/skillspector.git";
|
|
21
|
-
async function skillspectorFromDlx(
|
|
22
|
-
|
|
21
|
+
async function skillspectorFromDlx(options) {
|
|
22
|
+
options = {
|
|
23
|
+
__proto__: null,
|
|
24
|
+
...options
|
|
25
|
+
};
|
|
26
|
+
const { sha } = {
|
|
27
|
+
__proto__: null,
|
|
28
|
+
...options
|
|
29
|
+
};
|
|
23
30
|
if (!sha) return;
|
|
24
|
-
const cacheDir =
|
|
31
|
+
const cacheDir = options.cacheDir ?? node_path.default.join(require_paths_socket.getSocketDlxDir(), "skillspector", sha);
|
|
25
32
|
const installSpec = `git+${UPSTREAM_REPO}@${sha}`;
|
|
26
33
|
try {
|
|
27
34
|
return {
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
-
const
|
|
4
|
+
const require_paths_normalize = require('../../paths/normalize.js');
|
|
5
5
|
const require_bin_which = require('../../bin/which.js');
|
|
6
|
-
let node_path = require("node:path");
|
|
7
|
-
node_path = require_runtime.__toESM(node_path);
|
|
8
6
|
|
|
9
7
|
//#region src/external-tools/skillspector/from-path.ts
|
|
10
8
|
/**
|
|
@@ -13,11 +11,11 @@ node_path = require_runtime.__toESM(node_path);
|
|
|
13
11
|
* directory (the dev's `pipx install skillspector` path); reports `source:
|
|
14
12
|
* 'path'` otherwise (a one-off binary on PATH).
|
|
15
13
|
*/
|
|
16
|
-
const PIPX_PATH_SEGMENT_RE = /pipx
|
|
14
|
+
const PIPX_PATH_SEGMENT_RE = /pipx\/venvs\//;
|
|
17
15
|
async function skillspectorFromPath() {
|
|
18
16
|
const resolved = await require_bin_which.which("skillspector", { nothrow: true });
|
|
19
17
|
if (typeof resolved !== "string") return;
|
|
20
|
-
const normalized =
|
|
18
|
+
const normalized = require_paths_normalize.normalizePath(resolved);
|
|
21
19
|
if (PIPX_PATH_SEGMENT_RE.test(normalized)) return {
|
|
22
20
|
path: normalized,
|
|
23
21
|
source: "pipx"
|
|
@@ -11,7 +11,7 @@ const require_smol_vfs = require('../../smol/vfs.js');
|
|
|
11
11
|
*/
|
|
12
12
|
const SKILLSPECTOR_VFS_KEY = "skillspector";
|
|
13
13
|
async function skillspectorFromVfs() {
|
|
14
|
-
const vfs =
|
|
14
|
+
const vfs = require_smol_vfs.getSmolVfs();
|
|
15
15
|
if (!vfs) return;
|
|
16
16
|
/* c8 ignore start - smol Node binary only. */
|
|
17
17
|
if (!vfs.has("skillspector")) return;
|
|
@@ -26,8 +26,8 @@ export interface ResolveSkillSpectorOptions {
|
|
|
26
26
|
*/
|
|
27
27
|
readonly localOnly?: boolean | undefined;
|
|
28
28
|
}
|
|
29
|
-
export declare function cacheKey(
|
|
30
|
-
export declare function doResolveSkillSpector(
|
|
29
|
+
export declare function cacheKey(options: ResolveSkillSpectorOptions): string;
|
|
30
|
+
export declare function doResolveSkillSpector(options: ResolveSkillSpectorOptions): Promise<ResolvedSkillSpector | undefined>;
|
|
31
31
|
/**
|
|
32
32
|
* Memoizing wrapper around {@link doResolveSkillSpector}.
|
|
33
33
|
*/
|
|
@@ -19,20 +19,28 @@ const require_external_tools_skillspector_from_vfs = require('./from-vfs.js');
|
|
|
19
19
|
* sha+cacheDir+localOnly tuple.
|
|
20
20
|
*/
|
|
21
21
|
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
22
|
-
function cacheKey(
|
|
23
|
-
|
|
22
|
+
function cacheKey(options) {
|
|
23
|
+
options = {
|
|
24
|
+
__proto__: null,
|
|
25
|
+
...options
|
|
26
|
+
};
|
|
27
|
+
return `${options.sha ?? ""}|${options.cacheDir ?? ""}|${options.localOnly ? "local" : "full"}`;
|
|
24
28
|
}
|
|
25
|
-
async function doResolveSkillSpector(
|
|
29
|
+
async function doResolveSkillSpector(options) {
|
|
30
|
+
options = {
|
|
31
|
+
__proto__: null,
|
|
32
|
+
...options
|
|
33
|
+
};
|
|
26
34
|
const fromVfs = await require_external_tools_skillspector_from_vfs.skillspectorFromVfs();
|
|
27
35
|
/* c8 ignore start - smol Node binary only. */
|
|
28
36
|
if (fromVfs) return fromVfs;
|
|
29
37
|
/* c8 ignore stop */
|
|
30
38
|
const fromPath = await require_external_tools_skillspector_from_path.skillspectorFromPath();
|
|
31
39
|
if (fromPath) return fromPath;
|
|
32
|
-
if (
|
|
40
|
+
if (options.localOnly || !options.sha) return;
|
|
33
41
|
return require_external_tools_skillspector_from_dlx.skillspectorFromDlx({
|
|
34
|
-
sha:
|
|
35
|
-
cacheDir:
|
|
42
|
+
sha: options.sha,
|
|
43
|
+
cacheDir: options.cacheDir
|
|
36
44
|
});
|
|
37
45
|
}
|
|
38
46
|
/**
|
|
@@ -11,4 +11,4 @@ export interface SynpPackageOptions {
|
|
|
11
11
|
/**
|
|
12
12
|
* Build the npm package spec string for the requested synp version.
|
|
13
13
|
*/
|
|
14
|
-
export declare function getSynpPackageSpec(
|
|
14
|
+
export declare function getSynpPackageSpec(options: SynpPackageOptions): string;
|
|
@@ -6,8 +6,12 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
6
6
|
/**
|
|
7
7
|
* Build the npm package spec string for the requested synp version.
|
|
8
8
|
*/
|
|
9
|
-
function getSynpPackageSpec(
|
|
10
|
-
|
|
9
|
+
function getSynpPackageSpec(options) {
|
|
10
|
+
options = {
|
|
11
|
+
__proto__: null,
|
|
12
|
+
...options
|
|
13
|
+
};
|
|
14
|
+
return `synp@${options.version}`;
|
|
11
15
|
}
|
|
12
16
|
|
|
13
17
|
//#endregion
|
|
@@ -15,4 +15,4 @@ export interface SynpFromDownloadOptions {
|
|
|
15
15
|
*/
|
|
16
16
|
integrity?: string | undefined;
|
|
17
17
|
}
|
|
18
|
-
export declare function synpFromDownload(
|
|
18
|
+
export declare function synpFromDownload(options: SynpFromDownloadOptions): Promise<ResolvedSynp>;
|
|
@@ -10,10 +10,13 @@ const require_external_tools_synp_asset_names = require('./asset-names.js');
|
|
|
10
10
|
* `dlx/package` and returns a `ResolvedSynp` pointing at the resolved bin
|
|
11
11
|
* shim.
|
|
12
12
|
*/
|
|
13
|
-
async function synpFromDownload(
|
|
14
|
-
const { integrity, version } =
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
async function synpFromDownload(options) {
|
|
14
|
+
const { integrity, version } = {
|
|
15
|
+
__proto__: null,
|
|
16
|
+
...options
|
|
17
|
+
};
|
|
18
|
+
const { binaryPath } = await require_dlx_package.downloadNpmPackage({
|
|
19
|
+
spec: require_external_tools_synp_asset_names.getSynpPackageSpec({ version }),
|
|
17
20
|
binaryName: "synp",
|
|
18
21
|
...integrity ? { hash: integrity } : {}
|
|
19
22
|
});
|
|
@@ -10,7 +10,7 @@ const require_smol_vfs = require('../../smol/vfs.js');
|
|
|
10
10
|
*/
|
|
11
11
|
const SYNP_VFS_KEY = "synp";
|
|
12
12
|
async function synpFromVfs() {
|
|
13
|
-
const vfs =
|
|
13
|
+
const vfs = require_smol_vfs.getSmolVfs();
|
|
14
14
|
if (!vfs) return;
|
|
15
15
|
/* c8 ignore start - smol Node binary only. */
|
|
16
16
|
if (!vfs.has("synp")) return;
|
|
@@ -15,7 +15,7 @@ export interface ResolveSynpOptions {
|
|
|
15
15
|
integrity?: string | undefined;
|
|
16
16
|
} | undefined;
|
|
17
17
|
}
|
|
18
|
-
export declare function cacheKey(
|
|
19
|
-
export declare function doResolveSynp(
|
|
18
|
+
export declare function cacheKey(options: ResolveSynpOptions | undefined): string;
|
|
19
|
+
export declare function doResolveSynp(options?: ResolveSynpOptions | undefined): Promise<ResolvedSynp | undefined>;
|
|
20
20
|
export declare function resetSynpResolution(): void;
|
|
21
|
-
export declare function resolveSynp(
|
|
21
|
+
export declare function resolveSynp(options?: ResolveSynpOptions | undefined): Promise<ResolvedSynp | undefined>;
|
|
@@ -18,30 +18,38 @@ const require_external_tools_synp_from_vfs = require('./from-vfs.js');
|
|
|
18
18
|
* per option-shape.
|
|
19
19
|
*/
|
|
20
20
|
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
21
|
-
function cacheKey(
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
function cacheKey(options) {
|
|
22
|
+
options = {
|
|
23
|
+
__proto__: null,
|
|
24
|
+
...options
|
|
25
|
+
};
|
|
26
|
+
if (!options?.downloadIfMissing) return "local-only";
|
|
27
|
+
const { integrity, version } = options.downloadIfMissing;
|
|
24
28
|
return `dl:${version}:${integrity ?? ""}`;
|
|
25
29
|
}
|
|
26
|
-
async function doResolveSynp(
|
|
30
|
+
async function doResolveSynp(options) {
|
|
31
|
+
options = {
|
|
32
|
+
__proto__: null,
|
|
33
|
+
...options
|
|
34
|
+
};
|
|
27
35
|
const fromVfs = await require_external_tools_synp_from_vfs.synpFromVfs();
|
|
28
36
|
/* c8 ignore start - smol Node binary only. */
|
|
29
37
|
if (fromVfs) return fromVfs;
|
|
30
38
|
/* c8 ignore stop */
|
|
31
39
|
const fromPath = await require_external_tools_synp_from_path.synpFromPath();
|
|
32
40
|
if (fromPath) return fromPath;
|
|
33
|
-
if (
|
|
41
|
+
if (options?.downloadIfMissing) return require_external_tools_synp_from_download.synpFromDownload(options.downloadIfMissing);
|
|
34
42
|
}
|
|
35
43
|
/* c8 ignore start - test-only escape hatch. */
|
|
36
44
|
function resetSynpResolution() {
|
|
37
45
|
resolutionCache.clear();
|
|
38
46
|
}
|
|
39
47
|
/* c8 ignore stop */
|
|
40
|
-
function resolveSynp(
|
|
41
|
-
const key = cacheKey(
|
|
48
|
+
function resolveSynp(options) {
|
|
49
|
+
const key = cacheKey(options);
|
|
42
50
|
let cached = resolutionCache.get(key);
|
|
43
51
|
if (!cached) {
|
|
44
|
-
cached = doResolveSynp(
|
|
52
|
+
cached = doResolveSynp(options);
|
|
45
53
|
resolutionCache.set(key, cached);
|
|
46
54
|
}
|
|
47
55
|
return cached;
|
|
@@ -31,4 +31,4 @@ export interface TrivyDownloadOptions {
|
|
|
31
31
|
*
|
|
32
32
|
* Reference: https://github.com/aquasecurity/trivy/releases.
|
|
33
33
|
*/
|
|
34
|
-
export declare function getTrivyDownloadUrl(
|
|
34
|
+
export declare function getTrivyDownloadUrl(options: TrivyDownloadOptions): string | undefined;
|
|
@@ -44,8 +44,11 @@ function getTrivyAssetEntry(platformArch) {
|
|
|
44
44
|
*
|
|
45
45
|
* Reference: https://github.com/aquasecurity/trivy/releases.
|
|
46
46
|
*/
|
|
47
|
-
function getTrivyDownloadUrl(
|
|
48
|
-
const { platformArch, version } =
|
|
47
|
+
function getTrivyDownloadUrl(options) {
|
|
48
|
+
const { platformArch, version } = {
|
|
49
|
+
__proto__: null,
|
|
50
|
+
...options
|
|
51
|
+
};
|
|
49
52
|
const entry = TRIVY_ASSET_MAP[platformArch];
|
|
50
53
|
if (!entry) return;
|
|
51
54
|
return `https://github.com/aquasecurity/trivy/releases/download/v${version}/trivy_${version}_${entry.suffix}`;
|
|
@@ -14,4 +14,4 @@ export interface TrivyFromDownloadOptions {
|
|
|
14
14
|
cacheDir?: string | undefined;
|
|
15
15
|
downloader?: BinaryDownloader | undefined;
|
|
16
16
|
}
|
|
17
|
-
export declare function trivyFromDownload(
|
|
17
|
+
export declare function trivyFromDownload(options: TrivyFromDownloadOptions): Promise<ResolvedTrivy | undefined>;
|
|
@@ -5,10 +5,10 @@ const require_runtime = require('../../_virtual/_rolldown/runtime.js');
|
|
|
5
5
|
const require_paths_socket = require('../../paths/socket.js');
|
|
6
6
|
const require_external_tools_from_download = require('../from-download.js');
|
|
7
7
|
const require_external_tools_trivy_asset_names = require('./asset-names.js');
|
|
8
|
-
let node_path = require("node:path");
|
|
9
|
-
node_path = require_runtime.__toESM(node_path);
|
|
10
8
|
let node_process = require("node:process");
|
|
11
9
|
node_process = require_runtime.__toESM(node_process);
|
|
10
|
+
let node_path = require("node:path");
|
|
11
|
+
node_path = require_runtime.__toESM(node_path);
|
|
12
12
|
|
|
13
13
|
//#region src/external-tools/trivy/from-download.ts
|
|
14
14
|
/**
|
|
@@ -17,8 +17,11 @@ node_process = require_runtime.__toESM(node_process);
|
|
|
17
17
|
* Windows ships zip; `downloadAndExtractTool` auto-detects the format from
|
|
18
18
|
* the archive name.
|
|
19
19
|
*/
|
|
20
|
-
async function trivyFromDownload(
|
|
21
|
-
const { cacheDir, downloader, integrity, platformArch, version } =
|
|
20
|
+
async function trivyFromDownload(options) {
|
|
21
|
+
const { cacheDir, downloader, integrity, platformArch, version } = {
|
|
22
|
+
__proto__: null,
|
|
23
|
+
...options
|
|
24
|
+
};
|
|
22
25
|
const url = require_external_tools_trivy_asset_names.getTrivyDownloadUrl({
|
|
23
26
|
version,
|
|
24
27
|
platformArch
|
|
@@ -10,7 +10,7 @@ const require_smol_vfs = require('../../smol/vfs.js');
|
|
|
10
10
|
*/
|
|
11
11
|
const TRIVY_VFS_KEY = "trivy";
|
|
12
12
|
async function trivyFromVfs() {
|
|
13
|
-
const vfs =
|
|
13
|
+
const vfs = require_smol_vfs.getSmolVfs();
|
|
14
14
|
if (!vfs) return;
|
|
15
15
|
/* c8 ignore start - smol Node binary only. */
|
|
16
16
|
if (!vfs.has("trivy")) return;
|
|
@@ -20,7 +20,7 @@ export interface ResolveTrivyOptions {
|
|
|
20
20
|
downloader?: BinaryDownloader | undefined;
|
|
21
21
|
} | undefined;
|
|
22
22
|
}
|
|
23
|
-
export declare function cacheKey(
|
|
24
|
-
export declare function doResolveTrivy(
|
|
23
|
+
export declare function cacheKey(options: ResolveTrivyOptions | undefined): string;
|
|
24
|
+
export declare function doResolveTrivy(options?: ResolveTrivyOptions | undefined): Promise<ResolvedTrivy | undefined>;
|
|
25
25
|
export declare function resetTrivyResolution(): void;
|
|
26
|
-
export declare function resolveTrivy(
|
|
26
|
+
export declare function resolveTrivy(options?: ResolveTrivyOptions | undefined): Promise<ResolvedTrivy | undefined>;
|
|
@@ -18,30 +18,38 @@ const require_external_tools_trivy_from_vfs = require('./from-vfs.js');
|
|
|
18
18
|
* Memoized per option-shape.
|
|
19
19
|
*/
|
|
20
20
|
const resolutionCache = new require_primordials_map_set.MapCtor();
|
|
21
|
-
function cacheKey(
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
function cacheKey(options) {
|
|
22
|
+
options = {
|
|
23
|
+
__proto__: null,
|
|
24
|
+
...options
|
|
25
|
+
};
|
|
26
|
+
if (!options?.downloadIfMissing) return "local-only";
|
|
27
|
+
const { cacheDir, integrity, platformArch, version } = options.downloadIfMissing;
|
|
24
28
|
return `dl:${version}:${platformArch}:${typeof integrity === "string" ? integrity : integrity ? `${integrity.type}:${integrity.value}` : ""}:${cacheDir ?? ""}`;
|
|
25
29
|
}
|
|
26
|
-
async function doResolveTrivy(
|
|
30
|
+
async function doResolveTrivy(options) {
|
|
31
|
+
options = {
|
|
32
|
+
__proto__: null,
|
|
33
|
+
...options
|
|
34
|
+
};
|
|
27
35
|
const fromVfs = await require_external_tools_trivy_from_vfs.trivyFromVfs();
|
|
28
36
|
/* c8 ignore start - smol Node binary only. */
|
|
29
37
|
if (fromVfs) return fromVfs;
|
|
30
38
|
/* c8 ignore stop */
|
|
31
39
|
const fromPath = await require_external_tools_trivy_from_path.trivyFromPath();
|
|
32
40
|
if (fromPath) return fromPath;
|
|
33
|
-
if (
|
|
41
|
+
if (options?.downloadIfMissing) return require_external_tools_trivy_from_download.trivyFromDownload(options.downloadIfMissing);
|
|
34
42
|
}
|
|
35
43
|
/* c8 ignore start - test-only escape hatch. */
|
|
36
44
|
function resetTrivyResolution() {
|
|
37
45
|
resolutionCache.clear();
|
|
38
46
|
}
|
|
39
47
|
/* c8 ignore stop */
|
|
40
|
-
function resolveTrivy(
|
|
41
|
-
const key = cacheKey(
|
|
48
|
+
function resolveTrivy(options) {
|
|
49
|
+
const key = cacheKey(options);
|
|
42
50
|
let cached = resolutionCache.get(key);
|
|
43
51
|
if (!cached) {
|
|
44
|
-
cached = doResolveTrivy(
|
|
52
|
+
cached = doResolveTrivy(options);
|
|
45
53
|
resolutionCache.set(key, cached);
|
|
46
54
|
}
|
|
47
55
|
return cached;
|
|
@@ -31,4 +31,4 @@ export interface TrufflehogDownloadOptions {
|
|
|
31
31
|
*
|
|
32
32
|
* Reference: https://github.com/trufflesecurity/trufflehog/releases.
|
|
33
33
|
*/
|
|
34
|
-
export declare function getTrufflehogDownloadUrl(
|
|
34
|
+
export declare function getTrufflehogDownloadUrl(options: TrufflehogDownloadOptions): string | undefined;
|
|
@@ -47,8 +47,11 @@ function getTrufflehogAssetEntry(platformArch) {
|
|
|
47
47
|
*
|
|
48
48
|
* Reference: https://github.com/trufflesecurity/trufflehog/releases.
|
|
49
49
|
*/
|
|
50
|
-
function getTrufflehogDownloadUrl(
|
|
51
|
-
const { platformArch, version } =
|
|
50
|
+
function getTrufflehogDownloadUrl(options) {
|
|
51
|
+
const { platformArch, version } = {
|
|
52
|
+
__proto__: null,
|
|
53
|
+
...options
|
|
54
|
+
};
|
|
52
55
|
const entry = TRUFFLEHOG_ASSET_MAP[platformArch];
|
|
53
56
|
if (!entry) return;
|
|
54
57
|
return `https://github.com/trufflesecurity/trufflehog/releases/download/v${version}/trufflehog_${version}_${entry.suffix}`;
|
|
@@ -34,4 +34,4 @@ export interface TrufflehogFromDownloadOptions {
|
|
|
34
34
|
*/
|
|
35
35
|
downloader?: BinaryDownloader | undefined;
|
|
36
36
|
}
|
|
37
|
-
export declare function trufflehogFromDownload(
|
|
37
|
+
export declare function trufflehogFromDownload(options: TrufflehogFromDownloadOptions): Promise<ResolvedTrufflehog | undefined>;
|