Cargo Features

[dependencies]
citadel_user = { version = "0.9.0", default-features = false, features = ["std", "redis", "sql", "filesystem", "wasm", "google-services", "vendored", "jwt-testing"] }
default = filesystem, std

These default features are set whenever citadel_user is added without default-features = false somewhere in the dependency tree.

std default

Enables fs of tokio and std of bstr, citadel_crypt, rand, and sha3

rand:

Option (enabled by default): without "std" rand uses libcore; this option enables functionality expected to be available on a standard platform.

redis = mobc, redis-base

Affects backend::redis_backend

sql = itertools, sqlx

Affects backend::sql_backend

filesystem default = tokio-stream, tokio-util

Enables filesystem of citadel_crypt

Affects backend::filesystem_backend, citadel_user::account_loader, citadel_user::directory_store

wasm

Enables wasm of citadel_crypt

google-services = firebase-rtdb, jwt, openssl

Affects client_account::ClientNetworkAccountInner.client_rtdb_config, external_services::google_auth, external_services::rtdb, external_services::service_interface, external_services::ServicesHandler, external_services::ServicesConfig, external_services::service

vendored

Enables vendored of openssl

localhost-testing jwt-testing

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.

itertools sql?

Enables itertools ^0.11.0

sqlx sql?
redis-base redis?

Enables redis ^0.23.0

mobc redis?
firebase-rtdb google-services?
jwt google-services?
openssl google-services? vendored?
tokio-util filesystem
tokio-stream filesystem