Cargo Features
[dependencies]
tardis = { version = "0.1.0-rc.19", default-features = false, features = ["conf-remote", "digest", "aead", "block_modes", "base64", "crypto", "crypto-with-sm", "future", "tls", "reldb-core", "reldb-postgres", "reldb-mysql", "reldb-sqlite", "reldb", "web-server", "openapi-redoc", "openapi-rapidoc", "openapi-swagger", "web-client", "ws-client", "cache", "mq", "mail", "os", "fs", "process", "tracing", "tokio-console", "tracing-appender", "web-server-grpc", "cluster", "build-info", "opentelemetry-http", "test"] }
- default = async-trait, base64, tardis-macros
-
These default features are set whenever
tardisis added withoutsomewhere in the dependency tree.default-features = false - conf-remote = async-trait, crypto, web-client
-
Affects
config_dto::FrameworkConfig.conf_center,config::config_nacos… - digest crypto? = hmac, md-5, sha1, sha2, sm3
-
Enables digest ^0.10
Affects
crypto::crypto_digest… - aead crypto? = aes-gcm, aes-gcm-siv, aes-siv
-
Enables aead
AES
Affects
crypto::crypto_aead… - block_modes crypto? = aes, cbc, cipher, ecb
- base64 default
-
Affects
crypto::crypto_base64,tardis::crypto… - crypto conf-remote? crypto-with-sm? = aead, block_modes, digest, rsa
-
Affects
config_processor::decryption,crypto::crypto_hex,crypto::crypto_key,crypto::crypto_main,crypto::crypto_base64,tardis::crypto… - crypto-with-sm = crypto, libsm, num-bigint
-
Affects
crypto_main::TardisCrypto.sm4,crypto_main::TardisCrypto.sm2,crypto::crypto_sm2_4… - future reldb-core? web-server? ws-client? = async-stream, async-trait, futures, futures-util
- tls ws-client? = native-tls
- reldb-core reldb? reldb-mysql? reldb-postgres? reldb-sqlite? = future, sea-orm, sqlparser, sqlx
-
Affects
tardis::db… - reldb-postgres reldb? = reldb-core
-
Enables reldb-postgres of tardis-macros and json-array and sqlx-postgres of sea-orm
RelDB
- reldb-mysql reldb? = reldb-core
-
Enables sqlx-mysql of sea-orm, reldb-mysql of tardis-macros
- reldb-sqlite reldb? = reldb-core
-
Enables sqlx-sqlite of sea-orm, reldb-sqlite of tardis-macros
- reldb = reldb-core, reldb-mysql, reldb-postgres, reldb-sqlite
- web-server cluster? web-server-grpc? = future, poem, poem-openapi, poem-openapi-derive
-
Affects
web::context_extractor,web::uniform_error_mw,web::web_resp,web::web_server,web::web_validation… - openapi-redoc
-
Enables redoc of poem-openapi
Web Server
- openapi-rapidoc
-
Enables rapidoc of poem-openapi
- openapi-swagger
-
Enables swagger-ui of poem-openapi
- web-client conf-remote? = reqwest
-
Affects
tardis::search,web::web_client… - ws-client cluster? = future, tls, tokio-tungstenite
-
Affects
web::ws_client… - cache cluster? = deadpool-redis, futures-util, redis
-
Affects
tardis::cache… - mq = amq-protocol-types, async-global-executor, futures-util, lapin
-
Affects
tardis::mq… - mail = lettre
-
Affects
tardis::mail… - os = anyhow, async-trait, rust-s3, urlencoding
-
Affects
tardis::os… - fs
-
Enables fs and io-util of tokio
Tokio
- process
- tracing = opentelemetry, opentelemetry-http, opentelemetry-otlp, opentelemetry_sdk, tracing-opentelemetry
-
Enables optional poem
Affects
tracing::HeaderInjector,tracing::HeaderExtractor,tracing::TracingConfig.endpoint,tracing::TracingConfig.protocol,tracing::TracingConfig.server_name,tracing::TracingConfig.headers,log::LogConfig.tracing… - tokio-console = console-subscriber
- tracing-appender
-
Enables tracing-appender
Affects
log::LogConfig.tracing_appender… - web-server-grpc = web-server
-
Enables poem-grpc
Affects
module::WebServerGrpcModule… - cluster = cache, web-server, ws-client
- build-info = git-version
-
Affects
utils::build_info… - opentelemetry-http tracing?
-
Enables opentelemetry-http ^0.30
- test = testcontainers, testcontainers-modules
-
Affects
tardis::test…
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.
- urlencoding os?
- tardis-macros default reldb-mysql? reldb-postgres? reldb-sqlite?
- console-subscriber tokio-console?
-
Enables console-subscriber ^0.4
- tracing-opentelemetry tracing?
-
Enables tracing-opentelemetry ^0.31
Tracing
- opentelemetry tracing?
-
Enables opentelemetry ^0.30
- opentelemetry_sdk tracing?
-
Enables opentelemetry_sdk ^0.30
- opentelemetry-otlp tracing?
-
Enables opentelemetry-otlp ^0.30
- native-tls tls?
-
Enables native-tls
TLS
- cipher block_modes?
-
Enables cipher ^0.4
Crypto
- sha1 digest?
-
Enables sha1
Digest see https://github.com/RustCrypto/hashes
- sha2 digest?
- md-5 digest?
-
Enables md-5
md5 is no longer considered secure
- sm3 digest?
-
Enables sm3
this sm3 lib support digest trait
- hmac digest?
- rsa crypto?
-
Enables rsa
RSA
Affects
crypto::crypto_rsa… - aes block_modes?
- aes-gcm-siv aead?
- aes-gcm aead?
- aes-siv aead?
- cbc block_modes?
-
Enables cbc
block-mode
- ecb block_modes?
- libsm crypto-with-sm?
- num-bigint crypto-with-sm?
- futures future?
-
Enables futures
Future
- async-stream future?
- futures-util cache? future? mq?
- async-trait default conf-remote? future? os?
- sea-orm reldb-core? reldb-mysql? reldb-postgres? reldb-sqlite?
- sqlx reldb-core?
- sqlparser reldb-core?
- poem-openapi openapi-rapidoc? openapi-redoc? openapi-swagger? web-server?
- poem-openapi-derive web-server?
- poem web-server?
- reqwest web-client?
-
Enables reqwest ^0.12
Web Client
- tokio-tungstenite ws-client?
-
Enables tokio-tungstenite ^0.24
Websocket Client
- redis cache?
-
Enables redis ^0.27
Redis
- deadpool-redis cache?
-
Enables deadpool-redis ^0.18
- lapin mq?
-
Enables lapin ^2
Rabbit
- amq-protocol-types mq?
-
Enables amq-protocol-types ^7.0
- async-global-executor mq?
-
Enables async-global-executor ^2
- lettre mail?
-
Enables lettre
Mail
- rust-s3 os?
-
Enables rust-s3 ^0.35.1
- anyhow os?
- testcontainers test?
-
Enables testcontainers ^0.23
Test
update this may cause break changes - testcontainers-modules test?
-
Enables testcontainers-modules ^0.11
- git-version build-info?
-
Enables git-version
Debug