Compare commits

...

108 Commits

Author SHA1 Message Date
Taiki Endo
2e834388ca Release 2.13.2 2023-08-01 11:35:50 +09:00
Taiki Endo
70b3188323 Update syft@latest to 0.86.1 (#175) 2023-08-01 11:24:01 +10:00
Taiki Endo
f0c3e0a7c5 Release 2.13.1 2023-08-01 00:52:28 +09:00
Taiki Endo
d4e8bc812c Update dprint@latest to 0.40.1 2023-08-01 00:28:27 +09:00
Taiki Endo
44ea076bf3 Release 2.13.0 2023-07-31 23:12:43 +09:00
Taiki Endo
a27f7f16e6 Group more package manager logs 2023-07-31 23:09:15 +09:00
Taiki Endo
7dd45f2345 Group package manager logs 2023-07-31 23:02:18 +09:00
Taiki Endo
b13dd10934 ci: Add Rocky Linux 9 to container test 2023-07-31 22:55:09 +09:00
Taiki Endo
49577db638 Update changelog 2023-07-31 22:37:46 +09:00
Taiki Endo
cdc26401e5 Tweak development guide 2023-07-31 22:32:04 +09:00
Taiki Endo
ffbd316e0f Support cargo-careful 2023-07-31 22:24:08 +09:00
Taiki Endo
405b1cf48c Auto-generate tool list for CI 2023-07-31 22:13:13 +09:00
Taiki Endo
32827a2a5e Release 2.12.23 2023-07-31 15:24:25 +09:00
Taiki Endo
ef9cd54530 Update dprint@latest to 0.40.0 (#171) 2023-07-31 16:11:35 +10:00
Taiki Endo
e4052c038b Release 2.12.22 2023-07-30 16:28:42 +09:00
Taiki Endo
2b5850d1e4 Tweak script 2023-07-30 16:17:31 +09:00
Taiki Endo
8030289dfd Update cargo-nextest@latest to 0.9.55 (#170) 2023-07-30 16:09:20 +10:00
Taiki Endo
0cda7d9a26 Release 2.12.21 2023-07-29 04:40:59 +09:00
Taiki Endo
4cb6490afd Update manifest (#169) 2023-07-29 05:40:13 +10:00
Taiki Endo
deab2bca07 Tweak scripts 2023-07-29 04:29:10 +09:00
Taiki Endo
6ffcb9d268 Update cspell dictionary 2023-07-29 04:28:59 +09:00
Taiki Endo
59ffd0e530 Release 2.12.20 2023-07-29 04:11:01 +09:00
Taiki Endo
d8fe71594b Update cargo-deny@latest to 0.14.0 2023-07-29 04:10:00 +09:00
Taiki Endo
1536ff4b2f ci: Run scheduled jobs more frequently 2023-07-27 21:33:37 +09:00
Taiki Endo
434f50854b Release 2.12.19 2023-07-27 21:27:20 +09:00
Taiki Endo
6761f88909 Update changelog 2023-07-27 21:27:06 +09:00
Taiki Endo
d421f5e267 Regenerate manifest for cargo-tarpaulin
Fixes #167
2023-07-27 21:24:10 +09:00
Taiki Endo
da599ad1a0 Release 2.12.18 2023-07-25 21:43:25 +09:00
Taiki Endo
f81fe36426 Update wasmtime@latest to 11.0.1 (#166) 2023-07-25 12:16:54 +10:00
Taiki Endo
c23f6ec97c Release 2.12.17 2023-07-22 13:16:50 +09:00
Taiki Endo
3ae1e9ff6e Update cargo-binstall@latest to 1.1.2 (#165) 2023-07-22 12:29:47 +10:00
Taiki Endo
815c1a26eb Release 2.12.16 2023-07-21 13:15:22 +09:00
Taiki Endo
3642a17cf9 Update manifest (#164)
* Update `cargo-udeps@latest` to 0.1.41

* Update `wasmtime@latest` to 11.0.0
2023-07-21 13:18:58 +10:00
Taiki Endo
8a0de4af47 Release 2.12.15 2023-07-20 13:04:56 +09:00
Taiki Endo
e2f674e042 Update manifest (#163)
* Update `cargo-binstall@latest` to 1.1.1

* Update `cargo-make@latest` to 0.36.12
2023-07-20 12:40:26 +10:00
Taiki Endo
c5814bad44 Release 2.12.14 2023-07-19 12:34:49 +09:00
Taiki Endo
cbd3af1a1b Update cargo-binstall@latest to 1.1.0 (#162) 2023-07-19 10:50:42 +10:00
Taiki Endo
af0e3259d2 Update cspell dictionary 2023-07-19 04:33:31 +09:00
Taiki Endo
d7346df193 Move CI script from ci to tools/ci 2023-07-19 03:21:43 +09:00
Taiki Endo
c8da22002b Release 2.12.13 2023-07-18 23:58:28 +09:00
Taiki Endo
1c9cdf1902 Update changelog 2023-07-18 23:57:57 +09:00
Taiki Endo
87c08913ae Pass options to unzip 2023-07-18 23:51:08 +09:00
Taiki Endo
2f673b4841 Release 2.12.12 2023-07-17 14:28:29 +09:00
Taiki Endo
ec615ab753 Update mdbook@latest to 0.4.32 (#161) 2023-07-17 12:15:24 +10:00
Taiki Endo
3048daa459 Update cspell dictionary 2023-07-16 02:16:10 +09:00
Taiki Endo
ce314215ec Release 2.12.11 2023-07-13 12:44:33 +09:00
Taiki Endo
3ac3842059 Enable dependabot update for codegen 2023-07-13 12:44:18 +09:00
Taiki Endo
2db66fc31e Update syft@latest to 0.85.0 2023-07-13 12:23:03 +09:00
Taiki Endo
fb545eb1c9 Update dprint@latest to 0.39.1 2023-07-13 12:23:03 +09:00
Taiki Endo
42e74b55ab Revert "Update release scripts (take 3)"
This reverts commit be8c41d56e.

```
+ git push origin refs/heads/v2
To https://github.com/taiki-e/install-action
 ! [rejected]        v2 -> v2 (non-fast-forward)
error: failed to push some refs to 'https://github.com/taiki-e/install-action'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
```
2023-07-09 13:11:42 +09:00
Taiki Endo
4efcb9aabf Release 2.12.10 2023-07-09 13:02:35 +09:00
Taiki Endo
be8c41d56e Update release scripts (take 3) 2023-07-09 13:02:13 +09:00
Taiki Endo
76d33aa44e codegen: Remove INTERNAL_CODEGEN_GH_PAT 2023-07-09 12:49:58 +09:00
Taiki Endo
143626c55b Update dprint@latest to 0.39.0 (#159) 2023-07-09 12:11:29 +10:00
Taiki Endo
5251e6a3db Release 2.12.9 2023-07-08 12:25:46 +09:00
Taiki Endo
d8aee37aa8 Update cargo-llvm-cov@latest to 0.5.23 (#158) 2023-07-08 12:25:09 +10:00
Taiki Endo
a08c2af7ad Release 2.12.8 2023-07-07 13:21:09 +09:00
Taiki Endo
648287cffe Update cspell dictionary 2023-07-07 13:20:55 +09:00
Taiki Endo
a2d6b56270 Update protoc@latest to 3.23.4 (#156) 2023-07-07 13:45:01 +10:00
Taiki Endo
8c7f6ba5c3 Release 2.12.7 2023-07-04 12:22:35 +09:00
Taiki Endo
6e292096ec Update manifest (#155) 2023-07-04 12:56:01 +10:00
Taiki Endo
d3712f40a2 Release 2.12.6 2023-07-03 12:18:23 +09:00
Taiki Endo
e624baa845 Update dprint@latest to 0.38.1 2023-07-03 12:18:05 +09:00
Taiki Endo
35cf4f9516 Release 2.12.5 2023-07-02 18:45:27 +09:00
Taiki Endo
e35fd983ab Update dprint@latest to 0.38.0 (#153) 2023-07-02 19:44:58 +10:00
Taiki Endo
68b724e842 Format with rustfmt nightly-2023-07-02 2023-07-02 18:40:50 +09:00
Taiki Endo
b5e941de23 Release 2.12.4 2023-06-30 12:14:01 +09:00
Taiki Endo
78cd39b647 Update syft@latest to 0.84.1 2023-06-30 12:13:37 +09:00
Taiki Endo
b0a3efae00 Update mdbook@latest to 0.4.31 2023-06-30 12:13:37 +09:00
Taiki Endo
41ef5985ac Update cargo-llvm-cov@latest to 0.5.22 2023-06-30 12:13:37 +09:00
Taiki Endo
96ea675418 Release 2.12.3 2023-06-28 13:08:35 +09:00
Taiki Endo
5cf836c582 Update manifest (#151)
* Update `cargo-binstall@latest` to 1.0.0

* Update `wasm-pack@latest` to 0.12.1
2023-06-28 12:56:38 +10:00
Taiki Endo
9a865a852d Release 2.12.2 2023-06-26 14:51:20 +09:00
Taiki Endo
733aa4f048 Update cargo-nextest@latest to 0.9.54 (#150) 2023-06-26 15:50:44 +10:00
Taiki Endo
26f2520368 Release 2.12.1 2023-06-26 14:08:12 +09:00
Taiki Endo
c718718fa0 Update parse-changelog@latest to 0.6.0 (#149) 2023-06-26 15:05:52 +10:00
Taiki Endo
27465951f4 Tweak CI config 2023-06-26 14:00:26 +09:00
Josh McKinney
161fccd992 docs: minor change to DEVELOPMENT.md (#148)
Adds the small change requested in #147.
2023-06-26 13:23:38 +09:00
Taiki Endo
6590181c47 Release 2.12.0 2023-06-26 13:11:27 +09:00
Taiki Endo
a6a57724af Update changelog 2023-06-26 13:11:16 +09:00
Josh McKinney
6d614e4efc docs: add troubleshooting to DEVELOPMENT.md (#147) 2023-06-26 13:07:12 +09:00
Josh McKinney
fd8cc5b92c Add cargo-make to supported tools (#146) 2023-06-26 11:02:41 +10:00
Taiki Endo
486baeb8af Release 2.11.6 2023-06-22 11:59:11 +09:00
Taiki Endo
ea5f6615de Update wasmtime@latest to 10.0.1 (#145) 2023-06-22 12:47:36 +10:00
Taiki Endo
07a42d487c Release 2.11.5 2023-06-21 12:51:30 +09:00
Taiki Endo
a5871829af Update manifest (#144)
* Update `syft@latest` to 0.84.0

* Update `wasmtime@latest` to 10.0.0
2023-06-21 13:09:50 +10:00
Taiki Endo
6039015526 Release 2.11.4 2023-06-20 01:27:20 +09:00
Taiki Endo
95a159ca13 Test --help option if --version option is not available 2023-06-20 01:24:44 +09:00
Taiki Endo
b0f46ac8be Update wasm-pack@latest to 0.12.0 2023-06-20 01:24:44 +09:00
Taiki Endo
5b48284f79 Update shfmt@latest to 3.7.0 2023-06-20 01:24:44 +09:00
Taiki Endo
36e93e0501 Remove the need to reopen "update manifest" PR 2023-06-20 00:49:19 +09:00
Taiki Endo
459a174db6 Release 2.11.3 2023-06-17 12:21:21 +09:00
github-actions[bot]
0d66f4ca09 Update cargo-tarpaulin@latest to 0.26.0 (#140)
Co-authored-by: Taiki Endo <te316e89@gmail.com>
2023-06-17 12:56:52 +10:00
Taiki Endo
9c39ca3f8b Release 2.11.2 2023-06-15 12:33:12 +09:00
github-actions[bot]
0f71c82ca6 Update manifest (#139)
* Update `protoc@latest` to 3.23.3

* Update `syft@latest` to 0.83.1

---------

Co-authored-by: Taiki Endo <te316e89@gmail.com>
2023-06-15 12:36:41 +10:00
Taiki Endo
30161743b1 Release 2.11.1 2023-06-14 12:11:41 +09:00
github-actions[bot]
1a02dde877 Update wasmtime@latest to 9.0.4 (#138)
Co-authored-by: Taiki Endo <te316e89@gmail.com>
2023-06-14 12:44:30 +10:00
Taiki Endo
d4bb0093ce ci: Test debian 12 2023-06-13 03:04:24 +09:00
Taiki Endo
b4534b850d Release 2.11.0 2023-06-10 23:02:32 +09:00
Taiki Endo
1657cfbfa6 Update changelog 2023-06-10 23:02:20 +09:00
John Nunley
7e750de5db Add support for cargo-dinghy (#133) 2023-06-10 23:00:18 +09:00
Taiki Endo
93a5b91855 Release 2.10.0 2023-06-10 19:02:03 +09:00
Taiki Endo
0249968d1d docs: Sort tool names 2023-06-10 19:01:31 +09:00
Taiki Endo
8cab9da4f8 Update changelog 2023-06-10 18:58:45 +09:00
FirelightFlagboy
9ead2563c7 Add syft tool (#135)
Closes #131
2023-06-10 18:55:59 +09:00
Taiki Endo
4df72e2d1e Tweak error messages 2023-06-10 18:03:24 +09:00
firelight flagboy
7bda3b1d5e Add instruction when the un-auth api rate limit is reach 2023-06-10 01:59:05 +09:00
Taiki Endo
b02c385974 Update readme to mention dev guide 2023-06-09 22:55:04 +09:00
35 changed files with 2992 additions and 144 deletions

View File

@@ -24,7 +24,6 @@ rustsec
rustup
valgrind
xcompile
Zdoctest
Zmiri
// Rust target triple
@@ -38,6 +37,7 @@ asmjs
atmega
bpfeb
bpfel
csky
cuda
eabi
eabihf
@@ -45,6 +45,7 @@ emscripten
espidf
fortanix
gnuabi
gnuabiv
gnueabi
gnueabihf
gnullvm
@@ -115,6 +116,7 @@ nonoverlapping
noreturn
nostack
peekable
powf
punct
rclass
repr
@@ -149,12 +151,14 @@ endianness
esac
euxo
gsub
libc
moreutils
msys
noninteractive
noprofile
norc
nproc
objcopy
objdump
pipefail
powerset
@@ -164,7 +168,5 @@ readelf
shellcheckrc
SIGABRT
SIGILL
SIGINT
SIGTERM
subcmd
tlsv

View File

@@ -4,9 +4,10 @@ distro
doas
dprint
enablerepo
endgroup
epel
grcov
libc
incompat
linkcheck
mdbook
microdnf
@@ -17,6 +18,7 @@ quickinstall
rockylinux
shellcheck
shfmt
syft
udeps
wasmtime
watchexec

9
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,9 @@
version: 2
updates:
- package-ecosystem: cargo
directory: /
schedule:
interval: daily
commit-message:
prefix: ''
labels: []

View File

@@ -10,7 +10,7 @@ on:
- main
- dev
schedule:
- cron: '0 1 * * *'
- cron: '0 0,6,12,18 * * *'
workflow_dispatch:
env:
@@ -38,25 +38,19 @@ jobs:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-20.04
- ubuntu-22.04
tool:
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
# TODO: valgrind installation sometime hangs.
- cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
include:
# Note: Specifying the version of valgrind and cargo-binstall is not supported.
- os: ubuntu-20.04
tool: cargo-hack@0.5.24,cargo-llvm-cov@0.5.3,cargo-minimal-versions@0.1.8,cargo-no-dev-deps@0.1.0,parse-changelog@0.5.2,cargo-udeps@0.1.35,cargo-valgrind@2.1.0,cargo-deny@0.13.5,cross@0.2.4,dprint@0.34.1,just@1.9.0,nextest@0.9.11,protoc@3.21.12,shellcheck@0.9.0,shfmt@3.6.0,wasm-pack@0.10.3,wasmtime@4.0.0,mdbook@0.4.25,mdbook-linkcheck@0.7.7,cargo-watch@8.1.1,grcov@0.8.13,watchexec-cli@1.20.5,cargo-tarpaulin@0.25.0,zola@0.16.1
- os: ubuntu-22.04
- os: ubuntu-20.04
tool: cargo-hack@0.5,cargo-llvm-cov@0.5,cargo-minimal-versions@0.1,cargo-no-dev-deps@0.1,parse-changelog@0.5,cargo-udeps@0.1,cargo-valgrind@2.1,cargo-deny@0.13,cross@0.2,dprint@0.34,just@1.9,nextest@0.9,protoc@3.21,shellcheck@0.9,shfmt@3.5,wasm-pack@0.10,wasmtime@6.0,mdbook@0.4,mdbook-linkcheck@0.7,cargo-watch@8.1,grcov@0.8,watchexec-cli@1.20,cargo-tarpaulin@0.25,zola@0.16
tool: major.minor.patch
- os: ubuntu-20.04
tool: cargo-valgrind@2, just@1,protoc@3 , shfmt@3 ,wasmtime@7,cargo-watch@8,watchexec-cli@1
tool: major.minor
- os: ubuntu-20.04
tool: major
- os: macos-11
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
- os: macos-12
- os: windows-2019
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
- os: windows-2022
runs-on: ${{ matrix.os }}
timeout-minutes: 60
steps:
@@ -65,9 +59,12 @@ jobs:
persist-credentials: false
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
- run: rm Cargo.toml
- name: Generate tool list
id: tool-list
run: tools/ci/tool-list.sh "${{ matrix.tool }}" >>"${GITHUB_OUTPUT}"
- uses: ./
with:
tool: ${{ matrix.tool }}
tool: ${{ steps.tool-list.outputs.tool }}
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell
- name: Test bash
run: just --version; shfmt --version; protoc --version
@@ -97,32 +94,19 @@ jobs:
fail-fast: false
matrix:
container:
# glibc >= 2.31
- ubuntu:18.04 # glibc 2.27
- ubuntu:20.04 # glibc 2.31
- ubuntu:22.04 # glibc 2.35
- debian:10-slim # glibc 2.28
- debian:11-slim # glibc 2.31
- fedora:latest # glibc 2.36 (as of fedora 37)
tool:
# valgrind: installing snap to container is difficult...
- cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
include:
# glibc < 2.31
# zola don't provide prebuilt binaries for musl or old glibc host.
- container: ubuntu:18.04 # glibc 2.27
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- container: debian:10-slim # glibc 2.28
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- container: rockylinux:8 # glibc 2.28
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- container: rockylinux:8-minimal # glibc 2.28
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
# glibc < 2.27 or musl
- container: centos:7 # glibc 2.17
# protoc,valgrind,wasmtime,mdbook-linkcheck,cargo-watch,zola don't provide prebuilt binaries for musl or old glibc host.
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,shellcheck,shfmt,wasm-pack,mdbook,cargo-binstall,grcov,watchexec-cli,cargo-tarpaulin
- container: alpine:latest # musl 1.2.3 (as of alpine 3.17)
# protoc,valgrind,wasmtime,mdbook-linkcheck,cargo-watch,zola don't provide prebuilt binaries for musl host.
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,shellcheck,shfmt,wasm-pack,mdbook,cargo-binstall,grcov,watchexec-cli,cargo-tarpaulin
- debian:12-slim # glibc 2.36
- fedora:latest # glibc 2.37 (as of fedora 38)
- rockylinux:8 # glibc 2.28
- rockylinux:8-minimal # glibc 2.28
- rockylinux:9 # glibc 2.34
- rockylinux:9-minimal # glibc 2.34
- centos:7 # glibc 2.17
- alpine:latest # musl 1.2.4 (as of alpine 3.18)
runs-on: ubuntu-latest
timeout-minutes: 60
container: ${{ matrix.container }}
@@ -131,7 +115,7 @@ jobs:
run: |
set -euxo pipefail
apt-get -o Acquire::Retries=10 -qq update
apt-get -o Acquire::Retries=10 -qq -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')
- name: Install requirements (fedora/rockylinux)
run: |
@@ -160,9 +144,12 @@ jobs:
persist-credentials: false
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
- run: rm Cargo.toml
- name: Generate tool list
id: tool-list
run: tools/ci/tool-list.sh >>"${GITHUB_OUTPUT}"
- uses: ./
with:
tool: ${{ matrix.tool }}
tool: ${{ steps.tool-list.outputs.tool }}
manifest:
runs-on: ubuntu-latest
@@ -179,19 +166,15 @@ jobs:
- run: tools/manifest.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: git add -N . && git diff --exit-code
if: github.repository_owner != 'taiki-e' || github.event_name != 'schedule' && !(github.event_name == 'push' && github.ref == 'refs/heads/main')
- id: diff
run: 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')
- uses: peter-evans/create-pull-request@v5
with:
title: Update manifest
body: |
Auto-generated by [create-pull-request][1]
[Please close and immediately reopen this pull request to run CI.][2]
[1]: https://github.com/peter-evans/create-pull-request
[2]: https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#workarounds-to-trigger-further-workflow-runs
Auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request)
branch: update-manifest
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'
- run: git add -N . && git diff --exit-code

View File

@@ -10,6 +10,174 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased]
## [2.13.2] - 2023-08-01
- Update `syft@latest` to 0.86.1.
## [2.13.1] - 2023-07-31
- Update `dprint@latest` to 0.40.1.
## [2.13.0] - 2023-07-31
- Support `cargo-careful`. ([#173](https://github.com/taiki-e/install-action/pull/173))
- Improve performance and robustness for cases where the host environment lacks the packages required for installation, such as containers or self-hosted runners.
## [2.12.23] - 2023-07-31
- Update `dprint@latest` to 0.40.0.
## [2.12.22] - 2023-07-30
- Update `cargo-nextest@latest` to 0.9.55.
## [2.12.21] - 2023-07-28
- Update `cargo-no-dev-deps@latest` to 0.2.3.
- Update `cargo-minimal-versions@latest` to 0.1.13.
- Update `cargo-llvm-cov@latest` to 0.5.24.
## [2.12.20] - 2023-07-28
- Update `cargo-deny@latest` to 0.14.0.
## [2.12.19] - 2023-07-27
- Update `cargo-tarpaulin@latest` to 0.26.1.
- Fix checksum error with `cargo-tarpaulin@0.26.0`. ([#167](https://github.com/taiki-e/install-action/pull/167))
## [2.12.18] - 2023-07-25
- Update `wasmtime@latest` to 11.0.1.
## [2.12.17] - 2023-07-22
- Update `cargo-binstall@latest` to 1.1.2.
## [2.12.16] - 2023-07-21
- Update `wasmtime@latest` to 11.0.0.
- Update `cargo-udeps@latest` to 0.1.41.
## [2.12.15] - 2023-07-20
- Update `cargo-make@latest` to 0.36.12.
- Update `cargo-binstall@latest` to 1.1.1.
## [2.12.14] - 2023-07-19
- Update `cargo-binstall@latest` to 1.1.0.
## [2.12.13] - 2023-07-18
- Slightly improve the time taken to install tools distributed as `.zip`.
## [2.12.12] - 2023-07-17
- Update `mdbook@latest` to 0.4.32.
## [2.12.11] - 2023-07-13
- Update `syft@latest` to 0.85.0.
- Update `dprint@latest` to 0.39.1.
## [2.12.10] - 2023-07-09
- Update `dprint@latest` to 0.39.0.
## [2.12.9] - 2023-07-08
- Update `cargo-llvm-cov@latest` to 0.5.23.
## [2.12.8] - 2023-07-07
- Update `protoc@latest` to 3.23.4.
## [2.12.7] - 2023-07-04
- Update `parse-changelog@latest` to 0.6.1.
- Update `dprint@latest` to 0.38.3.
## [2.12.6] - 2023-07-03
- Update `dprint@latest` to 0.38.1.
## [2.12.5] - 2023-07-02
- Update `dprint@latest` to 0.38.0.
## [2.12.4] - 2023-06-30
- Update `syft@latest` to 0.84.1.
- Update `mdbook@latest` to 0.4.31.
- Update `cargo-llvm-cov@latest` to 0.5.22.
## [2.12.3] - 2023-06-28
- Update `wasm-pack@latest` to 0.12.1.
- Update `cargo-binstall@latest` to 1.0.0.
## [2.12.2] - 2023-06-26
- Update `cargo-nextest@latest` to 0.9.54.
## [2.12.1] - 2023-06-26
- Update `parse-changelog@latest` to 0.6.0.
## [2.12.0] - 2023-06-26
- Support `cargo-make`. ([#146](https://github.com/taiki-e/install-action/pull/146), thanks @joshka)
## [2.11.6] - 2023-06-22
- Update `wasmtime@latest` to 10.0.1.
## [2.11.5] - 2023-06-21
- Update `wasmtime@latest` to 10.0.0.
- Update `syft@latest` to 0.84.0.
## [2.11.4] - 2023-06-19
- Update `wasm-pack@latest` to 0.12.0.
- Update `shfmt@latest` to 3.7.0.
## [2.11.3] - 2023-06-17
- Update `cargo-tarpaulin@latest` to 0.26.0.
## [2.11.2] - 2023-06-15
- Update `syft@latest` to 0.83.1.
- Update `protoc@latest` to 3.23.3.
## [2.11.1] - 2023-06-14
- Update `wasmtime@latest` to 9.0.4.
## [2.11.0] - 2023-06-10
- Support `cargo-dinghy`. ([#133](https://github.com/taiki-e/install-action/pull/133), thanks @notgull)
## [2.10.0] - 2023-06-10
- Support `syft`. ([#135](https://github.com/taiki-e/install-action/pull/135), thanks @FirelightFlagboy)
## [2.9.4] - 2023-06-08
- Update `parse-changelog@latest` to 0.5.4.
@@ -845,7 +1013,42 @@ Note: This release is considered a breaking change because installing on version
Initial release
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.9.4...HEAD
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.13.2...HEAD
[2.13.2]: https://github.com/taiki-e/install-action/compare/v2.13.1...v2.13.2
[2.13.1]: https://github.com/taiki-e/install-action/compare/v2.13.0...v2.13.1
[2.13.0]: https://github.com/taiki-e/install-action/compare/v2.12.23...v2.13.0
[2.12.23]: https://github.com/taiki-e/install-action/compare/v2.12.22...v2.12.23
[2.12.22]: https://github.com/taiki-e/install-action/compare/v2.12.21...v2.12.22
[2.12.21]: https://github.com/taiki-e/install-action/compare/v2.12.20...v2.12.21
[2.12.20]: https://github.com/taiki-e/install-action/compare/v2.12.19...v2.12.20
[2.12.19]: https://github.com/taiki-e/install-action/compare/v2.12.18...v2.12.19
[2.12.18]: https://github.com/taiki-e/install-action/compare/v2.12.17...v2.12.18
[2.12.17]: https://github.com/taiki-e/install-action/compare/v2.12.16...v2.12.17
[2.12.16]: https://github.com/taiki-e/install-action/compare/v2.12.15...v2.12.16
[2.12.15]: https://github.com/taiki-e/install-action/compare/v2.12.14...v2.12.15
[2.12.14]: https://github.com/taiki-e/install-action/compare/v2.12.13...v2.12.14
[2.12.13]: https://github.com/taiki-e/install-action/compare/v2.12.12...v2.12.13
[2.12.12]: https://github.com/taiki-e/install-action/compare/v2.12.11...v2.12.12
[2.12.11]: https://github.com/taiki-e/install-action/compare/v2.12.10...v2.12.11
[2.12.10]: https://github.com/taiki-e/install-action/compare/v2.12.9...v2.12.10
[2.12.9]: https://github.com/taiki-e/install-action/compare/v2.12.8...v2.12.9
[2.12.8]: https://github.com/taiki-e/install-action/compare/v2.12.7...v2.12.8
[2.12.7]: https://github.com/taiki-e/install-action/compare/v2.12.6...v2.12.7
[2.12.6]: https://github.com/taiki-e/install-action/compare/v2.12.5...v2.12.6
[2.12.5]: https://github.com/taiki-e/install-action/compare/v2.12.4...v2.12.5
[2.12.4]: https://github.com/taiki-e/install-action/compare/v2.12.3...v2.12.4
[2.12.3]: https://github.com/taiki-e/install-action/compare/v2.12.2...v2.12.3
[2.12.2]: https://github.com/taiki-e/install-action/compare/v2.12.1...v2.12.2
[2.12.1]: https://github.com/taiki-e/install-action/compare/v2.12.0...v2.12.1
[2.12.0]: https://github.com/taiki-e/install-action/compare/v2.11.6...v2.12.0
[2.11.6]: https://github.com/taiki-e/install-action/compare/v2.11.5...v2.11.6
[2.11.5]: https://github.com/taiki-e/install-action/compare/v2.11.4...v2.11.5
[2.11.4]: https://github.com/taiki-e/install-action/compare/v2.11.3...v2.11.4
[2.11.3]: https://github.com/taiki-e/install-action/compare/v2.11.2...v2.11.3
[2.11.2]: https://github.com/taiki-e/install-action/compare/v2.11.1...v2.11.2
[2.11.1]: https://github.com/taiki-e/install-action/compare/v2.11.0...v2.11.1
[2.11.0]: https://github.com/taiki-e/install-action/compare/v2.10.0...v2.11.0
[2.10.0]: https://github.com/taiki-e/install-action/compare/v2.9.4...v2.10.0
[2.9.4]: https://github.com/taiki-e/install-action/compare/v2.9.3...v2.9.4
[2.9.3]: https://github.com/taiki-e/install-action/compare/v2.9.2...v2.9.3
[2.9.2]: https://github.com/taiki-e/install-action/compare/v2.9.1...v2.9.2

View File

@@ -2,18 +2,33 @@
## Add support for new tool
(Example: [2ba826d](https://github.com/taiki-e/install-action/commit/2ba826d3ded42d6fa480b6bb82810d1282aa3460))
(Example: [ffbd316](https://github.com/taiki-e/install-action/commit/ffbd316e0fe98cb460dae3a66cd2ef9deb398bb1))
1\. Add base manifest to [`tools/codegen/base`](tools/codegen/base) directory.
1\. Add tool name to the table in ["Supported tools" section in `README.md`](https://github.com/taiki-e/install-action#supported-tools).
2\. Add base manifest to [`tools/codegen/base`](tools/codegen/base) directory.
See JSON files in `tools/codegen/base` directory for examples of the manifest.
2\. Generate manifest with the following command (replace `<tool>` with the tool name).
3\. Generate manifest with the following command (replace `<tool>` with the tool name).
```sh
./tools/manifest.sh <tool>
```
3\. Add tool name to test matrix in `.github/workflows/ci.yml`.
> If you're having problem with github api rate limit, you can use your GITHUB_TOKEN to increase the rate limit.
> If you have `Github CLI` installed (the command `gh`), you can:
>
> ```shell
> GITHUB_TOKEN=$(gh auth status --show-token 2>&1 | sed -n 's/^.*Token: \(.*\)$/\1/p') ./tools/manifest.sh <tool>
> ```
4\. Add tool name to table in "Supported tools" section in `README.md`.
## Troubleshooting
If one of the CI builds fails due to a bin path or release asset_name, fix the problem in the base
manifest, and re-run the manifest tool `tools/manifest.sh` to regenerate the manifest json file. The
base manifest supports overriding the bin path per platform by adding the `"bin"` / `"asset_name"`
to the platform object.
If CI fails only for containers using older versions of glibc or musl, you may need to add the tool
name to one of the `*_incompat` arrays in `tools/ci/tool-list.sh`.

View File

@@ -9,6 +9,7 @@ GitHub Action for installing development tools (mainly from GitHub Releases).
- [Inputs](#inputs)
- [Example workflow](#example-workflow)
- [Supported tools](#supported-tools)
- [Add support for new tool](#add-support-for-new-tool)
- [Security](#security)
- [Compatibility](#compatibility)
- [Related Projects](#related-projects)
@@ -82,17 +83,20 @@ https://spdx.org/licenses
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- |
| [**cargo-binstall**][cargo-binstall] | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/cargo-bins/cargo-binstall/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE) |
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
| [**cargo-careful**](https://github.com/RalfJung/cargo-careful) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/RalfJung/cargo-careful/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-MIT) |
| [**cargo-dinghy**](https://github.com/sonos/dinghy) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sonos/dinghy/releases) | Linux, macOS | [Apache-2.0](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-MIT) |
| [**cargo-hack**](https://github.com/taiki-e/cargo-hack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-hack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-MIT) |
| [**cargo-llvm-cov**](https://github.com/taiki-e/cargo-llvm-cov) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-llvm-cov/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-MIT) |
| [**cargo-make**](https://github.com/sagiegurari/cargo-make) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sagiegurari/cargo-make/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/master/LICENSE) |
| [**cargo-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-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-no-dev-deps**](https://github.com/taiki-e/cargo-no-dev-deps) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-no-dev-deps/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-no-dev-deps/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-no-dev-deps/blob/HEAD/LICENSE-MIT) |
| [**cargo-tarpaulin**](https://github.com/xd009642/tarpaulin) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/xd009642/tarpaulin/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE) OR [MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) |
| [**cargo-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) |
| [**cross**](https://github.com/cross-rs/cross) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/cross-rs/cross/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/cross-rs/cross/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/cross-rs/cross/blob/HEAD/LICENSE-MIT) |
| [**dprint**](https://github.com/dprint/dprint) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/dprint/dprint/releases) | Linux, macOS, Windows | [MIT](https://github.com/dprint/dprint/blob/HEAD/LICENSE) |
| [**grcov**](https://github.com/mozilla/grcov) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/mozilla/grcov/releases) | Linux, macOS, Windows | [MPL-2.0](https://github.com/mozilla/grcov/blob/HEAD/LICENSE-MPL-2.0) |
| [**just**](https://github.com/casey/just) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/casey/just/releases) | Linux, macOS, Windows | [CC0-1.0](https://github.com/casey/just/blob/HEAD/LICENSE) |
| [**dprint**](https://github.com/dprint/dprint) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/dprint/dprint/releases) | Linux, macOS, Windows | [MIT](https://github.com/dprint/dprint/blob/HEAD/LICENSE) |
| [**mdbook-linkcheck**](https://github.com/Michael-F-Bryan/mdbook-linkcheck) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/Michael-F-Bryan/mdbook-linkcheck/releases) | Linux, macOS, Windows | [MIT](https://github.com/Michael-F-Bryan/mdbook-linkcheck/blob/HEAD/LICENSE) |
| [**mdbook**](https://github.com/rust-lang/mdBook) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-lang/mdBook/releases) | Linux, macOS, Windows | [MPL-2.0](https://github.com/rust-lang/mdBook/blob/HEAD/LICENSE) |
| [**nextest**](https://github.com/nextest-rs/nextest) (alias: `cargo-nextest`) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/nextest-rs/nextest/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/nextest-rs/nextest/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/nextest-rs/nextest/blob/HEAD/LICENSE-MIT) |
@@ -100,6 +104,7 @@ https://spdx.org/licenses
| [**protoc**](https://github.com/protocolbuffers/protobuf) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/protocolbuffers/protobuf/releases) | Linux, macOS, Windows | [BSD-3-Clause](https://github.com/protocolbuffers/protobuf/blob/HEAD/LICENSE) |
| [**shellcheck**](https://www.shellcheck.net) | `/usr/local/bin` | [GitHub Releases](https://github.com/koalaman/shellcheck/releases) | Linux, macOS, Windows | [GPL-3.0-or-later](https://github.com/koalaman/shellcheck/blob/HEAD/LICENSE) |
| [**shfmt**](https://github.com/mvdan/sh) | `/usr/local/bin` | [GitHub Releases](https://github.com/mvdan/sh/releases) | Linux, macOS, Windows | [BSD-3-Clause](https://github.com/mvdan/sh/blob/HEAD/LICENSE) |
| [**syft**](https://github.com/anchore/syft) | `/usr/local/bin` | [Github Releases](https://github.com/anchore/syft/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/anchore/syft/blob/main/LICENSE) |
| [**valgrind**](https://valgrind.org) | `/snap/bin` | [snap](https://snapcraft.io/install/valgrind/ubuntu) | Linux | [GPL-2.0-or-later](https://valgrind.org/docs/manual/license.gpl.html) |
| [**wasm-pack**](https://github.com/rustwasm/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustwasm/wasm-pack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-MIT) |
| [**wasmtime**](https://github.com/bytecodealliance/wasmtime) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bytecodealliance/wasmtime/releases) | Linux, macOS, Windows | [Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/HEAD/LICENSE) |
@@ -109,7 +114,11 @@ If `$CARGO_HOME/bin` is not available, Rust-related binaries will be installed t
If `$HOME/.cargo/bin` is not available, Rust-related binaries will be installed to `/usr/local/bin`.<br>
If `/usr/local/bin` is not available, binaries will be installed to `$HOME/.install-action/bin`.<br>
If a tool not included in the list above is specified, this action uses [cargo-binstall] as a fallback.
**If a tool not included in the list above is specified, this action uses [cargo-binstall] as a fallback.**
### Add support for new tool
See the [development guide](DEVELOPMENT.md) for how to add support for new tool.
## Security

102
main.sh
View File

@@ -78,7 +78,11 @@ download_and_extract() {
tar_args+=("xjf")
if ! type -P bzip2 &>/dev/null; then
case "${base_distro}" in
debian | alpine | fedora) sys_install bzip2 ;;
debian | alpine | fedora)
echo "::group::Install packages required for installation (bzip2)"
sys_install bzip2
echo "::endgroup::"
;;
esac
fi
;;
@@ -86,15 +90,27 @@ download_and_extract() {
tar_args+=("xJf")
if ! type -P xz &>/dev/null; then
case "${base_distro}" in
debian) sys_install xz-utils ;;
alpine | fedora) sys_install xz ;;
debian)
echo "::group::Install packages required for installation (xz-utils)"
sys_install xz-utils
echo "::endgroup::"
;;
alpine | fedora)
echo "::group::Install packages required for installation (xz)"
sys_install xz
echo "::endgroup::"
;;
esac
fi
;;
*.zip)
if ! type -P unzip &>/dev/null; then
case "${base_distro}" in
debian | alpine | fedora) sys_install unzip ;;
debian | alpine | fedora)
echo "::group::Install packages required for installation (unzip)"
sys_install unzip
echo "::endgroup::"
;;
esac
fi
;;
@@ -115,7 +131,7 @@ download_and_extract() {
else
case "${url}" in
*.zip)
unzip tmp
unzip -q tmp "${bin_in_archive#\./}"
mv "${bin_in_archive}" "${bin_dir}/"
;;
*) mv tmp "${installed_bin}" ;;
@@ -261,9 +277,9 @@ apt_install() {
apt_update
fi
if type -P sudo &>/dev/null; then
retry sudo apt-get -o Acquire::Retries=10 -qq -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
retry sudo apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
else
retry apt-get -o Acquire::Retries=10 -qq -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
retry apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
fi
}
apt_remove() {
@@ -398,7 +414,7 @@ case "$(uname -m)" in
# https://github.com/cross-rs/cross/pull/1018
# Does it seem only armv7l is supported?
# https://github.com/actions/runner/blob/caec043085990710070108f375cd0aeab45e1017/src/Misc/externals.sh#L174
bail "32-bit ARM runner is not supported yet by this action"
bail "32-bit ARM runner is not supported yet by this action; if you need support for this platform, please submit an issue at <https://github.com/taiki-e/install-action>"
;;
# GitHub Actions Runner supports Linux (x86_64, aarch64, arm), Windows (x86_64, aarch64),
# and macOS (x86_64, aarch64).
@@ -414,21 +430,37 @@ cargo_bin="${CARGO_HOME:-"${HOME}/.cargo"}/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
# /usr/local/bin or $HOME/.install-action/bin.
if [[ ! -d "${cargo_bin}" ]] || [[ "${host_os}" != "windows" ]] && [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo${exe}" ]]; then
if [[ ! -d "${cargo_bin}" ]] || { [[ "${host_os}" != "windows" ]] && [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo${exe}" ]]; }; then
cargo_bin=/usr/local/bin
fi
if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null || ! type -P tar &>/dev/null; then
case "${base_distro}" in
debian | alpine) sys_install ca-certificates curl jq tar ;;
fedora)
if [[ "${dnf}" == "yum" ]]; then
# On RHEL7-based distribution jq requires EPEL
sys_install ca-certificates curl tar epel-release
sys_install jq --enablerepo=epel
else
sys_install ca-certificates curl jq tar
debian | fedora | alpine)
echo "::group::Install packages required for installation (jq, curl, and/or tar)"
sys_packages=()
if ! type -P curl &>/dev/null; then
sys_packages+=(ca-certificates curl)
fi
if ! type -P tar &>/dev/null; then
sys_packages+=(tar)
fi
if [[ "${dnf:-}" == "yum" ]]; then
# On RHEL7-based distribution jq requires EPEL
if ! type -P jq &>/dev/null; then
sys_packages+=(epel-release)
sys_install "${sys_packages[@]}"
sys_install jq --enablerepo=epel
else
sys_install "${sys_packages[@]}"
fi
else
if ! type -P jq &>/dev/null; then
sys_packages+=(jq)
fi
sys_install "${sys_packages[@]}"
fi
echo "::endgroup::"
;;
esac
fi
@@ -442,7 +474,7 @@ for tool in "${tools[@]}"; do
if [[ ! "${version}" =~ ^([1-9][0-9]*(\.[0-9]+(\.[0-9]+)?)?|0\.[1-9][0-9]*(\.[0-9]+)?|^0\.0\.[0-9]+)(-[0-9A-Za-z\.-]+)?(\+[0-9A-Za-z\.-]+)?$|^latest$ ]]; then
bail "install-action does not support semver operators: '${version}'"
fi
bail "install-action v2 does not support semver pre-release and build-metadata; please submit an issue if you need these supports again: '${version}'"
bail "install-action v2 does not support semver pre-release and build-metadata: '${version}'; if you need these supports again, please submit an issue at <https://github.com/taiki-e/install-action>"
fi
else
version="latest"
@@ -463,14 +495,18 @@ for tool in "${tools[@]}"; do
fi
if ! type -P unzip &>/dev/null; then
case "${base_distro}" in
debian | alpine | fedora) sys_install unzip ;;
debian | alpine | fedora)
echo "::group::Install packages required for installation (unzip)"
sys_install unzip
echo "::endgroup::"
;;
esac
fi
mkdir -p "${tmp_dir}"
(
cd "${tmp_dir}"
download_and_checksum "${url}" "${checksum}"
unzip tmp
unzip -q tmp
mv "bin/protoc${exe}" "${bin_dir}/"
mkdir -p "${include_dir}/"
cp -r include/. "${include_dir}/"
@@ -555,23 +591,35 @@ for tool in "${tools[@]}"; do
esac
info "${tool} installed at $(type -P "${tool}${exe}")"
# At least cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
case "${tool}" in
cargo-careful) ;; # cargo-careful 0.3.4 does not support neither --version nor --help option.
cargo-*)
if type -P cargo &>/dev/null; then
case "${tool}" in
cargo-udeps) x cargo udeps --help | head -1 ;; # cargo-udeps v0.1.30 does not support --version option
cargo-valgrind) x cargo valgrind --help ;; # cargo-valgrind v2.1.0 does not support --version option
*) x cargo "${tool#cargo-}" --version ;;
cargo-valgrind) x cargo "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*)
if ! x cargo "${tool#cargo-}" --version; then
x cargo "${tool#cargo-}" --help
fi
;;
esac
else
case "${tool}" in
cargo-udeps) x "${tool}" udeps --help | head -1 ;; # cargo-udeps v0.1.30 does not support --version option
cargo-valgrind) x "${tool}" valgrind --help ;; # cargo-valgrind v2.1.0 does not support --version option
*) x "${tool}" "${tool#cargo-}" --version ;;
cargo-valgrind) x "${tool}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*)
if ! x "${tool}" "${tool#cargo-}" --version; then
x "${tool}" "${tool#cargo-}" --help
fi
;;
esac
fi
;;
*) x "${tool}" --version ;;
*)
if ! x "${tool}" --version; then
x "${tool}" --help
fi
;;
esac
echo
done

View File

@@ -20,26 +20,26 @@
}
},
"latest": {
"version": "0.23.1"
"version": "1.1.2"
},
"0.23.1": {
"1.1.2": {
"x86_64_linux_musl": {
"checksum": "dea75e6896fc183af8f0bd6490196d7fcf1a17946c25c558ec87be906a0e64ef"
"checksum": "a77a735455c4fd379d7965184086fa5b1a72f9f0246a5f6e6fd79ae5362bdc39"
},
"x86_64_macos": {
"checksum": "1e03794b4380b56a3b3fb5dd47f01aea27a83672ef0fff84413d672d77cbcfaa"
"checksum": "27e688f0371a4f049b8c69d4fc73cc6986f5e4cfce78b9b150fd79a1c4d1e890"
},
"x86_64_windows": {
"checksum": "62e09ac2ab3a36d8d44790dc4679b32d8fcd50951bceb27239cdec23b43b2a8e"
"checksum": "f98e0e29be8f0ce5563de76032ec5daf604edda492ee33aed69a88136d06b374"
},
"aarch64_linux_musl": {
"checksum": "a54749e2d7761c0e4e04858d58dd08a98bd71318a9dcb3fd950ef732176f5195"
"checksum": "a8495cd3463fc71be50ab7a6d135007e2356ca528c63c044370110f52f5c5fc9"
},
"aarch64_macos": {
"checksum": "10fffaff985822a67957ef3798407ce0f7282db3fc80a6ae297cdfe9ebb00869"
"checksum": "a27733cb48b3705c7df8b86224b5f97f24aef4a5ffca851cb948413207e9ecff"
},
"aarch64_windows": {
"checksum": "b1412448d417d923ee64bc7c961a87b7af387dc97291e3e4f818dc225b48d245"
"checksum": "dd775c2a9317e59b3583303a2ad5608cfabb3270f03481d09e63cbb371854f2d"
}
}
}

41
manifests/cargo-careful.json generated Normal file
View File

@@ -0,0 +1,41 @@
{
"template": {
"x86_64_linux_musl": {
"url": "https://github.com/RalfJung/cargo-careful/releases/download/v${version}/cargo-careful.x86_64-unknown-linux-musl"
},
"x86_64_macos": {
"url": "https://github.com/RalfJung/cargo-careful/releases/download/v${version}/cargo-careful.x86_64-apple-darwin"
},
"x86_64_windows": {
"url": "https://github.com/RalfJung/cargo-careful/releases/download/v${version}/cargo-careful.exe"
}
},
"latest": {
"version": "0.3.4"
},
"0.3": {
"version": "0.3.4"
},
"0.3.4": {
"x86_64_linux_musl": {
"checksum": "a9cfc7775546bd646a9e9252527c5caa56c429d854c6d8664ab4d63ed87827bd"
},
"x86_64_macos": {
"checksum": "b29d263648fc287250a413ebf53ddb37310564ac44bfd71c5a35ca8eaddac22f"
},
"x86_64_windows": {
"checksum": "50cebcb95cda4fa3b4d5010ed6252be92de2748d3f5c00aff3bc6fe5f39c0906"
}
},
"0.3.3": {
"x86_64_linux_musl": {
"checksum": "bb2b06f4df62110c8ae89a006b548a10a4da36d0f8f3ff67f7417fb51ed96b0a"
},
"x86_64_macos": {
"checksum": "c396bae85ad4b414976ea6943bdb6fb666e56735ad51255ab615399e40641fec"
},
"x86_64_windows": {
"checksum": "87b35993b38fc60c069c45d58e79bae6c8f5253ce2459dff6a6b0b629c7aeb4c"
}
}
}

View File

@@ -18,7 +18,24 @@
}
},
"latest": {
"version": "0.13.9"
"version": "0.14.0"
},
"0.14": {
"version": "0.14.0"
},
"0.14.0": {
"x86_64_linux_musl": {
"checksum": "85dee04c86104c84f83b344f29ba3f9e0b57b64da011c478e1e4a677cd59baa0"
},
"x86_64_macos": {
"checksum": "3d03a6a5764b81bd3e4f00bc70974f48bf44fe8346788397ff1a680d7304e755"
},
"x86_64_windows": {
"checksum": "4956fe0a296cee572b878512953f562bd5afdd568efe76131d8ecf72b1740cc3"
},
"aarch64_macos": {
"checksum": "2fc95e449d086694aa76c1306e9e5a1762491f99d14a1d46a6b524bed20a94b7"
}
},
"0.13": {
"version": "0.13.9"

280
manifests/cargo-dinghy.json generated Normal file
View File

@@ -0,0 +1,280 @@
{
"template": {
"x86_64_linux_musl": {
"url": "https://github.com/sonos/dinghy/releases/download/${version}/cargo-dinghy-linux-${version}.tgz",
"bin": "cargo-dinghy-${version}/cargo-dinghy"
},
"x86_64_macos": {
"url": "https://github.com/sonos/dinghy/releases/download/${version}/cargo-dinghy-macos-${version}.tgz",
"bin": "cargo-dinghy-${version}/cargo-dinghy"
}
},
"latest": {
"version": "0.6.4"
},
"0.6": {
"version": "0.6.4"
},
"0.6.4": {
"x86_64_linux_musl": {
"checksum": "b1453cff8f0f65f09312e88306e64e4c55bba5fb6daec5d8df1ab0ca4acef97f"
},
"x86_64_macos": {
"checksum": "4fd0f5cabbdeb6fe5728c54e888c3c6b3861d7cdb8e089caa5c1ea43f618e812"
}
},
"0.6.3": {
"x86_64_linux_musl": {
"checksum": "4faa2b0ba479222284f90885f66d0afc97ecee4e2b234042912a451fbd7b8dc8"
},
"x86_64_macos": {
"checksum": "343d7e8de208a5ef2eca4b3db1653a626efa135643203a7813d0831a7eb6b7df"
}
},
"0.6.2": {
"x86_64_linux_musl": {
"checksum": "b6cd5b91e61a14befa3260802bb387ef6b8deba78dad0fd8ab80d487319140e9"
},
"x86_64_macos": {
"checksum": "f6fd261b70844ca13dc69cdb2668e14691676e92188f82d4fcf1ade6900d6f90"
}
},
"0.6.1": {
"x86_64_linux_musl": {
"checksum": "1016d349f40f54332ba7269926d4e1a56295bb54c27fc0ff5b137d68f6ffa6d4"
},
"x86_64_macos": {
"checksum": "6b3fb17fd3117f728a41b34c1728bba35f85bbee6ad7e7402ae9ab5fefb2409f"
}
},
"0.6.0": {
"x86_64_linux_musl": {
"checksum": "3755cd6187bf8192f359809143c080618acf9777a0d7a3351ecde6f67a4cfc47"
},
"x86_64_macos": {
"checksum": "907319443f0742c607773124209bf0f3c572a35b18819bfe126a487cbc1128c6"
}
},
"0.5": {
"version": "0.5.1"
},
"0.5.1": {
"x86_64_linux_musl": {
"checksum": "ded1f77c4514d763977eabe069fa62625745098715c54ad8427502557c412f05"
},
"x86_64_macos": {
"checksum": "ac105b5ef370a0920794c07af2b69fb33ea17e56ba55be2e189f080556f05112"
}
},
"0.5.0": {
"x86_64_linux_musl": {
"checksum": "e1f65a240c6e3587cd661d3b004e5af3da9f2b9c4e44f465e87f3717371d05fa"
},
"x86_64_macos": {
"checksum": "5bf0facc0d9864fd79026999ce8b9a8f3f56b40c15e0536aa98551d8750ad01a"
}
},
"0.4": {
"version": "0.4.71"
},
"0.4.71": {
"x86_64_linux_musl": {
"checksum": "64115114488ffc8b7006d2f9f35d19baba6e3acd2292133aac2dd64d24e59d99"
},
"x86_64_macos": {
"checksum": "db8bec9f9ad41e166bc1e212d0b9bf732bd1b3a1c1e49f1862042aa2dfcfdf2f"
}
},
"0.4.70": {
"x86_64_linux_musl": {
"checksum": "880ea253cdf3b989e9b45dba36e66abf9fa358bd805cdfced57437099eb00d21"
},
"x86_64_macos": {
"checksum": "a0a42c3f5825be8116978083428283e92143f320c80a11a6f5133e559642984c"
}
},
"0.4.69": {
"x86_64_linux_musl": {
"checksum": "b42985472ff399a6e00e1590cbc6dbe576b6a1c23bf36e9369898ba7152c72ff"
},
"x86_64_macos": {
"checksum": "aff25a81d3e99a0ba677a56f16860f915749fb0fa5a3ef10bb381b9a84d1e78f"
}
},
"0.4.68": {
"x86_64_linux_musl": {
"checksum": "8b17bbe806b459ac7f2692d1df9bdec5fabdc46513cb45f620b0a4124d0c8bdb"
},
"x86_64_macos": {
"checksum": "5883927469c45ac952a0785aea9a625dc3d158f0d03ee23e0ae7525659041453"
}
},
"0.4.67": {
"x86_64_linux_musl": {
"checksum": "e4175dbcb96abacdceee60055495e315bd065cbf66a3741ef7294f1d9b944448"
},
"x86_64_macos": {
"checksum": "2a4e0f23799335f3bcc04f5177772b3ae8178f69a1d20b1ea9a1e0a2af5d649e"
}
},
"0.4.66": {
"x86_64_linux_musl": {
"checksum": "10664353ce1ed10cefdf766bd9acbb9c357497011d11f281ba1d3ec24eb8a7f7"
},
"x86_64_macos": {
"checksum": "f76bd70d0f82bf31e61118eaaa5fb4912540276050f7a59d056b365614f65e5e"
}
},
"0.4.63": {
"x86_64_linux_musl": {
"checksum": "bbd791675e71e5ba4165d0fbde08c1572fa3771f12169b29831ff43b212578b2"
},
"x86_64_macos": {
"checksum": "3b4533a3e3020836abd864ddd52aa219b2eec2081a6aa376c78ce6ba37707421"
}
},
"0.4.62": {
"x86_64_linux_musl": {
"checksum": "2da0eb7a004344a845010ecbe10a92b1ea1576ea0c98cd57836fc0ce4855b675"
},
"x86_64_macos": {
"checksum": "980a8a88b5f3e950d9af8aa6a2ce6e4dfe391fcc345a082b124db2f09af85dbc"
}
},
"0.4.61": {
"x86_64_linux_musl": {
"checksum": "8d1db2698c9684b000e1e0df4675a5db28228c97c6b8a15240c4498af4575005"
},
"x86_64_macos": {
"checksum": "04fde09f40e409a6a33943bbdeb2e7a37703b6b554fa9ffe3b3d8c02139400ce"
}
},
"0.4.60": {
"x86_64_linux_musl": {
"checksum": "9881f4de90449c9251dbb9eeab85b7d73fb3c52219e0c044aa38afa6da7c0c86"
},
"x86_64_macos": {
"checksum": "feb68d4168542f09f4672241f41edc1dd1dfff10bb7376b393f7fc42ecb60a14"
}
},
"0.4.59": {
"x86_64_linux_musl": {
"checksum": "3d406ad00263c207ef339f570f8b2dc4a70bb040b11f81cbc4f61b8fa485d63a"
},
"x86_64_macos": {
"checksum": "19e9981cfa7d4564161990eb3d45855feb4caade42100f7681e5151aa177a2c5"
}
},
"0.4.57": {
"x86_64_linux_musl": {
"checksum": "a15252b2c0707c627a5b24ac3d21754046098ddbbc1b792fc981f844cbf74786"
},
"x86_64_macos": {
"checksum": "e1ba97310da861ef608fe2fcebb3251c2904bf4c5f059fd62a9654216ec75a31"
}
},
"0.4.55": {
"x86_64_linux_musl": {
"checksum": "a1eb166f015cb1a07e48e2bd44ec15bd370cf9f8a3d40d243f8ec35e71df983f"
},
"x86_64_macos": {
"checksum": "cb63021c7f9f415513ee8a5589b59b54dd1bce0b55eb2728c677f2e552b4a115"
}
},
"0.4.51": {
"x86_64_linux_musl": {
"checksum": "314d220264417960539db8a9cb1e8b81d010acc64e1d3e8bfcd3415608cea857"
},
"x86_64_macos": {
"checksum": "cc66108a0f2fb30a016c4400af5cb9e308b1c1217c696b3412dce4069722df78"
}
},
"0.4.50": {
"x86_64_linux_musl": {
"checksum": "6c885144ace5e9a064d5f201b8836418ce511266335eb56e72f6cfee3377abae"
},
"x86_64_macos": {
"checksum": "36606130a6c1a9aaa398063df59749961d0bea0973740a610e157154e459dfec"
}
},
"0.4.48": {
"x86_64_linux_musl": {
"checksum": "a5ba0ff38a074edf9b16e1d10a550b567236953c11f2f92414b56877364bf02e"
},
"x86_64_macos": {
"checksum": "d892bcc9d5976f6e0eb7ec56ce06bbb10d777fce8f2b61a494544a99dc57a8e3"
}
},
"0.4.47": {
"x86_64_linux_musl": {
"checksum": "3a7bad503bd2af5884acba5fd1d36a053610e4ffbf2bd2f32def3a125a388c0b"
},
"x86_64_macos": {
"checksum": "dabd2b1e836a3ed0493fe86a51dbd64edc53bd1fe12418f23ab1241a28a4d49f"
}
},
"0.4.46": {
"x86_64_linux_musl": {
"checksum": "5bf5c74385f8f629fc22842db9f22a017ce1161ab18695d3b673bef0767908c3"
},
"x86_64_macos": {
"checksum": "8c7c03acda02eeaac85c58d1bc2b4eaeadc86bd001a547bd83170e5a799de9e7"
}
},
"0.4.41": {
"x86_64_linux_musl": {
"checksum": "30c25753544b0d7ced2341ee01b732031739f1611ee9792a900544f2330c3af6"
},
"x86_64_macos": {
"checksum": "fb0744858e9b62c3df157806490ccb7484391d1e22d965cb395943b5ad99d047"
}
},
"0.4.40": {
"x86_64_linux_musl": {
"checksum": "5d0348b5b6361c2654543e4fdcb4adf3138c2acabb84a4b31c0b4296420ca1bc"
},
"x86_64_macos": {
"checksum": "8ec452814f1660377e6c04ef7a896dcd036421ae60804f1a6d1a2a48c38abb0b"
}
},
"0.4.39": {
"x86_64_linux_musl": {
"checksum": "4d6bdd598600ea70085fdedfd425faa6527e337819f23b998cc1deb5e01a6fd5"
},
"x86_64_macos": {
"checksum": "c03237fdf92eff3a7b5ce678684cf0b3fed7b35c5c644c5dd56dba60083d36b1"
}
},
"0.4.38": {
"x86_64_linux_musl": {
"checksum": "4bd472b5e3718d08118f08bd2ac0fbd0ce28ddbf022314b66d2a9c61a7a55615"
},
"x86_64_macos": {
"checksum": "a38ac1de5862efc36a772234c59f002894d2c6ec1924b11a36d0ecbba59a1411"
}
},
"0.4.37": {
"x86_64_linux_musl": {
"checksum": "b22e585e24363971eb925c66cb9ff3ad97612aba7264d0a27eaad871f9f3b02a"
},
"x86_64_macos": {
"checksum": "fa3b17fdc8615feb0633c513bde8f8ada9bca21a5aaf6c32567c850a19f1a9d7"
}
},
"0.4.35": {
"x86_64_linux_musl": {
"checksum": "8d10ff10fa6d4974c71fd0804d65901a88e17c472fded202c6215bc31cbb4eac"
},
"x86_64_macos": {
"checksum": "f086fd58fba784a26db8989f85ece81df6b2c0400c1b59129f5b81279c7e0a82"
}
},
"0.4.34": {
"x86_64_linux_musl": {
"checksum": "b7bd211f0f6c703b9d82e11c96e6679e21989523c85349f243f385159ff0af39"
},
"x86_64_macos": {
"checksum": "ffd0a1834eff980a10d2d983db167d67300a0634ef405fb6153f98072eae1bf4"
}
}
}

View File

@@ -17,10 +17,78 @@
}
},
"latest": {
"version": "0.5.20"
"version": "0.5.24"
},
"0.5": {
"version": "0.5.20"
"version": "0.5.24"
},
"0.5.24": {
"x86_64_linux_musl": {
"checksum": "e1c15ac5a583eeb4c478eed0222c3a3629aff3c9f151d8bdf7b50704ef9073c6"
},
"x86_64_macos": {
"checksum": "c12b25c44fd1b1b76ecfff7ca1ed4a29b2ec6f9c707f0d09a8716ea7513a557d"
},
"x86_64_windows": {
"checksum": "e4221c57b1cd759c0c659f66673f0fd5a03a1a8d2f3c95462b9af966273301c6"
},
"aarch64_linux_musl": {
"checksum": "0f3edd524e10b30c26c6ef7ff069843e89a75441c5f281254c2e65e028ccf29e"
},
"aarch64_macos": {
"checksum": "0d90b623b4dfa4fe631aaff13b891096224346ce907f0dbd61ae9276717f1bec"
}
},
"0.5.23": {
"x86_64_linux_musl": {
"checksum": "cdbb1c34bffeb2b5b986f16e3e1dd08c01d9ef2cbd1cf2d989ae7a184ce91302"
},
"x86_64_macos": {
"checksum": "e87ffd34514d23b5ce5d70e62eaff51c8a56308fcfea5d2df1cbf7a4930883af"
},
"x86_64_windows": {
"checksum": "3b0885d80a5d33c687331628adca4307cfb5d80a3d76a344ebf1077e504da08e"
},
"aarch64_linux_musl": {
"checksum": "5ad1d9b56601b76112c2555289763b88e0aba57b5188c7cb0b7e0c9f17141590"
},
"aarch64_macos": {
"checksum": "bfc30b8d89cf3b477caa8b4eee89bc083d8a3649e57a88eaa7a3a4948e5eaa0e"
}
},
"0.5.22": {
"x86_64_linux_musl": {
"checksum": "6a3f93f12e93853844dfa8b697ff86aaa688b9f44b82ba75b3f4ddd8905f3de5"
},
"x86_64_macos": {
"checksum": "9860cd3df6947817b689772d976f03f8b4edddc98a7d000a36d39d286c2ef663"
},
"x86_64_windows": {
"checksum": "c5cc93820d54c83fda40251c3f7a06a89de4cd0a5bc330208b5c7220c3bc8890"
},
"aarch64_linux_musl": {
"checksum": "bcf7cf97bbf49932b6cf43554a2ebf7ed9d50a54c16b0b33cd95cbc90e66008c"
},
"aarch64_macos": {
"checksum": "c2b702c10a033edee94fbff3b62d0e248932187431fea1b02e652762a0ae2c8d"
}
},
"0.5.21": {
"x86_64_linux_musl": {
"checksum": "bd23aced73f17c2178569c058f6cd78478cb38b233c45660eacab853b42353d6"
},
"x86_64_macos": {
"checksum": "d56ee6a72d496f86d8a387da9c5f66a88fa4dd568d822a0c78c4e3c6b901fdde"
},
"x86_64_windows": {
"checksum": "94f0cf996f63e5eea5ef908bb7bfcf2df1eb6f12508d7e5a435a5f8bfb9a4238"
},
"aarch64_linux_musl": {
"checksum": "6b3f727af761400bec3a6b7043e228722060fda045fb68d05a33ed28befa39f2"
},
"aarch64_macos": {
"checksum": "4572ef983631d461088a658f9d0fffe0a66ee2584b1160deca7fb48e91823b34"
}
},
"0.5.20": {
"x86_64_linux_musl": {

1192
manifests/cargo-make.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -20,10 +20,30 @@
}
},
"latest": {
"version": "0.1.12"
"version": "0.1.13"
},
"0.1": {
"version": "0.1.12"
"version": "0.1.13"
},
"0.1.13": {
"x86_64_linux_musl": {
"checksum": "7bafe9e8c27207845edb3940e3a91f7cbae7a318472267610017fb6b10d8c7a2"
},
"x86_64_macos": {
"checksum": "79bf05f75f95e20641181d7c5576fa18a9b8eb11ad640a979a8916d8b6887831"
},
"x86_64_windows": {
"checksum": "ab7849653698babfc74dc865c87c3683594174e8f53201dc2bbcdc2100e9b4c8"
},
"aarch64_linux_musl": {
"checksum": "c5a1b3d68fc25420806576bc3d947fbb71011f30153c29ff1de162c80dc167e9"
},
"aarch64_macos": {
"checksum": "e7ce17977d4fc48d7a240989edf0c88511cee8573133504f0af5b4f7070893cf"
},
"aarch64_windows": {
"checksum": "f0f501bb1026cb5e48db5ccff3a16dcc6832d5d2f9da353f17337f86fbceca38"
}
},
"0.1.12": {
"x86_64_linux_musl": {

View File

@@ -17,10 +17,44 @@
}
},
"latest": {
"version": "0.9.53"
"version": "0.9.55"
},
"0.9": {
"version": "0.9.53"
"version": "0.9.55"
},
"0.9.55": {
"x86_64_linux_gnu": {
"checksum": "b5bab814d720561c002b5cbe899f997c20407689cfba23754b5a6c20ae3cac4a"
},
"x86_64_linux_musl": {
"checksum": "2ae6cd6198a60c73e906ed99fcc7254ae6dae68076ea2c24f5acda83c5918ffd"
},
"x86_64_macos": {
"checksum": "adbcbd9c2c1634e90c0cc8f376633ff76242a722a81938ecda6fe9131cc90aa6"
},
"x86_64_windows": {
"checksum": "64280ff486b3af59a7c4e095f293f292211b334b9b17c7d4bd45445aabfe15e5"
},
"aarch64_linux_gnu": {
"checksum": "0dbd309e53c001a18afb5f3a3839d0427421bc06ba057b28506d08e7ae2fb20a"
}
},
"0.9.54": {
"x86_64_linux_gnu": {
"checksum": "ed393824489793854193906946d972afc1e3c32a18aed5bc9dafc2cb3547bead"
},
"x86_64_linux_musl": {
"checksum": "898bdec39d25f8c60eb984fe440a7a2e677a7f8b881ad7f0bdc44d1236700ab7"
},
"x86_64_macos": {
"checksum": "436c10a0c32aaefe3680a8550903f1382436a7954ecea5156f99c7f207516466"
},
"x86_64_windows": {
"checksum": "45bb1ac2cbe1286ded194619befe860adde01b14c0f4c7a77352022fb2be254d"
},
"aarch64_linux_gnu": {
"checksum": "c62ae5598a857655ba7c6299be5254244c78dfb249d83f6634804221e3f0faa0"
}
},
"0.9.53": {
"x86_64_linux_gnu": {

View File

@@ -20,10 +20,30 @@
}
},
"latest": {
"version": "0.2.2"
"version": "0.2.3"
},
"0.2": {
"version": "0.2.2"
"version": "0.2.3"
},
"0.2.3": {
"x86_64_linux_musl": {
"checksum": "ccd4ee0b1cbe122657d5968ad27712b9ecb291aa58e5ec6e1b2964e78f9f00ee"
},
"x86_64_macos": {
"checksum": "2b7670703e8daaf854f373da5eacd3c9ea26ab28f9ceac6b24351fdf8e2e98df"
},
"x86_64_windows": {
"checksum": "f745b034340885a721fcf7c2eb23e4ef57809cf7304d411b434173c0e7085457"
},
"aarch64_linux_musl": {
"checksum": "2b012dabefa62da7e97e426f0dbf45bb38218b5570e32057aa732551fccad8d4"
},
"aarch64_macos": {
"checksum": "5af57c8f508d1fe04ec7ef74af6e6689c644ff2a0fa0ce36befe68920f819c52"
},
"aarch64_windows": {
"checksum": "a63f26daee3de974ecdb1cea8c3e0918000acd1098c0a63b34c73ae4362b043b"
}
},
"0.2.2": {
"x86_64_linux_musl": {

View File

@@ -17,7 +17,44 @@
}
},
"latest": {
"version": "0.25.2"
"version": "0.26.1"
},
"0.26": {
"version": "0.26.1"
},
"0.26.1": {
"x86_64_linux_musl": {
"checksum": "d8f07d68b2739a545ffa6f45b093922cb23d0726d086b3d4c405aa374b154186"
},
"x86_64_macos": {
"checksum": "6000aa742b2ec44d4c9a2ab5873847703b53597f0ff296c4ae1096c572ce5565"
},
"x86_64_windows": {
"checksum": "c464ab2e356dfbed8d530925de3cbe7fff2313ecf269d6674ab726d2a49b96ed"
},
"aarch64_linux_musl": {
"checksum": "51c2984b15a60e1d9bbf537d56354379abc428240855137b8ab8cd0614211c58"
},
"aarch64_macos": {
"checksum": "aac56df882fdf69030c7e4317eefa8ba8f9c2a184c8e66ff88dc6cae2093243a"
}
},
"0.26.0": {
"x86_64_linux_musl": {
"checksum": "c0c89310eecf34ede08e4c82a3be34ae5982e7a751b48290b05c5e829ae9c948"
},
"x86_64_macos": {
"checksum": "34560cde275396114a850141356f2fbb712fff74182d5e020dd8f133ed1eecec"
},
"x86_64_windows": {
"checksum": "296bb32608c6f1a983927e2d8284f3cc2ceb6129fd218dd5f0512ccc0e18a835"
},
"aarch64_linux_musl": {
"checksum": "63203c4c4cb135bdb82cf33429adac8d277963dde42439481ceb7b5849422d85"
},
"aarch64_macos": {
"checksum": "f58ea996d2216fe0c218e7f8fd7ce050149f1b766243d1661c4431087c7901a2"
}
},
"0.25": {
"version": "0.25.2"

View File

@@ -30,10 +30,30 @@
}
},
"latest": {
"version": "0.1.40"
"version": "0.1.41"
},
"0.1": {
"version": "0.1.40"
"version": "0.1.41"
},
"0.1.41": {
"x86_64_linux_musl": {
"checksum": "9895062bb4563c6eb6f0d1134f443d95550e3aefa51c9dc65a716550ef12fa74"
},
"x86_64_macos": {
"checksum": "421fb935f2a06f42e99ed8fa6b25514f5a724427d30321a5460ca471676da6fd"
},
"x86_64_windows": {
"checksum": "58d7f7555adfe0a6137662ba8446096c866214fc268a18906e7ba5670e587161"
},
"aarch64_linux_musl": {
"checksum": "f527129f91703dab09fa0bb139a6f9020bcb9598dc43ca010f59ee9886055eb1"
},
"aarch64_macos": {
"checksum": "a3aec3ea5356d232a670b112170dc46ac7285419886aa693045907094b030f09"
},
"aarch64_windows": {
"checksum": "da3a695bcd3654413873e8f1df0389d0d3d478ec13317676a29e2e05d520ce3b"
}
},
"0.1.40": {
"x86_64_linux_musl": {

147
manifests/dprint.json generated
View File

@@ -20,7 +20,152 @@
}
},
"latest": {
"version": "0.37.1"
"version": "0.40.1"
},
"0.40": {
"version": "0.40.1"
},
"0.40.1": {
"x86_64_linux_musl": {
"checksum": "0bc9cf7e191bd0c9a3e0ff84c77837da1a14f399220246d1955774135c0e40e6"
},
"x86_64_macos": {
"checksum": "a510053186e3cc9a802807cccf3e5eac3427fa1ceddd3e6f9ccb59dce7051ac0"
},
"x86_64_windows": {
"checksum": "a51788272cf3412f7cdaecde1c570e22f93f01f89ae14587712b0f8f321a47e2"
},
"aarch64_linux_gnu": {
"checksum": "53056d49e4c4394f52de95a3910a9d4a8986287f728886f0d768d2908975e92e"
},
"aarch64_macos": {
"checksum": "8b8826460309a6306a3bab9150bd84344eccb59ca0e8c38ca551dfea6c1efc9b"
}
},
"0.40.0": {
"x86_64_linux_musl": {
"checksum": "4ca464e5d57d2fcffaa724a4fcecd4b75a8a264df8e673feda0ca94267d07416"
},
"x86_64_macos": {
"checksum": "7da589860a440717b7d1e6153394509fa2a2b74d1c0b24a669920da172c805ce"
},
"x86_64_windows": {
"checksum": "372c6cd7665f1526a821cc3676d36036a6137609c6dcbfaa2601a7da8b0d0bb4"
},
"aarch64_linux_gnu": {
"checksum": "693b5d943a0f705be6379c79135f7e9d9bcc590d2b237e6344196fed62d817c7"
},
"aarch64_macos": {
"checksum": "a0b67859e733330d99809c8307095f56723ba9c3af01b1ffb7a03f1290e19c92"
}
},
"0.39": {
"version": "0.39.1"
},
"0.39.1": {
"x86_64_linux_musl": {
"checksum": "5e6ff56f68d31ff8411367fa021a15b29092d0d48bcd8b2741953927652da953"
},
"x86_64_macos": {
"checksum": "f4fb55f4361d70a43fd6cefd25328accef0cc52790950261f1d21aabfe97132d"
},
"x86_64_windows": {
"checksum": "6e7f87393fadd04bee062859c00f71bd7379960c15cebd673b35f3c810a0cee9"
},
"aarch64_linux_gnu": {
"checksum": "3a91d748c57d8510399d17eb14181c8f2803d9e67f7403ad7043a2c7a30c3568"
},
"aarch64_macos": {
"checksum": "63aa28e5ee984c029da74f51b53d4b3f979d9b70fce3800eb82486af389d3a99"
}
},
"0.39.0": {
"x86_64_linux_musl": {
"checksum": "85a05abe62b607b0b632dc2dfb70f1f0c25d0ba1c917ec5c57e4aba226617d42"
},
"x86_64_macos": {
"checksum": "79d1bbe2f811ddd4f9da83cb827abccc2a2fa851709886c8df9e1dd264d348a6"
},
"x86_64_windows": {
"checksum": "6e7726628ae1a656e9a889926c49b0d0dc213867e310112e550579512bedac40"
},
"aarch64_linux_gnu": {
"checksum": "d638ef063d33e12e4ee6ebb501655179c2be2a25800e6e8fa53c8d4413f08df4"
},
"aarch64_macos": {
"checksum": "78a17f1697e12b370c5c8f49665ff81bc97407c54f77d3f6ceae226c323a1c58"
}
},
"0.38": {
"version": "0.38.3"
},
"0.38.3": {
"x86_64_linux_musl": {
"checksum": "51616da543b45d07a8da2aab1d2072f5b301078b70b1039da63a84749e0e3a65"
},
"x86_64_macos": {
"checksum": "e0ebae88a4c5789426e80ab26dcf52f8640c77cd5599b71a5112a62284ed5cf1"
},
"x86_64_windows": {
"checksum": "089c2b15990e541f033159476e3dbcf308ea424345e95b51e716227a1d2eb2f7"
},
"aarch64_linux_gnu": {
"checksum": "99a1a2ac0bd010fb898ad143f2cdcf50975f21ee2b4e2f4145088f689f974e6c"
},
"aarch64_macos": {
"checksum": "587ca5ba726435b12d66c98750124a8bbcef7b1d8ff2940fba21f122a5813176"
}
},
"0.38.2": {
"x86_64_linux_musl": {
"checksum": "d57cdd843412c4a8b16a12c7a8b021494093eb011352aefe4f440592bdbfa37d"
},
"x86_64_macos": {
"checksum": "99da7486ed705ab88323093dca2aae337dbc201da047130bc12b87f8b798402a"
},
"x86_64_windows": {
"checksum": "bc7244fd98431a859a24a4959e8871ca5bf3a8d083d729b8e0796d6834d8b55e"
},
"aarch64_linux_gnu": {
"checksum": "1d72a2f199a2e69b5aa2eb75fd18b07f964346c89aa2f584c981c6f70dce1ed0"
},
"aarch64_macos": {
"checksum": "a9e89b89d84db129fb4e98694196230322378a50e3cac6cce41c08c3542d64c6"
}
},
"0.38.1": {
"x86_64_linux_musl": {
"checksum": "6da012131c66ddea1437a3cbe50cbfaaf070fe0c1ecd6942a198c62d6982d9bd"
},
"x86_64_macos": {
"checksum": "ccce324310deb9025e97c617ae31ecb8dddeef25aadfff567d63eb73ccd3279c"
},
"x86_64_windows": {
"checksum": "7e2919877f73baea8048f7bdc78b356ec80740b1a6dc8eb443547db10c270eea"
},
"aarch64_linux_gnu": {
"checksum": "ce5e02182e4bb975fb217eb567d2e8ddc3447376d4924dca525085956735814a"
},
"aarch64_macos": {
"checksum": "2fd93b24ccfac269a7a29658b2cc3b69182f23f5a4a5044ac45add1ff42b5ef4"
}
},
"0.38.0": {
"x86_64_linux_musl": {
"checksum": "a518a2e3dc29b7db1af4b463feaee605657acba5cef6b846117bddbcec579400"
},
"x86_64_macos": {
"checksum": "bb65e3a3aad6989705a69e12872f2d9609d0087239b05448d81c129ba7b081bc"
},
"x86_64_windows": {
"checksum": "0fbd229d3399212518b855b05eff8934e1b32c5829075a5263f504e1770c184a"
},
"aarch64_linux_gnu": {
"checksum": "be954f41b39b12f094750b68e084f61ee9dc1e8801133593331be110e2ee6173"
},
"aarch64_macos": {
"checksum": "28f88275dcc3661fd1de3ff0b264853641fd9c030e7e31f6772528df3f90e283"
}
},
"0.37": {
"version": "0.37.1"

32
manifests/mdbook.json generated
View File

@@ -17,10 +17,38 @@
}
},
"latest": {
"version": "0.4.30"
"version": "0.4.32"
},
"0.4": {
"version": "0.4.30"
"version": "0.4.32"
},
"0.4.32": {
"x86_64_linux_musl": {
"checksum": "ac38f040eb462752548c865d6c9e900aa862852d42190cd773d5f20cd7b757f9"
},
"x86_64_macos": {
"checksum": "a625001956c903ff7b6864e90bb6380eae0e8ed711040dfeab932ace68e73d79"
},
"x86_64_windows": {
"checksum": "c06f2eeb4cfa487931213b830701a3dfa1eab5fcd7ec3756f14ffc68171a4817"
},
"aarch64_linux_musl": {
"checksum": "e68950f91fa907e89bd7d3f4d3e228a0c7bb4556689ba9e2b3adc42e4e7d6021"
}
},
"0.4.31": {
"x86_64_linux_musl": {
"checksum": "0332c3149dcc0b6ad1baab6cbf73f90e45b919fea3bd9c55fb5739fa980b2eaf"
},
"x86_64_macos": {
"checksum": "817300d62cff7ed1bf15921934ec9998c07a3ed8e293d8f1c4b32634206c08de"
},
"x86_64_windows": {
"checksum": "f55c476e298b53d9724933b8a0df5d150f5340ac8a08b64405e402846c3ac5b4"
},
"aarch64_linux_musl": {
"checksum": "6946e91283380f5a86c9ff8cb98b0449904d66d75ff4dfac759ccbef8800d20e"
}
},
"0.4.30": {
"x86_64_linux_musl": {

View File

@@ -23,7 +23,50 @@
}
},
"latest": {
"version": "0.5.4"
"version": "0.6.1"
},
"0.6": {
"version": "0.6.1"
},
"0.6.1": {
"x86_64_linux_musl": {
"checksum": "852a84c345787f959b5838958cd9d2f322059cce59fb5b005070b84182231a98"
},
"x86_64_macos": {
"checksum": "fcb4c8c48628967cbc2e52efbdb1a9b9151ff8de7cbb64fd60c8fc0cb5c12e73"
},
"x86_64_windows": {
"checksum": "1f0790b02b9afb4036e7bfdf5c0954f1099ac7b8474f4a729a29742b8bba68f2"
},
"aarch64_linux_musl": {
"checksum": "5e31f9eefdc1b0db62bfd022e217b84d644db9f75b3eafaacd716dbb9361efdd"
},
"aarch64_macos": {
"checksum": "9f699a48e43af8a9ba92ad8c5e0400c57963be89297a0e0e318ef143c9f8cc8e"
},
"aarch64_windows": {
"checksum": "a1b07108447f59bd3a8cb1055791b4cde570e7c6f8d1f953d850b5370da78b70"
}
},
"0.6.0": {
"x86_64_linux_musl": {
"checksum": "80e57ee43411646c8b3adf0f4417c6155418385e1755f26a1dcc92069ef26bfc"
},
"x86_64_macos": {
"checksum": "4521b4264e3b1bf07580bfaef405d32ba4f4e31323160d999a3ab38c00d3470d"
},
"x86_64_windows": {
"checksum": "eadf1c574efc7ae46cf79492b37596ba44aebc7f5af6aadff2dad6e30b62e40c"
},
"aarch64_linux_musl": {
"checksum": "8626ac4c3e6868b2bc4820a32b3533ab8265737908ee8335442942c8fa8d4d72"
},
"aarch64_macos": {
"checksum": "5eb69fda7e62869bae81f22db57d76d1fefabe0e9721c4941a4adcfea112d15a"
},
"aarch64_windows": {
"checksum": "e435cd91923f4afdf3499a53cdb63446fd4a42a6b580209e93be2e2d47cb6d93"
}
},
"0.5": {
"version": "0.5.4"

50
manifests/protoc.json generated
View File

@@ -1,13 +1,57 @@
{
"template": null,
"latest": {
"version": "3.23.2"
"version": "3.23.4"
},
"3": {
"version": "3.23.2"
"version": "3.23.4"
},
"3.23": {
"version": "3.23.2"
"version": "3.23.4"
},
"3.23.4": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.4/protoc-23.4-linux-x86_64.zip",
"checksum": "0502f286ac9ed860b629a7965a14527b1f2dd131e4283fa23c2d7f184672aa9a"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.4/protoc-23.4-osx-x86_64.zip",
"checksum": "07e5fdcf1b0708d3367dc5e6eb8d135de7e407d75316c93155cfd8ab362eec80"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.4/protoc-23.4-win64.zip",
"checksum": "a309c39442fb75f0db343cb22c111a00f91cdf0767f332e170644b9378e2bcc6"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.4/protoc-23.4-linux-aarch_64.zip",
"checksum": "1c7750b6e038305b5a7fc3d0cda1ebefdf106a4f30a787bf826ed2fc47c3967d"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.4/protoc-23.4-osx-aarch_64.zip",
"checksum": "8c7afae8626b6811e7b5897d16d940c2dbf50b1e135ed958a01db6566bdda726"
}
},
"3.23.3": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.3/protoc-23.3-linux-x86_64.zip",
"checksum": "8f5abeb19c0403a7bf6e48f4fa1bb8b97724d8701f6823a327922df8cc1da4f5"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.3/protoc-23.3-osx-x86_64.zip",
"checksum": "82becd1c2dc887a7b3108981d5d6bb5f5b66e81d7356e3e2ab2f36c7b346914f"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.3/protoc-23.3-win64.zip",
"checksum": "a55295e95fd803351eacd40143d11c037a917beceb4db5894dfd188224627239"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.3/protoc-23.3-linux-aarch_64.zip",
"checksum": "4e5154e51744c288ca1362f9cca942188003fc7b860431a984a30cb1e73aed9e"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.3/protoc-23.3-osx-aarch_64.zip",
"checksum": "edb432e4990c23fea1040a2a76b87ab0f738e384cd25d650cc35683603fe8cdc"
}
},
"3.23.2": {
"x86_64_linux_gnu": {

24
manifests/shfmt.json generated
View File

@@ -22,10 +22,30 @@
}
},
"latest": {
"version": "3.6.0"
"version": "3.7.0"
},
"3": {
"version": "3.6.0"
"version": "3.7.0"
},
"3.7": {
"version": "3.7.0"
},
"3.7.0": {
"x86_64_linux_gnu": {
"checksum": "0264c424278b18e22453fe523ec01a19805ce3b8ebf18eaf3aadc1edc23f42e3"
},
"x86_64_macos": {
"checksum": "ae1d1ab961c113fb3dc2ff1150f33c3548983550d91da889b3171a5bcfaab14f"
},
"x86_64_windows": {
"checksum": "2807b4af91fbbd961b68716de06c044f1b4f897457fc89fba216e5e2e351c64f"
},
"aarch64_linux_gnu": {
"checksum": "111612560d15bd53d8e8f8f85731176ce12f3b418ec473d39a40ed6bbec772de"
},
"aarch64_macos": {
"checksum": "ad7ff6f666adba3d801eb17365a15539f07296718d39fb62cc2fde6b527178aa"
}
},
"3.6": {
"version": "3.6.0"

163
manifests/syft.json generated Normal file
View File

@@ -0,0 +1,163 @@
{
"template": {
"x86_64_linux_musl": {
"url": "https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_linux_amd64.tar.gz",
"bin_dir": "/usr/local/bin",
"bin": "syft"
},
"x86_64_macos": {
"url": "https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_darwin_amd64.tar.gz",
"bin_dir": "/usr/local/bin",
"bin": "syft"
},
"x86_64_windows": {
"url": "https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_windows_amd64.zip",
"bin_dir": "/usr/local/bin",
"bin": "syft.exe"
},
"aarch64_linux_musl": {
"url": "https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_linux_arm64.tar.gz",
"bin_dir": "/usr/local/bin",
"bin": "syft"
},
"aarch64_macos": {
"url": "https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_darwin_arm64.tar.gz",
"bin_dir": "/usr/local/bin",
"bin": "syft"
}
},
"latest": {
"version": "0.86.1"
},
"0.86": {
"version": "0.86.1"
},
"0.86.1": {
"x86_64_linux_musl": {
"checksum": "6316bff6b9a40c893422ec4df12c7da6a200f7ca08842cccc39bf94cd69f28c8"
},
"x86_64_macos": {
"checksum": "5e506e96ac2ae01e9d2598e66dcc9375d0d4018031e54725e25b26bc0ed9f177"
},
"x86_64_windows": {
"checksum": "b0a8141b46de13ccf82dd12fd8eddb77888aef770ef210ee35f9c68a61122b93"
},
"aarch64_linux_musl": {
"checksum": "ed143b563c231ab3acdf805ff4b68d808d4ccf2ed35ec829aa5c377de0cc02ee"
},
"aarch64_macos": {
"checksum": "e538cc1881d9b2446d4d20ea19f650e567cb729c38ad05c268c712450bcf7ecf"
}
},
"0.86.0": {
"x86_64_linux_musl": {
"checksum": "f05da10cbf60cb5f9edcd8da79762bc5b4a495d828bad23b301632ffc18ddfb1"
},
"x86_64_macos": {
"checksum": "d8c7169086347427bc1317ce484d21049331f34c516f209e01335b6c4ba89648"
},
"x86_64_windows": {
"checksum": "ffb447ca43ac4761796f9463b88b2bdca5f45169ac5ace86413c70394cefdc3e"
},
"aarch64_linux_musl": {
"checksum": "c6aa2fe68101b349b8426c0fb119b98d24a361e3bdac0554f477c5a943bb288d"
},
"aarch64_macos": {
"checksum": "e083dbf018cfa5bffd2904a1c4c9277cface05bdfdd2ec6b46b171091c3e6a91"
}
},
"0.85": {
"version": "0.85.0"
},
"0.85.0": {
"x86_64_linux_musl": {
"checksum": "2a92c69e1017e2bf3785886a8298ad2b94dda69f9f5623560999740986dd8420"
},
"x86_64_macos": {
"checksum": "8dc8a29466bc69f514b56d8e41801ff781253646d07044982122609cb48bc1da"
},
"x86_64_windows": {
"checksum": "ca38ceb73b3124e92e2717f269e826a5091f128ee9bade27c9d9481b45aca43e"
},
"aarch64_linux_musl": {
"checksum": "fe96fc0c286feb554821ec1baf9367ad7122173998a8ca4ae2bcda844cd4a10a"
},
"aarch64_macos": {
"checksum": "0864e3b49ccf232bab7e171e4f8c03d1d6b291adc122ca009aa00218e9c74607"
}
},
"0.84": {
"version": "0.84.1"
},
"0.84.1": {
"x86_64_linux_musl": {
"checksum": "05ebad9167254f03447103efea175d636c3cd27d0da7f79972ca78adc7c442f9"
},
"x86_64_macos": {
"checksum": "43af6c70dca85ea603fb807e78044879c549a7b9d053d00d071078cebbdf2c6d"
},
"x86_64_windows": {
"checksum": "03241b9de869df23634c34c28cc27a7f48af3571ef95b46318c834a56c42e519"
},
"aarch64_linux_musl": {
"checksum": "8b68b2cf046f8c3729753f7a414eb6546ac7b43bee3afd56f413601200cac3c2"
},
"aarch64_macos": {
"checksum": "b98b9817dc284a0eb5d7e559a574361fda49d79a3413710ae5c35bd5e986adcb"
}
},
"0.84.0": {
"x86_64_linux_musl": {
"checksum": "cca9c05614667fe6d5de6362417754c522aeccadcb2ccfb9302f3dd7e82bdddc"
},
"x86_64_macos": {
"checksum": "f981df10be75e86fc82ba59cc338f982c5b6b07a5a2e3c104c983fca975fe1ac"
},
"x86_64_windows": {
"checksum": "39f90587629f32681ba22a03de6c996d4c4c94f3266e09ae6a472fd127176e07"
},
"aarch64_linux_musl": {
"checksum": "33924f053526b6c2178f7c362bb7d19483406d59664cdf3528d92262cbfa213d"
},
"aarch64_macos": {
"checksum": "65972738458a3255011808f46919a2fd6c1a559565be67da2a2a8f314f25638e"
}
},
"0.83": {
"version": "0.83.1"
},
"0.83.1": {
"x86_64_linux_musl": {
"checksum": "59b761dc495dd56e32e744cb4403bfcca6a9c0aed810b618664e36530a01f253"
},
"x86_64_macos": {
"checksum": "fa51fe155bc19f047663a6dbd2cc82fd35533a1601be55abb39c50ecff1e461a"
},
"x86_64_windows": {
"checksum": "035fdcc70f38479de7a3d67525f5154e2acd9748e92fe37ef1814766f478b59b"
},
"aarch64_linux_musl": {
"checksum": "1df595ac70f29be7683857f585a4cdf583245b36f98b362a4da8276f08dcb640"
},
"aarch64_macos": {
"checksum": "8a7ec7450a7f6d0f894bcad946e06ce70d455269191dc706ca671b3d698d6a1d"
}
},
"0.83.0": {
"x86_64_linux_musl": {
"checksum": "694e97a454327403fb440544c41fefd83d37f88f43c4f9ae0b0d67a3562bd25c"
},
"x86_64_macos": {
"checksum": "211f34f2e52e842d3248bc3a72c07e534d0d7a8e40babaa7a2034a41a077b70e"
},
"x86_64_windows": {
"checksum": "9131f458fdbbc88fe1bd8df666721ecb95ff751d0ca3e2cffecfd5e021c65e97"
},
"aarch64_linux_musl": {
"checksum": "388fbea52598e44f8529e3432555c53e6e161211a83020d2b749c5d160baf593"
},
"aarch64_macos": {
"checksum": "4b93cf316aa30bddb53d2dcd82f4c9d0353b337677cbdf8a470749f9e98eec82"
}
}
}

View File

@@ -18,7 +18,38 @@
}
},
"latest": {
"version": "0.11.1"
"version": "0.12.1"
},
"0.12": {
"version": "0.12.1"
},
"0.12.1": {
"x86_64_linux_musl": {
"checksum": "7339ba3ad776bd5fc04dd5d6b9babe952648050a54226c08206fab4ffeec621f"
},
"x86_64_macos": {
"checksum": "413bbbc727004ab735f3502755acb193eedd3efe8c0b7f88c1b5125d848f7eb4"
},
"x86_64_windows": {
"checksum": "0f000a337b7b69bf984138306e82af3a463467bc0c5e940118bb47e150fd4e74"
},
"aarch64_linux_musl": {
"checksum": "edbfd8c434f7d0dfa27a2f42be73c815c693342f2034778033877b1b54e410cd"
}
},
"0.12.0": {
"x86_64_linux_musl": {
"checksum": "60d7c5b082c408b9c201aa81813d87d5df23db4b1fa9c4a88302144e69bd3152"
},
"x86_64_macos": {
"checksum": "a2fb0a8ab4b5ae1f7dd459af4634d062d7ca33200b1fe6fb527c3f3797b28fe3"
},
"x86_64_windows": {
"checksum": "98ad2b548247f5ee89b2252d263caead040c155a348ebf780bb73b170e6605da"
},
"aarch64_linux_musl": {
"checksum": "19534e90fbe266a0f19085e186d983976e12a6390a76be1b2f977f53cbe922df"
}
},
"0.11": {
"version": "0.11.1"

153
manifests/wasmtime.json generated
View File

@@ -1,13 +1,160 @@
{
"template": null,
"latest": {
"version": "9.0.3"
"version": "11.0.1"
},
"11": {
"version": "11.0.1"
},
"11.0": {
"version": "11.0.1"
},
"11.0.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.1/wasmtime-v11.0.1-x86_64-linux.tar.xz",
"checksum": "90bdbe4c650c7b45f96579f9026cff3071f1fa3ea7cf31fad5a3559c3318e23c",
"bin": "wasmtime-v11.0.1-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.1/wasmtime-v11.0.1-x86_64-macos.tar.xz",
"checksum": "85e51d5d87997612690d615868d8a0542cd09f81f60e2f74eb8cb34714c295b7",
"bin": "wasmtime-v11.0.1-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.1/wasmtime-v11.0.1-x86_64-windows.zip",
"checksum": "0048fbc227bd600aa21eff6b32d12092bf96d72c99483fe229e9db698dfa1f6c",
"bin": "wasmtime-v11.0.1-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.1/wasmtime-v11.0.1-aarch64-linux.tar.xz",
"checksum": "f1c9323dec3c84b64cacdcf0e4c9f6a1aee87905ace6732b0c7fb4820a9bd563",
"bin": "wasmtime-v11.0.1-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.1/wasmtime-v11.0.1-aarch64-macos.tar.xz",
"checksum": "8c9839a42d47b50caec599f569bb800b74fb1963d7b8c600b9c9b07bb2d01cba",
"bin": "wasmtime-v11.0.1-aarch64-macos/wasmtime"
}
},
"11.0.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.0/wasmtime-v11.0.0-x86_64-linux.tar.xz",
"checksum": "8723d437ff07b02ee3bc8885c8624bb34a52d96e70477f81e87d1936d2b84556",
"bin": "wasmtime-v11.0.0-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.0/wasmtime-v11.0.0-x86_64-macos.tar.xz",
"checksum": "2691cb31bf7dfe792d29fd862ed6142e892191e481d1c93e74c8fbf5c4e2bdf4",
"bin": "wasmtime-v11.0.0-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.0/wasmtime-v11.0.0-x86_64-windows.zip",
"checksum": "e7d17a0613fbbe0194e2340899d347fff2ceacc466decfbb7cfba0a4715df950",
"bin": "wasmtime-v11.0.0-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.0/wasmtime-v11.0.0-aarch64-linux.tar.xz",
"checksum": "662b9ce9a8b447b24ef6cfec811bf6f5f13a6ca4112836f8d3781b8e268dea34",
"bin": "wasmtime-v11.0.0-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v11.0.0/wasmtime-v11.0.0-aarch64-macos.tar.xz",
"checksum": "6a6910e0fa8f792f650db917f25454782fe00f78f9f8c2f1b30232a5c1fb7981",
"bin": "wasmtime-v11.0.0-aarch64-macos/wasmtime"
}
},
"10": {
"version": "10.0.1"
},
"10.0": {
"version": "10.0.1"
},
"10.0.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.1/wasmtime-v10.0.1-x86_64-linux.tar.xz",
"checksum": "ea7a96e7d30ff6d64d0e212900f9a2c4f1d009266e014d62cb5edb16c6f1a7f6",
"bin": "wasmtime-v10.0.1-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.1/wasmtime-v10.0.1-x86_64-macos.tar.xz",
"checksum": "e9d7e1511e67a1f21ae11ad765f62a3bfc99999b251de4fd368480348f7e6c03",
"bin": "wasmtime-v10.0.1-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.1/wasmtime-v10.0.1-x86_64-windows.zip",
"checksum": "05452d493a620c1cef3612c007c6050be77598265d72ea50081294712808c949",
"bin": "wasmtime-v10.0.1-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.1/wasmtime-v10.0.1-aarch64-linux.tar.xz",
"checksum": "c237f3e661dcf9e69a890f8c327db5f65085fa94020cabd6d95c7d4b32fb85af",
"bin": "wasmtime-v10.0.1-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.1/wasmtime-v10.0.1-aarch64-macos.tar.xz",
"checksum": "aa0a00896e08a942e6416a67b7914f880bf6b494d16fb75484187e48adc24f35",
"bin": "wasmtime-v10.0.1-aarch64-macos/wasmtime"
}
},
"10.0.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.0/wasmtime-v10.0.0-x86_64-linux.tar.xz",
"checksum": "6df3770c26a0c892a89980d4a7d785b7356a855a4ac79c6745f02a7f2bf914fc",
"bin": "wasmtime-v10.0.0-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.0/wasmtime-v10.0.0-x86_64-macos.tar.xz",
"checksum": "dc499e4caae3149036571005d3bec542ec10e48725e11fcbb4f50652489b6464",
"bin": "wasmtime-v10.0.0-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.0/wasmtime-v10.0.0-x86_64-windows.zip",
"checksum": "c08cb3e8cdfb1e01ca01f3b6a80b48d9e50d3a344daeaac333748f23279cfac6",
"bin": "wasmtime-v10.0.0-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.0/wasmtime-v10.0.0-aarch64-linux.tar.xz",
"checksum": "840834ef89612d3392e108e6550d6b362e96952c09fcb2404f6ac59c1c707ed5",
"bin": "wasmtime-v10.0.0-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v10.0.0/wasmtime-v10.0.0-aarch64-macos.tar.xz",
"checksum": "b14b4f4a4e639347a0f6e990056bd27c0510857b965f27ee08d0f347704a6e74",
"bin": "wasmtime-v10.0.0-aarch64-macos/wasmtime"
}
},
"9": {
"version": "9.0.3"
"version": "9.0.4"
},
"9.0": {
"version": "9.0.3"
"version": "9.0.4"
},
"9.0.4": {
"x86_64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.4/wasmtime-v9.0.4-x86_64-linux.tar.xz",
"checksum": "1e38bae33433c2c31ceefd450a6d54f938b608d48a256497239342feeb6db772",
"bin": "wasmtime-v9.0.4-x86_64-linux/wasmtime"
},
"x86_64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.4/wasmtime-v9.0.4-x86_64-macos.tar.xz",
"checksum": "558aa42596a2dd08ef2c8d57901659f98fa2689769738039429a8ed56f91a606",
"bin": "wasmtime-v9.0.4-x86_64-macos/wasmtime"
},
"x86_64_windows": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.4/wasmtime-v9.0.4-x86_64-windows.zip",
"checksum": "809aca3fa66d3322dd9eca1e0e423efa3bb13b9feb7a3d3ffd4a79fbdcd74d61",
"bin": "wasmtime-v9.0.4-x86_64-windows/wasmtime.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.4/wasmtime-v9.0.4-aarch64-linux.tar.xz",
"checksum": "e5d01fae620bf2a9e9816f4e5cf5ae8830e2154e8238c78ce49380a5aae2c2fb",
"bin": "wasmtime-v9.0.4-aarch64-linux/wasmtime"
},
"aarch64_macos": {
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.4/wasmtime-v9.0.4-aarch64-macos.tar.xz",
"checksum": "bc3258b94f71f7c1278af48ac89844b55e1236f58e3a917828d5c7e68093c0dd",
"bin": "wasmtime-v9.0.4-aarch64-macos/wasmtime"
}
},
"9.0.3": {
"x86_64_linux_gnu": {

View File

@@ -1,12 +1,23 @@
#!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT
set -euxo pipefail
set -euo pipefail
IFS=$'\n\t'
cd "$(dirname "$0")"/..
cd "$(dirname "$0")"/../..
bail() {
echo >&2 "error: $*"
exit 1
}
if [[ -z "${CI:-}" ]]; then
bail "this script is intended to call from release workflow on CI"
fi
git config user.name "Taiki Endo"
git config user.email "te316e89@gmail.com"
set -x
for manifest in manifests/*.json; do
git add -N "${manifest}"
if ! git diff --exit-code -- "${manifest}"; then

132
tools/ci/tool-list.sh Executable file
View File

@@ -0,0 +1,132 @@
#!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT
set -euo pipefail
IFS=$'\n\t'
cd "$(dirname "$0")"/../..
# They don't provide prebuilt binaries for musl or old glibc host.
glibc_pre_2_31_incompat=(
zola
)
glibc_pre_2_27_incompat=(
"${glibc_pre_2_31_incompat[@]}"
cargo-watch
mdbook-linkcheck
protoc
valgrind
wasmtime
)
musl_incompat=(
"${glibc_pre_2_27_incompat[@]}"
)
incompat_tools=()
case "${1:-}" in
'') version=latest ;;
major.minor.patch | major.minor | major)
version="$1"
# Specifying the version of valgrind and cargo-binstall is not supported.
incompat_tools+=(valgrind cargo-binstall)
;;
*)
echo "tool=$1"
exit 0
;;
esac
case "$(uname -s)" in
Linux)
host_os=linux
ldd_version=$(ldd --version 2>&1 || true)
if grep <<<"${ldd_version}" -q 'musl'; then
incompat_tools+=("${musl_incompat[@]}")
else
host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g")
higher_glibc_version=$(sort <<<"2.31"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.27"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" == "${host_glibc_version}" ]]; then
incompat_tools+=("${glibc_pre_2_31_incompat[@]}")
else
incompat_tools+=("${glibc_pre_2_27_incompat[@]}")
fi
fi
fi
if ! type -P snap &>/dev/null; then
incompat_tools+=(valgrind)
fi
;;
Darwin) host_os=macos ;;
MINGW* | MSYS* | CYGWIN* | Windows_NT) host_os=windows ;;
*) bail "unrecognized OS type '$(uname -s)'" ;;
esac
tools=()
for manifest in tools/codegen/base/*.json; do
tool_name=$(basename "${manifest%.*}")
case "${host_os}" in
linux*)
for incompat in ${incompat_tools[@]+"${incompat_tools[@]}"}; do
if [[ "${incompat}" == "${tool_name}" ]]; then
tool_name=''
break
fi
done
;;
*)
if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]]; then
continue
fi
;;
esac
if [[ -n "${tool_name}" ]]; then
if [[ "${version}" != "latest" ]]; then
latest_version="$(jq -r ".latest.version" "manifests/${tool_name}.json")"
case "${version}" in
major.minor.patch) tool_name+="@${latest_version}" ;;
major.minor) tool_name+="@${latest_version%.*}" ;;
major) tool_name+="@${latest_version%%.*}" ;;
*) exit 1 ;;
esac
fi
if [[ "${tool_name}" != *"@0" ]] && [[ "${tool_name}" != *"@0.0" ]]; then
tools+=("${tool_name}")
fi
fi
done
if [[ "${version}" != "latest" ]]; then
tools_tmp=()
for tool in "${tools[@]}"; do
tools_tmp+=("${tool}")
done
tools=("${tools_tmp[@]}")
fi
# Not manifest-based
case "${host_os}" in
linux*)
# Installing snap to container is difficult...
# Specifying the version of valgrind is not supported.
if type -P snap &>/dev/null && [[ "${version}" == "latest" ]]; then
tools+=(valgrind)
fi
;;
esac
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
case "${version}" in
latest) tools+=(cargo-watch watchexec-cli) ;;
major.minor.patch) tools+=(cargo-watch@8.1.1 watchexec-cli@1.20.5) ;;
major.minor) tools+=(cargo-watch@8.1 watchexec-cli@1.20) ;;
major) tools+=(cargo-watch@8 watchexec-cli@1) ;;
*) exit 1 ;;
esac
# sort and dedup
IFS=$'\n'
# shellcheck disable=SC2207
tools=($(LC_ALL=C sort -u <<<"${tools[*]}"))
IFS=$'\n\t'
# TODO: inject random space before/after of tool name for testing https://github.com/taiki-e/install-action/issues/115.
IFS=','
echo "tool=${tools[*]}"
IFS=$'\n\t'

View File

@@ -0,0 +1,12 @@
{
"repository": "https://github.com/RalfJung/cargo-careful",
"tag_prefix": "v",
"asset_name": "${package}.${rust_target}",
"platform": {
"x86_64_linux_musl": {},
"x86_64_macos": {},
"x86_64_windows": {
"asset_name": "${package}.exe"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"repository": "https://github.com/sonos/dinghy",
"tag_prefix": "",
"asset_name": "${package}-${os_name}-${version}.tgz",
"bin": "${package}-${version}/${package}${exe}",
"platform": {
"x86_64_linux_musl": {},
"x86_64_macos": {}
}
}

View File

@@ -0,0 +1,15 @@
{
"repository": "https://github.com/sagiegurari/cargo-make",
"tag_prefix": "",
"asset_name": "${package}-v${version}-${rust_target}.zip",
"bin": "${package}-v${version}-${rust_target}/${package}${exe}",
"platform": {
"x86_64_linux_gnu": {},
"x86_64_linux_musl": {},
"x86_64_macos": {},
"x86_64_windows": {
"bin": "${package}${exe}"
},
"aarch64_macos": {}
}
}

View File

@@ -0,0 +1,24 @@
{
"repository": "https://github.com/anchore/syft",
"tag_prefix": "v",
"bin_dir": "/usr/local/bin",
"bin": "${package}${exe}",
"version_range": ">= 0.83.0",
"platform": {
"x86_64_macos": {
"asset_name": "${package}_${version}_darwin_amd64.tar.gz"
},
"aarch64_macos": {
"asset_name": "${package}_${version}_darwin_arm64.tar.gz"
},
"x86_64_windows": {
"asset_name": "${package}_${version}_windows_amd64.zip"
},
"x86_64_linux_musl": {
"asset_name": "${package}_${version}_linux_amd64.tar.gz"
},
"aarch64_linux_musl": {
"asset_name": "${package}_${version}_linux_arm64.tar.gz"
}
}
}

View File

@@ -89,7 +89,9 @@ fn main() -> Result<()> {
Ok(m) => {
manifests = m;
for (k, manifest) in &mut manifests.map {
let ManifestRef::Real(manifest) = manifest else { continue };
let ManifestRef::Real(manifest) = manifest else {
continue;
};
let version = &*k.0.to_string();
if let Some(template) = &manifests.template {
for (platform, d) in &mut manifest.download_info {
@@ -203,7 +205,7 @@ fn main() -> Result<()> {
fs::File::open(download_cache)?.read_to_end(&mut buf)?;
} else {
download(&url)?.into_reader().read_to_end(&mut buf)?;
eprintln!(" downloaded complete");
eprintln!(" download complete");
fs::write(download_cache, &buf)?;
}
eprintln!("getting sha256 hash for {url}");
@@ -290,13 +292,21 @@ fn main() -> Result<()> {
);
}
let ManifestRef::Ref { version: latest_version } = manifests.map.first_key_value().unwrap().1.clone() else { unreachable!() };
let ManifestRef::Ref {
version: latest_version,
} = manifests.map.first_key_value().unwrap().1.clone()
else {
unreachable!()
};
if latest_only {
manifests
.map
.retain(|k, _| k.0 == Version::latest() || k.0 == latest_version);
}
let ManifestRef::Real(latest_manifest) = &manifests.map[&Reverse(latest_version.clone())] else { unreachable!() };
let ManifestRef::Real(latest_manifest) = &manifests.map[&Reverse(latest_version.clone())]
else {
unreachable!()
};
for &p in base_info.platform.keys() {
if latest_manifest.download_info.contains_key(&p) {
continue;
@@ -328,7 +338,9 @@ fn main() -> Result<()> {
download_info: BTreeMap::new(),
});
'outer: for (version, manifest) in &mut manifests.map {
let ManifestRef::Real(manifest) = manifest else { continue };
let ManifestRef::Real(manifest) = manifest else {
continue;
};
let version = &*version.0.to_string();
let t = template.as_mut().unwrap();
for (platform, d) in &mut manifest.download_info {
@@ -377,6 +389,7 @@ fn replace_vars(s: &str, package: &str, version: &str, platform: HostPlatform) -
.replace("${package}", package)
.replace("${tool}", package)
.replace("${rust_target}", platform.rust_target())
.replace("${os_name}", platform.os_name())
.replace("${version}", version)
.replace("${exe}", platform.exe_suffix());
if s.contains('$') {
@@ -386,29 +399,20 @@ fn replace_vars(s: &str, package: &str, version: &str, platform: HostPlatform) -
}
fn download(url: &str) -> Result<ureq::Response> {
let mut token1 = env::var("INTERNAL_CODEGEN_GH_PAT")
.ok()
.filter(|v| !v.is_empty());
let mut token2 = env::var("GITHUB_TOKEN").ok().filter(|v| !v.is_empty());
let mut token = env::var("GITHUB_TOKEN").ok().filter(|v| !v.is_empty());
let mut retry = 0;
let mut last_error;
loop {
let mut req = ureq::get(url);
if let Some(token) = &token1 {
req = req.set("Authorization", token);
} else if let Some(token) = &token2 {
if let Some(token) = &token {
req = req.set("Authorization", token);
}
match req.call() {
Ok(res) => return Ok(res),
Err(e) => last_error = Some(e),
}
if retry == 3 || retry == 6 {
if token1.is_some() {
token1 = None;
} else if token2.is_some() {
token2 = None;
}
if retry == 5 && token.is_some() {
token = None;
}
retry += 1;
if retry > 10 {
@@ -698,6 +702,16 @@ impl HostPlatform {
Self::aarch64_windows => "aarch64-pc-windows-msvc",
}
}
fn os_name(self) -> &'static str {
match self {
Self::aarch64_linux_gnu
| Self::aarch64_linux_musl
| Self::x86_64_linux_gnu
| Self::x86_64_linux_musl => "linux",
Self::aarch64_macos | Self::x86_64_macos => "macos",
Self::aarch64_windows | Self::x86_64_windows => "windows",
}
}
fn exe_suffix(self) -> &'static str {
match self {
Self::x86_64_windows | Self::aarch64_windows => ".exe",

View File

@@ -15,6 +15,14 @@ trap 's=$?; echo >&2 "$0: error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}
# Note: This script requires the following tools:
# - parse-changelog <https://github.com/taiki-e/parse-changelog>
x() {
local cmd="$1"
shift
(
set -x
"${cmd}" "$@"
)
}
bail() {
echo >&2 "error: $*"
exit 1
@@ -41,6 +49,7 @@ if gh release view "${tag}" &>/dev/null; then
bail "tag '${tag}' has already been created and pushed"
fi
# Make sure that the release was created from an allowed branch.
if ! git branch | grep -q '\* main$'; then
bail "current branch is not 'main'"
fi
@@ -89,8 +98,8 @@ echo "======================================="
if [[ -n "${tags}" ]]; then
# Create a release commit.
git add "${changelog}"
git commit -m "Release ${version}"
x git add "${changelog}"
x git commit -m "Release ${version}"
fi
tools=()
@@ -99,7 +108,7 @@ for tool in tools/codegen/base/*.json; do
done
# Aliases
tools+=(nextest)
# Not manifest-base
# Not manifest-based
tools+=(valgrind)
(