Compare commits

...

19 Commits

Author SHA1 Message Date
Taiki Endo
42c270942d Release 2.44.17 2024-10-02 04:30:15 +09:00
Taiki Endo
2fac102626 Update release-plz@latest to 0.3.94 2024-10-02 03:15:56 +09:00
Taiki Endo
d3f7f6bfbe Release 2.44.16 2024-10-02 00:38:00 +09:00
Taiki Endo
478ddf2e86 Update biome@latest to 1.9.3 2024-10-02 00:12:28 +09:00
Taiki Endo
638d0bf357 Release 2.44.15 2024-10-01 10:54:07 +09:00
Taiki Endo
d6aa4ce660 Update typos@latest to 1.25.0 2024-10-01 10:48:53 +09:00
Taiki Endo
2d31e9510b Release 2.44.14 2024-10-01 10:41:52 +09:00
Taiki Endo
20c83a1018 Update changelog 2024-10-01 10:41:36 +09:00
Taiki Endo
748ba9af43 Update just@latest to 1.36.0 2024-10-01 09:36:42 +09:00
Taiki Endo
93a46af020 Update release-plz@latest to 0.3.93 2024-10-01 06:11:25 +09:00
Taiki Endo
e1fa0f071a Update cargo-make@latest to 0.37.18 2024-09-29 21:14:43 +09:00
Taiki Endo
5be2449dc8 Update cargo-make@latest to 0.37.17 2024-09-29 00:11:39 +09:00
Taiki Endo
9bef7e9c3d Release 2.44.13 2024-09-28 18:52:21 +09:00
Taiki Endo
3981b01dd3 Update sccache@latest to 0.8.2 2024-09-28 18:11:48 +09:00
Taiki Endo
5b02de393a Update release-plz@latest to 0.3.92 2024-09-28 18:11:48 +09:00
Taiki Endo
5fe2a9c74d ci: Update cargo-watch/watchexec-cli versions 2024-09-28 16:33:01 +09:00
Taiki Endo
47e2e5cbd7 Release 2.44.12 2024-09-28 16:25:13 +09:00
Taiki Endo
05718eba42 Update changelog 2024-09-28 16:22:12 +09:00
Taiki Endo
942f3ad679 Fix compatibility issue with Cygwin sh
```
D:\a\_temp\00683b68-582f-4719-bd7a-9e98dd7975b7.sh: line 1: set: -
: invalid option
set: usage: set [-abefhkmnptuvxBCEHPT] [-o option-name] [--] [-] [arg ...]
```
2024-09-28 16:20:03 +09:00
10 changed files with 303 additions and 32 deletions

View File

