Files
zed/crates
Lukas Wirth 1344a8a846 gpui: Gate blocking executor APIs on WebAssembly (#63484)
GPUI's scheduler exposed synchronous blocking APIs on WebAssembly even
though the platform implementation could only panic. This became an
implicit crash when cancellation dropped a scoped background operation:
preserving the borrowed task lifetime called `Scheduler::block`, which
panicked with `Cannot block on wasm`.

This change removes blocking scheduler and executor APIs from
WebAssembly builds, including borrowed background scopes and the
separate `pollster::block_on` export. Native behavior remains unchanged.
Application shutdown now runs WebAssembly quit handlers asynchronously
as best-effort cleanup rather than blocking the browser event-loop
thread.


Release Notes:

- Fixed a GPUI Web crash caused by synchronous executor blocking.
2026-08-31 13:35:07 +00:00
..
2026-08-09 22:29:52 +00:00
2026-08-09 22:29:52 +00:00
2026-08-09 22:29:52 +00:00
2026-05-04 06:30:47 +00:00
2026-08-27 16:21:41 +00:00
…
2026-08-27 16:21:41 +00:00
2026-08-28 17:22:25 +00:00
2026-04-29 10:27:47 +00:00
2026-08-09 22:29:52 +00:00
2026-05-27 10:31:53 +00:00
2026-08-09 22:29:52 +00:00