feat(watch): enable full functional fs watcher in wasm#8575
Conversation
How to use the Graphite Merge QueueAdd the label graphite: merge-when-ready to this PR to add it to the merge queue. You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
e6a3fcc to
ee41cb9
Compare
7d38817 to
788cab4
Compare
Benchmarks Rust
|
788cab4 to
6fd8418
Compare
There was a problem hiding this comment.
Pull request overview
Enables using the real filesystem watcher implementation in WASM/WASI builds (instead of falling back to a noop watcher), primarily by removing wasm-specific gating in the watcher factory and its supporting utilities, and updating the underlying rolldown-notify* dependencies.
Changes:
- Switch
rolldown_watcherto always construct an FS watcher viacreate_fs_watcher(removing the wasm noop fallback). - Make debouncer adapter utilities and watcher implementations build on wasm targets by removing
cfg(not(target_family = "wasm"))gating. - Bump
rolldown-notify/rolldown-notify-debouncer-fulldependency versions and refresh the lockfile.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| crates/rolldown_watcher/src/watcher.rs | Removes wasm-only noop watcher path; always uses create_fs_watcher for task watchers. |
| crates/rolldown_fs_watcher/src/utils.rs | Makes debouncer adapter available unconditionally (incl. wasm). |
| crates/rolldown_fs_watcher/src/lib.rs | Removes wasm gating; exposes polling/debounced watcher selection for wasm as well. |
| crates/rolldown_fs_watcher/Cargo.toml | Makes debouncer dependency unconditional (not target-gated). |
| Cargo.toml | Bumps rolldown-notify and rolldown-notify-debouncer-full versions. |
| Cargo.lock | Updates resolved dependency graph accordingly (incl. transitive bumps). |
3634b05 to
461527b
Compare
6fd8418 to
6c50eac
Compare
Merge activity
|
461527b to
83ad228
Compare
Not if this helps #8563 but might be related.
6c50eac to
ce2243e
Compare
Not if this helps #8563 but might be related.
83ad228 to
ea76147
Compare
ce2243e to
19b8db0
Compare
## [1.0.0-rc.8] - 2026-03-09 ### 🚀 Features - watch: enable full functional fs watcher in wasm (#8575) by @hyf0 - watch: expose debounce related options (#8572) by @hyf0 ### 🐛 Bug Fixes - detect new URL(…, import.meta.url) with no-sub template literal (#8565) by @char - devtools: trace dynamic imports in devtools (#8581) by @cal-gooo - watch: rebuild when a previously missing file is created (#8562) by @hyf0-agent - watch: filter out Access events to prevent infinite rebuild loop on Linux (#8557) by @hyf0-agent ### 🚜 Refactor - watch: remove auto watch for fail imports (#8585) by @hyf0 - fs_watcher: unify the way of constructing watcher (#8571) by @hyf0 - cli: migrate CLI to CAC (#8551) by @h-a-n-a - switch asset module support from hard-code to builtin plugin (#8546) by @hyf0 ### 📚 Documentation - fix subject-verb agreement in why-bundlers.md (#8591) by @brandonzylstra - maintenance: align release and canary workflow guide (#8538) by @minsoo-web - add `format` option to directives example config (#8590) by @shulaoda - fix: change twitter to x logo in team (#8552) by @mdong1909 - correct composable filter support explanation (#8550) by @sapphi-red ### ⚡ Performance - testing: share tokio runtime across fixture tests (#8567) by @Boshen ### 🧪 Testing - hmr: fix infinite loop in dev server test retry logic (#8576) by @hyf0-agent - cli: add more cli-e2e test cases (#8548) by @h-a-n-a ### ⚙️ Miscellaneous Tasks - docs: update in-depth/directives for `output.strict` option (#8535) by @minsoo-web - add PNPM_HOME Dev Drive mapping to Windows CI workflows (#8589) by @Boshen - deps: update github-actions (#8588) by @renovate[bot] - move Windows cargo target dir to Dev Drive (#8586) by @Boshen - optimize cache keys to fix race conditions and reduce usage (#8578) by @Boshen - remove WASI build & test pipeline (#8580) by @Boshen - remove unnecessary submodule checkouts (#8577) by @Boshen - use Dev Drive for Windows CI jobs (#8574) by @Boshen - skip redundant native binding build for browser and remove standalone job (#8573) by @Boshen - parallelize Node tests on ubuntu, single Node 24 on macOS/windows (#8570) by @Boshen - docs: bump @voidzero-dev/vitepress-theme to 4.8.0 (#8558) by @crusty-voidzero - dedupe type-check from dev server workflow (#8554) by @Boshen ### ❤️ New Contributors * @brandonzylstra made their first contribution in [#8591](#8591) * @char made their first contribution in [#8565](#8565) * @cal-gooo made their first contribution in [#8581](#8581) * @hyf0-agent made their first contribution in [#8562](#8562) * @h-a-n-a made their first contribution in [#8551](#8551) Co-authored-by: shulaoda <165626830+shulaoda@users.noreply.github.com>

Not if this helps #8563 but might be related.