Skip to content

fix: env overrides under bun, the stdio test under bun and fast png in debug builds - #54

Open
mateo-m wants to merge 110 commits into
remorses:mainfrom
mateo-m:fix/selection-remount-automation
Open

fix: env overrides under bun, the stdio test under bun and fast png in debug builds#54
mateo-m wants to merge 110 commits into
remorses:mainfrom
mateo-m:fix/selection-remount-automation

Conversation

@mateo-m

@mateo-m mateo-m commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Contains #53.

What this adds

  • A test for the selection wash on a wrapped row: the wash must cover the first glyph of the continuation row. Upstream main fixed the wash in range_rects_with_positions after this branch did, so the branch keeps the test and drops its own fix.
  • process.env overrides reach Rust under Bun through a syncEnvVar export. Bun only updates its JS snapshot, so the Rust side never saw a late assignment. The values land in an override map, not in setenv, because setenv races getenv on the dedicated UI thread of Windows and Linux.
  • The automation stdio test runs under the bun runner.
  • Debug builds compile the image crates at opt-level 3. capture_screenshot encodes a png per visual test, and the encoder at opt-level 0 was slow enough that vitest killed the worker.

The live scrollWheel automation method this PR first added now comes from upstream main with modifier support, so this branch dropped its own copy. The same happened to the bun --hot remount fix: upstream main keeps the renderer state on globalThis and reads onEvent from the container, so the fork's version is gone too.

What I ran and saw

  • cargo test at this branch: 327 passed, 0 failed.
  • The react suite at this branch: 477 passed, 0 failed. The motion stall the first version of this PR described is gone, fixed in feat: css value styles, linear gradients and motion to auto height #50.
  • The wrapped-row test fails without the upstream fix: the wash misses the first glyph of the continuation row. It passes on this head with the upstream code.

What I did not verify

  • Windows and Linux. Every run above was on macOS. CI builds the other targets.

Moved from the fork

This PR was mateo-m#5.

The branch merged its parent branch after that one merged upstream main at 028f70a.

The history was rewritten once after the first push. It dropped the commits that reworded AGENTS.md, and the zed pin moved to the rewritten mateo-m/zed branches. No code changed in that rewrite.

On the merged head: cargo test 327 passed, 0 failed, the react suite 477 passed, 0 failed.

Stacked on #53. The diff here includes #50, #51, #52, #53.

The zed submodule points at the mateo-m/zed fork until remorses/zed#5, #6 and #7 merge. Then a follow-up commit restores .gitmodules to remorses/zed on the gpuix branch and pins the merged commit. The same GPUI stack is also open upstream as zed-industries/zed#63771, #63772 and #63773.

mateo-m added 30 commits August 25, 2026 16:59
mateo-m added 16 commits August 28, 2026 21:16
# Conflicts:
#	packages/native/src/renderer/frame.rs
# Conflicts:
#	.github/workflows/ci.yml
#	examples/compile.ts
#	packages/native/src/custom_elements/anchored.rs
#	packages/native/src/custom_elements/code.rs
#	packages/native/src/custom_elements/diff.rs
#	packages/native/src/custom_elements/img.rs
#	packages/native/src/custom_elements/input.rs
#	packages/native/src/custom_elements/markdown.rs
#	packages/native/src/renderer.rs
#	packages/react/src/types/host.ts
#	zed
# Conflicts:
#	packages/native/src/custom_elements/code.rs
#	packages/native/src/renderer/frame.rs
#	packages/native/src/style/resolve.rs
#	packages/react/src/testing.ts
#	packages/react/src/types/host.ts
# Conflicts:
#	packages/native/src/renderer/frame.rs
#	packages/react/src/reconciler/event-registry.ts
@mateo-m mateo-m changed the title fix: selection across wrapped rows, hot remount, live scroll wheel and env sync fix: env overrides under bun, the stdio test under bun and fast png in debug builds Sep 4, 2026
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.

1 participant