authkestra-engine 0.2.2

Unified authentication engine for the authkestra framework
Documentation
[package]
name = "authkestra-engine"
version = "0.2.2"
edition.workspace = true
description = "Unified authentication engine for the authkestra framework"
repository.workspace = true
license.workspace = true
readme.workspace = true

[dependencies]
# From authkestra-core
serde = { version = "1.0", features = ["derive"] }
reqwest = { version = "0.13.1", features = ["json", "form"] }
url = { workspace = true }
http = "1"
thiserror = "2.0.18"
async-trait = "0.1"
chrono = { version = "0.4", features = ["serde"] }
sha2 = { workspace = true }
base64 = "0.22.1"
rand = { workspace = true }

# From authkestra-flow
serde_json = "1.0"
uuid = { version = "1.0", features = ["v4"] }
tracing = "0.1"

# From authkestra-token
jsonwebtoken = { version = "10.3.0", features = ["rust_crypto"] }
tokio = { version = "1.0", features = ["full"] }
aes-gcm = "0.10.3"
rsa = "0.9.6"

redis = { version = "0.27", features = ["tokio-comp"], optional = true }
sqlx = { version = "0.8.2", optional = true }

[features]
default = ["token", "flow"]
token = []
flow = []
session = []
memory = []
redis = ["dep:redis"]
sql-postgres = ["sqlx/postgres", "sqlx/chrono", "sqlx/runtime-tokio-rustls", "sqlx/json"]
sql-mysql = ["sqlx/mysql", "sqlx/chrono", "sqlx/runtime-tokio-rustls", "sqlx/json"]
sql-sqlite = ["sqlx/sqlite", "sqlx/chrono", "sqlx/runtime-tokio-rustls", "sqlx/json"]

[dev-dependencies]
testcontainers = "0.27.3"
testcontainers-modules = { version = "0.15.0", features = ["mysql", "postgres", "redis"] }