Releases: aws/s2n-quic
Releases · aws/s2n-quic
v1.69.0
Release Summary
- feat(s2n-quic-dc): throttle repeated successful handshakes.
- feat(s2n-quic): Allow creating server names in const contexts.
- opt(s2n-quic-dc): only read-lock once in happy path.
- feat(s2n-quic): Expose &dyn Error for TLS handshake failures in events.
- feat(s2n-quic-dc): Add events measuring write lock latency.
- Implement
s2n-quic-dc-metricscrate to emit metrics for s2n-quic-dc.
What's Changed
- feat(s2n-quic-dc): throttle repeated successful handshakes by @Mark-Simulacrum in #2845
- tests: Include integ test Message representation in ring buffer tests by @boquan-fang in #2852
- Expose static server name constructor by @Mark-Simulacrum in #2865
- opt(s2n-quic-dc): only read-lock once in happy path by @Mark-Simulacrum in #2867
- Expose TLS error to Subscribers using on_tls_handshake_failed by @Mark-Simulacrum in #2855
- chore: add xquic back to CI by @boquan-fang in #2868
- feat(s2n-quic-dc): Reuse handshakes across application processes by @mehnazyunus in #2854
- feat(s2n-quic-dc): Add events measuring write lock latency by @Mark-Simulacrum in #2869
- feat(s2n-quic-tests): implement a blocklist for test events by @boquan-fang in #2872
- chore: Clippy stuff by @maddeleine in #2879
- refactor(s2n-quic-dc): disable restart test on MacOS by @boquan-fang in #2839
- test(s2n-quic-dc): shared caches tests by @mehnazyunus in #2876
- fix(s2n-quic-dc): support ipv6 control sockets by @camshaft in #2871
- ci: GH release notes config by @dougch in #2880
- ci: Add a conv. commit lint action+config by @dougch in #2881
- fix(ci): copyright check improvement by @boquan-fang in #2890
- feat(s2n-quic-dc): implement metrics for s2n-quic-dc by @boquan-fang in #2884
- chore: s2n-quic 1.69.0 release by @boquan-fang in #2891
Full Changelog: v1.68.0...v1.69.0
v1.68.0
Release Summary
- Add packet encoding and decoding for packets sent over Unix domain sockets. This is required for reusing dcQUIC handshakes between application processes.
- Creates a sender and receiver for Unix domain sockets. This handles a message along with a file descriptor as ancillary data.
What's Changed
- feat(s2n-quic-dc): Add Unix socket packet encoding/decoding by @mehnazyunus in #2840
- refactor(s2n-quic-rustls): replace deprecated
rustls-pemfilewithrustls-pki-typesby @junkurihara in #2847 - chore: fix group in CODEOWNERS by @dougch in #2848
- chore(ci): allow triage users to start quic-attack by @dougch in #2843
- feat(s2n-quic-dc): Add Unix domain socket sender/receiver by @mehnazyunus in #2842
- chore: scope permissions down for one GHA by @dougch in #2849
- ci(dhat): upload dhat artifacts regardless of steps outcome by @boquan-fang in #2850
- chore: s2n-quic 1.68.0 release by @boquan-fang in #2853
Full Changelog: v1.67.0...v1.68.0
v1.67.0
Release for Oct 8 2025
What's Changed
- refactor(s2n-quic-tests): add test annotation to endpoint_limits_close_test by @boquan-fang in #2816
- refactor(s2n-events): Move OutputMode into OutputConfig by @goatgoose in #2803
- opt(s2n-quic-dc): clamp TCP server concurrency by @Mark-Simulacrum in #2827
- fix: Change MTU test setup so it isn't slow by @maddeleine in #2828
- opt(s2n-quic-dc): Further tweak TCP acceptor concurrency by @Mark-Simulacrum in #2829
- feat(s2n-events): Add config option to generate C API by @goatgoose in #2818
- fix(s2n-quic-dc): send connection close frames with pruned streams by @camshaft in #2831
- feat(s2n-quic-dc): add packet-level events by @camshaft in #2832
- refactor(s2n-quic-dc): Add trait for TCP WorkerState poll behavior by @mehnazyunus in #2836
New Contributors
- @github-actions[bot] made their first contribution in #2822
- @mehnazyunus made their first contribution in #2836
Full Changelog: v1.66.0...v1.67.0
v1.66.0
Release Summary
- s2n-quic server can choose to immediately close the connection during handshake, once the user defined limiter requests such closing.
What's Changed
- fix(s2n-events): Fix warning when no nominal counters are defined by @goatgoose in #2811
- feat(s2n-quic-transport): close connection during handshake by @boquan-fang in #2792
- chore: s2n-quic 1.66.0 release by @boquan-fang in #2815
Full Changelog: v1.65...v1.66.0
v1.65.0
Summary
- feat(s2n-quic-dc): expose acceptor runtime
- feat(s2n-quic-dc): Track stream write buffer allocations
- opt(s2n-quic-dc): Use RwLock for id/peer maps
- Fixed bug that caused a hang on Windows platforms
What's Changed
- feat(s2n-quic-dc): Track stream write buffer allocations by @Mark-Simulacrum in #2779
- ci(clippy): create a clippy bot by @boquan-fang in #2782
- test(s2n-quic-dc): cap fuzz_test request size if that is too large by @boquan-fang in #2783
- feat(s2n-quic-dc): Add metric for improving decrypt performance by @Mark-Simulacrum in #2785
- build(deps): update hashbrown requirement from 0.15 to 0.16 by @dependabot[bot] in #2787
- ci: Fixes typo in metrics feature by @maddeleine in #2788
- refactor(s2n-quic-events): Rename s2n-quic-events to s2n-events by @goatgoose in #2780
- build(deps): bump aws-actions/configure-aws-credentials from 4.3.1 to 5.0.0 by @dependabot[bot] in #2791
- build(deps): bump actions/setup-python from 5 to 6 by @dependabot[bot] in #2790
- Expose the acceptor runtime by @Mark-Simulacrum in #2778
- refactor(s2n-events): Move s2n-quic event generation program out of s2n-events by @goatgoose in #2789
- docs(s2n-events): Update s2n-events docs with generate script info by @goatgoose in #2797
- docs(s2n-events): Fix event-generator readme path by @goatgoose in #2798
- build(CI): install cross from the latest commit by @boquan-fang in #2804
- chore: update MSRV to 1.84.0 and update checkers version by @boquan-fang in #2800
- opt(s2n-quic-dc): Use RwLock for id/peer maps by @Mark-Simulacrum in #2799
- test(s2n-quic-dc): implement tokio stream tests for dcQUIC by @boquan-fang in #2772
- test(s2n-quic-dc): add s2n-quic-dc tests for checking size and endpoint creation without tokio runtime by @boquan-fang in #2807
- bug: Fixes bug causing a hang on Windows by @maddeleine in #2808
- test(s2n-events): Generate test events system by @goatgoose in #2795
- chore: release v1.65.0 by @maddeleine in #2810
Full Changelog: v1.64.0...v1.65
v1.64.0
Release Summary
- Adds configurable percentage-based random jitter to Probe Timeout (PTO) calculations to prevent synchronized timeouts across multiple connections and reduce network congestion. Users can now configure jitter between 0-50% of the base PTO period, with 0% maintaining current RFC 9002 compliant behavior.
- Sets the default PTO jitter percentage for s2n-quic-dc to 33%.
What's Changed
- build(deps): bump aws-actions/configure-aws-credentials from 4.2.1 to 4.3.1 by @dependabot[bot] in #2740
- build(deps): bump docker/login-action from 3.4.0 to 3.5.0 by @dependabot[bot] in #2739
- feat(s2n-quic-dc): implement dcQUIC client Tokio Builder by @boquan-fang in #2741
- build(deps): bump actions/download-artifact from 4 to 5 by @dependabot[bot] in #2742
- feat(s2n-quic-dc): implement server tokio builder by @boquan-fang in #2744
- refactor(s2n-quic-dc): use map getter method to replace AsRef for Handshake trait by @boquan-fang in #2746
- fix(s2n-quic-dc): route secret control packets for UDP streams by @camshaft in #2747
- fix: clippy lint updates for rust version 1.89.0 by @jouho in #2750
- build(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #2751
- feat(s2n-quic-dc): implement dcQUIC's server, client, and io providers by @boquan-fang in #2752
- feat(s2n-quic-dc): implement dcQUIC control by @boquan-fang in #2755
- opt(s2n-quic-dc): skip epoll registration in happy path by @Mark-Simulacrum in #2754
- ci: reduce false alarms for ActionCIFailure by @lrstewart in #2758
- feat(s2n-quic): configurable PTO jitter by @WesleyRosenblum in #2756
- feat(s2n-quic-dc): set default PTO jitter to 33% by @WesleyRosenblum in #2771
- ci: add interop retries by @lrstewart in #2769
- fix(s2n-quic-dc): adjust trait bounds for providers by @camshaft in #2774
- refactor(s2n-quic-dc): configurable server_name option by @boquan-fang in #2775
- chore: release v1.64.0 by @boquan-fang in #2776
Full Changelog: v1.63.0...v1.64.0
v1.63.0
Release Summary
feat(s2n-quic-core) TLS offloading: Adds unstable feature to move TLS operations out of the main event loop.
What's Changed
- ci: remove exceptions for clippy by @WesleyRosenblum in #2726
- ci: temporarily disable neqo by @CarolYeh910 in #2724
- fix(s2n-quic-dc): include ipv6 header length in MAX_TOTAL_IPV6 payload length by @boquan-fang in #2727
- ci: document how to manually run the codebuild jobs by @lrstewart in #2729
- fix(typo): fix a typo in codebuild.yml by @boquan-fang in #2733
- build(deps): update criterion requirement from 0.6 to 0.7 by @dependabot[bot] in #2731
- refactor(ci): consolidate clippy checks into one job by @boquan-fang in #2695
- feat(s2n-quic-core) TLS offloading by @maddeleine in #2721
- Chore: Release v1.63.0 by @maddeleine in #2737
Full Changelog: v1.62.0...v1.63.0
Release v1.62.0
Release Summary
- feat(s2n-quic): Allow inspecting TLS session information for failed handshakes
- feat(s2n-quic-dc): Metrics can now emit how much time that the lock in cleaner takes. That metrics is important to measure handshake performance.
- fix(s2n-quic-dc): Fix incorrectly emitted error metrics for successful connects
What's Changed
- ci(fix): resolve flakiness in upd::fuzz_test by @boquan-fang in #2689
- build(deps): update lru requirement from 0.15 to 0.16 by @dependabot[bot] in #2693
- build(deps): update indicatif requirement from 0.17 to 0.18 by @dependabot[bot] in #2696
- ci(fix): pin nightly-1.86.0 for udeps fix by @boquan-fang in #2698
- build(deps): update toml requirement from 0.8 to 0.9 by @dependabot[bot] in #2702
- test(s2n-quic): server handle conn migration with zero-length cid by @boquan-fang in #2697
- feat(s2n-quic): Emit event on TLS handshake failure by @Mark-Simulacrum in #2701
- ci: Adds github action to trigger codebuild job for quic-attack by @maddeleine in #2707
- build(deps): update socket2 to v0.6.0 by @boquan-fang in #2700
- doc(README): add minimun supported kernel version section by @boquan-fang in #2709
- feat(s2n-quic-dc): Add cleaner duration metrics by @Mark-Simulacrum in #2708
- fix(ci): install cmake to compile quiche on cargotiming job by @boquan-fang in #2704
- ci: Migrate Duvet GitHub Action to duvet-action repo by @johubertj in #2712
- ci: require write permissions for CodeBuild by @CarolYeh910 in #2713
- refactor(s2n-quic-sim): avoid JS precision loss rounding s2n-quic-sim seeds by @Mark-Simulacrum in #2718
- fix(s2n-quic-dc): fix emitting ABORTED metric for successful connects by @Mark-Simulacrum in #2719
- refactor(s2n-quic): move tests to s2n-quic-tests by @WesleyRosenblum in #2716
- chore: release v1.62.0 by @CarolYeh910 in #2720
New Contributors
- @johubertj made their first contribution in #2712
Full Changelog: v1.61.0...v1.62.0
v1.61.0
Release Summary
- feat(s2n-quic-core, s2n-quic-dc): Access inner context for generated metrics Subscribers
What's Changed
- doc: fix doc for with_limits methods by @boquan-fang in #2682
- ci: fix clippy test by @CarolYeh910 in #2686
- Expose inner context on metrics Subscriber by @Mark-Simulacrum in #2685
- fix(s2n-quic-dc): avoid memory leak in worker waker by @camshaft in #2687
- build(deps): update lru requirement from 0.14 to 0.15 by @dependabot in #2684
- chore(release): v1.61.0 release by @boquan-fang in #2690
Full Changelog: v1.60.0...v1.61.0
Release v1.60.0
Release Summary
- Bump S2N-QUIC's MSRV to 1.82.0
- (s2n-quic-dc) Increase background handshake jitter
- (s2n-quic-dc) Emit additional events for TCP connects
- (s2n-quic-dc) Add event for connection-open deduplication
- (s2n-quic-dc) Expose HandshakingPath to access entry/error after handshake completes
- (s2n-quic-dc) Properly detect truncated streams
What's Changed
- chore: bump MSRV to 1.82.0 by @boquan-fang in #2654
- ci(udeps): use nightly v1.85.0 toolchain to fix udeps by @boquan-fang in #2658
- ci(GithubAction): only run aws credential on upstream s2n-quic by @boquan-fang in #2656
- fix(dc/wireshark): Provide Rust edition to bindgen by @goatgoose in #2663
- build(deps): update bindgen requirement from 0.71 to 0.72 in /tools/xdp by @dependabot in #2660
- Revert "ci(GithubAction): only run aws credential on upstream s2n-quic" by @boquan-fang in #2666
- fix(ci): skip max_total_test for cargotiming job by @boquan-fang in #2665
- build(deps): update prost requirement from 0.13 to 0.14 by @dependabot in #2667
- feat(s2n-quic-dc): Increase background handshake jitter by @Mark-Simulacrum in #2670
- build(deps): revert update of prost requirement from 0.13 to 0.14 by @tautschnig in #2671
- build(deps): bump docker/setup-buildx-action from 3.10.0 to 3.11.0 by @dependabot in #2672
- build(deps): bump docker/setup-buildx-action from 3.11.0 to 3.11.1 by @dependabot in #2673
- build(deps): update prost requirement from 0.13 to 0.14 by @dependabot in #2674
- feat(s2n-quic-dc): Define dcQUIC stream connect events by @Mark-Simulacrum in #2675
- Emit event for deduplicated connection opens by @Mark-Simulacrum in #2677
- ci: remove skipping tests for cargotiming by @boquan-fang in #2680
- feat(s2n-quic-dc): Expose dc::HandshakingPath publicly by @Mark-Simulacrum in #2679
- fix(s2n-quic-dc): detect truncated streams by @Mark-Simulacrum in #2681
- chore: release v1.60.0 by @CarolYeh910 in #2683
New Contributors
- @CarolYeh910 made their first contribution in #2683
Full Changelog: v1.59.0...v1.60.0