@@ -63,24 +63,30 @@ jobs:
bash: msys64 bash: msys64
- os: windows-2022 - os: windows-2022
bash: cygwin bash: cygwin
- os: windows-2022
tool: major.minor.patch
- os: windows-2022
tool: major.minor
- os: windows-2022
tool: major
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
timeout-minutes: 60 timeout-minutes: 60
steps: steps:
- run: | - run: |
printf 'C:\msys64\mingw32\bin\n' >>"${GITHUB_PATH}" printf '%s\n' 'C:\msys64\mingw32\bin' >>"${GITHUB_PATH}"
printf 'C:\msys64\usr\bin\n' >>"${GITHUB_PATH}" printf '%s\n' 'C:\msys64\usr\bin' >>"${GITHUB_PATH}"
if: matrix.bash == 'msys64' if: matrix.bash == 'msys64'
- run: | - run: |
choco install --no-progress --requirechecksums cygwin choco install --no-progress --requirechecksums cygwin
printf 'C:\tools\cygwin\bin\n' >>"${GITHUB_PATH}" printf '%s\n' 'C:\tools\cygwin\bin' >>"${GITHUB_PATH}"
printf 'C:\tools\cygwin\usr\bin\n' >>"${GITHUB_PATH}" printf '%s\n' 'C:\tools\cygwin\usr\bin' >>"${GITHUB_PATH}"
if: matrix.bash == 'cygwin' if: matrix.bash == 'cygwin'
- uses: taiki-e/checkout-action@v1 - uses: taiki-e/checkout-action@v1
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version` # cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
- run: rm Cargo.toml - run: rm Cargo.toml
- name: Generate tool list - name: Generate tool list
id: tool-list id: tool-list
run: tools/ci/tool-list.sh "${{ matrix.tool }}" >>"${GITHUB_OUTPUT}" run: tools/ci/tool-list.sh "${{ matrix.tool }}" "${{ matrix.os }}" "${{ matrix.bash }}" >>"${GITHUB_OUTPUT}"
- run: env - run: env
- uses: ./ - uses: ./
with: with:

View File

@@ -10,6 +10,36 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased] ## [Unreleased]
## [2.44.17] - 2024-10-01
- Update `release-plz@latest` to 0.3.94.
## [2.44.16] - 2024-10-01
- Update `biome@latest` to 1.9.3.
## [2.44.15] - 2024-10-01
- Update `typos@latest` to 1.25.0.
## [2.44.14] - 2024-10-01
- Update `just@latest` to 1.36.0.
- Update `release-plz@latest` to 0.3.93.
- Update `cargo-make@latest` to 0.37.18.
## [2.44.13] - 2024-09-28
- Update `sccache@latest` to 0.8.2.
- Update `release-plz@latest` to 0.3.92.
## [2.44.12] - 2024-09-28
- Fix compatibility issue with Cygwin `sh`. This fixes a regression introduced in 2.42.0.
## [2.44.11] - 2024-09-28 ## [2.44.11] - 2024-09-28
- Update `git-cliff@latest` to 2.6.1. - Update `git-cliff@latest` to 2.6.1.
@@ -2788,7 +2818,13 @@ Note: This release is considered a breaking change because installing on version
Initial release Initial release
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.44.11...HEAD [Unreleased]: https://github.com/taiki-e/install-action/compare/v2.44.17...HEAD
[2.44.17]: https://github.com/taiki-e/install-action/compare/v2.44.16...v2.44.17
[2.44.16]: https://github.com/taiki-e/install-action/compare/v2.44.15...v2.44.16
[2.44.15]: https://github.com/taiki-e/install-action/compare/v2.44.14...v2.44.15
[2.44.14]: https://github.com/taiki-e/install-action/compare/v2.44.13...v2.44.14
[2.44.13]: https://github.com/taiki-e/install-action/compare/v2.44.12...v2.44.13
[2.44.12]: https://github.com/taiki-e/install-action/compare/v2.44.11...v2.44.12
[2.44.11]: https://github.com/taiki-e/install-action/compare/v2.44.10...v2.44.11 [2.44.11]: https://github.com/taiki-e/install-action/compare/v2.44.10...v2.44.11
[2.44.10]: https://github.com/taiki-e/install-action/compare/v2.44.9...v2.44.10 [2.44.10]: https://github.com/taiki-e/install-action/compare/v2.44.9...v2.44.10
[2.44.9]: https://github.com/taiki-e/install-action/compare/v2.44.8...v2.44.9 [2.44.9]: https://github.com/taiki-e/install-action/compare/v2.44.8...v2.44.9

View File

@@ -46,3 +46,11 @@ runs:
INPUT_TOOL: ${{ inputs.tool }} INPUT_TOOL: ${{ inputs.tool }}
INPUT_CHECKSUM: ${{ inputs.checksum }} INPUT_CHECKSUM: ${{ inputs.checksum }}
INPUT_FALLBACK: ${{ inputs.fallback }} INPUT_FALLBACK: ${{ inputs.fallback }}
if: runner.os != 'Windows'
- run: bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
shell: bash
env:
INPUT_TOOL: ${{ inputs.tool }}
INPUT_CHECKSUM: ${{ inputs.checksum }}
INPUT_FALLBACK: ${{ inputs.fallback }}
if: runner.os == 'Windows'

32
manifests/biome.json generated
View File

@@ -36,13 +36,39 @@
}, },
"license_markdown": "[Apache-2.0](https://github.com/biomejs/biome/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/biomejs/biome/blob/main/LICENSE-MIT)", "license_markdown": "[Apache-2.0](https://github.com/biomejs/biome/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/biomejs/biome/blob/main/LICENSE-MIT)",
"latest": { "latest": {
"version": "1.9.2" "version": "1.9.3"
}, },
"1": { "1": {
"version": "1.9.2" "version": "1.9.3"
}, },
"1.9": { "1.9": {
"version": "1.9.2" "version": "1.9.3"
},
"1.9.3": {
"x86_64_linux_musl": {
"etag": "0x8DCE2208C420047",
"checksum": "848ea1768bcae3cf3e4924c9335810013bebf7b2157430ab6c33fae4e5b3bfd5"
},
"x86_64_macos": {
"etag": "0x8DCE2208C565BC5",
"checksum": "4c99bd90cc559cb3389859dabdbfae84b7baf8f4b8176eee584994c1cc4b5edd"
},
"x86_64_windows": {
"etag": "0x8DCE2208C479F4F",
"checksum": "7e3a522d3400f9f7a7d1369ee11d101dc5d8243d439a25de9fd6dca868351a88"
},
"aarch64_linux_musl": {
"etag": "0x8DCE2208C4E7561",
"checksum": "4365bb2a368e851580ccaac9b2673dfb7d4af65a155da7fbe1052b0cd6208f45"
},
"aarch64_macos": {
"etag": "0x8DCE2208C3B2A2C",
"checksum": "e0dd5aa3b34d480dd847f9772373e924e0b709cd58151b80ae412889bf2a5c0c"
},
"aarch64_windows": {
"etag": "0x8DCE2208C3B034F",
"checksum": "ee0088ba7f1e429126443c33c01dada0fc15c1d118cd0c8f340a15709d27a968"
}
}, },
"1.9.2": { "1.9.2": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

View File

@@ -20,10 +20,46 @@
}, },
"license_markdown": "[Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/master/LICENSE)", "license_markdown": "[Apache-2.0](https://github.com/sagiegurari/cargo-make/blob/master/LICENSE)",
"latest": { "latest": {
"version": "0.37.16" "version": "0.37.18"
}, },
"0.37": { "0.37": {
"version": "0.37.16" "version": "0.37.18"
},
"0.37.18": {
"x86_64_linux_musl": {
"etag": "0x8DCE06AFDD593DA",
"checksum": "6890cd3d25772471a2aa263bf61636e4455b90a234cccd655c326aaeb0714fc6"
},
"x86_64_macos": {
"etag": "0x8DCE06AF3ED46AA",
"checksum": "712b2b9b7750066681c150e1be3137147d1bc3f278dd6fe90e09f52021df75a5"
},
"x86_64_windows": {
"etag": "0x8DCE06B39A89C36",
"checksum": "19b8e3b312cde895d6b38cc6fa699da09cdcbdd64a165f6f34428bd49ff0cb20"
},
"aarch64_macos": {
"etag": "0x8DCE06AA717723B",
"checksum": "f6464c4af79426cbcf4bc4dcd6dbef560cb8caaa9857effb3ca6b6576a055472"
}
},
"0.37.17": {
"x86_64_linux_musl": {
"etag": "0x8DCDFCE9152BF14",
"checksum": "35cdb06c703f38ef65480cc2cf4aec8e23e2bc44ab5e67b703d98c00eab1db40"
},
"x86_64_macos": {
"etag": "0x8DCDFCE28B5E799",
"checksum": "62a0d435f40600873178c6d6a1cff4cd7cde2149cd995c4f6a22600451106e5f"
},
"x86_64_windows": {
"etag": "0x8DCDFCEB7643BC9",
"checksum": "685e3643630864723c49f5e126d08ba3bf2b5e4683fef02c7e8755515062a960"
},
"aarch64_macos": {
"etag": "0x8DCDFCE39367C57",
"checksum": "2825d48b65ee51ecbe4c2773444a3326705a45deb44b3d9b94dcb9b67e00f104"
}
}, },
"0.37.16": { "0.37.16": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

29
manifests/just.json generated
View File

@@ -19,10 +19,35 @@
}, },
"license_markdown": "[CC0-1.0](https://github.com/casey/just/blob/master/LICENSE)", "license_markdown": "[CC0-1.0](https://github.com/casey/just/blob/master/LICENSE)",
"latest": { "latest": {
"version": "1.35.0" "version": "1.36.0"
}, },
"1": { "1": {
"version": "1.35.0" "version": "1.36.0"
},
"1.36": {
"version": "1.36.0"
},
"1.36.0": {
"x86_64_linux_musl": {
"etag": "0x8DCE1A04F0C3EB6",
"checksum": "bc7c9f377944f8de9cd0418b11d2955adebfa25a488c0b5e3dd2d2c0e9d732da"
},
"x86_64_macos": {
"etag": "0x8DCE1A04CB475B9",
"checksum": "30aacf9cbf021c2ff36fff5a05c800360e2020e527916e1c0960452ef5a8568c"
},
"x86_64_windows": {
"etag": "0x8DCE1A0A4C6557D",
"checksum": "7c0d56a07d51ddc4cdc2bd7d1e7e0223ada0281bc06bd482b8918102acf037fe"
},
"aarch64_linux_musl": {
"etag": "0x8DCE1A05631607E",
"checksum": "bb3886b15e2cbcb9c0eb19956297d36de4eaef45b89d3f5fa5d1fc4ed3b5b51d"
},
"aarch64_macos": {
"etag": "0x8DCE1A046338E06",
"checksum": "e7a824c4d92cdea270b61474bd48e851aedc4c65f9c5245c12b32df6de9b536f"
}
}, },
"1.35": { "1.35": {
"version": "1.35.0" "version": "1.35.0"

View File

@@ -22,10 +22,88 @@
}, },
"license_markdown": "[MIT](https://github.com/MarcoIeni/release-plz/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/MarcoIeni/release-plz/blob/main/LICENSE-APACHE)", "license_markdown": "[MIT](https://github.com/MarcoIeni/release-plz/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/MarcoIeni/release-plz/blob/main/LICENSE-APACHE)",
"latest": { "latest": {
"version": "0.3.91" "version": "0.3.94"
}, },
"0.3": { "0.3": {
"version": "0.3.91" "version": "0.3.94"
},
"0.3.94": {
"x86_64_linux_musl": {
"etag": "0x8DCE23DFE194445",
"checksum": "add1f39386aecd6e2a0d75aafb8fee43098dfd553baf2c21058b30d47860ea61"
},
"x86_64_macos": {
"etag": "0x8DCE23E62C5772F",
"checksum": "4c866ca1414f202d1086ac7e99d306ed88039e7899fe04e78b9e0a0b981647f9"
},
"x86_64_windows": {
"etag": "0x8DCE23EE22A7B99",
"checksum": "462eee9712b1106c15815e02c352997a7006abc8f30eeb2e4589a6b0f22d0143"
},
"aarch64_linux_musl": {
"etag": "0x8DCE23E156AD170",
"checksum": "c28e8ce37f5b28e7156e304093d086ea4bfe70387c2e2c761d25bb95310b8dbf"
},
"aarch64_macos": {
"etag": "0x8DCE23E5609DD55",
"checksum": "992fef9e2b5678e530ec38332da08d858d06a722b275241057f25f2f456a8a24"
},
"aarch64_windows": {
"etag": "0x8DCE23EF74BC0D3",
"checksum": "426d99c74cf391882d5dc12065b99f18b203d22f3aba6493dec9c4086e49565d"
}
},
"0.3.93": {
"x86_64_linux_musl": {
"etag": "0x8DCE17BE71F9456",
"checksum": "36c8b3b92f35c9bbb976057ec552ddd84d251af5c415eef219c5a9465c78975b"
},
"x86_64_macos": {
"etag": "0x8DCE17C38BA9305",
"checksum": "a6bf80fc8d528402bfca854900b6b02acbe9ee5b1897808a1d93f06aa4b5b7f9"
},
"x86_64_windows": {
"etag": "0x8DCE17CC0BA6B19",
"checksum": "f7b1d0b165580c17c3bac65d192104e73a678e6dbb88be172531e8bcb328fc4e"
},
"aarch64_linux_musl": {
"etag": "0x8DCE17BDD3A01C1",
"checksum": "456a57a209cd44354199a655e1166b701b4bed9758db3350a9b96064053025af"
},
"aarch64_macos": {
"etag": "0x8DCE17C064789FD",
"checksum": "cd4fb75e72fa2c75929bfe61616e917b21e7da1ef47e9e2e7f17df130b115529"
},
"aarch64_windows": {
"etag": "0x8DCE17CC6DB4C35",
"checksum": "b652de84abbf6c716b3682d1c0caf2ef6359342c0d2da6d5bc1f487f31118772"
}
},
"0.3.92": {
"x86_64_linux_musl": {
"etag": "0x8DCDF9AE116CF51",
"checksum": "89d6c0558b94b0d665ddb824fe90d7313a09d06e483d5faa8111ff1fcd7ed63a"
},
"x86_64_macos": {
"etag": "0x8DCDF9B47E84F0F",
"checksum": "573c5179bcd2fcbdb89e64afd1e71d4d99821d3854bdd80772b5592185e6f9a7"
},
"x86_64_windows": {
"etag": "0x8DCDF9BA29036B6",
"checksum": "af5cc4947c4373648fa377e57ef0646d227e4db98910205a94df5eed00d52436"
},
"aarch64_linux_musl": {
"etag": "0x8DCDF9AEC6615AC",
"checksum": "7925be36c1e005edaa2fa73dc476539f934a330559a283aa7d29becdeff3f2cd"
},
"aarch64_macos": {
"etag": "0x8DCDF9B5A997446",
"checksum": "4a394a4cffcd6d210405971c7350da541a765bc164ae42983ca67efccfcbdbff"
},
"aarch64_windows": {
"etag": "0x8DCDF9BEAFF232D",
"checksum": "aa844fc516399be6157dc4c3bc77dfe4c1aa646774513269aa74601c67ff09b0"
}
}, },
"0.3.91": { "0.3.91": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

26
manifests/sccache.json generated
View File

@@ -24,10 +24,32 @@
}, },
"license_markdown": "[Apache-2.0](https://github.com/mozilla/sccache/blob/main/LICENSE)", "license_markdown": "[Apache-2.0](https://github.com/mozilla/sccache/blob/main/LICENSE)",
"latest": { "latest": {
"version": "0.8.1" "version": "0.8.2"
}, },
"0.8": { "0.8": {
"version": "0.8.1" "version": "0.8.2"
},
"0.8.2": {
"x86_64_linux_musl": {
"etag": "0x8DCDF9C94069C6F",
"checksum": "ecda4ddc89a49f1ec6f35bdce5ecbf6f205b399a680d11119d4ce9f6d962104e"
},
"x86_64_macos": {
"etag": "0x8DCDF9C9255A3FE",
"checksum": "fcbe1b76356f7183cee0b5bc150c0583abc01a5c42e9b2be94e9d17ed7dca3a4"
},
"x86_64_windows": {
"etag": "0x8DCDF9C932BD8D8",
"checksum": "de5e9f66bb8a6bbdf0e28cb8a086a8d12699af796bf70bcd9dc40d80715bf9b8"
},
"aarch64_linux_musl": {
"etag": "0x8DCDF9C8FAD0AA4",
"checksum": "d4b6c04edf7ed687a50be0d3d899dca01bc3037dcf99f16bc46a7b9a76f78db9"
},
"aarch64_macos": {
"etag": "0x8DCDF9C8E16337F",
"checksum": "32604da614ce679623a8de0d38eab91b87431d59f3344c5523c82e1b6e85ffc4"
}
}, },
"0.8.1": { "0.8.1": {
"x86_64_linux_musl": { "x86_64_linux_musl": {

25
manifests/typos.json generated
View File

@@ -16,10 +16,31 @@
}, },
"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)", "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": { "latest": {
"version": "1.24.6" "version": "1.25.0"
}, },
"1": { "1": {
"version": "1.24.6" "version": "1.25.0"
},
"1.25": {
"version": "1.25.0"
},
"1.25.0": {
"x86_64_linux_musl": {
"etag": "0x8DCE1B94BAEE02E",
"checksum": "39f231d15dd4012328e412194e344fa9475462abee375192d4bd16ea18f1dcc6"
},
"x86_64_macos": {
"etag": "0x8DCE1B94443927A",
"checksum": "56d57c69471089abf908fae75e758dae78ebfa9c0d9a5f081ef9d2ca435e73d1"
},
"x86_64_windows": {
"etag": "0x8DCE1B9AEE8F42F",
"checksum": "c367dbd3e262474892908075bb6c123b3a95f13d32c96dacd1495acca50adad3"
},
"aarch64_macos": {
"etag": "0x8DCE1B9674AF3BB",
"checksum": "0af1003c5d1968667947d7ec60658c00514ded2e25cc282091da94328bbff75e"
}
}, },
"1.24": { "1.24": {
"version": "1.24.6" "version": "1.24.6"

View File

@@ -40,6 +40,9 @@ glibc_pre_2_17_incompat=(
musl_incompat=( musl_incompat=(
"${glibc_pre_2_17_incompat[@]}" "${glibc_pre_2_17_incompat[@]}"
) )
win2019_gnu_incompat=(
cargo-spellcheck
)
incompat_tools=() incompat_tools=()
case "${1:-}" in case "${1:-}" in
@@ -51,9 +54,11 @@ case "${1:-}" in
;; ;;
*) *)
echo "tool=$1" echo "tool=$1"
exit 0 exit 1
;; ;;
esac esac
runner="${2:-}"
bash="${3:-}"
case "$(uname -s)" in case "$(uname -s)" in
Linux) Linux)
host_os=linux host_os=linux
@@ -92,7 +97,16 @@ case "$(uname -s)" in
fi fi
;; ;;
Darwin) host_os=macos ;; Darwin) host_os=macos ;;
MINGW* | MSYS* | CYGWIN* | Windows_NT) host_os=windows ;; MINGW* | MSYS* | CYGWIN* | Windows_NT)
host_os=windows
case "${bash}" in
msys64 | cygwin)
if [[ "${runner}" == "windows-2019" ]]; then
incompat_tools+=("${win2019_gnu_incompat[@]}")
fi
;;
esac
;;
*) bail "unrecognized OS type '$(uname -s)'" ;; *) bail "unrecognized OS type '$(uname -s)'" ;;
esac esac
@@ -104,20 +118,19 @@ for manifest in tools/codegen/base/*.json; do
continue continue
fi fi
case "${host_os}" in case "${host_os}" in
linux*) linux*) ;;
for incompat in ${incompat_tools[@]+"${incompat_tools[@]}"}; do
if [[ "${incompat}" == "${tool_name}" ]]; then
tool_name=''
break
fi
done
;;
*) *)
if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]]; then if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]]; then
continue continue
fi fi
;; ;;
esac esac
for incompat in ${incompat_tools[@]+"${incompat_tools[@]}"}; do
if [[ "${incompat}" == "${tool_name}" ]]; then
tool_name=''
break
fi
done
if [[ -n "${tool_name}" ]]; then if [[ -n "${tool_name}" ]]; then
if [[ "${version}" != "latest" ]]; then if [[ "${version}" != "latest" ]]; then
latest_version=$(jq -r ".latest.version" "manifests/${tool_name}.json") latest_version=$(jq -r ".latest.version" "manifests/${tool_name}.json")
@@ -154,9 +167,9 @@ esac
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall) # cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
case "${version}" in case "${version}" in
latest) tools+=(cargo-watch watchexec-cli) ;; latest) tools+=(cargo-watch watchexec-cli) ;;
major.minor.patch) tools+=(cargo-watch@8.1.1 watchexec-cli@1.20.5) ;; major.minor.patch) tools+=(cargo-watch@8.5.2 watchexec-cli@2.1.2) ;;
major.minor) tools+=(cargo-watch@8.1 watchexec-cli@1.20) ;; major.minor) tools+=(cargo-watch@8.5 watchexec-cli@2.1) ;;
major) tools+=(cargo-watch@8 watchexec-cli@1) ;; major) tools+=(cargo-watch@8 watchexec-cli@2) ;;
*) exit 1 ;; *) exit 1 ;;
esac esac