[package]
edition = "2021"
name = "gotcha"
version = "0.3.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Enhanced web framework built on top of Axum with OpenAPI, metrics, and configuration management"
readme = false
license = "MIT"
repository = "https://github.com/Kilerd/gotcha/"
[features]
cors = ["dep:tower-http"]
default = ["http1"]
http1 = [
"axum/http1",
"axum/tokio",
]
message = ["tokio/rt"]
openapi = [
"dep:oas",
"dep:gotcha_core",
"gotcha_core/axum",
]
prometheus = ["dep:axum-prometheus"]
static_files = [
"dep:tower-http",
"tower-http/fs",
]
task = [
"dep:cron",
"tokio/time",
]
[lib]
name = "gotcha"
path = "src/lib.rs"
doctest = false
[[test]]
name = "builder_api"
path = "tests/builder_api.rs"
[[test]]
name = "builder_api_test"
path = "tests/builder_api_test.rs"
[[test]]
name = "serde_flatten"
path = "tests/serde_flatten.rs"
[[test]]
name = "test_complex_flatten"
path = "tests/test_complex_flatten.rs"
[[test]]
name = "test_flatten_advanced"
path = "tests/test_flatten_advanced.rs"
[[test]]
name = "test_flatten_enum"
path = "tests/test_flatten_enum.rs"
[[test]]
name = "test_path_params"
path = "tests/test_path_params.rs"
[[test]]
name = "test_tagged_enum_advanced"
path = "tests/test_tagged_enum_advanced.rs"
[[test]]
name = "test_untagged_enum"
path = "tests/test_untagged_enum.rs"
[dependencies.async-trait]
version = "0.1.60"
[dependencies.axum]
version = "0.7"
features = [
"form",
"json",
"query",
"multipart",
]
default-features = false
[dependencies.axum-macros]
version = "0.4"
[dependencies.axum-prometheus]
version = "0.7.0"
optional = true
[dependencies.bigdecimal]
version = "0.4"
[dependencies.cfg-if]
version = "1"
[dependencies.chrono]
version = "0.4.23"
[dependencies.convert_case]
version = "0.6.0"
[dependencies.cron]
version = "0.12.0"
optional = true
[dependencies.either]
version = "1.13.0"
[dependencies.gotcha_core]
version = "0.3"
optional = true
[dependencies.gotcha_macro]
version = "0.3"
[dependencies.http]
version = "0.2"
[dependencies.inventory]
version = "0.3.15"
[dependencies.log]
version = "0.4"
[dependencies.mofa]
version = "0.1"
[dependencies.oas]
version = "0.1"
optional = true
[dependencies.once_cell]
version = "1"
[dependencies.regex]
version = "1.7"
[dependencies.rust_decimal]
version = "1.36"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1"
[dependencies.tower-http]
version = "0.6"
features = [
"cors",
"fs",
]
optional = true
[dependencies.tower-layer]
version = "0.3.2"
[dependencies.tower-service]
version = "0.3.2"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.uuid]
version = "1.10"
[dev-dependencies.assert-json-diff]
version = "2"
[dev-dependencies.gotcha_core]
version = "0.3"
[dev-dependencies.trybuild]
version = "1.0"