Releases: cargo-bins/cargo-binstall
v1.4.0
This release has been yanked.
v1.3.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:
v1.3.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:
Features
- Use crates.io sparse index by default for efficiency (#1295 #1310 #1314)
- Handle Ctrl+C and cancellation via signal during git cloning (#1288)
BugFixes
v1.2.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
.
Bugfixes
- Fix fallback to
x86_64h-apple-darwin
onaarch64-apple-darwin
: Now it only fallbacks ifarch -arch x86_64h /usr/bin/true
success since Rosetta 2 doesn't support AVX yet (#1277 #1278) - Fix our
universal-apple-darwin
pre-built listed below for pre-haswell Intel CPUs (#1277 #1279) - Fix our installation script and the action on MacOS: Since it users our universal binary by default and the GHA MacOS runner uses pre-haswell Intel CPU, it will fail due to bad cpu type (#1277 #1279)
v1.2.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
.
[Reddit] [Bluesky] [Twitter] [Masto]
In this release:
-
We now verify checksum integrity of the crate metadata downloaded from registries (#1183, #1260)
-
Pre-built binaries below now support HTTP/3. When building from source, you can use the
http3
feature and the--cfg reqwest_unstable
rustflag to opt-in to HTTP/3 support as well. (#1261) -
We've added out-of-the-box support for more variants of monorepos (#1244, #1245)
-
We now support passing a workspace to
--manifest-path
(#1246)Previously we would load the root
Cargo.toml
and treat it as the manifest for the crate, which did not work as expected for workspaces. -
We now provide
x86_64h-apple-darwin
(Intel Haswell architecture tuning) pre-built binaries, for higher performance on macOS! Universal builds are also improved. (#1228, #1234, #1238) -
And of course we support installing binaries for the
x86_64h-apple-darwin
target. (#1233) -
Finally, we have a new, minimal GitHub Action:
- uses: cargo-bins/cargo-binstall@main
will install the latestcargo-binstall
and do nothing else. (#1269, contributed by @smallstepman)
Bugfixes:
- We've fixed issues that resulted in your terminals getting flooded with too many 429 responses. (#1229, #1231, with thanks to @CAD97, @halostatue, and @0atman)
- We are now case-insensitive when reading the
CARGO_REGISTRIES_{registry_name}_INDEX
environment variables (#1258) - The installation scripts had a few bugs:
Thank you!
If you've made it this far, thank you! If you care about package signing, or have opinions on it, especially but not exclusively in the Rust context, please visit #1 and tell us all about it!
install-cargo-binstall-1.0.0
Install cargo-binstall
by adding the following line to your CI:
- uses: cargo-bins/cargo-binstall@main
v1.1.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
.
Bugfix
v1.1.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:
v1.1.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
.
Features
-
feat: Support
--verbose --version
/-vV
(#627 #1182)
that provides more information:cargo-binstall: 1.0.0 build-date: 2023-07-18 build-target: aarch64-apple-darwin build-features: default,fancy_no_backtrace,git,rustls,static,trust_dns,zstd_thin build-commit-hash: 39d8cfc07f2253080ce997e620406c2994dced25 build-commit-date: 2023-07-18 rustc-version: 1.71.0 rustc-commit-hash: 8ede3aae28fe6e4d52b38157d7bfe0d3bceef225 rustc-llvm-version: 16.0
-
feat: Read
--rate-limit
from envBINSTALL_RATE_LIMIT
as a fallback (#1196 #1201) -
Support
--registry
and more options from.cargo/config.toml
(#885 #1195)
Now we can take advantage of new argument--registry
and
env overrides:CARGO_REGISTRIES_DEFAULT
if--registry
is not specifiedCARGO_REGISTRIES_{registry_name}_INDEX
for the registry index url
We can also read from
.cargo/config.toml
for:- default registry and registries configurations
- additional CA bundle
http.cainfo
Optimization
-
Use
reflink_copy
to speedup binary installation if atomic rename failed -
speedup git shallow cloning: Enable
gix/max-performance
(#1186)
for targets:- x86_64-apple-darwin
- aarch64-apple-darwin
- x86_64-unknown-linux-gnu
- x86_64-unknown-linux-musl
which will use
zlib-ng
to speedup decompression and use assembly
version for sha1 checksum calculation on supported CPU.Also enable feature
zlib-ng
on windows and- aarch64-unknown-linux-gnu
- aarch64-unknown-linux-musl
-
Speedup prebuilt binary (#1188)
This commit speeds it up by building all dependencies with
-O3
in dev
and release build, in release build we build everything with-O3
.
Bugfix
v1.0.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
.
We're very happy to announce this 1.0 release! 🎉
[Reddit] [Bluesky] [Twitter] [Masto]
In this release:
- Support install directly from git repository using
--git
(#3 #1162) - Add new option
--no-track
to not update manifests when installing (#1111) - Add fallback targets to windows (#642 #650)
- We attempt to detect if some targets other than the native/host one are runnable on your system and make those eligible for being downloaded if matching builds are available (and builds for the host target are not).
- The fallback logic is a bit convoluted to explain in one sentence, but essentially: x86 builds on x64 hosts, ARM32 builds on (some) ARM64 hosts, x86/x64 builds on (some) ARM64 hosts.
- Show license and source in long help (#1149)
- A reminder that Binstall and the binstalk library are GPL!
Other changes:
GhApiClient
: Fallback to unauthorized mode if auth token is invalid (#850 #1121)- Use GraphQL API if GitHub token is provided (#868 #1124)
- Add more variables for you to use in templates (#775 #1160):
target-family
(e.g.windows
,linux
)target-arch
(e.g.x86_64
,aarch64
)target-libc
(e.g.gnu
,musl
)target-vendor
(e.g.apple
,unknown
)