[package]
edition = "2021"
rust-version = "1.89"
name = "debugbundle"
version = "1.0.0-alpha.1"
build = "build.rs"
include = [
"/src/**/*.rs",
"/build.rs",
"/tests/**/*.rs",
"/tests/fixtures/*.json",
"/tests/fixtures/*.sha256",
"/examples/**/*.rs",
"/examples/README.md",
"/README.md",
"/LICENSE",
"/CHANGELOG.md",
"/docs/**/*.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Safe, bounded runtime error reporting for Rust, Axum and Actix Web"
homepage = "https://debugbundle.com"
documentation = "https://docs.rs/debugbundle"
readme = "README.md"
keywords = [
"debugging",
"errors",
"observability",
"axum",
"actix-web",
]
categories = [
"development-tools::debugging",
"web-programming",
]
license = "Apache-2.0"
repository = "https://github.com/debugbundle/debugbundle-rust"
[package.metadata.docs.rs]
all-features = true
[features]
actix-web = [
"local",
"http",
"dep:actix-web",
"dep:futures-util",
]
axum = [
"tower",
"local",
"http",
"dep:axum",
]
default = ["http"]
http = ["dep:reqwest"]
local = [
"dep:rustix",
"dep:windows-sys",
]
log = ["dep:log"]
testkit = []
tower = [
"dep:tower",
"dep:http",
"dep:http-body",
]
tracing = [
"dep:tracing",
"dep:tracing-subscriber",
]
[lib]
name = "debugbundle"
path = "src/lib.rs"
[[example]]
name = "actix"
path = "examples/actix.rs"
required-features = [
"actix-web",
"tracing",
]
[[example]]
name = "axum"
path = "examples/axum.rs"
required-features = [
"axum",
"tracing",
]
[[example]]
name = "errors"
path = "examples/errors.rs"
required-features = ["local"]
[[example]]
name = "local"
path = "examples/local.rs"
required-features = ["local"]
[[example]]
name = "tokio"
path = "examples/tokio.rs"
required-features = ["http"]
[[example]]
name = "tower"
path = "examples/tower.rs"
required-features = [
"tower",
"local",
]
[[example]]
name = "tracing"
path = "examples/tracing.rs"
required-features = [
"local",
"tracing",
]
[[test]]
name = "analytics_wire"
path = "tests/analytics_wire.rs"
[[test]]
name = "client"
path = "tests/client.rs"
[[test]]
name = "client_safety"
path = "tests/client_safety.rs"
[[test]]
name = "config"
path = "tests/config.rs"
[[test]]
name = "delivery_policy"
path = "tests/delivery_policy.rs"
[[test]]
name = "evidence"
path = "tests/evidence.rs"
[[test]]
name = "evidence_budget"
path = "tests/evidence_budget.rs"
[[test]]
name = "frameworks"
path = "tests/frameworks.rs"
[[test]]
name = "http"
path = "tests/http.rs"
[[test]]
name = "http_lifecycle"
path = "tests/http_lifecycle.rs"
[[test]]
name = "logging"
path = "tests/logging.rs"
[[test]]
name = "logging_install"
path = "tests/logging_install.rs"
[[test]]
name = "model"
path = "tests/model.rs"
[[test]]
name = "operations"
path = "tests/operations.rs"
[[test]]
name = "owned_json"
path = "tests/owned_json.rs"
[[test]]
name = "panic_observer"
path = "tests/panic_observer.rs"
[[test]]
name = "privacy"
path = "tests/privacy.rs"
[[test]]
name = "probes"
path = "tests/probes.rs"
[[test]]
name = "protocol"
path = "tests/protocol.rs"
[[test]]
name = "recovery"
path = "tests/recovery.rs"
[[test]]
name = "relay"
path = "tests/relay.rs"
[[test]]
name = "relay_frameworks"
path = "tests/relay_frameworks.rs"
[[test]]
name = "relay_limiter"
path = "tests/relay_limiter.rs"
[[test]]
name = "relay_spool"
path = "tests/relay_spool.rs"
[[test]]
name = "remote_config"
path = "tests/remote_config.rs"
[[test]]
name = "runtime_lifecycle"
path = "tests/runtime_lifecycle.rs"
[[test]]
name = "storage"
path = "tests/storage.rs"
[[test]]
name = "storage_faults"
path = "tests/storage_faults.rs"
[[test]]
name = "storage_windows"
path = "tests/storage_windows.rs"
[[test]]
name = "testkit"
path = "tests/testkit.rs"
[[test]]
name = "wire_properties"
path = "tests/wire_properties.rs"
[dependencies.actix-web]
version = "4.19.0"
features = ["macros"]
optional = true
default-features = false
[dependencies.axum]
version = "0.8.9"
features = [
"http1",
"tokio",
"matched-path",
"json",
]
optional = true
default-features = false
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
features = [
"clock",
"serde",
]
default-features = false
[dependencies.futures-util]
version = "0.3"
optional = true
[dependencies.getrandom]
version = "0.4"
[dependencies.hmac]
version = "0.12"
[dependencies.http]
version = "1"
optional = true
[dependencies.http-body]
version = "1"
optional = true
[dependencies.httpdate]
version = "1"
[dependencies.jsonschema]
version = "0.61.2"
default-features = false
[dependencies.log]
version = "0.4"
features = ["std"]
optional = true
[dependencies.percent-encoding]
version = "2"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.13.5"
features = [
"rustls",
"json",
]
optional = true
default-features = false
[dependencies.ryu-js]
version = "1.0.3"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.tokio]
version = "1.53"
features = [
"rt",
"sync",
"time",
"net",
"macros",
]
[dependencies.tower]
version = "0.5.2"
features = ["util"]
optional = true
[dependencies.tracing]
version = "0.1.44"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.23"
features = [
"registry",
"std",
]
optional = true
default-features = false
[dependencies.url]
version = "2"
[dependencies.uuid]
version = "1"
features = [
"v4",
"serde",
]
[dev-dependencies.anyhow]
version = "1"
[dev-dependencies.http-body-util]
version = "0.1"
[dev-dependencies.reqwest]
version = "0.13.5"
features = ["gzip"]
default-features = false
[dev-dependencies.rustls]
version = "0.23.46"
features = [
"std",
"aws_lc_rs",
"tls12",
]
default-features = false
[dev-dependencies.serde_json]
version = "1"
features = ["arbitrary_precision"]
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.thiserror]
version = "2"
[dev-dependencies.tokio]
version = "1.53"
features = [
"rt-multi-thread",
"io-util",
"test-util",
"signal",
]
[target.'cfg(any(target_os = "linux", target_os = "macos"))'.dependencies.rustix]
version = "1.1.6"
features = [
"fs",
"process",
]
optional = true
[target."cfg(windows)".dependencies.windows-sys]
version = "0.61.2"
features = [
"Win32_Foundation",
"Win32_Storage_FileSystem",
"Win32_Security",
"Win32_Security_Authorization",
"Win32_System_Threading",
]
optional = true
[lints.rust]
unsafe_code = "deny"