Releases: cloudflare/quiche
Releases · cloudflare/quiche
☃️ 0.7.0
Breaking Changes:
- The
Config::set_max_udp_payload_size()
method was renamed toConfig::set_max_recv_udp_payload_size()
. - Updated public APIs to use the
ConnectionId
type:accept()
,connect()
,negotiate_version()
,retry()
,Header
. - The FFI API has been disabled by default. It can be enabled during build by enabling the
ffi
feature (cargo build --features ffi ...
). - The
Connection::recv()
method will returnError::BufferTooShort
if an empty buffer is supplied.
Highlights:
- Optimized STREAM frame generation to reduce number of allocations and copies.
- Added
Config::set_max_send_udp_payload_size()
method to configure maximumg UDP datagram outgoing size. - Added
Connection
helper methods:is_readable()
,is_draining()
,peer_streams_left_bidi()
,peer_streams_left_uni()
. Config
andConnection
implementSend
+Sync
.- Introduced
ConnectionId
type to represent QUIC connection IDs. - Implemented ABC Slow Start as per RFC3465.
Full changelog at 0.6.0...0.7.0
🎃 0.6.0
Highlights:
- Initial support for the DATAGRAM extension.
- New API for HTTP/3 graceful connection shutdown (GOAWAY).
- Improved congestion control algorithms with appropriate byte counting.
- Many bug fixes and performance improvements..
Full changelog at 0.5.1...0.6.0
🩹 0.5.1
Highlights:
- Fixed potential crash when PTO is triggered
- Relaxed build configuration to avoid failures when building BoringSSL due to spurious warnings.
- Removed dependency on Go and Perl during build.
Full changelog at 0.5.0...0.5.1
🌴 0.5.0
Highlights:
- Support for draft-28 and draft-29 (along draft-27).
- Support for transport streams prioritization, as well as HTTP/3 extensible priorities.
- Many bug fixes and performance improvements.
Full changelog at 0.4.0...0.5.0
🚆 0.4.0
Highlights:
- Support for configuring custom trust stores for validating certificates.
- Support for generating qlog traces.
- Support for sending
DATA_BLOCKED
andSTREAM_DATA_BLOCKED
frames. - CUBIC congestion controller (in addition to the Reno one).
- Support for Hystart++ for both Reno and CUBIC controllers.
- Dropped support for draft versions older than draft-27.
- Many bug fixes and performance improvements.
Full changelog at 0.3.0...0.4.0
🚢 0.3.0
Highlights:
- Support for draft-25 and draft-27 (along draft-23 and -24).
- Preliminary scaffolding for supporting multiple congestion control algorithms.
- Support for newer Android NDKs.
- More aggressive backpressure on stream writes.
- Delivery rate estimation exposed via
Stats
API. - Various bug fixes and performance improvements.
Full changelog at 0.2.0...0.3.0
🚀 0.2.0
Highlights:
- Support for draft-24 and draft-23.
- Support for receiving 0-RTT data.
- Loss recovery improvements.
- Misc. bug fixes.
Full changelog at 0.1.0...0.2.0