From 7180318abb7be4a9a4f95db8529e22dc158631ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sat, 26 Mar 2022 11:18:19 +0100 Subject: [PATCH 1/5] access list: rename white to allow, black to deny --- README.md | 2 +- aquatic_common/src/access_list.rs | 30 +++++++++---------- documents/aquatic-architecture-2022-02-02.svg | 2 +- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index c17cee7..8d01ffe 100644 --- a/README.md +++ b/README.md @@ -93,7 +93,7 @@ of configuration is: ```toml [access_list] -# Access list mode. Available modes are white, black and off. +# Access list mode. Available modes are allow, deny and off. mode = "off" # Path to access list file consisting of newline-separated hex-encoded info hashes. path = "" diff --git a/aquatic_common/src/access_list.rs b/aquatic_common/src/access_list.rs index 2eebc4b..d002d2f 100644 --- a/aquatic_common/src/access_list.rs +++ b/aquatic_common/src/access_list.rs @@ -9,14 +9,14 @@ use arc_swap::{ArcSwap, Cache}; use hashbrown::HashSet; use serde::{Deserialize, Serialize}; -/// Access list mode. Available modes are white, black and off. +/// Access list mode. Available modes are allow, deny and off. #[derive(Clone, Copy, Debug, PartialEq, TomlConfig, Serialize, Deserialize)] #[serde(rename_all = "lowercase")] pub enum AccessListMode { /// Only serve torrents with info hash present in file - White, + Allow, /// Do not serve torrents if info hash present in file - Black, + Deny, /// Turn off access list functionality Off, } @@ -74,8 +74,8 @@ impl AccessList { pub fn allows(&self, mode: AccessListMode, info_hash: &[u8; 20]) -> bool { match mode { - AccessListMode::White => self.0.contains(info_hash), - AccessListMode::Black => !self.0.contains(info_hash), + AccessListMode::Allow => self.0.contains(info_hash), + AccessListMode::Deny => !self.0.contains(info_hash), AccessListMode::Off => true, } } @@ -102,8 +102,8 @@ impl AccessListQuery for AccessListArcSwap { fn allows(&self, mode: AccessListMode, info_hash_bytes: &[u8; 20]) -> bool { match mode { - AccessListMode::White => self.load().0.contains(info_hash_bytes), - AccessListMode::Black => !self.load().0.contains(info_hash_bytes), + AccessListMode::Allow => self.load().0.contains(info_hash_bytes), + AccessListMode::Deny => !self.load().0.contains(info_hash_bytes), AccessListMode::Off => true, } } @@ -170,13 +170,13 @@ mod tests { let mut access_list_cache = Cache::new(Arc::clone(&access_list)); - assert!(access_list_cache.load().allows(AccessListMode::White, &a)); - assert!(access_list_cache.load().allows(AccessListMode::White, &b)); - assert!(!access_list_cache.load().allows(AccessListMode::White, &c)); + assert!(access_list_cache.load().allows(AccessListMode::Allow, &a)); + assert!(access_list_cache.load().allows(AccessListMode::Allow, &b)); + assert!(!access_list_cache.load().allows(AccessListMode::Allow, &c)); - assert!(!access_list_cache.load().allows(AccessListMode::Black, &a)); - assert!(!access_list_cache.load().allows(AccessListMode::Black, &b)); - assert!(access_list_cache.load().allows(AccessListMode::Black, &c)); + assert!(!access_list_cache.load().allows(AccessListMode::Deny, &a)); + assert!(!access_list_cache.load().allows(AccessListMode::Deny, &b)); + assert!(access_list_cache.load().allows(AccessListMode::Deny, &c)); assert!(access_list_cache.load().allows(AccessListMode::Off, &a)); assert!(access_list_cache.load().allows(AccessListMode::Off, &b)); @@ -184,7 +184,7 @@ mod tests { access_list.store(Arc::new(AccessList::default())); - assert!(access_list_cache.load().allows(AccessListMode::Black, &a)); - assert!(access_list_cache.load().allows(AccessListMode::Black, &b)); + assert!(access_list_cache.load().allows(AccessListMode::Deny, &a)); + assert!(access_list_cache.load().allows(AccessListMode::Deny, &b)); } } diff --git a/documents/aquatic-architecture-2022-02-02.svg b/documents/aquatic-architecture-2022-02-02.svg index 3eb64ee..58fc08c 100644 --- a/documents/aquatic-architecture-2022-02-02.svg +++ b/documents/aquatic-architecture-2022-02-02.svg @@ -1,3 +1,3 @@ -
Socket worker
Socket worker
Socket worker
Socket worker
Responses
Responses
Socket worker
Socket worker
Requests
Requests
Socket
Socket
Request worker
Request worker
Request worker
Request worker
Socket
Socket
Socket
Socket
Responses
Responses
Sharded torrent state
Sharded to...
Sharded torrent state
Sharded to...
  • Establish connections, or in the case of aquatic_udp, validate source IPs
  • Receive and parse requests from peers
  • Run whitelist/blacklist checks
  • Send on announce requests to the responsible request worker
  • Split scrape requests to match state shards and send them to the request workers
  • Receive responses from the request workers, serialize them and send them to peers

Establish connections, or in the case of aqua...
  • Receive announce and scrape requests from the socket workers
  • Update torrent state if appropriate, generate responses
  • Send responses back to the sending socket workers

Receive announce and scrape requests from the...
Connection state
Connection...
Connection state
Connection...
Connection state
Connection...
Requests
Requests
Text is not SVG - cannot display
\ No newline at end of file +
Socket worker
Socket worker
Socket worker
Socket worker
Responses
Responses
Socket worker
Socket worker
Requests
Requests
Socket
Socket
Request worker
Request worker
Request worker
Request worker
Socket
Socket
Socket
Socket
Responses
Responses
Sharded torrent state
Sharded to...
Sharded torrent state
Sharded to...
  • Establish connections, or in the case of aquatic_udp, validate source IPs
  • Receive and parse requests from peers
  • Run access list checks
  • Send on announce requests to the responsible request worker
  • Split scrape requests to match state shards and send them to the request workers
  • Receive responses from the request workers, serialize them and send them to peers

Establish connections, or in the case of aqua...
  • Receive announce and scrape requests from the socket workers
  • Update torrent state if appropriate, generate responses
  • Send responses back to the sending socket workers

Receive announce and scrape requests from the...
Connection state
Connection...
Connection state
Connection...
Connection state
Connection...
Requests
Requests
Text is not SVG - cannot display
\ No newline at end of file From 90437e23bb336f442737838a3aaf4900b420f41b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sat, 26 Mar 2022 11:39:04 +0100 Subject: [PATCH 2/5] Cargo.toml files: add readme keys, remove some exclude keys --- aquatic/Cargo.toml | 1 + aquatic_cli_helpers/Cargo.toml | 1 + aquatic_common/Cargo.toml | 1 + aquatic_http/Cargo.toml | 1 + aquatic_http_load_test/Cargo.toml | 1 + aquatic_http_protocol/Cargo.toml | 2 +- aquatic_toml_config/Cargo.toml | 2 +- aquatic_toml_config_derive/Cargo.toml | 1 + aquatic_udp/Cargo.toml | 1 + aquatic_udp_bench/Cargo.toml | 1 + aquatic_udp_load_test/Cargo.toml | 1 + aquatic_udp_protocol/Cargo.toml | 1 + aquatic_ws/Cargo.toml | 1 + aquatic_ws_load_test/Cargo.toml | 1 + aquatic_ws_protocol/Cargo.toml | 1 + 15 files changed, 15 insertions(+), 2 deletions(-) diff --git a/aquatic/Cargo.toml b/aquatic/Cargo.toml index 6121da2..53f8417 100644 --- a/aquatic/Cargo.toml +++ b/aquatic/Cargo.toml @@ -7,6 +7,7 @@ license = "Apache-2.0" description = "Blazingly fast, multi-threaded BitTorrent tracker (UDP, HTTP, WebTorrent)" repository = "https://github.com/greatest-ape/aquatic" keywords = ["bittorrent", "torrent", "webtorrent"] +readme = "../README.md" [[bin]] name = "aquatic" diff --git a/aquatic_cli_helpers/Cargo.toml b/aquatic_cli_helpers/Cargo.toml index df80062..42152f7 100644 --- a/aquatic_cli_helpers/Cargo.toml +++ b/aquatic_cli_helpers/Cargo.toml @@ -6,6 +6,7 @@ edition = "2021" license = "Apache-2.0" description = "aquatic BitTorrent tracker CLI helpers" repository = "https://github.com/greatest-ape/aquatic" +readme = "../README.md" [dependencies] aquatic_toml_config = "0.1.0" diff --git a/aquatic_common/Cargo.toml b/aquatic_common/Cargo.toml index 9e81393..6e49293 100644 --- a/aquatic_common/Cargo.toml +++ b/aquatic_common/Cargo.toml @@ -6,6 +6,7 @@ edition = "2021" license = "Apache-2.0" description = "aquatic BitTorrent tracker common code" repository = "https://github.com/greatest-ape/aquatic" +readme = "../README.md" [lib] name = "aquatic_common" diff --git a/aquatic_http/Cargo.toml b/aquatic_http/Cargo.toml index 4053c12..6fe7ab5 100644 --- a/aquatic_http/Cargo.toml +++ b/aquatic_http/Cargo.toml @@ -7,6 +7,7 @@ license = "Apache-2.0" description = "Blazingly fast, multi-threaded HTTP BitTorrent tracker" repository = "https://github.com/greatest-ape/aquatic" keywords = ["http", "server", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [lib] name = "aquatic_http" diff --git a/aquatic_http_load_test/Cargo.toml b/aquatic_http_load_test/Cargo.toml index f5413f8..51c0808 100644 --- a/aquatic_http_load_test/Cargo.toml +++ b/aquatic_http_load_test/Cargo.toml @@ -6,6 +6,7 @@ edition = "2021" license = "Apache-2.0" repository = "https://github.com/greatest-ape/aquatic" keywords = ["http", "benchmark", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [[bin]] name = "aquatic_http_load_test" diff --git a/aquatic_http_protocol/Cargo.toml b/aquatic_http_protocol/Cargo.toml index 230f719..685e2ba 100644 --- a/aquatic_http_protocol/Cargo.toml +++ b/aquatic_http_protocol/Cargo.toml @@ -6,8 +6,8 @@ edition = "2021" license = "Apache-2.0" repository = "https://github.com/greatest-ape/aquatic" description = "HTTP BitTorrent tracker protocol" -exclude = ["target"] keywords = ["http", "protocol", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [lib] name = "aquatic_http_protocol" diff --git a/aquatic_toml_config/Cargo.toml b/aquatic_toml_config/Cargo.toml index 3c9e9fb..2f331dd 100644 --- a/aquatic_toml_config/Cargo.toml +++ b/aquatic_toml_config/Cargo.toml @@ -6,8 +6,8 @@ edition = "2021" license = "Apache-2.0" description = "Serialize toml with comments" repository = "https://github.com/greatest-ape/aquatic" -exclude = ["target"] keywords = ["toml"] +readme = "../README.md" [lib] name = "aquatic_toml_config" diff --git a/aquatic_toml_config_derive/Cargo.toml b/aquatic_toml_config_derive/Cargo.toml index 3e55d89..504d478 100644 --- a/aquatic_toml_config_derive/Cargo.toml +++ b/aquatic_toml_config_derive/Cargo.toml @@ -8,6 +8,7 @@ description = "Serialize toml with comments" repository = "https://github.com/greatest-ape/aquatic" exclude = ["target"] keywords = ["toml"] +readme = "../README.md" [lib] proc-macro = true diff --git a/aquatic_udp/Cargo.toml b/aquatic_udp/Cargo.toml index c986152..bf82311 100644 --- a/aquatic_udp/Cargo.toml +++ b/aquatic_udp/Cargo.toml @@ -7,6 +7,7 @@ license = "Apache-2.0" description = "Blazingly fast, multi-threaded UDP BitTorrent tracker" repository = "https://github.com/greatest-ape/aquatic" keywords = ["udp", "server", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [lib] name = "aquatic_udp" diff --git a/aquatic_udp_bench/Cargo.toml b/aquatic_udp_bench/Cargo.toml index b7c4bf6..48e7749 100644 --- a/aquatic_udp_bench/Cargo.toml +++ b/aquatic_udp_bench/Cargo.toml @@ -5,6 +5,7 @@ authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" repository = "https://github.com/greatest-ape/aquatic" +readme = "../README.md" [[bin]] name = "aquatic_udp_bench" diff --git a/aquatic_udp_load_test/Cargo.toml b/aquatic_udp_load_test/Cargo.toml index ae803c2..286d58a 100644 --- a/aquatic_udp_load_test/Cargo.toml +++ b/aquatic_udp_load_test/Cargo.toml @@ -6,6 +6,7 @@ edition = "2021" license = "Apache-2.0" repository = "https://github.com/greatest-ape/aquatic" keywords = ["udp", "benchmark", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [[bin]] name = "aquatic_udp_load_test" diff --git a/aquatic_udp_protocol/Cargo.toml b/aquatic_udp_protocol/Cargo.toml index 67dda3b..7cd0ba8 100644 --- a/aquatic_udp_protocol/Cargo.toml +++ b/aquatic_udp_protocol/Cargo.toml @@ -7,6 +7,7 @@ license = "Apache-2.0" description = "UDP BitTorrent tracker protocol" repository = "https://github.com/greatest-ape/aquatic" keywords = ["udp", "protocol", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [dependencies] byteorder = "1" diff --git a/aquatic_ws/Cargo.toml b/aquatic_ws/Cargo.toml index 01665d6..49acee3 100644 --- a/aquatic_ws/Cargo.toml +++ b/aquatic_ws/Cargo.toml @@ -7,6 +7,7 @@ license = "Apache-2.0" description = "Blazingly fast, multi-threaded WebTorrent tracker" repository = "https://github.com/greatest-ape/aquatic" keywords = ["webtorrent", "websocket", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [lib] diff --git a/aquatic_ws_load_test/Cargo.toml b/aquatic_ws_load_test/Cargo.toml index af0528e..b1e7edd 100644 --- a/aquatic_ws_load_test/Cargo.toml +++ b/aquatic_ws_load_test/Cargo.toml @@ -6,6 +6,7 @@ edition = "2021" license = "Apache-2.0" repository = "https://github.com/greatest-ape/aquatic" keywords = ["webtorrent", "websocket", "benchmark", "torrent", "bittorrent"] +readme = "../README.md" [[bin]] name = "aquatic_ws_load_test" diff --git a/aquatic_ws_protocol/Cargo.toml b/aquatic_ws_protocol/Cargo.toml index 79be691..a380afb 100644 --- a/aquatic_ws_protocol/Cargo.toml +++ b/aquatic_ws_protocol/Cargo.toml @@ -8,6 +8,7 @@ description = "WebTorrent tracker protocol" repository = "https://github.com/greatest-ape/aquatic" exclude = ["target"] keywords = ["webtorrent", "protocol", "peer-to-peer", "torrent", "bittorrent"] +readme = "../README.md" [lib] name = "aquatic_ws_protocol" From d78b0fa31e7321c24b815acd67df1d9ad075e32e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sat, 26 Mar 2022 11:39:37 +0100 Subject: [PATCH 3/5] Bump version to 0.2.0 for all aquatic crates --- Cargo.lock | 30 +++++++++++++-------------- aquatic/Cargo.toml | 10 ++++----- aquatic_cli_helpers/Cargo.toml | 4 ++-- aquatic_common/Cargo.toml | 4 ++-- aquatic_http/Cargo.toml | 10 ++++----- aquatic_http_load_test/Cargo.toml | 10 ++++----- aquatic_http_protocol/Cargo.toml | 2 +- aquatic_toml_config/Cargo.toml | 2 +- aquatic_toml_config_derive/Cargo.toml | 2 +- aquatic_udp/Cargo.toml | 10 ++++----- aquatic_udp_bench/Cargo.toml | 12 +++++------ aquatic_udp_load_test/Cargo.toml | 10 ++++----- aquatic_udp_protocol/Cargo.toml | 2 +- aquatic_ws/Cargo.toml | 10 ++++----- aquatic_ws_load_test/Cargo.toml | 10 ++++----- aquatic_ws_protocol/Cargo.toml | 2 +- 16 files changed, 65 insertions(+), 65 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 171f282..89f5e0e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -45,7 +45,7 @@ checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27" [[package]] name = "aquatic" -version = "0.1.0" +version = "0.2.0" dependencies = [ "aquatic_cli_helpers", "aquatic_http", @@ -56,7 +56,7 @@ dependencies = [ [[package]] name = "aquatic_cli_helpers" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_toml_config", @@ -69,7 +69,7 @@ dependencies = [ [[package]] name = "aquatic_common" -version = "0.1.0" +version = "0.2.0" dependencies = [ "ahash", "anyhow", @@ -88,7 +88,7 @@ dependencies = [ [[package]] name = "aquatic_http" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -119,7 +119,7 @@ dependencies = [ [[package]] name = "aquatic_http_load_test" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -141,7 +141,7 @@ dependencies = [ [[package]] name = "aquatic_http_protocol" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "bendy", @@ -162,7 +162,7 @@ dependencies = [ [[package]] name = "aquatic_toml_config" -version = "0.1.0" +version = "0.2.0" dependencies = [ "aquatic_toml_config_derive", "quickcheck", @@ -173,7 +173,7 @@ dependencies = [ [[package]] name = "aquatic_toml_config_derive" -version = "0.1.0" +version = "0.2.0" dependencies = [ "proc-macro2", "quote", @@ -182,7 +182,7 @@ dependencies = [ [[package]] name = "aquatic_udp" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -209,7 +209,7 @@ dependencies = [ [[package]] name = "aquatic_udp_bench" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -228,7 +228,7 @@ dependencies = [ [[package]] name = "aquatic_udp_load_test" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -248,7 +248,7 @@ dependencies = [ [[package]] name = "aquatic_udp_protocol" -version = "0.1.0" +version = "0.2.0" dependencies = [ "byteorder", "either", @@ -258,7 +258,7 @@ dependencies = [ [[package]] name = "aquatic_ws" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -290,7 +290,7 @@ dependencies = [ [[package]] name = "aquatic_ws_load_test" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "aquatic_cli_helpers", @@ -315,7 +315,7 @@ dependencies = [ [[package]] name = "aquatic_ws_protocol" -version = "0.1.0" +version = "0.2.0" dependencies = [ "anyhow", "criterion", diff --git a/aquatic/Cargo.toml b/aquatic/Cargo.toml index 53f8417..f58064d 100644 --- a/aquatic/Cargo.toml +++ b/aquatic/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -13,8 +13,8 @@ readme = "../README.md" name = "aquatic" [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_http = "0.1.0" -aquatic_udp = "0.1.0" -aquatic_ws = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_http = "0.2.0" +aquatic_udp = "0.2.0" +aquatic_ws = "0.2.0" mimalloc = { version = "0.1", default-features = false } diff --git a/aquatic_cli_helpers/Cargo.toml b/aquatic_cli_helpers/Cargo.toml index 42152f7..64f7a74 100644 --- a/aquatic_cli_helpers/Cargo.toml +++ b/aquatic_cli_helpers/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_cli_helpers" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -9,7 +9,7 @@ repository = "https://github.com/greatest-ape/aquatic" readme = "../README.md" [dependencies] -aquatic_toml_config = "0.1.0" +aquatic_toml_config = "0.2.0" anyhow = "1" git-testament = "0.2" diff --git a/aquatic_common/Cargo.toml b/aquatic_common/Cargo.toml index 6e49293..1a1790f 100644 --- a/aquatic_common/Cargo.toml +++ b/aquatic_common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_common" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -15,7 +15,7 @@ name = "aquatic_common" cpu-pinning = ["hwloc", "libc"] [dependencies] -aquatic_toml_config = "0.1.0" +aquatic_toml_config = "0.2.0" ahash = "0.7" anyhow = "1" diff --git a/aquatic_http/Cargo.toml b/aquatic_http/Cargo.toml index 6fe7ab5..86b4b5a 100644 --- a/aquatic_http/Cargo.toml +++ b/aquatic_http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_http" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -19,10 +19,10 @@ name = "aquatic_http" cpu-pinning = ["aquatic_common/cpu-pinning"] [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_http_protocol = "0.1.0" -aquatic_toml_config = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_http_protocol = "0.2.0" +aquatic_toml_config = "0.2.0" anyhow = "1" cfg-if = "1" diff --git a/aquatic_http_load_test/Cargo.toml b/aquatic_http_load_test/Cargo.toml index 51c0808..dcd4786 100644 --- a/aquatic_http_load_test/Cargo.toml +++ b/aquatic_http_load_test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_http_load_test" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -15,10 +15,10 @@ name = "aquatic_http_load_test" cpu-pinning = ["aquatic_common/cpu-pinning"] [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_http_protocol = "0.1.0" -aquatic_toml_config = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_http_protocol = "0.2.0" +aquatic_toml_config = "0.2.0" anyhow = "1" futures-lite = "1" diff --git a/aquatic_http_protocol/Cargo.toml b/aquatic_http_protocol/Cargo.toml index 685e2ba..440ea54 100644 --- a/aquatic_http_protocol/Cargo.toml +++ b/aquatic_http_protocol/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_http_protocol" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" diff --git a/aquatic_toml_config/Cargo.toml b/aquatic_toml_config/Cargo.toml index 2f331dd..d88d4cf 100644 --- a/aquatic_toml_config/Cargo.toml +++ b/aquatic_toml_config/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_toml_config" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" diff --git a/aquatic_toml_config_derive/Cargo.toml b/aquatic_toml_config_derive/Cargo.toml index 504d478..d66f3f8 100644 --- a/aquatic_toml_config_derive/Cargo.toml +++ b/aquatic_toml_config_derive/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_toml_config_derive" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" diff --git a/aquatic_udp/Cargo.toml b/aquatic_udp/Cargo.toml index bf82311..e8b2e8c 100644 --- a/aquatic_udp/Cargo.toml +++ b/aquatic_udp/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_udp" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -19,10 +19,10 @@ name = "aquatic_udp" cpu-pinning = ["aquatic_common/cpu-pinning"] [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_toml_config = "0.1.0" -aquatic_udp_protocol = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_toml_config = "0.2.0" +aquatic_udp_protocol = "0.2.0" anyhow = "1" cfg-if = "1" diff --git a/aquatic_udp_bench/Cargo.toml b/aquatic_udp_bench/Cargo.toml index 48e7749..6350d61 100644 --- a/aquatic_udp_bench/Cargo.toml +++ b/aquatic_udp_bench/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_udp_bench" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -11,11 +11,11 @@ readme = "../README.md" name = "aquatic_udp_bench" [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_toml_config = "0.1.0" -aquatic_udp = "0.1.0" -aquatic_udp_protocol = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_toml_config = "0.2.0" +aquatic_udp = "0.2.0" +aquatic_udp_protocol = "0.2.0" anyhow = "1" crossbeam-channel = "0.5" diff --git a/aquatic_udp_load_test/Cargo.toml b/aquatic_udp_load_test/Cargo.toml index 286d58a..3ee48e9 100644 --- a/aquatic_udp_load_test/Cargo.toml +++ b/aquatic_udp_load_test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_udp_load_test" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -15,10 +15,10 @@ name = "aquatic_udp_load_test" cpu-pinning = ["aquatic_common/cpu-pinning"] [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_toml_config = "0.1.0" -aquatic_udp_protocol = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_toml_config = "0.2.0" +aquatic_udp_protocol = "0.2.0" anyhow = "1" hashbrown = "0.12" diff --git a/aquatic_udp_protocol/Cargo.toml b/aquatic_udp_protocol/Cargo.toml index 7cd0ba8..9c99303 100644 --- a/aquatic_udp_protocol/Cargo.toml +++ b/aquatic_udp_protocol/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_udp_protocol" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" diff --git a/aquatic_ws/Cargo.toml b/aquatic_ws/Cargo.toml index 49acee3..af02221 100644 --- a/aquatic_ws/Cargo.toml +++ b/aquatic_ws/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_ws" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -20,10 +20,10 @@ name = "aquatic_ws" cpu-pinning = ["aquatic_common/cpu-pinning"] [dependencies] -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_toml_config = "0.1.0" -aquatic_ws_protocol = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_toml_config = "0.2.0" +aquatic_ws_protocol = "0.2.0" anyhow = "1" async-tungstenite = "0.17" diff --git a/aquatic_ws_load_test/Cargo.toml b/aquatic_ws_load_test/Cargo.toml index b1e7edd..94ca2cc 100644 --- a/aquatic_ws_load_test/Cargo.toml +++ b/aquatic_ws_load_test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_ws_load_test" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" @@ -16,10 +16,10 @@ cpu-pinning = ["aquatic_common/cpu-pinning"] [dependencies] async-tungstenite = "0.17" -aquatic_cli_helpers = "0.1.0" -aquatic_common = "0.1.0" -aquatic_toml_config = "0.1.0" -aquatic_ws_protocol = "0.1.0" +aquatic_cli_helpers = "0.2.0" +aquatic_common = "0.2.0" +aquatic_toml_config = "0.2.0" +aquatic_ws_protocol = "0.2.0" anyhow = "1" futures = "0.3" diff --git a/aquatic_ws_protocol/Cargo.toml b/aquatic_ws_protocol/Cargo.toml index a380afb..fd91881 100644 --- a/aquatic_ws_protocol/Cargo.toml +++ b/aquatic_ws_protocol/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aquatic_ws_protocol" -version = "0.1.0" +version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" From ccfd5488c458afca37770f379487a762c1c8c6e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sat, 26 Mar 2022 11:53:04 +0100 Subject: [PATCH 4/5] aquatic_toml_config: fix dependency declaration for publishing --- aquatic_toml_config/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aquatic_toml_config/Cargo.toml b/aquatic_toml_config/Cargo.toml index d88d4cf..9ac82ad 100644 --- a/aquatic_toml_config/Cargo.toml +++ b/aquatic_toml_config/Cargo.toml @@ -14,7 +14,7 @@ name = "aquatic_toml_config" [dependencies] toml = "0.5" -aquatic_toml_config_derive = { path = "../aquatic_toml_config_derive" } +aquatic_toml_config_derive = { version = "0.2.0", path = "../aquatic_toml_config_derive" } [dev-dependencies] serde = { version = "1.0", features = ["derive"] } From f0471553665cbc806871a70419cd9e1e7e37ded1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sat, 26 Mar 2022 12:04:10 +0100 Subject: [PATCH 5/5] Add Cargo.toml descriptions for load testers --- aquatic_http_load_test/Cargo.toml | 1 + aquatic_udp_load_test/Cargo.toml | 1 + aquatic_ws_load_test/Cargo.toml | 1 + 3 files changed, 3 insertions(+) diff --git a/aquatic_http_load_test/Cargo.toml b/aquatic_http_load_test/Cargo.toml index dcd4786..18200ce 100644 --- a/aquatic_http_load_test/Cargo.toml +++ b/aquatic_http_load_test/Cargo.toml @@ -4,6 +4,7 @@ version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" +description = "BitTorrent (HTTP over TLS) load tester" repository = "https://github.com/greatest-ape/aquatic" keywords = ["http", "benchmark", "peer-to-peer", "torrent", "bittorrent"] readme = "../README.md" diff --git a/aquatic_udp_load_test/Cargo.toml b/aquatic_udp_load_test/Cargo.toml index 3ee48e9..93f5c40 100644 --- a/aquatic_udp_load_test/Cargo.toml +++ b/aquatic_udp_load_test/Cargo.toml @@ -4,6 +4,7 @@ version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" +description = "BitTorrent (UDP) load tester" repository = "https://github.com/greatest-ape/aquatic" keywords = ["udp", "benchmark", "peer-to-peer", "torrent", "bittorrent"] readme = "../README.md" diff --git a/aquatic_ws_load_test/Cargo.toml b/aquatic_ws_load_test/Cargo.toml index 94ca2cc..e6b58d4 100644 --- a/aquatic_ws_load_test/Cargo.toml +++ b/aquatic_ws_load_test/Cargo.toml @@ -4,6 +4,7 @@ version = "0.2.0" authors = ["Joakim Frostegård "] edition = "2021" license = "Apache-2.0" +description = "WebTorrent over TLS load tester" repository = "https://github.com/greatest-ape/aquatic" keywords = ["webtorrent", "websocket", "benchmark", "torrent", "bittorrent"] readme = "../README.md"