Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
259 commits
Select commit Hold shift + click to select a range
5ff49e0
install: print the update row for catalog entries moved by bun update…
robobun Aug 17, 2026
28bd7ed
install: keep workspace and other non-registry entries as written on …
robobun Aug 17, 2026
d551e67
Report package.json sync in the bun update summary instead of (no cha…
robobun Aug 17, 2026
027facc
install: ignore leading whitespace in dist-tag, bare folder and local…
robobun Aug 17, 2026
ca65078
install: apply both "overrides" and "resolutions" when package.json h…
robobun Aug 17, 2026
e0ebdb4
Fix package-lock.json migration for scope registries configured witho…
robobun Aug 17, 2026
3792fb1
install: record package.json trustedDependencies when migrating a loc…
robobun Aug 17, 2026
d18e84c
install: keep the pnpm block in package.json when migrating from pnpm…
robobun Aug 17, 2026
50c0b93
install: fix default-trusted lifecycle scripts being blocked after ya…
robobun Aug 17, 2026
de8bd47
install: migrate the whole pnpm-workspace.yaml catalog into bun.lock …
robobun Aug 17, 2026
aa8ac26
install: migrate a package's own file: directories from package-lock.…
robobun Aug 17, 2026
a0c28d1
install: fail the isolated install when a link: dependency's target i…
robobun Aug 17, 2026
b1ebbec
install: read the package.json of a file: dependency declared by a lo…
robobun Aug 17, 2026
66fd8c1
install: keep file: folder paths declared by git and tarball packages…
robobun Aug 17, 2026
ceec1c9
install: drop the query string and fragment from a tarball URL's extr…
robobun Aug 17, 2026
f5dc5bc
install: cache file: tarballs under the integrity the lockfile pins (…
robobun Aug 17, 2026
3050b80
install: reject tarball, folder and git packages whose package.json n…
robobun Aug 17, 2026
2e280b9
install: read git+git:// resolutions back from bun.lock (#38798)
robobun Aug 17, 2026
c4681f4
install: stop aborting on link: specifiers and patch paths longer tha…
robobun Aug 17, 2026
aae3b85
cli: stop aborting on --cwd and --tsconfig-override values longer tha…
robobun Aug 17, 2026
8ecb292
install: stop panicking when the cache directory setting does not fit…
robobun Aug 17, 2026
c3c6e24
install: stop panicking when a progress bar name is longer than its b…
robobun Aug 17, 2026
2f450e5
install: stop aborting on linked package names that do not fit the sy…
robobun Aug 17, 2026
900279d
install: fail verification instead of panicking when <alias>/package.…
robobun Aug 17, 2026
a4d081c
pm ls --all: stop panicking on resolutions longer than 512 bytes (#38…
robobun Aug 17, 2026
f6055e8
pack/publish: stop panicking on package.json bin and files entries lo…
robobun Aug 17, 2026
2feba6e
install: stop panicking on bin values longer than the path buffer (#3…
robobun Aug 17, 2026
6be3885
pm view: escape control characters coming from the registry (#38536)
robobun Aug 17, 2026
5acc84e
install: redact secrets in the URLs printed for failed manifest and t…
robobun Aug 17, 2026
d4308e4
install: redact the registry URL in the manifest/tarball URL errors a…
robobun Aug 17, 2026
058682f
install: keep registry credentials across redirects to the same hostn…
robobun Aug 17, 2026
d8148a0
install: read NPM_CONFIG_USERCONFIG as the user-level .npmrc path (#3…
robobun Aug 17, 2026
0648a52
publish, pm whoami: route registry requests through http_proxy (#38075)
robobun Aug 17, 2026
1595a78
install: make BUN_CONFIG_NO_VERIFY disable integrity verification whe…
robobun Aug 17, 2026
a6f3a86
install: honor BUN_CONFIG_MAX_HTTP_REQUESTS (#38744)
robobun Aug 17, 2026
aa52210
url: emit a single slash in href_without_auth() for root-path registr…
robobun Aug 17, 2026
dc0e10c
url: parse the host of a protocol-relative URL instead of leaving the…
robobun Aug 17, 2026
efff492
install: say --network-concurrency defaults to 64 in help and docs (#…
robobun Aug 17, 2026
3d96a1d
http: report a refused HTTP client thread as an error instead of a cr…
robobun Aug 17, 2026
878f8c2
bun why: print a package's dependents once, mark repeats as *deduped …
robobun Aug 17, 2026
1ed8550
pm pkg: support arrays in set and delete (#38025)
robobun Aug 17, 2026
3ad2bcf
install: format versions with the string buffer they were parsed from…
robobun Aug 17, 2026
0da2a66
audit: list --production, --omit, --dry-run and --cwd in bun audit --…
robobun Aug 17, 2026
943d87a
install: say --ignore-scripts also skips trusted dependencies' script…
robobun Aug 17, 2026
6e9b4b6
pm: polish dedupe, prune, pm ls and pm licenses output (#38952)
robobun Aug 17, 2026
5f82df2
prune: add --check, a CI gate that exits 1 when anything would be rem…
robobun Aug 17, 2026
c046da3
audit fix: never downgrade a package out of its installed release lin…
robobun Aug 17, 2026
090ab60
run: set npm_package_name/version/json and npm_config_local_prefix pe…
robobun Aug 17, 2026
b26ca3c
publish: resolve a relative tarball path against the invoking directo…
robobun Aug 17, 2026
a65c1eb
pack, publish: include entries on filesystems whose readdir reports D…
robobun Aug 17, 2026
a0e4a6b
pack: build the tarball in memory and write it out only once it is co…
robobun Aug 17, 2026
69a7f28
publish: accept basic auth credentials from .npmrc and bunfig.toml (#…
robobun Aug 17, 2026
1673399
install(hoisted): track replaced folders instead of deferring and re-…
robobun Aug 17, 2026
e67f81c
Resolve dangling node_modules symlinks as missing modules; isolated i…
robobun Aug 17, 2026
094347b
install: link packages into a staging directory and rename them into …
robobun Aug 17, 2026
0f8652c
bunx: resolve directories.bin relative to the package (#39096)
robobun Aug 17, 2026
c208fe4
install: drop the duplicated warn: label from the verbose tarball ret…
robobun Aug 17, 2026
888eb0d
install: fix node-gyp shim PATH entry after tempdir falls back to cac…
autofix-ci[bot] Aug 17, 2026
1182bbf
install: set npm_config_local_prefix and npm_package_config_* for lif…
robobun Aug 17, 2026
3bd93d0
install: install a git dependency's devDependencies before running it…
robobun Aug 17, 2026
3d9f186
install: skip root lifecycle scripts and the yarn.lock write under --…
robobun Aug 17, 2026
378e014
install: remove the same-filesystem probe from $TMPDIR when the renam…
robobun Aug 17, 2026
b66aeba
install: print version before package name in the minimum-release-age…
robobun Aug 17, 2026
40a5909
install: support name@version entries in minimumReleaseAgeExcludes (#…
alii Aug 17, 2026
8e43989
install: do not resolve an exact version from an abbreviated manifest…
robobun Aug 17, 2026
4dbbd3b
semver: print the build tag from the printed version's buffer in the …
robobun Aug 17, 2026
0e7bc38
test(install): serve URL tarball dependencies locally in bun-install.…
robobun Aug 17, 2026
d9e8908
test(install): keep bun-update-security-provider on the dummy registr…
robobun Aug 17, 2026
b0cbf87
test(install): give each long-label bun patch test its own install ca…
robobun Aug 17, 2026
4a95e9e
test(bunx): install fixture packages from a local registry instead of…
robobun Aug 17, 2026
9154925
test(install): don't require the refetched manifest to be cached befo…
robobun Aug 17, 2026
606fa28
test(install): normalize the registry URL, not the bare port, in the …
robobun Aug 17, 2026
c993618
test(harness): let verdaccio pick its own port and fail start() when …
robobun Aug 17, 2026
abb11b0
test(install): run overrides.test.ts against the local registry (#39022)
robobun Aug 17, 2026
7bd4bbf
test(install): serve GitHub tarball fixtures locally in the GHSA-pfwx…
robobun Aug 17, 2026
f5a2381
test: add a harness isRoot and skip the chmod-based ls and Bun.file c…
robobun Aug 17, 2026
67ebfdb
install: schedule the Windows hardlink task through the allocation's …
robobun Aug 17, 2026
ecbcc87
install.ps1: make the "another bun.exe is already in PATH" check work…
robobun Aug 17, 2026
6dd1b74
install: don't issue openat2/fchmodat2 on Android (seccomp SIGSYS) (#…
robobun Aug 17, 2026
ebaa3ab
bunx: serialize concurrent installs into the shared cache dir with a …
robobun Aug 17, 2026
e71ecab
install: resolve deferred `*` peers after their siblings, not on arri…
robobun Aug 17, 2026
d07fe12
install: rebind ranged peers whose target the saved tree drops (#38768)
robobun Aug 17, 2026
c322e02
install: resolve a range onto an existing version only when every ins…
robobun Aug 17, 2026
a28a204
install: keep a bundle's dependency out of a slot the bundling packag…
robobun Aug 17, 2026
286db7b
test(install): pin both no-deps versions instead of racing a range ag…
robobun Aug 17, 2026
45bc543
install: resolve file: dependencies loaded from the lockfile relative…
robobun Aug 17, 2026
0782bd8
install: link file: dependencies of registry packages from inside the…
robobun Aug 17, 2026
2a25218
install: bound isolated store entry names; tarball URL credentials; f…
Jarred-Sumner Aug 17, 2026
8615ba7
install: refuse local tarball dependencies declared by packages insta…
robobun Aug 17, 2026
f6f08d8
install(hoisted): link a file: override applied to a dependency of an…
robobun Aug 17, 2026
ba53b82
install: refuse link: paths with .. or an absolute path declared by p…
robobun Aug 17, 2026
7c5f7be
install: report ENAMETOOLONG for a --cwd value that does not fit the …
robobun Aug 17, 2026
a000fd0
install: escape control characters in the bun pm untrusted/trust scri…
robobun Aug 17, 2026
311d13a
install: reject dependency names containing control characters (#38615)
robobun Aug 17, 2026
d769b50
http: escape control characters in the verbose request/response trace…
robobun Aug 17, 2026
96939c3
pm licenses: escape control characters in text output, including the …
robobun Aug 17, 2026
4208268
install: send credentials embedded in a registry URL that comes from …
robobun Aug 17, 2026
3819c86
install: send Basic auth for a registry URL with a username but no pa…
robobun Aug 17, 2026
07d5691
pm view: match the requested range against the buffer it was parsed f…
robobun Aug 17, 2026
bc1fdc0
install: remove the node_modules links of a renamed or removed worksp…
dylan-conway Aug 17, 2026
1b83d8f
Fix bun install through subst drives, cross-drive junctions, and syml…
robobun Aug 17, 2026
42790a5
mega-merge fixup: drop duplicate definitions from add/add merges (get…
Jarred-Sumner Aug 17, 2026
9341d22
install: keep bundled peer edges on their own bun.lock entry when loa…
robobun Aug 17, 2026
85ddaf3
install: keep bundleDependencies from every dependency group when par…
robobun Aug 17, 2026
f718dc6
Hold a transitive update that would re-fork a deduped package (#38919)
robobun Aug 17, 2026
e7e9d15
install: stop hoisting a dependency cycle forever (#38976)
robobun Aug 17, 2026
806c0cc
install: warn when the hoisted tree serves a peer from a root copy ou…
robobun Aug 17, 2026
9e16aa9
install: stamp lockfileVersion 1 on new bun.lock files (#38741)
robobun Aug 17, 2026
4513393
test(install): establish the warm manifest cache before the unmet pee…
robobun Aug 17, 2026
3123ac3
install: keep the workspace: spelling given to bun add <member>@works…
robobun Aug 17, 2026
a61a054
install: ignore leading whitespace wherever a dependency literal is c…
robobun Aug 17, 2026
3069d7a
install: migrate pnpm onlyBuiltDependencies and report blocked script…
robobun Aug 17, 2026
5974687
install: name folder, tarball and git packages without a package.json…
robobun Aug 17, 2026
1a2abf9
install: reinstall node_modules when switching between the isolated a…
robobun Aug 17, 2026
4dfe3d0
resolver: make auto-install use the version range from the project's …
robobun Aug 17, 2026
e6abb9b
install: import pnpm-workspace.yaml even without a migratable pnpm-lo…
robobun Aug 17, 2026
234864f
install: skip workspace members whose package.json has no name (#38781)
robobun Aug 17, 2026
14d0592
install: migrate pnpm importer rows in the shape package.json parsing…
robobun Aug 17, 2026
e381220
install: migrate workspace packages from yarn.lock (#38878)
robobun Aug 17, 2026
f02dbde
install: fix yarn.lock migration panic on tarball URLs with "/-/" rig…
robobun Aug 17, 2026
8149293
install: name yarn.lock npm: alias packages after the alias spec, not…
robobun Aug 17, 2026
c9769ce
install: migrate yarn.lock registry entries that have no resolved fie…
robobun Aug 17, 2026
3eddf99
install: skip yarn.lock entries the migration cannot build a resoluti…
robobun Aug 17, 2026
9c8d7f3
install: migrate npm-shrinkwrap.json like package-lock.json (#38861)
robobun Aug 17, 2026
e2cf8c4
install: write a migrated lockfile and its package.json edits only wh…
robobun Aug 17, 2026
3448f0a
install: resolve file: and link: dependencies on the same directory a…
robobun Aug 17, 2026
1a5d1cf
install: stop leaking the displaced cache folder when a tarball is re…
robobun Aug 17, 2026
6c3cec6
install: fail the isolated install with ENAMETOOLONG when a link: tar…
robobun Aug 17, 2026
c07f07c
install: do not abort when $XDG_CONFIG_HOME or $HOME is too long for …
robobun Aug 17, 2026
e52625c
install: stop aborting on -g when $BUN_INSTALL, $XDG_CACHE_HOME or $H…
robobun Aug 17, 2026
eac007b
install: keep linking the remaining bins when one bin or one dependen…
robobun Aug 17, 2026
6c1231a
pack: report an error instead of panicking when --destination does no…
robobun Aug 17, 2026
9ef4c85
publish: report ENAMETOOLONG for a tarball path that does not fit the…
robobun Aug 17, 2026
1c0fcb4
install: replace an existing manifest cache entry atomically instead …
robobun Aug 17, 2026
bbb6ec0
Make bun pm ls list installed packages instead of lockfile entries (#…
robobun Aug 17, 2026
151394c
cli: load a package.json and name a lockfile load step from one place…
alii Aug 17, 2026
59d0465
install: warn when a registry manifest advertises an integrity hash b…
robobun Aug 17, 2026
cfc2fbd
install: describe the real --save default in bun link and bun unlink …
robobun Aug 17, 2026
1cb7329
audit fix: report and rewrite the overrides rule that holds a vulnera…
robobun Aug 17, 2026
c5a0cac
publish, pm whoami, audit: honor NODE_TLS_REJECT_UNAUTHORIZED=0 like …
robobun Aug 17, 2026
b4ff8be
install: escape control characters in resolutions, specifiers, bin na…
robobun Aug 17, 2026
7fd4f9f
install: redact credentials in tarball and git URLs printed as resolu…
robobun Aug 17, 2026
e1e85d6
Normalize http_proxy/https_proxy env values through the WHATWG parser…
robobun Aug 17, 2026
a55d541
install: resolve .npmrc //host/ credentials by request URL (#38800)
robobun Aug 17, 2026
4940a4f
Add --why to bun dedupe to show one level of dependents under each ro…
robobun Aug 17, 2026
fb80e2d
publish: honor publishConfig.registry and publishConfig["@scope:regis…
robobun Aug 17, 2026
66ea950
pack: skip bins reached through symlinks; publish: do not read the re…
robobun Aug 17, 2026
8badee9
pack: store tarball entry names byte for byte (#38715)
robobun Aug 17, 2026
1795b12
pack: pack a file listed under several bin names once, strip the trai…
robobun Aug 17, 2026
c25f95a
pm pack: resolve relative --destination and --filename against the in…
robobun Aug 17, 2026
336133a
pack/publish: resolve workspace: and catalog: specs from the package.…
robobun Aug 17, 2026
9cd2ed6
pack: publish workspace: directory dependencies as the workspace's ve…
robobun Aug 17, 2026
4447340
pack: publish workspace: aliases as npm: aliases (#38788)
robobun Aug 17, 2026
93fa66e
install: link over an empty directory left at node_modules/<pkg> with…
robobun Aug 17, 2026
05f0c62
install(windows): store an absolute target in .bunx shims when the pa…
robobun Aug 17, 2026
b7c8a29
run, install: honor --no-env-file / --env-file for scripts run throug…
robobun Aug 17, 2026
a8f1780
install: warn instead of failing when minimum-release-age blocks a pe…
robobun Aug 17, 2026
65321d0
semver: record cloned prerelease/build tag offsets against the whole …
robobun Aug 17, 2026
007e7c5
auto-install: report why a root dependency could not be resolved (#38…
robobun Aug 17, 2026
8d9e760
install: only open package.json for writing in the commands that rewr…
robobun Aug 17, 2026
875a8f1
install: filter optionalDependencies by libc and record it in the loc…
robobun Aug 17, 2026
74e4d91
test(install): speed up bun-install.test.ts and tighten its assertion…
robobun Aug 17, 2026
cf01325
test(install): run bun-install-registry.test.ts concurrently and tigh…
robobun Aug 17, 2026
297ed01
test/docker: wait for the docker daemon in the coordinator instead of…
robobun Aug 17, 2026
394b889
mega-merge fixup: cargo fmt + prettier after conflict resolution
Jarred-Sumner Aug 17, 2026
0adcafa
mega-merge fixup: reconcile APIs across folded PRs (MinimumReleaseAge…
Jarred-Sumner Aug 17, 2026
2381dc6
mega-merge fixup: clippy
Jarred-Sumner Aug 17, 2026
b56be59
audit: fail closed on malformed registry responses and escape control…
robobun Aug 17, 2026
0ac90d6
mega-merge fixup: test expectations + isolated link:/blocked-scripts …
Jarred-Sumner Aug 17, 2026
aa6cb64
Revert "install: install a git dependency's devDependencies before ru…
Jarred-Sumner Aug 17, 2026
e4a0624
mega-merge fixup: isolated link: targets are joined with .. resolutio…
Jarred-Sumner Aug 17, 2026
1d7592c
mega-merge fixup: dedupe --why rows carry the (removed)/(downgrade) m…
Jarred-Sumner Aug 17, 2026
60834d5
mega-merge fixup: registry test helpers take their test's dir; expect…
Jarred-Sumner Aug 17, 2026
f37ed31
mega-merge fixup: a workspace member dropped from the glob no longer …
Jarred-Sumner Aug 17, 2026
4cd0c85
mega-merge fixup: remaining registry-test scaffolding; update-row wor…
Jarred-Sumner Aug 17, 2026
a62c1b2
mega-merge fixup: yarn migrator composes #38795/#38948/#38985/#39001;…
Jarred-Sumner Aug 17, 2026
6270cbe
mega-merge fixup: pnpm block is kept in package.json (#38775) in the …
Jarred-Sumner Aug 17, 2026
3d4477f
mega-merge fixup: long-bin tests use per-test dirs under describe.con…
Jarred-Sumner Aug 17, 2026
0359cdc
[autofix.ci] apply automated fixes
autofix-ci[bot] Aug 17, 2026
96fd819
simplify(s3-linkers): drop PackageInstall::destination_dir_subpath_bu…
Jarred-Sumner Aug 17, 2026
57be4ae
simplify(s3-linkers): Installer path builders share append_store_path…
Jarred-Sumner Aug 17, 2026
fc2f23c
simplify(s3-linkers): share remove_link, shrink StoreKey resolution c…
Jarred-Sumner Aug 17, 2026
d997e8c
simplify(s3-linkers): tighten unlink_failed_optional_entries and coun…
Jarred-Sumner Aug 17, 2026
e7f9496
simplify(s3-linkers): DependencyBinaries carries (entry, error) tuple…
Jarred-Sumner Aug 17, 2026
11761e8
simplify(s3-linkers): contained_folders returns the two bitsets; empt…
Jarred-Sumner Aug 17, 2026
8cc893c
simplify(s3-linkers): remove_stale_workspace_links builds each path f…
Jarred-Sumner Aug 17, 2026
9af2977
simplify(s3-linkers): keep link_to_hidden_node_modules as on main; bu…
Jarred-Sumner Aug 17, 2026
b220be0
simplify(s3-linkers): install into StagingPath through a re-targeted …
Jarred-Sumner Aug 17, 2026
5d7286f
simplify(s3-linkers): qualify path::SEP so the import is not unused o…
Jarred-Sumner Aug 17, 2026
c82f934
simplify(s3-linkers): LinkPathTooLong always names the failing entry'…
Jarred-Sumner Aug 17, 2026
9bface2
simplify(s2-paths): one checked NUL-terminated join and one normalize…
Jarred-Sumner Aug 17, 2026
4291290
simplify(s2-paths): tighten sys additions (flock, Android gate, DT_UN…
Jarred-Sumner Aug 17, 2026
5a6c48a
simplify(s2-paths): bunx install lock as one InstallLock type; trim d…
Jarred-Sumner Aug 17, 2026
1038bdd
simplify(s2-paths): compact ScriptArgv, pack bin-kind walk and destin…
Jarred-Sumner Aug 17, 2026
ee5da43
simplify(s2-paths): make_path NotFound guard without splitting arms; …
Jarred-Sumner Aug 17, 2026
7339b54
simplify(s2-paths): inline --cwd and --network-concurrency handling b…
Jarred-Sumner Aug 17, 2026
d4ff1d7
simplify(s2-paths): bin.rs candidate loop and rel_buf spill via resol…
Jarred-Sumner Aug 17, 2026
466acbf
simplify(s2-paths): compact test-only highway stubs in resolve_path
Jarred-Sumner Aug 17, 2026
758d7b3
simplify(s2-paths): arrays instead of vec! in resolve_path test
Jarred-Sumner Aug 17, 2026
799a650
simplify(s2-paths): compact Windows flock and the keep_existing_desti…
Jarred-Sumner Aug 17, 2026
68532c3
simplify(s2-paths): parse_platform_flag returns the value directly
Jarred-Sumner Aug 17, 2026
bc6fac8
simplify(s2-paths): tuple variants for pack Substitution
Jarred-Sumner Aug 17, 2026
4f9285e
simplify(s2-paths): keep --save/--no-save in SHARED_TAIL_PARAMS, spli…
Jarred-Sumner Aug 17, 2026
088e2fc
simplify(s2-paths): publish reads a too-long tarball path through the…
Jarred-Sumner Aug 17, 2026
3a3fea3
simplify(s2-paths): clippy (needless borrow, or_fun_call)
Jarred-Sumner Aug 17, 2026
c75cf51
simplify(s2-paths): bunx directories.bin path in two lines
Jarred-Sumner Aug 17, 2026
83ca65a
simplify(s2-paths): note the SHARED_TAIL_PARAMS prefix LINK_SHARED_PA…
Jarred-Sumner Aug 17, 2026
caab328
simplify(s5-net-pm): collapse registry/credential helpers, redirect p…
Jarred-Sumner Aug 17, 2026
fcb24ff
simplify(s5-net-pm): flatten pm pkg Segment, shorter escape sites, tr…
Jarred-Sumner Aug 17, 2026
161be97
simplify(s5-net-pm): tighter override-rule matching in audit fix edit…
Jarred-Sumner Aug 17, 2026
eb44523
simplify(s5-net-pm): one entry list for minimumReleaseAgeExcludes, sh…
Jarred-Sumner Aug 17, 2026
5b747d0
simplify(s5-net-pm): one error arm for invalid publishConfig registry…
Jarred-Sumner Aug 17, 2026
04ee65a
simplify(s1-resolver): one Lockfile::package_satisfying for the name+…
Jarred-Sumner Aug 17, 2026
3e713fe
simplify(s1-resolver): drop Plan/Planned/InstanceEdges/DirectRow scaf…
Jarred-Sumner Aug 17, 2026
e0f4a09
simplify(s1-resolver): update_transitive direct rows use keep_locked_…
Jarred-Sumner Aug 17, 2026
69d743e
simplify(s1-resolver): share is_named_update_row between should_updat…
Jarred-Sumner Aug 17, 2026
ed69d51
simplify(s1-resolver): runTasks manifest-fallback helpers as free fns…
Jarred-Sumner Aug 17, 2026
e523102
simplify(s1-resolver): Tree.rs comment trims; bind_peer relies on def…
Jarred-Sumner Aug 17, 2026
e212fd6
simplify(s1-resolver): bun.lock.rs: fold FoundAt into RowEvidence, Wo…
Jarred-Sumner Aug 17, 2026
7e92966
simplify(s1-resolver): bun.lock.rs comment trims
Jarred-Sumner Aug 17, 2026
cfbf752
simplify(s1-resolver): one add_dependency_error for enqueue_dependenc…
Jarred-Sumner Aug 17, 2026
54bc94a
simplify(s1-resolver): Package.rs drops the name check is_safe_lockfi…
Jarred-Sumner Aug 17, 2026
70dcc0a
simplify(s1-resolver): comment trims across the cluster
Jarred-Sumner Aug 17, 2026
e7a1d30
simplify(s1-resolver): edges_on_instances walks reachability with loc…
Jarred-Sumner Aug 17, 2026
1da5488
simplify(s1-resolver): small tidies (packages_named in verify_data, d…
Jarred-Sumner Aug 17, 2026
eda2b88
simplify(s1-resolver): rebase_folder_dependencies without the field d…
Jarred-Sumner Aug 17, 2026
73f438b
simplify(s1-resolver): tree_printer print_catalog_entry_updates witho…
Jarred-Sumner Aug 17, 2026
6400e11
simplify(s1-resolver): would_revive_leftover walks rows by id
Jarred-Sumner Aug 17, 2026
d63b606
simplify(s1-resolver): prune HoistedTree memoizes Installed in one vec
Jarred-Sumner Aug 17, 2026
70eb8e9
simplify(s1-resolver): Lockfile::declarer_of for the three declarer-l…
Jarred-Sumner Aug 17, 2026
7649b37
simplify(s1-resolver): dedupe --why: inline the dependents cap
Jarred-Sumner Aug 17, 2026
e0bb850
simplify(s1-resolver): flatter invalid-name check in enqueue
Jarred-Sumner Aug 17, 2026
d0b00a6
simplify(s1-resolver): Tree.rs out-of-range root peer check via try_npm
Jarred-Sumner Aug 17, 2026
eeff6b2
simplify(s4-migration): yarn.rs — one dependency-section table, fold …
Jarred-Sumner Aug 17, 2026
4921339
simplify(s4-migration): pnpm.rs — merge-based copy_into_root, one wor…
Jarred-Sumner Aug 17, 2026
6c30170
simplify(s4-migration): workspace_manifests + WorkspaceMap — reuse fo…
Jarred-Sumner Aug 17, 2026
0ca611e
simplify(s4-migration): CatalogMap/OverrideMap/migration/PackageJSONE…
Jarred-Sumner Aug 17, 2026
e48dfc2
simplify(s4-migration): yarn/pnpm second pass — Binder becomes a fn, …
Jarred-Sumner Aug 17, 2026
211a000
simplify(s4-migration): npm_lock/PackageJSONEditor/pnpm — parse_platf…
Jarred-Sumner Aug 17, 2026
ccb8e96
simplify(s4-migration): yarn.rs is_registry_entry alias strip
Jarred-Sumner Aug 17, 2026
648ae0f
simplify(s4-migration): shorten two remaining multi-line comments
Jarred-Sumner Aug 17, 2026
4f9f3b4
simplify(s4-migration): migration.rs report line
Jarred-Sumner Aug 17, 2026
256407b
simplify(s4-migration): apply review findings
Jarred-Sumner Aug 17, 2026
98c14ef
mega-merge fixup: CI failures — skip the pthread_create shim under AS…
Jarred-Sumner Aug 17, 2026
8cb91a3
simplify: use fmt::for_terminal at the remaining EscapeControlChars(r…
Jarred-Sumner Aug 17, 2026
f425845
audit fix: rewrite a matching rule in resolutions too when package.js…
Jarred-Sumner Aug 17, 2026
40ad36d
prettier
Jarred-Sumner Aug 17, 2026
9f1c929
review: write the migrated package.json before the lockfile (#38754 c…
Jarred-Sumner Aug 17, 2026
b99be10
review: pm migrate on a read-only package.json fails before bun.lock …
Jarred-Sumner Aug 17, 2026
65bd4dd
Merge remote-tracking branch 'origin/main' into claude/install-mega
Jarred-Sumner Aug 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
128 changes: 99 additions & 29 deletions completions/bun-cli.json
Original file line number Diff line number Diff line change
Expand Up @@ -373,7 +373,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -427,7 +427,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -694,7 +694,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -748,7 +748,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -1025,7 +1025,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -1079,7 +1079,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -1296,7 +1296,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -1351,7 +1351,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -1411,6 +1411,14 @@
"required": false,
"multiple": false
},
{
"name": "libc",
"description": "Override libc for optional dependencies (e.g., glibc, musl, * for all)",
"hasValue": true,
"valueType": "val",
"required": false,
"multiple": false
},
{
"name": "help",
"shortName": "h",
Expand Down Expand Up @@ -1530,6 +1538,38 @@
"valueType": "val",
"required": false,
"multiple": false
},
{
"name": "production",
"shortName": "p",
"description": "Skip packages that are only needed by devDependencies (alias: --prod)",
"hasValue": false,
"required": false,
"multiple": false
},
{
"name": "omit",
"description": "Skip packages that are only needed by the given dependency types: dev, optional, or peer (repeatable)",
"hasValue": true,
"valueType": "val",
"required": false,
"multiple": false
},
{
"name": "cwd",
"description": "Set a specific cwd",
"hasValue": true,
"valueType": "val",
"required": false,
"multiple": false
},
{
"name": "help",
"shortName": "h",
"description": "Print this help menu",
"hasValue": false,
"required": false,
"multiple": false
}
],
"positionalArgs": [
Expand Down Expand Up @@ -1714,7 +1754,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -1769,7 +1809,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -1829,6 +1869,14 @@
"required": false,
"multiple": false
},
{
"name": "libc",
"description": "Override libc for optional dependencies (e.g., glibc, musl, * for all)",
"hasValue": true,
"valueType": "val",
"required": false,
"multiple": false
},
{
"name": "help",
"shortName": "h",
Expand All @@ -1843,6 +1891,13 @@
"hasValue": false,
"required": false,
"multiple": false
},
{
"name": "why",
"description": "Also list each version's dependents and the ranges they asked for",
"hasValue": false,
"required": false,
"multiple": false
}
],
"positionalArgs": [
Expand Down Expand Up @@ -1885,6 +1940,13 @@
"required": false,
"multiple": false
},
{
"name": "check",
"description": "Exit with code 1 if node_modules has packages that can be removed, without deleting anything",
"hasValue": false,
"required": false,
"multiple": false
},
{
"name": "os",
"description": "Prune for a different operating system than the current one",
Expand All @@ -1901,6 +1963,14 @@
"required": false,
"multiple": false
},
{
"name": "libc",
"description": "Prune for a different libc than the current one",
"hasValue": true,
"valueType": "val",
"required": false,
"multiple": false
},
{
"name": "linker",
"description": "Prune a node_modules installed with the given linker (one of \"isolated\" or \"hoisted\")",
Expand Down Expand Up @@ -1950,7 +2020,7 @@
"type": "string"
}
],
"examples": ["bun prune", "bun prune --production", "bun prune --dry-run"],
"examples": ["bun prune", "bun prune --production", "bun prune --dry-run", "bun prune --check"],
"usage": "Usage: bun prune [flags]",
"documentationUrl": "https://bun.com/docs/pm/cli/prune.",
"dynamicCompletions": {}
Expand Down Expand Up @@ -2095,7 +2165,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -2149,7 +2219,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -2269,14 +2339,14 @@
},
{
"name": "no-save",
"description": "Don't update package.json or save a lockfile",
"description": "Don't update package.json or save a lockfile (the default)",
"hasValue": false,
"required": false,
"multiple": false
},
{
"name": "save",
"description": "Save to package.json (true by default)",
"description": "Update package.json and save a lockfile (false by default)",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -2378,7 +2448,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -2432,7 +2502,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -2492,7 +2562,7 @@
"completionType": "package"
}
],
"examples": ["bun link", "bun link <package>"],
"examples": ["bun link", "bun link <package>", "bun link --save <package>"],
"usage": "Usage: bun link [flags] [<packages>]",
"documentationUrl": "https://bun.com/docs/cli/link.",
"dynamicCompletions": {}
Expand Down Expand Up @@ -2528,14 +2598,14 @@
},
{
"name": "no-save",
"description": "Don't update package.json or save a lockfile",
"description": "Don't update package.json or save a lockfile (the default)",
"hasValue": false,
"required": false,
"multiple": false
},
{
"name": "save",
"description": "Save to package.json (true by default)",
"description": "Update package.json and save a lockfile (false by default)",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -2637,7 +2707,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -2691,7 +2761,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -2889,7 +2959,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -2943,7 +3013,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -3194,7 +3264,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -3248,7 +3318,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down Expand Up @@ -3368,7 +3438,7 @@
},
"ls": {
"name": "ls",
"description": "list the dependency tree according to the current lockfile",
"description": "list the tree of installed dependencies",
"flags": [],
"positionalArgs": []
},
Expand Down Expand Up @@ -3623,7 +3693,7 @@
},
{
"name": "ignore-scripts",
"description": "Skip lifecycle scripts in the project's package.json (dependency scripts are never run)",
"description": "Skip lifecycle scripts for all packages, including the project's package.json and trusted dependencies",
"hasValue": false,
"required": false,
"multiple": false
Expand Down Expand Up @@ -3677,7 +3747,7 @@
},
{
"name": "network-concurrency",
"description": "Maximum number of concurrent network requests (default 48)",
"description": "Maximum number of concurrent network requests (default 64)",
"hasValue": true,
"valueType": "val",
"required": false,
Expand Down
7 changes: 5 additions & 2 deletions completions/bun.bash
Original file line number Diff line number Diff line change
Expand Up @@ -104,8 +104,8 @@ _bun_completions() {
PACKAGE_OPTIONS[SHARED_OPTIONS_LONG]="--config --yarn --production --frozen-lockfile --no-save --dry-run --force --cache-dir --no-cache --silent --verbose --global --cwd --backend --link-native-bins --help";
PACKAGE_OPTIONS[SHARED_OPTIONS_SHORT]="-c -y -p -f -g";

PACKAGE_OPTIONS[DEDUPE_OPTIONS_LONG]="--check";
PACKAGE_OPTIONS[PRUNE_OPTIONS_LONG]="--production --prod --omit --filter --dry-run --os --cpu --linker --silent --cwd --help";
PACKAGE_OPTIONS[DEDUPE_OPTIONS_LONG]="--check --why";
PACKAGE_OPTIONS[PRUNE_OPTIONS_LONG]="--production --prod --omit --filter --dry-run --check --os --cpu --libc --linker --silent --cwd --help";
PACKAGE_OPTIONS[PRUNE_OPTIONS_SHORT]="-p -P -F -h";
PACKAGE_OPTIONS[AUDIT_OPTIONS_LONG]="--json --audit-level --ignore --prod --production --omit --dry-run --latest --cwd --help";
PACKAGE_OPTIONS[AUDIT_OPTIONS_SHORT]="-L";
Expand Down Expand Up @@ -139,6 +139,9 @@ _bun_completions() {
--linker)
COMPREPLY=( $(compgen -W "isolated hoisted" -- "${cur_word}") );
return;;
--libc)
COMPREPLY=( $(compgen -W "glibc musl" -- "${cur_word}") );
return;;
--cwd|--public-dir)
COMPREPLY=( $(compgen -d -- "${cur_word}" ));
return;;
Expand Down
Loading
Loading