[package]
name = "provenant-cli"
version = "0.0.9"
edition = "2024"
repository = "https://github.com/mstykow/provenant"
homepage = "https://github.com/mstykow/provenant"
description = "Provenant is a high-performance Rust scanner for licenses, packages, and source provenance."
license = "Apache-2.0"
keywords = ["provenance", "license", "analysis", "rust"]
categories = ["command-line-utilities", "development-tools"]
readme = "README.md"
authors = ["Maxim Stykow", "Adrian Braemer"]
include = [
"src/**/*",
"!src/**/*_test.rs",
"!src/**/test.rs",
"!src/**/tests.rs",
"!src/**/*_tests.rs",
"!src/**/*test_utils.rs",
"!src/**/test_fixtures.rs",
"/resources/license_detection/license_index.zst",
"/Cargo.toml",
"/Cargo.lock",
"/README.md",
"/LICENSE",
"/NOTICE",
]
[package.metadata.cargo-machete]
ignored = ["md-5", "kamadak-exif"]
[package.metadata.release]
sign-tag = true
push = true
pre-release-commit-message = "chore: release v{{version}}"
pre-release-hook = ["cargo", "generate-lockfile"]
tag-message = "Release v{{version}}"
publish = true
[workspace]
resolver = "3"
members = ["xtask"]
[workspace.dependencies]
anyhow = "1.0.102"
clap = { version = "4.6.0", features = ["derive"] }
inventory = "0.3.22"
lazy_static = "1.5.0"
rayon = "1.11.0"
regex = "1.12.3"
rmp-serde = "1.3.1"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = { version = "1.0.149", features = ["preserve_order"] }
tempfile = "3.27.0"
url = "2.5.8"
zstd = "0.13.3"
[dependencies]
anyhow = { workspace = true }
bzip2 = "0.6.1"
flate2 = "1.1.9"
lazy_static = { workspace = true }
liblzma = "0.4.6"
log = "0.4.29"
regex = { workspace = true }
unicode-normalization = "0.1.25"
base64 = "0.22.1"
chrono = "0.4.44"
clap = { workspace = true }
content_inspector = "0.2.4"
file-format = { version = "0.29.0", features = ["reader", "reader-txt", "reader-xml", "reader-zip"] }
zstd = { workspace = true }
derive_builder = "0.20.2"
glob = "0.3.3"
image = { version = "0.25.10", default-features = false, features = ["jpeg", "png", "tiff", "webp"] }
include_dir = "0.7.4"
indicatif = "0.18.4"
indicatif-log-bridge = "0.2.3"
json5 = "1.3.1"
kamadak-exif = "0.6.1"
md-5 = "0.11.0"
mime_guess = "2.0.5"
object = { version = "0.39.0", default-features = false, features = ["read_core", "elf", "macho", "pe"] }
packageurl = "0.6.0"
pep508_rs = "0.9.2"
pdf_oxide = "0.3.17"
rayon = { workspace = true }
rustc_version_runtime = "0.3.0"
serde = { workspace = true }
serde_json = { workspace = true }
sha1 = "0.11.0"
hex = "0.4.3"
csv = "1.4.0"
inventory = { workspace = true }
sha2 = "0.11.0"
tar = "0.4.45"
tempfile = { workspace = true }
toml = "1.0.6"
url = { workspace = true }
urlencoding = "2.1.3"
xml-rs = "1.0.0"
quick-xml = "0.39.2"
zip = "8.4.0"
uuid = { version = "1.23.0", features = ["v4"] }
blake3 = "1.8.4"
once_cell = "1.21.4"
deunicode = "1.6.2"
tera = { version = "1.20.1", default-features = false }
file-identify = "0.2.0"
env_logger = "0.11.10"
ar = "0.9"
rpm = { version = "0.19.0", default-features = false, features = ["gzip-compression", "xz-compression", "zstd-compression", "bzip2-compression"] }
strum = { version = "0.28.0", features = ["derive"] }
rmp-serde = { workspace = true }
bit-set = "0.9.1"
daachorse = "1.0.0"
smallvec = { version = "1.15.1", features = ["write"] }
yaml_serde = "0.10.4"
os_info = "3.14.0"
starlark_syntax = "0.13.0"
ruff_python_ast = { version = "0.15.8", package = "rustpython-ruff_python_ast" }
ruff_python_parser = { version = "0.15.8", package = "rustpython-ruff_python_parser" }
[dev-dependencies]
[profile.release]
lto = true
codegen-units = 1
opt-level = 3
strip = true
[profile.profiling]
inherits = "release"
strip = false
debug = true
[lib]
name = "provenant"
path = "src/lib.rs"
[[bin]]
name = "provenant"
path = "src/main.rs"
[features]
default = ["spdx"]
golden-tests = []
gzip = []
spdx = []