mirror of
https://github.com/YGGverse/aquatic.git
synced 2026-03-31 17:55:36 +00:00
46 lines
2.2 KiB
Markdown
46 lines
2.2 KiB
Markdown
# Changelog
|
|
|
|
## Unreleased
|
|
|
|
### Added
|
|
|
|
* 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
|
|
|
|
### Changed
|
|
|
|
* 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 [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)
|
|
* 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
|
|
|
|
### Fixed
|
|
|
|
* 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
|