Skip to content

Releases: n0-computer/noq

v1.0.0

15 Jun 09:22

Choose a tag to compare

⛰️ Features

  • (proto) Implement backoff for on-path path challenges (#676) - (ba24e6b)

πŸ› Bug Fixes

  • (bbr3) Call on_packet_sent when ACK-eliciting data is sent (#689) - (9eb1729)
  • (multipath) Store abandoned paths in ArrayRangeSet (#691) - (9764042)
  • (multipath) Ignore PATH_RESPONSE once the path is abandoned (#700) - (cc44e08)
  • (noq-proto) Never emit PathEvent::Established after a path has been abandoned (#695) - (000e1bb)
  • (proto) Prevent PATH_CHALLENGE/RESPONSE from being sent in datagrams that can't be expanded (#699) - (6c5e246)
  • (qlog) Avoid another panic for an invariant (#702) - (8c712cd)
  • (quic) Tail-loss probes in Initial space must be padded (#698) - (2a342d1)

🚜 Refactor

  • (logging) Improve Display of PATH_ABANDON frame (#706) - (16805f8)
  • (proto) Simplify AddressDiscovery::Role (#693) - (7ae29bd)
  • (tests) Do not use so many star imports (#677) - (c706ab2)
  • (tests) Do not allow dead code by default (#678) - (7d5f1ab)
  • (tests) Introduce ConnPairBuilder (#680) - (33dba68)

πŸ§ͺ Testing

  • (proto) Take Transmit::src_ip into account for ManyToManyRouting (#673) - (616dc26)
  • (proto) Add failing proptest seed from CI (#609) - (cf013f8)
  • Add tests for easy-hard NAT combinations (#685) - (cc8822e)

Deps

v.1.0.0-rc.0

07 May 09:30

Choose a tag to compare

⛰️ Features

  • (noq) [breaking] Return Closed struct from Connection::on_closed with path stats (#617) - (3fc2e28)
  • (proto) Accept off-path probe packets (#608) - (4a310f7)
  • (proto) Replace BBR with BBRv3 + breaking Controller API changes (#611) - (0ac6b46)
  • (proto) Client-side off-path nat traversal (#614) - (98e626f)
  • (proto) [breaking] Set default max concurrent multipath paths to 8 (instead of 12) (#620) - (a60749c)
  • (proto) [breaking] Rename NAT traversal config and expose multipath default value (#621) - (e25d7dd)
  • (proto) Send NAT probes with off-path PATH_RESPONSE (#619) - (058aaab)
  • (proto) Better NAT probe retry intervals (#623) - (262697c)
  • (quinn-udp) Make Apple fast datapath opt-in - (f52aa14)
  • (tests) Add a router with NAT functionality to proto tests (#596) - (b7e2317)
  • Make negotiated_key_exchange_group always available (#633) - (fe19376)

πŸ› Bug Fixes

  • (noq-proto) Do not recreate path state for already abandonend paths (#631) - (8c353b8)
  • (perf) Suppress table output in JSON mode - (72400f3)
  • (proto) Use approximate comparison for network paths (#635) - (9e1f1ad)
  • (qlog) Emit RTT values in milliseconds (#639) - (c904e92)
  • (unix) Disable GSO after probing - (bee7381)
  • Reuse existing socket for probing GRO/GSO support - (db87183)
  • Remove opportunistic GRO syscall - (dfa247c)
  • Resolve sendmsg_x/recvmsg_x via dlsym - (c435c08)
  • Gate perf Path import on json-output + restore deny.toml entries - (79b20f4)

🚜 Refactor

  • (noq) Atomic path ref counts (#626) - (c64cf98)
  • (noq-proto) [breaking] Get ring and aws_lc_rs out of public API (#640) - (437d0c1)
  • (proto) Improve state of off-path nat probes (#600) - (0c0e020)
  • (proto) Raise limit of path responses kept around per PathData (#622) - (a49f066)
  • (proto) Introduce CanonicalIpPort to fix IP canonicalization issues (#629) - (c711967)
  • (proto) Do not log as error (#632) - (7ce9294)
  • (proto) Remove some obsolete warnings (#634) - (d5a09ef)
  • (quinn-udp) Extract decode_socket_addr helper - (fe9e1e7)
  • (quinn-udp) Extract ControlMetadata helper - (a22790d)
  • (quinn-udp) Split fast&slow send/recv paths - (6127c0f)
  • (quinn-udp) Add retry_if_interrupted helper - (609ddba)
  • Remove gro module - (5ec5e64)
  • [breaking] Cleanup single path based expectations (#616) - (fd36bc5)
  • [breaking] Return previous path status from Path::set_status (#638) - (1facdd9)
  • Rename write_chunk to write_bytes and write_chunks to write_bytes_many (#536) - (f4ec777)
  • Rename read_chunk to read_bytes and make it return just a Bytes (#535) - (a0f988a)

πŸ“š Documentation

  • (quinn) Improve Connection::close_reason() documentation - (1fdd690)
  • Fix book build with mdbook 0.5.2 - (bd83f7e)
  • Clarify that Event::ConnectionLost is not emitted on local close - (476c7bc)

βš™οΈ Miscellaneous Tasks

  • (clippy) Fix clippy and cargo-deny for new rust release (#597) - (d64959b)
  • (docs) Improve docs of PacketNumberSpace vs PathData a little (#598) - (c13d711)
  • Run iroh's patchbay tests in CI (#601) - (7d73657)
  • Add semver check (#605) - (2e1739d)
  • Bump rustls-webpki to 0.103.13 (RUSTSEC-2026-0104) - (93a2710)
  • Clean up stale deny.toml entries (unused license/skips) - (8a8119b)
  • Sync with quinn@main (#606) - (877dcca)
  • Reexport all public noq-proto types at noq level (#615) - (ecd08ae)
  • Fail cargo-make flows for warnings (#624) - (ee806ab)
  • Change deps to be more explicit - (307adcd)

noq-proto

  • Send STREAMS_BLOCKED when stream limit is hit (#2579) - (cd3c8c7)

noq

  • Move ConnectionRef/EndpointRef ref counts onto Shared as AtomicUsize - (c1d7ed2)
  • Make Endpoint::server dual-stack V6 by default - (ef2be07)

v0.18.0

15 Apr 12:46

Choose a tag to compare

noq-v0.18.0

chore: Release noq version 0.18.0