Jiahao XU
0c5a65fb35
Refactor: Extract new crate binstalk-bins
( #1294 )
...
To reduce `binstalk` codegen and enable reuse of it.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-15 21:48:42 +00:00
Jiahao XU
76c72469eb
Refactor: Extract new crate binstalk-fetchers
( #1291 )
...
To reduce `binstalk` codegen and enable better reuse.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-14 03:20:34 +00:00
Jiahao XU
623f7ff4ed
Refactor: Extract new crate binstalk-registry
( #1289 )
...
To speedup codegen of `binstalk` and enable it to be reused.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-13 07:16:53 +00:00
Jiahao XU
6c801a97ae
Fix panic in atomic-file-install
( #1290 )
...
Do not panic if path does not have a parent, instead return an error.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-13 07:14:46 +00:00
Jiahao XU
2375ba48b6
Refactor to reduce compilation time ( #1284 )
...
- Make `binstalk::bins` private.
- Move mod `signal` into `crates/bin`
- Make items in `crates/bin/src/lib.rs` private if possible to reduce
its API generation time.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-12 14:25:41 +00:00
Jiahao XU
fbed317df5
feat: git::Repository
cancellation support ( #1288 )
...
feat: `git::Repository` support cancellation.
To make sure users can cancel git operation via signal, e.g. when the
git operation fail or users no longer want to install.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-12 14:18:02 +00:00
Jiahao XU
ef99dd795f
Refactor: Extract mod fs
as crate atomic-file-install
( #1286 )
...
Refactor: Extract mod `fs` as crate `atomic-install`
To speedup codegen of `binstalk` and also publish a new crate that could
be reused.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-12 13:24:26 +00:00
Jiahao XU
8ff13c1b36
Refactor: Extract cargo_toml_workspace
as a new crate ( #1287 )
...
To reduce codegen time of `binstalk` and also enable others to reuse
this crate.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-12 12:05:10 +00:00
Jiahao XU
c57356e870
Refactor: Move mod git
into binstalk-downloader
( #1285 )
...
To speedup codegen time for `binstalk`, also fixed the docs.rs build for
`binstalk-downloader`.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-12 07:20:26 +00:00
github-actions[bot]
6a1d317fde
release: cargo-binstall v1.2.1 ( #1282 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-08-11 06:44:15 +00:00
github-actions[bot]
9e901c6b84
release: detect-targets v0.1.10 ( #1280 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-08-11 02:22:13 +00:00
Jiahao XU
a84844938d
Fix aarch64-apple-darwin
fallback to x86_64h
( #1278 )
...
Run `arch -arch x86_64h /usr/bin/true` to decides whether fallback
is feasible.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-11 01:02:03 +00:00
github-actions[bot]
ea1a34b4a1
release: cargo-binstall v1.2.0 ( #1275 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-08-10 11:33:39 +00:00
github-actions[bot]
cf3e3c25b0
release: binstalk v0.15.0 ( #1274 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-08-10 07:54:29 +00:00
Jiahao XU
cf2a8a5287
dep: Bump tokio to v1.30.0 & disable feat parking_lot
( #1273 )
...
In tokio v1.30.0, MSRV is bumped to rust 1.63 and all `const_new`
methods in `tokio::sync` are now always available, so there is no need
to enable feat `parking_lot`.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-10 07:17:40 +00:00
github-actions[bot]
070537076d
release: binstalk-downloader v0.7.0 ( #1272 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-08-09 21:00:48 +00:00
github-actions[bot]
000c87bcee
release: detect-targets v0.1.9 ( #1268 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-08-09 11:02:53 +00:00
Jiahao XU
3e80b12748
feat: Verify cksum of crate tarball from cargo registry ( #1260 )
...
Fixed #1183
Since the crate tarball could be downloaded from a different set of
servers than where the cargo registry is hosted, verifying the checksum
is necessary to verify its integrity.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-09 10:57:47 +00:00
Jiahao XU
7f1ddd1dd7
Reduce public interface of binstalk
( #1265 )
...
To reduce amount of breaking changes.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-09 07:46:12 +00:00
Jiahao XU
9c521d162a
Enable unstable feature reqwest/http3
in CI ( #1261 )
...
For dev and release build, so that pre-built binaries of
`cargo-binstall` can utilize http3 protocol.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-09 07:44:10 +00:00
Jiahao XU
a9e2ef11f1
Fix reading env CARGO_REGISTRIES_{registry_name}_INDEX
( #1258 )
...
Try bogth original and upper-case version.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-09 07:41:20 +00:00
Jiahao XU
ac012bdcb2
Remove dep futures-lite
from binstalk-downloader
( #1259 )
...
I planned to replace `futures-util` with `futures-lite`, but it turns
out that `reqwest` actually depends on `futures-util`, so there is no
point removing it and introduce yet another dependency.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-08 10:48:12 +00:00
Jiahao XU
435df675b3
Fix too many 429 response ( #1231 )
...
Fixed #1229
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-08 00:53:15 +00:00
Jiahao XU
e4c776f403
feat: Support data verification in Download
( #1248 )
...
By accepting `&mut dyn DataVerifier` for users to pass any callback that
uses `digest::Digest`/`digest::Mac`, `sigstore` or whatever they want.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-06 05:56:02 +00:00
Jiahao XU
812fb9b0af
Fix subcrate resolution for wasm-bindgen-cli
( #1245 )
...
Fixed #1244
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-03 21:14:36 +00:00
Jiahao XU
aeacebcf83
feat: Support passing workspace to --manifest-path
( #1246 )
...
Previously it will load the root `Cargo.toml` and treat it as the
manifest for the crate, now it will check its `package.name` and would
search for the workspace if the `package.name` does not match the crate
name.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-03 21:12:06 +00:00
dependabot[bot]
b4cf580e4f
build(deps): update gix requirement from 0.50.0 to 0.51.0 in /crates/binstalk ( #1242 )
...
build(deps): update gix requirement in /crates/binstalk
Updates the requirements on [gix](https://github.com/Byron/gitoxide ) to permit the latest version.
- [Release notes](https://github.com/Byron/gitoxide/releases )
- [Changelog](https://github.com/Byron/gitoxide/blob/main/CHANGELOG.md )
- [Commits](https://github.com/Byron/gitoxide/compare/gix-v0.50.0...gix-v0.51.0 )
---
updated-dependencies:
- dependency-name: gix
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-03 04:54:51 +00:00
Jiahao XU
3a831a34c6
Bump dep target-lexicon to v0.12.11 ( #1235 )
...
To support new target x86h-apple-darwin
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-08-01 02:34:41 +00:00
Jiahao XU
d5549ce99e
detect-targets: Add fallback to x86_64-apple-darwin ( #1233 )
...
Fallback to `x86_64h-apple-darwin` if supported.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-28 07:59:23 +00:00
dependabot[bot]
ec494261c6
build(deps): update gix requirement from 0.49.1 to 0.50.0 in /crates/binstalk ( #1230 )
...
build(deps): update gix requirement in /crates/binstalk
Updates the requirements on [gix](https://github.com/Byron/gitoxide ) to permit the latest version.
- [Release notes](https://github.com/Byron/gitoxide/releases )
- [Changelog](https://github.com/Byron/gitoxide/blob/main/CHANGELOG.md )
- [Commits](https://github.com/Byron/gitoxide/compare/gix-v0.49.1...gix-v0.50.0 )
---
updated-dependencies:
- dependency-name: gix
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-24 07:13:55 +00:00
Jiahao XU
1293314100
feature: Add fallback x86_64h-apple-darwin
and fallback for it ( #1228 )
...
Now `detect_targets` would fallback to `x86_64h-apple-darwin` on
`aarch64-apple-darwin`.
It also provides fallback to `x86_64h-apple-darwin` to
`x86_64-apple-darwin` and universal targets.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-23 04:28:59 +00:00
github-actions[bot]
38d37c69b2
release: cargo-binstall v1.1.2 ( #1227 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-21 10:14:47 +00:00
github-actions[bot]
992ac08dfc
release: binstalk v0.14.1 ( #1226 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-21 07:57:28 +00:00
Jiahao XU
306f761973
Fix failure to send quickinstall report ( #1224 )
...
Fixed #1222 by fetching lists of supported targets from quickinstall
repository.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-21 05:41:09 +00:00
dependabot[bot]
da1be0ab45
build(deps): update gix requirement from 0.48.0 to 0.49.1 in /crates/binstalk ( #1220 )
...
build(deps): update gix requirement in /crates/binstalk
Updates the requirements on [gix](https://github.com/Byron/gitoxide ) to permit the latest version.
- [Release notes](https://github.com/Byron/gitoxide/releases )
- [Changelog](https://github.com/Byron/gitoxide/blob/main/CHANGELOG.md )
- [Commits](https://github.com/Byron/gitoxide/compare/gix-v0.48.0...gix-v0.49.1 )
---
updated-dependencies:
- dependency-name: gix
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 02:25:47 +00:00
github-actions[bot]
3d6a93fe8e
release: cargo-binstall v1.1.1 ( #1219 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-19 05:07:52 +00:00
github-actions[bot]
494ff844e6
release: binstalk-manifests v0.8.0 ( #1218 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-19 03:46:01 +00:00
Jiahao XU
47f79a9660
Fix loading .cargo/config.toml
( #1217 )
...
Fixed #1216
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-19 02:15:57 +00:00
github-actions[bot]
07bc44e059
release: cargo-binstall v1.1.0 ( #1215 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-18 14:13:32 +00:00
github-actions[bot]
61fdf16d7e
release: binstalk v0.14.0 ( #1213 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-18 11:30:43 +00:00
github-actions[bot]
65d01f3199
release: binstalk-downloader v0.6.1 ( #1212 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-18 09:42:38 +00:00
github-actions[bot]
8fa5e51ca0
release: binstalk-manifests v0.7.0 ( #1211 )
...
chore: Release
Co-authored-by: github-actions <github-actions@github.com>
2023-07-18 09:36:12 +00:00
Jiahao XU
0c5b7f115d
feat: Support --verbose --version
/-vV
( #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
```
Fixed #627
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-18 05:22:41 +00:00
Sebastian Thiel
5acfda9379
avoid worktree checkouts ( #1207 )
...
* perform a bare git cloen to avoid worktree checkouts
This will be way faster on windows
* feat: use the git repository directly to obtain crate information
* Apply code review changes
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
* Impl `fmt::Display` for `helpers: :GitUrl`
and also refactor implementation of `git::Repository::{shallow_clone,
shallow_clone_bare}`.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
* Fix clippy lint warnings
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
* Fix typo
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
---------
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Co-authored-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-17 15:46:12 +00:00
dependabot[bot]
9af17de9c3
build(deps): update file-format requirement from 0.17.0 to 0.18.0 in /crates/bin ( #1205 )
...
build(deps): update file-format requirement in /crates/bin
Updates the requirements on [file-format](https://github.com/mmalecot/file-format ) to permit the latest version.
- [Release notes](https://github.com/mmalecot/file-format/releases )
- [Changelog](https://github.com/mmalecot/file-format/blob/main/CHANGELOG.md )
- [Commits](https://github.com/mmalecot/file-format/compare/v0.17.0...v0.18.0 )
---
updated-dependencies:
- dependency-name: file-format
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-17 14:51:46 +10:00
Jiahao XU
ad58573143
feat: Read --rate-limit
from env BINSTALL_RATE_LIMIT
as a fallback ( #1201 )
...
feat: Scrap `--rate-limit` from env `BINSTALL_RATE_LIMIT` as a fallback
and set `BINSTALL_RATE_LIMIT` to `100/1` on CI.
Fixed #1196
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-17 13:07:15 +10:00
Jiahao XU
963e9e97ad
Use reflink_copy::reflink_or_copy
in fs::atomic_install*
( #1197 )
...
to speedup copy operation `atomic_install*`.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-17 11:56:10 +10:00
Jiahao XU
d1fe5c7155
Fix clippy warning in binstalk_downloader
( #1204 )
...
Replace use of `PhantomData::default()` in `src/download.rs` with
`PhantomData` since it is a unit struct.
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-16 13:50:04 +10:00
Jiahao XU
65670224b8
Simplify args::parse
using clap::Arg::conflicts_with
( #1198 )
...
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-11 13:20:51 +00:00
Jiahao XU
9d4694219b
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
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-07-10 06:18:15 +00:00