bun-types 1.2.23 → 1.2.24-canary.20251002T140601
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/docs/api/fetch.md +3 -2
- package/docs/api/glob.md +21 -0
- package/docs/api/redis.md +7 -0
- package/docs/api/spawn.md +1 -1
- package/docs/api/sql.md +16 -0
- package/docs/api/sqlite.md +2 -0
- package/docs/api/streams.md +14 -0
- package/docs/api/utils.md +34 -0
- package/docs/api/websockets.md +14 -0
- package/docs/api/workers.md +25 -0
- package/docs/bundler/executables.md +13 -0
- package/docs/bundler/index.md +66 -0
- package/docs/cli/bun-install.md +103 -1
- package/docs/cli/bunx.md +9 -0
- package/docs/cli/init.md +5 -0
- package/docs/cli/outdated.md +43 -0
- package/docs/cli/pm.md +1 -1
- package/docs/cli/publish.md +11 -1
- package/docs/cli/run.md +35 -0
- package/docs/cli/test.md +7 -0
- package/docs/cli/update.md +11 -0
- package/docs/guides/ecosystem/nuxt.md +1 -1
- package/docs/guides/install/add-peer.md +2 -2
- package/docs/guides/install/from-npm-install-to-bun-install.md +1 -1
- package/docs/guides/test/run-tests.md +3 -3
- package/docs/guides/test/snapshot.md +3 -3
- package/docs/guides/test/update-snapshots.md +1 -1
- package/docs/guides/util/version.md +1 -1
- package/docs/install/audit.md +20 -0
- package/docs/install/lockfile.md +10 -0
- package/docs/install/npmrc.md +30 -0
- package/docs/install/workspaces.md +1 -1
- package/docs/installation.md +4 -4
- package/docs/runtime/debugger.md +3 -3
- package/docs/runtime/env.md +5 -0
- package/docs/runtime/nodejs-apis.md +2 -2
- package/docs/test/dom.md +1 -1
- package/package.json +1 -1
- package/redis.d.ts +2607 -82
package/docs/cli/update.md
CHANGED
|
@@ -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.
|
|
12
|
+
bun install v1.2.24-canary.20251002T140601 (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.
|
|
18
|
+
+ "@types/bun": "^1.2.24-canary.20251002T140601"
|
|
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.
|
|
30
|
+
"@types/bun": "^1.2.24-canary.20251002T140601"
|
|
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.
|
|
100
|
+
$ bun update @types/bun@1.2.24-canary.20251002T140601
|
|
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.
|
|
24
|
+
bun test v1.2.24-canary.20251002T140601 (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.
|
|
50
|
+
bun test v1.2.24-canary.20251002T140601 (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.
|
|
88
|
+
bun test v1.2.24-canary.20251002T140601 (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.
|
|
21
|
+
bun test v1.2.24-canary.20251002T140601 (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.
|
|
64
|
+
bun test v1.2.24-canary.20251002T140601 (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.
|
|
81
|
+
bun test v1.2.24-canary.20251002T140601 (9c68abdb)
|
|
82
82
|
|
|
83
83
|
test/snap.test.ts:
|
|
84
84
|
✓ snapshot [0.86ms]
|
package/docs/install/audit.md
CHANGED
|
@@ -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:
|
package/docs/install/lockfile.md
CHANGED
|
@@ -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.
|
package/docs/install/npmrc.md
CHANGED
|
@@ -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
|
|
package/docs/installation.md
CHANGED
|
@@ -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.
|
|
17
|
+
$ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.24-canary.20251002T140601"
|
|
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.
|
|
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.20251002T140601`.
|
|
193
193
|
|
|
194
194
|
```sh
|
|
195
|
-
$ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.
|
|
195
|
+
$ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.24-canary.20251002T140601"
|
|
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.
|
|
204
|
+
$ iex "& {$(irm https://bun.com/install.ps1)} -Version 1.2.24-canary.20251002T140601"
|
|
205
205
|
```
|
|
206
206
|
|
|
207
207
|
## Downloading Bun binaries directly
|
package/docs/runtime/debugger.md
CHANGED
|
@@ -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.
|
|
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.20251002T140601" -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.
|
|
131
|
+
[fetch] > User-Agent: Bun/1.2.24-canary.20251002T140601
|
|
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.
|
|
173
|
+
[fetch] > User-Agent: Bun/1.2.24-canary.20251002T140601
|
|
174
174
|
[fetch] > Accept: */*
|
|
175
175
|
[fetch] > Host: example.com
|
|
176
176
|
[fetch] > Accept-Encoding: gzip, deflate, br
|
package/docs/runtime/env.md
CHANGED
|
@@ -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
|
-
🟡
|
|
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
|
|
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
package/package.json
CHANGED