Compare commits

...

109 Commits

Author SHA1 Message Date
Taiki Endo
0087e57cc3 Release 2.18.17 2023-09-27 03:28:10 +09:00
Taiki Endo
63649bfbf1 Update cargo-llvm-cov@latest to 0.5.33 2023-09-27 03:26:06 +09:00
Taiki Endo
5b205dd5b8 Release 2.18.16 2023-09-23 21:13:00 +09:00
Taiki Endo
f664a60d0a Update cargo-machete@latest to 0.6.0 2023-09-23 21:10:09 +09:00
Taiki Endo
99f24c701f Update cargo-llvm-cov@latest to 0.5.32 2023-09-23 21:10:09 +09:00
Taiki Endo
05acba8f2d Release 2.18.15 2023-09-22 20:19:19 +09:00
Taiki Endo
2c288a7d53 Update cargo-careful@latest to 0.4.0 (#232) 2023-09-22 17:01:29 +10:00
Taiki Endo
2afb713f1c Release 2.18.14 2023-09-21 10:07:20 +09:00
Taiki Endo
5d0fca79ad Update readme 2023-09-21 10:07:10 +09:00
Taiki Endo
14deed0413 Update syft@latest to 0.91.0 (#231) 2023-09-20 21:38:21 +00:00
Taiki Endo
0143d8cb45 Update wasmtime@latest to 13.0.0 (#230) 2023-09-21 07:33:26 +10:00
Taiki Endo
2358ab6439 Release 2.18.13 2023-09-17 21:46:26 +09:00
Taiki Endo
d7013fbfd0 Update manifest (#228)
* Update `cargo-binstall@latest` to 1.3.1

* Update `cargo-make@latest` to 0.37.1

* Update `cargo-tarpaulin@latest` to 0.27.0
2023-09-17 21:46:00 +09:00
Taiki Endo
de0d48bde6 Release 2.18.12 2023-09-17 00:24:06 +09:00
Taiki Endo
a4beb34f32 ci: Test cmd on Windows 2023-09-17 00:22:00 +09:00
Taiki Endo
46ad021080 Remove needless $ 2023-09-16 23:11:00 +09:00
Taiki Endo
13c0d6f598 Do not install jq if not affected by bugs, even on Windows 2023-09-16 22:54:11 +09:00
Taiki Endo
af0cad7ea8 ci: Test a case that cargo is not available 2023-09-16 22:27:52 +09:00
Taiki Endo
55b35a1b0d Fix some bugs on Windows 2023-09-16 22:26:41 +09:00
Taiki Endo
b441885d30 tidy: Update tools/tidy.sh and add SPDX-License-Identifier 2023-09-16 17:56:46 +09:00
Taiki Endo
1c8b6e3bf4 Release 2.18.11 2023-09-16 02:45:06 +09:00
Taiki Endo
c50dab88b6 Update cargo-hack@latest to 0.6.8 2023-09-16 02:44:43 +09:00
Taiki Endo
09f5ee3f05 Release 2.18.10 2023-09-15 12:14:14 +09:00
Taiki Endo
befd933e5e Update wasmtime@latest to 12.0.2 (#226) 2023-09-15 10:20:45 +10:00
Taiki Endo
62992553e4 Update cargo-dinghy@latest to 0.6.7 2023-09-15 03:13:45 +09:00
Taiki Endo
0163f6cf65 Release 2.18.9 2023-09-12 10:58:38 +09:00
Taiki Endo
10becfbf4e Update syft@latest to 0.90.0 (#223) 2023-09-12 10:33:21 +10:00
Taiki Endo
63c295a1d1 Release 2.18.8 2023-09-12 02:59:13 +09:00
Taiki Endo
1bbd028e93 Update cargo-no-dev-deps@latest to 0.2.7 2023-09-12 02:58:43 +09:00
Taiki Endo
006fba6182 Update cargo-minimal-versions@latest to 0.1.19 2023-09-12 02:58:43 +09:00
Taiki Endo
4d6ceceded Update cargo-hack@latest to 0.6.7 2023-09-12 02:58:43 +09:00
Taiki Endo
9afdc87209 Release 2.18.7 2023-09-11 21:34:53 +09:00
Taiki Endo
dd988265fe Update cargo-dinghy@latest to 0.6.5 (#221) 2023-09-11 22:17:45 +10:00
Taiki Endo
b89cfc4cdb Release 2.18.6 2023-09-10 13:01:06 +09:00
Taiki Endo
6d728686b1 Update dprint@latest to 0.41.0 2023-09-10 13:00:46 +09:00
Taiki Endo
f4f65fa33a Update cargo-no-dev-deps@latest to 0.2.6 2023-09-10 13:00:46 +09:00
Taiki Endo
ec4a09b691 Update cargo-minimal-versions@latest to 0.1.18 2023-09-10 13:00:46 +09:00
Taiki Endo
230cf1a7c2 Release 2.18.5 2023-09-09 21:30:39 +09:00
Taiki Endo
78fb098b9c Update cargo-no-dev-deps@latest to 0.2.5 2023-09-09 21:27:06 +09:00
Taiki Endo
ff244ea17b Update cargo-minimal-versions@latest to 0.1.17 2023-09-09 21:27:06 +09:00
Taiki Endo
ce41e556bc Update CI config 2023-09-09 21:07:42 +09:00
Taiki Endo
c2391e8e5f Release 2.18.4 2023-09-09 16:48:01 +09:00
Taiki Endo
51f7de925c Update cargo-hack@latest to 0.6.6 2023-09-09 16:47:03 +09:00
Taiki Endo
37beb9ded5 Update CI config 2023-09-09 15:29:11 +09:00
Taiki Endo
f3f0bc9f82 Release 2.18.3 2023-09-09 03:30:45 +09:00
Taiki Endo
f8ff1ab8a1 Update cargo-make@latest to 0.37.0 2023-09-09 03:29:46 +09:00
Taiki Endo
a6b28c31ef Release 2.18.2 2023-09-08 10:22:32 +09:00
Taiki Endo
09cf616b64 Update protoc@latest to 3.24.3 (#216) 2023-09-08 10:20:31 +09:00
Taiki Endo
2f6cd157e0 Simplify CI config 2023-09-05 23:14:31 +09:00
Taiki Endo
3660b253bf Update CI config 2023-09-05 23:05:37 +09:00
Taiki Endo
6cd53f784a Release 2.18.1 2023-09-05 22:49:32 +09:00
Taiki Endo
eb8dccef73 ci: Replace rockylinux with almalinux
rockylinux's package manager infrastructure sometimes is broken.

```
+ dnf install -y cargo tar gzip
Rocky Linux 8 - AppStream                        34 kB/s |  10 MB     05:05
Errors during downloading metadata for repository 'appstream':
  - Downloading successful, but checksum doesn't match. Calculated: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855(sha256)  Expected: 0087a37e2eca36cac787004b7945dbbcc2dba4dd776e50d6d1461bfe2cc30434(sha256)
  - Downloading successful, but checksum doesn't match. Calculated: 839488ebc08446a096a893996ed23eac321ac166724cd8c5d9092057834d2d79(sha256)  Expected: b31374fa4a7a732aae643cea0699f714480387baad33061b2fae4530d380a988(sha256)
  - Downloading successful, but checksum doesn't match. Calculated: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855(sha256)  Expected: 649280a7614f8a30d3fcc03560247b64906a6cf26024e090c0272766e671e5f3(sha256)
Error: Failed to download metadata for repo 'appstream': Yum repo downloading error: Downloading error(s): repodata/b31374fa4a7a732aae643cea0699f714480387baad33061b2fae4530d380a988-updateinfo.xml.gz - Cannot download, all mirrors were already tried without success
```

```
+ microdnf install -y cargo tar gzip
Downloading metadata...
error: cannot update repo 'baseos': repomd.xml parser error: Parse error at line: 1 (Extra content at the end of the document
)
```
2023-09-05 22:44:03 +09:00
Taiki Endo
442088fba1 Update changelog 2023-09-05 22:39:17 +09:00
Taiki Endo
18cb28e03d Sort supported tools table 2023-09-05 22:39:14 +09:00
Taiki Endo
099d544df2 Clean up --version calls 2023-09-05 22:39:05 +09:00
Taiki Endo
05558ee559 ci: Update actions/checkout action to v4 2023-09-05 22:38:58 +09:00
Taiki Endo
5692c4095a Release 2.18.0 2023-09-04 21:48:23 +09:00
Taiki Endo
afd84994bb Update changelog 2023-09-04 21:47:54 +09:00
John Nunley
b45f49a51d Add support for xbuild (#212)
Signed-off-by: John Nunley <dev@notgull.net>
2023-09-04 21:46:18 +09:00
Taiki Endo
01c3792929 Update cargo-hack@latest to 0.6.5 2023-09-04 21:45:18 +09:00
Taiki Endo
401ee5db19 Update cargo-deny@latest to 0.14.2 (#214) 2023-09-04 22:33:23 +10:00
Taiki Endo
6801bd56b9 Release 2.17.8 2023-09-01 11:19:43 +09:00
Taiki Endo
ad25912b73 Update syft@latest to 0.89.0 (#213) 2023-09-01 07:37:05 +10:00
Taiki Endo
cc5a5c56a2 Release 2.17.7 2023-08-29 22:38:14 +09:00
Taiki Endo
d85ed71ccb Update cargo-hack@latest to 0.6.4 2023-08-29 22:37:49 +09:00
Taiki Endo
a257529eaf Release 2.17.6 2023-08-29 05:46:59 +09:00
Taiki Endo
69081f5990 Update cargo-no-dev-deps@latest to 0.2.4 2023-08-29 05:46:27 +09:00
Taiki Endo
fc173345fb Update cargo-minimal-versions@latest to 0.1.16 2023-08-29 05:46:27 +09:00
Taiki Endo
e6b049c3b7 Update cargo-hack@latest to 0.6.3 2023-08-29 05:46:27 +09:00
Taiki Endo
7838381fcf Release 2.17.5 2023-08-29 03:47:19 +09:00
Taiki Endo
8cdc2a9825 Update cargo-hack@latest to 0.6.2 2023-08-29 03:46:21 +09:00
Taiki Endo
7f27b7d8d5 Release 2.17.4 2023-08-29 02:44:41 +09:00
Taiki Endo
e156747327 Update cargo-hack@latest to 0.6.1 2023-08-29 02:44:22 +09:00
Taiki Endo
26fa6681fb Release 2.17.3 2023-08-29 01:56:05 +09:00
Taiki Endo
25d7b33a71 Update cargo-minimal-versions@latest to 0.1.15 2023-08-29 01:55:43 +09:00
Taiki Endo
f96cc5318d Update cargo-hack@latest to 0.6.0 2023-08-29 01:55:43 +09:00
Taiki Endo
f0d0def1e2 Release 2.17.2 2023-08-27 15:22:32 +09:00
Taiki Endo
2b66e0090b Update cargo-udeps@latest to 0.1.42 (#206) 2023-08-27 06:16:18 +00:00
Taiki Endo
ba7482c6af Release 2.17.1 2023-08-26 10:31:08 +09:00
Taiki Endo
425876e44a Update manifest (#205) 2023-08-26 11:05:19 +10:00
Taiki Endo
a5a8275f14 Release 2.17.0 2023-08-25 21:19:57 +09:00
Taiki Endo
38b64619b5 ci: Add macOS 13 to test 2023-08-25 21:18:31 +09:00
Taiki Endo
006e1318d7 Update cspell dictionary 2023-08-25 21:17:08 +09:00
Taiki Endo
942c7835ab Update cargo-binstall@latest to 1.3.0 (#204) 2023-08-25 12:16:33 +00:00
Taiki Endo
bca437466a Release 2.16.5 2023-08-25 04:19:58 +09:00
Taiki Endo
1981e18081 Update wasmtime@latest to 12.0.1 2023-08-25 04:19:36 +09:00
Taiki Endo
fe04be912f Update cargo-llvm-cov@latest to 0.5.31 2023-08-25 04:19:36 +09:00
Taiki Endo
f1e481e035 Release 2.16.4 2023-08-24 00:07:41 +09:00
Taiki Endo
1d42c62e8a Update cspell dictionary 2023-08-24 00:07:27 +09:00
Taiki Endo
d4d12f0d19 Update cargo-llvm-cov@latest to 0.5.30 2023-08-24 00:01:40 +09:00
Taiki Endo
8a5a554374 Release 2.16.3 2023-08-23 22:16:21 +09:00
Taiki Endo
cf629cb4fe Update cargo-llvm-cov@latest to 0.5.29 (#201) 2023-08-23 23:14:53 +10:00
Taiki Endo
0c6fcb3fbd Release 2.16.2 2023-08-23 02:06:56 +09:00
Taiki Endo
82e8fed825 Update cargo-llvm-cov@latest to 0.5.28 2023-08-23 02:03:46 +09:00
Taiki Endo
2b8e18789e Release 2.16.1 2023-08-22 21:08:53 +09:00
Taiki Endo
b90e19d688 Update wasmtime@latest to 12.0.0 (#198) 2023-08-22 10:39:42 +10:00
Taiki Endo
1f490d2b6e tidy: Check file permissions 2023-08-19 15:58:26 +09:00
Taiki Endo
c9ba9d12d0 Release 2.16.0 2023-08-19 09:45:18 +09:00
Taiki Endo
0dbdc190f4 Update changelog 2023-08-19 09:45:06 +09:00
Tyson Nottingham
8aa60332b7 Add support for cargo-machete (#196) 2023-08-19 09:43:05 +09:00
Taiki Endo
85a0ab9568 Release 2.15.6 2023-08-19 09:35:43 +09:00
Taiki Endo
ba31d2a9d5 Update protoc@latest to 3.24.1 (#197) 2023-08-19 00:18:35 +00:00
Taiki Endo
ec1353d184 Release 2.15.5 2023-08-18 10:51:41 +09:00
Taiki Endo
1255c6765d Update syft@latest to 0.87.1 (#195) 2023-08-18 10:55:22 +10:00
Taiki Endo
5265bea15b Release 2.15.4 2023-08-15 11:58:16 +09:00
Taiki Endo
1ecea869bc Update syft@latest to 0.87.0 (#194) 2023-08-15 07:38:17 +10:00
Taiki Endo
dd39e1fae4 Release 2.15.3 2023-08-15 01:15:40 +09:00
Taiki Endo
c6d4b612a3 Update cargo-minimal-versions@latest to 0.1.14 2023-08-15 01:13:02 +09:00
Taiki Endo
1c114c9abb Update cargo-llvm-cov@latest to 0.5.27 2023-08-15 01:13:02 +09:00
30 changed files with 1744 additions and 182 deletions

View File

@@ -6,15 +6,17 @@ taiki
// tool name and its configs or options // tool name and its configs or options
asan asan
cdylib
cflags cflags
clippy clippy
codegen codegen
cxxflags cxxflags
dylib
exitcode exitcode
miri miri
miriflags miriflags
msan msan
retag rlib
rustc rustc
rustdoc rustdoc
rustdocflags rustdocflags
@@ -22,6 +24,8 @@ rustflags
rustfmt rustfmt
rustsec rustsec
rustup rustup
staticlib
tsan
valgrind valgrind
xcompile xcompile
Zmiri Zmiri

View File

@@ -1,3 +1,4 @@
almalinux
binstall binstall
coreutils coreutils
distro distro
@@ -15,11 +16,11 @@ nextest
protoc protoc
pwsh pwsh
quickinstall quickinstall
rockylinux
shellcheck shellcheck
shfmt shfmt
syft syft
udeps udeps
wasmtime wasmtime
watchexec watchexec
xbuild
xscale xscale

View File

@@ -41,20 +41,21 @@ jobs:
include: include:
- os: ubuntu-20.04 - os: ubuntu-20.04
- os: ubuntu-22.04 - os: ubuntu-22.04
- os: ubuntu-20.04 - os: ubuntu-22.04
tool: major.minor.patch tool: major.minor.patch
- os: ubuntu-20.04 - os: ubuntu-22.04
tool: major.minor tool: major.minor
- os: ubuntu-20.04 - os: ubuntu-22.04
tool: major tool: major
- os: macos-11 - os: macos-11
- os: macos-12 - os: macos-12
- os: macos-13
- os: windows-2019 - os: windows-2019
- os: windows-2022 - os: windows-2022
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
timeout-minutes: 60 timeout-minutes: 60
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
with: with:
persist-credentials: false persist-credentials: false
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version` # cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
@@ -80,6 +81,10 @@ jobs:
run: just --version; shfmt --version; protoc --version run: just --version; shfmt --version; protoc --version
shell: powershell shell: powershell
if: startsWith(matrix.os, 'windows') if: startsWith(matrix.os, 'windows')
- name: Test cmd
run: just --version & shfmt --version & protoc --version
shell: cmd
if: startsWith(matrix.os, 'windows')
# We use the version output to check the version of binstall, but they # We use the version output to check the version of binstall, but they
# several times change the version output format in the past so we need to # several times change the version output format in the past so we need to
# check it with CI. (e.g., 0.14.0->0.16.0 update change it # check it with CI. (e.g., 0.14.0->0.16.0 update change it
@@ -101,10 +106,10 @@ jobs:
- debian:11-slim # glibc 2.31 - debian:11-slim # glibc 2.31
- debian:12-slim # glibc 2.36 - debian:12-slim # glibc 2.36
- fedora:latest # glibc 2.37 (as of fedora 38) - fedora:latest # glibc 2.37 (as of fedora 38)
- rockylinux:8 # glibc 2.28 - almalinux:8 # glibc 2.28
- rockylinux:8-minimal # glibc 2.28 - almalinux:8-minimal # glibc 2.28
- rockylinux:9 # glibc 2.34 - almalinux:9 # glibc 2.34
- rockylinux:9-minimal # glibc 2.34 - almalinux:9-minimal # glibc 2.34
- centos:7 # glibc 2.17 - centos:7 # glibc 2.17
- alpine:latest # musl 1.2.4 (as of alpine 3.18) - alpine:latest # musl 1.2.4 (as of alpine 3.18)
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -117,29 +122,23 @@ jobs:
apt-get -o Acquire::Retries=10 -qq update apt-get -o Acquire::Retries=10 -qq update
apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends cargo apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends cargo
if: startsWith(matrix.container, 'ubuntu') || startsWith(matrix.container, 'debian') if: startsWith(matrix.container, 'ubuntu') || startsWith(matrix.container, 'debian')
- name: Install requirements (fedora/rockylinux) - name: Install requirements (fedora/almalinux/centos)
run: | run: |
set -euxo pipefail set -euxo pipefail
dnf=dnf if ! type -P dnf &>/dev/null && type -P microdnf &>/dev/null; then
if ! type -P dnf &>/dev/null; then # tar and gzip are required for actions/checkout on *-minimal images
dnf=microdnf microdnf install -y tar gzip
fi fi
# tar and gzip are required for actions/checkout on rockylinux:*-minimal curl --proto '=https' --tlsv1.2 -fsSL --retry 10 https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable
$dnf install -y cargo tar gzip
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'rockylinux')
- name: Install requirements (centos)
run: |
set -euxo pipefail
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable
echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}" echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}"
if: startsWith(matrix.container, 'centos') if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'almalinux') || startsWith(matrix.container, 'centos')
- name: Install requirements (alpine) - name: Install requirements (alpine)
run: | run: |
set -eux set -eux
apk --no-cache add bash cargo apk --no-cache add bash cargo
shell: sh shell: sh
if: startsWith(matrix.container, 'alpine') if: startsWith(matrix.container, 'alpine')
- uses: actions/checkout@v3 - uses: actions/checkout@v3 # TODO: actions/checkout@v4 requires glibc 2.28+
with: with:
persist-credentials: false persist-credentials: false
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version` # cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
@@ -151,6 +150,21 @@ jobs:
with: with:
tool: ${{ steps.tool-list.outputs.tool }} tool: ${{ steps.tool-list.outputs.tool }}
test-no-cargo:
runs-on: ubuntu-latest
timeout-minutes: 60
container: ubuntu:22.04
steps:
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Generate tool list
id: tool-list
run: tools/ci/tool-list.sh >>"${GITHUB_OUTPUT}"
- uses: ./
with:
tool: ${{ steps.tool-list.outputs.tool }}
manifest: manifest:
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 60 timeout-minutes: 60
@@ -158,7 +172,7 @@ jobs:
contents: write contents: write
pull-requests: write pull-requests: write
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
with: with:
persist-credentials: false persist-credentials: false
- name: Install Rust - name: Install Rust

View File

@@ -20,7 +20,7 @@ jobs:
permissions: permissions:
contents: write contents: write
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
with: with:
persist-credentials: false persist-credentials: false
- uses: taiki-e/create-gh-release-action@v1 - uses: taiki-e/create-gh-release-action@v1

View File

@@ -10,6 +10,190 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased] ## [Unreleased]
## [2.18.17] - 2023-09-26
- Update `cargo-llvm-cov@latest` to 0.5.33.
## [2.18.16] - 2023-09-23
- Update `cargo-machete@latest` to 0.6.0.
- Update `cargo-llvm-cov@latest` to 0.5.32.
## [2.18.15] - 2023-09-22
- Update `cargo-careful@latest` to 0.4.0.
## [2.18.14] - 2023-09-21
- Update `syft@latest` to 0.91.0.
- Update `wasmtime@latest` to 13.0.0.
## [2.18.13] - 2023-09-17
- Update `cargo-tarpaulin@latest` to 0.27.0.
- Update `cargo-make@latest` to 0.37.1.
- Update `cargo-binstall@latest` to 1.3.1.
## [2.18.12] - 2023-09-16
- Fix some bugs on Windows.
## [2.18.11] - 2023-09-15
- Update `cargo-hack@latest` to 0.6.8.
## [2.18.10] - 2023-09-15
- Update `wasmtime@latest` to 12.0.2.
- Update `cargo-dinghy@latest` to 0.6.7.
## [2.18.9] - 2023-09-12
- Update `syft@latest` to 0.90.0.
## [2.18.8] - 2023-09-11
- Update `cargo-no-dev-deps@latest` to 0.2.7.
- Update `cargo-minimal-versions@latest` to 0.1.19.
- Update `cargo-hack@latest` to 0.6.7.
## [2.18.7] - 2023-09-11
- Update `cargo-dinghy@latest` to 0.6.5.
## [2.18.6] - 2023-09-10
- Update `dprint@latest` to 0.41.0.
- Update `cargo-no-dev-deps@latest` to 0.2.6.
- Update `cargo-minimal-versions@latest` to 0.1.18.
## [2.18.5] - 2023-09-09
- Update `cargo-no-dev-deps@latest` to 0.2.5.
- Update `cargo-minimal-versions@latest` to 0.1.17.
## [2.18.4] - 2023-09-09
- Update `cargo-hack@latest` to 0.6.6.
## [2.18.3] - 2023-09-08
- Update `cargo-make@latest` to 0.37.0.
## [2.18.2] - 2023-09-08
- Update `protoc@latest` to 3.24.3.
## [2.18.1] - 2023-09-05
- Diagnostic improvements.
## [2.18.0] - 2023-09-04
- Support `xbuild`. ([#212](https://github.com/taiki-e/install-action/pull/212), thanks @notgull)
- Update `cargo-hack@latest` to 0.6.5.
- Update `cargo-deny@latest` to 0.14.2.
## [2.17.8] - 2023-09-01
- Update `syft@latest` to 0.89.0.
## [2.17.7] - 2023-08-29
- Update `cargo-hack@latest` to 0.6.4.
## [2.17.6] - 2023-08-28
- Update `cargo-no-dev-deps@latest` to 0.2.4.
- Update `cargo-minimal-versions@latest` to 0.1.16.
- Update `cargo-hack@latest` to 0.6.3.
## [2.17.5] - 2023-08-28
- Update `cargo-hack@latest` to 0.6.2.
## [2.17.4] - 2023-08-28
- Update `cargo-hack@latest` to 0.6.1.
## [2.17.3] - 2023-08-28
- Update `cargo-minimal-versions@latest` to 0.1.15.
- Update `cargo-hack@latest` to 0.6.0.
## [2.17.2] - 2023-08-27
- Update `cargo-udeps@latest` to 0.1.42.
## [2.17.1] - 2023-08-26
- Update `syft@latest` to 0.88.0.
- Update `protoc@latest` to 3.24.2.
## [2.17.0] - 2023-08-25
- Update `cargo-binstall@latest` to 1.3.0.
## [2.16.5] - 2023-08-24
- Update `wasmtime@latest` to 12.0.1.
- Update `cargo-llvm-cov@latest` to 0.5.31.
## [2.16.4] - 2023-08-23
- Update `cargo-llvm-cov@latest` to 0.5.30.
## [2.16.3] - 2023-08-23
- Update `cargo-llvm-cov@latest` to 0.5.29.
## [2.16.2] - 2023-08-22
- Update `cargo-llvm-cov@latest` to 0.5.28.
## [2.16.1] - 2023-08-22
- Update `wasmtime@latest` to 12.0.0.
## [2.16.0] - 2023-08-19
- Support `cargo-machete`. ([#196](https://github.com/taiki-e/install-action/pull/196), thanks @tgnottingham)
## [2.15.6] - 2023-08-19
- Update `protoc@latest` to 3.24.1.
## [2.15.5] - 2023-08-18
- Update `syft@latest` to 0.87.1.
## [2.15.4] - 2023-08-15
- Update `syft@latest` to 0.87.0.
## [2.15.3] - 2023-08-14
- Update `cargo-minimal-versions@latest` to 0.1.14.
- Update `cargo-llvm-cov@latest` to 0.5.27.
## [2.15.2] - 2023-08-12 ## [2.15.2] - 2023-08-12
- Update `cargo-llvm-cov@latest` to 0.5.26. - Update `cargo-llvm-cov@latest` to 0.5.26.
@@ -1069,7 +1253,44 @@ Note: This release is considered a breaking change because installing on version
Initial release Initial release
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.15.2...HEAD [Unreleased]: https://github.com/taiki-e/install-action/compare/v2.18.17...HEAD
[2.18.17]: https://github.com/taiki-e/install-action/compare/v2.18.16...v2.18.17
[2.18.16]: https://github.com/taiki-e/install-action/compare/v2.18.15...v2.18.16
[2.18.15]: https://github.com/taiki-e/install-action/compare/v2.18.14...v2.18.15
[2.18.14]: https://github.com/taiki-e/install-action/compare/v2.18.13...v2.18.14
[2.18.13]: https://github.com/taiki-e/install-action/compare/v2.18.12...v2.18.13
[2.18.12]: https://github.com/taiki-e/install-action/compare/v2.18.11...v2.18.12
[2.18.11]: https://github.com/taiki-e/install-action/compare/v2.18.10...v2.18.11
[2.18.10]: https://github.com/taiki-e/install-action/compare/v2.18.9...v2.18.10
[2.18.9]: https://github.com/taiki-e/install-action/compare/v2.18.8...v2.18.9
[2.18.8]: https://github.com/taiki-e/install-action/compare/v2.18.7...v2.18.8
[2.18.7]: https://github.com/taiki-e/install-action/compare/v2.18.6...v2.18.7
[2.18.6]: https://github.com/taiki-e/install-action/compare/v2.18.5...v2.18.6
[2.18.5]: https://github.com/taiki-e/install-action/compare/v2.18.4...v2.18.5
[2.18.4]: https://github.com/taiki-e/install-action/compare/v2.18.3...v2.18.4
[2.18.3]: https://github.com/taiki-e/install-action/compare/v2.18.2...v2.18.3
[2.18.2]: https://github.com/taiki-e/install-action/compare/v2.18.1...v2.18.2
[2.18.1]: https://github.com/taiki-e/install-action/compare/v2.18.0...v2.18.1
[2.18.0]: https://github.com/taiki-e/install-action/compare/v2.17.8...v2.18.0
[2.17.8]: https://github.com/taiki-e/install-action/compare/v2.17.7...v2.17.8
[2.17.7]: https://github.com/taiki-e/install-action/compare/v2.17.6...v2.17.7
[2.17.6]: https://github.com/taiki-e/install-action/compare/v2.17.5...v2.17.6
[2.17.5]: https://github.com/taiki-e/install-action/compare/v2.17.4...v2.17.5
[2.17.4]: https://github.com/taiki-e/install-action/compare/v2.17.3...v2.17.4
[2.17.3]: https://github.com/taiki-e/install-action/compare/v2.17.2...v2.17.3
[2.17.2]: https://github.com/taiki-e/install-action/compare/v2.17.1...v2.17.2
[2.17.1]: https://github.com/taiki-e/install-action/compare/v2.17.0...v2.17.1
[2.17.0]: https://github.com/taiki-e/install-action/compare/v2.16.5...v2.17.0
[2.16.5]: https://github.com/taiki-e/install-action/compare/v2.16.4...v2.16.5
[2.16.4]: https://github.com/taiki-e/install-action/compare/v2.16.3...v2.16.4
[2.16.3]: https://github.com/taiki-e/install-action/compare/v2.16.2...v2.16.3
[2.16.2]: https://github.com/taiki-e/install-action/compare/v2.16.1...v2.16.2
[2.16.1]: https://github.com/taiki-e/install-action/compare/v2.16.0...v2.16.1
[2.16.0]: https://github.com/taiki-e/install-action/compare/v2.15.6...v2.16.0
[2.15.6]: https://github.com/taiki-e/install-action/compare/v2.15.5...v2.15.6
[2.15.5]: https://github.com/taiki-e/install-action/compare/v2.15.4...v2.15.5
[2.15.4]: https://github.com/taiki-e/install-action/compare/v2.15.3...v2.15.4
[2.15.3]: https://github.com/taiki-e/install-action/compare/v2.15.2...v2.15.3
[2.15.2]: https://github.com/taiki-e/install-action/compare/v2.15.1...v2.15.2 [2.15.2]: https://github.com/taiki-e/install-action/compare/v2.15.1...v2.15.2
[2.15.1]: https://github.com/taiki-e/install-action/compare/v2.15.0...v2.15.1 [2.15.1]: https://github.com/taiki-e/install-action/compare/v2.15.0...v2.15.1
[2.15.0]: https://github.com/taiki-e/install-action/compare/v2.14.3...v2.15.0 [2.15.0]: https://github.com/taiki-e/install-action/compare/v2.14.3...v2.15.0

View File

@@ -82,12 +82,13 @@ https://spdx.org/licenses
| Name | Where binaries will be installed | Where will it be installed from | Supported platform | License | | Name | Where binaries will be installed | Where will it be installed from | Supported platform | License |
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- | | ---- | -------------------------------- | ------------------------------- | ------------------ | ------- |
| [**cargo-binstall**][cargo-binstall] | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/cargo-bins/cargo-binstall/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE) | | [**cargo-binstall**][cargo-binstall] | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/cargo-bins/cargo-binstall/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE) |
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
| [**cargo-careful**](https://github.com/RalfJung/cargo-careful) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/RalfJung/cargo-careful/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-MIT) | | [**cargo-careful**](https://github.com/RalfJung/cargo-careful) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/RalfJung/cargo-careful/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-MIT) |
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
| [**cargo-dinghy**](https://github.com/sonos/dinghy) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sonos/dinghy/releases) | Linux, macOS | [Apache-2.0](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-MIT) | | [**cargo-dinghy**](https://github.com/sonos/dinghy) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sonos/dinghy/releases) | Linux, macOS | [Apache-2.0](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-MIT) |
| [**cargo-hack**](https://github.com/taiki-e/cargo-hack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-hack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-MIT) | | [**cargo-hack**](https://github.com/taiki-e/cargo-hack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-hack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-MIT) |
| [**cargo-llvm-cov**](https://github.com/taiki-e/cargo-llvm-cov) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-llvm-cov/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-MIT) | | [**cargo-llvm-cov**](https://github.com/taiki-e/cargo-llvm-cov) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-llvm-cov/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-MIT) |
| [**cargo-make**](https://github.com/sagiegurari/cargo-make) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sagiegurari/cargo-make/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/master/LICENSE) | | [**cargo-machete**](https://github.com/bnjbvr/cargo-machete) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bnjbvr/cargo-machete/releases) | Linux, macOS, Windows | [MIT](https://github.com/bnjbvr/cargo-machete/blob/HEAD/LICENSE.md) |
| [**cargo-make**](https://github.com/sagiegurari/cargo-make) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sagiegurari/cargo-make/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/HEAD/LICENSE) |
| [**cargo-minimal-versions**](https://github.com/taiki-e/cargo-minimal-versions) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-minimal-versions/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-minimal-versions/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-minimal-versions/blob/HEAD/LICENSE-MIT) | | [**cargo-minimal-versions**](https://github.com/taiki-e/cargo-minimal-versions) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-minimal-versions/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-minimal-versions/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-minimal-versions/blob/HEAD/LICENSE-MIT) |
| [**cargo-no-dev-deps**](https://github.com/taiki-e/cargo-no-dev-deps) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-no-dev-deps/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-no-dev-deps/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-no-dev-deps/blob/HEAD/LICENSE-MIT) | | [**cargo-no-dev-deps**](https://github.com/taiki-e/cargo-no-dev-deps) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-no-dev-deps/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-no-dev-deps/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-no-dev-deps/blob/HEAD/LICENSE-MIT) |
| [**cargo-tarpaulin**](https://github.com/xd009642/tarpaulin) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/xd009642/tarpaulin/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE) OR [MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) | | [**cargo-tarpaulin**](https://github.com/xd009642/tarpaulin) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/xd009642/tarpaulin/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE) OR [MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) |
@@ -108,6 +109,7 @@ https://spdx.org/licenses
| [**valgrind**](https://valgrind.org) | `/snap/bin` | [snap](https://snapcraft.io/install/valgrind/ubuntu) | Linux | [GPL-2.0-or-later](https://valgrind.org/docs/manual/license.gpl.html) | | [**valgrind**](https://valgrind.org) | `/snap/bin` | [snap](https://snapcraft.io/install/valgrind/ubuntu) | Linux | [GPL-2.0-or-later](https://valgrind.org/docs/manual/license.gpl.html) |
| [**wasm-pack**](https://github.com/rustwasm/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustwasm/wasm-pack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-MIT) | | [**wasm-pack**](https://github.com/rustwasm/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustwasm/wasm-pack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-MIT) |
| [**wasmtime**](https://github.com/bytecodealliance/wasmtime) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bytecodealliance/wasmtime/releases) | Linux, macOS, Windows | [Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/HEAD/LICENSE) | | [**wasmtime**](https://github.com/bytecodealliance/wasmtime) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bytecodealliance/wasmtime/releases) | Linux, macOS, Windows | [Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/HEAD/LICENSE) |
| [**xbuild**](https://github.com/rust-mobile/xbuild) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-mobile/xbuild/releases) | Linux, macOS, Windows | Apache-2.0 OR MIT |
| [**zola**](https://github.com/getzola/zola) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/getzola/zola/releases) | Linux, macOS, Windows | [MIT](https://github.com/getzola/zola/blob/HEAD/LICENSE) | | [**zola**](https://github.com/getzola/zola) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/getzola/zola/releases) | Linux, macOS, Windows | [MIT](https://github.com/getzola/zola/blob/HEAD/LICENSE) |
If `$CARGO_HOME/bin` is not available, Rust-related binaries will be installed to `$HOME/.cargo/bin`.<br> If `$CARGO_HOME/bin` is not available, Rust-related binaries will be installed to `$HOME/.cargo/bin`.<br>
@@ -130,7 +132,7 @@ See the linked documentation for information on security when installed using [s
## Compatibility ## Compatibility
This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Alpine, Fedora, CentOS, Rocky). This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Alpine, Fedora, CentOS, Alma).
To use this action in self-hosted runners or in containers, at least the following tools are required: To use this action in self-hosted runners or in containers, at least the following tools are required:
- bash - bash

215
main.sh
View File

@@ -3,7 +3,7 @@
set -euo pipefail set -euo pipefail
IFS=$'\n\t' IFS=$'\n\t'
x() { rx() {
local cmd="$1" local cmd="$1"
shift shift
( (
@@ -58,18 +58,16 @@ download_and_extract() {
local checksum="$2" local checksum="$2"
local bin_dir="$3" local bin_dir="$3"
local bin_in_archive="$4" # path to bin in archive local bin_in_archive="$4" # path to bin in archive
if [[ "${bin_dir}" == "/usr/"* ]]; then if [[ "${bin_dir}" == "${install_action_dir}/bin" ]]; then
if [[ ! -d "${bin_dir}" ]]; then init_install_action_bin_dir
bin_dir="${HOME}/.install-action/bin"
if [[ ! -d "${bin_dir}" ]]; then
mkdir -p "${bin_dir}"
canonicalize_windows_path "${bin_dir}" >>"${GITHUB_PATH}"
export PATH="${PATH}:${bin_dir}"
fi
fi
fi fi
local installed_bin local installed_bin
installed_bin="${bin_dir}/$(basename "${bin_in_archive}")" # xbuild's binary name is "x", as opposed to the usual crate name
case "${tool}" in
xbuild) installed_bin="${bin_dir}/x" ;;
*) installed_bin="${bin_dir}/$(basename "${bin_in_archive}")" ;;
esac
local tar_args=() local tar_args=()
case "${url}" in case "${url}" in
@@ -152,17 +150,17 @@ read_manifest() {
local tool="$1" local tool="$1"
local version="$2" local version="$2"
local manifest local manifest
rust_crate=$(jq -r ".rust_crate" "${manifest_dir}/${tool}.json") rust_crate=$(call_jq -r ".rust_crate" "${manifest_dir}/${tool}.json")
manifest=$(jq -r ".\"${version}\"" "${manifest_dir}/${tool}.json") manifest=$(call_jq -r ".\"${version}\"" "${manifest_dir}/${tool}.json")
if [[ "${manifest}" == "null" ]]; then if [[ "${manifest}" == "null" ]]; then
download_info="null" download_info="null"
return 0 return 0
fi fi
exact_version=$(jq <<<"${manifest}" -r '.version') exact_version=$(call_jq <<<"${manifest}" -r '.version')
if [[ "${exact_version}" == "null" ]]; then if [[ "${exact_version}" == "null" ]]; then
exact_version="${version}" exact_version="${version}"
else else
manifest=$(jq -r ".\"${exact_version}\"" "${manifest_dir}/${tool}.json") manifest=$(call_jq -r ".\"${exact_version}\"" "${manifest_dir}/${tool}.json")
fi fi
case "${host_os}" in case "${host_os}" in
linux) linux)
@@ -170,24 +168,24 @@ read_manifest() {
# usually preferred over linux-gnu binaries because they can avoid glibc version issues. # usually preferred over linux-gnu binaries because they can avoid glibc version issues.
# (rustc enables statically linking for linux-musl by default, except for mips.) # (rustc enables statically linking for linux-musl by default, except for mips.)
host_platform="${host_arch}_linux_musl" host_platform="${host_arch}_linux_musl"
download_info=$(jq <<<"${manifest}" -r ".${host_platform}") download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
if [[ "${download_info}" == "null" ]]; then if [[ "${download_info}" == "null" ]]; then
# Even if host_env is musl, we won't issue an error here because it seems that in # Even if host_env is musl, we won't issue an error here because it seems that in
# some cases linux-gnu binaries will work on linux-musl hosts. # some cases linux-gnu binaries will work on linux-musl hosts.
# https://wiki.alpinelinux.org/wiki/Running_glibc_programs # https://wiki.alpinelinux.org/wiki/Running_glibc_programs
# TODO: However, a warning may make sense. # TODO: However, a warning may make sense.
host_platform="${host_arch}_linux_gnu" host_platform="${host_arch}_linux_gnu"
download_info=$(jq <<<"${manifest}" -r ".${host_platform}") download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
fi fi
;; ;;
macos | windows) macos | windows)
# Binaries compiled for x86_64 macOS will usually also work on aarch64 macOS. # Binaries compiled for x86_64 macOS will usually also work on aarch64 macOS.
# Binaries compiled for x86_64 Windows will usually also work on aarch64 Windows 11+. # Binaries compiled for x86_64 Windows will usually also work on aarch64 Windows 11+.
host_platform="${host_arch}_${host_os}" host_platform="${host_arch}_${host_os}"
download_info=$(jq <<<"${manifest}" -r ".${host_platform}") download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
if [[ "${download_info}" == "null" ]] && [[ "${host_arch}" != "x86_64" ]]; then if [[ "${download_info}" == "null" ]] && [[ "${host_arch}" != "x86_64" ]]; then
host_platform="x86_64_${host_os}" host_platform="x86_64_${host_os}"
download_info=$(jq <<<"${manifest}" -r ".${host_platform}") download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
fi fi
;; ;;
*) bail "unsupported OS type '${host_os}' for ${tool}" ;; *) bail "unsupported OS type '${host_os}' for ${tool}" ;;
@@ -199,20 +197,24 @@ read_download_info() {
if [[ "${download_info}" == "null" ]]; then if [[ "${download_info}" == "null" ]]; then
bail "${tool}@${version} for '${host_os}' is not supported" bail "${tool}@${version} for '${host_os}' is not supported"
fi fi
checksum=$(jq <<<"${download_info}" -r '.checksum') checksum=$(call_jq <<<"${download_info}" -r '.checksum')
url=$(jq <<<"${download_info}" -r '.url') url=$(call_jq <<<"${download_info}" -r '.url')
if [[ "${url}" == "null" ]]; then if [[ "${url}" == "null" ]]; then
local template local template
template=$(jq -r ".template.${host_platform}" "${manifest_dir}/${tool}.json") template=$(call_jq -r ".template.${host_platform}" "${manifest_dir}/${tool}.json")
url=$(jq <<<"${template}" -r '.url') url=$(call_jq <<<"${template}" -r '.url')
url="${url//\$\{version\}/${exact_version}}" url="${url//\$\{version\}/${exact_version}}"
bin_in_archive=$(jq <<<"${template}" -r '.bin') bin_in_archive=$(call_jq <<<"${template}" -r '.bin')
bin_in_archive="${bin_in_archive//\$\{version\}/${exact_version}}" bin_in_archive="${bin_in_archive//\$\{version\}/${exact_version}}"
else else
bin_in_archive=$(jq <<<"${download_info}" -r '.bin') bin_in_archive=$(call_jq <<<"${download_info}" -r '.bin')
fi fi
if [[ "${rust_crate}" == "null" ]]; then if [[ "${rust_crate}" == "null" ]]; then
bin_dir="/usr/local/bin" if [[ "${host_os}" == "windows" ]] || [[ ! -e /usr/local/bin ]]; then
bin_dir="${install_action_dir}/bin"
else
bin_dir=/usr/local/bin
fi
else else
bin_dir="${cargo_bin}" bin_dir="${cargo_bin}"
fi fi
@@ -230,10 +232,11 @@ download_from_download_info() {
} }
install_cargo_binstall() { install_cargo_binstall() {
local binstall_version local binstall_version
binstall_version=$(jq -r '.latest.version' "${manifest_dir}/cargo-binstall.json") binstall_version=$(call_jq -r '.latest.version' "${manifest_dir}/cargo-binstall.json")
local install_binstall='1' local install_binstall='1'
if [[ -f "${cargo_bin}/cargo-binstall${exe}" ]]; then _binstall_version=$("cargo-binstall${exe}" binstall -V 2>/dev/null || echo "")
if [[ "$(cargo binstall -V)" == "${binstall_version}" ]]; then if [[ -n "${_binstall_version}" ]]; then
if [[ "${_binstall_version}" == "${binstall_version}" ]]; then
info "cargo-binstall already installed at ${cargo_bin}/cargo-binstall${exe}" info "cargo-binstall already installed at ${cargo_bin}/cargo-binstall${exe}"
install_binstall='' install_binstall=''
else else
@@ -243,10 +246,15 @@ install_cargo_binstall() {
fi fi
if [[ -n "${install_binstall}" ]]; then if [[ -n "${install_binstall}" ]]; then
info "installing cargo-binstall" info "installing cargo-binstall@latest (${binstall_version})"
download_from_manifest "cargo-binstall" "latest" download_from_manifest "cargo-binstall" "latest"
info "cargo-binstall installed at $(type -P "cargo-binstall${exe}")" installed_at=$(type -P "cargo-binstall${exe}" || echo "")
x cargo binstall -V if [[ -n "${installed_at}" ]]; then
info "cargo-binstall installed at ${installed_at}"
else
warn "cargo-binstall should be installed at ${bin_dir:-}/cargo-binstall${exe}; but cargo-binstall${exe} not found in path"
fi
rx "cargo-binstall${exe}" binstall -V
fi fi
} }
apt_update() { apt_update() {
@@ -302,9 +310,21 @@ sys_install() {
fedora) dnf_install "$@" ;; fedora) dnf_install "$@" ;;
esac esac
} }
init_install_action_bin_dir() {
if [[ -z "${init_install_action_bin:-}" ]]; then
init_install_action_bin=1
mkdir -p "${bin_dir}"
export PATH="${PATH}:${bin_dir}"
local _bin_dir
_bin_dir=$(canonicalize_windows_path "${bin_dir}")
# TODO: avoid this when already added
info "adding '${_bin_dir}' to PATH"
echo "${_bin_dir}" >>"${GITHUB_PATH}"
fi
}
canonicalize_windows_path() { canonicalize_windows_path() {
case "${host_os}" in case "${host_os}" in
windows) sed <<<"$1" 's/^\/c\//C:\\/' ;; windows) sed <<<"$1" 's/^\/c\//C:\\/; s/\//\\/g' ;;
*) echo "$1" ;; *) echo "$1" ;;
esac esac
} }
@@ -402,17 +422,29 @@ case "$(uname -m)" in
# So we can assume x86_64 unless it is aarch64 or arm. # So we can assume x86_64 unless it is aarch64 or arm.
*) host_arch="x86_64" ;; *) host_arch="x86_64" ;;
esac esac
info "host platform: ${host_arch}_${host_os}"
tmp_dir="${HOME}/.install-action/tmp" install_action_dir="${HOME}/.install-action"
tmp_dir="${install_action_dir}/tmp"
cargo_bin="${CARGO_HOME:-"${HOME}/.cargo"}/bin" cargo_bin="${CARGO_HOME:-"${HOME}/.cargo"}/bin"
# If $CARGO_HOME does not exist, or cargo installed outside of $CARGO_HOME/bin # If $CARGO_HOME does not exist, or cargo installed outside of $CARGO_HOME/bin
# is used ($CARGO_HOME/bin is most likely not included in the PATH), fallback to # is used ($CARGO_HOME/bin is most likely not included in the PATH), fallback to
# /usr/local/bin or $HOME/.install-action/bin. # /usr/local/bin or $install_action_dir/bin.
if [[ ! -d "${cargo_bin}" ]] || { [[ "${host_os}" != "windows" ]] && [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo${exe}" ]]; }; then if [[ ! -e "${cargo_bin}" ]] || [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo"* ]]; then
if type -P cargo &>/dev/null; then
info "cargo is located at $(type -P cargo)"
fi
if [[ "${host_os}" == "windows" ]] || [[ ! -e /usr/local/bin ]]; then
cargo_bin="${install_action_dir}/bin"
else
cargo_bin=/usr/local/bin cargo_bin=/usr/local/bin
fi
fi fi
if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null || ! type -P tar &>/dev/null; then jq_use_b=''
case "${host_os}" in
linux)
if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null || ! type -P tar &>/dev/null; then
case "${base_distro}" in case "${base_distro}" in
debian | fedora | alpine) debian | fedora | alpine)
echo "::group::Install packages required for installation (jq, curl, and/or tar)" echo "::group::Install packages required for installation (jq, curl, and/or tar)"
@@ -440,8 +472,57 @@ if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null || ! type -P tar &>/de
fi fi
echo "::endgroup::" echo "::endgroup::"
;; ;;
*) warn "install-action requires at least jq and curl on non-Debian/Fedora/Alpine-based Linux" ;;
esac esac
fi fi
;;
macos)
if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null; then
warn "install-action requires at least jq and curl on macOS"
fi
;;
windows)
if ! type -P curl &>/dev/null; then
warn "install-action requires at least curl on Windows"
fi
# https://github.com/jqlang/jq/issues/1854
jq_use_b=1
jq="${install_action_dir}/jq/bin/jq.exe"
if [[ ! -f "${jq}" ]]; then
jq_version=$(jq --version || echo "")
case "${jq_version}" in
jq-1.[7-9]* | jq-1.[1-9][0-9]*) jq='' ;;
*)
_tmp=$(jq <<<"{}" -r .a || echo "")
if [[ "${_tmp}" == "null" ]]; then
jq=''
jq_use_b=''
else
info "old jq (${jq_version}) has bug on Windows; downloading jq 1.7 (will not be added to PATH)"
mkdir -p "${install_action_dir}/jq/bin"
url='https://github.com/jqlang/jq/releases/download/jq-1.7/jq-windows-amd64.exe'
checksum='2e9cc54d0a5d098e2007decec1dbb3c555ca2f5aabded7aec907fe0ffe401aab'
(
cd "${install_action_dir}/jq/bin"
download_and_checksum "${url}" "${checksum}"
mv tmp jq.exe
)
echo
fi
;;
esac
fi
;;
*) bail "unsupported host OS '${host_os}'" ;;
esac
call_jq() {
# https://github.com/jqlang/jq/issues/1854
if [[ -n "${jq_use_b}" ]]; then
"${jq:-jq}" -b "$@"
else
"${jq:-jq}" "$@"
fi
}
unsupported_tools=() unsupported_tools=()
for tool in "${tools[@]}"; do for tool in "${tools[@]}"; do
@@ -463,13 +544,11 @@ for tool in "${tools[@]}"; do
read_manifest "protoc" "${version}" read_manifest "protoc" "${version}"
read_download_info "protoc" "${version}" read_download_info "protoc" "${version}"
# Copying files to /usr/local/include requires sudo, so do not use it. # Copying files to /usr/local/include requires sudo, so do not use it.
bin_dir="${HOME}/.install-action/bin" bin_dir="${install_action_dir}/bin"
include_dir="${HOME}/.install-action/include" include_dir="${install_action_dir}/include"
if [[ ! -d "${bin_dir}" ]]; then init_install_action_bin_dir
mkdir -p "${bin_dir}" if [[ ! -e "${include_dir}" ]]; then
mkdir -p "${include_dir}" mkdir -p "${include_dir}"
canonicalize_windows_path "${bin_dir}" >>"${GITHUB_PATH}"
export PATH="${PATH}:${bin_dir}"
fi fi
if ! type -P unzip &>/dev/null; then if ! type -P unzip &>/dev/null; then
case "${base_distro}" in case "${base_distro}" in
@@ -488,10 +567,10 @@ for tool in "${tools[@]}"; do
mv "bin/protoc${exe}" "${bin_dir}/" mv "bin/protoc${exe}" "${bin_dir}/"
mkdir -p "${include_dir}/" mkdir -p "${include_dir}/"
cp -r include/. "${include_dir}/" cp -r include/. "${include_dir}/"
bin_dir=$(canonicalize_windows_path "${bin_dir}")
if [[ -z "${PROTOC:-}" ]]; then if [[ -z "${PROTOC:-}" ]]; then
info "setting PROTOC environment variable" _bin_dir=$(canonicalize_windows_path "${bin_dir}")
echo "PROTOC=${bin_dir}/protoc${exe}" >>"${GITHUB_ENV}" info "setting PROTOC environment variable to '${_bin_dir}/protoc${exe}'"
echo "PROTOC=${_bin_dir}/protoc${exe}" >>"${GITHUB_ENV}"
fi fi
) )
rm -rf "${tmp_dir}" rm -rf "${tmp_dir}"
@@ -514,7 +593,6 @@ for tool in "${tools[@]}"; do
snap_install valgrind --classic snap_install valgrind --classic
;; ;;
cargo-binstall) cargo-binstall)
info "installing ${tool}@${version}"
case "${version}" in case "${version}" in
latest) ;; latest) ;;
*) warn "specifying the version of ${tool} is not supported by this action" ;; *) warn "specifying the version of ${tool} is not supported by this action" ;;
@@ -571,34 +649,37 @@ for tool in "${tools[@]}"; do
;; ;;
esac esac
info "${tool} installed at $(type -P "${tool}${exe}")"
# At least cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
case "${tool}" in case "${tool}" in
cargo-careful) ;; # cargo-careful 0.3.4 does not support neither --version nor --help option. xbuild) tool_bin="x" ;;
cargo-*) *) tool_bin="${tool}" ;;
if type -P cargo &>/dev/null; then
case "${tool}" in
cargo-valgrind) x cargo "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*)
if ! x cargo "${tool#cargo-}" --version; then
x cargo "${tool#cargo-}" --help
fi
;;
esac esac
installed_at=$(type -P "${tool_bin}${exe}" || echo "")
if [[ -n "${installed_at}" ]]; then
tool_bin="${tool_bin}${exe}"
else else
installed_at=$(type -P "${tool_bin}" || echo "")
fi
if [[ -n "${installed_at}" ]]; then
info "${tool} installed at ${installed_at}"
else
warn "${tool} should be installed at ${bin_dir:+"${bin_dir}/"}${tool_bin}${exe}; but ${tool_bin}${exe} not found in path"
fi
# cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
case "${tool}" in case "${tool}" in
cargo-valgrind) x "${tool}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option cargo-careful | cargo-machete) ;; # cargo-careful 0.3.4 and cargo-machete 0.5.0 do not support neither --version nor --help option.
cargo-*)
case "${tool}" in
cargo-valgrind) rx "${tool_bin}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*) *)
if ! x "${tool}" "${tool#cargo-}" --version; then if ! rx "${tool_bin}" "${tool#cargo-}" --version; then
x "${tool}" "${tool#cargo-}" --help rx "${tool_bin}" "${tool#cargo-}" --help
fi fi
;; ;;
esac esac
fi
;; ;;
*) *)
if ! x "${tool}" --version; then if ! rx "${tool_bin}" --version; then
x "${tool}" --help rx "${tool_bin}" --help
fi fi
;; ;;
esac esac
@@ -606,7 +687,7 @@ for tool in "${tools[@]}"; do
done done
if [[ ${#unsupported_tools[@]} -gt 0 ]]; then if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
IFS=$',' IFS=','
info "install-action does not support ${unsupported_tools[*]}; fallback to cargo-binstall" info "install-action does not support ${unsupported_tools[*]}; fallback to cargo-binstall"
IFS=$'\n\t' IFS=$'\n\t'
install_cargo_binstall install_cargo_binstall

View File

@@ -21,26 +21,26 @@
} }
}, },
"latest": { "latest": {
"version": "1.2.1" "version": "1.3.1"
}, },
"1.2.1": { "1.3.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"checksum": "579db0cea00c5afab93a957f5db7aea9b762e0a7cd1e882b5b9fdb94fed78471" "checksum": "369247304d05e1f3726dbaa52c662487c9d2449566a92c8fb105f63f6f4e4556"
}, },
"x86_64_macos": { "x86_64_macos": {
"checksum": "50b8090d74b77de12c1dbaa7204476c927c02ee8a5cefddf7959412f72cca5d1" "checksum": "2f9991cb1299a15f2dcaaf08ac354fd3f54cf196946beec6a165c66333e7eb2a"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "8906f2ab674125d73b9cca71db6615fa432b1aa594e6fea7a896b4931798066d" "checksum": "091c21cdee2b8a24af63590b0689a1c82cfda781d97548f629400cc4f68bf3d7"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"checksum": "b847dd62ea44b9bcf55a267ee247c69fbe678f291bdf1705ed3565425f6a5cf5" "checksum": "d9fc8f9a250f0f34c2b1a8155352db9889250742658d5ac4c53a8d94e1719da3"
}, },
"aarch64_macos": { "aarch64_macos": {
"checksum": "faedc148029f30496438548b7e7a4583f0cc7fe14e61e8b838df83c5a47a32c8" "checksum": "ae64628dc15c8474b74af8bd416434f9a669b477293da63814eeef466627f939"
}, },
"aarch64_windows": { "aarch64_windows": {
"checksum": "6809ae3c7f35232ea1c2f2bbaa2bb1aa7493764cbd8445416a801ab781f83d0b" "checksum": "26ee1952efff16bbca277ba8c705b58d1a850185fc9622a31a1a51501395b83b"
} }
} }
} }

