@socketsecurity/lib 6.0.3 → 6.0.5
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 +22 -0
- package/dist/_virtual/_rolldown/runtime.js +45 -0
- package/dist/abort/signal.js +53 -59
- package/dist/ai/discover.js +110 -110
- package/dist/ai/profiles.js +94 -65
- package/dist/ai/spawn.js +172 -194
- package/dist/ai/types.js +1 -17
- package/dist/ai/worktree.js +160 -183
- package/dist/ansi/constants.js +16 -38
- package/dist/ansi/strip.js +44 -41
- package/dist/archives/_internal.js +64 -73
- package/dist/archives/detect.js +30 -43
- package/dist/archives/extract.js +43 -50
- package/dist/archives/tar.js +197 -228
- package/dist/archives/types.js +1 -17
- package/dist/archives/zip.js +85 -121
- package/dist/argv/flag-predicates.js +203 -101
- package/dist/argv/flag-types.js +96 -113
- package/dist/argv/parse-args-string.d.ts +16 -14
- package/dist/argv/parse-args-string.js +42 -39
- package/dist/argv/parse.js +145 -163
- package/dist/arrays/_internal.js +65 -48
- package/dist/arrays/chunk.js +51 -40
- package/dist/arrays/join.js +87 -35
- package/dist/arrays/predicates.js +46 -28
- package/dist/arrays/unique.js +45 -31
- package/dist/bin/_internal.js +34 -42
- package/dist/bin/check-primordials.js +175 -233
- package/dist/bin/check.js +51 -72
- package/dist/bin/exec.js +70 -74
- package/dist/bin/find.js +151 -134
- package/dist/bin/resolve.js +180 -246
- package/dist/bin/shadow.js +24 -33
- package/dist/bin/socket-lib.js +51 -73
- package/dist/bin/types.js +1 -17
- package/dist/bin/which.js +211 -146
- package/dist/cacache/_internal.js +25 -40
- package/dist/cacache/clear.js +79 -72
- package/dist/cacache/read.js +48 -46
- package/dist/cacache/tmp.js +29 -36
- package/dist/cacache/types.js +1 -17
- package/dist/cacache/write.js +43 -48
- package/dist/cache/ttl/store.js +232 -288
- package/dist/cache/ttl/types.js +1 -17
- package/dist/checks/primordials-defaults.js +83 -89
- package/dist/checks/primordials.js +225 -277
- package/dist/colors/convert.js +45 -37
- package/dist/colors/palette.js +88 -45
- package/dist/colors/socket-palette.js +74 -84
- package/dist/colors/types.js +1 -17
- package/dist/compression/_internal.js +57 -72
- package/dist/compression/brotli.js +94 -127
- package/dist/compression/gzip.js +95 -121
- package/dist/compression/types.js +1 -17
- package/dist/constants/agents.js +61 -113
- package/dist/constants/encoding.js +19 -42
- package/dist/constants/github.js +12 -30
- package/dist/constants/licenses.js +48 -63
- package/dist/constants/lifecycle-script-names.js +31 -45
- package/dist/constants/maintained-node-versions.js +22 -37
- package/dist/constants/node.js +226 -167
- package/dist/constants/package-default-node-range.js +16 -41
- package/dist/constants/package-default-socket-categories.js +12 -30
- package/dist/constants/packages.js +77 -126
- package/dist/constants/platform.js +27 -49
- package/dist/constants/sentinels.js +23 -48
- package/dist/constants/socket.js +42 -87
- package/dist/constants/testing.js +15 -34
- package/dist/constants/time.js +16 -36
- package/dist/constants/typescript.js +32 -52
- package/dist/cover/code.js +111 -142
- package/dist/cover/formatters.js +118 -101
- package/dist/cover/type.js +50 -76
- package/dist/cover/types.js +1 -17
- package/dist/crypto/hash.js +54 -46
- package/dist/debug/_internal.js +62 -71
- package/dist/debug/caller-info.js +53 -64
- package/dist/debug/namespace.js +80 -90
- package/dist/debug/output.js +172 -188
- package/dist/debug/types.js +1 -17
- package/dist/dlx/_internal.js +24 -43
- package/dist/dlx/arborist.js +162 -160
- package/dist/dlx/binary-cache.js +228 -200
- package/dist/dlx/binary-download.js +172 -211
- package/dist/dlx/binary-resolution.js +165 -157
- package/dist/dlx/binary-types.js +1 -17
- package/dist/dlx/binary.js +149 -189
- package/dist/dlx/cache.js +45 -30
- package/dist/dlx/detect.js +245 -159
- package/dist/dlx/dir.js +67 -51
- package/dist/dlx/firewall.js +62 -100
- package/dist/dlx/lockfile.js +122 -127
- package/dist/dlx/manifest.js +264 -274
- package/dist/dlx/package.js +241 -244
- package/dist/dlx/packages.js +99 -96
- package/dist/dlx/paths.js +73 -59
- package/dist/dlx/spec.js +52 -60
- package/dist/dlx/types.js +1 -17
- package/dist/eco/cargo/lockfile-format.js +19 -36
- package/dist/eco/cargo/manifest-format.js +17 -35
- package/dist/eco/cargo/parse-lockfile.js +210 -237
- package/dist/eco/manifest/analyze-lockfile.js +46 -63
- package/dist/eco/manifest/detect-format.js +66 -90
- package/dist/eco/manifest/find-packages.js +39 -64
- package/dist/eco/manifest/get-package-versions.js +27 -48
- package/dist/eco/manifest/get-package.js +21 -40
- package/dist/eco/manifest/manifest-error.js +14 -35
- package/dist/eco/manifest/parse-lockfile.js +40 -86
- package/dist/eco/manifest/parse-manifest.js +26 -43
- package/dist/eco/manifest/parse.js +26 -47
- package/dist/eco/manifest/types.js +1 -17
- package/dist/eco/npm/bun/exec.js +23 -32
- package/dist/eco/npm/manifest-format.js +21 -35
- package/dist/eco/npm/npm/exec.js +51 -61
- package/dist/eco/npm/npm/extract-package-name-from-path.js +28 -50
- package/dist/eco/npm/npm/flags.js +80 -52
- package/dist/eco/npm/npm/lockfile-format.js +21 -40
- package/dist/eco/npm/npm/parse-git-url.js +26 -40
- package/dist/eco/npm/npm/parse-lockfile.js +184 -210
- package/dist/eco/npm/parse-package-json.js +71 -102
- package/dist/eco/npm/pnpm/detect-pnpm-version.js +22 -43
- package/dist/eco/npm/pnpm/exec.js +51 -62
- package/dist/eco/npm/pnpm/flags.js +75 -68
- package/dist/eco/npm/pnpm/lockfile-format.js +19 -36
- package/dist/eco/npm/pnpm/parse-lockfile.js +235 -259
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v5.js +37 -47
- package/dist/eco/npm/pnpm/parse-pnpm-package-id-v6-v9.js +36 -49
- package/dist/eco/npm/script.js +82 -90
- package/dist/eco/npm/vlt/exec.js +24 -32
- package/dist/eco/npm/yarnpkg/yarn/exec.js +60 -59
- package/dist/eco/npm/yarnpkg/yarn/lockfile-format.js +20 -36
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +194 -242
- package/dist/eco/npm/yarnpkg/yarn/parse-yarn-descriptor.js +37 -61
- package/dist/eco/purl.js +50 -60
- package/dist/eco/types.js +1 -17
- package/dist/effects/pulse-frames.js +64 -65
- package/dist/effects/shimmer-keyframes.js +71 -52
- package/dist/effects/shimmer-terminal.js +81 -50
- package/dist/effects/shimmer.js +290 -153
- package/dist/env/boolean.js +42 -43
- package/dist/env/case-insensitive.js +54 -39
- package/dist/env/ci.js +29 -31
- package/dist/env/debug.js +28 -31
- package/dist/env/github.js +144 -59
- package/dist/env/home.js +38 -31
- package/dist/env/locale.js +59 -39
- package/dist/env/node-auth-token.js +28 -31
- package/dist/env/node-env.js +28 -31
- package/dist/env/npm.js +94 -47
- package/dist/env/number.js +50 -51
- package/dist/env/package-manager.js +95 -83
- package/dist/env/path.js +28 -31
- package/dist/env/pre-commit.js +30 -32
- package/dist/env/proxy.js +121 -122
- package/dist/env/rewire.js +204 -96
- package/dist/env/shell.js +28 -31
- package/dist/env/socket-cli.js +233 -81
- package/dist/env/socket.js +521 -156
- package/dist/env/string.js +43 -44
- package/dist/env/temp-dir.js +59 -39
- package/dist/env/term.js +28 -31
- package/dist/env/test.js +65 -43
- package/dist/env/types.js +1 -17
- package/dist/env/windows.js +78 -43
- package/dist/env/xdg.js +62 -39
- package/dist/errors/message.js +40 -46
- package/dist/errors/predicates.js +61 -49
- package/dist/errors/stack.js +24 -36
- package/dist/events/exit/_internal.js +86 -103
- package/dist/events/exit/handler.js +48 -55
- package/dist/events/exit/intercept.js +49 -70
- package/dist/events/exit/lifecycle.js +92 -101
- package/dist/events/exit/signals.js +25 -31
- package/dist/events/exit/types.js +1 -17
- package/dist/events/warning/handler.js +43 -40
- package/dist/events/warning/suppress.js +111 -90
- package/dist/external/@npmcli/package-json/lib/read-package.js +132 -153
- package/dist/external/@npmcli/package-json/lib/sort.js +73 -105
- package/dist/external/@npmcli/package-json.js +12705 -15140
- package/dist/external/@npmcli/promise-spawn.js +451 -472
- package/dist/external/@sinclair/typebox/value.js +7443 -9002
- package/dist/external/@sinclair/typebox.js +7516 -7885
- package/dist/external/@socketregistry/is-unicode-supported.js +31 -39
- package/dist/external/@socketregistry/packageurl-js.js +6127 -7369
- package/dist/external/@socketregistry/yocto-spinner.js +394 -455
- package/dist/external/@yarnpkg/extensions.js +435 -1022
- package/dist/external/adm-zip.js +2313 -2673
- package/dist/external/debug.js +700 -687
- package/dist/external/external-pack.js +2658 -3171
- package/dist/external/fast-sort.js +124 -138
- package/dist/external/get-east-asian-width.js +70 -64
- package/dist/external/libnpmexec.js +28 -31
- package/dist/external/npm-pack.js +43617 -50137
- package/dist/external/p-map.js +198 -222
- package/dist/external/pico-pack.js +6735 -7304
- package/dist/external/pony-cause.js +143 -139
- package/dist/external/shell-quote.js +226 -0
- package/dist/external/spdx-pack.js +1283 -1403
- package/dist/external/streaming-iterables.js +835 -1052
- package/dist/external/tar-fs.js +2769 -3048
- package/dist/external/which.js +267 -251
- package/dist/external/yargs-parser.js +851 -1074
- package/dist/external-tools/bazel/asset-names.js +98 -90
- package/dist/external-tools/bazel/from-download.js +52 -46
- package/dist/external-tools/bazel/from-path.js +27 -38
- package/dist/external-tools/bazel/read-bazel-version-file.js +35 -57
- package/dist/external-tools/bazel/resolve-asset-url.js +24 -39
- package/dist/external-tools/bazel/resolve-bazel-version.js +34 -56
- package/dist/external-tools/bazel/resolve.js +44 -58
- package/dist/external-tools/bazel/types.js +1 -17
- package/dist/external-tools/cdxgen/asset-names.js +59 -66
- package/dist/external-tools/cdxgen/from-download.js +52 -80
- package/dist/external-tools/cdxgen/from-path.js +19 -37
- package/dist/external-tools/cdxgen/from-vfs.js +22 -43
- package/dist/external-tools/cdxgen/resolve.js +48 -63
- package/dist/external-tools/cdxgen/types.js +1 -17
- package/dist/external-tools/from-download.js +107 -67
- package/dist/external-tools/janus/asset-names.js +44 -51
- package/dist/external-tools/janus/from-download.js +45 -70
- package/dist/external-tools/janus/from-path.js +19 -37
- package/dist/external-tools/janus/from-vfs.js +22 -43
- package/dist/external-tools/janus/resolve.js +45 -63
- package/dist/external-tools/janus/types.js +1 -17
- package/dist/external-tools/jre/asset-names.js +109 -82
- package/dist/external-tools/jre/detect-platform-arch.js +25 -49
- package/dist/external-tools/jre/from-download.js +71 -67
- package/dist/external-tools/jre/from-java-home.js +27 -54
- package/dist/external-tools/jre/from-path.js +27 -49
- package/dist/external-tools/jre/from-vfs.js +39 -60
- package/dist/external-tools/jre/resolve.js +55 -68
- package/dist/external-tools/jre/types.js +1 -17
- package/dist/external-tools/manifest.js +130 -150
- package/dist/external-tools/opengrep/asset-names.js +60 -72
- package/dist/external-tools/opengrep/from-download.js +58 -80
- package/dist/external-tools/opengrep/from-path.js +19 -37
- package/dist/external-tools/opengrep/from-vfs.js +23 -43
- package/dist/external-tools/opengrep/resolve.js +43 -63
- package/dist/external-tools/opengrep/types.js +1 -17
- package/dist/external-tools/sbt/asset-names.js +21 -30
- package/dist/external-tools/sbt/from-download.js +50 -61
- package/dist/external-tools/sbt/from-path.js +23 -38
- package/dist/external-tools/sbt/from-vfs.js +30 -44
- package/dist/external-tools/sbt/resolve.js +45 -63
- package/dist/external-tools/sbt/types.js +1 -17
- package/dist/external-tools/synp/asset-names.js +11 -29
- package/dist/external-tools/synp/from-download.js +24 -41
- package/dist/external-tools/synp/from-path.js +19 -37
- package/dist/external-tools/synp/from-vfs.js +22 -43
- package/dist/external-tools/synp/resolve.js +43 -62
- package/dist/external-tools/synp/types.js +1 -17
- package/dist/external-tools/trivy/asset-names.js +51 -62
- package/dist/external-tools/trivy/from-download.js +42 -64
- package/dist/external-tools/trivy/from-path.js +19 -37
- package/dist/external-tools/trivy/from-vfs.js +22 -43
- package/dist/external-tools/trivy/resolve.js +43 -63
- package/dist/external-tools/trivy/types.js +1 -17
- package/dist/external-tools/trufflehog/asset-names.js +54 -66
- package/dist/external-tools/trufflehog/from-download.js +44 -62
- package/dist/external-tools/trufflehog/from-path.js +21 -37
- package/dist/external-tools/trufflehog/from-vfs.js +26 -43
- package/dist/external-tools/trufflehog/resolve.js +43 -63
- package/dist/external-tools/trufflehog/types.js +1 -17
- package/dist/external-tools/uv/asset-names.js +64 -74
- package/dist/external-tools/uv/from-download.js +44 -65
- package/dist/external-tools/uv/from-path.js +19 -37
- package/dist/external-tools/uv/from-vfs.js +22 -43
- package/dist/external-tools/uv/resolve.js +42 -63
- package/dist/external-tools/uv/types.js +1 -17
- package/dist/fs/_internal.js +40 -42
- package/dist/fs/access.js +57 -54
- package/dist/fs/encoding.js +80 -97
- package/dist/fs/find-up.js +126 -125
- package/dist/fs/inspect.js +168 -99
- package/dist/fs/path-cache.js +31 -32
- package/dist/fs/read-dir.js +102 -79
- package/dist/fs/read-file.js +177 -118
- package/dist/fs/read-json-cache.js +150 -134
- package/dist/fs/read-json.js +172 -187
- package/dist/fs/resolve-module.js +35 -58
- package/dist/fs/safe.js +278 -169
- package/dist/fs/types.js +1 -17
- package/dist/fs/unique.js +52 -48
- package/dist/fs/validate.js +56 -40
- package/dist/fs/write-json.js +109 -75
- package/dist/git/_internal.js +251 -216
- package/dist/git/changed.js +191 -74
- package/dist/git/repo.js +118 -104
- package/dist/git/staged.js +172 -62
- package/dist/git/types.js +1 -17
- package/dist/git/unstaged.js +175 -62
- package/dist/github/constants.js +25 -33
- package/dist/github/errors.js +46 -38
- package/dist/github/fetch.js +137 -82
- package/dist/github/ghsa.js +217 -151
- package/dist/github/refs-cache.js +54 -43
- package/dist/github/refs-graphql.js +97 -89
- package/dist/github/refs-rest.js +70 -101
- package/dist/github/refs.js +105 -64
- package/dist/github/token.js +96 -48
- package/dist/github/types.js +1 -17
- package/dist/globs/_internal.js +73 -82
- package/dist/globs/defaults.js +40 -59
- package/dist/globs/match.js +93 -77
- package/dist/globs/matcher.js +104 -92
- package/dist/globs/stream.js +43 -55
- package/dist/globs/types.js +1 -17
- package/dist/http-request/_internal.js +11 -38
- package/dist/http-request/browser-fetch.js +19 -29
- package/dist/http-request/browser.js +188 -206
- package/dist/http-request/checksums.js +101 -65
- package/dist/http-request/download-types.js +1 -17
- package/dist/http-request/download.js +195 -196
- package/dist/http-request/errors.js +39 -47
- package/dist/http-request/headers.js +95 -80
- package/dist/http-request/http-request.js +10 -35
- package/dist/http-request/node.js +71 -97
- package/dist/http-request/request-attempt.js +232 -285
- package/dist/http-request/request-types.js +1 -17
- package/dist/http-request/request.js +106 -108
- package/dist/http-request/response-reader.js +47 -51
- package/dist/http-request/response-types.js +22 -38
- package/dist/http-request/user-agent.js +73 -55
- package/dist/integrity.js +105 -106
- package/dist/ipc/_internal.js +34 -48
- package/dist/ipc/directory.js +55 -63
- package/dist/ipc/paths.js +52 -45
- package/dist/ipc/types.js +1 -17
- package/dist/ipc/write.js +81 -74
- package/dist/ipc-cli/get.js +29 -56
- package/dist/ipc-cli/types.js +1 -17
- package/dist/json/edit.js +182 -242
- package/dist/json/format.js +202 -103
- package/dist/json/parse.js +206 -109
- package/dist/json/types.js +1 -17
- package/dist/links/create.js +93 -60
- package/dist/links/types.js +1 -17
- package/dist/logger/_internal.js +109 -73
- package/dist/logger/browser.js +45 -56
- package/dist/logger/colors.js +31 -49
- package/dist/logger/console.js +89 -112
- package/dist/logger/default.js +19 -33
- package/dist/logger/logger.js +5 -29
- package/dist/logger/node.js +793 -854
- package/dist/logger/symbols-builder.js +54 -56
- package/dist/logger/symbols.js +135 -118
- package/dist/logger/types.js +1 -17
- package/dist/memo/_internal.js +39 -49
- package/dist/memo/async.js +133 -117
- package/dist/memo/clear.js +25 -34
- package/dist/memo/decorator.js +43 -37
- package/dist/memo/memoize.js +97 -88
- package/dist/memo/once.js +42 -41
- package/dist/memo/types.js +1 -17
- package/dist/memo/weak.js +45 -41
- package/dist/node/async-hooks.js +9 -30
- package/dist/node/child-process.js +9 -30
- package/dist/node/crypto.js +9 -30
- package/dist/node/events.js +9 -30
- package/dist/node/fs-promises.js +9 -30
- package/dist/node/fs.js +9 -30
- package/dist/node/http.js +9 -30
- package/dist/node/https.js +9 -30
- package/dist/node/module.js +20 -34
- package/dist/node/os.js +9 -30
- package/dist/node/path.js +9 -30
- package/dist/node/timers-promises.js +9 -30
- package/dist/node/url.js +9 -30
- package/dist/node/util.js +9 -30
- package/dist/objects/getters.js +185 -126
- package/dist/objects/inspect.js +85 -52
- package/dist/objects/mutate.js +96 -76
- package/dist/objects/predicates.js +112 -59
- package/dist/objects/sort.js +120 -76
- package/dist/objects/types.js +1 -17
- package/dist/packages/edit-class.js +198 -265
- package/dist/packages/edit.js +79 -86
- package/dist/packages/exports.js +146 -157
- package/dist/packages/isolation.js +159 -209
- package/dist/packages/licenses.js +207 -189
- package/dist/packages/manifest.js +134 -172
- package/dist/packages/normalize.js +91 -102
- package/dist/packages/operations.d.ts +2 -0
- package/dist/packages/operations.js +283 -254
- package/dist/packages/provenance.js +195 -245
- package/dist/packages/specs.js +94 -84
- package/dist/packages/types.js +1 -17
- package/dist/packages/validation.js +49 -50
- package/dist/paths/_internal.js +82 -86
- package/dist/paths/conversion.js +112 -65
- package/dist/paths/dirnames.js +17 -42
- package/dist/paths/exts.js +23 -54
- package/dist/paths/filenames.js +21 -50
- package/dist/paths/globs.js +15 -38
- package/dist/paths/normalize.js +215 -236
- package/dist/paths/packages.js +34 -49
- package/dist/paths/predicates.js +184 -106
- package/dist/paths/resolve.js +146 -128
- package/dist/paths/rewire.js +108 -72
- package/dist/paths/socket.js +252 -132
- package/dist/paths/walk.js +55 -60
- package/dist/perf/_internal.js +10 -28
- package/dist/perf/enabled.js +21 -30
- package/dist/perf/metrics.js +81 -67
- package/dist/perf/report.js +79 -80
- package/dist/perf/timer.js +180 -126
- package/dist/perf/types.js +1 -17
- package/dist/pkg-ext/data.js +29 -82
- package/dist/pkg-ext/types.js +1 -17
- package/dist/primordials/array.js +120 -198
- package/dist/primordials/buffer.js +28 -51
- package/dist/primordials/date.js +26 -51
- package/dist/primordials/error.js +33 -59
- package/dist/primordials/function.js +21 -41
- package/dist/primordials/globals.js +25 -48
- package/dist/primordials/json.js +14 -30
- package/dist/primordials/map-set.js +88 -152
- package/dist/primordials/math.js +59 -116
- package/dist/primordials/number.js +41 -76
- package/dist/primordials/object.js +56 -116
- package/dist/primordials/promise.js +28 -52
- package/dist/primordials/reflect.js +24 -52
- package/dist/primordials/regexp.js +25 -47
- package/dist/primordials/string.js +114 -167
- package/dist/primordials/symbol.js +40 -72
- package/dist/primordials/uncurry.js +38 -55
- package/dist/primordials/url.js +27 -66
- package/dist/process/_internal.js +7 -32
- package/dist/process/abort.js +29 -35
- package/dist/process/lock-instance.js +26 -30
- package/dist/process/lock-manager.js +279 -307
- package/dist/process/lock-types.js +1 -17
- package/dist/process/spawn/_internal.js +43 -55
- package/dist/process/spawn/child.js +172 -211
- package/dist/process/spawn/errors.js +116 -113
- package/dist/process/spawn/stdio.js +51 -35
- package/dist/process/spawn/types.js +1 -17
- package/dist/process/transient.js +49 -66
- package/dist/promises/_internal.js +31 -34
- package/dist/promises/iterate.js +238 -102
- package/dist/promises/options.js +123 -101
- package/dist/promises/queue.js +115 -136
- package/dist/promises/resolvers.js +77 -46
- package/dist/promises/retry.js +156 -101
- package/dist/promises/types.js +1 -17
- package/dist/regexps/escape.js +32 -30
- package/dist/regexps/hex.js +16 -33
- package/dist/regexps/spec.js +53 -81
- package/dist/releases/github-archives.js +127 -118
- package/dist/releases/github-asset-url.js +162 -146
- package/dist/releases/github-assets.js +37 -49
- package/dist/releases/github-auth.js +32 -48
- package/dist/releases/github-downloads.js +118 -138
- package/dist/releases/github-listing.js +175 -145
- package/dist/releases/github-retry-config.js +41 -47
- package/dist/releases/github-types.js +1 -17
- package/dist/releases/socket-btm.js +273 -192
- package/dist/schema/parse.js +35 -36
- package/dist/schema/types.js +1 -17
- package/dist/schema/validate.js +118 -99
- package/dist/sea/detect.js +57 -52
- package/dist/secrets/_internal.js +86 -67
- package/dist/secrets/find.js +96 -77
- package/dist/secrets/keychain.js +315 -309
- package/dist/secrets/linux.js +133 -135
- package/dist/secrets/macos.js +151 -147
- package/dist/secrets/rc.js +182 -181
- package/dist/secrets/socket-api-token.js +28 -43
- package/dist/secrets/types.js +1 -17
- package/dist/secrets/windows.js +184 -242
- package/dist/shadow/skip.js +51 -70
- package/dist/shadow/types.js +1 -17
- package/dist/shell/parse.d.ts +26 -0
- package/dist/shell/parse.js +35 -0
- package/dist/shell/quote.d.ts +19 -0
- package/dist/shell/quote.js +30 -0
- package/dist/smol/detect.js +67 -43
- package/dist/smol/http.js +33 -37
- package/dist/smol/https.js +31 -37
- package/dist/smol/manifest.js +33 -37
- package/dist/smol/path.js +33 -37
- package/dist/smol/primordial.js +35 -37
- package/dist/smol/purl.js +34 -37
- package/dist/smol/versions.js +31 -37
- package/dist/smol/vfs.js +46 -38
- package/dist/sorts/_internal.js +14 -40
- package/dist/sorts/natural.js +57 -64
- package/dist/sorts/semver.js +33 -43
- package/dist/sorts/strings.js +24 -30
- package/dist/sorts/types.js +1 -17
- package/dist/spinner/default.js +72 -63
- package/dist/spinner/format.js +86 -71
- package/dist/spinner/spinner.js +749 -797
- package/dist/spinner/types.js +1 -17
- package/dist/spinner/with.js +193 -137
- package/dist/ssri/convert.js +64 -47
- package/dist/ssri/parse.js +38 -37
- package/dist/ssri/validate.js +51 -34
- package/dist/stdio/_internal.js +50 -46
- package/dist/stdio/clear.js +208 -86
- package/dist/stdio/divider.js +170 -97
- package/dist/stdio/footer.js +116 -110
- package/dist/stdio/header.js +117 -90
- package/dist/stdio/progress.js +189 -218
- package/dist/stdio/prompts.js +244 -168
- package/dist/stdio/stderr.js +173 -78
- package/dist/stdio/stdout.js +177 -94
- package/dist/streams/parallel.js +58 -50
- package/dist/streams/transform.js +36 -45
- package/dist/strings/format.js +145 -63
- package/dist/strings/predicates.js +56 -34
- package/dist/strings/search.js +52 -42
- package/dist/strings/transform.js +113 -72
- package/dist/strings/types.js +1 -17
- package/dist/strings/width.js +89 -82
- package/dist/tables/bordered.js +81 -81
- package/dist/tables/padding.js +36 -46
- package/dist/tables/simple.js +62 -70
- package/dist/tables/types.js +1 -17
- package/dist/temporal/instant.js +72 -81
- package/dist/temporal/now.js +40 -31
- package/dist/temporal/slots.js +42 -36
- package/dist/temporal/system.js +36 -36
- package/dist/temporal/temporal.js +11 -41
- package/dist/themes/context.js +131 -69
- package/dist/themes/resolve.js +207 -132
- package/dist/themes/themes.js +225 -194
- package/dist/themes/types.js +1 -17
- package/dist/url/parse.js +48 -51
- package/dist/url/predicates.js +24 -31
- package/dist/url/search-params.js +133 -101
- package/dist/url/types.js +1 -17
- package/dist/versions/_internal.js +31 -33
- package/dist/versions/compare.js +80 -58
- package/dist/versions/modify.js +41 -39
- package/dist/versions/parse.js +88 -64
- package/dist/versions/range.js +58 -41
- package/dist/versions/types.js +1 -17
- package/dist/words/article.js +22 -30
- package/dist/words/capitalize.js +25 -34
- package/dist/words/pluralize.js +23 -31
- package/dist/words/types.js +1 -17
- package/package.json +17 -5
package/dist/git/changed.js
CHANGED
|
@@ -1,83 +1,200 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Socket Lib - Built with
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_paths_normalize = require('../paths/normalize.js');
|
|
5
|
+
const require_primordials_array = require('../primordials/array.js');
|
|
6
|
+
const require_node_path = require('../node/path.js');
|
|
7
|
+
const require_git_repo = require('./repo.js');
|
|
8
|
+
const require_git__internal = require('./_internal.js');
|
|
9
|
+
|
|
10
|
+
//#region src/git/changed.ts
|
|
11
|
+
/**
|
|
12
|
+
* @file "Anything different from HEAD" helpers — the broad-strokes `git status
|
|
13
|
+
* --porcelain` view that lumps staged, unstaged, and untracked paths
|
|
14
|
+
* together. Use these when you want a single answer to "did anything
|
|
15
|
+
* change?"; reach for `staged.ts` / `unstaged.ts` when the distinction
|
|
16
|
+
* matters.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Get all changed files including staged, unstaged, and untracked files.
|
|
20
|
+
*
|
|
21
|
+
* Uses `git status --porcelain` which returns the full working tree status with
|
|
22
|
+
* status codes: - `M` - Modified - `A` - Added - `D` - Deleted - `??` -
|
|
23
|
+
* Untracked - `R` - Renamed - `C` - Copied.
|
|
24
|
+
*
|
|
25
|
+
* This is the most comprehensive check - captures everything that differs from
|
|
26
|
+
* the last commit, including: - Files modified and staged with `git add` -
|
|
27
|
+
* Files modified but not staged - New files not yet tracked by git.
|
|
28
|
+
*
|
|
29
|
+
* Status codes are automatically stripped from the output.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ;```typescript
|
|
33
|
+
* // Get all changed files as relative paths
|
|
34
|
+
* const files = await getChangedFiles()
|
|
35
|
+
* // => ['src/foo.ts', 'src/bar.ts', 'newfile.ts']
|
|
36
|
+
*
|
|
37
|
+
* // Get absolute paths
|
|
38
|
+
* const files = await getChangedFiles({ absolute: true })
|
|
39
|
+
* // => ['/path/to/repo/src/foo.ts', ...]
|
|
40
|
+
*
|
|
41
|
+
* // Get changed files in specific directory
|
|
42
|
+
* const files = await getChangedFiles({ cwd: '/path/to/repo/src' })
|
|
43
|
+
* // => ['foo.ts', 'bar.ts']
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @param options - Options controlling path format and filtering.
|
|
47
|
+
*
|
|
48
|
+
* @returns Promise resolving to array of changed file paths.
|
|
49
|
+
*/
|
|
33
50
|
async function getChangedFiles(options) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
51
|
+
const args = require_git__internal.getGitDiffSpawnArgs(options?.cwd).all;
|
|
52
|
+
return await require_git__internal.innerDiff(args, {
|
|
53
|
+
__proto__: null,
|
|
54
|
+
...options,
|
|
55
|
+
porcelain: true
|
|
56
|
+
});
|
|
40
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* Get all changed files including staged, unstaged, and untracked files.
|
|
60
|
+
*
|
|
61
|
+
* Synchronous version of `getChangedFiles()`. Uses `git status --porcelain`
|
|
62
|
+
* which returns the full working tree status with status codes: - `M` -
|
|
63
|
+
* Modified - `A` - Added - `D` - Deleted - `??` - Untracked - `R` - Renamed -
|
|
64
|
+
* `C` - Copied.
|
|
65
|
+
*
|
|
66
|
+
* This is the most comprehensive check - captures everything that differs from
|
|
67
|
+
* the last commit, including: - Files modified and staged with `git add` -
|
|
68
|
+
* Files modified but not staged - New files not yet tracked by git.
|
|
69
|
+
*
|
|
70
|
+
* Status codes are automatically stripped from the output.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ;```typescript
|
|
74
|
+
* // Get all changed files as relative paths
|
|
75
|
+
* const files = getChangedFilesSync()
|
|
76
|
+
* // => ['src/foo.ts', 'src/bar.ts', 'newfile.ts']
|
|
77
|
+
*
|
|
78
|
+
* // Get absolute paths
|
|
79
|
+
* const files = getChangedFilesSync({ absolute: true })
|
|
80
|
+
* // => ['/path/to/repo/src/foo.ts', ...]
|
|
81
|
+
*
|
|
82
|
+
* // Get changed files in specific directory
|
|
83
|
+
* const files = getChangedFilesSync({ cwd: '/path/to/repo/src' })
|
|
84
|
+
* // => ['foo.ts', 'bar.ts']
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* @param options - Options controlling path format and filtering.
|
|
88
|
+
*
|
|
89
|
+
* @returns Array of changed file paths.
|
|
90
|
+
*/
|
|
41
91
|
function getChangedFilesSync(options) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
92
|
+
const args = require_git__internal.getGitDiffSpawnArgs(options?.cwd).all;
|
|
93
|
+
return require_git__internal.innerDiffSync(args, {
|
|
94
|
+
__proto__: null,
|
|
95
|
+
...options,
|
|
96
|
+
porcelain: true
|
|
97
|
+
});
|
|
48
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Check if a file or directory has any git changes.
|
|
101
|
+
*
|
|
102
|
+
* Checks if the given pathname has any changes including: - Staged
|
|
103
|
+
* modifications (added with `git add`) - Unstaged modifications (not yet
|
|
104
|
+
* staged) - Untracked status (new file/directory not in git)
|
|
105
|
+
*
|
|
106
|
+
* For directories, returns `true` if ANY file within the directory has changes.
|
|
107
|
+
*
|
|
108
|
+
* Symlinks in the pathname and cwd are automatically resolved using
|
|
109
|
+
* `fs.realpathSync()` before comparison.
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ;```typescript
|
|
113
|
+
* // Check if file is changed
|
|
114
|
+
* const changed = await isChanged('src/foo.ts')
|
|
115
|
+
* // => true
|
|
116
|
+
*
|
|
117
|
+
* // Check if directory has any changes
|
|
118
|
+
* const changed = await isChanged('src/')
|
|
119
|
+
* // => true (if any file in src/ is changed)
|
|
120
|
+
*
|
|
121
|
+
* // Check from different cwd
|
|
122
|
+
* const changed = await isChanged('/path/to/repo/src/foo.ts', {
|
|
123
|
+
* cwd: '/path/to/repo',
|
|
124
|
+
* })
|
|
125
|
+
* ```
|
|
126
|
+
*
|
|
127
|
+
* @param pathname - File or directory path to check.
|
|
128
|
+
* @param options - Options for the git status check.
|
|
129
|
+
*
|
|
130
|
+
* @returns Promise resolving to `true` if path has any changes, `false`
|
|
131
|
+
* otherwise.
|
|
132
|
+
*/
|
|
49
133
|
async function isChanged(pathname, options) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
134
|
+
const files = await getChangedFiles({
|
|
135
|
+
__proto__: null,
|
|
136
|
+
...options,
|
|
137
|
+
absolute: false
|
|
138
|
+
});
|
|
139
|
+
const path = /* @__PURE__ */ require_node_path.getNodePath();
|
|
140
|
+
const resolvedPathname = require_git_repo.getCachedRealpath(pathname);
|
|
141
|
+
/* c8 ignore start */
|
|
142
|
+
const baseCwd = options?.cwd ? require_git_repo.getCachedRealpath(options["cwd"]) : require_git_repo.getCwd();
|
|
143
|
+
return require_primordials_array.ArrayPrototypeIncludes(files, /* @__PURE__ */ require_paths_normalize.normalizePath(path.relative(baseCwd, resolvedPathname)));
|
|
60
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Check if a file or directory has any git changes.
|
|
147
|
+
*
|
|
148
|
+
* Synchronous version of `isChanged()`. Checks if the given pathname has any
|
|
149
|
+
* changes including: - Staged modifications (added with `git add`) - Unstaged
|
|
150
|
+
* modifications (not yet staged) - Untracked status (new file/directory not in
|
|
151
|
+
* git)
|
|
152
|
+
*
|
|
153
|
+
* For directories, returns `true` if ANY file within the directory has changes.
|
|
154
|
+
*
|
|
155
|
+
* Symlinks in the pathname and cwd are automatically resolved using
|
|
156
|
+
* `fs.realpathSync()` before comparison.
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ;```typescript
|
|
160
|
+
* // Check if file is changed
|
|
161
|
+
* const changed = isChangedSync('src/foo.ts')
|
|
162
|
+
* // => true
|
|
163
|
+
*
|
|
164
|
+
* // Check if directory has any changes
|
|
165
|
+
* const changed = isChangedSync('src/')
|
|
166
|
+
* // => true (if any file in src/ is changed)
|
|
167
|
+
*
|
|
168
|
+
* // Check from different cwd
|
|
169
|
+
* const changed = isChangedSync('/path/to/repo/src/foo.ts', {
|
|
170
|
+
* cwd: '/path/to/repo',
|
|
171
|
+
* })
|
|
172
|
+
* ```
|
|
173
|
+
*
|
|
174
|
+
* @param pathname - File or directory path to check.
|
|
175
|
+
* @param options - Options for the git status check.
|
|
176
|
+
*
|
|
177
|
+
* @returns `true` if path has any changes, `false` otherwise.
|
|
178
|
+
*/
|
|
61
179
|
function isChangedSync(pathname, options) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
180
|
+
const files = getChangedFilesSync({
|
|
181
|
+
__proto__: null,
|
|
182
|
+
...options,
|
|
183
|
+
absolute: false
|
|
184
|
+
});
|
|
185
|
+
const path = /* @__PURE__ */ require_node_path.getNodePath();
|
|
186
|
+
try {
|
|
187
|
+
const resolvedPathname = require_git_repo.getCachedRealpath(pathname);
|
|
188
|
+
/* c8 ignore start */
|
|
189
|
+
const baseCwd = options?.cwd ? require_git_repo.getCachedRealpath(options["cwd"]) : require_git_repo.getCwd();
|
|
190
|
+
return require_primordials_array.ArrayPrototypeIncludes(files, /* @__PURE__ */ require_paths_normalize.normalizePath(path.relative(baseCwd, resolvedPathname)));
|
|
191
|
+
} catch {
|
|
192
|
+
return false;
|
|
193
|
+
}
|
|
76
194
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
});
|
|
195
|
+
|
|
196
|
+
//#endregion
|
|
197
|
+
exports.getChangedFiles = getChangedFiles;
|
|
198
|
+
exports.getChangedFilesSync = getChangedFilesSync;
|
|
199
|
+
exports.isChanged = isChanged;
|
|
200
|
+
exports.isChangedSync = isChangedSync;
|
package/dist/git/repo.js
CHANGED
|
@@ -1,111 +1,125 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Socket Lib - Built with
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
var import_map_set = require("../primordials/map-set");
|
|
44
|
-
var import_fs = require("../node/fs");
|
|
45
|
-
var import_path = require("../node/path");
|
|
46
|
-
var import_fs2 = require("../node/fs");
|
|
47
|
-
var import_path2 = require("../node/path");
|
|
48
|
-
const realpathCache = new import_map_set.MapCtor();
|
|
49
|
-
const gitRootCache = new import_map_set.MapCtor();
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_runtime = require('../_virtual/_rolldown/runtime.js');
|
|
5
|
+
const require_primordials_map_set = require('../primordials/map-set.js');
|
|
6
|
+
const require_node_fs = require('../node/fs.js');
|
|
7
|
+
const require_node_path = require('../node/path.js');
|
|
8
|
+
let node_process = require("node:process");
|
|
9
|
+
node_process = require_runtime.__toESM(node_process);
|
|
10
|
+
|
|
11
|
+
//#region src/git/repo.ts
|
|
12
|
+
/**
|
|
13
|
+
* @file Git repository discovery + foundational lazy fs/path/cwd helpers shared
|
|
14
|
+
* across `git/*` leaves. Owns `findGitRoot`, the realpath cache, the cwd
|
|
15
|
+
* resolver, and the lazy `node:fs` / `node:path` loaders — pulling these
|
|
16
|
+
* together keeps the dependency direction one-way: `_internal.ts` and the
|
|
17
|
+
* public-surface leaves all import from here.
|
|
18
|
+
*/
|
|
19
|
+
const realpathCache = new require_primordials_map_set.MapCtor();
|
|
20
|
+
const gitRootCache = new require_primordials_map_set.MapCtor();
|
|
21
|
+
/**
|
|
22
|
+
* Find git repository root by walking up from the given directory.
|
|
23
|
+
*
|
|
24
|
+
* Searches for a `.git` directory or file by traversing parent directories
|
|
25
|
+
* upward until found or filesystem root is reached. Returns the original path
|
|
26
|
+
* if no git repository is found.
|
|
27
|
+
*
|
|
28
|
+
* This function is exported primarily for testing purposes.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ;```typescript
|
|
32
|
+
* const root = findGitRoot('/path/to/repo/src/subdir')
|
|
33
|
+
* // => '/path/to/repo'
|
|
34
|
+
*
|
|
35
|
+
* const notFound = findGitRoot('/not/a/repo')
|
|
36
|
+
* // => '/not/a/repo'
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* @param startPath - Directory path to start searching from.
|
|
40
|
+
*
|
|
41
|
+
* @returns Git repository root path, or `startPath` if not found.
|
|
42
|
+
*/
|
|
50
43
|
function findGitRoot(startPath) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
currentPath = parentPath;
|
|
75
|
-
}
|
|
44
|
+
const fs = /* @__PURE__ */ require_node_fs.getNodeFs();
|
|
45
|
+
const path = /* @__PURE__ */ require_node_path.getNodePath();
|
|
46
|
+
/* c8 ignore start */
|
|
47
|
+
const cached = gitRootCache.get(startPath);
|
|
48
|
+
if (cached) {
|
|
49
|
+
if (fs.existsSync(path.join(cached, ".git"))) return cached;
|
|
50
|
+
gitRootCache.delete(startPath);
|
|
51
|
+
}
|
|
52
|
+
/* c8 ignore stop */
|
|
53
|
+
let currentPath = startPath;
|
|
54
|
+
while (true) {
|
|
55
|
+
try {
|
|
56
|
+
const gitPath = path.join(currentPath, ".git");
|
|
57
|
+
if (fs.existsSync(gitPath)) {
|
|
58
|
+
gitRootCache.set(startPath, currentPath);
|
|
59
|
+
return currentPath;
|
|
60
|
+
}
|
|
61
|
+
} catch {}
|
|
62
|
+
const parentPath = path.dirname(currentPath);
|
|
63
|
+
if (parentPath === currentPath) return startPath;
|
|
64
|
+
currentPath = parentPath;
|
|
65
|
+
}
|
|
76
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Get the real path with caching to avoid repeated filesystem calls. Validates
|
|
69
|
+
* cache with existsSync() which is cheaper than realpathSync().
|
|
70
|
+
*
|
|
71
|
+
* ENOENT/ENOTDIR are re-thrown because the caller explicitly passed a path they
|
|
72
|
+
* expect to exist — swallowing these would turn "file not found" into a silent
|
|
73
|
+
* no-op. Other errors (EACCES, EPERM, EIO) fall back to the input path since
|
|
74
|
+
* they can happen on container/overlay filesystems where the path exists but
|
|
75
|
+
* realpath resolution is restricted.
|
|
76
|
+
*/
|
|
77
77
|
function getCachedRealpath(pathname) {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
return resolved;
|
|
78
|
+
const fs = /* @__PURE__ */ require_node_fs.getNodeFs();
|
|
79
|
+
const cached = realpathCache.get(pathname);
|
|
80
|
+
/* c8 ignore start */
|
|
81
|
+
if (cached) {
|
|
82
|
+
if (fs.existsSync(cached)) return cached;
|
|
83
|
+
realpathCache.delete(pathname);
|
|
84
|
+
}
|
|
85
|
+
/* c8 ignore stop */
|
|
86
|
+
let resolved;
|
|
87
|
+
try {
|
|
88
|
+
resolved = fs.realpathSync(pathname);
|
|
89
|
+
} catch (e) {
|
|
90
|
+
const code = e.code;
|
|
91
|
+
if (code === "ENOENT" || code === "ENOTDIR") throw e;
|
|
92
|
+
resolved = pathname;
|
|
93
|
+
}
|
|
94
|
+
/* c8 ignore stop */
|
|
95
|
+
realpathCache.set(pathname, resolved);
|
|
96
|
+
return resolved;
|
|
98
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* Get the current working directory for git operations.
|
|
100
|
+
*
|
|
101
|
+
* Returns the real path to handle symlinks correctly. This is important because
|
|
102
|
+
* symlinked directories like `/tmp -> /private/tmp` can cause path mismatches
|
|
103
|
+
* when comparing git output.
|
|
104
|
+
*
|
|
105
|
+
* @example
|
|
106
|
+
* ;```typescript
|
|
107
|
+
* const cwd = getCwd()
|
|
108
|
+
* // In /tmp (symlink to /private/tmp):
|
|
109
|
+
* // => '/private/tmp'
|
|
110
|
+
* ```
|
|
111
|
+
*
|
|
112
|
+
* @returns The resolved real path of `process.cwd()`.
|
|
113
|
+
*/
|
|
99
114
|
function getCwd() {
|
|
100
|
-
|
|
115
|
+
return getCachedRealpath(node_process.default.cwd());
|
|
101
116
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
});
|
|
117
|
+
|
|
118
|
+
//#endregion
|
|
119
|
+
exports.findGitRoot = findGitRoot;
|
|
120
|
+
exports.getCachedRealpath = getCachedRealpath;
|
|
121
|
+
exports.getCwd = getCwd;
|
|
122
|
+
exports.getFs = require_node_fs.getNodeFs;
|
|
123
|
+
exports.getPath = require_node_path.getNodePath;
|
|
124
|
+
exports.gitRootCache = gitRootCache;
|
|
125
|
+
exports.realpathCache = realpathCache;
|