Commit Graph

13879 Commits

Author SHA1 Message Date
Alistair Smith
4cec2ecdc6 changes 2025-09-26 00:09:23 -07:00
Alistair Smith
98b24f5797 2025-09-25 20:05:45 -07:00
Alistair Smith
678843fb59 Merge branch 'zack/ssg-3' of github.com:oven-sh/bun into ali/react 2025-09-25 20:00:06 -07:00
Alistair Smith
7227745249 0.0.0-canary.7 2025-09-25 19:59:35 -07:00
Zack Radisic
472e2d379f fixes 2025-09-25 19:54:39 -07:00
autofix-ci[bot]
16360c9432 [autofix.ci] apply automated fixes 2025-09-26 02:46:56 +00:00
Alistair Smith
1b3d0d5c40 regen 2025-09-25 19:43:57 -07:00
Alistair Smith
799248bfb4 use vendored rsdb 2025-09-25 19:42:06 -07:00
Alistair Smith
a2689c03e9 change 2025-09-25 19:31:10 -07:00
Zack Radisic
2a7e2c9cf3 Remove unncessary dupe 2025-09-25 19:13:59 -07:00
Alistair Smith
4f0d2a5624 throw if no exports instead of silently failing 2025-09-25 18:40:49 -07:00
Alistair Smith
23230112b0 types 2025-09-25 18:31:29 -07:00
Alistair Smith
c2c2a1685a changes 2025-09-25 18:15:31 -07:00
Alistair Smith
09716704bb pageModule might not resolve 2025-09-25 17:46:18 -07:00
Alistair Smith
2d3223c5a6 Merge branch 'zack/ssg-3' of github.com:oven-sh/bun into ali/react 2025-09-25 17:34:56 -07:00
Alistair Smith
891ea726d6 changes 2025-09-25 17:29:52 -07:00
Zack Radisic
11eddb2cf1 resolve comments 2025-09-25 15:20:27 -07:00
autofix-ci[bot]
0cc63255b1 [autofix.ci] apply automated fixes 2025-09-25 07:05:28 +00:00
Zack Radisic
71a5f9fb26 Delete console logs 2025-09-25 00:02:14 -07:00
Zack Radisic
b257967189 Merge branch 'zack/ssg-3' of github.com:oven-sh/bun into zack/ssg-3 2025-09-25 00:00:48 -07:00
Zack Radisic
4e629753cc better way to do Response.render(...) 2025-09-24 23:57:45 -07:00
Jarred Sumner
7204820f19 Update BakeGlobalObject.cpp 2025-09-24 23:47:29 -07:00
Jarred Sumner
af3a1ffd46 Update BakeGlobalObject.cpp 2025-09-24 23:47:18 -07:00
Jarred Sumner
2ff068dad2 Update visitExpr.zig 2025-09-24 23:07:27 -07:00
Alistair Smith
927065238b allow warnings in bun install 2025-09-24 21:55:31 -07:00
Alistair Smith
fa727b22de remove 2025-09-24 21:45:23 -07:00
Alistair Smith
f20b0ced8e tidy bake harness 2025-09-24 21:41:34 -07:00
Alistair Smith
17fdb5bcdf move this 2025-09-24 21:37:25 -07:00
Alistair Smith
f65d89ff8b changes 2025-09-24 21:34:49 -07:00
Alistair Smith
c1931c11fe lots of Framework interface documentation 2025-09-24 20:24:06 -07:00
Alistair Smith
67d27499c3 canary.5 2025-09-24 19:49:34 -07:00
Alistair Smith
85db75611b canary.3 2025-09-24 19:38:24 -07:00
Alistair Smith
61519b320d reorganise 2025-09-24 19:20:30 -07:00
Alistair Smith
c129d683cd types & other changes 2025-09-24 19:08:31 -07:00
Alistair Smith
0b0ffbf250 Merge branch 'zack/ssg-3' into ali/react 2025-09-24 18:58:13 -07:00
Alistair Smith
c64dd684c8 vendor react-server-dom-bun 2025-09-24 18:55:19 -07:00
Alistair Smith
5aa5906ccf Merge branch 'main' into zack/ssg-3 2025-09-24 18:48:29 -07:00
robobun
fee28ca66f Fix dns.resolve callback parameters to match Node.js behavior (#22814)
## Summary
- Fixed `dns.resolve()` callback to pass 2 parameters instead of 3,
matching Node.js
- Fixed `dns.promises.resolve()` to return array of strings for A/AAAA
records instead of objects
- Added comprehensive regression tests

## What was wrong?

The `dns.resolve()` callback was incorrectly passing 3 parameters
`(error, hostname, results)` instead of Node.js's 2 parameters `(error,
results)`. Additionally, `dns.promises.resolve()` was returning objects
with `{address, family}` instead of plain string arrays for A/AAAA
records.

## How this fixes it

1. Removed the extra `hostname` parameter from the callback in
`dns.resolve()` for A/AAAA records
2. Changed promise version to use `promisifyResolveX(false)` instead of
`promisifyLookup()` to return string arrays
3. Applied same fixes to the `Resolver` class methods

## Test plan
- Added regression test `test/regression/issue/22712.test.ts` with 6
test cases
- All tests pass with the fix
- Verified existing DNS tests still pass

Fixes #22712

🤖 Generated with [Claude Code](https://claude.ai/code)

---------

Co-authored-by: Claude Bot <claude-bot@bun.sh>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-24 18:29:15 -07:00
robobun
f9a042f114 Improve --reporter flag help and error messages (#22900)
## Summary
- Clarifies help text for `--reporter` and `--reporter-outfile` flags
- Improves error messages when invalid reporter formats are specified
- Makes distinction between test reporters and coverage reporters
clearer

## Changes
1. Updated help text in `Arguments.zig` to better explain:
   - What formats are currently available (only 'junit' for --reporter)
   - Default behavior (console output for tests)
   - Requirements (--reporter-outfile needed with --reporter=junit)
   
2. Improved error messages to list available options when invalid
formats are used

3. Updated CLI completions to match the new help text

## Test plan
- [x] Built and tested with `bun bd`
- [x] Verified help text displays correctly: `./build/debug/bun-debug
test --help`
- [x] Tested error message for invalid reporter:
`./build/debug/bun-debug test --reporter=json`
- [x] Tested error message for missing outfile: `./build/debug/bun-debug
test --reporter=junit`
- [x] Tested error message for invalid coverage reporter:
`./build/debug/bun-debug test --coverage-reporter=invalid`
- [x] Verified junit reporter still works: `./build/debug/bun-debug test
--reporter=junit --reporter-outfile=/tmp/junit.xml`
- [x] Verified lcov coverage reporter still works:
`./build/debug/bun-debug test --coverage --coverage-reporter=lcov`

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude Bot <claude-bot@bun.sh>
Co-authored-by: Claude <noreply@anthropic.com>
2025-09-24 18:26:37 -07:00
robobun
57b93f6ea3 Fix panic when macros return collections with 3+ arrays/objects (#22827)
## Summary

Fixes #22656, #11730, and #7116

Fixes a panic that occurred when macros returned collections containing
three or more arrays or objects.

## Problem

The issue was caused by hash table resizing during recursive processing.
When `this.run()` was called recursively to process nested
arrays/objects, it could add more entries to the `visited` map,
triggering a resize. This would invalidate the `_entry.value_ptr`
pointer obtained from `getOrPut`, leading to memory corruption and
crashes.

## Solution

The fix ensures we handle hash table resizing safely:

1. Use `getOrPut` to reserve an entry and store a placeholder
2. Process all children (which may trigger hash table resizing)
3. Create the final expression with all data
4. Use `put` to update the entry (safe even after resizing)

This approach is applied consistently to both arrays and objects.

## Verification

All three issues have been tested and verified as fixed:

###  #22656 - "Panic when returning collections with three or more
arrays or objects"
- **Before**: `panic(main thread): switch on corrupt value`
- **After**: Works correctly

###  #11730 - "Constructing deep objects in macros causes segfaults"
- **Before**: `Segmentation fault at address 0x8` with deep nested
structures
- **After**: Handles deep nesting without crashes

###  #7116 - "[macro] crash with large complex array"
- **Before**: Crashes with objects containing 50+ properties (hash table
stress)
- **After**: Processes large complex arrays successfully

## Test Plan

Added comprehensive regression tests that cover:
- Collections with 3+ arrays
- Collections with 3+ objects
- Deeply nested structures (5+ levels)
- Objects with many properties (50+) to stress hash table operations
- Mixed collections of arrays and objects

All tests pass with the fix applied.

🤖 Generated with [Claude Code](https://claude.ai/code)

---------

Co-authored-by: Claude Bot <claude-bot@bun.sh>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-24 18:25:39 -07:00
robobun
fcd628424a Fix YAML.parse to throw SyntaxError instead of BuildMessage (#22924)
YAML.parse now throws SyntaxError for invalid syntax matching JSON.parse
behavior

---------

Co-authored-by: Claude Bot <claude-bot@bun.sh>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2025-09-24 16:29:05 -07:00
pfg
526686fdc9 Prevent test.only and snapshot updates in CI (#21811)
This is feature flagged and will not activate until Bun 1.3

- Makes `test.only()` throw an error in CI
- Unless `--update-snapshots` is passed:
- Makes `expect.toMatchSnapshot()` throw an error instead of adding a
new snapshot in CI
- Makes `expect.toMatchInlineSnapshot()` throw an error instead of
filling in the snapshot value in CI

---------

Co-authored-by: Claude Bot <claude-bot@bun.sh>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-24 15:19:16 -07:00
pfg
95b18582ec Revert "concurrent limit"
This reverts commit 4252a6df31.
2025-09-24 15:09:20 -07:00
pfg
4252a6df31 concurrent limit 2025-09-24 15:08:36 -07:00
Alistair Smith
c93d8cf12b changes 2025-09-24 13:53:46 -07:00
Meghan Denny
13248bab57 package.json: add shorthands for creating remote machines (#22780) 2025-09-24 13:11:19 -07:00
Meghan Denny
80e8b9601d update no-validate-exceptions.txt (#22907) 2025-09-24 12:57:14 -07:00
btcbobby
0bd3f3757f Update install.sh to try ~/.bash_profile first for PATH modification (#11679) 2025-09-24 12:53:45 -07:00
Dylan Conway
084eeb945e fix(install): serialize updated workspaces versions correctly for bun.lockb (#22932)
### What does this PR do?
This change was missing after changing semver core numbers to use u64.

Also fixes potentially serializing uninitialized bytes from resolution
unions.
### How did you verify your code works?
Added a test for migrating a bun.lockb with most features used.
2025-09-24 02:42:57 -07:00
Meghan Denny
92bc522e85 lsan: fix reporting on linux ci (#22806) 2025-09-24 00:47:52 -07:00