rustapi-rs 0.1.389

A FastAPI-like web framework for Rust - DX-first, type-safe, batteries included
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.78"
name = "rustapi-rs"
version = "0.1.389"
authors = ["RustAPI Contributors, Tuntii"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A FastAPI-like web framework for Rust - DX-first, type-safe, batteries included"
documentation = "https://docs.rs/rustapi-rs"
readme = "README.md"
keywords = [
    "web",
    "framework",
    "api",
    "rest",
    "http",
]
categories = ["web-programming::http-server"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Tuntii/RustAPI"

[features]
api-key = ["extras-api-key"]
cache = ["extras-cache"]
circuit-breaker = ["extras-circuit-breaker"]
compression = ["core-compression"]
compression-brotli = ["core-compression-brotli"]
config = ["extras-config"]
cookies = ["core-cookies"]
core = [
    "core-openapi",
    "core-tracing",
]
core-compression = ["rustapi-core/compression"]
core-compression-brotli = ["rustapi-core/compression-brotli"]
core-cookies = [
    "dep:rustapi-extras",
    "rustapi-extras/cookies",
    "rustapi-core/cookies",
]
core-http3 = ["rustapi-core/http3"]
core-http3-dev = ["rustapi-core/http3-dev"]
core-legacy-validator = [
    "dep:validator",
    "rustapi-core/legacy-validator",
]
core-openapi = [
    "rustapi-core/swagger-ui",
    "rustapi-openapi/swagger-ui",
]
core-simd-json = ["rustapi-core/simd-json"]
core-tracing = ["rustapi-core/tracing"]
cors = ["extras-cors"]
dedup = ["extras-dedup"]
default = ["core"]
extras = [
    "extras-jwt",
    "extras-cors",
    "extras-rate-limit",
]
extras-all = [
    "extras-jwt",
    "extras-cors",
    "extras-rate-limit",
    "extras-config",
    "extras-sqlx",
    "extras-insight",
    "extras-timeout",
    "extras-guard",
    "extras-logging",
    "extras-circuit-breaker",
    "extras-retry",
    "extras-security-headers",
    "extras-api-key",
    "extras-cache",
    "extras-dedup",
    "extras-sanitization",
    "extras-otel",
    "extras-structured-logging",
    "extras-replay",
]
extras-api-key = [
    "dep:rustapi-extras",
    "rustapi-extras/api-key",
]
extras-cache = [
    "dep:rustapi-extras",
    "rustapi-extras/cache",
]
extras-circuit-breaker = [
    "dep:rustapi-extras",
    "rustapi-extras/circuit-breaker",
]
extras-config = [
    "dep:rustapi-extras",
    "rustapi-extras/config",
]
extras-cors = [
    "dep:rustapi-extras",
    "rustapi-extras/cors",
]
extras-dedup = [
    "dep:rustapi-extras",
    "rustapi-extras/dedup",
]
extras-guard = [
    "dep:rustapi-extras",
    "rustapi-extras/guard",
]
extras-insight = [
    "dep:rustapi-extras",
    "rustapi-extras/insight",
]
extras-jwt = [
    "dep:rustapi-extras",
    "rustapi-extras/jwt",
]
extras-logging = [
    "dep:rustapi-extras",
    "rustapi-extras/logging",
]
extras-otel = [
    "dep:rustapi-extras",
    "rustapi-extras/otel",
]
extras-rate-limit = [
    "dep:rustapi-extras",
    "rustapi-extras/rate-limit",
]
extras-replay = [
    "dep:rustapi-extras",
    "rustapi-extras/replay",
]
extras-retry = [
    "dep:rustapi-extras",
    "rustapi-extras/retry",
]
extras-sanitization = [
    "dep:rustapi-extras",
    "rustapi-extras/sanitization",
]
extras-security-headers = [
    "dep:rustapi-extras",
    "rustapi-extras/security-headers",
]
extras-sqlx = [
    "dep:rustapi-extras",
    "rustapi-extras/sqlx",
]
extras-structured-logging = [
    "dep:rustapi-extras",
    "rustapi-extras/structured-logging",
]
extras-timeout = [
    "dep:rustapi-extras",
    "rustapi-extras/timeout",
]
full = [
    "core",
    "protocol-all",
    "extras-all",
    "core-legacy-validator",
]
grpc = ["protocol-grpc"]
guard = ["extras-guard"]
http3 = ["protocol-http3"]
http3-dev = ["protocol-http3-dev"]
insight = ["extras-insight"]
jwt = ["extras-jwt"]
legacy-validator = ["core-legacy-validator"]
logging = ["extras-logging"]
otel = ["extras-otel"]
protocol-all = [
    "protocol-toon",
    "protocol-ws",
    "protocol-view",
    "protocol-grpc",
]
protocol-grpc = ["dep:rustapi-grpc"]
protocol-http3 = ["core-http3"]
protocol-http3-dev = ["core-http3-dev"]
protocol-toon = ["dep:rustapi-toon"]
protocol-view = ["dep:rustapi-view"]
protocol-ws = ["dep:rustapi-ws"]
rate-limit = ["extras-rate-limit"]
replay = ["extras-replay"]
retry = ["extras-retry"]
sanitization = ["extras-sanitization"]
security-headers = ["extras-security-headers"]
simd-json = ["core-simd-json"]
sqlx = ["extras-sqlx"]
structured-logging = ["extras-structured-logging"]
swagger-ui = ["core-openapi"]
timeout = ["extras-timeout"]
toon = ["protocol-toon"]
tracing = ["core-tracing"]
view = ["protocol-view"]
ws = ["protocol-ws"]

[lib]
name = "rustapi_rs"
path = "src/lib.rs"

[[example]]
name = "status_demo"
path = "examples/status_demo.rs"

[[example]]
name = "typed_path_poc"
path = "examples/typed_path_poc.rs"

[[test]]
name = "api_error_derive"
path = "tests/api_error_derive.rs"

[[test]]
name = "auto_route"
path = "tests/auto_route.rs"

[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"

[[test]]
name = "readme"
path = "tests/readme.rs"

[[test]]
name = "typed_path_derive"
path = "tests/typed_path_derive.rs"

[[test]]
name = "validation_tests"
path = "tests/validation_tests.rs"

[dependencies.async-trait]
version = "0.1"

[dependencies.rustapi-core]
version = "0.1.335"
default-features = false

[dependencies.rustapi-extras]
version = "0.1.335"
optional = true

[dependencies.rustapi-grpc]
version = "0.1.335"
optional = true

[dependencies.rustapi-macros]
version = "0.1.335"

[dependencies.rustapi-openapi]
version = "0.1.335"
default-features = false

[dependencies.rustapi-toon]
version = "0.1.335"
optional = true

[dependencies.rustapi-validate]
version = "0.1.335"

[dependencies.rustapi-view]
version = "0.1.335"
optional = true

[dependencies.rustapi-ws]
version = "0.1.335"
optional = true

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.tokio]
version = "1.35"

[dependencies.tracing]
version = "0.1"

[dependencies.validator]
version = "0.18"
features = ["derive"]
optional = true

[dev-dependencies.doc-comment]
version = "0.3"

[dev-dependencies.rustapi-core]
version = "0.1.335"
default-features = false

[dev-dependencies.rustapi-macros]
version = "0.1.335"

[dev-dependencies.tokio]
version = "1.35"
features = [
    "macros",
    "rt-multi-thread",
]

[dev-dependencies.uuid]
version = "1.6"
features = [
    "v4",
    "serde",
    "v4",
]