openrouter_api 0.7.0

A Rust client library for the OpenRouter API
Documentation
[package]
name = "openrouter_api"
version = "0.7.0"
edition = "2021"
authors = ["James Ray<openrouter.aea1p@passmail.net>"]
description = "A Rust client library for the OpenRouter API"
license = "MIT OR Apache-2.0"
repository = "https://github.com/socrates8300/openrouter_api"
documentation = "https://docs.rs/openrouter_api"
readme = "README.md"
keywords = ["openrouter", "ai", "api-client"]
categories = ["api-bindings", "asynchronous"]

[dependencies]
reqwest = { version = "0.12", default-features = false, features = [
  "json",
  "rustls-tls",
  "stream",
] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1", features = ["full"] }
thiserror = "2.0"
url = "2.3"
futures = "0.3"
async-stream = "0.3"
fastrand = "2.0"
tokio-util = { version = "0.7", features = ["codec", "io"] }
uuid = { version = "1.16.0", features = ["v4"] }
zeroize = { version = "1.8", features = ["derive"] }
regex = "1.11"
chrono = { version = "0.4", features = ["serde"] }
urlencoding = "2.1"
httpdate = "1.0"
tracing = { version = "0.1", optional = true }

[dev-dependencies]
tokio-test = "0.4"
wiremock = "0.6"
test-case = "3.3"
serial_test = "3.0"
trybuild = "1.0"

[features]
default = ["tls-rustls"]
# TLS features - exactly one must be chosen.
# Use --features "tls-rustls" for rustls-tls (default).
# Use --features "tls-native-tls" for native-tls.
#
# NOTE: `cargo build --all-features` and `cargo test --all-features` are
# UNSUPPORTED for this crate: enabling both `tls-rustls` and `tls-native-tls`
# at once trips the compile-time `compile_error!` block in `src/lib.rs` and
# fails the build. Use one TLS feature at a time, e.g.
#   cargo test --features tls-rustls,tracing,allow-http
#   cargo test --no-default-features --features tls-native-tls
tls-rustls = ["reqwest/rustls-tls"]
tls-native-tls = ["reqwest/native-tls"]
# Legacy aliases for compatibility (deprecated)
rustls = ["tls-rustls"]
native-tls = ["tls-native-tls"]
tracing = ["dep:tracing"]
allow-http = []

[package.metadata.docs.rs]
features = ["tls-rustls", "tracing"]
no-default-features = true
rustdoc-args = ["--cfg", "docsrs"]

[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "unwind"
strip = true