[package]
name = "protofetch"
version = "0.1.21"
edition = "2021"
rust-version = "1.75"
license = "Apache-2.0"
description = "A source dependency management tool for Protobuf."
homepage = "https://github.com/coralogix/protofetch"
repository = "https://github.com/coralogix/protofetch"
readme = "README.md"
keywords = ["proto", "cli", "protobuf", "dependency-manager", "grpc"]
categories = ["command-line-utilities"]
exclude = [".github", ".gitignore"]
[[bin]]
name = "protofetch"
required-features = ["build-binary"]
[[test]]
name = "e2e"
required-features = ["git-file-protocol"]
[features]
default = ["build-binary", "git-backend-cli"]
build-binary = ["dep:clap", "dep:env_logger"]
git-backend-cli = []
vendored-openssl = ["git2/vendored-openssl"]
vendored-libgit2 = ["git2/vendored-libgit2"]
git-file-protocol = []
[dependencies]
anyhow = "1.0.98"
clap = { version = "4.5.36", features = ["derive"], optional = true }
env_logger = { version = "0.11.8", default-features = false, features = [
"auto-color",
], optional = true }
fs4 = "0.13.1"
git2 = { version = ">=0.18.0, <0.22.0", features = ["ssh", "https"] }
home = "0.5.9"
log = "0.4.27"
rayon = "1.10.0"
regex-lite = "0.1.6"
serde = { version = "1.0.219", features = ["derive"] }
ssh-key = "0.6.7"
thiserror = "2.0.12"
toml = { version = "0.9.6", features = ["preserve_order"] }
[dev-dependencies]
insta = "1.47.2"
pretty_assertions = "1.4.1"
project-root = "0.2.2"
tempfile = "3.10"
[profile.release]
strip = true
[profile.dev.package.insta]
opt-level = 3
[profile.dev.package.similar]
opt-level = 3