From ff1c16dbcbd6f5caa08a5d9f20fc4e3a412615a9 Mon Sep 17 00:00:00 2001 From: Mads Marquart Date: Mon, 4 May 2026 14:05:27 +0200 Subject: [PATCH] Support cargo-apple-runner (#1731) --- TOOLS.md | 7 +++--- main.sh | 2 +- manifests/cargo-apple-runner.json | 26 ++++++++++++++++++++++ tools/ci/tool-list.sh | 4 ++++ tools/codegen/base/cargo-apple-runner.json | 11 +++++++++ 5 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 manifests/cargo-apple-runner.json create mode 100644 tools/codegen/base/cargo-apple-runner.json diff --git a/TOOLS.md b/TOOLS.md index 62d73f38..3642b744 100644 --- a/TOOLS.md +++ b/TOOLS.md @@ -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/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-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/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-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) | diff --git a/main.sh b/main.sh index 39abd680..dc3f4848 100755 --- a/main.sh +++ b/main.sh @@ -889,7 +889,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. diff --git a/manifests/cargo-apple-runner.json b/manifests/cargo-apple-runner.json new file mode 100644 index 00000000..d56a30d0 --- /dev/null +++ b/manifests/cargo-apple-runner.json @@ -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" + } + } +} diff --git a/tools/ci/tool-list.sh b/tools/ci/tool-list.sh index 56153dad..3070ac68 100755 --- a/tools/ci/tool-list.sh +++ b/tools/ci/tool-list.sh @@ -150,6 +150,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 diff --git a/tools/codegen/base/cargo-apple-runner.json b/tools/codegen/base/cargo-apple-runner.json new file mode 100644 index 00000000..0c7a7cbc --- /dev/null +++ b/tools/codegen/base/cargo-apple-runner.json @@ -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": {} + } +}