Compare commits

...

101 Commits

Author SHA1 Message Date
Taiki Endo
f860c89ccb Release 2.21.2 2023-10-28 21:17:59 +09:00
Taiki Endo
abce7f3b41 Update cargo-make@latest to 0.37.3 2023-10-28 21:11:28 +09:00
Taiki Endo
fa2b07a6fe Release 2.21.1 2023-10-28 00:50:33 +09:00
Taiki Endo
3bf85bf82b Update dprint@latest to 0.42.3 2023-10-28 00:46:32 +09:00
Taiki Endo
e25c3c5c7f Update cargo-minimal-versions@latest to 0.1.21 2023-10-28 00:46:32 +09:00
Taiki Endo
258659a0d3 Release 2.21.0 2023-10-27 22:15:04 +09:00
Taiki Endo
fa867b0fbe Update changelog 2023-10-27 22:14:38 +09:00
Josh McKinney
78f1f749ec Add cargo-rdme to supported tools (#265) 2023-10-27 22:11:23 +09:00
Taiki Endo
765e61bdd0 Update dprint@latest to 0.42.2 2023-10-27 15:10:34 +09:00
Taiki Endo
0e17f1a035 Release 2.20.17 2023-10-27 10:34:27 +09:00
Taiki Endo
5fce684c96 Add wasmtime 13.0.1,11.0.2,10.0.2 2023-10-27 10:30:56 +09:00
Taiki Endo
6326b163e5 Update wasmtime@latest to 14.0.2 2023-10-27 03:09:53 +09:00
Taiki Endo
077e998f78 tools: Retry in publish.sh 2023-10-25 00:13:32 +09:00
Taiki Endo
6bb3a496f8 codegen: Use toml_edit directly 2023-10-25 00:12:46 +09:00
Taiki Endo
ac89944b5b Release 2.20.16 2023-10-24 03:54:39 +09:00
Taiki Endo
2219401b50 Update cspell dictionary 2023-10-24 03:54:25 +09:00
Taiki Endo
cf6ce9e200 Update wasmtime@latest to 14.0.1 2023-10-24 03:52:16 +09:00
Taiki Endo
212ce016f0 Release 2.20.15 2023-10-23 10:25:42 +09:00
Taiki Endo
c79460242c Update cargo-binstall@latest to 1.4.4 2023-10-23 03:10:10 +09:00
Taiki Endo
995577ee34 Release 2.20.14 2023-10-22 19:30:08 +09:00
Taiki Endo
a9973776b4 Update cargo-minimal-versions@latest to 0.1.20 2023-10-22 19:29:08 +09:00
Taiki Endo
78f94f416b Release 2.20.13 2023-10-22 14:33:21 +09:00
Taiki Endo
e6ec669a69 Update cargo-hack@latest to 0.6.13 2023-10-22 14:22:04 +09:00
Taiki Endo
05ff4d48eb Release 2.20.12 2023-10-21 11:48:29 +09:00
Taiki Endo
0a220b0360 Update wasmtime@latest to 14.0.0 2023-10-21 03:11:00 +09:00
Taiki Endo
6bf300d7cb Update syft@latest to 0.94.0 2023-10-21 03:11:00 +09:00
Taiki Endo
a5fec49c32 Release 2.20.11 2023-10-20 21:14:47 +09:00
Taiki Endo
72e783e599 Update biome@latest to 1.3.1 2023-10-20 21:11:05 +09:00
Taiki Endo
347bed327e Release 2.20.10 2023-10-20 02:13:40 +09:00
Taiki Endo
f68de8c9b6 Update cspell dictionary 2023-10-20 02:13:21 +09:00
Taiki Endo
91f8f931aa Update biome@latest to 1.3.0 2023-10-19 21:11:17 +09:00
Taiki Endo
87990c8245 Release 2.20.9 2023-10-19 05:16:47 +09:00
Taiki Endo
d8f82abc6e Update cargo-hack@latest to 0.6.12 2023-10-19 05:16:16 +09:00
Taiki Endo
3a10567018 Tweak scripts
features-related flags are unneeded when --no-deps is used.
2023-10-19 04:25:54 +09:00
Taiki Endo
55aaa89c2f Release 2.20.8 2023-10-19 03:15:49 +09:00
Taiki Endo
45764be6ba Update parse-changelog@latest to 0.6.4 2023-10-19 03:11:17 +09:00
Taiki Endo
cd04d6bed9 Update cargo-llvm-cov@latest to 0.5.35 2023-10-19 03:11:17 +09:00
Taiki Endo
9fa9dc1e41 codegen: Allow compiling serde and serde_derive in parallel 2023-10-18 23:22:44 +09:00
Taiki Endo
56763447c1 Release 2.20.7 2023-10-18 20:55:19 +09:00
Taiki Endo
8a192a7d6e Update cargo-hack@latest to 0.6.11 2023-10-18 20:42:26 +09:00
Taiki Endo
ac7879e9df Release 2.20.6 2023-10-18 02:27:39 +09:00
Taiki Endo
b84a67db1f Update cargo-hack@latest to 0.6.10 2023-10-18 02:27:02 +09:00
Taiki Endo
9fd87eb1c0 Release 2.20.5 2023-10-17 23:02:06 +09:00
Taiki Endo
cf6e29bacc Update cargo-llvm-cov@latest to 0.5.34 2023-10-17 22:57:00 +09:00
Taiki Endo
ae158c407e Update cargo-hack@latest to 0.6.9 2023-10-17 22:57:00 +09:00
Taiki Endo
8cc02a3e23 Release 2.20.4 2023-10-17 21:16:44 +09:00
Taiki Endo
7d35a2f35e Update cargo-udeps@latest to 0.1.43 2023-10-17 21:11:32 +09:00
Taiki Endo
47d27149ff Release 2.20.3 2023-10-13 03:13:01 +09:00
Taiki Endo
52e5225feb Update just@latest to 1.15.0 2023-10-13 03:10:56 +09:00
Taiki Endo
e659bf85ee Release 2.20.2 2023-10-11 10:14:52 +09:00
Taiki Endo
36798159cb Update syft@latest to 0.93.0 2023-10-11 03:24:51 +09:00
Taiki Endo
f6df2ed02b Release 2.20.1 2023-10-08 21:31:17 +09:00
Taiki Endo
7451ec850c Update cargo-binstall@latest to 1.4.3 2023-10-08 21:12:29 +09:00
Taiki Endo
1c0627575f Release 2.20.0 2023-10-07 03:20:50 +09:00
Taiki Endo
ab1649e46a Update changelog 2023-10-07 03:19:33 +09:00
Nicolas Hedger
616cfda279 feat: add biome (#246) 2023-10-07 03:16:29 +09:00
Taiki Endo
bb83b2c3a1 apk_install: Check sudo first 2023-10-07 02:17:05 +09:00
Taiki Endo
739d45026e codegen: Favor tar over zip in cargo-hack/parse-changelog 2023-10-05 20:45:36 +09:00
Taiki Endo
39c461780c download_and_checksum: Read checksum from stdin 2023-10-05 20:08:38 +09:00
Taiki Endo
ebb475ef6e Release 2.19.4 2023-10-05 10:33:48 +09:00
Taiki Endo
67a92e13cf Update protoc@latest to 3.24.4 2023-10-05 03:10:31 +09:00
Taiki Endo
dd5387d253 Release 2.19.3 2023-10-03 09:32:08 +09:00
Taiki Endo
1bfbbd1f21 Update cargo-tarpaulin@latest to 0.27.1 2023-10-03 09:21:09 +09:00
Taiki Endo
f0b85d4f2b Update .rustfmt.toml 2023-10-02 02:17:39 +09:00
Taiki Endo
ac309afb84 ci: Pass --no-modify-path to rustup-init 2023-10-02 02:16:52 +09:00
Taiki Endo
23eacbb04f ci: Use reusable workflows from taiki-e/github-actions 2023-09-30 12:56:27 +09:00
Taiki Endo
57aaba576a Release 2.19.2 2023-09-30 12:17:23 +09:00
Taiki Endo
0876ec40d9 ci: Auto-merge auto-generated PR 2023-09-30 12:16:22 +09:00
Taiki Endo
7d0442ab06 Set errtrace in scripts 2023-09-30 10:42:06 +09:00
Taiki Endo
d2ffa16971 Update mdbook@latest to 0.4.35 (#241) 2023-09-30 00:19:56 +00:00
Taiki Endo
05c9797d84 Update manifest (#240)
* Update `cargo-deny@latest` to 0.14.3

* Update `cargo-dinghy@latest` to 0.6.8

* Update `parse-changelog@latest` to 0.6.3
2023-09-30 09:36:29 +10:00
Taiki Endo
75d87d548b tidy: Run markdownlint 2023-09-28 23:41:17 +09:00
Taiki Endo
6184f1ceea Release 2.19.1 2023-09-28 22:32:28 +09:00
Taiki Endo
3f6d29063f Update cargo-binstall@latest to 1.4.2 (#239) 2023-09-28 22:16:06 +10:00
Taiki Endo
e07b619ce2 Release 2.19.0 2023-09-28 12:03:42 +09:00
Taiki Endo
d5124717d1 Update changelog 2023-09-28 12:03:24 +09:00
Taiki Endo
b30758ca4a Support signature verification (minisign) 2023-09-28 12:01:51 +09:00
Taiki Endo
ac65fbce2a Update syft@latest to 0.92.0 (#238) 2023-09-28 08:07:28 +10:00
Taiki Endo
d90c734ca8 Update .rustfmt.toml 2023-09-27 21:35:58 +09:00
Taiki Endo
0831efaca4 Update cargo-make@latest to 0.37.2 (#236) 2023-09-27 17:23:07 +10:00
Taiki Endo
ff7717e39e Update cargo-binstall@latest to 1.4.1 (#235) 2023-09-27 17:04:52 +10:00
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
42 changed files with 2148 additions and 429 deletions

View File

@@ -10,6 +10,7 @@ cdylib
cflags cflags
clippy clippy
codegen codegen
cranelift
cxxflags cxxflags
dylib dylib
exitcode exitcode
@@ -95,13 +96,11 @@ xtensa
aclass aclass
acqrel acqrel
alloc alloc
bools
builtins builtins
bytecount bytecount
canonicalize canonicalize
cfgs cfgs
concat concat
consts
ctypes ctypes
dealloc dealloc
deque deque
@@ -114,6 +113,7 @@ impls
inlateout inlateout
intrinsics intrinsics
lateout lateout
libdir
mclass mclass
memcpy memcpy
msrv msrv
@@ -160,6 +160,7 @@ esac
euxo euxo
gsub gsub
libc libc
markdownlint
moreutils moreutils
msys msys
noninteractive noninteractive
@@ -168,6 +169,7 @@ norc
nproc nproc
objcopy objcopy
objdump objdump
pacman
pipefail pipefail
powerset powerset
proto proto
@@ -177,4 +179,6 @@ shellcheckrc
SIGABRT SIGABRT
SIGILL SIGILL
subcmd subcmd
tempdir
tlsv tlsv
tmpdir

View File

@@ -14,8 +14,10 @@ mdbook
microdnf microdnf
nextest nextest
protoc protoc
pubkey
pwsh pwsh
quickinstall quickinstall
rdme
shellcheck shellcheck
shfmt shfmt
syft syft

View File

@@ -1,4 +1,6 @@
// This file is @generated by tidy.sh. // This file is @generated by tidy.sh.
// It is not intended for manual editing. // It is not intended for manual editing.
flate
minisign
ureq ureq

View File

@@ -32,7 +32,7 @@ concurrency:
jobs: jobs:
tidy: tidy:
uses: taiki-e/workflows/.github/workflows/tidy.yml@main uses: taiki-e/github-actions/.github/workflows/tidy.yml@main
test: test:
strategy: strategy:
@@ -41,11 +41,11 @@ 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
@@ -81,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
@@ -114,27 +118,25 @@ jobs:
steps: steps:
- name: Install requirements (ubuntu/debian) - name: Install requirements (ubuntu/debian)
run: | run: |
set -euxo pipefail set -eEuxo pipefail
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/almalinux/centos) - name: Install requirements (fedora/almalinux/centos)
run: | run: |
set -euxo pipefail set -eEuxo pipefail
if ! type -P dnf &>/dev/null && type -P microdnf &>/dev/null; then if ! type -P dnf &>/dev/null && type -P microdnf &>/dev/null; then
# tar and gzip are required for actions/checkout on *-minimal images # tar and gzip are required for actions/checkout on *-minimal images
microdnf install -y tar gzip microdnf install -y tar gzip
fi fi
curl --proto '=https' --tlsv1.2 -fsSL --retry 10 https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable curl --proto '=https' --tlsv1.2 -fsSL --retry 10 https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable --no-modify-path
echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}" echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}"
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'almalinux') || 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: apk --no-cache add bash cargo
set -eux
apk --no-cache add bash cargo
shell: sh shell: sh
if: startsWith(matrix.container, 'alpine') if: startsWith(matrix.container, 'alpine')
- uses: actions/checkout@v3 # TODO: actions/checkout@v3 requires glibc 2.28+ - 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`
@@ -146,6 +148,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
@@ -164,12 +181,28 @@ jobs:
- id: diff - id: diff
run: tools/ci/manifest.sh run: tools/ci/manifest.sh
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main')
- uses: peter-evans/create-pull-request@v5 - name: Create PR
id: create-pull-request
uses: peter-evans/create-pull-request@v5
with: with:
title: Update manifest title: Update manifest
body: | body: |
Auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request) Auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request).
This will be auto-merged when CI has passed because this is an auto-generated PR in a defined format and is usually considered no additional review is required.
branch: update-manifest branch: update-manifest
token: ${{ secrets.CREATE_PR_TOKEN }} token: ${{ secrets.CREATE_PR_TOKEN }}
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false' if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false'
- name: Enable auto-merge for auto-generated PR
run: gh pr merge --rebase --auto "${PR_NUMBER:?}"
env:
GITHUB_TOKEN: ${{ secrets.CREATE_PR_TOKEN }}
PR_NUMBER: ${{ steps.create-pull-request.outputs.pull-request-number }}
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false' && steps.create-pull-request.outputs.pull-request-operation == 'created'
- name: Auto approve for auto-generated PR
run: gh pr review --approve "${PR_NUMBER:?}"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_NUMBER: ${{ steps.create-pull-request.outputs.pull-request-number }}
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false' && steps.create-pull-request.outputs.pull-request-operation == 'created'
- run: git add -N . && git diff --exit-code - run: git add -N . && git diff --exit-code

6
.markdownlint.yml Normal file
View File

@@ -0,0 +1,6 @@
# https://github.com/DavidAnson/markdownlint#rules--aliases
MD013: false # line-length
MD024: false # no-duplicate-heading/no-duplicate-header
MD033: false # no-inline-html
MD036: false # no-emphasis-as-heading/no-emphasis-as-header

View File

@@ -1 +1,32 @@
# Rustfmt configuration
# https://github.com/rust-lang/rustfmt/blob/HEAD/Configurations.md
# Rustfmt cannot format long lines inside macros, but this option detects this.
# This is unstable (tracking issue: https://github.com/rust-lang/rustfmt/issues/3391)
error_on_line_overflow = true
# Override the default formatting style.
# See https://internals.rust-lang.org/t/running-rustfmt-on-rust-lang-rust-and-other-rust-lang-repositories/8732/81.
use_small_heuristics = "Max"
# See https://github.com/rust-dev-tools/fmt-rfcs/issues/149.
# This is unstable (tracking issue: https://github.com/rust-lang/rustfmt/issues/3370)
overflow_delimited_expr = true
# This is unstable (tracking issue: none).
imports_granularity = "Crate"
# This is unstable (tracking issue: none).
group_imports = "StdExternalCrate"
# Apply rustfmt to more places.
# This is unstable (tracking issue: https://github.com/rust-lang/rustfmt/issues/3348).
format_code_in_doc_comments = true
# Automatically fix deprecated style.
use_field_init_shorthand = true
use_try_shorthand = true
# Set the default settings again to always apply the proper formatting without
# being affected by the editor settings.
edition = "2021" edition = "2021"
hard_tabs = false
newline_style = "Unix"
tab_spaces = 4

View File

@@ -10,6 +10,164 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased] ## [Unreleased]
## [2.21.2] - 2023-10-28
- Update `cargo-make@latest` to 0.37.3.
## [2.21.1] - 2023-10-27
- Update `dprint@latest` to 0.42.3.
- Update `cargo-minimal-versions@latest` to 0.1.21.
## [2.21.0] - 2023-10-27
- Support `cargo-rdme`. ([#265](https://github.com/taiki-e/install-action/pull/265), thanks @joshka)
- Update `dprint@latest` to 0.42.2.
## [2.20.17] - 2023-10-27
- Update `wasmtime@latest` to 14.0.2.
## [2.20.16] - 2023-10-23
- Update `wasmtime@latest` to 14.0.1.
## [2.20.15] - 2023-10-23
- Update `cargo-binstall@latest` to 1.4.4.
## [2.20.14] - 2023-10-22
- Update `cargo-minimal-versions@latest` to 0.1.20.
## [2.20.13] - 2023-10-22
- Update `cargo-hack@latest` to 0.6.13.
## [2.20.12] - 2023-10-21
- Update `wasmtime@latest` to 14.0.0.
- Update `syft@latest` to 0.94.0.
## [2.20.11] - 2023-10-20
- Update `biome@latest` to 1.3.1.
## [2.20.10] - 2023-10-19
- Update `biome@latest` to 1.3.0.
## [2.20.9] - 2023-10-18
- Update `cargo-hack@latest` to 0.6.12.
## [2.20.8] - 2023-10-18
- Update `parse-changelog@latest` to 0.6.4.
- Update `cargo-llvm-cov@latest` to 0.5.35.
## [2.20.7] - 2023-10-18
- Update `cargo-hack@latest` to 0.6.11.
## [2.20.6] - 2023-10-17
- Update `cargo-hack@latest` to 0.6.10.
## [2.20.5] - 2023-10-17
- Update `cargo-llvm-cov@latest` to 0.5.34.
- Update `cargo-hack@latest` to 0.6.9.
## [2.20.4] - 2023-10-17
- Update `cargo-udeps@latest` to 0.1.43.
## [2.20.3] - 2023-10-12
- Update `just@latest` to 1.15.0.
## [2.20.2] - 2023-10-11
- Update `syft@latest` to 0.93.0.
## [2.20.1] - 2023-10-08
- Update `cargo-binstall@latest` to 1.4.3.
## [2.20.0] - 2023-10-06
- Support `biome`. ([#246](https://github.com/taiki-e/install-action/pull/246), thanks @nhedger)
## [2.19.4] - 2023-10-05
- Update `protoc@latest` to 3.24.4.
## [2.19.3] - 2023-10-03
- Update `cargo-tarpaulin@latest` to 0.27.1.
## [2.19.2] - 2023-09-30
- Update `mdbook@latest` to 0.4.35.
- Update `parse-changelog@latest` to 0.6.3.
- Update `cargo-dinghy@latest` to 0.6.8.
- Update `cargo-deny@latest` to 0.14.3.
## [2.19.1] - 2023-09-28
- Update `cargo-binstall@latest` to 1.4.2.
## [2.19.0] - 2023-09-28
- Support signature verification. ([#237](https://github.com/taiki-e/install-action/pull/237))
- Update `cargo-binstall@latest` to 1.4.1. This includes support for signature verification.
- Update `syft@latest` to 0.92.0.
- Update `cargo-make@latest` to 0.37.2.
## [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 ## [2.18.11] - 2023-09-15
- Update `cargo-hack@latest` to 0.6.8. - Update `cargo-hack@latest` to 0.6.8.
@@ -1221,7 +1379,39 @@ 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.18.11...HEAD [Unreleased]: https://github.com/taiki-e/install-action/compare/v2.21.2...HEAD
[2.21.2]: https://github.com/taiki-e/install-action/compare/v2.21.1...v2.21.2
[2.21.1]: https://github.com/taiki-e/install-action/compare/v2.21.0...v2.21.1
[2.21.0]: https://github.com/taiki-e/install-action/compare/v2.20.17...v2.21.0
[2.20.17]: https://github.com/taiki-e/install-action/compare/v2.20.16...v2.20.17
[2.20.16]: https://github.com/taiki-e/install-action/compare/v2.20.15...v2.20.16
[2.20.15]: https://github.com/taiki-e/install-action/compare/v2.20.14...v2.20.15
[2.20.14]: https://github.com/taiki-e/install-action/compare/v2.20.13...v2.20.14
[2.20.13]: https://github.com/taiki-e/install-action/compare/v2.20.12...v2.20.13
[2.20.12]: https://github.com/taiki-e/install-action/compare/v2.20.11...v2.20.12
[2.20.11]: https://github.com/taiki-e/install-action/compare/v2.20.10...v2.20.11
[2.20.10]: https://github.com/taiki-e/install-action/compare/v2.20.9...v2.20.10
[2.20.9]: https://github.com/taiki-e/install-action/compare/v2.20.8...v2.20.9
[2.20.8]: https://github.com/taiki-e/install-action/compare/v2.20.7...v2.20.8
[2.20.7]: https://github.com/taiki-e/install-action/compare/v2.20.6...v2.20.7
[2.20.6]: https://github.com/taiki-e/install-action/compare/v2.20.5...v2.20.6
[2.20.5]: https://github.com/taiki-e/install-action/compare/v2.20.4...v2.20.5
[2.20.4]: https://github.com/taiki-e/install-action/compare/v2.20.3...v2.20.4
[2.20.3]: https://github.com/taiki-e/install-action/compare/v2.20.2...v2.20.3
[2.20.2]: https://github.com/taiki-e/install-action/compare/v2.20.1...v2.20.2
[2.20.1]: https://github.com/taiki-e/install-action/compare/v2.20.0...v2.20.1
[2.20.0]: https://github.com/taiki-e/install-action/compare/v2.19.4...v2.20.0
[2.19.4]: https://github.com/taiki-e/install-action/compare/v2.19.3...v2.19.4
[2.19.3]: https://github.com/taiki-e/install-action/compare/v2.19.2...v2.19.3
[2.19.2]: https://github.com/taiki-e/install-action/compare/v2.19.1...v2.19.2
[2.19.1]: https://github.com/taiki-e/install-action/compare/v2.19.0...v2.19.1
[2.19.0]: https://github.com/taiki-e/install-action/compare/v2.18.17...v2.19.0
[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.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.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.9]: https://github.com/taiki-e/install-action/compare/v2.18.8...v2.18.9

View File

@@ -81,6 +81,7 @@ 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 |
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- | | ---- | -------------------------------- | ------------------------------- | ------------------ | ------- |
| [**biome**](https://biomejs.dev)| `/usr/local/bin` | [GitHub Releases](https://github.com/biomejs/biome/releases) | Linux, macOS, Windows | [MIT](https://github.com/biomejs/biome/blob/HEAD/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-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-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) |
@@ -88,9 +89,10 @@ https://spdx.org/licenses
| [**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-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-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/master/LICENSE) | | [**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-rdme**](https://github.com/orium/cargo-rdme) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/orium/cargo-rdme/releases) | Linux, macOS, Windows | [MPL-2.0](https://github.com/orium/cargo-rdme/blob/master/LICENSE.md) |
| [**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) |
| [**cargo-udeps**](https://github.com/est31/cargo-udeps) | `$CARGO_HOME/bin` | [GitHub Release](https://github.com/est31/cargo-udeps/releases) | Linux, macOS, Windows | [Apache-2.0 OR MIT](https://github.com/est31/cargo-udeps/blob/HEAD/LICENSE) | | [**cargo-udeps**](https://github.com/est31/cargo-udeps) | `$CARGO_HOME/bin` | [GitHub Release](https://github.com/est31/cargo-udeps/releases) | Linux, macOS, Windows | [Apache-2.0 OR MIT](https://github.com/est31/cargo-udeps/blob/HEAD/LICENSE) |
| [**cargo-valgrind**](https://github.com/jfrimmel/cargo-valgrind) | `$CARGO_HOME/bin` | [GitHub Release](https://github.com/jfrimmel/cargo-valgrind/releases) | Linux, macOS, Windows | [MIT](https://github.com/jfrimmel/cargo-valgrind/blob/HEAD/LICENSE-MIT) or [Apache-2.0](https://github.com/jfrimmel/cargo-valgrind/blob/HEAD/LICENSE-APACHE) | | [**cargo-valgrind**](https://github.com/jfrimmel/cargo-valgrind) | `$CARGO_HOME/bin` | [GitHub Release](https://github.com/jfrimmel/cargo-valgrind/releases) | Linux, macOS, Windows | [MIT](https://github.com/jfrimmel/cargo-valgrind/blob/HEAD/LICENSE-MIT) or [Apache-2.0](https://github.com/jfrimmel/cargo-valgrind/blob/HEAD/LICENSE-APACHE) |
@@ -128,6 +130,8 @@ When installing the tool from GitHub Releases, this action will download the too
Additionally, this action will also verify SHA256 checksums for downloaded files in all tools installed from GitHub Releases. This is enabled by default and can be disabled by setting the `checksum` input option to `false`. Additionally, this action will also verify SHA256 checksums for downloaded files in all tools installed from GitHub Releases. This is enabled by default and can be disabled by setting the `checksum` input option to `false`.
Additionally, we also verify signature if the tool distributes signed archives. Signature verification is done at the stage of getting the checksum, so disabling the checksum will also disable signature verification.
See the linked documentation for information on security when installed using [snap](https://snapcraft.io/docs) or [cargo-binstall](https://github.com/cargo-bins/cargo-binstall#faq). See the linked documentation for information on security when installed using [snap](https://snapcraft.io/docs) or [cargo-binstall](https://github.com/cargo-bins/cargo-binstall#faq).
## Compatibility ## Compatibility

200
main.sh
View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT # SPDX-License-Identifier: Apache-2.0 OR MIT
set -euo pipefail set -eEuo pipefail
IFS=$'\n\t' IFS=$'\n\t'
rx() { rx() {
@@ -41,13 +41,12 @@ download_and_checksum() {
retry curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "${url}" -o tmp retry curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "${url}" -o tmp
if [[ -n "${checksum}" ]]; then if [[ -n "${checksum}" ]]; then
info "verifying sha256 checksum for $(basename "${url}")" info "verifying sha256 checksum for $(basename "${url}")"
echo "${checksum} *tmp" >tmp.sha256sum
if type -P sha256sum &>/dev/null; then if type -P sha256sum &>/dev/null; then
sha256sum -c tmp.sha256sum >/dev/null echo "${checksum} *tmp" | sha256sum -c - >/dev/null
elif type -P shasum &>/dev/null; then elif type -P shasum &>/dev/null; then
# GitHub-hosted macOS runner does not install GNU Coreutils by default. # GitHub-hosted macOS runner does not install GNU Coreutils by default.
# https://github.com/actions/runner-images/issues/90 # https://github.com/actions/runner-images/issues/90
shasum -a 256 -c tmp.sha256sum >/dev/null echo "${checksum} *tmp" | shasum -a 256 -c - >/dev/null
else else
bail "checksum requires 'sha256sum' or 'shasum' command; consider installing one of them or setting 'checksum' input option to 'false'" bail "checksum requires 'sha256sum' or 'shasum' command; consider installing one of them or setting 'checksum' input option to 'false'"
fi fi
@@ -58,18 +57,11 @@ 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
# xbuild's binary name is "x", as opposed to the usual crate name # xbuild's binary name is "x", as opposed to the usual crate name
case "${tool}" in case "${tool}" in
xbuild) installed_bin="${bin_dir}/x" ;; xbuild) installed_bin="${bin_dir}/x" ;;
@@ -157,17 +149,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)
@@ -175,24 +167,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}" ;;
@@ -204,20 +196,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
@@ -235,10 +231,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
@@ -248,10 +245,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 "")
rx 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() {
@@ -287,7 +289,9 @@ snap_install() {
fi fi
} }
apk_install() { apk_install() {
if type -P doas &>/dev/null; then if type -P sudo &>/dev/null; then
sudo apk --no-cache add "$@"
elif type -P doas &>/dev/null; then
doas apk --no-cache add "$@" doas apk --no-cache add "$@"
else else
apk --no-cache add "$@" apk --no-cache add "$@"
@@ -307,9 +311,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
} }
@@ -407,16 +423,28 @@ 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
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 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)
@@ -445,8 +473,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
@@ -468,13 +545,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
@@ -493,10 +568,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}"
@@ -519,7 +594,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" ;;
@@ -580,21 +654,27 @@ for tool in "${tools[@]}"; do
xbuild) tool_bin="x" ;; xbuild) tool_bin="x" ;;
*) tool_bin="${tool}" ;; *) tool_bin="${tool}" ;;
esac esac
info "${tool} installed at $(type -P "${tool_bin}${exe}")" installed_at=$(type -P "${tool_bin}${exe}" || echo "")
if [[ -n "${installed_at}" ]]; then
tool_bin="${tool_bin}${exe}"
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. # cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
case "${tool}" in case "${tool}" in
biome) rx "${tool_bin}" --version || true ;; # biome up to 1.2.2 exits with 1 on --version and --help
cargo-careful | cargo-machete) ;; # cargo-careful 0.3.4 and cargo-machete 0.5.0 do not support neither --version nor --help 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-*) cargo-*)
if type -P cargo &>/dev/null; then
_cargo=cargo
else
_cargo="${tool}"
fi
case "${tool}" in case "${tool}" in
cargo-valgrind) rx "${_cargo}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option cargo-valgrind) rx "${tool_bin}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*) *)
if ! rx "${_cargo}" "${tool#cargo-}" --version; then if ! rx "${tool_bin}" "${tool#cargo-}" --version; then
rx "${_cargo}" "${tool#cargo-}" --help rx "${tool_bin}" "${tool#cargo-}" --help
fi fi
;; ;;
esac esac
@@ -609,7 +689,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

