diff options
Diffstat (limited to 'crates/tor-hscrypto')
| -rw-r--r-- | crates/tor-hscrypto/Cargo.toml | 12 | ||||
| -rw-r--r-- | crates/tor-hscrypto/README.md | 15 |
2 files changed, 24 insertions, 3 deletions
diff --git a/crates/tor-hscrypto/Cargo.toml b/crates/tor-hscrypto/Cargo.toml index d6f879092..bc84a9d07 100644 --- a/crates/tor-hscrypto/Cargo.toml +++ b/crates/tor-hscrypto/Cargo.toml @@ -17,8 +17,8 @@ memquota-memcost = ["derive-deftly", "tor-memquota", "tor-units/memquota-memcost ope = ["cipher", "zeroize"] # Onion service proof of work schemes -pow-v1 = ["arrayvec", "blake2", "equix"] -pow-full = ["pow-v1"] +pow-v1 = ["arrayvec", "blake2", "equix", "__is_experimental"] +pow-full = ["pow-v1", "__is_experimental"] full = [ "memquota-memcost", @@ -29,8 +29,16 @@ full = [ "tor-llcrypto/full", "tor-units/full", "tor-error/full", + "equix?/full", + "tor-memquota?/full", ] +experimental = [ + "pow-full", + "pow-v1", +] +__is_experimental = [] + [dependencies] arrayvec = { version = "0.7.4", optional = true } blake2 = { version = "0.10.6", optional = true } diff --git a/crates/tor-hscrypto/README.md b/crates/tor-hscrypto/README.md index 3a8036be8..91b563a41 100644 --- a/crates/tor-hscrypto/README.md +++ b/crates/tor-hscrypto/README.md @@ -32,12 +32,25 @@ onion services. * `ope` -- support for Order Preserving Encryption +* `full` -- Enable all features above. + +### Experimental and unstable features + +Note that the APIs enabled by these features are NOT covered by +semantic versioning[^1] guarantees: we might break them or remove +them between patch versions. + * `pow-v1` -- Tor Hidden Services Proof of Work (`v1` scheme only) * `pow-full` -- Tor Hidden Services Proof of Work (metafeature, enables all non-experimental schemes: currently, implies only `pow-v1`). -* `full` -- Enable all features above. +* `experimental`: Enable all the above experimental features. + +[^1]: Remember, semantic versioning is what makes various `cargo` +features work reliably. To be explicit: if you want `cargo update` +to _only_ make safe changes, then you cannot enable these +features. ## License |
