Skip to content

Releases: cargo-bins/cargo-binstall

v0.19.1

12 Jan 06:27
850ad63
Compare
Choose a tag to compare

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:

  • Fix: falling back to cargo-install when installing only one crate caused a deadlock (#694, #697)

Other changes:

  • MacOS split debuginfo now included in full package (#659, #696)

v0.19.0

12 Jan 02:01
ea28e5e
Compare
Choose a tag to compare

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:
    • Avoid invalid target triples from some configurations of rustc (#637)
    • Linux: use runtime detection of architecture and libc variant when rustc isn't present (#649)
    • Android: allow fallback to musl libc targets (#649)

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

14 Dec 00:52
628fd33
Compare
Choose a tag to compare

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

12 Dec 14:13
09bc8e7
Compare
Choose a tag to compare

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

22 Nov 14:29
7544fde
Compare
Choose a tag to compare

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/and cargo-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

18 Oct 06:55
b9f486d
Compare
Choose a tag to compare

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 be kill_on_drop so that cargo-binstall would terminate any running cargo-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:

  • docs: update unsupported crates guide (#467, #468)
  • Bump serde_json from 1.0.85 to 1.0.86 (#475)
  • Bump clap from 4.0.10 to 4.0.16 (#474, #476, #477, #482, #483, #489)
  • Bump home from 0.5.3 to 0.5.4 (#478)
  • Bump mimalloc from 0.1.29 to 0.1.30 (#484)
  • Bump cargo_toml from 0.12.4 to 0.13.0 (#486)

v0.15.1

08 Oct 08:07
5e04a22
Compare
Choose a tag to compare

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

28 Sep 06:54
af3316a
Compare
Choose a tag to compare

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 like sccache can be installed via cargo-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 PkgOverrides into PkgMeta (#429)
  • Optimize bins::BinFile (#422)
  • Check source_file_path to ensure it is valid to provide better error messages and prevent rendered bin-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)

Other changes:

  • Bump thiserror from 1.0.35 to 1.0.37 (#426, #437)
  • Bump tokio from 1.21.1 to 1.21.2 (#436)
  • Bump digest from 0.10.3 to 0.10.5 (#431)
  • Bump env_logger from 0.9.0 to 0.9.1 (#428)
  • Bump semver from 1.0.13 to 1.0.14 (#427)
  • Bump cargo_toml from 0.12.1 to 0.12.2 (#425)
  • Bump url from 2.3.0 to 2.3.1 (#424

v0.13.3

25 Sep 03:31
c27c3b8
Compare
Choose a tag to compare

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 (from yanked v0.13.2):

v0.13.2

24 Sep 02:32
c86cba3
Compare
Choose a tag to compare
v0.13.2 Pre-release
Pre-release

This version is yanked due to #416

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:

  • Bump dep cargo_toml to v0.12.0 for bug fix (#413, #387, #412)

Other changes: