mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-30 10:50:25 +00:00
Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
30791125b8 | ||
|
|
d9c77c22d7 | ||
|
|
5ddf8f212b | ||
|
|
46ce597e87 | ||
|
|
5674d1381f | ||
|
|
8239110d02 | ||
|
|
a4fb6300cb | ||
|
|
75a282937e | ||
|
|
51f05cea1d | ||
|
|
cde1638932 | ||
|
|
ae3865d8b6 | ||
|
|
4361c79705 | ||
|
|
1b6780842d |
24
CHANGELOG.md
24
CHANGELOG.md
@@ -10,6 +10,26 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [2.67.1] - 2026-01-20
|
||||
|
||||
- Update `wasm-pack@latest` to 0.14.0.
|
||||
|
||||
## [2.67.0] - 2026-01-20
|
||||
|
||||
- Support `cargo-neat`. ([#1404](https://github.com/taiki-e/install-action/pull/1404), thanks @killzoner)
|
||||
|
||||
- Update `tombi@latest` to 0.7.20.
|
||||
|
||||
- Update `knope@latest` to 0.22.1.
|
||||
|
||||
- Update `mise@latest` to 2026.1.5.
|
||||
|
||||
- Update `vacuum@latest` to 0.23.4.
|
||||
|
||||
- Update `typos@latest` to 1.42.1.
|
||||
|
||||
- Update `cargo-binstall@latest` to 1.16.7.
|
||||
|
||||
## [2.66.7] - 2026-01-19
|
||||
|
||||
- Update `prek@latest` to 0.2.30.
|
||||
@@ -5381,7 +5401,9 @@ Note: This release is considered a breaking change because installing on version
|
||||
|
||||
Initial release
|
||||
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.66.7...HEAD
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.67.1...HEAD
|
||||
[2.67.1]: https://github.com/taiki-e/install-action/compare/v2.67.0...v2.67.1
|
||||
[2.67.0]: https://github.com/taiki-e/install-action/compare/v2.66.7...v2.67.0
|
||||
[2.66.7]: https://github.com/taiki-e/install-action/compare/v2.66.6...v2.66.7
|
||||
[2.66.6]: https://github.com/taiki-e/install-action/compare/v2.66.5...v2.66.6
|
||||
[2.66.5]: https://github.com/taiki-e/install-action/compare/v2.66.4...v2.66.5
|
||||
|
||||
3
TOOLS.md
3
TOOLS.md
@@ -31,6 +31,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
|
||||
| [**cargo-machete**](https://github.com/bnjbvr/cargo-machete) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bnjbvr/cargo-machete/releases) | Linux, macOS, Windows | [MIT](https://github.com/bnjbvr/cargo-machete/blob/main/LICENSE.md) |
|
||||
| [**cargo-make**](https://github.com/sagiegurari/cargo-make) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sagiegurari/cargo-make/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/master/LICENSE) |
|
||||
| [**cargo-minimal-versions**](https://github.com/taiki-e/cargo-minimal-versions) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-minimal-versions/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-minimal-versions/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-minimal-versions/blob/main/LICENSE-MIT) |
|
||||
| [**cargo-neat**](https://github.com/killzoner/cargo-neat) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/killzoner/cargo-neat/releases) | Linux, macOS, Windows | [MIT](https://github.com/killzoner/cargo-neat/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/killzoner/cargo-neat/blob/master/LICENSE-APACHE) |
|
||||
| [**cargo-nextest**](https://github.com/nextest-rs/nextest) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/nextest-rs/nextest/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/nextest-rs/nextest/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/nextest-rs/nextest/blob/main/LICENSE-MIT) |
|
||||
| [**cargo-no-dev-deps**](https://github.com/taiki-e/cargo-no-dev-deps) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-no-dev-deps/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-no-dev-deps/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-no-dev-deps/blob/main/LICENSE-MIT) |
|
||||
| [**cargo-rdme**](https://github.com/orium/cargo-rdme) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/orium/cargo-rdme/releases) | Linux, macOS, Windows | [MPL-2.0](https://github.com/orium/cargo-rdme/blob/main/LICENSE.md) |
|
||||
@@ -87,7 +88,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
|
||||
| [**wait-for-them**](https://github.com/shenek/wait-for-them) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/shenek/wait-for-them/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/shenek/wait-for-them/blob/v0.4.0/Cargo.toml#L7) |
|
||||
| [**wash**](https://github.com/wasmCloud/wasmCloud) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/wasmCloud/wasmCloud/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/wasmCloud/wasmCloud/blob/main/LICENSE) |
|
||||
| [**wasm-bindgen**](https://github.com/wasm-bindgen/wasm-bindgen) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/wasm-bindgen/wasm-bindgen/releases) | Linux, macOS, Windows | [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) |
|
||||
| [**wasm-pack**](https://github.com/rustwasm/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustwasm/wasm-pack/releases) | Linux, macOS, Windows | [MIT](https://github.com/rustwasm/wasm-pack/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/rustwasm/wasm-pack/blob/master/LICENSE-APACHE) |
|
||||
| [**wasm-pack**](https://github.com/drager/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/drager/wasm-pack/releases) | Linux, macOS, Windows | [MIT](https://github.com/drager/wasm-pack/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/drager/wasm-pack/blob/master/LICENSE-APACHE) |
|
||||
| [**wasmtime**](https://github.com/bytecodealliance/wasmtime) | `$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) |
|
||||
| [**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) |
|
||||
|
||||
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.16.6"
|
||||
"version": "1.16.7"
|
||||
},
|
||||
"1.16.6": {
|
||||
"1.16.7": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE451CABCCB147",
|
||||
"checksum": "3225eea8041c30d7462761a481883e3aa8fe31c58def4b6c8dd91b7c80973df0"
|
||||
"etag": "0x8DE574303033055",
|
||||
"checksum": "730c2aba29f8cfa9b78d4b3fbaa705f593643ab1db579f619f90ed90fc6eefec"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE451C900E677F",
|
||||
"checksum": "633dc2f381f7000d8ba3c02eb24b2f290bf0154372bafe8d8094d777f129f21d"
|
||||
"etag": "0x8DE5743396D0020",
|
||||
"checksum": "e62a72d052f7ce457944072386a991e1161899456abb40e92bb54d57b95c5d12"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE451D31EC431A",
|
||||
"checksum": "fca962c3d12ae6192280111074db073c15abad3ba162a1a5a2af0f6f01872114"
|
||||
"etag": "0x8DE574389B95F80",
|
||||
"checksum": "d10ba1651bed7a83d55ef3d6abc8b3cd9704cd3410279781eee7a72c07b5cf71"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE451CA9B138F3",
|
||||
"checksum": "b556421835ba67fa98ca1570c85b5511457956b7836ce938b47d3f73899517a3"
|
||||
"etag": "0x8DE574303CE9BF8",
|
||||
"checksum": "119e6b4748ede337f8315c068698fa0cf64a2b009c5a04f45af30b062197b1e4"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE451CD5FCBA27",
|
||||
"checksum": "30543b378b96fbddabee1edfaccde7914dd2f851f02c560de859f81a21ab665b"
|
||||
"etag": "0x8DE574307B5067A",
|
||||
"checksum": "8dcaf49e099bbdd54f813838673bede9088c00111fbab0bc0cfc0e6276241c87"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE451D37D28120",
|
||||
"checksum": "f9ab980c488917ac1fc32a65b7fbcd4e36de40760b70833134d2a2a035ff6bfe"
|
||||
"etag": "0x8DE574387E6119F",
|
||||
"checksum": "335fc9e01ad5758f7c95a4a0a6ef2b7651b5f294cb76cc6397a95e05b515deed"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
54
manifests/cargo-neat.json
generated
Normal file
54
manifests/cargo-neat.json
generated
Normal file
@@ -0,0 +1,54 @@
|
||||
{
|
||||
"rust_crate": "cargo-neat",
|
||||
"template": {
|
||||
"x86_64_linux_musl": {
|
||||
"url": "https://github.com/killzoner/cargo-neat/releases/download/${version}/cargo-neat-${version}-x86_64-unknown-linux-musl.tar.gz",
|
||||
"bin": "cargo-neat-${version}-x86_64-unknown-linux-musl/cargo-neat"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/killzoner/cargo-neat/releases/download/${version}/cargo-neat-${version}-x86_64-apple-darwin.tar.gz",
|
||||
"bin": "cargo-neat-${version}-x86_64-apple-darwin/cargo-neat"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/killzoner/cargo-neat/releases/download/${version}/cargo-neat-${version}-x86_64-pc-windows-msvc.tar.gz",
|
||||
"bin": "cargo-neat-${version}-x86_64-pc-windows-msvc/cargo-neat.exe"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"url": "https://github.com/killzoner/cargo-neat/releases/download/${version}/cargo-neat-${version}-aarch64-unknown-linux-musl.tar.gz",
|
||||
"bin": "cargo-neat-${version}-aarch64-unknown-linux-musl/cargo-neat"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/killzoner/cargo-neat/releases/download/${version}/cargo-neat-${version}-aarch64-apple-darwin.tar.gz",
|
||||
"bin": "cargo-neat-${version}-aarch64-apple-darwin/cargo-neat"
|
||||
}
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/killzoner/cargo-neat/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/killzoner/cargo-neat/blob/master/LICENSE-APACHE)",
|
||||
"latest": {
|
||||
"version": "0.2.3"
|
||||
},
|
||||
"0.2": {
|
||||
"version": "0.2.3"
|
||||
},
|
||||
"0.2.3": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE4C5D8F94ED60",
|
||||
"checksum": "25e5cb704c60141f4806c9abd54a767f41ded08639328a4a8da42b69fc7b7f51"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE4C5D6DA53B1E",
|
||||
"checksum": "508eac6217b37ec9fb8775bb0ce7e91a372c14397d32d50ed67cf543c2c03686"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE4C5DC9809A25",
|
||||
"checksum": "97a3731dafbe1cda77bdef449fdae5bfc2c63ba6b16f5e086db41a69f71e4cc9"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE4C5D7C0D64BF",
|
||||
"checksum": "e7b02db85319553bb64a576ede4c5995f7c2721212ecbcb1331d4b8c6f5b36f2"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE4C5D79051512",
|
||||
"checksum": "b0a5add7f413380b32aa659d08da4f8b3d1e4ea96258951e06fdf5b0b6995aaf"
|
||||
}
|
||||
}
|
||||
}
|
||||
30
manifests/knope.json
generated
30
manifests/knope.json
generated
@@ -3,10 +3,36 @@
|
||||
"template": null,
|
||||
"license_markdown": "[MIT](https://github.com/knope-dev/knope/blob/main/LICENSE)",
|
||||
"latest": {
|
||||
"version": "0.22.0"
|
||||
"version": "0.22.1"
|
||||
},
|
||||
"0.22": {
|
||||
"version": "0.22.0"
|
||||
"version": "0.22.1"
|
||||
},
|
||||
"0.22.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.22.1/knope-x86_64-unknown-linux-musl.tgz",
|
||||
"etag": "0x8DE57B88F549A2F",
|
||||
"checksum": "dfb24f69cdcf4306a4ae0b3a280679daef15a30d65d25b30cba93b89c4c42977",
|
||||
"bin": "knope-x86_64-unknown-linux-musl/knope"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.22.1/knope-x86_64-apple-darwin.tgz",
|
||||
"etag": "0x8DE57B88F54C112",
|
||||
"checksum": "3c0af772aaf3c7fca49258e008bc75762778993872bf610ac2207bf0f3b3aa69",
|
||||
"bin": "knope-x86_64-apple-darwin/knope"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.22.1/knope-x86_64-pc-windows-msvc.tgz",
|
||||
"etag": "0x8DE57B88F77FFFC",
|
||||
"checksum": "1d79da137d27fd907070d54cb8cd5f5af6f66977c7ae2ac7fec78c124c78af1d",
|
||||
"bin": "knope-x86_64-pc-windows-msvc/knope.exe"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.22.1/knope-aarch64-apple-darwin.tgz",
|
||||
"etag": "0x8DE57B88F520511",
|
||||
"checksum": "e5ac51e44492c9d5d118ab95f6a964e83a028337834c5d20f0872e3c53f98d1f",
|
||||
"bin": "knope-aarch64-apple-darwin/knope"
|
||||
}
|
||||
},
|
||||
"0.22.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.1.4"
|
||||
"version": "2026.1.5"
|
||||
},
|
||||
"2026": {
|
||||
"version": "2026.1.4"
|
||||
"version": "2026.1.5"
|
||||
},
|
||||
"2026.1": {
|
||||
"version": "2026.1.4"
|
||||
"version": "2026.1.5"
|
||||
},
|
||||
"2026.1.5": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE5791DF15978A",
|
||||
"checksum": "976487dba32b35802d64756cd44c563b239cc21e8dff177edf0c71ee5e9bc3f1"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE5791E13990C0",
|
||||
"checksum": "c2d4264426cc4395b9b0adde1d7b5f631fb7de2a0aa20960dd8bff3ed68b21cd"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE5791E20156ED",
|
||||
"checksum": "b1ceb3d5a603b17e91164e6efd89a86c6f150c5fff463225100d92c8f2e4ea8d"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE5791DC6E830B",
|
||||
"checksum": "d963525dbbf83f5af5b4d320f8e2785d217103ca46d7529d28d94f76f314ed09"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE5791E0AF519E",
|
||||
"checksum": "94baa6ecb39132174c51ce56b28313b009ddd6939eeb6b951fc4600652623dfc"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE5791E1EE0BBA",
|
||||
"checksum": "6e9ec88059983a053eda0fba8bc351809b6e63716bc6325a3c82ad310c0921db"
|
||||
}
|
||||
},
|
||||
"2026.1.4": {
|
||||
"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.7.19"
|
||||
"version": "0.7.20"
|
||||
},
|
||||
"0.7": {
|
||||
"version": "0.7.19"
|
||||
"version": "0.7.20"
|
||||
},
|
||||
"0.7.20": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE57BF5CAD1182",
|
||||
"checksum": "8eb8c307b01729659f05ee9aa13fbd716d3ac229a0e320225163c89bbafcc94f"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE57BF5C3EED2C",
|
||||
"checksum": "db88cb3aa67cf2f51ba617c459f8bc6592f6e90255743559c381432ee76716ea"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE57BF5CB9869E",
|
||||
"checksum": "829a936e1eec64df3d70af96fcfa9d8cada45fb8eecfa296bb83785bd7b6876d"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE57BF5C375498",
|
||||
"checksum": "fcbd6b76ecd95f9a2cc2c307b71c723bd821f2714704667c9453b7698c6ee871"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE57BF5C38D97F",
|
||||
"checksum": "61c63f3f9d23e5ce4c5b63d6ab07440c13ab35ed4debba6beb4b375dfca4c518"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE57BF5C3BE357",
|
||||
"checksum": "82d0c93596460be288384a43ad8e52176590ae60c698837ae75924e50f00005c"
|
||||
}
|
||||
},
|
||||
"0.7.19": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
28
manifests/typos.json
generated
28
manifests/typos.json
generated
@@ -22,13 +22,35 @@
|
||||
},
|
||||
"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.42.0"
|
||||
"version": "1.42.1"
|
||||
},
|
||||
"1": {
|
||||
"version": "1.42.0"
|
||||
"version": "1.42.1"
|
||||
},
|
||||
"1.42": {
|
||||
"version": "1.42.0"
|
||||
"version": "1.42.1"
|
||||
},
|
||||
"1.42.1": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE5767233F1722",
|
||||
"checksum": "fe1492d6c1079c328ef66de2094b7a3a4569987ec972ab56002c5db4746a8d1b"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE5767440D584C",
|
||||
"checksum": "9996d6fbb204aa07791d1a744a85ada055e59a99795b2d9a73c0455828297ca3"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE57671985964D",
|
||||
"checksum": "ba5a382e4d18fa266e91aadd9d67d1ae0a79166c20ebce225d05b00d1de0b4a9"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE5766D53A6525",
|
||||
"checksum": "b5d7bfcfa9dcdd479a614e428512c2e180edc4c82a0223562943c470d7ef9126"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE57674484E7CE",
|
||||
"checksum": "89539a0ca79ce851b8244af6c0aaab9190925838aed3ab26250d444a59e5cb78"
|
||||
}
|
||||
},
|
||||
"1.42.0": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
30
manifests/vacuum.json
generated
30
manifests/vacuum.json
generated
@@ -22,10 +22,36 @@
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/daveshanley/vacuum/blob/main/LICENSE)",
|
||||
"latest": {
|
||||
"version": "0.23.3"
|
||||
"version": "0.23.4"
|
||||
},
|
||||
"0.23": {
|
||||
"version": "0.23.3"
|
||||
"version": "0.23.4"
|
||||
},
|
||||
"0.23.4": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE57660BDEE171",
|
||||
"checksum": "b68dae855e523bf67e9307056d570ed6b4b826aa3a3a8e9e98dd3ad21db4a837"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE57660C7E3EA6",
|
||||
"checksum": "31090d9efa7996cde0fa3b7727b11e18c9e53fde101cf0d2a0a73276a36ba6b2"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE57660BD4DA91",
|
||||
"checksum": "66ba45daba81deb038ac68acf014f8f934a12276f28ee5add00770cef5000f6a"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE57660C77DD3D",
|
||||
"checksum": "89d5ef6349f6715a3be1f6d760db72b5792a9a5dfb354348455f492598e8f5ef"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DE57660BD721F6",
|
||||
"checksum": "83d989bb32f29cb0ef3d272fe457ad2aac6e6c525ffbdc8434a65aa8327a628c"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DE57660C745EB5",
|
||||
"checksum": "ca28c486061da27512bdb8ff2113c49aedf054701c811ef8c4e6424f1c56ca24"
|
||||
}
|
||||
},
|
||||
"0.23.3": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
33
manifests/wasm-pack.json
generated
33
manifests/wasm-pack.json
generated
@@ -2,25 +2,46 @@
|
||||
"rust_crate": "wasm-pack",
|
||||
"template": {
|
||||
"x86_64_linux_musl": {
|
||||
"url": "https://github.com/rustwasm/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-x86_64-unknown-linux-musl.tar.gz",
|
||||
"url": "https://github.com/drager/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-x86_64-unknown-linux-musl.tar.gz",
|
||||
"bin": "wasm-pack-v${version}-x86_64-unknown-linux-musl/wasm-pack"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/rustwasm/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-x86_64-apple-darwin.tar.gz",
|
||||
"url": "https://github.com/drager/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-x86_64-apple-darwin.tar.gz",
|
||||
"bin": "wasm-pack-v${version}-x86_64-apple-darwin/wasm-pack"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/rustwasm/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-x86_64-pc-windows-msvc.tar.gz",
|
||||
"url": "https://github.com/drager/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-x86_64-pc-windows-msvc.tar.gz",
|
||||
"bin": "wasm-pack-v${version}-x86_64-pc-windows-msvc/wasm-pack.exe"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"url": "https://github.com/rustwasm/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-aarch64-unknown-linux-musl.tar.gz",
|
||||
"url": "https://github.com/drager/wasm-pack/releases/download/v${version}/wasm-pack-v${version}-aarch64-unknown-linux-musl.tar.gz",
|
||||
"bin": "wasm-pack-v${version}-aarch64-unknown-linux-musl/wasm-pack"
|
||||
}
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/rustwasm/wasm-pack/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/rustwasm/wasm-pack/blob/master/LICENSE-APACHE)",
|
||||
"license_markdown": "[MIT](https://github.com/drager/wasm-pack/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/drager/wasm-pack/blob/master/LICENSE-APACHE)",
|
||||
"latest": {
|
||||
"version": "0.13.1"
|
||||
"version": "0.14.0"
|
||||
},
|
||||
"0.14": {
|
||||
"version": "0.14.0"
|
||||
},
|
||||
"0.14.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DE580F1B5D53B6",
|
||||
"checksum": "278a8d668085821f4d1a637bd864f1713f872b0ae3a118c77562a308c0abfe8d"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DE580F1DC36326",
|
||||
"checksum": "46b66072ee9912b53f83841aecb04479a60e0705f7bb8b6681b377a07a512a23"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DE580F1C970AA5",
|
||||
"checksum": "d484c8e8bcd9e8c30097fbac78b52dd159598f99d11e43a50f5d143b67c721f1"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DE580F1BE0E3B5",
|
||||
"checksum": "5941c7b05060440ff37ee50fe9009a408e63fa5ba607a3b0736f5a887ec5f2ca"
|
||||
}
|
||||
},
|
||||
"0.13": {
|
||||
"version": "0.13.1"
|
||||
|
||||
14
tools/codegen/base/cargo-neat.json
Normal file
14
tools/codegen/base/cargo-neat.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"repository": "https://github.com/killzoner/cargo-neat",
|
||||
"tag_prefix": "",
|
||||
"rust_crate": "${package}",
|
||||
"asset_name": "${package}-${version}-${rust_target}.tar.gz",
|
||||
"bin": "${package}-${version}-${rust_target}/${package}${exe}",
|
||||
"platform": {
|
||||
"x86_64_linux_musl": {},
|
||||
"x86_64_macos": {},
|
||||
"x86_64_windows": {},
|
||||
"aarch64_linux_musl": {},
|
||||
"aarch64_macos": {}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"repository": "https://github.com/rustwasm/wasm-pack",
|
||||
"repository": "https://github.com/drager/wasm-pack",
|
||||
"tag_prefix": "v",
|
||||
"rust_crate": "${package}",
|
||||
"asset_name": "${package}-v${version}-${rust_target}.tar.gz",
|
||||
|
||||
108
tools/tidy.sh
108
tools/tidy.sh
@@ -1,6 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
# shellcheck disable=SC2046
|
||||
set -CeEuo pipefail
|
||||
IFS=$'\n\t'
|
||||
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
|
||||
@@ -14,7 +13,7 @@ cd -- "$(dirname -- "$0")"/..
|
||||
# - git 1.8+
|
||||
# - jq 1.6+
|
||||
# - npm (node 18+)
|
||||
# - python 3.6+ and pipx
|
||||
# - python 3.6+, pipx
|
||||
# - shfmt
|
||||
# - shellcheck
|
||||
# - zizmor
|
||||
@@ -71,7 +70,7 @@ check_diff() {
|
||||
fi
|
||||
else
|
||||
local res
|
||||
res=$(git --no-pager diff --exit-code --name-only "$@" || true)
|
||||
res=$(git --no-pager diff --name-only "$@")
|
||||
if [[ -n "${res}" ]]; then
|
||||
warn "please commit changes made by formatter/generator if exists on the following files"
|
||||
print_fenced "${res}"$'\n'
|
||||
@@ -116,7 +115,6 @@ check_alt() {
|
||||
fi
|
||||
}
|
||||
check_hidden() {
|
||||
local res
|
||||
for file in "$@"; do
|
||||
check_alt ".${file}" "${file}" "$(LC_ALL=C comm -23 <(ls_files "*${file}") <(ls_files "*.${file}"))"
|
||||
done
|
||||
@@ -125,6 +123,7 @@ sed_rhs_escape() {
|
||||
sed -E 's/\\/\\\\/g; s/\&/\\\&/g; s/\//\\\//g' <<<"$1"
|
||||
}
|
||||
|
||||
should_fail=''
|
||||
if [[ $# -gt 0 ]]; then
|
||||
cat <<EOF
|
||||
USAGE:
|
||||
@@ -174,14 +173,19 @@ case "$(uname -s)" in
|
||||
done
|
||||
fi
|
||||
;;
|
||||
Haiku) ostype=haiku ;;
|
||||
Minix) ostype=minix ;;
|
||||
GNU) ostype=hurd ;;
|
||||
AIX) ostype=aix ;;
|
||||
HP-UX) ostype=hpux ;;
|
||||
MINGW* | MSYS* | CYGWIN* | Windows_NT)
|
||||
ostype=windows
|
||||
if type -P jq >/dev/null; then
|
||||
# https://github.com/jqlang/jq/issues/1854
|
||||
_tmp=$(jq -r .a <<<'{}')
|
||||
if [[ "${_tmp}" != 'null' ]]; then
|
||||
_tmp=$(jq -b -r .a 2>/dev/null <<<'{}' || true)
|
||||
if [[ "${_tmp}" == 'null' ]]; then
|
||||
_tmp=$(jq -r .a <<<'{}' | wc -c)
|
||||
if [[ "${_tmp}" != 5 ]]; then
|
||||
_tmp=$({ jq -b -r .a 2>/dev/null <<<'{}' || true; } | wc -c)
|
||||
if [[ "${_tmp}" == 5 ]]; then
|
||||
jq() { command jq -b "$@"; }
|
||||
else
|
||||
jq() { command jq "$@" | tr -d '\r'; }
|
||||
@@ -195,7 +199,6 @@ case "$(uname -s)" in
|
||||
esac
|
||||
|
||||
check_install git
|
||||
exclude_from_ls_files=()
|
||||
# - `find` lists symlinks. `! ( -name <dir> -prune )` means recursively ignore <dir>. `cut` removes the leading `./`.
|
||||
# This can be replaced with `fd -H -t l`.
|
||||
# - `git submodule status` lists submodules. The first `cut` removes the first character indicates status ( |+|-).
|
||||
@@ -204,6 +207,7 @@ find_prune=(\! \( -name .git -prune \))
|
||||
while IFS= read -r; do
|
||||
find_prune+=(\! \( -name "${REPLY}" -prune \))
|
||||
done < <(sed -E 's/#.*//g; s/^[ \t]+//g; s/\/[ \t]+$//g; /^$/d' .gitignore)
|
||||
exclude_from_ls_files=()
|
||||
while IFS=$'\n' read -r; do
|
||||
exclude_from_ls_files+=("${REPLY}")
|
||||
done < <({
|
||||
@@ -227,12 +231,24 @@ ls_files() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Referred by both Rust and Markdown check.
|
||||
markdown_files=()
|
||||
while IFS=$'\n' read -r; do markdown_files+=("${REPLY}"); done < <(ls_files '*.md')
|
||||
if [[ ${TIDY_EXPECTED_MARKDOWN_FILE_COUNT:-${#markdown_files[@]}} -ne ${#markdown_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_MARKDOWN_FILE_COUNT} of Markdown files, but found ${#markdown_files[@]}; consider updating TIDY_EXPECTED_MARKDOWN_FILE_COUNT env var"
|
||||
fi
|
||||
|
||||
# Rust (if exists)
|
||||
if [[ -n "$(ls_files '*.rs')" ]]; then
|
||||
rust_files=()
|
||||
while IFS=$'\n' read -r; do rust_files+=("${REPLY}"); done < <(ls_files '*.rs')
|
||||
if [[ ${TIDY_EXPECTED_RUST_FILE_COUNT:-${#rust_files[@]}} -ne ${#rust_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_RUST_FILE_COUNT} of Rust files, but found ${#rust_files[@]}; consider updating TIDY_EXPECTED_RUST_FILE_COUNT env var"
|
||||
fi
|
||||
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 python3 pipx; then
|
||||
if check_install cargo jq pipx; 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.
|
||||
@@ -242,16 +258,16 @@ if [[ -n "$(ls_files '*.rs')" ]]; then
|
||||
retry rustup component add rustfmt &>/dev/null
|
||||
fi
|
||||
info "running \`rustfmt \$(git ls-files '*.rs')\`"
|
||||
rustfmt $(ls_files '*.rs')
|
||||
rustfmt "${rust_files[@]}"
|
||||
else
|
||||
if type -P rustup >/dev/null; then
|
||||
retry rustup component add rustfmt --toolchain nightly &>/dev/null
|
||||
fi
|
||||
info "running \`rustfmt +nightly \$(git ls-files '*.rs')\`"
|
||||
rustfmt +nightly $(ls_files '*.rs')
|
||||
rustfmt +nightly "${rust_files[@]}"
|
||||
fi
|
||||
check_diff $(ls_files '*.rs')
|
||||
cast_without_turbofish=$(grep -Fn '.cast()' $(ls_files '*.rs') || true)
|
||||
check_diff "${rust_files[@]}"
|
||||
cast_without_turbofish=$(grep -Fn '.cast()' "${rust_files[@]}" || true)
|
||||
if [[ -n "${cast_without_turbofish}" ]]; then
|
||||
error "please replace \`.cast()\` with \`.cast::<type_name>()\`:"
|
||||
printf '%s\n' "${cast_without_turbofish}"
|
||||
@@ -332,7 +348,7 @@ if [[ -n "$(ls_files '*.rs')" ]]; then
|
||||
fi
|
||||
# Sync markdown to rustdoc.
|
||||
first=1
|
||||
for markdown in $(ls_files '*.md'); do
|
||||
for markdown in "${markdown_files[@]}"; do
|
||||
markers=$(grep -En '^<!-- tidy:sync-markdown-to-rustdoc:(start[^ ]*|end) -->' "${markdown}" || true)
|
||||
# BSD wc's -l emits spaces before number.
|
||||
if [[ ! "$(LC_ALL=C wc -l <<<"${markers}")" =~ ^\ *2$ ]]; then
|
||||
@@ -381,10 +397,11 @@ if [[ -n "$(ls_files '*.rs')" ]]; then
|
||||
fi
|
||||
new='<!-- tidy:sync-markdown-to-rustdoc:start -->'$'\a'
|
||||
empty_line_re='^ *$'
|
||||
gfm_alert_re='^> {0,4}\[!.*\] *$'
|
||||
gfm_alert_re='^ *> {0,4}\[!.*\] *$'
|
||||
rust_code_block_re='^ *```(rust|rs) *$'
|
||||
code_block_attr=''
|
||||
in_alert=''
|
||||
leading_spaces=''
|
||||
first_line=1
|
||||
ignore=''
|
||||
while IFS='' read -rd$'\a' line; do
|
||||
@@ -401,7 +418,7 @@ if [[ -n "$(ls_files '*.rs')" ]]; then
|
||||
elif [[ -n "${in_alert}" ]]; then
|
||||
if [[ "${line}" =~ ${empty_line_re} ]]; then
|
||||
in_alert=''
|
||||
new+=$'\a'"</div>"$'\a'
|
||||
new+=$'\a'"${leading_spaces}</div>"$'\a'
|
||||
fi
|
||||
elif [[ "${line}" =~ ${gfm_alert_re} ]]; then
|
||||
alert="${line#*[\!}"
|
||||
@@ -418,8 +435,13 @@ if [[ -n "$(ls_files '*.rs')" ]]; then
|
||||
;;
|
||||
esac
|
||||
in_alert=1
|
||||
new+="<div class=\"rustdoc-alert rustdoc-alert-${alert_lower}\">"$'\a\a'
|
||||
new+="> **${alert_sign} ${alert:0:1}${alert_lower:1}**"$'\a>\a'
|
||||
leading_spaces="${line%%[^ ]*}"
|
||||
# GitHub doesn't handle indented GFM alerts...
|
||||
if [[ -n "${leading_spaces}" ]]; then
|
||||
error "GitHub doesn't handle indented GFM alerts"
|
||||
fi
|
||||
new+="${leading_spaces}<div class=\"rustdoc-alert rustdoc-alert-${alert_lower}\">"$'\a\a'
|
||||
new+="${leading_spaces}> **${alert_sign} ${alert:0:1}${alert_lower:1}**"$'\a'"${leading_spaces}>"$'\a'
|
||||
continue
|
||||
fi
|
||||
if [[ "${line}" =~ ${rust_code_block_re} ]]; then
|
||||
@@ -459,15 +481,20 @@ check_hidden clippy.toml deny.toml rustfmt.toml
|
||||
|
||||
# C/C++/Protobuf (if exists)
|
||||
clang_format_ext=('*.c' '*.h' '*.cpp' '*.hpp' '*.proto')
|
||||
if [[ -n "$(ls_files "${clang_format_ext[@]}")" ]]; then
|
||||
clang_format_files=()
|
||||
while IFS=$'\n' read -r; do clang_format_files+=("${REPLY}"); done < <(ls_files "${clang_format_ext[@]}")
|
||||
if [[ ${TIDY_EXPECTED_CLANG_FORMAT_FILE_COUNT:-${#clang_format_files[@]}} -ne ${#clang_format_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_CLANG_FORMAT_FILE_COUNT} of C/C++/Protobuf files, but found ${#clang_format_files[@]}; consider updating TIDY_EXPECTED_CLANG_FORMAT_FILE_COUNT env var"
|
||||
fi
|
||||
if [[ ${#clang_format_files[@]} -gt 0 ]]; then
|
||||
info "checking C/C++/Protobuf code style"
|
||||
check_config .clang-format
|
||||
if check_install clang-format; then
|
||||
IFS=' '
|
||||
info "running \`clang-format -i \$(git ls-files ${clang_format_ext[*]})\`"
|
||||
IFS=$'\n\t'
|
||||
clang-format -i $(ls_files "${clang_format_ext[@]}")
|
||||
check_diff $(ls_files "${clang_format_ext[@]}")
|
||||
clang-format -i "${clang_format_files[@]}"
|
||||
check_diff "${clang_format_files[@]}"
|
||||
fi
|
||||
printf '\n'
|
||||
else
|
||||
@@ -480,15 +507,20 @@ check_alt '.hpp extension' 'other extensions' "$(ls_files '*.hh' '*.hp' '*.hxx'
|
||||
|
||||
# YAML/HTML/CSS/JavaScript/JSON (if exists)
|
||||
prettier_ext=('*.css' '*.html' '*.js' '*.json' '*.yml' '*.yaml')
|
||||
if [[ -n "$(ls_files "${prettier_ext[@]}")" ]]; then
|
||||
prettier_files=()
|
||||
while IFS=$'\n' read -r; do prettier_files+=("${REPLY}"); done < <(ls_files "${prettier_ext[@]}")
|
||||
if [[ ${TIDY_EXPECTED_PRETTIER_FILE_COUNT:-${#prettier_files[@]}} -ne ${#prettier_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_PRETTIER_FILE_COUNT} of YAML/HTML/CSS/JavaScript/JSON files, but found ${#prettier_files[@]}; consider updating TIDY_EXPECTED_PRETTIER_FILE_COUNT env var"
|
||||
fi
|
||||
if [[ ${#prettier_files[@]} -gt 0 ]]; then
|
||||
info "checking YAML/HTML/CSS/JavaScript/JSON code style"
|
||||
check_config .editorconfig
|
||||
if check_install npm; then
|
||||
IFS=' '
|
||||
info "running \`npx -y prettier -l -w \$(git ls-files ${prettier_ext[*]})\`"
|
||||
IFS=$'\n\t'
|
||||
npx -y prettier -l -w $(ls_files "${prettier_ext[@]}")
|
||||
check_diff $(ls_files "${prettier_ext[@]}")
|
||||
npx -y prettier -l -w "${prettier_files[@]}"
|
||||
check_diff "${prettier_files[@]}"
|
||||
fi
|
||||
printf '\n'
|
||||
else
|
||||
@@ -499,13 +531,18 @@ check_alt '.editorconfig' 'other configs' "$(ls_files '*.prettierrc*' '*prettier
|
||||
check_alt '.yml extension' '.yaml extension' "$(ls_files '*.yaml' | { grep -Fv '.markdownlint-cli2.yaml' || true; })"
|
||||
|
||||
# TOML (if exists)
|
||||
toml_files=()
|
||||
while IFS=$'\n' read -r; do toml_files+=("${REPLY}"); done < <(ls_files '*.toml')
|
||||
if [[ ${TIDY_EXPECTED_TOML_FILE_COUNT:-${#toml_files[@]}} -ne ${#toml_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_TOML_FILE_COUNT} of TOML files, but found ${#toml_files[@]}; consider updating TIDY_EXPECTED_TOML_FILE_COUNT env var"
|
||||
fi
|
||||
if [[ -n "$(ls_files '*.toml' | { grep -Fv '.taplo.toml' || true; })" ]]; then
|
||||
info "checking TOML style"
|
||||
check_config .taplo.toml
|
||||
if check_install npm; then
|
||||
info "running \`npx -y @taplo/cli fmt \$(git ls-files '*.toml')\`"
|
||||
RUST_LOG=warn npx -y @taplo/cli fmt $(ls_files '*.toml')
|
||||
check_diff $(ls_files '*.toml')
|
||||
RUST_LOG=warn npx -y @taplo/cli fmt "${toml_files[@]}"
|
||||
check_diff "${toml_files[@]}"
|
||||
fi
|
||||
printf '\n'
|
||||
else
|
||||
@@ -514,12 +551,12 @@ fi
|
||||
check_hidden taplo.toml
|
||||
|
||||
# Markdown (if exists)
|
||||
if [[ -n "$(ls_files '*.md')" ]]; then
|
||||
if [[ ${#markdown_files[@]} -gt 0 ]]; then
|
||||
info "checking markdown style"
|
||||
check_config .markdownlint-cli2.yaml
|
||||
if check_install npm; then
|
||||
info "running \`npx -y markdownlint-cli2 \$(git ls-files '*.md')\`"
|
||||
if ! npx -y markdownlint-cli2 $(ls_files '*.md'); then
|
||||
if ! npx -y markdownlint-cli2 "${markdown_files[@]}"; then
|
||||
error "check failed; please resolve the above markdownlint error(s)"
|
||||
fi
|
||||
fi
|
||||
@@ -580,6 +617,12 @@ if [[ -n "$(ls_files '*action.yml')" ]]; then
|
||||
fi
|
||||
done
|
||||
fi
|
||||
if [[ ${TIDY_EXPECTED_SHELL_FILE_COUNT:-${#shell_files[@]}} -ne ${#shell_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_SHELL_FILE_COUNT} of shell script files, but found ${#shell_files[@]}; consider updating TIDY_EXPECTED_SHELL_FILE_COUNT env var"
|
||||
fi
|
||||
if [[ ${TIDY_EXPECTED_DOCKER_FILE_COUNT:-${#docker_files[@]}} -ne ${#docker_files[@]} ]]; then
|
||||
error "expected ${TIDY_EXPECTED_DOCKER_FILE_COUNT} of dockerfiles, but found ${#docker_files[@]}; consider updating TIDY_EXPECTED_DOCKER_FILE_COUNT env var"
|
||||
fi
|
||||
# correctness
|
||||
res=$({ grep -En '(\[\[ .* ]]|(^|[^\$])\(\(.*\)\))( +#| *$)' "${bash_files[@]}" || true; } | { grep -Ev '^[^ ]+: *(#|//)' || true; } | LC_ALL=C sort)
|
||||
if [[ -n "${res}" ]]; then
|
||||
@@ -917,6 +960,7 @@ 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.
|
||||
IFS=' '
|
||||
info "running \`zizmor -q ${zizmor_targets[*]}\`"
|
||||
IFS=$'\n\t'
|
||||
@@ -931,7 +975,7 @@ check_alt '.sh extension' '*.bash extension' "$(ls_files '*.bash')"
|
||||
if [[ -f tools/.tidy-check-license-headers ]]; then
|
||||
info "checking license headers (experimental)"
|
||||
failed_files=''
|
||||
for p in $(LC_ALL=C comm -12 <(eval $(<tools/.tidy-check-license-headers) | LC_ALL=C sort) <(ls_files | LC_ALL=C sort)); do
|
||||
for p in $(LC_ALL=C comm -12 <(eval "$(<tools/.tidy-check-license-headers)" | LC_ALL=C sort) <(ls_files | LC_ALL=C sort)); do
|
||||
case "${p##*/}" in
|
||||
*.stderr | *.expanded.rs) continue ;; # generated files
|
||||
*.json) continue ;; # no comment support
|
||||
@@ -973,7 +1017,7 @@ fi
|
||||
if [[ -f .cspell.json ]]; then
|
||||
info "spell checking"
|
||||
project_dictionary=.github/.cspell/project-dictionary.txt
|
||||
if check_install npm jq python3 pipx; then
|
||||
if check_install npm jq pipx; then
|
||||
has_rust=''
|
||||
if [[ -n "$(ls_files '*Cargo.toml')" ]]; then
|
||||
has_rust=1
|
||||
|
||||
Reference in New Issue
Block a user