Skip to content

Upgrading notify 6 to 7

Breaking6.1.1 → 7.0.0Breaking7Platform1New5Changed18Fixed13Other18

BreakingUpgrade verdict

7 breaking changes and a platform requirement change.

  • If you relied on the crossbeam feature, you must enable the renamed feature explicitly.
  • Serialized events now use a format that is easier to consume in environments like JavaScript. Enable the serialization-compat-6 feature to keep the old format.
  • You no longer need to add root paths to the cache manually; call watch on the debouncer instead.
  • Replaces the deprecated poll_interval signature in v7.0.
Top 4 of 8 that need code or config changes

Rust requirement changed in 7.0.0: 1.60 → 1.72.

Adds insta ^1.34.0, notify-types ^1.0.0.

Drops serde.

Installs 56 packages in all (was 53).

Breaking7
Renames feature crossbeam to crossbeam-channel and disables it by default.
crossbeamcrossbeam-channel
Changes the event serialization format, with the old behavior restorable via the new serialization-compat-6 feature flag.
serialization-compat-6
Manages root folder paths for the file ID cache automatically.
debouncer.watcher()debouncer.cache()debouncer.watch()RecursiveMode::Recursive
Replaces the deprecated poll_interval signature in v7.0.
poll_interval
Moves event types into a separate crate.
Moves the debounced event type.
Removes the mock instant implementation.
Platform1
Raises the minimum supported Rust version (MSRV) to 1.72.