diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d6974d14..7ba89780 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -286,6 +286,7 @@ jobs: typos-cli wasm-bindgen-cli wasmtime-cli + wild-linker - name: Test bash run: cargo-nextest nextest --version && taplo --version shell: bash diff --git a/TOOLS.md b/TOOLS.md index f6f3ff3a..b3385ed3 100644 --- a/TOOLS.md +++ b/TOOLS.md @@ -87,7 +87,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho | [**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/main/LICENSE) | | -| [**protoc-gen-connect-openapi**](https://github.com/sudorandom/protoc-gen-connect-openapi) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/sudorandom/protoc-gen-connect-openapi/releases) | Linux, Windows | [MIT](https://github.com/sudorandom/protoc-gen-connect-openapi/blob/main/LICENSE) | | +| [**protoc-gen-connect-openapi**](https://github.com/sudorandom/protoc-gen-connect-openapi) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/sudorandom/protoc-gen-connect-openapi/releases) | Linux, macOS, Windows | [MIT](https://github.com/sudorandom/protoc-gen-connect-openapi/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) | | @@ -99,7 +99,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho | [**tombi**](https://tombi-toml.github.io/tombi/) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/tombi-toml/tombi/releases) | Linux, macOS, Windows | [MIT](https://github.com/tombi-toml/tombi/blob/main/LICENSE) | | | [**trivy**](https://github.com/aquasecurity/trivy) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/aquasecurity/trivy/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/aquasecurity/trivy/blob/main/LICENSE) | | | [**trunk**](https://github.com/trunk-rs/trunk) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/trunk-rs/trunk/releases) | Linux, macOS, Windows | [MIT](https://github.com/trunk-rs/trunk/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/trunk-rs/trunk/blob/main/LICENSE-APACHE) | | -| [**typos**](https://github.com/crate-ci/typos) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/crate-ci/typos/releases) | Linux, macOS, Windows | [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) | | +| [**typos**](https://github.com/crate-ci/typos) (alias: `typos-cli`) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/crate-ci/typos/releases) | Linux, macOS, Windows | [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) | | | [**ubi**](https://github.com/houseabsolute/ubi) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/houseabsolute/ubi/releases) | Linux, macOS, Windows | [MIT](https://github.com/houseabsolute/ubi/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/houseabsolute/ubi/blob/master/LICENSE-APACHE) | | | [**uv**](https://github.com/astral-sh/uv) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/astral-sh/uv/releases) | Linux, macOS, Windows | [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) | | | [**vacuum**](https://github.com/daveshanley/vacuum) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/daveshanley/vacuum/releases) | Linux, macOS, Windows | [MIT](https://github.com/daveshanley/vacuum/blob/main/LICENSE) | | @@ -110,6 +110,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho | [**wasm-pack**](https://github.com/wasm-bindgen/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/wasm-bindgen/wasm-pack/releases) | Linux, macOS, Windows | [MIT](https://github.com/wasm-bindgen/wasm-pack/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/wasm-bindgen/wasm-pack/blob/master/LICENSE-APACHE) | | | [**wasm-tools**](https://github.com/bytecodealliance/wasm-tools) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bytecodealliance/wasm-tools/releases) | Linux, macOS, Windows | [Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasm-tools/blob/main/LICENSE-APACHE) OR [Apache-2.0](https://github.com/bytecodealliance/wasm-tools/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/bytecodealliance/wasm-tools/blob/main/LICENSE-MIT) | | | [**wasmtime**](https://github.com/bytecodealliance/wasmtime) (alias: `wasmtime-cli`) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bytecodealliance/wasmtime/releases) | Linux, macOS, Windows | [Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/main/LICENSE) | | +| [**wild**](https://github.com/wild-linker/wild) (alias: `wild-linker`) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/wild-linker/wild/releases) | Linux | [Apache-2.0](https://github.com/wild-linker/wild/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/wild-linker/wild/blob/main/LICENSE-MIT) | | | [**xbuild**](https://github.com/rust-mobile/xbuild) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-mobile/xbuild/releases) | Linux, macOS, Windows | [Apache-2.0 OR MIT](https://github.com/rust-mobile/xbuild/blob/v0.2.0/xbuild/Cargo.toml#L7) | | | [**xh**](https://github.com/ducaale/xh) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/ducaale/xh/releases) | Linux, macOS, Windows | [MIT](https://github.com/ducaale/xh/blob/master/LICENSE) | | | [**zizmor**](https://github.com/zizmorcore/zizmor) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/zizmorcore/zizmor/releases) | Linux, macOS, Windows | [MIT](https://github.com/zizmorcore/zizmor/blob/main/LICENSE) | | diff --git a/main.sh b/main.sh index 65295816..ce47703e 100755 --- a/main.sh +++ b/main.sh @@ -951,6 +951,7 @@ for tool in "${tools[@]}"; do # TODO(codegen): auto-detect cases where crate name and tool name are different. case "${tool}" in nextest) tool=cargo-nextest ;; + wild-linker) tool=wild ;; taplo-cli | typos-cli | wasm-bindgen-cli | wasmtime-cli) tool="${tool%-cli}" ;; esac diff --git a/manifests/wild.json b/manifests/wild.json new file mode 100644 index 00000000..4c67ab43 --- /dev/null +++ b/manifests/wild.json @@ -0,0 +1,37 @@ +{ + "rust_crate": "wild-linker", + "template": { + "x86_64_linux_musl": { + "url": "https://github.com/wild-linker/wild/releases/download/${version}/wild-linker-${version}-x86_64-unknown-linux-musl.tar.gz", + "bin": "wild-linker-${version}-x86_64-unknown-linux-musl/wild" + }, + "aarch64_linux_musl": { + "url": "https://github.com/wild-linker/wild/releases/download/${version}/wild-linker-${version}-aarch64-unknown-linux-musl.tar.gz", + "bin": "wild-linker-${version}-aarch64-unknown-linux-musl/wild" + }, + "riscv64_linux_musl": { + "url": "https://github.com/wild-linker/wild/releases/download/${version}/wild-linker-${version}-riscv64gc-unknown-linux-musl.tar.gz", + "bin": "wild-linker-${version}-riscv64gc-unknown-linux-musl/wild" + } + }, + "latest": { + "version": "0.9.0" + }, + "0.9": { + "version": "0.9.0" + }, + "0.9.0": { + "x86_64_linux_musl": { + "etag": "0x8DEB91D23B152D5", + "hash": "e0332432d181a06c9257bced31f8349bc9ceed9fe728fe843e68d2b9e06753a1" + }, + "aarch64_linux_musl": { + "etag": "0x8DEB91D1EECA64B", + "hash": "ee8ce993505dbedb3447a1512886b7dbeeb4ec7da258b99fdafa2bf0a07e5f37" + }, + "riscv64_linux_musl": { + "etag": "0x8DEB91D0D00D451", + "hash": "1a1648f25886fd6dc60bb06a1dfa09c7fbe155a23e68360a8b1d36ea76be8583" + } + } +} diff --git a/tools/ci/release-post-commit.sh b/tools/ci/release-post-commit.sh index d962ec0c..d7ee46ce 100755 --- a/tools/ci/release-post-commit.sh +++ b/tools/ci/release-post-commit.sh @@ -15,6 +15,7 @@ done # in .github/workflows/ci.yml, and match for alias for tools/codegen/src/tools-markdown.rs. tools+=( nextest + wild-linker taplo-cli typos-cli wasm-bindgen-cli diff --git a/tools/codegen/base/wild.json b/tools/codegen/base/wild.json new file mode 100644 index 00000000..0265bc3e --- /dev/null +++ b/tools/codegen/base/wild.json @@ -0,0 +1,14 @@ +{ + "repository": "https://github.com/wild-linker/wild", + "license_markdown": "[Apache-2.0](https://github.com/wild-linker/wild/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/wild-linker/wild/blob/main/LICENSE-MIT)", + "tag_prefix": "", + "version_range": ">= 0.9.0", + "rust_crate": "${package}-linker", + "asset_name": "${package}-linker-${version}-${rust_target}.tar.gz", + "bin": "${package}-linker-${version}-${rust_target}/${package}${exe}", + "platform": { + "x86_64_linux_musl": {}, + "aarch64_linux_musl": {}, + "riscv64_linux_musl": {} + } +} diff --git a/tools/codegen/src/tools-markdown.rs b/tools/codegen/src/tools-markdown.rs index 7594e98b..45f99739 100644 --- a/tools/codegen/src/tools-markdown.rs +++ b/tools/codegen/src/tools-markdown.rs @@ -125,7 +125,8 @@ fn main() { // and tool input option in test-alias in .github/workflows/ci.yml. let alias = match name.as_str() { "cargo-nextest" => Some(name.strip_prefix("cargo-").unwrap().to_owned()), - "taplo" | "typos-cli" | "wasm-bindgen" | "wasmtime" => Some(format!("{name}-cli")), + "wild" => Some(format!("{name}-linker")), + "taplo" | "typos" | "wasm-bindgen" | "wasmtime" => Some(format!("{name}-cli")), _ => None, };