bun-types 1.2.23 → 1.2.24-canary.20251001T140657

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.
@@ -90,6 +90,17 @@ Packages are organized in sections by dependency type:
90
90
 
91
91
  Within each section, individual packages may have additional suffixes (` dev`, ` peer`, ` optional`) for extra clarity.
92
92
 
93
+ ## `--recursive`
94
+
95
+ Use the `--recursive` flag with `--interactive` to update dependencies across all workspaces in a monorepo:
96
+
97
+ ```sh
98
+ $ bun update --interactive --recursive
99
+ $ bun update -i -r
100
+ ```
101
+
102
+ This displays an additional "Workspace" column showing which workspace each dependency belongs to.
103
+
93
104
  ## `--latest`
94
105
 
95
106
  By default, `bun update` will update to the latest version of a dependency that satisfies the version range specified in your `package.json`.
@@ -9,7 +9,7 @@ $ bunx nuxi init my-nuxt-app
9
9
  ✔ Which package manager would you like to use?
10
10
  bun
11
11
  ◐ Installing dependencies...
12
- bun install v1.2.23 (16b4bf34)
12
+ bun install v1.2.24-canary.20251001T140657 (16b4bf34)
13
13
  + @nuxt/devtools@0.8.2
14
14
  + nuxt@3.7.0
15
15
  785 packages installed [2.67s]
@@ -15,7 +15,7 @@ This will add the package to `peerDependencies` in `package.json`.
15
15
  ```json-diff
16
16
  {
17
17
  "peerDependencies": {
18
- + "@types/bun": "^1.2.23"
18
+ + "@types/bun": "^1.2.24-canary.20251001T140657"
19
19
  }
20
20
  }
21
21
  ```
@@ -27,7 +27,7 @@ Running `bun install` will install peer dependencies by default, unless marked o
27
27
  ```json-diff
28
28
  {
29
29
  "peerDependencies": {
30
- "@types/bun": "^1.2.23"
30
+ "@types/bun": "^1.2.24-canary.20251001T140657"
31
31
  },
32
32
  "peerDependenciesMeta": {
33
33
  + "@types/bun": {
@@ -97,7 +97,7 @@ $ bun update
97
97
  $ bun update @types/bun --latest
98
98
 
99
99
  # Update a dependency to a specific version
100
- $ bun update @types/bun@1.2.23
100
+ $ bun update @types/bun@1.2.24-canary.20251001T140657
101
101
 
102
102
  # Update all dependencies to the latest versions
103
103
  $ bun update --latest
@@ -21,7 +21,7 @@ Here's what the output of a typical test run looks like. In this case, there are
21
21
 
22
22
  ```sh
23
23
  $ bun test
24
- bun test v1.2.23 (9c68abdb)
24
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
25
25
 
26
26
  test.test.js:
27
27
  ✓ add [0.87ms]
@@ -47,7 +47,7 @@ To only run certain test files, pass a positional argument to `bun test`. The ru
47
47
 
48
48
  ```sh
49
49
  $ bun test test3
50
- bun test v1.2.23 (9c68abdb)
50
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
51
51
 
52
52
  test3.test.js:
53
53
  ✓ add [1.40ms]
@@ -85,7 +85,7 @@ Adding `-t add` will only run tests with "add" in the name. This works with test
85
85
 
86
86
  ```sh
87
87
  $ bun test -t add
88
- bun test v1.2.23 (9c68abdb)
88
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
89
89
 
90
90
  test.test.js:
91
91
  ✓ add [1.79ms]
@@ -18,7 +18,7 @@ The first time this test is executed, Bun will evaluate the value passed into `e
18
18
 
19
19
  ```sh
20
20
  $ bun test test/snap
21
- bun test v1.2.23 (9c68abdb)
21
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
22
22
 
23
23
  test/snap.test.ts:
24
24
  ✓ snapshot [1.48ms]
@@ -61,7 +61,7 @@ Later, when this test file is executed again, Bun will read the snapshot file an
61
61
 
