redactable 0.7.0

Automatic redaction of sensitive data in structs for safe logging and debugging
Documentation
[package]
name = "redactable"
version.workspace = true
edition.workspace = true
description = "Automatic redaction of sensitive data in structs for safe logging and debugging"
license.workspace = true
repository.workspace = true
documentation = "https://docs.rs/redactable"
homepage.workspace = true
readme = "../README.md"
keywords = ["redaction", "privacy", "security", "logging", "telemetry"]
categories = ["development-tools", "data-structures"]
# Explicitly include only what should be published to crates.io
include = ["src/**/*", "Cargo.toml", "../README.md"]

[features]
default = ["policy", "redaction"]
policy = []
redaction = ["policy"]
json = ["redaction", "dep:serde", "dep:serde_json"]
slog = ["json", "dep:slog", "redactable-derive/slog"]
tracing = ["json", "dep:tracing", "redactable-derive/tracing"]
tracing-valuable = ["tracing", "dep:valuable", "tracing/valuable"]
testing = []
chrono = ["dep:chrono"]
time = ["dep:time"]
ip-address = []
uuid = ["dep:uuid"]
extras = ["chrono", "time", "uuid", "ip-address"]

[dependencies]
redactable-derive = { version = "0.7.0", path = "../redactable-derive" }
serde = { version = "1", optional = true, features = ["derive"] }
serde_json = { version = "1", optional = true }
slog = { version = "2.8", optional = true, features = ["nested-values"] }
tracing = { version = "0.1", optional = true }
valuable = { version = "0.1", optional = true, features = ["derive"] }
chrono = { version = "0.4", optional = true }
time = { version = "0.3", optional = true }
uuid = { version = "1", optional = true }

[dev-dependencies]
serde = { version = "1", features = ["derive"] }
trybuild = "1"