Compare commits

...

23 Commits

Author SHA1 Message Date
Taiki Endo
49053c01a2 Release 2.42.7 2024-07-26 10:55:21 +09:00
Taiki Endo
9e1a1df62b Update typos@latest to 1.23.5 2024-07-26 06:12:09 +09:00
Taiki Endo
a616897257 Release 2.42.6 2024-07-26 02:35:29 +09:00
Taiki Endo
09f39ef393 Update typos@latest to 1.23.4 2024-07-26 02:35:02 +09:00
Taiki Endo
1ca2ea9ec6 Update cargo-deny@latest to 0.15.0 2024-07-26 02:35:02 +09:00
Taiki Endo
c7e18b8005 Update cspell dictionary 2024-07-26 01:52:38 +09:00
Taiki Endo
36d793de2e Release 2.42.5 2024-07-24 03:01:04 +09:00
Taiki Endo
a43f23de26 ci: Temporarily disable broken opensuse containers
```
Repository 'Update repository of openSUSE Backports' is invalid.
```
2024-07-24 02:58:49 +09:00
Taiki Endo
2b4779f93e Mark wasmtime as pre_2_28_incompat 2024-07-24 02:58:49 +09:00
Taiki Endo
af01ff0e81 Update wasmtime@latest to 23.0.1 2024-07-24 02:58:49 +09:00
Taiki Endo
b9230df11f Update typos@latest to 1.23.3 2024-07-24 02:58:49 +09:00
Taiki Endo
63c4692c70 Update cargo-tarpaulin@latest to 0.31.0 2024-07-24 02:58:49 +09:00
Taiki Endo
37461a1de4 Release 2.42.4 2024-07-19 02:15:47 +09:00
Taiki Endo
75e3d278fc Update cargo-llvm-cov@latest to 0.6.11 2024-07-19 02:11:47 +09:00
Taiki Endo
6bf298cd5d Release 2.42.3 2024-07-18 21:22:50 +09:00
Taiki Endo
ba75d3011f Update espup@latest to 0.12.2 2024-07-18 21:17:46 +09:00
Taiki Endo
32db350e1f Release 2.42.2 2024-07-18 20:22:03 +09:00
Taiki Endo
9523522add Update just@latest to 1.32.0 2024-07-18 18:13:32 +09:00
Taiki Endo
ea7e5189a7 Release 2.42.1 2024-07-17 21:44:52 +09:00
Taiki Endo
8c265a18db Update cargo-make@latest to 0.37.14 2024-07-17 21:14:44 +09:00
Taiki Endo
3e71e7135d Release 2.42.0 2024-07-16 00:22:03 +09:00
Taiki Endo
48bab733f3 Update readme 2024-07-16 00:20:09 +09:00
Taiki Endo
3a2f9ffb94 Improve platform support 2024-07-16 00:11:38 +09:00
16 changed files with 454 additions and 62 deletions

View File

@@ -1,6 +1,5 @@
almalinux
archlinux
bindgen
binstall
coreutils
cyclonedx
@@ -25,6 +24,7 @@ pluginconf
protoc
pubkey
pwsh
QQSTRING
quickinstall
rclone
rdme

View File

