Commit graph

591 commits

Author SHA1 Message Date
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
Jiahao XU
b05abd862e
dep: Upgrade transitive dependencies (#1281)
Co-authored-by: github-actions <github-actions@github.com>
2023-08-11 06:39:09 +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
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
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
github-actions[bot]
939c9b43b2
dep: Upgrade transitive dependencies (#1266)
Co-authored-by: github-actions <github-actions@github.com>
2023-08-09 05:07:46 +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
github-actions[bot]
87cfac4bdf
dep: Upgrade transitive dependencies (#1255)
Co-authored-by: github-actions <github-actions@github.com>
2023-08-08 02:33:17 +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
github-actions[bot]
c8d82fea0f
dep: Upgrade transitive dependencies (#1247)
Co-authored-by: github-actions <github-actions@github.com>
2023-08-04 04:11:27 +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
github-actions[bot]
b70cb9be64
dep: Upgrade transitive dependencies (#1237)
Co-authored-by: github-actions <github-actions@github.com>
2023-08-02 01:14:24 +00:00
github-actions[bot]
333c1805e1
dep: Upgrade transitive dependencies (#1232)
Co-authored-by: github-actions <github-actions@github.com>
2023-07-28 06:05:56 +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
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
github-actions[bot]
af9a574738
dep: Upgrade transitive dependencies (#1223)
Co-authored-by: github-actions <github-actions@github.com>
2023-07-21 04:12:46 +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
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
github-actions[bot]
c842defd57
dep: Upgrade transitive dependencies (#1210)
Co-authored-by: github-actions <github-actions@github.com>
2023-07-18 07:08:33 +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
github-actions[bot]
b08849b7ce
dep: Upgrade transitive dependencies (#1206)
Co-authored-by: github-actions <github-actions@github.com>
2023-07-17 09:22:25 +00:00
github-actions[bot]
ef4e6d7cbf
dep: Upgrade transitive dependencies (#1202)
Co-authored-by: github-actions <github-actions@github.com>
2023-07-17 17:02:13 +10: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
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
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
github-actions[bot]
f2f0cd2de6
dep: Upgrade transitive dependencies (#1191)
Co-authored-by: github-actions <github-actions@github.com>
2023-07-07 04:16:44 +00:00
Jiahao XU
01a87ac606
feat: Impl support for alternative registries (#1184)
Fixed #1168

Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2023-06-30 03:52:40 +00:00
github-actions[bot]
d4ffc68129
dep: Upgrade transitive dependencies (#1187)
Co-authored-by: github-actions <github-actions@github.com>
2023-06-30 03:52:19 +00:00
dependabot[bot]
59c0d5dea9
build(deps): update gix requirement from 0.47.0 to 0.48.0 in /crates/binstalk (#1185)
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.47.0...gix-v0.48.0)

---
updated-dependencies:
- dependency-name: gix
  dependency-type: direct:production
...

 - Also updated other dependencies to latest compatible version.

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-06-29 12:52:48 +00:00
github-actions[bot]
f231f93976
release: cargo-binstall v1.0.0 (#1179)
chore: Release

Co-authored-by: github-actions <github-actions@github.com>
2023-06-27 03:42:37 +00:00
github-actions[bot]
d2e4fef060
release: binstalk v0.13.0 (#1178)
chore: Release

Co-authored-by: github-actions <github-actions@github.com>
2023-06-27 01:52:53 +00:00
github-actions[bot]
583860fbc6
release: binstalk-downloader v0.6.0 (#1177)
chore: Release

Co-authored-by: github-actions <github-actions@github.com>
2023-06-26 14:17:53 +00:00
github-actions[bot]
beb826e6ae
release: binstalk-manifests v0.6.0 (#1176)
chore: Release

Co-authored-by: github-actions <github-actions@github.com>
2023-06-26 13:44:34 +00:00
github-actions[bot]
c816f33ac0
release: binstalk-types v0.5.0 (#1175)
chore: Release

Co-authored-by: github-actions <github-actions@github.com>
2023-06-26 12:27:56 +00:00