identity-kit 0.2.2

DID, key management and verifiable credential primitives
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.95"
name = "identity-kit"
version = "0.2.2"
build = false
include = [
    "/src",
    "/tests/vectors",
    "/CHANGELOG.md",
    "/README.md",
    "/LICENSE",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "DID, key management and verifiable credential primitives"
readme = "README.md"
keywords = [
    "did",
    "ssi",
    "digital-credentials",
    "vc",
]
categories = [
    "cryptography",
    "authentication",
]
license = "Apache-2.0"
repository = "https://github.com/impierce/identity-kit"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
default = [
    "secp256k1",
    "software",
    "did-key",
    "did-jwk",
    "did-web",
    "reqwest",
    "vc",
    "sd-jwt",
    "domain-linkage",
    "linked-vp",
]
did-jwk = []
did-key = []
did-web = []
domain-linkage = [
    "vc",
    "did-web",
]
in-memory = ["dep:getrandom"]
jwks = ["did-web"]
linked-vp = [
    "vc",
    "did-web",
]
local-network = ["reqwest"]
pkcs11 = [
    "dep:cryptoki",
    "dep:tokio",
    "tokio/rt",
]
reqwest = [
    "did-web",
    "dep:reqwest",
    "dep:rustls",
    "dep:tokio",
]
rsa = ["dep:rsa"]
sd-jwt = [
    "vc",
    "dep:getrandom",
    "dep:miniz_oxide",
]
secp256k1 = ["dep:k256"]
software = ["dep:getrandom"]
test-vectors = []
utoipa = ["dep:utoipa"]
vc = ["dep:chrono"]

[lib]
name = "identity_kit"
path = "src/lib.rs"

[dependencies.async-trait]
version = "0.1"

[dependencies.base64]
version = "0.23"
features = ["std"]
default-features = false

[dependencies.bs58]
version = "0.5"

[dependencies.chrono]
version = "0.4"
features = [
    "now",
    "serde",
    "std",
]
optional = true
default-features = false

[dependencies.cryptoki]
version = "0.12"
optional = true

[dependencies.ed25519-dalek]
version = "3.0"
features = ["pkcs8"]

[dependencies.getrandom]
version = "0.4"
features = ["std"]
optional = true

[dependencies.indexmap]
version = "2.0"
features = ["serde"]

[dependencies.jsonwebtoken]
version = "11.1"
default-features = false

[dependencies.k256]
version = "0.14"
features = [
    "ecdsa",
    "pkcs8",
    "std",
]
optional = true
default-features = false

[dependencies.miniz_oxide]
version = "0.9"
optional = true

[dependencies.p256]
version = "0.14"
features = [
    "ecdsa",
    "pkcs8",
    "std",
]
default-features = false

[dependencies.reqwest]
version = "0.13"
features = [
    "rustls-no-provider",
    "http2",
]
optional = true
default-features = false

[dependencies.rsa]
version = "0.10.0-rc.19"
features = [
    "encoding",
    "sha2",
    "std",
]
optional = true
default-features = false

[dependencies.rustls]
version = "0.23"
features = [
    "ring",
    "std",
    "tls12",
]
optional = true
default-features = false

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"
features = [
    "float_roundtrip",
    "preserve_order",
]

[dependencies.sha2]
version = "0.11"

[dependencies.thiserror]
version = "2.0"

[dependencies.tokio]
version = "1.0"
features = ["net"]
optional = true

[dependencies.url]
version = "2.5"

[dependencies.utoipa]
version = "6.0"
optional = true

[dependencies.zeroize]
version = "1.8"
features = ["derive"]

[dev-dependencies.boon]
version = "0.6"

[dev-dependencies.jsonwebtoken]
version = "11.1"
features = ["rust_crypto"]
default-features = false

[dev-dependencies.proptest]
version = "1.0"

[dev-dependencies.tempfile]
version = "3.0"

[dev-dependencies.tokio]
version = "1.0"
features = [
    "io-util",
    "macros",
    "net",
    "rt",
    "rt-multi-thread",
    "sync",
]

[dev-dependencies.wiremock]
version = "0.6"

[lints.clippy]
dbg_macro = "warn"
print_stderr = "warn"
print_stdout = "warn"
todo = "warn"

[lints.rust]
missing_debug_implementations = "warn"
missing_docs = "warn"
unreachable_pub = "warn"
unsafe_code = "forbid"

[profile.mutants]
debug = 0
inherits = "test"