From cc3e1ae1b527910bd6fff728c9e47ce6bfc740bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Tue, 1 Nov 2022 18:21:19 +0100 Subject: [PATCH] CHANGELOG: improve structure, reword some items --- CHANGELOG.md | 83 +++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 59 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a43d31d..5496311 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,43 +4,78 @@ ### Added +#### General + * Add cli flag for printing parsed config * Add `aquatic_http_private`, an experiment for integrating with private trackers -* _aquatic_udp_: implement optional response resend buffer -* _aquatic_udp_: add optional extended statistics -* _aquatic_udp_: add Dockerfile to make it easier to get started -* _aquatic_ws_: add HTTP health check route when running without TLS + +#### aquatic_udp + +* Add optional response resend buffer for use on on operating systems that + don't buffer outgoing UDP traffic +* Add optional extended statistics +* Add Dockerfile to make it easier to get started + +#### aquatic_ws + +* Add HTTP health check route when running without TLS ### Changed +#### General + * Rename request workers to swarm workers * Switch to thin LTO for faster compile times -* Use proper workspace path declarations and remove workspace patch section +* Use proper workspace path declarations instead of workspace patch section * Use [Rust 1.64 workspace inheritance](https://blog.rust-lang.org/2022/09/22/Rust-1.64.0.html) * Reduce space taken by ValidUntil struct from 128 to 32 bits, reducing memory - consumtion for each stored peer by same amount -* Use regular (non-amortized) IndexMap for peer and pending scrape response maps (but not for torrent maps) + consumption for each stored peer by same amount +* Use regular (non-amortized) IndexMap for peer and pending scrape response + maps (but not for torrent maps) * Improve privilege dropping * Quit whole program if any thread panics * Update dependencies -* _aquatic_udp_: replace ConnectionMap with BLAKE3-based connection validator, - greatly decreasing memory consumtion -* _aquatic_udp_: don't return any response peers if announce event is stopped -* _aquatic_udp_: ignore requests with source port value of zero -* _aquatic_http_: don't return any response peers if announce event is stopped -* _aquatic_ws_: reduce size of various structs -* _aquatic_ws_: make TLS optional -* _aquatic_ws_: support reverse proxies + +#### aquatic_udp + +* Replace ConnectionMap with BLAKE3-based connection validator, greatly + decreasing memory consumtion +* Don't return any response peers if announce event is stopped +* Ignore requests with source port value of zero + +#### aquatic_http + +* Don't return any response peers if announce event is stopped + +#### aquatic_ws + +* Make TLS optional +* Support reverse proxies +* Reduce size of various structs ### Fixed +#### General + * Forbid unrecognized keys when parsing config files -* Fix warnings from invalid avx512 key included in `./scripts/env-native-cpu-without-avx-512` -* _aquatic_udp_: when calculating bandwidth statistics, take packet headers etc. into account -* _aquatic_http_protocol_: explicity check for /scrape path -* _aquatic_http_protocol_: return NeedMoreData until headers are fully parsed -* _aquatic_http_protocol_: fix issues with ScrapeRequest::write and AnnounceRequest::write -* _aquatic_http_protocol_: expose write and parse methods for subtypes -* _aquatic_http_load_test_: exclusively use TLS 1.3 -* _aquatic_ws_: remove peer from swarms immediately when connection is closed -* _aquatic_ws_: allow peers to use multiple peer IDs, as long as they only use one per info hash +* Stop including invalid avx512 key in `./scripts/env-native-cpu-without-avx-512` + +#### aquatic_udp + +* When calculating bandwidth statistics, include size of protocol headers + +#### aquatic_http_protocol + +* Explicity check for /scrape path +* Return NeedMoreData until headers are fully parsed +* Fix issues with ScrapeRequest::write and AnnounceRequest::write +* Expose write and parse methods for subtypes + +#### aquatic_http_load_test + +* Exclusively use TLS 1.3 + +#### aquatic_ws + +* Remove peer from swarms immediately when connection is closed +* Allow peers to use multiple peer IDs, as long as they only use one per info hash