Add "full" and "experimental" features to arti-client and below.
The "full" feature is a catch-all for all features, _except_: * Those that select a particular implementation (like tor-llcrypto/with-openssl) or build flag (like "static") * Those that are experimental or unstable (like "experimental-api") * Those that are testing-only.
This commit is contained in:
parent
e7681ca135
commit
8a586a40fa
|
@ -158,7 +158,9 @@ dependencies = [
|
||||||
"tokio",
|
"tokio",
|
||||||
"tokio-util",
|
"tokio-util",
|
||||||
"tor-basic-utils",
|
"tor-basic-utils",
|
||||||
|
"tor-cell",
|
||||||
"tor-chanmgr",
|
"tor-chanmgr",
|
||||||
|
"tor-checkable",
|
||||||
"tor-circmgr",
|
"tor-circmgr",
|
||||||
"tor-config",
|
"tor-config",
|
||||||
"tor-dirmgr",
|
"tor-dirmgr",
|
||||||
|
|
|
@ -13,22 +13,30 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["tokio", "native-tls"]
|
default = ["tokio", "native-tls"]
|
||||||
|
# "full" is a top-level selector that turns on every feature, _EXCEPT FOR_:
|
||||||
|
# * 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.
|
||||||
|
full = ["tokio", "async-std", "native-tls", "rustls", "tor-rtcompat/full", "tor-proto/full", "tor-netdoc/full", "tor-dirmgr/full"]
|
||||||
|
|
||||||
async-std = ["tor-rtcompat/async-std"]
|
async-std = ["tor-rtcompat/async-std"]
|
||||||
tokio = ["tor-rtcompat/tokio", "tor-proto/tokio"]
|
tokio = ["tor-rtcompat/tokio", "tor-proto/tokio"]
|
||||||
native-tls = ["tor-rtcompat/native-tls"]
|
native-tls = ["tor-rtcompat/native-tls"]
|
||||||
rustls = ["tor-rtcompat/rustls"]
|
rustls = ["tor-rtcompat/rustls"]
|
||||||
|
|
||||||
static = ["static-sqlite", "static-native-tls"]
|
static = ["static-sqlite", "static-native-tls"]
|
||||||
static-sqlite = ["tor-dirmgr/static"]
|
static-sqlite = ["tor-dirmgr/static"]
|
||||||
static-native-tls = ["tor-rtcompat/static", "native-tls"]
|
static-native-tls = ["tor-rtcompat/static", "native-tls"]
|
||||||
|
|
||||||
dirfilter = ["tor-dirmgr/dirfilter"]
|
|
||||||
error_detail = []
|
|
||||||
|
|
||||||
# Enable experimental APIs that are not yet officially supported.
|
# Enable experimental APIs that are not yet officially supported.
|
||||||
#
|
#
|
||||||
# These APIs are not covered by semantic versioning. Using this
|
# These APIs are not covered by semantic versioning. Using this
|
||||||
# feature voids your "semver warrantee".
|
# feature voids your "semver warrantee".
|
||||||
|
experimental = ["dirfilter", "experimental-api", "error_detail", "tor-proto/experimental", "tor-cell/experimental", "tor-checkable/experimental", "tor-netdoc/experimental", "tor-dirmgr/experimental", "tor-circmgr/experimental"]
|
||||||
experimental-api = []
|
experimental-api = []
|
||||||
|
dirfilter = ["tor-dirmgr/dirfilter"]
|
||||||
|
error_detail = []
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
derive_builder = { version = "0.11.2", package = "derive_builder_fork_arti" }
|
derive_builder = { version = "0.11.2", package = "derive_builder_fork_arti" }
|
||||||
|
@ -44,7 +52,9 @@ safelog = { path = "../safelog", version = "0.1.0" }
|
||||||
serde = { version = "1.0.103", features = ["derive"] }
|
serde = { version = "1.0.103", features = ["derive"] }
|
||||||
thiserror = "1"
|
thiserror = "1"
|
||||||
tor-basic-utils = { path = "../tor-basic-utils", version = "0.3.1" }
|
tor-basic-utils = { path = "../tor-basic-utils", version = "0.3.1" }
|
||||||
|
tor-cell = { path = "../tor-cell", version = "0.3.1" }
|
||||||
tor-chanmgr = { path = "../tor-chanmgr", version = "0.3.1" }
|
tor-chanmgr = { path = "../tor-chanmgr", version = "0.3.1" }
|
||||||
|
tor-checkable = { path = "../tor-checkable", version = "0.3.0" }
|
||||||
tor-circmgr = { path = "../tor-circmgr", version = "0.3.1" }
|
tor-circmgr = { path = "../tor-circmgr", version = "0.3.1" }
|
||||||
tor-config = { path = "../tor-config", version = "0.4.0" }
|
tor-config = { path = "../tor-config", version = "0.4.0" }
|
||||||
tor-dirmgr = { path = "../tor-dirmgr", version = "0.4.0" }
|
tor-dirmgr = { path = "../tor-dirmgr", version = "0.4.0" }
|
||||||
|
|
|
@ -13,6 +13,7 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
|
experimental = ["experimental-udp"]
|
||||||
# Enable experimental UDP support.
|
# Enable experimental UDP support.
|
||||||
experimental-udp = []
|
experimental-udp = []
|
||||||
# Enable testing only API
|
# Enable testing only API
|
||||||
|
|
|
@ -12,6 +12,7 @@ categories = ["cryptography", "rust-patterns"]
|
||||||
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
|
experimental = ["experimental-api"]
|
||||||
experimental-api = []
|
experimental-api = []
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|
|
@ -12,10 +12,12 @@ categories = ["network-programming", "cryptography"]
|
||||||
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
|
|
||||||
# Enable experimental APIs that are not yet officially supported.
|
# Enable experimental APIs that are not yet officially supported.
|
||||||
#
|
#
|
||||||
# These APIs are not covered by semantic versioning. Using this
|
# These APIs are not covered by semantic versioning. Using this
|
||||||
# feature voids your "semver warrantee".
|
# feature voids your "semver warrantee".
|
||||||
|
experimental = ["experimental-api"]
|
||||||
experimental-api = []
|
experimental-api = []
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|
|
@ -13,6 +13,9 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["mmap"]
|
default = ["mmap"]
|
||||||
|
full = ["routerdesc"]
|
||||||
|
experimental = ["experimental-api", "dirfilter"]
|
||||||
|
|
||||||
mmap = ["memmap2"]
|
mmap = ["memmap2"]
|
||||||
static = ["rusqlite/bundled"]
|
static = ["rusqlite/bundled"]
|
||||||
# (Incomplete) support for downloading and storing router descriptors
|
# (Incomplete) support for downloading and storing router descriptors
|
||||||
|
|
|
@ -14,6 +14,8 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
|
|
||||||
|
experimental = ["experimental-api"]
|
||||||
|
|
||||||
# Enable experimental APIs that are not yet officially supported.
|
# Enable experimental APIs that are not yet officially supported.
|
||||||
#
|
#
|
||||||
# These APIs are not covered by semantic versioning. Using this
|
# These APIs are not covered by semantic versioning. Using this
|
||||||
|
|
|
@ -14,6 +14,9 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
|
|
||||||
|
full = ["routerdesc", "ns_consensus"]
|
||||||
|
experimental = ["build_docs", "experimental-api"]
|
||||||
|
|
||||||
# Enable code to build the objects that represent different network documents.
|
# Enable code to build the objects that represent different network documents.
|
||||||
build_docs = ["rand"]
|
build_docs = ["rand"]
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,8 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
|
full = ["tokio"]
|
||||||
|
experimental = ["hs", "ntor_v3"]
|
||||||
hs = []
|
hs = []
|
||||||
ntor_v3 = []
|
ntor_v3 = []
|
||||||
tokio = ["tokio-crate", "tokio-util"]
|
tokio = ["tokio-crate", "tokio-util"]
|
||||||
|
|
|
@ -14,6 +14,8 @@ repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
|
||||||
[features]
|
[features]
|
||||||
|
|
||||||
default = []
|
default = []
|
||||||
|
full = ["async-std", "tokio", "native-tls", "rustls"]
|
||||||
|
|
||||||
async-std = ["async-std-crate", "async-io", "async_executors/async_std"]
|
async-std = ["async-std-crate", "async-io", "async_executors/async_std"]
|
||||||
tokio = ["tokio-crate", "tokio-util", "async_executors/tokio_tp"]
|
tokio = ["tokio-crate", "tokio-util", "async_executors/tokio_tp"]
|
||||||
# TODO: This feature makes us link native-tls statically even if we
|
# TODO: This feature makes us link native-tls statically even if we
|
||||||
|
|
Loading…
Reference in New Issue