[package]
name = "oopsie-core"
version = "0.1.0-rc.20"
edition.workspace = true
authors.workspace = true
rust-version.workspace = true
description = "Core error types and trace capture for the oopsie error-handling library"
license.workspace = true
repository.workspace = true
readme = "README.md"
keywords.workspace = true
categories.workspace = true
[package.metadata.docs.rs]
all-features = true
[features]
default = ["std"]
std = ["dep:backtrace", "serde?/std", "serde_json?/std"]
serde = ["dep:serde", "dep:serde_json", "tracing-subscriber?/json"]
tracing = ["std", "dep:tracing", "dep:tracing-error", "dep:tracing-subscriber"]
unstable-error-generic-member-access = []
unstable = ["unstable-error-generic-member-access"]
test-utils = ["std", "dep:insta", "dep:target-triple", "dep:konst"]
chrono = ["std", "dep:chrono"]
jiff = ["std", "dep:jiff"]
extras = ["std", "dep:pastey"]
[dependencies]
backtrace = { version = "0.3.76", features = ["coresymbolication"], optional = true }
chrono = { version = "0.4.45", default-features = false, features = [
"clock",
], optional = true }
jiff = { version = "0.2.28", optional = true }
insta = { version = "1.47.2", features = [
"filters",
"json",
"redactions",
], optional = true }
konst = { version = "0.4.3", features = ["alloc"], optional = true }
serde = { version = "1", default-features = false, features = [
"derive",
"alloc",
], optional = true }
serde_json = { version = "1", default-features = false, features = [
"alloc",
], optional = true }
target-triple = { version = "1.0.0", optional = true }
tracing = { version = "0.1", optional = true }
tracing-error = { version = "0.2", optional = true }
tracing-subscriber = { version = "0.3", features = [
"env-filter",
"registry",
], optional = true }
pastey = { version = "0.2.3", optional = true }
[dev-dependencies]
oopsie = { workspace = true }
tracing = "0.1"
tracing-error = "0.2"
tracing-subscriber = "0.3"
[lints]
workspace = true