Skip to content

v0.7.1

Choose a tag to compare

@JustinKovacich JustinKovacich released this 18 Jun 16:07
· 426 commits to main since this release
ef365fa

What's Changed

Fixed

  • Per-transport SD session tracking via dual discovery sockets (client) — Service Discovery session counters are now keyed per transport, using separate multicast and unicast discovery sockets. Fixes session-counter collisions that could cause false reboot detection / dropped SD messages when multicast and unicast SD shared a session space.

Changed

  • std is now the default feature — the crate enables std (with thiserror and tracing) by default. ⚠️ Users targeting no_std must now set default-features = false in their Cargo.toml.
  • thiserror and tracing use default-features = false — both are always included, but their std features only activate with the crate's std feature, removing the need for #[cfg(feature = "std")] gating on error types and logging macros.

Other (tests / CI)

  • Dual-socket multicast/unicast SD split made Windows-portable (INADDR_ANY multicast + interface-IP unicast); set_reuse_port gated behind cfg(unix).
  • Added a Windows CI job exercising dual-socket SD bind portability; scoped to build-all + lib tests.
  • Made the combined-SD server test hermetic (in-memory parse) and loopback-targeted for Windows.
  • Hardened client_server tests: distinct loopback IP to avoid SD-port self-collision; drain until the Unicast event.
  • Reverted the deterministic loopback divert test (CI interference hazard).

Full Changelog: v0.7.0...v0.7.1