mirror of
https://github.com/YGGverse/aquatic.git
synced 2026-03-31 09:45:31 +00:00
1.8 KiB
1.8 KiB
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
- 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: ignore requests with source port value of zero
- 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
- 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