Skip to content

Upgrading mio 0.6 to 0.7

Breaking0.6.23 → 0.7.14Breaking1Security1Platform1Deprecated3New21Changed5Fixed20Other1

BreakingUpgrade verdict

1 breaking change and a platform requirement change and a security fix.

  • This release makes large, incompatible changes to the library's interface, so code written for 0.6 will likely need updates.
  • If you build for 32-bit iOS or macOS, this version no longer supports it.
  • `mio` invalidly assumes the memory layout of std::net::SocketAddr
  • The three old networking feature flags still work but are on their way out; use `net` instead.
Top 5 of 6 that need code or config changes
Breaking1
Version 0.7 contains various major changes compared to 0.6, with many API changes to reduce implementation complexity and overhead.
Security1
mio invalidly assumes the memory layout of std::net::SocketAddr
Medium · CVSS 5.5
Platform1
Drops support for 32-bit Apple targets, matching Rust's reduced support, since CI no longer checks 32-bit iOS/macOS.
Deprecated3
Deprecates the tcp, udp and uds features in favour of the new net feature.
tcpudpudsnet
Deprecates the extra-docs feature, which is now enabled by default.
extra-docs
Deprecates the os-util and pipe features in favour of the new os-ext feature.
os-utilpipeos-ext