Compare commits

..

173 Commits

Author SHA1 Message Date
Taiki Endo
c4a18d6cc6 Reduce uname usage 2026-05-05 03:17:38 +09:00
Taiki Endo
ca67a3acf1 Support +<additional> syntax for rust 2026-05-05 03:04:34 +09:00
Taiki Endo
bbe1b9d5e1 Support rust 2026-05-05 03:04:34 +09:00
Taiki Endo
a70acaa822 Update tombi manifest 2026-05-04 15:01:00 +00:00
Taiki Endo
711e1c3275 Release 2.76.0 2026-05-04 12:34:12 +00:00
Taiki Endo
6f6e822f33 Update changelog 2026-05-04 21:07:40 +09:00
Taiki Endo
a142873b76 ci,tools: Update config and script 2026-05-04 21:06:05 +09:00
Mads Marquart
ff1c16dbcb Support cargo-apple-runner (#1731) 2026-05-04 21:05:27 +09:00
Nicolas Huber
8966c78b02 Support mdbook-d2 (#1737) 2026-05-04 21:03:03 +09:00
Taiki Endo
c2126fb235 Support cargo-binstall on riscv64 Linux 2026-05-04 20:39:44 +09:00
Taiki Endo
57f2d4f754 codegen: Pin cargo-binstall version in base manifest 2026-05-04 20:36:22 +09:00
Taiki Endo
4702276cfb Revert "Update cargo-binstall@latest to 1.19.0"
This reverts commit 4976db3862.
2026-05-04 20:36:22 +09:00
Taiki Endo
9908d1d32f Remove sed usage in canonicalize_windows_path 2026-05-04 19:56:56 +09:00
Taiki Endo
4976db3862 Update cargo-binstall@latest to 1.19.0 2026-05-04 07:47:23 +00:00
Taiki Endo
027d3566fa Update mise manifest 2026-05-03 21:32:19 +00:00
Taiki Endo
7fe0d47d46 Update cargo-deb@latest to 3.7.0 2026-05-03 21:32:19 +00:00
Taiki Endo
72fab49619 Update tombi@latest to 0.10.2 2026-05-03 19:02:23 +00:00
Taiki Endo
db5fb34fa7 Release 2.75.30 2026-05-03 10:38:24 +00:00
Taiki Endo
095ffb3a38 ci: Mark cargo-spellcheck as glibc_pre_2_39_incompat
```
+ cargo-spellcheck spellcheck --version
  cargo-spellcheck: /lib64/libc.so.6: version `GLIBC_2.39' not found
  (required by cargo-spellcheck)
  ```
2026-05-03 19:24:58 +09:00
Taiki Endo
4d6d7ab8c9 Update cargo-spellcheck@latest to 0.15.7 2026-05-03 19:24:58 +09:00
Taiki Endo
9f05712f99 Update biome@latest to 2.4.14 2026-05-03 19:24:58 +09:00
Taiki Endo
fea765a776 ci: Update config 2026-05-03 06:44:45 +09:00
Taiki Endo
b06c9cba54 codegen: cargo-spellcheck now provides AArch64 Linux/Windows binaries 2026-05-03 06:20:16 +09:00
Taiki Endo
b5fddbb536 Release 2.75.29 2026-05-02 19:40:03 +00:00
dependabot[bot]
5dab223281 Bump taiki-e/install-action from 2.75.3 to 2.75.17 (#1754)
Bumps the github-actions group with 1 update in the / directory: [taiki-e/install-action](https://github.com/taiki-e/install-action).


Updates `taiki-e/install-action` from 2.75.3 to 2.75.17
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](b8be7f5e14...58e8625425)

---
updated-dependencies:
- dependency-name: taiki-e/install-action
  dependency-version: 2.75.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-03 04:31:17 +09:00
Taiki Endo
5bdd194353 Revert "ci: Temporarily disable valgrind test"
This reverts commit 40088a0f3b.
2026-05-03 04:18:42 +09:00
Taiki Endo
ef16a20345 Update cargo-deb manifest 2026-05-02 19:16:42 +00:00
Taiki Endo
e565ba433e ci,tools: Update config and scripts 2026-05-03 04:02:20 +09:00
Taiki Endo
9d6a9dded6 Update tombi manifest 2026-05-02 18:34:40 +00:00
Taiki Endo
bdddcdcc79 Update syft@latest to 1.44.0 2026-05-02 18:34:40 +00:00
Taiki Endo
9c6db3bb61 Update rclone@latest to 1.74.0 2026-05-02 18:34:40 +00:00
Taiki Endo
71d23d4987 Update osv-scanner@latest to 2.3.6 2026-05-02 05:43:31 +00:00
Taiki Endo
9bbb5bc118 Update cargo-spellcheck manifest 2026-05-01 20:51:55 +00:00
Taiki Endo
51cd0b8c04 Release 2.75.28 2026-05-01 20:38:51 +00:00
Taiki Endo
eff4bde3b7 Update TOOLS.md 2026-05-02 05:21:27 +09:00
Taiki Endo
800a516184 Update biome manifest 2026-05-02 05:21:27 +09:00
Taiki Endo
d970a9afdf Update wasmtime manifest 2026-05-02 05:21:27 +09:00
Taiki Endo
c7c9ef9094 Simplify environment variable removal on Windows 2026-05-02 05:21:27 +09:00
Taiki Endo
ada42c20f9 Update changelog 2026-05-02 05:21:27 +09:00
Taiki Endo
40088a0f3b ci: Temporarily disable valgrind test
```
error: unable to contact snap store
```

https://status.canonical.com/
2026-05-02 05:21:27 +09:00
Taiki Endo
cd51854b0b ci: Mark cyclonedx as glibc_pre_2_27_incompat
```
+ cyclonedx --version
  cyclonedx: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not
  found (required by cyclonedx)
  ```
2026-05-02 05:21:27 +09:00
Taiki Endo
02785ce9c9 Update wasmtime@latest to 44.0.1 2026-05-02 05:21:27 +09:00
Taiki Endo
1f19260668 Update typos@latest to 1.46.0 2026-05-02 05:21:27 +09:00
Taiki Endo
796b8c7bdf Update tombi@latest to 0.10.1 2026-05-02 05:21:27 +09:00
Taiki Endo
5e79d8799d Update syft manifest 2026-05-02 05:21:27 +09:00
Taiki Endo
a9ad6a15f3 Update sccache@latest to 0.15.0 2026-05-02 05:21:27 +09:00
Taiki Endo
95fc428094 Update rclone manifest 2026-05-02 05:21:27 +09:00
Taiki Endo
8da5f76d8b Update osv-scanner manifest 2026-05-02 05:21:27 +09:00
Taiki Endo
69db8f36c8 Update mise@latest to 2026.4.28 2026-05-02 05:21:27 +09:00
Taiki Endo
6f2467666b Update gungraun-runner@latest to 0.18.2 2026-05-02 05:21:27 +09:00
Taiki Endo
025dfc69ec Update cyclonedx@latest to 0.31.0 2026-05-02 05:21:27 +09:00
Taiki Endo
458badeb06 Update tombi@latest to 0.9.26 2026-04-30 05:33:56 +00:00
Taiki Endo
7769b73c2e Release 2.75.27 2026-04-30 01:50:56 +00:00
Taiki Endo
aef5057f90 Update cargo-udeps@latest to 0.1.61 2026-04-30 01:05:09 +00:00
Taiki Endo
41de191c3c Update wasm-tools@latest to 1.248.0 2026-04-29 18:50:30 +00:00
Taiki Endo
89761c8db9 Update sccache manifest 2026-04-29 18:50:30 +00:00
Taiki Endo
8324debf4c Update mise manifest 2026-04-29 18:50:30 +00:00
Taiki Endo
3b3fb63c3d Update cargo-deb@latest to 3.6.4 2026-04-29 18:50:30 +00:00
Taiki Endo
b651345a71 Release 2.75.26 2026-04-29 13:01:08 +00:00
Taiki Endo
e0091eefbf Update wasm-bindgen@latest to 0.2.120 2026-04-29 12:56:24 +00:00
Taiki Endo
96d4d757ef Update tombi manifest 2026-04-29 12:56:24 +00:00
Taiki Endo
4a1aed1ca9 Update mise@latest to 2026.4.25 2026-04-29 12:56:24 +00:00
Taiki Endo
2e38aa6247 Update martin@latest to 1.8.0 2026-04-29 12:56:24 +00:00
Taiki Endo
443d4e78eb Update cyclonedx manifest 2026-04-29 12:56:24 +00:00
Taiki Endo
5ddd7264c7 Update cargo-udeps manifest 2026-04-29 12:56:24 +00:00
Taiki Endo
4b9684ed93 Update vacuum@latest to 0.26.4 2026-04-28 21:42:35 +00:00
Taiki Endo
1329c298aa Release 2.75.25 2026-04-28 19:03:16 +00:00
Taiki Endo
96c62cdc99 Update wasm-tools manifest 2026-04-28 18:54:39 +00:00
Taiki Endo
abdbfdb6fc Update uv@latest to 0.11.8 2026-04-28 18:54:39 +00:00
Taiki Endo
46a5a07a30 Update typos@latest to 1.45.2 2026-04-28 18:54:39 +00:00
Taiki Endo
4e4fd8b0ce Update tombi@latest to 0.9.25 2026-04-28 18:54:39 +00:00
Taiki Endo
4cc48d2e0b Update mise@latest to 2026.4.24 2026-04-28 18:54:39 +00:00
Taiki Endo
01898f15fa Update martin manifest 2026-04-28 18:54:39 +00:00
Taiki Endo
2dcb219ec6 Update cargo-deb manifest 2026-04-28 18:54:39 +00:00
Taiki Endo
1f2425cdb5 Release 2.75.24 2026-04-28 11:15:06 +00:00
Taiki Endo
01b158b410 Update wasm-bindgen manifest 2026-04-28 10:03:59 +00:00
Taiki Endo
8042492dca Update prek@latest to 0.3.11 2026-04-28 05:47:21 +00:00
Taiki Endo
75727f71ed Update mise@latest to 2026.4.23 2026-04-28 02:35:27 +00:00
Taiki Endo
f0a8696bf6 Update vacuum@latest to 0.26.3 2026-04-27 21:38:00 +00:00
Taiki Endo
daab657293 Update typos manifest 2026-04-27 21:38:00 +00:00
Taiki Endo
481c34c1cf Release 2.75.23 2026-04-27 16:13:05 +00:00
Taiki Endo
9109405c61 Update changelog 2026-04-28 01:10:47 +09:00
Taiki Endo
cfd6b0ff1e Update vacuum@latest to 0.26.2 2026-04-27 16:08:54 +00:00
Taiki Endo
b2ea47bca2 Update uv manifest 2026-04-27 16:08:54 +00:00
Taiki Endo
298078d060 Update tombi@latest to 0.9.24 2026-04-27 16:08:54 +00:00
Taiki Endo
4c81eb55c7 Update prek manifest 2026-04-27 16:08:54 +00:00
Taiki Endo
bb5f177651 Update mise@latest to 2026.4.22 2026-04-27 16:08:54 +00:00
Taiki Endo
c630b05e42 Update martin@latest to 1.7.0 2026-04-27 16:08:54 +00:00
Taiki Endo
b12e2ca231 Update git-cliff@latest to 2.13.1 2026-04-27 16:08:54 +00:00
Taiki Endo
3a693fd633 Update cargo-tarpaulin@latest to 0.35.4 2026-04-27 16:08:54 +00:00
Taiki Endo
9769ee2cf4 Update cargo-sort@latest to 2.1.4 2026-04-27 16:08:54 +00:00
Taiki Endo
135f92e251 codegen: tombi 0.9.23 changed asset names
4ffe79f6b7
2026-04-28 00:36:12 +09:00
Taiki Endo
f6da097330 Update mise manifest 2026-04-25 21:29:06 +00:00
Taiki Endo
559ffd1268 Update martin manifest 2026-04-25 15:30:09 +00:00
Taiki Endo
a452546980 Update mise@latest to 2026.4.20 2026-04-25 12:31:43 +00:00
Taiki Endo
9898d2a3a0 Update cargo-sort manifest 2026-04-25 12:31:43 +00:00
Taiki Endo
63de478c5d Update cargo-tarpaulin manifest 2026-04-25 09:34:12 +00:00
Taiki Endo
cf525cb33f Release 2.75.22 2026-04-25 07:06:42 +00:00
Taiki Endo
3f558599a1 Update tombi manifest 2026-04-25 05:46:24 +00:00
Taiki Endo
a286306fb8 Update tombi@latest to 0.9.22 2026-04-24 18:33:01 +00:00
Taiki Endo
eaa8ab69bf Update biome@latest to 2.4.13 2026-04-24 18:33:01 +00:00
Taiki Endo
2589fc51d9 Update mise manifest 2026-04-24 12:42:43 +00:00
Taiki Endo
787505cde8 Release 2.75.21 2026-04-24 10:08:21 +00:00
Taiki Endo
7c499079ce Update mise@latest to 2026.4.19 2026-04-24 05:42:03 +00:00
Taiki Endo
9d1fa296ee Update tombi@latest to 0.9.21 2026-04-24 01:01:37 +00:00
Taiki Endo
d6c0be7b3f Update tombi manifest 2026-04-23 18:46:38 +00:00
Taiki Endo
7e0b63f714 Update syft@latest to 1.43.0 2026-04-23 18:46:38 +00:00
Taiki Endo
949cd15806 Update biome manifest 2026-04-23 18:46:38 +00:00
Taiki Endo
74e87cbfa1 Release 2.75.20 2026-04-23 13:38:50 +00:00
Taiki Endo
cf3db48700 Update mise manifest 2026-04-23 05:43:07 +00:00
Taiki Endo
0102efdc68 Update tombi manifest 2026-04-23 01:01:11 +00:00
Taiki Endo
3f5548742e Update syft manifest 2026-04-22 18:40:27 +00:00
Taiki Endo
7149f916dc Update prek@latest to 0.3.10 2026-04-22 12:43:20 +00:00
Taiki Endo
b1b3ba35a8 Update cargo-xwin@latest to 0.22.0 2026-04-22 00:54:32 +00:00
Taiki Endo
5f57d6cb7c Release 2.75.19 2026-04-21 19:12:57 +00:00
Taiki Endo
f7834e16b5 Update changelog 2026-04-22 03:55:32 +09:00
Taiki Endo
2cc571e43f Update wasmtime@latest to 44.0.0 2026-04-21 15:48:07 +00:00
Taiki Endo
8b3cde4b11 Update prek manifest 2026-04-21 12:53:28 +00:00
Taiki Endo
9240bba72a Update tombi@latest to 0.9.20 2026-04-21 00:59:21 +00:00
Taiki Endo
a12217e013 Update martin@latest to 1.6.0 2026-04-21 00:59:21 +00:00
Taiki Endo
1fee5982aa Update just@latest to 1.50.0 2026-04-21 00:59:21 +00:00
Taiki Endo
b6d12aae50 Update cargo-xwin manifest 2026-04-21 00:59:21 +00:00
Taiki Endo
d00ace6084 Update wasmtime manifest 2026-04-20 19:01:48 +00:00
Taiki Endo
d908317d79 Update tombi@latest to 0.9.19 2026-04-20 19:01:48 +00:00
Taiki Endo
2ec8966dce Update mise@latest to 2026.4.18 2026-04-20 19:01:48 +00:00
Taiki Endo
fb7e964106 Update rclone@latest to 1.73.5 2026-04-20 12:49:43 +00:00
Taiki Endo
54bca04752 Update tombi manifest 2026-04-20 07:05:23 +00:00
Taiki Endo
099e0a6219 Update martin manifest 2026-04-20 07:05:23 +00:00
Taiki Endo
3445a4a329 Update just manifest 2026-04-20 07:05:23 +00:00
Taiki Endo
6c30010265 Update tombi manifest 2026-04-19 18:41:36 +00:00
Taiki Endo
0f4f5a6122 Update rclone manifest 2026-04-19 18:41:36 +00:00
Taiki Endo
0834419696 Update mise@latest to 2026.4.17 2026-04-19 18:41:36 +00:00
Taiki Endo
7f2a51ae27 Update cspell dictionary 2026-04-20 03:28:51 +09:00
Taiki Endo
e15ecae65f Unset/reject environment variables that may unexpectedly affect bash
behavior
2026-04-19 10:14:16 +09:00
Taiki Endo
ff5a208d55 Prefer shell builtin over commad 2026-04-19 10:07:01 +09:00
Taiki Endo
055f5df8c3 Release 2.75.18 2026-04-19 00:34:21 +00:00
Taiki Endo
eabf603493 Add note about unset 2026-04-19 09:06:36 +09:00
Taiki Endo
4637b48a5a Early handle inputs 2026-04-19 09:06:36 +09:00
Taiki Endo
7a6306ece2 Update vacuum@latest to 0.26.1 2026-04-18 21:24:30 +00:00
Taiki Endo
cb13f5ef52 Update mise manifest 2026-04-18 21:24:30 +00:00
Taiki Endo
18cc1a4fb7 Update wasm-tools@latest to 1.247.0 2026-04-18 15:28:55 +00:00
Taiki Endo
c7b05077fe Update mise@latest to 2026.4.16 2026-04-18 12:32:36 +00:00
Taiki Endo
0ef4e7650f Update espup@latest to 0.17.1 2026-04-18 12:32:36 +00:00
Taiki Endo
56ec35f1c0 Update trivy@latest to 0.70.0 2026-04-18 09:33:10 +00:00
Taiki Endo
6874db14a1 Update vacuum manifest 2026-04-17 20:43:02 +00:00
Taiki Endo
bcfb2f6795 ci: Update config 2026-04-18 05:32:04 +09:00
Taiki Endo
58e8625425 Release 2.75.17 2026-04-17 18:58:58 +00:00
Taiki Endo
b9e89d5f4e Update vacuum manifest 2026-04-17 18:57:04 +00:00
Taiki Endo
97204a3065 ci: Update config 2026-04-18 03:41:58 +09:00
Taiki Endo
2bfe66531d Update changelog 2026-04-18 03:31:45 +09:00
Taiki Endo
3f52e56403 Update wasm-tools manifest 2026-04-17 15:40:57 +00:00
Taiki Endo
2fd0ba806a Update tombi@latest to 0.9.18 2026-04-17 15:40:57 +00:00
Taiki Endo
711af1aa18 Update mise@latest to 2026.4.15 2026-04-17 15:40:57 +00:00
Taiki Endo
c127aaa0fa Update mise manifest 2026-04-17 12:38:20 +00:00
Taiki Endo
9479ae3764 Update espup manifest 2026-04-17 12:38:20 +00:00
Taiki Endo
6ac39c59e2 Update trivy manifest 2026-04-17 09:49:06 +00:00
Taiki Endo
6e3c7dd811 Update espup manifest 2026-04-17 09:49:06 +00:00
Taiki Endo
a2352fc6ce Release 2.75.16 2026-04-17 01:50:56 +00:00
Taiki Endo
02099496cb Update changelog 2026-04-17 10:44:01 +09:00
Taiki Endo
1418a848c4 Update uv@latest to 0.11.7 2026-04-17 00:57:34 +00:00
Taiki Endo
33ecd0530c Update mise@latest to 2026.4.14 2026-04-16 21:36:16 +00:00
Taiki Endo
623827dcec Update vacuum@latest to 0.25.9 2026-04-16 19:21:57 +00:00
Taiki Endo
feb4fead61 Update tombi manifest 2026-04-16 19:21:57 +00:00
Taiki Endo
acd4090f5a Update mise@latest to 2026.4.12 2026-04-16 19:21:57 +00:00
Taiki Endo
9048eab0a3 Update cargo-machete@latest to 0.9.2 2026-04-16 19:21:57 +00:00
Taiki Endo
4e95964dec Update cargo-deny@latest to 0.19.4 2026-04-16 19:21:57 +00:00
Taiki Endo
a2d608ac77 Update uv manifest 2026-04-16 10:37:13 +00:00
Taiki Endo
5939f3337e Release 2.75.15 2026-04-16 00:29:23 +00:00
Taiki Endo
6d098df757 Update mise manifest 2026-04-15 21:34:23 +00:00
Taiki Endo
f3fc54c0f0 Update cargo-nextest@latest to 0.9.133 2026-04-15 21:34:23 +00:00
Taiki Endo
2be691e249 Update vacuum manifest 2026-04-15 18:44:54 +00:00
Taiki Endo
3422300f25 Update biome@latest to 2.4.12 2026-04-15 18:44:54 +00:00
Taiki Endo
374ad2bb5d Update cargo-machete manifest 2026-04-15 17:54:02 +00:00
53 changed files with 3395 additions and 253 deletions

View File

@@ -2,6 +2,7 @@ almalinux
archlinux
binstall
callgrind
CDPATH
coreutils
covgate
cyclonedx
@@ -29,7 +30,6 @@ pluginconf
ppcle
prek
quickinstall
rclone
rdme
rootfs
sccache

View File

@@ -15,7 +15,7 @@ updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
interval: monthly
cooldown:
default-days: 14
commit-message:

View File

@@ -1,7 +1,6 @@
name: CI
permissions:
contents: read
permissions: {}
on:
pull_request:
@@ -33,20 +32,20 @@ concurrency:
jobs:
miri:
uses: taiki-e/github-actions/.github/workflows/miri.yml@dec917193d835117a7238865adf83273d9fcd27a # main
uses: taiki-e/github-actions/.github/workflows/miri.yml@75415970465917c31d702710acd9c9248b9af314 # main
with:
# NB: sync with test job's --exclude option
args: --exclude install-action-internal-codegen
msrv:
uses: taiki-e/github-actions/.github/workflows/msrv.yml@dec917193d835117a7238865adf83273d9fcd27a # main
uses: taiki-e/github-actions/.github/workflows/msrv.yml@75415970465917c31d702710acd9c9248b9af314 # main
test-manifest-schema:
uses: taiki-e/github-actions/.github/workflows/test.yml@dec917193d835117a7238865adf83273d9fcd27a # main
uses: taiki-e/github-actions/.github/workflows/test.yml@75415970465917c31d702710acd9c9248b9af314 # main
with:
# NB: sync with miri job's --exclude option
test-args: --exclude install-action-internal-codegen
no-std: false
tidy:
uses: taiki-e/github-actions/.github/workflows/tidy.yml@dec917193d835117a7238865adf83273d9fcd27a # main
uses: taiki-e/github-actions/.github/workflows/tidy.yml@75415970465917c31d702710acd9c9248b9af314 # main
permissions:
contents: write # for creating branch for pr
pull-requests: write # unused (used in `codegen-automerge: true` case)
@@ -122,22 +121,22 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Test all shells listed in 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
run: just --version && shfmt --version && protoc --version && rustc --version && cargo --version && rustup --version
shell: bash
- name: Test sh
run: just --version && shfmt --version && protoc --version
run: just --version && shfmt --version && protoc --version && rustc --version && cargo --version && rustup --version
shell: sh
if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos')
- name: Test pwsh
run: just --version; shfmt --version; protoc --version
run: just --version; shfmt --version; protoc --version; rustc --version; cargo --version; rustup --version
shell: pwsh
if: matrix.os != 'ubuntu-slim'
- name: Test powershell
run: just --version; shfmt --version; protoc --version
run: just --version; shfmt --version; protoc --version; rustc --version; cargo --version; rustup --version
shell: powershell
if: startsWith(matrix.os, 'windows')
- name: Test cmd
run: just --version & shfmt --version & protoc --version
run: just --version & shfmt --version & protoc --version & rustc --version & cargo --version & rustup --version
shell: cmd # zizmor: ignore[misfeature] used for compatibility testing
if: startsWith(matrix.os, 'windows')
# We use the version output to check the version of cargo-binstall, but they
@@ -151,7 +150,7 @@ jobs:
if: matrix.bash != 'cygwin' && matrix.os != 'windows-11-arm'
test-alias:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
timeout-minutes: 60
steps:
- uses: taiki-e/checkout-action@7d1e50e93dc4fb3bba58f85018fadf77898aee8b # v1.4.2
@@ -255,7 +254,7 @@ jobs:
- alpine:3.22 # musl 1.2.5
- alpine:3.23 # musl 1.2.5
# - openwrt/rootfs:x86-64-openwrt-24.10 # musl 1.2.5
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
timeout-minutes: 60
container: ${{ matrix.container }}
steps:
@@ -301,6 +300,10 @@ jobs:
env:
CONTAINER: ${{ matrix.container }}
if: startsWith(matrix.container, 'centos')
# gcc for rustc
- run: apk --no-cache add gcc
shell: sh
if: startsWith(matrix.container, 'alpine')
- uses: taiki-e/checkout-action@7d1e50e93dc4fb3bba58f85018fadf77898aee8b # v1.4.2
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
- run: rm -- Cargo.toml

View File

@@ -1,7 +1,6 @@
name: Manifest
permissions:
contents: read
permissions: {}
on:
pull_request:
@@ -33,7 +32,7 @@ concurrency:
jobs:
manifest:
uses: taiki-e/github-actions/.github/workflows/gen.yml@dec917193d835117a7238865adf83273d9fcd27a # main
uses: taiki-e/github-actions/.github/workflows/gen.yml@75415970465917c31d702710acd9c9248b9af314 # main
permissions:
contents: write # for creating branch for pr
pull-requests: write # for gh pr review --approve

View File

@@ -2,8 +2,7 @@ name: Release
# Adapted from https://github.com/taiki-e/github-actions/blob/HEAD/.github/workflows/action-release.yml.
permissions:
contents: read
permissions: {}
on:
workflow_dispatch:
@@ -26,7 +25,7 @@ on:
defaults:
run:
shell: bash --noprofile --norc -CeEuxo pipefail {0}
shell: bash --noprofile --norc -CeEuo pipefail {0}
concurrency:
group: ${{ github.workflow }}
@@ -35,17 +34,16 @@ concurrency:
jobs:
prepare:
if: github.repository_owner == 'taiki-e' && inputs.target == 'install-action'
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
timeout-minutes: 60
steps:
- uses: taiki-e/checkout-action@7d1e50e93dc4fb3bba58f85018fadf77898aee8b # v1.4.2
- uses: taiki-e/install-action@b8be7f5e140177087325943c4a8e169d01c59b3d # v2.75.3
- uses: taiki-e/install-action@58e862542551f667fa44c8a2a4a1d64ad477c96a # v2.75.17
with:
tool: parse-changelog
fallback: none
- id: check
run: |
set +x
IFS=$'\n\t'
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
retry() {
@@ -70,23 +68,23 @@ jobs:
# shellcheck disable=SC2153
version="${VERSION}"
printf '%s\n' "version(input): ${version}"
printf 'version(input): %s\n' "${version}"
# shellcheck disable=SC2153
tag_prefix="${TAG_PREFIX}"
printf '%s\n' "tag_prefix: ${tag_prefix}"
printf 'tag_prefix: %s\n' "${tag_prefix}"
# shellcheck disable=SC2153
changelog="${CHANGELOG}"
printf '%s\n' "changelog: ${changelog}"
printf 'changelog: %s\n' "${changelog}"
# Get the current date.
release_date=$(date -u '+%Y-%m-%d')
printf '%s\n' "release-date: ${release_date}"
printf '%s\n' "release-date=${release_date}" >>"${GITHUB_OUTPUT}"
printf 'release-date: %s\n' "${release_date}"
printf 'release-date=%s\n' "${release_date}" >>"${GITHUB_OUTPUT}"
# Get the current revision.
rev=$(git rev-parse HEAD)
printf '%s\n' "rev: ${rev}"
printf '%s\n' "rev=${rev}" >>"${GITHUB_OUTPUT}"
printf 'rev: %s\n' "${rev}"
printf 'rev=%s\n' "${rev}" >>"${GITHUB_OUTPUT}"
prev_version=$(parse-changelog --title-no-link "${changelog}" | cut -d' ' -f1)
@@ -111,11 +109,11 @@ jobs:
if [[ ! "${version}" =~ ^[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z\.-]+)?(\+[0-9A-Za-z\.-]+)?$ ]]; then
bail "invalid version format '${version}'"
fi
printf '%s\n' "version: ${version}"
printf '%s\n' "version=${version}" >>"${GITHUB_OUTPUT}"
printf 'version: %s\n' "${version}"
printf 'version=%s\n' "${version}" >>"${GITHUB_OUTPUT}"
tag="${tag_prefix}${version}"
printf '%s\n' "tag: ${tag}"
printf '%s\n' "tag=${tag}" >>"${GITHUB_OUTPUT}"
printf 'tag: %s\n' "${tag}"
printf 'tag=%s\n' "${tag}" >>"${GITHUB_OUTPUT}"
# Make sure the same release has not been created in the past.
if gh release view "${tag}" &>/dev/null; then
@@ -199,7 +197,7 @@ jobs:
release:
if: github.repository_owner == 'taiki-e' && inputs.target == 'install-action'
needs: prepare
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
timeout-minutes: 60
environment:
name: release
@@ -208,19 +206,18 @@ jobs:
contents: write # for taiki-e/create-gh-release-action
steps:
- uses: taiki-e/checkout-action@7d1e50e93dc4fb3bba58f85018fadf77898aee8b # v1.4.2
- uses: taiki-e/install-action@b8be7f5e140177087325943c4a8e169d01c59b3d # v2.75.3
- uses: taiki-e/install-action@58e862542551f667fa44c8a2a4a1d64ad477c96a # v2.75.17
with:
tool: parse-changelog
fallback: none
- uses: actions/create-github-app-token@f8d387b68d61c58ab83c6c016672934102569859 # v3.0.0
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
id: push-token
with:
app-id: ${{ secrets.PUSH_TOKEN_APP_CLIENT_ID }}
client-id: ${{ secrets.PUSH_TOKEN_APP_CLIENT_ID }}
private-key: ${{ secrets.PUSH_TOKEN_APP_PRIVATE_KEY }}
- name: Create and push release commit and tag
id: push
run: |
set +x
IFS=$'\n\t'
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
retry() {
@@ -427,7 +424,7 @@ jobs:
PREPARE_REV: ${{ needs.prepare.outputs.rev }}
# Note that if we use secrets.GITHUB_TOKEN, the pushed commit/tag cannot trigger other workflows.
PUSH_TOKEN: ${{ steps.push-token.outputs.token }}
- uses: taiki-e/create-gh-release-action@f67cf7b2dadd83d36b981e674a6b08063997ce68 # v1.10.0
- uses: taiki-e/create-gh-release-action@eba8ea96c86cca8a37f1b56e94b4d13301fba651 # v1.11.0
with:
changelog: CHANGELOG.md
title: $version
@@ -436,7 +433,7 @@ jobs:
release-manifest-schema:
if: github.repository_owner == 'taiki-e' && inputs.target == 'install-action-manifest-schema'
uses: taiki-e/github-actions/.github/workflows/rust-release.yml@dec917193d835117a7238865adf83273d9fcd27a # main
uses: taiki-e/github-actions/.github/workflows/rust-release.yml@75415970465917c31d702710acd9c9248b9af314 # main
permissions:
contents: write # for taiki-e/create-gh-release-action
id-token: write # for rust-lang/crates-io-auth-action
@@ -451,3 +448,4 @@ jobs:
changelog: tools/manifest-schema/CHANGELOG.md
title: $prefix $version
prefix: install-action-manifest-schema
commit-prefix: 'manifest-schema: '

View File

@@ -10,11 +10,194 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased]
- Support `rust`. ([#1779](https://github.com/taiki-e/install-action/pull/1779))
This installs rust using rustup.
If rustup is not yet installed, this action downloads [rustup-init for the current platform](https://rust-lang.github.io/rustup/installation/other.html#manual-installation) using HTTPS with tlsv1.2+, verifies SHA256 checksum, and then installs rustup using it.
This also supports installing additional components at the same time by `+<additional>` syntax:
```yaml
- uses: taiki-e/install-action@v2
with:
# Install rust stable with rustfmt component and wasm32-wasip1 target.
tool: rust+rustfmt+wasm32-wasip1
# When installing another rust version:
# tool: rust@nightly + rustfmt + wasm32-wasip1
```
## [2.76.0] - 2026-05-04
- Support `mdbook-d2`. ([#1737](https://github.com/taiki-e/install-action/pull/1737), thanks @nhu)
- Support `cargo-apple-runner`. ([#1731](https://github.com/taiki-e/install-action/pull/1731), thanks @madsmtm)
- Support `cargo-binstall` on riscv64 Linux.
- Update `cargo-deb@latest` to 3.7.0.
- Update `tombi@latest` to 0.10.2.
## [2.75.30] - 2026-05-03
- Support `cargo-spellcheck` on AArch64 Linux/Windows.
- Update `cargo-spellcheck@latest` to 0.15.7.
- Update `biome@latest` to 2.4.14.
## [2.75.29] - 2026-05-02
- Update `syft@latest` to 1.44.0.
- Update `rclone@latest` to 1.74.0.
- Update `osv-scanner@latest` to 2.3.6.
## [2.75.28] - 2026-05-01
- Update `wasmtime@latest` to 44.0.1.
- Update `typos@latest` to 1.46.0.
- Update `tombi@latest` to 0.10.1.
- Update `sccache@latest` to 0.15.0.
- Update `mise@latest` to 2026.4.28.
- Update `gungraun-runner@latest` to 0.18.2.
- Update `cyclonedx@latest` to 0.31.0.
## [2.75.27] - 2026-04-30
- Update `cargo-udeps@latest` to 0.1.61.
- Update `wasm-tools@latest` to 1.248.0.
- Update `cargo-deb@latest` to 3.6.4.
## [2.75.26] - 2026-04-29
- Update `wasm-bindgen@latest` to 0.2.120.
- Update `mise@latest` to 2026.4.25.
- Update `martin@latest` to 1.8.0.
- Update `vacuum@latest` to 0.26.4.
## [2.75.25] - 2026-04-28
- Update `uv@latest` to 0.11.8.
- Update `typos@latest` to 1.45.2.
- Update `tombi@latest` to 0.9.25.
- Update `mise@latest` to 2026.4.24.
## [2.75.24] - 2026-04-28
- Update `prek@latest` to 0.3.11.
- Update `mise@latest` to 2026.4.23.
- Update `vacuum@latest` to 0.26.3.
## [2.75.23] - 2026-04-27
- Update `vacuum@latest` to 0.26.2.
- Update `tombi@latest` to 0.9.24.
- Update `mise@latest` to 2026.4.22.
- Update `martin@latest` to 1.7.0.
- Update `git-cliff@latest` to 2.13.1.
- Update `cargo-tarpaulin@latest` to 0.35.4.
- Update `cargo-sort@latest` to 2.1.4.
## [2.75.22] - 2026-04-25
- Update `tombi@latest` to 0.9.22.
- Update `biome@latest` to 2.4.13.
## [2.75.21] - 2026-04-24
- Update `mise@latest` to 2026.4.19.
- Update `tombi@latest` to 0.9.21.
- Update `syft@latest` to 1.43.0.
## [2.75.20] - 2026-04-23
- Update `prek@latest` to 0.3.10.
- Update `cargo-xwin@latest` to 0.22.0.
## [2.75.19] - 2026-04-21
- Update `wasmtime@latest` to 44.0.0.
- Update `tombi@latest` to 0.9.20.
- Update `martin@latest` to 1.6.0.
- Update `just@latest` to 1.50.0.
- Update `mise@latest` to 2026.4.18.
- Update `rclone@latest` to 1.73.5.
## [2.75.18] - 2026-04-19
- Update `vacuum@latest` to 0.26.1.
- Update `wasm-tools@latest` to 1.247.0.
- Update `mise@latest` to 2026.4.16.
- Update `espup@latest` to 0.17.1.
- Update `trivy@latest` to 0.70.0.
## [2.75.17] - 2026-04-17
- Update `tombi@latest` to 0.9.18.
- Update `mise@latest` to 2026.4.15.
## [2.75.16] - 2026-04-17
- Update `uv@latest` to 0.11.7.
- Update `mise@latest` to 2026.4.14.
- Update `vacuum@latest` to 0.25.9.
- Update `cargo-machete@latest` to 0.9.2.
- Update `cargo-deny@latest` to 0.19.4.
## [2.75.15] - 2026-04-16
- Update `cargo-nextest@latest` to 0.9.133.
- Update `biome@latest` to 2.4.12.
## [2.75.14] - 2026-04-15
- Implement potential workaround for [windows-11-arm runner bug](https://github.com/actions/partner-runner-images/issues/169) which sometimes causes installation failure.
The issue where this bug affected the startup of bash was addressed in 2.71.2, but we received a report that the same problem seems to occur when starting other commands as well.
The issue where this bug affected the startup of bash was addressed in 2.71.2, but we received a report that the [same problem seems to occur when starting other commands as well](https://github.com/taiki-e/install-action/pull/1657#issuecomment-4252717651).
- Update `cargo-deny@latest` to 0.19.2.
@@ -6269,7 +6452,24 @@ Note: This release is considered a breaking change because installing on version
Initial release
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.75.14...HEAD
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.76.0...HEAD
[2.76.0]: https://github.com/taiki-e/install-action/compare/v2.75.30...v2.76.0
[2.75.30]: https://github.com/taiki-e/install-action/compare/v2.75.29...v2.75.30
[2.75.29]: https://github.com/taiki-e/install-action/compare/v2.75.28...v2.75.29
[2.75.28]: https://github.com/taiki-e/install-action/compare/v2.75.27...v2.75.28
[2.75.27]: https://github.com/taiki-e/install-action/compare/v2.75.26...v2.75.27
[2.75.26]: https://github.com/taiki-e/install-action/compare/v2.75.25...v2.75.26
[2.75.25]: https://github.com/taiki-e/install-action/compare/v2.75.24...v2.75.25
[2.75.24]: https://github.com/taiki-e/install-action/compare/v2.75.23...v2.75.24
[2.75.23]: https://github.com/taiki-e/install-action/compare/v2.75.22...v2.75.23
[2.75.22]: https://github.com/taiki-e/install-action/compare/v2.75.21...v2.75.22
[2.75.21]: https://github.com/taiki-e/install-action/compare/v2.75.20...v2.75.21
[2.75.20]: https://github.com/taiki-e/install-action/compare/v2.75.19...v2.75.20
[2.75.19]: https://github.com/taiki-e/install-action/compare/v2.75.18...v2.75.19
[2.75.18]: https://github.com/taiki-e/install-action/compare/v2.75.17...v2.75.18
[2.75.17]: https://github.com/taiki-e/install-action/compare/v2.75.16...v2.75.17
[2.75.16]: https://github.com/taiki-e/install-action/compare/v2.75.15...v2.75.16
[2.75.15]: https://github.com/taiki-e/install-action/compare/v2.75.14...v2.75.15
[2.75.14]: https://github.com/taiki-e/install-action/compare/v2.75.13...v2.75.14
[2.75.13]: https://github.com/taiki-e/install-action/compare/v2.75.12...v2.75.13
[2.75.12]: https://github.com/taiki-e/install-action/compare/v2.75.11...v2.75.12

View File

@@ -58,6 +58,17 @@ You can also omit patch version.
tool: cargo-hack@0.5
```
For some tools, we support installing additional components at the same time by `+<additional>` syntax:
```yaml
- uses: taiki-e/install-action@v2
with:
# Install rust stable with rustfmt component and wasm32-wasip1 target.
tool: rust+rustfmt+wasm32-wasip1
# When installing another rust version:
# tool: rust@nightly + rustfmt + wasm32-wasip1
```
To install multiple tools:
```yaml
@@ -73,6 +84,16 @@ Or:
- uses: taiki-e/install-action@cargo-minimal-versions
```
Tool names can also be separated with whitespaces (line, space, tab).
```yaml
- uses: taiki-e/install-action@v2
with:
tool: |
cargo-hack
cargo-minimal-versions
```
## Supported tools
See [TOOLS.md](TOOLS.md) for the list of tools that are installed from manifests managed in this action.
@@ -126,7 +147,11 @@ When installing with `tool: <tool_name>` or `tool: <tool_name>@<omitted_version>
<!-- omit in toc -->
### Security on other installation methods
See the linked documentation for information on security when installed using [snap](https://snapcraft.io/docs) or [cargo-binstall](https://github.com/cargo-bins/cargo-binstall#faq).
See the linked documentation for information on security when installed using [rustup](https://rust-lang.github.io/rustup/security.html), [snap](https://snapcraft.io/docs), or [cargo-binstall](https://github.com/cargo-bins/cargo-binstall#faq).
If the installation method is rustup and rustup is not yet installed, this action downloads [rustup-init for the current platform](https://rust-lang.github.io/rustup/installation/other.html#manual-installation) using HTTPS with tlsv1.2+, verifies SHA256 checksum, and then installs rustup using it.
If the installation method is cargo-binstall and cargo-binstall is not yet installed or outdated, this action installs cargo-binstall [from GitHub Releases](#security-on-installation-from-github-releases).
See the [Supported tools section](#supported-tools) for how to ensure that fallback is not used.

View File

@@ -16,9 +16,10 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- |
| [**auto-doc**](https://github.com/tj-actions/auto-doc) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/tj-actions/auto-doc/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/tj-actions/auto-doc/blob/main/LICENSE) |
| [**biome**](https://biomejs.dev) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/biomejs/biome/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/biomejs/biome/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/biomejs/biome/blob/main/LICENSE-MIT) |
| [**cargo-audit**](https://github.com/rustsec/rustsec/tree/HEAD/cargo-audit) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustsec/rustsec/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustsec/rustsec/blob/HEAD/cargo-audit/LICENSE-APACHE) OR [MIT](https://github.com/rustsec/rustsec/blob/HEAD/cargo-audit/LICENSE-MIT) |
| [**cargo-auditable**](https://github.com/rust-secure-code/cargo-auditable) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-secure-code/cargo-auditable/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rust-secure-code/cargo-auditable/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/rust-secure-code/cargo-auditable/blob/HEAD/LICENSE-MIT) |
| [**cargo-binstall**](https://github.com/cargo-bins/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-apple-runner**](https://github.com/madsmtm/cargo-apple-runner) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/madsmtm/cargo-apple-runner/releases) | macOS | [Zlib](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-ZLIB.txt) OR [Apache-2.0](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-APACHE.txt) OR [MIT](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-MIT.txt) |
| [**cargo-audit**](https://github.com/rustsec/rustsec/tree/HEAD/cargo-audit) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustsec/rustsec/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustsec/rustsec/blob/main/cargo-audit/LICENSE-APACHE) OR [MIT](https://github.com/rustsec/rustsec/blob/main/cargo-audit/LICENSE-MIT) |
| [**cargo-auditable**](https://github.com/rust-secure-code/cargo-auditable) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-secure-code/cargo-auditable/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rust-secure-code/cargo-auditable/blob/master/LICENSE-APACHE) OR [MIT](https://github.com/rust-secure-code/cargo-auditable/blob/master/LICENSE-MIT) |
| [**cargo-binstall**](https://github.com/cargo-bins/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/main/crates/bin/LICENSE) |
| [**cargo-careful**](https://github.com/RalfJung/cargo-careful) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/RalfJung/cargo-careful/releases) | Linux, macOS, Windows | [MIT](https://github.com/RalfJung/cargo-careful/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/RalfJung/cargo-careful/blob/master/LICENSE-APACHE) |
| [**cargo-cyclonedx**](https://github.com/CycloneDX/cyclonedx-rust-cargo) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/CycloneDX/cyclonedx-rust-cargo/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/CycloneDX/cyclonedx-rust-cargo/blob/main/LICENSE) |
| [**cargo-deadlinks**](https://github.com/deadlinks/cargo-deadlinks) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/deadlinks/cargo-deadlinks/releases) | Linux, macOS, Windows | [MIT](https://github.com/deadlinks/cargo-deadlinks/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/deadlinks/cargo-deadlinks/blob/master/LICENSE-APACHE) |
@@ -42,7 +43,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
| [**cargo-sort**](https://github.com/DevinR528/cargo-sort) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/DevinR528/cargo-sort/releases) | Linux, macOS, Windows | [Apache-2.0 OR MIT](https://github.com/DevinR528/cargo-sort/blob/v1.0.9/Cargo.toml#L5) |
| [**cargo-spellcheck**](https://github.com/drahnr/cargo-spellcheck) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/drahnr/cargo-spellcheck/releases) | Linux, Windows | [LGPLv2.1](https://github.com/drahnr/cargo-spellcheck/blob/master/LICENSE-LGPL) |
| [**cargo-tarpaulin**](https://github.com/xd009642/tarpaulin) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/xd009642/tarpaulin/releases) | Linux, macOS, Windows | [MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) OR [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE) |
| [**cargo-udeps**](https://github.com/est31/cargo-udeps) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/est31/cargo-udeps/releases) | Linux, macOS, Windows | [Apache-2.0 OR MIT](https://github.com/est31/cargo-udeps/blob/HEAD/LICENSE) |
| [**cargo-udeps**](https://github.com/est31/cargo-udeps) | `$CARGO_HOME/bin` | [GitHub Releases](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 Releases](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-xwin**](https://github.com/rust-cross/cargo-xwin) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-cross/cargo-xwin/releases) | Linux, macOS, Windows | [MIT](https://github.com/rust-cross/cargo-xwin/blob/main/LICENSE) |
| [**cargo-zigbuild**](https://github.com/rust-cross/cargo-zigbuild) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-cross/cargo-zigbuild/releases) | Linux, macOS, Windows | [MIT](https://github.com/rust-cross/cargo-zigbuild/blob/main/LICENSE) |
@@ -57,7 +58,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
| [**editorconfig-checker**](https://github.com/editorconfig-checker/editorconfig-checker) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/editorconfig-checker/editorconfig-checker/releases) | Linux, macOS, Windows | [MIT](https://github.com/editorconfig-checker/editorconfig-checker/blob/main/LICENSE) |
| [**espup**](https://github.com/esp-rs/espup) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/esp-rs/espup/releases) | Linux, macOS, Windows | [MIT](https://github.com/esp-rs/espup/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/esp-rs/espup/blob/main/LICENSE-APACHE) |
| [**git-cliff**](https://github.com/orhun/git-cliff) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/orhun/git-cliff/releases) | Linux, macOS, Windows | [MIT](https://github.com/orhun/git-cliff/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/orhun/git-cliff/blob/main/LICENSE-APACHE) |
| [**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) |
| [**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) |
| [**gungraun-runner**](https://gungraun.github.io/gungraun/) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/gungraun/gungraun/releases) | Linux | [Apache-2.0](https://github.com/gungraun/gungraun/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/gungraun/gungraun/blob/main/LICENSE-MIT) |
| [**hyperfine**](https://github.com/sharkdp/hyperfine) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sharkdp/hyperfine/releases) | Linux, macOS, Windows | [MIT](https://github.com/sharkdp/hyperfine/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/sharkdp/hyperfine/blob/master/LICENSE-APACHE) |
| [**iai-callgrind-runner**](https://gungraun.github.io/gungraun/) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/iai-callgrind/iai-callgrind/releases) | Linux | [Apache-2.0](https://github.com/iai-callgrind/iai-callgrind/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/iai-callgrind/iai-callgrind/blob/main/LICENSE-MIT) |
@@ -67,6 +68,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
| [**martin**](https://maplibre.org/martin/) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/maplibre/martin/releases) | Linux, macOS | [MIT](https://github.com/maplibre/martin/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/maplibre/martin/blob/main/LICENSE-APACHE) |
| [**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/master/LICENSE) |
| [**mdbook-alerts**](https://github.com/lambdalisue/rs-mdbook-alerts) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/lambdalisue/rs-mdbook-alerts/releases) | Linux, macOS, Windows | [MIT](https://github.com/lambdalisue/rs-mdbook-alerts/blob/main/LICENSE) |
| [**mdbook-d2**](https://github.com/danieleades/mdbook-d2) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/danieleades/mdbook-d2/releases) | Linux, macOS, Windows | [MIT](https://github.com/danieleades/mdbook-d2/blob/main/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/master/LICENSE) |
| [**mdbook-mermaid**](https://github.com/badboy/mdbook-mermaid) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/badboy/mdbook-mermaid/releases) | Linux, macOS, Windows | [MPL-2.0](https://github.com/badboy/mdbook-mermaid/blob/main/LICENSE) |
| [**mdbook-mermaid-ssr**](https://github.com/CommanderStorm/mdbook-mermaid-ssr) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/CommanderStorm/mdbook-mermaid-ssr/releases) | Linux, macOS, Windows | [MPL-2.0](https://github.com/CommanderStorm/mdbook-mermaid-ssr/blob/main/LICENSE) |
@@ -75,9 +77,10 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
| [**parse-changelog**](https://github.com/taiki-e/parse-changelog) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/parse-changelog/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-MIT) |
| [**parse-dockerfile**](https://github.com/taiki-e/parse-dockerfile) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/parse-dockerfile/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/parse-dockerfile/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/parse-dockerfile/blob/main/LICENSE-MIT) |
| [**prek**](https://github.com/j178/prek) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/j178/prek/releases) | Linux, macOS, Windows | [MIT](https://github.com/j178/prek/blob/master/LICENSE) |
| [**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) |
| [**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/main/LICENSE) |
| [**rclone**](https://github.com/rclone/rclone) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/rclone/rclone/releases) | Linux, macOS, Windows | [MIT](https://github.com/rclone/rclone/blob/master/COPYING) |
| [**release-plz**](https://release-plz.dev/) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/release-plz/release-plz/releases) | Linux, macOS, Windows | [MIT](https://github.com/release-plz/release-plz/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/release-plz/release-plz/blob/main/LICENSE-APACHE) |
| [**rust**](https://rust-lang.org) | `$CARGO_HOME/bin` | rustup | Linux, macOS, Windows | [Apache-2.0 OR MIT](https://github.com/rust-lang/rust/blob/main/COPYRIGHT) |
| [**sccache**](https://github.com/mozilla/sccache) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/mozilla/sccache/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/mozilla/sccache/blob/main/LICENSE) |
| [**shellcheck**](https://www.shellcheck.net) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/koalaman/shellcheck/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/koalaman/shellcheck/blob/master/LICENSE) |
| [**shfmt**](https://github.com/mvdan/sh) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/mvdan/sh/releases) | Linux, macOS, Windows | [BSD-3-Clause](https://github.com/mvdan/sh/blob/master/LICENSE) |

View File

@@ -22,7 +22,12 @@ runs:
using: composite
steps:
- run: |
set -eu
# If /bin/sh is dash, environment variable containing % is not imported, but is fine
# because it also means that it will not be exposed to subprocess.
if /usr/bin/env | grep -Eq '^BASH_FUNC_'; then
printf '::error::bash function injection via BASH_FUNC_ environment variable is not allowed for security reasons\n'
exit 1
fi
if ! command -v bash >/dev/null; then
if grep -Eq '^ID=alpine' /etc/os-release; then
printf '::group::Install packages required for install-action (bash)\n'
@@ -41,7 +46,7 @@ runs:
fi
fi
bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
shell: sh
shell: /usr/bin/env -u ENV -u BASH_ENV -u CDPATH -u SHELLOPTS -u BASHOPTS /bin/sh -eu {0} # zizmor: ignore[misfeature] false positive
env:
# NB: Sync with Windows case.
INPUT_TOOL: ${{ inputs.tool }}
@@ -49,11 +54,17 @@ runs:
INPUT_FALLBACK: ${{ inputs.fallback }}
DEFAULT_GITHUB_TOKEN: ${{ inputs.fallback == 'cargo-binstall' && github.token || '' }}
ACTION_USER_AGENT: ${{ github.action_repository }} (${{ github.action_ref }})
RUNNER_OS: ${{ runner.os }}
RUNNER_ARCH: ${{ runner.arch }}
if: runner.os != 'Windows'
# Use pwsh and retry on bash startup failure to work around windows-11-arm runner bug:
# https://github.com/actions/partner-runner-images/issues/169
- run: |
Set-StrictMode -Version Latest
$remove_env = @('ENV','BASH_ENV','CDPATH','SHELLOPTS','BASHOPTS','BASH_FUNC_*')
foreach ($name in $remove_env) {
if (Test-Path "Env:$name") { Remove-Item "Env:\$name" }
}
for ($i=1; $i -le 10; $i++) {
$prev_err_action = $ErrorActionPreference
$ErrorActionPreference = "Continue"
@@ -79,4 +90,6 @@ runs:
INPUT_FALLBACK: ${{ inputs.fallback }}
DEFAULT_GITHUB_TOKEN: ${{ inputs.fallback == 'cargo-binstall' && github.token || '' }}
ACTION_USER_AGENT: ${{ github.action_repository }} (${{ github.action_ref }})
RUNNER_OS: ${{ runner.os }}
RUNNER_ARCH: ${{ runner.arch }}
if: runner.os == 'Windows'

312
main.sh
View File

@@ -9,6 +9,14 @@ rx() {
"$@"
)
}
g() {
IFS=' '
local cmd="$*"
IFS=$'\n\t'
printf '::group::%s\n' "${cmd#retry }"
"$@"
printf '::endgroup::\n'
}
retry() {
for i in {1..10}; do
if "$@"; then
@@ -35,11 +43,11 @@ normalize_comma_or_space_separated() {
if [[ "${list}" == *","* ]]; then
# If a comma is contained, consider it is a comma-separated list.
# Drop leading and trailing whitespaces in each element.
sed -E 's/ *, */,/g; s/^.//; s/,,$/,/' <<<",${list},"
sed -E 's/ *\+ */+/g; s/ *, */,/g; s/^.//; s/,,$/,/' <<<",${list},"
else
# Otherwise, consider it is a whitespace-separated list.
# Convert whitespace characters into comma.
sed -E 's/ +/,/g; s/^.//' <<<" ${list} "
sed -E 's/ *\+ */+/g; s/ +/,/g; s/^.//' <<<" ${list} "
fi
}
_sudo() {
@@ -448,15 +456,72 @@ init_install_action_bin_dir() {
}
canonicalize_windows_path() {
case "${host_os}" in
windows) sed -E 's/^\/cygdrive\//\//; s/^\/c\//C:\\/; s/\//\\/g' <<<"$1" ;;
windows)
local t="$1"
if [[ "${t}" == '/cygdrive/'* ]]; then
t="${t#/cygdrive}"
fi
if [[ "${t}" == '/c/'* ]]; then
t="${t/\/c\//C:\\}"
fi
printf '%s\n' "${t//\//\\}"
;;
*) printf '%s\n' "$1" ;;
esac
}
# Refs: https://github.com/rust-lang/rustup/blob/HEAD/rustup-init.sh
if [[ $# -gt 0 ]]; then
bail "invalid argument '$1'"
fi
# Inputs
tool="${INPUT_TOOL:-}"
tools=()
if [[ -n "${tool}" ]]; then
while read -rd,; do
tools+=("${REPLY}")
done < <(normalize_comma_or_space_separated "${tool}")
fi
if [[ ${#tools[@]} -eq 0 ]]; then
warn "no tool specified; this could be caused by a dependabot bug where @<tool_name> tags on this action are replaced by @<version> tags"
# Exit with 0 for backward compatibility.
# TODO: We want to reject it in the next major release.
exit 0
fi
enable_checksum="${INPUT_CHECKSUM:-}"
case "${enable_checksum}" in
true) ;;
false)
enable_checksum=''
warn "checksums have been disabled by 'checksum' input option; this is strongly discouraged for security reasons"
;;
*) bail "'checksum' input option must be 'true' or 'false': '${enable_checksum}'" ;;
esac
fallback="${INPUT_FALLBACK:-}"
case "${fallback}" in
none | cargo-binstall | cargo-install) ;;
*) bail "'fallback' input option must be 'none', 'cargo-binstall', or 'cargo-install': '${fallback}'" ;;
esac
# Unlike gh command, cargo-binstall reads GITHUB_TOKEN first via cli parser, and then reads GH_TOKEN.
# https://github.com/cargo-bins/cargo-binstall/blob/v1.17.9/crates/bin/src/args.rs#L704
token="${GITHUB_TOKEN:-"${GH_TOKEN:-"${DEFAULT_GITHUB_TOKEN:-}"}"}"
# This prevents tokens from being exposed to subprocesses via environment variables.
# Since the tokens remain in memory, setting `fallback: none` (which prevents the tokens from being
# set in the first place) remains the best practice from a security standpoint, as readme says.
# Note that this does not prevent token leaks via reading `/proc/*/environ` on Linux or
# via `ps -Eww` on macOS. It only reduces the risk of leaks.
unset GITHUB_TOKEN GH_TOKEN DEFAULT_GITHUB_TOKEN
# Refs:
# - https://github.com/rust-lang/rustup/blob/HEAD/rustup-init.sh
# - https://docs.github.com/en/actions/reference/workflows-and-actions/contexts#runner-context
# NB: Sync with tools/ci/tool-list.sh.
base_distro=''
exe=''
case "$(uname -s)" in
case "${RUNNER_OS}" in
Linux)
host_os=linux
ldd_version=$(ldd --version 2>&1 || true)
@@ -506,16 +571,15 @@ case "$(uname -s)" in
;;
esac
;;
Darwin) host_os=macos ;;
MINGW* | MSYS* | CYGWIN* | Windows_NT)
macOS) host_os=macos ;;
Windows)
host_os=windows
exe=.exe
;;
*) bail "unrecognized OS type '$(uname -s)'" ;;
*) bail "unrecognized runner.os '${RUNNER_OS}'" ;;
esac
# NB: Sync with tools/ci/tool-list.sh.
case "$(uname -m)" in
aarch64 | arm64) host_arch=aarch64 ;;
case "${RUNNER_ARCH}" in
X64) host_arch=x86_64 ;;
# Ignore 32-bit Arm for now, as we need to consider the version and whether hard-float is supported.
# https://github.com/rust-lang/rustup/pull/593
# https://github.com/cross-rs/cross/pull/1018
@@ -524,21 +588,28 @@ case "$(uname -m)" in
# Does it seem only armv7l+ is supported?
# https://github.com/actions/runner/blob/v2.321.0/src/Misc/externals.sh#L178
# https://github.com/actions/runner/issues/688
xscale | arm | armv*l) 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>" ;;
ppc64le) host_arch=powerpc64le ;;
riscv64) host_arch=riscv64 ;;
s390x) host_arch=s390x ;;
# Very few tools provide prebuilt binaries for these.
# TODO: fallback to `cargo install`? (binstall fallback is not good idea here as cargo-binstall doesn't provide prebuilt binaries for these.)
loongarch64 | mips | mips64 | ppc | ppc64 | sun4v) bail "$(uname -m) 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 x86_64/AArch64/Arm Linux and x86_64/AArch64 Windows/macOS.
# https://github.com/actions/runner/blob/v2.332.0/.github/workflows/build.yml#L24
# https://docs.github.com/en/actions/reference/runners/self-hosted-runners#supported-processor-architectures
# And IBM provides runners for powerpc64le/s390x Linux.
# https://github.com/IBM/actionspz
# So we can assume x86_64 unless it has a known non-x86_64 uname -m result.
# TODO: uname -m on windows-11-arm returns "x86_64"
*) host_arch=x86_64 ;;
ARM) 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>" ;;
ARM64) host_arch=aarch64 ;;
*)
info "unrecognized runner.arch '${RUNNER_ARCH}'; fallback to uname -m"
case "$(uname -m)" in
aarch64 | arm64) host_arch=aarch64 ;;
xscale | arm | armv*l) 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>" ;;
ppc64le) host_arch=powerpc64le ;;
riscv64) host_arch=riscv64 ;;
s390x) host_arch=s390x ;;
# Very few tools provide prebuilt binaries for these.
# TODO: fallback to `cargo install`? (binstall fallback is not good idea here as cargo-binstall doesn't provide prebuilt binaries for these.)
loongarch64 | mips | mips64 | ppc | ppc64 | sun4v) bail "$(uname -m) 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 x86_64/AArch64/Arm Linux and x86_64/AArch64 Windows/macOS.
# https://github.com/actions/runner/blob/v2.332.0/.github/workflows/build.yml#L24
# https://docs.github.com/en/actions/reference/runners/self-hosted-runners#supported-processor-architectures
# And IBM provides runners for powerpc64le/s390x Linux.
# https://github.com/IBM/actionspz
# So we can assume x86_64 unless it has a known non-x86_64 uname -m result.
*) host_arch=x86_64 ;;
esac
;;
esac
info "host platform: ${host_arch}_${host_os}"
@@ -571,7 +642,7 @@ cargo_path=$(type -P cargo || true)
if [[ "${host_os}" == "windows" ]]; then
mkdir -p -- "${install_action_dir}"
# See action.yml.
touch -- "${install_action_dir}"/init
printf '' >|"${install_action_dir}"/init
if [[ -n "${cargo_path}" ]]; then
info "cargo is located at ${cargo_path}"
cargo_bin="${cargo_path%/*}"
@@ -591,52 +662,9 @@ fi
export CARGO_NET_RETRY=10
export RUSTUP_MAX_RETRIES=10
if [[ $# -gt 0 ]]; then
bail "invalid argument '$1'"
fi
export DEBIAN_FRONTEND=noninteractive
manifest_dir="${GITHUB_ACTION_PATH}/manifests"
# Inputs
tool="${INPUT_TOOL:-}"
tools=()
if [[ -n "${tool}" ]]; then
while read -rd,; do
tools+=("${REPLY}")
done < <(normalize_comma_or_space_separated "${tool}")
fi
if [[ ${#tools[@]} -eq 0 ]]; then
warn "no tool specified; this could be caused by a dependabot bug where @<tool_name> tags on this action are replaced by @<version> tags"
# Exit with 0 for backward compatibility.
# TODO: We want to reject it in the next major release.
exit 0
fi
enable_checksum="${INPUT_CHECKSUM:-}"
case "${enable_checksum}" in
true) ;;
false)
enable_checksum=''
warn "checksums have been disabled by 'checksum' input option; this is strongly discouraged for security reasons"
;;
*) bail "'checksum' input option must be 'true' or 'false': '${enable_checksum}'" ;;
esac
fallback="${INPUT_FALLBACK:-}"
case "${fallback}" in
none | cargo-binstall | cargo-install) ;;
*) bail "'fallback' input option must be 'none', 'cargo-binstall', or 'cargo-install': '${fallback}'" ;;
esac
# Unlike gh command, cargo-binstall reads GITHUB_TOKEN first via cli parser, and then reads GH_TOKEN.
# https://github.com/cargo-bins/cargo-binstall/blob/v1.17.9/crates/bin/src/args.rs#L704
token="${GITHUB_TOKEN:-"${GH_TOKEN:-"${DEFAULT_GITHUB_TOKEN:-}"}"}"
# This prevents tokens from being exposed to subprocesses via environment variables.
# Since the tokens remain in memory, setting `fallback: none` (which prevents the tokens from being
# set in the first place) remains the best practice from a security standpoint, as readme says.
unset GITHUB_TOKEN GH_TOKEN DEFAULT_GITHUB_TOKEN
case "${host_os}" in
linux)
if ! type -P jq >/dev/null || ! type -P curl >/dev/null || ! type -P tar >/dev/null; then
@@ -716,20 +744,149 @@ esac
unsupported_tools=()
for tool in "${tools[@]}"; do
if [[ "${tool}" == *"@"* ]]; then
additional=''
if [[ "${tool}" == *'+'* ]]; then
additional="${tool#*+}"
tool="${tool%%+*}"
fi
if [[ "${tool}" == *'@'* ]]; then
version="${tool#*@}"
tool="${tool%@*}"
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\.-]+)?$|^latest$ ]]; then
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}'"
if [[ "${tool}" != 'rust' ]]; then
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\.-]+)?$|^latest$ ]]; then
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 build-metadata: '${version}'; if you need these supports again, please submit an issue at <https://github.com/taiki-e/install-action>"
fi
bail "install-action v2 does not support semver 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
fi
if [[ -n "${additional}" ]]; then
case "${tool}" in
rust) ;;
*) bail "<tool_name>+<additional> syntax is not supported for ${tool}" ;;
esac
fi
installed_bin=()
case "${tool}" in
rust)
if [[ "${version}" == 'latest' ]]; then
version=stable
fi
info "installing ${tool}@${version}"
export RUSTUP_MAX_RETRIES="${RUSTUP_MAX_RETRIES:-10}"
rustup_args=(--profile minimal)
if [[ -n "${additional}" ]]; then
component=''
target=''
while read -rd+; do
case "${REPLY}" in
# Last checked: nightly-2026-05-03
# rustup component list
# rustup target list
cargo | cargo-* | clippy | clippy-* | llvm-* | miri | miri-* | rust-* | rustc-* | rustfmt | rustfmt-*) component+=",${REPLY}" ;;
*) target+=",${REPLY}" ;;
esac
done <<<"${additional}+"
if [[ -n "${component}" ]]; then
if [[ "${component}," == *',miri,'* ]] && [[ "${component}," != *',rust-src,'* ]]; then
component+=',rust-src'
fi
rustup_args+=(--component "${component#,}")
fi
if [[ -n "${target}" ]]; then
rustup_args+=(--target "${target#,}")
fi
fi
if type -P rustup >/dev/null; then
# --no-self-update is necessary because the windows environment cannot self-update rustup.exe.
g retry rustup toolchain add "${version}" --no-self-update "${rustup_args[@]}"
g rustup default "${version}"
else
# https://github.com/rust-lang/rustup/tags
# Run tools/rustup-hash.sh to get sha256 hash.
rustup_version=1.29.0
# https://rust-lang.github.io/rustup/installation/other.html#manual-installation
rust_target=''
checksum=''
case "${host_os}" in
linux)
rust_target="${host_arch}-unknown-${host_os}-${host_env}"
case "${host_arch}" in
x86_64)
case "${host_env}" in
gnu) checksum=4acc9acc76d5079515b46346a485974457b5a79893cfb01112423c89aeb5aa10 ;;
musl) checksum=9cd3fda5fd293890e36ab271af6a786ee22084b5f6c2b83fd8323cec6f0992c1 ;;
esac
;;
aarch64)
case "${host_env}" in
gnu) checksum=9732d6c5e2a098d3521fca8145d826ae0aaa067ef2385ead08e6feac88fa5792 ;;
musl) checksum=88761caacddb92cd79b0b1f939f3990ba1997d701a38b3e8dd6746a562f2a759 ;;
esac
;;
powerpc64le)
case "${host_env}" in
gnu) checksum=4bfff85bd3967d988e14567aa9cc6ab0ea386f0ffeff0f9f14d23f0103bf1f97 ;;
musl) checksum=e15d033af90b7a55d170aac2d82cc28ddd96dbfcdda7c6d4eb8cb064a99c4646 ;;
esac
;;
riscv64)
rust_target="${host_arch}gc-unknown-${host_os}-${host_env}"
# riscv64gc-unknown-linux-musl is tier 2 without host tools
case "${host_env}" in
gnu) checksum=7e43f2b2e6307d61da17a4dff61e6bceef408b8189822df64e1094590d2a70f9 ;;
esac
;;
s390x)
# s390x-unknown-linux-musl is tier 3
case "${host_env}" in
gnu) checksum=66c2c132428b6b77803facb02cbdf33b89d20c00bd20da142be8cb651f2e7cd8 ;;
esac
;;
esac
;;
macos)
rust_target="${host_arch}-apple-darwin"
case "${host_arch}" in
x86_64) checksum=33cf85df9142bc6d29cbc62fa5ca1d4c29622cddb55213a4c1a43c457fb9b2d7 ;;
aarch64) checksum=aeb4105778ca1bd3c6b0e75768f581c656633cd51368fa61289b6a71696ac7e1 ;;
esac
;;
windows)
rust_target="${host_arch}-pc-windows-msvc"
case "${host_arch}" in
x86_64) checksum=86478e53f769379d7f0ebfa7c9aa97cb76ca92233f79aa2cc0dbee2efaac73c7 ;;
aarch64) checksum=3af309e6c3062aa11df0e932954f69d13b734d8a431e593812f3ecd9ff9e6ef6 ;;
esac
;;
esac
if [[ -z "${rust_target}" ]] || [[ -z "${checksum}" ]]; then
bail "unsupported host platform ${host_arch}_${host_os} for ${tool}"
fi
url="https://static.rust-lang.org/rustup/archive/${rustup_version}/${rust_target}/rustup-init${exe}"
mkdir -p -- "${tmp_dir}"
(
cd -- "${tmp_dir}"
download_and_checksum "${url}" "${checksum}"
mv -- tmp rustup-init
case "${host_os}" in
linux | macos) chmod +x ./rustup-init ;;
esac
g retry ./rustup-init -y --default-toolchain "${version}" --no-modify-path "${rustup_args[@]}"
)
rm -rf -- "${tmp_dir}"
cargo_bin_dir="${CARGO_HOME:-"${home}/.cargo"}/bin"
export PATH="${PATH}:${cargo_bin_dir}"
cargo_bin_dir=$(canonicalize_windows_path "${cargo_bin_dir}")
info "adding '${cargo_bin_dir}' to PATH"
printf '%s\n' "${cargo_bin_dir}" >>"${GITHUB_PATH}"
cargo_path=$(type -P cargo || true)
fi
installed_bin=("rustc${exe}" "cargo${exe}")
;;
protoc)
info "installing ${tool}@${version}"
read_manifest "protoc" "${version}"
@@ -878,7 +1035,7 @@ for tool in "${tools[@]}"; do
# gungraun-runner up to 0.17.1 (exclusive) does not support --version flag.
biome | cargo-machete | wait-for-them | gungraun-runner) rx "${tool_bin_stem}" --version || true ;;
# these packages support neither --version nor --help flag.
cargo-auditable | cargo-careful | wasm-bindgen-test-runner) ;;
cargo-auditable | cargo-careful | wasm-bindgen-test-runner | cargo-apple-runner) ;;
# wasm2es6js does not support --version flag and --help flag doesn't contains version info.
wasm2es6js) ;;
# iai-callgrind-runner --version works only with iai-callgrind in nearby Cargo.toml.
@@ -914,7 +1071,7 @@ if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
none) bail "install-action does not support ${unsupported_tools[*]} (fallback is disabled by 'fallback: none' input option)" ;;
cargo-binstall)
case "${host_arch}" in
x86_64 | aarch64) ;;
x86_64 | aarch64 | riscv64) ;;
*)
info "cargo-binstall does not provide prebuilt binaries for this platform (${host_arch}); use 'cargo-install' fallback instead"
fallback=cargo-install
@@ -991,7 +1148,6 @@ if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
fi
if [[ -z "${cargo_path}" ]]; then
_bin_dir=$(canonicalize_windows_path "${home}/.cargo/bin")
# TODO: avoid this when already added
info "adding '${_bin_dir}' to PATH"
printf '%s\n' "${_bin_dir}" >>"${GITHUB_PATH}"
fi

82
manifests/biome.json generated
View File

@@ -2,13 +2,89 @@
"rust_crate": null,
"template": null,
"latest": {
"version": "2.4.11"
"version": "2.4.14"
},
"2": {
"version": "2.4.11"
"version": "2.4.14"
},
"2.4": {
"version": "2.4.11"
"version": "2.4.14"
},
"2.4.14": {
"x86_64_linux_musl": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.14/biome-linux-x64-musl",
"etag": "0x8DEA7B7382C3BD2",
"hash": "c3b6f38eccb72a9d41afb5a3b38976f590380111cb3e878bf9121f998e8c274e",
"bin": "biome"
},
"x86_64_macos": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.14/biome-darwin-x64",
"etag": "0x8DEA7B738245577",
"hash": "dc835f90255a5c9c1734d3adb07ac142396187953545029e0aeab82177e466c6",
"bin": "biome"
},
"x86_64_windows": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.14/biome-win32-x64.exe",
"etag": "0x8DEA7B738D2BCE3",
"hash": "6aad48b69bb0699394f93c34fc700bf1b20130aeb7101e52fccf5d306b65ab92",
"bin": "biome.exe"
},
"aarch64_linux_musl": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.14/biome-linux-arm64-musl",
"etag": "0x8DEA7B738307CC9",
"hash": "756b7d7dbd3d5d857c40638776f930c234bc69f6f5c0ed13c8acedfb87147bac",
"bin": "biome"
},
"aarch64_macos": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.14/biome-darwin-arm64",
"etag": "0x8DEA7B73802C26A",
"hash": "13895170d26b0a9818532b84f33e04a2980b46cbb7e86d43ecc606c6bd1b1e63",
"bin": "biome"
},
"aarch64_windows": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.14/biome-win32-arm64.exe",
"etag": "0x8DEA7B738F3DB34",
"hash": "1f2d2f78dcf05ea708314608ff567b3412a85bfcd8c09ec555cee0b8a60bf5ae",
"bin": "biome.exe"
}
},
"2.4.13": {
"x86_64_linux_musl": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.13/biome-linux-x64-musl",
"etag": "0x8DEA14EF44907A9",
"hash": "a1939a267e2077dadd9134cfa582a2f3ca153f06f882c30d37314fea187667fc",
"bin": "biome"
},
"x86_64_macos": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.13/biome-darwin-x64",
"etag": "0x8DEA14EF441E3C2",
"hash": "2180d3467d67773daccea90855d8d65e1026ffa429ceba3edcb4553c8664627b",
"bin": "biome"
},
"x86_64_windows": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.13/biome-win32-x64.exe",
"etag": "0x8DEA14EF473DF10",
"hash": "bc7d1f26be936aec1423f70ed94fd8c5aa80c3ba199d991dcaf13476daa5f786",
"bin": "biome.exe"
},
"aarch64_linux_musl": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.13/biome-linux-arm64-musl",
"etag": "0x8DEA14EF500B376",
"hash": "948bbe5fb63d95372d391d42694ce5d553032f66043a178221166da2a76e8614",
"bin": "biome"
},
"aarch64_macos": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.13/biome-darwin-arm64",
"etag": "0x8DEA14EF41FB52C",
"hash": "22eb03789d405ea84e7b01192a9b5a4885802468dd0f369613837f5b5935178b",
"bin": "biome"
},
"aarch64_windows": {
"url": "https://github.com/biomejs/biome/releases/download/%40biomejs/biome%402.4.13/biome-win32-arm64.exe",
"etag": "0x8DEA14EF44782BD",
"hash": "4ebfc108a649076b45d04ebb2a6b8a6642ab2180da893b70a5c42b15d4154da6",
"bin": "biome.exe"
}
},
"2.4.12": {
"x86_64_linux_musl": {

26
manifests/cargo-apple-runner.json generated Normal file
View File

@@ -0,0 +1,26 @@
{
"rust_crate": "cargo-apple-runner",
"template": {
"x86_64_macos": {
"url": "https://github.com/madsmtm/cargo-apple-runner/releases/download/v${version}/cargo-apple-runner-x86_64-apple-darwin.tar.gz",
"bin": "cargo-apple-runner"
},
"aarch64_macos": {
"url": "https://github.com/madsmtm/cargo-apple-runner/releases/download/v${version}/cargo-apple-runner-aarch64-apple-darwin.tar.gz",
"bin": "cargo-apple-runner"
}
},
"latest": {
"version": "0.0.1"
},
"0.0.1": {
"x86_64_macos": {
"etag": "0x8DE9E56906B2739",
"hash": "66e53e60e1502d6c6e57aed9c423ecbe9f155fbcee56824a20eb72c49136a554"
},
"aarch64_macos": {
"etag": "0x8DE9E56816E1F2D",
"hash": "58b94a77328568eff1c8d1216f51933c0753d20365b2284cf3a1dca843a6d0c1"
}
}
}

View File

@@ -18,6 +18,9 @@
},
"aarch64_windows": {
"url": "https://github.com/cargo-bins/cargo-binstall/releases/download/v${version}/cargo-binstall-aarch64-pc-windows-msvc.zip"
},
"riscv64_linux_musl": {
"url": "https://github.com/cargo-bins/cargo-binstall/releases/download/v${version}/cargo-binstall-riscv64gc-unknown-linux-musl.tgz"
}
},
"latest": {
@@ -47,6 +50,10 @@
"aarch64_windows": {
"etag": "0x8DE9959EAAC5732",
"hash": "c6873e81457d9e44973a8e9a849795f2c83765fce0af8ad68b597b5b40dec418"
},
"riscv64_linux_musl": {
"etag": "0x8DE9959DFE57CE6",
"hash": "3eb039f14fa71dd27b614bf692f0bffd4ba087204829805d54b014646aed7c14"
}
}
}

View File

@@ -7,13 +7,28 @@
}
},
"latest": {
"version": "3.6.3"
"version": "3.7.0"
},
"3": {
"version": "3.6.3"
"version": "3.7.0"
},
"3.7": {
"version": "3.7.0"
},
"3.7.0": {
"x86_64_linux_gnu": {
"etag": "0x8DEA87CE0C3370E",
"hash": "e61273031c84b6ef2ca3fb259b594d34d2b592e1c6bc378c1249380c53e5b05e"
}
},
"3.6": {
"version": "3.6.3"
"version": "3.6.4"
},
"3.6.4": {
"x86_64_linux_gnu": {
"etag": "0x8DEA528E26D5EF0",
"hash": "3a95dff12baba70efe3a050a3ad94149ace73114c5af988d34073183e09dd584"
}
},
"3.6.3": {
"x86_64_linux_gnu": {

View File

@@ -23,10 +23,10 @@
}
},
"latest": {
"version": "0.19.2"
"version": "0.19.4"
},
"0.19": {
"version": "0.19.2"
"version": "0.19.4"
},
"0.19.4": {
"x86_64_linux_musl": {

View File

@@ -2,10 +2,42 @@
"rust_crate": "cargo-machete",
"template": null,
"latest": {
"version": "0.9.1"
"version": "0.9.2"
},
"0.9": {
"version": "0.9.1"
"version": "0.9.2"
},
"0.9.2": {
"x86_64_linux_musl": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.9.2/cargo-machete-v0.9.2-x86_64-unknown-linux-musl.tar.gz",
"etag": "0x8DE9B0EC4E4A16A",
"hash": "48200087f54c55aabcd4db4af1e25742b49846c02a1b1bfa134711945b35b2e9",
"bin": "cargo-machete-v0.9.2-x86_64-unknown-linux-musl/cargo-machete"
},
"x86_64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.9.2/cargo-machete-v0.9.2-x86_64-apple-darwin.tar.gz",
"etag": "0x8DE9B0EC263ACC1",
"hash": "3e8cb936c9b820f84d047a2b5be8b229b2be67bf2467014885376a6faffdcac3",
"bin": "cargo-machete-v0.9.2-x86_64-apple-darwin/cargo-machete"
},
"x86_64_windows": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.9.2/cargo-machete-v0.9.2-x86_64-pc-windows-msvc.tar.gz",
"etag": "0x8DE9B0EDA735250",
"hash": "996120ac70afe405c58fce508a476f25bb71032c6fb8013aa0123bba36429c76",
"bin": "cargo-machete-v0.9.2-x86_64-pc-windows-msvc/cargo-machete.exe"
},
"aarch64_linux_gnu": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.9.2/cargo-machete-v0.9.2-aarch64-unknown-linux-gnu.tar.gz",
"etag": "0x8DE9B0EB0A844A7",
"hash": "6f96c3e6026a5bdd241b6ae600c6fb86c9197c6e189a894f91371baa01fd10f5",
"bin": "cargo-machete-v0.9.2-aarch64-unknown-linux-gnu/cargo-machete"
},
"aarch64_macos": {
"url": "https://github.com/bnjbvr/cargo-machete/releases/download/v0.9.2/cargo-machete-v0.9.2-aarch64-apple-darwin.tar.gz",
"etag": "0x8DE9B0EC004E6C0",
"hash": "63e28fee386d82d33f2d12406c857f98e2d4697f3f7df7f71f34dff07fca0fde",
"bin": "cargo-machete-v0.9.2-aarch64-apple-darwin/cargo-machete"
}
},
"0.9.1": {
"x86_64_linux_musl": {

View File

@@ -27,10 +27,10 @@
}
},
"latest": {
"version": "0.9.132"
"version": "0.9.133"
},
"0.9": {
"version": "0.9.132"
"version": "0.9.133"
},
"0.9.133": {
"previous_stable_version": "0.9.132",

View File

@@ -15,13 +15,27 @@
}
},
"latest": {
"version": "2.1.3"
"version": "2.1.4"
},
"2": {
"version": "2.1.3"
"version": "2.1.4"
},
"2.1": {
"version": "2.1.3"
"version": "2.1.4"
},
"2.1.4": {
"x86_64_linux_gnu": {
"etag": "0x8DEA2B427453DC9",
"hash": "c10fdf954e51221d63743884aaf6ee5d576464abdc4965b395e3ec26948072ee"
},
"x86_64_windows": {
"etag": "0x8DEA2B44F072C94",
"hash": "0c59ef2433e523e060909cdfa678969eaa81a44fdc4313cb5a1a9592e8ded2b3"
},
"aarch64_macos": {
"etag": "0x8DEA2B420DAFA52",
"hash": "d2091a14be8482d8771ac379ef46a9501d678cee000a5e855490009fad3a65a3"
}
},
"2.1.3": {
"x86_64_linux_gnu": {

View File

@@ -1,35 +1,54 @@
{
"rust_crate": "cargo-spellcheck",
"template": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v${version}/cargo-spellcheck-v${version}-x86_64-unknown-linux-gnu"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v${version}/cargo-spellcheck-v${version}-x86_64-pc-windows-gnu.exe"
}
},
"template": null,
"latest": {
"version": "0.15.1"
"version": "0.15.7"
},
"0.15": {
"version": "0.15.1"
"version": "0.15.7"
},
"0.15.7": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.7/cargo-spellcheck-v0.15.7-x86_64-unknown-linux-gnu",
"etag": "0x8DEA7C00640F8EA",
"hash": "6c944067adde19558aff6b6eb0003e82a95a52ac9dd75465ba3df894eeac5b74"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.7/cargo-spellcheck-v0.15.7-x86_64-pc-windows-msvc.exe",
"etag": "0x8DEA7C002803985",
"hash": "fef4eae8bd21d1edac52b00c7729fbabd7ad47bb6053e29025d62adb2746c93f"
},
"aarch64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.7/cargo-spellcheck-v0.15.7-aarch64-unknown-linux-gnu",
"etag": "0x8DEA7C0074205C5",
"hash": "22c5ea30ca4bc86004022cffb671bdbf971d66f2dd564397e8a7647cadcf3ec8"
},
"aarch64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.7/cargo-spellcheck-v0.15.7-aarch64-pc-windows-msvc.exe",
"etag": "0x8DEA7C002536910",
"hash": "cc72699c01f192f160d2c402fa44efdd56b9ff5856c5b1d4cd5af1631ded48a3"
}
},
"0.15.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.2/cargo-spellcheck-v0.15.2-x86_64-unknown-linux-gnu",
"etag": "0x8DD4A85530EF13A",
"hash": "9b36eb04e83aaea2c943064fbb2e5a04d37a46bcf51dfd99495b74b09ff56455"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.2/cargo-spellcheck-v0.15.2-x86_64-pc-windows-gnu.exe",
"etag": "0x8DD4A8564500872",
"hash": "5d70eac68be1dae5fb69439217581f79e642867ddd4b67ba258e224de6ff82a2"
}
},
"0.15.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.1/cargo-spellcheck-v0.15.1-x86_64-unknown-linux-gnu",
"etag": "0x8DD49AEF852F898",
"hash": "b96e4e73babd959aa138d1629b143180e83ebd8461064fa68e99e2e961560029"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.15.1/cargo-spellcheck-v0.15.1-x86_64-pc-windows-gnu.exe",
"etag": "0x8DD49AF09E6176C",
"hash": "53e697b1016880ffe864dfba9fda68c050694644267557450881d52d9eed987d"
}
@@ -39,10 +58,12 @@
},
"0.14.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.14.0/cargo-spellcheck-v0.14.0-x86_64-unknown-linux-gnu",
"etag": "0x8DC6466EF3038F3",
"hash": "6f35073843f2eb87990ef19c841c61ded5263e3a7ff38f885cfab22193b84f13"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.14.0/cargo-spellcheck-v0.14.0-x86_64-pc-windows-gnu.exe",
"etag": "0x8DC646705A424A4",
"hash": "ad97a1471b7e718902ec385c3ad045a6afbc986f736d0c4986855ec99a79c80c"
}
@@ -52,30 +73,36 @@
},
"0.13.2": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.13.2/cargo-spellcheck-v0.13.2-x86_64-unknown-linux-gnu",
"etag": "0x8DC0E0760B5DD94",
"hash": "f547b8f992dcc43f8a4106bae8b090ecb3fcb7ef6ce336081c22636f70e876d9"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.13.2/cargo-spellcheck-v0.13.2-x86_64-pc-windows-gnu.exe",
"etag": "0x8DC0E07751C8D13",
"hash": "f54fb8243497258115d1eb55b99bfc94ab3e09636c78665d3b6410885ba9190a"
}
},
"0.13.1": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.13.1/cargo-spellcheck-v0.13.1-x86_64-unknown-linux-gnu",
"etag": "0x8DBC987279A3734",
"hash": "17af34dbefad5c45d23df3e4e81b0addc78782db0ed2e8e491a1532761463e1e"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.13.1/cargo-spellcheck-v0.13.1-x86_64-pc-windows-gnu.exe",
"etag": "0x8DBC9875250341E",
"hash": "d18c19a3c5e7eb9ea516e691b54a4517a60517b6b1fb75b7f56a0c1dcc9b177e"
}
},
"0.13.0": {
"x86_64_linux_gnu": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.13.0/cargo-spellcheck-v0.13.0-x86_64-unknown-linux-gnu",
"etag": "0x8DB98F2A6C10BCB",
"hash": "41e99240e55f38cc6d43d7ea9f2ccd448f584eefdc262129e4238f057d995923"
},
"x86_64_windows": {
"url": "https://github.com/drahnr/cargo-spellcheck/releases/download/v0.13.0/cargo-spellcheck-v0.13.0-x86_64-pc-windows-gnu.exe",
"etag": "0x8DB98F240CB78CC",
"hash": "57d45d5942d7ccd49599aae549c0bd5d906868eaeb39481088e55001d65f4784"
}

View File

@@ -18,10 +18,54 @@
}
},
"latest": {
"version": "0.35.2"
"version": "0.35.4"
},
"0.35": {
"version": "0.35.2"
"version": "0.35.4"
},
"0.35.4": {
"x86_64_linux_musl": {
"etag": "0x8DEA2A058109F8F",
"hash": "bc60f0668389edd48b112c4ecc7374d3180f522cf933b7fcb3486a447f24aef8"
},
"x86_64_macos": {
"etag": "0x8DEA29FED382280",
"hash": "a48eb40fc541a440ac0e62a22bfb7984819a1409591b4ce7e20d3d1a01625e96"
},
"x86_64_windows": {
"etag": "0x8DEA29FE6F1DA8E",
"hash": "6d51cfca33da65079392c55b2506705f8dcf518337a9a68f619d4de14c5aa5e6"
},
"aarch64_linux_musl": {
"etag": "0x8DEA29FD9717357",
"hash": "0ca28350061a6b3f4e40685472434ba56082de992022b667ec7fdb5433f186c6"
},
"aarch64_macos": {
"etag": "0x8DEA2A01A31E15B",
"hash": "fd4433bd3d5e930cda6571b2b2cded2d859ee8cb10bc72245201bada707999b8"
}
},
"0.35.3": {
"x86_64_linux_musl": {
"etag": "0x8DEA298DDF784C5",
"hash": "1728506eff323e9e6908fa4de88f931f4c52a46f4bdb87a768bab819ae3a1ee0"
},
"x86_64_macos": {
"etag": "0x8DEA2985EB8F923",
"hash": "f1373a539becba1604f12b10fafd42ec3818b30075696f6785b1c880f1d44222"
},
"x86_64_windows": {
"etag": "0x8DEA2985F93E3F9",
"hash": "728df0c01ed906a66df6da57d52b4427e3fe52e0684ec8d1ce6d353b48bf8a69"
},
"aarch64_linux_musl": {
"etag": "0x8DEA298D6C6614C",
"hash": "34843dd46fdf13988bfdfa9021a91e942b00ddbe38277a45cbcc70eade8655b0"
},
"aarch64_macos": {
"etag": "0x8DEA29889111947",
"hash": "6bcc479f1dd38e191dd50fb4da7d6b11de158c7bb5cbe084407aca003c34d9d5"
}
},
"0.35.2": {
"x86_64_linux_musl": {

View File

@@ -2,10 +2,48 @@
"rust_crate": "cargo-udeps",
"template": null,
"latest": {
"version": "0.1.60"
"version": "0.1.61"
},
"0.1": {
"version": "0.1.60"
"version": "0.1.61"
},
"0.1.61": {
"x86_64_linux_musl": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v0.1.61/cargo-udeps-v0.1.61-x86_64-unknown-linux-musl.tar.gz",
"etag": "0x8DEA584E93B9FDB",
"hash": "27031ca3902390a1d793901d17ec073ac85297ab3477b13faea984e4c97de479",
"bin": "cargo-udeps-v0.1.61-x86_64-unknown-linux-musl/cargo-udeps"
},
"x86_64_macos": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v0.1.61/cargo-udeps-v0.1.61-x86_64-apple-darwin.tar.gz",
"etag": "0x8DEA584FB3914CC",
"hash": "0840c47e3ac640db8cf1ac9136c7a133eff68f07753a8a450363b95124d0ee34",
"bin": "cargo-udeps-v0.1.61-x86_64-apple-darwin/cargo-udeps"
},
"x86_64_windows": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v0.1.61/cargo-udeps-v0.1.61-x86_64-pc-windows-msvc.zip",
"etag": "0x8DEA5855ED09C2C",
"hash": "6920b6f493f0c13a28e32522ccb7efffcc57c8849d887366b19c599dc2238cc0",
"bin": "cargo-udeps-v0.1.61-x86_64-pc-windows-msvc/cargo-udeps.exe"
},
"aarch64_linux_musl": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v0.1.61/cargo-udeps-v0.1.61-aarch64-unknown-linux-musl.tar.gz",
"etag": "0x8DEA584C0D0F4DF",
"hash": "d257553c03b36d2ee7e8028d622c80b1244fc512fabb2de058c1e0ceeb92169b",
"bin": "cargo-udeps-v0.1.61-aarch64-unknown-linux-musl/cargo-udeps"
},
"aarch64_macos": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v0.1.61/cargo-udeps-v0.1.61-aarch64-apple-darwin.tar.gz",
"etag": "0x8DEA5849C45DEF1",
"hash": "0ca49f226c268ff3f7d65e82dd471900b962e4dcb3e75793558e5f4287be2011",
"bin": "cargo-udeps-v0.1.61-aarch64-apple-darwin/cargo-udeps"
},
"aarch64_windows": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v0.1.61/cargo-udeps-v0.1.61-aarch64-pc-windows-msvc.zip",
"etag": "0x8DEA585933B8EBC",
"hash": "56f71b63e24fff67cf5f34e21bf4bcd8b090d80336a629c7b829045b02494718",
"bin": "cargo-udeps-v0.1.61-aarch64-pc-windows-msvc/cargo-udeps.exe"
}
},
"0.1.60": {
"x86_64_linux_musl": {

View File

@@ -15,7 +15,28 @@
}
},
"latest": {
"version": "0.21.5"
"version": "0.22.0"
},
"0.22": {
"version": "0.22.0"
},
"0.22.0": {
"x86_64_linux_musl": {
"etag": "0x8DE9F37C7CF1B98",
"hash": "a883bdc833df614978514485d00e6174fcc3a229bf0edc07bbea8762a0405e0b"
},
"x86_64_macos": {
"etag": "0x8DE9F37FADC11D8",
"hash": "6a0ba0734f9c8af3c98338be34ad70a3010d1014b5e551134d3e087d46192ffd"
},
"x86_64_windows": {
"etag": "0x8DE9F38104A6015",
"hash": "2d0e46a28b2919e92f6952dcd88c9a8f9a1e6426a6ef1319ff3a6ccaef264774"
},
"aarch64_linux_musl": {
"etag": "0x8DE9F37D403A82E",
"hash": "f4ec28c33817623c2f2638c11fc7f011d7ea2468d8b56ef590daa4032ee2e256"
}
},
"0.21": {
"version": "0.21.5"

View File

@@ -21,7 +21,36 @@
}
},
"latest": {
"version": "0.30.0"
"version": "0.31.0"
},
"0.31": {
"version": "0.31.0"
},
"0.31.0": {
"x86_64_linux_gnu": {
"etag": "0x8DEA5BE1A225492",
"hash": "72c465982796cb930dd7bfabe68d869aea053c9b7a717dff9ceee56b5624eea4"
},
"x86_64_macos": {
"etag": "0x8DEA5BE2A8378AE",
"hash": "78c3f395499fc80d1b0a0c2ad0497fa212ccb90a544524599be6356707b49bbd"
},
"x86_64_windows": {
"etag": "0x8DEA5BE2463CF5D",
"hash": "da18bdb0d5b10a5f45ddfb59b7b08b11ddc050bb5c6407608d831929a1799d3f"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA5BE20738480",
"hash": "ecdb5a10bba199417ccf94b57f27f0ec201b91eb4fadc6d7998696e082e69bef"
},
"aarch64_macos": {
"etag": "0x8DEA5BE4A7F7F7B",
"hash": "42d5b880968eed5b8939d48adf125c5d96944231259e19167c29e9da9e9d2afe"
},
"aarch64_windows": {
"etag": "0x8DEA5BE28D7835D",
"hash": "af0a5c6c17b0bee113066760d3378eb5e03eb5c75eca2479e61fc43669c46036"
}
},
"0.30": {
"version": "0.30.0"

49
manifests/espup.json generated
View File

@@ -18,7 +18,54 @@
}
},
"latest": {
"version": "0.16.0"
"version": "0.17.1"
},
"0.17": {
"version": "0.17.1"
},
"0.17.1": {
"x86_64_linux_gnu": {
"etag": "0x8DE9C74A098CB39",
"hash": "dd8625b3742b2f74ce406286baef8ee67525d63b25ea303ddf7473ed2cc31192"
},
"x86_64_macos": {
"etag": "0x8DE9C747D3044B2",
"hash": "c51cf3d7a91c5e24de680812cf110fa58a4315ed80b8d1af8e74f89088d8b861"
},
"x86_64_windows": {
"etag": "0x8DE9C748FE2165B",
"hash": "f3a2d372e6f04f67a2adb7ff310ad336d9d475a5c4ce2c0c7855792875981bf0"
},
"aarch64_linux_gnu": {
"etag": "0x8DE9C7475A3FBDB",
"hash": "9b0082414a962edfdd62aeebba07e8eaf3009477e78903a6bc656775f2f1dbe7"
},
"aarch64_macos": {
"etag": "0x8DE9C74AB2E27B6",
"hash": "93bff02d2e3f37eb5c0ab68b2016fcbeb5e9aa0334f8f47e5ec63a219daace91"
}
},
"0.17.0": {
"x86_64_linux_gnu": {
"etag": "0x8DE9C60D8405E5A",
"hash": "9b97234338a83c23e6324595ae861b190cc95fefeb257575f05327fe1f2cd77d"
},
"x86_64_macos": {
"etag": "0x8DE9C60B152442B",
"hash": "366e7f1ba3aaf60d026a232d83cf75e0d9a977083ffba5a4ef90bb0732df4d11"
},
"x86_64_windows": {
"etag": "0x8DE9C60C2BCF730",
"hash": "03049e76c11f174b3f32277545be53819a243af8e8c012e7c07e10314840e170"
},
"aarch64_linux_gnu": {
"etag": "0x8DE9C60A9AE250C",
"hash": "f6356701429f99b2bb6dc1d67aadb56bf3c3b09b6e583849d334068d5edda418"
},
"aarch64_macos": {
"etag": "0x8DE9C60B3F2D0E4",
"hash": "7f7c5f38d15bbce54a910150ba295516985e3bf27abbacf81d8718bf7cf7521d"
}
},
"0.16": {
"version": "0.16.0"

View File

@@ -27,10 +27,65 @@
}
},
"latest": {
"version": "2.12.0"
"version": "2.13.1"
},
"2": {
"version": "2.12.0"
"version": "2.13.1"
},
"2.13": {
"version": "2.13.1"
},
"2.13.1": {
"x86_64_linux_musl": {
"etag": "0x8DEA37D7F9F3C29",
"hash": "200d2535da6d9703f3bcc8a4d159c3b55eacdb01cf2148c55b3eee9dd04d5249"
},
"x86_64_macos": {
"etag": "0x8DEA37D44E87B3A",
"hash": "6e60ae390d375cecb9d8008c49f0e724a8dfe40390b532ef5501e421d2cc8acb"
},
"x86_64_windows": {
"etag": "0x8DEA37E02E19030",
"hash": "3ae3a5549e85c7ad5b20192ebcfee4371269deca51255f6f2f2e051c6541f5ca"
},
"aarch64_linux_musl": {
"etag": "0x8DEA37D82440AED",
"hash": "4054c124b926c117f3fa048939bc8be0a954f29f3b6f367627e8cb22c1971882"
},
"aarch64_macos": {
"etag": "0x8DEA37D25D82E17",
"hash": "21547ae4a0421164070ab75c2522864ea5565858a011fabc5f583061b20f1226"
},
"aarch64_windows": {
"etag": "0x8DEA37E17A6094D",
"hash": "03a623191fe575bc0024e2ebc61cc861cebd3ba84b93ff13b002c42e8248cd3f"
}
},
"2.13.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA3772B3C02DF",
"hash": "132539f836416563e86621ff0649f0c0c766cf32ea1be85f3ba0d34f043ce86a"
},
"x86_64_macos": {
"etag": "0x8DEA3771FC5A88A",
"hash": "ad980b6bd5c52deec7c24a55599f652607d40d221f0bfb75142017a9fc82f7c4"
},
"x86_64_windows": {
"etag": "0x8DEA377B78B9783",
"hash": "17f891a0ec38f8c9ef6440eed31be43117491b05afeba6093a15545633eae6ff"
},
"aarch64_linux_musl": {
"etag": "0x8DEA37725E52DB8",
"hash": "27b9216d92a254fb03d18008252a7c8c7bc803b4616bf69175ff448918a9606a"
},
"aarch64_macos": {
"etag": "0x8DEA376FF31CE86",
"hash": "72e8d1f4d1dca4312ccf979c72a094e5bab0a659ec6c8d4e1bbea19f9cc65b23"
},
"aarch64_windows": {
"etag": "0x8DEA377B597C5A5",
"hash": "ae2cdf8b70999c8dd52af50283b0c9a8d811055e1f8879ffd1a7d90c678e902b"
}
},
"2.12": {
"version": "2.12.0"

View File

@@ -23,10 +23,32 @@
}
},
"latest": {
"version": "0.18.1"
"version": "0.18.2"
},
"0.18": {
"version": "0.18.1"
"version": "0.18.2"
},
"0.18.2": {
"x86_64_linux_musl": {
"etag": "0x8DEA695B3CFC4FA",
"hash": "bad19b8dd280e9cfab691eb3220d107ce1b09091846ac7df19c9a303988cf071"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA695BAEDE5DA",
"hash": "46ee655aaac3f1d18c823ec8abf4c8adb5dd9641c526b49de007c15b743c8fe4"
},
"powerpc64le_linux_gnu": {
"etag": "0x8DEA69515EAE4D4",
"hash": "07b17bc9904c2733cfd7663ac36ed28a80af28530403c77f0a34887b76e64f4c"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA6957D2B96BF",
"hash": "496df4183e0f29ac919e14688f85fa4464d2e632fa6730743bdf24acf66108ac"
},
"s390x_linux_gnu": {
"etag": "0x8DEA695C06514A8",
"hash": "6b6ec6b64d03d73b465222062fb20ead1eb6b18a48ab791fb5fcefed34fd1532"
}
},
"0.18.1": {
"x86_64_linux_musl": {

33
manifests/just.json generated
View File

@@ -21,10 +21,39 @@
}
},
"latest": {
"version": "1.49.0"
"version": "1.50.0"
},
"1": {
"version": "1.49.0"
"version": "1.50.0"
},
"1.50": {
"version": "1.50.0"
},
"1.50.0": {
"x86_64_linux_musl": {
"etag": "0x8DE9E6F41A84659",
"hash": "27e011cd6328fadd632e59233d2cf5f18460b8a8c4269acd324c1a8669f34db0"
},
"x86_64_macos": {
"etag": "0x8DE9E6F39943078",
"hash": "e4fa28fe63381ca32fad101e86d4a1da7cd2d34d1b080985a37ec9dc951922fe"
},
"x86_64_windows": {
"etag": "0x8DE9E6F71190D2B",
"hash": "5dc713f049e174e22de41fd06292a26c9b90f2d37c1be9390d2082fe6928b376"
},
"aarch64_linux_musl": {
"etag": "0x8DE9E6F47F2EDF4",
"hash": "3beb4967ce05883cf09ac12d6d128166eb4c6d0b03eff74b61018a6880655d7d"
},
"aarch64_macos": {
"etag": "0x8DE9E6F49FBDCE5",
"hash": "891262207663bff1aa422dbe799a76deae4064eaa445f14eb28aef7a388222cd"
},
"aarch64_windows": {
"etag": "0x8DE9E6F73FB889D",
"hash": "91065b94d11beb4b05c8117d8a736e978f41764d73131de35d8134c9ab9dee7a"
}
},
"1.49": {
"version": "1.49.0"

67
manifests/martin.json generated
View File

@@ -31,10 +31,73 @@
}
},
"latest": {
"version": "1.5.0"
"version": "1.8.0"
},
"1": {
"version": "1.5.0"
"version": "1.8.0"
},
"1.8": {
"version": "1.8.0"
},
"1.8.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA51C82B100CC",
"hash": "e633b553663ecf69b82f88235fdfc720c2cdb6390f0414837c6577b1e937d7ab"
},
"x86_64_macos": {
"etag": "0x8DEA51C81E01D4A",
"hash": "a80eeb3e37fd6127dbca77b965a4fba6f74d75029d69f2c73fdb195bf4cb3b82"
},
"aarch64_linux_musl": {
"etag": "0x8DEA51C81AB1841",
"hash": "268d5865668d85fdd583d8bc59d8a21ff90502e44340d50a95b9adca10b65af3"
},
"aarch64_macos": {
"etag": "0x8DEA51C81A8D0DD",
"hash": "e6bef9defe12697f3aab6daeb9889645ce447cef91ff82f3eaa24174965ee018"
}
},
"1.7": {
"version": "1.7.0"
},
"1.7.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA2D8D2DD9B3B",
"hash": "a9b0ed13e7f31964940e3504d0eeb481669b01e3d8b303db56d64b03decc0e2b"
},
"x86_64_macos": {
"etag": "0x8DEA2D8D1EE54B5",
"hash": "50b5293d93e6cbb3d1f7dd590c7fec96f24edc05acaac710096ca535712da4c8"
},
"aarch64_linux_musl": {
"etag": "0x8DEA2D8D1EC342E",
"hash": "ea8e848dde503b77f9f8cbc4820c51cbc310a30eb7c4c3d10ecfedfc4781e687"
},
"aarch64_macos": {
"etag": "0x8DEA2D8D1FFF41D",
"hash": "582aceb8eff0da07c0e78ce74ffccc12da5c18fa261aef7630ac2e6afcc8c313"
}
},
"1.6": {
"version": "1.6.0"
},
"1.6.0": {
"x86_64_linux_musl": {
"etag": "0x8DE9E6794FD4A72",
"hash": "b71c6e5006ab152ebe6ee021ba3280dadc681a1e723f48109ac4317d34c7926e"
},
"x86_64_macos": {
"etag": "0x8DE9E6794344CFE",
"hash": "1a33cc0b9580ab5b7d9ba124113eb8db9cdd9191d6206a2e0d452d88b2ed40bc"
},
"aarch64_linux_musl": {
"etag": "0x8DE9E6794361FAD",
"hash": "42ef50d65d62358e806827f78ef660ef58eba126a449a237cbd57ab727105ea0"
},
"aarch64_macos": {
"etag": "0x8DE9E6794327A4B",
"hash": "18afc12cdb9e84b095f26a260880ef488ea0185d6ff9821bb38d2b38d2b70d63"
}
},
"1.5": {
"version": "1.5.0"

61
manifests/mdbook-d2.json generated Normal file
View File

@@ -0,0 +1,61 @@
{
"rust_crate": "mdbook-d2",
"template": {
"x86_64_linux_musl": {
"url": "https://github.com/danieleades/mdbook-d2/releases/download/v${version}/mdbook-d2-x86_64-unknown-linux-musl.tar.gz",
"bin": "mdbook-d2"
},
"x86_64_macos": {
"url": "https://github.com/danieleades/mdbook-d2/releases/download/v${version}/mdbook-d2-x86_64-apple-darwin.tar.gz",
"bin": "mdbook-d2"
},
"x86_64_windows": {
"url": "https://github.com/danieleades/mdbook-d2/releases/download/v${version}/mdbook-d2-x86_64-pc-windows-msvc.tar.gz",
"bin": "mdbook-d2.exe"
},
"aarch64_linux_musl": {
"url": "https://github.com/danieleades/mdbook-d2/releases/download/v${version}/mdbook-d2-aarch64-unknown-linux-musl.tar.gz",
"bin": "mdbook-d2"
},
"aarch64_macos": {
"url": "https://github.com/danieleades/mdbook-d2/releases/download/v${version}/mdbook-d2-aarch64-apple-darwin.tar.gz",
"bin": "mdbook-d2"
},
"aarch64_windows": {
"url": "https://github.com/danieleades/mdbook-d2/releases/download/v${version}/mdbook-d2-aarch64-pc-windows-msvc.tar.gz",
"bin": "mdbook-d2.exe"
}
},
"latest": {
"version": "0.3.8"
},
"0.3": {
"version": "0.3.8"
},
"0.3.8": {
"x86_64_linux_musl": {
"etag": "0x8DE4D1050CFDFE1",
"hash": "6601ff37d3f220db0c9617b85c7e80f985a13ea75e2b6bb88b5158ea429455b6"
},
"x86_64_macos": {
"etag": "0x8DE4D104B08EF36",
"hash": "0ce3bf83daa8f4d458d9acf3cc5e9af1fc85d864854439a8a7d45a9a48166eaf"
},
"x86_64_windows": {
"etag": "0x8DE4D106181D5F5",
"hash": "89ba967c1f95b32d05612183b9752aeccafa749d5dce0680fb9dcbfda24285fd"
},
"aarch64_linux_musl": {
"etag": "0x8DE4D104E5464C8",
"hash": "84f37cb1d89f6fabbefb5581205f93035fe5d9f2ace32f01cb76622cb563a9c1"
},
"aarch64_macos": {
"etag": "0x8DE4D104A941BA3",
"hash": "dcd49feace49c4adce583cfab121885cd84b746fdad6ebc99ca36eb52272f849"
},
"aarch64_windows": {
"etag": "0x8DE4D1061C79129",
"hash": "6cc7507acae02d73719b260dffd33c3b1d74029cfa97cc7edfe220f8489aef02"
}
}
}

370
manifests/mise.json generated
View File

@@ -27,13 +27,377 @@
}
},
"latest": {
"version": "2026.4.11"
"version": "2026.4.28"
},
"2026": {
"version": "2026.4.11"
"version": "2026.4.28"
},
"2026.5.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA9471A2EEE95",
"hash": "f47a11b64b32f94db74b6792601bd9b0440bf4fe4d1e54056738b3e1eeff13db"
},
"x86_64_macos": {
"etag": "0x8DEA9471C55F180",
"hash": "8335873c9280e2dca0b1ceeb0298f2905188732fe128e0f97672f7796bdecbd7"
},
"x86_64_windows": {
"etag": "0x8DEA9471D67181D",
"hash": "053de50b0ee574a40ebcca667c17e27b06423bfed3779c623970e0e36e1d6405"
},
"aarch64_linux_musl": {
"etag": "0x8DEA94716D421D2",
"hash": "9ff141301ad0eb05ed98c45195de6af9f4f6a2b7ec8ae1acab845e65e4aa1c43"
},
"aarch64_macos": {
"etag": "0x8DEA9471BAE1289",
"hash": "c4b34f7d4831f7d296bbd3b1ae50ecca5cbe404650575472c0db6bcaad8bb4e5"
},
"aarch64_windows": {
"etag": "0x8DEA9471D4C0D77",
"hash": "43bfe834b2c420b467114cea698f08b8aee26b6be748ec046e8a06915d5003ac"
}
},
"2026.4": {
"version": "2026.4.11"
"version": "2026.4.28"
},
"2026.4.28": {
"x86_64_linux_musl": {
"etag": "0x8DEA6AC256245CA",
"hash": "5876c4febe57fc5350eade9320425ab96f29e8de6c6be620754d5e9e4920ea1c"
},
"x86_64_macos": {
"etag": "0x8DEA6AC290CADD9",
"hash": "c590f28b9e04085df73736fdfc4a1f6eef3b866d730c7a061aa2df46c8cf1c66"
},
"x86_64_windows": {
"etag": "0x8DEA6AC2A741EDB",
"hash": "36db52c5bbb3c825f753fef58b3ea4389ba833ee9a455b05e6ee2b9d657d14b6"
},
"aarch64_linux_musl": {
"etag": "0x8DEA6AC206CFC59",
"hash": "7290ef70e3d46cc54c737f7a2084b84c05008c30d3fbb40ebbf4e68b7c84096b"
},
"aarch64_macos": {
"etag": "0x8DEA6AC278D151C",
"hash": "0b226fa0b96f50bf41a35f96e8ef166e3d7a834ab7bfad4f3f1a12ff928363f4"
},
"aarch64_windows": {
"etag": "0x8DEA6AC2A4EBF8E",
"hash": "9d87a7d985d3082df9010d58d7ed5b08c0778afd5cefba84e3eb674c50176a95"
}
},
"2026.4.27": {
"x86_64_linux_musl": {
"etag": "0x8DEA613D6EEA7AA",
"hash": "72df029f60f926f4c1a0619fbdfac6870d4ce7354b074d3be82eeed557203660"
},
"x86_64_macos": {
"etag": "0x8DEA613D9552C3B",
"hash": "f55ec19657cbe15843067d22e854bc89db874b0142c122a82f8db38d14f52243"
},
"x86_64_windows": {
"etag": "0x8DEA613DA874A60",
"hash": "30540c4443b69777682ca74211ca283006f110b23f2ea4da96713b29d7766fdb"
},
"aarch64_linux_musl": {
"etag": "0x8DEA613D3075433",
"hash": "6d525c6cce79c4a0aa570eb22bd7041510c2cf601ddea85b028fcbab37dc1268"
},
"aarch64_macos": {
"etag": "0x8DEA613D88B926D",
"hash": "95493bfc1850c4df04f8e4417bd9e40a5fa1001b925ff43a92db7056afbd1d6d"
},
"aarch64_windows": {
"etag": "0x8DEA613DA8136C0",
"hash": "2de70631d51747d7bd39feaf08f4a5ae6f36a9167955cf71fcacd84b2ed3f8c0"
}
},
"2026.4.25": {
"x86_64_linux_musl": {
"etag": "0x8DEA5227685D845",
"hash": "238b647dafef3afc5f74892a1f58cdeadf8682fe54d5dabaefa114f72bca6453"
},
"x86_64_macos": {
"etag": "0x8DEA5227989E63B",
"hash": "d0a0f670c28b823e35d4a8ad963ebcf1402db55205575ebe0357bf40ac469283"
},
"x86_64_windows": {
"etag": "0x8DEA5227B378709",
"hash": "d7e2d58adc30e52f45af4a8e3dcf031b6af341f425918741439a5e35526ddfae"
},
"aarch64_linux_musl": {
"etag": "0x8DEA52271E57B1A",
"hash": "41ab437afbf42ec653329308374df8da39e5a32805327994e75c8b50b470a06b"
},
"aarch64_macos": {
"etag": "0x8DEA5227934377B",
"hash": "6ebafb7f53bdebf0cf76c86b174e742e6321f45597ae9a5e6fafa460396d99d2"
},
"aarch64_windows": {
"etag": "0x8DEA5227A9F74C9",
"hash": "5a311314c3ac9487d91efc6fc5b35b4f934fbed03d0f6a01e21188a5c84892b3"
}
},
"2026.4.24": {
"x86_64_linux_musl": {
"etag": "0x8DEA45161A9D475",
"hash": "9307d627f50c0325c33ef964723a9845bf80bfd5fe3fa4564ccc78a5ffe47900"
},
"x86_64_macos": {
"etag": "0x8DEA45165319942",
"hash": "a00d7ab6e26ed778887b49c770f7893586ee4f86e46b80b7e869201a000550c6"
},
"x86_64_windows": {
"etag": "0x8DEA4516689D916",
"hash": "b8072dca6c8399dbda929db95ff2a1fa261833a2f1dea7e77bc026c8d825d28c"
},
"aarch64_linux_musl": {
"etag": "0x8DEA4515E1EB80D",
"hash": "b5be9ef118acf0935f654a9380d5a4a8be782830063fffc006511f1023acd599"
},
"aarch64_macos": {
"etag": "0x8DEA451643D76CB",
"hash": "305aa9fc58c374dcb81b370e3ac7ac96fd13d53532252cfaf384fbd7ab9ad2a8"
},
"aarch64_windows": {
"etag": "0x8DEA4516611AE03",
"hash": "4a6ee8e3eb11e3f34842166a4594e6a2cfab4a9df867493415c3d54d663d1782"
}
},
"2026.4.23": {
"x86_64_linux_musl": {
"etag": "0x8DEA3DBFFDA9F73",
"hash": "43c9496202b5c896c2454e5c62f73dc1850181cb0c5e13b6df5d72319c5434d8"
},
"x86_64_macos": {
"etag": "0x8DEA3DC01B20756",
"hash": "1e7a2b9bd836f59039d20fc82c780d7b8c78e5dd1dfc138c0020b1b180c3192c"
},
"x86_64_windows": {
"etag": "0x8DEA3DC02E55C98",
"hash": "fbfc8913b6e95cf24be6e2a6d83bd3059ec953e47570793916fc8afb3b1b66b1"
},
"aarch64_linux_musl": {
"etag": "0x8DEA3DBFCC3463D",
"hash": "3c61f6ad05e662feaece6feccdbb0c075e787efbba5a780272133b02282c95f6"
},
"aarch64_macos": {
"etag": "0x8DEA3DC010F04E9",
"hash": "c5ab822d0e3435ae4493e31a484cf86b2a819522eedad5555f5aed45bfac4545"
},
"aarch64_windows": {
"etag": "0x8DEA3DC02747C4D",
"hash": "766197d37306009734a3696def00448cddb8f0073d4439c75b7bcb37f1882191"
}
},
"2026.4.22": {
"x86_64_linux_musl": {
"etag": "0x8DEA2F9B9C7884A",
"hash": "a80e2e1d459f4dc9e66f2fd3dd038933ac112f8709e8e1116b22945548303c8b"
},
"x86_64_macos": {
"etag": "0x8DEA2F9BC7B8681",
"hash": "63887b6deabe69924e163659623fb09269372674bf2b76d98716c3754852dc6b"
},
"x86_64_windows": {
"etag": "0x8DEA2F9BD95A3CC",
"hash": "3e9b7cab35dfdf888bdc890e86fc72369aef026bebf867199b788e38a887ebea"
},
"aarch64_linux_musl": {
"etag": "0x8DEA2F9B5F5EE53",
"hash": "62362e63f73c92af02712fb62775af77264f9d16614ccbac5a470567b212f0f7"
},
"aarch64_macos": {
"etag": "0x8DEA2F9BB9AAF4E",
"hash": "f3c00057a7ac975be04df24f95e1c987bda52588af1abdce1271121256fc82c8"
},
"aarch64_windows": {
"etag": "0x8DEA2F9BD941EE5",
"hash": "0c6f2488396dc07c9ed834dbb7fc29ea59a738e10d72a590ae513105939958ac"
}
},
"2026.4.20": {
"x86_64_linux_musl": {
"etag": "0x8DEA1F73CD03817",
"hash": "b45fafb4dac8468045575671e881888c8bea5c3ba3450805a1d068bc6fe34f9b"
},
"x86_64_macos": {
"etag": "0x8DEA1F746AAB073",
"hash": "1b1fd7e0c4b2c5950ab4cf5df5b560b5ab5cce18f9e772e38248974dcee7ec2e"
},
"x86_64_windows": {
"etag": "0x8DEA1F75EB4F213",
"hash": "b25a0edadf7398586f1dd721410cf3528f8ac13d9a9dd280d2f982273af2137e"
},
"aarch64_linux_musl": {
"etag": "0x8DEA1F735D92407",
"hash": "18fee09da992de537c563e07f352341a7bd6f1fbbdeda3b86d7a0d19a35975ae"
},
"aarch64_macos": {
"etag": "0x8DEA1F742C52FB7",
"hash": "d9278c027385e1ff90fe1a57c7a25ab71da906f9f184e148278c9efa5d6ddcc6"
},
"aarch64_windows": {
"etag": "0x8DEA1F780F740FF",
"hash": "24e03b67a95d6be74d166f2da56c155fd531d9ef1b2c18ea97228b9608c94d83"
}
},
"2026.4.19": {
"x86_64_linux_musl": {
"etag": "0x8DEA0D59752D510",
"hash": "f037a0877100ac3f9b747d6f3653bcb031d4a2d246b26cf1daca8418317da6f6"
},
"x86_64_macos": {
"etag": "0x8DEA0D59A19357B",
"hash": "ce274ebeb8762e059c171fca1d0a7d8170f9870617b8defb7f2ed5ac798f9afb"
},
"x86_64_windows": {
"etag": "0x8DEA0D59C0850B4",
"hash": "89407035a42f108f8960f6464f2903477e5bd023adef4d039427d2b1cb390bd6"
},
"aarch64_linux_musl": {
"etag": "0x8DEA0D591D041E2",
"hash": "a9c1f9b5c7f53714c81298ce563319bdee94dff29645eb935b3afd5b92a81dc4"
},
"aarch64_macos": {
"etag": "0x8DEA0D599009CF2",
"hash": "0785176288afc613cc152956bca905b7a47b91232f1b360fa9136e594af1c593"
},
"aarch64_windows": {
"etag": "0x8DEA0D59B7E3862",
"hash": "eb5910556fa13d6e85ff22c455526687525e3d412725370f62e13554e672e419"
}
},
"2026.4.18": {
"x86_64_linux_musl": {
"etag": "0x8DE9E2E39FC992B",
"hash": "dcb0187879dcd8adb0f26279f08f9b06f7b78fa3fea3fb95ffd4db72375201f4"
},
"x86_64_macos": {
"etag": "0x8DE9E2E3C75312A",
"hash": "78b95c4a26d4c7f2bbda91dc119e1001eae33aade428f134dc6f1b6857a02cce"
},
"x86_64_windows": {
"etag": "0x8DE9E2E3D783715",
"hash": "0651d43232b99d579f63ee83fa745f2418b37ae187b3f82322e9a2fd2192fe9f"
},
"aarch64_linux_musl": {
"etag": "0x8DE9E2E36AB5E0A",
"hash": "a451af75120d69139c3a88622299a893c2ef6eabdc80ec1226e2296ab6cc3432"
},
"aarch64_macos": {
"etag": "0x8DE9E2E3B93975F",
"hash": "65b8e5f3a8654d725ff3af7781e447e2ed130dcdf412ee937cbd43ef64bb7629"
},
"aarch64_windows": {
"etag": "0x8DE9E2E3D5D7A28",
"hash": "b2107c8a8a21ae6bf7d9e89efdb60a814864dd7b99c7770175896273bb798c0e"
}
},
"2026.4.17": {
"x86_64_linux_musl": {
"etag": "0x8DE9D70541A0D1C",
"hash": "5c661249b75506bdc0a133d91460544b9a0c096c40cdb60a5c8d9e60bc144897"
},
"x86_64_macos": {
"etag": "0x8DE9D705805C8FD",
"hash": "7925831a68bb119ae0a744408ab646b476f6309720b46d7f5ab466613ca7ada8"
},
"x86_64_windows": {
"etag": "0x8DE9D705A337B82",
"hash": "51bf2412db91411717e5b34bfdf4ec86428abe20de5115c71c3c2ae96baee5de"
},
"aarch64_linux_musl": {
"etag": "0x8DE9D704E988A27",
"hash": "e9e47b246b73f84348736f48e909424865a01d0d5e853df51d77da33d53ae84d"
},
"aarch64_macos": {
"etag": "0x8DE9D7056DA3305",
"hash": "ac0251f8ccbd48de250aa866a05637b74439b22f815a894bd47fce5d52e209e7"
},
"aarch64_windows": {
"etag": "0x8DE9D7059853AF9",
"hash": "efbeb472c5e30ec6715ff3722a099c70191da00a2324cfdae16c4c2af3e55103"
}
},
"2026.4.16": {
"x86_64_linux_musl": {
"etag": "0x8DE9C757DA1C42B",
"hash": "3dd389bee8684c6e8c400b2d44a33a1087981ae287b7c98816e3537f524287d7"
},
"x86_64_macos": {
"etag": "0x8DE9C7580347D88",
"hash": "547f3ed469fc97808b8b82e776ad74f63ffa34ac93a6b2b40cb69473dcb4e240"
},
"x86_64_windows": {
"etag": "0x8DE9C758180BD2A",
"hash": "9bf630a213b2cad0560a16ba6635d521b9c47d5fc48861c7a781805bb6c393b7"
},
"aarch64_linux_musl": {
"etag": "0x8DE9C757A63389F",
"hash": "5328c096b5a7aef266ee3c8495c3aab7f916c294c034b4488da2a7bdb40b76cf"
},
"aarch64_macos": {
"etag": "0x8DE9C757F339817",
"hash": "b394f42bd7d3f9c4a1edd455f6839eaa32f14265fee8ab76888cf910e76e58ed"
},
"aarch64_windows": {
"etag": "0x8DE9C758151F28A",
"hash": "82405507919f77784561d980da7f94cf5589c8d56503ada9d804996672324e04"
}
},
"2026.4.15": {
"x86_64_linux_musl": {
"etag": "0x8DE9BB9F97262D5",
"hash": "7c5d9b3bc7af393714bbf4ba4f138aac7c6250583a07cd03e31748cb100d295b"
},
"x86_64_macos": {
"etag": "0x8DE9BB9FCF9B36F",
"hash": "0e77713b77c810edf3e1fce1865610675c87db2bac8d0818841e8728335833e3"
},
"x86_64_windows": {
"etag": "0x8DE9BB9FE91741A",
"hash": "626942dbbd3e4b5b1694e5ceb6e2fc5368cf8f9e526cd51674b0692a2e33d7a4"
},
"aarch64_linux_musl": {
"etag": "0x8DE9BB9F5215263",
"hash": "54b39f73e6eb18bb34b92ff00758f765e7c4d1c9858eb7855e01efc48cf56ac1"
},
"aarch64_macos": {
"etag": "0x8DE9BB9FBCE9228",
"hash": "e75e1ee1204fe55ae3ec7da54b2476332609fc78ea4c3633c6a95115e148624e"
},
"aarch64_windows": {
"etag": "0x8DE9BB9FE20E18E",
"hash": "a109fbf6bb255f9113aa823bd2bf3a87afcfb1d2c09b672bd8c207e5426b7371"
}
},
"2026.4.14": {
"x86_64_linux_musl": {
"etag": "0x8DE9B2D3A8BD6AA",
"hash": "863b5c302b4ff88fb864fd46034973eef1a758bdd65d6f0b087cdb0217e0ac35"
},
"x86_64_macos": {
"etag": "0x8DE9B2D3D2ADE39",
"hash": "553884b12050bf61a15daab6d705856a3cd66db03c9db1db4c0d015e8adae47f"
},
"x86_64_windows": {
"etag": "0x8DE9B2D3E46F53D",
"hash": "27bebd90b1dcc0a8a04c375837dda567b89557a56435a15a51876be2f5a20e0a"
},
"aarch64_linux_musl": {
"etag": "0x8DE9B2D374ED006",
"hash": "614088eea52d08e193bee1857ac27dc9ee31bef3d5b3fb18021906bab3c02af7"
},
"aarch64_macos": {
"etag": "0x8DE9B2D3C9CF99B",
"hash": "03850d421ead7c3dfadf4dff6fa3e0bb8641d2a1bcb983151586605eca600d18"
},
"aarch64_windows": {
"etag": "0x8DE9B2D3DD0EA93",
"hash": "5062dc6928acc63084a38e19e38118377e07bb6955ca8d825b8045ca384d2fca"
}
},
"2026.4.12": {
"x86_64_linux_musl": {

View File

@@ -2,13 +2,45 @@
"rust_crate": null,
"template": null,
"latest": {
"version": "2.3.5"
"version": "2.3.6"
},
"2": {
"version": "2.3.5"
"version": "2.3.6"
},
"2.3": {
"version": "2.3.5"
"version": "2.3.6"
},
"2.3.6": {
"x86_64_linux_musl": {
"url": "https://github.com/google/osv-scanner/releases/download/v2.3.6/osv-scanner_linux_amd64",
"etag": "0x8DEA71BEE7568B3",
"hash": "f689e183ef0d573d2459738aae457d411a26241ae58b5088de1af288b3355604"
},
"x86_64_macos": {
"url": "https://github.com/google/osv-scanner/releases/download/v2.3.6/osv-scanner_darwin_amd64",
"etag": "0x8DEA71BED1E865D",
"hash": "d5c91db387e0559b12136106bce5a57dbcea6fac22942721bd25b2334b28db28"
},
"x86_64_windows": {
"url": "https://github.com/google/osv-scanner/releases/download/v2.3.6/osv-scanner_windows_amd64.exe",
"etag": "0x8DEA71BECED9B41",
"hash": "14856196d681e18238b41d4741bbe0558bef157c4b3b49d618528294afebe19f"
},
"aarch64_linux_musl": {
"url": "https://github.com/google/osv-scanner/releases/download/v2.3.6/osv-scanner_linux_arm64",
"etag": "0x8DEA71BECF8B260",
"hash": "e6ab0955cc906f308704575a608d28e55068d00c7fa7f47797131c89b30c0373"
},
"aarch64_macos": {
"url": "https://github.com/google/osv-scanner/releases/download/v2.3.6/osv-scanner_darwin_arm64",
"etag": "0x8DEA71BED22798A",
"hash": "3d7a12f4349a9e8f822513e5544d4a747ab53b7225d4bf5a2d00211cbc9dfe19"
},
"aarch64_windows": {
"url": "https://github.com/google/osv-scanner/releases/download/v2.3.6/osv-scanner_windows_arm64.exe",
"etag": "0x8DEA71BEE3B86FE",
"hash": "5edd366ce55b696dbe74237987d8947808c400721b0cc4852f8224fbfd9f3c17"
}
},
"2.3.5": {
"x86_64_linux_musl": {

72
manifests/prek.json generated
View File

@@ -39,10 +39,78 @@
}
},
"latest": {
"version": "0.3.9"
"version": "0.3.11"
},
"0.3": {
"version": "0.3.9"
"version": "0.3.11"
},
"0.3.11": {
"x86_64_linux_musl": {
"etag": "0x8DEA414EFB86FDD",
"hash": "7671b1b17dd5a3c01e1772323b2688ab2956d737f2b5fdd15f49a7eb14eff837"
},
"x86_64_macos": {
"etag": "0x8DEA414EF57351C",
"hash": "53cd52b8ed1192d6a183775027e9d68a39e8e2470932c4caf20ea548c0bd9633"
},
"x86_64_windows": {
"etag": "0x8DEA414EF76A7B5",
"hash": "a40604c7a10e6876423fb53ce3325615a2e90b5b3f09e15676b1d2fe74e56948"
},
"aarch64_linux_musl": {
"etag": "0x8DEA414EE21BE76",
"hash": "057484ce99ccbe8ecad17ca78748098cfa209d4018fa0182181d95b2e63057ff"
},
"aarch64_macos": {
"etag": "0x8DEA414EDF86BF6",
"hash": "a01aebbb7fcebeb1cb5c074e1a3d00cc51a283a5bd8990fce6765c5d350ac602"
},
"aarch64_windows": {
"etag": "0x8DEA414EDF51449",
"hash": "da0465bd86021265089387465c4d4d7a794966fa1cf86920c79cb0e9b98665ba"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA414EF281CA3",
"hash": "db2871c97bfa39da80b145966c304f3e4051aa0e6f4f3c806312ac72aec0cf05"
},
"s390x_linux_gnu": {
"etag": "0x8DEA414EF4C44E4",
"hash": "98867bfaa25f8894124680b5dccf91fe5f7e06adaec8aa77f9287a5058498ae4"
}
},
"0.3.10": {
"x86_64_linux_musl": {
"etag": "0x8DE9F997FFD1858",
"hash": "60a873474e2ff2f70a5ad524d1b51abb6fdf5991900001eb7c8979877d75dacd"
},
"x86_64_macos": {
"etag": "0x8DE9F997F77B599",
"hash": "313882a8bfd76eb6930949ded36b23ce194ccb5431f474c62ae3fde12df100ae"
},
"x86_64_windows": {
"etag": "0x8DE9F997FB515C3",
"hash": "43b85e061bbcf6febb9973a7859d029f29f5ddeeb7722bd234422d8b6bee4406"
},
"aarch64_linux_musl": {
"etag": "0x8DE9F997DF1BB18",
"hash": "50e585ce98988b70d79ec782b2cf6c787c2f0a97a448ba8594448b4a6a688943"
},
"aarch64_macos": {
"etag": "0x8DE9F997DB040DC",
"hash": "e885e023ddb765ba31a2859bd4b9683f9b40fee3195c189a749bc4b28535ab5c"
},
"aarch64_windows": {
"etag": "0x8DE9F997D9866DE",
"hash": "4a6de3ff0fc2049ca72b8ab0ec567e195362a22c7efcca7ef0824b36b55d4193"
},
"riscv64_linux_gnu": {
"etag": "0x8DE9F997F2903CC",
"hash": "029ba9576b560753b0a4374ace6c5df6808e3e935ae0d4a67a5935debc12dbd4"
},
"s390x_linux_gnu": {
"etag": "0x8DE9F997F6EE5E2",
"hash": "bfe0c951b48cca6f91a85f83ec94a59cc567df988c0a7f23c0f34de0a232e08c"
}
},
"0.3.9": {
"x86_64_linux_musl": {

61
manifests/rclone.json generated
View File

@@ -27,13 +27,68 @@
}
},
"latest": {
"version": "1.73.4"
"version": "1.74.0"
},
"1": {
"version": "1.73.4"
"version": "1.74.0"
},
"1.74": {
"version": "1.74.0"
},
"1.74.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA79A9997861D",
"hash": "61de0a78d8776fe3e080f8385ebe96d817f2ee6a6003fe36b2d9f3b49d3e36ea"
},
"x86_64_macos": {
"etag": "0x8DEA79BD22CFC65",
"hash": "e47ce2c488fe097119f219018e97f6806766540238f126dcdc510da9ffc0f0eb"
},
"x86_64_windows": {
"etag": "0x8DEA79C0D5C94E2",
"hash": "ccebeae41401e60e6906a4c98bd0f0bd94038b7e6cc3dd01a487013c1a7e4951"
},
"aarch64_linux_musl": {
"etag": "0x8DEA79B022A4507",
"hash": "c28148f72e82e16953a9f7eedbe610736968240318ff33872f90bfdd689cc72f"
},
"aarch64_macos": {
"etag": "0x8DEA79BDB84A9D0",
"hash": "965b79b0bee24280a787e1f0f0a3e62347516e81cb6a40e5cc8ea4995b1ba917"
},
"aarch64_windows": {
"etag": "0x8DEA79C15813A83",
"hash": "9b0b1b407e2befbc9d4f0b0ea9ff95d5822e41e3f601085ccc1d5b62ad0c49d5"
}
},
"1.73": {
"version": "1.73.4"
"version": "1.73.5"
},
"1.73.5": {
"x86_64_linux_musl": {
"etag": "0x8DE9E0C3BBE3A4E",
"hash": "932cf4b7484de74d82b4875488e0009469fd21f9904673385184520fe11a1bf0"
},
"x86_64_macos": {
"etag": "0x8DE9E0D0D15BEE0",
"hash": "19c709563e455d8f8e343d5521e741afa7a77e37c6552ad8f7b03034f8bc214b"
},
"x86_64_windows": {
"etag": "0x8DE9E0D47EF790D",
"hash": "201567c54304935112b06dfac4ad754786287fb5acfad8889feca8d1cdeba92b"
},
"aarch64_linux_musl": {
"etag": "0x8DE9E0C537CFE99",
"hash": "8d465c921d95b2f54c5f2e79b24c97742ebc2082a0b8709a686361bed5ba7932"
},
"aarch64_macos": {
"etag": "0x8DE9E0D1603AE83",
"hash": "b9e265eb7a098743d0726c05c73fe207d355950fb8481e0b226c0c00173da1e8"
},
"aarch64_windows": {
"etag": "0x8DE9E0D4F7F62B7",
"hash": "8805406a984115e7cfe3b021a20a983b7060a70f198484cf373d687b6f625923"
}
},
"1.73.4": {
"x86_64_linux_musl": {

39
manifests/sccache.json generated
View File

@@ -35,7 +35,44 @@
}
},
"latest": {
"version": "0.14.0"
"version": "0.15.0"
},
"0.15": {
"version": "0.15.0"
},
"0.15.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA60451CA1112",
"hash": "782d2b5dd7ae0a55ebe368ab258114d0928d019ac2d949ab85d5d02f3926709e"
},
"x86_64_macos": {
"etag": "0x8DEA6044FF17166",
"hash": "f8da93e0689122268f720ddb48c8357f3da18be8c88aff23a8e75a7a219367db"
},
"x86_64_windows": {
"etag": "0x8DEA60450D9E185",
"hash": "b0b257a164bf438b2dea134ca7ded41c100f59a64b3bf275a202f1e8102ab217"
},
"aarch64_linux_musl": {
"etag": "0x8DEA60448F9BF88",
"hash": "3a6a3712b49da3d263bf2d30d702de4302793016019e800bfb81c0c69401d8f8"
},
"aarch64_macos": {
"etag": "0x8DEA6044706FE7C",
"hash": "430ef7b5f54256d3ed5bfe77e8b0afc51aa209aeebe4f95b69c3a52ce3acc6e9"
},
"aarch64_windows": {
"etag": "0x8DEA60447F644B8",
"hash": "f4f304dc9dd9bd2f9b0032a0091efac1c093934bb095f207381558f80c3d0a24"
},
"riscv64_linux_musl": {
"etag": "0x8DEA6044CF155B9",
"hash": "d24b685ca21bf9388da5311c4dfe88de813acea84ca85b12d67f4e4b9a7a983a"
},
"s390x_linux_musl": {
"etag": "0x8DEA6044ED0F256",
"hash": "729618c5fe016aa553f372ec28bfeff4288ba5d99baee6dc04031336a789b6f1"
}
},
"0.14": {
"version": "0.14.0"

78
manifests/syft.json generated
View File

@@ -35,10 +35,84 @@
}
},
"latest": {
"version": "1.42.4"
"version": "1.44.0"
},
"1": {
"version": "1.42.4"
"version": "1.44.0"
},
"1.44": {
"version": "1.44.0"
},
"1.44.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA7A585FE5AC5",
"hash": "0e91737aee2b5baf1d255b959630194a302335d848ff97bb07921eb6205b5f5a"
},
"x86_64_macos": {
"etag": "0x8DEA7A585F0D569",
"hash": "c40ece5407927327f94f35901727dbc604b46857e04f04ec94a310845fb71bde"
},
"x86_64_windows": {
"etag": "0x8DEA7A58639E853",
"hash": "195e786eb84ec145854f20528992e86637c77d1968731dfe6ce850c90e28f47a"
},
"aarch64_linux_musl": {
"etag": "0x8DEA7A585F39170",
"hash": "6f6cdcdc695721d91ce756e3b5bc3e3416599c464101f5e32e9c3f33054ee6d9"
},
"aarch64_macos": {
"etag": "0x8DEA7A586072A83",
"hash": "24e4d34078ae81da7c82539616f0ccac3e226cf4f74a38ce6fb3463619e50a55"
},
"aarch64_windows": {
"etag": "0x8DEA7A58626763B",
"hash": "3ebcde4f1bdfd3149c4527b85279cfc725ba7660ccf54b68b51be06a9271808e"
},
"powerpc64le_linux_musl": {
"etag": "0x8DEA7A585F64D81",
"hash": "bfcbc58e7d9132656290e18255a0bf8f8e11b78cd9a5dc143c311258c35061a9"
},
"s390x_linux_musl": {
"etag": "0x8DEA7A585EF02B4",
"hash": "589bcbddd1cdab852e1adc4f7bedf51f70a86916679544d6e27494e3b05bd43d"
}
},
"1.43": {
"version": "1.43.0"
},
"1.43.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA08832FE52CE",
"hash": "7b98251d2d08926bb5d4639b56b1f0996a58ef6667c5830e3fe3cd3ad5f4214a"
},
"x86_64_macos": {
"etag": "0x8DEA08832F2C701",
"hash": "08fd18f55037f999f50b2c2256a9285f0146978a0b16cdc58662ecdc85d0e3c0"
},
"x86_64_windows": {
"etag": "0x8DEA088330A7A24",
"hash": "c51695d171c61460369dabdd5c71b8f350ef8618466818356a30808d7105c710"
},
"aarch64_linux_musl": {
"etag": "0x8DEA08832D87EBE",
"hash": "afe92510c467f952a009b994f2d998ff8f9dd266dc26eca55d14a0dd46fec7f2"
},
"aarch64_macos": {
"etag": "0x8DEA08832E47F34",
"hash": "3640e2181c8be7a56377f3c96e520d5380c924dbafd115ee3c8d45fcbc89cac2"
},
"aarch64_windows": {
"etag": "0x8DEA088330969E6",
"hash": "4cba6630f4ae27aeb63d10e2961b7ff8212781a8c7d9fe92127fb09881b14c99"
},
"powerpc64le_linux_musl": {
"etag": "0x8DEA0883301AA66",
"hash": "8f1b2c1a8e4356c17f86b779908bb5d2e7c8256fab4a09edf7826e2eb6798289"
},
"s390x_linux_musl": {
"etag": "0x8DEA08832EAE0A4",
"hash": "f812b6f36e7478f8c1ffd78352a38153bc3205310401f0a717c0e633b7a47a5f"
}
},
"1.42": {
"version": "1.42.4"

770
manifests/tombi.json generated

File diff suppressed because it is too large Load Diff

35
manifests/trivy.json generated
View File

@@ -31,7 +31,40 @@
}
},
"latest": {
"version": "0.69.3"
"version": "0.70.0"
},
"0.70": {
"version": "0.70.0"
},
"0.70.0": {
"x86_64_linux_gnu": {
"etag": "0x8DE9C4D820E1C11",
"hash": "8b4376d5d6befe5c24d503f10ff136d9e0c49f9127a4279fd110b727929a5aa9"
},
"x86_64_macos": {
"etag": "0x8DE9C4D845AA570",
"hash": "52d531452b19e7593da29366007d02a810e1e0080d02f9cf6a1afb46c35aaa93"
},
"x86_64_windows": {
"etag": "0x8DE9C4D85B4DEF4",
"hash": "eea5442eab86f9e26cd718d7618d43899e72a83767619e8bee47911bddbfb825"
},
"aarch64_linux_gnu": {
"etag": "0x8DE9C4D829357D2",
"hash": "2f6bb988b553a1bbac6bdd1ce890f5e412439564e17522b88a4541b4f364fc8d"
},
"aarch64_macos": {
"etag": "0x8DE9C4D83C8A6C7",
"hash": "68e543c51dcc96e1c344053a4fde9660cf602c25565d9f09dc17dd41e13b838a"
},
"powerpc64le_linux_gnu": {
"etag": "0x8DE9C4D8582BCCA",
"hash": "ddc8fb59164e16a9973f46b77b7556de2923ac295731910822f0851ec9edfb01"
},
"s390x_linux_gnu": {
"etag": "0x8DE9C4D81CDB213",
"hash": "92ec9caffdcc32d43b76d21d4ecd6ea2975a2b37e050d5f79e17651c490b1753"
}
},
"0.69": {
"version": "0.69.3"

53
manifests/typos.json generated
View File

@@ -21,13 +21,60 @@
}
},
"latest": {
"version": "1.45.1"
"version": "1.46.0"
},
"1": {
"version": "1.45.1"
"version": "1.46.0"
},
"1.46": {
"version": "1.46.0"
},
"1.46.0": {
"x86_64_linux_musl": {
"etag": "0x8DEA6D3DC79A768",
"hash": "c62a626df385c96574743fd4974aeb271a41a67d080a0398e36e1a42782f614a"
},
"x86_64_macos": {
"etag": "0x8DEA6D43E71FCD4",
"hash": "ca0bba6c8a80b4981951dbc3519987d51ef3a60e0b0a462db005ad99de47b40d"
},
"x86_64_windows": {
"etag": "0x8DEA6D414B32B76",
"hash": "a95e17043bdc0b890936e0213f7a533f4ccdf5430bb7c4a26984de8c77238536"
},
"aarch64_linux_musl": {
"etag": "0x8DEA6D3BDC1A9BE",
"hash": "1f8324d5b17c7354c4a83865007efb55c8278ef4cc22bed748df6b92ca439384"
},
"aarch64_macos": {
"etag": "0x8DEA6D3EC884EB1",
"hash": "322f90609f951bc27e204cf8d0370702510ae99e87285b217916fb2c09d76111"
}
},
"1.45": {
"version": "1.45.1"
"version": "1.45.2"
},
"1.45.2": {
"x86_64_linux_musl": {
"etag": "0x8DEA476A8DDBE86",
"hash": "8463790818b926ef97bd03633ba8943549040d7defd3951e8518903f01d360a8"
},
"x86_64_macos": {
"etag": "0x8DEA476CB697B7B",
"hash": "3ff87158bdcbc4e0886a0ed291f372cc31cd2ff489d0541cea4c3c251f4f4ad5"
},
"x86_64_windows": {
"etag": "0x8DEA47714FF211E",
"hash": "c0a53545ffcc5a0d698af4dead167184b0e8c20fd06013fd58dddceadc901689"
},
"aarch64_linux_musl": {
"etag": "0x8DEA476A9A1B8B9",
"hash": "838aad0c2a22ef4d8b4195fc288e6d7d94ba54871adc6414caa8199780ae1ef5"
},
"aarch64_macos": {
"etag": "0x8DEA476FD0DC290",
"hash": "65f3f46b03383992aa96d07a88e7859ed21fd3e3314691c65079e39461c2b38e"
}
},
"1.45.1": {
"x86_64_linux_musl": {

80
manifests/uv.json generated
View File

@@ -68,10 +68,86 @@
}
},
"latest": {
"version": "0.11.6"
"version": "0.11.8"
},
"0.11": {
"version": "0.11.6"
"version": "0.11.8"
},
"0.11.8": {
"x86_64_linux_musl": {
"etag": "0x8DEA45F71233F4B",
"hash": "de82507d12e31cfc86c1c776238f7c248e48e40d996dedc812d64fdd31c6ed12"
},
"x86_64_macos": {
"etag": "0x8DEA45F7058E3D3",
"hash": "c59d73bf34b58bc8e33a11629f7a255c11789fd00f03cd3e68ab2d1603645de9"
},
"x86_64_windows": {
"etag": "0x8DEA45F70D722AA",
"hash": "c84629a56e0706b69a47ea35862208af827cb6fbfa1d0ca763c52c67594637e8"
},
"aarch64_linux_musl": {
"etag": "0x8DEA45F6D6039F9",
"hash": "29418befb64f926a2dba3473e8e69acd00b36fb845d85344ef11321a993ad8f5"
},
"aarch64_macos": {
"etag": "0x8DEA45F6CB04DA7",
"hash": "c729adb365114e844dd7f9316313a7ed6443b89bb5681d409eebac78b0bd06c8"
},
"aarch64_windows": {
"etag": "0x8DEA45F6CE7C10C",
"hash": "bb48716e74e4998993f15bc57a55e4d0d73ccbd27a66d7cbed37605f7c67d747"
},
"powerpc64le_linux_gnu": {
"etag": "0x8DEA45F6F2236AC",
"hash": "7b66bcc99237d19fb25d8b1bcbc1f973f735027d49e7cb9ffa22cd539fefccbc"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA45F6FE484F0",
"hash": "dd43289c567fda3ca59ec714ffca09125f1149289448667f36a4bb7c29c859be"
},
"s390x_linux_gnu": {
"etag": "0x8DEA45F70134F83",
"hash": "068eb3f47d0760d50cd2e0fc59cc2c09eb12a4ec8bb12c269f3aef706bf4dc1a"
}
},
"0.11.7": {
"x86_64_linux_musl": {
"etag": "0x8DE9B3889FAFD66",
"hash": "64ddb5f1087649e3f75aa50d139aa4f36ddde728a5295a141e0fa9697bfb7b0f"
},
"x86_64_macos": {
"etag": "0x8DE9B38895088C4",
"hash": "0a4bc8fcde4974ea3560be21772aeecab600a6f43fa6e58169f9fa7b3b71d302"
},
"x86_64_windows": {
"etag": "0x8DE9B3889AF7C2A",
"hash": "fe0c7815acf4fc45f8a5eff58ed3cf7ae2e15c3cf1dceadbd10c816ec1690cc1"
},
"aarch64_linux_musl": {
"etag": "0x8DE9B3886FE3806",
"hash": "46647dc16cbb7d6700f762fdd7a67d220abe18570914732bc310adc91308d272"
},
"aarch64_macos": {
"etag": "0x8DE9B388668E15F",
"hash": "66e37d91f839e12481d7b932a1eccbfe732560f42c1cfb89faddfa2454534ba8"
},
"aarch64_windows": {
"etag": "0x8DE9B3886AC2E74",
"hash": "1387e1c94e15196351196b79fce4c1e6f4b30f19cdaaf9ff85fbd6b046018aa2"
},
"powerpc64le_linux_gnu": {
"etag": "0x8DE9B3888A3CCCC",
"hash": "6ac23c519d1b06297e1e8753c96911fadee5abab4ca35b8c17da30e3e927d8ac"
},
"riscv64_linux_gnu": {
"etag": "0x8DE9B3888ADD3AA",
"hash": "2052356c7388d26dc4dfcf2d44e28b3f800785371f37c5f37d179181fe377659"
},
"s390x_linux_gnu": {
"etag": "0x8DE9B388933AB56",
"hash": "760152aa9e769712d52b6c65a8d7b86ed3aac25a24892cf5998a522d84942f9e"
}
},
"0.11.6": {
"x86_64_linux_musl": {

163
manifests/vacuum.json generated
View File

@@ -21,10 +21,169 @@
}
},
"latest": {
"version": "0.25.8"
"version": "0.26.4"
},
"0.26": {
"version": "0.26.4"
},
"0.26.4": {
"x86_64_linux_musl": {
"etag": "0x8DEA49A738E87E5",
"hash": "e1c13c3ef2814a07f83bb22e465a94f202114db38267502e4fdf2b9f4dbeda92"
},
"x86_64_macos": {
"etag": "0x8DEA49A72FEA970",
"hash": "6d0109bcc84055ca8b8ecd6a4a04ee59da52709a64e409b429bcd0fb74f4f8ca"
},
"x86_64_windows": {
"etag": "0x8DEA49A739D445F",
"hash": "f21c4227b0c64b574118877cfeb0f4465f8a19af60db49affb591daf3c7285ae"
},
"aarch64_linux_musl": {
"etag": "0x8DEA49A73B875F7",
"hash": "d0f03a55a8a7c73a2cdc00a236eec12c2899e6209618c3f1e031000c4b3eb064"
},
"aarch64_macos": {
"etag": "0x8DEA49A731021F1",
"hash": "3f2cbce7d27bc24be29deb258ac9abca821de1792fbf6114e564d13b0298e7df"
},
"aarch64_windows": {
"etag": "0x8DEA49A73CCAA9E",
"hash": "d7f9bfbee77475ac5ddd8074456cd1844345863fd38c801237311bdc08016de1"
}
},
"0.26.3": {
"x86_64_linux_musl": {
"etag": "0x8DEA3AF51982B26",
"hash": "1dbbd82f5937dce17c31c3af1790eeed2c0bb78e9abb0b135da21e529f105ad5"
},
"x86_64_macos": {
"etag": "0x8DEA3AF50B33947",
"hash": "57b4981a0b3c5853c6e36bf2922f27d324634515a78dcf1cbf1e1d928de050e9"
},
"x86_64_windows": {
"etag": "0x8DEA3AF51A2F471",
"hash": "71c86bb00fcef322cd431971521c51386fc4d3e976edf10285121b43229193c0"
},
"aarch64_linux_musl": {
"etag": "0x8DEA3AF51A70E85",
"hash": "209163b44fa1fadd7306b3572616282f13b20f909ca73aaa36ad2298ff97c6fa"
},
"aarch64_macos": {
"etag": "0x8DEA3AF50A455E2",
"hash": "68f6ccc77ea162eaa834ad2012ec78223b0135f7b95acb65261fe505fd629006"
},
"aarch64_windows": {
"etag": "0x8DEA3AF50B0A429",
"hash": "b26834cb96e0a1ebf2c743d7616b056d2a4b03049e8a7a0d44070583d41cb08d"
}
},
"0.26.2": {
"x86_64_linux_musl": {
"etag": "0x8DEA3A1443507B5",
"hash": "2b52be503b88495d68a70455bf25f1d551a4bb35b55a075da7b32bf04d3c1407"
},
"x86_64_macos": {
"etag": "0x8DEA3A14412646D",
"hash": "56496d56ea38d92db00deb912df36ff3caa894658ec8587c6e41375ff357d3a1"
},
"x86_64_windows": {
"etag": "0x8DEA3A143AC4D58",
"hash": "35ff2ff0ffaeb88177233a1f5b3d1f832ae7e33e0a21883766e1661e1f427695"
},
"aarch64_linux_musl": {
"etag": "0x8DEA3A14382AD1F",
"hash": "b86764b4941a372fbf10f1af0a4c75ec6c3fa379ec3879b8c1cfca8a8b55165a"
},
"aarch64_macos": {
"etag": "0x8DEA3A144238F2E",
"hash": "42a2b0656a0d293513b093c73de94619fc82cfcfee449fbee50cb725e42850fb"
},
"aarch64_windows": {
"etag": "0x8DEA3A143FD944D",
"hash": "48c7a2540432299dbf1c09aebfcc89c11d34b317adc53b51924711e6644953ab"
}
},
"0.26.1": {
"x86_64_linux_musl": {
"etag": "0x8DE9CB74E5A88FF",
"hash": "e5981c4df9adfe21ab63cd8d00b073b2f11d09dc7382763da6a4ee00810bdcc2"
},
"x86_64_macos": {
"etag": "0x8DE9CB74E5AAFE2",
"hash": "d1b778986b4e5aba1f533f340c8793a223880ee75f9f619c85e1cd7f06be7e65"
},
"x86_64_windows": {
"etag": "0x8DE9CB74DAAC329",
"hash": "84d518e42fd436b64deef747e10b14efd54f295fc88af607fa79e78a9dac83aa"
},
"aarch64_linux_musl": {
"etag": "0x8DE9CB74DA2B5DE",
"hash": "48a32e9affd6b37904565fcaa83f31463f523697fd19cc87d27e1fbad8f76614"
},
"aarch64_macos": {
"etag": "0x8DE9CB74E5510F4",
"hash": "d45dbc463b5cb77e440800bd8e47f735d5a97745615e5b77d1b0df850c81354b"
},
"aarch64_windows": {
"etag": "0x8DE9CB74DA1A5A8",
"hash": "158e29510ae726ffd77a9c2278ff83f1ccb995835209000aeeedd88a51f08bd3"
}
},
"0.26.0": {
"x86_64_linux_musl": {
"etag": "0x8DE9CA803D9C931",
"hash": "04e1b648096cc9fddab878fe03f1d2761c677afe5bb7e24b9814e6c28aa5b855"
},
"x86_64_macos": {
"etag": "0x8DE9CA803E63E5C",
"hash": "f5618d20dcdb47e8dd8aa43e4abaa1cf5bba4f1b5cbd13e384f59cd1247fab7f"
},
"x86_64_windows": {
"etag": "0x8DE9CA8048023EB",
"hash": "89c5e0b608f1cfe0e4651a7c4d533021d8a32fd36e6db607afb98b31e6906738"
},
"aarch64_linux_musl": {
"etag": "0x8DE9CA8047CF332",
"hash": "3f6c2c4386e594fd8f2ea407639943fca48a23aa298dd70dd29e81840eb1e800"
},
"aarch64_macos": {
"etag": "0x8DE9CA803F7B6E0",
"hash": "7fdad92a67137af1a809be812137036af2a8c859fa2e08be8949a29ca47c8007"
},
"aarch64_windows": {
"etag": "0x8DE9CA80486D327",
"hash": "52f14a24a79b47d2d2370f49e937b8c9b7dff457f815decfe9d744e25f64bd22"
}
},
"0.25": {
"version": "0.25.8"
"version": "0.25.9"
},
"0.25.9": {
"x86_64_linux_musl": {
"etag": "0x8DE9B17975790FC",
"hash": "1cebac48d4dbb57fef6aa968b1ceaeca6a2b2107d7c739d4d611006b7e1e6119"
},
"x86_64_macos": {
"etag": "0x8DE9B1797523FC7",
"hash": "bbc375b6ac24e98fa5467f3ebd1bc8b2ce36e00a822584af99b4922dab3603cc"
},
"x86_64_windows": {
"etag": "0x8DE9B17980E0620",
"hash": "a873f764edd2933a0cbd54c107d681970a3699a248c0cc182087ea89ab09d78f"
},
"aarch64_linux_musl": {
"etag": "0x8DE9B1797F542BF",
"hash": "e993bec85eb592ee47b5b14485d76189d02e1d5cccf68ddafebae7f9e510eb2a"
},
"aarch64_macos": {
"etag": "0x8DE9B17974EC142",
"hash": "fbfe8b73d2ff058cb465d553f4fe411d3b7c8ed2387bdd194445fb67674c56ea"
},
"aarch64_windows": {
"etag": "0x8DE9B1798137E3B",
"hash": "e1528b4d12baed0946e19a9057cd331ed4fc5b68f88579ea134ccfc5c1efc1dc"
}
},
"0.25.8": {
"x86_64_linux_musl": {

View File

@@ -43,10 +43,32 @@
}
},
"latest": {
"version": "0.2.118"
"version": "0.2.120"
},
"0.2": {
"version": "0.2.118"
"version": "0.2.120"
},
"0.2.120": {
"x86_64_linux_musl": {
"etag": "0x8DEA4FA606184E0",
"hash": "ceb6f0b9fea9d2868f258215a1d7f86a4c28330a0d64432cc7d53674618772d6"
},
"x86_64_macos": {
"etag": "0x8DEA4FA6066D61F",
"hash": "e5fc77cb94720b87c29d810cfb6b06133b817204795ff414e0e70b1855a3d9e0"
},
"x86_64_windows": {
"etag": "0x8DEA4FA60454309",
"hash": "d8ebacbfdbee70ffdcda0bbfefd99a645aee35ba31ba77dfa3b083f031674977"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA4FA605694B3",
"hash": "430abb4d1f2b68ba266bac223542747fcb994df2a300ed5edffc7dbaa219ff9d"
},
"aarch64_macos": {
"etag": "0x8DEA4FA60495D13",
"hash": "d736b3455c02f69c290fca92168a185451e4ea4376bf59a6052e3919d122b0b5"
}
},
"0.2.118": {
"x86_64_linux_musl": {

View File

@@ -23,10 +23,60 @@
}
},
"latest": {
"version": "1.246.2"
"version": "1.248.0"
},
"1": {
"version": "1.246.2"
"version": "1.248.0"
},
"1.248": {
"version": "1.248.0"
},
"1.248.0": {
"x86_64_linux_gnu": {
"etag": "0x8DEA544010D2FF2",
"hash": "dcd7d587b0f4644aabc85cd4471cb795de84f36a68ee01201d5261f87c0d6349"
},
"x86_64_macos": {
"etag": "0x8DEA544012D1727",
"hash": "188568c2990bb4c09a0936d84bfb6255199f97e4844cd45f418b59c3d6238788"
},
"x86_64_windows": {
"etag": "0x8DEA5440158632D",
"hash": "09063f9c0bc07f412d58a8c1a0202260231d8a94a9dfb7b81892d517de995c1c"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA544008758A3",
"hash": "cb7a3ae7a79aeb3dbcdb1d06eedea7bb45e6d5c7a21e960e14e45d582b2b9f97"
},
"aarch64_macos": {
"etag": "0x8DEA544007DED65",
"hash": "4e03e9e342176a9c52e0c25b9707c7f809daeb0f4986742258c69749681efe79"
}
},
"1.247": {
"version": "1.247.0"
},
"1.247.0": {
"x86_64_linux_gnu": {
"etag": "0x8DE9C8F3E127F12",
"hash": "66a182ad1fc991f4f537d912e1f88f15f1e0bd734de46f2c60b11b884a44cab9"
},
"x86_64_macos": {
"etag": "0x8DE9C8F3E2A5909",
"hash": "8ef61c8206f3bd29b0031b0fff7c3118c4d0b6b2f11bf87ff25ad6592bd42e32"
},
"x86_64_windows": {
"etag": "0x8DE9C8F3E2A3225",
"hash": "33b11836688c3c134089e1f8cc1408288e0e0578a342fccc55b23c89e8440dd8"
},
"aarch64_linux_gnu": {
"etag": "0x8DE9C8F3D9639EA",
"hash": "df4343257da88340461ba9ad6886701d846721c21b5a65c05700ccd1e49104b7"
},
"aarch64_macos": {
"etag": "0x8DE9C8F3DB0CFF1",
"hash": "593bdb6e396da19164dd3032c5d1441f263f16e8273e5b124a6322ff940bdf56"
}
},
"1.246": {
"version": "1.246.2"

186
manifests/wasmtime.json generated
View File

@@ -35,13 +35,121 @@
}
},
"latest": {
"version": "43.0.1"
"version": "44.0.1"
},
"44": {
"version": "44.0.1"
},
"44.0": {
"version": "44.0.1"
},
"44.0.1": {
"x86_64_linux_gnu": {
"etag": "0x8DEA6D32DF31DFF",
"hash": "afd58715f105e3a7f454169daed22168c5736ec5f225fb04c4ac62c54c9508a3"
},
"x86_64_macos": {
"etag": "0x8DEA6D32E761250",
"hash": "db1b9ae473022eb8d6d15241d4f4f29fee0009017bb40465329c1d918efd57b7"
},
"x86_64_windows": {
"etag": "0x8DEA6D32FC4244F",
"hash": "229c645305216a8c0d84f87b867930e82e07438bacb321a24d71039c4e162ea3"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA6D32A83CF17",
"hash": "9ec1e606c541099a7e8266865494e190a6f928abb3a2fb7bb4195fd2e8499d2b"
},
"aarch64_macos": {
"etag": "0x8DEA6D32A9DC97F",
"hash": "ebdf36f0748993144c16ac17ae37f51141f1d7f70eaaf0680e0ef65166d171ff"
},
"aarch64_windows": {
"etag": "0x8DEA6D32B6C8C90",
"hash": "bf73533744da65545d0be3a48eeb4b1ce34ba444bc461dc11fb5c14015883e7c"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA6D32C91C0D1",
"hash": "5bbc250e7e285a61f74d2962e4c2053c23e69b96d88c21218463478e7593a928"
},
"s390x_linux_gnu": {
"etag": "0x8DEA6D32D20B587",
"hash": "978109b54a648803c3d06632fec4814cf098d5e9ab5db4ede15d3313342a42c2"
}
},
"44.0.0": {
"x86_64_linux_gnu": {
"etag": "0x8DE9EECC1A2BBAE",
"hash": "52eba06fe9f4364aa6164a4a3eafb2ca692ba9a756cbe8137b5574871f8cbfc8"
},
"x86_64_macos": {
"etag": "0x8DE9EECC1F8DF49",
"hash": "cd8043448157abc72fa1bd1b9e66ede23e48fefbab80b2744763d25b65f69662"
},
"x86_64_windows": {
"etag": "0x8DE9EECC356232C",
"hash": "6139de7554514c2df1e30cec9b1e6ca493685ece23a039f987b55bf32bc42a57"
},
"aarch64_linux_gnu": {
"etag": "0x8DE9EECBE872014",
"hash": "294cae921fb88cbbcb60a914eaaaf313df3249d718609afb5804186b3f1912f5"
},
"aarch64_macos": {
"etag": "0x8DE9EECBEC6A0D2",
"hash": "38a3b9d9fe64cee21bc9d9268e2c19fa35a7be59e030717545b84da0e6514eab"
},
"aarch64_windows": {
"etag": "0x8DE9EECBF6FB731",
"hash": "34d9e5b42b18893649c895d7794cad8866b82d1382fb5f2953ccf1306853a237"
},
"riscv64_linux_gnu": {
"etag": "0x8DE9EECC08BF58F",
"hash": "6e747f4ec40b1c5959ff002f147cbf1487a667cce42b690ad907ff0aefb0c707"
},
"s390x_linux_gnu": {
"etag": "0x8DE9EECC0E549D0",
"hash": "2bbbaeb0114c7ca4c6b9f9cceed616cb19858f961ab34bab899e2c3e86d22d31"
}
},
"43": {
"version": "43.0.1"
"version": "43.0.2"
},
"43.0": {
"version": "43.0.1"
"version": "43.0.2"
},
"43.0.2": {
"x86_64_linux_gnu": {
"etag": "0x8DEA6D3507DE0B3",
"hash": "06a0b36fd70b6fe4efc3a52325907cbfbb7513c9e1faced9b12e1113d3b89980"
},
"x86_64_macos": {
"etag": "0x8DEA6D3523F8EFE",
"hash": "34e3ad503a5cf2578489d5aa998ef1038bfb862aebc593a4411daf9f2851c34d"
},
"x86_64_windows": {
"etag": "0x8DEA6D353933FF1",
"hash": "9ccbc8f46d058425be56e694a7128f008cb660a7cfa302fff9836bb17a4bf5fe"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA6D34BC901B0",
"hash": "2febb5cdbe18992e5a87598e4f58afddb4509b4ae9a1b0ebe7af4e56e14039e8"
},
"aarch64_macos": {
"etag": "0x8DEA6D34C60ED05",
"hash": "cbe9eeb255f128d0f7eca1b05c081b5fb825ecbcba9dfd2d8c53faa668ada85b"
},
"aarch64_windows": {
"etag": "0x8DEA6D34CCEC367",
"hash": "c66ece2ee99f4b9720274d2633c120a51593d4d7e5651403a333705f0444214e"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA6D34F309128",
"hash": "98569e42abb91aab6a57c9afcb91a6ca22aceffc1c6b3849b03ca453cc1554a2"
},
"s390x_linux_gnu": {
"etag": "0x8DEA6D34F445102",
"hash": "461ffa1530b3877d8ea6a0a86ed0f4a4404cba0daede69e0eddeba9a24d921ca"
}
},
"43.0.1": {
"x86_64_linux_gnu": {
@@ -964,10 +1072,44 @@
}
},
"36": {
"version": "36.0.7"
"version": "36.0.8"
},
"36.0": {
"version": "36.0.7"
"version": "36.0.8"
},
"36.0.8": {
"x86_64_linux_gnu": {
"etag": "0x8DEA6D592BD7544",
"hash": "fe5f010499235a4172b597af54ba5d45f86f1dee61f9529cc5e314ba6b0b2bb7"
},
"x86_64_macos": {
"etag": "0x8DEA6D593F66967",
"hash": "1670ade5e6cd08370447742114be7f5f7dfbd44e963ee5903bf26a3b703b2017"
},
"x86_64_windows": {
"etag": "0x8DEA6D599970FB4",
"hash": "2351cd027b369236535f8e5e3f8cb576cec21ed148199d25e5e800f880bcd2f3"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA6D57F60F151",
"hash": "a1d66230a10d5a4d46abf8fcca7fd90cb33eaeed890c20709a7aa2f50a49fdb6"
},
"aarch64_macos": {
"etag": "0x8DEA6D580CF860C",
"hash": "4ed5053241efebff0e05c337826dfc95a8936d77eedf5d1411bc2e7c86cea3cf"
},
"aarch64_windows": {
"etag": "0x8DEA6D583E7538E",
"hash": "7e1b0ffdd1254c4ecd0b315c404c8f6a56019af7b794551d884bacdca9ddc84b"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA6D58AA2170A",
"hash": "2f9ced83a597ca38acd7a1e6b370f1524603693733b5ec262e37a9d2ec386175"
},
"s390x_linux_gnu": {
"etag": "0x8DEA6D58BED6D0B",
"hash": "09b4037c8644b405e185dbcf3fd3e8c9dec486081919398a48aa295b6bb83c93"
}
},
"36.0.7": {
"x86_64_linux_gnu": {
@@ -2108,10 +2250,40 @@
}
},
"24": {
"version": "24.0.7"
"version": "24.0.8"
},
"24.0": {
"version": "24.0.7"
"version": "24.0.8"
},
"24.0.8": {
"x86_64_linux_gnu": {
"etag": "0x8DEA6CB10789DE8",
"hash": "d125e9a7179481cdafe9a81151680f5623eff0eea9154fe265f81e5f382f88e8"
},
"x86_64_macos": {
"etag": "0x8DEA6CB11B9C61D",
"hash": "3066f5f5b29af52cd41a1fd70dbd25cb5344f2b49877771a5e44c836382c95ff"
},
"x86_64_windows": {
"etag": "0x8DEA6CB16FD2537",
"hash": "a85c5252c8838c0a26c87d8eb95db5854789cdc2f4d4fcb05c4b70880d3141f8"
},
"aarch64_linux_gnu": {
"etag": "0x8DEA6CB061F4C45",
"hash": "b8c31f837a5da7752157551f69dcb1e57f46fa211ee478f8c99a5f3e2ffc347d"
},
"aarch64_macos": {
"etag": "0x8DEA6CB076F3116",
"hash": "6625aad2e9145ef75dcf19e671a1602a8076cbe4b2adb1af8d39d5aff419559c"
},
"riscv64_linux_gnu": {
"etag": "0x8DEA6CB08E5F9DA",
"hash": "7d61a9dec9c6a21ec1687317060dcc5a051343c594851451137569c82c10d7d7"
},
"s390x_linux_gnu": {
"etag": "0x8DEA6CB0A449AFC",
"hash": "a76d17296de0932f384896a9efbda6712a0a5cbf2f63bf466a1987241f3a0885"
}
},
"24.0.7": {
"x86_64_linux_gnu": {

View File

@@ -6,11 +6,13 @@ trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit w
cd -- "$(dirname -- "$0")"/../..
# They don't provide prebuilt binaries for musl or old glibc host.
# version `GLIBC_2.35' not found
# version `GLIBC_2.39' not found
glibc_pre_2_39_incompat=(
cargo-deb
cargo-spellcheck
zizmor
)
# version `GLIBC_2.35' not found
glibc_pre_2_35_incompat=(
"${glibc_pre_2_39_incompat[@]}"
zola
@@ -19,7 +21,6 @@ glibc_pre_2_35_incompat=(
glibc_pre_2_34_incompat=(
"${glibc_pre_2_35_incompat[@]}"
cargo-sort
cargo-spellcheck
espup
wait-for-them
xbuild
@@ -38,6 +39,7 @@ glibc_pre_2_28_incompat=(
glibc_pre_2_27_incompat=(
"${glibc_pre_2_28_incompat[@]}"
cargo-watch
cyclonedx
mdbook-linkcheck
protoc
valgrind
@@ -46,6 +48,7 @@ glibc_pre_2_27_incompat=(
glibc_pre_2_17_incompat=(
"${glibc_pre_2_27_incompat[@]}"
deepsource # https://github.com/DeepSourceCorp/cli/issues/245
rust
)
musl_incompat=(
"${glibc_pre_2_17_incompat[@]}"
@@ -148,6 +151,10 @@ for manifest in tools/codegen/base/*.json; do
fi
case "${host_os}" in
linux*)
# cargo-apple-runner is not supported on Linux
if [[ "${tool_name}" == "cargo-apple-runner" ]]; then
continue
fi
if [[ "${host_arch}" != "x86_64" ]] && [[ "$(jq -r --arg p "${host_arch}_${host_os}_gnu" '.platform[$p]' "${manifest}")" == "null" ]] && [[ "$(jq -r --arg p "${host_arch}_${host_os}_musl" '.platform[$p]' "${manifest}")" == "null" ]]; then
continue
fi
@@ -188,6 +195,41 @@ if [[ "${version}" != "latest" ]]; then
fi
# Not manifest-based
case "${runner}" in
# requires glibc 2.17 / musl 1.2
centos:6 | alpine:3.2) ;;
*)
case $((RANDOM % 4)) in
0) rust=rust ;;
1) rust=rust@stable ;;
2) rust=rust@nightly ;;
3) rust=rust@1.93 ;;
esac
case $((RANDOM % 3)) in
0) ;;
1) rust+='+thumbv6m-none-eabi' ;;
2) rust+=' + thumbv6m-none-eabi' ;;
esac
if [[ "${rust}" == *'nightly'* ]]; then
component=miri
else
component=rustfmt
fi
case $((RANDOM % 5)) in
0) ;;
1) rust+="+${component}" ;;
2) rust+=" + ${component}" ;;
3) rust+=" +${component}" ;;
4) rust+="+ ${component}" ;;
esac
case $((RANDOM % 3)) in
0) ;;
1) rust+='+thumbv7m-none-eabi' ;;
2) rust+=' + thumbv7m-none-eabi' ;;
esac
tools+=("${rust}")
;;
esac
case "${host_os}" in
linux*)
# Installing snap to container is difficult...

View File

@@ -0,0 +1,11 @@
{
"repository": "https://github.com/madsmtm/cargo-apple-runner",
"license_markdown": "[Zlib](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-ZLIB.txt) OR [Apache-2.0](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-APACHE.txt) OR [MIT](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-MIT.txt)",
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": "${package}-${rust_target}.tar.gz",
"platform": {
"x86_64_macos": {},
"aarch64_macos": {}
}
}

View File

@@ -4,7 +4,7 @@
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": "${package}-${rust_target}.zip",
"version_range": "latest",
"version_range": "=1.18.1",
"signing": {
"kind": "minisign-binstall"
},
@@ -18,6 +18,9 @@
"asset_name": "${package}-${rust_target}.tgz"
},
"aarch64_macos": {},
"aarch64_windows": {}
"aarch64_windows": {},
"riscv64_linux_musl": {
"asset_name": "${package}-${rust_target}.tgz"
}
}
}

View File

@@ -3,12 +3,17 @@
"license_markdown": "[LGPLv2.1](https://github.com/drahnr/cargo-spellcheck/blob/master/LICENSE-LGPL)",
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": "${package}-v${version}-${rust_target}",
"asset_name": "${package}-v${version}-${rust_target}${exe}",
"version_range": ">= 0.13",
"platform": {
"x86_64_linux_gnu": {},
"x86_64_windows": {
"asset_name": "${package}-v${version}-x86_64-pc-windows-gnu.exe"
}
"asset_name": [
"${package}-v${version}-${rust_target}${exe}",
"${package}-v${version}-x86_64-pc-windows-gnu${exe}"
]
},
"aarch64_linux_gnu": {},
"aarch64_windows": {}
}
}

View File

@@ -0,0 +1,20 @@
{
"repository": "https://github.com/danieleades/mdbook-d2",
"license_markdown": "[MIT](https://github.com/danieleades/mdbook-d2/blob/main/LICENSE)",
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": [
"${package}-${rust_target}.tar.gz",
"${package}-${rust_target}.zip"
],
"bin": "${package}${exe}",
"version_range": ">= 0.3.8",
"platform": {
"x86_64_linux_musl": {},
"x86_64_macos": {},
"x86_64_windows": {},
"aarch64_linux_musl": {},
"aarch64_macos": {},
"aarch64_windows": {}
}
}

View File

@@ -6,22 +6,38 @@
"version_range": ">= 0.7",
"platform": {
"x86_64_linux_musl": {
"asset_name": "tombi-cli-${version}-x86_64-unknown-linux-musl.gz"
"asset_name": [
"${package}-cli-${version}-x86_64-unknown-linux-musl.tar.gz",
"${package}-cli-${version}-x86_64-unknown-linux-musl.gz"
],
"bin": "${package}-cli-${version}-x86_64-unknown-linux-musl/${package}"
},
"x86_64_macos": {
"asset_name": "tombi-cli-${version}-x86_64-apple-darwin.gz"
"asset_name": [
"${package}-cli-${version}-x86_64-apple-darwin.tar.gz",
"${package}-cli-${version}-x86_64-apple-darwin.gz"
],
"bin": "${package}-cli-${version}-x86_64-apple-darwin/${package}"
},
"x86_64_windows": {
"asset_name": "tombi-cli-${version}-x86_64-pc-windows-msvc.zip"
"asset_name": "${package}-cli-${version}-x86_64-pc-windows-msvc.zip"
},
"aarch64_linux_musl": {
"asset_name": "tombi-cli-${version}-aarch64-unknown-linux-musl.gz"
"asset_name": [
"${package}-cli-${version}-aarch64-unknown-linux-musl.tar.gz",
"${package}-cli-${version}-aarch64-unknown-linux-musl.gz"
],
"bin": "${package}-cli-${version}-aarch64-unknown-linux-musl/${package}"
},
"aarch64_macos": {
"asset_name": "tombi-cli-${version}-aarch64-apple-darwin.gz"
"asset_name": [
"${package}-cli-${version}-aarch64-apple-darwin.tar.gz",
"${package}-cli-${version}-aarch64-apple-darwin.gz"
],
"bin": "${package}-cli-${version}-aarch64-apple-darwin/${package}"
},
"aarch64_windows": {
"asset_name": "tombi-cli-${version}-aarch64-pc-windows-msvc.zip"
"asset_name": "${package}-cli-${version}-aarch64-pc-windows-msvc.zip"
}
}
}

View File

@@ -129,7 +129,9 @@ fn main() {
let mut latest_only = false;
if let Some(version_range) = &base_info.version_range {
if version_range == "latest" {
if version_range == "latest"
|| version_range.starts_with('=') && !version_range.contains(',')
{
latest_only = true;
}
}
@@ -171,13 +173,20 @@ fn main() {
let version_req: semver::VersionReq = match version_req {
_ if latest_only => {
// Exclude very recently released version from candidate for latest version.
let req =
format!("={}", releases.iter().find(|r| r.1.1.published_at <= before).unwrap().0.0)
.parse()
.unwrap();
eprintln!("update manifest for versions '{req}'");
req
let version_range = base_info.version_range.as_ref().unwrap();
if version_range == "latest" {
// Exclude very recently released version from candidate for latest version.
let req = format!(
"={}",
releases.iter().find(|r| r.1.1.published_at <= before).unwrap().0.0
)
.parse()
.unwrap();
eprintln!("update manifest for versions '{req}'");
req
} else {
version_range.parse().unwrap()
}
}
None => match base_info.version_range {
Some(version_range) => version_range.parse().unwrap(),

View File

@@ -52,18 +52,32 @@ fn main() {
let mut paths: Vec<_> = fs::read_dir(&manifest_dir).unwrap().map(|r| r.unwrap()).collect();
paths.sort_by_key(fs_err::DirEntry::path);
let mut tools = vec![MarkdownEntry {
name: "valgrind".to_owned(),
alias: None,
website: "https://valgrind.org/".to_owned(),
installed_to: InstalledTo::Snap,
installed_from: InstalledFrom::Snap,
platforms: Platforms { linux: true, ..Default::default() },
repository: "https://sourceware.org/git/valgrind.git".to_owned(),
license_markdown:
"[GPL-2.0](https://sourceware.org/git/?p=valgrind.git;a=blob;f=COPYING;hb=HEAD)"
.to_owned(),
}];
let mut tools = vec![
MarkdownEntry {
name: "rust".to_owned(),
alias: None,
website: "https://rust-lang.org".to_owned(),
installed_to: InstalledTo::Cargo,
installed_from: InstalledFrom::Rustup,
platforms: Platforms { linux: true, macos: true, windows: true },
repository: "https://github.com/rust-lang/rust".to_owned(),
license_markdown:
"[Apache-2.0 OR MIT](https://github.com/rust-lang/rust/blob/main/COPYRIGHT)"
.to_owned(),
},
MarkdownEntry {
name: "valgrind".to_owned(),
alias: None,
website: "https://valgrind.org/".to_owned(),
installed_to: InstalledTo::Snap,
installed_from: InstalledFrom::Snap,
platforms: Platforms { linux: true, ..Default::default() },
repository: "https://sourceware.org/git/valgrind.git".to_owned(),
license_markdown:
"[GPL-2.0](https://sourceware.org/git/?p=valgrind.git;a=blob;f=COPYING;hb=HEAD)"
.to_owned(),
},
];
for path in paths {
let file_name = path.file_name();
@@ -153,6 +167,7 @@ struct MarkdownEntry {
#[derive(Debug, Eq, PartialEq)]
enum InstalledFrom {
GitHubRelease,
Rustup,
Snap,
}
@@ -215,6 +230,9 @@ impl fmt::Display for MarkdownEntry {
let markdown = format!("| [GitHub Releases]({}/releases) ", self.repository);
f.write_str(&markdown)?;
}
InstalledFrom::Rustup => {
f.write_str("| rustup ")?;
}
InstalledFrom::Snap => {
let markdown =
format!("| [snap](https://snapcraft.io/install/{}/ubuntu) ", self.name);

37
tools/rustup-hash.sh Executable file
View File

@@ -0,0 +1,37 @@
#!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0 OR MIT
set -CeEuo pipefail
IFS=$'\n\t'
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
cd -- "$(dirname -- "$0")"/..
# Get sha256 hash of rustup-init binaries
# NB: Synch with main.sh.
rustup_version=1.29.0
targets=(
x86_64-unknown-linux-gnu
x86_64-unknown-linux-musl
aarch64-unknown-linux-gnu
aarch64-unknown-linux-musl
powerpc64le-unknown-linux-gnu
powerpc64le-unknown-linux-musl
riscv64gc-unknown-linux-gnu
# riscv64gc-unknown-linux-musl # tier 2 without host tools
s390x-unknown-linux-gnu
# s390x-unknown-linux-musl # tier 3
x86_64-apple-darwin
aarch64-apple-darwin
x86_64-pc-windows-msvc
aarch64-pc-windows-msvc
)
for rust_target in "${targets[@]}"; do
exe=''
case "${rust_target}" in
*-windows*) exe=.exe ;;
esac
url="https://static.rust-lang.org/rustup/archive/${rustup_version}/${rust_target}/rustup-init${exe}.sha256"
printf '%s: ' "${rust_target}"
curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "${url}" | cut -d' ' -f1
done

View File

@@ -9,13 +9,22 @@ cd -- "$(dirname -- "$0")"/..
# GITHUB_TOKEN=$(gh auth token) ./tools/tidy.sh
#
# Note: This script requires the following tools:
# - docker
# - docker or podman (or compatible CLI specified by TIDY_DOCKER_PATH. when both available and TIDY_DOCKER_PATH is not set, docker is preferred)
#
# This script is shared by projects under github.com/taiki-e, so there may also
# be checks for files not included in this repository, but they will be skipped
# if the corresponding files do not exist.
# It is not intended for manual editing.
bail() {
if [[ -n "${GITHUB_ACTIONS:-}" ]]; then
printf '::error::%s\n' "$*"
else
printf >&2 'error: %s\n' "$*"
fi
exit 1
}
if [[ $# -gt 0 ]]; then
cat <<EOF
USAGE:
@@ -24,24 +33,29 @@ EOF
exit 1
fi
image='ghcr.io/taiki-e/tidy'
if [[ -n "${TIDY_DEV:-}" ]]; then
image="ghcr.io/taiki-e/tidy:latest"
image+=':latest'
else
image="ghcr.io/taiki-e/tidy@sha256:bce85a4321f80c09f2b68420e9149bcf7c085130ab1e1fca54443f76833cd184"
image+='@sha256:4d7ec52a86bd3c0a2d96627b0ec3aa534afc02c2d56fc9a898df64e29aa03312'
fi
user="$(id -u):$(id -g)"
workdir=$(pwd)
tmp=$(mktemp -d)
trap -- 'rm -rf -- "${tmp:?}"' EXIT
mkdir -p -- "${tmp}"/{pwsh-cache,pwsh-local,zizmor-cache,dummy-dir,tmp}
touch -- "${tmp}"/dummy
printf '' >"${tmp}"/dummy
code=0
color=''
if [[ -t 1 ]] || [[ -n "${GITHUB_ACTIONS:-}" ]]; then
color=1
fi
# Refs:
# - https://docs.docker.com/reference/cli/docker/container/run/
# - https://docs.podman.io/en/latest/markdown/podman-run.1.html
# - https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html
common_args=(
run --rm --init -i --user "${user}"
run --rm --init
--cap-drop=all
--security-opt=no-new-privileges
--read-only
@@ -59,6 +73,30 @@ common_args=(
--env TIDY_EXPECTED_SHELL_FILE_COUNT
--env TIDY_EXPECTED_DOCKER_FILE_COUNT
)
if [[ -n "${TIDY_DOCKER_PATH:-}" ]]; then
docker="${TIDY_DOCKER_PATH}"
elif type -P docker >/dev/null; then
docker='docker'
elif type -P podman >/dev/null; then
docker='podman'
else
bail 'this script requires docker or podman'
fi
rootless=''
if [[ "$("${docker}" --version)" == *'podman'* ]]; then
if [[ "$("${docker}" info)" == *'rootless: true'* ]]; then
rootless=1
fi
elif [[ "$("${docker}" info -f '{{println .SecurityOptions}}')" == *'rootless'* ]]; then
rootless=1
fi
if [[ -n "${rootless}" ]]; then
printf 'docker path: %s\n' "${docker} (rootless)"
else
printf 'docker path: %s\n' "${docker}"
common_args+=(--user "${user}")
fi
# Map ignored files (e.g., .env) to dummy files.
while IFS= read -r path; do
if [[ -d "${path}" ]]; then
@@ -73,7 +111,7 @@ while IFS= read -r path; do
done < <(git status --porcelain --ignored | grep -E '^!!' | cut -d' ' -f2)
docker_run() {
docker "${common_args[@]}" "$@"
"${docker}" "${common_args[@]}" "$@"
code2="$?"
if [[ ${code} -eq 0 ]] && [[ ${code2} -ne 0 ]]; then
code="${code2}"
@@ -83,6 +121,7 @@ docker_run() {
set +e
docker_run \
--mount "type=bind,source=${workdir},target=${workdir}" --workdir "${workdir}" \
--mount "type=bind,source=${workdir}/.git,target=${workdir}/.git,readonly" \
--mount "type=bind,source=${tmp}/tmp,target=/tmp/tidy" \
--mount "type=bind,source=${tmp}/pwsh-cache,target=/.cache/powershell" \
--mount "type=bind,source=${tmp}/pwsh-local,target=/.local/share/powershell" \