bun-types 1.3.2-canary.20251105T140650 → 1.3.2
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/bun.d.ts +102 -6
- package/docs/README.md +28 -0
- package/docs/bundler/bytecode.mdx +465 -0
- package/docs/bundler/{css.md → css.mdx} +97 -101
- package/docs/bundler/esbuild.mdx +253 -0
- package/docs/bundler/{executables.md → executables.mdx} +130 -221
- package/docs/bundler/fullstack.mdx +1064 -0
- package/docs/bundler/{hmr.md → hot-reloading.mdx} +74 -79
- package/docs/bundler/{html.md → html-static.mdx} +148 -111
- package/docs/bundler/index.mdx +1499 -0
- package/docs/bundler/loaders.mdx +356 -0
- package/docs/bundler/{macros.md → macros.mdx} +83 -84
- package/docs/bundler/minifier.mdx +1306 -0
- package/docs/bundler/plugins.mdx +411 -0
- package/docs/feedback.mdx +85 -0
- package/docs/guides/binary/{arraybuffer-to-array.md → arraybuffer-to-array.mdx} +3 -1
- package/docs/guides/binary/{arraybuffer-to-blob.md → arraybuffer-to-blob.mdx} +3 -1
- package/docs/guides/binary/{arraybuffer-to-buffer.md → arraybuffer-to-buffer.mdx} +3 -1
- package/docs/guides/binary/{arraybuffer-to-string.md → arraybuffer-to-string.mdx} +3 -1
- package/docs/guides/binary/{arraybuffer-to-typedarray.md → arraybuffer-to-typedarray.mdx} +3 -1
- package/docs/guides/binary/{blob-to-arraybuffer.md → blob-to-arraybuffer.mdx} +3 -1
- package/docs/guides/binary/{blob-to-dataview.md → blob-to-dataview.mdx} +3 -1
- package/docs/guides/binary/{blob-to-stream.md → blob-to-stream.mdx} +3 -1
- package/docs/guides/binary/{blob-to-string.md → blob-to-string.mdx} +3 -1
- package/docs/guides/binary/{blob-to-typedarray.md → blob-to-typedarray.mdx} +3 -1
- package/docs/guides/binary/{buffer-to-arraybuffer.md → buffer-to-arraybuffer.mdx} +3 -1
- package/docs/guides/binary/{buffer-to-blob.md → buffer-to-blob.mdx} +3 -1
- package/docs/guides/binary/{buffer-to-readablestream.md → buffer-to-readablestream.mdx} +3 -1
- package/docs/guides/binary/{buffer-to-string.md → buffer-to-string.mdx} +3 -1
- package/docs/guides/binary/{buffer-to-typedarray.md → buffer-to-typedarray.mdx} +3 -1
- package/docs/guides/binary/{dataview-to-string.md → dataview-to-string.mdx} +3 -1
- package/docs/guides/binary/{typedarray-to-arraybuffer.md → typedarray-to-arraybuffer.mdx} +3 -1
- package/docs/guides/binary/{typedarray-to-blob.md → typedarray-to-blob.mdx} +3 -1
- package/docs/guides/binary/{typedarray-to-buffer.md → typedarray-to-buffer.mdx} +3 -1
- package/docs/guides/binary/{typedarray-to-dataview.md → typedarray-to-dataview.mdx} +3 -1
- package/docs/guides/binary/{typedarray-to-readablestream.md → typedarray-to-readablestream.mdx} +3 -1
- package/docs/guides/binary/{typedarray-to-string.md → typedarray-to-string.mdx} +3 -1
- package/docs/guides/deployment/aws-lambda.mdx +204 -0
- package/docs/guides/deployment/digital-ocean.mdx +161 -0
- package/docs/guides/deployment/google-cloud-run.mdx +197 -0
- package/docs/guides/deployment/{railway.md → railway.mdx} +42 -54
- package/docs/guides/deployment/render.mdx +82 -0
- package/docs/guides/deployment/vercel.mdx +99 -0
- package/docs/guides/ecosystem/{astro.md → astro.mdx} +16 -6
- package/docs/guides/ecosystem/{discordjs.md → discordjs.mdx} +21 -18
- package/docs/guides/ecosystem/{docker.md → docker.mdx} +25 -14
- package/docs/guides/ecosystem/{drizzle.md → drizzle.mdx} +32 -22
- package/docs/guides/ecosystem/{edgedb.md → edgedb.mdx} +63 -34
- package/docs/guides/ecosystem/{elysia.md → elysia.mdx} +11 -11
- package/docs/guides/ecosystem/{express.md → express.mdx} +12 -9
- package/docs/guides/ecosystem/{hono.md → hono.mdx} +16 -8
- package/docs/guides/ecosystem/{mongoose.md → mongoose.mdx} +26 -21
- package/docs/guides/ecosystem/{neon-drizzle.md → neon-drizzle.mdx} +49 -35
- package/docs/guides/ecosystem/{neon-serverless-postgres.md → neon-serverless-postgres.mdx} +16 -11
- package/docs/guides/ecosystem/{nextjs.md → nextjs.mdx} +18 -10
- package/docs/guides/ecosystem/{nuxt.md → nuxt.mdx} +45 -11
- package/docs/guides/ecosystem/{pm2.md → pm2.mdx} +7 -9
- package/docs/guides/ecosystem/prisma-postgres.mdx +169 -0
- package/docs/guides/ecosystem/prisma.mdx +164 -0
- package/docs/guides/ecosystem/{qwik.md → qwik.mdx} +18 -11
- package/docs/guides/ecosystem/{react.md → react.mdx} +9 -7
- package/docs/guides/ecosystem/{remix.md → remix.mdx} +45 -26
- package/docs/guides/ecosystem/{sentry.md → sentry.mdx} +7 -5
- package/docs/guides/ecosystem/{solidstart.md → solidstart.mdx} +21 -13
- package/docs/guides/ecosystem/{ssr-react.md → ssr-react.mdx} +9 -11
- package/docs/guides/ecosystem/{stric.md → stric.mdx} +16 -17
- package/docs/guides/ecosystem/{sveltekit.md → sveltekit.mdx} +42 -29
- package/docs/guides/ecosystem/{systemd.md → systemd.mdx} +27 -26
- package/docs/guides/ecosystem/upstash.mdx +87 -0
- package/docs/guides/ecosystem/{vite.md → vite.mdx} +20 -14
- package/docs/guides/html-rewriter/{extract-links.md → extract-links.mdx} +11 -7
- package/docs/guides/html-rewriter/{extract-social-meta.md → extract-social-meta.mdx} +6 -2
- package/docs/guides/http/{cluster.md → cluster.mdx} +10 -7
- package/docs/guides/http/{fetch-unix.md → fetch-unix.mdx} +5 -3
- package/docs/guides/http/{fetch.md → fetch.mdx} +5 -3
- package/docs/guides/http/{file-uploads.md → file-uploads.mdx} +18 -15
- package/docs/guides/http/{hot.md → hot.mdx} +9 -7
- package/docs/guides/http/{proxy.md → proxy.mdx} +7 -5
- package/docs/guides/http/{server.md → server.mdx} +4 -2
- package/docs/guides/http/{simple.md → simple.mdx} +4 -2
- package/docs/guides/http/{stream-file.md → stream-file.mdx} +6 -4
- package/docs/guides/http/{stream-iterator.md → stream-iterator.mdx} +5 -3
- package/docs/guides/http/{stream-node-streams-in-bun.md → stream-node-streams-in-bun.mdx} +4 -2
- package/docs/guides/http/{tls.md → tls.mdx} +5 -3
- package/docs/guides/index.mdx +10 -0
- package/docs/guides/install/{add-dev.md → add-dev.mdx} +8 -6
- package/docs/guides/install/add-git.mdx +38 -0
- package/docs/guides/install/{add-optional.md → add-optional.mdx} +7 -5
- package/docs/guides/install/{add-peer.md → add-peer.mdx} +13 -11
- package/docs/guides/install/{add-tarball.md → add-tarball.mdx} +7 -5
- package/docs/guides/install/{add.md → add.mdx} +12 -10
- package/docs/guides/install/{azure-artifacts.md → azure-artifacts.mdx} +15 -12
- package/docs/guides/{runtime/cicd.md → install/cicd.mdx} +13 -13
- package/docs/guides/install/{custom-registry.md → custom-registry.mdx} +6 -4
- package/docs/guides/install/{from-npm-install-to-bun-install.md → from-npm-install-to-bun-install.mdx} +50 -34
- package/docs/guides/install/{git-diff-bun-lockfile.md → git-diff-bun-lockfile.mdx} +14 -11
- package/docs/guides/install/{jfrog-artifactory.md → jfrog-artifactory.mdx} +4 -4
- package/docs/guides/install/{npm-alias.md → npm-alias.mdx} +6 -4
- package/docs/guides/install/{registry-scope.md → registry-scope.mdx} +6 -4
- package/docs/guides/install/{trusted.md → trusted.mdx} +22 -18
- package/docs/guides/install/{workspaces.md → workspaces.mdx} +13 -13
- package/docs/guides/install/{yarnlock.md → yarnlock.mdx} +15 -9
- package/docs/guides/process/{argv.md → argv.mdx} +17 -9
- package/docs/guides/process/{ctrl-c.md → ctrl-c.mdx} +4 -2
- package/docs/guides/process/{ipc.md → ipc.mdx} +13 -10
- package/docs/guides/process/{nanoseconds.md → nanoseconds.mdx} +3 -1
- package/docs/guides/process/{os-signals.md → os-signals.mdx} +3 -1
- package/docs/guides/process/{spawn-stderr.md → spawn-stderr.mdx} +4 -1
- package/docs/guides/process/{spawn-stdout.md → spawn-stdout.mdx} +3 -1
- package/docs/guides/process/{spawn.md → spawn.mdx} +3 -1
- package/docs/guides/process/{stdin.md → stdin.mdx} +15 -7
- package/docs/guides/read-file/{arraybuffer.md → arraybuffer.mdx} +5 -3
- package/docs/guides/read-file/{buffer.md → buffer.mdx} +4 -2
- package/docs/guides/read-file/{exists.md → exists.mdx} +4 -2
- package/docs/guides/read-file/{json.md → json.mdx} +4 -2
- package/docs/guides/read-file/{mime.md → mime.mdx} +3 -1
- package/docs/guides/read-file/{stream.md → stream.mdx} +3 -1
- package/docs/guides/read-file/{string.md → string.mdx} +3 -1
- package/docs/guides/read-file/{uint8array.md → uint8array.mdx} +3 -1
- package/docs/guides/read-file/{watch.md → watch.mdx} +6 -8
- package/docs/guides/runtime/{build-time-constants.md → build-time-constants.mdx} +24 -22
- package/docs/guides/{install/cicd.md → runtime/cicd.mdx} +11 -7
- package/docs/guides/runtime/{codesign-macos-executable.md → codesign-macos-executable.mdx} +14 -9
- package/docs/guides/runtime/{define-constant.md → define-constant.mdx} +20 -16
- package/docs/guides/runtime/{delete-directory.md → delete-directory.mdx} +5 -3
- package/docs/guides/runtime/{delete-file.md → delete-file.mdx} +4 -2
- package/docs/guides/runtime/{heap-snapshot.md → heap-snapshot.mdx} +5 -3
- package/docs/guides/runtime/{import-html.md → import-html.mdx} +4 -2
- package/docs/guides/runtime/{import-json.md → import-json.mdx} +6 -4
- package/docs/guides/runtime/{import-toml.md → import-toml.mdx} +5 -3
- package/docs/guides/runtime/{import-yaml.md → import-yaml.mdx} +9 -7
- package/docs/guides/runtime/{read-env.md → read-env.mdx} +10 -5
- package/docs/guides/runtime/{set-env.md → set-env.mdx} +14 -10
- package/docs/guides/runtime/{shell.md → shell.mdx} +6 -4
- package/docs/guides/runtime/{timezone.md → timezone.mdx} +10 -7
- package/docs/guides/runtime/{tsconfig-paths.md → tsconfig-paths.mdx} +5 -3
- package/docs/guides/runtime/{typescript.md → typescript.mdx} +8 -6
- package/docs/guides/runtime/{vscode-debugger.md → vscode-debugger.mdx} +12 -11
- package/docs/guides/runtime/{web-debugger.md → web-debugger.mdx} +39 -18
- package/docs/guides/streams/{node-readable-to-arraybuffer.md → node-readable-to-arraybuffer.mdx} +3 -1
- package/docs/guides/streams/{node-readable-to-blob.md → node-readable-to-blob.mdx} +3 -1
- package/docs/guides/streams/{node-readable-to-json.md → node-readable-to-json.mdx} +3 -1
- package/docs/guides/streams/{node-readable-to-string.md → node-readable-to-string.mdx} +3 -1
- package/docs/guides/streams/{node-readable-to-uint8array.md → node-readable-to-uint8array.mdx} +3 -1
- package/docs/guides/streams/{to-array.md → to-array.mdx} +3 -1
- package/docs/guides/streams/{to-arraybuffer.md → to-arraybuffer.mdx} +3 -1
- package/docs/guides/streams/{to-blob.md → to-blob.mdx} +3 -1
- package/docs/guides/streams/{to-buffer.md → to-buffer.mdx} +3 -1
- package/docs/guides/streams/{to-json.md → to-json.mdx} +4 -2
- package/docs/guides/streams/{to-string.md → to-string.mdx} +3 -1
- package/docs/guides/streams/{to-typedarray.md → to-typedarray.mdx} +3 -1
- package/docs/guides/test/{bail.md → bail.mdx} +7 -5
- package/docs/guides/test/{coverage-threshold.md → coverage-threshold.mdx} +14 -7
- package/docs/guides/test/{coverage.md → coverage.mdx} +9 -4
- package/docs/guides/test/{happy-dom.md → happy-dom.mdx} +13 -8
- package/docs/guides/test/{migrate-from-jest.md → migrate-from-jest.mdx} +19 -37
- package/docs/guides/test/{mock-clock.md → mock-clock.mdx} +3 -1
- package/docs/guides/test/{mock-functions.md → mock-functions.mdx} +7 -5
- package/docs/guides/test/{rerun-each.md → rerun-each.mdx} +5 -3
- package/docs/guides/test/{run-tests.md → run-tests.mdx} +16 -11
- package/docs/guides/test/{skip-tests.md → skip-tests.mdx} +8 -4
- package/docs/guides/test/{snapshot.md → snapshot.mdx} +20 -13
- package/docs/guides/test/spy-on.mdx +49 -0
- package/docs/guides/test/{svelte-test.md → svelte-test.mdx} +16 -23
- package/docs/guides/test/{testing-library.md → testing-library.mdx} +18 -17
- package/docs/guides/test/{timeout.md → timeout.mdx} +5 -3
- package/docs/guides/test/{todo-tests.md → todo-tests.mdx} +13 -6
- package/docs/guides/test/{update-snapshots.md → update-snapshots.mdx} +9 -6
- package/docs/guides/test/{watch-mode.md → watch-mode.mdx} +9 -4
- package/docs/guides/util/{base64.md → base64.mdx} +3 -1
- package/docs/guides/util/{deep-equals.md → deep-equals.mdx} +5 -3
- package/docs/guides/util/{deflate.md → deflate.mdx} +3 -1
- package/docs/guides/util/{detect-bun.md → detect-bun.mdx} +3 -1
- package/docs/guides/util/{entrypoint.md → entrypoint.mdx} +4 -2
- package/docs/guides/util/{escape-html.md → escape-html.mdx} +3 -1
- package/docs/guides/util/{file-url-to-path.md → file-url-to-path.mdx} +3 -1
- package/docs/guides/util/{gzip.md → gzip.mdx} +3 -1
- package/docs/guides/util/{hash-a-password.md → hash-a-password.mdx} +3 -1
- package/docs/guides/util/{import-meta-dir.md → import-meta-dir.mdx} +4 -2
- package/docs/guides/util/{import-meta-file.md → import-meta-file.mdx} +4 -2
- package/docs/guides/util/{import-meta-path.md → import-meta-path.mdx} +4 -2
- package/docs/guides/util/{javascript-uuid.md → javascript-uuid.mdx} +3 -1
- package/docs/guides/util/{main.md → main.mdx} +19 -8
- package/docs/guides/util/{path-to-file-url.md → path-to-file-url.mdx} +3 -1
- package/docs/guides/util/{sleep.md → sleep.mdx} +3 -1
- package/docs/guides/util/{version.md → version.mdx} +6 -4
- package/docs/guides/util/{which-path-to-executable-bin.md → which-path-to-executable-bin.mdx} +4 -2
- package/docs/guides/websocket/{compression.md → compression.mdx} +5 -3
- package/docs/guides/websocket/{context.md → context.mdx} +9 -12
- package/docs/guides/websocket/{pubsub.md → pubsub.mdx} +5 -6
- package/docs/guides/websocket/{simple.md → simple.mdx} +5 -3
- package/docs/guides/write-file/{append.md → append.mdx} +3 -1
- package/docs/guides/write-file/{basic.md → basic.mdx} +3 -1
- package/docs/guides/write-file/{blob.md → blob.mdx} +3 -1
- package/docs/guides/write-file/{cat.md → cat.mdx} +4 -2
- package/docs/guides/write-file/{file-cp.md → file-cp.mdx} +3 -1
- package/docs/guides/write-file/{filesink.md → filesink.mdx} +3 -1
- package/docs/guides/write-file/{response.md → response.mdx} +3 -1
- package/docs/guides/write-file/{stdout.md → stdout.mdx} +3 -1
- package/docs/guides/write-file/{stream.md → stream.mdx} +3 -1
- package/docs/guides/write-file/{unlink.md → unlink.mdx} +3 -1
- package/docs/{index.md → index.mdx} +97 -41
- package/docs/installation.mdx +365 -0
- package/docs/{cli/bunx.md → pm/bunx.mdx} +25 -31
- package/docs/{install/catalogs.md → pm/catalogs.mdx} +18 -24
- package/docs/{cli/add.md → pm/cli/add.mdx} +61 -55
- package/docs/{install/audit.md → pm/cli/audit.mdx} +11 -8
- package/docs/{cli/install.md → pm/cli/install.mdx} +208 -81
- package/docs/{cli/link.md → pm/cli/link.mdx} +27 -19
- package/docs/{cli/outdated.md → pm/cli/outdated.mdx} +119 -12
- package/docs/{install/patch.md → pm/cli/patch.mdx} +25 -15
- package/docs/{cli/pm.md → pm/cli/pm.mdx} +96 -62
- package/docs/{cli/publish.md → pm/cli/publish.mdx} +38 -35
- package/docs/pm/cli/remove.mdx +16 -0
- package/docs/{cli/update.md → pm/cli/update.mdx} +26 -15
- package/docs/{cli/why.md → pm/cli/why.mdx} +27 -10
- package/docs/{cli/filter.md → pm/filter.mdx} +26 -14
- package/docs/{install/cache.md → pm/global-cache.mdx} +25 -12
- package/docs/{install/isolated.md → pm/isolated-installs.mdx} +32 -24
- package/docs/{install/lifecycle.md → pm/lifecycle.mdx} +20 -9
- package/docs/{install/lockfile.md → pm/lockfile.mdx} +18 -12
- package/docs/{install/npmrc.md → pm/npmrc.mdx} +30 -24
- package/docs/{install/overrides.md → pm/overrides.mdx} +47 -37
- package/docs/{install/registries.md → pm/scopes-registries.mdx} +8 -3
- package/docs/{install/security-scanner-api.md → pm/security-scanner-api.mdx} +22 -8
- package/docs/{install/workspaces.md → pm/workspaces.mdx} +17 -22
- package/docs/project/{benchmarking.md → benchmarking.mdx} +26 -11
- package/docs/project/{bindgen.md → bindgen.mdx} +12 -14
- package/docs/project/{building-windows.md → building-windows.mdx} +18 -47
- package/docs/project/{contributing.md → contributing.mdx} +56 -60
- package/docs/project/feedback.mdx +20 -0
- package/docs/project/license.mdx +78 -0
- package/docs/project/roadmap.mdx +8 -0
- package/docs/quickstart.mdx +240 -0
- package/docs/runtime/{autoimport.md → auto-install.mdx} +34 -31
- package/docs/{api/binary-data.md → runtime/binary-data.mdx} +77 -269
- package/docs/runtime/bun-apis.mdx +59 -0
- package/docs/runtime/{bunfig.md → bunfig.mdx} +95 -225
- package/docs/{api/cc.md → runtime/c-compiler.mdx} +16 -9
- package/docs/{api/spawn.md → runtime/child-process.mdx} +69 -119
- package/docs/{api/color.md → runtime/color.mdx} +6 -1
- package/docs/{api/console.md → runtime/console.mdx} +17 -7
- package/docs/{api/cookie.md → runtime/cookies.mdx} +24 -19
- package/docs/runtime/{debugger.md → debugger.mdx} +61 -51
- package/docs/runtime/environment-variables.mdx +214 -0
- package/docs/{api/ffi.md → runtime/ffi.mdx} +53 -45
- package/docs/{api/file-io.md → runtime/file-io.mdx} +41 -101
- package/docs/{api/file-system-router.md → runtime/file-system-router.mdx} +8 -2
- package/docs/{bundler/loaders.md → runtime/file-types.mdx} +56 -112
- package/docs/{api/glob.md → runtime/glob.mdx} +4 -1
- package/docs/runtime/globals.mdx +72 -0
- package/docs/{api/hashing.md → runtime/hashing.mdx} +18 -22
- package/docs/{api/html-rewriter.md → runtime/html-rewriter.mdx} +36 -30
- package/docs/runtime/http/cookies.mdx +79 -0
- package/docs/runtime/http/error-handling.mdx +40 -0
- package/docs/runtime/http/metrics.mdx +36 -0
- package/docs/runtime/http/routing.mdx +289 -0
- package/docs/runtime/http/server.mdx +647 -0
- package/docs/runtime/http/tls.mdx +101 -0
- package/docs/{api/websockets.md → runtime/http/websockets.mdx} +62 -231
- package/docs/{cli/run.md → runtime/index.mdx} +70 -108
- package/docs/runtime/jsx.mdx +115 -0
- package/docs/runtime/{modules.md → module-resolution.mdx} +83 -61
- package/docs/{api/dns.md → runtime/networking/dns.mdx} +23 -22
- package/docs/{api/fetch.md → runtime/networking/fetch.mdx} +10 -5
- package/docs/{api/tcp.md → runtime/networking/tcp.mdx} +59 -41
- package/docs/{api/udp.md → runtime/networking/udp.mdx} +14 -8
- package/docs/{api/node-api.md → runtime/node-api.mdx} +5 -0
- package/docs/runtime/{nodejs-apis.md → nodejs-compat.mdx} +9 -4
- package/docs/{bundler/plugins.md → runtime/plugins.mdx} +17 -61
- package/docs/{api/redis.md → runtime/redis.mdx} +65 -80
- package/docs/{api/s3.md → runtime/s3.mdx} +79 -66
- package/docs/{api/secrets.md → runtime/secrets.mdx} +27 -10
- package/docs/{api/semver.md → runtime/semver.mdx} +9 -4
- package/docs/runtime/{shell.md → shell.mdx} +52 -20
- package/docs/{api/sql.md → runtime/sql.mdx} +129 -99
- package/docs/{api/sqlite.md → runtime/sqlite.mdx} +162 -157
- package/docs/{api/streams.md → runtime/streams.mdx} +33 -31
- package/docs/{cli/bun-create.md → runtime/templating/create.mdx} +74 -143
- package/docs/{cli/init.md → runtime/templating/init.mdx} +24 -51
- package/docs/{api/transpiler.md → runtime/transpiler.mdx} +50 -38
- package/docs/{typescript.md → runtime/typescript.mdx} +7 -2
- package/docs/{api/utils.md → runtime/utils.mdx} +81 -50
- package/docs/runtime/{hot.md → watch-mode.mdx} +53 -37
- package/docs/runtime/web-apis.mdx +29 -0
- package/docs/{api/workers.md → runtime/workers.mdx} +28 -22
- package/docs/{api/yaml.md → runtime/yaml.mdx} +33 -232
- package/docs/snippets/cli/add.mdx +166 -0
- package/docs/snippets/cli/build.mdx +196 -0
- package/docs/snippets/cli/feedback.mdx +17 -0
- package/docs/snippets/cli/init.mdx +84 -0
- package/docs/snippets/cli/install.mdx +173 -0
- package/docs/snippets/cli/link.mdx +163 -0
- package/docs/snippets/cli/outdated.mdx +140 -0
- package/docs/snippets/cli/patch.mdx +171 -0
- package/docs/snippets/cli/publish.mdx +198 -0
- package/docs/snippets/cli/remove.mdx +146 -0
- package/docs/snippets/cli/run.mdx +293 -0
- package/docs/snippets/cli/test.mdx +100 -0
- package/docs/snippets/cli/update.mdx +144 -0
- package/docs/snippets/product-card.mdx +32 -0
- package/docs/snippets/product-tiles.mdx +94 -0
- package/docs/test/code-coverage.mdx +409 -0
- package/docs/test/configuration.mdx +467 -0
- package/docs/test/{time.md → dates-times.mdx} +23 -20
- package/docs/test/{discovery.md → discovery.mdx} +15 -10
- package/docs/test/dom.mdx +226 -0
- package/docs/{cli/test.md → test/index.mdx} +77 -94
- package/docs/test/lifecycle.mdx +348 -0
- package/docs/test/mocks.mdx +637 -0
- package/docs/test/{reporters.md → reporters.mdx} +15 -15
- package/docs/test/runtime-behavior.mdx +342 -0
- package/docs/test/snapshots.mdx +434 -0
- package/docs/test/writing-tests.mdx +635 -0
- package/docs/typescript.mdx +54 -0
- package/package.json +8 -6
- package/test.d.ts +2 -2
- package/docs/api/file.md +0 -19
- package/docs/api/globals.md +0 -387
- package/docs/api/http.md +0 -1408
- package/docs/api/import-meta.md +0 -69
- package/docs/benchmarks.md +0 -120
- package/docs/bun-flavored-toml.md +0 -42
- package/docs/bundler/css_modules.md +0 -145
- package/docs/bundler/fullstack.md +0 -418
- package/docs/bundler/index.md +0 -1735
- package/docs/bundler/intro.md +0 -75
- package/docs/bundler/vs-esbuild.md +0 -1127
- package/docs/cli/bun-completions.md +0 -3
- package/docs/cli/bun-install.md +0 -349
- package/docs/cli/bun-upgrade.md +0 -39
- package/docs/cli/info.md +0 -65
- package/docs/cli/patch-commit.md +0 -11
- package/docs/cli/remove.md +0 -7
- package/docs/cli/unlink.md +0 -9
- package/docs/contributing/upgrading-webkit.md +0 -57
- package/docs/ecosystem/elysia.md +0 -24
- package/docs/ecosystem/express.md +0 -37
- package/docs/ecosystem/hono.md +0 -18
- package/docs/ecosystem/react.md +0 -65
- package/docs/ecosystem/stric.md +0 -38
- package/docs/guides/ecosystem/prisma.md +0 -141
- package/docs/guides/ecosystem/render.md +0 -79
- package/docs/guides/install/add-git.md +0 -36
- package/docs/guides/test/spy-on.md +0 -46
- package/docs/install/index.md +0 -248
- package/docs/installation.md +0 -327
- package/docs/project/asan.md +0 -124
- package/docs/project/internals/build-process-for-ci.md +0 -75
- package/docs/project/licensing.md +0 -73
- package/docs/project/roadmap.md +0 -87
- package/docs/quickstart.md +0 -157
- package/docs/runtime/bun-apis.md +0 -207
- package/docs/runtime/env.md +0 -253
- package/docs/runtime/index.md +0 -312
- package/docs/runtime/jsx.md +0 -385
- package/docs/runtime/loaders.md +0 -130
- package/docs/runtime/plugins.md +0 -561
- package/docs/runtime/typescript.md +0 -139
- package/docs/runtime/web-apis.md +0 -128
- package/docs/test/configuration.md +0 -154
- package/docs/test/coverage.md +0 -142
- package/docs/test/dom.md +0 -75
- package/docs/test/examples/concurrent-test-glob.md +0 -132
- package/docs/test/hot.md +0 -15
- package/docs/test/lifecycle.md +0 -81
- package/docs/test/mocks.md +0 -313
- package/docs/test/runtime-behavior.md +0 -95
- package/docs/test/snapshots.md +0 -68
- package/docs/test/writing.md +0 -825
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
---
|
|
2
|
+
title: "bunx"
|
|
3
|
+
description: "Run packages from npm"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<Note>`bunx` is an alias for `bun x`. The `bunx` CLI will be auto-installed when you install `bun`.</Note>
|
|
4
7
|
|
|
5
8
|
Use `bunx` to auto-install and run packages from `npm`. It's Bun's equivalent of `npx` or `yarn dlx`.
|
|
6
9
|
|
|
7
|
-
```bash
|
|
8
|
-
|
|
10
|
+
```bash terminal icon="terminal"
|
|
11
|
+
bunx cowsay "Hello world!"
|
|
9
12
|
```
|
|
10
13
|
|
|
11
|
-
|
|
12
|
-
⚡️ **Speed** — With Bun's fast startup times, `bunx` is [roughly 100x
|
|
13
|
-
|
|
14
|
+
<Note>
|
|
15
|
+
⚡️ **Speed** — With Bun's fast startup times, `bunx` is [roughly 100x
|
|
16
|
+
faster](https://twitter.com/jarredsumner/status/1606163655527059458) than `npx` for locally installed packages.
|
|
17
|
+
</Note>
|
|
14
18
|
|
|
15
19
|
Packages can declare executables in the `"bin"` field of their `package.json`. These are known as _package executables_ or _package binaries_.
|
|
16
20
|
|
|
17
|
-
```
|
|
21
|
+
```json package.json icon="file-json"
|
|
18
22
|
{
|
|
19
23
|
// ... other fields
|
|
20
24
|
"name": "my-cli",
|
|
@@ -26,7 +30,7 @@ Packages can declare executables in the `"bin"` field of their `package.json`. T
|
|
|
26
30
|
|
|
27
31
|
These executables are commonly plain JavaScript files marked with a [shebang line](<https://en.wikipedia.org/wiki/Shebang_(Unix)>) to indicate which program should be used to execute them. The following file indicates that it should be executed with `node`.
|
|
28
32
|
|
|
29
|
-
```
|
|
33
|
+
```ts dist/index.js icon="/icons/javascript.svg"
|
|
30
34
|
#!/usr/bin/env node
|
|
31
35
|
|
|
32
36
|
console.log("Hello world!");
|
|
@@ -34,8 +38,8 @@ console.log("Hello world!");
|
|
|
34
38
|
|
|
35
39
|
These executables can be run with `bunx`,
|
|
36
40
|
|
|
37
|
-
```bash
|
|
38
|
-
|
|
41
|
+
```bash terminal icon="terminal"
|
|
42
|
+
bunx my-cli
|
|
39
43
|
```
|
|
40
44
|
|
|
41
45
|
As with `npx`, `bunx` will check for a locally installed package first, then fall back to auto-installing the package from `npm`. Installed packages will be stored in Bun's global cache for future use.
|
|
@@ -44,46 +48,36 @@ As with `npx`, `bunx` will check for a locally installed package first, then fal
|
|
|
44
48
|
|
|
45
49
|
To pass additional command-line flags and arguments through to the executable, place them after the executable name.
|
|
46
50
|
|
|
47
|
-
```bash
|
|
48
|
-
|
|
51
|
+
```bash terminal icon="terminal"
|
|
52
|
+
bunx my-cli --foo bar
|
|
49
53
|
```
|
|
50
54
|
|
|
51
55
|
## Shebangs
|
|
52
56
|
|
|
53
57
|
By default, Bun respects shebangs. If an executable is marked with `#!/usr/bin/env node`, Bun will spin up a `node` process to execute the file. However, in some cases it may be desirable to run executables using Bun's runtime, even if the executable indicates otherwise. To do so, include the `--bun` flag.
|
|
54
58
|
|
|
55
|
-
```bash
|
|
56
|
-
|
|
59
|
+
```bash terminal icon="terminal"
|
|
60
|
+
bunx --bun my-cli
|
|
57
61
|
```
|
|
58
62
|
|
|
59
63
|
The `--bun` flag must occur _before_ the executable name. Flags that appear _after_ the name are passed through to the executable.
|
|
60
64
|
|
|
61
|
-
```bash
|
|
62
|
-
|
|
63
|
-
|
|
65
|
+
```bash terminal icon="terminal"
|
|
66
|
+
bunx --bun my-cli # good
|
|
67
|
+
bunx my-cli --bun # bad
|
|
64
68
|
```
|
|
65
69
|
|
|
66
70
|
## Package flag
|
|
67
71
|
|
|
68
72
|
**`--package <pkg>` or `-p <pkg>`** - Run binary from specific package. Useful when binary name differs from package name:
|
|
69
73
|
|
|
70
|
-
```bash
|
|
74
|
+
```bash terminal icon="terminal"
|
|
71
75
|
bunx -p renovate renovate-config-validator
|
|
72
76
|
bunx --package @angular/cli ng
|
|
73
77
|
```
|
|
74
78
|
|
|
75
79
|
To force bun to always be used with a script, use a shebang.
|
|
76
80
|
|
|
77
|
-
```
|
|
81
|
+
```ts dist/index.js icon="/icons/javascript.svg"
|
|
78
82
|
#!/usr/bin/env bun
|
|
79
83
|
```
|
|
80
|
-
|
|
81
|
-
<!-- ## Environment variables
|
|
82
|
-
|
|
83
|
-
Bun automatically loads environment variables from `.env` files before running a file, script, or executable. The following files are checked, in order:
|
|
84
|
-
|
|
85
|
-
1. `.env.local` (first)
|
|
86
|
-
2. `NODE_ENV` === `"production"` ? `.env.production` : `.env.development`
|
|
87
|
-
3. `.env`
|
|
88
|
-
|
|
89
|
-
To debug environment variables, run `bun --print process.env` to view a list of resolved environment variables. -->
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Catalogs"
|
|
3
|
+
description: "Share common dependency versions across multiple packages in a monorepo"
|
|
4
|
+
---
|
|
5
|
+
|
|
1
6
|
Catalogs in Bun provide a straightforward way to share common dependency versions across multiple packages in a monorepo. Rather than specifying the same versions repeatedly in each workspace package, you define them once in the root package.json and reference them consistently throughout your project.
|
|
2
7
|
|
|
3
8
|
## Overview
|
|
@@ -33,7 +38,7 @@ my-monorepo/
|
|
|
33
38
|
|
|
34
39
|
In your root-level `package.json`, add a `catalog` or `catalogs` field within the `workspaces` object:
|
|
35
40
|
|
|
36
|
-
```json
|
|
41
|
+
```json package.json icon="file-json"
|
|
37
42
|
{
|
|
38
43
|
"name": "my-monorepo",
|
|
39
44
|
"workspaces": {
|
|
@@ -58,9 +63,7 @@ If you put `catalog` or `catalogs` at the top level of the `package.json` file,
|
|
|
58
63
|
|
|
59
64
|
In your workspace packages, use the `catalog:` protocol to reference versions:
|
|
60
65
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
```json
|
|
66
|
+
```json packages/app/package.json icon="file-json"
|
|
64
67
|
{
|
|
65
68
|
"name": "app",
|
|
66
69
|
"dependencies": {
|
|
@@ -71,9 +74,7 @@ In your workspace packages, use the `catalog:` protocol to reference versions:
|
|
|
71
74
|
}
|
|
72
75
|
```
|
|
73
76
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
```json
|
|
77
|
+
```json packages/ui/package.json icon="file-json"
|
|
77
78
|
{
|
|
78
79
|
"name": "ui",
|
|
79
80
|
"dependencies": {
|
|
@@ -97,7 +98,7 @@ Bun supports two ways to define catalogs:
|
|
|
97
98
|
|
|
98
99
|
1. **`catalog`** (singular): A single default catalog for commonly used dependencies
|
|
99
100
|
|
|
100
|
-
```json
|
|
101
|
+
```json package.json icon="file-json"
|
|
101
102
|
"catalog": {
|
|
102
103
|
"react": "^19.0.0",
|
|
103
104
|
"react-dom": "^19.0.0"
|
|
@@ -106,7 +107,7 @@ Bun supports two ways to define catalogs:
|
|
|
106
107
|
|
|
107
108
|
Reference with simply `catalog:`:
|
|
108
109
|
|
|
109
|
-
```json
|
|
110
|
+
```json packages/app/package.json icon="file-json"
|
|
110
111
|
"dependencies": {
|
|
111
112
|
"react": "catalog:"
|
|
112
113
|
}
|
|
@@ -114,7 +115,7 @@ Bun supports two ways to define catalogs:
|
|
|
114
115
|
|
|
115
116
|
2. **`catalogs`** (plural): Multiple named catalogs for grouping dependencies
|
|
116
117
|
|
|
117
|
-
```json
|
|
118
|
+
```json package.json icon="file-json"
|
|
118
119
|
"catalogs": {
|
|
119
120
|
"testing": {
|
|
120
121
|
"jest": "30.0.0"
|
|
@@ -127,7 +128,7 @@ Bun supports two ways to define catalogs:
|
|
|
127
128
|
|
|
128
129
|
Reference with `catalog:<name>`:
|
|
129
130
|
|
|
130
|
-
```json
|
|
131
|
+
```json packages/app/package.json icon="file-json"
|
|
131
132
|
"dependencies": {
|
|
132
133
|
"jest": "catalog:testing",
|
|
133
134
|
"tailwind": "catalog:ui"
|
|
@@ -147,7 +148,7 @@ Here's a more comprehensive example for a React application:
|
|
|
147
148
|
|
|
148
149
|
**Root package.json**
|
|
149
150
|
|
|
150
|
-
```json
|
|
151
|
+
```json package.json icon="file-json"
|
|
151
152
|
{
|
|
152
153
|
"name": "react-monorepo",
|
|
153
154
|
"workspaces": {
|
|
@@ -174,9 +175,7 @@ Here's a more comprehensive example for a React application:
|
|
|
174
175
|
}
|
|
175
176
|
```
|
|
176
177
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
```json
|
|
178
|
+
```json packages/app/package.json icon="file-json"
|
|
180
179
|
{
|
|
181
180
|
"name": "app",
|
|
182
181
|
"dependencies": {
|
|
@@ -195,9 +194,7 @@ Here's a more comprehensive example for a React application:
|
|
|
195
194
|
}
|
|
196
195
|
```
|
|
197
196
|
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
```json
|
|
197
|
+
```json packages/ui/package.json icon="file-json"
|
|
201
198
|
{
|
|
202
199
|
"name": "@monorepo/ui",
|
|
203
200
|
"dependencies": {
|
|
@@ -211,9 +208,7 @@ Here's a more comprehensive example for a React application:
|
|
|
211
208
|
}
|
|
212
209
|
```
|
|
213
210
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
```json
|
|
211
|
+
```json packages/utils/package.json icon="file-json"
|
|
217
212
|
{
|
|
218
213
|
"name": "@monorepo/utils",
|
|
219
214
|
"dependencies": {
|
|
@@ -229,7 +224,7 @@ Here's a more comprehensive example for a React application:
|
|
|
229
224
|
|
|
230
225
|
To update versions across all packages, simply change the version in the root package.json:
|
|
231
226
|
|
|
232
|
-
```json
|
|
227
|
+
```json package.json icon="file-json"
|
|
233
228
|
"catalog": {
|
|
234
229
|
"react": "^19.1.0", // Updated from ^19.0.0
|
|
235
230
|
"react-dom": "^19.1.0" // Updated from ^19.0.0
|
|
@@ -245,8 +240,7 @@ Bun's lockfile tracks catalog versions, making it easy to ensure consistent inst
|
|
|
245
240
|
- The catalog definitions from your package.json
|
|
246
241
|
- The resolution of each cataloged dependency
|
|
247
242
|
|
|
248
|
-
```
|
|
249
|
-
// bun.lock (excerpt)
|
|
243
|
+
```json bun.lock(excerpt) icon="file-json"
|
|
250
244
|
{
|
|
251
245
|
"lockfileVersion": 1,
|
|
252
246
|
"workspaces": {
|
|
@@ -1,91 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "bun add"
|
|
3
|
+
description: "Add packages to your project with Bun's fast package manager"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import Add from "/snippets/cli/add.mdx";
|
|
7
|
+
|
|
1
8
|
To add a particular package:
|
|
2
9
|
|
|
3
|
-
```bash
|
|
4
|
-
|
|
10
|
+
```bash terminal icon="terminal"
|
|
11
|
+
bun add preact
|
|
5
12
|
```
|
|
6
13
|
|
|
7
14
|
To specify a version, version range, or tag:
|
|
8
15
|
|
|
9
|
-
```bash
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
16
|
+
```bash terminal icon="terminal"
|
|
17
|
+
bun add zod@3.20.0
|
|
18
|
+
bun add zod@^3.0.0
|
|
19
|
+
bun add zod@latest
|
|
13
20
|
```
|
|
14
21
|
|
|
15
22
|
## `--dev`
|
|
16
23
|
|
|
17
|
-
|
|
18
|
-
**Alias** — `--development`, `-d`, `-D`
|
|
19
|
-
{% /callout %}
|
|
24
|
+
<Note>**Alias** — `--development`, `-d`, `-D`</Note>
|
|
20
25
|
|
|
21
26
|
To add a package as a dev dependency (`"devDependencies"`):
|
|
22
27
|
|
|
23
|
-
```bash
|
|
24
|
-
|
|
25
|
-
|
|
28
|
+
```bash terminal icon="terminal"
|
|
29
|
+
bun add --dev @types/react
|
|
30
|
+
bun add -d @types/react
|
|
26
31
|
```
|
|
27
32
|
|
|
28
33
|
## `--optional`
|
|
29
34
|
|
|
30
35
|
To add a package as an optional dependency (`"optionalDependencies"`):
|
|
31
36
|
|
|
32
|
-
```bash
|
|
33
|
-
|
|
37
|
+
```bash terminal icon="terminal"
|
|
38
|
+
bun add --optional lodash
|
|
34
39
|
```
|
|
35
40
|
|
|
36
41
|
## `--peer`
|
|
37
42
|
|
|
38
43
|
To add a package as a peer dependency (`"peerDependencies"`):
|
|
39
44
|
|
|
40
|
-
```bash
|
|
41
|
-
|
|
45
|
+
```bash terminal icon="terminal"
|
|
46
|
+
bun add --peer @types/bun
|
|
42
47
|
```
|
|
43
48
|
|
|
44
49
|
## `--exact`
|
|
45
50
|
|
|
46
|
-
|
|
47
|
-
**Alias** — `-E`
|
|
48
|
-
{% /callout %}
|
|
51
|
+
<Note>**Alias** — `-E`</Note>
|
|
49
52
|
|
|
50
53
|
To add a package and pin to the resolved version, use `--exact`. This will resolve the version of the package and add it to your `package.json` with an exact version number instead of a version range.
|
|
51
54
|
|
|
52
|
-
```bash
|
|
53
|
-
|
|
54
|
-
|
|
55
|
+
```bash terminal icon="terminal"
|
|
56
|
+
bun add react --exact
|
|
57
|
+
bun add react -E
|
|
55
58
|
```
|
|
56
59
|
|
|
57
60
|
This will add the following to your `package.json`:
|
|
58
61
|
|
|
59
|
-
```
|
|
62
|
+
```json package.json icon="file-json"
|
|
60
63
|
{
|
|
61
64
|
"dependencies": {
|
|
62
65
|
// without --exact
|
|
63
66
|
"react": "^18.2.0", // this matches >= 18.2.0 < 19.0.0
|
|
64
67
|
|
|
65
68
|
// with --exact
|
|
66
|
-
"react": "18.2.0"
|
|
67
|
-
}
|
|
69
|
+
"react": "18.2.0" // this matches only 18.2.0 exactly
|
|
70
|
+
}
|
|
68
71
|
}
|
|
69
72
|
```
|
|
70
73
|
|
|
71
74
|
To view a complete list of options for this command:
|
|
72
75
|
|
|
73
|
-
```bash
|
|
74
|
-
|
|
76
|
+
```bash terminal icon="terminal"
|
|
77
|
+
bun add --help
|
|
75
78
|
```
|
|
76
79
|
|
|
77
80
|
## `--global`
|
|
78
81
|
|
|
79
|
-
|
|
80
|
-
**Note** — This would not modify package.json of your current project folder.
|
|
81
|
-
|
|
82
|
-
|
|
82
|
+
<Note>
|
|
83
|
+
**Note** — This would not modify package.json of your current project folder. **Alias** - `bun add --global`, `bun add
|
|
84
|
+
-g`, `bun install --global` and `bun install -g`
|
|
85
|
+
</Note>
|
|
83
86
|
|
|
84
87
|
To install a package globally, use the `-g`/`--global` flag. This will not modify the `package.json` of your current project. Typically this is used for installing command-line tools.
|
|
85
88
|
|
|
86
|
-
```bash
|
|
87
|
-
|
|
88
|
-
|
|
89
|
+
```bash terminal icon="terminal"
|
|
90
|
+
bun add --global cowsay # or `bun add -g cowsay`
|
|
91
|
+
cowsay "Bun!"
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
```txt
|
|
89
95
|
______
|
|
90
96
|
< Bun! >
|
|
91
97
|
------
|
|
@@ -96,9 +102,9 @@ $ cowsay "Bun!"
|
|
|
96
102
|
|| ||
|
|
97
103
|
```
|
|
98
104
|
|
|
99
|
-
|
|
105
|
+
<Accordion title="Configuring global installation behavior">
|
|
100
106
|
|
|
101
|
-
```toml
|
|
107
|
+
```toml bunfig.toml icon="settings"
|
|
102
108
|
[install]
|
|
103
109
|
# where `bun add --global` installs packages
|
|
104
110
|
globalDir = "~/.bun/install/global"
|
|
@@ -107,7 +113,7 @@ globalDir = "~/.bun/install/global"
|
|
|
107
113
|
globalBinDir = "~/.bun/bin"
|
|
108
114
|
```
|
|
109
115
|
|
|
110
|
-
|
|
116
|
+
</Accordion>
|
|
111
117
|
|
|
112
118
|
## Trusted dependencies
|
|
113
119
|
|
|
@@ -115,33 +121,31 @@ Unlike other npm clients, Bun does not execute arbitrary lifecycle scripts for i
|
|
|
115
121
|
|
|
116
122
|
To tell Bun to allow lifecycle scripts for a particular package, add the package to `trustedDependencies` in your package.json.
|
|
117
123
|
|
|
118
|
-
```json-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
+
```json package.json icon="file-json"
|
|
125
|
+
{
|
|
126
|
+
"name": "my-app",
|
|
127
|
+
"version": "1.0.0",
|
|
128
|
+
"trustedDependencies": ["my-trusted-package"] // [!code ++]
|
|
129
|
+
}
|
|
124
130
|
```
|
|
125
131
|
|
|
126
132
|
Bun reads this field and will run lifecycle scripts for `my-trusted-package`.
|
|
127
133
|
|
|
128
|
-
<!-- Bun maintains an allow-list of popular packages containing `postinstall` scripts that are known to be safe. To run lifecycle scripts for packages that aren't on this list, add the package to `trustedDependencies` in your package.json. -->
|
|
129
|
-
|
|
130
134
|
## Git dependencies
|
|
131
135
|
|
|
132
136
|
To add a dependency from a public or private git repository:
|
|
133
137
|
|
|
134
|
-
```bash
|
|
135
|
-
|
|
138
|
+
```bash terminal icon="terminal"
|
|
139
|
+
bun add git@github.com:moment/moment.git
|
|
136
140
|
```
|
|
137
141
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
142
|
+
<Note>
|
|
143
|
+
To install private repositories, your system needs the appropriate SSH credentials to access the repository.
|
|
144
|
+
</Note>
|
|
141
145
|
|
|
142
146
|
Bun supports a variety of protocols, including [`github`](https://docs.npmjs.com/cli/v9/configuring-npm/package-json#github-urls), [`git`](https://docs.npmjs.com/cli/v9/configuring-npm/package-json#git-urls-as-dependencies), `git+ssh`, `git+https`, and many more.
|
|
143
147
|
|
|
144
|
-
```json
|
|
148
|
+
```json package.json icon="file-json"
|
|
145
149
|
{
|
|
146
150
|
"dependencies": {
|
|
147
151
|
"dayjs": "git+https://github.com/iamkun/dayjs.git",
|
|
@@ -156,13 +160,13 @@ Bun supports a variety of protocols, including [`github`](https://docs.npmjs.com
|
|
|
156
160
|
|
|
157
161
|
A package name can correspond to a publicly hosted `.tgz` file. During installation, Bun will download and install the package from the specified tarball URL, rather than from the package registry.
|
|
158
162
|
|
|
159
|
-
```sh
|
|
160
|
-
|
|
163
|
+
```sh terminal icon="terminal"
|
|
164
|
+
bun add zod@https://registry.npmjs.org/zod/-/zod-3.21.4.tgz
|
|
161
165
|
```
|
|
162
166
|
|
|
163
167
|
This will add the following line to your `package.json`:
|
|
164
168
|
|
|
165
|
-
```json
|
|
169
|
+
```json package.json icon="file-json"
|
|
166
170
|
{
|
|
167
171
|
"dependencies": {
|
|
168
172
|
"zod": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz"
|
|
@@ -170,4 +174,6 @@ This will add the following line to your `package.json`:
|
|
|
170
174
|
}
|
|
171
175
|
```
|
|
172
176
|
|
|
173
|
-
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
<Add />
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
title: "bun audit"
|
|
3
|
+
description: "Check your installed packages for known security vulnerabilities"
|
|
4
|
+
---
|
|
2
5
|
|
|
3
6
|
Run the command in a project with a `bun.lock` file:
|
|
4
7
|
|
|
5
|
-
```bash
|
|
6
|
-
|
|
8
|
+
```bash terminal icon="terminal"
|
|
9
|
+
bun audit
|
|
7
10
|
```
|
|
8
11
|
|
|
9
12
|
Bun sends the list of installed packages and versions to NPM, and prints a report of any vulnerabilities that were found. Packages installed from registries other than the default registry are skipped.
|
|
@@ -28,19 +31,19 @@ To update all dependencies to the latest versions (including breaking changes):
|
|
|
28
31
|
|
|
29
32
|
**`--audit-level=<low|moderate|high|critical>`** - Only show vulnerabilities at this severity level or higher:
|
|
30
33
|
|
|
31
|
-
```bash
|
|
34
|
+
```bash terminal icon="terminal"
|
|
32
35
|
bun audit --audit-level=high
|
|
33
36
|
```
|
|
34
37
|
|
|
35
38
|
**`--prod`** - Audit only production dependencies (excludes devDependencies):
|
|
36
39
|
|
|
37
|
-
```bash
|
|
40
|
+
```bash terminal icon="terminal"
|
|
38
41
|
bun audit --prod
|
|
39
42
|
```
|
|
40
43
|
|
|
41
44
|
**`--ignore <CVE>`** - Ignore specific CVEs (can be used multiple times):
|
|
42
45
|
|
|
43
|
-
```bash
|
|
46
|
+
```bash terminal icon="terminal"
|
|
44
47
|
bun audit --ignore CVE-2022-25883 --ignore CVE-2023-26136
|
|
45
48
|
```
|
|
46
49
|
|
|
@@ -48,8 +51,8 @@ bun audit --ignore CVE-2022-25883 --ignore CVE-2023-26136
|
|
|
48
51
|
|
|
49
52
|
Use the `--json` flag to print the raw JSON response from the registry instead of the formatted report:
|
|
50
53
|
|
|
51
|
-
```bash
|
|
52
|
-
|
|
54
|
+
```bash terminal icon="terminal"
|
|
55
|
+
bun audit --json
|
|
53
56
|
```
|
|
54
57
|
|
|
55
58
|
### Exit code
|