diff --git a/crates/ruma-client/Cargo.toml b/crates/ruma-client/Cargo.toml index df1e95d7..2d8dd83d 100644 --- a/crates/ruma-client/Cargo.toml +++ b/crates/ruma-client/Cargo.toml @@ -16,18 +16,20 @@ all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] -client-api = ["ruma-client-api"] +client-api = ["dep:ruma-client-api"] # HTTP clients -hyper-native-tls = ["hyper", "hyper-tls"] +hyper = ["dep:hyper"] +hyper-native-tls = ["hyper", "dep:hyper-tls"] hyper-rustls = ["hyper", "dep:hyper-rustls"] isahc = ["dep:isahc", "futures-lite"] -reqwest-native-tls = ["reqwest", "reqwest/native-tls"] -reqwest-native-tls-alpn = ["reqwest", "reqwest/native-tls-alpn"] -reqwest-native-tls-vendored = ["reqwest", "reqwest/native-tls-vendored"] -reqwest-rustls-manual-roots = ["reqwest", "reqwest/rustls-tls-manual-roots"] -reqwest-rustls-webpki-roots = ["reqwest", "reqwest/rustls-tls-webpki-roots"] -reqwest-rustls-native-roots = ["reqwest", "reqwest/rustls-tls-native-roots"] +reqwest = ["dep:reqwest"] +reqwest-native-tls = ["reqwest", "reqwest?/native-tls"] +reqwest-native-tls-alpn = ["reqwest", "reqwest?/native-tls-alpn"] +reqwest-native-tls-vendored = ["reqwest", "reqwest?/native-tls-vendored"] +reqwest-rustls-manual-roots = ["reqwest", "reqwest?/rustls-tls-manual-roots"] +reqwest-rustls-webpki-roots = ["reqwest", "reqwest?/rustls-tls-webpki-roots"] +reqwest-rustls-native-roots = ["reqwest", "reqwest?/rustls-tls-native-roots"] [dependencies] assign = "1.1.1" diff --git a/crates/ruma-common/Cargo.toml b/crates/ruma-common/Cargo.toml index 1d9af0b8..ee74e442 100644 --- a/crates/ruma-common/Cargo.toml +++ b/crates/ruma-common/Cargo.toml @@ -21,19 +21,19 @@ default = ["client", "server"] client = [] server = [] -api = ["http", "thiserror"] +api = ["dep:http", "dep:thiserror"] canonical-json = [] compat = ["ruma-macros/compat", "ruma-identifiers-validation/compat"] -events = ["thiserror"] -js = ["js-sys", "getrandom?/js", "uuid?/js"] +events = ["dep:thiserror"] +js = ["dep:js-sys", "getrandom?/js", "uuid?/js"] markdown = ["pulldown-cmark"] -# Should use dep:rand instead of the dependency being renamed, but that -# breaks trybuild: https://github.com/dtolnay/trybuild/issues/171 -rand = ["rand_crate", "uuid"] +# Dependency should not be renamed, but if it isn't, trybuild breaks: +# https://github.com/dtolnay/trybuild/issues/171 +rand = ["dep:rand_crate", "dep:uuid"] unstable-exhaustive-types = [] unstable-pdu = [] unstable-pre-spec = [] -unstable-sanitize = ["html5ever", "phf"] +unstable-sanitize = ["dep:html5ever", "dep:phf"] unstable-msc1767 = [] unstable-msc2285 = [] unstable-msc2448 = [] @@ -42,7 +42,7 @@ unstable-msc2677 = [] unstable-msc2746 = [] unstable-msc2870 = [] unstable-msc3245 = ["unstable-msc3246"] -unstable-msc3246 = ["unstable-msc3551", "thiserror"] +unstable-msc3246 = ["unstable-msc3551", "dep:thiserror"] unstable-msc3381 = ["unstable-msc1767"] unstable-msc3440 = [] unstable-msc3488 = ["unstable-msc1767"] diff --git a/crates/ruma-signatures/Cargo.toml b/crates/ruma-signatures/Cargo.toml index b2596395..67d7ae89 100644 --- a/crates/ruma-signatures/Cargo.toml +++ b/crates/ruma-signatures/Cargo.toml @@ -14,7 +14,7 @@ edition = "2021" all-features = true [features] -ring-compat = ["subslice"] +ring-compat = ["dep:subslice"] unstable-exhaustive-types = [] [dependencies] diff --git a/crates/ruma/Cargo.toml b/crates/ruma/Cargo.toml index 1b4f9b1c..5d36a2ea 100644 --- a/crates/ruma/Cargo.toml +++ b/crates/ruma/Cargo.toml @@ -18,41 +18,49 @@ rustdoc-args = ["--cfg", "docsrs"] [features] api = ["ruma-common/api"] canonical-json = ["ruma-common/canonical-json"] -client = ["ruma-client"] +client = ["dep:ruma-client"] events = ["ruma-common/events"] -signatures = ["ruma-signatures"] -state-res = ["ruma-state-res"] +signatures = ["dep:ruma-signatures"] +state-res = ["dep:ruma-state-res"] # ruma-client feature flags -client-ext-client-api = ["client", "ruma-client/client-api"] -client-hyper = ["client", "ruma-client/hyper"] -client-hyper-native-tls = ["client", "ruma-client/hyper-native-tls"] -client-isahc = ["client", "ruma-client/isahc"] -client-reqwest = ["client", "ruma-client/reqwest"] -client-reqwest-native-tls = ["client", "ruma-client/reqwest-native-tls"] -client-reqwest-native-tls-vendored = ["client", "ruma-client/reqwest-native-tls-vendored"] -client-reqwest-rustls-manual-roots = ["client", "ruma-client/reqwest-rustls-manual-roots"] -client-reqwest-rustls-webpki-roots = ["client", "ruma-client/reqwest-rustls-webpki-roots"] -client-reqwest-rustls-native-roots = ["client", "ruma-client/reqwest-rustls-native-roots"] +client-ext-client-api = ["client", "ruma-client?/client-api"] +client-hyper = ["client", "ruma-client?/hyper"] +client-hyper-native-tls = ["client", "ruma-client?/hyper-native-tls"] +client-isahc = ["client", "ruma-client?/isahc"] +client-reqwest = ["client", "ruma-client?/reqwest"] +client-reqwest-native-tls = ["client", "ruma-client?/reqwest-native-tls"] +client-reqwest-native-tls-vendored = ["client", "ruma-client?/reqwest-native-tls-vendored"] +client-reqwest-rustls-manual-roots = ["client", "ruma-client?/reqwest-rustls-manual-roots"] +client-reqwest-rustls-webpki-roots = ["client", "ruma-client?/reqwest-rustls-webpki-roots"] +client-reqwest-rustls-native-roots = ["client", "ruma-client?/reqwest-rustls-native-roots"] -appservice-api-c = ["api", "events", "ruma-appservice-api/client"] -appservice-api-s = ["api", "events", "ruma-appservice-api/server"] +appservice-api-c = ["api", "events", "dep:ruma-appservice-api", "ruma-appservice-api?/client"] +appservice-api-s = ["api", "events", "dep:ruma-appservice-api", "ruma-appservice-api?/server"] appservice-api = ["appservice-api-c", "appservice-api-s"] -client-api-c = ["api", "events", "ruma-client-api/client"] -client-api-s = ["api", "events", "ruma-client-api/server"] +client-api-c = ["api", "events", "dep:ruma-client-api", "ruma-client-api?/client"] +client-api-s = ["api", "events", "dep:ruma-client-api", "ruma-client-api?/server"] client-api = ["client-api-c", "client-api-s"] -federation-api-c = ["api", "signatures", "ruma-federation-api/client"] -federation-api-s = ["api", "signatures", "ruma-federation-api/server"] +federation-api-c = ["api", "signatures", "dep:ruma-federation-api", "ruma-federation-api?/client"] +federation-api-s = ["api", "signatures", "dep:ruma-federation-api", "ruma-federation-api?/server"] federation-api = ["federation-api-c", "federation-api-s"] -identity-service-api-c = ["api", "ruma-identity-service-api/client"] -identity-service-api-s = ["api", "ruma-identity-service-api/server"] +identity-service-api-c = [ + "api", + "dep:ruma-identity-service-api", + "ruma-identity-service-api?/client", +] +identity-service-api-s = [ + "api", + "dep:ruma-identity-service-api", + "ruma-identity-service-api?/server", +] identity-service-api = ["identity-service-api-c", "identity-service-api-s"] -push-gateway-api-c = ["api", "ruma-push-gateway-api/client"] -push-gateway-api-s = ["api", "ruma-push-gateway-api/server"] +push-gateway-api-c = ["api", "dep:ruma-push-gateway-api", "ruma-push-gateway-api?/client"] +push-gateway-api-s = ["api", "dep:ruma-push-gateway-api", "ruma-push-gateway-api?/server"] push-gateway-api = ["push-gateway-api-c", "push-gateway-api-s"] # Required for randomness, current system time in browser environments @@ -91,7 +99,7 @@ compat = [ ] # Specific compatibility for past ring public/private key documents. -ring-compat = ["ruma-signatures/ring-compat"] +ring-compat = ["dep:ruma-signatures", "ruma-signatures?/ring-compat"] # unstable: by using any of these, you opt out of all semver guarantees Ruma # otherwise provides! diff --git a/xtask/Cargo.toml b/xtask/Cargo.toml index af90ff40..c6509f9f 100644 --- a/xtask/Cargo.toml +++ b/xtask/Cargo.toml @@ -5,7 +5,7 @@ edition = "2021" publish = false [features] -default = ["isahc", "semver", "toml_edit"] +default = ["dep:isahc", "dep:semver", "dep:toml_edit"] [dependencies] clap = { version = "3.2.4", features = ["derive"] }