enprot 0.5.14

Engyon Protected Text (EPT) — confidentiality processor and capability ledger
# 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.88"
name = "enprot"
version = "0.5.14"
authors = ["Ribose Inc. <open.source@ribose.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Engyon Protected Text (EPT) — confidentiality processor and capability ledger"
homepage = "https://github.com/engyon/enprot"
documentation = "https://docs.rs/enprot"
readme = "README.md"
keywords = [
    "encryption",
    "engyon",
    "ept",
    "botan",
    "blockchain",
]
categories = [
    "command-line-utilities",
    "cryptography",
]
license = "BSD-2-Clause"
repository = "https://github.com/engyon/enprot"
resolver = "2"

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

[package.metadata.deb]
maintainer = "Engyon <open.source@ribose.com>"
copyright = "2018-2026 Ribose Inc."
license-file = [
    "LICENSE",
    "0",
]
depends = "libbotan-3-3, librnp0"
section = "utils"
priority = "optional"
extended-description = """
Engyon Protected Text (EPT) — confidentiality and provenance for text.
Enprot embeds classification levels, content-addressed storage, and
signed chain anchors inside any text-based file without breaking the
host language's syntax."""
assets = [
    [
    "target/release/enprot",
    "usr/bin/",
    "755",
],
    [
    "target/release/enprot.1",
    "usr/share/man/man1/",
    "644",
],
    [
    "target/release/completions/enprot.bash",
    "usr/share/bash-completion/completions/enprot",
    "644",
],
    [
    "target/release/completions/_enprot",
    "usr/share/zsh/vendor-completions/",
    "644",
],
    [
    "target/release/completions/enprot.fish",
    "usr/share/fish/vendor_completions.d/",
    "644",
],
]

[package.metadata.generate-rpm]
summary = "Engyon Protected Text — confidentiality and provenance for text"
license = "BSD-2-Clause"
vendor = "Ribose Inc."
url = "https://github.com/engyon/enprot"

[[package.metadata.generate-rpm.assets]]
source = "target/release/enprot"
dest = "/usr/bin/enprot"
mode = "755"

[[package.metadata.generate-rpm.assets]]
source = "target/release/enprot.1"
dest = "/usr/share/man/man1/enprot.1"
mode = "644"

[[package.metadata.generate-rpm.assets]]
source = "target/release/completions/enprot.bash"
dest = "/usr/share/bash-completion/completions/enprot"
mode = "644"

[[package.metadata.generate-rpm.assets]]
source = "target/release/completions/_enprot"
dest = "/usr/share/zsh/site-functions/_enprot"
mode = "644"

[[package.metadata.generate-rpm.assets]]
source = "target/release/completions/enprot.fish"
dest = "/usr/share/fish/vendor_completions.d/enprot.fish"
mode = "644"

[package.metadata.generate-rpm.requires]
botan = "*"
librnp = "*"

[features]
cli = [
    "dep:clap",
    "dep:clap_complete",
]
default = ["cli"]
sigstore = []
vendored-rnp = ["rnp-rs/vendored"]
wasm = []

[lib]
name = "enprot"
crate-type = ["rlib"]
path = "src/lib.rs"

[[bin]]
name = "enprot"
path = "src/main.rs"
required-features = ["cli"]

[[bin]]
name = "enprot-lsp"
path = "src/bin/enprot-lsp/main.rs"

[[example]]
name = "basic_encrypt_decrypt"
path = "examples/basic_encrypt_decrypt.rs"

[[example]]
name = "gen-manpage"
path = "examples/gen-manpage.rs"

[[example]]
name = "keygen_sign_verify"
path = "examples/keygen_sign_verify.rs"

[[example]]
name = "merkle_proof"
path = "examples/merkle_proof.rs"

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

[[test]]
name = "rsd-conformance"
path = "tests/rsd-conformance/conformance.rs"

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

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

[[bench]]
name = "comparison"
path = "benches/comparison.rs"
harness = false

[[bench]]
name = "crypto"
path = "benches/crypto.rs"
harness = false

[[bench]]
name = "merkle"
path = "benches/merkle.rs"
harness = false

[[bench]]
name = "parser"
path = "benches/parser.rs"
harness = false

[dependencies.aes-gcm-siv]
version = "0.11"

[dependencies.clap]
version = "4.5"
features = [
    "derive",
    "wrap_help",
]
optional = true

[dependencies.clap_complete]
version = "4"
optional = true

[dependencies.hex]
version = "0.4"

[dependencies.phf]
version = "0.14"
features = ["macros"]

[dependencies.regex]
version = "1"

[dependencies.rnp-rs]
version = "0.1.10"

[dependencies.rpassword]
version = "7"

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

[dependencies.serde_json]
version = "1"

[dependencies.thiserror]
version = "2"

[dependencies.toml]
version = "1.1"

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]

[dependencies.url]
version = "2"

[dependencies.zeroize]
version = "1"
features = ["alloc"]

[dev-dependencies.assert_cmd]
version = "2"

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

[dev-dependencies.cpu-time]
version = "1.0"

[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]

[dev-dependencies.predicates]
version = "3"

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

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

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

[target."cfg(not(windows))".dependencies.botan]
version = "0.11"
features = [
    "botan3",
    "pkg-config",
]

[target."cfg(windows)".dependencies.botan]
version = "0.11"
features = [
    "botan3",
    "static",
]
default-features = false

[profile.release]
opt-level = 3
lto = true
codegen-units = 1
debug = "line-tables-only"
panic = "abort"
strip = true

[profile.release.package."*"]
debug = "line-tables-only"