mirror of
https://github.com/taiki-e/install-action.git
synced 2026-05-03 11:40:35 +00:00
Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fd0f63e180 | ||
|
|
7487d4091f | ||
|
|
ea3bdd400e | ||
|
|
7d31177690 | ||
|
|
b933e429e1 | ||
|
|
3eeb0f944d | ||
|
|
0fde6d128a | ||
|
|
6abbc18f77 | ||
|
|
cd20062255 | ||
|
|
a164de717a | ||
|
|
cd919aa8c5 | ||
|
|
8f41066dca | ||
|
|
704f92c11d | ||
|
|
38b59bc959 | ||
|
|
a20bdf712d | ||
|
|
cc73724b43 | ||
|
|
80a23c5ba9 | ||
|
|
5c17a3192f | ||
|
|
4bb73acd2d |
1
.github/.cspell/project-dictionary.txt
vendored
1
.github/.cspell/project-dictionary.txt
vendored
@@ -27,6 +27,7 @@ pluginconf
|
||||
ppcle
|
||||
prek
|
||||
quickinstall
|
||||
rclone
|
||||
rdme
|
||||
rootfs
|
||||
sccache
|
||||
|
||||
4
.github/dependabot.yml
vendored
4
.github/dependabot.yml
vendored
@@ -1,6 +1,6 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: cargo
|
||||
- package-ecosystem: cargo # zizmor: ignore[dependabot-cooldown] # Unless dependencies are pinned/locked, the effect is limited.
|
||||
directory: /
|
||||
schedule:
|
||||
interval: daily
|
||||
@@ -14,6 +14,8 @@ updates:
|
||||
directory: /
|
||||
schedule:
|
||||
interval: daily
|
||||
cooldown:
|
||||
default-days: 7
|
||||
commit-message:
|
||||
prefix: ''
|
||||
labels: []
|
||||
|
||||
3
.github/workflows/ci.yml
vendored
3
.github/workflows/ci.yml
vendored
@@ -155,7 +155,7 @@ jobs:
|
||||
- run: env
|
||||
- uses: ./
|
||||
with:
|
||||
# NB: Update alias list in tools/publish.rs, case for aliases in main.sh,
|
||||
# NB: Update alias list in release.yml, case for aliases in main.sh,
|
||||
# and match for alias for tools/codegen/src/tools-markdown.rs.
|
||||
tool: |
|
||||
nextest
|
||||
@@ -215,6 +215,7 @@ jobs:
|
||||
- ubuntu:20.04 # glibc 2.31
|
||||
- ubuntu:22.04 # glibc 2.35
|
||||
- ubuntu:24.04 # glibc 2.39
|
||||
- ubuntu:26.04 # glibc 2.42
|
||||
- debian:9-slim # glibc 2.24
|
||||
- debian:10-slim # glibc 2.28
|
||||
- debian:11-slim # glibc 2.31
|
||||
|
||||
160
.github/workflows/release.yml
vendored
160
.github/workflows/release.yml
vendored
@@ -39,6 +39,7 @@ jobs:
|
||||
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() {
|
||||
@@ -90,7 +91,6 @@ jobs:
|
||||
printf '%s\n' "release-date=${release_date}" >>"${GITHUB_OUTPUT}"
|
||||
|
||||
# Get the current revision.
|
||||
retry git fetch origin &>/dev/null
|
||||
rev=$(git rev-parse HEAD)
|
||||
printf '%s\n' "rev: ${rev}"
|
||||
printf '%s\n' "rev=${rev}" >>"${GITHUB_OUTPUT}"
|
||||
@@ -222,6 +222,7 @@ jobs:
|
||||
- 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() {
|
||||
@@ -257,7 +258,9 @@ jobs:
|
||||
release_date="${RELEASE_DATE}"
|
||||
|
||||
# Make sure the current revision is same as prepare step.
|
||||
retry git fetch origin &>/dev/null
|
||||
# --unshallow is necessary to successfully push the
|
||||
# "releases/${major_version_tag}" branch in the subsequent step.
|
||||
retry git fetch origin --unshallow &>/dev/null
|
||||
rev=$(git rev-parse HEAD)
|
||||
if [[ "${rev}" != "${PREPARE_REV}" ]]; then
|
||||
bail "revision difference between prepare step"
|
||||
@@ -322,97 +325,90 @@ jobs:
|
||||
set -x
|
||||
git tag "${tag}"
|
||||
retry git push origin HEAD
|
||||
retry git push origin refs/tags/"${tag}"
|
||||
|
||||
major_version_tag="v${version%%.*}"
|
||||
git branch "releases/${major_version_tag}"
|
||||
git tag -f "${major_version_tag}"
|
||||
refs=("refs/heads/releases/${major_version_tag}" "+refs/tags/${major_version_tag}")
|
||||
refs=("refs/tags/${tag}" "refs/heads/releases/${major_version_tag}" "+refs/tags/${major_version_tag}")
|
||||
|
||||
if [[ "${INSTALL_ACTION}" == 'true' ]]; then
|
||||
tools=()
|
||||
for tool in tools/codegen/base/*.json; do
|
||||
tool="${tool##*/}"
|
||||
tools+=("${tool%.*}")
|
||||
done
|
||||
# Aliases.
|
||||
# NB: Update case for aliases in main.sh, tool input option in test-alias job
|
||||
# in .github/workflows/ci.yml, and match for alias for tools/codegen/src/tools-markdown.rs.
|
||||
tools+=(
|
||||
nextest
|
||||
taplo-cli
|
||||
typos-cli
|
||||
wasm-bindgen-cli
|
||||
wasmtime-cli
|
||||
)
|
||||
# Non-manifest-based tools.
|
||||
tools+=(valgrind)
|
||||
tools=()
|
||||
for tool in tools/codegen/base/*.json; do
|
||||
tool="${tool##*/}"
|
||||
tools+=("${tool%.*}")
|
||||
done
|
||||
# Aliases.
|
||||
# NB: Update case for aliases in main.sh, tool input option in test-alias job
|
||||
# in .github/workflows/ci.yml, and match for alias for tools/codegen/src/tools-markdown.rs.
|
||||
tools+=(
|
||||
nextest
|
||||
taplo-cli
|
||||
typos-cli
|
||||
wasm-bindgen-cli
|
||||
wasmtime-cli
|
||||
)
|
||||
# Non-manifest-based tools.
|
||||
tools+=(valgrind)
|
||||
|
||||
branches=()
|
||||
for tool in "${tools[@]}"; do
|
||||
git checkout -b "releases/${tool}"
|
||||
sed -E "${in_place[@]}" action.yml \
|
||||
-e "s/required: true/required: false/g" \
|
||||
-e "s/# default: #publish:tool/default: ${tool}/g"
|
||||
git add action.yml
|
||||
git commit -m "${tool}"
|
||||
git tag -f "${tool}"
|
||||
git checkout main
|
||||
refs+=("+refs/heads/releases/${tool}" "+refs/tags/${tool}")
|
||||
branches+=("releases/${tool}")
|
||||
done
|
||||
fi
|
||||
branches=()
|
||||
for tool in "${tools[@]}"; do
|
||||
git checkout -b "releases/${tool}"
|
||||
sed -E "${in_place[@]}" action.yml \
|
||||
-e "s/required: true/required: false/g" \
|
||||
-e "s/# default: #publish:tool/default: ${tool}/g"
|
||||
git add action.yml
|
||||
git commit -m "${tool}"
|
||||
git tag -f "${tool}"
|
||||
git checkout refs/tags/"${tag}"
|
||||
refs+=("+refs/heads/releases/${tool}" "+refs/tags/${tool}")
|
||||
branches+=("releases/${tool}")
|
||||
done
|
||||
|
||||
retry git push origin --atomic "${refs[@]}"
|
||||
git branch -d "releases/${major_version_tag}"
|
||||
git branch -D "${branches[@]}"
|
||||
|
||||
if [[ "${INSTALL_ACTION}" == 'true' ]]; then
|
||||
git branch -D "${branches[@]}"
|
||||
|
||||
schema_workspace=/tmp/workspace
|
||||
rm -rf -- "${schema_workspace}"
|
||||
# Checkout manifest-schema branch
|
||||
schema_version="$(cargo metadata --format-version=1 --no-deps | jq -r '.packages[] | select(.name == "install-action-manifest-schema") | .version')"
|
||||
if [[ "${schema_version}" == "0."* ]]; then
|
||||
schema_version="0.$(cut -d. -f2 <<<"${schema_version}")"
|
||||
else
|
||||
schema_version="$(cut -d. -f1 <<<"${schema_version}")"
|
||||
fi
|
||||
schema_branch="manifest-schema-${schema_version}"
|
||||
|
||||
git worktree add --force "${schema_workspace}"
|
||||
(
|
||||
cd -- "${schema_workspace}"
|
||||
if git fetch origin "${schema_branch}"; then
|
||||
git checkout "origin/${schema_branch}" -B "${schema_branch}"
|
||||
elif ! git checkout "${schema_branch}"; then
|
||||
# New branch with no history. Credit: https://stackoverflow.com/a/13969482
|
||||
git checkout --orphan "${schema_branch}"
|
||||
git rm -rf -- . || true
|
||||
git commit -m 'Initial commit' --allow-empty
|
||||
fi
|
||||
)
|
||||
|
||||
# Copy over schema
|
||||
cp -- ./manifests/* "${schema_workspace}"
|
||||
|
||||
(
|
||||
cd -- "${schema_workspace}"
|
||||
# Stage changes
|
||||
git add .
|
||||
# Detect changes, then commit and push if changes exist
|
||||
if [[ "$(git status --porcelain=v1 | LC_ALL=C wc -l)" != "0" ]]; then
|
||||
git commit -m 'Update manifest schema'
|
||||
retry git push origin HEAD
|
||||
fi
|
||||
)
|
||||
|
||||
rm -rf -- "${schema_workspace}"
|
||||
git worktree prune
|
||||
# TODO: get branch in schema_workspace dir instead
|
||||
git branch -D "${schema_branch}" "${schema_workspace##*/}"
|
||||
|
||||
schema_workspace=/tmp/workspace
|
||||
rm -rf -- "${schema_workspace}"
|
||||
# Checkout manifest-schema branch
|
||||
schema_version="$(cargo metadata --format-version=1 --no-deps | jq -r '.packages[] | select(.name == "install-action-manifest-schema") | .version')"
|
||||
if [[ "${schema_version}" == "0."* ]]; then
|
||||
schema_version="0.$(cut -d. -f2 <<<"${schema_version}")"
|
||||
else
|
||||
schema_version="$(cut -d. -f1 <<<"${schema_version}")"
|
||||
fi
|
||||
schema_branch="manifest-schema-${schema_version}"
|
||||
|
||||
git worktree add --force "${schema_workspace}"
|
||||
(
|
||||
cd -- "${schema_workspace}"
|
||||
if git fetch origin "${schema_branch}"; then
|
||||
git checkout "origin/${schema_branch}" -B "${schema_branch}"
|
||||
elif ! git checkout "${schema_branch}"; then
|
||||
# New branch with no history. Credit: https://stackoverflow.com/a/13969482
|
||||
git checkout --orphan "${schema_branch}"
|
||||
git rm -rf -- . || true
|
||||
git commit -m 'Initial commit' --allow-empty
|
||||
fi
|
||||
)
|
||||
|
||||
# Copy over schema
|
||||
cp -- ./manifests/* "${schema_workspace}"
|
||||
|
||||
(
|
||||
cd -- "${schema_workspace}"
|
||||
# Stage changes
|
||||
git add .
|
||||
# Detect changes, then commit and push if changes exist
|
||||
if [[ "$(git status --porcelain=v1 | LC_ALL=C wc -l)" != "0" ]]; then
|
||||
git commit -m 'Update manifest schema'
|
||||
retry git push origin HEAD
|
||||
fi
|
||||
)
|
||||
|
||||
rm -rf -- "${schema_workspace}"
|
||||
git worktree prune
|
||||
# TODO: get branch in schema_workspace dir instead
|
||||
git branch -D "${schema_branch}" "${schema_workspace##*/}"
|
||||
)
|
||||
env:
|
||||
VERSION: ${{ needs.prepare.outputs.version }}
|
||||
|
||||
2
.github/zizmor.yml
vendored
2
.github/zizmor.yml
vendored
@@ -2,10 +2,8 @@
|
||||
# https://docs.zizmor.sh/configuration/
|
||||
|
||||
rules:
|
||||
dependabot-cooldown: { disable: true } # Unless dependencies are pinned/locked, the effect is limited.
|
||||
secrets-inherit: { disable: true }
|
||||
unpinned-uses:
|
||||
config:
|
||||
policies:
|
||||
taiki-e/*: any
|
||||
'*': ref-pin
|
||||
|
||||
35
CHANGELOG.md
35
CHANGELOG.md
@@ -10,6 +10,34 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [2.70.1] - 2026-03-29
|
||||
|
||||
- Update `cargo-insta@latest` to 1.47.1.
|
||||
|
||||
- Update `cargo-binstall@latest` to 1.17.9.
|
||||
|
||||
- Update `tombi@latest` to 0.9.10.
|
||||
|
||||
## [2.70.0] - 2026-03-28
|
||||
|
||||
- Install `uv`, `uvw` (Windows-only), and `uvx` binaries when installing `uv`. Previously, only `uv` binary was installed. ([#1632](https://github.com/taiki-e/install-action/pull/1632))
|
||||
|
||||
## [2.69.14] - 2026-03-28
|
||||
|
||||
- Update `just@latest` to 1.48.1.
|
||||
|
||||
- Update `wasm-bindgen@latest` to 0.2.115.
|
||||
|
||||
## [2.69.13] - 2026-03-27
|
||||
|
||||
- Update `mise@latest` to 2026.3.17.
|
||||
|
||||
- Update `cargo-insta@latest` to 1.47.0.
|
||||
|
||||
## [2.69.12] - 2026-03-27
|
||||
|
||||
- Update `uv@latest` to 0.11.2.
|
||||
|
||||
## [2.69.11] - 2026-03-26
|
||||
|
||||
- Update `dprint@latest` to 0.53.1.
|
||||
@@ -6037,7 +6065,12 @@ Note: This release is considered a breaking change because installing on version
|
||||
|
||||
Initial release
|
||||
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.69.11...HEAD
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.70.1...HEAD
|
||||
[2.70.1]: https://github.com/taiki-e/install-action/compare/v2.70.0...v2.70.1
|
||||
[2.70.0]: https://github.com/taiki-e/install-action/compare/v2.69.14...v2.70.0
|
||||
[2.69.14]: https://github.com/taiki-e/install-action/compare/v2.69.13...v2.69.14
|
||||
[2.69.13]: https://github.com/taiki-e/install-action/compare/v2.69.12...v2.69.13
|
||||
[2.69.12]: https://github.com/taiki-e/install-action/compare/v2.69.11...v2.69.12
|
||||
[2.69.11]: https://github.com/taiki-e/install-action/compare/v2.69.10...v2.69.11
|
||||
[2.69.10]: https://github.com/taiki-e/install-action/compare/v2.69.9...v2.69.10
|
||||
[2.69.9]: https://github.com/taiki-e/install-action/compare/v2.69.8...v2.69.9
|
||||
|
||||
4
main.sh
4
main.sh
@@ -179,7 +179,7 @@ download_and_extract() {
|
||||
else
|
||||
case "${url}" in
|
||||
*.zip)
|
||||
unzip -q tmp "${bin_in_archive#\./}"
|
||||
unzip -q tmp
|
||||
for tmp in "${bin_in_archive[@]}"; do
|
||||
case "${tool}" in
|
||||
editorconfig-checker) mv -- "${tmp}" "${bin_dir}/${tool}${exe}" ;;
|
||||
@@ -763,7 +763,7 @@ for tool in "${tools[@]}"; do
|
||||
;;
|
||||
*)
|
||||
# Handle aliases.
|
||||
# NB: Update alias list in tools/publish.rs, tool input option in test-alias in .github/workflows/ci.yml,
|
||||
# NB: Update alias list in .github/workflows/release.yml, tool input option in test-alias in .github/workflows/ci.yml,
|
||||
# and match for alias for tools/codegen/src/tools-markdown.rs.
|
||||
# TODO(codegen): auto-detect cases where crate name and tool name are different.
|
||||
case "${tool}" in
|
||||
|
||||
28
manifests/cargo-binstall.json
generated
28
manifests/cargo-binstall.json
generated
@@ -22,32 +22,32 @@
|
||||
},
|
||||
"license_markdown": "[GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE)",
|
||||
"latest": {
|
||||
"version": "1.17.8"
|
||||
"version": "1.17.9"
|
||||
},
|
||||
"1.17.8": {
|
||||
"1.17.9": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8715DB8A1417",
|
||||
"hash": "1da1ef72448db667cc4ae6d48e37451087602c8c07dc61782a4a5e538303e015"
|
||||
"etag": "0x8DE8D54CBD7C8ED",
|
||||
"hash": "bdea3fd820b118576316bf69c8240f454857287717809e6ecef010faace901ff"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8715E03D9720",
|
||||
"hash": "db353e01b582c97382178db9b4dfe22d81109782e480a38f3db953e62f569952"
|
||||
"etag": "0x8DE8D54D0C7EA49",
|
||||
"hash": "1d4fbd74c15274a029dd92e19a0ead8e1831b6e6b60f0f5c3690ef517022c41c"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8715DEAA171B",
|
||||
"hash": "fef07560d4e391812091bb30c6ed1bd5289f74403a0c947b47b8a8c7a597b51b"
|
||||
"etag": "0x8DE8D54CF270B9E",
|
||||
"hash": "d17b413a19592af2cf57f9f742d49bef8837099e1407d73e79de5bc7834c4fd6"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE8715E6784BD0",
|
||||
"hash": "81d6245bd1a7a89e914d29af81d82280540e94927e61492a0fc359820cd97abb"
|
||||
"etag": "0x8DE8D54D9B48785",
|
||||
"hash": "89df253cc00a307209daee7648272bba4d8a342fce084d5922f6b3f4e4db0e25"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8715EBEC4A3F",
|
||||
"hash": "af87346fdb186f0a2333bc0a30cfddd6faa98b31145ef1bb19c284aedea65972"
|
||||
"etag": "0x8DE8D54DF4E885F",
|
||||
"hash": "021d537caa2071bbcd8ec50b210ea45af68a6983cca7780918b3603ef68d2585"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE8715EA179DDA",
|
||||
"hash": "2270a5a7a8b3e85bd5fe32ac3fbd48cfd32d6f468a8c35499af8b65b806d271d"
|
||||
"etag": "0x8DE8D54DD746155",
|
||||
"hash": "37295aa1c3aed07bda2b757f613477c8ca2de1208ec360c7d00238b6886de780"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
43
manifests/cargo-insta.json
generated
43
manifests/cargo-insta.json
generated
@@ -20,10 +20,49 @@
|
||||
},
|
||||
"license_markdown": "[Apache-2.0](https://github.com/mitsuhiko/insta/blob/master/LICENSE)",
|
||||
"latest": {
|
||||
"version": "1.46.3"
|
||||
"version": "1.47.1"
|
||||
},
|
||||
"1": {
|
||||
"version": "1.46.3"
|
||||
"version": "1.47.1"
|
||||
},
|
||||
"1.47": {
|
||||
"version": "1.47.1"
|
||||
},
|
||||
"1.47.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8D549F25E618",
|
||||
"hash": "b5c162d25f477f0a7989edc5b82297a63c69d764c3c6f2839f12a546a00c188a"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8D549EDE5832",
|
||||
"hash": "3197c099ca857e36211b7b10d383404f305e036181ca2cb42495c8d08e4dcc86"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8D549EF37620",
|
||||
"hash": "7d6cad4a8768abc2bda8f0ea244f51ae077d426e6e7bc6561503876b4eba18e8"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8D549ED08513",
|
||||
"hash": "b92971f37be1e22401de1187ee842a7e15f936838bdce06fb9d3582dd538efa7"
|
||||
}
|
||||
},
|
||||
"1.47.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8B9FBE3D26E2",
|
||||
"hash": "fcd8a57fb21e5446c12002c0f967e7630a9e4f317814427dbf35faff3797c1d9"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8B9FBDBE4C61",
|
||||
"hash": "55db1160ab8db370d3a03491a291f04e52837b4bea13b2919068a10700b085b2"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8B9FBDFA9C5D",
|
||||
"hash": "ecdab0fe43537a15ef6bd4628d91cddd3c26ddb3fd60f9c89d5d40904139649e"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8B9FBDB8AD65",
|
||||
"hash": "579f62ab41187c8494ca8572b4d0db51e0c9b9275064758999b27fc900c9c60c"
|
||||
}
|
||||
},
|
||||
"1.46": {
|
||||
"version": "1.46.3"
|
||||
|
||||
32
manifests/just.json
generated
32
manifests/just.json
generated
@@ -22,13 +22,39 @@
|
||||
},
|
||||
"license_markdown": "[CC0-1.0](https://github.com/casey/just/blob/master/LICENSE)",
|
||||
"latest": {
|
||||
"version": "1.48.0"
|
||||
"version": "1.48.1"
|
||||
},
|
||||
"1": {
|
||||
"version": "1.48.0"
|
||||
"version": "1.48.1"
|
||||
},
|
||||
"1.48": {
|
||||
"version": "1.48.0"
|
||||
"version": "1.48.1"
|
||||
},
|
||||
"1.48.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8C6D748DA58F",
|
||||
"hash": "9293e553ce401d1b524bf4e104918f72f268e3f9c6827e0055fe98d84a1b2522"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8C6D697B40B5",
|
||||
"hash": "4c3e9c880b8fc93d7fc24abfde3c36b0cc59f6e9f8b31f7175095700f64125a7"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8C6DC96FB40D",
|
||||
"hash": "368cd9ca827cba04d9e6fc00f7ad840773c4605b6f64b9f87bdb00325d351029"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE8C6D791ED527",
|
||||
"hash": "3308721b991cf88cf2b9bbb3b31ac40550ec61a0c9b6fc011564e25e87964030"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8C6D73E04DFD",
|
||||
"hash": "03a73339ff55bcf7411a3c940cdcb0a726d98134b87203c83a9008575434e2a8"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE8C6DB1FA1AAD",
|
||||
"hash": "ed9cd54e46d65770bf0b79c051761b29f0b89a88e56e8cae4454ec7246c82160"
|
||||
}
|
||||
},
|
||||
"1.48.0": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
32
manifests/mise.json
generated
32
manifests/mise.json
generated
@@ -28,13 +28,39 @@
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/jdx/mise/blob/main/LICENSE)",
|
||||
"latest": {
|
||||
"version": "2026.3.16"
|
||||
"version": "2026.3.17"
|
||||
},
|
||||
"2026": {
|
||||
"version": "2026.3.16"
|
||||
"version": "2026.3.17"
|
||||
},
|
||||
"2026.3": {
|
||||
"version": "2026.3.16"
|
||||
"version": "2026.3.17"
|
||||
},
|
||||
"2026.3.17": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8BF1812CA605",
|
||||
"hash": "f416a2d27f69173b22551429d2bc712c40fc3fb639112cf76ae817baae3772e2"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8BF1834954DF",
|
||||
"hash": "bd120908c1476f6f27ae27f4214bdbc3fb0e81b9671aaba720b994a217d28e39"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8BF1841058BD",
|
||||
"hash": "a5e0a77fe5ac6397d6bd3413b6c9b39ac06f24649a88eed526173062960f7b85"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE8BF17E0B455B",
|
||||
"hash": "7ef20440c3e1d9f0db69e57e68e6833a9cade44fd1e97384a279660e48091f97"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8BF18293F06F",
|
||||
"hash": "6d98cedb9c92bd7a1694c9efedc035288da87f6e19c79d15bf91449474c37ce9"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE8BF183D566EE",
|
||||
"hash": "98772d1d68d23e8f1040c62501bcd0d136cf2db3b995a5e7b6f77aca93aef060"
|
||||
}
|
||||
},
|
||||
"2026.3.16": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
30
manifests/tombi.json
generated
30
manifests/tombi.json
generated
@@ -22,10 +22,36 @@
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/tombi-toml/tombi/blob/main/LICENSE)",
|
||||
"latest": {
|
||||
"version": "0.9.9"
|
||||
"version": "0.9.10"
|
||||
},
|
||||
"0.9": {
|
||||
"version": "0.9.9"
|
||||
"version": "0.9.10"
|
||||
},
|
||||
"0.9.10": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8CEDFE4FEBC7",
|
||||
"hash": "eddad889a7194e6b993015475ccd6303edb06f076b632b3a1b134936e280b103"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8CEDFECFAF7A",
|
||||
"hash": "8421af429bec96ec09b621267d3ad505d202dc1ac8e3e5f2677dca0efa348395"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8CEDFE5E3394",
|
||||
"hash": "f6a722ef9f1a5d3656338cf45f88a35aebd29d6bf045b1dd2e91d0dcb356a92e"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE8CEDFE539126",
|
||||
"hash": "5373de8f10af1e626bbedc2beb46fbc7dd8bb3ccd73517b45108e165469e69e6"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8CEDFE6E9BDE",
|
||||
"hash": "1c7fcccf0c14d4c3189cfc405357f524b8db0ac7278bee434212f6c113070eb4"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE8CEDFED8CCF3",
|
||||
"hash": "e3a5ce5bb2f4071974250b27dd8cc9df76c1feaa1be7c5a7e814191d9999311f"
|
||||
}
|
||||
},
|
||||
"0.9.9": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
91
manifests/uv.json
generated
91
manifests/uv.json
generated
@@ -1,49 +1,116 @@
|
||||
{
|
||||
"rust_crate": null,
|
||||
"rust_crate": "uv",
|
||||
"template": {
|
||||
"x86_64_linux_musl": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-x86_64-unknown-linux-musl.tar.gz",
|
||||
"bin": "uv-x86_64-unknown-linux-musl/uv"
|
||||
"bin": [
|
||||
"uv-x86_64-unknown-linux-musl/uv",
|
||||
"uv-x86_64-unknown-linux-musl/uvx"
|
||||
]
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-x86_64-apple-darwin.tar.gz",
|
||||
"bin": "uv-x86_64-apple-darwin/uv"
|
||||
"bin": [
|
||||
"uv-x86_64-apple-darwin/uv",
|
||||
"uv-x86_64-apple-darwin/uvx"
|
||||
]
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-x86_64-pc-windows-msvc.zip",
|
||||
"bin": "uv.exe"
|
||||
"bin": [
|
||||
"uv.exe",
|
||||
"uvw.exe",
|
||||
"uvx.exe"
|
||||
]
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-aarch64-unknown-linux-musl.tar.gz",
|
||||
"bin": "uv-aarch64-unknown-linux-musl/uv"
|
||||
"bin": [
|
||||
"uv-aarch64-unknown-linux-musl/uv",
|
||||
"uv-aarch64-unknown-linux-musl/uvx"
|
||||
]
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-aarch64-apple-darwin.tar.gz",
|
||||
"bin": "uv-aarch64-apple-darwin/uv"
|
||||
"bin": [
|
||||
"uv-aarch64-apple-darwin/uv",
|
||||
"uv-aarch64-apple-darwin/uvx"
|
||||
]
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-aarch64-pc-windows-msvc.zip",
|
||||
"bin": "uv.exe"
|
||||
"bin": [
|
||||
"uv.exe",
|
||||
"uvw.exe",
|
||||
"uvx.exe"
|
||||
]
|
||||
},
|
||||
"powerpc64le_linux_gnu": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-powerpc64le-unknown-linux-gnu.tar.gz",
|
||||
"bin": "uv-powerpc64le-unknown-linux-gnu/uv"
|
||||
"bin": [
|
||||
"uv-powerpc64le-unknown-linux-gnu/uv",
|
||||
"uv-powerpc64le-unknown-linux-gnu/uvx"
|
||||
]
|
||||
},
|
||||
"riscv64_linux_gnu": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-riscv64gc-unknown-linux-gnu.tar.gz",
|
||||
"bin": "uv-riscv64gc-unknown-linux-gnu/uv"
|
||||
"bin": [
|
||||
"uv-riscv64gc-unknown-linux-gnu/uv",
|
||||
"uv-riscv64gc-unknown-linux-gnu/uvx"
|
||||
]
|
||||
},
|
||||
"s390x_linux_gnu": {
|
||||
"url": "https://github.com/astral-sh/uv/releases/download/${version}/uv-s390x-unknown-linux-gnu.tar.gz",
|
||||
"bin": "uv-s390x-unknown-linux-gnu/uv"
|
||||
"bin": [
|
||||
"uv-s390x-unknown-linux-gnu/uv",
|
||||
"uv-s390x-unknown-linux-gnu/uvx"
|
||||
]
|
||||
}
|
||||
},
|
||||
"license_markdown": "[Apache-2.0](https://github.com/astral-sh/uv/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/astral-sh/uv/blob/main/LICENSE-MIT)",
|
||||
"latest": {
|
||||
"version": "0.11.1"
|
||||
"version": "0.11.2"
|
||||
},
|
||||
"0.11": {
|
||||
"version": "0.11.1"
|
||||
"version": "0.11.2"
|
||||
},
|
||||
"0.11.2": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8B7F323A25EC",
|
||||
"hash": "4700d9fc75734247587deb3e25dd2c6c24f4ac69e8fe91d6acad4a6013115c06"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8B7F31C027DB",
|
||||
"hash": "a9c3653245031304c50dd60ac0301bf6c112e12c38c32302a71d4fa6a63ba2cb"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8B7F323790C2",
|
||||
"hash": "171b7ccda1bbd562da6babeffcf533a1c6cc7862cf998da826e1db534fc43e48"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE8B7F2F886D82",
|
||||
"hash": "275d91dd1f1955136591e7ec5e1fa21e84d0d37ead7da7c35c3683df748d9855"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8B7F2EE6C8C0",
|
||||
"hash": "4beaa9550f93ef7f0fc02f7c28c9c48cd61fe30db00f5ac8947e0a425c3fb282"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE8B7F2F211F2C",
|
||||
"hash": "ffdded8338205f53727b51d404563a5ac8eaa9aea53279a7b7c42177e11d478c"
|
||||
},
|
||||
"powerpc64le_linux_gnu": {
|
||||
"etag": "0x8DE8B7F30FB6B17",
|
||||
"hash": "3f3a50e99364efc8ff7add10e79757a2b8458700a38180ec5f313524481b9fbc"
|
||||
},
|
||||
"riscv64_linux_gnu": {
|
||||
"etag": "0x8DE8B7F313C97AB",
|
||||
"hash": "e56a93f0ff21d6908461a6ecbf465beae19ae22719f900284abb7680bd07ec41"
|
||||
},
|
||||
"s390x_linux_gnu": {
|
||||
"etag": "0x8DE8B7F3185D17B",
|
||||
"hash": "42ebe40775f2a77a514fa47399fde86473bf35bd33b6896c6410a0309fc4d205"
|
||||
}
|
||||
},
|
||||
"0.11.1": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
26
manifests/wasm-bindgen.json
generated
26
manifests/wasm-bindgen.json
generated
@@ -44,10 +44,32 @@
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/wasm-bindgen/wasm-bindgen/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/wasm-bindgen/wasm-bindgen/blob/main/LICENSE-APACHE)",
|
||||
"latest": {
|
||||
"version": "0.2.114"
|
||||
"version": "0.2.115"
|
||||
},
|
||||
"0.2": {
|
||||
"version": "0.2.114"
|
||||
"version": "0.2.115"
|
||||
},
|
||||
"0.2.115": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE8C5096D0CA3A",
|
||||
"hash": "494df943e4e30a48ea2832e5a299e0e0f52d23f1e037b052cf401f467b820316"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE8C5096BDCCC1",
|
||||
"hash": "bc9ba4f200a7a7132b61a28d0fc93692caeb880c1547fb4369f18baa3285eb91"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE8C5096A81344",
|
||||
"hash": "370ebd36ffc110346956407793064e3d0b5e77c83ca69ef127a286a665d13636"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"etag": "0x8DE8C5096CD7296",
|
||||
"hash": "f4cc35232554e04d72b61158bcd314ef2b1aa28e7c45d7aad8e76eb01b42c299"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE8C5096F6C51A",
|
||||
"hash": "1184392b5468ca63b65f75f95f38110005aa168f6d9c39ca70c0585044d6508b"
|
||||
}
|
||||
},
|
||||
"0.2.114": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
"repository": "https://github.com/astral-sh/uv",
|
||||
"license_markdown": "[Apache-2.0](https://github.com/astral-sh/uv/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/astral-sh/uv/blob/main/LICENSE-MIT)",
|
||||
"tag_prefix": "",
|
||||
"rust_crate": "${package}",
|
||||
"version_range": ">= 0.8.16",
|
||||
"signing": {
|
||||
"version_range": ">= 0.9.13",
|
||||
@@ -11,42 +12,26 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"asset_name": "${package}-${rust_target}.tar.gz",
|
||||
"bin": [
|
||||
"${package}-${rust_target}/${package}${exe}",
|
||||
"${package}-${rust_target}/${package}x${exe}"
|
||||
],
|
||||
"platform": {
|
||||
"x86_64_linux_musl": {
|
||||
"asset_name": "${package}-x86_64-unknown-linux-musl.tar.gz",
|
||||
"bin": "${package}-x86_64-unknown-linux-musl/${package}${exe}"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"asset_name": "${package}-x86_64-apple-darwin.tar.gz",
|
||||
"bin": "${package}-x86_64-apple-darwin/${package}${exe}"
|
||||
},
|
||||
"x86_64_linux_musl": {},
|
||||
"x86_64_macos": {},
|
||||
"x86_64_windows": {
|
||||
"asset_name": "${package}-x86_64-pc-windows-msvc.zip",
|
||||
"bin": "${package}${exe}"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"asset_name": "${package}-aarch64-unknown-linux-musl.tar.gz",
|
||||
"bin": "${package}-aarch64-unknown-linux-musl/${package}${exe}"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"asset_name": "${package}-aarch64-apple-darwin.tar.gz",
|
||||
"bin": "${package}-aarch64-apple-darwin/${package}${exe}"
|
||||
"asset_name": "${package}-${rust_target}.zip",
|
||||
"bin": ["${package}${exe}", "${package}w${exe}", "${package}x${exe}"]
|
||||
},
|
||||
"aarch64_linux_musl": {},
|
||||
"aarch64_macos": {},
|
||||
"aarch64_windows": {
|
||||
"asset_name": "${package}-aarch64-pc-windows-msvc.zip",
|
||||
"bin": "${package}${exe}"
|
||||
"asset_name": "${package}-${rust_target}.zip",
|
||||
"bin": ["${package}${exe}", "${package}w${exe}", "${package}x${exe}"]
|
||||
},
|
||||
"powerpc64le_linux_gnu": {
|
||||
"asset_name": "${package}-powerpc64le-unknown-linux-gnu.tar.gz",
|
||||
"bin": "${package}-powerpc64le-unknown-linux-gnu/${package}${exe}"
|
||||
},
|
||||
"riscv64_linux_gnu": {
|
||||
"asset_name": "${package}-riscv64gc-unknown-linux-gnu.tar.gz",
|
||||
"bin": "${package}-riscv64gc-unknown-linux-gnu/${package}${exe}"
|
||||
},
|
||||
"s390x_linux_gnu": {
|
||||
"asset_name": "${package}-s390x-unknown-linux-gnu.tar.gz",
|
||||
"bin": "${package}-s390x-unknown-linux-gnu/${package}${exe}"
|
||||
}
|
||||
"powerpc64le_linux_gnu": {},
|
||||
"riscv64_linux_gnu": {},
|
||||
"s390x_linux_gnu": {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,13 +7,13 @@ trap -- 'printf >&2 "%s\n" "${0##*/}: trapped SIGINT"; exit 1' SIGINT
|
||||
cd -- "$(dirname -- "$0")"/..
|
||||
|
||||
# USAGE:
|
||||
# GH_TOKEN=$(gh auth token) ./tools/tidy.sh
|
||||
# GITHUB_TOKEN=$(gh auth token) ./tools/tidy.sh
|
||||
#
|
||||
# Note: This script requires the following tools:
|
||||
# - git 1.8+
|
||||
# - jq 1.6+
|
||||
# - npm (node 18+)
|
||||
# - python 3.6+, pipx
|
||||
# - python 3.6+, uv
|
||||
# - shfmt
|
||||
# - shellcheck
|
||||
# - zizmor
|
||||
@@ -136,8 +136,8 @@ py_suffix=''
|
||||
if type -P python3 >/dev/null; then
|
||||
py_suffix=3
|
||||
fi
|
||||
yq() { pipx run yq "$@"; }
|
||||
tomlq() { pipx run --spec yq tomlq "$@"; }
|
||||
yq() { uvx yq "$@"; }
|
||||
tomlq() { uvx --from yq tomlq "$@"; }
|
||||
case "$(uname -s)" in
|
||||
Linux)
|
||||
if [[ "$(uname -o)" == 'Android' ]]; then
|
||||
@@ -190,8 +190,8 @@ case "$(uname -s)" in
|
||||
else
|
||||
jq() { command jq "$@" | tr -d '\r'; }
|
||||
fi
|
||||
yq() { pipx run yq "$@" | tr -d '\r'; }
|
||||
tomlq() { pipx run --spec yq tomlq "$@" | tr -d '\r'; }
|
||||
yq() { uvx yq "$@" | tr -d '\r'; }
|
||||
tomlq() { uvx --from yq tomlq "$@" | tr -d '\r'; }
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
@@ -248,7 +248,7 @@ if [[ ${#rust_files[@]} -gt 0 ]]; then
|
||||
info "checking Rust code style"
|
||||
check_config .rustfmt.toml "; consider adding with reference to https://github.com/taiki-e/cargo-hack/blob/HEAD/.rustfmt.toml"
|
||||
check_config .clippy.toml "; consider adding with reference to https://github.com/taiki-e/cargo-hack/blob/HEAD/.clippy.toml"
|
||||
if check_install cargo jq pipx; then
|
||||
if check_install cargo jq uv; then
|
||||
# `cargo fmt` cannot recognize files not included in the current workspace and modules
|
||||
# defined inside macros, so run rustfmt directly.
|
||||
# We need to use nightly rustfmt because we use the unstable formatting options of rustfmt.
|
||||
@@ -833,7 +833,7 @@ elif check_install shellcheck; then
|
||||
# Exclude SC2096 due to the way the temporary script is created.
|
||||
shellcheck_exclude=SC2086,SC2096,SC2129
|
||||
info "running \`shellcheck --exclude ${shellcheck_exclude}\` for scripts in .github/workflows/*.yml and **/action.yml"
|
||||
if check_install jq python3 pipx; then
|
||||
if check_install jq python3 uv; then
|
||||
shellcheck_for_gha() {
|
||||
local text=$1
|
||||
local shell=$2
|
||||
@@ -988,7 +988,8 @@ if [[ ${#zizmor_targets[@]} -gt 0 ]]; then
|
||||
if [[ "${ostype}" =~ ^(netbsd|openbsd|dragonfly|illumos|solaris)$ ]] && [[ -n "${CI:-}" ]] && ! type -P zizmor >/dev/null; then
|
||||
warn "this check is skipped on NetBSD/OpenBSD/Dragonfly/illumos/Solaris due to installing zizmor is hard on these platform"
|
||||
elif check_install zizmor; then
|
||||
# zizmor can also be used via pipx, but old version will be installed if glibc version is old.
|
||||
# zizmor can also be used via uvx, but old version will be installed if glibc version is old.
|
||||
# Do not use `zizmor -q .` here because it also attempts to check submodules.
|
||||
IFS=' '
|
||||
info "running \`zizmor -q ${zizmor_targets[*]}\`"
|
||||
IFS=$'\n\t'
|
||||
@@ -1045,7 +1046,7 @@ fi
|
||||
if [[ -f .cspell.json ]]; then
|
||||
info "spell checking"
|
||||
project_dictionary=.github/.cspell/project-dictionary.txt
|
||||
if check_install npm jq pipx; then
|
||||
if check_install npm jq uv; then
|
||||
has_rust=''
|
||||
if [[ -n "$(ls_files '*Cargo.toml')" ]]; then
|
||||
has_rust=1
|
||||
|
||||
Reference in New Issue
Block a user