All notable changes to noq will be documented in this file.
0.9.0 - 2026-03-09
- (proto) [breaking] Don't require a HKDF construction in
HandshakeTokenKey(#480) - (bb46490) - Retain final path stats if a
Pathis alive, addWeakPathHandle(#386) - (b068cda) - Switch from rand data to path challenges for nat traversal (#373) - (c369b52)
- [breaking] Allow compiling with
rustls, but without any crypto providers compiled into rustls (#462) - (13a1c45) - Add minimal socket2 based impl (previously fallback.rs) (#478) - (0185176)
- (ci) Daily jobs deps (#413) - (093cf62)
- (ci) Address dns issues in daily job (#416) - (325db0f)
- (proto) Don't allow closing paths without multipath (#387) - (e7c23e9)
- (proto) Some harmless bugs regarding confidentiality limits (#423) - (ebbd765)
- (proto) Handle duplicated reach out frames (#430) - (220dacb)
- (proto) Avoid generating protocol violation errors in bad network conditions (#436) - (2903b55)
- (proto) Fix checks to understand if a path response is valid (#443) - (8fc9cdd)
- (proto) Properly separate on-path and off-path challenge logic (#449) - (b966872)
- (proto) Remove race condition between
take_error& overwriting inmove_to_draining(#452) - (6ec9ffe) - (proto) Set open path timer when first packet is sent (#458) - (8a9a702)
- (proto) Don't generate endpoint events in drained connection state (#470) - (ee63d4b)
- (proto) Avoid unwrapping
VarIntdecoding duringTransportParameterparsing (#485) - (752588b) - (quinn-proto) Path abandon does not clear all timers, in particular, not loss detection (#438) - (c69a939)
- (quinn-udp) More wine fixes (#414) - (708a6a0)
- (udp) Windows: make potentially non available socket options optional (#392) - (eda1e01)
- Allow the remote to abandon paths even if no validated paths remain (#401) - (8289585)
- Update time dep to address RUSTSEC-2026-0009 (#412) - (1a91e0b)
- Handle network changes in multipath (#383) - (d5580a5)
- Open_path_ensure deadlock (#424) - (315f491)
- CidQueue out of bounds panic (#431) - (653d6ee)
- Avoid lock re-entry in open_path_ensure and add regression test (#464) - (6c4de85)
- (proto) Introduce
CryptoState(#420) - (4f8afee) - (proto) Expand use of
SpaceKindwhereSpaceId::Data(PathId)is not suitable (#432) - (20e1fcc) - Use named future for SendStream::stopped (#409) - (f89efda)
- Stop EndpointDriver once endpoint is closed and all connections are drained (#426) - (c51afae)
- [breaking] Improve path events around path closing (#427) - (88cf95f)
- Defensive styel & move code around (#450) - (0696c83)
- Remove needless variable (#453) - (588efa5)
- Switch back to pending name for this (#460) - (6f06f1f)
- [breaking] Rename to noq (#461) - (294e3ea)
- Document proptest interactions (#406) - (8c146d2)
- Introduce
ConnPairandtestresultto simplify tests (#408) - (7cabfe8)
- (ci) Adjust runner usage and storage policies (#471) - (caf81fd)
- (proto) Fix unused import warning with only
rustls+platform-verifier(#473) - (6f48f3a) - Add testing on wine (#393) - (c332d42)
- Add expanded proptest runs to ci (#395) - (f41f278)
- Fix daily proptest runs (#441) - (041777b)
- Unify nat traversal naming (#445) - (565ebec)
- Attempt at drafting a readme (#467) - (e71b78b)
- Release prep - (13695a4)
- Release - (faeddf5)