# 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 = "2021"
rust-version = "1.56.0"
name = "ockam"
version = "0.121.0"
authors = ["Ockam Developers"]
exclude = ["tests/**"]
publish = true
description = "End-to-end encryption and mutual authentication for distributed applications."
homepage = "https://github.com/build-trust/ockam"
readme = "README.md"
keywords = [
    "ockam",
    "crypto",
    "cryptography",
    "network-programming",
    "encryption",
]
categories = [
    "cryptography",
    "asynchronous",
    "authentication",
    "network-programming",
    "embedded",
]
license = "Apache-2.0"
repository = "https://github.com/build-trust/ockam/tree/develop/implementations/rust/ockam/ockam"

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

[[test]]
name = "tests"
path = "tests/main.rs"

[dependencies.arrayref]
version = "0.3"

[dependencies.dyn-clone]
version = "1.0"

[dependencies.hex]
version = "0.4"
default-features = false

[dependencies.minicbor]
version = "0.21.1"
features = [
    "alloc",
    "derive",
]

[dependencies.ockam_abac]
version = "^0.54.0"
optional = true
default_features = false

[dependencies.ockam_core]
version = "^0.106.0"
default-features = false

[dependencies.ockam_identity]
version = "^0.108.0"
default_features = false

[dependencies.ockam_macros]
version = "^0.34.0"
default_features = false

[dependencies.ockam_node]
version = "^0.113.0"
default-features = false

[dependencies.ockam_transport_tcp]
version = "^0.111.0"
optional = true

[dependencies.ockam_vault]
version = "^0.106.0"
optional = true
default_features = false

[dependencies.rand]
version = "0.8"
default-features = false

[dependencies.serde]
version = "1.0"
features = ["derive"]
default-features = false

[dependencies.sha2]
version = "0.10"
default-features = false

[dependencies.tracing]
version = "0.1"
default-features = false

[dev-dependencies.ockam_vault]
version = "^0.106.0"

[dev-dependencies.rand_xorshift]
version = "0.3"

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

[dev-dependencies.trybuild]
version = "1.0"
features = ["diff"]

[features]
OCKAM_XX_25519_AES128_GCM_SHA256 = ["ockam_identity/OCKAM_XX_25519_AES128_GCM_SHA256"]
OCKAM_XX_25519_AES256_GCM_SHA256 = ["ockam_identity/OCKAM_XX_25519_AES256_GCM_SHA256"]
OCKAM_XX_25519_ChaChaPolyBLAKE2s = ["ockam_identity/OCKAM_XX_25519_ChaChaPolyBLAKE2s"]
alloc = [
    "ockam_core/alloc",
    "ockam_node/alloc",
    "ockam_vault/alloc",
    "ockam_identity/alloc",
    "serde/alloc",
]
debugger = [
    "ockam_node/debugger",
    "ockam_core/debugger",
]
default = [
    "std",
    "ockam_transport_tcp",
    "storage",
]
no_std = [
    "ockam_core/no_std",
    "ockam_node/no_std",
    "ockam_macros/no_std",
    "ockam_vault/no_std",
    "ockam_identity/no_std",
    "ockam_abac/no_std",
]
software_vault = ["ockam_identity/software_vault"]
std = [
    "alloc",
    "ockam_core/std",
    "ockam_node/std",
    "ockam_macros/std",
    "ockam_vault/std",
    "ockam_identity/std",
    "ockam_abac/std",
    "rand/default",
    "serde/std",
]
storage = ["ockam_identity/storage"]