View File

@@ -12,7 +12,21 @@
} }
}, },
"latest": { "latest": {
"version": "0.3.4" "version": "0.4.0"
},
"0.4": {
"version": "0.4.0"
},
"0.4.0": {
"x86_64_linux_musl": {
"checksum": "54cd7e1972e9faf085e3d0798c02054d064bc72de051a2636ece6f5b0ce0176d"
},
"x86_64_macos": {
"checksum": "70d92ad8adf84192caa2066ba981780df926c8aa6cbd398fe489f87af336fe61"
},
"x86_64_windows": {
"checksum": "01ebcae79d9ba0cbb56e5c6bb5757d9cd074a3635704d15b0ef62a000c5d03a8"
}
}, },
"0.3": { "0.3": {
"version": "0.3.4" "version": "0.3.4"

View File

@@ -19,10 +19,24 @@
} }
}, },
"latest": { "latest": {
"version": "0.14.1" "version": "0.14.2"
}, },
"0.14": { "0.14": {
"version": "0.14.1" "version": "0.14.2"
},
"0.14.2": {
"x86_64_linux_musl": {
"checksum": "5a4913ae3ce1298bd96d29b794ed245b0394f5ec0e2802f19d41fedc70bb5c3c"
},
"x86_64_macos": {
"checksum": "89c80839cfbb87bb8b0e4a1d55d638b79d0d9cac8fa53c0cbbe8fe271c8abcf4"
},
"x86_64_windows": {
"checksum": "25e59c4916a4e28d507185c6783051d0e0824d6e5af5737560be7bcfb1fc7af3"
},
"aarch64_macos": {
"checksum": "c1af65dac2330777744513430200d52cb615de9bef2fdb88cfec1a2e9f87c5f9"
}
}, },
"0.14.1": { "0.14.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -11,10 +11,34 @@
} }
}, },
"latest": { "latest": {
"version": "0.6.4" "version": "0.6.7"
}, },
"0.6": { "0.6": {
"version": "0.6.4" "version": "0.6.7"
},
"0.6.7": {
"x86_64_linux_musl": {
"checksum": "d5c4b78a4e660184fd32f017efbee65015ec86c041623b320c23bb87764e37e2"
},
"x86_64_macos": {
"checksum": "ffa03e78bdc71efd53c1fcbd16d92be0a79c1092de03fd43320db2a3b3800950"
}
},
"0.6.6": {
"x86_64_linux_musl": {
"checksum": "daffbfae6caf0e1c40b53cf33569074e4b1b80b8697e27f91eecd9a0a1f85809"
},
"x86_64_macos": {
"checksum": "ac0d058aab49ab751e072f1978972c22ffa195d68af43d04a9a801bffabbaa16"
}
},
"0.6.5": {
"x86_64_linux_musl": {
"checksum": "250a165b843022ee5e1a356a791f832bf2051a11ba97a9de531060bb98f7bdc0"
},
"x86_64_macos": {
"checksum": "6074cd8dd9ddf553f6915a0dd2c183bf7dd233bfd78322b8db2b421fb1a89a81"
}
}, },
"0.6.4": { "0.6.4": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -2,7 +2,244 @@
"rust_crate": "cargo-hack", "rust_crate": "cargo-hack",
"template": null, "template": null,
"latest": { "latest": {
"version": "0.5.29" "version": "0.6.8"
},
"0.6": {
"version": "0.6.8"
},
"0.6.8": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "0e99e6ecf6f04cfeb7bd126559f94c7d54c891cd6609fc2d5e6b327da9178069"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "f21d6c824bc9cac5c174fa61b8375df35f3c022a19eeefd7156dcaf99c18cb94"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "d3cedb628d4bebfbafd4ff83e47bc5185a0a907c721ab0013af0dcbf0cad7c53"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "ea6e74180776d0908b21d938515e4a04fcdcb02d564bf08e397dc7191cbce524"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "9486a0e12919c667e17b9fd22e43c6449369ebeca0e705ed372090e87610e8fc"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "946a28154a087ee4c1835327973e3e914d90d9e4840bf67b22422f2b634aa214"
}
},
"0.6.7": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "af3f992ce3bc2f766e1dedd91777b00839760d2571abc3d85f6c6b8a8c743ef8"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "c92a155df6839a17e8b167c6a1d0e5adb55a21623186f9401a151b3b478c041b"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "3817eed7255cf9683cf9fa580e067584a062cb7029a73b7057de24c2938d1783"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "decd3237e11fef4d4b30052405905d549d05b9b09c3efe87d45a6f96abbcd460"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "e36fdcdf6b5064f84837acf3616cac1f191ba7af8f4c6bb599d3eb541cc712fb"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "0aac8f8cb2b3a0e6158f42318b429bd2720ae55f15ca05477e4268bd3a8c16ea"
}
},
"0.6.6": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "c706770f61c4dcf3dfc0c87125b443306787032c50bf61d30724bac620846a48"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "d5a619778858d18d4ef3b291012b709b509a79ec66dad41590c692d5f35a30c8"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "eb56fab90b784fc668e9c25cece9967d296026a24c79db571f7420aca7bd956d"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "a5d8a424c30bc3b3b6b9e44aa3810d5995dca7e648bfe2f139ef0af14ad8662e"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "aacf5cebfe7523ba1a610192bd76dcccfbea1b16aa8e8bd3ed8356abd5809980"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "329f030f530bb65290150e4bf282065ecfe4f988aee6763fb87720e0dc60b4c9"
}
},
"0.6.5": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "767c91d80cacf9568576d9263b8801d4c38a245c472ac3c58320b15824539a74"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "20530649af2bfa2620368b6a111e5538f9306c4f64a65a1e6dbbb32a7a291b8a"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "82731808c811daa55021e8a463884c3d1fa3ff4af67fdfd1b0f8db9936ec91df"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "743fe76f2115bedf6f5a86784ea254c105f171aeeb75e5f2845d6aa83be7319c"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "3a9ab29db73449b779656199ae645d7b4a3e055e22ee6fa056c7ec61cd57cb87"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "2bf9b10a41ce7585fa60b1be8424283433eb000c542652145d89d95be7a6fc99"
}
},
"0.6.4": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "f50d28b566a270c49cd5d44fca3badfc0279bd681e9788872c875f81f2125ca0"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "09502a5e1e66457cc98f114e3ab80ace837c42ca20d12439b45ca09febeada05"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "5e5f61e74ae060b5ff1aeb0ee593a63762ad5e57fe9fbd56d214af96e8b79db6"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "0b3cf069d1e433882f800129b288e76f8b0f4972e2f5d2746a43f5976b3f234d"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "01e237e764b098d1a482e4fc31c2aa1a64d6756e885421a95faa5578cfdd2a50"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "af68ead95d98a18750da188259678ce53f8cecae8fb7109ae0c631161da8406e"
}
},
"0.6.3": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "b9515accb2c8984841a152f860d6c7c827ab4f91c4e5012d86ef7c44f319bd41"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "c144b7912bbc9089c116d7c4610c4fc221705af93d6994c31314663bba47785f"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "a34b31594d58e3ca17e00e1e0837990461570b6382c3ac7e72fbb7c873b3e9f7"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "c8ee443bb05cd8551b2d9d93befbe7a8f0994a128bc33125cf97da443077b579"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "279e5cbbcbbe607ac5c81f204f0ae83a62132476fa1ff53f0d8ec24d879bf7f2"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "63a9df0cdad068b3124a858aa3d47c93513caaaea0efc61befdb0091efefb64d"
}
},
"0.6.2": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "322d1a965c94656e7b766dbdf4f5726372fdd8ac3b98b7aa3fe0b50dd4892be9"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "a6713d40d955691b0efc48d77f42a9c58f740e9036eb052a4c5b8843477054d3"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "a3146a6454e02a41c56676ed96ddf5acab6ff97117a8a52c19432756dc268396"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "305b59c9d89fa76ea91002894cea58e296c062da896a2784c04a39305221079b"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "860b867a047c8d89aa2b0adb12d6ff085190bde80516a49be6e2cad4cc298bc5"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "73c04e1670b7d7d7696b81ccdc1ea27f7ddcc8028883cf5b5df8edcda61b899c"
}
},
"0.6.1": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "85f79339499995238287591c86b9ddc9aedf6c4c03f771f9aa7ed0b97dc6da0e"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "c92fb2bd0351e4ac6ea087e5169b5fc56bc03c9afc3c8a299c21aae8ecda8067"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "532a25b327dd4fcd9529cc0b2e47caa7919f15d2e40a7477c34a39f40dfea54b"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "4855ea417b54abca02d0fd076fa1cfffd2068ac2f4abbafc52261a7fa2a9ebfa"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "fe3c9126fa64f7ef60a9a4e78c77f9741f9848221cc44c43f9346a7f9b268bca"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "0c6c21cc1e11c7f2794a4e7c800d2459148a7db33dc162af7c2ccd057ca38ee9"
}
},
"0.6.0": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "c1a539de7f0890527d6ecd87c0ac73097921a0cf071ded9a3cf60e6c387ba69d"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "41fd4566cf743ab06a46ee556be251e8948b1ecc316b2e61bc25ecc818cfaf91"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "a29683e96871938cb7b63f8389f6a7f6b48b10b40999a5f6b6b3abb0988b3b9f"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "f5156e8522abd9c2545425ed251da6411bf824b5d94cb0000e0a90153c78b8a2"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "c8292ab17351307d71fcbe68dad39e0019227b89c3a73dc4a0d6db8ca0b2663e"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "9d7ca4e2c0530ad966662a56dd7b8b211cfe1067c4e46813ff82f18476dd24f8"
}
}, },
"0.5": { "0.5": {
"version": "0.5.29" "version": "0.5.29"

View File

@@ -18,10 +18,129 @@
} }
}, },
"latest": { "latest": {
"version": "0.5.26" "version": "0.5.33"
}, },
"0.5": { "0.5": {
"version": "0.5.26" "version": "0.5.33"
},
"0.5.33": {
"x86_64_linux_musl": {
"checksum": "3274fb95c5d7ab7dd37db6b75e77b666c6fc06b0bd0172e7923af95fe77711da"
},
"x86_64_macos": {
"checksum": "e890a29534e8a10439bd8c8fccd39867d2cb016f82d7b51e615c60caf67491b7"
},
"x86_64_windows": {
"checksum": "332004d47ad0259fbc077c3dde2fe7f7b51dadcea859ccc33759bc149a38b777"
},
"aarch64_linux_musl": {
"checksum": "dd6deacc791de61dc31e45537bf2e7c9c8c652f51e06357d4a700ec7e81188c9"
},
"aarch64_macos": {
"checksum": "8bc5722370884500381eae586910b633f2a215cd5b5feed31d67682e90bd8412"
}
},
"0.5.32": {
"x86_64_linux_musl": {
"checksum": "2709f1c132eac8c3e1e98f658e2f8fd79f71f0a72b373491aad9e92df3b6684c"
},
"x86_64_macos": {
"checksum": "d56c7b8d5ea02196b8682d242440a400566583f724dee9c9832a99ed9734fa0e"
},
"x86_64_windows": {
"checksum": "194ec6f3657edab3c5f9a4d7a5bb2ab614084d7484f69274d02798fcd2dbea0c"
},
"aarch64_linux_musl": {
"checksum": "2274d691284e4de55fa0a0fd4e7b5003db21f7c62d72986586a81a169cafd7ee"
},
"aarch64_macos": {
"checksum": "7893b26db568ce0c606c0b07cad52659abf2ee488d385581e166fa20924168e5"
}
},
"0.5.31": {
"x86_64_linux_musl": {
"checksum": "f3814f9446f441c8b280ca93ba5aaf211295a6c8363d52e03d7e700808e6692c"
},
"x86_64_macos": {
"checksum": "9cd643daafc0e868c5c284a68cefb57fbc3bb2a11e8c59e54e738168bc691126"
},
"x86_64_windows": {
"checksum": "392cb5e11eaebd21f7ae865807837d0ab54df86e7ab5f98d3bf5b3cda65fea93"
},
"aarch64_linux_musl": {
"checksum": "0261bbfa0bd49964ca3dbd3041ec3fe5b23efd62b51e794bf516cc964af24079"
},
"aarch64_macos": {
"checksum": "9b7e2cb8fbc6694c2a0fd2abb7867108447c39350ca0fd3688a1b991877dff69"
}
},
"0.5.30": {
"x86_64_linux_musl": {
"checksum": "6731e8d7767145debb825095ab3ab7b9ab25cf7f5a10d22d17c1ef4566fbf249"
},
"x86_64_macos": {
"checksum": "9f634e2bed2dff89ec21177daf8abc1d55c1cca07e73d52f70b796f63a7a3d52"
},
"x86_64_windows": {
"checksum": "60dd774010ae493d17ca052f33d4976f5fe13e462d5b0f731a6c5e39de7475e8"
},
"aarch64_linux_musl": {
"checksum": "87718e164f6206fe4b2cf9b600bcafa1b582f22509820147f1060569e1d9217c"
},
"aarch64_macos": {
"checksum": "58d6295dffafdb920a1096635f9dd5334e5911d3e27cd7bccb0d2d9f99cc86b2"
}
},
"0.5.29": {
"x86_64_linux_musl": {
"checksum": "963ef54eca8296c4c112f0453b9bc36e5103ab1bee2b272abeb1e3474ae4aab8"
},
"x86_64_macos": {
"checksum": "be124539c0a1cc99124b28bda4fa916b5189a706fc975add13c4299f74d31237"
},
"x86_64_windows": {
"checksum": "ac70d70ac560a433276b6037f684044fb66627a8ddab38fe999599951d075845"
},
"aarch64_linux_musl": {
"checksum": "5865b9f03bbc6684731eaaa2ae512bf85dc11ee409e25e77882f4183af1ac03d"
},
"aarch64_macos": {
"checksum": "e05bf23c4d8b0af4b3127e10cf3484ca107e32a808e1cab48e417a14d3542edc"
}
},
"0.5.28": {
"x86_64_linux_musl": {
"checksum": "2e615725d904a4372f8613b8fc2012f392e22e8ce1190b3ad38a63ef25958f9e"
},
"x86_64_macos": {
"checksum": "56cc1e4c456b560608edea0871b7d5c0f6b61abe2eab6dcfdf66ef5dc32849c9"
},
"x86_64_windows": {
"checksum": "60d1c6253a6ac1d33127d22f9520237229422f9c91102e02134d9ec2f40d21fa"
},
"aarch64_linux_musl": {
"checksum": "a944fb36384a8baf9625c26f5232a82e344be38075be9175d50acf1128c418e3"
},
"aarch64_macos": {
"checksum": "035f1d632073d90d4b7986e9392b6659552d83759e154697d6032d2eb5fb7557"
}
},
"0.5.27": {
"x86_64_linux_musl": {
"checksum": "74e554fb069ee0410422158d293f91eddf1f126c59801df5474d79c39c6c63af"
},
"x86_64_macos": {
"checksum": "8f86128ef90534f1ccdb033ec05f37447e5861eceacb12871598a9f7b1097a1d"
},
"x86_64_windows": {
"checksum": "f9f0eadbe325594dc5b45cf226fa8c738635539a6a93fce39783876c0f6b4344"
},
"aarch64_linux_musl": {
"checksum": "20161f2a1f8322ec98281bd818219a9c9cb4744b2dbe95bf073af29b1e47cc83"
},
"aarch64_macos": {
"checksum": "43ad8e2bcd3a394f08c6e1582253ea759b611b0b94774933b7ebcc91a23f82e8"
}
}, },
"0.5.26": { "0.5.26": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

107
manifests/cargo-machete.json generated Normal file
View File

@@ -0,0 +1,107 @@
{
"rust_crate": "cargo-machete",
"template": null,
"latest": {
"version": "0.6.0"
},
"0.6": {
"version": "0.6.0"
},
"0.6.0": {
"x86_64_linux_musl": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.6.0/cargo-machete-v0.6.0-x86_64-unknown-linux-musl.tar.gz",
"checksum": "8f7f67f87c80d8ee331857e61c03762b71f9e68266a9193f4934cef1c8ccb449",
"bin": "cargo-machete-v0.6.0-x86_64-unknown-linux-musl/cargo-machete"
},
"x86_64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.6.0/cargo-machete-v0.6.0-x86_64-apple-darwin.tar.gz",
"checksum": "dab6a9127166b8889a1933864014664288e16a211a2e3de65585d69b18b84bbf",
"bin": "cargo-machete-v0.6.0-x86_64-apple-darwin/cargo-machete"
},
"x86_64_windows": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.6.0/cargo-machete-v0.6.0-x86_64-pc-windows-msvc.tar.gz",
"checksum": "4e3369fea5e87bdab2d4219dd07b69fa562a7b0081433464ead82dced36f3af1",
"bin": "cargo-machete-v0.6.0-x86_64-pc-windows-msvc/cargo-machete.exe"
},
"aarch64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.6.0/cargo-machete-v0.6.0-aarch64-apple-darwin.tar.gz",
"checksum": "c4957bade3109f147ebe1598fa8f0b555713bbe83310cd99c927fa25398ae847",
"bin": "cargo-machete-v0.6.0-aarch64-apple-darwin/cargo-machete"
}
},
"0.5": {
"version": "0.5.0"
},
"0.5.0": {
"x86_64_linux_musl": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.5.0/cargo-machete-v0.5.0-x86_64-unknown-linux-musl.tar.gz",
"checksum": "1ce5cf9fa24f6861a14318fb96db59011865d0adf979c2240d006407815ca174",
"bin": "cargo-machete-v0.5.0-x86_64-unknown-linux-musl/cargo-machete"
},
"x86_64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.5.0/cargo-machete-v0.5.0-x86_64-apple-darwin.tar.gz",
"checksum": "0550b85e43905fe8bfe0e83cb04d220a80f7aa898aaa3be0fe7a96f8ffd5e7f5",
"bin": "cargo-machete-v0.5.0-x86_64-apple-darwin/cargo-machete"
},
"x86_64_windows": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.5.0/cargo-machete-v0.5.0-x86_64-pc-windows-msvc.tar.gz",
"checksum": "fd5ebb959cc214e8dab2661c65562eb0ec3d1da72d5f5a746f6bb6111b1854f8",
"bin": "cargo-machete-v0.5.0-x86_64-pc-windows-msvc/cargo-machete.exe"
},
"aarch64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.5.0/cargo-machete-v0.5.0-aarch64-apple-darwin.tar.gz",
"checksum": "0386aa9ace17f6d96244b1315f8e996325ab81584a37fd3bc1d300a84455e55f",
"bin": "cargo-machete-v0.5.0-aarch64-apple-darwin/cargo-machete"
}
},
"0.4": {
"version": "0.4.0"
},
"0.4.0": {
"x86_64_linux_musl": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.4.0/cargo-machete-v0.4.0-x86_64-unknown-linux-musl.tar.gz",
"checksum": "92e77b38b91e30e9d7383779b71035c5eebd8d874e1683db19239062d0dd1000",
"bin": "cargo-machete-v0.4.0-x86_64-unknown-linux-musl/cargo-machete"
},
"x86_64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.4.0/cargo-machete-v0.4.0-x86_64-apple-darwin.tar.gz",
"checksum": "db1f036bafc424af7247aa27748c08b3174b85b414e774cad51689f3e01ec64e",
"bin": "cargo-machete-v0.4.0-x86_64-apple-darwin/cargo-machete"
},
"x86_64_windows": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.4.0/cargo-machete-v0.4.0-x86_64-pc-windows-msvc.tar.gz",
"checksum": "0c31b0b4d7a3092dc84375d3993947cbdbf9db7f4d81128aca8a13e268cfe49c",
"bin": "cargo-machete-v0.4.0-x86_64-pc-windows-msvc/cargo-machete.exe"
},
"aarch64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.4.0/cargo-machete-v0.4.0-aarch64-apple-darwin.tar.gz",
"checksum": "5f8a3004642535c78d2b7a49cb0e1fc6287643bc5c52d10e77ae3e79b558e190",
"bin": "cargo-machete-v0.4.0-aarch64-apple-darwin/cargo-machete"
}
},
"0.3": {
"version": "0.3.1"
},
"0.3.1": {
"x86_64_linux_musl": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.3.1/cargo-machete-0.3.1-x86_64-unknown-linux-musl.tar.gz",
"checksum": "d5e15a4c1926296746e0da4d52d8c7203acc1d453c8874c6b6f56a0ae52d4d87",
"bin": "cargo-machete-0.3.1-x86_64-unknown-linux-musl/cargo-machete"
},
"x86_64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.3.1/cargo-machete-0.3.1-x86_64-apple-darwin.tar.gz",
"checksum": "83431f27f24f59d47385497d1a19ebe7c6e32f36dd163d804aa5b1337ca1489b",
"bin": "cargo-machete-0.3.1-x86_64-apple-darwin/cargo-machete"
},
"x86_64_windows": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.3.1/cargo-machete-0.3.1-x86_64-pc-windows-msvc.tar.gz",
"checksum": "28aa111b283bc97f9259b0644b99e0109dde6414a5a672e00347d8cbb6e83804",
"bin": "cargo-machete-0.3.1-x86_64-pc-windows-msvc/cargo-machete.exe"
},
"aarch64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.3.1/cargo-machete-0.3.1-aarch64-apple-darwin.tar.gz",
"checksum": "3ac0cee2102d74c71c831af1c7b8e229b254d3318927baed340728ddc61a10a8",
"bin": "cargo-machete-0.3.1-aarch64-apple-darwin/cargo-machete"
}
}
}