62
62
  ```sh
63
63
  $ bun test
64
- bun test v1.2.23 (9c68abdb)
64
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
65
65
 
66
66
  test/snap.test.ts:
67
67
  ✓ snapshot [1.05ms]
@@ -78,7 +78,7 @@ To update snapshots, use the `--update-snapshots` flag.
78
78
 
79
79
  ```sh
80
80
  $ bun test --update-snapshots
81
- bun test v1.2.23 (9c68abdb)
81
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
82
82
 
83
83
  test/snap.test.ts:
84
84
  ✓ snapshot [0.86ms]
@@ -29,7 +29,7 @@ To regenerate snapshots, use the `--update-snapshots` flag.
29
29
 
30
30
  ```sh
31
31
  $ bun test --update-snapshots
32
- bun test v1.2.23 (9c68abdb)
32
+ bun test v1.2.24-canary.20251001T140657 (9c68abdb)
33
33
 
34
34
  test/snap.test.ts:
35
35
  ✓ snapshot [0.86ms]
@@ -5,7 +5,7 @@ name: Get the current Bun version
5
5
  Get the current version of Bun in a semver format.
6
6
 
7
7
  ```ts#index.ts
8
- Bun.version; // => "1.2.23"
8
+ Bun.version; // => "1.2.24-canary.20251001T140657"
9
9
  ```
10
10
 
11
11
  ---
@@ -24,6 +24,26 @@ To update all dependencies to the latest versions (including breaking changes):
24
24
  bun update --latest
25
25
  ```
26
26
 
27
+ ### Filtering options
28
+
29
+ **`--audit-level=<low|moderate|high|critical>`** - Only show vulnerabilities at this severity level or higher:
30
+
31
+ ```bash
32
+ bun audit --audit-level=high
33
+ ```
34
+
35
+ **`--prod`** - Audit only production dependencies (excludes devDependencies):
36
+
37
+ ```bash
38
+ bun audit --prod
39
+ ```
40
+
41
+ **`--ignore <CVE>`** - Ignore specific CVEs (can be used multiple times):
42
+
43
+ ```bash
44
+ bun audit --ignore CVE-2022-25883 --ignore CVE-2023-26136
45
+ ```
46
+
27
47
  ### `--json`
28
48
 
29
49
  Use the `--json` flag to print the raw JSON response from the registry instead of the formatted report:
@@ -46,3 +46,13 @@ print = "yarn"
46
46
  Bun v1.2 changed the default lockfile format to the text-based `bun.lock`. Existing binary `bun.lockb` lockfiles can be migrated to the new format by running `bun install --save-text-lockfile --frozen-lockfile --lockfile-only` and deleting `bun.lockb`.
47
47
 
