[package]
edition = "2024"
rust-version = "1.85.1"
name = "cgx-core"
version = "0.0.13"
authors = ["Adam Nelson <anelson@apocryph.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core library for cgx, the Rust equivalent of uvx or npx for running Rust crates quickly and easily"
homepage = "https://github.com/anelson/cgx"
readme = "README.md"
categories = [
"command-line-utilities",
"development-tools",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/anelson/cgx"
[package.metadata.cargo-machete]
ignored = [
"humantime-serde",
"openssl-sys",
"curl",
]
[lib]
name = "cgx_core"
path = "src/lib.rs"
[dependencies.backon]
version = "1.6"
features = ["std-blocking-sleep"]
default-features = false
[dependencies.build-context]
version = "0.1.4"
[dependencies.bytes]
version = "1"
[dependencies.bzip2]
version = "0.6.1"
[dependencies.cargo_metadata]
version = "0.20.0"
[dependencies.chrono]
version = "0.4.44"
features = ["serde"]
[dependencies.clap]
version = "4.6.1"
features = [
"derive",
"env",
"string",
"unicode",
]
[dependencies.etcetera]
version = "0.10.0"
[dependencies.figment]
version = "0.10.19"
features = [
"toml",
"env",
]
[dependencies.flate2]
version = "1.1.9"
[dependencies.gix]
version = "0.84"
features = [
"blocking-http-transport-curl-openssl",
"max-performance-safe",
"worktree-mutation",
]
[dependencies.home]
version = "0.5.11"
[dependencies.humantime]
version = "2.1"
[dependencies.humantime-serde]
version = "1.1.1"
[dependencies.ignore]
version = "0.4.25"
[dependencies.reqwest]
version = "0.13"
features = [
"blocking",
"rustls",
"http2",
"charset",
"gzip",
"system-proxy",
"socks",
]
default-features = false
[dependencies.semver]
version = "1.0.28"
features = ["serde"]
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde-cyclonedx]
version = "0.10.0"
[dependencies.serde_json]
version = "1.0.150"
[dependencies.sha2]
version = "0.11.0"
[dependencies.shellexpand]
version = "3.1.2"
[dependencies.snafu]
version = "0.9.1"
[dependencies.strum]
version = "0.28.0"
features = ["derive"]
[dependencies.tame-index]
version = "=0.26.2"
features = ["sparse"]
[dependencies.tar]
version = "0.4.46"
[dependencies.tempfile]
version = "3.26.0"
[dependencies.toml]
version = "1.1.2"
[dependencies.tracing]
version = "0.1.41"
[dependencies.url]
version = "2.5.8"
features = ["serde"]
[dependencies.uuid]
version = "1.23.2"
features = ["v4"]
[dependencies.which]
version = "8.0.2"
[dependencies.xz2]
version = "0.1.7"
[dependencies.zip]
version = "7.2.0"
[dependencies.zstd]
version = "0.13.3"
[dev-dependencies.assert-json-diff]
version = "2.0.2"
[dev-dependencies.assert_matches]
version = "1.5.0"
[dev-dependencies.httpmock]
version = "0.8.2"
[dev-dependencies.insta]
version = "1.47.2"
features = ["filters"]
[dev-dependencies.rand]
version = "0.10.1"
[dev-dependencies.sealed_test]
version = "1.1.0"
[dev-dependencies.tracing-subscriber]
version = "0.3.22"
features = ["env-filter"]
[target.'cfg(target_env = "musl")'.dependencies.curl]
version = "0.4"
features = [
"static-curl",
"static-ssl",
]
[target.'cfg(target_env = "musl")'.dependencies.openssl-sys]
version = "0.9"
features = ["vendored"]
[target."cfg(windows)".dependencies.ctrlc]
version = "3.5"
[lints.clippy]
allow_attributes = "warn"
allow_attributes_without_reason = "warn"
assertions_on_result_states = "warn"
await_holding_lock = "warn"
await_holding_refcell_ref = "warn"
cast_sign_loss = "warn"
char_lit_as_u8 = "warn"
checked_conversions = "warn"
dbg_macro = "warn"
debug_assert_with_mut_call = "warn"
doc_markdown = "warn"
empty_enum = "warn"
enum_glob_use = "deny"
exit = "warn"
expl_impl_clone_on_copy = "warn"
explicit_deref_methods = "warn"
explicit_into_iter_loop = "warn"
fallible_impl_from = "warn"
filter_map_next = "warn"
flat_map_option = "warn"
float_cmp = "warn"
float_cmp_const = "warn"
fn_params_excessive_bools = "warn"
from_iter_instead_of_collect = "warn"
if_let_mutex = "warn"
implicit_clone = "warn"
imprecise_flops = "warn"
inefficient_to_string = "warn"
invalid_upcast_comparisons = "warn"
iter_not_returning_iterator = "warn"
large_digit_groups = "warn"
large_futures = "warn"
large_stack_arrays = "warn"
large_types_passed_by_value = "warn"
let_underscore_future = "warn"
let_unit_value = "warn"
linkedlist = "warn"
lossy_float_literal = "warn"
macro_use_imports = "warn"
manual_ok_or = "warn"
map_err_ignore = "warn"
map_flatten = "warn"
map_unwrap_or = "warn"
match_on_vec_items = "warn"
match_same_arms = "warn"
match_wild_err_arm = "warn"
match_wildcard_for_single_variants = "warn"
mem_forget = "warn"
missing_enforced_import_renames = "warn"
multiple_unsafe_ops_per_block = "warn"
mut_mut = "warn"
mutex_integer = "warn"
needless_borrow = "warn"
needless_continue = "warn"
needless_for_each = "warn"
option_option = "warn"
path_buf_push_overwrite = "warn"
ptr_as_ptr = "warn"
rc_mutex = "warn"
ref_option_ref = "warn"
rest_pat_in_fully_bound_structs = "warn"
same_functions_in_if_condition = "warn"
semicolon_if_nothing_returned = "warn"
single_match_else = "warn"
string_add = "warn"
string_add_assign = "warn"
string_lit_as_bytes = "warn"
string_slice = "warn"
string_to_string = "warn"
todo = "warn"
trait_duplication_in_bounds = "warn"
undocumented_unsafe_blocks = "warn"
unimplemented = "warn"
unnecessary_safety_comment = "warn"
unnecessary_safety_doc = "warn"
unnested_or_patterns = "warn"
unused_result_ok = "warn"
unused_self = "warn"
unwrap_used = "warn"
useless_transmute = "warn"
verbose_file_reads = "warn"
zero_sized_map_values = "warn"
[lints.rust]
unexpected_cfgs = "warn"
unnameable_types = "warn"
unreachable_pub = "warn"
unsafe_code = "forbid"
unsafe_op_in_unsafe_fn = "warn"
unused_lifetimes = "warn"
unused_macro_rules = "warn"
unused_qualifications = "warn"
[lints.rust.future_incompatible]
level = "warn"
priority = -1
[lints.rust.nonstandard_style]
level = "warn"
priority = -1
[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1