101
manifests/biome.json generated Normal file
View File

@@ -0,0 +1,101 @@
{
"rust_crate": null,
"template": {
"x86_64_linux_gnu": {
"url": "https://github.com/biomejs/biome/releases/download/cli/v${version}/biome-linux-x64",
"bin": "biome"
},
"x86_64_macos": {
"url": "https://github.com/biomejs/biome/releases/download/cli/v${version}/biome-darwin-x64",
"bin": "biome"
},
"x86_64_windows": {
"url": "https://github.com/biomejs/biome/releases/download/cli/v${version}/biome-win32-x64.exe",
"bin": "biome.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/biomejs/biome/releases/download/cli/v${version}/biome-linux-arm64",
"bin": "biome"
},
"aarch64_macos": {
"url": "https://github.com/biomejs/biome/releases/download/cli/v${version}/biome-darwin-arm64",
"bin": "biome"
},
"aarch64_windows": {
"url": "https://github.com/biomejs/biome/releases/download/cli/v${version}/biome-win32-arm64.exe",
"bin": "biome.exe"
}
},
"latest": {
"version": "1.3.1"
},
"1": {
"version": "1.3.1"
},
"1.3": {
"version": "1.3.1"
},
"1.3.1": {
"x86_64_linux_gnu": {
"checksum": "9c31d33b32a42e01d6efc6e0fb12bbbe8e0c6a1a261c2a80b92d1735cb54f4a8"
},
"x86_64_macos": {
"checksum": "ffe128ae63c561e2461da0576b33b4b9c535565a40f8d6c82476d8d64306a7d8"
},
"x86_64_windows": {
"checksum": "4cc2782680fb9b925950314d63a1eb30e09604adf50ec20577eb13ca5dd86821"
},
"aarch64_linux_gnu": {
"checksum": "c33847309aba05d14191e1144119343b3219bdfc24a601242cc99f131c8d67e6"
},
"aarch64_macos": {
"checksum": "64fbd948e2c94f3a1fa2746dc57b5c02e42d1a97482ca5c32209492a877296c0"
},
"aarch64_windows": {
"checksum": "ea180385adedde4c0db59d2ae4efd910306ed46f08f3b91c060df9c45c4cdaa9"
}
},
"1.3.0": {
"x86_64_linux_gnu": {
"checksum": "6b6d971d3a74944fcd1613068c6148908a7a5b71ca2ffd3b44a8cdb65c11f417"
},
"x86_64_macos": {
"checksum": "2b607e7a15a023e3c1be05e1262b6197914a81752ba076fa7bf22b753ed3da4b"
},
"x86_64_windows": {
"checksum": "ff0e25ab793db80346c8ae042b28e7f634ebbc8eff94712297a660c152817696"
},
"aarch64_linux_gnu": {
"checksum": "b08ee12f4e167a4529ecb0056faeb88fa4d1cecfc17a48f9a4b57ce95a6cc6e5"
},
"aarch64_macos": {
"checksum": "178cffd9ef1d7461f3826068612aff297aa3b23aa49e0b3766b498fc268cac2a"
},
"aarch64_windows": {
"checksum": "488208b985e5ed068a700426b0142d5435bdd9d57b11e866ad31d8367f0aa8b6"
}
},
"1.2": {
"version": "1.2.2"
},
"1.2.2": {
"x86_64_linux_gnu": {
"checksum": "4748cc070d114faa357a75cc18d99d3062b3468862ca6eb973fcfe4c07bf9d8b"
},
"x86_64_macos": {
"checksum": "8f5f78b8c3c5e0dcff2531f6b847ff860b8d9c007f9f7564890f52a307284f7a"
},
"x86_64_windows": {
"checksum": "b7fa90a8bfa76331f9764ea4e661c98819899e715ab5b45f34bced2a889f424d"
},
"aarch64_linux_gnu": {
"checksum": "17f05345d1b6642da3ec88592612cf8af7ccbb09a011cee32d956dffe5fd920a"
},
"aarch64_macos": {
"checksum": "04aee13d57fff780d0ff05a6817a1da20745a5e6827f3701a039a15a40620ca9"
},
"aarch64_windows": {
"checksum": "fbf56fbfd9925d5350e543a532456f631c2f2b22ef04c8fb9154cf0721755039"
}
}
}

View File

