mirror of
https://github.com/n0-computer/noq.git
synced 2026-09-22 03:03:39 +00:00
cd4ce43df1f56b260c2f3fcaa0dd8072a3e76e2f
## Description The display impl was not being triggered where it was, so the frames could once again not be grepped on their frame types PATH_CHALLENGE and PATH_RESPONSE. Which is a critical workflow for me. Fixing their display so they show up sensibly when being written meant that the challenge itself was now being logged differently on the send and receive side again: hex on the send size, decimal on the receive side. So I fixed this by starting to log frames as their proper frame types on the receive side too. However I'm not backfilling all the frames yet with these impls. Will probably add them later as we improve logging. ## Breaking Changes n/a ## Notes & open questions We eventually need to end up with a way of consistently logging frames both when writing and reading. But let's get there in small steps, because doing it all at once is a bit of a pain.
feat!: update qlog to latest drafts, add more events and QUIC extensions, emit traces per connection (#208)
Iroh Quinn
This is a fork based on quinn, maintained by n0. Currently published to crates.io under
iroh-quinn.
Main differences to upstream quinn
- Small API improvements
- Implements additional QUIC extensions
- Multipath
- QAD
- QNT
- Expanded support for QLOG
Quinn is a pure-rust, async-compatible implementation of the IETF [QUIC][quic] transport protocol.
- Simultaneous client/server operation
- Ordered and unordered stream reads for improved performance
- Works on stable Rust, tested on Linux, macOS and Windows
- Pluggable cryptography, with a standard implementation backed by [rustls][rustls] and [ring][ring]
- Application-layer datagrams for small, unreliable messages
- Future-based async API
- Minimum supported Rust version of 1.83.0
License
Copyright 2025 The quinn developers Copyright 2025 N0, INC.
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Description
Languages
Rust
99.3%
Python
0.5%
Shell
0.2%