Cargo Features
[dependencies]
fedimint-arti-client = { version = "0.20.0", default-features = false, features = ["full", "async-std", "bridge-client", "tokio", "native-tls", "pt-client", "rustls", "static", "static-sqlite", "static-native-tls", "accel-sha1-asm", "accel-openssl", "onion-service-client", "onion-service-service", "keymgr", "vanguards", "compression", "experimental", "experimental-api", "dirfilter", "error_detail", "geoip", "rpc"] }
- default = compression, native-tls, tokio
-
These default features are set whenever
fedimint-arti-client
is added without
somewhere in the dependency tree.default-features = false - full = anyhow, async-std, bridge-client, compression, keymgr, native-tls, onion-service-client, onion-service-service, pt-client, tokio, vanguards
-
"full" is a top-level selector that turns on every feature, _EXCEPT FOR_:
Enables full of fs-mistrust ^0.7.9, safelog ^0.3.6, tor-async-utils ^0.20.0, tor-basic-utils ^0.20.0, tor-chanmgr ^0.20.0, tor-circmgr ^0.20.0, tor-config ^0.20.0, fedimint-tor-dirmgr, tor-error ^0.20.0, optional tor-geoip ^0.20.0, tor-guardmgr ^0.20.0, optional tor-hsclient ^0.20.0, optional tor-hscrypto ^0.20.0, optional tor-hsservice ^0.20.0, tor-keymgr ^0.20.0, tor-linkspec ^0.20.0, tor-llcrypto ^0.20.0, tor-netdir ^0.20.0, tor-netdoc ^0.20.0, tor-persist ^0.20.0, tor-proto ^0.20.0, optional tor-ptmgr ^0.20.0, optional tor-rpcbase ^0.20.0, and tor-rtcompat ^0.20.0
- async-std full?
-
* Features that are experimental or unstable
* Features that are testing-only
* Features which are select a particular implementation or build flag and
which therefore are not strictly additive.
* Features which may introduce unnecessary licensing restrictions.Enables async-std of tor-rtcompat ^0.20.0
- bridge-client full? pt-client?
-
Enables bridge-client of fedimint-tor-dirmgr and tor-guardmgr ^0.20.0
tor-guardmgr:
Support for using bridges as a client. Note that this is not the same as the pt-client feature, since here we are not concerned with pluggable transports necessarily.
- tokio default full?
-
Enables tokio of tor-proto ^0.20.0 and tor-rtcompat ^0.20.0
- native-tls default full? static-native-tls?
-
Enables native-tls of tor-rtcompat ^0.20.0
- pt-client full? = bridge-client, tor-ptmgr
-
Enables pt-client of tor-chanmgr ^0.20.0 and tor-guardmgr ^0.20.0
tor-guardmgr:
Support for pluggable transports.
Affects
config::pt
… - rustls
-
This is not nonadditive from a software POV, but we mark it as such because it includes code licensed under the old OpenSSL license (which was 4-clause BSD),
which in turn introduces a GPL-incompatibility.Enables rustls of tor-rtcompat ^0.20.0
- static = static-sqlite
-
depends directly on tor-rtcompat/static so native-tls doesn't get automatically included
Enables static of tor-rtcompat ^0.20.0
- static-sqlite static?
-
Enables static of fedimint-tor-dirmgr
- static-native-tls = native-tls
-
Enables static of tor-rtcompat ^0.20.0
- accel-sha1-asm
-
Enables with-sha1-asm of tor-llcrypto ^0.20.0
- accel-openssl
-
Enables with-openssl of tor-llcrypto ^0.20.0
- onion-service-client full? = tor-hsclient, tor-hscrypto
- onion-service-service full? = keymgr, tor-hscrypto, tor-hsservice
-
Enables state-dir of tor-persist ^0.20.0
tor-persist:
Enable the state_dir module
Affects
config::onion_service
… - keymgr full? onion-service-service?
-
Enables keymgr of tor-hsclient ^0.20.0 and tor-keymgr ^0.20.0
- vanguards full?
-
Enables vanguards of tor-circmgr ^0.20.0 and tor-guardmgr ^0.20.0
tor-guardmgr:
Vanguards support
- compression default full?
-
Enables compression of fedimint-tor-dirmgr
- experimental = dirfilter, error_detail, experimental-api, geoip, rpc
-
Enables experimental of tor-circmgr ^0.20.0, tor-config ^0.20.0, fedimint-tor-dirmgr, tor-guardmgr ^0.20.0, tor-netdoc ^0.20.0, and tor-proto ^0.20.0
tor-circmgr:
Enable experimental APIs that are not yet officially supported.
These APIs are not covered by semantic versioning. Using this feature voids your "semver warrantee". - experimental-api experimental?
-
Enable experimental APIs that are not yet officially supported.
These APIs are not covered by semantic versioning. Using this feature voids your "semver warrantee". - dirfilter experimental?
-
Enables dirfilter of fedimint-tor-dirmgr
- error_detail experimental?
- geoip experimental? = tor-geoip
-
Enables geoip of tor-circmgr ^0.20.0 and fedimint-tor-dirmgr
- rpc experimental? = dyn-clone, tor-rpcbase
-
Affects
fedimint-arti-client::rpc
…
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- anyhow full?
- dyn-clone rpc?
- tor-geoip geoip?
-
Enables tor-geoip ^0.20.0
- tor-hsclient keymgr? onion-service-client?
-
Enables tor-hsclient ^0.20.0
- tor-hscrypto onion-service-client? onion-service-service?
-
Enables tor-hscrypto ^0.20.0
- tor-hsservice onion-service-service?
-
Enables tor-hsservice ^0.20.0
- tor-ptmgr pt-client?
-
Enables tor-ptmgr ^0.20.0
- tor-rpcbase rpc?
-
Enables tor-rpcbase ^0.20.0