@@ -21,26 +21,26 @@
} }
}, },
"latest": { "latest": {
"version": "1.3.0" "version": "1.4.4"
}, },
"1.3.0": { "1.4.4": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"checksum": "c6b61f091191e0444f1a503ac8fa8ce53ae7cf77c9472d9e725e9bae099f36d6" "checksum": "1ebe1ea7c17799af5b007fb129127493f1617bc3240b56463753cdaaa9df8f90"
}, },
"x86_64_macos": { "x86_64_macos": {
"checksum": "fb4feeb108fb1133efa402677d202dffcd9dff7956ebae645a442fce0dfd923a" "checksum": "0e9035c97d9f1a2a6707a07415d4b04b459b4f426e168b8742143f86b1272e42"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "14fac83eb6f03159c4b495a0dc8bb338d88b0b3139d45a2fe1be1b0cc5259186" "checksum": "900ca1c7e31e734ecb760473cc8b1f363d96668f358a983a1d41a65b868bbf5d"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"checksum": "59183aae6e296cbaef4bae4e74ef0ddbced3cb52cadff236b8b729d1492cde05" "checksum": "00f3da8c996bbef968c6d081d909e7e85228b14206d46ac6b6ef88bdbe070a19"
}, },
"aarch64_macos": { "aarch64_macos": {
"checksum": "fbfeab286b70b4874563dbaa3630379ee5f4020562d00f67b116baee0ebc83eb" "checksum": "51511cd78b82321b4546a17fc82db0004fadb19cf2435381b72380c6bdf8a3dc"
}, },
"aarch64_windows": { "aarch64_windows": {
"checksum": "30e325fa2da8e47d350237c5bc231f6eb916a3c7202f4b6fc22eeba848a331f1" "checksum": "52a5c59f8745c455674cf6465a04b2f2240d6267c90418e1f943134c2652b249"
} }
} }
} }

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.2" "version": "0.14.3"
}, },
"0.14": { "0.14": {
"version": "0.14.2" "version": "0.14.3"
},
"0.14.3": {
"x86_64_linux_musl": {
"checksum": "7a8b4ccaa6cadda7feea6c125a08f4b63f644fc4e42b09f0e4cdffc42f33f1c3"
},
"x86_64_macos": {
"checksum": "68543cdbb1b33cc42ca744e7914d33bde7eb117a26645e09ef3959992396a4c1"
},
"x86_64_windows": {
"checksum": "92c27d586f1929598e3adc09f8737011b0072817bc18e64c6d612627805aa93a"
},
"aarch64_macos": {
"checksum": "1890410b05c898233cc0025109d383dad412efe2d80ab05f7476e0db5fe721de"
}
}, },
"0.14.2": { "0.14.2": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -11,10 +11,18 @@
} }
}, },
"latest": { "latest": {
"version": "0.6.7" "version": "0.6.8"
}, },
"0.6": { "0.6": {
"version": "0.6.7" "version": "0.6.8"
},
"0.6.8": {
"x86_64_linux_musl": {
"checksum": "732752302dbd31dda85c93fd639d72122d138e913e3e7163b57b739c32832dc5"
},
"x86_64_macos": {
"checksum": "245d9ec0e0fe95f07c112375146edb6f559f7846f0b347f6632d49775e7b1fc3"
}
}, },
"0.6.7": { "0.6.7": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -2,10 +2,140 @@
"rust_crate": "cargo-hack", "rust_crate": "cargo-hack",
"template": null, "template": null,
"latest": { "latest": {
"version": "0.6.8" "version": "0.6.13"
}, },
"0.6": { "0.6": {
"version": "0.6.8" "version": "0.6.13"
},
"0.6.13": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.13/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "35f66efdefe9c598e7a12a9db3904d3e78032b84005f04b51ab5d5c5ba3c9405"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.13/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "57d606eea43182e86f2958f13a04d806968fcf56f0bc46b0d1a5e0fd7dd3b426"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.13/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a85f4ca5b79fb166a81c4332b80f5b771d2811afbefef713cf4687ce93a9ddab"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.13/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "2422d0fec3cfb0cecb4208e67489a500f00a4ca368838747355845ae95a85406"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.13/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "47350212d5b80855958ae7354c48f7c7a69c6ff14652f07ddc1d00ef859a3eb2"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.13/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "e1c2c3e155f60b6c4ccc98f027ee29da0352a61dceb53294dc57e32e49856c91"
}
},
"0.6.12": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.12/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "e5eacdd5e420ec79c9490c8e4b8868ff84c3818cd9f7c93795dae8ac88fa60ba"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.12/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "9558afab9b0c311635e27acc86e21e791ee5cedb44292ce5a7261082aef1d1d2"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.12/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "8817a2fcb5442d84001a18c615c37162d89b539005ebc1497df263c39a450592"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.12/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "466382fabb571dd71d4229eee35e4da2ecb3b3a3c2e28a05972f27129a472bab"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.12/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "2c03d4418382599670772df4b8063ce9d0882c7fbf03a9d7eff68cc172b1b88a"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.12/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "9e15a18977c5f71a8162282f1b5dd9a7ae4c9ba8222640a567ef757bb8e317e8"
}
},
"0.6.11": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.11/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "b1caecd3cdb0aa2ecf5981bd3ca7736fc9931fa8500674b49ca9d816e416cf7a"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.11/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "6819242f22bb219b9955dccc2075b4edf3b11b28b362e9c219789ff829878524"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.11/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "8cb102297aecad58454ac6f70773908ab68e89a0585c2fbf23bb103c44466bdb"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.11/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "dcd8d5b7e8baa1a449beef0dd43c6c9fb724c950febb5a3f0ffa3bb326f18918"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.11/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "c30a4842af20ff8edff34a5d72e1f8b193156f6625840e0a8451af2a6995ffaf"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.11/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "a8ff741f14968ec74f518b9ce427c3c3ae78e97b87f7d5ef3d76bb61aefd8cd3"
}
},
"0.6.10": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.10/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "61396b1c1b96faecccdf2af78e91a0f015c161573debbd3a92f36452cf0736bf"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.10/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "44564f6deec6e514d30e6b18e0c5ac5d8c444a5cfce6216d747ef0b1ca57fea1"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.10/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "ac37e52f6bd0e55a34386d57f96f3b1e5ef72e2f844d701c128ec14dab64ea6a"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.10/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "872fffcdb7cbb1e66c5d7c9e292bb28458a8e575b400d768842a46a181fc76f1"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.10/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "e3d9a5cbee1f0a91e07721ac483525f98e0887ed9ba8058de55449cf71b9aa2f"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.10/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "e77a9ddcc0df20f254354d7cc3c2992908e1621a471e1c43df55b47867153582"
}
},
"0.6.9": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.9/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "4be65b3c79683d4846ef16bf7b3d53f585076ab708f53a5ec0698f7c8f690ceb"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.9/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "e478a9ebccf092e7590647f2d8deb80089c46fa2023d00c22cd569add98f017f"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.9/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "d53025b3b46fa2b67a192bc63508a3efc81011799bd107790615bded974fe2fd"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.9/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "8843746d9edc9ec342c7e23cabff801ba6e9bb3f5fb7019d75a82b05fce566f9"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.9/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "af11df14efd96bc28621ae89019ac9fff48daa80c526d2cb8ccd7e4a748bf882"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.9/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "5bb0b04244ed9a621ce76148103de1e9e25d5db77744391cddeefa5860f45cf2"
}
}, },
"0.6.8": { "0.6.8": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
@@ -17,8 +147,8 @@
"checksum": "f21d6c824bc9cac5c174fa61b8375df35f3c022a19eeefd7156dcaf99c18cb94" "checksum": "f21d6c824bc9cac5c174fa61b8375df35f3c022a19eeefd7156dcaf99c18cb94"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "d3cedb628d4bebfbafd4ff83e47bc5185a0a907c721ab0013af0dcbf0cad7c53" "checksum": "60e272a5f154bff33b8f24f4e47890e7267ed1f583c87f1c425737debec00a5d"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.8/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -43,8 +173,8 @@
"checksum": "c92a155df6839a17e8b167c6a1d0e5adb55a21623186f9401a151b3b478c041b" "checksum": "c92a155df6839a17e8b167c6a1d0e5adb55a21623186f9401a151b3b478c041b"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "3817eed7255cf9683cf9fa580e067584a062cb7029a73b7057de24c2938d1783" "checksum": "973a0daf4f09d8b22bbdefcb5ff194b0225682ad1127648e445cad0d2ee30ce0"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.7/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -69,8 +199,8 @@
"checksum": "d5a619778858d18d4ef3b291012b709b509a79ec66dad41590c692d5f35a30c8" "checksum": "d5a619778858d18d4ef3b291012b709b509a79ec66dad41590c692d5f35a30c8"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "eb56fab90b784fc668e9c25cece9967d296026a24c79db571f7420aca7bd956d" "checksum": "1cba2531361ece88f62f826725bb609f17b05baab8da29bbac8bb44fe7e44008"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.6/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -95,8 +225,8 @@
"checksum": "20530649af2bfa2620368b6a111e5538f9306c4f64a65a1e6dbbb32a7a291b8a" "checksum": "20530649af2bfa2620368b6a111e5538f9306c4f64a65a1e6dbbb32a7a291b8a"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "82731808c811daa55021e8a463884c3d1fa3ff4af67fdfd1b0f8db9936ec91df" "checksum": "15d7daaad73e7d76acb4d562138709fdda2d077bef426835a77dd7d362eeb13e"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -121,8 +251,8 @@
"checksum": "09502a5e1e66457cc98f114e3ab80ace837c42ca20d12439b45ca09febeada05" "checksum": "09502a5e1e66457cc98f114e3ab80ace837c42ca20d12439b45ca09febeada05"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "5e5f61e74ae060b5ff1aeb0ee593a63762ad5e57fe9fbd56d214af96e8b79db6" "checksum": "b54bdf9b1968a352644e9d7faead9a3832e0a2c5f8f89f2c513f258dd3423216"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.4/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -147,8 +277,8 @@
"checksum": "c144b7912bbc9089c116d7c4610c4fc221705af93d6994c31314663bba47785f" "checksum": "c144b7912bbc9089c116d7c4610c4fc221705af93d6994c31314663bba47785f"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a34b31594d58e3ca17e00e1e0837990461570b6382c3ac7e72fbb7c873b3e9f7" "checksum": "3a4d6958e616ebb6d446adeb7cf42674e4d4e9315c10c8cbfa5a00758e7e277b"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.3/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -173,8 +303,8 @@
"checksum": "a6713d40d955691b0efc48d77f42a9c58f740e9036eb052a4c5b8843477054d3" "checksum": "a6713d40d955691b0efc48d77f42a9c58f740e9036eb052a4c5b8843477054d3"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a3146a6454e02a41c56676ed96ddf5acab6ff97117a8a52c19432756dc268396" "checksum": "a6078aef3cc7bbc5992519909229b074bf802dcc3693e5d90405790e1927060d"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.2/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -199,8 +329,8 @@
"checksum": "c92fb2bd0351e4ac6ea087e5169b5fc56bc03c9afc3c8a299c21aae8ecda8067" "checksum": "c92fb2bd0351e4ac6ea087e5169b5fc56bc03c9afc3c8a299c21aae8ecda8067"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "532a25b327dd4fcd9529cc0b2e47caa7919f15d2e40a7477c34a39f40dfea54b" "checksum": "ddb32fb03864dace5cd42bf563b8ea459f58620c28379abbc527888370b1775c"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.1/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -225,8 +355,8 @@
"checksum": "41fd4566cf743ab06a46ee556be251e8948b1ecc316b2e61bc25ecc818cfaf91" "checksum": "41fd4566cf743ab06a46ee556be251e8948b1ecc316b2e61bc25ecc818cfaf91"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a29683e96871938cb7b63f8389f6a7f6b48b10b40999a5f6b6b3abb0988b3b9f" "checksum": "e2e80b5a7c6588a6e8af4b3ceb460e1c859951c51066514727a9434dfff5b07d"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.0/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -254,8 +384,8 @@
"checksum": "1388d51e994673f30380f709f3a8bacbc7f2981c3b294f34945b9612977ae6dd" "checksum": "1388d51e994673f30380f709f3a8bacbc7f2981c3b294f34945b9612977ae6dd"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.29/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.29/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "e6bcc2ea5c5802e53773fb5f64b0d3e43784779ec61d7c2cbefb1a760fb04241" "checksum": "5de11259c7bb37506c6c6ff1427d0afddc5fc7e35688e1e6a43255d6903f1063"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.29/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.29/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -280,8 +410,8 @@
"checksum": "e926dbb2921544835c5e38cd4e3ac3ef5be4b4ab752528f45d805b652df11ee4" "checksum": "e926dbb2921544835c5e38cd4e3ac3ef5be4b4ab752528f45d805b652df11ee4"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.28/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.28/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "fb3df062d00fa8b7efa42e7a87ff997bd74fab2d83f1a476532b991b86065052" "checksum": "688c5febcd440da377af72dc66933b03c70a7393981cefe3fb40b719504900db"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.28/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.28/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -306,8 +436,8 @@
"checksum": "8c3f574813316c74f8f6871eea60af1e9f161ffe598e5ee49029929eb48dadd2" "checksum": "8c3f574813316c74f8f6871eea60af1e9f161ffe598e5ee49029929eb48dadd2"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.27/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.27/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "94c9f1e6c4d50fbf059f81e41c950583a108e78653ad0ec7a63fb7f1e213287b" "checksum": "f9510e9e84e4911feea8038d4358d0fc6c5aeea266508cdc4ef58d0a547fdad1"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.27/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.27/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -332,8 +462,8 @@
"checksum": "697b11ef5f79c9976424c46be7a7f6a7f8efa94b587deb41fa37a2aa0fbcc28b" "checksum": "697b11ef5f79c9976424c46be7a7f6a7f8efa94b587deb41fa37a2aa0fbcc28b"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.26/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.26/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "6d751dde6c8a87997bc9863bfe9b2d1293497b5eb7021465e0873567f8887500" "checksum": "f959bcd911be619c24c627a3ccaca36424215f5dcfdbc3e6443508f8c9d8bc50"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.26/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.26/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -358,8 +488,8 @@
"checksum": "db2c58207e0e8682e8c0a8785bfa221bf54fe7bf4806c39bbc4358bc97c1a146" "checksum": "db2c58207e0e8682e8c0a8785bfa221bf54fe7bf4806c39bbc4358bc97c1a146"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.25/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.25/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "5f5e5e63a76098241b65eaa1a0fa17160a3a512faa03cff2e1ab586052cb32e6" "checksum": "1462f59293c111ed61bdad6ea8783635c22e9b2bd0ebeffdaa95f7587ede6c80"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.25/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.25/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -384,8 +514,8 @@
"checksum": "976bb3fc5eccfff7a6bd4ca0b520cec731bf73dec7a2150328cfe8e139afdabb" "checksum": "976bb3fc5eccfff7a6bd4ca0b520cec731bf73dec7a2150328cfe8e139afdabb"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.24/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.24/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "b7ed532bf21baa58bf833628283652eba192b176bba6be5017723375abe95b66" "checksum": "63cf751b00d7a44cd612fbbd2c45d16f3d0577710ddb0cd0b599f05748b5ea43"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.24/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.24/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -410,8 +540,8 @@
"checksum": "45861be5b6d6501294ed81fbfbb59f93b758f963fe3d818d46d17317ec934371" "checksum": "45861be5b6d6501294ed81fbfbb59f93b758f963fe3d818d46d17317ec934371"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.23/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.23/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "6c6ffef449a11b8563851714eaf5725e64d4e79ac348ab80a625166e602b8741" "checksum": "91b1a929add1e301807a1cfe37f840616c0a5154063078910df487065830b9ee"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.23/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.23/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -436,8 +566,8 @@
"checksum": "a33d6fe8a132385975a3dcde955152095807d7d5d70fd821c10bd973b58591ea" "checksum": "a33d6fe8a132385975a3dcde955152095807d7d5d70fd821c10bd973b58591ea"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.22/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.22/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "c1cee2a486407b09b90fedb5b767586730521a48f2531e6183786f18cd398f83" "checksum": "4a8f1d2405cc51002af163de3d5799b6f38f4168314848fa6da7b0cc09f218ae"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.22/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.22/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -462,8 +592,8 @@
"checksum": "9c176fe69e36ba2fbc7f4858b62f4997456b4b4d7162a0ed3fd234ea8413a476" "checksum": "9c176fe69e36ba2fbc7f4858b62f4997456b4b4d7162a0ed3fd234ea8413a476"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.21/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.21/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "73bda86e9d6bd46bcb32f3162e9b4007c22ce04ac20a73c95eeb56f1f908a1c9" "checksum": "72e3574450eda59ddaa75eba5b0ff58e1434f9e3447aed492191fa00ff6b0ea5"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.21/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.21/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -488,8 +618,8 @@
"checksum": "07c6d081ee4860b513ea85449b26db5a398bba24fe0b163885fd3964cffec9f5" "checksum": "07c6d081ee4860b513ea85449b26db5a398bba24fe0b163885fd3964cffec9f5"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.20/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.20/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "910fc5b685297625bfc0d06d529550d8efb0b1285aae061eb1b59eda0ef945f6" "checksum": "45c22dcdd736ba2b7ab9a33a0e1e00186ee2d34b97e65a0e72f715511c339e96"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.20/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.20/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -514,8 +644,8 @@
"checksum": "d2a0cddf9d40185269d353446adeb6fdaad5420966ec4743545a0953e72f4b0e" "checksum": "d2a0cddf9d40185269d353446adeb6fdaad5420966ec4743545a0953e72f4b0e"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.19/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.19/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "98e4b3c2b42d370807b00b42e8a9a9b4ec8f122e8e8821869e8885ba8f727706" "checksum": "32a60932193443947ddde4fae1f3235fa947826eaf1135a33a4a1d7e8e07d71c"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.19/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.19/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -540,8 +670,8 @@
"checksum": "cf61951503813e1c631f02f4d7791d116b6dd1a5207dd91537ad5d3c205c67ac" "checksum": "cf61951503813e1c631f02f4d7791d116b6dd1a5207dd91537ad5d3c205c67ac"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.18/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.18/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "1894d7b6ab2e6d9c4c146cb4d2ae2acb10f7352f323a48c1c269186e8cb26492" "checksum": "3cb6901d0af50811f6d16c38ce4a1c5b423455817939d565fe15fdfdb6610d21"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.18/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.18/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -566,8 +696,8 @@
"checksum": "d3e467a6e8f3e8a9a2cdd63c2fe19a8ef6d576dfa3f0fefa5e862b4a5e68273b" "checksum": "d3e467a6e8f3e8a9a2cdd63c2fe19a8ef6d576dfa3f0fefa5e862b4a5e68273b"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.17/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.17/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "5db5fda68bdfa4cd00481bd29380cc379cb8dfb71da7f749981094541d05c96a" "checksum": "1fa54dcbbd9e6a60c2d8c36f92f8d026199a54f70eeeac8231a568c2e52fc18e"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.17/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.17/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -588,8 +718,8 @@
"checksum": "fdb6fcab82da1e18578ac9ac8d7c06e1fb00e019f8ffb741f8bd7ea21f9f9565" "checksum": "fdb6fcab82da1e18578ac9ac8d7c06e1fb00e019f8ffb741f8bd7ea21f9f9565"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.16/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.16/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "adc6e229430478e4acd6b658a07255eb7868dd42c5ed8ba125bdb7fc540e3f18" "checksum": "43aa43b41fb1accebeee1dc3d1033031a08a711b295e1801fe62da2b4c8a9d54"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.16/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.16/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -610,8 +740,8 @@
"checksum": "e8c5e359fc9dc50046b88c6cf08bee876de0952a31f6e6c39ea7bfba71d08193" "checksum": "e8c5e359fc9dc50046b88c6cf08bee876de0952a31f6e6c39ea7bfba71d08193"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.15/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.15/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "ed73a3a44ed018bbe6d89dc0c7b7b1146c2a9eeb13f0e12da36f45319f8fbba0" "checksum": "b8da9f656b921406302f2468d13abb3a43a5b39535a8b5e9294fae8f5c78b972"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.15/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.15/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -632,8 +762,8 @@
"checksum": "1c0891a71480d25aa2d8da56275be9a7eb378fcdbd318c39b17a3615daeae08d" "checksum": "1c0891a71480d25aa2d8da56275be9a7eb378fcdbd318c39b17a3615daeae08d"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.14/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.14/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "d1ba00f1227cc7e719759bf2491c0bf94fb4feb584b58d415476b30344a238a3" "checksum": "5f2f6d60cfbe6323a44ab3631f0a7f65bab87f08f58d4645883bfca35ece0354"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.14/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.14/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -654,8 +784,8 @@
"checksum": "2bb4a3863dc6f1e106b2a325666e51abec8bad18539cd84ed82f05138c931a51" "checksum": "2bb4a3863dc6f1e106b2a325666e51abec8bad18539cd84ed82f05138c931a51"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.13/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.13/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "23ce6d2beb8a4a2b911705a7333006443c96b418f1d576fba919060b3eb709c9" "checksum": "227c006ae2aa272d6c561322962f92fe384d0a53f99be790e06752bf04b41349"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.13/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.13/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -672,8 +802,8 @@
"checksum": "88f0e75955a8192b2b44d7864224dbfe0c35c22e0130aa0944e690d00370f30a" "checksum": "88f0e75955a8192b2b44d7864224dbfe0c35c22e0130aa0944e690d00370f30a"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.12/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.12/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "9137f542fc382d4751da75af81249877e2becef62c01dfdedcd28e21f2c3668e" "checksum": "96b04eac7fe6f4263670bd593828d8b2f69a5342b1d7a89de272cde617437251"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.12/cargo-hack-aarch64-unknown-linux-musl.tar.gz", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.12/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
@@ -690,8 +820,8 @@
"checksum": "5d9c4f4d1b125cc7b3f8b3d823f04e4909741b9c657303eb2a03b5c79b0792a2" "checksum": "5d9c4f4d1b125cc7b3f8b3d823f04e4909741b9c657303eb2a03b5c79b0792a2"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.11/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.11/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "61ae364b13a108dccd02043de302ed8dadb5c4c343277d6b93a43bb52c4967bc" "checksum": "b8c9eaea1e872b209777ac112b39cb483c7dc229e48c780526ab9f6ac2532876"
} }
}, },
"0.5.10": { "0.5.10": {
@@ -704,8 +834,8 @@
"checksum": "c1459c80d2dfac359189e4ea1f97da9a2576a09a9315f7db751b419239568820" "checksum": "c1459c80d2dfac359189e4ea1f97da9a2576a09a9315f7db751b419239568820"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.10/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.10/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "d5ef6e97ef70f7f835e8584e2a31af2c3163b29e390f13262d1b4120f349ae41" "checksum": "d9d0387e66b15acf89dc8fedfb026c1184736b348800b58e1a2c242eda4374aa"
} }
}, },
"0.5.9": { "0.5.9": {
@@ -718,8 +848,8 @@
"checksum": "38edacefb163c8f6b701c31a984fa6b1053747faf988354a7a0e2ef200618701" "checksum": "38edacefb163c8f6b701c31a984fa6b1053747faf988354a7a0e2ef200618701"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.9/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.9/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "03e38ac932ec8220590a74d9d94d2dc8a1dbdbd76610496463e8392faa8f717d" "checksum": "27aeaee6a0827e17c3ba3df4a63043e6f66962d5383ef4aec642696c5c680404"
} }
}, },
"0.5.8": { "0.5.8": {
@@ -732,8 +862,8 @@
"checksum": "5351954f5e8cf65497e9240735a8bcfd69067e2e94a26f4be41d16e98fc54965" "checksum": "5351954f5e8cf65497e9240735a8bcfd69067e2e94a26f4be41d16e98fc54965"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.8/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.8/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "c6745c0a5c34942eb6c77546f7ec5d6cf5def0b986cc368769134aa8030c61ec" "checksum": "28e5ddb8fd8f245280131d0dcee6668d8a96994494136325cceacc243dd3bd82"
} }
}, },
"0.5.7": { "0.5.7": {
@@ -746,8 +876,8 @@
"checksum": "7ac464b8a3c147949474c49cc89782ecfde2098f42259a59c673579663c8cc55" "checksum": "7ac464b8a3c147949474c49cc89782ecfde2098f42259a59c673579663c8cc55"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.7/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.7/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "97b9bd16d327de7675c05d7fe4711141ab0920dd7e54759b1fce7899754fcef9" "checksum": "2a198c9506a75a8dc56e23c37c4e4a2bc25573a3c3879bbdfc05d476d57ac042"
} }
}, },
"0.5.6": { "0.5.6": {
@@ -760,8 +890,8 @@
"checksum": "26ceb577099fb9b7a6128527e666c6737e4eb563c553496a83af347be32fc692" "checksum": "26ceb577099fb9b7a6128527e666c6737e4eb563c553496a83af347be32fc692"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.6/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.6/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "ad6a55fd573b04202500cf2c5bde289a4dc1da903804eb2c57f77bfc2e750d81" "checksum": "68f2fad33d3ca995c8b540ccd022f22eafdadace2ea507ad2cc7ae57ee630bd9"
} }
}, },
"0.5.5": { "0.5.5": {
@@ -774,8 +904,8 @@
"checksum": "8a802f72e7b746cbfa3988ba0a8e8a4eb3ddc0ae83d44bf7eb982588e3df2bcc" "checksum": "8a802f72e7b746cbfa3988ba0a8e8a4eb3ddc0ae83d44bf7eb982588e3df2bcc"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.5/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.5/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a354f4cedf79533006f54cde14cbe3eab9710bd235c4c2f99c434bd5e6587712" "checksum": "f690eda799ab3afa94f3ecfe9e786c83a6447e93cb57fb7d5d0d766326fddf2a"
} }
}, },
"0.5.4": { "0.5.4": {
@@ -788,8 +918,8 @@
"checksum": "cf364b6aea436a6751f12b804b7ff2ca6d37ce8ff9090f77255afd2ee4268685" "checksum": "cf364b6aea436a6751f12b804b7ff2ca6d37ce8ff9090f77255afd2ee4268685"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.4/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.4/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "bb0ddbf8b7c3677a99aba3e0f9e8b5780723c3130b44139305c616a460da1507" "checksum": "f6f89330bb459ffdf1105fdde3e6e9a07335d202dcdda42c160dd560f43163dd"
} }
}, },
"0.5.3": { "0.5.3": {
@@ -802,8 +932,8 @@
"checksum": "6135616c0612e13163e61c08e5134df1c6ab13574e4b0635892ddac92af726c0" "checksum": "6135616c0612e13163e61c08e5134df1c6ab13574e4b0635892ddac92af726c0"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.3/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.3/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "cb2c13b540436e64f49a2fa62fcb93398e96d8ed9d5d72b2fd3d977ba066107c" "checksum": "9ed458229ff9fae3bd8eb4d3e676d866037baa114d05f69b1a72411e81e3d36b"
} }
}, },
"0.5.2": { "0.5.2": {
@@ -816,8 +946,8 @@
"checksum": "e87fde5b6a606358e47444d8fc24e4b40c857194a209d13d6440ee0b1fc53d71" "checksum": "e87fde5b6a606358e47444d8fc24e4b40c857194a209d13d6440ee0b1fc53d71"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.2/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.2/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "cc5a51aa99804d635afa6ddfe7fde0fb7a0b701320aeff587d5ce7137ae1e914" "checksum": "be8bad1ad9bca2a7c2420357859458c57d9224c96cbd3f7ed809804ce267fd4f"
} }
}, },
"0.5.1": { "0.5.1": {
@@ -830,8 +960,8 @@
"checksum": "30045b01f7a42ce7d9bed1ac24e5b142d120ea94c4969309bea45583a5a39e63" "checksum": "30045b01f7a42ce7d9bed1ac24e5b142d120ea94c4969309bea45583a5a39e63"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.1/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.1/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "c77e0dbc784afb3a80e609fb9971a5989defb98278c43ba377697d2b452daf20" "checksum": "b98c3aca93daf2259859c8aadfdbd0cd776683b7b758145403212af9b0d7f938"
} }
}, },
"0.5.0": { "0.5.0": {
@@ -844,8 +974,8 @@
"checksum": "856920064d777168fb9c42e193683632ac6a478ce2887eeb6573722be46eeb25" "checksum": "856920064d777168fb9c42e193683632ac6a478ce2887eeb6573722be46eeb25"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.0/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.5.0/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "dac711fed5211aca6bbfb91ef25b4b4123963ec320db98c26e559dc08646937e" "checksum": "8e1b45402516a1c1a91c23c8e79f5874f10da74563d8f0a816898e49b079ca61"
} }
}, },
"0.4": { "0.4": {
@@ -861,8 +991,8 @@
"checksum": "dea0f5995bda29ba410cd6dcfa6c5b7889df80589df3d43e1ca27879789706f5" "checksum": "dea0f5995bda29ba410cd6dcfa6c5b7889df80589df3d43e1ca27879789706f5"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.4.8/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.4.8/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "86fc8ca834c8a0bdd8b6958590efd1f528862d1b466cb00e863b644fce90ed8f" "checksum": "bcfa7e8b9b8fa0310f0a5833302cd641fdb922fb94512390f00a9511cfcebcfc"
} }
}, },
"0.4.7": { "0.4.7": {
@@ -875,8 +1005,8 @@
"checksum": "cabd94401dfbee35df5335ffbdae891dcf5f329824cc254ddca3252dacd7d61e" "checksum": "cabd94401dfbee35df5335ffbdae891dcf5f329824cc254ddca3252dacd7d61e"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.4.7/cargo-hack-x86_64-pc-windows-msvc.zip", "url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.4.7/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
"checksum": "d40ebbc502af428f0911d6cb395dfab971d2233822146d81f8098a2a014e5090" "checksum": "dbfd2bf26b9287acd9733af4b07f9333477eedd1ee8921483ad342662c20f4f1"
} }
}, },
"0.4.6": { "0.4.6": {

View File

@@ -18,10 +18,78 @@
} }
}, },
"latest": { "latest": {
"version": "0.5.31" "version": "0.5.35"
}, },
"0.5": { "0.5": {
"version": "0.5.31" "version": "0.5.35"
},
"0.5.35": {
"x86_64_linux_musl": {
"checksum": "21e7d42185f8eae113508ec2b8c3bfdd22c6293bb6b0ccd74ab0bd21153dc3b4"
},
"x86_64_macos": {
"checksum": "dca22baa597f337ee78f5418b19bb2367108da77cb430be30febd55901537a2f"
},
"x86_64_windows": {
"checksum": "45b21cd8b0f89b6ee5ad3093fcb542cf8c41ce86e36e89b7a26166c9f7792e47"
},
"aarch64_linux_musl": {
"checksum": "56c69758d6bb493dba53a2ac21343a983d22ca677d9ecfe8a4bb66fd185013e8"
},
"aarch64_macos": {
"checksum": "28525454f2fe26ad8eba301134aeff305348b4e143ebdb62f07f2c93db1eb347"
}
},
"0.5.34": {
"x86_64_linux_musl": {
"checksum": "2d312925ea2178de060b5628c899f44f6a162ce621a87de8c3aa0658573f9641"
},
"x86_64_macos": {
"checksum": "f36ffdc068216d65618bced4213177a22f9fae8539070acdff4b84757940c98f"
},
"x86_64_windows": {
"checksum": "62dc60bfb3cde60e59840c72caafe698dfe0d01c63544a31df1d8c40fc924906"
},
"aarch64_linux_musl": {
"checksum": "96ea303a801f640a205c3e53bd240ee22c51e02a4feb90ab879882ed9b774247"
},
"aarch64_macos": {
"checksum": "81eb3dc6dec49c1eb1a9eb5cbdd40395dbf62541be655c4df3ebb09276a5c0b1"
}
},
"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": { "0.5.31": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -2,7 +2,32 @@
"rust_crate": "cargo-machete", "rust_crate": "cargo-machete",
"template": null, "template": null,
"latest": { "latest": {
"version": "0.5.0" "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": { "0.5": {
"version": "0.5.0" "version": "0.5.0"

View File

@@ -19,10 +19,52 @@
} }
}, },
"latest": { "latest": {
"version": "0.37.0" "version": "0.37.3"
}, },
"0.37": { "0.37": {
"version": "0.37.0" "version": "0.37.3"
},
"0.37.3": {
"x86_64_linux_musl": {
"checksum": "5c780ecc94dac2bf653ca46e6f7c9d1178961d3e16d8623928d7d6bf21fa2e5e"
},
"x86_64_macos": {
"checksum": "916d7f27c9899a53e388099afe22582f4b8a4dd23f55b1fed43d7a8ffcbcd6cb"
},
"x86_64_windows": {
"checksum": "d2fb430a39498b030033e97260fcfe09065cd1fd37f1a59180af8e521e677769"
},
"aarch64_macos": {
"checksum": "a38a93a85c8d3225b3fecda18bceaf141e890b0bed54fb58f929b56dbac6e908"
}
},
"0.37.2": {
"x86_64_linux_musl": {
"checksum": "6413e92bbeab0e43aa933a2843cb7abfc087dee7a076f3b367d2b7a0054f1c88"
},
"x86_64_macos": {
"checksum": "265125172bf82d985bb71974b576a763c7da34ed7f6889ea324ca4910f728b54"
},
"x86_64_windows": {
"checksum": "5f20ef9b30620113d2b8c4c0663f4ba219afd8e01868774702889abe4ac75843"
},
"aarch64_macos": {
"checksum": "0cb0ad856383162cf2e3634e6264f096b420694bf78c224afc999d8033186eb1"
}
},
"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": { "0.37.0": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -21,10 +21,50 @@
} }
}, },
"latest": { "latest": {
"version": "0.1.19" "version": "0.1.21"
}, },
"0.1": { "0.1": {
"version": "0.1.19" "version": "0.1.21"
},
"0.1.21": {
"x86_64_linux_musl": {
"checksum": "2fe86915ae5f67a00b4ca0f94f98d57036ed549dba2247d8c20be178d3bd33f2"
},
"x86_64_macos": {
"checksum": "783d3e662e6ad584ba2230ff427debbd6e2dcccb3bd1d1a74ca6dcab1a761830"
},
"x86_64_windows": {
"checksum": "8abdc6e31e0d925c220b8dd439567dbe6400bdbd0dd293bb659acf6f4feb02c9"
},
"aarch64_linux_musl": {
"checksum": "a21e1bf829b433b86c8bf77da51e300bb2dd06e563c10bae848043f5a6f6d8c8"
},
"aarch64_macos": {
"checksum": "0a86d29bb4c43e54e0836aa12fe6955c2bc33c1aaef8f0b6f04f2cde24786a65"
},
"aarch64_windows": {
"checksum": "4d480b90187a813b9d56f957ad5b0dc67e696140c3dc2e5c2fc3a2f8ecca4e0d"
}
},
"0.1.20": {
"x86_64_linux_musl": {
"checksum": "b6bc98e33c7a2868d8d2079fbc0bb4fab13e7b61927242acdade67901eb8a5d1"
},
"x86_64_macos": {
"checksum": "4dfce639a978a913ef374125a8721f7fb551238a861863865244b97742c936af"
},
"x86_64_windows": {
"checksum": "aa87c50a0cfd10c075c51e552f7427272f3fe461c763da29eefed904fc7846c5"
},
"aarch64_linux_musl": {
"checksum": "9810227752801c9770893613b193db780916a990fb7c8490e55f0ba8352d4d03"
},
"aarch64_macos": {
"checksum": "376c20fcf46134a3e006d7b2737521a89e75a39b032868f479755931bb3ae397"
},
"aarch64_windows": {
"checksum": "90f80b37ec4e33b7d5606b7bf3a023390b708bc0b84e8e1786311b318d77ea01"
}
}, },
"0.1.19": { "0.1.19": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

152
manifests/cargo-rdme.json generated Normal file
View File

@@ -0,0 +1,152 @@
{
"rust_crate": null,
"template": {
"x86_64_linux_musl": {
"url": "https://github.com/orium/cargo-rdme/releases/download/v${version}/cargo-rdme_v${version}_x86_64-unknown-linux-musl.tar.bz2"
},
"x86_64_macos": {
"url": "https://github.com/orium/cargo-rdme/releases/download/v${version}/cargo-rdme_v${version}_x86_64-apple-darwin.zip"
},
"x86_64_windows": {
"url": "https://github.com/orium/cargo-rdme/releases/download/v${version}/cargo-rdme_v${version}_x86_64-pc-windows-gnu.zip"
}
},
"latest": {
"version": "1.4.2"
},
"1": {
"version": "1.4.2"
},
"1.4": {
"version": "1.4.2"
},
"1.4.2": {
"x86_64_linux_musl": {
"checksum": "8555ae93237e1702e79542c810657afc1ff76282c9ecd7b21aa22f5f3b3c21d2"
},
"x86_64_macos": {
"checksum": "2c6996d2b6ec150275436bc8d0969d75247b4ac7400c43c63d24cfc843266f47"
},
"x86_64_windows": {
"checksum": "a6333997cb418b369a3ed005eebf30313942bd824456f26d2834af87c8449475"
}
},
"1.4.1": {
"x86_64_linux_musl": {
"checksum": "cbcb893f585def07cb64486063cc9d490fb2eb2b06eaec7e2beb70a47bfd004c"
},
"x86_64_macos": {
"checksum": "053236ff190a3601230886679c8fb3405fcbc7f49188eef0bda75a72bd78b9a7"
},
"x86_64_windows": {
"checksum": "83f38b7299c785e9712e7aab3461eea131e79f13bbd45953514019cd75412b1d"
}
},
"1.4.0": {
"x86_64_linux_musl": {
"checksum": "2aacb472abeb943a8c4676aa4e4603ab4b037ee9d43eda611b4e8d65c8162100"
},
"x86_64_macos": {
"checksum": "0664ef1e0d70b5dbe68c8ad896e5d59972440b4dd46d970d0adf94e5bc5a1768"
},
"x86_64_windows": {
"checksum": "8df835d817813252502a28d01e6352b5141660e914b89baf72956a2274d4d1a7"
}
},
"1.3": {
"version": "1.3.0"
},
"1.3.0": {
"x86_64_linux_musl": {
"checksum": "811341ec9724388660bcd4d1a8c6d04947252ff44adaef7d75ba19a58dc25bfc"
},
"x86_64_macos": {
"checksum": "a8d4dbe536b9b3389e9db9ff226384705defaed3c2d09f2cf2ead21b5bcd2e4e"
},
"x86_64_windows": {
"checksum": "6b2988694fc870e6071ada84c94d03736daaf0706daed21765e898235d927296"
}
},
"1.2": {
"version": "1.2.0"
},
"1.2.0": {
"x86_64_linux_musl": {
"checksum": "e2cea84cd1c7f7c2c03662396a6ef268474c66faa471a6e755c4bda8d35ef0e2"
},
"x86_64_macos": {
"checksum": "4226504f45e96dfca35a72b4631dde717cf2f5fed0f87a3cb71d58d6055a1b60"
},
"x86_64_windows": {
"checksum": "0119712829cd6aaef12094441b574d759c45d62bab069224d21dc1af52df9390"
}
},
"1.1": {
"version": "1.1.0"
},
"1.1.0": {
"x86_64_linux_musl": {
"checksum": "1e645bca96bb5c497e6af8a6d7249572709a6fb45b7b7afa789440d7400a61a4"
},
"x86_64_macos": {
"checksum": "1487f7cf5e795b08f56e29dfdb542343ae5b4d74805b6bfb7726da5f6c0dc99f"
},
"x86_64_windows": {
"checksum": "82f224eef98778d36088eac8a7bdd4b4640b4d10429150718bc3975e4f16daa8"
}
},
"1.0": {
"version": "1.0.2"
},
"1.0.2": {
"x86_64_linux_musl": {
"checksum": "85d3b8c5fd247557b90357718f156a9d2cb637f82a77a7bea800d1fad4b870b7"
},
"x86_64_macos": {
"checksum": "0f4d749a397b33d41295f74f005534a4c1a785dfcfa6dc4b5df1016d289cbec6"
},
"x86_64_windows": {
"checksum": "2416fe0cebcde091138882f45044d2e057940653194d2474139967b6e7e09cb5"
}
},
"1.0.1": {
"x86_64_linux_musl": {
"checksum": "ef601c5773119972e67cfe61518b46faaf993037ae7caaf455178e8a6466be67"
},
"x86_64_macos": {
"checksum": "ea1bccf8a3290c7a1fd2f30e27bf2005f264f7219555b2131a23fb5ca91d0105"
},
"x86_64_windows": {
"checksum": "3abe728bb5bb983683698189110ddbc8b72b0ca965d5a75b802ef981e10ef437"
}
},
"1.0.0": {
"x86_64_linux_musl": {
"checksum": "ff0c7e7adcaf5dc0943d5ca075a49f77e5a9a531e6e3fbb8e04aa8708d93199f"
},
"x86_64_windows": {
"checksum": "51e755b5a0613408e1d42de561ad88f80e44c9494bc02f18d92a6d9cd0c4cff8"
}
},
"0.7": {
"version": "0.7.3"
},
"0.7.3": {
"x86_64_linux_musl": {
"checksum": "11b1eb91e95f5fe014b6c0ba7850fb677015a1f4c76aa94beca16f6278cbb690"
},
"x86_64_windows": {
"checksum": "ee60b8fe9a0f00fe7e6d75ed31ed6cc566d666a9ca27765654250715016aeb7c"
}
},
"0.7.2": {
"x86_64_windows": {
"checksum": "fe6ca1d38381ed9f8f87359fe8fb50bb87787cb058ed8efe2ebbc72ed03cff80"
}
},
"0.7.1": {
"x86_64_windows": {
"checksum": "a19a756f13d46bb5ee96f8d24696541a494cb38bb726397f06df848b183c49ab"
}
}
}

View File

@@ -18,7 +18,44 @@
} }
}, },
"latest": { "latest": {
"version": "0.26.1" "version": "0.27.1"
},
"0.27": {
"version": "0.27.1"
},
"0.27.1": {
"x86_64_linux_musl": {
"checksum": "a32bbf4da747a61348aebfd3dde141506e372618f85149536972c7e6f713e1c5"
},
"x86_64_macos": {
"checksum": "9c833aa8ec463d3825009ebd509e015a479de716aae89bd78ca76bc45607304c"
},
"x86_64_windows": {
"checksum": "f885b42a00f2af183d2a62a2746133c155f6aab6fd4be99d7a6ae062da7b227d"
},
"aarch64_linux_musl": {
"checksum": "5a48b3e552172dc868ea88453d92bad94f716815c9b225af03029d0209c26499"
},
"aarch64_macos": {
"checksum": "60b79c029d99a57dc1b7ffa6823436796f176a515cca088a6869a8fe50af9ee6"
}
},
"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.42" "version": "0.1.43"
}, },
"0.1": { "0.1": {
"version": "0.1.42" "version": "0.1.43"
},
"0.1.43": {
"x86_64_linux_musl": {
"checksum": "325d25f63df833d2fbacaee71997a628088ddc2c5f73c0c0a93ebacb3b773d16"
},
"x86_64_macos": {
"checksum": "f569ddb4c5a3ca5b881219df860bdb589fb9fcdf091a7eac69dc69ef2b69f39b"
},
"x86_64_windows": {
"checksum": "d25982e539042e919a4a8da82028f5922ce8d891c89ea7e3754545beb383b94e"
},
"aarch64_linux_musl": {
"checksum": "456b5a24f702bf33ddb96d96e79fe22b60d295fd4777de4b46b91807bfb3c50e"
},
"aarch64_macos": {
"checksum": "29896a416e4d57426ab67df05d50a909ce749c727b7d6c041116e5254e97e882"
},
"aarch64_windows": {
"checksum": "75782b445a16311643a31d68e252a526a21c9d525923fdd8b09f5e0bd6f7107c"
}
}, },
"0.1.42": { "0.1.42": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

73
manifests/dprint.json generated
View File

@@ -21,7 +21,78 @@
} }
}, },
"latest": { "latest": {
"version": "0.41.0" "version": "0.42.3"
},
"0.42": {
"version": "0.42.3"
},
"0.42.3": {
"x86_64_linux_musl": {
"checksum": "35aa7262e93fa568ac7afa8de1068068defbcfa905555c6c31bbdb816af0534b"
},
"x86_64_macos": {
"checksum": "d447e7439fbef636bde01dff7fe19efae6605b08d153e4476f26e7d98751fe31"
},
"x86_64_windows": {
"checksum": "c08d355ee0cbc5c33bd49502dd9d69c72e91c1855735767ab5eb81f1894c2396"
},
"aarch64_linux_gnu": {
"checksum": "74eee7801a5bc48d159523cda484e745b9d12cb42a8c347de0a2c6a92f22a823"
},
"aarch64_macos": {
"checksum": "3ce841fa02d5fcdd03e749ca14dac783470aab4a1451b0aad7428c86bce79bb6"
}
},
"0.42.2": {
"x86_64_linux_musl": {
"checksum": "ed6a584698e4a79ba5694fdf61960caf51889c53814c903ac01aeb341ddce699"
},
"x86_64_macos": {
"checksum": "d29cc3cfaead4871333138b2cadda56b9b46f579480f7ce6ac444d50588e5f45"
},
"x86_64_windows": {
"checksum": "fa893d7285768451c3e730d8e10c61919a9d5ef22055e9705ea8dff230691525"
},
"aarch64_linux_gnu": {
"checksum": "0659af955bec3b03a9472ad85120720a2edc5d8ef965f7274aee94fcb8fca723"
},
"aarch64_macos": {
"checksum": "01b5200222056218ec56b57ce796c8f54156062e2de14970f75fde6d352a6aad"
}
},
"0.42.1": {
"x86_64_linux_musl": {
"checksum": "01a6d42876a9794b7896f97afc362b8f57697834e86b1e78b91a730668f01543"
},
"x86_64_macos": {
"checksum": "4277e14d1cfd72e261defe0d40c8c39428cdbce0816b5d86ceac8993dc88220b"
},
"x86_64_windows": {
"checksum": "c9763cb6d3ecd3b6ebd0ef53a75c4d79658be50efab72c5f1188f8279873dbee"
},
"aarch64_linux_gnu": {
"checksum": "cf630e1ec446ead8043f9ef1eb21fd43ad26a7240eb97ad47d93eb334250ac26"
},
"aarch64_macos": {
"checksum": "df5cf0451c114881ed9c4b0402cf0a57d020a2f4f524004b14b896af478e1863"
}
},
"0.42.0": {
"x86_64_linux_musl": {
"checksum": "4518f8c97f336b3b985ba51c515ccf1ff1e4b5d10543e2b0184588d1236d7ae5"
},
"x86_64_macos": {
"checksum": "4e3fbcfddd2e4329c73d7d45959efda40531db5f82f8e1244bbbf550dfc0761d"
},
"x86_64_windows": {
"checksum": "47657889206a8351007df84a370cd9a91df7362d83197afcef0a7d057884ed50"
},
"aarch64_linux_gnu": {
"checksum": "e7da4e806bfdbed6ad4936f8ef2e334410d3b80c4bad106058bf3d4c3928f2ca"
},
"aarch64_macos": {
"checksum": "b99413a580b1bf24eac8b593d230cb9ce3038ed6ec6c5aea480a14d0b7bd8fd3"
}
}, },
"0.41": { "0.41": {
"version": "0.41.0" "version": "0.41.0"

24
manifests/just.json generated
View File

@@ -18,10 +18,30 @@
} }
}, },
"latest": { "latest": {
"version": "1.14.0" "version": "1.15.0"
}, },
"1": { "1": {
"version": "1.14.0" "version": "1.15.0"
},
"1.15": {
"version": "1.15.0"
},
"1.15.0": {
"x86_64_linux_musl": {
"checksum": "1e4bed6f63f5f3e99a081336b233a795119e514addcabf8332373efc1b9b3b6f"
},
"x86_64_macos": {
"checksum": "d61a87d3c65462ed77ec7fc14b42b6117529504c28b202a028fdd8b6f69e7e23"
},
"x86_64_windows": {
"checksum": "552a629af3636b43e02c6ad5b0366ad59e750b1f9d3d8fce941f9f04500bed39"
},
"aarch64_linux_musl": {
"checksum": "12ce2fea454b73016f4536274f95cc0ac3c8d30c279cb36b7d8eb6a9331fcf89"
},
"aarch64_macos": {
"checksum": "b153f93b777589fa02a2159d781ae77fc06e6f678ad7ff4cb4310c4821f79868"
}
}, },
"1.14": { "1.14": {
"version": "1.14.0" "version": "1.14.0"

18
manifests/mdbook.json generated
View File

@@ -18,10 +18,24 @@
} }
}, },
"latest": { "latest": {
"version": "0.4.34" "version": "0.4.35"
}, },
"0.4": { "0.4": {
"version": "0.4.34" "version": "0.4.35"
},
"0.4.35": {
"x86_64_linux_musl": {
"checksum": "574c2a4e03ee656999da506c4288084a690f234c589812e29825a7687af5942c"
},
"x86_64_macos": {
"checksum": "ca3281c2b5437a1ccd9079ed8121b3dd97c49be74dae32ea803b540a38c334bb"
},
"x86_64_windows": {
"checksum": "d306a09e552616c1d27f10cebe85848b96970881674ad28d9414cd259a949c39"
},
"aarch64_linux_musl": {
"checksum": "359af01b77fbd6bf6243a3f2b2491a37b5480bbb2674eb2d94f91354253b34f4"
}
}, },
"0.4.34": { "0.4.34": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -1,91 +1,139 @@
{ {
"rust_crate": "parse-changelog", "rust_crate": "parse-changelog",
"template": { "template": null,
"x86_64_linux_gnu": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-x86_64-unknown-linux-gnu.tar.gz"
},
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-x86_64-unknown-linux-musl.tar.gz"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-x86_64-apple-darwin.tar.gz"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-x86_64-pc-windows-msvc.zip"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-aarch64-unknown-linux-musl.tar.gz"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-aarch64-apple-darwin.tar.gz"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v${version}/parse-changelog-aarch64-pc-windows-msvc.tar.gz"
}
},
"latest": { "latest": {
"version": "0.6.2" "version": "0.6.4"
}, },
"0.6": { "0.6": {
"version": "0.6.2" "version": "0.6.4"
},
"0.6.4": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.4/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "df2d97039ede5d93785a801a5d998627ba28bc5d2b092d6602356f7aa9149706"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.4/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "071cd442ad95ea97f14b71cf005558ee08ec33b76e0456c933c6ed9f9033cf16"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.4/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "200bd6074d65e715aee01ea44be992081409c95bd6f852dc59327a14882f820b"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.4/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "ca6d8407b30647465ecc9188f0b1ee83479f05ed378db504ddbe666e15612409"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.4/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "2d3ad67d62a806d2f62e741a53375900e886cb8d414c804cd8c6bb596fb4f06d"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.4/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "e206f5699322ed0e2b91d14b26687cf2040be863dd035490ae68ada19872b416"
}
},
"0.6.3": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.3/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "b01992d759aad7e861363e1d4bbb808b28d530844da1efbc9f8f0f54bad2f813"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.3/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "5d0fa26aa6e742b96d1ef8c7aeccdf63469512a706961921242bde2de7640d89"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.3/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "31c7bbe5b64ce66e948166e71e7d9c0ab5fb694daec7730ccb17b3448300e029"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.3/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "6aa06d96c2a7c89786f9925e6c54472c77fda0c813c335566f870ecb4ca34d8e"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.3/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "963e1b4614cd42a28090365522efc9d7a4f1220ffe9d7bc0b1da8ae29fa6fba9"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.3/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "67fb1af8515d0b531bcea8686570d600fbe80c95994cb0c4cf7216b21a48aac4"
}
}, },
"0.6.2": { "0.6.2": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.2/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "e64e446ba613599ca51583fc94fd1062bd79550e5e75bab9ef3047d021b6bb3a" "checksum": "e64e446ba613599ca51583fc94fd1062bd79550e5e75bab9ef3047d021b6bb3a"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.2/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "11898a671fa48b328fc80d3287b9b9e36c1d97e22031c3bdd2c24fc1b9209ef9" "checksum": "11898a671fa48b328fc80d3287b9b9e36c1d97e22031c3bdd2c24fc1b9209ef9"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "e0a701a6bbd1e01dfa9827f7f6000ed4d7d1783fb17836cafacbfb346e23c19f" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.2/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "8ef3f5dacd2f47811a6ba0559c2474d266c616a3bb76aea9bf3c5236b30891bb"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.2/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "1bcee8f53807c5a571460db33fcd12d00b22220a5e5a1ab6c536c904ef47c604" "checksum": "1bcee8f53807c5a571460db33fcd12d00b22220a5e5a1ab6c536c904ef47c604"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.2/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "76f77e36fec9c4b57190aabdd36fb140121088d3bfa1b2672be2999b71eb6a48" "checksum": "76f77e36fec9c4b57190aabdd36fb140121088d3bfa1b2672be2999b71eb6a48"
}, },
"aarch64_windows": { "aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.2/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "c9315d7352538cbe67dc9547ee8fbd6bf196fb0ae6317b903dbb6bc57b0420ff" "checksum": "c9315d7352538cbe67dc9547ee8fbd6bf196fb0ae6317b903dbb6bc57b0420ff"
} }
}, },
"0.6.1": { "0.6.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.1/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "852a84c345787f959b5838958cd9d2f322059cce59fb5b005070b84182231a98" "checksum": "852a84c345787f959b5838958cd9d2f322059cce59fb5b005070b84182231a98"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.1/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "fcb4c8c48628967cbc2e52efbdb1a9b9151ff8de7cbb64fd60c8fc0cb5c12e73" "checksum": "fcb4c8c48628967cbc2e52efbdb1a9b9151ff8de7cbb64fd60c8fc0cb5c12e73"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "1f0790b02b9afb4036e7bfdf5c0954f1099ac7b8474f4a729a29742b8bba68f2" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.1/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a0bf79cdfb76aa2ccb546c9734d3d06535858419485acb42dc3cce68088dc0be"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.1/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "5e31f9eefdc1b0db62bfd022e217b84d644db9f75b3eafaacd716dbb9361efdd" "checksum": "5e31f9eefdc1b0db62bfd022e217b84d644db9f75b3eafaacd716dbb9361efdd"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.1/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "9f699a48e43af8a9ba92ad8c5e0400c57963be89297a0e0e318ef143c9f8cc8e" "checksum": "9f699a48e43af8a9ba92ad8c5e0400c57963be89297a0e0e318ef143c9f8cc8e"
}, },
"aarch64_windows": { "aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.1/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "a1b07108447f59bd3a8cb1055791b4cde570e7c6f8d1f953d850b5370da78b70" "checksum": "a1b07108447f59bd3a8cb1055791b4cde570e7c6f8d1f953d850b5370da78b70"
} }
}, },
"0.6.0": { "0.6.0": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.0/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "80e57ee43411646c8b3adf0f4417c6155418385e1755f26a1dcc92069ef26bfc" "checksum": "80e57ee43411646c8b3adf0f4417c6155418385e1755f26a1dcc92069ef26bfc"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.0/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "4521b4264e3b1bf07580bfaef405d32ba4f4e31323160d999a3ab38c00d3470d" "checksum": "4521b4264e3b1bf07580bfaef405d32ba4f4e31323160d999a3ab38c00d3470d"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "eadf1c574efc7ae46cf79492b37596ba44aebc7f5af6aadff2dad6e30b62e40c" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.0/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "53d689b247d5e49ef5596c8a9e1d806ec08eabcc201542f2cc5394965cb5966a"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.0/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "8626ac4c3e6868b2bc4820a32b3533ab8265737908ee8335442942c8fa8d4d72" "checksum": "8626ac4c3e6868b2bc4820a32b3533ab8265737908ee8335442942c8fa8d4d72"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.0/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "5eb69fda7e62869bae81f22db57d76d1fefabe0e9721c4941a4adcfea112d15a" "checksum": "5eb69fda7e62869bae81f22db57d76d1fefabe0e9721c4941a4adcfea112d15a"
}, },
"aarch64_windows": { "aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.0/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "e435cd91923f4afdf3499a53cdb63446fd4a42a6b580209e93be2e2d47cb6d93" "checksum": "e435cd91923f4afdf3499a53cdb63446fd4a42a6b580209e93be2e2d47cb6d93"
} }
}, },
@@ -94,95 +142,123 @@
}, },
"0.5.4": { "0.5.4": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.4/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "b2a430ebd0d23a3608258446d9f93162ca324fd2ca691ca3baa11625c9d7fec3" "checksum": "b2a430ebd0d23a3608258446d9f93162ca324fd2ca691ca3baa11625c9d7fec3"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.4/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "4476f9ce9de07ddba76f77e6260e3cbece3801654882c8161694d742f8f01a59" "checksum": "4476f9ce9de07ddba76f77e6260e3cbece3801654882c8161694d742f8f01a59"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "6cd753b60b3385e2fd3aef79bc9a6c954f01737e2380bdc06b2c55ef9d4b8c79" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.4/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "e00a6a87be6c71a7f246cf3066cba8b76f02094ab6c482186eec9d037447bb21"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.4/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "73f85fdda5937ac3ee0fd3a4385998cc6a640736b3e73923b0afd061abb575be" "checksum": "73f85fdda5937ac3ee0fd3a4385998cc6a640736b3e73923b0afd061abb575be"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.4/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "164936f970d8ab870aa3355411db736994dbb86019630bf2818d0958d30768b5" "checksum": "164936f970d8ab870aa3355411db736994dbb86019630bf2818d0958d30768b5"
}, },
"aarch64_windows": { "aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.4/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "b7c1c92c83fce15746c1d289fbf14b31b3f43a043e28b25638ae8ed7b1005ea0" "checksum": "b7c1c92c83fce15746c1d289fbf14b31b3f43a043e28b25638ae8ed7b1005ea0"
} }
}, },
"0.5.3": { "0.5.3": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.3/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "7ec427621565a6bb67d7e46397471b374435bc4622339595afa42d74d2f2a2cf" "checksum": "7ec427621565a6bb67d7e46397471b374435bc4622339595afa42d74d2f2a2cf"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.3/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "9ab883043949d6b2080720dd88575774cb09bb8c97cacf8e8db06b46f91bc4a3" "checksum": "9ab883043949d6b2080720dd88575774cb09bb8c97cacf8e8db06b46f91bc4a3"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "ff0032b4710ee12bbdf7afd11c382b81a011948fab529eb0259050531f49c89e" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.3/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "2567460b8c516d6cb6425db18f8cfdd17f0e999b452ba74ed2b1b3c60013ffa8"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.3/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "d887eab1fd39ac54202058595efda8e4ef28d30697aea5b1d901e0922682db64" "checksum": "d887eab1fd39ac54202058595efda8e4ef28d30697aea5b1d901e0922682db64"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.3/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "ceca49aff58a2ebd6cef9c54684c8311e71012ef2d9eb6b69524635ce13df0bc" "checksum": "ceca49aff58a2ebd6cef9c54684c8311e71012ef2d9eb6b69524635ce13df0bc"
}, },
"aarch64_windows": { "aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.3/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "bf9e1df974e64704ed063442c500a274d627398279715061fb29c1fd417efc9a" "checksum": "bf9e1df974e64704ed063442c500a274d627398279715061fb29c1fd417efc9a"
} }
}, },
"0.5.2": { "0.5.2": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.2/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "bcaa72cf77aac0b897a8f6380106acb44b1dd28e53feefdd8f91bb4becbf355f" "checksum": "bcaa72cf77aac0b897a8f6380106acb44b1dd28e53feefdd8f91bb4becbf355f"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.2/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "3f0df01fe56c3e93747a252c4fa00cd40af53238747c5532665dc5ffea2e0016" "checksum": "3f0df01fe56c3e93747a252c4fa00cd40af53238747c5532665dc5ffea2e0016"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "73880b557ceeb9700285d240d64a1baeef42e2bcab50c7a2cd9cf0b8d3656509" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.2/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "0de85d219007b5e4844378e61d095bb199f456827d0c22bc7a3389c4e1193cf0"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.2/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "41f4adb16160f2d31df32aebaae4a4966af9d8136b092f0e94d1788ff1c84866" "checksum": "41f4adb16160f2d31df32aebaae4a4966af9d8136b092f0e94d1788ff1c84866"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.2/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "ea4029f555127d082e4f4873ae1382f32b1d0afdaac6952eb346c5ae82c55fee" "checksum": "ea4029f555127d082e4f4873ae1382f32b1d0afdaac6952eb346c5ae82c55fee"
}, },
"aarch64_windows": { "aarch64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.2/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
"checksum": "a1981ac1f0cf6601561f903809cb874ed3141dba240253509e34a8219d002517" "checksum": "a1981ac1f0cf6601561f903809cb874ed3141dba240253509e34a8219d002517"
} }
}, },
"0.5.1": { "0.5.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.1/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "c2591b7921d548f628cb2ce59cd6c0fab1fab44dac62d98a23c75b84d2f2b935" "checksum": "c2591b7921d548f628cb2ce59cd6c0fab1fab44dac62d98a23c75b84d2f2b935"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.1/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "9fc483f5404131fc4ca68e6b200dfce3248c1eed72656b17258273090ea496fa" "checksum": "9fc483f5404131fc4ca68e6b200dfce3248c1eed72656b17258273090ea496fa"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "f82da8abf149c417647b99bb95266d749c26d24f0bd48080499fc335010572ed" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.1/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "decca568f51dc5ce2c827a724b02ef257fbbb0c36d6183ae4ba710a43d69b9c7"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.1/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "1471f2bcdb4ccff7b525335149cd0b1baddc1243c1d7c4f1a093def61e5d3a10" "checksum": "1471f2bcdb4ccff7b525335149cd0b1baddc1243c1d7c4f1a093def61e5d3a10"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.1/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "604301690c6d8a104a268a149690fdc819635fc529d0f80cab15871e6548f150" "checksum": "604301690c6d8a104a268a149690fdc819635fc529d0f80cab15871e6548f150"
} }
}, },
"0.5.0": { "0.5.0": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.0/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "ea5a58854c97bb1be800831bd9d0253cc9c78d7f8df2e3593fd899b587d5f4cf" "checksum": "ea5a58854c97bb1be800831bd9d0253cc9c78d7f8df2e3593fd899b587d5f4cf"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.0/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "c284fd62849b4996ac7ca3a8c4a835a74fd22ff7b5e2557fafb8c7059ca82cd2" "checksum": "c284fd62849b4996ac7ca3a8c4a835a74fd22ff7b5e2557fafb8c7059ca82cd2"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "22bce029020c4b4dfe3019a2eb58f655a30dbc52c5a0644cf5bcbae8c2e2fc41" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.0/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "b62e7c044bb300834687f71db78f5a44844de89575b2bb98949ada45f8ee8185"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.0/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "d2de3a2efcf7f507d4fbe24c9752e62c5c6ae8872a83efe31e05128887e8530c" "checksum": "d2de3a2efcf7f507d4fbe24c9752e62c5c6ae8872a83efe31e05128887e8530c"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.5.0/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "c687c0344c73fda35d3d78c5ff508240a25b7c54a32b56e7f4322b034528997a" "checksum": "c687c0344c73fda35d3d78c5ff508240a25b7c54a32b56e7f4322b034528997a"
} }
}, },
@@ -191,127 +267,162 @@
}, },
"0.4.9": { "0.4.9": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.9/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "097ff59514f84cbc9b43406c9e8ff656fcfcbb821251eef538654e1cd0aac624" "checksum": "097ff59514f84cbc9b43406c9e8ff656fcfcbb821251eef538654e1cd0aac624"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.9/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "4d31a7bb6b4c68f0b47faaec9680fa6eb5a69e47ddbdc76e9d85086585857ad0" "checksum": "4d31a7bb6b4c68f0b47faaec9680fa6eb5a69e47ddbdc76e9d85086585857ad0"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "e94fba8988791b026299f04c17387fea4510146d0bc219a30f360a7cfe536c79" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.9/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "d5893d72dd63f1466b68f5d768b6eecbb6454943e43f0d25a237bdc7f73ec057"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.9/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "c25095aa111756b1600a418a06346e7e728211f040e5f3fa99e5f9e72f744001" "checksum": "c25095aa111756b1600a418a06346e7e728211f040e5f3fa99e5f9e72f744001"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.9/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "e894a0ffb7cd16086f3ecfbe2fc3ccc4775828dd336dfb74c53770fe4bf86150" "checksum": "e894a0ffb7cd16086f3ecfbe2fc3ccc4775828dd336dfb74c53770fe4bf86150"
} }
}, },
"0.4.8": { "0.4.8": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.8/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "41bc030a00e13a83faf6021b7be3ab50af7479f5c6ca6ca0a00ae29a0d71bcc8" "checksum": "41bc030a00e13a83faf6021b7be3ab50af7479f5c6ca6ca0a00ae29a0d71bcc8"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.8/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "88c591fdf537064c64fde8f916065afacd845a5929c949aa6b4cd4b38a81437b" "checksum": "88c591fdf537064c64fde8f916065afacd845a5929c949aa6b4cd4b38a81437b"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "1ae6b5dabbeb27e7327af27b879a58662b7e9daf5cc63165cdd4969c96ffdc89" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.8/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "98161b2e194a19f774358fd1882788f978b45c671571f253aee5d3a5dc6fba08"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.8/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "9756134014b0d24c300b54da03d554cdac710f3c2ba48beeb4031a151f3a2479" "checksum": "9756134014b0d24c300b54da03d554cdac710f3c2ba48beeb4031a151f3a2479"
}, },
"aarch64_macos": { "aarch64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.8/parse-changelog-aarch64-apple-darwin.tar.gz",
"checksum": "6340bb46d3daf9920512e578d5f6fb0e34e5a26e71845bc93797b87445584191" "checksum": "6340bb46d3daf9920512e578d5f6fb0e34e5a26e71845bc93797b87445584191"
} }
}, },
"0.4.7": { "0.4.7": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.7/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "b9869865ea79e3bf4931cca16a82f7226c84ffca9b508d2279b626e1c63e5151" "checksum": "b9869865ea79e3bf4931cca16a82f7226c84ffca9b508d2279b626e1c63e5151"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.7/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "d760dc945f491e37248d8446e8d373377e32bb1c1186e38be783c76147d91654" "checksum": "d760dc945f491e37248d8446e8d373377e32bb1c1186e38be783c76147d91654"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "a53d5a49dda955432c1ec60160d2e017aef1d80124d3423e15e1441fdbf8a136" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.7/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "a847379af44c795270a6bef976b20e5bb4bcdf2f0f559e4ec6267f049dbd7dfc"
}, },
"aarch64_linux_musl": { "aarch64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.7/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
"checksum": "f4b1e860561adce28cbbf1ddebd6464830addf4157a6b4ea5dbfbd199c788cbf" "checksum": "f4b1e860561adce28cbbf1ddebd6464830addf4157a6b4ea5dbfbd199c788cbf"
} }
}, },
"0.4.6": { "0.4.6": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.6/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "976d47ff81eafeda2d8d7bd4ed7bb13e466c46fe701e6ad9e6386ee615ea65a6" "checksum": "976d47ff81eafeda2d8d7bd4ed7bb13e466c46fe701e6ad9e6386ee615ea65a6"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.6/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "b76556015fc0346b28322869cf13fc637e1258d3e97416228da46135423d63cd" "checksum": "b76556015fc0346b28322869cf13fc637e1258d3e97416228da46135423d63cd"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "8584ad8d111520d52df09d15cc01025f87059d0c4d85a5fcd580f3b63ef19ee9" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.6/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "f67bb072cdad0d740b44b950b50a8a42891b39290e8f28936c0783b7539e5162"
} }
}, },
"0.4.5": { "0.4.5": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.5/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "0da8fab497c50ee139e6595649fa532d18d37e0db72ef7974f38671ac4449432" "checksum": "0da8fab497c50ee139e6595649fa532d18d37e0db72ef7974f38671ac4449432"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.5/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "4c9cfa68728db25c7cb81664be53125accad3a38b2c155efb2dc8fa9ca23b643" "checksum": "4c9cfa68728db25c7cb81664be53125accad3a38b2c155efb2dc8fa9ca23b643"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "3d50c65434034db794a45398066694e57f82f5c80ad3e727f0d777501148de91" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.5/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "19fd27e72c9822a9a620c821107f8d0ca93febf2f20185317035cb0d63db0caa"
} }
}, },
"0.4.4": { "0.4.4": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.4/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "6092da0f65f9853220d96bce57d0bed1dbe904f594f66f6e546ce765a202d8cb" "checksum": "6092da0f65f9853220d96bce57d0bed1dbe904f594f66f6e546ce765a202d8cb"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.4/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "4ea7d8b471fb1729d8943f9aefcfd16febbbf2409e83ba19efc03c67516931e2" "checksum": "4ea7d8b471fb1729d8943f9aefcfd16febbbf2409e83ba19efc03c67516931e2"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "59728a764d3ed873703151740f23eb1f60a486944035f8043b0294562eda281d" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.4/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "76729ddd7729374d5b8923a0d85a0de5edf645ef6e2f3cf8c6d0230458164513"
} }
}, },
"0.4.3": { "0.4.3": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.3/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "f4120023ad79b68e3287e775c4e55773db8a298e7c995fde67c99c31ab1d38c6" "checksum": "f4120023ad79b68e3287e775c4e55773db8a298e7c995fde67c99c31ab1d38c6"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.3/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "7f717140cc8cc8531e443195f5ae1913d3ab01033d3538f7394622c561c5c470" "checksum": "7f717140cc8cc8531e443195f5ae1913d3ab01033d3538f7394622c561c5c470"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "531eea66ecfc1641d0d8591d9ba6f5c1d44bf8206093acd8c5d65a1d3e373935" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.3/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "65ca90a7da79484466e65888bf3894d925d1924617d6a881f64c95a2a2bf59c5"
} }
}, },
"0.4.2": { "0.4.2": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.2/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "6bbe76fb0d634b5a84017ccc80bf97bb8af81a44b5c44fc5f08954671d4f63ef" "checksum": "6bbe76fb0d634b5a84017ccc80bf97bb8af81a44b5c44fc5f08954671d4f63ef"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.2/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "3cc003763118f9d4d83f68f3a1e804cd6e33c2f7c4678bbf54ee0a54a11e3878" "checksum": "3cc003763118f9d4d83f68f3a1e804cd6e33c2f7c4678bbf54ee0a54a11e3878"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "369e163832707459ecb8d1a84ea180ab72ae3b00e1a863737c8fa104449d2db5" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.2/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "147919f6909058b09c9e9dd7f11681a177127c2ec05016472964aba36e1e7b7a"
} }
}, },
"0.4.1": { "0.4.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.1/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "95b904b065cc246de7e7b82d7aa3d6ee4a96dd9d2f2e195237c234d3e3395500" "checksum": "95b904b065cc246de7e7b82d7aa3d6ee4a96dd9d2f2e195237c234d3e3395500"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.1/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "5bce895e3f57e958eb4ce4a5552e749a74593e2fc9d8e04422ed94df0b3b2056" "checksum": "5bce895e3f57e958eb4ce4a5552e749a74593e2fc9d8e04422ed94df0b3b2056"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "afe7d832fd955b8d88ed19e20c0b25374714ea9e8017ec20b135d9bff5ef76a4" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.1/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "78a57352c2903c9818be71d8e44a143442e5e0d4de70b6b84e8f7dfe02f1c398"
} }
}, },
"0.4.0": { "0.4.0": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.0/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "53a655b0763b12d421d625c7a53c08220883b6f081d9463d1b1dbf4aa5ad1d23" "checksum": "53a655b0763b12d421d625c7a53c08220883b6f081d9463d1b1dbf4aa5ad1d23"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.0/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "7049ccce500c2edcb7853b3e5a3761d0657e29833e6453b46a64123b95813dfe" "checksum": "7049ccce500c2edcb7853b3e5a3761d0657e29833e6453b46a64123b95813dfe"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "f271492b124f696698a153c61962637d8761bd1a41d560dce6139f143211a16e" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.4.0/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "b69da4c94be3e57c14cab8fecbfe795e52fc5c4fa709b7ece5de39281533b67c"
} }
}, },
"0.3": { "0.3": {
@@ -319,13 +430,16 @@
}, },
"0.3.0": { "0.3.0": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.3.0/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "2d9c383127227c2544ef57a9bcaff0b2db7598adc12fcdbfd6c8187cae6d52eb" "checksum": "2d9c383127227c2544ef57a9bcaff0b2db7598adc12fcdbfd6c8187cae6d52eb"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.3.0/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "8d71e1ff24efeb15d15ecef8973c1dcae94879a4b125149170117a054ada624c" "checksum": "8d71e1ff24efeb15d15ecef8973c1dcae94879a4b125149170117a054ada624c"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "5d4ebae0773209be7ac887acd423fcc55faf4698cb00bc0363a413d85c0011a6" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.3.0/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "41544b1e17d9f3d2f20af1d464250ee0d55de0c399c8019b22d62fd060835ebe"
} }
}, },
"0.2": { "0.2": {
@@ -333,34 +447,43 @@
}, },
"0.2.2": { "0.2.2": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.2/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "c1ec7ce2f2eff915e5803106d02b4eac2a31eb80a88d86d4713d984004037e52" "checksum": "c1ec7ce2f2eff915e5803106d02b4eac2a31eb80a88d86d4713d984004037e52"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.2/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "c5ed5285a427da8fe776f76a4b9c783124803bdbf6ec88fe81a2ca237c268bcf" "checksum": "c5ed5285a427da8fe776f76a4b9c783124803bdbf6ec88fe81a2ca237c268bcf"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "1d4820db23edc91cd8cf6feb336648097b08bf0a6e3bb05fdd7c198e031f8a2f" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.2/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "5315e763ceb0d1e27c14a0e7fdbcd6113b77cb835c25dff9d82cf585c537ac1b"
} }
}, },
"0.2.1": { "0.2.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.1/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
"checksum": "18f567e99bb588bab69a8c33c3e9c6d58bdede0eddde14b9d08f7ba9f6b00868" "checksum": "18f567e99bb588bab69a8c33c3e9c6d58bdede0eddde14b9d08f7ba9f6b00868"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.1/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "1a1317858ff1207f3483adf4a4140d439655e6c2c5ec107e94bc65f3a663cd59" "checksum": "1a1317858ff1207f3483adf4a4140d439655e6c2c5ec107e94bc65f3a663cd59"
}, },
"x86_64_windows": { "x86_64_windows": {
"checksum": "0c01f5cbbf9e90a35224c4dc9bd94a6b9b2d9fe1f3b5b1711d2a135b82b3cb76" "url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.1/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
"checksum": "b4d713f937e3a3214c657b67bed9ce8474a7919e0d3064c4dd854f615be1b5e5"
} }
}, },
"0.2.0": { "0.2.0": {
"x86_64_linux_gnu": { "x86_64_linux_gnu": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.0/parse-changelog-x86_64-unknown-linux-gnu.tar.gz",
"checksum": "7fcb2a7a99d08b544ba7950558514a741edc023e689748f1045aa7f0f3cde10a" "checksum": "7fcb2a7a99d08b544ba7950558514a741edc023e689748f1045aa7f0f3cde10a"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.0/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "38eb988ea3c017ad6794360050d1f8c79ef7720a09db5c5d2c7a9b030b7501d9" "checksum": "38eb988ea3c017ad6794360050d1f8c79ef7720a09db5c5d2c7a9b030b7501d9"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.2.0/parse-changelog-x86_64-pc-windows-msvc.zip",
"checksum": "12e6f5c0ddbd423d8ecffc18c36f6684f7b8be2f29f04bc9a6b62a8612cf9265" "checksum": "12e6f5c0ddbd423d8ecffc18c36f6684f7b8be2f29f04bc9a6b62a8612cf9265"
} }
}, },
@@ -369,12 +492,15 @@
}, },
"0.1.0": { "0.1.0": {
"x86_64_linux_gnu": { "x86_64_linux_gnu": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.1.0/parse-changelog-x86_64-unknown-linux-gnu.tar.gz",
"checksum": "9c293e52e217d7669d2e18ff9cb226b108f50deffd8c501208996c7e498a05cc" "checksum": "9c293e52e217d7669d2e18ff9cb226b108f50deffd8c501208996c7e498a05cc"
}, },
"x86_64_macos": { "x86_64_macos": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.1.0/parse-changelog-x86_64-apple-darwin.tar.gz",
"checksum": "a39b5ab20f52712e65347e141cc4cafbd3bb0808f82af2d9bc8442c1202ef48e" "checksum": "a39b5ab20f52712e65347e141cc4cafbd3bb0808f82af2d9bc8442c1202ef48e"
}, },
"x86_64_windows": { "x86_64_windows": {
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.1.0/parse-changelog-x86_64-pc-windows-msvc.zip",
"checksum": "dc2e44b4a7f9cf0cf11a7ac75b2a42f70f6e97d6269917bcf09182ede4282bff" "checksum": "dc2e44b4a7f9cf0cf11a7ac75b2a42f70f6e97d6269917bcf09182ede4282bff"
} }
} }

