mirror of
https://github.com/cargo-bins/cargo-binstall.git
synced 2025-04-22 05:28:42 +00:00

* Optimization: Rm `debug!` in `find_version` printing all version iterated obviously doesn't help much in debugging in the problem but rather just confusing. Also this makes it hard for the compiler to optimize the iterators. * Use let-else in `ManifestVisitor` * Optimize `BinFile::preview_{bin, link}` for zero-copy Return `impl Display` that lazily format instead of allocating a `String` * Optimize `infer_bin_dir_template`: Generate dir lazily * Optimize `find_version`: Lazily clone `version_req` only on err * Refactor `find_version`: Use `bool::then_some` * Add dep either v1.8.0 to binstalk * Optimize `GhCrateMeta::find`: Avoid cloning and `Vec` creation by using `Either` * Optimize `ops::install::install_from_package`: Make it a regular fn instead of async fn since it does not `.await` on any async fn. * Optimize `QuickInstall`: Rm field `target` since `Arc<Data>` already contains that field. * Optimize `Fetcher`s: Extract new struct `TargetData` so that `Data` can be shared by all fetchers, regardless of the target. * Optimize `QuickInstall`: Rm unused field `data` * Optimize `Resolution::print`: Replace branching with conditional move Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
51 lines
1.7 KiB
TOML
51 lines
1.7 KiB
TOML
[package]
|
|
name = "binstalk"
|
|
description = "The binstall toolkit (library interface)"
|
|
repository = "https://github.com/cargo-bins/cargo-binstall"
|
|
documentation = "https://docs.rs/binstalk"
|
|
version = "0.4.1"
|
|
rust-version = "1.61.0"
|
|
authors = ["ryan <ryan@kurte.nz>"]
|
|
edition = "2021"
|
|
license = "GPL-3.0"
|
|
|
|
[dependencies]
|
|
async-trait = "0.1.58"
|
|
binstalk-downloader = { version = "0.1.0", path = "../binstalk-downloader" }
|
|
binstalk-types = { version = "0.1.0", path = "../binstalk-types" }
|
|
cargo_toml = "0.13.0"
|
|
compact_str = { version = "0.6.0", features = ["serde"] }
|
|
crates_io_api = { version = "0.8.1", default-features = false }
|
|
detect-targets = { version = "0.1.2", path = "../detect-targets" }
|
|
either = "1.8.0"
|
|
futures-util = { version = "0.3.25", default-features = false, features = ["std"] }
|
|
home = "0.5.4"
|
|
itertools = "0.10.5"
|
|
jobslot = { version = "0.2.6", features = ["tokio"] }
|
|
miette = "5.4.1"
|
|
normalize-path = { version = "0.2.0", path = "../normalize-path" }
|
|
once_cell = "1.16.0"
|
|
semver = { version = "1.0.14", features = ["serde"] }
|
|
serde = { version = "1.0.147", features = ["derive"] }
|
|
strum = "0.24.1"
|
|
tempfile = "3.3.0"
|
|
thiserror = "1.0.37"
|
|
tinytemplate = "1.2.1"
|
|
# parking_lot for `tokio::sync::OnceCell::const_new`
|
|
tokio = { version = "1.21.2", features = ["rt", "process", "sync", "signal", "parking_lot"], default-features = false }
|
|
tracing = "0.1.37"
|
|
url = { version = "2.3.1", features = ["serde"] }
|
|
xz2 = "0.1.7"
|
|
|
|
[features]
|
|
default = ["static", "rustls"]
|
|
|
|
static = ["binstalk-downloader/static"]
|
|
pkg-config = ["binstalk-downloader/pkg-config"]
|
|
|
|
zlib-ng = ["binstalk-downloader/zlib-ng"]
|
|
|
|
rustls = ["crates_io_api/rustls", "binstalk-downloader/rustls"]
|
|
native-tls = ["binstalk-downloader/native-tls"]
|
|
|
|
trust-dns = ["binstalk-downloader/trust-dns"]
|