mirror of
https://github.com/taiki-e/install-action.git
synced 2026-05-01 11:00:26 +00:00
Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6ae49f1b8b | ||
|
|
2967b5da19 | ||
|
|
5a32d87288 | ||
|
|
1f8124ee27 | ||
|
|
b58c61fa21 | ||
|
|
333ea3e9a4 | ||
|
|
172419740d | ||
|
|
6d0e68ca2c | ||
|
|
b4c13e81de | ||
|
|
62b3405f01 | ||
|
|
c87777c316 | ||
|
|
1fde53ce9d | ||
|
|
0779861fb4 | ||
|
|
975a95d384 | ||
|
|
da05975632 |
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
@@ -255,7 +255,7 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ secrets.CREATE_PR_TOKEN }}
|
||||
PR_NUMBER: ${{ steps.create-pull-request.outputs.pull-request-number }}
|
||||
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false' && steps.create-pull-request.outputs.pull-request-operation == 'created'
|
||||
- name: Auto approve for auto-generated PR
|
||||
- name: Approve auto-generated PR for auto-merge
|
||||
run: gh pr review --approve "${PR_NUMBER:?}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
# https://github.com/DavidAnson/markdownlint#rules--aliases
|
||||
# https://github.com/DavidAnson/markdownlint/blob/HEAD/doc/Rules.md
|
||||
config:
|
||||
line-length: false
|
||||
no-duplicate-heading: false
|
||||
no-inline-html: false
|
||||
no-emphasis-as-heading: false
|
||||
line-length: false # MD013
|
||||
no-duplicate-heading: false # MD024
|
||||
no-blanks-blockquote: false # MD028
|
||||
no-inline-html: false # MD033
|
||||
no-emphasis-as-heading: false # MD036
|
||||
|
||||
# https://github.com/DavidAnson/markdownlint-cli2#markdownlint-cli2jsonc
|
||||
noBanner: true
|
||||
|
||||
30
CHANGELOG.md
30
CHANGELOG.md
@@ -10,6 +10,30 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [2.47.13] - 2025-01-15
|
||||
|
||||
- Update `wasmtime@latest` to 28.0.1.
|
||||
|
||||
- Update `release-plz@latest` to 0.3.113.
|
||||
|
||||
- Update `cargo-binstall@latest` to 1.10.21.
|
||||
|
||||
## [2.47.12] - 2025-01-13
|
||||
|
||||
- Update `wasm-bindgen@latest` to 0.2.100.
|
||||
|
||||
- Update `rclone@latest` to 1.69.0.
|
||||
|
||||
- Update `cargo-binstall@latest` to 1.10.20.
|
||||
|
||||
## [2.47.11] - 2025-01-11
|
||||
|
||||
- Update `editorconfig-checker@latest` to 3.1.2.
|
||||
|
||||
## [2.47.10] - 2025-01-10
|
||||
|
||||
- Update `cargo-udeps@latest` to 0.1.54.
|
||||
|
||||
## [2.47.9] - 2025-01-09
|
||||
|
||||
- Update `editorconfig-checker@latest` to 3.1.1.
|
||||
@@ -3306,7 +3330,11 @@ Note: This release is considered a breaking change because installing on version
|
||||
|
||||
Initial release
|
||||
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.47.9...HEAD
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.47.13...HEAD
|
||||
[2.47.13]: https://github.com/taiki-e/install-action/compare/v2.47.12...v2.47.13
|
||||
[2.47.12]: https://github.com/taiki-e/install-action/compare/v2.47.11...v2.47.12
|
||||
[2.47.11]: https://github.com/taiki-e/install-action/compare/v2.47.10...v2.47.11
|
||||
[2.47.10]: https://github.com/taiki-e/install-action/compare/v2.47.9...v2.47.10
|
||||
[2.47.9]: https://github.com/taiki-e/install-action/compare/v2.47.8...v2.47.9
|
||||
[2.47.8]: https://github.com/taiki-e/install-action/compare/v2.47.7...v2.47.8
|
||||
[2.47.7]: https://github.com/taiki-e/install-action/compare/v2.47.6...v2.47.7
|
||||
|
||||
@@ -26,6 +26,7 @@ inline_asm_x86_att_syntax = "warn"
|
||||
trailing_empty_array = "warn"
|
||||
transmute_undefined_repr = "warn"
|
||||
undocumented_unsafe_blocks = "warn"
|
||||
unused_trait_names = "warn"
|
||||
# Suppress buggy or noisy clippy lints
|
||||
bool_assert_comparison = { level = "allow", priority = 1 }
|
||||
borrow_as_ptr = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/8286
|
||||
|
||||
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.10.19"
|
||||
"version": "1.10.21"
|
||||
},
|
||||
"1.10.19": {
|
||||
"1.10.21": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DD2C8160F75960",
|
||||
"checksum": "44f44538682b103312b37961edbd06428dcbf927a0afc3cc89062d45bc08d688"
|
||||
"etag": "0x8DD33DF3B7A2D85",
|
||||
"checksum": "625fa622a761030e989c6f4ed950da7b1309d707970496480d890c551a3de184"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DD2C811A50D857",
|
||||
"checksum": "a2ae7d9ea8a4c58d5c5d8405cc3eed80e3b3027dcce16fd2f36116cb2926080f"
|
||||
"etag": "0x8DD33DF2DD25A04",
|
||||
"checksum": "c8ecb8506608d5f5392d6b21b018283c01de64e2c97bea01cd6541a5e52d64c6"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DD2C821B327936",
|
||||
"checksum": "f80e1f22b452a3069aec615ed03bc74a2a9e57e1c92d09868537dc0cd852da8f"
|
||||
"etag": "0x8DD33E01EB03384",
|
||||
"checksum": "baa90496dfee7ff099cba47f93a4130b9661b56c46fbe63518ce94a340b7b611"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DD2C811BD72089",
|
||||
"checksum": "7e95454e15278eb746790e67bb3f3620e3f4ded13956e7887f6f9a8b1f21c1ab"
|
||||
"etag": "0x8DD33DEDFBD8200",
|
||||
"checksum": "dfa4a1aee56e0f078db8559113a4da7fd1fcf8298484db0f7254d09d89d81163"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DD2C814B56C94F",
|
||||
"checksum": "e6abcd57e2918f50f85117e80799ef525876b4e109a5126561ed69f89bb79ee5"
|
||||
"etag": "0x8DD33DF5BDB3971",
|
||||
"checksum": "2e51fb2911cdb9c9e7f8ef909c5c9b96373fa72c8c009b4698ca40f4110b9ca6"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DD2C8225C8456F",
|
||||
"checksum": "285891e236fc3e12dff687e15cf69805fc9edbc20eb8fb1e046065b59f711b46"
|
||||
"etag": "0x8DD33DFE9223054",
|
||||
"checksum": "bbded110d168b8406e34cd4155c061402a6ec7b2d66a1a2e78980f304f038d37"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
30
manifests/cargo-udeps.json
generated
30
manifests/cargo-udeps.json
generated
@@ -32,10 +32,36 @@
|
||||
},
|
||||
"license_markdown": "[Apache-2.0 OR MIT](https://github.com/est31/cargo-udeps/blob/HEAD/LICENSE)",
|
||||
"latest": {
|
||||
"version": "0.1.53"
|
||||
"version": "0.1.54"
|
||||
},
|
||||
"0.1": {
|
||||
"version": "0.1.53"
|
||||
"version": "0.1.54"
|
||||
},
|
||||
"0.1.54": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DD31143C857BA5",
|
||||
"checksum": "866b51683487d8aa69a59e7b7728e3f6d302388eda40db8816943d14d30fbc42"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DD31146F76A8A8",
|
||||
"checksum": "9bf127b7f9bacc54eaf8f1a764d6458530c7df6bce782ec4b8cba034c6bfd36c"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DD3114B71A7832",
|
||||
"checksum": "c34dc47902d3b9dadf567808ecab19863ab0bd01c039c0cca5df938efd59eb79"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DD311439500EB5",
|
||||
"checksum": "69a061b2f3111fefcc7bfe3d0cc927c54dcd2f5f6db0cfe15277bdb9bc17e925"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DD311411580373",
|
||||
"checksum": "36b225eaf938c4520578cfa77471bd05e9f4a09067ee4fee545ddf63e6dbfba4"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DD3114D12BF7AC",
|
||||
"checksum": "0257ad2d653751c94828ee27cec916f8297681954ea51907d10c7e2a4cdea155"
|
||||
}
|
||||
},
|
||||
"0.1.53": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
44
manifests/editorconfig-checker.json
generated
44
manifests/editorconfig-checker.json
generated
@@ -3,13 +3,51 @@
|
||||
"template": null,
|
||||
"license_markdown": "[MIT](https://github.com/editorconfig-checker/editorconfig-checker/blob/main/LICENSE)",
|
||||
"latest": {
|
||||
"version": "3.1.1"
|
||||
"version": "3.1.2"
|
||||
},
|
||||
"3": {
|
||||
"version": "3.1.1"
|
||||
"version": "3.1.2"
|
||||
},
|
||||
"3.1": {
|
||||
"version": "3.1.1"
|
||||
"version": "3.1.2"
|
||||
},
|
||||
"3.1.2": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-linux-amd64.tar.gz",
|
||||
"etag": "0x8DD31C3802BB3A5",
|
||||
"checksum": "3fd4fc81e5077f89faddb71ff05a5d6e2983b8c3953d1b1b6663c7245300e653",
|
||||
"bin": "bin/ec-linux-amd64"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-darwin-amd64.tar.gz",
|
||||
"etag": "0x8DD31C37FF6AE95",
|
||||
"checksum": "f9077b2bbf93db1e7019cc35a567aa80937cd5680cf8453ed00f3eb47e9feea4",
|
||||
"bin": "bin/ec-darwin-amd64"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-windows-amd64.zip",
|
||||
"etag": "0x8DD31C380C87BA2",
|
||||
"checksum": "58ced741383e4e8d68aeeda4c2a6c08deb52e45fbb3a5a976c52f161b62b8032",
|
||||
"bin": "bin/ec-windows-amd64.exe"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-linux-arm64.tar.gz",
|
||||
"etag": "0x8DD31C38037B40E",
|
||||
"checksum": "1333275ced71f1814db1ae677681a1b8b9d412d7046675594f7cdb1f8c7c47d1",
|
||||
"bin": "bin/ec-linux-arm64"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-darwin-arm64.tar.gz",
|
||||
"etag": "0x8DD31C37FF9B85E",
|
||||
"checksum": "ca7ad4492a3235d853662dec88485073a01a782e121e308336832a14b95a765d",
|
||||
"bin": "bin/ec-darwin-arm64"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-windows-arm64.zip",
|
||||
"etag": "0x8DD31C3814F3C50",
|
||||
"checksum": "af97bc69a6f6283818aa32788d8d6d884aafb1a30b939a7e9930a812dd30c75e",
|
||||
"bin": "bin/ec-windows-arm64.exe"
|
||||
}
|
||||
},
|
||||
"3.1.1": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
33
manifests/rclone.json
generated
33
manifests/rclone.json
generated
@@ -28,10 +28,39 @@
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/rclone/rclone/blob/master/COPYING)",
|
||||
"latest": {
|
||||
"version": "1.68.2"
|
||||
"version": "1.69.0"
|
||||
},
|
||||
"1": {
|
||||
"version": "1.68.2"
|
||||
"version": "1.69.0"
|
||||
},
|
||||
"1.69": {
|
||||
"version": "1.69.0"
|
||||
},
|
||||
"1.69.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DD3324F9F9FD71",
|
||||
"checksum": "813892bb54ebc5891664b85c9cfc0e05ee50d39e3d5bb1ddd6d53d0f93a64dc2"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DD3325E8440A19",
|
||||
"checksum": "88475be8666944d5161bd15605d483f1bb55d9a46220b9dcf317b26e01659009"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DD3326252ADAAD",
|
||||
"checksum": "73f55188dbd15056b9728cb646f4e9774534b148dec3eed9ccbbaa381b95ce78"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DD33251C72E345",
|
||||
"checksum": "82e4c24ee0cdbdfb93356e66cf14875ae4063f9923d2678e7d686119e98d75fe"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DD3325F16EC073",
|
||||
"checksum": "d8d22aca8f4af4c24ea01668a452d02888bef45e3a01c663cbb7d78bd1e21db2"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DD33262D4C7710",
|
||||
"checksum": "83c3e46f1b4414848cf676f58aa3f14ee428ba22bd963ecb0b70dada717ebfdb"
|
||||
}
|
||||
},
|
||||
"1.68": {
|
||||
"version": "1.68.2"
|
||||
|
||||
30
manifests/release-plz.json
generated
30
manifests/release-plz.json
generated
@@ -22,10 +22,36 @@
|
||||
},
|
||||
"license_markdown": "[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)",
|
||||
"latest": {
|
||||
"version": "0.3.112"
|
||||
"version": "0.3.113"
|
||||
},
|
||||
"0.3": {
|
||||
"version": "0.3.112"
|
||||
"version": "0.3.113"
|
||||
},
|
||||
"0.3.113": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DD34DE89D16C19",
|
||||
"checksum": "581dc963e0aaf1791064429e9f746307ede0a8ea29d10041dd90c02bdbd13783"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DD34DF8889BC58",
|
||||
"checksum": "0811c988fda4552a31a8ab90776100e31bf8bb987f9337d05dc3dc92669848f4"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DD34DF81C2F907",
|
||||
"checksum": "68da2a1aba802069e5c59e42017f5e589f44e66d6105528893b294f1b296b916"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"etag": "0x8DD34DE988E8048",
|
||||
"checksum": "01a1d2fa25811aa2e9e008fc9edf9ae3128b686c5e5f9a2c774fe7dc37346c27"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DD34E03A6691B8",
|
||||
"checksum": "f0f23f958541440f4f9669580ae04500feaaad2cdbfee3636a14729236d04e64"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DD34DF694608E7",
|
||||
"checksum": "8236943701c7f2ce2fa7c99f6f65392543fd6293fe7cb30878b17c171078ae48"
|
||||
}
|
||||
},
|
||||
"0.3.112": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
26
manifests/wasm-bindgen.json
generated
26
manifests/wasm-bindgen.json
generated
@@ -44,10 +44,32 @@
|
||||
},
|
||||
"license_markdown": "[MIT](https://github.com/rustwasm/wasm-bindgen/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/rustwasm/wasm-bindgen/blob/main/LICENSE-APACHE)",
|
||||
"latest": {
|
||||
"version": "0.2.99"
|
||||
"version": "0.2.100"
|
||||
},
|
||||
"0.2": {
|
||||
"version": "0.2.99"
|
||||
"version": "0.2.100"
|
||||
},
|
||||
"0.2.100": {
|
||||
"x86_64_linux_musl": {
|
||||
"etag": "0x8DD335FEBC3B912",
|
||||
"checksum": "63d6a38deb65bd7023c02bdf382ab66b0d2c0241c8582fd3413b5a808b8aeb5b"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DD335FEBCF929E",
|
||||
"checksum": "72289c54f63d2a2723aacfb38e7b22044d6aebc849ddee40172cda0e74be4107"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DD335FEBB4D5B6",
|
||||
"checksum": "54a3fb947464388a468ade86d65ffa334d6d2c74b7982723b34ecf6ec8c213d8"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"etag": "0x8DD335FEBC31D7D",
|
||||
"checksum": "52552984965fbd125efc6be052b3cb8872fb3c69559e4ec7775cbff64ed440cf"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DD335FEBB9B239",
|
||||
"checksum": "69f25cb910de7e19777b3f93347f5e62a64c8f81709b41ba7242d00a9543573c"
|
||||
}
|
||||
},
|
||||
"0.2.99": {
|
||||
"x86_64_linux_musl": {
|
||||
|
||||
32
manifests/wasmtime.json
generated
32
manifests/wasmtime.json
generated
@@ -28,13 +28,39 @@
|
||||
},
|
||||
"license_markdown": "[Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/main/LICENSE)",
|
||||
"latest": {
|
||||
"version": "28.0.0"
|
||||
"version": "28.0.1"
|
||||
},
|
||||
"28": {
|
||||
"version": "28.0.0"
|
||||
"version": "28.0.1"
|
||||
},
|
||||
"28.0": {
|
||||
"version": "28.0.0"
|
||||
"version": "28.0.1"
|
||||
},
|
||||
"28.0.1": {
|
||||
"x86_64_linux_gnu": {
|
||||
"etag": "0x8DD34F2BB0BD3D7",
|
||||
"checksum": "f2500c046d92d68c5db66244e8685d0ba84a0fdce4780fb0f1e78e9666d9c920"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"etag": "0x8DD34F2BBCD5FF0",
|
||||
"checksum": "872c6d078f6ac1058be6f0f5219001b0e445aa00f96fc4c1242548701d9933b5"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"etag": "0x8DD34F2BEBC9FE0",
|
||||
"checksum": "b6564429cb6a0e930465204da11ae66e717508358e737d491eaa095b4a85792e"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"etag": "0x8DD34F2B4A33B3D",
|
||||
"checksum": "d18d05ad1482b8a0fa5040e2d4a9576a06c9b61890fac2d4a2e0824e3b308a7a"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"etag": "0x8DD34F2B555486E",
|
||||
"checksum": "0dc360747b46d0632e1d9d81299ed653ce5d31f43247780c6c20af2a3f4ad67c"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"etag": "0x8DD34F2B635AB9D",
|
||||
"checksum": "db3a8bbccb56a05a62fd3dfc4936ea396558f0a1ae6ffe4eee66e7b15a6230f2"
|
||||
}
|
||||
},
|
||||
"28.0.0": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
@@ -5,7 +5,7 @@ use std::{
|
||||
collections::{BTreeMap, BTreeSet},
|
||||
env,
|
||||
ffi::OsStr,
|
||||
io::Read,
|
||||
io::Read as _,
|
||||
path::Path,
|
||||
sync::{LazyLock, RwLock},
|
||||
time::Duration,
|
||||
@@ -17,7 +17,7 @@ use install_action_internal_codegen::{
|
||||
workspace_root, BaseManifest, HostPlatform, Manifest, ManifestDownloadInfo, ManifestRef,
|
||||
ManifestTemplate, ManifestTemplateDownloadInfo, Manifests, Signing, SigningKind, Version,
|
||||
};
|
||||
use sha2::{Digest, Sha256};
|
||||
use sha2::{Digest as _, Sha256};
|
||||
use spdx::expression::{ExprNode, ExpressionReq, Operator};
|
||||
|
||||
fn main() -> Result<()> {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
|
||||
use std::{env, fmt, io::Write, path::PathBuf};
|
||||
use std::{env, fmt, io::Write as _, path::PathBuf};
|
||||
|
||||
use anyhow::Result;
|
||||
use fs_err as fs;
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -eEuo pipefail
|
||||
set -CeEuo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
|
||||
cd -- "$(dirname -- "$0")"/..
|
||||
|
||||
# Update manifests
|
||||
#
|
||||
@@ -15,6 +16,7 @@ if [[ $# -gt 0 ]]; then
|
||||
fi
|
||||
|
||||
for manifest in tools/codegen/base/*.json; do
|
||||
package=$(basename "${manifest%.*}")
|
||||
package="${manifest##*/}"
|
||||
package="${package%.*}"
|
||||
cargo run --manifest-path tools/codegen/Cargo.toml --release -- "${package}" latest
|
||||
done
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -eEuo pipefail
|
||||
set -CeEuo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
trap 's=$?; echo >&2 "$0: error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}' ERR
|
||||
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
|
||||
cd -- "$(dirname -- "$0")"/..
|
||||
|
||||
# Publish a new release.
|
||||
#
|
||||
@@ -26,7 +24,7 @@ retry() {
|
||||
"$@"
|
||||
}
|
||||
bail() {
|
||||
echo >&2 "error: $*"
|
||||
printf >&2 'error: %s\n' "$*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
@@ -41,6 +39,11 @@ fi
|
||||
if [[ $# -gt 1 ]]; then
|
||||
bail "invalid argument '$2'"
|
||||
fi
|
||||
if { sed --help 2>&1 || true; } | grep -Eq -e '-i extension'; then
|
||||
in_place=(-i '')
|
||||
else
|
||||
in_place=(-i)
|
||||
fi
|
||||
|
||||
# Make sure there is no uncommitted change.
|
||||
git diff --exit-code
|
||||
@@ -52,12 +55,15 @@ if gh release view "${tag}" &>/dev/null; then
|
||||
fi
|
||||
|
||||
# Make sure that the release was created from an allowed branch.
|
||||
if ! git branch | grep -q '\* main$'; then
|
||||
if ! git branch | grep -Eq '\* main$'; then
|
||||
bail "current branch is not 'main'"
|
||||
fi
|
||||
if ! git remote -v | grep -F origin | grep -Eq 'github\.com[:/]taiki-e/'; then
|
||||
bail "cannot publish a new release from fork repository"
|
||||
fi
|
||||
|
||||
release_date=$(date -u '+%Y-%m-%d')
|
||||
tags=$(git --no-pager tag | (grep -E "^${tag_prefix}[0-9]+" || true))
|
||||
tags=$(git --no-pager tag | { grep -E "^${tag_prefix}[0-9]+" || true; })
|
||||
if [[ -n "${tags}" ]]; then
|
||||
# Make sure the same release does not exist in changelog.
|
||||
if grep -Eq "^## \\[${version//./\\.}\\]" "${changelog}"; then
|
||||
@@ -67,11 +73,12 @@ if [[ -n "${tags}" ]]; then
|
||||
bail "link to ${version} already exist in ${changelog}"
|
||||
fi
|
||||
# Update changelog.
|
||||
remote_url=$(grep -E '^\[Unreleased\]: https://' "${changelog}" | sed 's/^\[Unreleased\]: //; s/\.\.\.HEAD$//')
|
||||
remote_url=$(grep -E '^\[Unreleased\]: https://' "${changelog}" | sed -E 's/^\[Unreleased\]: //; s/\.\.\.HEAD$//')
|
||||
prev_tag="${remote_url#*/compare/}"
|
||||
remote_url="${remote_url%/compare/*}"
|
||||
sed -i "s/^## \\[Unreleased\\]/## [Unreleased]\\n\\n## [${version}] - ${release_date}/" "${changelog}"
|
||||
sed -i "s#^\[Unreleased\]: https://.*#[Unreleased]: ${remote_url}/compare/${tag}...HEAD\\n[${version}]: ${remote_url}/compare/${prev_tag}...${tag}#" "${changelog}"
|
||||
sed -E "${in_place[@]}" \
|
||||
-e "s/^## \\[Unreleased\\]/## [Unreleased]\\n\\n## [${version}] - ${release_date}/" \
|
||||
-e "s#^\[Unreleased\]: https://.*#[Unreleased]: ${remote_url}/compare/${tag}...HEAD\\n[${version}]: ${remote_url}/compare/${prev_tag}...${tag}#" "${changelog}"
|
||||
if ! grep -Eq "^## \\[${version//./\\.}\\] - ${release_date}$" "${changelog}"; then
|
||||
bail "failed to update ${changelog}"
|
||||
fi
|
||||
@@ -94,18 +101,9 @@ changes=$(parse-changelog "${changelog}" "${version}")
|
||||
if [[ -z "${changes}" ]]; then
|
||||
bail "changelog for ${version} has no body"
|
||||
fi
|
||||
echo "============== CHANGELOG =============="
|
||||
echo "${changes}"
|
||||
echo "======================================="
|
||||
|
||||
tools=()
|
||||
for tool in tools/codegen/base/*.json; do
|
||||
tools+=("$(basename "${tool%.*}")")
|
||||
done
|
||||
# Alias
|
||||
tools+=(nextest)
|
||||
# Not manifest-based
|
||||
tools+=(valgrind)
|
||||
printf '============== CHANGELOG ==============\n'
|
||||
printf '%s\n' "${changes}"
|
||||
printf '=======================================\n'
|
||||
|
||||
if [[ -n "${tags}" ]]; then
|
||||
# Create a release commit.
|
||||
@@ -134,10 +132,20 @@ retry git push origin --tags
|
||||
git checkout main
|
||||
git branch -d "${major_version_tag}"
|
||||
|
||||
tools=()
|
||||
for tool in tools/codegen/base/*.json; do
|
||||
tool="${tool##*/}"
|
||||
tools+=("${tool%.*}")
|
||||
done
|
||||
# Alias
|
||||
tools+=(nextest)
|
||||
# Not manifest-based
|
||||
tools+=(valgrind)
|
||||
|
||||
for tool in "${tools[@]}"; do
|
||||
git checkout -b "${tool}"
|
||||
sed -i -e "s/required: true/required: false/g" action.yml
|
||||
sed -i -e "s/# default: #publish:tool/default: ${tool}/g" action.yml
|
||||
sed -E "${in_place[@]}" "s/required: true/required: false/g" action.yml
|
||||
sed -E "${in_place[@]}" "s/# default: #publish:tool/default: ${tool}/g" action.yml
|
||||
git add action.yml
|
||||
git commit -m "${tool}"
|
||||
retry git push origin -f refs/heads/"${tool}"
|
||||
|
||||
@@ -155,6 +155,7 @@ if [[ -n "$(git ls-files '*.rs')" ]]; then
|
||||
binaries=''
|
||||
metadata=$(cargo metadata --format-version=1 --no-deps)
|
||||
has_public_crate=''
|
||||
has_root_crate=''
|
||||
venv_install_yq
|
||||
for id in $(jq <<<"${metadata}" '.workspace_members[]'); do
|
||||
pkg=$(jq <<<"${metadata}" ".packages[] | select(.id == ${id})")
|
||||
@@ -178,6 +179,7 @@ if [[ -n "$(git ls-files '*.rs')" ]]; then
|
||||
publish=$(jq <<<"${root_pkg}" -r '.publish')
|
||||
# Publishing is unrestricted if null, and forbidden if an empty array.
|
||||
if [[ "${publish}" != "[]" ]]; then
|
||||
has_root_crate=1
|
||||
exclude=$(venv tomlq -r '.package.exclude[]' Cargo.toml)
|
||||
if ! grep <<<"${exclude}" -Eq '^/\.\*$'; then
|
||||
error "top-level Cargo.toml of non-virtual workspace should have 'exclude' field with \"/.*\""
|
||||
@@ -200,6 +202,13 @@ if [[ -n "$(git ls-files '*.rs')" ]]; then
|
||||
# TODO: fully respect exclude field in Cargo.toml.
|
||||
case "${p}" in
|
||||
.* | tools/* | target-specs/*) continue ;;
|
||||
*/*) ;;
|
||||
*)
|
||||
# If there is no crate at root, executables at the repository root directory if always okay.
|
||||
if [[ -z "${has_root_crate}" ]]; then
|
||||
continue
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
if [[ -x "${p}" ]]; then
|
||||
executables+="${p}"$'\n'
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
set -eEuo pipefail
|
||||
set -CeEuo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
trap -- 's=$?; printf >&2 "%s\n" "${0##*/}:${LINENO}: \`${BASH_COMMAND}\` exit with ${s}"; exit ${s}' ERR
|
||||
cd -- "$(dirname -- "$0")"/..
|
||||
|
||||
# Update markdown
|
||||
#
|
||||
|
||||
Reference in New Issue
Block a user