View File

@@ -19,7 +19,38 @@
} }
}, },
"latest": { "latest": {
"version": "0.36.13" "version": "0.37.1"
},
"0.37": {
"version": "0.37.1"
},
"0.37.1": {
"x86_64_linux_musl": {
"checksum": "6a4fbad3d519e6189772dd0b0d16aa137c8208e7492576ff11497645588459c0"
},
"x86_64_macos": {
"checksum": "a8dea1a7f8bc1e7e35bc14dc1cde15a2e122db1ee2ed8dbb787b5d4e33a19f12"
},
"x86_64_windows": {
"checksum": "531677bf6322139e694da4f37c5df722566675b32a020b7e0f37d4ec5d456052"
},
"aarch64_macos": {
"checksum": "b074fedfb6282b846e047a6336920d2d1bb65c6aa25ce03aa4465615e83a407d"
}
},
"0.37.0": {
"x86_64_linux_musl": {
"checksum": "ea7d52e9847c38f5aec60cd8e2f66fd90a9284f1e06fb25b3ef1276acb5251d7"
},
"x86_64_macos": {
"checksum": "3265730662da54c91002fb4d7deb93c61c46d05f937f751764f3625c22ead87a"
},
"x86_64_windows": {
"checksum": "09041e88db9ec51d2c93448ed4b16f78f0e838ee6e549b0139a71ae30cdc5239"
},
"aarch64_macos": {
"checksum": "8df5efcc19246c8e8fed753ad05f1d95efd2b9ecb84e3f306a36b8056ae631b9"
}
}, },
"0.36": { "0.36": {
"version": "0.36.13" "version": "0.36.13"

View File

@@ -21,10 +21,130 @@
} }
}, },
"latest": { "latest": {
"version": "0.1.13" "version": "0.1.19"
}, },
"0.1": { "0.1": {
"version": "0.1.13" "version": "0.1.19"
},
"0.1.19": {
"x86_64_linux_musl": {
"checksum": "ba393e37118a7f55c47cb14099c0554d5e5fcb3f4bfa422b608e00efb7bcefa2"
},
"x86_64_macos": {
"checksum": "dacffa0bf0b3e6fa1b587e82084bfbf8f74171240d50ecb3309a832f2e43f8e3"
},
"x86_64_windows": {
"checksum": "d6be0676301f3c6e6ba41f72a22e878b6e53a1a94cb6fd8a888cfa8fc8be4301"
},
"aarch64_linux_musl": {
"checksum": "fa5abed03b435bd6b70543f370fdc1c834611041b6b467d972bbec95aee1f9c1"
},
"aarch64_macos": {
"checksum": "376e4aa8f37ffacfd68b1f69fc0aa6ed7dc8f95bf5cc625fc054cc040e2ddd53"
},
"aarch64_windows": {
"checksum": "cde5b7a04a80e465e3ed677ecd75182f9d38e67db0b782d62caeb5f874c34f8b"
}
},
"0.1.18": {
"x86_64_linux_musl": {
"checksum": "d1cde56ac778d61f2179045d9f9f8086afabb1b5a371a35d82000a8cb7b9f150"
},
"x86_64_macos": {
"checksum": "307f516b0353132fa420e19eff3aae7f83ed84273eae5447752f886c23134bcc"
},
"x86_64_windows": {
"checksum": "bd4f276b0c115613992d9fa0ad8dd688828c5bf47c8b91a617638bb170549d7f"
},
"aarch64_linux_musl": {
"checksum": "efc430279c656b7c58965f41c82688ee10d84d4e5bfd193d3f7858d83db98982"
},
"aarch64_macos": {
"checksum": "b398d09d167b3fa253c835e56876151b59804ba083d9d6b4978d55bac767b692"
},
"aarch64_windows": {
"checksum": "a26eeef963905cc14de9dd1e11c8d6a7a1a7db812a040de37e3cdbef74cc546f"
}
},
"0.1.17": {
"x86_64_linux_musl": {
"checksum": "dbab6188ceca0396f80d6f6d931704568377fe5cb2985e3af54b73be721c1826"
},
"x86_64_macos": {
"checksum": "44134caa5b7a88bff8923c2616c4bc3e940b66539ec7d9bf47775f61873d4fc9"
},
"x86_64_windows": {
"checksum": "954948921af804f309368c587a38089a132225434be14d1f6a38f0140f39cb7b"
},
"aarch64_linux_musl": {
"checksum": "5317743fe7f1306f844062fe05c5777880219bd47a32047f5d9e7c5924b140ec"
},
"aarch64_macos": {
"checksum": "1550c655792cb18b03b6d3bec8ee74270eadb891c2f06b98c775134dd71b3801"
},
"aarch64_windows": {
"checksum": "fb81001414eea31810aa84943f2cf22d7f423b20170d1350534c04a3fc934344"
}
},
"0.1.16": {
"x86_64_linux_musl": {
"checksum": "30dc1bc067c6ac347bd0734a3117c0519e7ae715021d56952be3e207ed918447"
},
"x86_64_macos": {
"checksum": "7b81508be9bb73cef8caa8b1b09113eebd1897356aa371246572c4fa6d4b19b9"
},
"x86_64_windows": {
"checksum": "7d36c36b5069d1267ec5c485f904382db16c95b6a78288e3853687ec8691b013"
},
"aarch64_linux_musl": {
"checksum": "c42cba95957e6cea55800658367f59c709205d2888a0728817f15c95c6ed257f"
},
"aarch64_macos": {
"checksum": "27090dbcb9d3046eadc7add438748fdd0795b5caddb985614f5dbcc791902b27"
},
"aarch64_windows": {
"checksum": "0b727650f83886edf5ad8c97d2389273145e367df88f82f712de9b81f366c8e4"
}
},
"0.1.15": {
"x86_64_linux_musl": {
"checksum": "eac1436f7aa50bc34dd2675d97e9cfca6bbda1c9283be0185dae1e9c1c08cec6"
},
"x86_64_macos": {
"checksum": "658581d9ec6c82355c7472d25712eaa0acf048d5cd4a57382bd4a5ba73f212d3"
},
"x86_64_windows": {
"checksum": "b673c444480ca6f6fc983bda35953c2e15a40f484a682c805fbad963dbc02c41"
},
"aarch64_linux_musl": {
"checksum": "accbd49853bc706f9ab330342baf2ff0d2db8f66c26b76b9e6845b911511c2e4"
},
"aarch64_macos": {
"checksum": "4f9ae0aaddf0cda388461e246ac7eadbd0cc326eeb3a28d4ffaf1aa8b509d7d2"
},
"aarch64_windows": {
"checksum": "827c626f40bead527d6eaf7b48017cfd8f559938c370c893ab00c51d3668b37c"
}
},
"0.1.14": {
"x86_64_linux_musl": {
"checksum": "f7284ada48677bef2acb9348a6bfe86705246b57681db178a28634e25c61459d"
},
"x86_64_macos": {
"checksum": "d5121056830331b512e3648f7edca3d86cc84e1621f2d3369d24bef549b2c0f0"
},
"x86_64_windows": {
"checksum": "00a478f561c25db3009d14aba8d0dc8a9e5c9e4f114fd9522a6a09e5de289f55"
},
"aarch64_linux_musl": {
"checksum": "8915fdcde61536c740b885ce83cd2f38a607bf5d7121d8535e8be43bd820b0d6"
},
"aarch64_macos": {
"checksum": "7c737c7ade8f4080d04dacec82b9b94752d3b98fd179a2f51af986fc26d273ba"
},
"aarch64_windows": {
"checksum": "d87025a5881f0c24ecb52061bc0b3c7fca9ca7beee3b75566392dce759ecd7a5"
}
}, },
"0.1.13": { "0.1.13": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -21,10 +21,90 @@
} }
}, },
"latest": { "latest": {
"version": "0.2.3" "version": "0.2.7"
}, },
"0.2": { "0.2": {
"version": "0.2.3" "version": "0.2.7"
},
"0.2.7": {
"x86_64_linux_musl": {
"checksum": "c513030b5c33de29c5d414801a61c64ceca9f58b3a021cd41339e13ef3335abc"
},
"x86_64_macos": {
"checksum": "88ce1a4a6fafbce491cb9037af499ee7dc85a6d3ac7f3c0592114a87782ab90f"
},
"x86_64_windows": {
"checksum": "ff6814dde2441a5c4ca60a5cf0571e907a5691fb4cbdc3dd0b32bb33966bafdb"
},
"aarch64_linux_musl": {
"checksum": "20b5a9e7936fe855877bb6d55090600f42bcf5ef2d86c720ef59e0a12864bd7b"
},
"aarch64_macos": {
"checksum": "8d408a5c9d8276e4e168b92b4a41c9e80bb352eabd431f93e8c147377b637328"
},
"aarch64_windows": {
"checksum": "2cbfa80772909a7195db75713c170f3b91afe8b37b7c7917ccb893b977545c24"
}
},
"0.2.6": {
"x86_64_linux_musl": {
"checksum": "95a00b9a7bac659c273422f68e6bb38e9e69fc0d1c163552ba7bebcf8c4915ee"
},
"x86_64_macos": {
"checksum": "412afe1fdc554ffdc155ba89e573b5c44cef8e5417440f29bf9ae4e9452bccb2"
},
"x86_64_windows": {
"checksum": "8d818e8d66bf5bfea09070377d7f7830d888cf45392734abecb18ab75c837060"
},
"aarch64_linux_musl": {
"checksum": "dcb7de74155818329078f4e0693e71c684e8088bd411bd9c310d40291540b60a"
},
"aarch64_macos": {
"checksum": "e45592ea2e8b9b1e8c00fea545543d5b62229e6159a32f1c11000c2cd680c693"
},
"aarch64_windows": {
"checksum": "7d35cbcf17b3114313f4cc19dbce84fcc51cb3949c0bc1f48110915a8aaac919"
}
},
"0.2.5": {
"x86_64_linux_musl": {
"checksum": "4c609f8d62669a8ecad8a83769e3a3adf5faab94820e69fd73473a37bfd39be4"
},
"x86_64_macos": {
"checksum": "82aea3272e74f49f10afd04f8e7451831408b006dc97a6d36b56bb81bfe862ec"
},
"x86_64_windows": {
"checksum": "a91f0c5f46b479c8e9ff84469a2e9dc5252301696db25900688b8180fb6436a5"
},
"aarch64_linux_musl": {
"checksum": "049696e69c9a1ed571dc93377e944c37e0c886517bc517a84de03a9591b0e013"
},
"aarch64_macos": {
"checksum": "125813b967068757faf1f9733ef018de0850a5e642e86d436b47b317202244ea"
},
"aarch64_windows": {
"checksum": "1cc8c6d9b2dc7619c45dd19fadc5f7465b8993d3242e402bdaac6eb5026bd500"
}
},
"0.2.4": {
"x86_64_linux_musl": {
"checksum": "5dfabc9d10e6eefb6c4847307c7b757a0c5ff20bbc55ba4c156e8ca941130122"
},
"x86_64_macos": {
"checksum": "1e3f1feed216477022ed2fcdff2019de896d6d179e432722009f507822028979"
},
"x86_64_windows": {
"checksum": "09ca80f82b52ed1cd312d5aa2901c4b12b25ad557c5e39e40566de62914cfc7c"
},
"aarch64_linux_musl": {
"checksum": "f358eb55bff29666df98b8b850f44c1dc47fd4f1c35c3f91bfe7173090afeaaf"
},
"aarch64_macos": {
"checksum": "b181d0ec01a93ba4909a8fefd9d4d533647448046fbae28fc81edd902d0658f1"
},
"aarch64_windows": {
"checksum": "a19cddb696f1bb0890c3d26cbe5cbdc12d3a489126941bb10b7fe4f48f6a4b64"
}
}, },
"0.2.3": { "0.2.3": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -18,7 +18,27 @@
} }
}, },
"latest": { "latest": {
"version": "0.26.1" "version": "0.27.0"
},
"0.27": {
"version": "0.27.0"
},
"0.27.0": {
"x86_64_linux_musl": {
"checksum": "b0cfcb086131773fb8a6a2cf8090c9416a8f233c2ae4bb887500f4e17d39fe7b"
},
"x86_64_macos": {
"checksum": "84c77137ca762c0cda3d4e8330ef3312efe72220da6470e8d657e5e545a11d2b"
},
"x86_64_windows": {
"checksum": "0114eef8cdb3c8466861dd64d7e16fd430cc0380406f230e16aa9e9c32af45e4"
},
"aarch64_linux_musl": {
"checksum": "6e4f5bc5adafd1730c82ec816b89279d5cdb8255180488fc560e646bef624687"
},
"aarch64_macos": {
"checksum": "375e7969d10faf76ec2ec29d11cbfa266e268357514cd05ed2a24554df7a8183"
}
}, },
"0.26": { "0.26": {
"version": "0.26.1" "version": "0.26.1"

View File

@@ -31,10 +31,30 @@
} }
}, },
"latest": { "latest": {
"version": "0.1.41" "version": "0.1.42"
}, },
"0.1": { "0.1": {
"version": "0.1.41" "version": "0.1.42"
},
"0.1.42": {
"x86_64_linux_musl": {
"checksum": "87566d3ef73ab818f64b078de211772b488a536e502b0cadf52d0aa72c98df4e"
},
"x86_64_macos": {
"checksum": "2bb16d6f823e76bae2c80f19327d80defdbad94da56af215a113fdb1ca2a723b"
},
"x86_64_windows": {
"checksum": "2042993093509a11f4f630f4d3dc0a1d48694f15890d6d2fbe1a8c3b1e1662c7"
},
"aarch64_linux_musl": {
"checksum": "c9d93d0114dda2f4992c284ab61a3be57aee5e02cd9a1a9911cfe7c4a93441f8"
},
"aarch64_macos": {
"checksum": "6ba990fea6cafbb305f731c903903aeaa730dee35afd93b4e9ce0efac1fc5d92"
},
"aarch64_windows": {
"checksum": "9e8fda00a0e495a0ed38a327379076ab305041b2fba65649dcb7dd5821463680"
}
}, },
"0.1.41": { "0.1.41": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

22
manifests/dprint.json generated
View File

@@ -21,7 +21,27 @@
} }
}, },
"latest": { "latest": {
"version": "0.40.2" "version": "0.41.0"
},
"0.41": {
"version": "0.41.0"
},
"0.41.0": {
"x86_64_linux_musl": {
"checksum": "a22a0b771327e14bcb2508303502fa325bc85b2ca1c099ec49324c736be37fad"
},
"x86_64_macos": {
"checksum": "28ef80b29135b428c4b87d0b6468b9280f2dea97fd4bada27cf247c7b8870f2f"
},
"x86_64_windows": {
"checksum": "f0416f1418d512066178c123daa5bf3dc061bcebd3e344906087762e3e6bc250"
},
"aarch64_linux_gnu": {
"checksum": "736bae33b5ed619eafbb5f6bdf65f5806f728a7b51e229ba6732afd3117b8f89"
},
"aarch64_macos": {
"checksum": "3edb4521887bae5afe5ced25b5a540fc0f889b61cd335b3b4aab80b4d391981f"
}
}, },
"0.40": { "0.40": {
"version": "0.40.2" "version": "0.40.2"

72
manifests/protoc.json generated
View File

@@ -2,13 +2,79 @@
"rust_crate": null, "rust_crate": null,
"template": null, "template": null,
"latest": { "latest": {
"version": "3.24.0" "version": "3.24.3"
}, },
"3": { "3": {
"version": "3.24.0" "version": "3.24.3"
}, },
"3.24": { "3.24": {
"version": "3.24.0" "version": "3.24.3"
},
"3.24.3": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-linux-x86_64.zip",
"checksum": "fc793561283d9ea6813fb757ae54f1afea6770afcd930904bdf3e590910420aa"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-osx-x86_64.zip",
"checksum": "13b45cdcde9b2101e982de897d5490cfd81dfa181605749c23982379ba0e3288"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-win64.zip",
"checksum": "c8f8c87e2eb6ba1e45f1f0b7b6c17f129309fff421c04290e272de1f7defd8f1"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-linux-aarch_64.zip",
"checksum": "77a5a41f3e9712af6a35de13143b9b2b77f075aa1ab18a63cca4483b30f6e3cd"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-osx-aarch_64.zip",
"checksum": "cca53adb73a6686dd60bb3b0da33961e6b9dab1f833c851b5e1bb7b5df02b36f"
}
},
"3.24.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.2/protoc-24.2-linux-x86_64.zip",
"checksum": "1bfa935466cf902200cfba0e80d0ac60fec8e4c61aad3debc9fc97a135604b72"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.2/protoc-24.2-osx-x86_64.zip",
"checksum": "335d8623065234734d35b284f36326fbeded4bad88ca20a2df181761f67ca1a5"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.2/protoc-24.2-win64.zip",
"checksum": "e0cbca02e34aca5c76059f8b78000512a83c77409f7137ec6977fc554609f79f"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.2/protoc-24.2-linux-aarch_64.zip",
"checksum": "6593cf94c8d66f367e6526fda6c0ee0fdd442171a9e302c4625e6eb0958c06c1"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.2/protoc-24.2-osx-aarch_64.zip",
"checksum": "9624e53cd0c061afb5eab9e50fc0372383585dcc22bd2b1fb54fd5a4c3294989"
}
},
"3.24.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.1/protoc-24.1-linux-x86_64.zip",
"checksum": "1b9d1467205530986d58d24d2b89b9db3c8a9e3c31ed40b2a223913480ca8987"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.1/protoc-24.1-osx-x86_64.zip",
"checksum": "476782d4220ff7b2d8b333a648a1f8a52c200211db85e76347e668d9d4c07515"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.1/protoc-24.1-win64.zip",
"checksum": "dad1efed75cb772a0c9e5d4646006bf87e1e051191473a2a30c9db66ee223cfd"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.1/protoc-24.1-linux-aarch_64.zip",
"checksum": "676a38ff5584c913bbab3991bb1a515b8cbd22a12c029e24c440d9b05c816f1c"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.1/protoc-24.1-osx-aarch_64.zip",
"checksum": "e7c622512ad2133f25bc6369e1330809daa7ae2742611bf596bbc904e18ca8d5"
}
}, },
"3.24.0": { "3.24.0": {
"x86_64_linux_gnu": { "x86_64_linux_gnu": {

119
manifests/syft.json generated
View File

@@ -23,7 +23,124 @@
} }
}, },
"latest": { "latest": {
"version": "0.86.1" "version": "0.91.0"
},
"0.91": {
"version": "0.91.0"
},
"0.91.0": {
"x86_64_linux_musl": {
"checksum": "51188401eb2a2425db1155ba18cb64db8275491a1e1049690fe6e8a371ff222a"
},
"x86_64_macos": {
"checksum": "724e6864a356834d8f3a40a3db2216884fc2c4cf69b67baa03cd08466e80fca9"
},
"x86_64_windows": {
"checksum": "9189e2246b5b649f8f09eb6d7500ee5f698253e94ebb34fab06ea6910489bcdc"
},
"aarch64_linux_musl": {
"checksum": "e9d3eb8120438325b79a8bf2a994692a111e5a47c63bbdf7762f7e9fb5a12f4a"
},
"aarch64_macos": {
"checksum": "d53362e44322e81015c9fa17f2254f2fa3d55dc04f18c1e0bc8891705aaf4696"
}
},
"0.90": {
"version": "0.90.0"
},
"0.90.0": {
"x86_64_linux_musl": {
"checksum": "7368d65830fe90ad96edac8a1d548193a36e18853f30e11b9f97772a573eae2a"
},
"x86_64_macos": {
"checksum": "5b2c36edf5a317eb45691484ad6eea6ffc2aee45fb97612492b93099a9407578"
},
"x86_64_windows": {
"checksum": "eaffd994f6c90ce39e7753f1cb48f5e61f7828b83dc8f27364490f02813d3645"
},
"aarch64_linux_musl": {
"checksum": "06bc39ff9ff3a3a5ba7055a158eace7bf105c8baf9eecfa33fbb1387e9dab4ed"
},
"aarch64_macos": {
"checksum": "9d596ab903becd9061cb9919e6e626835978246adaaf0392c871fdf34b974c38"
}
},
"0.89": {
"version": "0.89.0"
},
"0.89.0": {
"x86_64_linux_musl": {
"checksum": "b7cc7c1fb588454947ca678df7ddd906620d399a05f92a550b1b2d312fb26764"
},
"x86_64_macos": {
"checksum": "fd8fc86772d44b4a93f6566a897f832923cc6aa3de9434772a4ac0966377f8be"
},
"x86_64_windows": {
"checksum": "1a512c97b3fa504ad0b6c8c62660cfe980786a433a1582b460bd35005b36ceb2"
},
"aarch64_linux_musl": {
"checksum": "1c1c8e53d7157c3e861116e24eb494da0b660b3757ea69d6e05038c6ed76c50f"
},
"aarch64_macos": {
"checksum": "7d6d848c4375d10c2ebd019120a835f3d4527bb78250efc47fd2ba010a6798ba"
}
},
"0.88": {
"version": "0.88.0"
},
"0.88.0": {
"x86_64_linux_musl": {
"checksum": "d22c5e840c1a9ba10aee264d8bd015aca9c745bfd23efdfe75fdd36eeaf75ea8"
},
"x86_64_macos": {
"checksum": "f27232e327bf7f533dcffb2275250d325f45b69f5a0bd723c33f40f733e89e15"
},
"x86_64_windows": {
"checksum": "3c4bbcfee4c885e2b344c0de3dc77987057b27079cccb1b15435fd2399f92cfa"
},
"aarch64_linux_musl": {
"checksum": "2c5550833c9c958f29e0f0cd13fd962b1805b97c8775db73c44e274da42a7b39"
},
"aarch64_macos": {
"checksum": "8e822e53eb3f779e446466a93863a75da9e78cefdbcf1fa575b0645a45dcc868"
}
},
"0.87": {
"version": "0.87.1"
},
"0.87.1": {
"x86_64_linux_musl": {
"checksum": "1f6f5aa0bb5682f8db74cb5adf00fac9bddec40f6fcde808b71c43d3593e3cf5"
},
"x86_64_macos": {
"checksum": "c24990a01127bfe512351bb65694460629a6c83828e02aef9f8e7ece5d0b3c8a"
},
"x86_64_windows": {
"checksum": "ec89bf68571238a67b83c26a32371b67efa6daeaa819d67a9f281a69cb2e0cd0"
},
"aarch64_linux_musl": {
"checksum": "5570eb42a9a2b696d4d8398a9733f7f2dda0e4a243413960aeab44a1183a6f47"
},
"aarch64_macos": {
"checksum": "eeae4d4ed97f9519697027d658deab72fcdc94a6f2c4d77354a82085fb8db1f4"
}
},
"0.87.0": {
"x86_64_linux_musl": {
"checksum": "9567007466ae6c5c893abd680258f8781b0709188fb0aab59eb1eb35c64ea6b6"
},
"x86_64_macos": {
"checksum": "60137a14c6a1340e7405baa07876b5e442e756b208fd9b5b3cb2f9a14a410e19"
},
"x86_64_windows": {
"checksum": "2fe288c607b1d2febac30b5997b76aa83b40694b8af7af6690d9f64385212f3c"
},
"aarch64_linux_musl": {
"checksum": "14f5876c6543d084fa0f91ec928af8bd0dba7ea09f5848528c6402b20ff72041"
},
"aarch64_macos": {
"checksum": "2b68cefc0b51781fdf2669ef3633904fe057740b6752d2704db34ba380238387"
}
}, },
"0.86": { "0.86": {
"version": "0.86.1" "version": "0.86.1"

122
manifests/wasmtime.json generated
View File

@@ -2,7 +2,127 @@
"rust_crate": "wasmtime-cli", "rust_crate": "wasmtime-cli",
"template": null, "template": null,
"latest": { "latest": {
"version": "11.0.1" "version": "13.0.0"
},
"13": {
"version": "13.0.0"
},
"13.0": {
"version": "13.0.0"
},
"13.0.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasmtime-v13.0.0-x86_64-linux.tar.xz",
"checksum": "af14e310a27d28e07675bb5d5254adee1cfddfeab0d9541e68b074f6263f4c2d",
"bin": "wasmtime-v13.0.0-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasmtime-v13.0.0-x86_64-macos.tar.xz",
"checksum": "a68023cd806de4432a102f24b07b204c8f83f8ce626c5ac4f248faa0807d0f49",
"bin": "wasmtime-v13.0.0-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasmtime-v13.0.0-x86_64-windows.zip",
"checksum": "ad1dea7c069eeda2432d4344221b05c46d146aaa7f5b16cbd468932e9fdaac76",
"bin": "wasmtime-v13.0.0-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasmtime-v13.0.0-aarch64-linux.tar.xz",
"checksum": "2422b7c6c0d60bcfbab7d098ead0e120e24971525521a7758ea1a1db5ce57395",
"bin": "wasmtime-v13.0.0-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.0/wasmtime-v13.0.0-aarch64-macos.tar.xz",
"checksum": "12b32b91e07f53ea363505530b6fb3312a7ac1e71ae38957bb545011f10dbaab",
"bin": "wasmtime-v13.0.0-aarch64-macos/wasmtime"
}
},
"12": {
"version": "12.0.2"
},
"12.0": {
"version": "12.0.2"
},
"12.0.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.2/wasmtime-v12.0.2-x86_64-linux.tar.xz",
"checksum": "f78bde3bd5758b9b228b98e45c5b40a3f48f73a8d0b19dbed111cd71fcdca570",
"bin": "wasmtime-v12.0.2-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.2/wasmtime-v12.0.2-x86_64-macos.tar.xz",
"checksum": "ed1a8760c5ddc9d3565a76908bb1e8a008b731b43ffa069b18d403542e49c683",
"bin": "wasmtime-v12.0.2-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.2/wasmtime-v12.0.2-x86_64-windows.zip",
"checksum": "9843d87d6bde399d7ccb3ba8699486f5a5ea145b106fa3bd4ca6e13ab2c61119",
"bin": "wasmtime-v12.0.2-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.2/wasmtime-v12.0.2-aarch64-linux.tar.xz",
"checksum": "1a59e011e9deb4d3d7eb468028a56026499f5584727ea0a8c90012037455ac3c",
"bin": "wasmtime-v12.0.2-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.2/wasmtime-v12.0.2-aarch64-macos.tar.xz",
"checksum": "3f20a5b95950e7291f9dd07c9d84ebe115b34db283c7939b8f4b45e833b84a4e",
"bin": "wasmtime-v12.0.2-aarch64-macos/wasmtime"
}
},
"12.0.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.1/wasmtime-v12.0.1-x86_64-linux.tar.xz",
"checksum": "59eb24b421c40104240d00848e3d9ffee5403b7e15958ace974aa2705050b0b3",
"bin": "wasmtime-v12.0.1-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.1/wasmtime-v12.0.1-x86_64-macos.tar.xz",
"checksum": "1975f51fd251fa19345776328f958985606458b5d7178c5a10fc72fd9f2ba59f",
"bin": "wasmtime-v12.0.1-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.1/wasmtime-v12.0.1-x86_64-windows.zip",
"checksum": "1878426629e78c7d80d26448fe5c9d8adf878383edc6ea4c772bc7ef59f963fb",
"bin": "wasmtime-v12.0.1-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.1/wasmtime-v12.0.1-aarch64-linux.tar.xz",
"checksum": "7ec484c9f3c3002a789c41252b630ac509b0532102bfd3aa66e5d6d7dbebcc74",
"bin": "wasmtime-v12.0.1-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.1/wasmtime-v12.0.1-aarch64-macos.tar.xz",
"checksum": "975e286eb7ad4a4e17b7bb73b0b39dd6212ef7606f6d74ff63d5d8f2d5f7c339",
"bin": "wasmtime-v12.0.1-aarch64-macos/wasmtime"
}
},
"12.0.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.0/wasmtime-v12.0.0-x86_64-linux.tar.xz",
"checksum": "c31e0d8eb2797627ba1f72b313315da960016f87ccec3cce2ae67654060a8f04",
"bin": "wasmtime-v12.0.0-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.0/wasmtime-v12.0.0-x86_64-macos.tar.xz",
"checksum": "27a649593f3106f256c227d26ce8f3d03b360a267d89b094537217104fa05e88",
"bin": "wasmtime-v12.0.0-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.0/wasmtime-v12.0.0-x86_64-windows.zip",
"checksum": "fb0c6e981f2d1997174ef198819091bdca517c20ecd727762e0b38d2643b1b4d",
"bin": "wasmtime-v12.0.0-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.0/wasmtime-v12.0.0-aarch64-linux.tar.xz",
"checksum": "3693fd9db6ad37e6937c5fdc003f0038bbfde9eec0ad33ee7cc611a85cac29c4",
"bin": "wasmtime-v12.0.0-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v12.0.0/wasmtime-v12.0.0-aarch64-macos.tar.xz",
"checksum": "64d594618e47e0b5b70a3b38c943e6d79c145ea281defef1ad13c92faafc3e8c",
"bin": "wasmtime-v12.0.0-aarch64-macos/wasmtime"
}
}, },
"11": { "11": {
"version": "11.0.1" "version": "11.0.1"

34
manifests/xbuild.json generated Normal file
View File

@@ -0,0 +1,34 @@
{
"rust_crate": "xbuild",
"template": {
"x86_64_linux_gnu": {
"url": "https://github.com/rust-mobile/xbuild/releases/download/v${version}/xbuild-linux-x64",
"bin": "xbuild-linux-x64"
},
"x86_64_macos": {
"url": "https://github.com/rust-mobile/xbuild/releases/download/v${version}/xbuild-macos-x64",
"bin": "xbuild-macos-x64"
},
"x86_64_windows": {
"url": "https://github.com/rust-mobile/xbuild/releases/download/v${version}/xbuild-windows-x64.exe",
"bin": "xbuild-windows-x64.exe"
}
},
"latest": {
"version": "0.2.0"
},
"0.2": {
"version": "0.2.0"
},
"0.2.0": {
"x86_64_linux_gnu": {
"checksum": "9c294809ec3cb314b34e9f644b5bbf6ed262c25c1eeb78a3691836a95bc58e0d"
},
"x86_64_macos": {
"checksum": "e357205fde5262d77b8b1dc1cb066a4f7b4edd0a83b71b3513ae466b08343305"
},
"x86_64_windows": {
"checksum": "ce503cd64e6449d1c3e3bc2bfb621e9dd3ebfc775e99c97f98c2ab145e533946"
}
}
}

View File

@@ -1 +1 @@
git ls-files '*.sh' # TODO: check more files git ls-files

View File

@@ -5,7 +5,11 @@ IFS=$'\n\t'
cd "$(dirname "$0")"/../.. cd "$(dirname "$0")"/../..
# They don't provide prebuilt binaries for musl or old glibc host. # They don't provide prebuilt binaries for musl or old glibc host.
glibc_pre_2_34_incompat=(
xbuild
)
glibc_pre_2_31_incompat=( glibc_pre_2_31_incompat=(
"${glibc_pre_2_34_incompat[@]}"
zola zola
) )
glibc_pre_2_27_incompat=( glibc_pre_2_27_incompat=(
@@ -41,6 +45,8 @@ case "$(uname -s)" in
incompat_tools+=("${musl_incompat[@]}") incompat_tools+=("${musl_incompat[@]}")
else else
host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g") host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g")
higher_glibc_version=$(sort <<<"2.34"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.31"$'\n'"${host_glibc_version}" -Vu | tail -1) higher_glibc_version=$(sort <<<"2.31"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.27"$'\n'"${host_glibc_version}" -Vu | tail -1) higher_glibc_version=$(sort <<<"2.27"$'\n'"${host_glibc_version}" -Vu | tail -1)
@@ -49,6 +55,9 @@ case "$(uname -s)" in
else else
incompat_tools+=("${glibc_pre_2_27_incompat[@]}") incompat_tools+=("${glibc_pre_2_27_incompat[@]}")
fi fi
else
incompat_tools+=("${glibc_pre_2_34_incompat[@]}")
fi
fi fi
fi fi
if ! type -P snap &>/dev/null; then if ! type -P snap &>/dev/null; then
@@ -63,6 +72,10 @@ esac
tools=() tools=()
for manifest in tools/codegen/base/*.json; do for manifest in tools/codegen/base/*.json; do
tool_name=$(basename "${manifest%.*}") tool_name=$(basename "${manifest%.*}")
# cross -V requires rustc
if [[ "${tool_name}" == "cross" ]] && ! type -P rustc &>/dev/null; then
continue
fi
case "${host_os}" in case "${host_os}" in
linux*) linux*)
for incompat in ${incompat_tools[@]+"${incompat_tools[@]}"}; do for incompat in ${incompat_tools[@]+"${incompat_tools[@]}"}; do
@@ -111,14 +124,17 @@ case "${host_os}" in
fi fi
;; ;;
esac esac
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall) # cargo-binstall requires cargo
case "${version}" in if type -P cargo &>/dev/null; then
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
case "${version}" in
latest) tools+=(cargo-watch watchexec-cli nextest) ;; latest) tools+=(cargo-watch watchexec-cli nextest) ;;
major.minor.patch) tools+=(cargo-watch@8.1.1 watchexec-cli@1.20.5 nextest@0.9.57) ;; major.minor.patch) tools+=(cargo-watch@8.1.1 watchexec-cli@1.20.5 nextest@0.9.57) ;;
major.minor) tools+=(cargo-watch@8.1 watchexec-cli@1.20 nextest@0.9) ;; major.minor) tools+=(cargo-watch@8.1 watchexec-cli@1.20 nextest@0.9) ;;
major) tools+=(cargo-watch@8 watchexec-cli@1) ;; major) tools+=(cargo-watch@8 watchexec-cli@1) ;;
*) exit 1 ;; *) exit 1 ;;
esac esac
fi
# sort and dedup # sort and dedup
IFS=$'\n' IFS=$'\n'

View File

@@ -0,0 +1,13 @@
{
"repository": "https://github.com/bnjbvr/cargo-machete",
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": "${package}-v${version}-${rust_target}.tar.gz",
"bin": "${package}-v${version}-${rust_target}/${package}${exe}",
"platform": {
"x86_64_linux_musl": {},
"x86_64_macos": {},
"x86_64_windows": {},
"aarch64_macos": {}
}
}

View File

@@ -0,0 +1,13 @@
{
"repository": "https://github.com/rust-mobile/xbuild",
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": "${package}-${os_name}-x64${exe}",
"bin": "${package}-${os_name}-x64${exe}",
"version_range": ">= 0.2.0",
"platform": {
"x86_64_linux_gnu": {},
"x86_64_macos": {},
"x86_64_windows": {}
}
}

View File

@@ -1,3 +1,5 @@
// SPDX-License-Identifier: Apache-2.0 OR MIT
use anyhow::{bail, Context as _, Result}; use anyhow::{bail, Context as _, Result};
use fs_err as fs; use fs_err as fs;
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
@@ -178,6 +180,12 @@ fn main() -> Result<()> {
continue; continue;
} }
} }
// Specifically skip versions of xbuild with build metadata.
if base_info.rust_crate.as_deref() == Some("xbuild") && !semver_version.build.is_empty() {
continue;
}
let mut download_info = BTreeMap::new(); let mut download_info = BTreeMap::new();
for (&platform, base_download_info) in &base_info.platform { for (&platform, base_download_info) in &base_info.platform {
let asset_names = base_download_info let asset_names = base_download_info

View File

@@ -112,6 +112,49 @@ if [[ -n "$(git ls-files '*.rs')" ]]; then
echo "${new}" >"${lib}" echo "${new}" >"${lib}"
check_diff "${lib}" check_diff "${lib}"
done done
# Make sure that public Rust crates don't contain executables.
failed_files=''
metadata=$(cargo metadata --format-version=1 --all-features --no-deps)
has_public_crate=''
for id in $(jq <<<"${metadata}" '.workspace_members[]'); do
pkg=$(jq <<<"${metadata}" ".packages[] | select(.id == ${id})")
publish=$(jq <<<"${pkg}" -r '.publish')
# Publishing is unrestricted if null, and forbidden if an empty array.
if [[ "${publish}" == "[]" ]]; then
continue
fi
has_public_crate='1'
done
if [[ -n "${has_public_crate}" ]]; then
info "checking file permissions"
if [[ -f Cargo.toml ]] && grep -Eq '^\[package\]' Cargo.toml && ! grep -Eq '^publish = false' Cargo.toml; then
if ! grep -Eq '^exclude = \[.*\.\*.*\]' Cargo.toml; then
error "top-level Cargo.toml of real manifest should have exclude field with \"/.*\" and \"/tools\""
elif ! grep -Eq '^exclude = \[.*/tools.*\]' Cargo.toml; then
error "top-level Cargo.toml of real manifest should have exclude field with \"/.*\" and \"/tools\""
fi
fi
for p in $(git ls-files); do
# Skip directories.
if [[ -d "${p}" ]]; then
continue
fi
# Top-level hidden files/directories and tools/* are excluded from crates.io (ensured by the above check).
# TODO: fully respect exclude field in Cargo.toml.
case "${p}" in
.* | tools/*) continue ;;
esac
if [[ -x "${p}" ]]; then
failed_files+="${p}"$'\n'
fi
done
if [[ -n "${failed_files}" ]]; then
error "file-permissions-check failed: executable should be in tools/ directory"
echo "======================================="
echo -n "${failed_files}"
echo "======================================="
fi
fi
fi fi
# C/C++ (if exists) # C/C++ (if exists)
@@ -207,19 +250,22 @@ if [[ -f tools/.tidy-check-license-headers ]]; then
info "checking license headers (experimental)" info "checking license headers (experimental)"
failed_files='' failed_files=''
for p in $(eval $(<tools/.tidy-check-license-headers)); do for p in $(eval $(<tools/.tidy-check-license-headers)); do
# TODO: More file types?
case "$(basename "${p}")" in case "$(basename "${p}")" in
*.sh) prefix=("# ") ;; *.stderr | *.expanded.rs) continue ;; # generated files
*.rs | *.c | *.h | *.cpp | *.hpp | *.s | *.S) prefix=("// " "/* ") ;; *.sh | *.py | *.rb | *Dockerfile) prefix=("# ") ;;
*.rs | *.c | *.h | *.cpp | *.hpp | *.s | *.S | *.js) prefix=("// " "/* ") ;;
*.ld | *.x) prefix=("/* ") ;; *.ld | *.x) prefix=("/* ") ;;
*) error "unrecognized file type: ${p}" ;; # TODO: More file types?
*) continue ;;
esac esac
# TODO: The exact line number is not actually important; it is important # TODO: The exact line number is not actually important; it is important
# that it be part of the top-level comments of the file. # that it be part of the top-level comments of the file.
line="1" line="1"
case "${p}" in if IFS= LC_ALL=C read -rn3 -d '' shebang <"${p}" && [[ "${shebang}" == '#!/' ]]; then
*.sh) line="2" ;; # shebang line="2"
esac elif [[ "${p}" == *"Dockerfile" ]] && IFS= LC_ALL=C read -rn9 -d '' syntax <"${p}" && [[ "${syntax}" == '# syntax=' ]]; then
line="2"
fi
header_found='' header_found=''
for pre in "${prefix[@]}"; do for pre in "${prefix[@]}"; do
if [[ "$(grep -E -n "${pre}SPDX-License-Identifier: " "${p}")" == "${line}:${pre}SPDX-License-Identifier: "* ]]; then if [[ "$(grep -E -n "${pre}SPDX-License-Identifier: " "${p}")" == "${line}:${pre}SPDX-License-Identifier: "* ]]; then