@socketsecurity/lib 5.28.0 → 6.0.1
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 +135 -37
- package/README.md +26 -17
- package/dist/abort/signal.d.ts +28 -0
- package/dist/{abort.js → abort/signal.js} +12 -10
- package/dist/ai/discover.d.mts +50 -0
- package/dist/ai/discover.js +128 -0
- package/dist/ai/profiles.d.mts +39 -0
- package/dist/ai/profiles.js +61 -0
- package/dist/ai/spawn.d.mts +49 -0
- package/dist/ai/spawn.js +207 -0
- package/dist/ai/types.d.mts +117 -0
- package/dist/ai/types.js +18 -0
- package/dist/ai/worktree.d.mts +104 -0
- package/dist/ai/worktree.js +200 -0
- package/dist/ansi/constants.d.ts +10 -0
- package/dist/ansi/constants.js +45 -0
- package/dist/ansi/strip.d.ts +33 -0
- package/dist/{ansi.js → ansi/strip.js} +7 -24
- package/dist/archives/_internal.d.ts +39 -0
- package/dist/archives/_internal.js +87 -0
- package/dist/archives/detect.d.ts +19 -0
- package/dist/archives/detect.js +46 -0
- package/dist/archives/extract.d.ts +22 -0
- package/dist/archives/extract.js +53 -0
- package/dist/archives/tar.d.ts +42 -0
- package/dist/archives/tar.js +233 -0
- package/dist/archives/types.d.ts +34 -0
- package/dist/archives/types.js +18 -0
- package/dist/archives/zip.d.ts +20 -0
- package/dist/archives/zip.js +124 -0
- package/dist/argv/flag-predicates.d.ts +179 -0
- package/dist/argv/flag-predicates.js +118 -0
- package/dist/argv/flag-types.d.ts +123 -0
- package/dist/argv/flag-types.js +116 -0
- package/dist/argv/parse-args-string.d.ts +30 -0
- package/dist/argv/parse-args-string.js +42 -0
- package/dist/argv/parse.d.ts +34 -33
- package/dist/argv/parse.js +6 -4
- package/dist/arrays/_internal.d.ts +43 -0
- package/dist/{arrays.js → arrays/_internal.js} +8 -41
- package/dist/arrays/chunk.d.ts +37 -0
- package/dist/arrays/chunk.js +43 -0
- package/dist/arrays/join.d.ts +76 -0
- package/dist/{env/helpers.js → arrays/join.js} +12 -18
- package/dist/arrays/predicates.d.ts +40 -0
- package/dist/arrays/predicates.js +30 -0
- package/dist/arrays/unique.d.ts +36 -0
- package/dist/arrays/unique.js +34 -0
- package/dist/bin/_internal.d.ts +22 -0
- package/dist/bin/_internal.js +43 -0
- package/dist/bin/check-primordials.d.ts +41 -15
- package/dist/bin/check-primordials.js +49 -28
- package/dist/bin/check.d.ts +7 -12
- package/dist/bin/check.js +6 -2
- package/dist/bin/exec.d.ts +37 -0
- package/dist/bin/exec.js +79 -0
- package/dist/bin/find.d.ts +58 -0
- package/dist/bin/find.js +143 -0
- package/dist/bin/resolve.d.ts +30 -0
- package/dist/bin/resolve.js +249 -0
- package/dist/bin/shadow.d.ts +16 -0
- package/dist/bin/shadow.js +36 -0
- package/dist/bin/socket-lib.d.ts +10 -14
- package/dist/bin/socket-lib.js +19 -4
- package/dist/bin/types.d.ts +34 -0
- package/dist/bin/types.js +18 -0
- package/dist/bin/which.d.ts +111 -0
- package/dist/bin/which.js +155 -0
- package/dist/cacache/_internal.d.ts +15 -0
- package/dist/cacache/_internal.js +43 -0
- package/dist/cacache/clear.d.ts +43 -0
- package/dist/cacache/clear.js +77 -0
- package/dist/cacache/read.d.ts +31 -0
- package/dist/cacache/read.js +51 -0
- package/dist/cacache/tmp.d.ts +18 -0
- package/dist/cacache/tmp.js +39 -0
- package/dist/cacache/types.d.ts +37 -0
- package/dist/cacache/types.js +18 -0
- package/dist/cacache/write.d.ts +31 -0
- package/dist/cacache/write.js +53 -0
- package/dist/cache/ttl/store.d.ts +29 -0
- package/dist/{cache-with-ttl.js → cache/ttl/store.js} +45 -37
- package/dist/cache/ttl/types.d.ts +109 -0
- package/dist/cache/ttl/types.js +18 -0
- package/dist/checks/primordials-defaults.d.ts +20 -0
- package/dist/checks/primordials-defaults.js +92 -0
- package/dist/checks/primordials.d.ts +69 -61
- package/dist/checks/primordials.js +141 -92
- package/dist/colors/convert.d.ts +35 -0
- package/dist/colors/convert.js +42 -0
- package/dist/colors/palette.d.ts +7 -0
- package/dist/{colors.js → colors/palette.js} +5 -17
- package/dist/colors/socket-palette.d.ts +69 -0
- package/dist/colors/socket-palette.js +91 -0
- package/dist/colors/types.d.ts +29 -0
- package/dist/colors/types.js +18 -0
- package/dist/compression/_internal.d.ts +33 -0
- package/dist/compression/_internal.js +77 -0
- package/dist/compression/brotli.d.ts +82 -0
- package/dist/{compression.js → compression/brotli.js} +17 -145
- package/dist/compression/gzip.d.ts +70 -0
- package/dist/compression/gzip.js +142 -0
- package/dist/compression/types.d.ts +37 -0
- package/dist/compression/types.js +18 -0
- package/dist/constants/agents.d.ts +4 -3
- package/dist/constants/agents.js +7 -4
- package/dist/constants/encoding.d.ts +3 -3
- package/dist/constants/github.d.ts +2 -3
- package/dist/constants/licenses.d.ts +5 -5
- package/dist/constants/licenses.js +2 -2
- package/dist/constants/lifecycle-script-names.d.ts +3 -4
- package/dist/constants/lifecycle-script-names.js +2 -2
- package/dist/constants/maintained-node-versions.d.ts +1 -1
- package/dist/constants/maintained-node-versions.js +3 -4
- package/dist/constants/node.d.ts +21 -20
- package/dist/constants/node.js +4 -4
- package/dist/constants/package-default-node-range.d.ts +1 -1
- package/dist/constants/package-default-socket-categories.d.ts +1 -1
- package/dist/constants/package-default-socket-categories.js +2 -2
- package/dist/constants/packages.d.ts +4 -4
- package/dist/constants/packages.js +7 -5
- package/dist/constants/platform.d.ts +3 -1
- package/dist/constants/platform.js +3 -10
- package/dist/constants/{core.d.ts → sentinels.d.ts} +4 -4
- package/dist/constants/{core.js → sentinels.js} +3 -3
- package/dist/constants/socket.d.ts +4 -6
- package/dist/constants/socket.js +6 -9
- package/dist/constants/testing.d.ts +3 -3
- package/dist/constants/time.d.ts +3 -3
- package/dist/constants/typescript.d.ts +3 -3
- package/dist/cover/code.d.ts +11 -3
- package/dist/cover/code.js +27 -37
- package/dist/cover/formatters.d.ts +19 -15
- package/dist/cover/formatters.js +21 -18
- package/dist/cover/type.d.ts +4 -3
- package/dist/cover/type.js +10 -9
- package/dist/cover/types.d.ts +1 -1
- package/dist/crypto/hash.d.ts +36 -0
- package/dist/{crypto.js → crypto/hash.js} +17 -17
- package/dist/debug/_internal.d.ts +25 -0
- package/dist/debug/_internal.js +77 -0
- package/dist/debug/caller-info.d.ts +12 -0
- package/dist/debug/caller-info.js +67 -0
- package/dist/debug/namespace.d.ts +35 -0
- package/dist/debug/namespace.js +101 -0
- package/dist/{debug.d.ts → debug/output.d.ts} +23 -42
- package/dist/debug/output.js +209 -0
- package/dist/debug/types.d.ts +21 -0
- package/dist/debug/types.js +18 -0
- package/dist/dlx/_internal.d.ts +10 -0
- package/dist/dlx/_internal.js +47 -0
- package/dist/dlx/arborist.d.ts +86 -61
- package/dist/dlx/arborist.js +30 -35
- package/dist/dlx/binary-cache.d.ts +108 -0
- package/dist/dlx/binary-cache.js +212 -0
- package/dist/dlx/binary-download.d.ts +67 -0
- package/dist/dlx/binary-download.js +216 -0
- package/dist/dlx/binary-resolution.d.ts +61 -0
- package/dist/dlx/binary-resolution.js +164 -0
- package/dist/dlx/binary-types.d.ts +144 -0
- package/dist/dlx/binary-types.js +18 -0
- package/dist/dlx/binary.d.ts +39 -268
- package/dist/dlx/binary.js +40 -321
- package/dist/dlx/cache.d.ts +21 -16
- package/dist/dlx/cache.js +2 -2
- package/dist/dlx/detect.d.ts +94 -68
- package/dist/dlx/detect.js +32 -35
- package/dist/dlx/dir.d.ts +20 -18
- package/dist/dlx/dir.js +7 -14
- package/dist/dlx/firewall.d.ts +27 -0
- package/dist/dlx/firewall.js +107 -0
- package/dist/dlx/lockfile.d.ts +73 -56
- package/dist/dlx/lockfile.js +36 -44
- package/dist/dlx/manifest.d.ts +50 -51
- package/dist/dlx/manifest.js +52 -53
- package/dist/dlx/package.d.ts +83 -279
- package/dist/dlx/package.js +45 -267
- package/dist/dlx/packages.d.ts +22 -20
- package/dist/dlx/packages.js +15 -20
- package/dist/dlx/paths.d.ts +26 -23
- package/dist/dlx/paths.js +8 -15
- package/dist/dlx/spec.d.ts +25 -0
- package/dist/dlx/spec.js +63 -0
- package/dist/dlx/types.d.ts +142 -0
- package/dist/dlx/types.js +18 -0
- package/dist/eco/cargo/lockfile-format.d.ts +8 -0
- package/dist/eco/cargo/lockfile-format.js +39 -0
- package/dist/eco/cargo/manifest-format.d.ts +7 -0
- package/dist/eco/cargo/manifest-format.js +38 -0
- package/dist/eco/cargo/parse-lockfile.d.ts +84 -0
- package/dist/eco/cargo/parse-lockfile.js +257 -0
- package/dist/eco/manifest/analyze-lockfile.d.ts +10 -0
- package/dist/eco/manifest/analyze-lockfile.js +67 -0
- package/dist/eco/manifest/detect-format.d.ts +15 -0
- package/dist/eco/manifest/detect-format.js +98 -0
- package/dist/eco/manifest/find-packages.d.ts +14 -0
- package/dist/eco/manifest/find-packages.js +69 -0
- package/dist/eco/manifest/get-package-versions.d.ts +8 -0
- package/dist/eco/manifest/get-package-versions.js +52 -0
- package/dist/eco/manifest/get-package.d.ts +10 -0
- package/dist/eco/manifest/get-package.js +44 -0
- package/dist/eco/manifest/manifest-error.d.ts +18 -0
- package/dist/eco/manifest/manifest-error.js +37 -0
- package/dist/eco/manifest/parse-lockfile.d.ts +16 -0
- package/dist/eco/manifest/parse-lockfile.js +91 -0
- package/dist/eco/manifest/parse-manifest.d.ts +12 -0
- package/dist/eco/manifest/parse-manifest.js +48 -0
- package/dist/eco/manifest/parse.d.ts +9 -0
- package/dist/eco/manifest/parse.js +52 -0
- package/dist/eco/manifest/types.d.ts +10 -0
- package/dist/eco/manifest/types.js +18 -0
- package/dist/eco/npm/bun/exec.d.ts +15 -0
- package/dist/eco/npm/bun/exec.js +35 -0
- package/dist/eco/npm/manifest-format.d.ts +11 -0
- package/dist/eco/npm/manifest-format.js +38 -0
- package/dist/eco/npm/npm/exec.d.ts +24 -0
- package/dist/eco/npm/npm/exec.js +64 -0
- package/dist/eco/npm/npm/extract-package-name-from-path.d.ts +9 -0
- package/dist/eco/npm/npm/extract-package-name-from-path.js +54 -0
- package/dist/eco/npm/npm/flags.d.ts +62 -0
- package/dist/eco/npm/npm/flags.js +63 -0
- package/dist/eco/npm/npm/lockfile-format.d.ts +9 -0
- package/dist/eco/npm/npm/lockfile-format.js +42 -0
- package/dist/eco/npm/npm/parse-git-url.d.ts +13 -0
- package/dist/eco/npm/npm/parse-git-url.js +43 -0
- package/dist/eco/npm/npm/parse-lockfile.d.ts +70 -0
- package/dist/eco/npm/npm/parse-lockfile.js +224 -0
- package/dist/eco/npm/parse-package-json.d.ts +16 -0
- package/dist/eco/npm/parse-package-json.js +115 -0
- package/dist/eco/npm/pnpm/detect-pnpm-version.d.ts +7 -0
- package/dist/eco/npm/pnpm/detect-pnpm-version.js +47 -0
- package/dist/eco/npm/pnpm/exec.d.ts +26 -0
- package/dist/eco/npm/pnpm/exec.js +65 -0
- package/dist/eco/npm/pnpm/flags.d.ts +44 -0
- package/dist/eco/npm/pnpm/flags.js +76 -0
- package/dist/eco/npm/pnpm/lockfile-format.d.ts +8 -0
- package/dist/eco/npm/pnpm/lockfile-format.js +39 -0
- package/dist/eco/npm/pnpm/parse-lockfile.d.ts +69 -0
- package/dist/eco/npm/pnpm/parse-lockfile.js +274 -0
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.d.ts +15 -0
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +50 -0
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.d.ts +11 -0
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +52 -0
- package/dist/eco/npm/script.d.ts +35 -0
- package/dist/eco/npm/script.js +93 -0
- package/dist/eco/npm/vlt/exec.d.ts +16 -0
- package/dist/eco/npm/vlt/exec.js +35 -0
- package/dist/eco/npm/yarnpkg/yarn/exec.d.ts +28 -0
- package/dist/eco/npm/yarnpkg/yarn/exec.js +63 -0
- package/dist/eco/npm/yarnpkg/yarn/lockfile-format.d.ts +9 -0
- package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +39 -0
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +61 -0
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +261 -0
- package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.d.ts +16 -0
- package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +68 -0
- package/dist/{types.d.ts → eco/purl.d.ts} +14 -26
- package/dist/{types.js → eco/purl.js} +3 -3
- package/dist/eco/types.d.ts +51 -0
- package/dist/eco/types.js +18 -0
- package/dist/effects/pulse-frames.d.ts +16 -17
- package/dist/effects/pulse-frames.js +4 -4
- package/dist/effects/shimmer-keyframes.d.ts +39 -37
- package/dist/effects/shimmer-terminal.d.ts +43 -42
- package/dist/effects/shimmer-terminal.js +3 -3
- package/dist/effects/shimmer.d.ts +172 -153
- package/dist/effects/shimmer.js +78 -76
- package/dist/env/boolean.d.ts +33 -0
- package/dist/env/boolean.js +46 -0
- package/dist/env/case-insensitive.d.ts +42 -0
- package/dist/env/case-insensitive.js +42 -0
- package/dist/env/ci.d.ts +11 -12
- package/dist/env/debug.d.ts +10 -10
- package/dist/env/github.d.ts +71 -74
- package/dist/env/home.d.ts +15 -14
- package/dist/env/locale.d.ts +26 -29
- package/dist/env/node-auth-token.d.ts +10 -10
- package/dist/env/node-env.d.ts +10 -10
- package/dist/env/npm.d.ts +45 -47
- package/dist/env/number.d.ts +29 -0
- package/dist/env/number.js +54 -0
- package/dist/env/package-manager.d.ts +36 -33
- package/dist/env/package-manager.js +3 -3
- package/dist/env/path.d.ts +10 -10
- package/dist/env/pre-commit.d.ts +11 -11
- package/dist/env/pre-commit.js +2 -2
- package/dist/env/proxy.d.ts +44 -0
- package/dist/env/proxy.js +126 -0
- package/dist/env/rewire.d.ts +105 -99
- package/dist/env/rewire.js +11 -8
- package/dist/env/shell.d.ts +10 -10
- package/dist/env/socket-cli.d.ts +109 -125
- package/dist/env/socket-cli.js +7 -12
- package/dist/env/socket.d.ts +347 -130
- package/dist/env/socket.js +107 -8
- package/dist/env/string.d.ts +28 -0
- package/dist/env/string.js +47 -0
- package/dist/env/temp-dir.d.ts +26 -29
- package/dist/env/term.d.ts +10 -10
- package/dist/env/test.d.ts +29 -31
- package/dist/env/test.js +5 -4
- package/dist/env/types.d.ts +62 -0
- package/dist/env/types.js +18 -0
- package/dist/env/windows.d.ts +37 -38
- package/dist/env/xdg.d.ts +29 -29
- package/dist/errors/message.d.ts +27 -0
- package/dist/errors/message.js +49 -0
- package/dist/errors/predicates.d.ts +46 -0
- package/dist/{errors.js → errors/predicates.js} +13 -43
- package/dist/errors/stack.d.ts +16 -0
- package/dist/errors/stack.js +39 -0
- package/dist/events/exit/_internal.d.ts +68 -0
- package/dist/events/exit/_internal.js +127 -0
- package/dist/events/exit/handler.d.ts +20 -0
- package/dist/events/exit/handler.js +58 -0
- package/dist/events/exit/intercept.d.ts +8 -0
- package/dist/events/exit/intercept.js +75 -0
- package/dist/events/exit/lifecycle.d.ts +28 -0
- package/dist/events/exit/lifecycle.js +109 -0
- package/dist/events/exit/signals.d.ts +16 -0
- package/dist/events/exit/signals.js +34 -0
- package/dist/events/exit/types.d.ts +21 -0
- package/dist/events/exit/types.js +18 -0
- package/dist/events/warning/handler.d.ts +31 -0
- package/dist/events/warning/handler.js +43 -0
- package/dist/events/warning/suppress.d.ts +65 -0
- package/dist/{suppress-warnings.js → events/warning/suppress.js} +16 -28
- package/dist/external/@npmcli/package-json/lib/read-package.js +11 -1
- package/dist/external/@npmcli/package-json.js +300 -82
- package/dist/external/@npmcli/promise-spawn.js +15 -1
- package/dist/external/@socketregistry/packageurl-js.js +7 -1
- package/dist/external/@socketregistry/yocto-spinner.js +5 -1
- package/dist/external/@yarnpkg/extensions.js +1 -1
- package/dist/external/adm-zip.js +20 -4
- package/dist/external/debug.js +15 -1
- package/dist/external/external-pack.js +20 -4
- package/dist/external/fast-sort.js +3 -1
- package/dist/external/get-east-asian-width.js +3 -1
- package/dist/external/libnpmexec.js +5 -1
- package/dist/external/npm-pack.js +344 -113
- package/dist/external/p-map.js +7 -1
- package/dist/external/pico-pack.js +17 -1
- package/dist/external/pony-cause.js +1 -1
- package/dist/external/spdx-pack.js +3 -1
- package/dist/external/supports-color.js +1 -1
- package/dist/external/tar-fs.js +15 -1
- package/dist/external/which.js +11 -1
- package/dist/external/yargs-parser.js +15 -1
- package/dist/external-tools/bazel/asset-names.d.ts +66 -0
- package/dist/external-tools/bazel/asset-names.js +96 -0
- package/dist/external-tools/bazel/from-download.d.ts +49 -0
- package/dist/external-tools/bazel/from-download.js +49 -0
- package/dist/external-tools/bazel/from-path.d.ts +8 -0
- package/dist/external-tools/bazel/from-path.js +41 -0
- package/dist/external-tools/bazel/read-bazel-version-file.d.ts +12 -0
- package/dist/external-tools/bazel/read-bazel-version-file.js +61 -0
- package/dist/external-tools/bazel/resolve-asset-url.d.ts +14 -0
- package/dist/external-tools/bazel/resolve-asset-url.js +42 -0
- package/dist/external-tools/bazel/resolve-bazel-version.d.ts +19 -0
- package/dist/external-tools/bazel/resolve-bazel-version.js +59 -0
- package/dist/external-tools/bazel/resolve.d.ts +35 -0
- package/dist/external-tools/bazel/resolve.js +68 -0
- package/dist/external-tools/bazel/types.d.ts +22 -0
- package/dist/external-tools/bazel/types.js +18 -0
- package/dist/external-tools/cdxgen/asset-names.d.ts +58 -0
- package/dist/external-tools/cdxgen/asset-names.js +79 -0
- package/dist/external-tools/cdxgen/from-download.d.ts +43 -0
- package/dist/external-tools/cdxgen/from-download.js +83 -0
- package/dist/external-tools/cdxgen/from-path.d.ts +5 -0
- package/dist/external-tools/cdxgen/from-path.js +40 -0
- package/dist/external-tools/cdxgen/from-vfs.d.ts +7 -0
- package/dist/external-tools/cdxgen/from-vfs.js +47 -0
- package/dist/external-tools/cdxgen/resolve.d.ts +32 -0
- package/dist/external-tools/cdxgen/resolve.js +73 -0
- package/dist/external-tools/cdxgen/types.d.ts +33 -0
- package/dist/external-tools/cdxgen/types.js +18 -0
- package/dist/external-tools/from-download.d.ts +162 -0
- package/dist/external-tools/from-download.js +72 -0
- package/dist/external-tools/janus/asset-names.d.ts +43 -0
- package/dist/external-tools/janus/asset-names.js +57 -0
- package/dist/external-tools/janus/from-download.d.ts +26 -0
- package/dist/external-tools/janus/from-download.js +73 -0
- package/dist/external-tools/janus/from-path.d.ts +5 -0
- package/dist/external-tools/janus/from-path.js +40 -0
- package/dist/external-tools/janus/from-vfs.d.ts +7 -0
- package/dist/external-tools/janus/from-vfs.js +47 -0
- package/dist/external-tools/janus/resolve.d.ts +28 -0
- package/dist/external-tools/janus/resolve.js +73 -0
- package/dist/external-tools/janus/types.d.ts +24 -0
- package/dist/external-tools/janus/types.js +18 -0
- package/dist/external-tools/jre/asset-names.d.ts +91 -0
- package/dist/external-tools/jre/asset-names.js +88 -0
- package/dist/external-tools/jre/detect-platform-arch.d.ts +8 -0
- package/dist/external-tools/jre/detect-platform-arch.js +52 -0
- package/dist/external-tools/jre/from-download.d.ts +62 -0
- package/dist/external-tools/jre/from-download.js +70 -0
- package/dist/external-tools/jre/from-java-home.d.ts +10 -0
- package/dist/external-tools/jre/from-java-home.js +57 -0
- package/dist/external-tools/jre/from-path.d.ts +9 -0
- package/dist/external-tools/jre/from-path.js +52 -0
- package/dist/external-tools/jre/from-vfs.d.ts +17 -0
- package/dist/external-tools/jre/from-vfs.js +64 -0
- package/dist/external-tools/jre/resolve.d.ts +40 -0
- package/dist/external-tools/jre/resolve.js +78 -0
- package/dist/external-tools/jre/types.d.ts +28 -0
- package/dist/external-tools/jre/types.js +18 -0
- package/dist/external-tools/manifest.d.ts +105 -0
- package/dist/external-tools/manifest.js +167 -0
- package/dist/external-tools/opengrep/asset-names.d.ts +44 -0
- package/dist/external-tools/opengrep/asset-names.js +78 -0
- package/dist/external-tools/opengrep/from-download.d.ts +17 -0
- package/dist/external-tools/opengrep/from-download.js +83 -0
- package/dist/external-tools/opengrep/from-path.d.ts +5 -0
- package/dist/external-tools/opengrep/from-path.js +40 -0
- package/dist/external-tools/opengrep/from-vfs.d.ts +8 -0
- package/dist/external-tools/opengrep/from-vfs.js +47 -0
- package/dist/external-tools/opengrep/resolve.d.ts +26 -0
- package/dist/external-tools/opengrep/resolve.js +73 -0
- package/dist/external-tools/opengrep/types.d.ts +24 -0
- package/dist/external-tools/opengrep/types.js +18 -0
- package/dist/external-tools/sbt/asset-names.d.ts +31 -0
- package/dist/external-tools/sbt/asset-names.js +33 -0
- package/dist/external-tools/sbt/from-download.d.ts +44 -0
- package/dist/external-tools/sbt/from-download.js +64 -0
- package/dist/external-tools/sbt/from-path.d.ts +8 -0
- package/dist/external-tools/sbt/from-path.js +41 -0
- package/dist/external-tools/sbt/from-vfs.d.ts +14 -0
- package/dist/external-tools/sbt/from-vfs.js +48 -0
- package/dist/external-tools/sbt/resolve.d.ts +31 -0
- package/dist/external-tools/sbt/resolve.js +73 -0
- package/dist/external-tools/sbt/types.d.ts +32 -0
- package/dist/external-tools/sbt/types.js +18 -0
- package/dist/external-tools/synp/asset-names.d.ts +14 -0
- package/dist/external-tools/synp/asset-names.js +32 -0
- package/dist/external-tools/synp/from-download.d.ts +18 -0
- package/dist/external-tools/synp/from-download.js +44 -0
- package/dist/external-tools/synp/from-path.d.ts +5 -0
- package/dist/external-tools/synp/from-path.js +40 -0
- package/dist/external-tools/synp/from-vfs.d.ts +7 -0
- package/dist/external-tools/synp/from-vfs.js +47 -0
- package/dist/external-tools/synp/resolve.d.ts +21 -0
- package/dist/external-tools/synp/resolve.js +72 -0
- package/dist/external-tools/synp/types.d.ts +19 -0
- package/dist/external-tools/synp/types.js +18 -0
- package/dist/external-tools/trivy/asset-names.d.ts +34 -0
- package/dist/external-tools/trivy/asset-names.js +68 -0
- package/dist/external-tools/trivy/from-download.d.ts +17 -0
- package/dist/external-tools/trivy/from-download.js +67 -0
- package/dist/external-tools/trivy/from-path.d.ts +5 -0
- package/dist/external-tools/trivy/from-path.js +40 -0
- package/dist/external-tools/trivy/from-vfs.d.ts +7 -0
- package/dist/external-tools/trivy/from-vfs.js +47 -0
- package/dist/external-tools/trivy/resolve.d.ts +26 -0
- package/dist/external-tools/trivy/resolve.js +73 -0
- package/dist/external-tools/trivy/types.d.ts +24 -0
- package/dist/external-tools/trivy/types.js +18 -0
- package/dist/external-tools/trufflehog/asset-names.d.ts +34 -0
- package/dist/external-tools/trufflehog/asset-names.js +72 -0
- package/dist/external-tools/trufflehog/from-download.d.ts +37 -0
- package/dist/external-tools/trufflehog/from-download.js +65 -0
- package/dist/external-tools/trufflehog/from-path.d.ts +7 -0
- package/dist/external-tools/trufflehog/from-path.js +40 -0
- package/dist/external-tools/trufflehog/from-vfs.d.ts +11 -0
- package/dist/external-tools/trufflehog/from-vfs.js +47 -0
- package/dist/external-tools/trufflehog/resolve.d.ts +30 -0
- package/dist/external-tools/trufflehog/resolve.js +73 -0
- package/dist/external-tools/trufflehog/types.d.ts +25 -0
- package/dist/external-tools/trufflehog/types.js +18 -0
- package/dist/external-tools/uv/asset-names.d.ts +36 -0
- package/dist/external-tools/uv/asset-names.js +80 -0
- package/dist/external-tools/uv/from-download.d.ts +17 -0
- package/dist/external-tools/uv/from-download.js +68 -0
- package/dist/external-tools/uv/from-path.d.ts +5 -0
- package/dist/external-tools/uv/from-path.js +40 -0
- package/dist/external-tools/uv/from-vfs.d.ts +7 -0
- package/dist/external-tools/uv/from-vfs.js +47 -0
- package/dist/external-tools/uv/resolve.d.ts +25 -0
- package/dist/external-tools/uv/resolve.js +73 -0
- package/dist/external-tools/uv/types.d.ts +24 -0
- package/dist/external-tools/uv/types.js +18 -0
- package/dist/fs/_internal.d.ts +22 -0
- package/dist/fs/_internal.js +48 -0
- package/dist/fs/encoding.d.ts +49 -0
- package/dist/fs/encoding.js +102 -0
- package/dist/fs/find-up.d.ts +58 -0
- package/dist/fs/find-up.js +152 -0
- package/dist/fs/inspect.d.ts +117 -0
- package/dist/fs/inspect.js +112 -0
- package/dist/fs/path-cache.d.ts +21 -0
- package/dist/fs/path-cache.js +35 -0
- package/dist/fs/read-dir.d.ts +66 -0
- package/dist/fs/read-dir.js +86 -0
- package/dist/fs/read-file.d.ts +150 -0
- package/dist/fs/read-file.js +131 -0
- package/dist/fs/read-json-cache.d.ts +83 -0
- package/dist/fs/read-json-cache.js +156 -0
- package/dist/fs/read-json.d.ts +77 -0
- package/dist/fs/read-json.js +192 -0
- package/dist/fs/safe.d.ts +153 -0
- package/dist/fs/safe.js +182 -0
- package/dist/fs/types.d.ts +291 -0
- package/dist/fs/types.js +18 -0
- package/dist/fs/unique.d.ts +29 -0
- package/dist/fs/unique.js +51 -0
- package/dist/fs/validate.d.ts +40 -0
- package/dist/fs/validate.js +46 -0
- package/dist/fs/write-json.d.ts +78 -0
- package/dist/fs/write-json.js +83 -0
- package/dist/git/_internal.d.ts +105 -0
- package/dist/git/_internal.js +236 -0
- package/dist/git/changed.d.ts +145 -0
- package/dist/git/changed.js +83 -0
- package/dist/git/repo.d.ts +62 -0
- package/dist/git/repo.js +111 -0
- package/dist/git/staged.d.ts +138 -0
- package/dist/git/staged.js +71 -0
- package/dist/git/types.d.ts +109 -0
- package/dist/git/types.js +18 -0
- package/dist/git/unstaged.d.ts +141 -0
- package/dist/git/unstaged.js +71 -0
- package/dist/github/constants.d.ts +18 -0
- package/dist/github/constants.js +36 -0
- package/dist/github/errors.d.ts +36 -0
- package/dist/github/errors.js +40 -0
- package/dist/github/fetch.d.ts +89 -0
- package/dist/github/fetch.js +87 -0
- package/dist/github/ghsa.d.ts +118 -0
- package/dist/github/ghsa.js +178 -0
- package/dist/github/refs-cache.d.ts +40 -0
- package/dist/github/refs-cache.js +49 -0
- package/dist/github/refs-graphql.d.ts +42 -0
- package/dist/github/refs-graphql.js +109 -0
- package/dist/github/refs-rest.d.ts +23 -0
- package/dist/github/refs-rest.js +104 -0
- package/dist/github/refs.d.ts +84 -0
- package/dist/github/refs.js +67 -0
- package/dist/github/token.d.ts +77 -0
- package/dist/github/token.js +55 -0
- package/dist/github/types.d.ts +277 -0
- package/dist/github/types.js +18 -0
- package/dist/globs/_internal.d.ts +46 -0
- package/dist/globs/_internal.js +96 -0
- package/dist/globs/defaults.d.ts +7 -0
- package/dist/globs/defaults.js +61 -0
- package/dist/globs/match.d.ts +59 -0
- package/dist/globs/match.js +84 -0
- package/dist/globs/matcher.d.ts +46 -0
- package/dist/globs/matcher.js +99 -0
- package/dist/globs/stream.d.ts +18 -0
- package/dist/globs/stream.js +58 -0
- package/dist/globs/types.d.ts +35 -0
- package/dist/globs/types.js +18 -0
- package/dist/http-request/_internal.d.ts +18 -0
- package/dist/http-request/_internal.js +39 -0
- package/dist/http-request/browser-fetch.d.ts +10 -0
- package/dist/http-request/browser-fetch.js +32 -0
- package/dist/http-request/browser.d.ts +190 -0
- package/dist/http-request/browser.js +224 -0
- package/dist/http-request/checksums.d.ts +69 -0
- package/dist/http-request/checksums.js +72 -0
- package/dist/http-request/convenience.d.ts +104 -0
- package/dist/http-request/convenience.js +96 -0
- package/dist/http-request/download-types.d.ts +224 -0
- package/dist/http-request/download-types.js +18 -0
- package/dist/http-request/download.d.ts +71 -0
- package/dist/http-request/download.js +201 -0
- package/dist/http-request/errors.d.ts +23 -0
- package/dist/http-request/errors.js +50 -0
- package/dist/http-request/headers.d.ts +57 -0
- package/dist/http-request/headers.js +86 -0
- package/dist/http-request/request-attempt.d.ts +21 -0
- package/dist/http-request/request-attempt.js +288 -0
- package/dist/http-request/request-types.d.ts +253 -0
- package/dist/http-request/request-types.js +18 -0
- package/dist/http-request/request.d.ts +59 -0
- package/dist/http-request/request.js +111 -0
- package/dist/http-request/response-reader.d.ts +25 -0
- package/dist/http-request/response-reader.js +54 -0
- package/dist/http-request/response-types.d.ts +123 -0
- package/dist/http-request/response-types.js +40 -0
- package/dist/http-request/user-agent.d.ts +55 -0
- package/dist/http-request/user-agent.js +61 -0
- package/dist/{dlx/integrity.d.ts → integrity.d.ts} +36 -30
- package/dist/{dlx/integrity.js → integrity.js} +25 -19
- package/dist/ipc/_internal.d.ts +25 -0
- package/dist/ipc/_internal.js +50 -0
- package/dist/ipc/directory.d.ts +18 -0
- package/dist/ipc/directory.js +66 -0
- package/dist/ipc/paths.d.ts +37 -0
- package/dist/ipc/paths.js +48 -0
- package/dist/ipc/types.d.ts +22 -0
- package/dist/ipc/types.js +18 -0
- package/dist/ipc/write.d.ts +39 -0
- package/dist/ipc/write.js +77 -0
- package/dist/ipc-cli/get.d.ts +21 -0
- package/dist/{ipc-cli.js → ipc-cli/get.js} +5 -5
- package/dist/ipc-cli/types.d.ts +14 -0
- package/dist/ipc-cli/types.js +18 -0
- package/dist/json/edit.d.ts +22 -8
- package/dist/json/edit.js +85 -96
- package/dist/json/format.d.ts +100 -86
- package/dist/json/format.js +4 -3
- package/dist/json/parse.d.ts +113 -88
- package/dist/json/parse.js +30 -24
- package/dist/json/types.d.ts +133 -117
- package/dist/links/create.d.ts +65 -0
- package/dist/{links.js → links/create.js} +10 -10
- package/dist/links/types.d.ts +19 -0
- package/dist/links/types.js +18 -0
- package/dist/logger/_internal.d.ts +82 -0
- package/dist/logger/_internal.js +80 -0
- package/dist/logger/browser.d.ts +16 -0
- package/dist/logger/browser.js +65 -0
- package/dist/logger/colors.d.ts +18 -0
- package/dist/logger/colors.js +54 -0
- package/dist/logger/console.d.ts +33 -0
- package/dist/logger/console.js +119 -0
- package/dist/logger/default.d.ts +405 -0
- package/dist/logger/default.js +854 -0
- package/dist/logger/symbols-builder.d.ts +29 -0
- package/dist/logger/symbols-builder.js +61 -0
- package/dist/logger/symbols.d.ts +61 -0
- package/dist/logger/symbols.js +129 -0
- package/dist/logger/types.d.ts +88 -0
- package/dist/logger/types.js +18 -0
- package/dist/memo/_internal.d.ts +16 -0
- package/dist/memo/_internal.js +53 -0
- package/dist/memo/async.d.ts +32 -0
- package/dist/memo/async.js +120 -0
- package/dist/memo/clear.d.ts +15 -0
- package/dist/memo/clear.js +37 -0
- package/dist/memo/decorator.d.ts +29 -0
- package/dist/memo/decorator.js +40 -0
- package/dist/memo/memoize.d.ts +33 -0
- package/dist/memo/memoize.js +91 -0
- package/dist/memo/once.d.ts +25 -0
- package/dist/memo/once.js +44 -0
- package/dist/memo/types.d.ts +43 -0
- package/dist/memo/types.js +18 -0
- package/dist/memo/weak.d.ts +26 -0
- package/dist/memo/weak.js +44 -0
- package/dist/node/async-hooks.d.ts +2 -2
- package/dist/node/child-process.d.ts +5 -7
- package/dist/node/crypto.d.ts +2 -2
- package/dist/node/events.d.ts +2 -2
- package/dist/node/fs-promises.d.ts +2 -2
- package/dist/node/fs.d.ts +6 -10
- package/dist/node/http.d.ts +2 -2
- package/dist/node/https.d.ts +2 -2
- package/dist/node/module.d.ts +7 -0
- package/dist/node/module.js +41 -0
- package/dist/node/os.d.ts +2 -2
- package/dist/node/path.d.ts +2 -2
- package/dist/node/timers-promises.d.ts +2 -2
- package/dist/node/url.d.ts +2 -2
- package/dist/node/util.d.ts +2 -2
- package/dist/objects/getters.d.ts +116 -0
- package/dist/objects/getters.js +137 -0
- package/dist/objects/inspect.d.ts +67 -0
- package/dist/objects/inspect.js +59 -0
- package/dist/objects/mutate.d.ts +72 -0
- package/dist/objects/mutate.js +81 -0
- package/dist/objects/predicates.d.ts +96 -0
- package/dist/objects/predicates.js +68 -0
- package/dist/objects/sort.d.ts +88 -0
- package/dist/objects/sort.js +85 -0
- package/dist/objects/types.d.ts +68 -0
- package/dist/objects/types.js +18 -0
- package/dist/packages/edit-class.d.ts +39 -0
- package/dist/packages/edit-class.js +269 -0
- package/dist/packages/edit.d.ts +60 -61
- package/dist/packages/edit.js +21 -286
- package/dist/packages/exports.d.ts +30 -28
- package/dist/packages/exports.js +38 -34
- package/dist/packages/isolation.d.ts +16 -7
- package/dist/packages/isolation.js +52 -59
- package/dist/packages/licenses.d.ts +49 -45
- package/dist/packages/licenses.js +13 -18
- package/dist/packages/manifest.d.ts +14 -14
- package/dist/packages/manifest.js +16 -15
- package/dist/packages/normalize.d.ts +17 -16
- package/dist/packages/normalize.js +20 -17
- package/dist/packages/operations.d.ts +49 -36
- package/dist/packages/operations.js +30 -15
- package/dist/packages/provenance.d.ts +22 -9
- package/dist/packages/provenance.js +76 -66
- package/dist/packages/specs.d.ts +21 -21
- package/dist/packages/specs.js +7 -7
- package/dist/{packages.d.ts → packages/types.d.ts} +14 -20
- package/dist/packages/types.js +18 -0
- package/dist/packages/validation.d.ts +13 -13
- package/dist/packages/validation.js +2 -2
- package/dist/paths/_internal.d.ts +51 -0
- package/dist/paths/_internal.js +102 -0
- package/dist/paths/conversion.d.ts +82 -0
- package/dist/paths/conversion.js +74 -0
- package/dist/paths/dirnames.d.ts +1 -1
- package/dist/paths/exts.d.ts +1 -1
- package/dist/paths/filenames.d.ts +1 -1
- package/dist/paths/globs.d.ts +1 -1
- package/dist/paths/normalize.d.ts +30 -440
- package/dist/paths/normalize.js +49 -289
- package/dist/paths/packages.d.ts +7 -1
- package/dist/paths/packages.js +7 -12
- package/dist/paths/predicates.d.ts +129 -0
- package/dist/paths/predicates.js +121 -0
- package/dist/paths/resolve.d.ts +71 -0
- package/dist/paths/resolve.js +135 -0
- package/dist/paths/rewire.d.ts +37 -38
- package/dist/paths/rewire.js +3 -3
- package/dist/paths/socket.d.ts +146 -47
- package/dist/paths/socket.js +23 -25
- package/dist/perf/_internal.d.ts +10 -0
- package/dist/perf/_internal.js +30 -0
- package/dist/perf/enabled.d.ts +13 -0
- package/dist/perf/enabled.js +33 -0
- package/dist/perf/metrics.d.ts +51 -0
- package/dist/perf/metrics.js +74 -0
- package/dist/perf/report.d.ts +40 -0
- package/dist/perf/report.js +85 -0
- package/dist/perf/timer.d.ts +100 -0
- package/dist/perf/timer.js +137 -0
- package/dist/perf/types.d.ts +15 -0
- package/dist/perf/types.js +18 -0
- package/dist/pkg-ext/data.d.ts +8 -0
- package/dist/{package-extensions.js → pkg-ext/data.js} +4 -4
- package/dist/pkg-ext/types.d.ts +6 -0
- package/dist/pkg-ext/types.js +18 -0
- package/dist/primordials/array.d.ts +73 -0
- package/dist/primordials/array.js +220 -0
- package/dist/primordials/buffer.d.ts +17 -0
- package/dist/primordials/buffer.js +61 -0
- package/dist/primordials/date.d.ts +16 -0
- package/dist/primordials/date.js +56 -0
- package/dist/primordials/error.d.ts +19 -0
- package/dist/primordials/error.js +75 -0
- package/dist/primordials/function.d.ts +10 -0
- package/dist/primordials/function.js +42 -0
- package/dist/primordials/globals.d.ts +20 -0
- package/dist/primordials/globals.js +60 -0
- package/dist/primordials/json.d.ts +11 -0
- package/dist/primordials/json.js +33 -0
- package/dist/primordials/map-set.d.ts +35 -0
- package/dist/primordials/map-set.js +115 -0
- package/dist/primordials/math.d.ts +51 -0
- package/dist/primordials/math.js +161 -0
- package/dist/primordials/number.d.ts +25 -0
- package/dist/primordials/number.js +92 -0
- package/dist/primordials/object.d.ts +74 -0
- package/dist/primordials/object.js +142 -0
- package/dist/primordials/promise.d.ts +34 -0
- package/dist/primordials/promise.js +61 -0
- package/dist/primordials/reflect.d.ts +18 -0
- package/dist/primordials/reflect.js +66 -0
- package/dist/primordials/regexp.d.ts +14 -0
- package/dist/primordials/regexp.js +50 -0
- package/dist/primordials/string.d.ts +71 -0
- package/dist/primordials/string.js +174 -0
- package/dist/primordials/symbol.d.ts +28 -0
- package/dist/primordials/symbol.js +94 -0
- package/dist/primordials/uncurry.d.ts +18 -0
- package/dist/primordials/uncurry.js +65 -0
- package/dist/primordials/url.d.ts +13 -0
- package/dist/primordials/url.js +69 -0
- package/dist/process/_internal.d.ts +8 -0
- package/dist/process/_internal.js +33 -0
- package/dist/process/abort.d.ts +20 -0
- package/dist/{constants/process.js → process/abort.js} +3 -3
- package/dist/process/lock-instance.d.ts +19 -0
- package/dist/process/lock-instance.js +31 -0
- package/dist/process/lock-manager.d.ts +152 -0
- package/dist/{process-lock.js → process/lock-manager.js} +98 -106
- package/dist/process/lock-types.d.ts +43 -0
- package/dist/process/lock-types.js +18 -0
- package/dist/process/spawn/_internal.d.ts +24 -0
- package/dist/process/spawn/_internal.js +62 -0
- package/dist/process/spawn/child.d.ts +134 -0
- package/dist/process/spawn/child.js +216 -0
- package/dist/process/spawn/errors.d.ts +45 -0
- package/dist/process/spawn/errors.js +118 -0
- package/dist/process/spawn/stdio.d.ts +37 -0
- package/dist/process/spawn/stdio.js +38 -0
- package/dist/process/spawn/types.d.ts +325 -0
- package/dist/process/spawn/types.js +18 -0
- package/dist/process/transient.d.ts +22 -0
- package/dist/{temporary-executor.js → process/transient.js} +8 -8
- package/dist/promises/_internal.d.ts +15 -0
- package/dist/promises/_internal.js +41 -0
- package/dist/promises/iterate.d.ts +190 -0
- package/dist/promises/iterate.js +111 -0
- package/dist/promises/options.d.ts +76 -0
- package/dist/promises/options.js +108 -0
- package/dist/promises/queue.d.ts +51 -0
- package/dist/{promise-queue.js → promises/queue.js} +27 -22
- package/dist/promises/resolvers.d.ts +55 -0
- package/dist/promises/resolvers.js +49 -0
- package/dist/promises/retry.d.ts +105 -0
- package/dist/promises/retry.js +104 -0
- package/dist/promises/types.d.ts +203 -0
- package/dist/promises/types.js +18 -0
- package/dist/regexps/escape.d.ts +6 -0
- package/dist/regexps/escape.js +32 -0
- package/dist/regexps/hex.d.ts +7 -0
- package/dist/regexps/hex.js +38 -0
- package/dist/regexps/spec.d.ts +15 -0
- package/dist/{regexps.js → regexps/spec.js} +32 -36
- package/dist/releases/github-archives.d.ts +47 -36
- package/dist/releases/github-archives.js +22 -36
- package/dist/releases/github-asset-url.d.ts +72 -0
- package/dist/releases/github-asset-url.js +167 -0
- package/dist/releases/github-assets.d.ts +13 -11
- package/dist/releases/github-assets.js +2 -2
- package/dist/releases/github-auth.d.ts +9 -9
- package/dist/releases/github-downloads.d.ts +31 -26
- package/dist/releases/github-downloads.js +24 -36
- package/dist/releases/github-listing.d.ts +105 -0
- package/dist/releases/github-listing.js +171 -0
- package/dist/releases/github-types.d.ts +45 -19
- package/dist/releases/socket-btm.d.ts +149 -99
- package/dist/releases/socket-btm.js +14 -20
- package/dist/schema/parse.d.ts +14 -15
- package/dist/schema/parse.js +2 -2
- package/dist/schema/types.d.ts +49 -37
- package/dist/schema/validate.d.ts +42 -19
- package/dist/schema/validate.js +15 -6
- package/dist/sea/detect.d.ts +37 -0
- package/dist/sea/{util.js → detect.js} +6 -6
- package/dist/secrets/_internal.d.ts +57 -0
- package/dist/secrets/_internal.js +84 -0
- package/dist/secrets/find.d.ts +79 -0
- package/dist/secrets/find.js +84 -0
- package/dist/secrets/keychain.d.ts +138 -0
- package/dist/secrets/keychain.js +328 -0
- package/dist/secrets/linux.d.ts +20 -0
- package/dist/secrets/linux.js +151 -0
- package/dist/secrets/macos.d.ts +36 -0
- package/dist/secrets/macos.js +165 -0
- package/dist/secrets/rc.d.ts +139 -0
- package/dist/secrets/rc.js +196 -0
- package/dist/secrets/socket-api-token.d.ts +23 -0
- package/dist/secrets/socket-api-token.js +50 -0
- package/dist/secrets/types.d.ts +69 -0
- package/dist/secrets/types.js +18 -0
- package/dist/secrets/windows.d.ts +50 -0
- package/dist/secrets/windows.js +318 -0
- package/dist/shadow/skip.d.ts +25 -0
- package/dist/{shadow.js → shadow/skip.js} +4 -4
- package/dist/shadow/types.d.ts +8 -0
- package/dist/shadow/types.js +18 -0
- package/dist/smol/detect.d.ts +80 -0
- package/dist/smol/{util.js → detect.js} +16 -24
- package/dist/smol/http.d.ts +60 -0
- package/dist/smol/http.js +42 -0
- package/dist/smol/https.d.ts +59 -0
- package/dist/smol/https.js +42 -0
- package/dist/smol/manifest.d.ts +140 -0
- package/dist/smol/manifest.js +42 -0
- package/dist/smol/primordial.d.ts +16 -21
- package/dist/smol/primordial.js +7 -11
- package/dist/smol/purl.d.ts +84 -0
- package/dist/smol/purl.js +42 -0
- package/dist/smol/versions.d.ts +11 -14
- package/dist/smol/versions.js +7 -11
- package/dist/smol/vfs.d.ts +99 -0
- package/dist/smol/vfs.js +43 -0
- package/dist/sorts/_internal.d.ts +9 -0
- package/dist/sorts/_internal.js +47 -0
- package/dist/sorts/natural.d.ts +39 -0
- package/dist/{sorts.js → sorts/natural.js} +5 -42
- package/dist/sorts/semver.d.ts +15 -0
- package/dist/sorts/semver.js +46 -0
- package/dist/sorts/strings.d.ts +16 -0
- package/dist/sorts/strings.js +33 -0
- package/dist/sorts/types.d.ts +7 -0
- package/dist/sorts/types.js +18 -0
- package/dist/spinner/default.d.ts +49 -0
- package/dist/spinner/default.js +70 -0
- package/dist/spinner/format.d.ts +64 -0
- package/dist/spinner/format.js +83 -0
- package/dist/spinner/spinner.d.ts +40 -0
- package/dist/spinner/spinner.js +802 -0
- package/dist/spinner/types.d.ts +368 -0
- package/dist/spinner/types.js +18 -0
- package/dist/spinner/with.d.ts +125 -0
- package/dist/spinner/with.js +144 -0
- package/dist/ssri/convert.d.ts +48 -0
- package/dist/{ssri.js → ssri/convert.js} +11 -34
- package/dist/ssri/parse.d.ts +27 -0
- package/dist/ssri/parse.js +40 -0
- package/dist/ssri/validate.d.ts +41 -0
- package/dist/ssri/validate.js +39 -0
- package/dist/stdio/{_stream.d.ts → _internal.d.ts} +10 -5
- package/dist/stdio/{_stream.js → _internal.js} +3 -3
- package/dist/stdio/clear.d.ts +98 -84
- package/dist/stdio/divider.d.ts +100 -78
- package/dist/stdio/divider.js +36 -14
- package/dist/stdio/footer.d.ts +75 -51
- package/dist/stdio/footer.js +28 -18
- package/dist/stdio/header.d.ts +61 -50
- package/dist/stdio/header.js +15 -13
- package/dist/stdio/progress.d.ts +67 -57
- package/dist/stdio/progress.js +55 -51
- package/dist/stdio/prompts.d.ts +147 -100
- package/dist/stdio/prompts.js +23 -15
- package/dist/stdio/stderr.d.ts +86 -84
- package/dist/stdio/stderr.js +6 -6
- package/dist/stdio/stdout.d.ts +77 -78
- package/dist/stdio/stdout.js +6 -6
- package/dist/streams/parallel.d.ts +40 -0
- package/dist/{streams.js → streams/parallel.js} +10 -27
- package/dist/streams/transform.d.ts +20 -0
- package/dist/streams/transform.js +48 -0
- package/dist/strings/format.d.ts +115 -0
- package/dist/strings/format.js +73 -0
- package/dist/strings/predicates.d.ts +52 -0
- package/dist/strings/predicates.js +39 -0
- package/dist/strings/search.d.ts +34 -0
- package/dist/strings/search.js +45 -0
- package/dist/strings/transform.d.ts +80 -0
- package/dist/strings/transform.js +79 -0
- package/dist/strings/types.d.ts +38 -0
- package/dist/strings/types.js +18 -0
- package/dist/strings/width.d.ts +42 -0
- package/dist/strings/width.js +95 -0
- package/dist/tables/bordered.d.ts +44 -0
- package/dist/tables/bordered.js +84 -0
- package/dist/tables/padding.d.ts +18 -0
- package/dist/tables/padding.js +51 -0
- package/dist/tables/simple.d.ts +36 -0
- package/dist/tables/simple.js +73 -0
- package/dist/tables/types.d.ts +15 -0
- package/dist/tables/types.js +18 -0
- package/dist/temporal/instant.d.ts +39 -0
- package/dist/temporal/instant.js +91 -0
- package/dist/temporal/now.d.ts +24 -0
- package/dist/temporal/now.js +34 -0
- package/dist/temporal/slots.d.ts +32 -0
- package/dist/temporal/slots.js +45 -0
- package/dist/temporal/system.d.ts +20 -0
- package/dist/temporal/system.js +42 -0
- package/dist/temporal/temporal.d.ts +22 -0
- package/dist/temporal/temporal.js +43 -0
- package/dist/themes/context.d.ts +65 -48
- package/dist/themes/context.js +6 -2
- package/dist/themes/resolve.d.ts +90 -0
- package/dist/themes/{utils.js → resolve.js} +6 -6
- package/dist/themes/themes.d.ts +14 -16
- package/dist/themes/types.d.ts +93 -35
- package/dist/url/parse.d.ts +26 -0
- package/dist/url/parse.js +57 -0
- package/dist/url/predicates.d.ts +15 -0
- package/dist/url/predicates.js +34 -0
- package/dist/url/search-params.d.ts +71 -0
- package/dist/{url.js → url/search-params.js} +19 -54
- package/dist/url/types.d.ts +20 -0
- package/dist/url/types.js +18 -0
- package/dist/versions/_internal.d.ts +24 -0
- package/dist/versions/_internal.js +37 -0
- package/dist/versions/compare.d.ts +57 -0
- package/dist/versions/compare.js +65 -0
- package/dist/versions/modify.d.ts +28 -0
- package/dist/versions/modify.js +44 -0
- package/dist/versions/parse.d.ts +67 -0
- package/dist/versions/parse.js +77 -0
- package/dist/versions/range.d.ts +45 -0
- package/dist/versions/range.js +50 -0
- package/dist/versions/types.d.ts +13 -0
- package/dist/versions/types.js +18 -0
- package/dist/words/article.d.ts +14 -0
- package/dist/words/article.js +33 -0
- package/dist/words/capitalize.d.ts +15 -0
- package/dist/{words.js → words/capitalize.js} +5 -18
- package/dist/words/pluralize.d.ts +16 -0
- package/dist/words/pluralize.js +34 -0
- package/dist/words/types.d.ts +7 -0
- package/dist/words/types.js +18 -0
- package/package.json +2154 -252
- package/dist/abort.d.ts +0 -27
- package/dist/agent.d.ts +0 -196
- package/dist/agent.js +0 -287
- package/dist/ansi.d.ts +0 -39
- package/dist/archives.d.ts +0 -95
- package/dist/archives.js +0 -408
- package/dist/argv/flags.d.ts +0 -292
- package/dist/argv/flags.js +0 -297
- package/dist/arrays.d.ts +0 -168
- package/dist/bin.d.ts +0 -181
- package/dist/bin.js +0 -544
- package/dist/cacache.d.ts +0 -130
- package/dist/cacache.js +0 -156
- package/dist/cache-with-ttl.d.ts +0 -165
- package/dist/colors.d.ts +0 -49
- package/dist/compression.d.ts +0 -218
- package/dist/constants/process.d.ts +0 -20
- package/dist/crypto.d.ts +0 -36
- package/dist/debug.js +0 -337
- package/dist/env/helpers.d.ts +0 -66
- package/dist/env.d.ts +0 -182
- package/dist/env.js +0 -205
- package/dist/errors.d.ts +0 -100
- package/dist/fs.d.ts +0 -916
- package/dist/fs.js +0 -808
- package/dist/git.d.ts +0 -546
- package/dist/git.js +0 -409
- package/dist/github.d.ts +0 -526
- package/dist/github.js +0 -448
- package/dist/globs.d.ts +0 -119
- package/dist/globs.js +0 -282
- package/dist/http-request.d.ts +0 -951
- package/dist/http-request.js +0 -761
- package/dist/ipc-cli.d.ts +0 -28
- package/dist/ipc.d.ts +0 -76
- package/dist/ipc.js +0 -130
- package/dist/links.d.ts +0 -69
- package/dist/logger.d.ts +0 -993
- package/dist/logger.js +0 -1498
- package/dist/memoization.d.ts +0 -131
- package/dist/memoization.js +0 -243
- package/dist/objects.d.ts +0 -500
- package/dist/objects.js +0 -303
- package/dist/package-extensions.d.ts +0 -9
- package/dist/packages.js +0 -132
- package/dist/performance.d.ts +0 -181
- package/dist/performance.js +0 -233
- package/dist/primordials.d.ts +0 -420
- package/dist/primordials.js +0 -1116
- package/dist/process-lock.d.ts +0 -180
- package/dist/promise-queue.d.ts +0 -48
- package/dist/promises.d.ts +0 -506
- package/dist/promises.js +0 -292
- package/dist/regexps.d.ts +0 -6
- package/dist/releases/github-api.d.ts +0 -56
- package/dist/releases/github-api.js +0 -275
- package/dist/sea/util.d.ts +0 -43
- package/dist/shadow.d.ts +0 -28
- package/dist/signal-exit.d.ts +0 -50
- package/dist/signal-exit.js +0 -247
- package/dist/smol/util.d.ts +0 -87
- package/dist/sorts.d.ts +0 -59
- package/dist/spawn.d.ts +0 -454
- package/dist/spawn.js +0 -334
- package/dist/spinner.d.ts +0 -444
- package/dist/spinner.js +0 -988
- package/dist/ssri.d.ts +0 -90
- package/dist/streams.d.ts +0 -45
- package/dist/strings.d.ts +0 -414
- package/dist/strings.js +0 -218
- package/dist/suppress-warnings.d.ts +0 -81
- package/dist/tables.d.ts +0 -73
- package/dist/tables.js +0 -133
- package/dist/temporary-executor.d.ts +0 -20
- package/dist/themes/utils.d.ts +0 -86
- package/dist/url.d.ts +0 -114
- package/dist/versions.d.ts +0 -207
- package/dist/versions.js +0 -181
- package/dist/words.d.ts +0 -39
|
@@ -24,38 +24,23 @@ __export(github_archives_exports, {
|
|
|
24
24
|
downloadAndExtractZip: () => downloadAndExtractZip
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(github_archives_exports);
|
|
27
|
-
var
|
|
28
|
-
var
|
|
29
|
-
var
|
|
30
|
-
var
|
|
27
|
+
var import_detect = require("../archives/detect");
|
|
28
|
+
var import_extract = require("../archives/extract");
|
|
29
|
+
var import_safe = require("../fs/safe");
|
|
30
|
+
var import_default = require("../logger/default");
|
|
31
|
+
var import_error = require("../primordials/error");
|
|
31
32
|
var import_github_downloads = require("./github-downloads");
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
// @__NO_SIDE_EFFECTS__
|
|
36
|
-
function getFs() {
|
|
37
|
-
if (_fs === void 0) {
|
|
38
|
-
_fs = require("node:fs");
|
|
39
|
-
}
|
|
40
|
-
return _fs;
|
|
41
|
-
}
|
|
42
|
-
// @__NO_SIDE_EFFECTS__
|
|
43
|
-
function getPath() {
|
|
44
|
-
if (_path === void 0) {
|
|
45
|
-
_path = require("node:path");
|
|
46
|
-
}
|
|
47
|
-
return _path;
|
|
48
|
-
}
|
|
49
|
-
async function downloadAndExtractArchive(tag, assetPattern, outputDir, repoConfig, options = {}) {
|
|
33
|
+
var import_path = require("../node/path");
|
|
34
|
+
const logger = (0, import_default.getDefaultLogger)();
|
|
35
|
+
async function downloadAndExtractArchive(tag, assetPattern, outputDir, repoConfig, options = { __proto__: null }) {
|
|
50
36
|
const { cleanup = true, format, quiet = false, strip } = options;
|
|
51
|
-
const path =
|
|
52
|
-
|
|
53
|
-
await (0, import_fs.safeMkdir)(outputDir);
|
|
37
|
+
const path = (0, import_path.getNodePath)();
|
|
38
|
+
await (0, import_safe.safeMkdir)(outputDir);
|
|
54
39
|
let ext = ".archive";
|
|
55
40
|
if (format) {
|
|
56
41
|
ext = format === "tar.gz" ? ".tar.gz" : `.${format}`;
|
|
57
42
|
} else if (typeof assetPattern === "string") {
|
|
58
|
-
const detectedFormat = (0,
|
|
43
|
+
const detectedFormat = (0, import_detect.detectArchiveFormat)(assetPattern);
|
|
59
44
|
if (detectedFormat) {
|
|
60
45
|
ext = detectedFormat === "tar.gz" ? ".tar.gz" : `.${detectedFormat}`;
|
|
61
46
|
}
|
|
@@ -71,16 +56,16 @@ async function downloadAndExtractArchive(tag, assetPattern, outputDir, repoConfi
|
|
|
71
56
|
logger.info(`Extracting archive to ${outputDir}...`);
|
|
72
57
|
}
|
|
73
58
|
try {
|
|
74
|
-
await (0,
|
|
59
|
+
await (0, import_extract.extractArchive)(archivePath, outputDir, { quiet, strip });
|
|
75
60
|
if (!quiet) {
|
|
76
61
|
logger.info(`Extracted archive contents to ${outputDir}`);
|
|
77
62
|
}
|
|
78
63
|
} catch (cause) {
|
|
79
|
-
throw new
|
|
64
|
+
throw new import_error.ErrorCtor(`Failed to extract archive: ${archivePath}`, { cause });
|
|
80
65
|
} finally {
|
|
81
66
|
if (cleanup) {
|
|
82
67
|
try {
|
|
83
|
-
await
|
|
68
|
+
await (0, import_safe.safeDelete)(archivePath);
|
|
84
69
|
if (!quiet) {
|
|
85
70
|
logger.info("Cleaned up temporary archive file");
|
|
86
71
|
}
|
|
@@ -93,11 +78,12 @@ async function downloadAndExtractArchive(tag, assetPattern, outputDir, repoConfi
|
|
|
93
78
|
}
|
|
94
79
|
return outputDir;
|
|
95
80
|
}
|
|
96
|
-
async function downloadAndExtractZip(tag, assetPattern, outputDir, repoConfig, options = {
|
|
81
|
+
async function downloadAndExtractZip(tag, assetPattern, outputDir, repoConfig, options = {
|
|
82
|
+
__proto__: null
|
|
83
|
+
}) {
|
|
97
84
|
const { cleanup = true, quiet = false } = options;
|
|
98
|
-
const path =
|
|
99
|
-
|
|
100
|
-
await (0, import_fs.safeMkdir)(outputDir);
|
|
85
|
+
const path = (0, import_path.getNodePath)();
|
|
86
|
+
await (0, import_safe.safeMkdir)(outputDir);
|
|
101
87
|
const zipPath = path.join(outputDir, "__temp_download__.zip");
|
|
102
88
|
if (!quiet) {
|
|
103
89
|
logger.info(`Downloading zip asset from release ${tag}...`);
|
|
@@ -107,16 +93,16 @@ async function downloadAndExtractZip(tag, assetPattern, outputDir, repoConfig, o
|
|
|
107
93
|
logger.info(`Extracting zip to ${outputDir}...`);
|
|
108
94
|
}
|
|
109
95
|
try {
|
|
110
|
-
await (0,
|
|
96
|
+
await (0, import_extract.extractArchive)(zipPath, outputDir, { quiet });
|
|
111
97
|
if (!quiet) {
|
|
112
98
|
logger.info(`Extracted zip contents to ${outputDir}`);
|
|
113
99
|
}
|
|
114
100
|
} catch (cause) {
|
|
115
|
-
throw new
|
|
101
|
+
throw new import_error.ErrorCtor(`Failed to extract zip file: ${zipPath}`, { cause });
|
|
116
102
|
} finally {
|
|
117
103
|
if (cleanup) {
|
|
118
104
|
try {
|
|
119
|
-
await
|
|
105
|
+
await (0, import_safe.safeDelete)(zipPath);
|
|
120
106
|
if (!quiet) {
|
|
121
107
|
logger.info("Cleaned up temporary zip file");
|
|
122
108
|
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Per-release asset-URL discovery for GitHub releases. Split out of
|
|
3
|
+
* `releases/github-api.ts` for size hygiene. Holds the "fetch this specific
|
|
4
|
+
* tag's downloadable asset URL" path (REST with GraphQL fallback for ES-index
|
|
5
|
+
* incidents):
|
|
6
|
+
*
|
|
7
|
+
* - `fetchReleaseAssetsViaGraphQL` — GraphQL fallback when REST's per-tag
|
|
8
|
+
* endpoint returns 200 + empty body
|
|
9
|
+
* - `getReleaseAssetUrl` — REST per-tag lookup + pattern matcher + GraphQL
|
|
10
|
+
* fallback The list-all-releases path lives in `./github-listing`.
|
|
11
|
+
*/
|
|
12
|
+
import type { AssetPattern, RepoConfig } from './github-types';
|
|
13
|
+
/**
|
|
14
|
+
* Fetch the assets of a single release identified by tag via GraphQL.
|
|
15
|
+
*
|
|
16
|
+
* Why this exists: `getReleaseAssetUrl` uses REST `/releases/tags/:tag` to look
|
|
17
|
+
* up a single release and find a downloadable asset. During GitHub incidents
|
|
18
|
+
* that endpoint can return 200 + empty body the same way the listing endpoint
|
|
19
|
+
* does (the per-tag lookup joins against the same listing index for asset
|
|
20
|
+
* discovery). This helper hits GraphQL `repository.release(tagName)` which uses
|
|
21
|
+
* a different backend.
|
|
22
|
+
*
|
|
23
|
+
* Field shape diff we normalize: GraphQL returns REST equivalent
|
|
24
|
+
* `releaseAssets.nodes[].downloadUrl` `assets[].browser_download_url`
|
|
25
|
+
*
|
|
26
|
+
* Same URL, different field name and one extra connection-wrapper level. The
|
|
27
|
+
* mapping at the bottom converts so the asset-matcher in `getReleaseAssetUrl`
|
|
28
|
+
* can run unchanged.
|
|
29
|
+
*
|
|
30
|
+
* Return contract:
|
|
31
|
+
*
|
|
32
|
+
* - Array of assets (REST shape) when the release exists.
|
|
33
|
+
* - `undefined` when the release with that tag genuinely doesn't exist (GraphQL
|
|
34
|
+
* returned `release: null` over the wire — we translate that to undefined per
|
|
35
|
+
* the codebase convention). The caller throws a clean "tag not found" error
|
|
36
|
+
* in that case.
|
|
37
|
+
* - Throws on transport errors (non-OK HTTP, GraphQL errors[], or even the
|
|
38
|
+
* GraphQL backend ALSO returning empty body — at that point both transports
|
|
39
|
+
* are degraded and we want the pRetry wrapper to back off and retry).
|
|
40
|
+
*/
|
|
41
|
+
export declare function fetchReleaseAssetsViaGraphQL(owner: string, repo: string, tag: string): Promise<Array<{
|
|
42
|
+
name: string;
|
|
43
|
+
browser_download_url: string;
|
|
44
|
+
}> | undefined>;
|
|
45
|
+
/**
|
|
46
|
+
* Get download URL for a specific release asset. Supports pattern matching for
|
|
47
|
+
* dynamic asset discovery.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ;```typescript
|
|
51
|
+
* const url = await getReleaseAssetUrl('v1.0.0', 'tool-linux-x64', {
|
|
52
|
+
* owner: 'SocketDev',
|
|
53
|
+
* repo: 'socket-btm',
|
|
54
|
+
* })
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @param tag - Release tag name.
|
|
58
|
+
* @param assetPattern - Asset name or pattern (glob string, prefix/suffix
|
|
59
|
+
* object, or RegExp)
|
|
60
|
+
* @param repoConfig - Repository configuration (owner/repo)
|
|
61
|
+
* @param options - Additional options.
|
|
62
|
+
* @param options.nothrow - If true, return undefined instead of throwing when
|
|
63
|
+
* both REST and GraphQL backends are degraded. Default: false.
|
|
64
|
+
*
|
|
65
|
+
* @returns Browser download URL for the asset, or undefined when not found.
|
|
66
|
+
*
|
|
67
|
+
* @throws {Error} If both REST and GraphQL backends are degraded and nothrow is
|
|
68
|
+
* false.
|
|
69
|
+
*/
|
|
70
|
+
export declare function getReleaseAssetUrl(tag: string, assetPattern: string | AssetPattern, repoConfig: RepoConfig, options?: {
|
|
71
|
+
nothrow?: boolean;
|
|
72
|
+
}): Promise<string | undefined>;
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Socket Lib - Built with esbuild */
|
|
3
|
+
"use strict";
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
21
|
+
var github_asset_url_exports = {};
|
|
22
|
+
__export(github_asset_url_exports, {
|
|
23
|
+
fetchReleaseAssetsViaGraphQL: () => fetchReleaseAssetsViaGraphQL,
|
|
24
|
+
getReleaseAssetUrl: () => getReleaseAssetUrl
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(github_asset_url_exports);
|
|
27
|
+
var import_request = require("../http-request/request");
|
|
28
|
+
var import_retry = require("../promises/retry");
|
|
29
|
+
var import_array = require("../primordials/array");
|
|
30
|
+
var import_error = require("../primordials/error");
|
|
31
|
+
var import_json = require("../primordials/json");
|
|
32
|
+
var import_object = require("../primordials/object");
|
|
33
|
+
var import_github_assets = require("./github-assets");
|
|
34
|
+
var import_github_auth = require("./github-auth");
|
|
35
|
+
const RETRY_CONFIG = (0, import_object.ObjectFreeze)({
|
|
36
|
+
__proto__: null,
|
|
37
|
+
// Exponential backoff: delay doubles with each retry (5s, 10s, 20s).
|
|
38
|
+
backoffFactor: 2,
|
|
39
|
+
// Initial delay before first retry.
|
|
40
|
+
baseDelayMs: 5e3,
|
|
41
|
+
// Maximum number of retry attempts (excluding initial request).
|
|
42
|
+
retries: 2
|
|
43
|
+
});
|
|
44
|
+
async function fetchReleaseAssetsViaGraphQL(owner, repo, tag) {
|
|
45
|
+
const response = await (0, import_request.httpRequest)("https://api.github.com/graphql", {
|
|
46
|
+
body: (0, import_json.JSONStringify)({
|
|
47
|
+
query: `query($owner: String!, $repo: String!, $tag: String!) {
|
|
48
|
+
repository(owner: $owner, name: $repo) {
|
|
49
|
+
release(tagName: $tag) {
|
|
50
|
+
tagName
|
|
51
|
+
releaseAssets(first: 100) { nodes { name downloadUrl } }
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}`,
|
|
55
|
+
variables: { owner, repo, tag }
|
|
56
|
+
}),
|
|
57
|
+
headers: { ...(0, import_github_auth.getAuthHeaders)(), "Content-Type": "application/json" },
|
|
58
|
+
method: "POST"
|
|
59
|
+
});
|
|
60
|
+
if (!response.ok) {
|
|
61
|
+
throw new import_error.ErrorCtor(
|
|
62
|
+
`Failed to fetch ${owner}/${repo} release ${tag} (GraphQL): ${response.status} ${response.statusText}`
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
if (response.body.byteLength === 0) {
|
|
66
|
+
throw new import_error.ErrorCtor(
|
|
67
|
+
`Failed to fetch ${owner}/${repo} release ${tag}: GraphQL returned empty body`
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
let parsed;
|
|
71
|
+
try {
|
|
72
|
+
parsed = (0, import_json.JSONParse)(response.body.toString("utf8"));
|
|
73
|
+
} catch (cause) {
|
|
74
|
+
throw new import_error.ErrorCtor(
|
|
75
|
+
`Failed to parse ${owner}/${repo} release ${tag} response (GraphQL)`,
|
|
76
|
+
{ cause }
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
if (parsed.errors?.length) {
|
|
80
|
+
throw new import_error.ErrorCtor(
|
|
81
|
+
`GraphQL repository.release(${owner}/${repo}, ${tag}) returned errors: ${parsed.errors.map((e) => e.message).join("; ")}`
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
const release = parsed.data?.repository?.release;
|
|
85
|
+
if (!release) {
|
|
86
|
+
return void 0;
|
|
87
|
+
}
|
|
88
|
+
return (release.releaseAssets?.nodes ?? []).map((n) => ({
|
|
89
|
+
browser_download_url: n.downloadUrl,
|
|
90
|
+
name: n.name
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
async function getReleaseAssetUrl(tag, assetPattern, repoConfig, options = {}) {
|
|
94
|
+
const { nothrow = false } = options;
|
|
95
|
+
const { owner, repo } = repoConfig;
|
|
96
|
+
const isMatch = typeof assetPattern === "string" && !assetPattern.includes("*") && !assetPattern.includes("{") ? (input) => input === assetPattern : (0, import_github_assets.createAssetMatcher)(assetPattern);
|
|
97
|
+
const assets = await (0, import_retry.pRetry)(async () => {
|
|
98
|
+
const response = await (0, import_request.httpRequest)(
|
|
99
|
+
`https://api.github.com/repos/${owner}/${repo}/releases/tags/${tag}`,
|
|
100
|
+
{
|
|
101
|
+
headers: (0, import_github_auth.getAuthHeaders)()
|
|
102
|
+
}
|
|
103
|
+
);
|
|
104
|
+
if (!response.ok) {
|
|
105
|
+
throw new import_error.ErrorCtor(
|
|
106
|
+
`Failed to fetch ${owner}/${repo} release ${tag}: ${response.status}`
|
|
107
|
+
);
|
|
108
|
+
}
|
|
109
|
+
let assets2;
|
|
110
|
+
if (response.body.byteLength === 0) {
|
|
111
|
+
let fallbackAssets;
|
|
112
|
+
try {
|
|
113
|
+
fallbackAssets = await fetchReleaseAssetsViaGraphQL(owner, repo, tag);
|
|
114
|
+
} catch (cause) {
|
|
115
|
+
if (nothrow) {
|
|
116
|
+
return void 0;
|
|
117
|
+
}
|
|
118
|
+
throw new import_error.ErrorCtor(
|
|
119
|
+
`Failed to fetch ${owner}/${repo} release ${tag}: both REST and GraphQL backends degraded`,
|
|
120
|
+
{ cause }
|
|
121
|
+
);
|
|
122
|
+
}
|
|
123
|
+
if (fallbackAssets === void 0) {
|
|
124
|
+
if (nothrow) {
|
|
125
|
+
return void 0;
|
|
126
|
+
}
|
|
127
|
+
throw new import_error.ErrorCtor(`Release ${tag} not found in ${owner}/${repo}`);
|
|
128
|
+
}
|
|
129
|
+
assets2 = fallbackAssets;
|
|
130
|
+
} else {
|
|
131
|
+
let release;
|
|
132
|
+
try {
|
|
133
|
+
release = (0, import_json.JSONParse)(response.body.toString("utf8"));
|
|
134
|
+
} catch (cause) {
|
|
135
|
+
throw new import_error.ErrorCtor(
|
|
136
|
+
`Failed to parse ${owner}/${repo} release ${tag} response`,
|
|
137
|
+
{ cause }
|
|
138
|
+
);
|
|
139
|
+
}
|
|
140
|
+
if (!(0, import_array.ArrayIsArray)(release.assets)) {
|
|
141
|
+
throw new import_error.ErrorCtor(`Release ${tag} has no assets in ${owner}/${repo}`);
|
|
142
|
+
}
|
|
143
|
+
assets2 = release.assets;
|
|
144
|
+
}
|
|
145
|
+
return assets2;
|
|
146
|
+
}, RETRY_CONFIG);
|
|
147
|
+
if (!assets) {
|
|
148
|
+
if (nothrow) {
|
|
149
|
+
return void 0;
|
|
150
|
+
}
|
|
151
|
+
throw new import_error.ErrorCtor(`Release ${tag} not found in ${owner}/${repo}`);
|
|
152
|
+
}
|
|
153
|
+
const asset = assets.find((a) => isMatch(a.name));
|
|
154
|
+
if (!asset) {
|
|
155
|
+
if (nothrow) {
|
|
156
|
+
return void 0;
|
|
157
|
+
}
|
|
158
|
+
const patternDesc = typeof assetPattern === "string" ? assetPattern : "matching pattern";
|
|
159
|
+
throw new import_error.ErrorCtor(`Asset ${patternDesc} not found in release ${tag}`);
|
|
160
|
+
}
|
|
161
|
+
return asset.browser_download_url;
|
|
162
|
+
}
|
|
163
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
164
|
+
0 && (module.exports = {
|
|
165
|
+
fetchReleaseAssetsViaGraphQL,
|
|
166
|
+
getReleaseAssetUrl
|
|
167
|
+
});
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @file Asset matching helpers for GitHub releases.
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* Create a matcher function for a pattern using picomatch for glob patterns
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* @param pattern - Pattern to match (string glob, prefix/suffix object, or RegExp)
|
|
9
|
-
* @returns Function that tests if a string matches the pattern
|
|
5
|
+
* Create a matcher function for a pattern using picomatch for glob patterns or
|
|
6
|
+
* simple prefix/suffix matching for object patterns.
|
|
10
7
|
*
|
|
11
8
|
* @example
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
9
|
+
* ;```typescript
|
|
10
|
+
* const isMatch = createAssetMatcher('tool-*-linux-x64')
|
|
11
|
+
* isMatch('tool-v1.0-linux-x64') // true
|
|
12
|
+
* isMatch('tool-v1.0-darwin-arm64') // false
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @param pattern - Pattern to match (string glob, prefix/suffix object, or
|
|
16
|
+
* RegExp)
|
|
17
|
+
*
|
|
18
|
+
* @returns Function that tests if a string matches the pattern
|
|
17
19
|
*/
|
|
18
20
|
export declare function createAssetMatcher(pattern: string | {
|
|
19
21
|
prefix: string;
|
|
@@ -34,7 +34,7 @@ __export(github_assets_exports, {
|
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(github_assets_exports);
|
|
36
36
|
var import_picomatch = __toESM(require("../external/picomatch"));
|
|
37
|
-
var
|
|
37
|
+
var import_string = require("../primordials/string");
|
|
38
38
|
function createAssetMatcher(pattern) {
|
|
39
39
|
if (typeof pattern === "string") {
|
|
40
40
|
const isMatch = (0, import_picomatch.default)(pattern);
|
|
@@ -44,7 +44,7 @@ function createAssetMatcher(pattern) {
|
|
|
44
44
|
return (input) => pattern.test(input);
|
|
45
45
|
}
|
|
46
46
|
const { prefix, suffix } = pattern;
|
|
47
|
-
return (input) => (0,
|
|
47
|
+
return (input) => (0, import_string.StringPrototypeStartsWith)(input, prefix) && (0, import_string.StringPrototypeEndsWith)(input, suffix);
|
|
48
48
|
}
|
|
49
49
|
// Annotate the CommonJS export names for ESM import in node:
|
|
50
50
|
0 && (module.exports = {
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @file GitHub API authentication header helpers.
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* Get GitHub authentication headers if token is available.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* @returns Headers object with Authorization header if token exists.
|
|
5
|
+
* Get GitHub authentication headers if token is available. Checks GH_TOKEN or
|
|
6
|
+
* GITHUB_TOKEN environment variables.
|
|
9
7
|
*
|
|
10
8
|
* @example
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
9
|
+
* ;```typescript
|
|
10
|
+
* const headers = getAuthHeaders()
|
|
11
|
+
* // { Accept: 'application/vnd.github+json', Authorization: 'Bearer ...' }
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* @returns Headers object with Authorization header if token exists.
|
|
15
15
|
*/
|
|
16
16
|
export declare function getAuthHeaders(): Record<string, string>;
|
|
@@ -1,41 +1,46 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @
|
|
2
|
+
* @file GitHub release asset downloads.
|
|
3
3
|
*/
|
|
4
4
|
import type { AssetPattern, DownloadGitHubReleaseConfig, RepoConfig } from './github-types';
|
|
5
5
|
/**
|
|
6
6
|
* Download a binary from any GitHub repository with version caching.
|
|
7
7
|
*
|
|
8
|
-
* @param config - Download configuration
|
|
9
|
-
* @returns Path to the downloaded binary
|
|
10
|
-
*
|
|
11
8
|
* @example
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
9
|
+
* ;```typescript
|
|
10
|
+
* const binaryPath = await downloadGitHubRelease({
|
|
11
|
+
* owner: 'SocketDev',
|
|
12
|
+
* repo: 'socket-btm',
|
|
13
|
+
* toolName: 'lief',
|
|
14
|
+
* toolPrefix: 'lief-',
|
|
15
|
+
* assetName: 'lief-linux-x64',
|
|
16
|
+
* binaryName: 'lief',
|
|
17
|
+
* platformArch: 'linux-x64',
|
|
18
|
+
* })
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @param config - Download configuration.
|
|
22
|
+
*
|
|
23
|
+
* @returns Path to the downloaded binary
|
|
20
24
|
*/
|
|
21
25
|
export declare function downloadGitHubRelease(config: DownloadGitHubReleaseConfig): Promise<string>;
|
|
22
26
|
/**
|
|
23
|
-
* Download a specific release asset.
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* @param tag - Release tag name
|
|
27
|
-
* @param assetPattern - Asset name or pattern (glob string, prefix/suffix object, or RegExp)
|
|
28
|
-
* @param outputPath - Path to write the downloaded file
|
|
29
|
-
* @param repoConfig - Repository configuration (owner/repo)
|
|
30
|
-
* @param options - Additional options
|
|
27
|
+
* Download a specific release asset. Supports pattern matching for dynamic
|
|
28
|
+
* asset discovery.
|
|
31
29
|
*
|
|
32
30
|
* @example
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
31
|
+
* ;```typescript
|
|
32
|
+
* await downloadReleaseAsset('v1.0.0', 'tool-linux-x64', '/tmp/tool', {
|
|
33
|
+
* owner: 'SocketDev',
|
|
34
|
+
* repo: 'socket-btm',
|
|
35
|
+
* })
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @param tag - Release tag name.
|
|
39
|
+
* @param assetPattern - Asset name or pattern (glob string, prefix/suffix
|
|
40
|
+
* object, or RegExp)
|
|
41
|
+
* @param outputPath - Path to write the downloaded file.
|
|
42
|
+
* @param repoConfig - Repository configuration (owner/repo)
|
|
43
|
+
* @param options - Additional options.
|
|
39
44
|
*/
|
|
40
45
|
export declare function downloadReleaseAsset(tag: string, assetPattern: string | AssetPattern, outputPath: string, repoConfig: RepoConfig, options?: {
|
|
41
46
|
quiet?: boolean;
|
|
@@ -35,29 +35,17 @@ __export(github_downloads_exports, {
|
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(github_downloads_exports);
|
|
37
37
|
var import_node_process = __toESM(require("node:process"));
|
|
38
|
-
var
|
|
39
|
-
var
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (_fs === void 0) {
|
|
50
|
-
_fs = require("node:fs");
|
|
51
|
-
}
|
|
52
|
-
return _fs;
|
|
53
|
-
}
|
|
54
|
-
// @__NO_SIDE_EFFECTS__
|
|
55
|
-
function getPath() {
|
|
56
|
-
if (_path === void 0) {
|
|
57
|
-
_path = require("node:path");
|
|
58
|
-
}
|
|
59
|
-
return _path;
|
|
60
|
-
}
|
|
38
|
+
var import_safe = require("../fs/safe");
|
|
39
|
+
var import_download = require("../http-request/download");
|
|
40
|
+
var import_default = require("../logger/default");
|
|
41
|
+
var import_error = require("../primordials/error");
|
|
42
|
+
var import_string = require("../primordials/string");
|
|
43
|
+
var import_child = require("../process/spawn/child");
|
|
44
|
+
var import_github_asset_url = require("./github-asset-url");
|
|
45
|
+
var import_github_listing = require("./github-listing");
|
|
46
|
+
var import_fs = require("../node/fs");
|
|
47
|
+
var import_path = require("../node/path");
|
|
48
|
+
const logger = (0, import_default.getDefaultLogger)();
|
|
61
49
|
async function downloadGitHubRelease(config) {
|
|
62
50
|
const {
|
|
63
51
|
assetName,
|
|
@@ -77,20 +65,20 @@ async function downloadGitHubRelease(config) {
|
|
|
77
65
|
if (explicitTag) {
|
|
78
66
|
tag = explicitTag;
|
|
79
67
|
} else if (toolPrefix) {
|
|
80
|
-
const latestTag = await (0,
|
|
68
|
+
const latestTag = await (0, import_github_listing.getLatestRelease)(toolPrefix, { owner, repo });
|
|
81
69
|
if (!latestTag) {
|
|
82
|
-
throw new
|
|
70
|
+
throw new import_error.ErrorCtor(`No ${toolPrefix} release found in ${owner}/${repo}`);
|
|
83
71
|
}
|
|
84
72
|
tag = latestTag;
|
|
85
73
|
} else {
|
|
86
|
-
throw new
|
|
74
|
+
throw new import_error.ErrorCtor("Either toolPrefix or tag must be provided");
|
|
87
75
|
}
|
|
88
|
-
const path =
|
|
76
|
+
const path = (0, import_path.getNodePath)();
|
|
89
77
|
const resolvedDownloadDir = path.isAbsolute(downloadDir) ? downloadDir : path.join(cwd, downloadDir);
|
|
90
78
|
const binaryDir = resolvedDownloadDir;
|
|
91
79
|
const binaryPath = path.join(binaryDir, binaryName);
|
|
92
80
|
const versionPath = path.join(binaryDir, ".version");
|
|
93
|
-
const fs =
|
|
81
|
+
const fs = (0, import_fs.getNodeFs)();
|
|
94
82
|
if (fs.existsSync(versionPath) && fs.existsSync(binaryPath)) {
|
|
95
83
|
const cachedVersion = (await fs.promises.readFile(versionPath, "utf8")).trim();
|
|
96
84
|
if (cachedVersion === tag && fs.existsSync(binaryPath)) {
|
|
@@ -110,12 +98,12 @@ async function downloadGitHubRelease(config) {
|
|
|
110
98
|
{ owner, repo },
|
|
111
99
|
{ quiet }
|
|
112
100
|
);
|
|
113
|
-
const isWindows = (0,
|
|
101
|
+
const isWindows = (0, import_string.StringPrototypeEndsWith)(binaryName, ".exe");
|
|
114
102
|
if (!isWindows) {
|
|
115
103
|
fs.chmodSync(binaryPath, 493);
|
|
116
|
-
if (removeMacOSQuarantine && import_node_process.default.platform === "darwin" && (0,
|
|
104
|
+
if (removeMacOSQuarantine && import_node_process.default.platform === "darwin" && (0, import_string.StringPrototypeStartsWith)(platformArch, "darwin")) {
|
|
117
105
|
try {
|
|
118
|
-
await (0,
|
|
106
|
+
await (0, import_child.spawn)("xattr", ["-d", "com.apple.quarantine", binaryPath], {
|
|
119
107
|
stdio: "ignore"
|
|
120
108
|
});
|
|
121
109
|
} catch {
|
|
@@ -131,17 +119,17 @@ async function downloadGitHubRelease(config) {
|
|
|
131
119
|
async function downloadReleaseAsset(tag, assetPattern, outputPath, repoConfig, options = {}) {
|
|
132
120
|
const { owner, repo } = repoConfig;
|
|
133
121
|
const { quiet = false } = options;
|
|
134
|
-
const downloadUrl = await (0,
|
|
122
|
+
const downloadUrl = await (0, import_github_asset_url.getReleaseAssetUrl)(tag, assetPattern, {
|
|
135
123
|
owner,
|
|
136
124
|
repo
|
|
137
125
|
});
|
|
138
126
|
if (!downloadUrl) {
|
|
139
127
|
const patternDesc = typeof assetPattern === "string" ? assetPattern : "matching pattern";
|
|
140
|
-
throw new
|
|
128
|
+
throw new import_error.ErrorCtor(`Asset ${patternDesc} not found in release ${tag}`);
|
|
141
129
|
}
|
|
142
|
-
const path =
|
|
143
|
-
await (0,
|
|
144
|
-
await (0,
|
|
130
|
+
const path = (0, import_path.getNodePath)();
|
|
131
|
+
await (0, import_safe.safeMkdir)(path.dirname(outputPath));
|
|
132
|
+
await (0, import_download.httpDownload)(downloadUrl, outputPath, {
|
|
145
133
|
logger: quiet ? void 0 : logger,
|
|
146
134
|
progressInterval: 10,
|
|
147
135
|
retries: 2,
|