@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
package/dist/dlx/manifest.d.ts
CHANGED
|
@@ -27,12 +27,12 @@
|
|
|
27
27
|
*/
|
|
28
28
|
export interface PackageDetails {
|
|
29
29
|
installed_version: string;
|
|
30
|
-
size?: number;
|
|
30
|
+
size?: number | undefined;
|
|
31
31
|
update_check?: {
|
|
32
32
|
last_check: number;
|
|
33
33
|
last_notification: number;
|
|
34
34
|
latest_known: string;
|
|
35
|
-
};
|
|
35
|
+
} | undefined;
|
|
36
36
|
}
|
|
37
37
|
/**
|
|
38
38
|
* Details for binary download entries.
|
|
@@ -47,8 +47,8 @@ export interface BinaryDetails {
|
|
|
47
47
|
size: number;
|
|
48
48
|
source: {
|
|
49
49
|
type: 'download' | 'extract';
|
|
50
|
-
url?: string;
|
|
51
|
-
path?: string;
|
|
50
|
+
url?: string | undefined;
|
|
51
|
+
path?: string | undefined;
|
|
52
52
|
};
|
|
53
53
|
/**
|
|
54
54
|
* Update check metadata (same structure as packages).
|
|
@@ -57,7 +57,7 @@ export interface BinaryDetails {
|
|
|
57
57
|
last_check: number;
|
|
58
58
|
last_notification: number;
|
|
59
59
|
latest_known: string;
|
|
60
|
-
};
|
|
60
|
+
} | undefined;
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* Unified manifest entry for all cached items (packages and binaries). Shared
|
|
@@ -81,7 +81,7 @@ export interface DlxManifestOptions {
|
|
|
81
81
|
/**
|
|
82
82
|
* Custom manifest file path (defaults to ~/.socket/_dlx/.dlx-manifest.json).
|
|
83
83
|
*/
|
|
84
|
-
manifestPath?: string;
|
|
84
|
+
manifestPath?: string | undefined;
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
87
|
* Type guard for binary entries.
|
package/dist/dlx/manifest.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_primordials_object = require('../primordials/object.js');
|
|
4
5
|
const require_node_fs = require('../node/fs.js');
|
|
5
6
|
const require_node_path = require('../node/path.js');
|
|
6
7
|
const require_primordials_date = require('../primordials/date.js');
|
|
7
|
-
const require_primordials_object = require('../primordials/object.js');
|
|
8
8
|
const require_primordials_json = require('../primordials/json.js');
|
|
9
9
|
const require_errors_message = require('../errors/message.js');
|
|
10
10
|
const require_logger_default = require('../logger/default.js');
|
|
@@ -38,8 +38,8 @@ const require_fs_read_file = require('../fs/read-file.js');
|
|
|
38
38
|
* - Binary metadata tracking
|
|
39
39
|
* - Rate limiting registry requests
|
|
40
40
|
*/
|
|
41
|
-
const fs =
|
|
42
|
-
const path =
|
|
41
|
+
const fs = require_node_fs.getNodeFs();
|
|
42
|
+
const path = require_node_path.getNodePath();
|
|
43
43
|
const logger = require_logger_default.getDefaultLogger();
|
|
44
44
|
/**
|
|
45
45
|
* Manifest file name.
|
|
@@ -92,7 +92,7 @@ var DlxManifest = class {
|
|
|
92
92
|
readManifest() {
|
|
93
93
|
try {
|
|
94
94
|
if (!fs.existsSync(this.manifestPath)) return { __proto__: null };
|
|
95
|
-
const rawContent =
|
|
95
|
+
const rawContent = require_fs_read_file.readFileUtf8Sync(this.manifestPath);
|
|
96
96
|
const content = (typeof rawContent === "string" ? rawContent : rawContent.toString("utf8")).trim();
|
|
97
97
|
if (!content) return { __proto__: null };
|
|
98
98
|
return require_primordials_json.JSONParse(content);
|
|
@@ -172,7 +172,7 @@ var DlxManifest = class {
|
|
|
172
172
|
getAllPackages() {
|
|
173
173
|
try {
|
|
174
174
|
if (!fs.existsSync(this.manifestPath)) return [];
|
|
175
|
-
const rawContent =
|
|
175
|
+
const rawContent = require_fs_read_file.readFileUtf8Sync(this.manifestPath);
|
|
176
176
|
const content = (typeof rawContent === "string" ? rawContent : rawContent.toString("utf8")).trim();
|
|
177
177
|
if (!content) return [];
|
|
178
178
|
return require_primordials_object.ObjectKeys(require_primordials_json.JSONParse(content));
|
package/dist/dlx/package.d.ts
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
* - dlx/binary.ts: Downloads standalone binaries from URLs
|
|
21
21
|
* - dlx/package.ts: Installs npm packages from registries Implementation:
|
|
22
22
|
* - Uses Arborist for package installation (like npx, no npm CLI required)
|
|
23
|
-
* - Split into
|
|
23
|
+
* - Split into downloadNpmPackage() and executePackage() for flexibility
|
|
24
24
|
* - dlxPackage() combines both for convenience Module shape: this file holds
|
|
25
|
-
* the three async orchestrators (`dlxPackage`, `
|
|
25
|
+
* the three async orchestrators (`dlxPackage`, `downloadNpmPackage`,
|
|
26
26
|
* `ensurePackageInstalled`) and the synchronous `executePackage`. The
|
|
27
27
|
* supporting surface lives in sibling leaves and is re-exported here so
|
|
28
28
|
* existing `dlx/package` importers keep working unchanged:
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
* - lazy `node:fs` / `node:path` + LRU cache — `./_internal`
|
|
34
34
|
*/
|
|
35
35
|
import { spawn } from '../process/spawn/child';
|
|
36
|
-
import type { DlxPackageOptions, DlxPackageResult,
|
|
36
|
+
import type { DlxPackageOptions, DlxPackageResult, DownloadNpmPackageResult, EnsurePackageInstallOptions } from './types';
|
|
37
37
|
import type { SpawnExtra, SpawnOptions } from '../process/spawn/types';
|
|
38
38
|
/**
|
|
39
39
|
* Execute a package via DLX - install if needed and run its binary.
|
|
@@ -47,7 +47,7 @@ import type { SpawnExtra, SpawnOptions } from '../process/spawn/types';
|
|
|
47
47
|
* ;```typescript
|
|
48
48
|
* // Download and execute cdxgen
|
|
49
49
|
* const result = await dlxPackage(['--version'], {
|
|
50
|
-
*
|
|
50
|
+
* spec: '@cyclonedx/cdxgen@10.0.0',
|
|
51
51
|
* })
|
|
52
52
|
* await result.spawnPromise
|
|
53
53
|
* ```
|
|
@@ -61,15 +61,15 @@ export declare function dlxPackage(args: readonly string[] | string[], options:
|
|
|
61
61
|
* @example
|
|
62
62
|
* ;```typescript
|
|
63
63
|
* // Install @socketsecurity/cli without running it
|
|
64
|
-
* const result = await
|
|
65
|
-
*
|
|
64
|
+
* const result = await downloadNpmPackage({
|
|
65
|
+
* spec: '@socketsecurity/cli@1.2.0',
|
|
66
66
|
* force: true,
|
|
67
67
|
* })
|
|
68
68
|
* console.log('Installed to:', result.packageDir)
|
|
69
69
|
* console.log('Binary at:', result.binaryPath)
|
|
70
70
|
* ```
|
|
71
71
|
*/
|
|
72
|
-
export declare function
|
|
72
|
+
export declare function downloadNpmPackage(options: DlxPackageOptions): Promise<DownloadNpmPackageResult>;
|
|
73
73
|
/**
|
|
74
74
|
* Install package to ~/.socket/_dlx/<hash>/ if not already installed. Uses
|
|
75
75
|
* pacote for installation (no npm CLI required). Protected by process lock to
|
|
@@ -91,7 +91,7 @@ export declare function ensurePackageInstalled(packageName: string, packageSpec:
|
|
|
91
91
|
}>;
|
|
92
92
|
/**
|
|
93
93
|
* Execute a package's binary with cross-platform shell handling. The package
|
|
94
|
-
* must already be installed (use
|
|
94
|
+
* must already be installed (use downloadNpmPackage first).
|
|
95
95
|
*
|
|
96
96
|
* On Windows, script files (.bat, .cmd, .ps1) require shell: true. Matches
|
|
97
97
|
* npm/npx execution behavior.
|
|
@@ -99,7 +99,7 @@ export declare function ensurePackageInstalled(packageName: string, packageSpec:
|
|
|
99
99
|
* @example
|
|
100
100
|
* ;```typescript
|
|
101
101
|
* // Execute an already-installed package
|
|
102
|
-
* const downloaded = await
|
|
102
|
+
* const downloaded = await downloadNpmPackage({ spec: 'cowsay@1.5.0' })
|
|
103
103
|
* const result = await executePackage(
|
|
104
104
|
* downloaded.binaryPath,
|
|
105
105
|
* ['Hello World'],
|
|
@@ -112,4 +112,4 @@ export { binaryPathCacheSet } from './_internal';
|
|
|
112
112
|
export { findBinaryPath, makePackageBinsExecutable, resolveBinaryPath, } from './binary-resolution';
|
|
113
113
|
export { checkFirewallPurls, npmPurl } from './firewall';
|
|
114
114
|
export { parsePackageSpec } from './spec';
|
|
115
|
-
export type { DlxPackageOptions, DlxPackageResult,
|
|
115
|
+
export type { DlxPackageOptions, DlxPackageResult, DownloadNpmPackageResult, EnsurePackageInstallOptions, } from './types';
|
package/dist/dlx/package.js
CHANGED
|
@@ -44,9 +44,9 @@ src_external__npmcli_arborist = require_runtime.__toESM(src_external__npmcli_arb
|
|
|
44
44
|
* - dlx/binary.ts: Downloads standalone binaries from URLs
|
|
45
45
|
* - dlx/package.ts: Installs npm packages from registries Implementation:
|
|
46
46
|
* - Uses Arborist for package installation (like npx, no npm CLI required)
|
|
47
|
-
* - Split into
|
|
47
|
+
* - Split into downloadNpmPackage() and executePackage() for flexibility
|
|
48
48
|
* - dlxPackage() combines both for convenience Module shape: this file holds
|
|
49
|
-
* the three async orchestrators (`dlxPackage`, `
|
|
49
|
+
* the three async orchestrators (`dlxPackage`, `downloadNpmPackage`,
|
|
50
50
|
* `ensurePackageInstalled`) and the synchronous `executePackage`. The
|
|
51
51
|
* supporting surface lives in sibling leaves and is re-exported here so
|
|
52
52
|
* existing `dlx/package` importers keep working unchanged:
|
|
@@ -73,13 +73,17 @@ const rangeOperatorsRegExp = /[~^><=xX* ]|\|\|/;
|
|
|
73
73
|
* ;```typescript
|
|
74
74
|
* // Download and execute cdxgen
|
|
75
75
|
* const result = await dlxPackage(['--version'], {
|
|
76
|
-
*
|
|
76
|
+
* spec: '@cyclonedx/cdxgen@10.0.0',
|
|
77
77
|
* })
|
|
78
78
|
* await result.spawnPromise
|
|
79
79
|
* ```
|
|
80
80
|
*/
|
|
81
81
|
async function dlxPackage(args, options, spawnExtra) {
|
|
82
|
-
|
|
82
|
+
options = {
|
|
83
|
+
__proto__: null,
|
|
84
|
+
...options
|
|
85
|
+
};
|
|
86
|
+
const downloadResult = await downloadNpmPackage(options);
|
|
83
87
|
const spawnPromise = executePackage(downloadResult.binaryPath, args, options.spawnOptions, spawnExtra);
|
|
84
88
|
return {
|
|
85
89
|
...downloadResult,
|
|
@@ -94,16 +98,16 @@ async function dlxPackage(args, options, spawnExtra) {
|
|
|
94
98
|
* @example
|
|
95
99
|
* ;```typescript
|
|
96
100
|
* // Install @socketsecurity/cli without running it
|
|
97
|
-
* const result = await
|
|
98
|
-
*
|
|
101
|
+
* const result = await downloadNpmPackage({
|
|
102
|
+
* spec: '@socketsecurity/cli@1.2.0',
|
|
99
103
|
* force: true,
|
|
100
104
|
* })
|
|
101
105
|
* console.log('Installed to:', result.packageDir)
|
|
102
106
|
* console.log('Binary at:', result.binaryPath)
|
|
103
107
|
* ```
|
|
104
108
|
*/
|
|
105
|
-
async function
|
|
106
|
-
const { binaryName, force: userForce, hash, installRoot, lockfile,
|
|
109
|
+
async function downloadNpmPackage(options) {
|
|
110
|
+
const { binaryName, force: userForce, hash, installRoot, lockfile, spec: packageSpec, yes } = {
|
|
107
111
|
__proto__: null,
|
|
108
112
|
...options
|
|
109
113
|
};
|
|
@@ -139,10 +143,10 @@ async function downloadPackage(options) {
|
|
|
139
143
|
* ```
|
|
140
144
|
*/
|
|
141
145
|
async function ensurePackageInstalled(packageName, packageSpec, force, install) {
|
|
142
|
-
const fs =
|
|
143
|
-
const path =
|
|
144
|
-
const packageDir =
|
|
145
|
-
const installedDir =
|
|
146
|
+
const fs = require_node_fs.getNodeFs();
|
|
147
|
+
const path = require_node_path.getNodePath();
|
|
148
|
+
const packageDir = require_paths_normalize.normalizePath(install?.installRoot ?? path.join(require_paths_socket.getSocketDlxDir(), require_dlx_cache.generateCacheKey(packageSpec)));
|
|
149
|
+
const installedDir = require_paths_normalize.normalizePath(path.join(packageDir, "node_modules", packageName));
|
|
146
150
|
try {
|
|
147
151
|
await require_fs_safe.safeMkdir(packageDir);
|
|
148
152
|
} catch (e) {
|
|
@@ -200,7 +204,7 @@ async function ensurePackageInstalled(packageName, packageSpec, force, install)
|
|
|
200
204
|
const code = e?.code;
|
|
201
205
|
if (code === "E404" || code === "ETARGET") throw new require_primordials_error.ErrorCtor(`Package not found: ${packageSpec}\nVerify the package exists on npm registry and check the version.
|
|
202
206
|
Visit https://www.npmjs.com/package/${packageName} to see available versions.`, { cause: e });
|
|
203
|
-
if (code === "
|
|
207
|
+
if (code === "EAI_AGAIN" || code === "ENOTFOUND" || code === "ETIMEDOUT") throw new require_primordials_error.ErrorCtor(`Network error installing ${packageSpec}\nCheck your internet connection and try again.`, { cause: e });
|
|
204
208
|
throw new require_primordials_error.ErrorCtor(`Failed to install package: ${packageSpec}\nDestination: ${installedDir}\nCheck npm registry connectivity or package name.`, { cause: e });
|
|
205
209
|
}
|
|
206
210
|
return {
|
|
@@ -214,7 +218,7 @@ Visit https://www.npmjs.com/package/${packageName} to see available versions.`,
|
|
|
214
218
|
}
|
|
215
219
|
/**
|
|
216
220
|
* Execute a package's binary with cross-platform shell handling. The package
|
|
217
|
-
* must already be installed (use
|
|
221
|
+
* must already be installed (use downloadNpmPackage first).
|
|
218
222
|
*
|
|
219
223
|
* On Windows, script files (.bat, .cmd, .ps1) require shell: true. Matches
|
|
220
224
|
* npm/npx execution behavior.
|
|
@@ -222,7 +226,7 @@ Visit https://www.npmjs.com/package/${packageName} to see available versions.`,
|
|
|
222
226
|
* @example
|
|
223
227
|
* ;```typescript
|
|
224
228
|
* // Execute an already-installed package
|
|
225
|
-
* const downloaded = await
|
|
229
|
+
* const downloaded = await downloadNpmPackage({ spec: 'cowsay@1.5.0' })
|
|
226
230
|
* const result = await executePackage(
|
|
227
231
|
* downloaded.binaryPath,
|
|
228
232
|
* ['Hello World'],
|
|
@@ -241,7 +245,7 @@ function executePackage(binaryPath, args, spawnOptions, spawnExtra) {
|
|
|
241
245
|
exports.binaryPathCacheSet = require_dlx__internal.binaryPathCacheSet;
|
|
242
246
|
exports.checkFirewallPurls = require_dlx_firewall.checkFirewallPurls;
|
|
243
247
|
exports.dlxPackage = dlxPackage;
|
|
244
|
-
exports.
|
|
248
|
+
exports.downloadNpmPackage = downloadNpmPackage;
|
|
245
249
|
exports.ensurePackageInstalled = ensurePackageInstalled;
|
|
246
250
|
exports.executePackage = executePackage;
|
|
247
251
|
exports.findBinaryPath = require_dlx_binary_resolution.findBinaryPath;
|
package/dist/dlx/packages.js
CHANGED
|
@@ -24,7 +24,7 @@ const require_fs_read_dir = require('../fs/read-dir.js');
|
|
|
24
24
|
* ```
|
|
25
25
|
*/
|
|
26
26
|
function isDlxPackageInstalled(packageName) {
|
|
27
|
-
return
|
|
27
|
+
return require_node_fs.getNodeFs().existsSync(require_dlx_paths.getDlxInstalledPackageDir(packageName));
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
30
|
* List all packages installed in DLX.
|
|
@@ -37,7 +37,7 @@ function isDlxPackageInstalled(packageName) {
|
|
|
37
37
|
*/
|
|
38
38
|
function listDlxPackages() {
|
|
39
39
|
try {
|
|
40
|
-
return
|
|
40
|
+
return require_fs_read_dir.readDirNamesSync(require_paths_socket.getSocketDlxDir(), { sort: true });
|
|
41
41
|
} catch {
|
|
42
42
|
return [];
|
|
43
43
|
}
|
|
@@ -52,9 +52,9 @@ function listDlxPackages() {
|
|
|
52
52
|
* ```
|
|
53
53
|
*/
|
|
54
54
|
async function listDlxPackagesAsync() {
|
|
55
|
-
const fs =
|
|
55
|
+
const fs = require_node_fs.getNodeFs();
|
|
56
56
|
try {
|
|
57
|
-
return require_primordials_array.ArrayPrototypeFilter(await fs.promises.readdir(require_paths_socket.getSocketDlxDir(), { withFileTypes: true }), (e) => e.isDirectory()).map((e) => e.name).
|
|
57
|
+
return require_primordials_array.ArrayPrototypeFilter(await fs.promises.readdir(require_paths_socket.getSocketDlxDir(), { withFileTypes: true }), (e) => e.isDirectory()).map((e) => e.name).toSorted();
|
|
58
58
|
} catch {
|
|
59
59
|
return [];
|
|
60
60
|
}
|
package/dist/dlx/paths.js
CHANGED
|
@@ -19,7 +19,7 @@ const require_paths_socket = require('../paths/socket.js');
|
|
|
19
19
|
* ```
|
|
20
20
|
*/
|
|
21
21
|
function getDlxInstalledPackageDir(packageName) {
|
|
22
|
-
return
|
|
22
|
+
return require_paths_normalize.normalizePath(require_node_path.getNodePath().join(getDlxPackageNodeModulesDir(packageName), packageName));
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Get the DLX installation directory for a specific package.
|
|
@@ -30,7 +30,7 @@ function getDlxInstalledPackageDir(packageName) {
|
|
|
30
30
|
* ```
|
|
31
31
|
*/
|
|
32
32
|
function getDlxPackageDir(packageName) {
|
|
33
|
-
return
|
|
33
|
+
return require_paths_normalize.normalizePath(require_node_path.getNodePath().join(require_paths_socket.getSocketDlxDir(), packageName));
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* Get the package.json path for a DLX installed package.
|
|
@@ -41,7 +41,7 @@ function getDlxPackageDir(packageName) {
|
|
|
41
41
|
* ```
|
|
42
42
|
*/
|
|
43
43
|
function getDlxPackageJsonPath(packageName) {
|
|
44
|
-
return
|
|
44
|
+
return require_paths_normalize.normalizePath(require_node_path.getNodePath().join(getDlxInstalledPackageDir(packageName), "package.json"));
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
47
|
* Get the node_modules directory for a DLX package installation.
|
|
@@ -52,7 +52,7 @@ function getDlxPackageJsonPath(packageName) {
|
|
|
52
52
|
* ```
|
|
53
53
|
*/
|
|
54
54
|
function getDlxPackageNodeModulesDir(packageName) {
|
|
55
|
-
return
|
|
55
|
+
return require_paths_normalize.normalizePath(require_node_path.getNodePath().join(getDlxPackageDir(packageName), "node_modules"));
|
|
56
56
|
}
|
|
57
57
|
/**
|
|
58
58
|
* Check if a file path is within the Socket DLX directory. This is useful for
|
|
@@ -71,9 +71,9 @@ function getDlxPackageNodeModulesDir(packageName) {
|
|
|
71
71
|
*/
|
|
72
72
|
function isInSocketDlx(filePath) {
|
|
73
73
|
if (!filePath) return false;
|
|
74
|
-
const path =
|
|
75
|
-
const dlxDir =
|
|
76
|
-
return require_primordials_string.StringPrototypeStartsWith(
|
|
74
|
+
const path = require_node_path.getNodePath();
|
|
75
|
+
const dlxDir = require_paths_normalize.normalizePath(require_paths_socket.getSocketDlxDir());
|
|
76
|
+
return require_primordials_string.StringPrototypeStartsWith(require_paths_normalize.normalizePath(path.resolve(filePath)), `${dlxDir}/`);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
//#endregion
|
package/dist/dlx/spec.js
CHANGED
|
@@ -32,7 +32,7 @@ function parsePackageSpec(spec) {
|
|
|
32
32
|
try {
|
|
33
33
|
/* c8 ignore next - External npm-package-arg call */
|
|
34
34
|
const parsed = (0, src_external_npm_package_arg.default)(spec);
|
|
35
|
-
const version = parsed.type === "tag" ? parsed.fetchSpec : parsed.type === "
|
|
35
|
+
const version = parsed.type === "tag" ? parsed.fetchSpec : parsed.type === "range" || parsed.type === "version" ? parsed.fetchSpec : void 0;
|
|
36
36
|
return {
|
|
37
37
|
name: parsed.name || spec,
|
|
38
38
|
version
|
package/dist/dlx/types.d.ts
CHANGED
|
@@ -3,20 +3,16 @@
|
|
|
3
3
|
* of `dlx/package.ts` so consumers can import these types without pulling in
|
|
4
4
|
* the implementation.
|
|
5
5
|
*
|
|
6
|
-
* - `
|
|
6
|
+
* - `DownloadNpmPackageResult` — what `downloadNpmPackage` returns
|
|
7
7
|
* - `EnsurePackageInstallOptions` — shared install-pinning options
|
|
8
|
-
* - `DlxPackageOptions` — full options for `dlxPackage` / `
|
|
8
|
+
* - `DlxPackageOptions` — full options for `dlxPackage` / `downloadNpmPackage`
|
|
9
9
|
* - `DlxPackageResult` — what `dlxPackage` returns
|
|
10
10
|
*/
|
|
11
11
|
import type { HashSpec } from '../integrity';
|
|
12
12
|
import type { LockfileSpec } from './lockfile';
|
|
13
13
|
import type { spawn } from '../process/spawn/child';
|
|
14
14
|
import type { SpawnOptions } from '../process/spawn/types';
|
|
15
|
-
export interface
|
|
16
|
-
/**
|
|
17
|
-
* Path to the installed package directory.
|
|
18
|
-
*/
|
|
19
|
-
packageDir: string;
|
|
15
|
+
export interface DownloadNpmPackageResult {
|
|
20
16
|
/**
|
|
21
17
|
* Path to the binary.
|
|
22
18
|
*/
|
|
@@ -25,6 +21,10 @@ export interface DownloadPackageResult {
|
|
|
25
21
|
* Whether the package was newly installed.
|
|
26
22
|
*/
|
|
27
23
|
installed: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Path to the installed package directory.
|
|
26
|
+
*/
|
|
27
|
+
packageDir: string;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
30
|
* Shared install-pinning options used by both {@link DlxPackageOptions} and the
|
|
@@ -80,38 +80,30 @@ export interface EnsurePackageInstallOptions {
|
|
|
80
80
|
lockfile?: LockfileSpec | undefined;
|
|
81
81
|
}
|
|
82
82
|
export interface DlxPackageOptions extends EnsurePackageInstallOptions {
|
|
83
|
-
/**
|
|
84
|
-
* Package to install (e.g., '@cyclonedx/cdxgen@10.0.0'). Aligns with npx
|
|
85
|
-
* --package flag.
|
|
86
|
-
*/
|
|
87
|
-
package: string;
|
|
88
83
|
/**
|
|
89
84
|
* Binary name to execute (optional - auto-detected in most cases).
|
|
90
85
|
*
|
|
91
|
-
* Auto-detection logic: 1. If package has only one binary, uses it
|
|
86
|
+
* Auto-detection logic: 1. If the package has only one binary, uses it
|
|
92
87
|
* automatically 2. Tries user-provided binaryName 3. Tries last segment of
|
|
93
|
-
* package name (e.g., 'cli' from '@socketsecurity/cli') 4. Falls back to
|
|
88
|
+
* the package name (e.g., 'cli' from '@socketsecurity/cli') 4. Falls back to
|
|
94
89
|
* first binary.
|
|
95
90
|
*
|
|
96
|
-
* Only needed when package has multiple binaries and auto-detection
|
|
91
|
+
* Only needed when the package has multiple binaries and auto-detection
|
|
92
|
+
* fails.
|
|
97
93
|
*
|
|
98
94
|
* @example
|
|
99
95
|
* // Auto-detected (single binary)
|
|
100
|
-
* {
|
|
96
|
+
* { spec: '@socketsecurity/cli' } // Finds 'socket' binary automatically
|
|
101
97
|
*
|
|
102
98
|
* // Explicit (multiple binaries)
|
|
103
|
-
* {
|
|
99
|
+
* { spec: 'some-tool', binaryName: 'specific-tool' }
|
|
104
100
|
*/
|
|
105
101
|
binaryName?: string | undefined;
|
|
106
102
|
/**
|
|
107
|
-
* Force reinstallation even if package exists. Aligns with npx --yes/-y
|
|
108
|
-
* behavior.
|
|
103
|
+
* Force reinstallation even if the package exists. Aligns with npx --yes/-y
|
|
104
|
+
* flag behavior.
|
|
109
105
|
*/
|
|
110
106
|
force?: boolean | undefined;
|
|
111
|
-
/**
|
|
112
|
-
* Skip confirmation prompts (auto-approve). Aligns with npx --yes/-y flag.
|
|
113
|
-
*/
|
|
114
|
-
yes?: boolean | undefined;
|
|
115
107
|
/**
|
|
116
108
|
* Suppress output (quiet mode). Aligns with npx --quiet/-q and pnpm
|
|
117
109
|
* --silent/-s flags.
|
|
@@ -121,12 +113,17 @@ export interface DlxPackageOptions extends EnsurePackageInstallOptions {
|
|
|
121
113
|
* Additional spawn options for the execution.
|
|
122
114
|
*/
|
|
123
115
|
spawnOptions?: SpawnOptions | undefined;
|
|
124
|
-
}
|
|
125
|
-
export interface DlxPackageResult {
|
|
126
116
|
/**
|
|
127
|
-
*
|
|
117
|
+
* Package spec to install (e.g., '@cyclonedx/cdxgen@10.0.0'). Aligns with npx
|
|
118
|
+
* --package flag. Named `spec` to match `downloadPipPackage({ spec })`.
|
|
128
119
|
*/
|
|
129
|
-
|
|
120
|
+
spec: string;
|
|
121
|
+
/**
|
|
122
|
+
* Skip confirmation prompts (auto-approve). Aligns with npx --yes/-y flag.
|
|
123
|
+
*/
|
|
124
|
+
yes?: boolean | undefined;
|
|
125
|
+
}
|
|
126
|
+
export interface DlxPackageResult {
|
|
130
127
|
/**
|
|
131
128
|
* Path to the binary that was executed.
|
|
132
129
|
*/
|
|
@@ -135,6 +132,10 @@ export interface DlxPackageResult {
|
|
|
135
132
|
* Whether the package was newly installed.
|
|
136
133
|
*/
|
|
137
134
|
installed: boolean;
|
|
135
|
+
/**
|
|
136
|
+
* Path to the installed package directory.
|
|
137
|
+
*/
|
|
138
|
+
packageDir: string;
|
|
138
139
|
/**
|
|
139
140
|
* The spawn promise for the running process.
|
|
140
141
|
*/
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
* (parseCargoLock)
|
|
28
28
|
* 4. **Cargo's own lockfile encoder** — the source of truth for the format we're
|
|
29
29
|
* parsing:
|
|
30
|
-
* https://github.com/rust-lang/cargo/blob/
|
|
30
|
+
* https://github.com/rust-lang/cargo/blob/0.86.0/src/cargo/core/resolver/encode.rs
|
|
31
31
|
* Lockfile format docs:
|
|
32
32
|
* https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
|
|
33
33
|
* https://doc.rust-lang.org/cargo/reference/resolver.html#lockfile-format
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
* test/fixtures/sdxgen-bug-regressions/ cargo-patch-unused-no-leak/.
|
|
41
41
|
*/
|
|
42
42
|
import type { PackageRef, ParsedLockfile } from '../manifest/types';
|
|
43
|
-
type PackageIndex = Record<string, number | number[]>;
|
|
43
|
+
export type PackageIndex = Record<string, number | number[]>;
|
|
44
44
|
export interface CargoEntryState {
|
|
45
45
|
name: string;
|
|
46
46
|
version: string;
|
|
@@ -81,4 +81,3 @@ export declare function stripTomlString(value: string): string;
|
|
|
81
81
|
*/
|
|
82
82
|
export declare function valueAfterEquals(line: string): string;
|
|
83
83
|
export declare const parseCargoLock: (content: string) => ParsedLockfile;
|
|
84
|
-
export {};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_primordials_object = require('../../primordials/object.js');
|
|
4
5
|
const require_primordials_string = require('../../primordials/string.js');
|
|
5
6
|
const require_primordials_array = require('../../primordials/array.js');
|
|
6
|
-
const require_primordials_object = require('../../primordials/object.js');
|
|
7
7
|
|
|
8
8
|
//#region src/eco/cargo/parse-lockfile.ts
|
|
9
9
|
/**
|
|
@@ -35,7 +35,7 @@ const require_primordials_object = require('../../primordials/object.js');
|
|
|
35
35
|
* (parseCargoLock)
|
|
36
36
|
* 4. **Cargo's own lockfile encoder** — the source of truth for the format we're
|
|
37
37
|
* parsing:
|
|
38
|
-
* https://github.com/rust-lang/cargo/blob/
|
|
38
|
+
* https://github.com/rust-lang/cargo/blob/0.86.0/src/cargo/core/resolver/encode.rs
|
|
39
39
|
* Lockfile format docs:
|
|
40
40
|
* https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
|
|
41
41
|
* https://doc.rust-lang.org/cargo/reference/resolver.html#lockfile-format
|
|
@@ -100,7 +100,7 @@ function jsParseCargoLock(content) {
|
|
|
100
100
|
const trimmed = require_primordials_string.StringPrototypeTrim(line);
|
|
101
101
|
if (trimmed.length === 0 || trimmed[0] === "#") continue;
|
|
102
102
|
if (trimmed[0] === "[") {
|
|
103
|
-
if (currentEntry
|
|
103
|
+
if (currentEntry?.name) {
|
|
104
104
|
require_primordials_array.ArrayPrototypePush(packages, freezeCargoEntry(currentEntry));
|
|
105
105
|
addToCargoIndex(packageIndex, currentEntry.name, packages.length - 1);
|
|
106
106
|
}
|
|
@@ -131,7 +131,7 @@ function jsParseCargoLock(content) {
|
|
|
131
131
|
}
|
|
132
132
|
} else if (require_primordials_string.StringPrototypeIndexOf(trimmed, "version") === 0) lockVersion = stripTomlString(valueAfterEquals(trimmed));
|
|
133
133
|
}
|
|
134
|
-
if (currentEntry
|
|
134
|
+
if (currentEntry?.name) {
|
|
135
135
|
require_primordials_array.ArrayPrototypePush(packages, freezeCargoEntry(currentEntry));
|
|
136
136
|
addToCargoIndex(packageIndex, currentEntry.name, packages.length - 1);
|
|
137
137
|
}
|
|
@@ -180,7 +180,7 @@ function parseInlineArray(value) {
|
|
|
180
180
|
const result = [];
|
|
181
181
|
let i = 0;
|
|
182
182
|
while (i < inner.length) {
|
|
183
|
-
while (i < inner.length && (inner[i] === "
|
|
183
|
+
while (i < inner.length && (inner[i] === " " || inner[i] === " " || inner[i] === ",")) i++;
|
|
184
184
|
if (i >= inner.length) break;
|
|
185
185
|
if (require_primordials_string.StringPrototypeCharCodeAt(inner, i) === 34) {
|
|
186
186
|
const closeIdx = require_primordials_string.StringPrototypeIndexOf(inner, "\"", i + 1);
|
|
@@ -42,8 +42,8 @@ function jsAnalyzeLockfile(lockfile) {
|
|
|
42
42
|
avgDepth: 0
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
|
-
const
|
|
46
|
-
const analyzeLockfile =
|
|
45
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
46
|
+
const analyzeLockfile = smol ? smol.analyzeLockfile : jsAnalyzeLockfile;
|
|
47
47
|
|
|
48
48
|
//#endregion
|
|
49
49
|
exports.analyzeLockfile = analyzeLockfile;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
-
const require_primordials_string = require('../../primordials/string.js');
|
|
5
4
|
const require_primordials_object = require('../../primordials/object.js');
|
|
5
|
+
const require_primordials_string = require('../../primordials/string.js');
|
|
6
6
|
const require_smol_manifest = require('../../smol/manifest.js');
|
|
7
7
|
const require_eco_cargo_lockfile_format = require('../cargo/lockfile-format.js');
|
|
8
8
|
const require_eco_cargo_manifest_format = require('../cargo/manifest-format.js');
|
|
@@ -34,7 +34,7 @@ const COMPOSER_LOCK_FORMAT = require_primordials_object.ObjectFreeze({
|
|
|
34
34
|
format: "composer",
|
|
35
35
|
type: "lockfile"
|
|
36
36
|
});
|
|
37
|
-
const
|
|
37
|
+
const jsSupportedFiles = require_primordials_object.ObjectFreeze({
|
|
38
38
|
__proto__: null,
|
|
39
39
|
manifests: require_primordials_object.ObjectFreeze([
|
|
40
40
|
require_eco_npm_manifest_format.PACKAGE_JSON_FILENAME,
|
|
@@ -64,9 +64,9 @@ function jsDetectFormat(filename) {
|
|
|
64
64
|
default: return;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
-
const
|
|
68
|
-
const detectFormat =
|
|
69
|
-
const supportedFiles =
|
|
67
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
68
|
+
const detectFormat = smol?.detectFormat ?? jsDetectFormat;
|
|
69
|
+
const supportedFiles = smol?.supportedFiles ?? jsSupportedFiles;
|
|
70
70
|
|
|
71
71
|
//#endregion
|
|
72
72
|
exports.detectFormat = detectFormat;
|
|
@@ -35,8 +35,8 @@ function jsFindPackages(lockfile, pattern) {
|
|
|
35
35
|
}
|
|
36
36
|
return result;
|
|
37
37
|
}
|
|
38
|
-
const
|
|
39
|
-
const findPackages =
|
|
38
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
39
|
+
const findPackages = smol ? smol.findPackages : jsFindPackages;
|
|
40
40
|
|
|
41
41
|
//#endregion
|
|
42
42
|
exports.FIND_PACKAGES_PATTERN_MAX_LEN = FIND_PACKAGES_PATTERN_MAX_LEN;
|
|
@@ -23,8 +23,8 @@ function jsGetPackageVersions(lockfile, name) {
|
|
|
23
23
|
}
|
|
24
24
|
return result;
|
|
25
25
|
}
|
|
26
|
-
const
|
|
27
|
-
const getPackageVersions =
|
|
26
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
27
|
+
const getPackageVersions = smol ? smol.getPackageVersions : jsGetPackageVersions;
|
|
28
28
|
|
|
29
29
|
//#endregion
|
|
30
30
|
exports.getPackageVersions = getPackageVersions;
|
|
@@ -17,8 +17,8 @@ function jsGetPackage(lockfile, name) {
|
|
|
17
17
|
if (typeof idx === "number") return lockfile.packages[idx];
|
|
18
18
|
return lockfile.packages[idx[0]];
|
|
19
19
|
}
|
|
20
|
-
const
|
|
21
|
-
const getPackage =
|
|
20
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
21
|
+
const getPackage = smol ? smol.getPackage : jsGetPackage;
|
|
22
22
|
|
|
23
23
|
//#endregion
|
|
24
24
|
exports.getPackage = getPackage;
|
|
@@ -36,8 +36,8 @@ function sniffLockfileFormat(content) {
|
|
|
36
36
|
if (require_primordials_string.StringPrototypeIndexOf(content, "yarn lockfile") !== -1 || require_primordials_string.StringPrototypeIndexOf(content, "__metadata:") !== -1) return "yarn";
|
|
37
37
|
if (require_primordials_string.StringPrototypeIndexOf(content, "lockfileVersion:") !== -1) return "pnpm";
|
|
38
38
|
}
|
|
39
|
-
const
|
|
40
|
-
const parseLockfile =
|
|
39
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
40
|
+
const parseLockfile = smol ? (content, ecosystem, format) => smol.parseLockfile(content, ecosystem, format) : jsParseLockfile;
|
|
41
41
|
|
|
42
42
|
//#endregion
|
|
43
43
|
exports.jsParseLockfile = jsParseLockfile;
|
|
@@ -20,9 +20,9 @@ function jsParseManifest(content, ecosystem) {
|
|
|
20
20
|
default: throw new require_eco_manifest_manifest_error.ManifestError(`Unsupported ecosystem: ${ecosystem}`, "ERR_UNSUPPORTED");
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
const
|
|
23
|
+
const smol = require_smol_manifest.getSmolManifest();
|
|
24
24
|
/* c8 ignore start - smol-fallback branch is smol Node binary only. */
|
|
25
|
-
const smolParseManifest =
|
|
25
|
+
const smolParseManifest = smol ? (content, ecosystem) => smol.parseManifest(content, ecosystem) : void 0;
|
|
26
26
|
/* c8 ignore stop */
|
|
27
27
|
const parseManifest = smolParseManifest ?? jsParseManifest;
|
|
28
28
|
|