[package]
edition = "2021"
name = "o42sdk"
version = "0.1.9"
authors = ["OAuth42 Team"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Official OAuth42 SDK for Rust - OAuth2/OIDC client library with Actix-web, Axum, and Rocket support"
homepage = "https://oauth42.com"
documentation = "https://docs.rs/o42sdk"
readme = "README.md"
keywords = [
"oauth2",
"oidc",
"authentication",
"oauth42",
"sso",
]
categories = [
"authentication",
"web-programming",
"api-bindings",
]
license-file = "LICENSE"
repository = "https://github.com/devxpod/oauth42"
[features]
actix = [
"dep:actix-web",
"dep:actix-session",
]
axum = [
"dep:axum",
"dep:axum-core",
"dep:axum-extra",
"dep:tower",
]
default = [
"actix",
"axum",
]
full = [
"actix",
"axum",
"rocket",
"redis-cache",
]
redis-cache = ["dep:redis"]
rocket = ["dep:rocket"]
[lib]
name = "o42sdk"
path = "src/lib.rs"
[[test]]
name = "auth_tests"
path = "tests/auth_tests.rs"
[[test]]
name = "config_tests"
path = "tests/config_tests.rs"
[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"
[[test]]
name = "jwks_tests"
path = "tests/jwks_tests.rs"
[[test]]
name = "service_auth_tests"
path = "tests/service_auth_tests.rs"
[[test]]
name = "session_tests"
path = "tests/session_tests.rs"
[dependencies.actix-session]
version = "0.10"
optional = true
[dependencies.actix-web]
version = "4.11"
features = [
"macros",
"rustls-0_23",
]
optional = true
default-features = false
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.7"
optional = true
[dependencies.axum-core]
version = "0.4"
optional = true
[dependencies.axum-extra]
version = "0.9"
features = ["typed-header"]
optional = true
[dependencies.base64]
version = "0.21"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.futures]
version = "0.3"
[dependencies.jsonwebtoken]
version = "9.0"
[dependencies.rand]
version = "0.8"
[dependencies.redis]
version = "0.24"
features = [
"tokio-comp",
"connection-manager",
]
optional = true
[dependencies.reqwest]
version = "0.11"
features = [
"json",
"rustls-tls",
]
default-features = false
[dependencies.rocket]
version = "0.5"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.serde_urlencoded]
version = "0.7"
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tower]
version = "0.4"
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2.5"
features = ["serde"]
[dev-dependencies.rsa]
version = "0.9.10"
[dev-dependencies.tokio]
version = "1"
features = ["full"]
[dev-dependencies.wiremock]
version = "0.5"