Releases: cargo-bins/cargo-binstall
v0.19.3
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
These two bugs together do mean that on Windows you'll need to install manually from one of the binaries below or compile from source to upgrade! Sorry about that.
v0.19.2
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
- Fixed automatic target detection on Alpine where
rustc
returnsx86_64-alpine-linux-musl
(#704, #705)
Other changes:
- Optimizations in automatic target detection (#705)
v0.19.1
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
Other changes:
v0.19.0
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
- Quickinstall has moved to this (cargo-bins) organisation! (quickinstall#104, #638)
- Platform detection improvements:
Other changes:
- Fix: Avoid race condition when updating
$CARGO_HOME/.crates.toml
(#588, #645, #643) - Fix: Create
$CARGO_HOME/.crates.toml
if it doesn't exist instead of failing (#621, #622) - Fix: Make sure all
cargo
subprocesses are also terminated when cargo-binstall is interrupted (#619) - Fix: Print resolutions without interleaving (#619)
- Fix: Installing crates previously removed cargo-uninstall now works correctly (#625, #628)
- Various improvements to CI (#630, #660, #668, #675, #676)
- Various optimisations (#610, #619, #643, #644, #653, #655, #656, #667)
- The release artifacts now includes an additional "full" build that includes debuginfo in split format. Linux only, Windows&Mac coming soon. (#659, #660, #672)
v0.18.1
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
Other changes:
- Fix running prebuilt binaries on ubuntu 20.04, docker image
rust:1.65
or any environment that uses glibc 2.31 (#607)
v0.18.0
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
- Check for installed crates
$CARGO_HOME/.crates.toml
(#582) - Fix small issues in error handling and printing (#584, #585, #586)
- Remove a panic during confirmation prompt (#576)
- Bump to MSRV to 1.65.0 (#574)
Other changes:
- Rewrite download and archive extraction machinery (#579, #580, #587, #590, #591)
- Some optimisations around sizes of types (#573, #581, #589, #600)
- Use maximum compression for zip windows packages (#596)
Dependencies:
- Bump async-trait from 0.1.58 to 0.1.59 (#578)
- Bump clap from 4.0.26 to 4.0.29 (#571, #577)
- Bump embed-resource from 1.7.4 to 1.8.0 (#598)
- Bump flate2 from 1.0.24 to 1.0.25 (#570)
- Bump jobslot from 0.2.6 to 0.2.8 (#564)
- Bump miette from 5.4.1 to 5.5.0 (#565)
- Bump serde from 1.0.147 to 1.0.150 (#572, #592, #597)
- Bump tokio from 1.22.0 to 1.23.0 (#593)
- Bump zstd from 0.11.2+zstd.1.5.2 to 0.12.1+zstd.1.5.2 (#563, #595)
v0.17.0
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
- Add support of universal binary as fallback on MacOS (#552)
- Build universal MacOS binary on release for cargo-binstall (#551)
- Fix disabling cargo-install fallback (#541)
- Fix crate normalize-path which is used in cargo-binstall (#508)
- Add
-y
as alias for--no-confirm
(#536 #540) - Clarify on how to upgrade
cargo-binstall
and softwares installed by it (#514 #524) - Support default filename with underscores, which is the default format used by github action rust-build/rust-build (#495)
- Implement
--strategies
and--disable-strategies
for opting out of using third-party quick-install or/andcargo-install
(#136 #510 #545) - Use tracing-subscriber for logging and supports
--json-output
output (#520 #522 #525 #527 #528) - Enable dns-over-quic for trust-dns-resolver (enabled in the pre-built artifacts) (#538)
Internal changes
- Refactor: Extract new crate binstalk-types plus other misc refactor and optimization (#535)
- Refactor: Extract new crate binstalk-manifests (#511 #513 #523)
- Refactor: Extract new crate binstalk-downloader (#518)
- Optimizations (#530 #535, #541, #543, #544, #553)
Dependencies
- Enable feature thin of dep zstd for any target built natively (#480)
- Bump bytes from 1.2.1 to v1.3.0 (#554)
- Bump serde_json from 1.0.86 to 1.0.89 (#496 #547 #554)
- Bump compact_str from 0.6.0 to 0.6.1 (#554)
- Bump tokio from 1.21.2 to 1.22.0 (#548)
- Bump digest from 0.10.5 to 0.10.6 (#539)
- Bump reqwest from 0.11.12 to 0.11.13 and trust-dns-resolver from 0.21.2 to 0.22.0 (#538)
- Bump clap from 4.0.16 to 4.0.26 (#493 #498 #516 #529 #532 #534, #537)
- Bump mimalloc from 0.1.30 to 0.1.32 (#519, #533)
- Bump embed-resource from 1.7.3 to 1.7.4 (#517)
- Bump miette from 5.3.0 to 5.4.1 (#506)
- Bump once_cell from 1.15.0 to 1.16.0 (#505)
- Bump serde from 1.0.145 to 1.0.147 (#501)
- Bump toml_edit from 0.14.4 to 0.15.0 (#500)
- Bump futures-util from 0.3.24 to 0.3.25 (#497)
- Bump async-trait from 0.1.57 to 0.1.58 (#494)
- Update transitive dependencies (#549)
- Switch back from fork binstall-zip to zip since upstream has published a long-overdue new release (#512)
v0.16.0
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
- Impl retry for http status code 503 and 429 in response (#472, #473)
- Fix install_from_source: Set cmd
cargo-install
to bekill_on_drop
so thatcargo-binstall
would terminate any runningcargo-install
when it receives signal for cancellation (e.g.SIGINT
) (#479) - Make tarball/bin extraction process cancellable: It can now be cancelled by signal (e.g.
SIGINT
) (#481) - Fixed
cargo-binstall -V
: It now prints cargo-binstall version as expected (#485, #488)
Other changes:
v0.15.1
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
Substitutes v0.15.0 due to CI failure.
In this release:
- Disable
tcp_nodelay
and add rate limiting for HTTP requests. This makes installation more reliable, especially when installing many crates at once. (#457, #458) - Allow
--pkg-fmt
,--bin-dir
,--pkg-url
overrides when installing multiple crates. (#444, #454) - Use
CARGO
env variable if present. Cargo sets this for subcommands: it is useful when the cargo binary in use may not be in a standard location or in PATH. (#452, #453) - Don't try to fetch a package if the crate provides no binaries. This fixes a regression which appeared in 0.14.0. (#446)
Other changes:
v0.14.0
Binstall is a tool to fetch and install Rust-based executables as binaries. It aims to be a drop-in replacement for cargo install
in most cases. Install it today with cargo install cargo-binstall
, from the binaries below, or if you already have it, upgrade with cargo binstall cargo-binstall
.
In this release:
- Make binaries with
required-features
optional so that crates likesccache
can be installed viacargo-binstall
(#357, #438) - Improve auto discover so that crates like
miniserve
which seets pkg-fmt to bin can be auto discovered and installed out-of-the-box and fixed install crates with pkg-fmt set to "bin" (#406, #423, #433) --no-symlinks
now installs binary without version (#432)- Enable feat gzip, brotli and deflate decompression support for http/https to speedup download of crates with pkg-fmt set to "bin" on slow connections (#434)
- Optimize applying
PkgOverride
s intoPkgMeta
(#429) - Optimize
bins::BinFile
(#422) - Check
source_file_path
to ensure it is valid to provide better error messages and prevent renderedbin-dir
from accessing outside of the temporary directory containing the extracted binaries (#421) - Impl multiple default
bin-dirs
to make more binary crates works out-of-the-box (#417, #439, #441)