bun-types 1.2.19-canary.20250718T140639 → 1.2.19
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 +1 -1
- package/docs/api/spawn.md +1 -1
- package/docs/bundler/executables.md +14 -0
- package/docs/cli/pm.md +1 -1
- package/docs/cli/publish.md +1 -1
- package/docs/cli/test.md +1 -2
- 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/runtime/build-time-constants.md +293 -0
- 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/installation.md +4 -4
- package/docs/runtime/debugger.md +3 -3
- package/docs/test/dom.md +1 -1
- package/package.json +1 -1
package/docs/api/fetch.md
CHANGED
|
@@ -337,7 +337,7 @@ This will print the request and response headers to your terminal:
|
|
|
337
337
|
```sh
|
|
338
338
|
[fetch] > HTTP/1.1 GET http://example.com/
|
|
339
339
|
[fetch] > Connection: keep-alive
|
|
340
|
-
[fetch] > User-Agent: Bun/1.2.19
|
|
340
|
+
[fetch] > User-Agent: Bun/1.2.19
|
|
341
341
|
[fetch] > Accept: */*
|
|
342
342
|
[fetch] > Host: example.com
|
|
343
343
|
[fetch] > Accept-Encoding: gzip, deflate, br
|
package/docs/api/spawn.md
CHANGED
|
@@ -140,7 +140,7 @@ You can read results from the subprocess via the `stdout` and `stderr` propertie
|
|
|
140
140
|
```ts
|
|
141
141
|
const proc = Bun.spawn(["bun", "--version"]);
|
|
142
142
|
const text = await proc.stdout.text();
|
|
143
|
-
console.log(text); // => "1.2.19
|
|
143
|
+
console.log(text); // => "1.2.19\n"
|
|
144
144
|
```
|
|
145
145
|
|
|
146
146
|
Configure the output stream by passing one of the following values to `stdout/stderr`:
|
|
@@ -88,6 +88,20 @@ The order of the `--target` flag does not matter, as long as they're delimited b
|
|
|
88
88
|
|
|
89
89
|
On x64 platforms, Bun uses SIMD optimizations which require a modern CPU supporting AVX2 instructions. The `-baseline` build of Bun is for older CPUs that don't support these optimizations. Normally, when you install Bun we automatically detect which version to use but this can be harder to do when cross-compiling since you might not know the target CPU. You usually don't need to worry about it on Darwin x64, but it is relevant for Windows x64 and Linux x64. If you or your users see `"Illegal instruction"` errors, you might need to use the baseline version.
|
|
90
90
|
|
|
91
|
+
## Build-time constants
|
|
92
|
+
|
|
93
|
+
Use the `--define` flag to inject build-time constants into your executable, such as version numbers, build timestamps, or configuration values:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
$ bun build --compile --define BUILD_VERSION='"1.2.3"' --define BUILD_TIME='"2024-01-15T10:30:00Z"' src/cli.ts --outfile mycli
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
These constants are embedded directly into your compiled binary at build time, providing zero runtime overhead and enabling dead code elimination optimizations.
|
|
100
|
+
|
|
101
|
+
{% callout type="info" %}
|
|
102
|
+
For comprehensive examples and advanced patterns, see the [Build-time constants guide](/guides/runtime/build-time-constants).
|
|
103
|
+
{% /callout %}
|
|
104
|
+
|
|
91
105
|
## Deploying to production
|
|
92
106
|
|
|
93
107
|
Compiled executables reduce memory usage and improve Bun's start time.
|
package/docs/cli/pm.md
CHANGED
package/docs/cli/publish.md
CHANGED
package/docs/cli/test.md
CHANGED
|
@@ -258,7 +258,7 @@ Set any of the following environment variables to enable AI-friendly output:
|
|
|
258
258
|
|
|
259
259
|
- `CLAUDECODE=1` - For Claude Code
|
|
260
260
|
- `REPL_ID=1` - For Replit
|
|
261
|
-
- `
|
|
261
|
+
- `AGENT=1` - Generic AI agent flag
|
|
262
262
|
|
|
263
263
|
### Behavior
|
|
264
264
|
|
|
@@ -267,7 +267,6 @@ When an AI agent environment is detected:
|
|
|
267
267
|
- Only test failures are displayed in detail
|
|
268
268
|
- Passing, skipped, and todo test indicators are hidden
|
|
269
269
|
- Summary statistics remain intact
|
|
270
|
-
- JUnit XML reporting is preserved
|
|
271
270
|
|
|
272
271
|
```bash
|
|
273
272
|
# Example: Enable quiet output for Claude Code
|
|
@@ -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.19
|
|
12
|
+
bun install v1.2.19 (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.19
|
|
18
|
+
+ "@types/bun": "^1.2.19"
|
|
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.19
|
|
30
|
+
"@types/bun": "^1.2.19"
|
|
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.19
|
|
100
|
+
$ bun update @types/bun@1.2.19
|
|
101
101
|
|
|
102
102
|
# Update all dependencies to the latest versions
|
|
103
103
|
$ bun update --latest
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Build-time constants with --define
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
The `--define` flag can be used with `bun build` and `bun build --compile` to inject build-time constants into your application. This is especially useful for embedding metadata like build versions, timestamps, or configuration flags directly into your compiled executables.
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
$ bun build --compile --define BUILD_VERSION='"1.2.3"' --define BUILD_TIME='"2024-01-15T10:30:00Z"' src/index.ts --outfile myapp
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Why use build-time constants?
|
|
14
|
+
|
|
15
|
+
Build-time constants are embedded directly into your compiled code, making them:
|
|
16
|
+
|
|
17
|
+
- **Zero runtime overhead** - No environment variable lookups or file reads
|
|
18
|
+
- **Immutable** - Values are baked into the binary at compile time
|
|
19
|
+
- **Optimizable** - Dead code elimination can remove unused branches
|
|
20
|
+
- **Secure** - No external dependencies or configuration files to manage
|
|
21
|
+
|
|
22
|
+
This is similar to `gcc -D` or `#define` in C/C++, but for JavaScript/TypeScript.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Basic usage
|
|
27
|
+
|
|
28
|
+
### With `bun build`
|
|
29
|
+
|
|
30
|
+
```sh
|
|
31
|
+
# Bundle with build-time constants
|
|
32
|
+
$ bun build --define BUILD_VERSION='"1.0.0"' --define NODE_ENV='"production"' src/index.ts --outdir ./dist
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### With `bun build --compile`
|
|
36
|
+
|
|
37
|
+
```sh
|
|
38
|
+
# Compile to executable with build-time constants
|
|
39
|
+
$ bun build --compile --define BUILD_VERSION='"1.0.0"' --define BUILD_TIME='"2024-01-15T10:30:00Z"' src/cli.ts --outfile mycli
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### JavaScript API
|
|
43
|
+
|
|
44
|
+
```ts
|
|
45
|
+
await Bun.build({
|
|
46
|
+
entrypoints: ["./src/index.ts"],
|
|
47
|
+
outdir: "./dist",
|
|
48
|
+
define: {
|
|
49
|
+
BUILD_VERSION: '"1.0.0"',
|
|
50
|
+
BUILD_TIME: '"2024-01-15T10:30:00Z"',
|
|
51
|
+
DEBUG: "false",
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Common use cases
|
|
59
|
+
|
|
60
|
+
### Version information
|
|
61
|
+
|
|
62
|
+
Embed version and build metadata directly into your executable:
|
|
63
|
+
|
|
64
|
+
{% codetabs %}
|
|
65
|
+
|
|
66
|
+
```ts#src/version.ts
|
|
67
|
+
// These constants are replaced at build time
|
|
68
|
+
declare const BUILD_VERSION: string;
|
|
69
|
+
declare const BUILD_TIME: string;
|
|
70
|
+
declare const GIT_COMMIT: string;
|
|
71
|
+
|
|
72
|
+
export function getVersion() {
|
|
73
|
+
return {
|
|
74
|
+
version: BUILD_VERSION,
|
|
75
|
+
buildTime: BUILD_TIME,
|
|
76
|
+
commit: GIT_COMMIT,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
```sh#Build command
|
|
82
|
+
$ bun build --compile \
|
|
83
|
+
--define BUILD_VERSION='"1.2.3"' \
|
|
84
|
+
--define BUILD_TIME='"2024-01-15T10:30:00Z"' \
|
|
85
|
+
--define GIT_COMMIT='"abc123"' \
|
|
86
|
+
src/cli.ts --outfile mycli
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
{% /codetabs %}
|
|
90
|
+
|
|
91
|
+
### Feature flags
|
|
92
|
+
|
|
93
|
+
Use build-time constants to enable/disable features:
|
|
94
|
+
|
|
95
|
+
```ts
|
|
96
|
+
// Replaced at build time
|
|
97
|
+
declare const ENABLE_ANALYTICS: boolean;
|
|
98
|
+
declare const ENABLE_DEBUG: boolean;
|
|
99
|
+
|
|
100
|
+
function trackEvent(event: string) {
|
|
101
|
+
if (ENABLE_ANALYTICS) {
|
|
102
|
+
// This entire block is removed if ENABLE_ANALYTICS is false
|
|
103
|
+
console.log("Tracking:", event);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if (ENABLE_DEBUG) {
|
|
108
|
+
console.log("Debug mode enabled");
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
```sh
|
|
113
|
+
# Production build - analytics enabled, debug disabled
|
|
114
|
+
$ bun build --compile --define ENABLE_ANALYTICS=true --define ENABLE_DEBUG=false src/app.ts --outfile app-prod
|
|
115
|
+
|
|
116
|
+
# Development build - both enabled
|
|
117
|
+
$ bun build --compile --define ENABLE_ANALYTICS=false --define ENABLE_DEBUG=true src/app.ts --outfile app-dev
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Configuration
|
|
121
|
+
|
|
122
|
+
Replace configuration objects at build time:
|
|
123
|
+
|
|
124
|
+
```ts
|
|
125
|
+
declare const CONFIG: {
|
|
126
|
+
apiUrl: string;
|
|
127
|
+
timeout: number;
|
|
128
|
+
retries: number;
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
// CONFIG is replaced with the actual object at build time
|
|
132
|
+
const response = await fetch(CONFIG.apiUrl, {
|
|
133
|
+
timeout: CONFIG.timeout,
|
|
134
|
+
});
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
```sh
|
|
138
|
+
$ bun build --compile --define 'CONFIG={"apiUrl":"https://api.example.com","timeout":5000,"retries":3}' src/app.ts --outfile app
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Advanced patterns
|
|
144
|
+
|
|
145
|
+
### Environment-specific builds
|
|
146
|
+
|
|
147
|
+
Create different executables for different environments:
|
|
148
|
+
|
|
149
|
+
```json
|
|
150
|
+
{
|
|
151
|
+
"scripts": {
|
|
152
|
+
"build:dev": "bun build --compile --define NODE_ENV='\"development\"' --define API_URL='\"http://localhost:3000\"' src/app.ts --outfile app-dev",
|
|
153
|
+
"build:staging": "bun build --compile --define NODE_ENV='\"staging\"' --define API_URL='\"https://staging.example.com\"' src/app.ts --outfile app-staging",
|
|
154
|
+
"build:prod": "bun build --compile --define NODE_ENV='\"production\"' --define API_URL='\"https://api.example.com\"' src/app.ts --outfile app-prod"
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Using shell commands for dynamic values
|
|
160
|
+
|
|
161
|
+
Generate build-time constants from shell commands:
|
|
162
|
+
|
|
163
|
+
```sh
|
|
164
|
+
# Use git to get current commit and timestamp
|
|
165
|
+
$ bun build --compile \
|
|
166
|
+
--define BUILD_VERSION="\"$(git describe --tags --always)\"" \
|
|
167
|
+
--define BUILD_TIME="\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\"" \
|
|
168
|
+
--define GIT_COMMIT="\"$(git rev-parse HEAD)\"" \
|
|
169
|
+
src/cli.ts --outfile mycli
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Build automation script
|
|
173
|
+
|
|
174
|
+
Create a build script that automatically injects build metadata:
|
|
175
|
+
|
|
176
|
+
```ts
|
|
177
|
+
// build.ts
|
|
178
|
+
import { $ } from "bun";
|
|
179
|
+
|
|
180
|
+
const version = await $`git describe --tags --always`.text();
|
|
181
|
+
const buildTime = new Date().toISOString();
|
|
182
|
+
const gitCommit = await $`git rev-parse HEAD`.text();
|
|
183
|
+
|
|
184
|
+
await Bun.build({
|
|
185
|
+
entrypoints: ["./src/cli.ts"],
|
|
186
|
+
outdir: "./dist",
|
|
187
|
+
define: {
|
|
188
|
+
BUILD_VERSION: JSON.stringify(version.trim()),
|
|
189
|
+
BUILD_TIME: JSON.stringify(buildTime),
|
|
190
|
+
GIT_COMMIT: JSON.stringify(gitCommit.trim()),
|
|
191
|
+
},
|
|
192
|
+
});
|
|
193
|
+
|
|
194
|
+
console.log(`Built with version ${version.trim()}`);
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Important considerations
|
|
200
|
+
|
|
201
|
+
### Value format
|
|
202
|
+
|
|
203
|
+
Values must be valid JSON that will be parsed and inlined as JavaScript expressions:
|
|
204
|
+
|
|
205
|
+
```sh
|
|
206
|
+
# ✅ Strings must be JSON-quoted
|
|
207
|
+
--define VERSION='"1.0.0"'
|
|
208
|
+
|
|
209
|
+
# ✅ Numbers are JSON literals
|
|
210
|
+
--define PORT=3000
|
|
211
|
+
|
|
212
|
+
# ✅ Booleans are JSON literals
|
|
213
|
+
--define DEBUG=true
|
|
214
|
+
|
|
215
|
+
# ✅ Objects and arrays (use single quotes to wrap the JSON)
|
|
216
|
+
--define 'CONFIG={"host":"localhost","port":3000}'
|
|
217
|
+
|
|
218
|
+
# ✅ Arrays work too
|
|
219
|
+
--define 'FEATURES=["auth","billing","analytics"]'
|
|
220
|
+
|
|
221
|
+
# ❌ This won't work - missing quotes around string
|
|
222
|
+
--define VERSION=1.0.0
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
### Property keys
|
|
226
|
+
|
|
227
|
+
You can use property access patterns as keys, not just simple identifiers:
|
|
228
|
+
|
|
229
|
+
```sh
|
|
230
|
+
# ✅ Replace process.env.NODE_ENV with "production"
|
|
231
|
+
--define 'process.env.NODE_ENV="production"'
|
|
232
|
+
|
|
233
|
+
# ✅ Replace process.env.API_KEY with the actual key
|
|
234
|
+
--define 'process.env.API_KEY="abc123"'
|
|
235
|
+
|
|
236
|
+
# ✅ Replace nested properties
|
|
237
|
+
--define 'window.myApp.version="1.0.0"'
|
|
238
|
+
|
|
239
|
+
# ✅ Replace array access
|
|
240
|
+
--define 'process.argv[2]="--production"'
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
This is particularly useful for environment variables:
|
|
244
|
+
|
|
245
|
+
```ts
|
|
246
|
+
// Before compilation
|
|
247
|
+
if (process.env.NODE_ENV === "production") {
|
|
248
|
+
console.log("Production mode");
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
// After compilation with --define 'process.env.NODE_ENV="production"'
|
|
252
|
+
if ("production" === "production") {
|
|
253
|
+
console.log("Production mode");
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// After optimization
|
|
257
|
+
console.log("Production mode");
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
### TypeScript declarations
|
|
261
|
+
|
|
262
|
+
For TypeScript projects, declare your constants to avoid type errors:
|
|
263
|
+
|
|
264
|
+
```ts
|
|
265
|
+
// types/build-constants.d.ts
|
|
266
|
+
declare const BUILD_VERSION: string;
|
|
267
|
+
declare const BUILD_TIME: string;
|
|
268
|
+
declare const NODE_ENV: "development" | "staging" | "production";
|
|
269
|
+
declare const DEBUG: boolean;
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
### Cross-platform compatibility
|
|
273
|
+
|
|
274
|
+
When building for multiple platforms, constants work the same way:
|
|
275
|
+
|
|
276
|
+
```sh
|
|
277
|
+
# Linux
|
|
278
|
+
$ bun build --compile --target=bun-linux-x64 --define PLATFORM='"linux"' src/app.ts --outfile app-linux
|
|
279
|
+
|
|
280
|
+
# macOS
|
|
281
|
+
$ bun build --compile --target=bun-darwin-x64 --define PLATFORM='"darwin"' src/app.ts --outfile app-macos
|
|
282
|
+
|
|
283
|
+
# Windows
|
|
284
|
+
$ bun build --compile --target=bun-windows-x64 --define PLATFORM='"windows"' src/app.ts --outfile app-windows.exe
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## Related
|
|
290
|
+
|
|
291
|
+
- [Define constants at runtime](/guides/runtime/define-constant) - Using `--define` with `bun run`
|
|
292
|
+
- [Building executables](/bundler/executables) - Complete guide to `bun build --compile`
|
|
293
|
+
- [Bundler API](/bundler) - Full bundler documentation including `define` option
|
|
@@ -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.19
|
|
24
|
+
bun test v1.2.19 (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.19
|
|
50
|
+
bun test v1.2.19 (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.19
|
|
88
|
+
bun test v1.2.19 (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.19
|
|
21
|
+
bun test v1.2.19 (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.19
|
|
64
|
+
bun test v1.2.19 (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.19
|
|
81
|
+
bun test v1.2.19 (9c68abdb)
|
|
82
82
|
|
|
83
83
|
test/snap.test.ts:
|
|
84
84
|
✓ snapshot [0.86ms]
|
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.19
|
|
17
|
+
$ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.19"
|
|
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.19
|
|
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.19`.
|
|
193
193
|
|
|
194
194
|
```sh
|
|
195
|
-
$ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.19
|
|
195
|
+
$ curl -fsSL https://bun.com/install | bash -s "bun-v1.2.19"
|
|
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.19
|
|
204
|
+
$ iex "& {$(irm https://bun.com/install.ps1)} -Version 1.2.19"
|
|
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.19
|
|
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.19" -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.19
|
|
131
|
+
[fetch] > User-Agent: Bun/1.2.19
|
|
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.19
|
|
173
|
+
[fetch] > User-Agent: Bun/1.2.19
|
|
174
174
|
[fetch] > Accept: */*
|
|
175
175
|
[fetch] > Host: example.com
|
|
176
176
|
[fetch] > Accept-Encoding: gzip, deflate, br
|
package/docs/test/dom.md
CHANGED
package/package.json
CHANGED