Skip to content

Deduplicate jsc bindings, runtime api, test matchers, and shell builtins#32023

Open
alii wants to merge 4 commits into
claude/split/install-clifrom
claude/split/jsc-runtime
Open

Deduplicate jsc bindings, runtime api, test matchers, and shell builtins#32023
alii wants to merge 4 commits into
claude/split/install-clifrom
claude/split/jsc-runtime

Conversation

@alii

@alii alii commented Jun 9, 2026

Copy link
Copy Markdown
Member

What this does

The interlocked runtime cluster: ConsoleObject TagResult rework shared with the macro evaluator and test-runner pretty printer; expect(...) matcher dedup (deletes toStrictEqual.rs twin); subprocess Writable extraction shared with shell subproc; shell builtins' OutputTaskVTable macro; URL moving to a re-export of bun_url::whatwg::URL with a UrlJsc extension trait; deletion of the dead draft FFI implementation (~620 lines); cron/CryptoHasher/dns/valkey/CodeCoverage dedups. Net −5k lines.

Stacked on the install-cli PR — merge order: foundations → install-cli → this. Split from #31912 (whole-repo simplification pass; closing that PR in favor of module-scoped splits). This PR only moves and removes code — zero intended behavior change.

Verification

  • Per-file behavioral-equivalence audit and full CI on Remove dead code and deduplicate helpers across src/ #31912.
  • The URL extension-trait split had broken compilation (URL::href_from_js called in fetch.rs without the UrlJsc trait in scope); fixed by importing the trait. cargo clippy --workspace and rust:check-all (all 10 target configs) now pass.
  • Debug build locally passes the suites covering the touched areas: expect matchers (expect.test.js, toHaveReturnedWith), console formatting (table/iterator/inspect), shell (bunshell.test.ts, builtin commands), CryptoHasher/hash/csrf, macros, spawn IPC and streaming stdio, ServerWebSocket, UDP, cron, markdown, JSON5.
  • No new tests: the PR adds no behavior, so the existing suite is the regression coverage.

@alii

alii commented Jun 9, 2026

Copy link
Copy Markdown
Member Author

@robobun adopt

@robobun

robobun commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

Adopted. Fixed the rust build break in 35f1e9b (missing UrlJsc trait import in fetch.rs after the URL extension-trait split).

Two consecutive full CI runs (61682, 61749) are green on every job that ran on a healthy agent: 284/284 each, covering clippy, all build lanes, asan, linux, windows, musl, and darwin. The only red is two darwin tart VMs that degraded mid-run (both ended with the same VM termination hook error): they timed out after failing only environment-dependent tests (the init.test.ts CLAUDE.md runner-image issue, mysql2/local-sql/s3 service tests), and the sibling job on each of those same lanes passed the full suite. Nothing in either run traces to this diff. Verification details are in the PR description; ready for review.

@robobun

robobun commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator
Updated 8:02 AM PT - Jun 10th, 2026

@robobun, your commit 4a6537d has 5 failures in Build #61749 (All Failures):


🧪   To try this PR locally:

bunx bun-pr 32023

That installs a local version of the PR into your bun-32023 executable, so you can run:

bun-32023 --bun

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants