Skip to content

v0.18.0

Latest

Choose a tag to compare

@Berrysoft Berrysoft released this 29 Jan 15:01
· 77 commits to master since this release
da39e71

Generated by Copilot

compio

Breaking Changes

  • Split fs and net out of the runtime feature; enable them explicitly. (#564)
  • split now uses synchrony semantics. (#640)

Features

  • Add the first runtime future combinator with_personality. (#639)

compio-driver

Breaking Changes

  • Enable full io_uring fallback path. (#656)
  • Make OpCode an unsafe trait; implementors must uphold explicit safety invariants. (#650)
  • Make OpCode::cancel safe (API contract change). (#575)

Features

  • io_uring personality APIs (register_personality, set_personality, with_personality, etc.). (#630)
  • Poll driver multi‑fd support (enables splice readiness across multiple fds). (#623)
  • Add splice op in driver (including stub support and kernel‑version checks). (#609)
  • Add truncate‑file support across drivers. (#611)
  • Fill all supported statx fields for accurate metadata. (#625)
  • Distinguish Read/Write vs Recv/Send and add socket flags support. (#567)
  • Add stable PollOpCode/IourOpCode aliases for downstream implementors. (#566)
  • Use stat64 on gnulinux for large‑file correctness. (#597)

compio-runtime

Breaking Changes

  • Refactor submit future: submit() now yields a Submit future that submits on first poll; use submit(op).with_extra(). (#632)

Features

  • Add with_personality future combinator. (#639)
  • Expose named submit future types. (#615, #614)

compio-fs

Features

  • Add Linux/Android splice API and tests. (#635)
  • Add truncate‑file API support. (#611)
  • Use stat64 where available for correct metadata. (#597)

compio-net

Breaking Changes

  • Replace TcpOpts with SocketOpts across all sockets; APIs now take &SocketOpts. (#573)

Features

  • Distinguish Read/Write vs Recv/Send and support socket flags. (#567)

compio-io

Breaking Changes

  • Framed now supports generic buffers (trait bounds and usage changes). (#642)
  • split uses synchrony semantics. (#640)
  • Enable fallible frame extraction for Framed. (#631)

Features

  • Add reserve/reserve_exact for IoBufMut. (#578)

compio-buf

Breaking Changes

  • Generic buffer support for Framed (compatibility changes). (#642)

Features

  • Add reserve/reserve_exact for IoBufMut. (#578)
  • Make BufResult compatible with more Result types. (#569)

compio-quic

Breaking Changes

  • Redesign QUIC IO APIs. (#593)

Features

  • Sync recent changes from quinn-udp. (#592)

compio-ws

Breaking Changes

  • Adopt SocketOpts changes from compio-net. (#573)

compio-process

Breaking Changes

  • Submit future refactor impacts runtime integration. (#632)

compio-dispatcher

Features

  • Use synchrony for driver/quic dispatcher path. (#628)

New Contributors

Full Changelog: v0.17.0...v0.18.0