kingfisher/Cargo.toml

205 lines
5.1 KiB
TOML

[workspace.package]
edition = "2021"
rust-version = "1.83"
license = "Apache-2.0"
authors = ["Mick Grove <mick.grove@mongodb.com>"]
homepage = "https://github.com/mongodb/kingfisher"
repository = "https://github.com/mongodb/kingfisher"
publish = false
[package]
name = "kingfisher"
version = "1.15.0"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
homepage.workspace = true
repository.workspace = true
publish.workspace = true
[dependencies]
clap = { version = "4.3", features = [
"cargo",
"derive",
"env",
"unicode",
"wrap_help",
] }
anyhow = "1.0"
bstr = { version = "1.0", features = ["serde"] }
fixedbitset = "0.5"
gix = { version = "0.72", features = ["max-performance", "serde", "blocking-network-client"] }
ignore = "0.4"
petgraph = "0.6"
roaring = "0.10"
schemars = "0.8"
serde = { version = "1.0", features = ["derive", "rc"] }
smallvec = { version = "1", features = [
"const_generics",
"const_new",
"union",
] }
tracing = "0.1.41"
indicatif = { version = "0.17", features = ["improved_unicode"] }
rayon = "1.10"
sha1 = "0.10.6"
hex = "0.4.3"
vectorscan-rs = "0.0.5"
regex = "1.10.6"
serde_json = "1.0.128"
lazy_static = "1.5.0"
url = "2.5.2"
include_dir = { version = "0.7", features = ["glob"] }
strum = { version = "0.26", features = ["derive"] }
sysinfo = "0.31.2"
reqwest = { version = "0.12", default-features = false, features = [
"json",
"gzip",
"brotli",
"deflate",
"stream",
"rustls-tls",
"blocking",
"multipart",
"rustls-tls",
] }
chrono = "0.4.38"
thiserror = "1.0.63"
tokio = { version = "1.39.2", features = ["full"] }
base64 = "0.22.1"
crossbeam-channel = "0.5.13"
indenter = "0.3.3"
serde-sarif = "0.4"
console = "0.15.8"
time = "0.3.36"
tempfile = "3.12.0"
num_cpus = "1.16.0"
once_cell = "1.19.0"
http = "1.1.0"
liquid = "0.26.4"
liquid-core = "0.26.4"
flate2 = "1.0.33"
brotli = "6.0.0"
thousands = "0.2.0"
base32 = "0.5.1"
crossbeam-skiplist = "0.1.3"
tokio-postgres = { version = "0.7", default-features = false, features = ["runtime"] }
mongodb = { version = "3.2", default-features = false, features = ["rustls-tls", "aws-auth", "compat-3-0-0", "dns-resolver"] }
bson = "2.13.0"
ring = "0.17.8"
pem = "3.0.4"
aws-config = "1.5.10"
aws-credential-types = "1.2.1"
aws-sdk-sts = "1.21.0"
aws-types = "1.3.3"
byteorder = "1.5.0"
parking_lot = "0.12.3"
octorust = "0.9.0"
reqwest-middleware = "0.4.1"
tracing-subscriber = {version = "0.3.19", features = ["env-filter"] }
tracing-core = "0.1.33"
tree-sitter = "0.24.4"
tree-sitter-bash = "0.23.3"
tree-sitter-c = "0.23.2"
tree-sitter-c-sharp = "0.23.1"
tree-sitter-cpp = "0.23.4"
tree-sitter-css = "0.23.1"
tree-sitter-go = "0.23.4"
tree-sitter-html = "0.23.2"
tree-sitter-java = "0.23.4"
tree-sitter-javascript = "0.23.1"
tree-sitter-php = "0.23.11"
tree-sitter-python = "0.23.4"
tree-sitter-ruby = "0.23.1"
tree-sitter-rust = "0.23.2"
tree-sitter-toml-ng = "0.7.0"
tree-sitter-typescript = "0.23.2"
tree-sitter-yaml = "0.6.1"
streaming-iterator = "0.1.9"
tree-sitter-regex = "0.24.3"
content_inspector = "0.2.4"
rustc-hash = "2.1.0"
term_size = "0.3.2"
bzip2 = "0.5.0"
zip = "2.2.2"
tar = "0.4.43"
xz2 = "0.1.7"
asar = "0.3.0"
blake3 = "1.5.5"
memmap2 = "0.9.5"
futures = "0.3.31"
dashmap = "6.1.0"
xxhash-rust = { version = "0.8.15", features = ["xxh3", "const_xxh3"] }
serde_yaml = "0.9.34"
hmac = "0.12.1"
sha2 = "0.10.8"
strum_macros = "0.27.1"
humantime = "2.2.0"
path-dedot = "3.1.1"
quick-xml = {version = "0.37.5", features = ["serde","serialize"] }
rustls = "0.23.26"
tokio-postgres-rustls = "0.13.0"
rustls-native-certs = "0.8.1"
predicates = "3.1.3"
assert_cmd = "2.0.17"
proptest = "1.6.0"
color-backtrace = "0.7.0"
gitlab = "0.1711.0"
mimalloc = {version = "0.1.46", features = ["override"]}
thread_local = "1.1.8"
crc32fast = "1.4.2"
bloomfilter = "3.0.1"
uuid = "1.17.0"
urlencoding = "2.1.3"
rand = "0.9.1"
percent-encoding = "2.3.1"
trust-dns-resolver = { version = "0.23.2", default-features = false, features = ["tokio-runtime"] }
atty = "0.2.14"
self_update = { version = "0.42.0", default-features = false, features = ["rustls"] }
semver = "1.0.26"
[dependencies.tikv-jemallocator]
version = "0.6"
optional = true
[features]
default = ["use-mimalloc"]
use-mimalloc = ["mimalloc/override"]
use-jemalloc = ["tikv-jemallocator"]
system-alloc = [] # forces System allocator
[dev-dependencies]
pretty_assertions = "1.3"
temp-env = "0.3.6"
wiremock = "0.6.2"
git2 = "0.20.2"
rand_chacha = "0.9.0"
[profile.release]
debug = false
strip = "debuginfo"
opt-level = 3 # Maximum optimization for performance
lto = true # Enable Link Time Optimization
codegen-units = 1 # Optimize for size but slower compilation
# panic = "abort" # Remove unwind tables for panics
rpath = false # Don't embed path dependencies
incremental = false
[profile.dev]
opt-level = 0
debug = true
incremental = true
codegen-units = 256
[patch.crates-io]
vectorscan-rs = { path = "vendor/vectorscan-rs/vectorscan-rs" }
vectorscan-rs-sys = { path = "vendor/vectorscan-rs/vectorscan-rs-sys" }
[profile.profiling]
inherits = "release"
debug = true