[package]
description = "Core types and traits for Univeral Timestamps in Rust"
documentation = "https://docs.rs/uts-core/"
edition.workspace = true
homepage.workspace = true
include = [
"src/**/*",
"Cargo.toml",
"LICENSE*",
"README*",
]
keywords = ["uts", "timestamping"]
license = "MIT OR Apache-2.0"
name = "uts-core"
repository.workspace = true
version.workspace = true
[dependencies]
allocator-api2 = { workspace = true }
alloy-chains = { workspace = true }
alloy-contract = { workspace = true, optional = true }
alloy-primitives = { workspace = true }
alloy-provider = { workspace = true, optional = true }
alloy-sol-types = { workspace = true, optional = true }
auto_impl.workspace = true
backon = { workspace = true, optional = true }
bytes = { workspace = true, optional = true }
digest = { workspace = true }
http = { workspace = true, optional = true }
http-body-util = { workspace = true, optional = true }
paste.workspace = true
reqwest = { workspace = true, optional = true, default-features = false }
ripemd.workspace = true
serde = { workspace = true, optional = true }
serde_json = { workspace = true, optional = true }
serde_with = { workspace = true, optional = true }
sha1.workspace = true
sha2.workspace = true
sha3.workspace = true
thiserror.workspace = true
tokio = { workspace = true, optional = true }
tracing = { workspace = true }
url = { workspace = true, optional = true }
uts-bmt = { workspace = true }
uts-contracts = { workspace = true, optional = true }
[features]
default = []
bytes = ["dep:bytes"]
serde = ["dep:serde", "dep:serde_with", "serde/derive", "serde_with/hex"]
bitcoin-verifier = [
"dep:reqwest",
"dep:url",
"dep:backon",
"dep:http",
"dep:http-body-util",
"dep:serde",
"dep:serde_json",
"verifier",
"reqwest/json",
"serde/derive",
]
eas-verifier = [
"dep:alloy-provider",
"dep:alloy-contract",
"dep:alloy-sol-types",
"dep:uts-contracts",
"verifier",
]
verifier = []
io-utils = ["dep:tokio", "tokio/fs"]
nightly = []
reqwest-default-tls = ["reqwest/default-tls", "alloy-provider?/reqwest-default-tls"]
reqwest-native-tls = ["reqwest/native-tls", "alloy-provider?/reqwest-native-tls"]
reqwest-rustls = ["reqwest/rustls", "alloy-provider?/reqwest-rustls-tls"]
[dev-dependencies]
serde_json.workspace = true
tokio = { workspace = true, features = ["full"] }