[package]
edition = "2021"
name = "docspec-http"
version = "1.7.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "HTTP API server for DocSpec document conversion"
readme = "README.md"
keywords = [
"document",
"conversion",
"streaming",
"http",
"api",
]
categories = [
"network-programming",
"web-programming",
]
license = "MIT"
repository = "https://github.com/docspec/docspec"
[package.metadata.dist]
dist = false
[lib]
name = "docspec_http"
path = "src/lib.rs"
[[test]]
name = "common_helpers_smoke"
path = "tests/common_helpers_smoke.rs"
[[test]]
name = "http_integration"
path = "tests/http_integration.rs"
[[test]]
name = "http_sentry_integration"
path = "tests/http_sentry_integration.rs"
[[test]]
name = "metrics_cardinality"
path = "tests/metrics_cardinality.rs"
[[test]]
name = "metrics_conversion"
path = "tests/metrics_conversion.rs"
[[test]]
name = "metrics_endpoint"
path = "tests/metrics_endpoint.rs"
[[test]]
name = "metrics_http"
path = "tests/metrics_http.rs"
[[test]]
name = "mime_parser"
path = "tests/mime_parser.rs"
[[test]]
name = "server_bind"
path = "tests/server_bind.rs"
[[test]]
name = "tracing_init"
path = "tests/tracing_init.rs"
[dependencies.axum]
version = "0.8"
[dependencies.clap]
version = "4"
features = ["derive"]
[dependencies.docspec]
version = "1.7.1"
features = ["full"]
[dependencies.docspec-core]
version = "1.7.1"
[dependencies.docspec-json]
version = "1.7.1"
[dependencies.metrics]
version = "0.24"
[dependencies.metrics-exporter-prometheus]
version = "0.18"
default-features = false
[dependencies.mime]
version = "0.3"
[dependencies.sentry]
version = "0.48"
features = [
"backtrace",
"contexts",
"panic",
"tower",
"tower-http",
"tracing",
"reqwest",
"rustls",
]
default-features = false
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"signal",
"net",
]
[dependencies.tower]
version = "0.5"
[dependencies.tower-http]
version = "0.6"
features = [
"trace",
"request-id",
"util",
"set-header",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["fmt"]
[dev-dependencies.reqwest]
version = "0.13"
features = [
"blocking",
"json",
]
[dev-dependencies.sentry]
version = "0.48"
features = [
"backtrace",
"contexts",
"panic",
"tower",
"tower-http",
"tracing",
"reqwest",
"rustls",
"test",
]
default-features = false
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tower]
version = "0.5"
features = ["util"]
[dev-dependencies.uuid]
version = "1"
[dev-dependencies.zip]
version = "8"
features = ["deflate"]
default-features = false
[lints.clippy]
absolute_paths = "allow"
alloc_instead_of_core = "warn"
allow_attributes = "allow"
allow_attributes_without_reason = "allow"
arbitrary_source_item_ordering = "allow"
assertions_on_result_states = "allow"
big_endian_bytes = "allow"
blanket_clippy_restriction_lints = "allow"
cfg_not_test = "allow"
cognitive_complexity = "deny"
decimal_literal_representation = "allow"
default_numeric_fallback = "allow"
error_impl_error = "allow"
exhaustive_enums = "deny"
exhaustive_structs = "allow"
expect_used = "deny"
fn_params_excessive_bools = "allow"
host_endian_bytes = "allow"
implicit_return = "allow"
integer_division_remainder_used = "allow"
large_enum_variant = "allow"
let_underscore_untyped = "allow"
little_endian_bytes = "allow"
min_ident_chars = "allow"
missing_docs_in_private_items = "allow"
missing_trait_methods = "allow"
mod_module_files = "allow"
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
multiple_inherent_impl = "allow"
option_if_let_else = "deny"
partial_pub_fields = "allow"
pattern_type_mismatch = "allow"
print_stderr = "allow"
pub_use = "allow"
question_mark_used = "allow"
redundant_pub_crate = "deny"
semicolon_inside_block = "allow"
shadow_same = "allow"
single_call_fn = "allow"
single_char_lifetime_names = "allow"
std_instead_of_alloc = "allow"
std_instead_of_core = "warn"
str_to_string = "allow"
unnecessary_wraps = "allow"
unwrap_used = "deny"
use_self = "deny"
wildcard_enum_match_arm = "allow"
[lints.clippy.cargo]
level = "deny"
priority = -1
[lints.clippy.complexity]
level = "deny"
priority = -1
[lints.clippy.pedantic]
level = "deny"
priority = -1
[lints.clippy.perf]
level = "deny"
priority = -1
[lints.clippy.restriction]
level = "deny"
priority = -1
[lints.clippy.style]
level = "deny"
priority = -1
[lints.clippy.suspicious]
level = "deny"
priority = -1
[lints.rust]
dead_code = "deny"
missing_docs = "deny"
unsafe_code = "forbid"