28
manifests/protoc.json generated
View File

@@ -2,13 +2,35 @@
"rust_crate": null, "rust_crate": null,
"template": null, "template": null,
"latest": { "latest": {
"version": "3.24.3" "version": "3.24.4"
}, },
"3": { "3": {
"version": "3.24.3" "version": "3.24.4"
}, },
"3.24": { "3.24": {
"version": "3.24.3" "version": "3.24.4"
},
"3.24.4": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.4/protoc-24.4-linux-x86_64.zip",
"checksum": "5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.4/protoc-24.4-osx-x86_64.zip",
"checksum": "6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.4/protoc-24.4-win64.zip",
"checksum": "8f3f92fbf7dd2995129e6fe223c07c0aaa97fb182f19cecfb424e9146b273eb6"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.4/protoc-24.4-linux-aarch_64.zip",
"checksum": "83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.4/protoc-24.4-osx-aarch_64.zip",
"checksum": "d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59"
}
}, },
"3.24.3": { "3.24.3": {
"x86_64_linux_gnu": { "x86_64_linux_gnu": {

82
manifests/syft.json generated
View File

@@ -23,7 +23,87 @@
} }
}, },
"latest": { "latest": {
"version": "0.90.0" "version": "0.94.0"
},
"0.94": {
"version": "0.94.0"
},
"0.94.0": {
"x86_64_linux_musl": {
"checksum": "a18f10ba6add219b2680687450869db3c6a8b71e68ca6ae3925f9e53964cacbd"
},
"x86_64_macos": {
"checksum": "6057745c6618ec69f5a7a0d517c230b4ad55ec5ea33ab51ec928b364cac6b3a8"
},
"x86_64_windows": {
"checksum": "be675b28d282f0be75868cea4766369325e58ede7d4fcf76ce97d0a1004d413a"
},
"aarch64_linux_musl": {
"checksum": "7a6dc03e02565e1008d93c6083181b1699cde3da15ab975e21ef7ae7c3e5caa1"
},
"aarch64_macos": {
"checksum": "0109b3015e618ec54f7d431aef37c610db5864435d71990874b1f884373da936"
}
},
"0.93": {
"version": "0.93.0"
},
"0.93.0": {
"x86_64_linux_musl": {
"checksum": "5fb0eb70c0f618e9a8b93d68b59da4b5758164b1aacc062e2150341baf7acc73"
},
"x86_64_macos": {
"checksum": "fbf8d99ff614221bdb78dc608dd4430b0fd04a56939a779818c7b296dfd470f1"
},
"x86_64_windows": {
"checksum": "78da6446129fa3ae65114ddf8a56b7d581e21796fd7db8c0724d9ae8f8e3eeb4"
},
"aarch64_linux_musl": {
"checksum": "f2f8889305350ee3a53a012246acfa10b59b7aee67e9b6a2e811f05b67f74588"
},
"aarch64_macos": {
"checksum": "169da07ce4cbe5f59ae3cc6a65b7b7b539ed07b987905e526d5fc4491ea0024e"
}
},
"0.92": {
"version": "0.92.0"
},
"0.92.0": {
"x86_64_linux_musl": {
"checksum": "42159b11660fba22a12f8acad87022987337c0725b99d9cf645b690163d5bfce"
},
"x86_64_macos": {
"checksum": "ac6097010cbba3e0300672868d54670ff514458c6784683172680c47ba1696de"
},
"x86_64_windows": {
"checksum": "071135f3ddff00edd7c21663a08d8c8e1a9d199f55bb0f3cd36aaeb1e186875d"
},
"aarch64_linux_musl": {
"checksum": "33f6636e54eb1731b137c43257d8de8025282ca3570f307f3249ba7d5757ce10"
},
"aarch64_macos": {
"checksum": "8518d8682b5fe287caaabf3584331074220ab3f588ed3d47badf8428af87c320"
}
},
"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": { "0.90": {
"version": "0.90.0" "version": "0.90.0"

211
manifests/wasmtime.json generated
View File

@@ -2,7 +2,154 @@
"rust_crate": "wasmtime-cli", "rust_crate": "wasmtime-cli",
"template": null, "template": null,
"latest": { "latest": {
"version": "12.0.2" "version": "14.0.2"
},
"14": {
"version": "14.0.2"
},
"14.0": {
"version": "14.0.2"
},
"14.0.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.2/wasmtime-v14.0.2-x86_64-linux.tar.xz",
"checksum": "880827d58ee9224225e06f3cda1dda1df2685569b29a07596c5ddb1c382c998b",
"bin": "wasmtime-v14.0.2-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.2/wasmtime-v14.0.2-x86_64-macos.tar.xz",
"checksum": "b13a78310e78a7acea9d9667aaec896115b293eca5700dcd74764a5521431d33",
"bin": "wasmtime-v14.0.2-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.2/wasmtime-v14.0.2-x86_64-windows.zip",
"checksum": "8edf2a37fcb4504a59bccf63fd9e4110d28a5ebb6cf9363267bd584094e81aab",
"bin": "wasmtime-v14.0.2-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.2/wasmtime-v14.0.2-aarch64-linux.tar.xz",
"checksum": "877dff2c4c619f6ba44691b4ef44a6b89163ba34d47c9a785cc45ff207abd1fe",
"bin": "wasmtime-v14.0.2-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.2/wasmtime-v14.0.2-aarch64-macos.tar.xz",
"checksum": "d1de12a057122c3c15b755469b24f41448aa0b9bbe46f35eb740054a295e386e",
"bin": "wasmtime-v14.0.2-aarch64-macos/wasmtime"
}
},
"14.0.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.1/wasmtime-v14.0.1-x86_64-linux.tar.xz",
"checksum": "b12443cccd5edab3dfe8d4033348475124275706c2817573bd19be9e5ae32a79",
"bin": "wasmtime-v14.0.1-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.1/wasmtime-v14.0.1-x86_64-macos.tar.xz",
"checksum": "183ed79e53a3dbf9c726e153a33c1564dc251a033b7a0120ef86ccd37b54625f",
"bin": "wasmtime-v14.0.1-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.1/wasmtime-v14.0.1-x86_64-windows.zip",
"checksum": "81f80f914d67d30a403d0593e9ad65c661e47cca65d7013ad07fd977b7409956",
"bin": "wasmtime-v14.0.1-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.1/wasmtime-v14.0.1-aarch64-linux.tar.xz",
"checksum": "eb0c4edc80dd8c98194d7b660daa2778042290a3c2268aee97af691786a189a8",
"bin": "wasmtime-v14.0.1-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.1/wasmtime-v14.0.1-aarch64-macos.tar.xz",
"checksum": "282acc05188c0df89dc3c5ba1ff7d78945b6cb7c7917bdeb4a9ca6360fc204ca",
"bin": "wasmtime-v14.0.1-aarch64-macos/wasmtime"
}
},
"14.0.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.0/wasmtime-v14.0.0-x86_64-linux.tar.xz",
"checksum": "09dba633439859b8d7e21fa803f04951f2ab6da5d8a85ff2178c5748a0f46338",
"bin": "wasmtime-v14.0.0-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.0/wasmtime-v14.0.0-x86_64-macos.tar.xz",
"checksum": "17684c65dab1de8bebb81a634a736c53820454ba2dbf97ea7b5f18f7fed1431c",
"bin": "wasmtime-v14.0.0-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.0/wasmtime-v14.0.0-x86_64-windows.zip",
"checksum": "8751bbefb351a10891a15221770f5948d0b198a56033251e85691159384a7e52",
"bin": "wasmtime-v14.0.0-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.0/wasmtime-v14.0.0-aarch64-linux.tar.xz",
"checksum": "78b41d7b1268b624e6302f333994238219459cd3545281265e5efd42d3cbd304",
"bin": "wasmtime-v14.0.0-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v14.0.0/wasmtime-v14.0.0-aarch64-macos.tar.xz",
"checksum": "93400e03c0eaa24cf36156bcf2f871016fb6b542c0f429549b45449714dfe976",
"bin": "wasmtime-v14.0.0-aarch64-macos/wasmtime"
}
},
"13": {
"version": "13.0.1"
},
"13.0": {
"version": "13.0.1"
},
"13.0.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.1/wasmtime-v13.0.1-x86_64-linux.tar.xz",
"checksum": "65c98b4165d49e5d85fe189c99586c919f6f5d97d307debf02ead9ac239c9637",
"bin": "wasmtime-v13.0.1-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.1/wasmtime-v13.0.1-x86_64-macos.tar.xz",
"checksum": "210fa2a44460df64a44e13683438cf22036faced14fa77295d50e6a181d853ee",
"bin": "wasmtime-v13.0.1-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.1/wasmtime-v13.0.1-x86_64-windows.zip",
"checksum": "38992da8e4d41fa3391465afdd12d625f8b7e9883787354486dd80009f226979",
"bin": "wasmtime-v13.0.1-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.1/wasmtime-v13.0.1-aarch64-linux.tar.xz",
"checksum": "fbc5ae03a1289aef4c712580e3f6d41cb9e5c1444149f6caa4cdfb766dd452f1",
"bin": "wasmtime-v13.0.1-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v13.0.1/wasmtime-v13.0.1-aarch64-macos.tar.xz",
"checksum": "4f766d93491dd4611063aec55fd723c348f94d0e847a7f5122a825e38783ecbd",
"bin": "wasmtime-v13.0.1-aarch64-macos/wasmtime"
}
},
"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": { "12": {
"version": "12.0.2" "version": "12.0.2"
@@ -92,10 +239,37 @@
} }
}, },
"11": { "11": {
"version": "11.0.1" "version": "11.0.2"
}, },
"11.0": { "11.0": {
"version": "11.0.1" "version": "11.0.2"
},
"11.0.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.2/wasmtime-v11.0.2-x86_64-linux.tar.xz",
"checksum": "71d67b23ba4e6a1a589dcfe0658fd7125b5ceb5953481f90611c616ba1dd8986",
"bin": "wasmtime-v11.0.2-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.2/wasmtime-v11.0.2-x86_64-macos.tar.xz",
"checksum": "b039ce32979d61c9e8d3dd82fa18d900954ee91f160666066d5353a1eb5a15b7",
"bin": "wasmtime-v11.0.2-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.2/wasmtime-v11.0.2-x86_64-windows.zip",
"checksum": "a5b3e795ec242a4c38184b4ce7d4239a8878985338e1afa7c33dbc86bd0f8b43",
"bin": "wasmtime-v11.0.2-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.2/wasmtime-v11.0.2-aarch64-linux.tar.xz",
"checksum": "d1d628721c3d8b36d7d19b396b25d5b8d6f2a97f6e7b48f31913893b280a1b90",
"bin": "wasmtime-v11.0.2-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.2/wasmtime-v11.0.2-aarch64-macos.tar.xz",
"checksum": "2654ef8ad5c7f64c9c9cf0a4d7b50592785d3402329ca84e0e65e35896293c7a",
"bin": "wasmtime-v11.0.2-aarch64-macos/wasmtime"
}
}, },
"11.0.1": { "11.0.1": {
"x86_64_linux_gnu": { "x86_64_linux_gnu": {
@@ -152,10 +326,37 @@
} }
}, },
"10": { "10": {
"version": "10.0.1" "version": "10.0.2"
}, },
"10.0": { "10.0": {
"version": "10.0.1" "version": "10.0.2"
},
"10.0.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.2/wasmtime-v10.0.2-x86_64-linux.tar.xz",
"checksum": "08b0e924918ff7409ccec14475c753f991e6ef535e2875a1a48c89dbfc85162d",
"bin": "wasmtime-v10.0.2-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.2/wasmtime-v10.0.2-x86_64-macos.tar.xz",
"checksum": "2fb77c2ee05ac5c902f0bf57d7f8ab1f876bfd4f3c57c1fbbd36c97f60a8c798",
"bin": "wasmtime-v10.0.2-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.2/wasmtime-v10.0.2-x86_64-windows.zip",
"checksum": "3ca5fd7b4f6251e1b183d287dee08d6c38786f5ffb7dd313dda5b1672b7c2456",
"bin": "wasmtime-v10.0.2-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.2/wasmtime-v10.0.2-aarch64-linux.tar.xz",
"checksum": "15ab7c7650499200729f3514d9232f848b304485fe60add47e22fc6c55629d48",
"bin": "wasmtime-v10.0.2-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.2/wasmtime-v10.0.2-aarch64-macos.tar.xz",
"checksum": "e2c66ca8ec6cf5999c93a3823a187e7cfba9225a06027922e9ed7f1fe6d86f5a",
"bin": "wasmtime-v10.0.2-aarch64-macos/wasmtime"
}
}, },
"10.0.1": { "10.0.1": {
"x86_64_linux_gnu": { "x86_64_linux_gnu": {

View File

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

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT # SPDX-License-Identifier: Apache-2.0 OR MIT
set -euo pipefail set -eEuo pipefail
IFS=$'\n\t' IFS=$'\n\t'
cd "$(dirname "$0")"/../.. cd "$(dirname "$0")"/../..

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT # SPDX-License-Identifier: Apache-2.0 OR MIT
set -euo pipefail set -eEuo pipefail
IFS=$'\n\t' IFS=$'\n\t'
cd "$(dirname "$0")"/../.. cd "$(dirname "$0")"/../..
@@ -72,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
@@ -120,6 +124,8 @@ case "${host_os}" in
fi fi
;; ;;
esac esac
# cargo-binstall requires cargo
if type -P cargo &>/dev/null; then
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall) # cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
case "${version}" in case "${version}" in
latest) tools+=(cargo-watch watchexec-cli nextest) ;; latest) tools+=(cargo-watch watchexec-cli nextest) ;;
@@ -128,6 +134,7 @@ case "${version}" in
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

@@ -6,9 +6,14 @@ publish = false
[dependencies] [dependencies]
anyhow = "1" anyhow = "1"
flate2 = "1"
fs-err = "2" fs-err = "2"
minisign-verify = "0.2"
semver = { version = "1", features = ["serde"] } semver = { version = "1", features = ["serde"] }
serde = { version = "1", features = ["derive"] } serde = "1"
serde_derive = "1"
serde_json = "1" serde_json = "1"
sha2 = "0.10" sha2 = "0.10"
tar = "0.4"
toml_edit = { version = "0.20", features = ["serde"] }
ureq = { version = "2", features = ["json"] } ureq = { version = "2", features = ["json"] }

View File

@@ -0,0 +1,30 @@
{
"repository": "https://github.com/biomejs/biome",
"tag_prefix": "cli/v",
"platform": {
"x86_64_linux_gnu": {
"bin": "${package}${exe}",
"asset_name": "${package}-linux-x64"
},
"x86_64_macos": {
"bin": "${package}${exe}",
"asset_name": "${package}-darwin-x64"
},
"x86_64_windows": {
"bin": "${package}${exe}",
"asset_name": "${package}-win32-x64.exe"
},
"aarch64_linux_gnu": {
"bin": "${package}${exe}",
"asset_name": "${package}-linux-arm64"
},
"aarch64_macos": {
"bin": "${package}${exe}",
"asset_name": "${package}-darwin-arm64"
},
"aarch64_windows": {
"bin": "${package}${exe}",
"asset_name": "${package}-win32-arm64.exe"
}
}
}

View File

@@ -4,6 +4,9 @@
"rust_crate": "${package}", "rust_crate": "${package}",
"asset_name": "${package}-${rust_target}.tgz", "asset_name": "${package}-${rust_target}.tgz",
"version_range": "latest", "version_range": "latest",
"signing": {
"kind": "minisign-binstall"
},
"platform": { "platform": {
"x86_64_linux_musl": {}, "x86_64_linux_musl": {},
"x86_64_macos": { "x86_64_macos": {

View File

@@ -4,18 +4,15 @@
"rust_crate": "${package}", "rust_crate": "${package}",
"asset_name": [ "asset_name": [
"${package}-${rust_target}.tar.gz", "${package}-${rust_target}.tar.gz",
"${package}-v${version}-${rust_target}.tar.gz" "${package}-v${version}-${rust_target}.tar.gz",
"${package}-${rust_target}.zip",
"${package}-v${version}-${rust_target}.zip"
], ],
"platform": { "platform": {
"x86_64_linux_gnu": {}, "x86_64_linux_gnu": {},
"x86_64_linux_musl": {}, "x86_64_linux_musl": {},
"x86_64_macos": {}, "x86_64_macos": {},
"x86_64_windows": { "x86_64_windows": {},
"asset_name": [
"${package}-${rust_target}.zip",
"${package}-v${version}-${rust_target}.zip"
]
},
"aarch64_linux_musl": {}, "aarch64_linux_musl": {},
"aarch64_macos": {}, "aarch64_macos": {},
"aarch64_windows": {} "aarch64_windows": {}

View File

@@ -0,0 +1,15 @@
{
"repository": "https://github.com/orium/cargo-rdme",
"tag_prefix": "v",
"platform": {
"x86_64_linux_musl": {
"asset_name": "${package}_v${version}_${rust_target}.tar.bz2"
},
"x86_64_macos": {
"asset_name": "${package}_v${version}_${rust_target}.zip"
},
"x86_64_windows": {
"asset_name": "${package}_v${version}_x86_64-pc-windows-gnu.zip"
}
}
}

View File

@@ -2,14 +2,15 @@
"repository": "https://github.com/taiki-e/parse-changelog", "repository": "https://github.com/taiki-e/parse-changelog",
"tag_prefix": "v", "tag_prefix": "v",
"rust_crate": "${package}", "rust_crate": "${package}",
"asset_name": "${package}-${rust_target}.tar.gz", "asset_name": [
"${package}-${rust_target}.tar.gz",
"${package}-${rust_target}.zip"
],
"platform": { "platform": {
"x86_64_linux_gnu": {}, "x86_64_linux_gnu": {},
"x86_64_linux_musl": {}, "x86_64_linux_musl": {},
"x86_64_macos": {}, "x86_64_macos": {},
"x86_64_windows": { "x86_64_windows": {},
"asset_name": "${package}-${rust_target}.zip"
},
"aarch64_linux_musl": {}, "aarch64_linux_musl": {},
"aarch64_macos": {}, "aarch64_macos": {},
"aarch64_windows": {} "aarch64_windows": {}

View File

@@ -1,11 +1,13 @@
use anyhow::{bail, Context as _, Result}; // SPDX-License-Identifier: Apache-2.0 OR MIT
use fs_err as fs;
use serde::{Deserialize, Serialize}; #![allow(clippy::single_match)]
use sha2::{Digest, Sha256};
use std::{ use std::{
cmp::Reverse, cmp::Reverse,
collections::{BTreeMap, BTreeSet}, collections::{BTreeMap, BTreeSet},
env, fmt, env,
ffi::OsStr,
fmt,
io::Read, io::Read,
path::{Path, PathBuf}, path::{Path, PathBuf},
slice, slice,
@@ -13,6 +15,15 @@ use std::{
time::Duration, time::Duration,
}; };
use anyhow::{bail, Context as _, Result};
use fs_err as fs;
use serde::{
de::{self, Deserialize, Deserializer},
ser::{Serialize, Serializer},
};
use serde_derive::{Deserialize, Serialize};
use sha2::{Digest, Sha256};
fn main() -> Result<()> { fn main() -> Result<()> {
let args: Vec<_> = env::args().skip(1).collect(); let args: Vec<_> = env::args().skip(1).collect();
if args.is_empty() || args.iter().any(|arg| arg.starts_with('-')) { if args.is_empty() || args.iter().any(|arg| arg.starts_with('-')) {
@@ -24,17 +35,13 @@ fn main() -> Result<()> {
let package = &args[0]; let package = &args[0];
let workspace_root = &workspace_root(); let workspace_root = &workspace_root();
let manifest_path = &workspace_root let manifest_path = &workspace_root.join("manifests").join(format!("{package}.json"));
.join("manifests")
.join(format!("{package}.json"));
let download_cache_dir = &workspace_root.join("tools/codegen/tmp/cache").join(package); let download_cache_dir = &workspace_root.join("tools/codegen/tmp/cache").join(package);
fs::create_dir_all(manifest_path.parent().unwrap())?; fs::create_dir_all(manifest_path.parent().unwrap())?;
fs::create_dir_all(download_cache_dir)?; fs::create_dir_all(download_cache_dir)?;
let mut base_info: BaseManifest = serde_json::from_slice(&fs::read( let mut base_info: BaseManifest = serde_json::from_slice(&fs::read(
workspace_root workspace_root.join("tools/codegen/base").join(format!("{package}.json")),
.join("tools/codegen/base")
.join(format!("{package}.json")),
)?)?; )?)?;
let repo = base_info let repo = base_info
.repository .repository
@@ -75,11 +82,8 @@ fn main() -> Result<()> {
.collect(); .collect();
let mut crates_io_info = None; let mut crates_io_info = None;
base_info.rust_crate = base_info base_info.rust_crate =
.rust_crate base_info.rust_crate.as_ref().map(|s| replace_vars(s, package, None, None)).transpose()?;
.as_ref()
.map(|s| replace_vars(s, package, None, None))
.transpose()?;
if let Some(crate_name) = &base_info.rust_crate { if let Some(crate_name) = &base_info.rust_crate {
eprintln!("downloading crate info from https://crates.io/api/v1/crates/{crate_name}"); eprintln!("downloading crate info from https://crates.io/api/v1/crates/{crate_name}");
crates_io_info = Some( crates_io_info = Some(
@@ -111,10 +115,7 @@ fn main() -> Result<()> {
for (platform, d) in &mut manifest.download_info { for (platform, d) in &mut manifest.download_info {
let template = &template.download_info[platform]; let template = &template.download_info[platform];
d.url = Some(template.url.replace("${version}", version)); d.url = Some(template.url.replace("${version}", version));
d.bin = template d.bin = template.bin.as_ref().map(|s| s.replace("${version}", version));
.bin
.as_ref()
.map(|s| s.replace("${version}", version));
} }
} }
} }
@@ -125,19 +126,6 @@ fn main() -> Result<()> {
} }
let version_req: Option<semver::VersionReq> = match args.get(1) { let version_req: Option<semver::VersionReq> = match args.get(1) {
_ if latest_only => { _ if latest_only => {
if args.get(1).map(String::as_str) == Some("latest") {
if let Some(m) = manifests.map.first_key_value() {
let version = match m.1 {
ManifestRef::Ref { version } => version,
ManifestRef::Real(_) => &m.0 .0,
};
if !manifests.map.is_empty()
&& *version >= releases.first_key_value().unwrap().0 .0.clone().into()
{
return Ok(());
}
}
}
let req = format!("={}", releases.first_key_value().unwrap().0 .0).parse()?; let req = format!("={}", releases.first_key_value().unwrap().0 .0).parse()?;
eprintln!("update manifest for versions '{req}'"); eprintln!("update manifest for versions '{req}'");
Some(req) Some(req)
@@ -158,10 +146,11 @@ fn main() -> Result<()> {
} }
let req = if version_req == "latest" { let req = if version_req == "latest" {
// TODO: this should check all missing versions
if manifests.map.is_empty() { if manifests.map.is_empty() {
format!("={}", releases.first_key_value().unwrap().0 .0).parse()? format!("={}", releases.first_key_value().unwrap().0 .0).parse()?
} else { } else {
format!(">{}", semver_versions.last().unwrap()).parse()? format!(">={}", semver_versions.last().unwrap()).parse()?
} }
} else { } else {
version_req.parse()? version_req.parse()?
@@ -172,6 +161,7 @@ fn main() -> Result<()> {
}; };
let mut buf = vec![]; let mut buf = vec![];
let mut buf2 = vec![];
for (Reverse(semver_version), (version, release)) in &releases { for (Reverse(semver_version), (version, release)) in &releases {
if let Some(version_req) = &version_req { if let Some(version_req) = &version_req {
if !version_req.matches(semver_version) { if !version_req.matches(semver_version) {
@@ -185,6 +175,7 @@ fn main() -> Result<()> {
} }
let mut download_info = BTreeMap::new(); let mut download_info = BTreeMap::new();
let mut pubkey = None;
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
.asset_name .asset_name
@@ -211,8 +202,8 @@ fn main() -> Result<()> {
} }
}; };
eprintln!("downloading {url} for checksum..."); eprint!("downloading {url} for checksum ... ");
let download_cache = download_cache_dir.join(format!( let download_cache = &download_cache_dir.join(format!(
"{version}-{platform:?}-{}", "{version}-{platform:?}-{}",
Path::new(&url).file_name().unwrap().to_str().unwrap() Path::new(&url).file_name().unwrap().to_str().unwrap()
)); ));
@@ -228,10 +219,86 @@ fn main() -> Result<()> {
let hash = Sha256::digest(&buf); let hash = Sha256::digest(&buf);
let hash = format!("{hash:x}"); let hash = format!("{hash:x}");
eprintln!("{hash} *{asset_name}"); eprintln!("{hash} *{asset_name}");
let bin_url = &url;
download_info.insert( match base_info.signing {
platform, Some(Signing { kind: SigningKind::MinisignBinstall }) => {
ManifestDownloadInfo { let url = url.clone() + ".sig";
let sig_download_cache = &download_cache.with_extension(format!(
"{}.sig",
download_cache.extension().unwrap_or_default().to_str().unwrap()
));
eprint!("downloading {url} for signature validation ... ");
let sig = if sig_download_cache.is_file() {
eprintln!("already downloaded");
minisign_verify::Signature::from_file(sig_download_cache)?
} else {
let buf = download(&url)?.into_string()?;
eprintln!("download complete");
fs::write(sig_download_cache, &buf)?;
minisign_verify::Signature::decode(&buf)?
};
let Some(crates_io_info) = &crates_io_info else {
bail!("signing kind minisign-binstall is supported only for rust crate");
};
let v =
crates_io_info.versions.iter().find(|v| v.num == *semver_version).unwrap();
let url = format!("https://crates.io{}", v.dl_path);
let crate_download_cache =
&download_cache_dir.join(format!("{version}-Cargo.toml"));
eprint!("downloading {url} for signature verification ... ");
if crate_download_cache.is_file() {
eprintln!("already downloaded");
} else {
download(&url)?.into_reader().read_to_end(&mut buf2)?;
let hash = Sha256::digest(&buf2);
if format!("{hash:x}") != v.checksum {
bail!("checksum mismatch for {url}");
}
let decoder = flate2::read::GzDecoder::new(&*buf2);
let mut archive = tar::Archive::new(decoder);
for entry in archive.entries()? {
let mut entry = entry?;
let path = entry.path()?;
if path.file_name() == Some(OsStr::new("Cargo.toml")) {
entry.unpack(crate_download_cache)?;
break;
}
}
buf2.clear();
eprintln!("download complete");
}
if pubkey.is_none() {
let cargo_manifest = toml_edit::de::from_str::<cargo_manifest::Manifest>(
&fs::read_to_string(crate_download_cache)?,
)?;
eprintln!(
"algorithm: {}",
cargo_manifest.package.metadata.binstall.signing.algorithm
);
eprintln!(
"pubkey: {}",
cargo_manifest.package.metadata.binstall.signing.pubkey
);
assert_eq!(
cargo_manifest.package.metadata.binstall.signing.algorithm,
"minisign"
);
pubkey = Some(minisign_verify::PublicKey::from_base64(
&cargo_manifest.package.metadata.binstall.signing.pubkey,
)?);
}
let pubkey = pubkey.as_ref().unwrap();
eprint!("verifying signature for {bin_url} ... ");
let allow_legacy = false;
pubkey.verify(&buf, &sig, allow_legacy)?;
eprintln!("done");
}
None => {}
}
download_info.insert(platform, ManifestDownloadInfo {
url: Some(url), url: Some(url),
checksum: hash, checksum: hash,
bin: base_download_info bin: base_download_info
@@ -240,8 +307,7 @@ fn main() -> Result<()> {
.or(base_info.bin.as_ref()) .or(base_info.bin.as_ref())
.map(|s| replace_vars(s, package, Some(version), Some(platform))) .map(|s| replace_vars(s, package, Some(version), Some(platform)))
.transpose()?, .transpose()?,
}, });
);
buf.clear(); buf.clear();
} }
if download_info.is_empty() { if download_info.is_empty() {
@@ -293,39 +359,30 @@ fn main() -> Result<()> {
if !(version.major == 0 && version.minor == 0) { if !(version.major == 0 && version.minor == 0) {
manifests.map.insert( manifests.map.insert(
Reverse(Version::omitted(version.major, Some(version.minor))), Reverse(Version::omitted(version.major, Some(version.minor))),
ManifestRef::Ref { ManifestRef::Ref { version: version.clone().into() },
version: version.clone().into(),
},
); );
} }
if version.major != 0 { if version.major != 0 {
manifests.map.insert( manifests
Reverse(Version::omitted(version.major, None)), .map
ManifestRef::Ref { .insert(Reverse(Version::omitted(version.major, None)), ManifestRef::Ref {
version: version.clone().into(), version: version.clone().into(),
}, });
);
} }
prev_version = version; prev_version = version;
} }
manifests.map.insert( manifests.map.insert(Reverse(Version::latest()), ManifestRef::Ref {
Reverse(Version::latest()),
ManifestRef::Ref {
version: prev_version.clone().into(), version: prev_version.clone().into(),
}, });
);
} }
let ManifestRef::Ref { let ManifestRef::Ref { version: latest_version } =
version: latest_version, manifests.map.first_key_value().unwrap().1.clone()
} = manifests.map.first_key_value().unwrap().1.clone()
else { else {
unreachable!() unreachable!()
}; };
if latest_only { if latest_only {
manifests manifests.map.retain(|k, _| k.0 == Version::latest() || k.0 == latest_version);
.map
.retain(|k, _| k.0 == Version::latest() || k.0 == latest_version);
} }
let ManifestRef::Real(latest_manifest) = &manifests.map[&Reverse(latest_version.clone())] let ManifestRef::Real(latest_manifest) = &manifests.map[&Reverse(latest_version.clone())]
else { else {
@@ -336,16 +393,12 @@ fn main() -> Result<()> {
continue; continue;
} }
if p == HostPlatform::x86_64_linux_gnu if p == HostPlatform::x86_64_linux_gnu
&& latest_manifest && latest_manifest.download_info.contains_key(&HostPlatform::x86_64_linux_musl)
.download_info
.contains_key(&HostPlatform::x86_64_linux_musl)
{ {
continue; continue;
} }
if p == HostPlatform::aarch64_linux_gnu if p == HostPlatform::aarch64_linux_gnu
&& latest_manifest && latest_manifest.download_info.contains_key(&HostPlatform::aarch64_linux_musl)
.download_info
.contains_key(&HostPlatform::aarch64_linux_musl)
{ {
continue; continue;
} }
@@ -356,9 +409,7 @@ fn main() -> Result<()> {
} }
let original_manifests = manifests.clone(); let original_manifests = manifests.clone();
let mut template = Some(ManifestTemplate { let mut template = Some(ManifestTemplate { download_info: BTreeMap::new() });
download_info: BTreeMap::new(),
});
'outer: for (version, manifest) in &mut manifests.map { 'outer: for (version, manifest) in &mut manifests.map {
let ManifestRef::Real(manifest) = manifest else { let ManifestRef::Real(manifest) = manifest else {
continue; continue;
@@ -374,13 +425,10 @@ fn main() -> Result<()> {
break 'outer; break 'outer;
} }
} else { } else {
t.download_info.insert( t.download_info.insert(*platform, ManifestTemplateDownloadInfo {
*platform,
ManifestTemplateDownloadInfo {
url: template_url, url: template_url,
bin: template_bin, bin: template_bin,
}, });
);
} }
} }
} }
@@ -574,7 +622,7 @@ impl FromStr for Version {
impl Serialize for Version { impl Serialize for Version {
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where where
S: serde::Serializer, S: Serializer,
{ {
String::serialize(&self.to_string(), serializer) String::serialize(&self.to_string(), serializer)
} }
@@ -582,12 +630,9 @@ impl Serialize for Version {
impl<'de> Deserialize<'de> for Version { impl<'de> Deserialize<'de> for Version {
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where where
D: serde::Deserializer<'de>, D: Deserializer<'de>,
{ {
use serde::de::Error as _; String::deserialize(deserializer)?.parse().map_err(de::Error::custom)
String::deserialize(deserializer)?
.parse()
.map_err(D::Error::custom)
} }
} }
@@ -650,10 +695,27 @@ struct BaseManifest {
asset_name: Option<StringOrArray>, asset_name: Option<StringOrArray>,
/// Path to binary in archive. Default to `${tool}${exe}`. /// Path to binary in archive. Default to `${tool}${exe}`.
bin: Option<String>, bin: Option<String>,
signing: Option<Signing>,
platform: BTreeMap<HostPlatform, BaseManifestPlatformInfo>, platform: BTreeMap<HostPlatform, BaseManifestPlatformInfo>,
version_range: Option<String>, version_range: Option<String>,
} }
#[derive(Debug, Deserialize)]
#[serde(deny_unknown_fields)]
struct Signing {
kind: SigningKind,
}
#[derive(Debug, Deserialize, PartialEq, Eq)]
#[serde(rename_all = "kebab-case")]
#[serde(deny_unknown_fields)]
enum SigningKind {
/// algorithm: minisign
/// public key: package.metadata.binstall.signing.pubkey at Cargo.toml
/// <https://github.com/cargo-bins/cargo-binstall/blob/HEAD/SIGNING.md>
MinisignBinstall,
}
#[derive(Debug, Deserialize)] #[derive(Debug, Deserialize)]
#[serde(deny_unknown_fields)] #[serde(deny_unknown_fields)]
struct BaseManifestPlatformInfo { struct BaseManifestPlatformInfo {
@@ -741,7 +803,7 @@ impl HostPlatform {
} }
mod github { mod github {
use serde::Deserialize; use serde_derive::Deserialize;
// https://api.github.com/repos/<repo>/releases // https://api.github.com/repos/<repo>/releases
pub type Releases = Vec<Release>; pub type Releases = Vec<Release>;
@@ -763,7 +825,7 @@ mod github {
} }
mod crates_io { mod crates_io {
use serde::Deserialize; use serde_derive::Deserialize;
// https://crates.io/api/v1/crates/<crate> // https://crates.io/api/v1/crates/<crate>
#[derive(Debug, Deserialize)] #[derive(Debug, Deserialize)]
@@ -773,7 +835,39 @@ mod crates_io {
#[derive(Debug, Deserialize)] #[derive(Debug, Deserialize)]
pub struct Version { pub struct Version {
pub checksum: String,
pub dl_path: String,
pub num: semver::Version, pub num: semver::Version,
pub yanked: bool, pub yanked: bool,
} }
} }
mod cargo_manifest {
use serde_derive::Deserialize;
#[derive(Debug, Deserialize)]
pub struct Manifest {
pub package: Package,
}
#[derive(Debug, Deserialize)]
pub struct Package {
pub metadata: Metadata,
}
#[derive(Debug, Deserialize)]
pub struct Metadata {
pub binstall: Binstall,
}
#[derive(Debug, Deserialize)]
pub struct Binstall {
pub signing: BinstallSigning,
}
#[derive(Debug, Deserialize)]
pub struct BinstallSigning {
pub algorithm: String,
pub pubkey: String,
}
}

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT # SPDX-License-Identifier: Apache-2.0 OR MIT
set -euo pipefail set -eEuo pipefail
IFS=$'\n\t' IFS=$'\n\t'
cd "$(dirname "$0")"/.. cd "$(dirname "$0")"/..

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT # SPDX-License-Identifier: Apache-2.0 OR MIT
set -euo pipefail set -eEuo pipefail
IFS=$'\n\t' IFS=$'\n\t'
cd "$(dirname "$0")"/.. cd "$(dirname "$0")"/..
@@ -23,6 +23,16 @@ x() {
"${cmd}" "$@" "${cmd}" "$@"
) )
} }
retry() {
for i in {1..10}; do
if "$@"; then
return 0
else
sleep "${i}"
fi
done
"$@"
}
bail() { bail() {
echo >&2 "error: $*" echo >&2 "error: $*"
exit 1 exit 1
@@ -113,15 +123,15 @@ tools+=(valgrind nextest cargo-nextest)
set -x set -x
git tag "${tag}" git tag "${tag}"
git push origin main retry git push origin main
git push origin --tags retry git push origin --tags
major_version_tag="v${version%%.*}" major_version_tag="v${version%%.*}"
git checkout -b "${major_version_tag}" git checkout -b "${major_version_tag}"
git push origin refs/heads/"${major_version_tag}" retry git push origin refs/heads/"${major_version_tag}"
if git --no-pager tag | grep -Eq "^${major_version_tag}$"; then if git --no-pager tag | grep -Eq "^${major_version_tag}$"; then
git tag -d "${major_version_tag}" git tag -d "${major_version_tag}"
git push --delete origin refs/tags/"${major_version_tag}" retry git push --delete origin refs/tags/"${major_version_tag}"
fi fi
git tag "${major_version_tag}" git tag "${major_version_tag}"
git checkout main git checkout main
@@ -136,10 +146,10 @@ for tool in "${tools[@]}"; do
sed -i -e "s/# default: #publish:tool/default: ${tool}/g" action.yml sed -i -e "s/# default: #publish:tool/default: ${tool}/g" action.yml
git add action.yml git add action.yml
git commit -m "${tool}" git commit -m "${tool}"
git push origin -f refs/heads/"${tool}" retry git push origin -f refs/heads/"${tool}"
if git --no-pager tag | grep -Eq "^${tool}$"; then if git --no-pager tag | grep -Eq "^${tool}$"; then
git tag -d "${tool}" git tag -d "${tool}"
git push --delete origin refs/tags/"${tool}" retry git push --delete origin refs/tags/"${tool}"
fi fi
git tag "${tool}" git tag "${tool}"
git checkout main git checkout main
@@ -149,4 +159,4 @@ done
set -x set -x
git push origin --tags retry git push origin --tags

View File

@@ -1,7 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT # SPDX-License-Identifier: Apache-2.0 OR MIT
# shellcheck disable=SC2046 # shellcheck disable=SC2046
set -euo pipefail set -eEuo pipefail
IFS=$'\n\t' IFS=$'\n\t'
cd "$(dirname "$0")"/.. cd "$(dirname "$0")"/..
@@ -81,7 +81,7 @@ if [[ -n "$(git ls-files '*.rs')" ]]; then
fi fi
check_diff $(git ls-files '*.rs') check_diff $(git ls-files '*.rs')
else else
warn "'rustup' is not installed" warn "'rustup' is not installed; skipped Rust code style check"
fi fi
cast_without_turbofish=$(grep -n -E '\.cast\(\)' $(git ls-files '*.rs') || true) cast_without_turbofish=$(grep -n -E '\.cast\(\)' $(git ls-files '*.rs') || true)
if [[ -n "${cast_without_turbofish}" ]]; then if [[ -n "${cast_without_turbofish}" ]]; then
@@ -114,7 +114,7 @@ if [[ -n "$(git ls-files '*.rs')" ]]; then
done done
# Make sure that public Rust crates don't contain executables. # Make sure that public Rust crates don't contain executables.
failed_files='' failed_files=''
metadata=$(cargo metadata --format-version=1 --all-features --no-deps) metadata=$(cargo metadata --format-version=1 --no-deps)
has_public_crate='' has_public_crate=''
for id in $(jq <<<"${metadata}" '.workspace_members[]'); do for id in $(jq <<<"${metadata}" '.workspace_members[]'); do
pkg=$(jq <<<"${metadata}" ".packages[] | select(.id == ${id})") pkg=$(jq <<<"${metadata}" ".packages[] | select(.id == ${id})")
@@ -168,7 +168,7 @@ if [[ -n "$(git ls-files '*.c')$(git ls-files '*.cpp')" ]]; then
clang-format -i $(git ls-files '*.c') $(git ls-files '*.cpp') clang-format -i $(git ls-files '*.c') $(git ls-files '*.cpp')
check_diff $(git ls-files '*.c') $(git ls-files '*.cpp') check_diff $(git ls-files '*.c') $(git ls-files '*.cpp')
else else
warn "'clang-format' is not installed" warn "'clang-format' is not installed; skipped C/C++ code style check"
fi fi
fi fi
@@ -176,11 +176,11 @@ fi
if [[ -n "$(git ls-files '*.yml')$(git ls-files '*.js')$(git ls-files '*.json')" ]]; then if [[ -n "$(git ls-files '*.yml')$(git ls-files '*.js')$(git ls-files '*.json')" ]]; then
info "checking YAML/JavaScript/JSON code style" info "checking YAML/JavaScript/JSON code style"
if type -P npm &>/dev/null; then if type -P npm &>/dev/null; then
echo "+ npx prettier -l -w \$(git ls-files '*.yml') \$(git ls-files '*.js') \$(git ls-files '*.json')" echo "+ npx -y prettier -l -w \$(git ls-files '*.yml') \$(git ls-files '*.js') \$(git ls-files '*.json')"
npx prettier -l -w $(git ls-files '*.yml') $(git ls-files '*.js') $(git ls-files '*.json') npx -y prettier -l -w $(git ls-files '*.yml') $(git ls-files '*.js') $(git ls-files '*.json')
check_diff $(git ls-files '*.yml') $(git ls-files '*.js') $(git ls-files '*.json') check_diff $(git ls-files '*.yml') $(git ls-files '*.js') $(git ls-files '*.json')
else else
warn "'npm' is not installed" warn "'npm' is not installed; skipped YAML/JavaScript/JSON code style check"
fi fi
# Check GitHub workflows. # Check GitHub workflows.
if [[ -d .github/workflows ]]; then if [[ -d .github/workflows ]]; then
@@ -190,7 +190,7 @@ if [[ -n "$(git ls-files '*.yml')$(git ls-files '*.js')$(git ls-files '*.json')"
# The top-level permissions must be weak as they are referenced by all jobs. # The top-level permissions must be weak as they are referenced by all jobs.
permissions=$(yq '.permissions' "${workflow}" | jq -c) permissions=$(yq '.permissions' "${workflow}" | jq -c)
case "${permissions}" in case "${permissions}" in
'{"contents":"read"}' | '{"contents":"none"}' | '{}') ;; '{"contents":"read"}' | '{"contents":"none"}') ;;
null) error "${workflow}: top level permissions not found; it must be 'contents: read' or weaker permissions" ;; null) error "${workflow}: top level permissions not found; it must be 'contents: read' or weaker permissions" ;;
*) error "${workflow}: only 'contents: read' and weaker permissions are allowed at top level; if you want to use stronger permissions, please set job-level permissions" ;; *) error "${workflow}: only 'contents: read' and weaker permissions are allowed at top level; if you want to use stronger permissions, please set job-level permissions" ;;
esac esac
@@ -210,7 +210,7 @@ if [[ -n "$(git ls-files '*.yml')$(git ls-files '*.js')$(git ls-files '*.json')"
fi fi
done done
else else
warn "'jq' or 'yq' is not installed" warn "'jq' or 'yq' is not installed; skipped GitHub workflow check"
fi fi
fi fi
fi fi
@@ -219,6 +219,21 @@ if [[ -n "$(git ls-files '*.yaml')" ]]; then
git ls-files '*.yaml' git ls-files '*.yaml'
fi fi
# Markdown (if exists)
if [[ -n "$(git ls-files '*.md')" ]]; then
info "checking Markdown style"
if type -P npm &>/dev/null; then
echo "+ npx -y markdownlint-cli2 \$(git ls-files '*.md')"
npx -y markdownlint-cli2 $(git ls-files '*.md')
else
warn "'npm' is not installed; skipped Markdown style check"
fi
fi
if [[ -n "$(git ls-files '*.markdown')" ]]; then
error "please use '.md' instead of '.markdown' for consistency"
git ls-files '*.markdown'
fi
# Shell scripts # Shell scripts
info "checking Shell scripts" info "checking Shell scripts"
if type -P shfmt &>/dev/null; then if type -P shfmt &>/dev/null; then
@@ -226,7 +241,7 @@ if type -P shfmt &>/dev/null; then
shfmt -l -w $(git ls-files '*.sh') shfmt -l -w $(git ls-files '*.sh')
check_diff $(git ls-files '*.sh') check_diff $(git ls-files '*.sh')
else else
warn "'shfmt' is not installed" warn "'shfmt' is not installed; skipped Shell scripts style check"
fi fi
if type -P shellcheck &>/dev/null; then if type -P shellcheck &>/dev/null; then
echo "+ shellcheck \$(git ls-files '*.sh')" echo "+ shellcheck \$(git ls-files '*.sh')"
@@ -241,7 +256,7 @@ if type -P shellcheck &>/dev/null; then
fi fi
fi fi
else else
warn "'shellcheck' is not installed" warn "'shellcheck' is not installed; skipped Shell scripts style check"
fi fi
# License check # License check
@@ -250,24 +265,28 @@ 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
# TODO: check that the license is valid as SPDX and is allowed in this project.
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
header_found='1' header_found='1'
continue break
fi fi
done done
if [[ -z "${header_found}" ]]; then if [[ -z "${header_found}" ]]; then
@@ -295,7 +314,7 @@ if [[ -f .cspell.json ]]; then
if [[ "${manifest_path}" != "Cargo.toml" ]] && ! grep -Eq '\[workspace\]' "${manifest_path}"; then if [[ "${manifest_path}" != "Cargo.toml" ]] && ! grep -Eq '\[workspace\]' "${manifest_path}"; then
continue continue
fi fi
metadata=$(cargo metadata --format-version=1 --all-features --no-deps --manifest-path "${manifest_path}") metadata=$(cargo metadata --format-version=1 --no-deps --manifest-path "${manifest_path}")
for id in $(jq <<<"${metadata}" '.workspace_members[]'); do for id in $(jq <<<"${metadata}" '.workspace_members[]'); do
dependencies+="$(jq <<<"${metadata}" ".packages[] | select(.id == ${id})" | jq -r '.dependencies[].name')"$'\n' dependencies+="$(jq <<<"${metadata}" ".packages[] | select(.id == ${id})" | jq -r '.dependencies[].name')"$'\n'
done done
@@ -305,13 +324,14 @@ if [[ -f .cspell.json ]]; then
fi fi
config_old=$(<.cspell.json) config_old=$(<.cspell.json)
config_new=$(grep <<<"${config_old}" -v ' *//' | jq 'del(.dictionaries[] | select(index("organization-dictionary") | not))' | jq 'del(.dictionaryDefinitions[] | select(.name == "organization-dictionary" | not))') config_new=$(grep <<<"${config_old}" -v ' *//' | jq 'del(.dictionaries[] | select(index("organization-dictionary") | not))' | jq 'del(.dictionaryDefinitions[] | select(.name == "organization-dictionary" | not))')
trap -- 'echo "${config_old}" >.cspell.json; echo >&2 "$0: trapped SIGINT"; exit 1' SIGINT
echo "${config_new}" >.cspell.json echo "${config_new}" >.cspell.json
if [[ -n "${has_rust}" ]]; then if [[ -n "${has_rust}" ]]; then
dependencies_words=$(npx <<<"${dependencies}" cspell stdin --no-progress --no-summary --words-only --unique || true) dependencies_words=$(npx <<<"${dependencies}" -y cspell stdin --no-progress --no-summary --words-only --unique || true)
fi fi
all_words=$(npx cspell --no-progress --no-summary --words-only --unique $(git ls-files | (grep -v "${project_dictionary//\./\\.}" || true)) || true) all_words=$(npx -y cspell --no-progress --no-summary --words-only --unique $(git ls-files | (grep -v "${project_dictionary//\./\\.}" || true)) || true)
# TODO: handle SIGINT
echo "${config_old}" >.cspell.json echo "${config_old}" >.cspell.json
trap - SIGINT
cat >.github/.cspell/rust-dependencies.txt <<EOF cat >.github/.cspell/rust-dependencies.txt <<EOF
// This file is @generated by $(basename "$0"). // This file is @generated by $(basename "$0").
// It is not intended for manual editing. // It is not intended for manual editing.
@@ -324,8 +344,8 @@ EOF
echo "warning: you may want to mark .github/.cspell/rust-dependencies.txt linguist-generated" echo "warning: you may want to mark .github/.cspell/rust-dependencies.txt linguist-generated"
fi fi
echo "+ npx cspell --no-progress --no-summary \$(git ls-files)" echo "+ npx -y cspell --no-progress --no-summary \$(git ls-files)"
if ! npx cspell --no-progress --no-summary $(git ls-files); then if ! npx -y cspell --no-progress --no-summary $(git ls-files); then
error "spellcheck failed: please fix uses of above words or add to ${project_dictionary} if correct" error "spellcheck failed: please fix uses of above words or add to ${project_dictionary} if correct"
fi fi
@@ -357,7 +377,7 @@ EOF
echo "=======================================" echo "======================================="
fi fi
else else
warn "'npm' is not installed" warn "'npm' is not installed; skipped spell check"
fi fi
fi fi