mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-28 18:10:26 +00:00
Compare commits
39 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
93a5b91855 | ||
|
|
0249968d1d | ||
|
|
8cab9da4f8 | ||
|
|
9ead2563c7 | ||
|
|
4df72e2d1e | ||
|
|
7bda3b1d5e | ||
|
|
b02c385974 | ||
|
|
899b013517 | ||
|
|
2ef37fafbe | ||
|
|
c5540270ed | ||
|
|
835cdc15ee | ||
|
|
8ce495dd98 | ||
|
|
41ff3eead4 | ||
|
|
371685e159 | ||
|
|
7104084080 | ||
|
|
363eda296b | ||
|
|
9aedfccc54 | ||
|
|
371df73946 | ||
|
|
eacdd1887a | ||
|
|
1d74f337f2 | ||
|
|
e4c87dbea6 | ||
|
|
81635a4e23 | ||
|
|
b1b01a6e03 | ||
|
|
289298bb2d | ||
|
|
c082881313 | ||
|
|
fb87f59437 | ||
|
|
657d9ab65b | ||
|
|
1e2c8412ac | ||
|
|
48eebde278 | ||
|
|
3c537259cf | ||
|
|
3620edd520 | ||
|
|
7bafc6625b | ||
|
|
568bdd66b0 | ||
|
|
97e99ca937 | ||
|
|
97bdefc2d9 | ||
|
|
b7a3f34e81 | ||
|
|
f04fe3f472 | ||
|
|
74ef384bd4 | ||
|
|
c996d26d4c |
8
.github/.cspell/organization-dictionary.txt
vendored
8
.github/.cspell/organization-dictionary.txt
vendored
@@ -90,6 +90,7 @@ bools
|
||||
builtins
|
||||
bytecount
|
||||
canonicalize
|
||||
cfgs
|
||||
concat
|
||||
consts
|
||||
ctypes
|
||||
@@ -99,6 +100,7 @@ docsrs
|
||||
doctest
|
||||
doctests
|
||||
hasher
|
||||
idents
|
||||
impls
|
||||
inlateout
|
||||
intrinsics
|
||||
@@ -107,6 +109,7 @@ mclass
|
||||
memcpy
|
||||
msrv
|
||||
nand
|
||||
nanos
|
||||
nomem
|
||||
nonoverlapping
|
||||
noreturn
|
||||
@@ -121,7 +124,10 @@ rposition
|
||||
rsplit
|
||||
rustlib
|
||||
seqcst
|
||||
simd
|
||||
splitn
|
||||
structs
|
||||
subsec
|
||||
supertrait
|
||||
supertraits
|
||||
sysroot
|
||||
@@ -143,6 +149,7 @@ endianness
|
||||
esac
|
||||
euxo
|
||||
gsub
|
||||
moreutils
|
||||
msys
|
||||
noninteractive
|
||||
noprofile
|
||||
@@ -159,4 +166,5 @@ SIGABRT
|
||||
SIGILL
|
||||
SIGINT
|
||||
SIGTERM
|
||||
subcmd
|
||||
tlsv
|
||||
|
||||
1
.github/.cspell/project-dictionary.txt
vendored
1
.github/.cspell/project-dictionary.txt
vendored
@@ -17,6 +17,7 @@ quickinstall
|
||||
rockylinux
|
||||
shellcheck
|
||||
shfmt
|
||||
syft
|
||||
udeps
|
||||
wasmtime
|
||||
watchexec
|
||||
|
||||
24
.github/workflows/ci.yml
vendored
24
.github/workflows/ci.yml
vendored
@@ -44,19 +44,19 @@ jobs:
|
||||
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
|
||||
- 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,syft
|
||||
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
|
||||
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,syft@0.83.0
|
||||
- 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: 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,syft@0.83
|
||||
- os: ubuntu-20.04
|
||||
tool: cargo-valgrind@2, just@1,protoc@3 , shfmt@3 ,wasmtime@7,cargo-watch@8,watchexec-cli@1
|
||||
- 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
|
||||
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,syft
|
||||
- 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
|
||||
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,syft
|
||||
runs-on: ${{ matrix.os }}
|
||||
timeout-minutes: 60
|
||||
steps:
|
||||
@@ -104,25 +104,25 @@ jobs:
|
||||
- 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
|
||||
- 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,syft
|
||||
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
|
||||
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,syft
|
||||
- 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
|
||||
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,syft
|
||||
- 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
|
||||
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,syft
|
||||
- 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
|
||||
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,syft
|
||||
# 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
|
||||
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,syft
|
||||
- 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
|
||||
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,syft
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 60
|
||||
container: ${{ matrix.container }}
|
||||
|
||||
72
CHANGELOG.md
72
CHANGELOG.md
@@ -10,6 +10,64 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [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.
|
||||
|
||||
## [2.9.3] - 2023-06-05
|
||||
|
||||
- Update `cargo-udeps@latest` to 0.1.40.
|
||||
|
||||
## [2.9.2] - 2023-06-03
|
||||
|
||||
- Update `just@latest` to 1.14.0.
|
||||
|
||||
- Update `dprint@latest` to 0.37.1.
|
||||
|
||||
- Update `cargo-llvm-cov@latest` to 0.5.20.
|
||||
|
||||
## [2.9.1] - 2023-06-01
|
||||
|
||||
- Update `wasmtime@latest` to 9.0.3.
|
||||
|
||||
## [2.9.0] - 2023-05-29
|
||||
|
||||
- Update `mdbook@latest` to 0.4.30.
|
||||
|
||||
- Make cargo-binstall fallback more robust. ([#124](https://github.com/taiki-e/install-action/pull/124), thanks @NobodyXu)
|
||||
|
||||
## [2.8.8] - 2023-05-27
|
||||
|
||||
- Update `wasmtime@latest` to 9.0.2.
|
||||
|
||||
- Update `protoc@latest` to 3.23.2.
|
||||
|
||||
- Update `cargo-binstall@latest` to 0.23.1.
|
||||
|
||||
## [2.8.7] - 2023-05-23
|
||||
|
||||
- Update `wasmtime@latest` to 9.0.1.
|
||||
|
||||
## [2.8.6] - 2023-05-18
|
||||
|
||||
- Update `protoc@latest` to 3.23.1.
|
||||
|
||||
## [2.8.5] - 2023-05-16
|
||||
|
||||
- Update `cargo-nextest@latest` to 0.9.53.
|
||||
|
||||
## [2.8.4] - 2023-05-14
|
||||
|
||||
- Update `mdbook@latest` to 0.4.29.
|
||||
|
||||
## [2.8.3] - 2023-05-12
|
||||
|
||||
- Update `wasm-pack@latest` to 0.11.1.
|
||||
|
||||
## [2.8.2] - 2023-05-09
|
||||
|
||||
- Update `protoc@latest` to 3.23.0.
|
||||
@@ -791,7 +849,19 @@ Note: This release is considered a breaking change because installing on version
|
||||
|
||||
Initial release
|
||||
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.8.2...HEAD
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.10.0...HEAD
|
||||
[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
|
||||
[2.9.1]: https://github.com/taiki-e/install-action/compare/v2.9.0...v2.9.1
|
||||
[2.9.0]: https://github.com/taiki-e/install-action/compare/v2.8.8...v2.9.0
|
||||
[2.8.8]: https://github.com/taiki-e/install-action/compare/v2.8.7...v2.8.8
|
||||
[2.8.7]: https://github.com/taiki-e/install-action/compare/v2.8.6...v2.8.7
|
||||
[2.8.6]: https://github.com/taiki-e/install-action/compare/v2.8.5...v2.8.6
|
||||
[2.8.5]: https://github.com/taiki-e/install-action/compare/v2.8.4...v2.8.5
|
||||
[2.8.4]: https://github.com/taiki-e/install-action/compare/v2.8.3...v2.8.4
|
||||
[2.8.3]: https://github.com/taiki-e/install-action/compare/v2.8.2...v2.8.3
|
||||
[2.8.2]: https://github.com/taiki-e/install-action/compare/v2.8.1...v2.8.2
|
||||
[2.8.1]: https://github.com/taiki-e/install-action/compare/v2.8.0...v2.8.1
|
||||
[2.8.0]: https://github.com/taiki-e/install-action/compare/v2.7.2...v2.8.0
|
||||
|
||||
@@ -14,6 +14,13 @@ See JSON files in `tools/codegen/base` directory for examples of the manifest.
|
||||
./tools/manifest.sh <tool>
|
||||
```
|
||||
|
||||
> 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>
|
||||
> ```
|
||||
|
||||
3\. Add tool name to test matrix in `.github/workflows/ci.yml`.
|
||||
|
||||
4\. Add tool name to table in "Supported tools" section in `README.md`.
|
||||
4\. Add tool name to the table in ["Supported tools" section in `README.md`](https://github.com/taiki-e/install-action#supported-tools).
|
||||
|
||||
20
README.md
20
README.md
@@ -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)
|
||||
@@ -85,14 +86,14 @@ https://spdx.org/licenses
|
||||
| [**cargo-hack**](https://github.com/taiki-e/cargo-hack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-hack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-MIT) |
|
||||
| [**cargo-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-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-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/master/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/master/LICENSE-MIT) or [Apache-2.0](https://github.com/jfrimmel/cargo-valgrind/blob/master/LICENSE-APACHE) |
|
||||
| [**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) |
|
||||
| [**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/master/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) |
|
||||
| [**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) |
|
||||
| [**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,16 +101,21 @@ 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) |
|
||||
| [**zola**](https://github.com/getzola/zola) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/getzola/zola/releases) | Linux, macOS, Windows | [MIT](https://github.com/getzola/zola/blob/master/LICENSE) |
|
||||
| [**zola**](https://github.com/getzola/zola) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/getzola/zola/releases) | Linux, macOS, Windows | [MIT](https://github.com/getzola/zola/blob/HEAD/LICENSE) |
|
||||
|
||||
If `$CARGO_HOME/bin` is not available, Rust-related binaries will be installed to `$HOME/.cargo/bin`.<br>
|
||||
If `$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
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -euxo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
7
main.sh
7
main.sh
@@ -1,4 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
|
||||
@@ -397,7 +398,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).
|
||||
@@ -441,7 +442,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"
|
||||
@@ -583,5 +584,5 @@ if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
|
||||
# By default, cargo-binstall enforce downloads over secure transports only.
|
||||
# As a result, http will be disabled, and it will also set
|
||||
# min tls version to be 1.2
|
||||
cargo binstall --force --no-confirm "${unsupported_tools[@]}"
|
||||
cargo binstall --force --no-confirm --locked "${unsupported_tools[@]}"
|
||||
fi
|
||||
|
||||
16
manifests/cargo-binstall.json
generated
16
manifests/cargo-binstall.json
generated
@@ -20,26 +20,26 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.23.0"
|
||||
"version": "0.23.1"
|
||||
},
|
||||
"0.23.0": {
|
||||
"0.23.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "003ae60e6cb6a9e053e135c91ad8375dcb3049ec332d37792ba49f81ad094607"
|
||||
"checksum": "dea75e6896fc183af8f0bd6490196d7fcf1a17946c25c558ec87be906a0e64ef"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "0567d4b21e1ad86402f0fa884390652c8d96891a0cd28773cbea0a8fe2607bcf"
|
||||
"checksum": "1e03794b4380b56a3b3fb5dd47f01aea27a83672ef0fff84413d672d77cbcfaa"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "6d1dd8065e81932f986bfaa3640e19d1780d1569c5b49d7ea3a0f2d4b0595129"
|
||||
"checksum": "62e09ac2ab3a36d8d44790dc4679b32d8fcd50951bceb27239cdec23b43b2a8e"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "65ef5da7b5f8ae5e5ca566658d30e942b95413ebfbd8d247d1d220e08c8c5f5e"
|
||||
"checksum": "a54749e2d7761c0e4e04858d58dd08a98bd71318a9dcb3fd950ef732176f5195"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "c4204d6da895b71cb944c446966c92e2273656053dc408d1157bc4c746f068ea"
|
||||
"checksum": "10fffaff985822a67957ef3798407ce0f7282db3fc80a6ae297cdfe9ebb00869"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"checksum": "9a2d1655be2a718f34299131639704992518174c0f6f7cd70c2c7c815d1eda0e"
|
||||
"checksum": "b1412448d417d923ee64bc7c961a87b7af387dc97291e3e4f818dc225b48d245"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
21
manifests/cargo-llvm-cov.json
generated
21
manifests/cargo-llvm-cov.json
generated
@@ -17,10 +17,27 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.5.19"
|
||||
"version": "0.5.20"
|
||||
},
|
||||
"0.5": {
|
||||
"version": "0.5.19"
|
||||
"version": "0.5.20"
|
||||
},
|
||||
"0.5.20": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "688aefd7b53917d29b3fa8d81cb449e98138c6b9a6c768eff412f9a523fd3e62"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "69eb20beb8a2d2f455bd8be486f92718645fa94c726751698c125f92d11bbc54"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "e69502d1fa9003cd50d003142afc8398a84442b630cb2279b6291dde65d66ac3"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "dee687b786492b3402dabda190e9444f4e4f5e412d0e1ce7d541dd1d5d519243"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "5ff99c8b17dafc24471d0e498cd68f8c858a6dc613535f7ffa738a12e11b18cf"
|
||||
}
|
||||
},
|
||||
"0.5.19": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
21
manifests/cargo-nextest.json
generated
21
manifests/cargo-nextest.json
generated
@@ -17,10 +17,27 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.9.52"
|
||||
"version": "0.9.53"
|
||||
},
|
||||
"0.9": {
|
||||
"version": "0.9.52"
|
||||
"version": "0.9.53"
|
||||
},
|
||||
"0.9.53": {
|
||||
"x86_64_linux_gnu": {
|
||||
"checksum": "b07def6a5e5521481eb5853e5f17650be406ce8c57ce917a90d2866c788e5967"
|
||||
},
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "432af91cae859413b79bd50baea327badffe7d488ce4ffd5d301bd84b007b889"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "ccab0a046538cb86a93ee6f05a1d9ceace7878fc7ca39392b681b01dc27fc54e"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "49605a5f5f3275d1e8a2fdfaa0a45a52df03cfd791ad5b1a093b196df3a408d5"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"checksum": "54e47dc3fcf7eead6307ac06a9e02ce9a0fe3a156a53b062b63f823cd2765bfd"
|
||||
}
|
||||
},
|
||||
"0.9.52": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
24
manifests/cargo-udeps.json
generated
24
manifests/cargo-udeps.json
generated
@@ -30,10 +30,30 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.1.39"
|
||||
"version": "0.1.40"
|
||||
},
|
||||
"0.1": {
|
||||
"version": "0.1.39"
|
||||
"version": "0.1.40"
|
||||
},
|
||||
"0.1.40": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "6bb8bc63de21e47afb44e9b1fcc2f5444120a0658bfe7b2b64a0eb575667ee59"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "39ddc8f18f51d429f0a5adc0bdaa416532ba70e7dfd3d5200c5fcf8f981ea656"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "d532011810db834c7a3dfc580a6754a0204ffd146e0b29a62c508f6d89544d9f"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "cebdbfee26548375c3f2000b6fae46ba80bff7cbfa33c8919525e3923b004f1e"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "6a022039c59cf273b9764bd74e991f423e03e80ddd0eaa25648207b622ab3547"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"checksum": "6b29f3a9b0b710d9f9a2544f7bd101997845eff37836fa50edaa92fa3e5a6ad7"
|
||||
}
|
||||
},
|
||||
"0.1.39": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
39
manifests/dprint.json
generated
39
manifests/dprint.json
generated
@@ -20,7 +20,44 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.36.1"
|
||||
"version": "0.37.1"
|
||||
},
|
||||
"0.37": {
|
||||
"version": "0.37.1"
|
||||
},
|
||||
"0.37.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "a8a824eed75f1030c721a7e91ae79cbd5f48f8c19470d92ec5fd0dff2715add6"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "1de7aea5ead649d97c19814d856fab616965177cd77cccc998f4953aa3d8c7c4"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "7f25e3cd03aeee23341174f50ceff7d09266d991298b44353883a98cb1b8f67e"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"checksum": "17d108c5b27df6233fa63c4f78b8b67c040cb3325a7372c9428da62f09ed8f61"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "a2c5c7a61ae4ca51140779b1bcc2766d8fe0fad0589828752b29b172f20c083c"
|
||||
}
|
||||
},
|
||||
"0.37.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "714abf53b00f536bbd8ef1abc88f21fe4172952d39ea87bc5d139f8cbba28be1"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "b50c4c812eaee6b9797d441f41961cbfbf9d040a6dbe86e1deb560b290ed28b7"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "c0fe6b6924d493fbea6bae983a5e93219f328919d616a19235161bd31be05dcc"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"checksum": "0c77ecf2e889c37b823f0dc856f49a657dc09b9912a586fca267e09f378eb747"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "6a23f96288d6733de1cff7d8349dda73df1bcf24a963fead5551059de7f1e6d9"
|
||||
}
|
||||
},
|
||||
"0.36": {
|
||||
"version": "0.36.1"
|
||||
|
||||
24
manifests/just.json
generated
24
manifests/just.json
generated
@@ -17,10 +17,30 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "1.13.0"
|
||||
"version": "1.14.0"
|
||||
},
|
||||
"1": {
|
||||
"version": "1.13.0"
|
||||
"version": "1.14.0"
|
||||
},
|
||||
"1.14": {
|
||||
"version": "1.14.0"
|
||||
},
|
||||
"1.14.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "19848d0282e95f30188305b1bbd5a087793e5c6f27f5ac98207ab256027183df"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "ca4a787f353678d46645f060d96dc4cf8777c16d2a7f064f1aac6e284b92a64e"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "f718211c83e73fe2535c924e8179e9c2f70cb8d23f8039ace746670d38e3c898"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "b3d306e5978dd239bbd7803a697006aca5c7fa1d61efccaefae134f792b9e1cb"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "a77944cab60285ea0cf05ee5a3ad9ff4bea313a512a4a36fa5238e77cc760bc2"
|
||||
}
|
||||
},
|
||||
"1.13": {
|
||||
"version": "1.13.0"
|
||||
|
||||
32
manifests/mdbook.json
generated
32
manifests/mdbook.json
generated
@@ -17,10 +17,38 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.4.28"
|
||||
"version": "0.4.30"
|
||||
},
|
||||
"0.4": {
|
||||
"version": "0.4.28"
|
||||
"version": "0.4.30"
|
||||
},
|
||||
"0.4.30": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "c911f8e5b501707a6b84a5b7162f3c6543f580e5261034d23d2843319da12bb0"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "02c80613f57c9d421adc4c60286c680c1e8f75a2d7d0ab4b7837819175eb967a"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "50c1adcabb37e291b9689b76898e91bf98428e5d5335dd3724f7c223f7a9ebb1"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "475fc2ad49d909e8a13a8055bd9a69984e45eb70c1851f8dcf15dbf2b541815c"
|
||||
}
|
||||
},
|
||||
"0.4.29": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "e46da842fc1cba24efbf0028ef372435cfe2b5a55b87b287e698ae87d6a9e44c"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "7424c8206cfe07e24928bf606e7fb2c386d22db7d1f0058734fa313b58879c37"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "ff2b491b41ecd65350137278e72f8ef10c161374cd47c474fc2a196c37f5e03e"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "f89b5937131b5f826330d7ff542d878fe8689f037bf10b1595bfabc390b14da1"
|
||||
}
|
||||
},
|
||||
"0.4.28": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
24
manifests/parse-changelog.json
generated
24
manifests/parse-changelog.json
generated
@@ -23,10 +23,30 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.5.3"
|
||||
"version": "0.5.4"
|
||||
},
|
||||
"0.5": {
|
||||
"version": "0.5.3"
|
||||
"version": "0.5.4"
|
||||
},
|
||||
"0.5.4": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "b2a430ebd0d23a3608258446d9f93162ca324fd2ca691ca3baa11625c9d7fec3"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "4476f9ce9de07ddba76f77e6260e3cbece3801654882c8161694d742f8f01a59"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "6cd753b60b3385e2fd3aef79bc9a6c954f01737e2380bdc06b2c55ef9d4b8c79"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "73f85fdda5937ac3ee0fd3a4385998cc6a640736b3e73923b0afd061abb575be"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "164936f970d8ab870aa3355411db736994dbb86019630bf2818d0958d30768b5"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"checksum": "b7c1c92c83fce15746c1d289fbf14b31b3f43a043e28b25638ae8ed7b1005ea0"
|
||||
}
|
||||
},
|
||||
"0.5.3": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
50
manifests/protoc.json
generated
50
manifests/protoc.json
generated
@@ -1,13 +1,57 @@
|
||||
{
|
||||
"template": null,
|
||||
"latest": {
|
||||
"version": "3.23.0"
|
||||
"version": "3.23.2"
|
||||
},
|
||||
"3": {
|
||||
"version": "3.23.0"
|
||||
"version": "3.23.2"
|
||||
},
|
||||
"3.23": {
|
||||
"version": "3.23.0"
|
||||
"version": "3.23.2"
|
||||
},
|
||||
"3.23.2": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.2/protoc-23.2-linux-x86_64.zip",
|
||||
"checksum": "179a759581bf4b32cc5edae4ffce6b8ee16ba4f4ab99ad3a309c31113f98d472"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.2/protoc-23.2-osx-x86_64.zip",
|
||||
"checksum": "0c19eb51f450687557dd61b9859ae898f52143c39372e8cb6f0b648d5423e24a"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.2/protoc-23.2-win64.zip",
|
||||
"checksum": "ca92eb9ca61ada5410211a9f8be7f0a5118f490e402c821ec1f61bb12b132c36"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.2/protoc-23.2-linux-aarch_64.zip",
|
||||
"checksum": "12c9385da533dd5fe6fd57e0c5cdb7004d8c08af94a80c75614c50f1f31d92e0"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.2/protoc-23.2-osx-aarch_64.zip",
|
||||
"checksum": "9fffa243509db34492c6dee031b361c538b2b65720ac253c319034e7f38e2cc8"
|
||||
}
|
||||
},
|
||||
"3.23.1": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.1/protoc-23.1-linux-x86_64.zip",
|
||||
"checksum": "031f8e7504eb359df58389b31752f8081c01b01132a2f3f768a3792ac4b06f3f"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.1/protoc-23.1-osx-x86_64.zip",
|
||||
"checksum": "5d0367dfd58ea894f87d1d6efbd800bf52820842e9151d265db17471bc69fe94"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.1/protoc-23.1-win64.zip",
|
||||
"checksum": "420cd7a1548a9c3ef5b5a7e969b6fcf8ee6a5a09cec99d7a3209406f028e5dce"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.1/protoc-23.1-linux-aarch_64.zip",
|
||||
"checksum": "f174eb3a6bd812e9946be3a9ef3fb8f8ac4a6f8acd0a01c928fb2fecb22b6fb0"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v23.1/protoc-23.1-osx-aarch_64.zip",
|
||||
"checksum": "8d0af9adbbde1a9791d10125f4742a4c9fa84f85ee46fe69adde6bf5e8a4a428"
|
||||
}
|
||||
},
|
||||
"3.23.0": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
52
manifests/syft.json
generated
Normal file
52
manifests/syft.json
generated
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"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.83.0"
|
||||
},
|
||||
"0.83": {
|
||||
"version": "0.83.0"
|
||||
},
|
||||
"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"
|
||||
}
|
||||
}
|
||||
}
|
||||
18
manifests/wasm-pack.json
generated
18
manifests/wasm-pack.json
generated
@@ -18,10 +18,24 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.11.0"
|
||||
"version": "0.11.1"
|
||||
},
|
||||
"0.11": {
|
||||
"version": "0.11.0"
|
||||
"version": "0.11.1"
|
||||
},
|
||||
"0.11.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "cfe60a2e5d1641b9a09ec6d95787068ac24e03c67b9e36de7036714f71185a2d"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "6925ede1db571ceca80f2d48533cd9983f152731d95b794de6826121e5cd603f"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "57c976a710da102e3465c7d8a158f3e6b850eaef9c010f5d717d522099e74c9b"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "9895d2389cfc315e12f6e35299666439b51a0e6dd36b0a604bcc8737c295c3bc"
|
||||
}
|
||||
},
|
||||
"0.11.0": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
116
manifests/wasmtime.json
generated
116
manifests/wasmtime.json
generated
@@ -1,7 +1,121 @@
|
||||
{
|
||||
"template": null,
|
||||
"latest": {
|
||||
"version": "8.0.1"
|
||||
"version": "9.0.3"
|
||||
},
|
||||
"9": {
|
||||
"version": "9.0.3"
|
||||
},
|
||||
"9.0": {
|
||||
"version": "9.0.3"
|
||||
},
|
||||
"9.0.3": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.3/wasmtime-v9.0.3-x86_64-linux.tar.xz",
|
||||
"checksum": "7089f0ab5bf4d870e79a4c61404b36562e5ad486325d5da20d9c7dfd01cbce50",
|
||||
"bin": "wasmtime-v9.0.3-x86_64-linux/wasmtime"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.3/wasmtime-v9.0.3-x86_64-macos.tar.xz",
|
||||
"checksum": "d2dc9c04ec2877728c85cc08ab6a7ff5569746c462a6639c41b2e10d372fc330",
|
||||
"bin": "wasmtime-v9.0.3-x86_64-macos/wasmtime"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.3/wasmtime-v9.0.3-x86_64-windows.zip",
|
||||
"checksum": "ac2c610f83d994b09a85f3467ce2252da69c9db37a638d1b4c372a1f3d9be160",
|
||||
"bin": "wasmtime-v9.0.3-x86_64-windows/wasmtime.exe"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.3/wasmtime-v9.0.3-aarch64-linux.tar.xz",
|
||||
"checksum": "88ae51524df14ebb01564ba459ced6d5cb9fd20c1c576de32a33c13e6bb2ee13",
|
||||
"bin": "wasmtime-v9.0.3-aarch64-linux/wasmtime"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.3/wasmtime-v9.0.3-aarch64-macos.tar.xz",
|
||||
"checksum": "799310028674842752e6621e8418590cc1ddbc344a7e21a21f6ae8dfe7045414",
|
||||
"bin": "wasmtime-v9.0.3-aarch64-macos/wasmtime"
|
||||
}
|
||||
},
|
||||
"9.0.2": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.2/wasmtime-v9.0.2-x86_64-linux.tar.xz",
|
||||
"checksum": "002822c52ea3499e7a0e4033a390123c7877b6655a69ce9426e1a370f351cae6",
|
||||
"bin": "wasmtime-v9.0.2-x86_64-linux/wasmtime"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.2/wasmtime-v9.0.2-x86_64-macos.tar.xz",
|
||||
"checksum": "5641b9234774a8ea503a860815dcdacb423d1b1a84310f7dc4faeac09e629fbf",
|
||||
"bin": "wasmtime-v9.0.2-x86_64-macos/wasmtime"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.2/wasmtime-v9.0.2-x86_64-windows.zip",
|
||||
"checksum": "621a97ec51d06c814f89688dab4315d1425685c609102d4b8d7dd80e5dc5231e",
|
||||
"bin": "wasmtime-v9.0.2-x86_64-windows/wasmtime.exe"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.2/wasmtime-v9.0.2-aarch64-linux.tar.xz",
|
||||
"checksum": "ad614fc1b72618b9afd5645e0212bd763468f4f2a5572de09890e4759b29e8d4",
|
||||
"bin": "wasmtime-v9.0.2-aarch64-linux/wasmtime"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.2/wasmtime-v9.0.2-aarch64-macos.tar.xz",
|
||||
"checksum": "68f5f644f4c814d36f5190a41dc312acd97d8ef4e6a5b60e41fdcf966ea19140",
|
||||
"bin": "wasmtime-v9.0.2-aarch64-macos/wasmtime"
|
||||
}
|
||||
},
|
||||
"9.0.1": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.1/wasmtime-v9.0.1-x86_64-linux.tar.xz",
|
||||
"checksum": "f90a3f7a0fe5a7c059947c029c28a2ae65ef24335d190f82e57725d9706cb413",
|
||||
"bin": "wasmtime-v9.0.1-x86_64-linux/wasmtime"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.1/wasmtime-v9.0.1-x86_64-macos.tar.xz",
|
||||
"checksum": "2d0671338148745c4370eafb7b829f40fae7a2ad072bdd26e78dac799a848d82",
|
||||
"bin": "wasmtime-v9.0.1-x86_64-macos/wasmtime"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.1/wasmtime-v9.0.1-x86_64-windows.zip",
|
||||
"checksum": "dbe62d44ef93e633201aa20043965c5546697fdaa80b81af8f6b0414a5f58b2f",
|
||||
"bin": "wasmtime-v9.0.1-x86_64-windows/wasmtime.exe"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.1/wasmtime-v9.0.1-aarch64-linux.tar.xz",
|
||||
"checksum": "c1bf970bd2af9574714441150954b7631887e54e600be4b274169668b1077ca4",
|
||||
"bin": "wasmtime-v9.0.1-aarch64-linux/wasmtime"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.1/wasmtime-v9.0.1-aarch64-macos.tar.xz",
|
||||
"checksum": "94f242ec880e91970a70b2c03da6a7fe90ded32ba9c4e400dc7484a25cec2d31",
|
||||
"bin": "wasmtime-v9.0.1-aarch64-macos/wasmtime"
|
||||
}
|
||||
},
|
||||
"9.0.0": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.0/wasmtime-v9.0.0-x86_64-linux.tar.xz",
|
||||
"checksum": "7616b94d7c30eaa4d4ddf41a58128ac73b943c21565adb12d143ea46959de4e2",
|
||||
"bin": "wasmtime-v9.0.0-x86_64-linux/wasmtime"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.0/wasmtime-v9.0.0-x86_64-macos.tar.xz",
|
||||
"checksum": "fcceb6f2cf525f3c8050172bb455d635552a3d446fa051447606de2d2aa5ebca",
|
||||
"bin": "wasmtime-v9.0.0-x86_64-macos/wasmtime"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.0/wasmtime-v9.0.0-x86_64-windows.zip",
|
||||
"checksum": "19ee22cb45c43bd81a1f7752c4bdb7498f830cfad2a69b39a7e0bacbb23aa22c",
|
||||
"bin": "wasmtime-v9.0.0-x86_64-windows/wasmtime.exe"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.0/wasmtime-v9.0.0-aarch64-linux.tar.xz",
|
||||
"checksum": "89c521f6df8dc5a5ac72f24aa5644c9c685f3e0ce4713ca9b95038c40ec7685d",
|
||||
"bin": "wasmtime-v9.0.0-aarch64-linux/wasmtime"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/bytecodealliance/wasmtime/releases/download/v9.0.0/wasmtime-v9.0.0-aarch64-macos.tar.xz",
|
||||
"checksum": "1fb0e56cb6e20a9b1d0abc8e65e7daabeca219e55ecf661ec71f5d05e0b0a198",
|
||||
"bin": "wasmtime-v9.0.0-aarch64-macos/wasmtime"
|
||||
}
|
||||
},
|
||||
"8": {
|
||||
"version": "8.0.1"
|
||||
|
||||
1
tools/.tidy-check-license-headers
Normal file
1
tools/.tidy-check-license-headers
Normal file
@@ -0,0 +1 @@
|
||||
git ls-files '*.sh' # TODO: check more files
|
||||
24
tools/codegen/base/syft.json
Normal file
24
tools/codegen/base/syft.json
Normal 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"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,23 +4,23 @@
|
||||
"platform": {
|
||||
"x86_64_linux_gnu": {
|
||||
"asset_name": "${package}-v${version}-x86_64-linux.tar.xz",
|
||||
"bin": "./${package}-v${version}-x86_64-linux/${package}${exe}"
|
||||
"bin": "${package}-v${version}-x86_64-linux/${package}${exe}"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"asset_name": "${package}-v${version}-x86_64-macos.tar.xz",
|
||||
"bin": "./${package}-v${version}-x86_64-macos/${package}${exe}"
|
||||
"bin": "${package}-v${version}-x86_64-macos/${package}${exe}"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"asset_name": "${package}-v${version}-x86_64-windows.zip",
|
||||
"bin": "./${package}-v${version}-x86_64-windows/${package}${exe}"
|
||||
"bin": "${package}-v${version}-x86_64-windows/${package}${exe}"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"asset_name": "${package}-v${version}-aarch64-linux.tar.xz",
|
||||
"bin": "./${package}-v${version}-aarch64-linux/${package}${exe}"
|
||||
"bin": "${package}-v${version}-aarch64-linux/${package}${exe}"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"asset_name": "${package}-v${version}-aarch64-macos.tar.xz",
|
||||
"bin": "./${package}-v${version}-aarch64-macos/${package}${exe}"
|
||||
"bin": "${package}-v${version}-aarch64-macos/${package}${exe}"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
trap 's=$?; echo >&2 "$0: Error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}' ERR
|
||||
trap 's=$?; echo >&2 "$0: error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}' ERR
|
||||
|
||||
# Publish a new release.
|
||||
#
|
||||
@@ -98,7 +99,7 @@ for tool in tools/codegen/base/*.json; do
|
||||
done
|
||||
# Aliases
|
||||
tools+=(nextest)
|
||||
# Not manifest-base
|
||||
# Not manifest-based
|
||||
tools+=(valgrind)
|
||||
|
||||
(
|
||||
|
||||
@@ -6,7 +6,7 @@ IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
trap 's=$?; echo >&2 "$0: Error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}' ERR
|
||||
trap 's=$?; echo >&2 "$0: error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}' ERR
|
||||
|
||||
# USAGE:
|
||||
# ./tools/tidy.sh
|
||||
@@ -201,9 +201,48 @@ else
|
||||
warn "'shellcheck' is not installed"
|
||||
fi
|
||||
|
||||
# License check
|
||||
# TODO: This check is still experimental and does not track all files that should be tracked.
|
||||
if [[ -f tools/.tidy-check-license-headers ]]; then
|
||||
info "checking license headers (experimental)"
|
||||
failed_files=''
|
||||
for p in $(eval $(<tools/.tidy-check-license-headers)); do
|
||||
# TODO: More file types?
|
||||
case "$(basename "${p}")" in
|
||||
*.sh) prefix=("# ") ;;
|
||||
*.rs | *.c | *.h | *.cpp | *.hpp | *.s | *.S) prefix=("// " "/* ") ;;
|
||||
*.ld | *.x) prefix=("/* ") ;;
|
||||
*) error "unrecognized file type: ${p}" ;;
|
||||
esac
|
||||
# TODO: The exact line number is not actually important; it is important
|
||||
# that it be part of the top-level comments of the file.
|
||||
line="1"
|
||||
case "${p}" in
|
||||
*.sh) line="2" ;; # shebang
|
||||
esac
|
||||
header_found=''
|
||||
for pre in "${prefix[@]}"; do
|
||||
if [[ "$(grep -E -n "${pre}SPDX-License-Identifier: " "${p}")" == "${line}:${pre}SPDX-License-Identifier: "* ]]; then
|
||||
header_found='1'
|
||||
continue
|
||||
fi
|
||||
done
|
||||
if [[ -z "${header_found}" ]]; then
|
||||
failed_files+="${p}:${line}"$'\n'
|
||||
fi
|
||||
done
|
||||
if [[ -n "${failed_files}" ]]; then
|
||||
error "license-check failed: please add SPDX-License-Identifier to the following files"
|
||||
echo "======================================="
|
||||
echo -n "${failed_files}"
|
||||
echo "======================================="
|
||||
fi
|
||||
fi
|
||||
|
||||
# Spell check (if config exists)
|
||||
if [[ -f .cspell.json ]]; then
|
||||
info "spell checking"
|
||||
project_dictionary=.github/.cspell/project-dictionary.txt
|
||||
if type -P npm &>/dev/null; then
|
||||
has_rust=''
|
||||
if [[ -n "$(git ls-files '*Cargo.toml')" ]]; then
|
||||
@@ -227,7 +266,7 @@ if [[ -f .cspell.json ]]; then
|
||||
if [[ -n "${has_rust}" ]]; then
|
||||
dependencies_words=$(npx <<<"${dependencies}" cspell stdin --no-progress --no-summary --words-only --unique || true)
|
||||
fi
|
||||
all_words=$(npx cspell --no-progress --no-summary --words-only --unique $(git ls-files | (grep -v '\.github/\.cspell/project-dictionary\.txt' || true)) || true)
|
||||
all_words=$(npx cspell --no-progress --no-summary --words-only --unique $(git ls-files | (grep -v "${project_dictionary//\./\\.}" || true)) || true)
|
||||
# TODO: handle SIGINT
|
||||
echo "${config_old}" >.cspell.json
|
||||
cat >.github/.cspell/rust-dependencies.txt <<EOF
|
||||
@@ -244,17 +283,17 @@ EOF
|
||||
|
||||
echo "+ npx cspell --no-progress --no-summary \$(git ls-files)"
|
||||
if ! npx cspell --no-progress --no-summary $(git ls-files); then
|
||||
error "spellcheck failed: please fix uses of above words or add to .github/.cspell/project-dictionary.txt if correct"
|
||||
error "spellcheck failed: please fix uses of above words or add to ${project_dictionary} if correct"
|
||||
fi
|
||||
|
||||
# Make sure the project-specific dictionary does not contain duplicated words.
|
||||
for dictionary in .github/.cspell/*.txt; do
|
||||
if [[ "${dictionary}" == .github/.cspell/project-dictionary.txt ]]; then
|
||||
if [[ "${dictionary}" == "${project_dictionary}" ]]; then
|
||||
continue
|
||||
fi
|
||||
dup=$(sed '/^$/d' .github/.cspell/project-dictionary.txt "${dictionary}" | LC_ALL=C sort -f | uniq -d -i | (grep -v '//.*' || true))
|
||||
dup=$(sed '/^$/d' "${project_dictionary}" "${dictionary}" | LC_ALL=C sort -f | uniq -d -i | (grep -v '//.*' || true))
|
||||
if [[ -n "${dup}" ]]; then
|
||||
error "duplicated words in dictionaries; please remove the following words from .github/.cspell/project-dictionary.txt"
|
||||
error "duplicated words in dictionaries; please remove the following words from ${project_dictionary}"
|
||||
echo "======================================="
|
||||
echo "${dup}"
|
||||
echo "======================================="
|
||||
@@ -263,13 +302,13 @@ EOF
|
||||
|
||||
# Make sure the project-specific dictionary does not contain unused words.
|
||||
unused=''
|
||||
for word in $(grep -v '//.*' .github/.cspell/project-dictionary.txt || true); do
|
||||
for word in $(grep -v '//.*' "${project_dictionary}" || true); do
|
||||
if ! grep <<<"${all_words}" -Eq -i "^${word}$"; then
|
||||
unused+="${word}"$'\n'
|
||||
fi
|
||||
done
|
||||
if [[ -n "${unused}" ]]; then
|
||||
error "unused words in dictionaries; please remove the following words from .github/.cspell/project-dictionary.txt"
|
||||
error "unused words in dictionaries; please remove the following words from ${project_dictionary}"
|
||||
echo "======================================="
|
||||
echo -n "${unused}"
|
||||
echo "======================================="
|
||||
|
||||
Reference in New Issue
Block a user