48
48
  More information about the new lockfile format can be found on [our blogpost](https://bun.com/blog/bun-lock-text-lockfile).
49
+
50
+ #### Automatic lockfile migration
51
+
52
+ When running `bun install` in a project without a `bun.lock`, Bun automatically migrates existing lockfiles:
53
+
54
+ - `yarn.lock` (v1)
55
+ - `package-lock.json` (npm)
56
+ - `pnpm-lock.yaml` (pnpm)
57
+
58
+ The original lockfile is preserved and can be removed manually after verification.
@@ -73,3 +73,33 @@ The equivalent `bunfig.toml` option is to add a key in [`install.scopes`](https:
73
73
  [install.scopes]
74
74
  myorg = { url = "http://localhost:4873/", username = "myusername", password = "$NPM_PASSWORD" }
75
75
  ```
76
+
77
+ ### `link-workspace-packages`: Control workspace package installation
78
+
79
+ Controls how workspace packages are installed when available locally:
80
+
81
+ ```ini
82
+ link-workspace-packages=true
83
+ ```
84
+
85
+ The equivalent `bunfig.toml` option is [`install.linkWorkspacePackages`](https://bun.com/docs/runtime/bunfig#install-linkworkspacepackages):
86
+
87
+ ```toml
88
+ [install]
89
+ linkWorkspacePackages = true
90
+ ```
91
+
92
+ ### `save-exact`: Save exact versions
93
+
94
+ Always saves exact versions without the `^` prefix:
95
+
96
+ ```ini
97
+ save-exact=true
98
+ ```
99
+
100
+ The equivalent `bunfig.toml` option is [`install.exact`](https://bun.com/docs/runtime/bunfig#install-exact):
101
+
102
+ ```toml
103
+ [install]
104
+ exact = true
105
+ ```
@@ -81,7 +81,7 @@ Workspaces have a couple major benefits.
81
81
 
82
82
  - **Code can be split into logical parts.** If one package relies on another, you can simply add it as a dependency in `package.json`. If package `b` depends on `a`, `bun install` will install your local `packages/a` directory into `node_modules` instead of downloading it from the npm registry.
83
83
  - **Dependencies can be de-duplicated.** If `a` and `b` share a common dependency, it will be _hoisted_ to the root `node_modules` directory. This reduces redundant disk usage and minimizes "dependency hell" issues associated with having multiple versions of a package installed simultaneously.
84
- - **Run scripts in multiple packages.** You can use the [`--filter` flag](https://bun.com/docs/cli/filter) to easily run `package.json` scripts in multiple packages in your workspace.
84
+ - **Run scripts in multiple packages.** You can use the [`--filter` flag](https://bun.com/docs/cli/filter) to easily run `package.json` scripts in multiple packages in your workspace, or `--workspaces` to run scripts across all workspaces.
85
85
 
86
86
  ## Share versions with Catalogs
87
87
 
@@ -14,7 +14,7 @@ Kernel version 5.6 or higher is strongly recommended, but the minimum is 5.1. Us
14
14
  ```bash#macOS/Linux_(curl)
15
15
  $ curl -fsSL https://bun.com/install | bash # for macOS, Linux, and WSL
16
16
  # to install a specific version
17
- $ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.23"
17
+ $ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.24-canary.20251001T140657"
18
18
  ```
19
19
 
20
20
  ```bash#npm
@@ -189,10 +189,10 @@ Since Bun is a single binary, you can install older versions of Bun by re-runnin
189
189
 
190
190
  ### Installing a specific version of Bun on Linux/Mac
191
191
 
192
- To install a specific version of Bun, you can pass the git tag of the version you want to install to the install script, such as `bun-v1.2.0` or `bun-v1.2.23`.
192
+ To install a specific version of Bun, you can pass the git tag of the version you want to install to the install script, such as `bun-v1.2.0` or `bun-v1.2.24-canary.20251001T140657`.
193
193
 
194
194
  ```sh
195
- $ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.23"
195
+ $ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.24-canary.20251001T140657"
196
196
  ```
197
197
 
198
198
  ### Installing a specific version of Bun on Windows
@@ -201,7 +201,7 @@ On Windows, you can install a specific version of Bun by passing the version num
201
201
 
202
202
  ```sh
203
203
  # PowerShell:
204
- $ iex "& {$(irm https://bun.com/install.ps1)} -Version 1.2.23"
204
+ $ iex "& {$(irm https://bun.com/install.ps1)} -Version 1.2.24-canary.20251001T140657"
205
205
  ```
206
206
 
207
207
  ## Downloading Bun binaries directly
@@ -124,11 +124,11 @@ await fetch("https://example.com", {
124
124
  This prints the `fetch` request as a single-line `curl` command to let you copy-paste into your terminal to replicate the request.
125
125
 
126
126
  ```sh
127
- [fetch] $ curl --http1.1 "https://example.com/" -X POST -H "content-type: application/json" -H "Connection: keep-alive" -H "User-Agent: Bun/1.2.23" -H "Accept: */*" -H "Host: example.com" -H "Accept-Encoding: gzip, deflate, br" --compressed -H "Content-Length: 13" --data-raw "{\"foo\":\"bar\"}"
127
+ [fetch] $ curl --http1.1 "https://example.com/" -X POST -H "content-type: application/json" -H "Connection: keep-alive" -H "User-Agent: Bun/1.2.24-canary.20251001T140657" -H "Accept: */*" -H "Host: example.com" -H "Accept-Encoding: gzip, deflate, br" --compressed -H "Content-Length: 13" --data-raw "{\"foo\":\"bar\"}"
128
128
  [fetch] > HTTP/1.1 POST https://example.com/
129
129
  [fetch] > content-type: application/json
130
130
  [fetch] > Connection: keep-alive
131
- [fetch] > User-Agent: Bun/1.2.23
131
+ [fetch] > User-Agent: Bun/1.2.24-canary.20251001T140657
132
132
  [fetch] > Accept: */*
133
133
  [fetch] > Host: example.com
134
134
  [fetch] > Accept-Encoding: gzip, deflate, br
@@ -170,7 +170,7 @@ This prints the following to the console:
170
170
  [fetch] > HTTP/1.1 POST https://example.com/
171
171
  [fetch] > content-type: application/json
172
172
  [fetch] > Connection: keep-alive
173
- [fetch] > User-Agent: Bun/1.2.23
173
+ [fetch] > User-Agent: Bun/1.2.24-canary.20251001T140657
174
174
  [fetch] > Accept: */*
175
175
  [fetch] > Host: example.com
176
176
  [fetch] > Accept-Encoding: gzip, deflate, br
@@ -220,6 +220,11 @@ These environment variables are read by Bun and configure aspects of its behavio
220
220
  - `DO_NOT_TRACK`
221
221
  - Disable uploading crash reports to `bun.report` on crash. On macOS & Windows, crash report uploads are enabled by default. Otherwise, telemetry is not sent yet as of May 21st, 2024, but we are planning to add telemetry in the coming weeks. If `DO_NOT_TRACK=1`, then auto-uploading crash reports and telemetry are both [disabled](https://do-not-track.dev/).
222
222
 
223
+ ---
224
+
225
+ - `BUN_OPTIONS`
226
+ - Prepends command-line arguments to any Bun execution. For example, `BUN_OPTIONS="--hot"` makes `bun run dev` behave like `bun --hot run dev`.
227
+
223
228
  {% /table %}
224
229
 
225
230
  ## Runtime transpiler caching
@@ -124,7 +124,7 @@ This page is updated regularly to reflect compatibility status of the latest ver
124
124
 
125
125
  ### [`node:perf_hooks`](https://nodejs.org/api/perf_hooks.html)
126
126
 
127
- 🟡 Missing `createHistogram` `monitorEventLoopDelay`. It's recommended to use `performance` global instead of `perf_hooks.performance`.
127
+ 🟡 APIs are implemented, but Node.js test suite does not pass yet for this module.
128
128
 
129
129
  ### [`node:process`](https://nodejs.org/api/process.html)
130
130
 
@@ -156,7 +156,7 @@ This page is updated regularly to reflect compatibility status of the latest ver
156
156
 
157
157
  ### [`node:worker_threads`](https://nodejs.org/api/worker_threads.html)
158
158
 
159
- 🟡 `Worker` doesn't support the following options: `stdin` `stdout` `stderr` `trackedUnmanagedFds` `resourceLimits`. Missing `markAsUntransferable` `moveMessagePortToContext` `getHeapSnapshot`.
159
+ 🟡 `Worker` doesn't support the following options: `stdin` `stdout` `stderr` `trackedUnmanagedFds` `resourceLimits`. Missing `markAsUntransferable` `moveMessagePortToContext`.
160
160
 
161
161
  ### [`node:inspector`](https://nodejs.org/api/inspector.html)
162
162
 
package/docs/test/dom.md CHANGED
@@ -55,7 +55,7 @@ Let's run this test with `bun test`:
55
55
 
56
56
  ```bash
57
57
  $ bun test
58
- bun test v1.2.23
58
+ bun test v1.2.24-canary.20251001T140657
59
59
 
60
60
  dom.test.ts:
61
61
  ✓ dom test [0.82ms]
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.2.23",
2
+ "version": "1.2.24-canary.20251001T140657",
3
3
  "name": "bun-types",
4
4
  "license": "MIT",
5
5
  "types": "./index.d.ts",