[package]
edition = "2024"
rust-version = "1.97"
name = "keelrun"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Keel as a Rust front end: #[keel::wrap] plus a reqwest-middleware adapter, routing calls through the keel-core Engine chain (cache/rate/breaker/timeout/retry) from one `keel.toml`. No import hook (Rust has none to hang off of) — call `keel::init()` once from your own `main`. Published as `keelrun` (plain `keel` is taken on crates.io); add it as `cargo add keelrun --rename keel` so `#[keel::wrap]` resolves — see README.md."
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/MisterTK/keel"
[lib]
name = "keel"
path = "src/lib.rs"
[[test]]
name = "middleware_integration"
path = "tests/middleware_integration.rs"
[[test]]
name = "trybuild"
path = "tests/trybuild.rs"
[[test]]
name = "wrap_integration"
path = "tests/wrap_integration.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.http]
version = "1"
[dependencies.keel-core]
version = "0.2.0"
package = "keelrun-core"
[dependencies.keel-core-api]
version = "0.2.0"
[dependencies.keel-macros]
version = "0.2.0"
[dependencies.reqwest]
version = "0.13"
default-features = false
[dependencies.reqwest-middleware]
version = "0.5"
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.150"
[dependencies.toml]
version = "0.8"
[dev-dependencies.tempfile]
version = "3.23"
[dev-dependencies.thiserror]
version = "2.0"
[dev-dependencies.tokio]
version = "1.47"
features = [
"macros",
"rt-multi-thread",
"test-util",
"time",
]
[dev-dependencies.trybuild]
version = "1.0"
[lints.clippy]
doc_markdown = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_debug_implementations = "warn"
unsafe_code = "forbid"
unused_qualifications = "warn"
[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1