@@ -40,6 +40,7 @@ jobs:
fail-fast: false
matrix:
include:
# NB: Sync list with https://github.com/taiki-e/checkout-action/blob/HEAD/.github/workflows/ci.yml
- os: ubuntu-20.04
- os: ubuntu-22.04
- os: ubuntu-24.04
@@ -53,8 +54,11 @@ jobs:
- os: macos-13
- os: macos-14
- os: windows-2019
- os: windows-2019
bash: msys64
- os: windows-2019
bash: cygwin
- os: windows-2022
# https://github.com/taiki-e/install-action/pull/518#issuecomment-2160736760
- os: windows-2022
bash: msys64
- os: windows-2022
@@ -62,30 +66,28 @@ jobs:
runs-on: ${{ matrix.os }}
timeout-minutes: 60
steps:
- run: |
printf 'C:\msys64\mingw32\bin\n' >>"${GITHUB_PATH}"
printf 'C:\msys64\usr\bin\n' >>"${GITHUB_PATH}"
if: matrix.bash == 'msys64'
- run: |
choco install --no-progress --requirechecksums cygwin
printf 'C:\tools\cygwin\bin\n' >>"${GITHUB_PATH}"
printf 'C:\tools\cygwin\usr\bin\n' >>"${GITHUB_PATH}"
if: matrix.bash == 'cygwin'
- uses: taiki-e/checkout-action@v1
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
- run: rm Cargo.toml
- name: Generate tool list
id: tool-list
run: tools/ci/tool-list.sh "${{ matrix.tool }}" >>"${GITHUB_OUTPUT}"
- run: |
set -eEuxo pipefail
echo "C:\msys64\mingw32\bin" >> $GITHUB_PATH
echo "C:\msys64\usr\bin" >> $GITHUB_PATH
if: matrix.bash == 'msys64'
- run: |
set -eEuxo pipefail
choco install --no-progress --requirechecksums cygwin
echo "C:\tools\cygwin\bin" >> $GITHUB_PATH
echo "C:\tools\cygwin\usr\bin" >> $GITHUB_PATH
if: matrix.bash == 'cygwin'
- run: env
- uses: ./
with:
tool: ${{ steps.tool-list.outputs.tool }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell
# 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
shell: bash
@@ -119,10 +121,14 @@ jobs:
fail-fast: false
matrix:
container:
# NB: Sync list with https://github.com/taiki-e/checkout-action/blob/HEAD/.github/workflows/ci.yml
- ubuntu:14.04 # glibc 2.19
- ubuntu:16.04 # glibc 2.23
- ubuntu:18.04 # glibc 2.27
- ubuntu:20.04 # glibc 2.31
- ubuntu:22.04 # glibc 2.35
- ubuntu:24.04 # glibc 2.39
- debian:9-slim # glibc 2.24
- debian:10-slim # glibc 2.28
- debian:11-slim # glibc 2.31
- debian:12-slim # glibc 2.36
@@ -131,33 +137,74 @@ jobs:
- almalinux:8-minimal # glibc 2.28
- almalinux:9 # glibc 2.34
- almalinux:9-minimal # glibc 2.34
- centos:6 # glibc 2.12
- centos:7 # glibc 2.17
- opensuse/leap:latest # glibc 2.31 (as of leap 15.5)
- opensuse/tumbleweed:latest # glibc 2.39 (as of 2024-04-18)
# TODO: broken: Repository 'Update repository of openSUSE Backports' is invalid.
# - opensuse/leap:latest # glibc 2.31 (as of leap 15.5)
# - opensuse/tumbleweed:latest # glibc 2.39 (as of 2024-04-18)
- archlinux:latest # glibc 2.38 (as of 2024-04-18)
- alpine:latest # musl 1.2.4 (as of alpine 3.19)
runs-on: ubuntu-latest
timeout-minutes: 60
container: ${{ matrix.container }}
steps:
- name: Install requirements (ubuntu:14.04)
run: |
set -CeEuxo pipefail
# ubuntu 14.04's jq is 1.3
# error: syntax error, unexpected QQSTRING_START, expecting $end
# https://github.com/jqlang/jq/issues/273
apt-get -o Acquire::Retries=10 -qq update
apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends ca-certificates curl
curl --proto '=https' --tlsv1.2 -fsSL --retry 10 -o /usr/local/bin/jq https://github.com/jqlang/jq/releases/download/jq-1.5/jq-linux64
chmod +x /usr/local/bin/jq
if: startsWith(matrix.container, 'ubuntu:14.04')
- name: Install requirements (debian:9)
run: |
set -CeEuxo pipefail
# In Debian, the old repositories is removed from the main mirrors some time after EoL.
sed -i /etc/apt/sources.list -e 's/deb.debian.org/archive.debian.org/g' \
-e 's|security.debian.org|archive.debian.org/|g' \
-e '/stretch-updates/d'
if: startsWith(matrix.container, 'debian:9')
- name: Install requirements (centos)
run: |
set -eEuxo pipefail
set -CeEuxo pipefail
# In CentOS, the old repositories is removed from the main mirrors just after EoL.
# https://github.com/rust-lang/rust/pull/126352
sed -i /etc/yum.repos.d/*.repo -e 's!^mirrorlist!#mirrorlist!' \
-e 's!^#baseurl=http://mirror.centos.org/!baseurl=https://vault.centos.org/!'
-e 's!^#baseurl=http://mirror.centos.org/!baseurl=https://vault.centos.org/!'
sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf
if [[ "${{ matrix.container }}" == "centos:6" ]]; then
# CentOS 6's curl (7.19.7) has no curl has no --proto/--tlsv1.2.
yum install -y gcc openssl-devel
curl -fsSL --retry 10 https://curl.se/download/curl-7.34.0.tar.gz | tar xzf -
cd -- curl-*
./configure --prefix=/usr/local --with-ssl
make
make install
# CentOS 6's jq is 1.3
# error: syntax error, unexpected QQSTRING_START, expecting $end
# https://github.com/jqlang/jq/issues/273
curl --proto '=https' --tlsv1.2 -fsSL --retry 10 -o /usr/local/bin/jq https://github.com/jqlang/jq/releases/download/jq-1.5/jq-linux64
chmod +x /usr/local/bin/jq
# for checkout-action https://github.com/taiki-e/checkout-action/blob/87380fc33ed8e04e325b05d3576995b2253ab5ba/.github/workflows/ci.yml#L134-L142
yum install -y openssh-clients perl perl-Error perl-TermReadKey rsync
rpm -i \
https://vault.ius.io/el6/x86_64/packages/p/perl-Git18-1.8.5.5-4.ius.el6.noarch.rpm \
https://vault.ius.io/el6/x86_64/packages/g/git18-1.8.5.5-4.ius.el6.x86_64.rpm
fi
if: startsWith(matrix.container, 'centos')
- name: Install requirements (alpine)
run: apk --no-cache add bash
shell: sh
if: startsWith(matrix.container, 'alpine')
- uses: taiki-e/checkout-action@v1
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
- run: rm Cargo.toml
- name: Generate tool list
id: tool-list
run: tools/ci/tool-list.sh >>"${GITHUB_OUTPUT}"
# remove bash installed by checkout-action
- run: apk --no-cache del bash
shell: sh
if: startsWith(matrix.container, 'alpine')
- uses: ./
with:
tool: ${{ steps.tool-list.outputs.tool }}

View File

@@ -10,6 +10,48 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased]
## [2.42.7] - 2024-07-26
- Update `typos@latest` to 1.23.5.
## [2.42.6] - 2024-07-25
- Update `typos@latest` to 1.23.4.
- Update `cargo-deny@latest` to 0.15.0.
## [2.42.5] - 2024-07-23
- Update `wasmtime@latest` to 23.0.1.
- Update `typos@latest` to 1.23.3.
- Update `cargo-tarpaulin@latest` to 0.31.0.
## [2.42.4] - 2024-07-18
- Update `cargo-llvm-cov@latest` to 0.6.11.
## [2.42.3] - 2024-07-18
- Update `espup@latest` to 0.12.2.
## [2.42.2] - 2024-07-18
- Update `just@latest` to 1.32.0.
## [2.42.1] - 2024-07-17
- Update `cargo-make@latest` to 0.37.14.
## [2.42.0] - 2024-07-15
- Fix "/etc/os-release: No such file or directory" error on CentOS 6.
- Improve support for Alpine based containers/self-hosted runners (no longer need to install bash in advance).
- Improve documentation on platform support.
## [2.41.18] - 2024-07-15
- Update `espup@latest` to 0.12.1.
@@ -2476,7 +2518,15 @@ Note: This release is considered a breaking change because installing on version
Initial release
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.41.18...HEAD
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.42.7...HEAD
[2.42.7]: https://github.com/taiki-e/install-action/compare/v2.42.6...v2.42.7
[2.42.6]: https://github.com/taiki-e/install-action/compare/v2.42.5...v2.42.6
[2.42.5]: https://github.com/taiki-e/install-action/compare/v2.42.4...v2.42.5
[2.42.4]: https://github.com/taiki-e/install-action/compare/v2.42.3...v2.42.4
[2.42.3]: https://github.com/taiki-e/install-action/compare/v2.42.2...v2.42.3
[2.42.2]: https://github.com/taiki-e/install-action/compare/v2.42.1...v2.42.2
[2.42.1]: https://github.com/taiki-e/install-action/compare/v2.42.0...v2.42.1
[2.42.0]: https://github.com/taiki-e/install-action/compare/v2.41.18...v2.42.0
[2.41.18]: https://github.com/taiki-e/install-action/compare/v2.41.17...v2.41.18
[2.41.17]: https://github.com/taiki-e/install-action/compare/v2.41.16...v2.41.17
[2.41.16]: https://github.com/taiki-e/install-action/compare/v2.41.15...v2.41.16

View File

@@ -110,9 +110,16 @@ See the [Supported tools section](#supported-tools) for how to ensure that fallb
## Compatibility
This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Fedora, CentOS, Alma, openSUSE, Arch, Alpine).
To use this action in self-hosted runners or in containers, at least the following tools are required:
- bash
On Linux, if any required tools are missing, this action will attempt to install them from distro's package manager, so no pre-setup is usually required (except for CentOS or Debian 9 (or older) or very old distro described below, which was already EoL and needs to use vault/archive repos -- see "Install requirements" in [our CI config](https://github.com/taiki-e/install-action/blob/HEAD/.github/workflows/ci.yml) for example of setup).
On other platforms, at least the following tools are required:
- bash 3.2+
- jq 1.5+
- curl 7.34+ (or RHEL7/CentOS7's patched curl 7.29)
Known environments affected by the above version requirements are CentOS 6 (EoL on 2020-11) using curl 7.19 and jq 1.3, and Ubuntu 14.04 (EoL on 2019-04) using jq 1.3 (see "Install requirements" in [our CI config](https://github.com/taiki-e/install-action/blob/HEAD/.github/workflows/ci.yml) for example of workaround).
## Related Projects
@@ -120,9 +127,11 @@ To use this action in self-hosted runners or in containers, at least the followi
- [create-gh-release-action]: GitHub Action for creating GitHub Releases based on changelog.
- [upload-rust-binary-action]: GitHub Action for building and uploading Rust binary to GitHub Releases.
- [setup-cross-toolchain-action]: GitHub Action for setup toolchains for cross compilation and cross testing for Rust.
- [checkout-action]: GitHub Action for checking out a repository. (Simplified actions/checkout alternative that does not depend on Node.js.)
[cache-cargo-install-action]: https://github.com/taiki-e/cache-cargo-install-action
[cargo-binstall]: https://github.com/cargo-bins/cargo-binstall
[checkout-action]: https://github.com/taiki-e/checkout-action
[create-gh-release-action]: https://github.com/taiki-e/create-gh-release-action
[setup-cross-toolchain-action]: https://github.com/taiki-e/setup-cross-toolchain-action
[upload-rust-binary-action]: https://github.com/taiki-e/upload-rust-binary-action

View File

@@ -21,8 +21,27 @@ inputs:
runs:
using: composite
steps:
- run: bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
shell: bash
- run: |
set -eu
if ! command -v bash >/dev/null; then
if grep -Eq '^ID=alpine' /etc/os-release; then
printf '::group::Install packages required for checkout-action (bash)\n'
# NB: sync with apk_install in main.sh
if command -v sudo >/dev/null; then
sudo apk --no-cache add bash
elif command -v doas >/dev/null; then
doas apk --no-cache add bash
else
apk --no-cache add bash
fi
printf '::endgroup::\n'
else
printf '::error::checkout-action requires bash\n'
exit 1
fi
fi
bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
shell: sh
env:
INPUT_TOOL: ${{ inputs.tool }}
INPUT_CHECKSUM: ${{ inputs.checksum }}

26
main.sh
View File

@@ -455,17 +455,21 @@ case "$(uname -s)" in
host_env="gnu"
host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g")
fi
if grep -q '^ID_LIKE=' /etc/os-release; then
base_distro=$(grep '^ID_LIKE=' /etc/os-release | cut -d= -f2)
case "${base_distro}" in
*debian*) base_distro=debian ;;
*fedora*) base_distro=fedora ;;
*suse*) base_distro=suse ;;
*arch*) base_distro=arch ;;
*alpine*) base_distro=alpine ;;
esac
else
base_distro=$(grep '^ID=' /etc/os-release | cut -d= -f2)
if [[ -e /etc/os-release ]]; then
if grep -Eq '^ID_LIKE=' /etc/os-release; then
base_distro=$(grep -E '^ID_LIKE=' /etc/os-release | cut -d= -f2)
case "${base_distro}" in
*debian*) base_distro=debian ;;
*fedora*) base_distro=fedora ;;
*suse*) base_distro=suse ;;
*arch*) base_distro=arch ;;
*alpine*) base_distro=alpine ;;
esac
else
base_distro=$(grep -E '^ID=' /etc/os-release | cut -d= -f2)
fi
elif [[ -e /etc/redhat-release ]]; then
base_distro=fedora
fi
case "${base_distro}" in
fedora)

View File

@@ -24,7 +24,32 @@
},
"license_markdown": "[MIT](https://github.com/EmbarkStudios/cargo-deny/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/main/LICENSE-APACHE)",
"latest": {
"version": "0.14.24"
"version": "0.15.0"
},
"0.15": {
"version": "0.15.0"
},
"0.15.0": {
"x86_64_linux_musl": {
"etag": "0x8DCACC4A4C855C0",
"checksum": "c4396744bfd6b98fd3278dbb755cf1dd180875df516c1bfb018f167d4d667a9a"
},
"x86_64_macos": {
"etag": "0x8DCACC4E2EE3C21",
"checksum": "7e8c8c0fe4f2eb5205f5d14f4fb0b4c4b0ce30e8d74490308451f1f768f59c0a"
},
"x86_64_windows": {
"etag": "0x8DCACC51FEA5D90",
"checksum": "6eb3e47a8fdfd68ceb524148f39fc7e15408a89c3f742970c64e6686b2184bff"
},
"aarch64_linux_musl": {
"etag": "0x8DCACC4B15500E2",
"checksum": "5e0a92aeb8967b0495520fae0ec1c863944ad97f0af444cd9bc58e167d0ab98b"
},
"aarch64_macos": {
"etag": "0x8DCACC497D6CA71",
"checksum": "26c31e6ad0e13899c44a70847eb5eecb1ff1e8846f82abe92afc8113e28bebfb"
}
},
"0.14": {
"version": "0.14.24"

View File

@@ -19,10 +19,32 @@
},
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/main/LICENSE-MIT)",
"latest": {
"version": "0.6.10"
"version": "0.6.11"
},
"0.6": {
"version": "0.6.10"
"version": "0.6.11"
},
"0.6.11": {
"x86_64_linux_musl": {
"etag": "0x8DCA74B10A8B3F4",
"checksum": "951db9b5b669a531bdfa0a5d7fa21031ee1ad069b75ca86259ac84ae54b27826"
},
"x86_64_macos": {
"etag": "0x8DCA74B941EC0D2",
"checksum": "efaa24d7cecced0837e4b4dbb964750a78ba5e72a7426d7b17d37d8afafafcbb"
},
"x86_64_windows": {
"etag": "0x8DCA74B3E49C6BA",
"checksum": "b35587e984b4bc27ec15c8f62028f8650446f871ab83e5ee1c308838ca90226f"
},
"aarch64_linux_musl": {
"etag": "0x8DCA74B16D4D5FD",
"checksum": "fa75483600372df01863c766ffd0da5611a3a2671adb2f475860569169c34187"
},
"aarch64_macos": {
"etag": "0x8DCA74B506EC4BF",
"checksum": "eecb6683cd0cba3e7285ec7c9576a6c34d1fc1a3d302ae0c1a7cb5a7cf0b5c57"
}
},
"0.6.10": {
"x86_64_linux_musl": {

View File

@@ -20,10 +20,28 @@
},
"license_markdown": "[Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/master/LICENSE)",
"latest": {
"version": "0.37.13"
"version": "0.37.14"
},
"0.37": {
"version": "0.37.13"
"version": "0.37.14"
},
"0.37.14": {
"x86_64_linux_musl": {
"etag": "0x8DCA65506C47194",
"checksum": "af6073b9d9056b02c7a41253da1cfe364a8d7ec88190d5f3070ea380ba386c18"
},
"x86_64_macos": {
"etag": "0x8DCA654B731BB44",
"checksum": "44ea71fa5626915894815db020b7335ab82c1a028f47fde32a13d6ab1607785d"
},
"x86_64_windows": {
"etag": "0x8DCA65545FDB74F",
"checksum": "50830f4e73b0c9ebd790ff74850cb867043a6a50403f680029124f6be25c9515"
},
"aarch64_macos": {
"etag": "0x8DCA65504081757",
"checksum": "7fc411106e5bc3e3a54d1b0e1325649f0d7ce81e84aee63a52f407f6a3e84ea0"
}
},
"0.37.13": {
"x86_64_linux_musl": {

View File

@@ -19,7 +19,32 @@
},
"license_markdown": "[MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) OR [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE)",
"latest": {
"version": "0.30.0"
"version": "0.31.0"
},
"0.31": {
"version": "0.31.0"
},
"0.31.0": {
"x86_64_linux_musl": {
"etag": "0x8DCAAA024D47416",
"checksum": "9b25ccf3af631417ed7380b5d34bde0efc50fc829f33fd71fd9f5acaf9f8d00c"
},
"x86_64_macos": {
"etag": "0x8DCAAA03707DB22",
"checksum": "1be313bde154bca03097bbde824bee94ce6e99b6ecc3a0039f61d18cbee8347d"
},
"x86_64_windows": {
"etag": "0x8DCAAA059AF690B",
"checksum": "334211b30f1cccde64c5c2925902327412c048cce43b34db413f1c7e68167e41"
},
"aarch64_linux_musl": {
"etag": "0x8DCAAA00654F2ED",
"checksum": "432e2879be69e2da9603fd033673fb72ff1f61796767c4fc912012f7698b5b7b"
},
"aarch64_macos": {
"etag": "0x8DCAA9FCE59587E",
"checksum": "fb74985e82575c0f9a7d12d0807f062a418c8dfa37f28ef052bedd4cb76f2741"
}
},
"0.30": {
"version": "0.30.0"

26
manifests/espup.json generated
View File

@@ -19,10 +19,32 @@
},
"license_markdown": "[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)",
"latest": {
"version": "0.12.1"
"version": "0.12.2"
},
"0.12": {
"version": "0.12.1"
"version": "0.12.2"
},
"0.12.2": {
"x86_64_linux_gnu": {
"etag": "0x8DCA71F794A47D4",
"checksum": "21b5de392b6d4af6ccb4f480136a05cece2171188938f113a608584a876f1f8a"
},
"x86_64_macos": {
"etag": "0x8DCA71F20736917",
"checksum": "b7f22dbc1664cd2af23d39eaec291db9dfdc5928caf9ad82c559908d4a3ffcf9"
},
"x86_64_windows": {
"etag": "0x8DCA71F70242118",
"checksum": "be8fe138107cda65339975cefdc3369f22ed56084bcc75937b610b3cad0328e5"
},
"aarch64_linux_gnu": {
"etag": "0x8DCA71F519881C5",
"checksum": "49d3e189f2b2f21b25c38d724c35904061a92b061a1f0b184cc35e1d792168e2"
},
"aarch64_macos": {
"etag": "0x8DCA71F1BB17807",
"checksum": "914bc11613e1aa7f734aed33e630738e4d90aec9c8347640546fe00a2c906a8e"
}
},
"0.12.1": {
"x86_64_linux_gnu": {

29
manifests/just.json generated
View File

@@ -19,10 +19,35 @@
},
"license_markdown": "[CC0-1.0](https://github.com/casey/just/blob/master/LICENSE)",
"latest": {
"version": "1.31.0"
"version": "1.32.0"
},
"1": {
"version": "1.31.0"
"version": "1.32.0"
},
"1.32": {
"version": "1.32.0"
},
"1.32.0": {
"x86_64_linux_musl": {
"etag": "0x8DCA6F099C7340C",
"checksum": "a678f6b82c6643055899bcc7cc4fb168d9d24bd65833dfd0a6ad5b8e65c25003"
},
"x86_64_macos": {
"etag": "0x8DCA6F09A4131EE",
"checksum": "665f9c5793844226cf85889e9c6353230dc7a197d6cb32ee001afde41e7281d4"
},
"x86_64_windows": {
"etag": "0x8DCA6F0EC5EE08C",
"checksum": "aac3f10c2c1fdec2e3496d7a31903c8f07901300a0d5fa81518767a05f8ea8f7"
},
"aarch64_linux_musl": {
"etag": "0x8DCA6F0B067C481",
"checksum": "3de91367b5ac00bf0da505ed5222be10ebc80cce3074c9073e726c88ac7adbf1"
},
"aarch64_macos": {
"etag": "0x8DCA6F09028BAA8",
"checksum": "3449462f0284b27c840b8c814be558f8738445e1a2033e540faa25c07b8cf9b4"
}
},
"1.31": {
"version": "1.31.0"

60
manifests/typos.json generated
View File

@@ -16,13 +16,67 @@
},
"license_markdown": "[MIT](https://github.com/crate-ci/typos/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/crate-ci/typos/blob/master/LICENSE-APACHE)",
"latest": {
"version": "1.23.2"
"version": "1.23.5"
},
"1": {
"version": "1.23.2"
"version": "1.23.5"
},
"1.23": {
"version": "1.23.2"
"version": "1.23.5"
},
"1.23.5": {
"x86_64_linux_musl": {
"etag": "0x8DCACE926CACF11",
"checksum": "b2768f758910e57daf2486b79c6b0855c60f5e2447f3dd0a0a168b29c57e1b04"
},
"x86_64_macos": {
"etag": "0x8DCACE91E359484",
"checksum": "04cb535d30c84dd80672c8cc22632666430e290b96bca2888db6a3a388225415"
},
"x86_64_windows": {
"etag": "0x8DCACE9552271D4",
"checksum": "5f750498b6b7e8b15497d1daa3874fa1377c255c2cb0949fc3475f6bd08814ce"
},
"aarch64_macos": {
"etag": "0x8DCACE927507FB6",
"checksum": "3d500ae3edd4fda4f45510bd3e26e30f3e5c7ab77d1630ab4cf69415fc695b56"
}
},
"1.23.4": {
"x86_64_linux_musl": {
"etag": "0x8DCACB70DB196B5",
"checksum": "7d3cefc66f99a3ee5680d87774341ef66c950210a47c66f0937e5c6377e48f06"
},
"x86_64_macos": {
"etag": "0x8DCACB6FC9D76C1",
"checksum": "01bd36e673d2fba8d8b60227b6b5931180e8b51ee1c34420ded59d0e7045cdcf"
},
"x86_64_windows": {
"etag": "0x8DCACB72F7D2A82",
"checksum": "a595e77d4ae9142a34678718eb95196c7def8a9bb461eab44567cd5e3c23dfeb"
},
"aarch64_macos": {
"etag": "0x8DCACB7047A9081",
"checksum": "660091ebe295fae7a94e1d05800a3198e725f7f98ee4dd5635323c83c611a741"
}
},
"1.23.3": {
"x86_64_linux_musl": {
"etag": "0x8DCAA8816A9D6D0",
"checksum": "25debe7b628652fcae71c91a4e4075eb8a52158eca7fb11309acc93bdfeeb1f0"
},
"x86_64_macos": {
"etag": "0x8DCAA880496865B",
"checksum": "52de8284875ae76dceb7f3ef715c38d7c927d025af9794817dd838a239b93c95"
},
"x86_64_windows": {
"etag": "0x8DCAA885A5FFA29",
"checksum": "83c97e7ff7fc7d52d3b33e88427d39448eeebb0f159592e50b924542d555f3ed"
},
"aarch64_macos": {
"etag": "0x8DCAA8808FC3F7F",
"checksum": "e52ff52f4e5eb2ec5a58a4baa6512913048c52e3a1c4e97b841eea282f2dd60e"
}
},
"1.23.2": {
"x86_64_linux_musl": {

View File

@@ -24,7 +24,57 @@
},
"license_markdown": "[Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/main/LICENSE)",
"latest": {
"version": "22.0.0"
"version": "23.0.1"
},
"23": {
"version": "23.0.1"
},
"23.0": {
"version": "23.0.1"
},
"23.0.1": {
"x86_64_linux_gnu": {
"etag": "0x8DCAA6B6F0C2522",
"checksum": "2fe554453d69999f0e51571236fe3635c2fa790e3f7af7d23953445c9ad0ea4b"
},
"x86_64_macos": {
"etag": "0x8DCAA6B7013B971",
"checksum": "a8ca1f4d5913f317067293743ce374cf1c39471e6fd5d3f277dbba9331b04b94"
},
"x86_64_windows": {
"etag": "0x8DCAA6B73E6FE5A",
"checksum": "adad9ef7536a8758f09d9881621bed6b7f9e5eef79ea1579daf0a91dc7d4e21b"
},
"aarch64_linux_gnu": {
"etag": "0x8DCAA6B676243A4",
"checksum": "fbfe0cb8f786617f92a8710280637ef2dbec8b53ab12334f0dc78ebfdca1442b"
},
"aarch64_macos": {
"etag": "0x8DCAA6B685299A1",
"checksum": "40ad363e9ef985cef52eba0836f40d97e52c71087329497656969af4e653c834"
}
},
"23.0.0": {
"x86_64_linux_gnu": {
"etag": "0x8DCAA5F8E5249A6",
"checksum": "da5f40a9bdf8d50f5f429d3f8563678b1f11ef4d435b4d976b65bf0325c0bcd9"
},
"x86_64_macos": {
"etag": "0x8DCAA5F8F591BC9",
"checksum": "a48e36d12cc34e336c902ba44136e88cc4ad050928cdb835acef2e534ebc4284"
},
"x86_64_windows": {
"etag": "0x8DCAA5F93A37B89",
"checksum": "ff8bd3e0d763db6ff69de9aa253cf8b3ebec1cb51e42aa3fcf755891c38a97f4"
},
"aarch64_linux_gnu": {
"etag": "0x8DCAA5F87720051",
"checksum": "7f5089f25f17537e2f3d28010b9678448b4f00edf4f108c122cc19e6c0061bfd"
},
"aarch64_macos": {
"etag": "0x8DCAA5F88733344",
"checksum": "4aba8cba64d155858bdd4ad187fa4b97eb8a3241b917ccd7b4b13fa40059c703"
}
},
"22": {
"version": "22.0.0"

View File

@@ -5,30 +5,41 @@ IFS=$'\n\t'
cd "$(dirname "$0")"/../..
# They don't provide prebuilt binaries for musl or old glibc host.
# version `GLIBC_2.34' not found
glibc_pre_2_34_incompat=(
cargo-cyclonedx
cargo-spellcheck
wait-for-them
xbuild
)
# version `GLIBC_2.31' not found
glibc_pre_2_31_incompat=(
"${glibc_pre_2_34_incompat[@]}"
cargo-sort
espup
zola
)
glibc_pre_2_27_incompat=(
# version `GLIBC_2.28' not found
glibc_pre_2_28_incompat=(
"${glibc_pre_2_31_incompat[@]}"
wasmtime
)
# version `GLIBC_2.27' not found
glibc_pre_2_27_incompat=(
"${glibc_pre_2_28_incompat[@]}"
cargo-watch
mdbook-linkcheck
protoc
valgrind
wasmtime
)
musl_incompat=(
# version `GLIBC_2.17' not found
glibc_pre_2_17_incompat=(
"${glibc_pre_2_27_incompat[@]}"
deepsource
)
musl_incompat=(
"${glibc_pre_2_17_incompat[@]}"
)
incompat_tools=()
case "${1:-}" in
@@ -50,16 +61,26 @@ case "$(uname -s)" in
if grep <<<"${ldd_version}" -q 'musl'; then
incompat_tools+=("${musl_incompat[@]}")
else
host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g")
higher_glibc_version=$(sort <<<"2.34"$'\n'"${host_glibc_version}" -Vu | tail -1)
host_glibc_version=$(grep -E "GLIBC|GNU libc" <<<"${ldd_version}" | sed "s/.* //g")
higher_glibc_version=$(sort -Vu <<<"2.34"$'\n'"${host_glibc_version}" | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.31"$'\n'"${host_glibc_version}" -Vu | tail -1)
higher_glibc_version=$(sort -Vu <<<"2.31"$'\n'"${host_glibc_version}" | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.27"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" == "${host_glibc_version}" ]]; then
incompat_tools+=("${glibc_pre_2_31_incompat[@]}")
higher_glibc_version=$(sort -Vu <<<"2.28"$'\n'"${host_glibc_version}" | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort -Vu <<<"2.27"$'\n'"${host_glibc_version}" | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort -Vu <<<"2.17"$'\n'"${host_glibc_version}" | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
incompat_tools+=("${glibc_pre_2_17_incompat[@]}")
else
incompat_tools+=("${glibc_pre_2_27_incompat[@]}")
fi
else
incompat_tools+=("${glibc_pre_2_28_incompat[@]}")
fi
else
incompat_tools+=("${glibc_pre_2_27_incompat[@]}")
incompat_tools+=("${glibc_pre_2_31_incompat[@]}")
fi
else
incompat_tools+=("${glibc_pre_2_34_incompat[@]}")

View File

@@ -328,6 +328,7 @@ impl StringOrArray {
/// Does it seem only armv7l+ is supported?
/// https://github.com/actions/runner/blob/v2.315.0/src/Misc/externals.sh#L189
/// https://github.com/actions/runner/issues/688
// TODO: support musl with dynamic linking like wasmtime 22.0.0+'s musl binaries: https://github.com/bytecodealliance/wasmtime/releases/tag/v22.0.0
#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize)]
pub enum HostPlatform {