0.6.0
We are happy to announce the release of 0.6.0 of Quinn, our pure-Rust implementation of the QUIC protocol, the next generation TCP replacement protocol currently being standardized at the IETF.
After 4 months of development since the release of 0.5.0 (and several bugfix releases), we have a new release which upgrades the protocol to draft-27. It has additionally received many robustness improvements, smaller bug fixes, improved documentation and API refinements. Much of this work was triggered by the work at Parity to extend libp2p with QUIC support based on quinn-proto -- thanks to @demimarie-parity.
While our quinn-h3 implementation of HTTP 3 has not yet been released to crates.io, it has also undergone significant improvements in this release cycle, focusing in particular on improving interoperability with other implementations.
High level overview:
- Improved API for inspecting crypto session (TLS) negotiated data (thanks to @kim)
- Make rustls dependency optional at the quinn level
- Refined APIs for datagrams (draft extension)
- Cleaned up clippy warnings throughout all crates
- Many bug fixes and improved robustness
- Much improved documentation, particularly for the quinn-proto crate
Thanks to @demimarie-parity, @alecmocatta and @lionel1704 for their contributions.
Quinn has been proven to function well in real-world scenarios, so if you're interested in QUIC, now would be a good time to start testing. The QUIC v1 spec is stabilizing; we expect it will be published as an RFC in the next 6 months.
While we don't always have large amounts of pre-defined good first issues setup due to the fast moving development, we're also always happy to mentor new contributors, independent of their prior level of Rust experience! We tend to respond to issues and PRs pretty quickly, and we have an active Gitter channel.