Releases: WithAutonomi/saorsa-transport
v0.35.0
saorsa-transport v0.35.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpWhat's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.35.0] - 2026-06-12
Documentation
Features
- [BREAKING] Remove bootstrap cache (ea0ed3a)
Miscellaneous Tasks
- Cut rc-2026.6.2 (48b0874)
- Update Cargo.lock after rebase (cafdce4)
- Promote rc-2026.6.2 to 0.35.0 (6d177bf)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.34.2
saorsa-transport v0.34.2
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpWhat's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.34.2] - 2026-05-13
Bug Fixes
- Lower MAX_RELAY_CLIENTS_PER_PUBLIC_PEER from 4 to 3 (cc643e3)
- Bound pending dial waits (c0a1df1)
- Route peer-id registration to the owning endpoint (86d7437)
- Cap client initial congestion window at 1 MB (4ad582b)
- Reduce ack threshold for large sends to 16 KB (20860c8)
- Guard relay advertisement lifecycle (d9da2be)
- Bound out-of-order stream read span (0760c6b)
- Wrap relay generation increment (2a9d463)
- Keep pending dial guard active during completion (55f423c)
Features
- Add send_with_delivery_ack and wait for peer stream ack on large sends (da9ed3c)
- Introduce ack wait threshold and optimize small payload sends (181043f)
Miscellaneous Tasks
- Add timing instrumentation to QUIC send path (b37b2ca)
- Cut rc-2026.5.2 (0e0de4d)
- Promote rc-2026.5.2 to 0.34.2 (c83364f)
Performance
- Optimize relay packet forwarding (2676c4e)
Refactor
- Always wait for delivery ack and add read progress timeout (30e26f2)
- Dispatch inbound streams concurrently and raise read timeout (594f441)
- Remove read progress timeout and simplify read_stream logic (4892cb6)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.34.1
saorsa-transport v0.34.1
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpWhat's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.34.1] - 2026-05-05
Bug Fixes
- Cap relay-tunnelled MTU and surface path-MTU feedback (3ecfee0)
- Normalize connection cleanup and backpressure large sends (547574e)
- Align bbr2 packet accounting (7c52654)
- [BREAKING] Drop best-effort post-finish ack wait on QUIC sends (0b58a66)
- Gate is_message_too_large on cfg(unix) for Windows build (e0f7bcd)
Features
- Expose per-(peer, observation) signal via PeerObservedExternal (0abe007)
- Add staged SendFailed error with per-write progress timeout (3527d18)
- Add separate progress and handshake timeouts for direct connections (e081f1f)
- Gate direct connect timeout on first authenticated peer packet (623352c)
Miscellaneous Tasks
- Remove Docker image build/push from release workflow (3f74832)
- Add relay session diagnostic logging (17e7e4a)
- Elevate relay diagnostic logging to debug level (ea7773a)
- Roll rc-2026.4.4 to 0.33.1-rc.1 (f2e1096)
- Roll rc-2026.4.4 to 0.34.1-rc.1 (09fa070)
- Promote rc-2026.4.4 to 0.34.1 (eed2a3f)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.33.0
saorsa-transport v0.33.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.33.0What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.33.0] - 2026-04-24
Bug Fixes
- Remove references to deleted ConnectionHealth API in tests (50f3241)
- Differentiate FAST_SEND_ACK_TIMEOUT from default (500ms → 250ms) (eb1eb64)
- Race condition in hole-punch peer ID matching (da74da9)
- Scale send ACK timeout with payload size (9009e64)
- Always overwrite NAT API connection DashMap with newer connection (c670c54)
- Detect zombie connections before queuing PUNCH_ME_NOW relay (5516b06)
- Detect stale coordinator connections by comparing handle indices (0216038)
- Keep preferred coordinator on hole-punch retry (e861d3a)
- Reject IPv6 documentation prefix in UPnP external IP classifier (21bda71)
- Address PR #42 review — atomic fallback decrement, read-lock connect_transport, bench cleanup (45bf738)
- Raise coordinator PUNCH_ME_NOW rate limit from 5 to 50 per minute (496721b)
- Raise coordinator PUNCH_ME_NOW rate limit from 50 to 300 per minute (6e85dd9)
- Prevent 0.0.0.0 wildcard in relay-allocated addresses (9b66e9e)
- Bypass tunnel for relay connection's own QUIC traffic (f53f72f)
- Prioritise original socket reads to prevent ACK starvation (a758d66)
- Split GSO-batched transmits into individual tunnel frames (6bc6c3a)
- Interleave original socket and tunnel reads to prevent starvation (f5fea70)
- Raise send ACK timeout from 500ms to 5s (7319c1c)
- Persist original UDP socket across relay rebinds (fc298f4)
- Raise send ACK timeout from 500ms to 1s (3a2bda4)
- [BREAKING] Use separate relay endpoint instead of rebinding the main socket (ab41814)
- Prevent race condition on waker registration in poll_recv (098a932)
- Improve MASQUE relay connectivity for NATted nodes (7ca8407)
- Address discovery bugs — priority normalization, async scan, mutex contention (3a0f468)
- Decouple relay forwarding I/O and increase initial congestion window (8f37695)
- Increase send ack size budget for concurrent uploads (70623cc)
- Reduce max relay clients per peer from 4 to 2 (c6baa61)
- Suppress ADD_ADDRESS broadcast and coordinator registration for client-mode endpoints (d0da4bb)
- Eliminate hot-path allocations, lock contention, and OOM risk in MASQUE relay (4c759f5)
- Eliminate zombie-connection cascade that triggered identity-announce timeouts (f168e92)
- Graceful relay endpoint close + RelayLost event on tunnel death (930a20d)
- Keep ADD_ADDRESS broadcast eager, quorum-gate only the pin (3ea593b)
- Treat non-WouldBlock UDP send errors as non-fatal in ConnectionDriver (614f7e8)
- Attach relay handler to duplicate connections instead of force-closing (ec16340)
Documentation
- Rewrite stale "pre-classified" comment on with_default_strategy (7cdd20a)
Features
- Add preferred coordinator for hole-punch relay and improve relay diagnostics (d99e5ab)
- Best-effort UPnP IGD port mapping for NAT traversal (7314d0b)
- Enforce 2-client cap per public peer with typed capacity error (2b55b6a)
- Expose setup_proactive_relay as public delegate (086fe2e)
- Add relay_serving_enabled gate and set_relay_serving_enabled setter (64a8a64)
- Expose is_relay_healthy delegate for relayer monitor (04b89e2)
- Add holepunch_enabled flag to StrategyConfig (3d4da0d)
- Add relay stream keepalive and UPnP port mapping for relay sockets (6aa3e57)
- Wire QlogStreamer end-to-end behind __qlog feature (0b2a49f)
- IP-diversity policy for relay establishment and acceptance (9db992d)
- Actually set SO_REUSEPORT when SocketOptions::reuse_port (917cce9)
- [BREAKING] Add BBR with rate-based pacing, set as default (21e0aab)
- Implement BBRv2 with enhanced bandwidth modeling (4c9221f)
- Default TransportConfig to BBRv2 (b470a7b)
- Require K-observer quorum before pinning external address (73681ea)
- Add dedup mechanism for relay request handlers (dd67531)
Miscellaneous Tasks
v0.32.0
saorsa-transport v0.32.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.32.0What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.32.0] - 2026-04-14
Bug Fixes
- Remove references to deleted ConnectionHealth API in tests (50f3241)
- Differentiate FAST_SEND_ACK_TIMEOUT from default (500ms → 250ms) (eb1eb64)
- Race condition in hole-punch peer ID matching (da74da9)
- Scale send ACK timeout with payload size (9009e64)
- Always overwrite NAT API connection DashMap with newer connection (c670c54)
- Detect zombie connections before queuing PUNCH_ME_NOW relay (5516b06)
- Detect stale coordinator connections by comparing handle indices (0216038)
- Keep preferred coordinator on hole-punch retry (e861d3a)
- Reject IPv6 documentation prefix in UPnP external IP classifier (21bda71)
- Address PR #42 review — atomic fallback decrement, read-lock connect_transport, bench cleanup (45bf738)
- Raise coordinator PUNCH_ME_NOW rate limit from 5 to 50 per minute (496721b)
- Raise coordinator PUNCH_ME_NOW rate limit from 50 to 300 per minute (6e85dd9)
- Raise coordinator PUNCH_ME_NOW rate limit from 5 to 50 per minute (70ab29b)
- Raise send_ack_timeout from 500ms to 5s for cross-region connections (a6c82d0)
- Accept loop keeps newer connection on dedup instead of closing it (55ffca7)
- Replace has_public_ip with scope-aware peer-verified direct reachability (1478a1b)
- Address review feedback — double-count bug, relay capability, rustdoc (d12d86c)
- Rotate through all relay candidates instead of failing on first (6f139c7)
- Return socket on session reuse instead of None (e44b25e)
- Schedule periodic cleanup of expired relay sessions (f475bd0)
- Quality-aware coordinator selection with RTT weighting and load balancing (44b4662)
- Defer old connection close on dedup to avoid disrupting in-flight DHT queries (664ce20)
- Normalize IPv4-mapped IPv6 addresses in hole-punch DashMap lookups (2cabf2b)
- NAT traversal fixes for large-scale testnets (990+ nodes) (b2e6aaa)
- Increase handshake channel capacity from 32 to 1024 (8f1dd14)
- Apply rustfmt formatting and fix test_default_config assertion (a6cc9fb)
Features
- Add preferred coordinator for hole-punch relay and improve relay diagnostics (d99e5ab)
- Best-effort UPnP IGD port mapping for NAT traversal (7314d0b)
- Rotate hole-punch coordinators with capped per-attempt timeout (b58e671)
- PUNCH_ME_NOW_NACK — coordinator signals target not found (9a8ffa2)
- Increase ACK timeout size budget from 1ms/KB to 4ms/KB (35a43c7)
Miscellaneous Tasks
Performance
- Tighten network timeouts for faster connection establishment (56e89b6)
- Increase timeouts based on 50-node multi-region testnet data (e29f324)
- [BREAKING] Hold read lock on router during send via atomic selection stats (3c847aa)
Refactor
- Remove dead connect_dual_stack and try_connect_family methods (49a78e6)
- [BREAKING] Remove dead NatTraversalEndpoint hole-punch chain (5280123)
- [BREAKING] Remove orphaned CandidatePair public types (090a45c)
- [BREAKING] Make ConnectionRouter fully lock-free and interior-mutable (386c6e8)
Styling
- Apply rustfmt to two unrelated info! call sites (b906e65)
Debug
- Add peer ID tracing to hole-punch coordination path (f65af2e)
- Check connection health before queuing PUNCH_ME_NOW relay (e828dbc)
- Log when PUNCH_ME_NOW relay frame is encoded into QUIC packet (6c4088f)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.31.0
saorsa-transport v0.31.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.31.0What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.31.0] - 2026-04-02
Features
- MASQUE relay data plane for symmetric NAT traversal (02e5f9c)
- Iterate relay candidates instead of retrying first on failure (cc276b4)
- Relay session health monitoring and automatic re-establishment (2b36363)
- Hole-punch to symmetric NAT via peer ID routing (48d2096)
Miscellaneous Tasks
- Bump version to 0.31.0 (b2c2280)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.30.1
saorsa-transport v0.30.1
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.30.1What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.30.1] - 2026-03-29
Miscellaneous Tasks
- Bump version to 0.30.1 (3c7c9d1)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.30.0
saorsa-transport v0.30.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.30.0What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.30.0] - 2026-03-29
Bug Fixes
- Wire NAT traversal into connection path with unified accept loop (e7776f3)
- Normalise dual-stack IPv4-mapped addresses across NAT traversal (506525e)
- NAT traversal deadlock, connection lifecycle, and response path (1b543ff)
- CI review fixes — diagnostics, log levels, and duplicate reader guard (2609112)
- Send PUNCH_ME_NOW immediately and prevent duplicate connection overwrites (86163e3)
- Simplify redundant should_reset logic in NAT coordination (88b3a16)
- Replace iter_mut() with direct get() lookup in send_coordination_request (e74d883)
- Address PR #27 review — dedup ConnectionLost, spawn forwarder reader tasks, fix accept loop hang (94ddb2f)
Miscellaneous Tasks
Security
- Remove security audit job from release workflow (0e80932)
Styling
- Run cargo fmt (1441156)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.29.0
saorsa-transport v0.29.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.29.0What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[Unreleased]
Bug Fixes
- Wire NAT traversal into connection path with unified accept loop (e7776f3)
- Normalise dual-stack IPv4-mapped addresses across NAT traversal (506525e)
- NAT traversal deadlock, connection lifecycle, and response path (1b543ff)
- CI review fixes — diagnostics, log levels, and duplicate reader guard (2609112)
- Send PUNCH_ME_NOW immediately and prevent duplicate connection overwrites (86163e3)
- Simplify redundant should_reset logic in NAT coordination (88b3a16)
- Replace iter_mut() with direct get() lookup in send_coordination_request (e74d883)
- Address PR #27 review — dedup ConnectionLost, spawn forwarder reader tasks, fix accept loop hang (94ddb2f)
Miscellaneous Tasks
- Bump version to 0.29.0 (a7dbffe)
Security
- Remove security audit job from release workflow (0e80932)
Styling
- Run cargo fmt (1441156)
Checksums
See checksums.txt for SHA256 checksums of all binaries.
v0.28.0
saorsa-transport v0.28.0
Overview
saorsa-transport is a QUIC transport protocol implementation with advanced NAT traversal capabilities, optimized for P2P networks and the Autonomi ecosystem.
Installation
From crates.io
cargo install saorsa-transportPre-built binaries
Download the appropriate binary for your platform below.
Linux/macOS:
tar -xzf saorsa-transport-*.tar.gz
chmod +x saorsa-transport
./saorsa-transport --helpWindows:
Expand-Archive saorsa-transport-*.zip
.\saorsa-transport.exe --helpDocker
docker pull ghcr.io/saorsa-labs/saorsa-transport:0.28.0What's Changed
Changelog
All notable changes to saorsa-transport will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[0.28.0] - 2026-03-19
Miscellaneous Tasks
Refactor
- [BREAKING] Replace health-check ping/pong with event-driven disconnect detection (25e62e8)
Ci
- Parallelize crates.io publish with binary builds and Docker (5a4f13e)
Checksums
See checksums.txt for SHA256 checksums of all binaries.