rojo/crates/memofs/CHANGELOG.md
John 66930ed7a7 Fix Windows symlink watching (AI-assisted)
On Windows, StdBackend only watched the logical paths Rojo read, so edits made
through the physical target of a file symlink, directory symlink, or junction
outside the watched tree never reached `rojo serve` until it was restarted.

The Windows backend now tracks each watched logical path's resolved target,
registers native watches for targets outside existing watches, and maps target
lifecycle events back to their logical aliases through a new
VfsEvent::Rescan. Watches are refreshed when a link is removed, recreated, or
repointed, and shared targets stay watched until their last alias goes away.
The change processor handles Rescan and logs, rather than panics on, events
for paths that no longer exist. Non-Windows behavior is unchanged.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 09:47:09 -04:00

1.5 KiB

memofs Changelog

Unreleased Changes

  • Fixed native Windows symlink watches missing physical-target changes and becoming stale when links were recreated or repointed. #278

0.4.0 (2026-07-01)

  • Added Vfs::canonicalize. [#1201]
  • Breaking: StdBackend::new and Vfs::new_default now return io::Result, so a failure to create the filesystem watcher is reported as an error instead of panicking. The Default implementation for StdBackend has been removed as a result. #1267

0.3.1 (2025-11-27)

  • Added Vfs::exists. #1169
  • Added create_dir and create_dir_all to allow creating directories. #937

0.3.0 (2024-03-15)

  • Changed StdBackend file watching component to use minimal recursive watches. #830
  • Added Vfs::read_to_string and Vfs::read_to_string_lf_normalized #854

0.2.0 (2021-08-23)

  • Updated to crossbeam-channel 0.5.1.

0.1.3 (2020-11-19)

  • Added set_watch_enabled to Vfs and VfsLock to allow turning off file watching.

0.1.2 (2020-03-29)

  • VfsSnapshot now implements Serde's Serialize and Deserialize traits.

0.1.1 (2020-03-18)

  • Improved error messages using the fs-err crate.

0.1.0 (2020-03-10)

  • Initial release