mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-26 17:10:48 +00:00
Compare commits
104 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a2e9aff0dd | ||
|
|
cc0065f838 | ||
|
|
be9e3c2b45 | ||
|
|
e067f32759 | ||
|
|
98c0ece291 | ||
|
|
bee06ee963 | ||
|
|
daca891144 | ||
|
|
de09ec7413 | ||
|
|
20d06c5ef0 | ||
|
|
8fe89aa3e0 | ||
|
|
4666e04560 | ||
|
|
400052b460 | ||
|
|
f9f8058789 | ||
|
|
72827a9779 | ||
|
|
55ec4a4d53 | ||
|
|
dc9bc151a3 | ||
|
|
510b3ecd79 | ||
|
|
536c746821 | ||
|
|
0dfccb316f | ||
|
|
ceb86e31f0 | ||
|
|
33d49f65f5 | ||
|
|
1182afdbd1 | ||
|
|
bf0c8c6dfb | ||
|
|
ebb53fb1a9 | ||
|
|
0b0596dd1e | ||
|
|
65835784ac | ||
|
|
01f3d2d227 | ||
|
|
76a1fec160 | ||
|
|
78b9ec82a6 | ||
|
|
be22d29d34 | ||
|
|
e466aa8e34 | ||
|
|
afbe5c1715 | ||
|
|
6fde044d27 | ||
|
|
544f616845 | ||
|
|
3b94b1e00e | ||
|
|
f07d824129 | ||
|
|
fc5961fb83 | ||
|
|
df3b728223 | ||
|
|
58e7e8a24b | ||
|
|
1d9ff62a86 | ||
|
|
85a4a5fd84 | ||
|
|
1790ab988a | ||
|
|
5f4612956d | ||
|
|
32bd555d43 | ||
|
|
9359c95b44 | ||
|
|
616d118cf5 | ||
|
|
d298d2514f | ||
|
|
3e9c6e343d | ||
|
|
953531b7ec | ||
|
|
5ad07d35ce | ||
|
|
22b428f64c | ||
|
|
c38191ad1a | ||
|
|
1ef1e14c21 | ||
|
|
840858c0d8 | ||
|
|
5508f9f361 | ||
|
|
0448a6044a | ||
|
|
a12d1334cb | ||
|
|
cfb63643d7 | ||
|
|
c07a374332 | ||
|
|
1936c8cfe3 | ||
|
|
7dc3b24b24 | ||
|
|
453d1643d3 | ||
|
|
6a08c6906b | ||
|
|
13f7bb9fa7 | ||
|
|
01b1eaed40 | ||
|
|
7e1dca9e0c | ||
|
|
5daf677255 | ||
|
|
76f1dc9b86 | ||
|
|
4b015a49b6 | ||
|
|
da41fb311f | ||
|
|
82214f4be3 | ||
|
|
5c7ec4ff6e | ||
|
|
401fb25d5a | ||
|
|
24758ef6e7 | ||
|
|
24ac8132a4 | ||
|
|
b4c4e2f7c4 | ||
|
|
a7adeb15af | ||
|
|
25b04c0ead | ||
|
|
c39a412ce9 | ||
|
|
fe065954f6 | ||
|
|
aaa64a3351 | ||
|
|
f99317473f | ||
|
|
3523902f5a | ||
|
|
e6e3706b36 | ||
|
|
9469185794 | ||
|
|
1b8d452217 | ||
|
|
d125c0a835 | ||
|
|
319a0f2f5f | ||
|
|
0fe4860065 | ||
|
|
44e8874873 | ||
|
|
5f3e9b7a2d | ||
|
|
55912949de | ||
|
|
e26ea2a159 | ||
|
|
00b370abc3 | ||
|
|
6ae49f1b8b | ||
|
|
2967b5da19 | ||
|
|
5a32d87288 | ||
|
|
1f8124ee27 | ||
|
|
b58c61fa21 | ||
|
|
333ea3e9a4 | ||
|
|
172419740d | ||
|
|
6d0e68ca2c | ||
|
|
b4c13e81de | ||
|
|
62b3405f01 |
15
.cspell.json
15
.cspell.json
@@ -27,24 +27,25 @@
|
|||||||
"ignoreRegExpList": [
|
"ignoreRegExpList": [
|
||||||
// Copyright notice
|
// Copyright notice
|
||||||
"Copyright .*",
|
"Copyright .*",
|
||||||
|
"SPDX-(File|Snippet)CopyrightText: .*",
|
||||||
// GHA actions/workflows
|
// GHA actions/workflows
|
||||||
"uses: .+@",
|
"uses: .+@[\\w_.-]+",
|
||||||
// GHA context (repo name, owner name, etc.)
|
// GHA context (repo name, owner name, etc.)
|
||||||
"github.\\w+ (=|!)= '.+'",
|
"github.[\\w_.-]+ (=|!)= '[^']+'",
|
||||||
// GH username
|
// GH username
|
||||||
"( |\\[)@[\\w_-]+",
|
"( |\\[)@[\\w_-]+",
|
||||||
// Git config username
|
// Git config username
|
||||||
"git config user.name .*",
|
"git config( --[^ ]+)? user.name .*",
|
||||||
// Username in todo comment
|
// Username in TODO|FIXME comment
|
||||||
"(TODO|FIXME)\\([\\w_., -]+\\)",
|
"(TODO|FIXME)\\([\\w_., -]+\\)",
|
||||||
// Cargo.toml authors
|
// Cargo.toml authors
|
||||||
"authors *= *\\[.*\\]",
|
"authors *= *\\[[^\\]]*\\]",
|
||||||
"\".* <[\\w_.+-]+@[\\w.-]+>\""
|
"\"[^\"]* <[\\w_.+-]+@[\\w.-]+>\""
|
||||||
],
|
],
|
||||||
"languageSettings": [
|
"languageSettings": [
|
||||||
{
|
{
|
||||||
"languageId": ["*"],
|
"languageId": ["*"],
|
||||||
"dictionaries": ["bash", "rust"]
|
"dictionaries": ["bash", "cpp-refined", "rust"]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"ignorePaths": []
|
"ignorePaths": []
|
||||||
|
|||||||
41
.deny.toml
Normal file
41
.deny.toml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
# https://embarkstudios.github.io/cargo-deny/checks/advisories/cfg.html
|
||||||
|
[advisories]
|
||||||
|
yanked = "deny"
|
||||||
|
git-fetch-with-cli = true
|
||||||
|
ignore = [
|
||||||
|
]
|
||||||
|
|
||||||
|
# https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html
|
||||||
|
[bans]
|
||||||
|
multiple-versions = "warn"
|
||||||
|
wildcards = "deny"
|
||||||
|
allow-wildcard-paths = true
|
||||||
|
build.executables = "deny"
|
||||||
|
build.interpreted = "deny"
|
||||||
|
build.include-dependencies = true
|
||||||
|
build.include-workspace = false # covered by tools/tidy.sh
|
||||||
|
build.include-archives = true
|
||||||
|
build.allow-build-scripts = [
|
||||||
|
{ name = "proc-macro2" }, # via serde_derive
|
||||||
|
{ name = "semver" },
|
||||||
|
{ name = "serde" },
|
||||||
|
]
|
||||||
|
build.bypass = [
|
||||||
|
]
|
||||||
|
|
||||||
|
# https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html
|
||||||
|
[licenses]
|
||||||
|
unused-allowed-license = "deny"
|
||||||
|
private.ignore = true
|
||||||
|
allow = [
|
||||||
|
"Apache-2.0",
|
||||||
|
"MIT",
|
||||||
|
"Unicode-3.0", # unicode-ident
|
||||||
|
]
|
||||||
|
|
||||||
|
# https://embarkstudios.github.io/cargo-deny/checks/sources/cfg.html
|
||||||
|
[sources]
|
||||||
|
unknown-registry = "deny"
|
||||||
|
unknown-git = "deny"
|
||||||
|
allow-git = [
|
||||||
|
]
|
||||||
@@ -11,12 +11,14 @@ indent_style = space
|
|||||||
insert_final_newline = true
|
insert_final_newline = true
|
||||||
trim_trailing_whitespace = true
|
trim_trailing_whitespace = true
|
||||||
|
|
||||||
[*.{json,md,rb,yml,yaml}]
|
[*.{css,html,json,md,rb,sh,yml,yaml}]
|
||||||
indent_size = 2
|
indent_size = 2
|
||||||
|
|
||||||
[*.{js,yml,yaml}]
|
[*.{js,yml,yaml}]
|
||||||
quote_type = single
|
quote_type = single
|
||||||
|
|
||||||
[*.sh]
|
[*.sh]
|
||||||
|
# https://google.github.io/styleguide/shellguide.html#s5.3-pipelines
|
||||||
binary_next_line = true
|
binary_next_line = true
|
||||||
|
# https://google.github.io/styleguide/shellguide.html#s5.5-case-statement
|
||||||
switch_case_indent = true
|
switch_case_indent = true
|
||||||
|
|||||||
2
.git-blame-ignore-revs
Normal file
2
.git-blame-ignore-revs
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
# Change indent size of shell script files to match scripts in CI config
|
||||||
|
946918579413996845b77e146aa8eb3c6f40f7ab
|
||||||
3
.gitattributes
vendored
3
.gitattributes
vendored
@@ -1,3 +1,4 @@
|
|||||||
* text=auto eol=lf
|
* text=auto eol=lf
|
||||||
manifests/** linguist-generated
|
tools/tidy.sh linguist-detectable=false
|
||||||
.github/.cspell/rust-dependencies.txt linguist-generated
|
.github/.cspell/rust-dependencies.txt linguist-generated
|
||||||
|
manifests/** linguist-generated
|
||||||
|
|||||||
2
.github/.cspell/project-dictionary.txt
vendored
2
.github/.cspell/project-dictionary.txt
vendored
@@ -30,6 +30,6 @@ syft
|
|||||||
udeps
|
udeps
|
||||||
wasmtime
|
wasmtime
|
||||||
watchexec
|
watchexec
|
||||||
|
worktree
|
||||||
xbuild
|
xbuild
|
||||||
xscale
|
xscale
|
||||||
zigbuild
|
|
||||||
|
|||||||
8
.github/dependabot.yml
vendored
8
.github/dependabot.yml
vendored
@@ -7,10 +7,6 @@ updates:
|
|||||||
commit-message:
|
commit-message:
|
||||||
prefix: ''
|
prefix: ''
|
||||||
labels: []
|
labels: []
|
||||||
groups:
|
|
||||||
cargo:
|
|
||||||
patterns:
|
|
||||||
- '*'
|
|
||||||
- package-ecosystem: github-actions
|
- package-ecosystem: github-actions
|
||||||
directory: /
|
directory: /
|
||||||
schedule:
|
schedule:
|
||||||
@@ -18,7 +14,3 @@ updates:
|
|||||||
commit-message:
|
commit-message:
|
||||||
prefix: ''
|
prefix: ''
|
||||||
labels: []
|
labels: []
|
||||||
groups:
|
|
||||||
github-actions:
|
|
||||||
patterns:
|
|
||||||
- '*'
|
|
||||||
|
|||||||
62
.github/workflows/ci.yml
vendored
62
.github/workflows/ci.yml
vendored
@@ -11,7 +11,7 @@ on:
|
|||||||
- dev
|
- dev
|
||||||
- ci-*
|
- ci-*
|
||||||
schedule:
|
schedule:
|
||||||
- cron: '0 0,3,6,9,12,15,18,21 * * *'
|
- cron: '0 0 * * *'
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
env:
|
env:
|
||||||
@@ -32,6 +32,19 @@ concurrency:
|
|||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
miri:
|
||||||
|
uses: taiki-e/github-actions/.github/workflows/miri.yml@main
|
||||||
|
with:
|
||||||
|
# NB: sync with test job's --exclude option
|
||||||
|
args: --exclude install-action-internal-codegen
|
||||||
|
msrv:
|
||||||
|
uses: taiki-e/github-actions/.github/workflows/msrv.yml@main
|
||||||
|
test-manifest-schema:
|
||||||
|
uses: taiki-e/github-actions/.github/workflows/test.yml@main
|
||||||
|
with:
|
||||||
|
# NB: sync with miri job's --exclude option
|
||||||
|
test-args: --exclude install-action-internal-codegen
|
||||||
|
no-std: false
|
||||||
tidy:
|
tidy:
|
||||||
uses: taiki-e/github-actions/.github/workflows/tidy.yml@main
|
uses: taiki-e/github-actions/.github/workflows/tidy.yml@main
|
||||||
permissions:
|
permissions:
|
||||||
@@ -47,7 +60,9 @@ jobs:
|
|||||||
include:
|
include:
|
||||||
# NB: Sync list with https://github.com/taiki-e/checkout-action/blob/HEAD/.github/workflows/ci.yml
|
# NB: Sync list with https://github.com/taiki-e/checkout-action/blob/HEAD/.github/workflows/ci.yml
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
|
- os: ubuntu-22.04-arm
|
||||||
- os: ubuntu-24.04
|
- os: ubuntu-24.04
|
||||||
|
# - os: ubuntu-24.04-arm # TODO: re-enable when https://github.com/rust-lang/rust/issues/135867 solved
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
tool: major.minor.patch
|
tool: major.minor.patch
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
@@ -217,48 +232,3 @@ jobs:
|
|||||||
shell: sh
|
shell: sh
|
||||||
# TODO: OCI runtime exec failed: exec failed: unable to start container process: exec: "sh": executable file not found in $PATH: unknown
|
# TODO: OCI runtime exec failed: exec failed: unable to start container process: exec: "sh": executable file not found in $PATH: unknown
|
||||||
if: (!startsWith(matrix.container, 'opensuse'))
|
if: (!startsWith(matrix.container, 'opensuse'))
|
||||||
|
|
||||||
manifest:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
timeout-minutes: 60
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
pull-requests: write # for gh pr review --approve
|
|
||||||
steps:
|
|
||||||
- uses: taiki-e/checkout-action@v1
|
|
||||||
- uses: taiki-e/github-actions/install-rust@stable
|
|
||||||
- name: Generate Cargo.lock
|
|
||||||
run: cargo update
|
|
||||||
- uses: Swatinem/rust-cache@v2
|
|
||||||
with:
|
|
||||||
cache-all-crates: 'true'
|
|
||||||
- run: tools/manifest.sh
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
- id: diff
|
|
||||||
run: tools/ci/manifest.sh
|
|
||||||
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main')
|
|
||||||
- id: create-pull-request
|
|
||||||
uses: peter-evans/create-pull-request@v7
|
|
||||||
with:
|
|
||||||
title: Update manifest
|
|
||||||
body: |
|
|
||||||
Auto-generated by CI using [create-pull-request](https://github.com/peter-evans/create-pull-request).
|
|
||||||
|
|
||||||
This will be auto-merged when CI has passed because this is an auto-generated PR in a defined format and is usually considered no additional review is required.
|
|
||||||
branch: update-manifest
|
|
||||||
token: ${{ secrets.CREATE_PR_TOKEN }}
|
|
||||||
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false'
|
|
||||||
- name: Enable auto-merge for auto-generated PR
|
|
||||||
run: gh pr merge --rebase --auto "${PR_NUMBER:?}"
|
|
||||||
env:
|
|
||||||
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
|
|
||||||
run: gh pr review --approve "${PR_NUMBER:?}"
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_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' || steps.create-pull-request.outputs.pull-request-operation == 'updated')
|
|
||||||
- run: git add -N . && git diff --exit-code
|
|
||||||
|
|||||||
79
.github/workflows/manifest.yml
vendored
Normal file
79
.github/workflows/manifest.yml
vendored
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
name: Manifest
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
- dev
|
||||||
|
- ci-*
|
||||||
|
schedule:
|
||||||
|
- cron: '0 0,3,6,9,12,15,18,21 * * *'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
env:
|
||||||
|
CARGO_INCREMENTAL: 0
|
||||||
|
CARGO_NET_GIT_FETCH_WITH_CLI: true
|
||||||
|
CARGO_NET_RETRY: 10
|
||||||
|
CARGO_TERM_COLOR: always
|
||||||
|
RUST_BACKTRACE: 1
|
||||||
|
RUSTFLAGS: -D warnings
|
||||||
|
RUSTUP_MAX_RETRIES: 10
|
||||||
|
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash --noprofile --norc -CeEuxo pipefail {0}
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
manifest:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 60
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
pull-requests: write # for gh pr review --approve
|
||||||
|
steps:
|
||||||
|
- uses: taiki-e/checkout-action@v1
|
||||||
|
- uses: taiki-e/github-actions/install-rust@stable
|
||||||
|
- name: Generate Cargo.lock
|
||||||
|
run: cargo update
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
with:
|
||||||
|
cache-all-crates: 'true'
|
||||||
|
- run: tools/manifest.sh
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
- name: Handle diff
|
||||||
|
id: diff
|
||||||
|
run: tools/ci/manifest.sh
|
||||||
|
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main')
|
||||||
|
- run: git add -N . && git diff --exit-code
|
||||||
|
- id: create-pull-request
|
||||||
|
uses: peter-evans/create-pull-request@v7
|
||||||
|
with:
|
||||||
|
title: Update manifest
|
||||||
|
body: |
|
||||||
|
Auto-generated by CI using [create-pull-request](https://github.com/peter-evans/create-pull-request).
|
||||||
|
|
||||||
|
This will be auto-merged when CI has passed because this is an auto-generated PR in a defined format and is usually considered no additional review is required.
|
||||||
|
branch: update-manifest
|
||||||
|
token: ${{ secrets.CREATE_PR_TOKEN }}
|
||||||
|
if: github.repository_owner == 'taiki-e' && (github.event_name == 'schedule' || github.event_name == 'push' && github.ref == 'refs/heads/main') && steps.diff.outputs.success == 'false'
|
||||||
|
- name: Enable auto-merge for auto-generated PR
|
||||||
|
run: gh pr merge --rebase --auto "${PR_NUMBER:?}"
|
||||||
|
env:
|
||||||
|
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: Approve auto-generated PR for auto-merge
|
||||||
|
run: gh pr review --approve "${PR_NUMBER:?}"
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_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' || steps.create-pull-request.outputs.pull-request-operation == 'updated')
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
config:
|
config:
|
||||||
line-length: false # MD013
|
line-length: false # MD013
|
||||||
no-duplicate-heading: false # MD024
|
no-duplicate-heading: false # MD024
|
||||||
no-blanks-blockquote: false # MD028
|
no-blanks-blockquote: false # MD028 (this warns valid GFM alerts usage)
|
||||||
no-inline-html: false # MD033
|
no-inline-html: false # MD033
|
||||||
no-emphasis-as-heading: false # MD036
|
no-emphasis-as-heading: false # MD036
|
||||||
|
|
||||||
|
|||||||
@@ -2,13 +2,34 @@
|
|||||||
# https://github.com/koalaman/shellcheck/blob/HEAD/shellcheck.1.md#rc-files
|
# https://github.com/koalaman/shellcheck/blob/HEAD/shellcheck.1.md#rc-files
|
||||||
|
|
||||||
# See also:
|
# See also:
|
||||||
# https://www.shellcheck.net/wiki/Optional
|
# https://github.com/koalaman/shellcheck/wiki/Optional
|
||||||
# https://google.github.io/styleguide/shellguide.html
|
# https://google.github.io/styleguide/shellguide.html
|
||||||
|
|
||||||
# https://www.shellcheck.net/wiki/SC2292
|
# https://github.com/koalaman/shellcheck/wiki/SC2249
|
||||||
|
# enable=add-default-case
|
||||||
|
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2244
|
||||||
|
enable=avoid-nullary-conditions
|
||||||
|
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2312
|
||||||
|
# enable=check-extra-masked-returns
|
||||||
|
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2310
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2311
|
||||||
|
# enable=check-set-e-suppressed
|
||||||
|
|
||||||
|
# enable=check-unassigned-uppercase
|
||||||
|
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2230
|
||||||
|
enable=deprecate-which
|
||||||
|
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2248
|
||||||
|
enable=quote-safe-variables
|
||||||
|
|
||||||
|
# https://github.com/koalaman/shellcheck/wiki/SC2292
|
||||||
# https://google.github.io/styleguide/shellguide.html#s6.3-tests
|
# https://google.github.io/styleguide/shellguide.html#s6.3-tests
|
||||||
enable=require-double-brackets
|
enable=require-double-brackets
|
||||||
|
|
||||||
# https://www.shellcheck.net/wiki/SC2250
|
# https://github.com/koalaman/shellcheck/wiki/SC2250
|
||||||
# https://google.github.io/styleguide/shellguide.html#s5.6-variable-expansion
|
# https://google.github.io/styleguide/shellguide.html#s5.6-variable-expansion
|
||||||
enable=require-variable-braces
|
enable=require-variable-braces
|
||||||
|
|||||||
170
CHANGELOG.md
170
CHANGELOG.md
@@ -10,6 +10,148 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [2.48.2] - 2025-02-09
|
||||||
|
|
||||||
|
- Update `release-plz@latest` to 0.3.118.
|
||||||
|
|
||||||
|
- Update `parse-dockerfile@latest` to 0.1.1.
|
||||||
|
|
||||||
|
- Update `parse-changelog@latest` to 0.6.12.
|
||||||
|
|
||||||
|
## [2.48.1] - 2025-02-02
|
||||||
|
|
||||||
|
- Update `dprint@latest` to 0.49.0.
|
||||||
|
|
||||||
|
## [2.48.0] - 2025-02-01
|
||||||
|
|
||||||
|
- Support `parse-dockerfile`. ([#838](https://github.com/taiki-e/install-action/pull/838))
|
||||||
|
|
||||||
|
- Update `release-plz@latest` to 0.3.116.
|
||||||
|
|
||||||
|
## [2.47.32] - 2025-01-31
|
||||||
|
|
||||||
|
- Update `typos@latest` to 1.29.5.
|
||||||
|
|
||||||
|
## [2.47.31] - 2025-01-30
|
||||||
|
|
||||||
|
- Fix checksum error with `wash@0.38.0` on macOS. (They rebuilt binaries for some reason.)
|
||||||
|
|
||||||
|
## [2.47.30] - 2025-01-28
|
||||||
|
|
||||||
|
- Support `cargo-cyclonedx` on x86_64 Linux (musl).
|
||||||
|
|
||||||
|
- Support installing native binary for `cargo-cyclonedx` on AArch64 macOS. (Previously x86_64 macOS binary is used as fallback.)
|
||||||
|
|
||||||
|
- Update `cargo-cyclonedx@latest` to 0.5.7.
|
||||||
|
|
||||||
|
## [2.47.29] - 2025-01-28
|
||||||
|
|
||||||
|
- Support `cargo-semver-checks` on AArch64 Linux.
|
||||||
|
|
||||||
|
- Support `cargo-zigbuild` on x86_64 macOS.
|
||||||
|
|
||||||
|
- Support installing native binary for `mdbook` and `shellcheck` on AArch64 macOS. (Previously x86_64 macOS binary is used as fallback.)
|
||||||
|
|
||||||
|
- Support installing native binary for `just` and `sccache` on AArch64 Windows. (Previously x86_64 Windows binary is used as fallback.)
|
||||||
|
|
||||||
|
- Update `mdbook@latest` to 0.4.44.
|
||||||
|
|
||||||
|
- Update `cargo-semver-checks@latest` to 0.39.0.
|
||||||
|
|
||||||
|
## [2.47.28] - 2025-01-28
|
||||||
|
|
||||||
|
No change on the `install-action` itself.
|
||||||
|
|
||||||
|
- Provide `install-action-manifest-schema` crate to access to the `install-action` manifests from Rust code. ([#657](https://github.com/taiki-e/install-action/pull/657), thanks @NobodyXu)
|
||||||
|
|
||||||
|
This is being considered for use to speed up `cargo-binstall` in the future.
|
||||||
|
|
||||||
|
## [2.47.27] - 2025-01-28
|
||||||
|
|
||||||
|
- Update `editorconfig-checker@latest` to 3.2.0.
|
||||||
|
|
||||||
|
- Update `cargo-lambda@latest` to 1.6.3.
|
||||||
|
|
||||||
|
## [2.47.26] - 2025-01-27
|
||||||
|
|
||||||
|
- Update `wash@latest` to 0.38.0.
|
||||||
|
|
||||||
|
## [2.47.25] - 2025-01-24
|
||||||
|
|
||||||
|
- Update `release-plz@latest` to 0.3.114.
|
||||||
|
|
||||||
|
- Update `git-cliff@latest` to 2.8.0.
|
||||||
|
|
||||||
|
## [2.47.24] - 2025-01-23
|
||||||
|
|
||||||
|
- Update `syft@latest` to 1.19.0.
|
||||||
|
|
||||||
|
- Update `just@latest` to 1.39.0.
|
||||||
|
|
||||||
|
## [2.47.23] - 2025-01-22
|
||||||
|
|
||||||
|
- Update `wasmtime@latest` to 29.0.1.
|
||||||
|
|
||||||
|
## [2.47.22] - 2025-01-21
|
||||||
|
|
||||||
|
- Update `trunk@latest` to 0.21.7.
|
||||||
|
|
||||||
|
## [2.47.21] - 2025-01-21
|
||||||
|
|
||||||
|
- Update `knope@latest` to 0.18.3.
|
||||||
|
|
||||||
|
## [2.47.20] - 2025-01-21
|
||||||
|
|
||||||
|
- Update `wasmtime@latest` to 29.0.0.
|
||||||
|
|
||||||
|
## [2.47.19] - 2025-01-20
|
||||||
|
|
||||||
|
- Update `trunk@latest` to 0.21.6.
|
||||||
|
|
||||||
|
- Update `parse-changelog@latest` to 0.6.11.
|
||||||
|
|
||||||
|
## [2.47.18] - 2025-01-19
|
||||||
|
|
||||||
|
- Update `cargo-deny@latest` to 0.16.4.
|
||||||
|
|
||||||
|
- Update `cargo-binstall@latest` to 1.10.22.
|
||||||
|
|
||||||
|
## [2.47.17] - 2025-01-19
|
||||||
|
|
||||||
|
- Update `cargo-audit@latest` to 0.21.1.
|
||||||
|
|
||||||
|
## [2.47.16] - 2025-01-18
|
||||||
|
|
||||||
|
- Update `cargo-make@latest` to 0.37.24.
|
||||||
|
|
||||||
|
## [2.47.15] - 2025-01-16
|
||||||
|
|
||||||
|
- Update `cargo-tarpaulin@latest` to 0.31.5.
|
||||||
|
|
||||||
|
- Update `cargo-llvm-cov@latest` to 0.6.16.
|
||||||
|
|
||||||
|
- Update `cargo-hack@latest` to 0.6.34.
|
||||||
|
|
||||||
|
## [2.47.14] - 2025-01-16
|
||||||
|
|
||||||
|
- Update `cargo-nextest@latest` to 0.9.88.
|
||||||
|
|
||||||
|
## [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
|
## [2.47.11] - 2025-01-11
|
||||||
|
|
||||||
- Update `editorconfig-checker@latest` to 3.1.2.
|
- Update `editorconfig-checker@latest` to 3.1.2.
|
||||||
@@ -1497,7 +1639,7 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
|||||||
|
|
||||||
- Support `biome` on x86_64/AArch64 Linux (musl).
|
- Support `biome` on x86_64/AArch64 Linux (musl).
|
||||||
|
|
||||||
- Support `zola` on AArch64 macOS. (Previously x86_64 macOS binary is used as fallback.)
|
- Support installing native binary for `zola` on AArch64 macOS. (Previously x86_64 macOS binary is used as fallback.)
|
||||||
|
|
||||||
## [2.27.14] - 2024-03-01
|
## [2.27.14] - 2024-03-01
|
||||||
|
|
||||||
@@ -3314,7 +3456,31 @@ 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.47.11...HEAD
|
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.48.2...HEAD
|
||||||
|
[2.48.2]: https://github.com/taiki-e/install-action/compare/v2.48.1...v2.48.2
|
||||||
|
[2.48.1]: https://github.com/taiki-e/install-action/compare/v2.48.0...v2.48.1
|
||||||
|
[2.48.0]: https://github.com/taiki-e/install-action/compare/v2.47.32...v2.48.0
|
||||||
|
[2.47.32]: https://github.com/taiki-e/install-action/compare/v2.47.31...v2.47.32
|
||||||
|
[2.47.31]: https://github.com/taiki-e/install-action/compare/v2.47.30...v2.47.31
|
||||||
|
[2.47.30]: https://github.com/taiki-e/install-action/compare/v2.47.29...v2.47.30
|
||||||
|
[2.47.29]: https://github.com/taiki-e/install-action/compare/v2.47.28...v2.47.29
|
||||||
|
[2.47.28]: https://github.com/taiki-e/install-action/compare/v2.47.27...v2.47.28
|
||||||
|
[2.47.27]: https://github.com/taiki-e/install-action/compare/v2.47.26...v2.47.27
|
||||||
|
[2.47.26]: https://github.com/taiki-e/install-action/compare/v2.47.25...v2.47.26
|
||||||
|
[2.47.25]: https://github.com/taiki-e/install-action/compare/v2.47.24...v2.47.25
|
||||||
|
[2.47.24]: https://github.com/taiki-e/install-action/compare/v2.47.23...v2.47.24
|
||||||
|
[2.47.23]: https://github.com/taiki-e/install-action/compare/v2.47.22...v2.47.23
|
||||||
|
[2.47.22]: https://github.com/taiki-e/install-action/compare/v2.47.21...v2.47.22
|
||||||
|
[2.47.21]: https://github.com/taiki-e/install-action/compare/v2.47.20...v2.47.21
|
||||||
|
[2.47.20]: https://github.com/taiki-e/install-action/compare/v2.47.19...v2.47.20
|
||||||
|
[2.47.19]: https://github.com/taiki-e/install-action/compare/v2.47.18...v2.47.19
|
||||||
|
[2.47.18]: https://github.com/taiki-e/install-action/compare/v2.47.17...v2.47.18
|
||||||
|
[2.47.17]: https://github.com/taiki-e/install-action/compare/v2.47.16...v2.47.17
|
||||||
|
[2.47.16]: https://github.com/taiki-e/install-action/compare/v2.47.15...v2.47.16
|
||||||
|
[2.47.15]: https://github.com/taiki-e/install-action/compare/v2.47.14...v2.47.15
|
||||||
|
[2.47.14]: https://github.com/taiki-e/install-action/compare/v2.47.13...v2.47.14
|
||||||
|
[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.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.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.9]: https://github.com/taiki-e/install-action/compare/v2.47.8...v2.47.9
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
[workspace]
|
[workspace]
|
||||||
resolver = "2"
|
resolver = "2"
|
||||||
members = ["tools/codegen"]
|
members = ["tools/codegen", "tools/manifest-schema"]
|
||||||
|
|
||||||
# This table is shared by projects under github.com/taiki-e.
|
# This table is shared by projects under github.com/taiki-e.
|
||||||
# It is not intended for manual editing.
|
# Expect for unexpected_cfgs.check-cfg, it is not intended for manual editing.
|
||||||
[workspace.lints.rust]
|
[workspace.lints.rust]
|
||||||
deprecated_safe = "warn"
|
deprecated_safe = "warn"
|
||||||
improper_ctypes = "warn"
|
improper_ctypes = "warn"
|
||||||
@@ -26,6 +26,7 @@ inline_asm_x86_att_syntax = "warn"
|
|||||||
trailing_empty_array = "warn"
|
trailing_empty_array = "warn"
|
||||||
transmute_undefined_repr = "warn"
|
transmute_undefined_repr = "warn"
|
||||||
undocumented_unsafe_blocks = "warn"
|
undocumented_unsafe_blocks = "warn"
|
||||||
|
unused_trait_names = "warn"
|
||||||
# Suppress buggy or noisy clippy lints
|
# Suppress buggy or noisy clippy lints
|
||||||
bool_assert_comparison = { level = "allow", priority = 1 }
|
bool_assert_comparison = { level = "allow", priority = 1 }
|
||||||
borrow_as_ptr = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/8286
|
borrow_as_ptr = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/8286
|
||||||
|
|||||||
@@ -22,8 +22,8 @@ GitHub Action for installing development tools (mainly from GitHub Releases).
|
|||||||
|
|
||||||
| Name | Required | Description | Type | Default |
|
| Name | Required | Description | Type | Default |
|
||||||
| -------- |:--------:| --------------------------------------- | ------- | ------- |
|
| -------- |:--------:| --------------------------------------- | ------- | ------- |
|
||||||
| tool | **true** | Tools to install (comma-separated list) | String | |
|
| tool | **✓** | Tools to install (comma-separated list) | String | |
|
||||||
| checksum | false | Whether to enable checksums | Boolean | `true` |
|
| checksum | | Whether to enable checksums | Boolean | `true` |
|
||||||
|
|
||||||
### Example workflow
|
### Example workflow
|
||||||
|
|
||||||
@@ -116,7 +116,7 @@ On Linux, if any required tools are missing, this action will attempt to install
|
|||||||
On other platforms, at least the following tools are required:
|
On other platforms, at least the following tools are required:
|
||||||
|
|
||||||
- bash 3.2+
|
- bash 3.2+
|
||||||
- jq 1.3+
|
- jq 1.3+ (only on non-Windows platforms)
|
||||||
- curl 7.34+ (or RHEL7/CentOS7's patched curl 7.29)
|
- curl 7.34+ (or RHEL7/CentOS7's patched curl 7.29)
|
||||||
|
|
||||||
Known environments affected by the above version requirements are CentOS 6 (EoL on 2020-11) using curl 7.19, and Ubuntu 12.04 (EoL on 2017-04) using curl 7.22 (see "Install requirements" in [our CI config](https://github.com/taiki-e/install-action/blob/HEAD/.github/workflows/ci.yml) for example of workaround).
|
Known environments affected by the above version requirements are CentOS 6 (EoL on 2020-11) using curl 7.19, and Ubuntu 12.04 (EoL on 2017-04) using curl 7.22 (see "Install requirements" in [our CI config](https://github.com/taiki-e/install-action/blob/HEAD/.github/workflows/ci.yml) for example of workaround).
|
||||||
|
|||||||
1
TOOLS.md
1
TOOLS.md
@@ -52,6 +52,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
|
|||||||
| [**mdbook-linkcheck**](https://github.com/Michael-F-Bryan/mdbook-linkcheck) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/Michael-F-Bryan/mdbook-linkcheck/releases) | Linux, macOS, Windows | [MIT](https://github.com/Michael-F-Bryan/mdbook-linkcheck/blob/master/LICENSE) |
|
| [**mdbook-linkcheck**](https://github.com/Michael-F-Bryan/mdbook-linkcheck) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/Michael-F-Bryan/mdbook-linkcheck/releases) | Linux, macOS, Windows | [MIT](https://github.com/Michael-F-Bryan/mdbook-linkcheck/blob/master/LICENSE) |
|
||||||
| [**osv-scanner**](https://github.com/google/osv-scanner) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/google/osv-scanner/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/google/osv-scanner/blob/main/LICENSE) |
|
| [**osv-scanner**](https://github.com/google/osv-scanner) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/google/osv-scanner/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/google/osv-scanner/blob/main/LICENSE) |
|
||||||
| [**parse-changelog**](https://github.com/taiki-e/parse-changelog) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/parse-changelog/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-MIT) |
|
| [**parse-changelog**](https://github.com/taiki-e/parse-changelog) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/parse-changelog/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-MIT) |
|
||||||
|
| [**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) |
|
||||||
| [**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/HEAD/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/HEAD/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) |
|
| [**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) |
|
| [**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) |
|
||||||
|
|||||||
@@ -40,14 +40,8 @@ runs:
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
|
|
||||||
shell: sh
|
shell: sh
|
||||||
env:
|
if: runner.os == 'Linux'
|
||||||
INPUT_TOOL: ${{ inputs.tool }}
|
|
||||||
INPUT_CHECKSUM: ${{ inputs.checksum }}
|
|
||||||
INPUT_FALLBACK: ${{ inputs.fallback }}
|
|
||||||
DEFAULT_GITHUB_TOKEN: ${{ github.token }}
|
|
||||||
if: runner.os != 'Windows'
|
|
||||||
- run: bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
|
- run: bash --noprofile --norc "${GITHUB_ACTION_PATH:?}/main.sh"
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
@@ -55,4 +49,3 @@ runs:
|
|||||||
INPUT_CHECKSUM: ${{ inputs.checksum }}
|
INPUT_CHECKSUM: ${{ inputs.checksum }}
|
||||||
INPUT_FALLBACK: ${{ inputs.fallback }}
|
INPUT_FALLBACK: ${{ inputs.fallback }}
|
||||||
DEFAULT_GITHUB_TOKEN: ${{ github.token }}
|
DEFAULT_GITHUB_TOKEN: ${{ github.token }}
|
||||||
if: runner.os == 'Windows'
|
|
||||||
|
|||||||
287
main.sh
287
main.sh
@@ -1,14 +1,12 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||||
set -eEuo pipefail
|
set -CeEuo pipefail
|
||||||
IFS=$'\n\t'
|
IFS=$'\n\t'
|
||||||
|
|
||||||
rx() {
|
rx() {
|
||||||
local cmd="$1"
|
|
||||||
shift
|
|
||||||
(
|
(
|
||||||
set -x
|
set -x
|
||||||
"${cmd}" "$@"
|
"$@"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
retry() {
|
retry() {
|
||||||
@@ -22,17 +20,17 @@ retry() {
|
|||||||
"$@"
|
"$@"
|
||||||
}
|
}
|
||||||
bail() {
|
bail() {
|
||||||
echo "::error::$*"
|
printf '::error::%s\n' "$*"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
warn() {
|
warn() {
|
||||||
echo "::warning::$*"
|
printf '::warning::%s\n' "$*"
|
||||||
}
|
}
|
||||||
info() {
|
info() {
|
||||||
echo "info: $*"
|
printf >&2 'info: %s\n' "$*"
|
||||||
}
|
}
|
||||||
_sudo() {
|
_sudo() {
|
||||||
if type -P sudo &>/dev/null; then
|
if type -P sudo >/dev/null; then
|
||||||
sudo "$@"
|
sudo "$@"
|
||||||
else
|
else
|
||||||
"$@"
|
"$@"
|
||||||
@@ -42,15 +40,15 @@ download_and_checksum() {
|
|||||||
local url="$1"
|
local url="$1"
|
||||||
local checksum="$2"
|
local checksum="$2"
|
||||||
if [[ -z "${enable_checksum}" ]]; then
|
if [[ -z "${enable_checksum}" ]]; then
|
||||||
checksum=""
|
checksum=''
|
||||||
fi
|
fi
|
||||||
info "downloading ${url}"
|
info "downloading ${url}"
|
||||||
retry curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "${url}" -o tmp
|
retry curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "${url}" -o tmp
|
||||||
if [[ -n "${checksum}" ]]; then
|
if [[ -n "${checksum}" ]]; then
|
||||||
info "verifying sha256 checksum for $(basename "${url}")"
|
info "verifying sha256 checksum for $(basename -- "${url}")"
|
||||||
if type -P sha256sum &>/dev/null; then
|
if type -P sha256sum >/dev/null; then
|
||||||
sha256sum -c - >/dev/null <<<"${checksum} *tmp"
|
sha256sum -c - >/dev/null <<<"${checksum} *tmp"
|
||||||
elif type -P shasum &>/dev/null; then
|
elif type -P shasum >/dev/null; then
|
||||||
# GitHub-hosted macOS runner does not install GNU Coreutils by default.
|
# GitHub-hosted macOS runner does not install GNU Coreutils by default.
|
||||||
# https://github.com/actions/runner-images/issues/90
|
# https://github.com/actions/runner-images/issues/90
|
||||||
shasum -a 256 -c - >/dev/null <<<"${checksum} *tmp"
|
shasum -a 256 -c - >/dev/null <<<"${checksum} *tmp"
|
||||||
@@ -80,7 +78,7 @@ download_and_extract() {
|
|||||||
editorconfig-checker) installed_bin=("${bin_dir}/${tool}${exe}") ;;
|
editorconfig-checker) installed_bin=("${bin_dir}/${tool}${exe}") ;;
|
||||||
*)
|
*)
|
||||||
for tmp in "${bin_in_archive[@]}"; do
|
for tmp in "${bin_in_archive[@]}"; do
|
||||||
installed_bin+=("${bin_dir}/$(basename "${tmp}")")
|
installed_bin+=("${bin_dir}/$(basename -- "${tmp}")")
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -88,70 +86,70 @@ download_and_extract() {
|
|||||||
local tar_args=()
|
local tar_args=()
|
||||||
case "${url}" in
|
case "${url}" in
|
||||||
*.tar.gz | *.tgz)
|
*.tar.gz | *.tgz)
|
||||||
tar_args+=("xzf")
|
tar_args+=('xzf')
|
||||||
if ! type -P gzip &>/dev/null; then
|
if ! type -P gzip >/dev/null; then
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
debian | fedora | suse | arch | alpine)
|
debian | fedora | suse | arch | alpine)
|
||||||
echo "::group::Install packages required for installation (gzip)"
|
printf '::group::Install packages required for installation (gzip)\n'
|
||||||
sys_install gzip
|
sys_install gzip
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*.tar.bz2 | *.tbz2)
|
*.tar.bz2 | *.tbz2)
|
||||||
tar_args+=("xjf")
|
tar_args+=('xjf')
|
||||||
if ! type -P bzip2 &>/dev/null; then
|
if ! type -P bzip2 >/dev/null; then
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
debian | fedora | suse | arch | alpine)
|
debian | fedora | suse | arch | alpine)
|
||||||
echo "::group::Install packages required for installation (bzip2)"
|
printf '::group::Install packages required for installation (bzip2)\n'
|
||||||
sys_install bzip2
|
sys_install bzip2
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*.tar.xz | *.txz)
|
*.tar.xz | *.txz)
|
||||||
tar_args+=("xJf")
|
tar_args+=('xJf')
|
||||||
if ! type -P xz &>/dev/null; then
|
if ! type -P xz >/dev/null; then
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
debian)
|
debian)
|
||||||
echo "::group::Install packages required for installation (xz-utils)"
|
printf '::group::Install packages required for installation (xz-utils)\n'
|
||||||
sys_install xz-utils
|
sys_install xz-utils
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
fedora | suse | arch | alpine)
|
fedora | suse | arch | alpine)
|
||||||
echo "::group::Install packages required for installation (xz)"
|
printf '::group::Install packages required for installation (xz)\n'
|
||||||
sys_install xz
|
sys_install xz
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*.zip)
|
*.zip)
|
||||||
if ! type -P unzip &>/dev/null; then
|
if ! type -P unzip >/dev/null; then
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
debian | fedora | suse | arch | alpine)
|
debian | fedora | suse | arch | alpine)
|
||||||
echo "::group::Install packages required for installation (unzip)"
|
printf '::group::Install packages required for installation (unzip)\n'
|
||||||
sys_install unzip
|
sys_install unzip
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
mkdir -p "${tmp_dir}"
|
mkdir -p -- "${tmp_dir}"
|
||||||
(
|
(
|
||||||
cd "${tmp_dir}"
|
cd -- "${tmp_dir}"
|
||||||
download_and_checksum "${url}" "${checksum}"
|
download_and_checksum "${url}" "${checksum}"
|
||||||
if [[ ${#tar_args[@]} -gt 0 ]]; then
|
if [[ ${#tar_args[@]} -gt 0 ]]; then
|
||||||
tar_args+=("tmp")
|
tar_args+=("tmp")
|
||||||
tar "${tar_args[@]}"
|
tar "${tar_args[@]}"
|
||||||
for tmp in "${bin_in_archive[@]}"; do
|
for tmp in "${bin_in_archive[@]}"; do
|
||||||
case "${tool}" in
|
case "${tool}" in
|
||||||
editorconfig-checker) mv "${tmp}" "${bin_dir}/${tool}${exe}" ;;
|
editorconfig-checker) mv -- "${tmp}" "${bin_dir}/${tool}${exe}" ;;
|
||||||
*) mv "${tmp}" "${bin_dir}/" ;;
|
*) mv -- "${tmp}" "${bin_dir}/" ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
@@ -160,20 +158,20 @@ download_and_extract() {
|
|||||||
unzip -q tmp "${bin_in_archive#\./}"
|
unzip -q tmp "${bin_in_archive#\./}"
|
||||||
for tmp in "${bin_in_archive[@]}"; do
|
for tmp in "${bin_in_archive[@]}"; do
|
||||||
case "${tool}" in
|
case "${tool}" in
|
||||||
editorconfig-checker) mv "${tmp}" "${bin_dir}/${tool}${exe}" ;;
|
editorconfig-checker) mv -- "${tmp}" "${bin_dir}/${tool}${exe}" ;;
|
||||||
*) mv "${tmp}" "${bin_dir}/" ;;
|
*) mv -- "${tmp}" "${bin_dir}/" ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
for tmp in "${installed_bin[@]}"; do
|
for tmp in "${installed_bin[@]}"; do
|
||||||
mv tmp "${tmp}"
|
mv -- tmp "${tmp}"
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
)
|
)
|
||||||
rm -rf "${tmp_dir}"
|
rm -rf -- "${tmp_dir}"
|
||||||
|
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
linux | macos)
|
linux | macos)
|
||||||
@@ -189,28 +187,28 @@ read_manifest() {
|
|||||||
local tool="$1"
|
local tool="$1"
|
||||||
local version="$2"
|
local version="$2"
|
||||||
local manifest
|
local manifest
|
||||||
rust_crate=$(call_jq -r ".rust_crate" "${manifest_dir}/${tool}.json")
|
rust_crate=$(jq -r '.rust_crate' "${manifest_dir}/${tool}.json")
|
||||||
manifest=$(call_jq -r ".[\"${version}\"]" "${manifest_dir}/${tool}.json")
|
manifest=$(jq -r ".[\"${version}\"]" "${manifest_dir}/${tool}.json")
|
||||||
if [[ "${manifest}" == "null" ]]; then
|
if [[ "${manifest}" == "null" ]]; then
|
||||||
download_info="null"
|
download_info="null"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
exact_version=$(call_jq <<<"${manifest}" -r '.version')
|
exact_version=$(jq -r '.version' <<<"${manifest}")
|
||||||
if [[ "${exact_version}" == "null" ]]; then
|
if [[ "${exact_version}" == "null" ]]; then
|
||||||
exact_version="${version}"
|
exact_version="${version}"
|
||||||
else
|
else
|
||||||
manifest=$(call_jq -r ".[\"${exact_version}\"]" "${manifest_dir}/${tool}.json")
|
manifest=$(jq -r ".[\"${exact_version}\"]" "${manifest_dir}/${tool}.json")
|
||||||
if [[ "${rust_crate}" != "null" ]]; then
|
if [[ "${rust_crate}" != "null" ]]; then
|
||||||
# TODO: don't hardcode tool name and use 'immediate_yank_reflection' field in base manifest.
|
# TODO: don't hardcode tool name and use 'immediate_yank_reflection' field in base manifest.
|
||||||
case "${tool}" in
|
case "${tool}" in
|
||||||
cargo-nextest | nextest)
|
cargo-nextest | nextest)
|
||||||
crate_info=$(retry curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "https://crates.io/api/v1/crates/${rust_crate}")
|
crate_info=$(retry curl --proto '=https' --tlsv1.2 -fsSL --retry 10 "https://crates.io/api/v1/crates/${rust_crate}")
|
||||||
while true; do
|
while true; do
|
||||||
yanked=$(jq <<<"${crate_info}" -r ".versions[] | select(.num == \"${exact_version}\") | .yanked")
|
yanked=$(jq -r ".versions[] | select(.num == \"${exact_version}\") | .yanked" <<<"${crate_info}")
|
||||||
if [[ "${yanked}" != "true" ]]; then
|
if [[ "${yanked}" != "true" ]]; then
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
previous_stable_version=$(jq <<<"${manifest}" -r '.previous_stable_version')
|
previous_stable_version=$(jq -r '.previous_stable_version' <<<"${manifest}")
|
||||||
if [[ "${previous_stable_version}" == "null" ]]; then
|
if [[ "${previous_stable_version}" == "null" ]]; then
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
@@ -229,26 +227,26 @@ read_manifest() {
|
|||||||
# usually preferred over linux-gnu binaries because they can avoid glibc version issues.
|
# usually preferred over linux-gnu binaries because they can avoid glibc version issues.
|
||||||
# (rustc enables statically linking for linux-musl by default, except for mips.)
|
# (rustc enables statically linking for linux-musl by default, except for mips.)
|
||||||
host_platform="${host_arch}_linux_musl"
|
host_platform="${host_arch}_linux_musl"
|
||||||
download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
|
download_info=$(jq -r ".${host_platform}" <<<"${manifest}")
|
||||||
if [[ "${download_info}" == "null" ]]; then
|
if [[ "${download_info}" == "null" ]]; then
|
||||||
# Even if host_env is musl, we won't issue an error here because it seems that in
|
# Even if host_env is musl, we won't issue an error here because it seems that in
|
||||||
# some cases linux-gnu binaries will work on linux-musl hosts.
|
# some cases linux-gnu binaries will work on linux-musl hosts.
|
||||||
# https://wiki.alpinelinux.org/wiki/Running_glibc_programs
|
# https://wiki.alpinelinux.org/wiki/Running_glibc_programs
|
||||||
# TODO: However, a warning may make sense.
|
# TODO: However, a warning may make sense.
|
||||||
host_platform="${host_arch}_linux_gnu"
|
host_platform="${host_arch}_linux_gnu"
|
||||||
download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
|
download_info=$(jq -r ".${host_platform}" <<<"${manifest}")
|
||||||
elif [[ "${host_env}" == "gnu" ]]; then
|
elif [[ "${host_env}" == "gnu" ]]; then
|
||||||
# TODO: don't hardcode tool name and use 'prefer_linux_gnu' field in base manifest.
|
# TODO: don't hardcode tool name and use 'prefer_linux_gnu' field in base manifest.
|
||||||
case "${tool}" in
|
case "${tool}" in
|
||||||
cargo-nextest | nextest)
|
cargo-nextest | nextest)
|
||||||
# TODO: don't hardcode required glibc version
|
# TODO: don't hardcode required glibc version
|
||||||
required_glibc_version=2.27
|
required_glibc_version=2.27
|
||||||
higher_glibc_version=$(sort <<<"${required_glibc_version}"$'\n'"${host_glibc_version}" -Vu | tail -1)
|
higher_glibc_version=$(LC_ALL=C sort -Vu <<<"${required_glibc_version}"$'\n'"${host_glibc_version}" | tail -1)
|
||||||
if [[ "${higher_glibc_version}" == "${host_glibc_version}" ]]; then
|
if [[ "${higher_glibc_version}" == "${host_glibc_version}" ]]; then
|
||||||
# musl build of nextest is slow, so use glibc build if host_env is gnu.
|
# musl build of nextest is slow, so use glibc build if host_env is gnu.
|
||||||
# https://github.com/taiki-e/install-action/issues/13
|
# https://github.com/taiki-e/install-action/issues/13
|
||||||
host_platform="${host_arch}_linux_gnu"
|
host_platform="${host_arch}_linux_gnu"
|
||||||
download_info=$(jq <<<"${manifest}" -r ".${host_platform}")
|
download_info=$(jq -r ".${host_platform}" <<<"${manifest}")
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -258,10 +256,10 @@ read_manifest() {
|
|||||||
# Binaries compiled for x86_64 macOS will usually also work on AArch64 macOS.
|
# Binaries compiled for x86_64 macOS will usually also work on AArch64 macOS.
|
||||||
# Binaries compiled for x86_64 Windows will usually also work on AArch64 Windows 11+.
|
# Binaries compiled for x86_64 Windows will usually also work on AArch64 Windows 11+.
|
||||||
host_platform="${host_arch}_${host_os}"
|
host_platform="${host_arch}_${host_os}"
|
||||||
download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
|
download_info=$(jq -r ".${host_platform}" <<<"${manifest}")
|
||||||
if [[ "${download_info}" == "null" ]] && [[ "${host_arch}" != "x86_64" ]]; then
|
if [[ "${download_info}" == "null" ]] && [[ "${host_arch}" != "x86_64" ]]; then
|
||||||
host_platform="x86_64_${host_os}"
|
host_platform="x86_64_${host_os}"
|
||||||
download_info=$(call_jq <<<"${manifest}" -r ".${host_platform}")
|
download_info=$(jq -r ".${host_platform}" <<<"${manifest}")
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*) bail "unsupported OS type '${host_os}' for ${tool}" ;;
|
*) bail "unsupported OS type '${host_os}' for ${tool}" ;;
|
||||||
@@ -273,25 +271,25 @@ read_download_info() {
|
|||||||
if [[ "${download_info}" == "null" ]]; then
|
if [[ "${download_info}" == "null" ]]; then
|
||||||
bail "${tool}@${version} for '${host_os}' is not supported"
|
bail "${tool}@${version} for '${host_os}' is not supported"
|
||||||
fi
|
fi
|
||||||
checksum=$(call_jq <<<"${download_info}" -r '.checksum')
|
checksum=$(jq -r '.checksum' <<<"${download_info}")
|
||||||
url=$(call_jq <<<"${download_info}" -r '.url')
|
url=$(jq -r '.url' <<<"${download_info}")
|
||||||
local tmp
|
local tmp
|
||||||
bin_in_archive=()
|
bin_in_archive=()
|
||||||
if [[ "${url}" == "null" ]]; then
|
if [[ "${url}" == "null" ]]; then
|
||||||
local template
|
local template
|
||||||
template=$(call_jq -r ".template.${host_platform}" "${manifest_dir}/${tool}.json")
|
template=$(jq -r ".template.${host_platform}" "${manifest_dir}/${tool}.json")
|
||||||
url=$(call_jq <<<"${template}" -r '.url')
|
url=$(jq -r '.url' <<<"${template}")
|
||||||
url="${url//\$\{version\}/${exact_version}}"
|
url="${url//\$\{version\}/${exact_version}}"
|
||||||
tmp=$(call_jq <<<"${template}" -r '.bin' | sed -E "s/\\$\\{version\\}/${exact_version}/g")
|
tmp=$(jq -r '.bin' <<<"${template}" | sed -E "s/\\$\\{version\\}/${exact_version}/g")
|
||||||
if [[ "${tmp}" == *"["* ]]; then
|
if [[ "${tmp}" == *"["* ]]; then
|
||||||
# shellcheck disable=SC2207
|
# shellcheck disable=SC2207
|
||||||
bin_in_archive=($(call_jq <<<"${template}" -r '.bin[]' | sed -E "s/\\$\\{version\\}/${exact_version}/g"))
|
bin_in_archive=($(jq -r '.bin[]' <<<"${template}" | sed -E "s/\\$\\{version\\}/${exact_version}/g"))
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
tmp=$(call_jq <<<"${download_info}" -r '.bin')
|
tmp=$(jq -r '.bin' <<<"${download_info}")
|
||||||
if [[ "${tmp}" == *"["* ]]; then
|
if [[ "${tmp}" == *"["* ]]; then
|
||||||
# shellcheck disable=SC2207
|
# shellcheck disable=SC2207
|
||||||
bin_in_archive=($(call_jq <<<"${download_info}" -r '.bin[]'))
|
bin_in_archive=($(jq -r '.bin[]' <<<"${download_info}"))
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [[ ${#bin_in_archive[@]} -eq 0 ]]; then
|
if [[ ${#bin_in_archive[@]} -eq 0 ]]; then
|
||||||
@@ -318,23 +316,23 @@ download_from_download_info() {
|
|||||||
}
|
}
|
||||||
install_cargo_binstall() {
|
install_cargo_binstall() {
|
||||||
local binstall_version
|
local binstall_version
|
||||||
binstall_version=$(call_jq -r '.latest.version' "${manifest_dir}/cargo-binstall.json")
|
binstall_version=$(jq -r '.latest.version' "${manifest_dir}/cargo-binstall.json")
|
||||||
local install_binstall='1'
|
local install_binstall=1
|
||||||
_binstall_version=$("cargo-binstall${exe}" binstall -V 2>/dev/null || echo "")
|
_binstall_version=$("cargo-binstall${exe}" binstall -V 2>/dev/null || true)
|
||||||
if [[ -n "${_binstall_version}" ]]; then
|
if [[ -n "${_binstall_version}" ]]; then
|
||||||
if [[ "${_binstall_version}" == "${binstall_version}" ]]; then
|
if [[ "${_binstall_version}" == "${binstall_version}" ]]; then
|
||||||
info "cargo-binstall already installed at ${cargo_bin}/cargo-binstall${exe}"
|
info "cargo-binstall already installed at ${cargo_bin}/cargo-binstall${exe}"
|
||||||
install_binstall=''
|
install_binstall=''
|
||||||
else
|
else
|
||||||
info "cargo-binstall already installed at ${cargo_bin}/cargo-binstall${exe}, but is not compatible version with install-action, upgrading"
|
info "cargo-binstall already installed at ${cargo_bin}/cargo-binstall${exe}, but is not compatible version with install-action, upgrading"
|
||||||
rm "${cargo_bin}/cargo-binstall${exe}"
|
rm -- "${cargo_bin}/cargo-binstall${exe}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -n "${install_binstall}" ]]; then
|
if [[ -n "${install_binstall}" ]]; then
|
||||||
info "installing cargo-binstall@latest (${binstall_version})"
|
info "installing cargo-binstall@latest (${binstall_version})"
|
||||||
download_from_manifest "cargo-binstall" "latest"
|
download_from_manifest "cargo-binstall" "latest"
|
||||||
installed_at=$(type -P "cargo-binstall${exe}" || echo "")
|
installed_at=$(type -P "cargo-binstall${exe}" || true)
|
||||||
if [[ -n "${installed_at}" ]]; then
|
if [[ -n "${installed_at}" ]]; then
|
||||||
info "cargo-binstall installed at ${installed_at}"
|
info "cargo-binstall installed at ${installed_at}"
|
||||||
else
|
else
|
||||||
@@ -369,9 +367,9 @@ pacman_install() {
|
|||||||
retry _sudo pacman -Sy --noconfirm "$@"
|
retry _sudo pacman -Sy --noconfirm "$@"
|
||||||
}
|
}
|
||||||
apk_install() {
|
apk_install() {
|
||||||
if type -P sudo &>/dev/null; then
|
if type -P sudo >/dev/null; then
|
||||||
retry sudo apk --no-cache add "$@"
|
retry sudo apk --no-cache add "$@"
|
||||||
elif type -P doas &>/dev/null; then
|
elif type -P doas >/dev/null; then
|
||||||
retry doas apk --no-cache add "$@"
|
retry doas apk --no-cache add "$@"
|
||||||
else
|
else
|
||||||
retry apk --no-cache add "$@"
|
retry apk --no-cache add "$@"
|
||||||
@@ -389,19 +387,19 @@ sys_install() {
|
|||||||
init_install_action_bin_dir() {
|
init_install_action_bin_dir() {
|
||||||
if [[ -z "${init_install_action_bin:-}" ]]; then
|
if [[ -z "${init_install_action_bin:-}" ]]; then
|
||||||
init_install_action_bin=1
|
init_install_action_bin=1
|
||||||
mkdir -p "${bin_dir}"
|
mkdir -p -- "${bin_dir}"
|
||||||
export PATH="${PATH}:${bin_dir}"
|
export PATH="${PATH}:${bin_dir}"
|
||||||
local _bin_dir
|
local _bin_dir
|
||||||
_bin_dir=$(canonicalize_windows_path "${bin_dir}")
|
_bin_dir=$(canonicalize_windows_path "${bin_dir}")
|
||||||
# TODO: avoid this when already added
|
# TODO: avoid this when already added
|
||||||
info "adding '${_bin_dir}' to PATH"
|
info "adding '${_bin_dir}' to PATH"
|
||||||
echo "${_bin_dir}" >>"${GITHUB_PATH}"
|
printf '%s\n' "${_bin_dir}" >>"${GITHUB_PATH}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
canonicalize_windows_path() {
|
canonicalize_windows_path() {
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
windows) sed <<<"$1" 's/^\/cygdrive\//\//; s/^\/c\//C:\\/; s/\//\\/g' ;;
|
windows) sed -E 's/^\/cygdrive\//\//; s/^\/c\//C:\\/; s/\//\\/g' <<<"$1" ;;
|
||||||
*) echo "$1" ;;
|
*) printf '%s\n' "$1" ;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -415,7 +413,7 @@ if [[ $# -gt 0 ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
manifest_dir="$(dirname "$0")/manifests"
|
manifest_dir="$(dirname -- "$0")/manifests"
|
||||||
|
|
||||||
# Inputs
|
# Inputs
|
||||||
tool="${INPUT_TOOL:-}"
|
tool="${INPUT_TOOL:-}"
|
||||||
@@ -446,17 +444,17 @@ case "${fallback}" in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
# Refs: https://github.com/rust-lang/rustup/blob/HEAD/rustup-init.sh
|
# Refs: https://github.com/rust-lang/rustup/blob/HEAD/rustup-init.sh
|
||||||
base_distro=""
|
base_distro=''
|
||||||
exe=""
|
exe=''
|
||||||
case "$(uname -s)" in
|
case "$(uname -s)" in
|
||||||
Linux)
|
Linux)
|
||||||
host_os=linux
|
host_os=linux
|
||||||
ldd_version=$(ldd --version 2>&1 || true)
|
ldd_version=$(ldd --version 2>&1 || true)
|
||||||
if grep <<<"${ldd_version}" -q 'musl'; then
|
if grep -Fq musl <<<"${ldd_version}"; then
|
||||||
host_env="musl"
|
host_env=musl
|
||||||
else
|
else
|
||||||
host_env="gnu"
|
host_env=gnu
|
||||||
host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g")
|
host_glibc_version=$(grep -E "GLIBC|GNU libc" <<<"${ldd_version}" | sed -E "s/.* //g")
|
||||||
fi
|
fi
|
||||||
if [[ -e /etc/os-release ]]; then
|
if [[ -e /etc/os-release ]]; then
|
||||||
if grep -Eq '^ID_LIKE=' /etc/os-release; then
|
if grep -Eq '^ID_LIKE=' /etc/os-release; then
|
||||||
@@ -471,14 +469,19 @@ case "$(uname -s)" in
|
|||||||
else
|
else
|
||||||
base_distro=$(grep -E '^ID=' /etc/os-release | cut -d= -f2)
|
base_distro=$(grep -E '^ID=' /etc/os-release | cut -d= -f2)
|
||||||
fi
|
fi
|
||||||
|
base_distro="${base_distro//\"/}"
|
||||||
elif [[ -e /etc/redhat-release ]]; then
|
elif [[ -e /etc/redhat-release ]]; then
|
||||||
|
# /etc/os-release is available on RHEL/CentOS 7+
|
||||||
base_distro=fedora
|
base_distro=fedora
|
||||||
|
elif [[ -e /etc/debian_version ]]; then
|
||||||
|
# /etc/os-release is available on Debian 7+
|
||||||
|
base_distro=debian
|
||||||
fi
|
fi
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
fedora)
|
fedora)
|
||||||
dnf=dnf
|
dnf=dnf
|
||||||
if ! type -P dnf &>/dev/null; then
|
if ! type -P dnf >/dev/null; then
|
||||||
if type -P microdnf &>/dev/null; then
|
if type -P microdnf >/dev/null; then
|
||||||
# fedora-based distributions have "minimal" images that
|
# fedora-based distributions have "minimal" images that
|
||||||
# use microdnf instead of dnf.
|
# use microdnf instead of dnf.
|
||||||
dnf=microdnf
|
dnf=microdnf
|
||||||
@@ -495,12 +498,12 @@ case "$(uname -s)" in
|
|||||||
Darwin) host_os=macos ;;
|
Darwin) host_os=macos ;;
|
||||||
MINGW* | MSYS* | CYGWIN* | Windows_NT)
|
MINGW* | MSYS* | CYGWIN* | Windows_NT)
|
||||||
host_os=windows
|
host_os=windows
|
||||||
exe=".exe"
|
exe=.exe
|
||||||
;;
|
;;
|
||||||
*) bail "unrecognized OS type '$(uname -s)'" ;;
|
*) bail "unrecognized OS type '$(uname -s)'" ;;
|
||||||
esac
|
esac
|
||||||
case "$(uname -m)" in
|
case "$(uname -m)" in
|
||||||
aarch64 | arm64) host_arch="aarch64" ;;
|
aarch64 | arm64) host_arch=aarch64 ;;
|
||||||
xscale | arm | armv*l)
|
xscale | arm | armv*l)
|
||||||
# Ignore Arm for now, as we need to consider the version and whether hard-float is supported.
|
# Ignore Arm for now, as we need to consider the version and whether hard-float is supported.
|
||||||
# https://github.com/rust-lang/rustup/pull/593
|
# https://github.com/rust-lang/rustup/pull/593
|
||||||
@@ -515,19 +518,19 @@ case "$(uname -m)" in
|
|||||||
# https://github.com/actions/runner/blob/v2.321.0/.github/workflows/build.yml#L21
|
# https://github.com/actions/runner/blob/v2.321.0/.github/workflows/build.yml#L21
|
||||||
# https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners#supported-architectures-and-operating-systems-for-self-hosted-runners
|
# https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners#supported-architectures-and-operating-systems-for-self-hosted-runners
|
||||||
# So we can assume x86_64 unless it is AArch64 or Arm.
|
# So we can assume x86_64 unless it is AArch64 or Arm.
|
||||||
*) host_arch="x86_64" ;;
|
*) host_arch=x86_64 ;;
|
||||||
esac
|
esac
|
||||||
info "host platform: ${host_arch}_${host_os}"
|
info "host platform: ${host_arch}_${host_os}"
|
||||||
|
|
||||||
home="${HOME}"
|
home="${HOME}"
|
||||||
if [[ "${host_os}" == "windows" ]]; then
|
if [[ "${host_os}" == "windows" ]]; then
|
||||||
if [[ "${home}" == "/home/"* ]]; then
|
if [[ "${home}" == "/home/"* ]]; then
|
||||||
if [[ -d "${home/\/home\//\/c\/Users\/}" ]]; then
|
if [[ -d "${home/\/home\///c/Users/}" ]]; then
|
||||||
# MSYS2 https://github.com/taiki-e/install-action/pull/518#issuecomment-2160736760
|
# MSYS2 https://github.com/taiki-e/install-action/pull/518#issuecomment-2160736760
|
||||||
home="${home/\/home\//\/c\/Users\/}"
|
home="${home/\/home\///c/Users/}"
|
||||||
elif [[ -d "${home/\/home\//\/cygdrive\/c\/Users\/}" ]]; then
|
elif [[ -d "${home/\/home\///cygdrive/c/Users/}" ]]; then
|
||||||
# Cygwin https://github.com/taiki-e/install-action/issues/224#issuecomment-1720196288
|
# Cygwin https://github.com/taiki-e/install-action/issues/224#issuecomment-1720196288
|
||||||
home="${home/\/home\//\/cygdrive\/c\/Users\/}"
|
home="${home/\/home\///cygdrive/c/Users/}"
|
||||||
else
|
else
|
||||||
warn "\$HOME starting /home/ (${home}) on Windows bash is usually fake path, this may cause installation issue"
|
warn "\$HOME starting /home/ (${home}) on Windows bash is usually fake path, this may cause installation issue"
|
||||||
fi
|
fi
|
||||||
@@ -540,37 +543,36 @@ cargo_bin="${CARGO_HOME:-"${home}/.cargo"}/bin"
|
|||||||
# is used ($CARGO_HOME/bin is most likely not included in the PATH), fallback to
|
# is used ($CARGO_HOME/bin is most likely not included in the PATH), fallback to
|
||||||
# $install_action_dir/bin.
|
# $install_action_dir/bin.
|
||||||
if [[ "${host_os}" == "windows" ]]; then
|
if [[ "${host_os}" == "windows" ]]; then
|
||||||
if type -P cargo &>/dev/null; then
|
if type -P cargo >/dev/null; then
|
||||||
info "cargo is located at $(type -P cargo)"
|
info "cargo is located at $(type -P cargo)"
|
||||||
cargo_bin=$(dirname "$(type -P cargo)")
|
cargo_bin=$(dirname -- "$(type -P cargo)")
|
||||||
else
|
else
|
||||||
cargo_bin="${install_action_dir}/bin"
|
cargo_bin="${install_action_dir}/bin"
|
||||||
fi
|
fi
|
||||||
elif [[ ! -e "${cargo_bin}" ]] || [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo"* ]]; then
|
elif [[ ! -e "${cargo_bin}" ]] || [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo"* ]]; then
|
||||||
if type -P cargo &>/dev/null; then
|
if type -P cargo >/dev/null; then
|
||||||
info "cargo is located at $(type -P cargo)"
|
info "cargo is located at $(type -P cargo)"
|
||||||
fi
|
fi
|
||||||
# Moving files to /usr/local/bin requires sudo in some environments, so do not use it: https://github.com/taiki-e/install-action/issues/543
|
# Moving files to /usr/local/bin requires sudo in some environments, so do not use it: https://github.com/taiki-e/install-action/issues/543
|
||||||
cargo_bin="${install_action_dir}/bin"
|
cargo_bin="${install_action_dir}/bin"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
jq_use_b=''
|
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
linux)
|
linux)
|
||||||
if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null || ! type -P tar &>/dev/null; then
|
if ! type -P jq >/dev/null || ! type -P curl >/dev/null || ! type -P tar >/dev/null; then
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
debian | fedora | suse | arch | alpine)
|
debian | fedora | suse | arch | alpine)
|
||||||
echo "::group::Install packages required for installation (jq, curl, and/or tar)"
|
printf '::group::Install packages required for installation (jq, curl, and/or tar)\n'
|
||||||
sys_packages=()
|
sys_packages=()
|
||||||
if ! type -P curl &>/dev/null; then
|
if ! type -P curl >/dev/null; then
|
||||||
sys_packages+=(ca-certificates curl)
|
sys_packages+=(ca-certificates curl)
|
||||||
fi
|
fi
|
||||||
if ! type -P tar &>/dev/null; then
|
if ! type -P tar >/dev/null; then
|
||||||
sys_packages+=(tar)
|
sys_packages+=(tar)
|
||||||
fi
|
fi
|
||||||
if [[ "${dnf:-}" == "yum" ]]; then
|
if [[ "${dnf:-}" == "yum" ]]; then
|
||||||
# On RHEL7-based distribution jq requires EPEL
|
# On RHEL7-based distribution jq requires EPEL
|
||||||
if ! type -P jq &>/dev/null; then
|
if ! type -P jq >/dev/null; then
|
||||||
sys_packages+=(epel-release)
|
sys_packages+=(epel-release)
|
||||||
sys_install "${sys_packages[@]}"
|
sys_install "${sys_packages[@]}"
|
||||||
sys_install jq --enablerepo=epel
|
sys_install jq --enablerepo=epel
|
||||||
@@ -578,7 +580,7 @@ case "${host_os}" in
|
|||||||
sys_install "${sys_packages[@]}"
|
sys_install "${sys_packages[@]}"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
if ! type -P jq &>/dev/null; then
|
if ! type -P jq >/dev/null; then
|
||||||
# https://github.com/taiki-e/install-action/issues/521
|
# https://github.com/taiki-e/install-action/issues/521
|
||||||
if [[ "${base_distro}" == "arch" ]]; then
|
if [[ "${base_distro}" == "arch" ]]; then
|
||||||
sys_packages+=(glibc)
|
sys_packages+=(glibc)
|
||||||
@@ -587,59 +589,50 @@ case "${host_os}" in
|
|||||||
fi
|
fi
|
||||||
sys_install "${sys_packages[@]}"
|
sys_install "${sys_packages[@]}"
|
||||||
fi
|
fi
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
*) warn "install-action requires at least jq and curl on non-Debian/Fedora/SUSE/Arch/Alpine-based Linux" ;;
|
*) warn "install-action requires at least jq and curl on non-Debian/Fedora/SUSE/Arch/Alpine-based Linux" ;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
macos)
|
macos)
|
||||||
if ! type -P jq &>/dev/null || ! type -P curl &>/dev/null; then
|
if ! type -P jq >/dev/null || ! type -P curl >/dev/null; then
|
||||||
warn "install-action requires at least jq and curl on macOS"
|
warn "install-action requires at least jq and curl on macOS"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
windows)
|
windows)
|
||||||
if ! type -P curl &>/dev/null; then
|
if ! type -P curl >/dev/null; then
|
||||||
warn "install-action requires at least curl on Windows"
|
warn "install-action requires at least curl on Windows"
|
||||||
fi
|
fi
|
||||||
|
if [[ -f "${install_action_dir}/jq/bin/jq.exe" ]]; then
|
||||||
|
jq() { "${install_action_dir}/jq/bin/jq.exe" -b "$@"; }
|
||||||
|
elif type -P jq >/dev/null; then
|
||||||
# https://github.com/jqlang/jq/issues/1854
|
# https://github.com/jqlang/jq/issues/1854
|
||||||
jq_use_b=1
|
_tmp=$(jq -r .a <<<'{}')
|
||||||
jq="${install_action_dir}/jq/bin/jq.exe"
|
if [[ "${_tmp}" != "null" ]]; then
|
||||||
if [[ ! -f "${jq}" ]]; then
|
_tmp=$(jq -b -r .a 2>/dev/null <<<'{}' || true)
|
||||||
jq_version=$(jq --version || echo "")
|
|
||||||
case "${jq_version}" in
|
|
||||||
jq-1.[7-9]* | jq-1.[1-9][0-9]*) jq='' ;;
|
|
||||||
*)
|
|
||||||
_tmp=$(jq <<<"{}" -r .a || echo "")
|
|
||||||
if [[ "${_tmp}" == "null" ]]; then
|
if [[ "${_tmp}" == "null" ]]; then
|
||||||
jq=''
|
jq() { command jq -b "$@"; }
|
||||||
jq_use_b=''
|
|
||||||
else
|
else
|
||||||
info "old jq (${jq_version}) has bug on Windows; downloading jq 1.7 (will not be added to PATH)"
|
jq() { command jq "$@" | tr -d '\r'; }
|
||||||
mkdir -p "${install_action_dir}/jq/bin"
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
printf '::group::Install packages required for installation (jq)\n'
|
||||||
|
mkdir -p -- "${install_action_dir}/jq/bin"
|
||||||
url='https://github.com/jqlang/jq/releases/download/jq-1.7.1/jq-windows-amd64.exe'
|
url='https://github.com/jqlang/jq/releases/download/jq-1.7.1/jq-windows-amd64.exe'
|
||||||
checksum='7451fbbf37feffb9bf262bd97c54f0da558c63f0748e64152dd87b0a07b6d6ab'
|
checksum='7451fbbf37feffb9bf262bd97c54f0da558c63f0748e64152dd87b0a07b6d6ab'
|
||||||
(
|
(
|
||||||
cd "${install_action_dir}/jq/bin"
|
cd -- "${install_action_dir}/jq/bin"
|
||||||
download_and_checksum "${url}" "${checksum}"
|
download_and_checksum "${url}" "${checksum}"
|
||||||
mv tmp jq.exe
|
mv -- tmp jq.exe
|
||||||
)
|
)
|
||||||
echo
|
printf '::endgroup::\n'
|
||||||
fi
|
jq() { "${install_action_dir}/jq/bin/jq.exe" -b "$@"; }
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*) bail "unsupported host OS '${host_os}'" ;;
|
*) bail "unsupported host OS '${host_os}'" ;;
|
||||||
esac
|
esac
|
||||||
call_jq() {
|
|
||||||
# https://github.com/jqlang/jq/issues/1854
|
|
||||||
if [[ -n "${jq_use_b}" ]]; then
|
|
||||||
"${jq:-jq}" -b "$@"
|
|
||||||
else
|
|
||||||
"${jq:-jq}" "$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
unsupported_tools=()
|
unsupported_tools=()
|
||||||
for tool in "${tools[@]}"; do
|
for tool in "${tools[@]}"; do
|
||||||
@@ -653,7 +646,7 @@ for tool in "${tools[@]}"; do
|
|||||||
bail "install-action v2 does not support semver pre-release and build-metadata: '${version}'; if you need these supports again, please submit an issue at <https://github.com/taiki-e/install-action>"
|
bail "install-action v2 does not support semver pre-release and build-metadata: '${version}'; if you need these supports again, please submit an issue at <https://github.com/taiki-e/install-action>"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
version="latest"
|
version=latest
|
||||||
fi
|
fi
|
||||||
installed_bin=()
|
installed_bin=()
|
||||||
case "${tool}" in
|
case "${tool}" in
|
||||||
@@ -666,32 +659,32 @@ for tool in "${tools[@]}"; do
|
|||||||
include_dir="${install_action_dir}/include"
|
include_dir="${install_action_dir}/include"
|
||||||
init_install_action_bin_dir
|
init_install_action_bin_dir
|
||||||
if [[ ! -e "${include_dir}" ]]; then
|
if [[ ! -e "${include_dir}" ]]; then
|
||||||
mkdir -p "${include_dir}"
|
mkdir -p -- "${include_dir}"
|
||||||
fi
|
fi
|
||||||
if ! type -P unzip &>/dev/null; then
|
if ! type -P unzip >/dev/null; then
|
||||||
case "${base_distro}" in
|
case "${base_distro}" in
|
||||||
debian | fedora | suse | arch | alpine)
|
debian | fedora | suse | arch | alpine)
|
||||||
echo "::group::Install packages required for installation (unzip)"
|
printf '::group::Install packages required for installation (unzip)\n'
|
||||||
sys_install unzip
|
sys_install unzip
|
||||||
echo "::endgroup::"
|
printf '::endgroup::\n'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
mkdir -p "${tmp_dir}"
|
mkdir -p -- "${tmp_dir}"
|
||||||
(
|
(
|
||||||
cd "${tmp_dir}"
|
cd -- "${tmp_dir}"
|
||||||
download_and_checksum "${url}" "${checksum}"
|
download_and_checksum "${url}" "${checksum}"
|
||||||
unzip -q tmp
|
unzip -q tmp
|
||||||
mv "bin/protoc${exe}" "${bin_dir}/"
|
mv -- "bin/protoc${exe}" "${bin_dir}/"
|
||||||
mkdir -p "${include_dir}/"
|
mkdir -p -- "${include_dir}/"
|
||||||
cp -r include/. "${include_dir}/"
|
cp -r -- include/. "${include_dir}/"
|
||||||
if [[ -z "${PROTOC:-}" ]]; then
|
if [[ -z "${PROTOC:-}" ]]; then
|
||||||
_bin_dir=$(canonicalize_windows_path "${bin_dir}")
|
_bin_dir=$(canonicalize_windows_path "${bin_dir}")
|
||||||
info "setting PROTOC environment variable to '${_bin_dir}/protoc${exe}'"
|
info "setting PROTOC environment variable to '${_bin_dir}/protoc${exe}'"
|
||||||
echo "PROTOC=${_bin_dir}/protoc${exe}" >>"${GITHUB_ENV}"
|
printf '%s\n' "PROTOC=${_bin_dir}/protoc${exe}" >>"${GITHUB_ENV}"
|
||||||
fi
|
fi
|
||||||
)
|
)
|
||||||
rm -rf "${tmp_dir}"
|
rm -rf -- "${tmp_dir}"
|
||||||
installed_bin=("${tool}${exe}")
|
installed_bin=("${tool}${exe}")
|
||||||
;;
|
;;
|
||||||
valgrind)
|
valgrind)
|
||||||
@@ -702,7 +695,7 @@ for tool in "${tools[@]}"; do
|
|||||||
esac
|
esac
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
linux) ;;
|
linux) ;;
|
||||||
macos | windows) bail "${tool} for non-linux is not supported yet by this action" ;;
|
macos | windows) bail "${tool} for non-Linux is not supported yet by this action" ;;
|
||||||
*) bail "unsupported host OS '${host_os}' for ${tool}" ;;
|
*) bail "unsupported host OS '${host_os}' for ${tool}" ;;
|
||||||
esac
|
esac
|
||||||
# libc6-dbg is needed to run Valgrind
|
# libc6-dbg is needed to run Valgrind
|
||||||
@@ -718,13 +711,13 @@ for tool in "${tools[@]}"; do
|
|||||||
*) warn "specifying the version of ${tool} is not supported by this action" ;;
|
*) warn "specifying the version of ${tool} is not supported by this action" ;;
|
||||||
esac
|
esac
|
||||||
install_cargo_binstall
|
install_cargo_binstall
|
||||||
echo
|
printf '\n'
|
||||||
continue
|
continue
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
# Handle aliases
|
# Handle aliases
|
||||||
case "${tool}" in
|
case "${tool}" in
|
||||||
cargo-nextest | nextest) tool="cargo-nextest" ;;
|
cargo-nextest | nextest) tool=cargo-nextest ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# Use cargo-binstall fallback if tool is not available.
|
# Use cargo-binstall fallback if tool is not available.
|
||||||
@@ -740,9 +733,9 @@ for tool in "${tools[@]}"; do
|
|||||||
read_manifest "${tool}" "${version}"
|
read_manifest "${tool}" "${version}"
|
||||||
if [[ "${download_info}" == "null" ]]; then
|
if [[ "${download_info}" == "null" ]]; then
|
||||||
if [[ "${rust_crate}" == "null" ]]; then
|
if [[ "${rust_crate}" == "null" ]]; then
|
||||||
bail "${tool}@${version} for '${host_os}' is not supported"
|
bail "${tool}@${version} for '${host_arch}_${host_os}' is not supported"
|
||||||
fi
|
fi
|
||||||
warn "${tool}@${version} for '${host_os}' is not supported; fallback to cargo-binstall"
|
warn "${tool}@${version} for '${host_arch}_${host_os}' is not supported; fallback to cargo-binstall"
|
||||||
case "${version}" in
|
case "${version}" in
|
||||||
latest) unsupported_tools+=("${rust_crate}") ;;
|
latest) unsupported_tools+=("${rust_crate}") ;;
|
||||||
*) unsupported_tools+=("${rust_crate}@${version}") ;;
|
*) unsupported_tools+=("${rust_crate}@${version}") ;;
|
||||||
@@ -757,7 +750,7 @@ for tool in "${tools[@]}"; do
|
|||||||
shellcheck)
|
shellcheck)
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
linux)
|
linux)
|
||||||
if type -P shellcheck &>/dev/null; then
|
if type -P shellcheck >/dev/null; then
|
||||||
apt_remove -y shellcheck
|
apt_remove -y shellcheck
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
@@ -771,12 +764,12 @@ for tool in "${tools[@]}"; do
|
|||||||
|
|
||||||
tool_bin_stems=()
|
tool_bin_stems=()
|
||||||
for tool_bin in "${installed_bin[@]}"; do
|
for tool_bin in "${installed_bin[@]}"; do
|
||||||
tool_bin=$(basename "${tool_bin}")
|
tool_bin=$(basename -- "${tool_bin}")
|
||||||
tool_bin_stem="${tool_bin%.exe}"
|
tool_bin_stem="${tool_bin%.exe}"
|
||||||
installed_at=$(type -P "${tool_bin}" || echo "")
|
installed_at=$(type -P "${tool_bin}" || true)
|
||||||
if [[ -z "${installed_at}" ]]; then
|
if [[ -z "${installed_at}" ]]; then
|
||||||
tool_bin="${tool_bin_stem}"
|
tool_bin="${tool_bin_stem}"
|
||||||
installed_at=$(type -P "${tool_bin}" || echo "")
|
installed_at=$(type -P "${tool_bin}" || true)
|
||||||
fi
|
fi
|
||||||
if [[ -n "${installed_at}" ]]; then
|
if [[ -n "${installed_at}" ]]; then
|
||||||
info "${tool_bin_stem} installed at ${installed_at}"
|
info "${tool_bin_stem} installed at ${installed_at}"
|
||||||
@@ -818,7 +811,7 @@ for tool in "${tools[@]}"; do
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
echo
|
printf '\n'
|
||||||
done
|
done
|
||||||
|
|
||||||
if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
|
if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
|
||||||
@@ -840,6 +833,6 @@ if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
|
|||||||
_bin_dir=$(canonicalize_windows_path "${home}/.cargo/bin")
|
_bin_dir=$(canonicalize_windows_path "${home}/.cargo/bin")
|
||||||
# TODO: avoid this when already added
|
# TODO: avoid this when already added
|
||||||
info "adding '${_bin_dir}' to PATH"
|
info "adding '${_bin_dir}' to PATH"
|
||||||
echo "${_bin_dir}" >>"${GITHUB_PATH}"
|
printf '%s\n' "${_bin_dir}" >>"${GITHUB_PATH}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|||||||
22
manifests/cargo-audit.json
generated
22
manifests/cargo-audit.json
generated
@@ -20,10 +20,28 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[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)",
|
"license_markdown": "[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)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.21.0"
|
"version": "0.21.1"
|
||||||
},
|
},
|
||||||
"0.21": {
|
"0.21": {
|
||||||
"version": "0.21.0"
|
"version": "0.21.1"
|
||||||
|
},
|
||||||
|
"0.21.1": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD383807A86B60",
|
||||||
|
"checksum": "e1d057a43028cb2359adcb75029e345b5791fbd2a1a01a3b8f16521035662cf3"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3837D203A3C3",
|
||||||
|
"checksum": "ca21223691975d97a2442623a4d90e933d349199a728fdabaf98124ff65ee53f"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD383870DE65E0",
|
||||||
|
"checksum": "cb90ebf6c76bdf7014fb0114b3bc897917ce0ea5ecaf16f7dc7009612941dace"
|
||||||
|
},
|
||||||
|
"aarch64_linux_gnu": {
|
||||||
|
"etag": "0x8DD383809DEED88",
|
||||||
|
"checksum": "bd9a9ceb4887f28c8ace1a35da39818cbdcf98b1088bcd47544bff3a07e856bf"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.21.0": {
|
"0.21.0": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
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)",
|
"license_markdown": "[GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "1.10.19"
|
"version": "1.10.22"
|
||||||
},
|
},
|
||||||
"1.10.19": {
|
"1.10.22": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
"etag": "0x8DD2C8160F75960",
|
"etag": "0x8DD38568770C382",
|
||||||
"checksum": "44f44538682b103312b37961edbd06428dcbf927a0afc3cc89062d45bc08d688"
|
"checksum": "74d7c647c7e60bb8464fa551702fdd38a7241f5cedb2c4edc3b11639cd1dae47"
|
||||||
},
|
},
|
||||||
"x86_64_macos": {
|
"x86_64_macos": {
|
||||||
"etag": "0x8DD2C811A50D857",
|
"etag": "0x8DD38560D10F1DA",
|
||||||
"checksum": "a2ae7d9ea8a4c58d5c5d8405cc3eed80e3b3027dcce16fd2f36116cb2926080f"
|
"checksum": "0abaad286197df9e5a3d25bfdca682fa91fef65fef13f42e20ec24a98165c71a"
|
||||||
},
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DD2C821B327936",
|
"etag": "0x8DD3857BFED715A",
|
||||||
"checksum": "f80e1f22b452a3069aec615ed03bc74a2a9e57e1c92d09868537dc0cd852da8f"
|
"checksum": "36d6ea24db049a36d0eab33003e6ee007955f01a8ce89fef46d4026adb86db96"
|
||||||
},
|
},
|
||||||
"aarch64_linux_musl": {
|
"aarch64_linux_musl": {
|
||||||
"etag": "0x8DD2C811BD72089",
|
"etag": "0x8DD38563219A538",
|
||||||
"checksum": "7e95454e15278eb746790e67bb3f3620e3f4ded13956e7887f6f9a8b1f21c1ab"
|
"checksum": "b8c32b1b007482f42f6c4b5f8cfeb168f9674ec6448bfa29ae0c4ba01b7a370b"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD2C814B56C94F",
|
"etag": "0x8DD3856413081F7",
|
||||||
"checksum": "e6abcd57e2918f50f85117e80799ef525876b4e109a5126561ed69f89bb79ee5"
|
"checksum": "97ce4a2f18181f052dda266b042d8bb220e48ffe40ca75e796ae4c5e418b9e01"
|
||||||
},
|
},
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DD2C8225C8456F",
|
"etag": "0x8DD3857931A5667",
|
||||||
"checksum": "285891e236fc3e12dff687e15cf69805fc9edbc20eb8fb1e046065b59f711b46"
|
"checksum": "d86dfba0c13f7c84724e1d21fcec35b8a42633733215a61d1ee183455b12db5e"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
201
manifests/cargo-cyclonedx.json
generated
201
manifests/cargo-cyclonedx.json
generated
@@ -1,33 +1,208 @@
|
|||||||
{
|
{
|
||||||
"rust_crate": "cargo-cyclonedx",
|
"rust_crate": "cargo-cyclonedx",
|
||||||
"template": {
|
"template": null,
|
||||||
"x86_64_linux_gnu": {
|
|
||||||
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-${version}/cargo-cyclonedx-linux-amd64.tar.gz"
|
|
||||||
},
|
|
||||||
"x86_64_macos": {
|
|
||||||
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-${version}/cargo-cyclonedx-Darwin-x86_64.tar.gz"
|
|
||||||
},
|
|
||||||
"x86_64_windows": {
|
|
||||||
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-${version}/cargo-cyclonedx-Win-x86_64.zip"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/CycloneDX/cyclonedx-rust-cargo/blob/main/LICENSE)",
|
"license_markdown": "[Apache-2.0](https://github.com/CycloneDX/cyclonedx-rust-cargo/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.5.0"
|
"version": "0.5.7"
|
||||||
},
|
},
|
||||||
"0.5": {
|
"0.5": {
|
||||||
"version": "0.5.0"
|
"version": "0.5.7"
|
||||||
|
},
|
||||||
|
"0.5.7": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.7/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DD10E0A0B0BBB1",
|
||||||
|
"checksum": "8ffbc91fa29b82f0b0438939a0421a164a0297b5387208f6170c793bdd22a4c9",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.7/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DD10E0A03AD770",
|
||||||
|
"checksum": "f96401f427ec096162493f85ecf67d907ff2fc845d14de3e8fbf62660858afab",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.7/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DD10E0A0B6CF5E",
|
||||||
|
"checksum": "f9f39802660c25fa2a841ca098158462b36e59567ed3ea07a57b23bed63f6474",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.7/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DD10E0A0395289",
|
||||||
|
"checksum": "39ae80025f67a98974b4bd9e072ea09d42d3e11d05ef1375e6ff6b8345cf3cfe",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.5.6": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.6/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DCFF38D5B5ABE0",
|
||||||
|
"checksum": "2238e1be087623eb139fa03896271612f9bb5d0fe3c67bdc5bcdccae078d53a4",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.6/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DCFF38D55CA58A",
|
||||||
|
"checksum": "66d5b8550ccdc07161fa2052e64e63710717978a32ceefe3c780e17b9817d686",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.6/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DCFF38D5A5916F",
|
||||||
|
"checksum": "bdd6048a476edaa59e15902ff277f906f28ab74267b44b02b6019242e1ad7f50",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.6/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DCFF38D561F6C1",
|
||||||
|
"checksum": "77d1d014e9ef6a9b0e9481b80c35f4d22bf446ddabfbbc9ebd2e17b4167343f1",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.5.5": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.5/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DCB605BF2376BB",
|
||||||
|
"checksum": "e0a872a5a8e32b9621334636e9da444d70527fb138aa75380e0dc20db8b0714b",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.5/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DCB605BECCDE9E",
|
||||||
|
"checksum": "98beb669323396428b5c6c7003adc4235207442c7b025743366ee98759b2c3a6",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.5/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DCB605BF0BEA8D",
|
||||||
|
"checksum": "7b4507cb8fb260df35bed0ad59f675d569f9bde3423228e8b44c7c378876a410",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.5/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DCB605BEC91251",
|
||||||
|
"checksum": "c296b0821c02ad13cbea6a7173ba6c37fa777acc7d066c5ff8570a600aeb62a7",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.5.4": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.4/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DCA65134CEC9A1",
|
||||||
|
"checksum": "8a499153bf20c2e6c180b21404f0a0c8b229f4c254c4b5d1623ae15d130afe49",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.4/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DCA651345F6E35",
|
||||||
|
"checksum": "a88e604e696f806559b5a3ade35dccfe0baee885b4e5ad0ef34e280d7073c1c7",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.4/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DCA65134B6A1E2",
|
||||||
|
"checksum": "6f42f40bb0a7dd86337cdd3f9dc698167b601b077eaf199161a4e38d209f003a",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.4/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DCA65134508ADB",
|
||||||
|
"checksum": "e8751fb79e8dd33286e85acd3ac34af9ecc7a36e634c35720ed3b302b2a936b0",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.5.3": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.3/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DC84D1C05C733F",
|
||||||
|
"checksum": "d303058cfdd5151da7645cc642f0d64e9b4e6ce90cfb8e4955329c58c887114b",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.3/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DC84D1C1F0DBBC",
|
||||||
|
"checksum": "e7e19ae5d6f938912c87ea57e27d1549197c4f30ea9e5814ee7dc46d3004a945",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.3/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DC84D1C1809711",
|
||||||
|
"checksum": "abc9408ea8239f6a35be92c1ca34d759a12e6e2b804191fbd39e515450c7a104",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.3/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DC84D1C2D24E48",
|
||||||
|
"checksum": "7e3ebf1d9074d5b580561509e30c31bb5b80c6cd3b9df4516c49c1e1062c6391",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.5.2": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.2/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DC849208047BE6",
|
||||||
|
"checksum": "4018528cd125a8b0f4d1f990a06a67942a6091d6af519af4ada05918eeea70ef",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.2/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DC8492096A685B",
|
||||||
|
"checksum": "aae1a9127a1a7651ec8f648b6924b3139171d2e9faf6548df962feb89f161292",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.2/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DC849208F850B0",
|
||||||
|
"checksum": "f6961d56104fa7755bd16590bd98899822a3e06037a88c6899a56803507671c3",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.2/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DC84920A40EAD3",
|
||||||
|
"checksum": "f13ff16d6593395e0a18fc41e67cdba7bb2b2cab532b6e990d79e1be2e2a9222",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.5.1": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.1/cargo-cyclonedx-x86_64-unknown-linux-musl.tar.xz",
|
||||||
|
"etag": "0x8DC7B5D4ACF5327",
|
||||||
|
"checksum": "e061a15a7dedcea232acbe6de66a6e8494df0a3609ef5435432b06cf2c3a9cb3",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-unknown-linux-musl/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.1/cargo-cyclonedx-x86_64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DC7B5D4C6CB2FB",
|
||||||
|
"checksum": "eedd73b2cf7a1a1f82e991541ea3ab3e15f8393d3267e6775dbcdc3529f04d5e",
|
||||||
|
"bin": "cargo-cyclonedx-x86_64-apple-darwin/cargo-cyclonedx"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.1/cargo-cyclonedx-x86_64-pc-windows-msvc.zip",
|
||||||
|
"etag": "0x8DC7B5D4BF0E261",
|
||||||
|
"checksum": "b0c772f9d0e99d89eab0e39955150b09665b4e0a2417a4a43638d5ad1753a96a",
|
||||||
|
"bin": "cargo-cyclonedx.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.1/cargo-cyclonedx-aarch64-apple-darwin.tar.xz",
|
||||||
|
"etag": "0x8DC7B5D4D6A40F2",
|
||||||
|
"checksum": "bc3857a058cc01ef92a30071084acf20cf6067a23cf0d5569b629276a441e6ee",
|
||||||
|
"bin": "cargo-cyclonedx-aarch64-apple-darwin/cargo-cyclonedx"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.5.0": {
|
"0.5.0": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_gnu": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.0/cargo-cyclonedx-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DC3A43C920B085",
|
"etag": "0x8DC3A43C920B085",
|
||||||
"checksum": "7daa885e9b6f59bf7674a2972bf1f37d9e21ab7461c3e2f9c59e99a966ab6026"
|
"checksum": "7daa885e9b6f59bf7674a2972bf1f37d9e21ab7461c3e2f9c59e99a966ab6026"
|
||||||
},
|
},
|
||||||
"x86_64_macos": {
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.0/cargo-cyclonedx-Darwin-x86_64.tar.gz",
|
||||||
"etag": "0x8DC3A43C9165BEA",
|
"etag": "0x8DC3A43C9165BEA",
|
||||||
"checksum": "70b197f8095fe2473baef1d96dd4409abb1aef20aeeea00f8a0cbebc25528ddb"
|
"checksum": "70b197f8095fe2473baef1d96dd4409abb1aef20aeeea00f8a0cbebc25528ddb"
|
||||||
},
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/CycloneDX/cyclonedx-rust-cargo/releases/download/cargo-cyclonedx-0.5.0/cargo-cyclonedx-Win-x86_64.zip",
|
||||||
"etag": "0x8DC3A43C95B54A5",
|
"etag": "0x8DC3A43C95B54A5",
|
||||||
"checksum": "11e063c29bdd85ceb061b30aa11073238a8c93302b1ff3f5ac37e91ac90b425a"
|
"checksum": "11e063c29bdd85ceb061b30aa11073238a8c93302b1ff3f5ac37e91ac90b425a"
|
||||||
}
|
}
|
||||||
|
|||||||
26
manifests/cargo-deny.json
generated
26
manifests/cargo-deny.json
generated
@@ -24,10 +24,32 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[MIT](https://github.com/EmbarkStudios/cargo-deny/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/main/LICENSE-APACHE)",
|
"license_markdown": "[MIT](https://github.com/EmbarkStudios/cargo-deny/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/main/LICENSE-APACHE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.16.3"
|
"version": "0.16.4"
|
||||||
},
|
},
|
||||||
"0.16": {
|
"0.16": {
|
||||||
"version": "0.16.3"
|
"version": "0.16.4"
|
||||||
|
},
|
||||||
|
"0.16.4": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3859CBF28AAD",
|
||||||
|
"checksum": "28b7f8e12df46a9ce186547e38278c851905fc4bda59a0cc57d2aade9fdf6962"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3859A8D7C4BE",
|
||||||
|
"checksum": "01b43782acc7d6900b364fd588897e0ea5874b3583be40bfcf6cad8ad2c97aaf"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD385A21433507",
|
||||||
|
"checksum": "11a7ab2ea060a9e6141a3fbab8a6a9bbe30b97ce87fe4fbbb8f6c3a4b8410681"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3859CD936886",
|
||||||
|
"checksum": "56bbe9d8238480472325b019d6ab2eb3ed2601664826f67678ed0a5b8c9d5ba0"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3859A47FDF9C",
|
||||||
|
"checksum": "6b91a75fb4eecc606757125f1cbea103df81b833bafbdceda1611bfa7737a364"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.16.3": {
|
"0.16.3": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
36
manifests/cargo-hack.json
generated
36
manifests/cargo-hack.json
generated
@@ -3,10 +3,42 @@
|
|||||||
"template": null,
|
"template": null,
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/main/LICENSE-MIT)",
|
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/main/LICENSE-MIT)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.6.33"
|
"version": "0.6.34"
|
||||||
},
|
},
|
||||||
"0.6": {
|
"0.6": {
|
||||||
"version": "0.6.33"
|
"version": "0.6.34"
|
||||||
|
},
|
||||||
|
"0.6.34": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.34/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
|
||||||
|
"etag": "0x8DD364BF6437B65",
|
||||||
|
"checksum": "7b58e29544ae7b357deda5118a17053e4929f94f8d8595215d27cbbb415c47a5"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.34/cargo-hack-x86_64-apple-darwin.tar.gz",
|
||||||
|
"etag": "0x8DD364C545B2CF1",
|
||||||
|
"checksum": "4fc72e4b3e1d7c7063efeddd4ebc196b4ee062e9b772dad24bebf8cb15749e21"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.34/cargo-hack-x86_64-pc-windows-msvc.tar.gz",
|
||||||
|
"etag": "0x8DD364C4A143D6D",
|
||||||
|
"checksum": "6206ca07f99945f58765d1669fb2a995d96d809424ff7424257ce5f0fad23401"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.34/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
|
||||||
|
"etag": "0x8DD364BFC48B3B7",
|
||||||
|
"checksum": "2b30401f9eb7664affdda7ce13b5d8421e2ea5ea74a854a71679ff68bf766761"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.34/cargo-hack-aarch64-apple-darwin.tar.gz",
|
||||||
|
"etag": "0x8DD364C24072F24",
|
||||||
|
"checksum": "f2e88526e44b5934b5a0a2aa10fbf621ec44fe509c6ac6a82e1d49fa41d70943"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.34/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
|
||||||
|
"etag": "0x8DD364C3F0E09C1",
|
||||||
|
"checksum": "9c9903aa9ae2caaf38c37a0375e18afc50da1c1ca69c3f89b4219b530ab59a0c"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.6.33": {
|
"0.6.33": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
28
manifests/cargo-lambda.json
generated
28
manifests/cargo-lambda.json
generated
@@ -20,13 +20,35 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[MIT](https://github.com/cargo-lambda/cargo-lambda/blob/main/LICENSE)",
|
"license_markdown": "[MIT](https://github.com/cargo-lambda/cargo-lambda/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "1.6.2"
|
"version": "1.6.3"
|
||||||
},
|
},
|
||||||
"1": {
|
"1": {
|
||||||
"version": "1.6.2"
|
"version": "1.6.3"
|
||||||
},
|
},
|
||||||
"1.6": {
|
"1.6": {
|
||||||
"version": "1.6.2"
|
"version": "1.6.3"
|
||||||
|
},
|
||||||
|
"1.6.3": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3F12D1829838",
|
||||||
|
"checksum": "670a1cf1ca2c01d30c8dd06ab7faae36158add03b0e9b2fbf0d1bbf8b8edf8e8"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3F12D26A45C7",
|
||||||
|
"checksum": "1312ae530f4c3d8701640e159a19f2943461c81865890cf8d08d9807afcf3ca0"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3F12D30451BF",
|
||||||
|
"checksum": "5274aea23d3e916b4939b817634254662b9b09899a0442c0b5efe7bc89891496"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3F12D3AE7838",
|
||||||
|
"checksum": "eda5196b2ea453fc357d1626720e79655fa64ef5e28a7e691698a268ebde5a34"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3F12D4480F87",
|
||||||
|
"checksum": "4494a562a4372f670bd6975484cc4d33334789961131553c81d35f953a3f0287"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"1.6.2": {
|
"1.6.2": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
26
manifests/cargo-llvm-cov.json
generated
26
manifests/cargo-llvm-cov.json
generated
@@ -19,10 +19,32 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/main/LICENSE-MIT)",
|
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/main/LICENSE-MIT)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.6.15"
|
"version": "0.6.16"
|
||||||
},
|
},
|
||||||
"0.6": {
|
"0.6": {
|
||||||
"version": "0.6.15"
|
"version": "0.6.16"
|
||||||
|
},
|
||||||
|
"0.6.16": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD364B5D41374E",
|
||||||
|
"checksum": "2145d09b8263ba8bdf32f362919e0e2bb8170404bf6edd380b7b442f9017df58"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD364B96067E67",
|
||||||
|
"checksum": "337c619978c7595113353db5775cf953052aba85746f884085e31d2757a03e87"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD364BA6E069FE",
|
||||||
|
"checksum": "39f9ee12b9673f081bee6b250a186fbf438bb3f4b8897417d23ee74b199e02ce"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD364B61561F48",
|
||||||
|
"checksum": "02a3a2d9c5de145319bd01f7ae63b6a76f0b57229887859a79b9fc0f57978b33"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD364B8C4E0B3B",
|
||||||
|
"checksum": "f1ab5f573d6c49d463f8117501462e2a6a0cead9124b68b4a2fbd8a3f5aad7ba"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.6.15": {
|
"0.6.15": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
22
manifests/cargo-make.json
generated
22
manifests/cargo-make.json
generated
@@ -20,10 +20,28 @@
|
|||||||
},
|
},
|
||||||
"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.23"
|
"version": "0.37.24"
|
||||||
},
|
},
|
||||||
"0.37": {
|
"0.37": {
|
||||||
"version": "0.37.23"
|
"version": "0.37.24"
|
||||||
|
},
|
||||||
|
"0.37.24": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD37D36A8C5F07",
|
||||||
|
"checksum": "ff76969f0caab39c56d168b94b2540fde34609aa6562d555081818ece387b005"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD37D2ECB9F67A",
|
||||||
|
"checksum": "afd10db16ce089e0208d4829d46351833d9eb61f3181452a38a2a089bafedc31"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD37D379E8369F",
|
||||||
|
"checksum": "f7c757c7e147023ac86d80b134e5a59e0ed8ff032e39be3464cc4aad1e5e0f33"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD37D2EB99C51D",
|
||||||
|
"checksum": "823fe51d2baa5679a5dfd33c703d0176374f8f023a2ee950f2e03dc4f31ee523"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.37.23": {
|
"0.37.23": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
27
manifests/cargo-nextest.json
generated
27
manifests/cargo-nextest.json
generated
@@ -19,10 +19,33 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[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)",
|
"license_markdown": "[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)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.9.87"
|
"version": "0.9.88"
|
||||||
},
|
},
|
||||||
"0.9": {
|
"0.9": {
|
||||||
"version": "0.9.87"
|
"version": "0.9.88"
|
||||||
|
},
|
||||||
|
"0.9.88": {
|
||||||
|
"previous_stable_version": "0.9.87",
|
||||||
|
"x86_64_linux_gnu": {
|
||||||
|
"etag": "0x8DD35B614AADEF1",
|
||||||
|
"checksum": "6fdb196e5643d50cad6daeefea5c978fff4904f5593eecba472f5ea3150e2aa0"
|
||||||
|
},
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD35B63691ECBA",
|
||||||
|
"checksum": "6fd7676908b4211f12f6298726544509fcb8c6b49a74bacb755d002260b3172c"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD35B6411A656E",
|
||||||
|
"checksum": "fe12274625473fe3c9895e28550364fb0afd1faea4e222c36a79b0c1ce1933ae"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD35B657950DD1",
|
||||||
|
"checksum": "ddc050a9c52db279bc2a532edf374633c27fb04a4cff679e574a6a19171d6d99"
|
||||||
|
},
|
||||||
|
"aarch64_linux_gnu": {
|
||||||
|
"etag": "0x8DD35B62BE93E0B",
|
||||||
|
"checksum": "040c1fd58f8853a2104f64c2cc1e7c66bfb48b72637ab1e72027375672d94b6c"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.9.87": {
|
"0.9.87": {
|
||||||
"previous_stable_version": "0.9.86",
|
"previous_stable_version": "0.9.86",
|
||||||
|
|||||||
62
manifests/cargo-semver-checks.json
generated
62
manifests/cargo-semver-checks.json
generated
@@ -10,13 +10,41 @@
|
|||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"url": "https://github.com/obi1kenobi/cargo-semver-checks/releases/download/v${version}/cargo-semver-checks-x86_64-pc-windows-msvc.tar.gz"
|
"url": "https://github.com/obi1kenobi/cargo-semver-checks/releases/download/v${version}/cargo-semver-checks-x86_64-pc-windows-msvc.tar.gz"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"url": "https://github.com/obi1kenobi/cargo-semver-checks/releases/download/v${version}/cargo-semver-checks-aarch64-unknown-linux-musl.tar.gz"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"url": "https://github.com/obi1kenobi/cargo-semver-checks/releases/download/v${version}/cargo-semver-checks-aarch64-apple-darwin.tar.gz"
|
"url": "https://github.com/obi1kenobi/cargo-semver-checks/releases/download/v${version}/cargo-semver-checks-aarch64-apple-darwin.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/obi1kenobi/cargo-semver-checks/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/obi1kenobi/cargo-semver-checks/blob/main/LICENSE-MIT)",
|
"license_markdown": "[Apache-2.0](https://github.com/obi1kenobi/cargo-semver-checks/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/obi1kenobi/cargo-semver-checks/blob/main/LICENSE-MIT)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.38.0"
|
"version": "0.39.0"
|
||||||
|
},
|
||||||
|
"0.39": {
|
||||||
|
"version": "0.39.0"
|
||||||
|
},
|
||||||
|
"0.39.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3FB5CCC38EAA",
|
||||||
|
"checksum": "3e6e799c5c87e78abae791c331f4001d7671b7aaec67156cda031eaf8ee5c5d4"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3FB5C91AF9C3",
|
||||||
|
"checksum": "fdbe4491961272fcef1551b0d83da30408fd213277b756da0e484ef861f6012e"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3FB69C87970D",
|
||||||
|
"checksum": "8308c1fa2ff5c69f99ef22840d3afd69381ff1dbdb7e1641659f423f2b2f2b8b"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3FB5CFC554D1",
|
||||||
|
"checksum": "e982d2bc0ef2d50f18b8b839b9bb4958b539c69dc109a6d0fb884e27522522f7"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3FB5E4E07CA5",
|
||||||
|
"checksum": "4810ea43b6a922fd89fd945d8434c8560b6faf5249b28b4df3bada152b0fe449"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.38": {
|
"0.38": {
|
||||||
"version": "0.38.0"
|
"version": "0.38.0"
|
||||||
@@ -34,6 +62,10 @@
|
|||||||
"etag": "0x8DD1A0209F8BC7D",
|
"etag": "0x8DD1A0209F8BC7D",
|
||||||
"checksum": "5924c0d179cd9c4a65bad83c084edbb77abf73b6b080da5b4a7973555d1443ad"
|
"checksum": "5924c0d179cd9c4a65bad83c084edbb77abf73b6b080da5b4a7973555d1443ad"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD1A013E12CB5B",
|
||||||
|
"checksum": "4aa9525fd79bb924691f44f92f8cae56551a349fa2fd2c20444970d14361b693"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD1A011FCB1234",
|
"etag": "0x8DD1A011FCB1234",
|
||||||
"checksum": "bc8b915d202b673398a2e04fb0baf9e1d7b7a41a1b4cc94b30485c4cc932b72c"
|
"checksum": "bc8b915d202b673398a2e04fb0baf9e1d7b7a41a1b4cc94b30485c4cc932b72c"
|
||||||
@@ -55,6 +87,10 @@
|
|||||||
"etag": "0x8DD14E13C83131B",
|
"etag": "0x8DD14E13C83131B",
|
||||||
"checksum": "e950eb36af127607fdc05844f116014dda0a2cbe2718a7f85f82fe7b79c2265e"
|
"checksum": "e950eb36af127607fdc05844f116014dda0a2cbe2718a7f85f82fe7b79c2265e"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD14E087A842E5",
|
||||||
|
"checksum": "06155b62e3de53610028a14c87c267548d35a65aae90845d19dcf0336279504d"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD14E092AB25AE",
|
"etag": "0x8DD14E092AB25AE",
|
||||||
"checksum": "e20ddfa756eff8eee87cc3b5efe9dd30b1640e0bff94be8808fc5020c921aad1"
|
"checksum": "e20ddfa756eff8eee87cc3b5efe9dd30b1640e0bff94be8808fc5020c921aad1"
|
||||||
@@ -76,6 +112,10 @@
|
|||||||
"etag": "0x8DCEF84E967A078",
|
"etag": "0x8DCEF84E967A078",
|
||||||
"checksum": "ea9c6c6ecb212843dbd649ce8fc2c323b68c11d99df76fcbfa347a69b606a8aa"
|
"checksum": "ea9c6c6ecb212843dbd649ce8fc2c323b68c11d99df76fcbfa347a69b606a8aa"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DCEF8444FFBF55",
|
||||||
|
"checksum": "06752a8864b4bf1d5600ffa15dfa7af867b78da92ae1f44e59936d14613153c2"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCEF83F9D34219",
|
"etag": "0x8DCEF83F9D34219",
|
||||||
"checksum": "369a6ae2330db638ea3bb79f1bfe12efe7456e004ec5af253d72ca6af82b9546"
|
"checksum": "369a6ae2330db638ea3bb79f1bfe12efe7456e004ec5af253d72ca6af82b9546"
|
||||||
@@ -97,6 +137,10 @@
|
|||||||
"etag": "0x8DCCC367877571E",
|
"etag": "0x8DCCC367877571E",
|
||||||
"checksum": "ee3282df02bf183d8c44bc6a72f3c7c80e9ee2626766dc759105910f100f2393"
|
"checksum": "ee3282df02bf183d8c44bc6a72f3c7c80e9ee2626766dc759105910f100f2393"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DCCC35A9D5AA84",
|
||||||
|
"checksum": "1987185a342296d141a1c8f99eb58dfaa7b829ce215b5d51b6c92a65470c10b7"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCCC35714A58DA",
|
"etag": "0x8DCCC35714A58DA",
|
||||||
"checksum": "2b7c74bdf8f3e87b8076ab5bb9d6d9754bbd3d420c5ac7e14e44e08af4e9f924"
|
"checksum": "2b7c74bdf8f3e87b8076ab5bb9d6d9754bbd3d420c5ac7e14e44e08af4e9f924"
|
||||||
@@ -118,6 +162,10 @@
|
|||||||
"etag": "0x8DCBC8CA673BA3E",
|
"etag": "0x8DCBC8CA673BA3E",
|
||||||
"checksum": "5c5ea443dc5a2149b2abcaaa19ab7738932eb81ee6335771bfef4d075465f006"
|
"checksum": "5c5ea443dc5a2149b2abcaaa19ab7738932eb81ee6335771bfef4d075465f006"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DCBC8C0C4D4950",
|
||||||
|
"checksum": "9a8e6bfd5b0db6082842ff79934b926b5d1824a4cdef96040f0f49ac1aeea6f1"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCBC8BED140D01",
|
"etag": "0x8DCBC8BED140D01",
|
||||||
"checksum": "2d4bf3931b952e4a6071f88f5d186a64b414f75e5da37299e746dc68b54110f0"
|
"checksum": "2d4bf3931b952e4a6071f88f5d186a64b414f75e5da37299e746dc68b54110f0"
|
||||||
@@ -139,6 +187,10 @@
|
|||||||
"etag": "0x8DCAD8018A2BD7D",
|
"etag": "0x8DCAD8018A2BD7D",
|
||||||
"checksum": "d71523c4a477c9526e56f8056feed9cf5a2cc99eb0f22bf92effd2d3929a965f"
|
"checksum": "d71523c4a477c9526e56f8056feed9cf5a2cc99eb0f22bf92effd2d3929a965f"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DCAD7F7F7A95BD",
|
||||||
|
"checksum": "8b2c478667f2d057564917f119a7bafeb849814f5f1b9c04ac4f72ca89e22610"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCAD7F5601BBF5",
|
"etag": "0x8DCAD7F5601BBF5",
|
||||||
"checksum": "8d746b318ac8b06e473356badcfd0b6d51c7d0fb92778fe13c432214db27e98b"
|
"checksum": "8d746b318ac8b06e473356badcfd0b6d51c7d0fb92778fe13c432214db27e98b"
|
||||||
@@ -160,6 +212,10 @@
|
|||||||
"etag": "0x8DC8EEA5793DCDE",
|
"etag": "0x8DC8EEA5793DCDE",
|
||||||
"checksum": "cecbbab97c8c0b47070038ba4f585fce79dd397b47e0bca0247bfa2967cc8017"
|
"checksum": "cecbbab97c8c0b47070038ba4f585fce79dd397b47e0bca0247bfa2967cc8017"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DC8EE9DC80833D",
|
||||||
|
"checksum": "b6a4189419dc627949351a36ed08c2ba4cbb29ca913277a3170aa3bb56ee61be"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC8EE9B25D49CD",
|
"etag": "0x8DC8EE9B25D49CD",
|
||||||
"checksum": "59a9bbf1ae898725085854d4f618a3c958f6fa67a0573f393a42c2ee3990497e"
|
"checksum": "59a9bbf1ae898725085854d4f618a3c958f6fa67a0573f393a42c2ee3990497e"
|
||||||
@@ -181,6 +237,10 @@
|
|||||||
"etag": "0x8DC62EF476E0C5B",
|
"etag": "0x8DC62EF476E0C5B",
|
||||||
"checksum": "6a819e7ef26590d78ce6c127b6c0d966bd2c5012ae823455e4370f01e5e22167"
|
"checksum": "6a819e7ef26590d78ce6c127b6c0d966bd2c5012ae823455e4370f01e5e22167"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DC62EEAB35E252",
|
||||||
|
"checksum": "0ce628a161f7eaef856a88795e3c4bc77d0a8e9f9dd96a6d4746108bb9c493b8"
|
||||||
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC62EF06876D49",
|
"etag": "0x8DC62EF06876D49",
|
||||||
"checksum": "9e272af3f52835470d4f31e3791c83ee9dbf05a812af5d2f2077ec1e3c67aa67"
|
"checksum": "9e272af3f52835470d4f31e3791c83ee9dbf05a812af5d2f2077ec1e3c67aa67"
|
||||||
|
|||||||
26
manifests/cargo-tarpaulin.json
generated
26
manifests/cargo-tarpaulin.json
generated
@@ -19,10 +19,32 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) OR [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE)",
|
"license_markdown": "[MIT](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-MIT) OR [Apache-2.0](https://github.com/xd009642/tarpaulin/blob/develop/LICENSE-APACHE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.31.4"
|
"version": "0.31.5"
|
||||||
},
|
},
|
||||||
"0.31": {
|
"0.31": {
|
||||||
"version": "0.31.4"
|
"version": "0.31.5"
|
||||||
|
},
|
||||||
|
"0.31.5": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD36405804CBF3",
|
||||||
|
"checksum": "a5f2fdf67023775444c95afe5f0c190885944ca91250d39ac03788924eaa486d"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3640173A9B5F",
|
||||||
|
"checksum": "8376c76c9d16f35ea0358d3683a4cfc638286eabf7fe12acdb31c4efb4ebeb6b"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3640D5D46201",
|
||||||
|
"checksum": "96d93282bcd9c8e52fbe1dab2dff023512f198b5f0cff375c2fbce12fd978c5e"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD364052DB3E9D",
|
||||||
|
"checksum": "b371cd0b30c8b7ae86badb9d92965acd740baa3412e11975cfb2ed54dc1b8130"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD364041B7A438",
|
||||||
|
"checksum": "476cd4eafea7ebaa21eb560dcd708cf412090214df17a45703c6454a88727cf1"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.31.4": {
|
"0.31.4": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
78
manifests/cargo-zigbuild.json
generated
78
manifests/cargo-zigbuild.json
generated
@@ -4,15 +4,15 @@
|
|||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.x86_64-unknown-linux-musl.tar.gz"
|
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.x86_64-unknown-linux-musl.tar.gz"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.apple-darwin.tar.gz"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.windows-x64.zip"
|
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.windows-x64.zip"
|
||||||
},
|
},
|
||||||
"aarch64_linux_musl": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.aarch64-unknown-linux-musl.tar.gz"
|
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.aarch64-unknown-linux-musl.tar.gz"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.apple-darwin.tar.gz"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.windows-arm64.zip"
|
"url": "https://github.com/rust-cross/cargo-zigbuild/releases/download/v${version}/cargo-zigbuild-v${version}.windows-arm64.zip"
|
||||||
}
|
}
|
||||||
@@ -29,6 +29,10 @@
|
|||||||
"etag": "0x8DD1DD6FF709E0F",
|
"etag": "0x8DD1DD6FF709E0F",
|
||||||
"checksum": "f0888b50dfaa353885a6eeb1979f3ad42a153b34e388d4e6c944dbed5940d1c5"
|
"checksum": "f0888b50dfaa353885a6eeb1979f3ad42a153b34e388d4e6c944dbed5940d1c5"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD1DD91C5DB4A4",
|
||||||
|
"checksum": "d57225a8e3574c0cf4bb1e7ade0acdfd8ea37a70803c8f17b1087c69246c0b5d"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DD1DD6E31A46A4",
|
"etag": "0x8DD1DD6E31A46A4",
|
||||||
"checksum": "aa2de5926d125e0248dd7181d894d3a0d5873349da5ddacc32ed5380de49d07c"
|
"checksum": "aa2de5926d125e0248dd7181d894d3a0d5873349da5ddacc32ed5380de49d07c"
|
||||||
@@ -37,10 +41,6 @@
|
|||||||
"etag": "0x8DD1DD6D01D2225",
|
"etag": "0x8DD1DD6D01D2225",
|
||||||
"checksum": "64c0c8c8387f3ac3c5f610cd2f973eca50ca351c03bb4c386fdc981f09aa97a6"
|
"checksum": "64c0c8c8387f3ac3c5f610cd2f973eca50ca351c03bb4c386fdc981f09aa97a6"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DD1DD91C5DB4A4",
|
|
||||||
"checksum": "d57225a8e3574c0cf4bb1e7ade0acdfd8ea37a70803c8f17b1087c69246c0b5d"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DD1DD715E23D42",
|
"etag": "0x8DD1DD715E23D42",
|
||||||
"checksum": "2997e25a9d591f2c1de275c19fa0e50bf536a6129f83147530a2df4b816d39e1"
|
"checksum": "2997e25a9d591f2c1de275c19fa0e50bf536a6129f83147530a2df4b816d39e1"
|
||||||
@@ -51,6 +51,10 @@
|
|||||||
"etag": "0x8DD1D6C197AF968",
|
"etag": "0x8DD1D6C197AF968",
|
||||||
"checksum": "4e96fa4c6949f769b1d9765534eeeecc1cff1c68a2f14c2133ce725aaf2ab25b"
|
"checksum": "4e96fa4c6949f769b1d9765534eeeecc1cff1c68a2f14c2133ce725aaf2ab25b"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD1D6D66BE92B9",
|
||||||
|
"checksum": "1a6ca0ba81d2ebfef6ca3b77c37924c87e994ba20acbf479f285b55d82c2bc60"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DD1D6C1F3C234E",
|
"etag": "0x8DD1D6C1F3C234E",
|
||||||
"checksum": "96c62f249de011c1171bfec8e8f0167a8ea6fd2acc235ee0b159864be1f00fc0"
|
"checksum": "96c62f249de011c1171bfec8e8f0167a8ea6fd2acc235ee0b159864be1f00fc0"
|
||||||
@@ -59,10 +63,6 @@
|
|||||||
"etag": "0x8DD1D6BF3997E3D",
|
"etag": "0x8DD1D6BF3997E3D",
|
||||||
"checksum": "7f1e6ae0163a604d18d39eeebd1ddf0ff1227a94831c516210c7d0b77efd5c0c"
|
"checksum": "7f1e6ae0163a604d18d39eeebd1ddf0ff1227a94831c516210c7d0b77efd5c0c"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DD1D6D66BE92B9",
|
|
||||||
"checksum": "1a6ca0ba81d2ebfef6ca3b77c37924c87e994ba20acbf479f285b55d82c2bc60"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DD1D6C3E89704C",
|
"etag": "0x8DD1D6C3E89704C",
|
||||||
"checksum": "8217239a1bbd6ee937da66e87d2aaacbb5afd10d275d72f5e54a481f67245332"
|
"checksum": "8217239a1bbd6ee937da66e87d2aaacbb5afd10d275d72f5e54a481f67245332"
|
||||||
@@ -73,6 +73,10 @@
|
|||||||
"etag": "0x8DD10EB499E98B9",
|
"etag": "0x8DD10EB499E98B9",
|
||||||
"checksum": "3d4baf2a9067e13577a31623f9fa628c6415caea188591dca48aa378783e3913"
|
"checksum": "3d4baf2a9067e13577a31623f9fa628c6415caea188591dca48aa378783e3913"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD10EC07B2E36C",
|
||||||
|
"checksum": "ecc421030d2db57d4e4bd2a29904243c9f59920e2634a0d2e9480ea4dedb00e5"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DD10EAE6228CF5",
|
"etag": "0x8DD10EAE6228CF5",
|
||||||
"checksum": "589254e208526d901d2193f4470a14241ad636a35df60bfeb35058e93e2e0d1c"
|
"checksum": "589254e208526d901d2193f4470a14241ad636a35df60bfeb35058e93e2e0d1c"
|
||||||
@@ -81,10 +85,6 @@
|
|||||||
"etag": "0x8DD10EA7C976517",
|
"etag": "0x8DD10EA7C976517",
|
||||||
"checksum": "0715fcfb3881a51e2e663f176c4ba6ba8c3f9a7a346668cc5b957d237ad4d401"
|
"checksum": "0715fcfb3881a51e2e663f176c4ba6ba8c3f9a7a346668cc5b957d237ad4d401"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DD10EC07B2E36C",
|
|
||||||
"checksum": "ecc421030d2db57d4e4bd2a29904243c9f59920e2634a0d2e9480ea4dedb00e5"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DD10EAF12FE9A3",
|
"etag": "0x8DD10EAF12FE9A3",
|
||||||
"checksum": "abd4b87c1b22ed02df55b166fc86ab5269a16c3186f99786c4663fb64dfeea7e"
|
"checksum": "abd4b87c1b22ed02df55b166fc86ab5269a16c3186f99786c4663fb64dfeea7e"
|
||||||
@@ -95,6 +95,10 @@
|
|||||||
"etag": "0x8DCF74715BF6C29",
|
"etag": "0x8DCF74715BF6C29",
|
||||||
"checksum": "3fbf6d78dc23d413c3c1196cc790598e6162baaf523f3ceebf565d6ed1738545"
|
"checksum": "3fbf6d78dc23d413c3c1196cc790598e6162baaf523f3ceebf565d6ed1738545"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DCF7471D5CB591",
|
||||||
|
"checksum": "51b376a3b1a41dc09eeb197c4d25e6fd23e6a440e2a58956a52ecf88c8177679"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DCF7472F0600BC",
|
"etag": "0x8DCF7472F0600BC",
|
||||||
"checksum": "bfc9c836fce7d0f0ca829b63a53f646b6f0ba35e6e0518ebbc18bcb5dee83020"
|
"checksum": "bfc9c836fce7d0f0ca829b63a53f646b6f0ba35e6e0518ebbc18bcb5dee83020"
|
||||||
@@ -103,10 +107,6 @@
|
|||||||
"etag": "0x8DCF74713191958",
|
"etag": "0x8DCF74713191958",
|
||||||
"checksum": "2f84b923075b0fb62a5069b485c80005888e4ffba7ecf984f327b2d2fc8f3c6f"
|
"checksum": "2f84b923075b0fb62a5069b485c80005888e4ffba7ecf984f327b2d2fc8f3c6f"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DCF7471D5CB591",
|
|
||||||
"checksum": "51b376a3b1a41dc09eeb197c4d25e6fd23e6a440e2a58956a52ecf88c8177679"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DCF747939158DE",
|
"etag": "0x8DCF747939158DE",
|
||||||
"checksum": "39d64a306be35497d66325983974db9d16d1dda3de8fd30ba7bf4799ff280fc8"
|
"checksum": "39d64a306be35497d66325983974db9d16d1dda3de8fd30ba7bf4799ff280fc8"
|
||||||
@@ -117,6 +117,10 @@
|
|||||||
"etag": "0x8DCDCA2DC25EFC6",
|
"etag": "0x8DCDCA2DC25EFC6",
|
||||||
"checksum": "49d4796319f0b85039783675499d092cfbb95f33f9cc9e6feef239f7f23efe5c"
|
"checksum": "49d4796319f0b85039783675499d092cfbb95f33f9cc9e6feef239f7f23efe5c"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DCDCA0D37AABD0",
|
||||||
|
"checksum": "60348c23e14e212b11bb68eec3cf3b5db2d18461f02efb0066ee6b1ec87790de"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DCDC9F69902822",
|
"etag": "0x8DCDC9F69902822",
|
||||||
"checksum": "ba09c9f260500ffcf6837f57b06f1fc826695bdc28f69b0258067345b25661e1"
|
"checksum": "ba09c9f260500ffcf6837f57b06f1fc826695bdc28f69b0258067345b25661e1"
|
||||||
@@ -125,10 +129,6 @@
|
|||||||
"etag": "0x8DCDCA2DC4E31F3",
|
"etag": "0x8DCDCA2DC4E31F3",
|
||||||
"checksum": "b3bd9e02e1fa8ef4cd0c96a9686f2a9ed8ddf17c175c4de71f8709ca11e83c4a"
|
"checksum": "b3bd9e02e1fa8ef4cd0c96a9686f2a9ed8ddf17c175c4de71f8709ca11e83c4a"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DCDCA0D37AABD0",
|
|
||||||
"checksum": "60348c23e14e212b11bb68eec3cf3b5db2d18461f02efb0066ee6b1ec87790de"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DCDC9F9CE2DE4D",
|
"etag": "0x8DCDC9F9CE2DE4D",
|
||||||
"checksum": "c624ac2b937991dd9d08e3d4b4c248ad3ea6ab6ea8e302754ad52b77856193e4"
|
"checksum": "c624ac2b937991dd9d08e3d4b4c248ad3ea6ab6ea8e302754ad52b77856193e4"
|
||||||
@@ -139,6 +139,10 @@
|
|||||||
"etag": "0x8DCD7F42717DB9B",
|
"etag": "0x8DCD7F42717DB9B",
|
||||||
"checksum": "004df391aa3bedcda64ce887a1e28f4c560a5afa417985f2e6a43dd57d1f7704"
|
"checksum": "004df391aa3bedcda64ce887a1e28f4c560a5afa417985f2e6a43dd57d1f7704"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DCD7F991A9561E",
|
||||||
|
"checksum": "8dc56fc231d55522dcb88fa96b35db352711a7a86a9abaed76013c712ae58515"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DCD7F3EC049C4B",
|
"etag": "0x8DCD7F3EC049C4B",
|
||||||
"checksum": "2ef56bf18329eafd2a8948b695c19178fe4f2fe7f8bef295f570f1492c916988"
|
"checksum": "2ef56bf18329eafd2a8948b695c19178fe4f2fe7f8bef295f570f1492c916988"
|
||||||
@@ -147,10 +151,6 @@
|
|||||||
"etag": "0x8DCD7F3F7DE776A",
|
"etag": "0x8DCD7F3F7DE776A",
|
||||||
"checksum": "7b323b138a49a684a811bb774f7a868131318bb5e0bd5bad20d44e7f6bf016a2"
|
"checksum": "7b323b138a49a684a811bb774f7a868131318bb5e0bd5bad20d44e7f6bf016a2"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DCD7F991A9561E",
|
|
||||||
"checksum": "8dc56fc231d55522dcb88fa96b35db352711a7a86a9abaed76013c712ae58515"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DCD7F4493614C5",
|
"etag": "0x8DCD7F4493614C5",
|
||||||
"checksum": "9da4d347bb1b26a10de5c9025561703c12ae78dc222205a2901a7ece739231fd"
|
"checksum": "9da4d347bb1b26a10de5c9025561703c12ae78dc222205a2901a7ece739231fd"
|
||||||
@@ -161,6 +161,10 @@
|
|||||||
"etag": "0x8DCA02F57E9832F",
|
"etag": "0x8DCA02F57E9832F",
|
||||||
"checksum": "d90450f3b6cc40294263f09c1b8c04231e6b526f811f506812501de814737888"
|
"checksum": "d90450f3b6cc40294263f09c1b8c04231e6b526f811f506812501de814737888"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DCA030EA6943FA",
|
||||||
|
"checksum": "e11ca1c260632e10e439f28e8d87453a61fb6b8cd938d24523c4132f85fe3d37"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DCA02FA6F628E7",
|
"etag": "0x8DCA02FA6F628E7",
|
||||||
"checksum": "2e3f5f44d6619e0aab9ad80e9a46d98489f913af90a966386532bb359136ac51"
|
"checksum": "2e3f5f44d6619e0aab9ad80e9a46d98489f913af90a966386532bb359136ac51"
|
||||||
@@ -169,10 +173,6 @@
|
|||||||
"etag": "0x8DCA02F301C95E4",
|
"etag": "0x8DCA02F301C95E4",
|
||||||
"checksum": "149035fc30323cb683aea8f8800983007da27f3de22a1beb12d05e9fefc8ef06"
|
"checksum": "149035fc30323cb683aea8f8800983007da27f3de22a1beb12d05e9fefc8ef06"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DCA030EA6943FA",
|
|
||||||
"checksum": "e11ca1c260632e10e439f28e8d87453a61fb6b8cd938d24523c4132f85fe3d37"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DCA02FEBAFBE0D",
|
"etag": "0x8DCA02FEBAFBE0D",
|
||||||
"checksum": "26955ffa45d67751682ece010c640601127f7a4e00711eb251e59c8864a46569"
|
"checksum": "26955ffa45d67751682ece010c640601127f7a4e00711eb251e59c8864a46569"
|
||||||
@@ -183,6 +183,10 @@
|
|||||||
"etag": "0x8DC9119E4DF0AC7",
|
"etag": "0x8DC9119E4DF0AC7",
|
||||||
"checksum": "ab2e2f3a22409470ec7d71badc22ab89351a6ddaba5c4785a39689856809404c"
|
"checksum": "ab2e2f3a22409470ec7d71badc22ab89351a6ddaba5c4785a39689856809404c"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DC911B3D433D97",
|
||||||
|
"checksum": "9173594204eaacadd62e2f26a3c2365887ec24a4fa15f309023b8d4bbbc09dec"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DC911A1AA0FEBC",
|
"etag": "0x8DC911A1AA0FEBC",
|
||||||
"checksum": "640b03357f568deb976cd0e0732db04f723498a0d4706d71ebaec05f8fc35db2"
|
"checksum": "640b03357f568deb976cd0e0732db04f723498a0d4706d71ebaec05f8fc35db2"
|
||||||
@@ -191,10 +195,6 @@
|
|||||||
"etag": "0x8DC9119C072F83B",
|
"etag": "0x8DC9119C072F83B",
|
||||||
"checksum": "edc3d0966ed8c80056d36ace8998eb75ed2f3a71342e0825960d98c9eb3398a0"
|
"checksum": "edc3d0966ed8c80056d36ace8998eb75ed2f3a71342e0825960d98c9eb3398a0"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DC911B3D433D97",
|
|
||||||
"checksum": "9173594204eaacadd62e2f26a3c2365887ec24a4fa15f309023b8d4bbbc09dec"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DC911A3FFF6228",
|
"etag": "0x8DC911A3FFF6228",
|
||||||
"checksum": "6affe535f6d37768cc20be30b8b65a1bcc196ae1efdad71d2a5c44049a081b7e"
|
"checksum": "6affe535f6d37768cc20be30b8b65a1bcc196ae1efdad71d2a5c44049a081b7e"
|
||||||
@@ -208,6 +208,10 @@
|
|||||||
"etag": "0x8DC64512B96B7E2",
|
"etag": "0x8DC64512B96B7E2",
|
||||||
"checksum": "bfcef631fe5ec5c0381d0028d47765dd4cef54ece10ebf2d76e62de6e7941d4e"
|
"checksum": "bfcef631fe5ec5c0381d0028d47765dd4cef54ece10ebf2d76e62de6e7941d4e"
|
||||||
},
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DC645162138D32",
|
||||||
|
"checksum": "b04e989f6df22d46be292af8c4f799467d6e60305fe6ab55f9bdf1c795a0c70f"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"etag": "0x8DC645155E600B1",
|
"etag": "0x8DC645155E600B1",
|
||||||
"checksum": "5a5ea2b4d2dcd6d9196d5ca72e76c0d0714dae1ad287d313b89b1d78bcdc8364"
|
"checksum": "5a5ea2b4d2dcd6d9196d5ca72e76c0d0714dae1ad287d313b89b1d78bcdc8364"
|
||||||
@@ -216,10 +220,6 @@
|
|||||||
"etag": "0x8DC64512690B73D",
|
"etag": "0x8DC64512690B73D",
|
||||||
"checksum": "8271acf32a08fc6073153fffeca5d9289dce7ae13a3a9d64cacf0600904fa7f5"
|
"checksum": "8271acf32a08fc6073153fffeca5d9289dce7ae13a3a9d64cacf0600904fa7f5"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"etag": "0x8DC645162138D32",
|
|
||||||
"checksum": "b04e989f6df22d46be292af8c4f799467d6e60305fe6ab55f9bdf1c795a0c70f"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"etag": "0x8DC64516B51DB3B",
|
"etag": "0x8DC64516B51DB3B",
|
||||||
"checksum": "f5166b64a037508c4698e03bde3a57a53fde530fe604866050e1fef43cd5df6d"
|
"checksum": "f5166b64a037508c4698e03bde3a57a53fde530fe604866050e1fef43cd5df6d"
|
||||||
|
|||||||
27
manifests/dprint.json
generated
27
manifests/dprint.json
generated
@@ -25,7 +25,32 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[MIT](https://github.com/dprint/dprint/blob/main/LICENSE)",
|
"license_markdown": "[MIT](https://github.com/dprint/dprint/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.48.0"
|
"version": "0.49.0"
|
||||||
|
},
|
||||||
|
"0.49": {
|
||||||
|
"version": "0.49.0"
|
||||||
|
},
|
||||||
|
"0.49.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD4320D522D8E0",
|
||||||
|
"checksum": "0ff81f810da037e6fff7d326daf196eac82c72953bc10c9ae3673b2f45367763"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD4320D511873C",
|
||||||
|
"checksum": "56e99ab1da9f8b2424830e8f7220f6a125b784556871cbe689d1d351ad57258f"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD4320D510EBA2",
|
||||||
|
"checksum": "6aaf465e4b34e4da1f2fd54297bc31e64d6a2ec93a30dbad8ebd3a6f4f16974c"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD4320D51A56F1",
|
||||||
|
"checksum": "53e98e812cf1bc0cca7e0e48cc0346217f064d8d45d6c53daf6eb0d83fa47f83"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD4320D520B868",
|
||||||
|
"checksum": "6772b452179a7142710860a8da8d8ec112b84c1b4dd5a7e4458c759c44b76751"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.48": {
|
"0.48": {
|
||||||
"version": "0.48.0"
|
"version": "0.48.0"
|
||||||
|
|||||||
16
manifests/earthly.json
generated
16
manifests/earthly.json
generated
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"rust_crate": null,
|
"rust_crate": null,
|
||||||
"template": {
|
"template": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/earthly/earthly/releases/download/v${version}/earthly-linux-amd64"
|
"url": "https://github.com/earthly/earthly/releases/download/v${version}/earthly-linux-amd64"
|
||||||
},
|
},
|
||||||
"x86_64_macos": {
|
"x86_64_macos": {
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"url": "https://github.com/earthly/earthly/releases/download/v${version}/earthly-windows-amd64.exe"
|
"url": "https://github.com/earthly/earthly/releases/download/v${version}/earthly-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/earthly/earthly/releases/download/v${version}/earthly-linux-arm64"
|
"url": "https://github.com/earthly/earthly/releases/download/v${version}/earthly-linux-arm64"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
"version": "0.8.15"
|
"version": "0.8.15"
|
||||||
},
|
},
|
||||||
"0.8.15": {
|
"0.8.15": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"etag": "0x8DCA2A154D402F6",
|
"etag": "0x8DCA2A154D402F6",
|
||||||
"checksum": "2e545a08c17a195ad86d3844df0c3d28064b1231abe05530342138acf3067619"
|
"checksum": "2e545a08c17a195ad86d3844df0c3d28064b1231abe05530342138acf3067619"
|
||||||
},
|
},
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
"etag": "0x8DCA2A1580F5DF5",
|
"etag": "0x8DCA2A1580F5DF5",
|
||||||
"checksum": "c64a84df967f4624202c5cdf1b9f8149ef7ee9e2056ffd84954f0587a0787291"
|
"checksum": "c64a84df967f4624202c5cdf1b9f8149ef7ee9e2056ffd84954f0587a0787291"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"etag": "0x8DCA2A1566C5F46",
|
"etag": "0x8DCA2A1566C5F46",
|
||||||
"checksum": "cc5ea041c6d7e5d019c8fe37c58c5b7b294f7ce1da0e06569056f41b3413d7bf"
|
"checksum": "cc5ea041c6d7e5d019c8fe37c58c5b7b294f7ce1da0e06569056f41b3413d7bf"
|
||||||
},
|
},
|
||||||
@@ -47,7 +47,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"0.8.14": {
|
"0.8.14": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"etag": "0x8DC898036907B4D",
|
"etag": "0x8DC898036907B4D",
|
||||||
"checksum": "9c184536faccf2e16e92ad06d2a2579e4b3ff6aaf6bf4c2f72b21228a6903bc2"
|
"checksum": "9c184536faccf2e16e92ad06d2a2579e4b3ff6aaf6bf4c2f72b21228a6903bc2"
|
||||||
},
|
},
|
||||||
@@ -59,7 +59,7 @@
|
|||||||
"etag": "0x8DC89807141A969",
|
"etag": "0x8DC89807141A969",
|
||||||
"checksum": "3244284dc9648d7cd3af350ab4a8bfd4c63b0e0e16e656c3e249fc1d58fe7e5f"
|
"checksum": "3244284dc9648d7cd3af350ab4a8bfd4c63b0e0e16e656c3e249fc1d58fe7e5f"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"etag": "0x8DC8980535E3770",
|
"etag": "0x8DC8980535E3770",
|
||||||
"checksum": "a88786778964eb74b6b5db44734a4630dcedab49c4ed21fe432e9e6d08ff116c"
|
"checksum": "a88786778964eb74b6b5db44734a4630dcedab49c4ed21fe432e9e6d08ff116c"
|
||||||
},
|
},
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"0.8.13": {
|
"0.8.13": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"etag": "0x8DC7F5FF4E42C3C",
|
"etag": "0x8DC7F5FF4E42C3C",
|
||||||
"checksum": "5e1d7a41cd7a5c22f7c5c71f08e99cab3964eb604ca223b36312c755fbbce4f8"
|
"checksum": "5e1d7a41cd7a5c22f7c5c71f08e99cab3964eb604ca223b36312c755fbbce4f8"
|
||||||
},
|
},
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
"etag": "0x8DC7F603050FEFF",
|
"etag": "0x8DC7F603050FEFF",
|
||||||
"checksum": "8201bcdd20272e4e68c56ce3b070fd488e410aef6be1e75b3b1992b4cdd0caaa"
|
"checksum": "8201bcdd20272e4e68c56ce3b070fd488e410aef6be1e75b3b1992b4cdd0caaa"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"etag": "0x8DC7F6012229473",
|
"etag": "0x8DC7F6012229473",
|
||||||
"checksum": "6b33bb767f34a94c49fc5db668b3f5936daa01777f3083a217f73b8aefdd7859"
|
"checksum": "6b33bb767f34a94c49fc5db668b3f5936daa01777f3083a217f73b8aefdd7859"
|
||||||
},
|
},
|
||||||
|
|||||||
73
manifests/editorconfig-checker.json
generated
73
manifests/editorconfig-checker.json
generated
@@ -3,16 +3,57 @@
|
|||||||
"template": null,
|
"template": null,
|
||||||
"license_markdown": "[MIT](https://github.com/editorconfig-checker/editorconfig-checker/blob/main/LICENSE)",
|
"license_markdown": "[MIT](https://github.com/editorconfig-checker/editorconfig-checker/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "3.1.2"
|
"version": "3.2.0"
|
||||||
},
|
},
|
||||||
"3": {
|
"3": {
|
||||||
"version": "3.1.2"
|
"version": "3.2.0"
|
||||||
|
},
|
||||||
|
"3.2": {
|
||||||
|
"version": "3.2.0"
|
||||||
|
},
|
||||||
|
"3.2.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.2.0/ec-linux-amd64.tar.gz",
|
||||||
|
"etag": "0x8DD3F08FBCBE9E3",
|
||||||
|
"checksum": "5e6a63097904be33c8d18e960f54fd8f60ada5464fe0056cd3dbbd0678584d15",
|
||||||
|
"bin": "bin/ec-linux-amd64"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.2.0/ec-darwin-amd64.tar.gz",
|
||||||
|
"etag": "0x8DD3F08FC132A08",
|
||||||
|
"checksum": "3834ca689609122d3741b319ebb7aed2e53d69e4141c9b9cde18b2898c20f440",
|
||||||
|
"bin": "bin/ec-darwin-amd64"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.2.0/ec-windows-amd64.zip",
|
||||||
|
"etag": "0x8DD3F08FC7A7849",
|
||||||
|
"checksum": "af614995342fdf51308895f0df04c40d88d22b345c8df1dc7b5b379c1c54d441",
|
||||||
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.2.0/ec-linux-arm64.tar.gz",
|
||||||
|
"etag": "0x8DD3F08FC1350E7",
|
||||||
|
"checksum": "1a49bfff89d0622ccdf81d9a680c7c8bdf5dd80416b7046f66c1822ad0d60f85",
|
||||||
|
"bin": "bin/ec-linux-arm64"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.2.0/ec-darwin-arm64.tar.gz",
|
||||||
|
"etag": "0x8DD3F08FC19D93F",
|
||||||
|
"checksum": "f5855029e0b52c237ee751b09090fdc9711659165c558c1184f45da0105f20ce",
|
||||||
|
"bin": "bin/ec-darwin-arm64"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.2.0/ec-windows-arm64.zip",
|
||||||
|
"etag": "0x8DD3F08FC3924EF",
|
||||||
|
"checksum": "a212ce886b95c7ede06888b6c2356a1af77ba1c721fa20c55015d3051342aa63",
|
||||||
|
"bin": "bin/ec-windows-arm64.exe"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"3.1": {
|
"3.1": {
|
||||||
"version": "3.1.2"
|
"version": "3.1.2"
|
||||||
},
|
},
|
||||||
"3.1.2": {
|
"3.1.2": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DD31C3802BB3A5",
|
"etag": "0x8DD31C3802BB3A5",
|
||||||
"checksum": "3fd4fc81e5077f89faddb71ff05a5d6e2983b8c3953d1b1b6663c7245300e653",
|
"checksum": "3fd4fc81e5077f89faddb71ff05a5d6e2983b8c3953d1b1b6663c7245300e653",
|
||||||
@@ -30,7 +71,7 @@
|
|||||||
"checksum": "58ced741383e4e8d68aeeda4c2a6c08deb52e45fbb3a5a976c52f161b62b8032",
|
"checksum": "58ced741383e4e8d68aeeda4c2a6c08deb52e45fbb3a5a976c52f161b62b8032",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.2/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DD31C38037B40E",
|
"etag": "0x8DD31C38037B40E",
|
||||||
"checksum": "1333275ced71f1814db1ae677681a1b8b9d412d7046675594f7cdb1f8c7c47d1",
|
"checksum": "1333275ced71f1814db1ae677681a1b8b9d412d7046675594f7cdb1f8c7c47d1",
|
||||||
@@ -50,7 +91,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"3.1.1": {
|
"3.1.1": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.1/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.1/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DD30098E5600DE",
|
"etag": "0x8DD30098E5600DE",
|
||||||
"checksum": "d750eebd0b296e1f2aa8e900f4fcc2e248e9638bd1bf9e858203ee236a21de00",
|
"checksum": "d750eebd0b296e1f2aa8e900f4fcc2e248e9638bd1bf9e858203ee236a21de00",
|
||||||
@@ -68,7 +109,7 @@
|
|||||||
"checksum": "a6a7340365f51ab37a665e79d2cfeca46d25065b95ee01061abeb7ef666bc9b8",
|
"checksum": "a6a7340365f51ab37a665e79d2cfeca46d25065b95ee01061abeb7ef666bc9b8",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.1/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.1/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DD30098E7918D1",
|
"etag": "0x8DD30098E7918D1",
|
||||||
"checksum": "f7cbdfd08704b8ab83f5b48ab6c8354d4aef01c408ab8c181c6d571bc1a4e24a",
|
"checksum": "f7cbdfd08704b8ab83f5b48ab6c8354d4aef01c408ab8c181c6d571bc1a4e24a",
|
||||||
@@ -88,7 +129,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"3.1.0": {
|
"3.1.0": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.0/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.0/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DD2FEB7A3F6836",
|
"etag": "0x8DD2FEB7A3F6836",
|
||||||
"checksum": "43158e9de5ff5c22b1e972440d830511621dbd2c3b8a57878896c7bd26032dde",
|
"checksum": "43158e9de5ff5c22b1e972440d830511621dbd2c3b8a57878896c7bd26032dde",
|
||||||
@@ -106,7 +147,7 @@
|
|||||||
"checksum": "98570ba73976e756e8312530fed2d6caa0a1510d9552530a0e18f127df1ed186",
|
"checksum": "98570ba73976e756e8312530fed2d6caa0a1510d9552530a0e18f127df1ed186",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.0/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.1.0/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DD2FEB796602D4",
|
"etag": "0x8DD2FEB796602D4",
|
||||||
"checksum": "3ac92a540367ccc24c07fd0cfcf00128d93f47c22efcd504bbbcbf5df5040686",
|
"checksum": "3ac92a540367ccc24c07fd0cfcf00128d93f47c22efcd504bbbcbf5df5040686",
|
||||||
@@ -129,7 +170,7 @@
|
|||||||
"version": "3.0.3"
|
"version": "3.0.3"
|
||||||
},
|
},
|
||||||
"3.0.3": {
|
"3.0.3": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.3/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.3/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DC9B4F6F214767",
|
"etag": "0x8DC9B4F6F214767",
|
||||||
"checksum": "fc698b0bf5bca0d42e28dd59d72e25487a51f645ca242c5f74bae975369f16aa",
|
"checksum": "fc698b0bf5bca0d42e28dd59d72e25487a51f645ca242c5f74bae975369f16aa",
|
||||||
@@ -147,7 +188,7 @@
|
|||||||
"checksum": "97d7b0530a172e49310010408286176665bbeedf6b38058ac3f125409c3a3b82",
|
"checksum": "97d7b0530a172e49310010408286176665bbeedf6b38058ac3f125409c3a3b82",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.3/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.3/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DC9B4F74C548E5",
|
"etag": "0x8DC9B4F74C548E5",
|
||||||
"checksum": "d5991ae92170af79ec2052840176bf155d00eaf6eb5a2c8ffbf46f6378c21776",
|
"checksum": "d5991ae92170af79ec2052840176bf155d00eaf6eb5a2c8ffbf46f6378c21776",
|
||||||
@@ -167,7 +208,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"3.0.2": {
|
"3.0.2": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.2/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.2/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DC9A9036E834A7",
|
"etag": "0x8DC9A9036E834A7",
|
||||||
"checksum": "2f11b26b34d97f07120038bf517af029b99f90fe96b77369fd66a301ab7a557e",
|
"checksum": "2f11b26b34d97f07120038bf517af029b99f90fe96b77369fd66a301ab7a557e",
|
||||||
@@ -185,7 +226,7 @@
|
|||||||
"checksum": "74ecb356917a55ad4276b09ae2cd0fe28ab8878121c5173a35b5acadd50e7bf1",
|
"checksum": "74ecb356917a55ad4276b09ae2cd0fe28ab8878121c5173a35b5acadd50e7bf1",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.2/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.2/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DC9A903C7370B0",
|
"etag": "0x8DC9A903C7370B0",
|
||||||
"checksum": "8836eabc57daf4717b55ae2ce002469f8a14123c2129b7a9cf0597c98acfe928",
|
"checksum": "8836eabc57daf4717b55ae2ce002469f8a14123c2129b7a9cf0597c98acfe928",
|
||||||
@@ -205,7 +246,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"3.0.1": {
|
"3.0.1": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.1/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.1/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DC54967F3BEFBA",
|
"etag": "0x8DC54967F3BEFBA",
|
||||||
"checksum": "debda88bcf5048280101b743b3104732650c8b49a2a017ed815481c817cfe13f",
|
"checksum": "debda88bcf5048280101b743b3104732650c8b49a2a017ed815481c817cfe13f",
|
||||||
@@ -223,7 +264,7 @@
|
|||||||
"checksum": "902556a8558108f910834f3e116f778e4a6710dbc74f79a065039ea52abe4d25",
|
"checksum": "902556a8558108f910834f3e116f778e4a6710dbc74f79a065039ea52abe4d25",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.1/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.1/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DC549684C470C1",
|
"etag": "0x8DC549684C470C1",
|
||||||
"checksum": "59de9965c7b2629112b158bedff3f132115bd53fd14e3b477cc3a5fc77233e6b",
|
"checksum": "59de9965c7b2629112b158bedff3f132115bd53fd14e3b477cc3a5fc77233e6b",
|
||||||
@@ -243,7 +284,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"3.0.0": {
|
"3.0.0": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.0/ec-linux-amd64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.0/ec-linux-amd64.tar.gz",
|
||||||
"etag": "0x8DC3C3FCCBF9621",
|
"etag": "0x8DC3C3FCCBF9621",
|
||||||
"checksum": "8e2f3c5fa4891542535185a4859c5f92832bc11821eb03a081bc6bd87af5a829",
|
"checksum": "8e2f3c5fa4891542535185a4859c5f92832bc11821eb03a081bc6bd87af5a829",
|
||||||
@@ -261,7 +302,7 @@
|
|||||||
"checksum": "ff171ef63361bbd783622ba778a83e6fe5d6615e8b9e9e9c2f2c177e89dba499",
|
"checksum": "ff171ef63361bbd783622ba778a83e6fe5d6615e8b9e9e9c2f2c177e89dba499",
|
||||||
"bin": "bin/ec-windows-amd64.exe"
|
"bin": "bin/ec-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.0/ec-linux-arm64.tar.gz",
|
"url": "https://github.com/editorconfig-checker/editorconfig-checker/releases/download/v3.0.0/ec-linux-arm64.tar.gz",
|
||||||
"etag": "0x8DC3C3FD0E61D19",
|
"etag": "0x8DC3C3FD0E61D19",
|
||||||
"checksum": "edf1d12ba1e6ff70090f063e7937081b49ba6007cd02e45f8329bbf965ed609e",
|
"checksum": "edf1d12ba1e6ff70090f063e7937081b49ba6007cd02e45f8329bbf965ed609e",
|
||||||
|
|||||||
33
manifests/git-cliff.json
generated
33
manifests/git-cliff.json
generated
@@ -28,10 +28,39 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[MIT](https://github.com/orhun/git-cliff/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/orhun/git-cliff/blob/main/LICENSE-APACHE)",
|
"license_markdown": "[MIT](https://github.com/orhun/git-cliff/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/orhun/git-cliff/blob/main/LICENSE-APACHE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "2.7.0"
|
"version": "2.8.0"
|
||||||
},
|
},
|
||||||
"2": {
|
"2": {
|
||||||
"version": "2.7.0"
|
"version": "2.8.0"
|
||||||
|
},
|
||||||
|
"2.8": {
|
||||||
|
"version": "2.8.0"
|
||||||
|
},
|
||||||
|
"2.8.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3C86C788509F",
|
||||||
|
"checksum": "505a5f672ad07837996e02be78781d152811396aadf060ed58979a7c7d3acc4e"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3C86AA7DA163",
|
||||||
|
"checksum": "8e25260a526666f5381e124169bc36f9315919f61b89ba0b7f3443f0771c6499"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3C879B6A6D65",
|
||||||
|
"checksum": "e1d7d1df5f679e6bd22aef5a60dee97cd69ec158f432a77e771b87283af94ad8"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3C86CF0150F9",
|
||||||
|
"checksum": "04fb2a52031f0a88ff88496b694d01fa655c31e21b17a5c7b8c4d2bc187be248"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3C868B929459",
|
||||||
|
"checksum": "e61e10dc7ebf3b3d4e1cc10ea6e1a2fc0f1d5832adf31e52021ffc7ecf2b2cb0"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD3C87CA9EF12C",
|
||||||
|
"checksum": "ddef496b165c465aeede201c00a88cc21078511aee618803bc6f6ca789877928"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"2.7": {
|
"2.7": {
|
||||||
"version": "2.7.0"
|
"version": "2.7.0"
|
||||||
|
|||||||
88
manifests/just.json
generated
88
manifests/just.json
generated
@@ -15,14 +15,46 @@
|
|||||||
},
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"url": "https://github.com/casey/just/releases/download/${version}/just-${version}-aarch64-apple-darwin.tar.gz"
|
"url": "https://github.com/casey/just/releases/download/${version}/just-${version}-aarch64-apple-darwin.tar.gz"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/casey/just/releases/download/${version}/just-${version}-aarch64-pc-windows-msvc.zip"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"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.38.0"
|
"version": "1.39.0"
|
||||||
},
|
},
|
||||||
"1": {
|
"1": {
|
||||||
"version": "1.38.0"
|
"version": "1.39.0"
|
||||||
|
},
|
||||||
|
"1.39": {
|
||||||
|
"version": "1.39.0"
|
||||||
|
},
|
||||||
|
"1.39.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3B20A92CDED8",
|
||||||
|
"checksum": "1c53fa85a8c021ce7b19814e1a5e1dc0aa10c04bddca75196f7ab6db6130d2cd"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3B20A69851F1",
|
||||||
|
"checksum": "6c786ac5646e643cc21e4d7d2f5da12b690a54c32d35307224db34879344ad4c"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3B2117A4C6AC",
|
||||||
|
"checksum": "b99304df08fdafaa2ea92714a0696727f7ff0cb8dd02527095aeb4419e5f6de9"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3B20B8C41FD7",
|
||||||
|
"checksum": "f1b9acdb4374983539c765d60374350932527df807b25975e05abb152c9021e7"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3B209ED9E867",
|
||||||
|
"checksum": "ab1e1fc95bc3cd11ee9ecc2c764abbd60f6d4f99dad05be78276e5487e959051"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD3B20FABD609F",
|
||||||
|
"checksum": "c29402d349d541af5421335eda2ba08613490e31b35fd5b59cf923f0182fae70"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"1.38": {
|
"1.38": {
|
||||||
"version": "1.38.0"
|
"version": "1.38.0"
|
||||||
@@ -47,6 +79,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD1963A57F33A9",
|
"etag": "0x8DD1963A57F33A9",
|
||||||
"checksum": "9f352a4bdd1ff91dc5bd1dafaaa2edc9e7c04a2eb64b1c18244578ae45ff116a"
|
"checksum": "9f352a4bdd1ff91dc5bd1dafaaa2edc9e7c04a2eb64b1c18244578ae45ff116a"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD1963E9FE88D9",
|
||||||
|
"checksum": "955c68713532e74810501a17f991eaf9985b303eb6ceaf16fd242e5949e6a440"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.37": {
|
"1.37": {
|
||||||
@@ -72,6 +108,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD09AFE5108C4F",
|
"etag": "0x8DD09AFE5108C4F",
|
||||||
"checksum": "613a7c96398fcccc2a5334a63bb525e865e74abee28d0df1869824a8c0c0dbeb"
|
"checksum": "613a7c96398fcccc2a5334a63bb525e865e74abee28d0df1869824a8c0c0dbeb"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD09B060F5C3EB",
|
||||||
|
"checksum": "3ad79e2ea63e1eac3894c189b1510afebe36d49bd470896c4c97b1fe72f32fdd"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.36": {
|
"1.36": {
|
||||||
@@ -97,6 +137,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCE1A046338E06",
|
"etag": "0x8DCE1A046338E06",
|
||||||
"checksum": "e7a824c4d92cdea270b61474bd48e851aedc4c65f9c5245c12b32df6de9b536f"
|
"checksum": "e7a824c4d92cdea270b61474bd48e851aedc4c65f9c5245c12b32df6de9b536f"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCE1A08DDD90D7",
|
||||||
|
"checksum": "9372e4f5e41dbe50140c9ce885b7db9e7431102640b2ff1402364cc348c92acf"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.35": {
|
"1.35": {
|
||||||
@@ -122,6 +166,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCC7AFF5497587",
|
"etag": "0x8DCC7AFF5497587",
|
||||||
"checksum": "898cc0623112a5912ef2dd891020d68e6b8eba9250c76460547f1703e550fabb"
|
"checksum": "898cc0623112a5912ef2dd891020d68e6b8eba9250c76460547f1703e550fabb"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCC7B04892541D",
|
||||||
|
"checksum": "908785c84a63b36109aa35f3c38c480ca8e91862e156c18c0eca60d43c216fe6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.34": {
|
"1.34": {
|
||||||
@@ -147,6 +195,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCB3357CEF511D",
|
"etag": "0x8DCB3357CEF511D",
|
||||||
"checksum": "9477b2413ba26928642c4fcbeba4e8a427a50bde4d7cc0dde4caaf661a8585ef"
|
"checksum": "9477b2413ba26928642c4fcbeba4e8a427a50bde4d7cc0dde4caaf661a8585ef"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCB335EBF258B8",
|
||||||
|
"checksum": "5e25561928a2acacf5182e04f67b6d751e4ec5fe726e1933c9c1b0b7c957b19b"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.33": {
|
"1.33": {
|
||||||
@@ -172,6 +224,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCB104BB5C9530",
|
"etag": "0x8DCB104BB5C9530",
|
||||||
"checksum": "379db9caf697231b60b04ab2cc1f8f49c1e16597028cbd98c143b720fd0e4a89"
|
"checksum": "379db9caf697231b60b04ab2cc1f8f49c1e16597028cbd98c143b720fd0e4a89"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCB1057406A588",
|
||||||
|
"checksum": "e250ad25db330101950431748fe92f3fe2918b1d667891ed631b5c28114be2ac"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.32": {
|
"1.32": {
|
||||||
@@ -197,6 +253,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCA6F09028BAA8",
|
"etag": "0x8DCA6F09028BAA8",
|
||||||
"checksum": "3449462f0284b27c840b8c814be558f8738445e1a2033e540faa25c07b8cf9b4"
|
"checksum": "3449462f0284b27c840b8c814be558f8738445e1a2033e540faa25c07b8cf9b4"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCA6F0FE27C9E5",
|
||||||
|
"checksum": "13a95f36fb57a48300c510b255edc37eebeca4d05b0094edb34f494dd275488c"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.31": {
|
"1.31": {
|
||||||
@@ -222,6 +282,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCA44C4BA13B11",
|
"etag": "0x8DCA44C4BA13B11",
|
||||||
"checksum": "61c2be540c64800b691038ad204105f19946efabb0c42ba1b61da9eade2f004c"
|
"checksum": "61c2be540c64800b691038ad204105f19946efabb0c42ba1b61da9eade2f004c"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCA44CC76FDF79",
|
||||||
|
"checksum": "692e1b5a069c06705b4a7a2d785e50926722bb3d24820d0d9c7a26552d8f7a9d"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.30": {
|
"1.30": {
|
||||||
@@ -247,6 +311,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC9E3D0B368E9D",
|
"etag": "0x8DC9E3D0B368E9D",
|
||||||
"checksum": "8c42695955743d8ae8c5dcbca1a2a8e80dca1dd7ddbf1353e9de6350bf6d716f"
|
"checksum": "8c42695955743d8ae8c5dcbca1a2a8e80dca1dd7ddbf1353e9de6350bf6d716f"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DC9E3D530F7064",
|
||||||
|
"checksum": "390d94f60340711f828159163216be2690dde055c7857aaf0ad51d4afacf40c6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.30.0": {
|
"1.30.0": {
|
||||||
@@ -269,6 +337,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC9E11C53E35FA",
|
"etag": "0x8DC9E11C53E35FA",
|
||||||
"checksum": "722ea23db6dbcf619ecb0cb1fd9ae92e18c4644be8adf462735ddcbfee7355fd"
|
"checksum": "722ea23db6dbcf619ecb0cb1fd9ae92e18c4644be8adf462735ddcbfee7355fd"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DC9E1236185E75",
|
||||||
|
"checksum": "c6c6a850e11e6cbcd54f20802b80f4c8888c03e26d3be2d9b79f58181ca0fe67"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.29": {
|
"1.29": {
|
||||||
@@ -294,6 +366,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC8CAAB287A857",
|
"etag": "0x8DC8CAAB287A857",
|
||||||
"checksum": "075ddcc42de6e90dc46a942c8b1914142563dff49f6e8dd2785da3c263e6663e"
|
"checksum": "075ddcc42de6e90dc46a942c8b1914142563dff49f6e8dd2785da3c263e6663e"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DC8CAB4A717B95",
|
||||||
|
"checksum": "8626a2b514483052f9ca22fd54f78a3fa4cc8111e2ff55736069a78f006bfbb5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.29.0": {
|
"1.29.0": {
|
||||||
@@ -316,6 +392,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC8C1DEE08F385",
|
"etag": "0x8DC8C1DEE08F385",
|
||||||
"checksum": "1c7146005f0e1e8d60c8de38b2c75d86a1b5c199705f645d34b5396fac897599"
|
"checksum": "1c7146005f0e1e8d60c8de38b2c75d86a1b5c199705f645d34b5396fac897599"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DC8C1E62F98452",
|
||||||
|
"checksum": "289caafcba8237fbf8db64e3c5dd56f3714209243ee756036648d19efd4a4d84"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.28": {
|
"1.28": {
|
||||||
@@ -341,6 +421,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DC8596E9980167",
|
"etag": "0x8DC8596E9980167",
|
||||||
"checksum": "d11f9a23fe8263139acbca65cf6d023d8a8f7e76cb52ed7523c8f683b61f647f"
|
"checksum": "d11f9a23fe8263139acbca65cf6d023d8a8f7e76cb52ed7523c8f683b61f647f"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DC85972D892EC7",
|
||||||
|
"checksum": "42abee62de3353180dc6e67f579e24e147ee32da77b79c355851f2d28d8020f2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"1.27": {
|
"1.27": {
|
||||||
|
|||||||
30
manifests/knope.json
generated
30
manifests/knope.json
generated
@@ -3,10 +3,36 @@
|
|||||||
"template": null,
|
"template": null,
|
||||||
"license_markdown": "[MIT](https://github.com/knope-dev/knope/blob/main/LICENSE)",
|
"license_markdown": "[MIT](https://github.com/knope-dev/knope/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.18.2"
|
"version": "0.18.3"
|
||||||
},
|
},
|
||||||
"0.18": {
|
"0.18": {
|
||||||
"version": "0.18.2"
|
"version": "0.18.3"
|
||||||
|
},
|
||||||
|
"0.18.3": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.18.3/knope-x86_64-unknown-linux-musl.tgz",
|
||||||
|
"etag": "0x8DD39BE215D7200",
|
||||||
|
"checksum": "7ebe693bcb214dceef133b9f0ce14af052f74056b205c6175dac3d99713bf8e6",
|
||||||
|
"bin": "knope-x86_64-unknown-linux-musl/knope"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.18.3/knope-x86_64-apple-darwin.tgz",
|
||||||
|
"etag": "0x8DD39BE215F1DD1",
|
||||||
|
"checksum": "a9717b6883436850118e9549acccbe75553ff89a0934d1578c90f280ef974243",
|
||||||
|
"bin": "knope-x86_64-apple-darwin/knope"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.18.3/knope-x86_64-pc-windows-msvc.tgz",
|
||||||
|
"etag": "0x8DD39BE21590A2E",
|
||||||
|
"checksum": "1f8056add6ab3b2af6a1570f166cd4d5f76003ec6d4982c1c3f59eae093580c1",
|
||||||
|
"bin": "knope-x86_64-pc-windows-msvc/knope.exe"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/knope-dev/knope/releases/download/knope/v0.18.3/knope-aarch64-apple-darwin.tgz",
|
||||||
|
"etag": "0x8DD39BE21590A2E",
|
||||||
|
"checksum": "f2ea1719bd3f7143c7ba68ef1a5dfb977739a88f6b93a1e915674ec36fdf3040",
|
||||||
|
"bin": "knope-aarch64-apple-darwin/knope"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.18.2": {
|
"0.18.2": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
29
manifests/mdbook.json
generated
29
manifests/mdbook.json
generated
@@ -15,14 +15,39 @@
|
|||||||
},
|
},
|
||||||
"aarch64_linux_musl": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/rust-lang/mdBook/releases/download/v${version}/mdbook-v${version}-aarch64-unknown-linux-musl.tar.gz"
|
"url": "https://github.com/rust-lang/mdBook/releases/download/v${version}/mdbook-v${version}-aarch64-unknown-linux-musl.tar.gz"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/rust-lang/mdBook/releases/download/v${version}/mdbook-v${version}-aarch64-apple-darwin.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"license_markdown": "[MPL-2.0](https://github.com/rust-lang/mdBook/blob/master/LICENSE)",
|
"license_markdown": "[MPL-2.0](https://github.com/rust-lang/mdBook/blob/master/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.4.43"
|
"version": "0.4.44"
|
||||||
},
|
},
|
||||||
"0.4": {
|
"0.4": {
|
||||||
"version": "0.4.43"
|
"version": "0.4.44"
|
||||||
|
},
|
||||||
|
"0.4.44": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3FC815F2410B",
|
||||||
|
"checksum": "518577082a4e97ed990aa7f5a89dc65bbc1a57960449cb227eb0bf5becdefa06"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3FC80CCC435E",
|
||||||
|
"checksum": "416cd7f2d83194259a103746c2f35aef87427d9e48541397695929162e9d0557"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3FC86BDA4648",
|
||||||
|
"checksum": "fcbe65273c7d7760a98c03ab5ecc7ca44cd3a170eb8d0925e44fd8149fea6c2d"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3FC81411BB91",
|
||||||
|
"checksum": "6e03ca8a5e72518128cd86a9b99bf8e1b29fa90dcfbd6bf5d9bcffd2e34cb4d7"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3FC81343BADA",
|
||||||
|
"checksum": "a7e203a9b131ba045d6e4aff27f1a817059af9fe8174d86d78f79153da2e2b61"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.4.43": {
|
"0.4.43": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
68
manifests/parse-changelog.json
generated
68
manifests/parse-changelog.json
generated
@@ -3,10 +3,74 @@
|
|||||||
"template": null,
|
"template": null,
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-MIT)",
|
"license_markdown": "[Apache-2.0](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/parse-changelog/blob/main/LICENSE-MIT)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.6.10"
|
"version": "0.6.12"
|
||||||
},
|
},
|
||||||
"0.6": {
|
"0.6": {
|
||||||
"version": "0.6.10"
|
"version": "0.6.12"
|
||||||
|
},
|
||||||
|
"0.6.12": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.12/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
|
||||||
|
"etag": "0x8DD4697ED565D46",
|
||||||
|
"checksum": "619b7512735e294e9f758df6ed6d85a562d126460d71d3349d9f08e667a29225"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.12/parse-changelog-x86_64-apple-darwin.tar.gz",
|
||||||
|
"etag": "0x8DD46982CC23D64",
|
||||||
|
"checksum": "d88b967f24eee717a34126bd1104a8eeeb561894693d9a2e760b6cf1c0edfbc9"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.12/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
|
||||||
|
"etag": "0x8DD469835945C2B",
|
||||||
|
"checksum": "29527cf19d1bbc772dcbc9776ec09c28e6e5f75c36c0eeea60ab631d6f2b8c62"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.12/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
|
||||||
|
"etag": "0x8DD4697EDCABBF6",
|
||||||
|
"checksum": "6cfb4707d0b90a8cf9f2c3b4d3e161d50333f4f4d180bf1e775786eec69c7820"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.12/parse-changelog-aarch64-apple-darwin.tar.gz",
|
||||||
|
"etag": "0x8DD469811E4DFFC",
|
||||||
|
"checksum": "cad9f0ced004adf49f217da98a28e0a2e8aa720ad082f1a64fa9b3b507405b78"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.12/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
|
||||||
|
"etag": "0x8DD4698242B5DF1",
|
||||||
|
"checksum": "aa3fca8305d2aa21246dbcb0a080574bc3b43efe2e71117545a688a15f9e24e7"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.6.11": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.11/parse-changelog-x86_64-unknown-linux-musl.tar.gz",
|
||||||
|
"etag": "0x8DD38C1F612ECE8",
|
||||||
|
"checksum": "805c0e86ad53c734973e1f55efc8fb6d82919029fdca4d27f80d590f94688edc"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.11/parse-changelog-x86_64-apple-darwin.tar.gz",
|
||||||
|
"etag": "0x8DD38C20DC407CA",
|
||||||
|
"checksum": "9176db18ab6adc3bb1d4302eb52c83a9d46319df2b4671fccc4669dd8ce36fc6"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.11/parse-changelog-x86_64-pc-windows-msvc.tar.gz",
|
||||||
|
"etag": "0x8DD38C22DBBA859",
|
||||||
|
"checksum": "299c282946f836b200940f0b4b2c8646e51eff9f3602bd0c2a99b483aa2d4429"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.11/parse-changelog-aarch64-unknown-linux-musl.tar.gz",
|
||||||
|
"etag": "0x8DD38C1F6DE0AEB",
|
||||||
|
"checksum": "a294359f1b1a904a34911fbf482c69ee28924dc8c27f2a1b84b4eb2108b6df3d"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.11/parse-changelog-aarch64-apple-darwin.tar.gz",
|
||||||
|
"etag": "0x8DD38C1F6FB83DD",
|
||||||
|
"checksum": "e4e841ba10e7a0e314ec192142c016974f4999a03fc0f37c8803708654098c91"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-changelog/releases/download/v0.6.11/parse-changelog-aarch64-pc-windows-msvc.tar.gz",
|
||||||
|
"etag": "0x8DD38C22406DAAB",
|
||||||
|
"checksum": "a5606df69e240edcf24e9466abdce004ba21c9f9cafe42d659fd3f3cb3d375e6"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.6.10": {
|
"0.6.10": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
82
manifests/parse-dockerfile.json
generated
Normal file
82
manifests/parse-dockerfile.json
generated
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
{
|
||||||
|
"rust_crate": "parse-dockerfile",
|
||||||
|
"template": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-dockerfile/releases/download/v${version}/parse-dockerfile-x86_64-unknown-linux-musl.tar.gz"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-dockerfile/releases/download/v${version}/parse-dockerfile-x86_64-apple-darwin.tar.gz"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-dockerfile/releases/download/v${version}/parse-dockerfile-x86_64-pc-windows-msvc.tar.gz"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-dockerfile/releases/download/v${version}/parse-dockerfile-aarch64-unknown-linux-musl.tar.gz"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-dockerfile/releases/download/v${version}/parse-dockerfile-aarch64-apple-darwin.tar.gz"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/taiki-e/parse-dockerfile/releases/download/v${version}/parse-dockerfile-aarch64-pc-windows-msvc.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"license_markdown": "[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)",
|
||||||
|
"latest": {
|
||||||
|
"version": "0.1.1"
|
||||||
|
},
|
||||||
|
"0.1": {
|
||||||
|
"version": "0.1.1"
|
||||||
|
},
|
||||||
|
"0.1.1": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD46980448F328",
|
||||||
|
"checksum": "b72138691c67e48d77b1c69c726bf9815edc9554144fc6eb513c2df02d31ffc9"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD469864E107C5",
|
||||||
|
"checksum": "d0f2192e66a9ac52f1624f0ff0543f701c6c8e5a690f63f21c481b5b3e3748eb"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD46983232CEF8",
|
||||||
|
"checksum": "c2e8e5da8e377a13eb9e8692dd0ac6793700f43240f4cc49d00aa9831d3d561f"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD469805997397",
|
||||||
|
"checksum": "29c0a71340eb1bcc8033ae1f3e6e77afe921f8c5c3d6b2919c50c1d5eaab22b6"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD46984CFFA486",
|
||||||
|
"checksum": "c91b6512ef18a51486065164cfd31d0acd5de1e47db94ef447b6d4f24e670ea6"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD46983C64A17B",
|
||||||
|
"checksum": "f664f395e639dd6d269c96a3443ca003c46e387701334be9bb527795e4f77234"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.1.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD42FBF89625FB",
|
||||||
|
"checksum": "9619a5811b9cc3cfa109135860469f4557de42cef776bc4b22b9459121ec6149"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD42FBFE2FF6FD",
|
||||||
|
"checksum": "b50e59f1e232d64ae568bac1bf5ddd8f80bcd783b1d322373b5d603d63bce66c"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD42FC0E0FA8E5",
|
||||||
|
"checksum": "265d4ca8a6c268177dd2e25472247be6b1cf5294005cfa16250bcaf2be9d0d84"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD42FBFD9C4C90",
|
||||||
|
"checksum": "68b4822d75300feab0a56d52a3a798ac447319a015e4c2e2de0d353979a109da"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD42FC022D9F9B",
|
||||||
|
"checksum": "c4eaff6be100426f2c36a08bc2aa0e3c323880b03fdf88e94c469eedcc9a276d"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD42FC11EF8AB9",
|
||||||
|
"checksum": "e8fa1b845c79fa3b478c0c19e34d508ad73b6924ab6ba84c83139d0d318efdf2"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
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)",
|
"license_markdown": "[MIT](https://github.com/rclone/rclone/blob/master/COPYING)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "1.68.2"
|
"version": "1.69.0"
|
||||||
},
|
},
|
||||||
"1": {
|
"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": {
|
"1.68": {
|
||||||
"version": "1.68.2"
|
"version": "1.68.2"
|
||||||
|
|||||||
160
manifests/release-plz.json
generated
160
manifests/release-plz.json
generated
@@ -22,10 +22,166 @@
|
|||||||
},
|
},
|
||||||
"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)",
|
"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": {
|
"latest": {
|
||||||
"version": "0.3.112"
|
"version": "0.3.118"
|
||||||
},
|
},
|
||||||
"0.3": {
|
"0.3": {
|
||||||
"version": "0.3.112"
|
"version": "0.3.118"
|
||||||
|
},
|
||||||
|
"0.3.118": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD488F61EDB29B",
|
||||||
|
"checksum": "f751266da808ec38b0426abce0e68387221f3dc323b96400113e040fff0bb130"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD4890279C0CCC",
|
||||||
|
"checksum": "2f1ea887591575c3c6e73f9697f030c54d2ba2c90cfc19e7989f16d77e2df010"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD489048364449",
|
||||||
|
"checksum": "bcdcb79e2015c1cb73634b8ea797b7e9124332630fda096f5a924c203adb351f"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD488F7BD66E21",
|
||||||
|
"checksum": "b9ef712f8946d6522f0052bafd769a28e885ff7b20970aa1a8eea5085fecf80e"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD488FD9BD6C14",
|
||||||
|
"checksum": "7eaffdcfebb772b9bff42af2c53102d19f285307df14b061620cafc32f8ab167"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD489056222AB7",
|
||||||
|
"checksum": "87850153a0a917c36b6ecf404a952e9a88443872c313a79896131a28e0b56685"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.3.117": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD48765324E4A3",
|
||||||
|
"checksum": "5cc9089077c1e0f097d9687afacbba241f2ad5a816debf834a45e0f539d6d2ec"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD48772F752763",
|
||||||
|
"checksum": "162022c86d213f3ec4cf5aba07dfaae3cae84d0cc89baab02e0856f189e3d99a"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD487743DFFA65",
|
||||||
|
"checksum": "cf221437eaa5248685ed4e1b464300af5f132bbe91889a74986a919ed99acb64"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD48765BCE51C3",
|
||||||
|
"checksum": "21e4007f9b180fda271ff7ea8f6bd34363b3890eff055fac5cc6b7c0db2db71e"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD4876A58DECD0",
|
||||||
|
"checksum": "8c0f638037005a7b8e231dec717846324b7e3f8dd7cb0cdc85feeb59746d5254"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD48770B3846CE",
|
||||||
|
"checksum": "7bd493f496c0b55b68600af36b4b9c2225f75db693665832b943526b8253e38f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.3.116": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD42DE5F06AD6B",
|
||||||
|
"checksum": "478cd61804a0f680194e087e61f8efeff8f9d4336c6677f6dbf7857caa1bd277"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD42DEDA2BEEC8",
|
||||||
|
"checksum": "090475722ef7aaf583fdcc33b9dbb39779859226dab569a243ccc26df5d71adc"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD42DF1BAAF799",
|
||||||
|
"checksum": "bd356a00f8d8accc6599edc44847b7501fc0df3b03c1efb3fb6292265ab8c044"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD42DE7BC7EF8B",
|
||||||
|
"checksum": "0d346b05dfa6aed484d701343ac1cf5b4686f9a53de67b7514e0f93475640701"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD42DF056C6C3B",
|
||||||
|
"checksum": "c79a30c44b15643ff569270b2c7de9b4416784624f50a6d03f49519b2f247a55"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD42DF27182C76",
|
||||||
|
"checksum": "29f933fd59d05ca0be99493d0e3cfa6e1134b2b3c3b02cc32eb63ceb17841894"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.3.115": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD42D7BC589A24",
|
||||||
|
"checksum": "aafca01db66ae647d95b6383300bf966cafe1176655cf40109c4362a7c107812"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD42D80E66C940",
|
||||||
|
"checksum": "586542b06db56a82b94741f14b2953a36b2d9129e0678cf71dab1c9d9fda6c4b"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD42D87237BFB4",
|
||||||
|
"checksum": "90cf663d1b20240badcc5ef7d1ecb41e51856157412fc0a8565f0d4f1bc7ebe2"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD42D7C9D3E797",
|
||||||
|
"checksum": "886eb3d7290c5a46658de62930c7b4377558c8cd27bb7e0c2b20c295f8b1804e"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD42D804B2C109",
|
||||||
|
"checksum": "f8ab95bda2f46ba84374120a01baa07e6ccc7962db8d24a682a852d3eca70013"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD42D88EAB51A1",
|
||||||
|
"checksum": "2922a0548329847aec6816c06472271be7f27946cd0017b811b3d0e2e3adc95f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.3.114": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3C8410CD9FE0",
|
||||||
|
"checksum": "b0895ee201b67c177bf7b4defb3c1c4d15369960f9e37c4fb9abf12d99ec8ff5"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3C84CF4B33C9",
|
||||||
|
"checksum": "a42de7752ee51e1725c504d20f172b2c9a3aae8715a407eda48ed94da083b668"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3C84C2D46C3F",
|
||||||
|
"checksum": "a113c4d2e9f3cd9a17be6b2b15593944241413278d86ee2055697e88eca7b2b8"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3C8420CCA150",
|
||||||
|
"checksum": "75a00279f3533dafcd3c15332ca30379d576b8517598e83d4e52fd81e9d72998"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3C8503A13166",
|
||||||
|
"checksum": "b2d75f28b873a6627e7c48b020cfba190e7a9ba58d2dfc0d5dde9845d4b2c1f6"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD3C851F4D3AF9",
|
||||||
|
"checksum": "1dfff2fd324a27a485a64cbc9fc8db2be544131f57439e206931a260090b9fb1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"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": {
|
"0.3.112": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
16
manifests/sccache.json
generated
16
manifests/sccache.json
generated
@@ -20,6 +20,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"url": "https://github.com/mozilla/sccache/releases/download/v${version}/sccache-v${version}-aarch64-apple-darwin.tar.gz",
|
"url": "https://github.com/mozilla/sccache/releases/download/v${version}/sccache-v${version}-aarch64-apple-darwin.tar.gz",
|
||||||
"bin": "sccache-v${version}-aarch64-apple-darwin/sccache"
|
"bin": "sccache-v${version}-aarch64-apple-darwin/sccache"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"url": "https://github.com/mozilla/sccache/releases/download/v${version}/sccache-v${version}-aarch64-pc-windows-msvc.tar.gz",
|
||||||
|
"bin": "sccache-v${version}-aarch64-pc-windows-msvc/sccache.exe"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"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)",
|
||||||
@@ -49,6 +53,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD2EF9DFE5C27C",
|
"etag": "0x8DD2EF9DFE5C27C",
|
||||||
"checksum": "a2725e27c12961301834fe4c56ab982af6e8eb86fd51b82179369f1682776800"
|
"checksum": "a2725e27c12961301834fe4c56ab982af6e8eb86fd51b82179369f1682776800"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD2EF9E07AF1EF",
|
||||||
|
"checksum": "99bd024919430de3c741658adc60334305a61c0a109f7a334c030f0bb56007a6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"0.9.0": {
|
"0.9.0": {
|
||||||
@@ -71,6 +79,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DD18952CD41AB6",
|
"etag": "0x8DD18952CD41AB6",
|
||||||
"checksum": "f75b5b3d6046cac60a9eef362d86e6eeebdb4cc3c5dfd2e483f14f03ce4b94cf"
|
"checksum": "f75b5b3d6046cac60a9eef362d86e6eeebdb4cc3c5dfd2e483f14f03ce4b94cf"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD18952D6CA1F0",
|
||||||
|
"checksum": "2fcd156a9d4dda1c72edb3a008fb5def43179c614fafe51cd53a79d1a4e793fa"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"0.8": {
|
"0.8": {
|
||||||
@@ -96,6 +108,10 @@
|
|||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
"etag": "0x8DCDF9C8E16337F",
|
"etag": "0x8DCDF9C8E16337F",
|
||||||
"checksum": "32604da614ce679623a8de0d38eab91b87431d59f3344c5523c82e1b6e85ffc4"
|
"checksum": "32604da614ce679623a8de0d38eab91b87431d59f3344c5523c82e1b6e85ffc4"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DCDF9C8F030B2A",
|
||||||
|
"checksum": "9db7522aab473c3dbd588fd0424de4c0e5dc012ce3bffec8c2ef65fc8d315645"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"0.8.1": {
|
"0.8.1": {
|
||||||
|
|||||||
8
manifests/shellcheck.json
generated
8
manifests/shellcheck.json
generated
@@ -16,6 +16,10 @@
|
|||||||
"aarch64_linux_musl": {
|
"aarch64_linux_musl": {
|
||||||
"url": "https://github.com/koalaman/shellcheck/releases/download/v${version}/shellcheck-v${version}.linux.aarch64.tar.xz",
|
"url": "https://github.com/koalaman/shellcheck/releases/download/v${version}/shellcheck-v${version}.linux.aarch64.tar.xz",
|
||||||
"bin": "shellcheck-v${version}/shellcheck"
|
"bin": "shellcheck-v${version}/shellcheck"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"url": "https://github.com/koalaman/shellcheck/releases/download/v${version}/shellcheck-v${version}.darwin.aarch64.tar.xz",
|
||||||
|
"bin": "shellcheck-v${version}/shellcheck"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"license_markdown": "[GPL-3.0](https://github.com/koalaman/shellcheck/blob/master/LICENSE)",
|
"license_markdown": "[GPL-3.0](https://github.com/koalaman/shellcheck/blob/master/LICENSE)",
|
||||||
@@ -41,6 +45,10 @@
|
|||||||
"aarch64_linux_musl": {
|
"aarch64_linux_musl": {
|
||||||
"etag": "0x8DC3F18BC550818",
|
"etag": "0x8DC3F18BC550818",
|
||||||
"checksum": "324a7e89de8fa2aed0d0c28f3dab59cf84c6d74264022c00c22af665ed1a09bb"
|
"checksum": "324a7e89de8fa2aed0d0c28f3dab59cf84c6d74264022c00c22af665ed1a09bb"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DC3F18BC8509B7",
|
||||||
|
"checksum": "bbd2f14826328eee7679da7221f2bc3afb011f6a928b848c80c321f6046ddf81"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"0.9": {
|
"0.9": {
|
||||||
|
|||||||
29
manifests/syft.json
generated
29
manifests/syft.json
generated
@@ -24,10 +24,35 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/anchore/syft/blob/main/LICENSE)",
|
"license_markdown": "[Apache-2.0](https://github.com/anchore/syft/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "1.18.1"
|
"version": "1.19.0"
|
||||||
},
|
},
|
||||||
"1": {
|
"1": {
|
||||||
"version": "1.18.1"
|
"version": "1.19.0"
|
||||||
|
},
|
||||||
|
"1.19": {
|
||||||
|
"version": "1.19.0"
|
||||||
|
},
|
||||||
|
"1.19.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3B2008D5F4D4",
|
||||||
|
"checksum": "1dec148ea36aef68a866e35528974b5dbc106ba0b545f1a262ad977d48294637"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3B2009AFA9C7",
|
||||||
|
"checksum": "bc6ddeef1c08e0925549033e75ce51e5b916baa505a2eee7fe197ed84f0db1bd"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3B2009A55517",
|
||||||
|
"checksum": "405171c57db0c0a6c259a90673ae498482f2501e8ac9b685a94fa186dd6b9a4b"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3B2008D8B0E6",
|
||||||
|
"checksum": "3ec1412f1497a7aad795a36d09dc1df2bad349f07e274bbaf50c8c3746549048"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3B2009A9961B",
|
||||||
|
"checksum": "a42c5b76d5f1555fd4a3de65ecd523c4f1364f9c71861a6530c7b8478205687e"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"1.18": {
|
"1.18": {
|
||||||
"version": "1.18.1"
|
"version": "1.18.1"
|
||||||
|
|||||||
48
manifests/trunk.json
generated
48
manifests/trunk.json
generated
@@ -19,10 +19,54 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[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)",
|
"license_markdown": "[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)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.21.5"
|
"version": "0.21.7"
|
||||||
},
|
},
|
||||||
"0.21": {
|
"0.21": {
|
||||||
"version": "0.21.5"
|
"version": "0.21.7"
|
||||||
|
},
|
||||||
|
"0.21.7": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3A2D3E4E65D8",
|
||||||
|
"checksum": "74da2b114b85498063ccb85f950214bddab4606750699eb56f73bebffa2575df"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3A2D3DC7CC05",
|
||||||
|
"checksum": "5ccdd1ecfba9ebf4e20bc0ed6f90900f6667600d0cb2d1e23bfda94d71d77f7c"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3A2D3DFB99FD",
|
||||||
|
"checksum": "83b7915eb22d61d8ada4501a9ba0b44b6b2567d89b20e60fdf4a83bfadfe184e"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3A2D3D832102",
|
||||||
|
"checksum": "aed809b907272a335ee168df3b21ab7a29f41a1fb830fc446096da78af3fcbac"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3A2D3D709841",
|
||||||
|
"checksum": "bebbbe865b6b8e5d07cd00e7cf77e81beccdee446236efe636ca53c2f9e0ce12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0.21.6": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD395263DA4485",
|
||||||
|
"checksum": "cd0897cb2db44c3305bea357a150759b7ba7cfc3e4290498d73692bbf87a55f3"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3952638703EF",
|
||||||
|
"checksum": "3bf14129b4f4cdbdf82d4742da19972ec13bd7be8fb1cabd477d9dbf2d215b87"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD395263A03BE8",
|
||||||
|
"checksum": "02e025f6a3b4eecc1edc23b14864e15471a4d6159f9a91ec5f9b1cd1617563ca"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD395263490844",
|
||||||
|
"checksum": "8a8a49af75a0499031372506f2703904504d3c1c2034aa48e648ccd7ef1f2238"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD39526347F804",
|
||||||
|
"checksum": "7f65126595d00d6e660b9f3e89fedc40a927bd06556461e45ae592468addeb05"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.21.5": {
|
"0.21.5": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
24
manifests/typos.json
generated
24
manifests/typos.json
generated
@@ -16,13 +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.29.4"
|
"version": "1.29.5"
|
||||||
},
|
},
|
||||||
"1": {
|
"1": {
|
||||||
"version": "1.29.4"
|
"version": "1.29.5"
|
||||||
},
|
},
|
||||||
"1.29": {
|
"1.29": {
|
||||||
"version": "1.29.4"
|
"version": "1.29.5"
|
||||||
|
},
|
||||||
|
"1.29.5": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD417A6CB2709D",
|
||||||
|
"checksum": "e4101f822065efd864d09e1c684038cfec8b2805039ba8e1d8e911d1386eac46"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD417ACDB64ACA",
|
||||||
|
"checksum": "b2204510baaeb8e7186155c7b38d0ffc146d75e08dd14d300d887a87a4d30669"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD417AC3813FC9",
|
||||||
|
"checksum": "804d887c804b13ff26ab46677eb534fc912538c59c049ebaffe133e7f0e70456"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD417AD33699BA",
|
||||||
|
"checksum": "ef9eb9a9ec7cfeaba3909b154cc01edcbee4b5c370acd6b70508cd4d4d19c20c"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"1.29.4": {
|
"1.29.4": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
27
manifests/wash.json
generated
27
manifests/wash.json
generated
@@ -19,7 +19,32 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[Apache-2.0](https://github.com/wasmCloud/wasmCloud/blob/main/LICENSE)",
|
"license_markdown": "[Apache-2.0](https://github.com/wasmCloud/wasmCloud/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.37.0"
|
"version": "0.38.0"
|
||||||
|
},
|
||||||
|
"0.38": {
|
||||||
|
"version": "0.38.0"
|
||||||
|
},
|
||||||
|
"0.38.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"etag": "0x8DD3EEC2CD0065E",
|
||||||
|
"checksum": "8bba2463f4e121fdbbebc4046aabe1ade54aa3bd72ba70a57ad4b0e0e657bec2"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD40984BD1ED53",
|
||||||
|
"checksum": "68b167bbadf17c3807f5b09d7b16287f543f4dc36557f998c307856c09d3aabb"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3EEC2C069451",
|
||||||
|
"checksum": "befd98782a0ab1081c5f4f9dad770c57126770820feddcc7246fc1fdcad99caa"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"etag": "0x8DD3EEC2BE7967B",
|
||||||
|
"checksum": "bab4fad652eaa9bb1e890daa0478ec223aaf448fb72eb00e59014034a3bca345"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD40983E271249",
|
||||||
|
"checksum": "7fdac7caa9eb3ce8f54447d2e35b37f578555de3ab39b26b59b08eb59e01e4cb"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.37": {
|
"0.37": {
|
||||||
"version": "0.37.0"
|
"version": "0.37.0"
|
||||||
|
|||||||
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)",
|
"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": {
|
"latest": {
|
||||||
"version": "0.2.99"
|
"version": "0.2.100"
|
||||||
},
|
},
|
||||||
"0.2": {
|
"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": {
|
"0.2.99": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
90
manifests/wasmtime.json
generated
90
manifests/wasmtime.json
generated
@@ -28,13 +28,97 @@
|
|||||||
},
|
},
|
||||||
"license_markdown": "[Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/main/LICENSE)",
|
"license_markdown": "[Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/main/LICENSE)",
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "28.0.0"
|
"version": "29.0.1"
|
||||||
|
},
|
||||||
|
"29": {
|
||||||
|
"version": "29.0.1"
|
||||||
|
},
|
||||||
|
"29.0": {
|
||||||
|
"version": "29.0.1"
|
||||||
|
},
|
||||||
|
"29.0.1": {
|
||||||
|
"x86_64_linux_gnu": {
|
||||||
|
"etag": "0x8DD3A6D256D8BBF",
|
||||||
|
"checksum": "579ec7086f34ff6bbc53483ae00f660be1570f3ef10af0880a4ba9867067a77c"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3A6D266E4B06",
|
||||||
|
"checksum": "7f62746a61c759932f4307cec32f139b31c9e5db93eab6c02238dcb82bd9a6d8"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3A6D2A99FEE2",
|
||||||
|
"checksum": "3d4c7b4145fb4426c4ece54302f598c33998f9d2cc8894059d7103b83d3dddff"
|
||||||
|
},
|
||||||
|
"aarch64_linux_gnu": {
|
||||||
|
"etag": "0x8DD3A6D1C888CBD",
|
||||||
|
"checksum": "5db4d27d008d726fe69adf8fcf59f42b0c2f0e51519970414860efda8b5e9655"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3A6D1D6964A8",
|
||||||
|
"checksum": "56fb3c04c230eabcce92717081c51d3dc87d3416c3b059a2783e5496a29cf384"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD3A6D1F419085",
|
||||||
|
"checksum": "93b4a2bcbe9ad9c0505b246c6bd38550428be05876995230b607fde35bd772f1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"29.0.0": {
|
||||||
|
"x86_64_linux_gnu": {
|
||||||
|
"etag": "0x8DD3980E5BCFA27",
|
||||||
|
"checksum": "a8b199405d14a53e9d9196c556643f19b0de9bcd61664246d7511bee34cef2f7"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"etag": "0x8DD3980E6BE06EA",
|
||||||
|
"checksum": "e5bfaa01985317039c3f57ac42bf117c693b4a1203bfbe8de741c7781a41b9dc"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"etag": "0x8DD3980EB038D65",
|
||||||
|
"checksum": "8114c08d134e9ec845152da99c382692c7f568ae0effcef550976bdaacfb4e8e"
|
||||||
|
},
|
||||||
|
"aarch64_linux_gnu": {
|
||||||
|
"etag": "0x8DD3980DA3E93C6",
|
||||||
|
"checksum": "a1e7fb17bc929ffd02e0e847a8c109f371407afec90180ef576d554d29cff3e0"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"etag": "0x8DD3980DB3807EC",
|
||||||
|
"checksum": "d83fe0c2d3c3c67762f84a794045e020b0bfe1f4b1c56a138d59e2bbb9a04d2f"
|
||||||
|
},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"etag": "0x8DD3980DD632632",
|
||||||
|
"checksum": "60caa468edf711454ab9fd6900ef71e9fdb6d7c94f76740181e64bca2e1b3110"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"28": {
|
"28": {
|
||||||
"version": "28.0.0"
|
"version": "28.0.1"
|
||||||
},
|
},
|
||||||
"28.0": {
|
"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": {
|
"28.0.0": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_gnu": {
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ cd -- "$(dirname -- "$0")"/../..
|
|||||||
# They don't provide prebuilt binaries for musl or old glibc host.
|
# They don't provide prebuilt binaries for musl or old glibc host.
|
||||||
# version `GLIBC_2.34' not found
|
# version `GLIBC_2.34' not found
|
||||||
glibc_pre_2_34_incompat=(
|
glibc_pre_2_34_incompat=(
|
||||||
cargo-cyclonedx
|
|
||||||
cargo-spellcheck
|
cargo-spellcheck
|
||||||
wait-for-them
|
wait-for-them
|
||||||
xbuild
|
xbuild
|
||||||
@@ -36,7 +35,7 @@ glibc_pre_2_27_incompat=(
|
|||||||
# version `GLIBC_2.17' not found
|
# version `GLIBC_2.17' not found
|
||||||
glibc_pre_2_17_incompat=(
|
glibc_pre_2_17_incompat=(
|
||||||
"${glibc_pre_2_27_incompat[@]}"
|
"${glibc_pre_2_27_incompat[@]}"
|
||||||
deepsource
|
deepsource # https://github.com/DeepSourceCorp/cli/issues/245
|
||||||
)
|
)
|
||||||
musl_incompat=(
|
musl_incompat=(
|
||||||
"${glibc_pre_2_17_incompat[@]}"
|
"${glibc_pre_2_17_incompat[@]}"
|
||||||
@@ -68,15 +67,15 @@ case "$(uname -s)" in
|
|||||||
incompat_tools+=("${musl_incompat[@]}")
|
incompat_tools+=("${musl_incompat[@]}")
|
||||||
else
|
else
|
||||||
host_glibc_version=$(grep -E "GLIBC|GNU libc" <<<"${ldd_version}" | sed "s/.* //g")
|
host_glibc_version=$(grep -E "GLIBC|GNU libc" <<<"${ldd_version}" | sed "s/.* //g")
|
||||||
higher_glibc_version=$(sort -Vu <<<"2.34"$'\n'"${host_glibc_version}" | tail -1)
|
higher_glibc_version=$(LC_ALL=C sort -Vu <<<"2.34"$'\n'"${host_glibc_version}" | tail -1)
|
||||||
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
||||||
higher_glibc_version=$(sort -Vu <<<"2.31"$'\n'"${host_glibc_version}" | tail -1)
|
higher_glibc_version=$(LC_ALL=C sort -Vu <<<"2.31"$'\n'"${host_glibc_version}" | tail -1)
|
||||||
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
||||||
higher_glibc_version=$(sort -Vu <<<"2.28"$'\n'"${host_glibc_version}" | tail -1)
|
higher_glibc_version=$(LC_ALL=C sort -Vu <<<"2.28"$'\n'"${host_glibc_version}" | tail -1)
|
||||||
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
||||||
higher_glibc_version=$(sort -Vu <<<"2.27"$'\n'"${host_glibc_version}" | tail -1)
|
higher_glibc_version=$(LC_ALL=C sort -Vu <<<"2.27"$'\n'"${host_glibc_version}" | tail -1)
|
||||||
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
||||||
higher_glibc_version=$(sort -Vu <<<"2.17"$'\n'"${host_glibc_version}" | tail -1)
|
higher_glibc_version=$(LC_ALL=C sort -Vu <<<"2.17"$'\n'"${host_glibc_version}" | tail -1)
|
||||||
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
|
||||||
incompat_tools+=("${glibc_pre_2_17_incompat[@]}")
|
incompat_tools+=("${glibc_pre_2_17_incompat[@]}")
|
||||||
else
|
else
|
||||||
@@ -110,6 +109,12 @@ case "$(uname -s)" in
|
|||||||
;;
|
;;
|
||||||
*) bail "unrecognized OS type '$(uname -s)'" ;;
|
*) bail "unrecognized OS type '$(uname -s)'" ;;
|
||||||
esac
|
esac
|
||||||
|
# See main.sh
|
||||||
|
case "$(uname -m)" in
|
||||||
|
aarch64 | arm64) host_arch=aarch64 ;;
|
||||||
|
xscale | arm | armv*l) bail "32-bit Arm runner is not supported yet by this action; if you need support for this platform, please submit an issue at <https://github.com/taiki-e/install-action>" ;;
|
||||||
|
*) host_arch=x86_64 ;;
|
||||||
|
esac
|
||||||
|
|
||||||
tools=()
|
tools=()
|
||||||
for manifest in tools/codegen/base/*.json; do
|
for manifest in tools/codegen/base/*.json; do
|
||||||
@@ -120,9 +125,13 @@ for manifest in tools/codegen/base/*.json; do
|
|||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
linux*) ;;
|
linux*)
|
||||||
|
if [[ "${host_arch}" != "x86_64" ]] && [[ "$(jq -r ".platform.${host_arch}_${host_os}_gnu" "${manifest}")" == "null" ]] && [[ "$(jq -r ".platform.${host_arch}_${host_os}_musl" "${manifest}")" == "null" ]]; then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]]; then
|
if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]] && [[ "$(jq -r ".platform.${host_arch}_${host_os}" "${manifest}")" == "null" ]]; then
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ edition = "2021"
|
|||||||
default-run = "generate-manifest"
|
default-run = "generate-manifest"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
install-action-manifest-schema = { path = "../manifest-schema" }
|
||||||
anyhow = "1"
|
anyhow = "1"
|
||||||
flate2 = "1"
|
flate2 = "1"
|
||||||
fs-err = "3"
|
fs-err = "3"
|
||||||
@@ -17,7 +18,7 @@ spdx = "0.10"
|
|||||||
tar = "0.4"
|
tar = "0.4"
|
||||||
toml_edit = { version = "0.22", default-features = false, features = ["parse", "serde"] }
|
toml_edit = { version = "0.22", default-features = false, features = ["parse", "serde"] }
|
||||||
# TODO: call curl command instead of using ureq?
|
# TODO: call curl command instead of using ureq?
|
||||||
ureq = { version = "2", features = ["json"] }
|
ureq = { version = "3", features = ["json"] }
|
||||||
|
|
||||||
[lints]
|
[lints]
|
||||||
workspace = true
|
workspace = true
|
||||||
|
|||||||
@@ -2,16 +2,30 @@
|
|||||||
"repository": "https://github.com/CycloneDX/cyclonedx-rust-cargo",
|
"repository": "https://github.com/CycloneDX/cyclonedx-rust-cargo",
|
||||||
"tag_prefix": "cargo-cyclonedx-",
|
"tag_prefix": "cargo-cyclonedx-",
|
||||||
"rust_crate": "${package}",
|
"rust_crate": "${package}",
|
||||||
|
"bin": "${package}-${rust_target}/${package}${exe}",
|
||||||
"version_range": ">= 0.5.0",
|
"version_range": ">= 0.5.0",
|
||||||
"platform": {
|
"platform": {
|
||||||
"x86_64_macos": {
|
|
||||||
"asset_name": "${package}-Darwin-x86_64.tar.gz"
|
|
||||||
},
|
|
||||||
"x86_64_windows": {
|
|
||||||
"asset_name": "${package}-Win-x86_64.zip"
|
|
||||||
},
|
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_gnu": {
|
||||||
"asset_name": "${package}-linux-amd64.tar.gz"
|
"asset_name": "${package}-linux-amd64.tar.gz"
|
||||||
|
},
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"asset_name": "${package}-${rust_target}.tar.xz"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"asset_name": [
|
||||||
|
"${package}-${rust_target}.tar.xz",
|
||||||
|
"${package}-Darwin-x86_64.tar.gz"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"asset_name": [
|
||||||
|
"${package}-${rust_target}.zip",
|
||||||
|
"${package}-Win-x86_64.zip"
|
||||||
|
],
|
||||||
|
"bin": "${package}${exe}"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"asset_name": "${package}-${rust_target}.tar.xz"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
"x86_64_linux_musl": {},
|
"x86_64_linux_musl": {},
|
||||||
"x86_64_macos": {},
|
"x86_64_macos": {},
|
||||||
"x86_64_windows": {},
|
"x86_64_windows": {},
|
||||||
|
"aarch64_linux_musl": {},
|
||||||
"aarch64_macos": {}
|
"aarch64_macos": {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,10 +6,10 @@
|
|||||||
"asset_name": "${package}-${rust_target}.tar.gz",
|
"asset_name": "${package}-${rust_target}.tar.gz",
|
||||||
"version_range": "> 1.0.5",
|
"version_range": "> 1.0.5",
|
||||||
"platform": {
|
"platform": {
|
||||||
|
"x86_64_linux_gnu": {},
|
||||||
"x86_64_macos": {},
|
"x86_64_macos": {},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-${rust_target}.zip"
|
"asset_name": "${package}-${rust_target}.zip"
|
||||||
},
|
}
|
||||||
"x86_64_linux_gnu": {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,9 +6,9 @@
|
|||||||
"asset_name": "${package}-v${version}-${rust_target}",
|
"asset_name": "${package}-v${version}-${rust_target}",
|
||||||
"version_range": ">= 0.13",
|
"version_range": ">= 0.13",
|
||||||
"platform": {
|
"platform": {
|
||||||
|
"x86_64_linux_gnu": {},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-v${version}-x86_64-pc-windows-gnu.exe"
|
"asset_name": "${package}-v${version}-x86_64-pc-windows-gnu.exe"
|
||||||
},
|
}
|
||||||
"x86_64_linux_gnu": {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,13 +6,13 @@
|
|||||||
"version_range": ">= 0.18.4",
|
"version_range": ">= 0.18.4",
|
||||||
"platform": {
|
"platform": {
|
||||||
"x86_64_linux_musl": {},
|
"x86_64_linux_musl": {},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"asset_name": "${package}-v${version}.apple-darwin.tar.gz"
|
||||||
|
},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-v${version}.windows-x64.zip"
|
"asset_name": "${package}-v${version}.windows-x64.zip"
|
||||||
},
|
},
|
||||||
"aarch64_linux_musl": {},
|
"aarch64_linux_musl": {},
|
||||||
"aarch64_macos": {
|
|
||||||
"asset_name": "${package}-v${version}.apple-darwin.tar.gz"
|
|
||||||
},
|
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"asset_name": "${package}-v${version}.windows-arm64.zip"
|
"asset_name": "${package}-v${version}.windows-arm64.zip"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
"tag_prefix": "v",
|
"tag_prefix": "v",
|
||||||
"version_range": ">= 0.8.13",
|
"version_range": ">= 0.8.13",
|
||||||
"platform": {
|
"platform": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"asset_name": "${package}-linux-amd64"
|
"asset_name": "${package}-linux-amd64"
|
||||||
},
|
},
|
||||||
"x86_64_macos": {
|
"x86_64_macos": {
|
||||||
@@ -12,7 +12,7 @@
|
|||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-windows-amd64.exe"
|
"asset_name": "${package}-windows-amd64.exe"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
"aarch64_linux_musl": {
|
||||||
"asset_name": "${package}-linux-arm64"
|
"asset_name": "${package}-linux-arm64"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
"aarch64_macos": {
|
||||||
|
|||||||
@@ -3,26 +3,26 @@
|
|||||||
"tag_prefix": "v",
|
"tag_prefix": "v",
|
||||||
"version_range": ">= 3.0.0",
|
"version_range": ">= 3.0.0",
|
||||||
"platform": {
|
"platform": {
|
||||||
"x86_64_linux_gnu": {
|
"x86_64_linux_musl": {
|
||||||
"asset_name": "ec-linux-amd64.tar.gz",
|
"asset_name": "ec-linux-amd64.tar.gz",
|
||||||
"bin": "bin/ec-linux-amd64"
|
"bin": "bin/ec-linux-amd64"
|
||||||
},
|
},
|
||||||
"aarch64_linux_gnu": {
|
|
||||||
"asset_name": "ec-linux-arm64.tar.gz",
|
|
||||||
"bin": "bin/ec-linux-arm64"
|
|
||||||
},
|
|
||||||
"x86_64_macos": {
|
"x86_64_macos": {
|
||||||
"asset_name": "ec-darwin-amd64.tar.gz",
|
"asset_name": "ec-darwin-amd64.tar.gz",
|
||||||
"bin": "bin/ec-darwin-amd64"
|
"bin": "bin/ec-darwin-amd64"
|
||||||
},
|
},
|
||||||
"aarch64_macos": {
|
|
||||||
"asset_name": "ec-darwin-arm64.tar.gz",
|
|
||||||
"bin": "bin/ec-darwin-arm64"
|
|
||||||
},
|
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": ["ec-windows-amd64.zip", "ec-windows-amd64${exe}.tar.gz"],
|
"asset_name": ["ec-windows-amd64.zip", "ec-windows-amd64${exe}.tar.gz"],
|
||||||
"bin": "bin/ec-windows-amd64${exe}"
|
"bin": "bin/ec-windows-amd64${exe}"
|
||||||
},
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"asset_name": "ec-linux-arm64.tar.gz",
|
||||||
|
"bin": "bin/ec-linux-arm64"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"asset_name": "ec-darwin-arm64.tar.gz",
|
||||||
|
"bin": "bin/ec-darwin-arm64"
|
||||||
|
},
|
||||||
"aarch64_windows": {
|
"aarch64_windows": {
|
||||||
"asset_name": ["ec-windows-arm64.zip", "ec-windows-arm64${exe}.tar.gz"],
|
"asset_name": ["ec-windows-arm64.zip", "ec-windows-arm64${exe}.tar.gz"],
|
||||||
"bin": "bin/ec-windows-arm64${exe}"
|
"bin": "bin/ec-windows-arm64${exe}"
|
||||||
|
|||||||
@@ -5,12 +5,12 @@
|
|||||||
"asset_name": "${package}-v${version}-${rust_target}",
|
"asset_name": "${package}-v${version}-${rust_target}",
|
||||||
"version_range": ">= 1.4.0",
|
"version_range": ">= 1.4.0",
|
||||||
"platform": {
|
"platform": {
|
||||||
|
"x86_64_linux_musl": {},
|
||||||
"x86_64_macos": {},
|
"x86_64_macos": {},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-v${version}-${rust_target}.exe"
|
"asset_name": "${package}-v${version}-${rust_target}.exe"
|
||||||
},
|
},
|
||||||
"x86_64_linux_musl": {},
|
"aarch64_linux_gnu": {},
|
||||||
"aarch64_macos": {},
|
"aarch64_macos": {}
|
||||||
"aarch64_linux_gnu": {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,9 @@
|
|||||||
"asset_name": "${package}-${version}-${rust_target}.zip"
|
"asset_name": "${package}-${version}-${rust_target}.zip"
|
||||||
},
|
},
|
||||||
"aarch64_linux_musl": {},
|
"aarch64_linux_musl": {},
|
||||||
"aarch64_macos": {}
|
"aarch64_macos": {},
|
||||||
|
"aarch64_windows": {
|
||||||
|
"asset_name": "${package}-${version}-${rust_target}.zip"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
"tag_prefix": "v",
|
"tag_prefix": "v",
|
||||||
"rust_crate": "${package}",
|
"rust_crate": "${package}",
|
||||||
"asset_name": "${package}-v${version}-${rust_target}.tar.gz",
|
"asset_name": "${package}-v${version}-${rust_target}.tar.gz",
|
||||||
|
"version_range": ">= 0.1.0",
|
||||||
"platform": {
|
"platform": {
|
||||||
"x86_64_linux_musl": {},
|
"x86_64_linux_musl": {},
|
||||||
"x86_64_linux_gnu": {},
|
"x86_64_linux_gnu": {},
|
||||||
@@ -10,6 +11,7 @@
|
|||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-v${version}-${rust_target}.zip"
|
"asset_name": "${package}-v${version}-${rust_target}.zip"
|
||||||
},
|
},
|
||||||
"aarch64_linux_musl": {}
|
"aarch64_linux_musl": {},
|
||||||
|
"aarch64_macos": {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
14
tools/codegen/base/parse-dockerfile.json
Normal file
14
tools/codegen/base/parse-dockerfile.json
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"repository": "https://github.com/taiki-e/parse-dockerfile",
|
||||||
|
"tag_prefix": "v",
|
||||||
|
"rust_crate": "${package}",
|
||||||
|
"asset_name": "${package}-${rust_target}.tar.gz",
|
||||||
|
"platform": {
|
||||||
|
"x86_64_linux_musl": {},
|
||||||
|
"x86_64_macos": {},
|
||||||
|
"x86_64_windows": {},
|
||||||
|
"aarch64_linux_musl": {},
|
||||||
|
"aarch64_macos": {},
|
||||||
|
"aarch64_windows": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -6,11 +6,11 @@
|
|||||||
"asset_name": "${package}-${rust_target}.tar.gz",
|
"asset_name": "${package}-${rust_target}.tar.gz",
|
||||||
"version_range": ">= 0.3.20",
|
"version_range": ">= 0.3.20",
|
||||||
"platform": {
|
"platform": {
|
||||||
"aarch64_macos": {},
|
"x86_64_linux_musl": {},
|
||||||
"aarch64_windows": {},
|
|
||||||
"aarch64_linux_musl": {},
|
|
||||||
"x86_64_macos": {},
|
"x86_64_macos": {},
|
||||||
"x86_64_windows": {},
|
"x86_64_windows": {},
|
||||||
"x86_64_linux_musl": {}
|
"aarch64_linux_musl": {},
|
||||||
|
"aarch64_macos": {},
|
||||||
|
"aarch64_windows": {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,10 +7,9 @@
|
|||||||
"platform": {
|
"platform": {
|
||||||
"x86_64_linux_musl": {},
|
"x86_64_linux_musl": {},
|
||||||
"x86_64_macos": {},
|
"x86_64_macos": {},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {},
|
||||||
"asset_name": "${package}-v${version}-${rust_target}.tar.gz"
|
|
||||||
},
|
|
||||||
"aarch64_linux_musl": {},
|
"aarch64_linux_musl": {},
|
||||||
"aarch64_macos": {}
|
"aarch64_macos": {},
|
||||||
|
"aarch64_windows": {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
},
|
},
|
||||||
"aarch64_linux_musl": {
|
"aarch64_linux_musl": {
|
||||||
"asset_name": "${package}-v${version}.linux.aarch64.tar.xz"
|
"asset_name": "${package}-v${version}.linux.aarch64.tar.xz"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"asset_name": "${package}-v${version}.darwin.aarch64.tar.xz"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,12 +6,12 @@
|
|||||||
"bin": "${package}-v${version}-${rust_target}/${package}${exe}",
|
"bin": "${package}-v${version}-${rust_target}/${package}${exe}",
|
||||||
"version_range": ">= 0.22.0",
|
"version_range": ">= 0.22.0",
|
||||||
"platform": {
|
"platform": {
|
||||||
|
"x86_64_linux_musl": {},
|
||||||
"x86_64_macos": {},
|
"x86_64_macos": {},
|
||||||
"x86_64_windows": {
|
"x86_64_windows": {
|
||||||
"asset_name": "${package}-v${version}-${rust_target}.zip"
|
"asset_name": "${package}-v${version}-${rust_target}.zip"
|
||||||
},
|
},
|
||||||
"x86_64_linux_musl": {},
|
"aarch64_linux_musl": {},
|
||||||
"aarch64_macos": {},
|
"aarch64_macos": {}
|
||||||
"aarch64_linux_musl": {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,21 +2,9 @@
|
|||||||
|
|
||||||
#![allow(clippy::missing_panics_doc, clippy::too_long_first_doc_paragraph)]
|
#![allow(clippy::missing_panics_doc, clippy::too_long_first_doc_paragraph)]
|
||||||
|
|
||||||
use std::{
|
use std::{env, path::PathBuf};
|
||||||
cmp::{self, Reverse},
|
|
||||||
collections::BTreeMap,
|
|
||||||
env, fmt,
|
|
||||||
path::{Path, PathBuf},
|
|
||||||
slice,
|
|
||||||
str::FromStr,
|
|
||||||
};
|
|
||||||
|
|
||||||
use anyhow::Result;
|
pub use install_action_manifest_schema::*;
|
||||||
use serde::{
|
|
||||||
de::{self, Deserialize, Deserializer},
|
|
||||||
ser::{Serialize, Serializer},
|
|
||||||
};
|
|
||||||
use serde_derive::{Deserialize, Serialize};
|
|
||||||
|
|
||||||
#[must_use]
|
#[must_use]
|
||||||
pub fn workspace_root() -> PathBuf {
|
pub fn workspace_root() -> PathBuf {
|
||||||
@@ -25,366 +13,3 @@ pub fn workspace_root() -> PathBuf {
|
|||||||
dir.pop(); // tools
|
dir.pop(); // tools
|
||||||
dir
|
dir
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
|
||||||
pub struct Version {
|
|
||||||
pub major: Option<u64>,
|
|
||||||
pub minor: Option<u64>,
|
|
||||||
pub patch: Option<u64>,
|
|
||||||
pub pre: semver::Prerelease,
|
|
||||||
pub build: semver::BuildMetadata,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Version {
|
|
||||||
#[must_use]
|
|
||||||
pub fn omitted(major: u64, minor: Option<u64>) -> Self {
|
|
||||||
Self {
|
|
||||||
major: Some(major),
|
|
||||||
minor,
|
|
||||||
patch: None,
|
|
||||||
pre: semver::Prerelease::default(),
|
|
||||||
build: semver::BuildMetadata::default(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[must_use]
|
|
||||||
pub fn latest() -> Self {
|
|
||||||
Self {
|
|
||||||
major: None,
|
|
||||||
minor: None,
|
|
||||||
patch: None,
|
|
||||||
pre: semver::Prerelease::default(),
|
|
||||||
build: semver::BuildMetadata::default(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[must_use]
|
|
||||||
pub fn to_semver(&self) -> Option<semver::Version> {
|
|
||||||
Some(semver::Version {
|
|
||||||
major: self.major?,
|
|
||||||
minor: self.minor?,
|
|
||||||
patch: self.patch?,
|
|
||||||
pre: self.pre.clone(),
|
|
||||||
build: self.build.clone(),
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl From<semver::Version> for Version {
|
|
||||||
fn from(v: semver::Version) -> Self {
|
|
||||||
Self {
|
|
||||||
major: Some(v.major),
|
|
||||||
minor: Some(v.minor),
|
|
||||||
patch: Some(v.patch),
|
|
||||||
pre: v.pre,
|
|
||||||
build: v.build,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl PartialOrd for Version {
|
|
||||||
fn partial_cmp(&self, other: &Self) -> Option<cmp::Ordering> {
|
|
||||||
Some(self.cmp(other))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl Ord for Version {
|
|
||||||
fn cmp(&self, other: &Self) -> cmp::Ordering {
|
|
||||||
pub(crate) fn convert(v: &Version) -> semver::Version {
|
|
||||||
semver::Version {
|
|
||||||
major: v.major.unwrap_or(u64::MAX),
|
|
||||||
minor: v.minor.unwrap_or(u64::MAX),
|
|
||||||
patch: v.patch.unwrap_or(u64::MAX),
|
|
||||||
pre: v.pre.clone(),
|
|
||||||
build: v.build.clone(),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
convert(self).cmp(&convert(other))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl fmt::Display for Version {
|
|
||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
|
||||||
let Some(major) = self.major else {
|
|
||||||
f.write_str("latest")?;
|
|
||||||
return Ok(());
|
|
||||||
};
|
|
||||||
f.write_str(&major.to_string())?;
|
|
||||||
let Some(minor) = self.minor else {
|
|
||||||
return Ok(());
|
|
||||||
};
|
|
||||||
f.write_str(".")?;
|
|
||||||
f.write_str(&minor.to_string())?;
|
|
||||||
let Some(patch) = self.patch else {
|
|
||||||
return Ok(());
|
|
||||||
};
|
|
||||||
f.write_str(".")?;
|
|
||||||
f.write_str(&patch.to_string())?;
|
|
||||||
if !self.pre.is_empty() {
|
|
||||||
f.write_str("-")?;
|
|
||||||
f.write_str(&self.pre)?;
|
|
||||||
}
|
|
||||||
if !self.build.is_empty() {
|
|
||||||
f.write_str("+")?;
|
|
||||||
f.write_str(&self.build)?;
|
|
||||||
}
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl FromStr for Version {
|
|
||||||
type Err = semver::Error;
|
|
||||||
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
|
||||||
if s == "latest" {
|
|
||||||
return Ok(Self::latest());
|
|
||||||
}
|
|
||||||
match s.parse::<semver::Version>() {
|
|
||||||
Ok(v) => Ok(v.into()),
|
|
||||||
Err(e) => match s.parse::<semver::Comparator>() {
|
|
||||||
Ok(v) => Ok(Self {
|
|
||||||
major: Some(v.major),
|
|
||||||
minor: v.minor,
|
|
||||||
patch: v.patch,
|
|
||||||
pre: semver::Prerelease::default(),
|
|
||||||
build: semver::BuildMetadata::default(),
|
|
||||||
}),
|
|
||||||
Err(_e) => Err(e),
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl Serialize for Version {
|
|
||||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
|
||||||
where
|
|
||||||
S: Serializer,
|
|
||||||
{
|
|
||||||
String::serialize(&self.to_string(), serializer)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl<'de> Deserialize<'de> for Version {
|
|
||||||
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
|
|
||||||
where
|
|
||||||
D: Deserializer<'de>,
|
|
||||||
{
|
|
||||||
String::deserialize(deserializer)?.parse().map_err(de::Error::custom)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
|
|
||||||
pub struct Manifests {
|
|
||||||
pub rust_crate: Option<String>,
|
|
||||||
pub template: Option<ManifestTemplate>,
|
|
||||||
/// Markdown for the licenses.
|
|
||||||
pub license_markdown: String,
|
|
||||||
#[serde(flatten)]
|
|
||||||
pub map: BTreeMap<Reverse<Version>, ManifestRef>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
|
||||||
#[serde(untagged)]
|
|
||||||
pub enum ManifestRef {
|
|
||||||
Ref { version: Version },
|
|
||||||
Real(Manifest),
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
|
||||||
pub struct Manifest {
|
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
|
||||||
pub previous_stable_version: Option<Version>,
|
|
||||||
#[serde(flatten)]
|
|
||||||
pub download_info: BTreeMap<HostPlatform, ManifestDownloadInfo>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
|
||||||
pub struct ManifestDownloadInfo {
|
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
|
||||||
pub url: Option<String>,
|
|
||||||
pub etag: String,
|
|
||||||
pub checksum: String,
|
|
||||||
/// Path to binaries in archive. Default to `${tool}${exe}`.
|
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
|
||||||
pub bin: Option<StringOrArray>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
|
||||||
pub struct ManifestTemplate {
|
|
||||||
#[serde(flatten)]
|
|
||||||
pub download_info: BTreeMap<HostPlatform, ManifestTemplateDownloadInfo>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
|
||||||
pub struct ManifestTemplateDownloadInfo {
|
|
||||||
pub url: String,
|
|
||||||
/// Path to binaries in archive. Default to `${tool}${exe}`.
|
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
|
||||||
pub bin: Option<StringOrArray>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Deserialize)]
|
|
||||||
#[serde(deny_unknown_fields)]
|
|
||||||
pub struct BaseManifest {
|
|
||||||
/// Link to the GitHub repository.
|
|
||||||
pub repository: String,
|
|
||||||
/// Alternative link for the project. Automatically detected if possible.
|
|
||||||
pub website: Option<String>,
|
|
||||||
/// Markdown syntax for links to licenses. Automatically detected if possible.
|
|
||||||
pub license_markdown: Option<String>,
|
|
||||||
/// Prefix of release tag.
|
|
||||||
pub tag_prefix: String,
|
|
||||||
/// Crate name, if this is Rust crate.
|
|
||||||
pub rust_crate: Option<String>,
|
|
||||||
pub default_major_version: Option<String>,
|
|
||||||
/// Asset name patterns.
|
|
||||||
pub asset_name: Option<StringOrArray>,
|
|
||||||
/// Path to binaries in archive. Default to `${tool}${exe}`.
|
|
||||||
pub bin: Option<StringOrArray>,
|
|
||||||
pub signing: Option<Signing>,
|
|
||||||
#[serde(default)]
|
|
||||||
pub broken: Vec<semver::Version>,
|
|
||||||
pub version_range: Option<String>,
|
|
||||||
/// Use glibc build if host_env is gnu.
|
|
||||||
#[serde(default)]
|
|
||||||
pub prefer_linux_gnu: bool,
|
|
||||||
/// Check that the version is yanked not only when updating the manifest,
|
|
||||||
/// but also when running the action.
|
|
||||||
#[serde(default)]
|
|
||||||
pub immediate_yank_reflection: bool,
|
|
||||||
pub platform: BTreeMap<HostPlatform, BaseManifestPlatformInfo>,
|
|
||||||
}
|
|
||||||
impl BaseManifest {
|
|
||||||
/// Validate the manifest.
|
|
||||||
pub fn validate(&self) {
|
|
||||||
for bin in self.bin.iter().chain(self.platform.values().flat_map(|m| &m.bin)) {
|
|
||||||
assert!(!bin.as_slice().is_empty());
|
|
||||||
for bin in bin.as_slice() {
|
|
||||||
let file_name = Path::new(bin).file_name().unwrap().to_str().unwrap();
|
|
||||||
if !self.repository.ends_with("/xbuild") {
|
|
||||||
assert!(
|
|
||||||
!(file_name.contains("${version") || file_name.contains("${rust")),
|
|
||||||
"{bin}"
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Deserialize)]
|
|
||||||
#[serde(deny_unknown_fields)]
|
|
||||||
pub struct Signing {
|
|
||||||
pub kind: SigningKind,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, PartialEq, Eq)]
|
|
||||||
#[serde(rename_all = "kebab-case")]
|
|
||||||
#[serde(deny_unknown_fields)]
|
|
||||||
pub enum SigningKind {
|
|
||||||
/// algorithm: minisign
|
|
||||||
/// public key: package.metadata.binstall.signing.pubkey at Cargo.toml
|
|
||||||
/// <https://github.com/cargo-bins/cargo-binstall/blob/HEAD/SIGNING.md>
|
|
||||||
MinisignBinstall,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Deserialize)]
|
|
||||||
#[serde(deny_unknown_fields)]
|
|
||||||
pub struct BaseManifestPlatformInfo {
|
|
||||||
/// Asset name patterns. Default to the value at `BaseManifest::asset_name`.
|
|
||||||
pub asset_name: Option<StringOrArray>,
|
|
||||||
/// Path to binaries in archive. Default to the value at `BaseManifest::bin`.
|
|
||||||
pub bin: Option<StringOrArray>,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
|
||||||
#[serde(untagged)]
|
|
||||||
pub enum StringOrArray {
|
|
||||||
String(String),
|
|
||||||
Array(Vec<String>),
|
|
||||||
}
|
|
||||||
|
|
||||||
impl StringOrArray {
|
|
||||||
#[must_use]
|
|
||||||
pub fn as_slice(&self) -> &[String] {
|
|
||||||
match self {
|
|
||||||
Self::String(s) => slice::from_ref(s),
|
|
||||||
Self::Array(v) => v,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[must_use]
|
|
||||||
pub fn map(&self, mut f: impl FnMut(&String) -> String) -> Self {
|
|
||||||
match self {
|
|
||||||
Self::String(s) => Self::String(f(s)),
|
|
||||||
Self::Array(v) => Self::Array(v.iter().map(f).collect()),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// GitHub Actions Runner supports Linux (x86_64, AArch64, Arm), Windows (x86_64, AArch64),
|
|
||||||
/// and macOS (x86_64, AArch64).
|
|
||||||
/// https://github.com/actions/runner/blob/v2.321.0/.github/workflows/build.yml#L21
|
|
||||||
/// https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners#supported-architectures-and-operating-systems-for-self-hosted-runners
|
|
||||||
///
|
|
||||||
/// Note:
|
|
||||||
/// - Static-linked binaries compiled for linux-musl will also work on linux-gnu systems and are
|
|
||||||
/// usually preferred over linux-gnu binaries because they can avoid glibc version issues.
|
|
||||||
/// (rustc enables statically linking for linux-musl by default, except for mips.)
|
|
||||||
/// - Binaries compiled for x86_64 macOS will usually also work on AArch64 macOS.
|
|
||||||
/// - Binaries compiled for x86_64 Windows will usually also work on AArch64 Windows 11+.
|
|
||||||
/// - Ignore Arm for now, as we need to consider the version and whether hard-float is supported.
|
|
||||||
/// https://github.com/rust-lang/rustup/pull/593
|
|
||||||
/// https://github.com/cross-rs/cross/pull/1018
|
|
||||||
/// Does it seem only armv7l+ is supported?
|
|
||||||
/// https://github.com/actions/runner/blob/v2.321.0/src/Misc/externals.sh#L178
|
|
||||||
/// https://github.com/actions/runner/issues/688
|
|
||||||
// TODO: support musl with dynamic linking like wasmtime 22.0.0+'s musl binaries: https://github.com/bytecodealliance/wasmtime/releases/tag/v22.0.0
|
|
||||||
#[allow(non_camel_case_types)]
|
|
||||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize)]
|
|
||||||
pub enum HostPlatform {
|
|
||||||
x86_64_linux_gnu,
|
|
||||||
x86_64_linux_musl,
|
|
||||||
x86_64_macos,
|
|
||||||
x86_64_windows,
|
|
||||||
aarch64_linux_gnu,
|
|
||||||
aarch64_linux_musl,
|
|
||||||
aarch64_macos,
|
|
||||||
aarch64_windows,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl HostPlatform {
|
|
||||||
#[must_use]
|
|
||||||
pub fn rust_target(self) -> &'static str {
|
|
||||||
match self {
|
|
||||||
Self::x86_64_linux_gnu => "x86_64-unknown-linux-gnu",
|
|
||||||
Self::x86_64_linux_musl => "x86_64-unknown-linux-musl",
|
|
||||||
Self::x86_64_macos => "x86_64-apple-darwin",
|
|
||||||
Self::x86_64_windows => "x86_64-pc-windows-msvc",
|
|
||||||
Self::aarch64_linux_gnu => "aarch64-unknown-linux-gnu",
|
|
||||||
Self::aarch64_linux_musl => "aarch64-unknown-linux-musl",
|
|
||||||
Self::aarch64_macos => "aarch64-apple-darwin",
|
|
||||||
Self::aarch64_windows => "aarch64-pc-windows-msvc",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[must_use]
|
|
||||||
pub fn rust_target_arch(self) -> &'static str {
|
|
||||||
match self {
|
|
||||||
Self::aarch64_linux_gnu
|
|
||||||
| Self::aarch64_linux_musl
|
|
||||||
| Self::aarch64_macos
|
|
||||||
| Self::aarch64_windows => "aarch64",
|
|
||||||
Self::x86_64_linux_gnu
|
|
||||||
| Self::x86_64_linux_musl
|
|
||||||
| Self::x86_64_macos
|
|
||||||
| Self::x86_64_windows => "x86_64",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[must_use]
|
|
||||||
pub fn rust_target_os(self) -> &'static str {
|
|
||||||
match self {
|
|
||||||
Self::aarch64_linux_gnu
|
|
||||||
| Self::aarch64_linux_musl
|
|
||||||
| Self::x86_64_linux_gnu
|
|
||||||
| Self::x86_64_linux_musl => "linux",
|
|
||||||
Self::aarch64_macos | Self::x86_64_macos => "macos",
|
|
||||||
Self::aarch64_windows | Self::x86_64_windows => "windows",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[must_use]
|
|
||||||
pub fn exe_suffix(self) -> &'static str {
|
|
||||||
match self {
|
|
||||||
Self::x86_64_windows | Self::aarch64_windows => ".exe",
|
|
||||||
_ => "",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ use std::{
|
|||||||
collections::{BTreeMap, BTreeSet},
|
collections::{BTreeMap, BTreeSet},
|
||||||
env,
|
env,
|
||||||
ffi::OsStr,
|
ffi::OsStr,
|
||||||
io::Read,
|
io::Read as _,
|
||||||
path::Path,
|
path::Path,
|
||||||
sync::{LazyLock, RwLock},
|
sync::{LazyLock, RwLock},
|
||||||
time::Duration,
|
time::Duration,
|
||||||
@@ -17,8 +17,9 @@ use install_action_internal_codegen::{
|
|||||||
workspace_root, BaseManifest, HostPlatform, Manifest, ManifestDownloadInfo, ManifestRef,
|
workspace_root, BaseManifest, HostPlatform, Manifest, ManifestDownloadInfo, ManifestRef,
|
||||||
ManifestTemplate, ManifestTemplateDownloadInfo, Manifests, Signing, SigningKind, Version,
|
ManifestTemplate, ManifestTemplateDownloadInfo, Manifests, Signing, SigningKind, Version,
|
||||||
};
|
};
|
||||||
use sha2::{Digest, Sha256};
|
use sha2::{Digest as _, Sha256};
|
||||||
use spdx::expression::{ExprNode, ExpressionReq, Operator};
|
use spdx::expression::{ExprNode, ExpressionReq, Operator};
|
||||||
|
use ureq::http::header;
|
||||||
|
|
||||||
fn main() -> Result<()> {
|
fn main() -> Result<()> {
|
||||||
let args: Vec<_> = env::args().skip(1).collect();
|
let args: Vec<_> = env::args().skip(1).collect();
|
||||||
@@ -52,7 +53,7 @@ fn main() -> Result<()> {
|
|||||||
|
|
||||||
eprintln!("downloading metadata from https://api.github.com/repos/{repo}");
|
eprintln!("downloading metadata from https://api.github.com/repos/{repo}");
|
||||||
let repo_info: github::RepoMetadata =
|
let repo_info: github::RepoMetadata =
|
||||||
download(&format!("https://api.github.com/repos/{repo}"))?.into_json()?;
|
download(&format!("https://api.github.com/repos/{repo}"))?.body_mut().read_json()?;
|
||||||
|
|
||||||
eprintln!("downloading releases from https://api.github.com/repos/{repo}/releases");
|
eprintln!("downloading releases from https://api.github.com/repos/{repo}/releases");
|
||||||
let mut releases: github::Releases = vec![];
|
let mut releases: github::Releases = vec![];
|
||||||
@@ -63,7 +64,8 @@ fn main() -> Result<()> {
|
|||||||
let mut r: github::Releases = download(&format!(
|
let mut r: github::Releases = download(&format!(
|
||||||
"https://api.github.com/repos/{repo}/releases?per_page={per_page}&page={page}"
|
"https://api.github.com/repos/{repo}/releases?per_page={per_page}&page={page}"
|
||||||
))?
|
))?
|
||||||
.into_json()?;
|
.body_mut()
|
||||||
|
.read_json()?;
|
||||||
// If version_req is latest, it is usually sufficient to look at the latest 100 releases.
|
// If version_req is latest, it is usually sufficient to look at the latest 100 releases.
|
||||||
if r.len() < per_page || version_req.is_some_and(|req| req == "latest") {
|
if r.len() < per_page || version_req.is_some_and(|req| req == "latest") {
|
||||||
releases.append(&mut r);
|
releases.append(&mut r);
|
||||||
@@ -98,11 +100,13 @@ fn main() -> Result<()> {
|
|||||||
if let Some(crate_name) = &base_info.rust_crate {
|
if let Some(crate_name) = &base_info.rust_crate {
|
||||||
eprintln!("downloading crate info from https://crates.io/api/v1/crates/{crate_name}");
|
eprintln!("downloading crate info from https://crates.io/api/v1/crates/{crate_name}");
|
||||||
let info = download(&format!("https://crates.io/api/v1/crates/{crate_name}"))?
|
let info = download(&format!("https://crates.io/api/v1/crates/{crate_name}"))?
|
||||||
.into_json::<crates_io::Crate>()?;
|
.body_mut()
|
||||||
|
.read_json::<crates_io::Crate>()?;
|
||||||
let latest_version = &info.versions[0].num;
|
let latest_version = &info.versions[0].num;
|
||||||
crates_io_version_detail = Some(
|
crates_io_version_detail = Some(
|
||||||
download(&format!("https://crates.io/api/v1/crates/{crate_name}/{latest_version}"))?
|
download(&format!("https://crates.io/api/v1/crates/{crate_name}/{latest_version}"))?
|
||||||
.into_json::<crates_io::VersionMetadata>()?
|
.body_mut()
|
||||||
|
.read_json::<crates_io::VersionMetadata>()?
|
||||||
.version,
|
.version,
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -248,7 +252,7 @@ fn main() -> Result<()> {
|
|||||||
if skip_existing_manifest_versions && existing_manifest.is_some() {
|
if skip_existing_manifest_versions && existing_manifest.is_some() {
|
||||||
eprintln!("Skipping {semver_version} already in manifest");
|
eprintln!("Skipping {semver_version} already in manifest");
|
||||||
continue;
|
continue;
|
||||||
};
|
}
|
||||||
|
|
||||||
let mut download_info = BTreeMap::new();
|
let mut download_info = BTreeMap::new();
|
||||||
let mut pubkey = None;
|
let mut pubkey = None;
|
||||||
@@ -292,8 +296,13 @@ fn main() -> Result<()> {
|
|||||||
Path::new(&url).file_name().unwrap().to_str().unwrap()
|
Path::new(&url).file_name().unwrap().to_str().unwrap()
|
||||||
));
|
));
|
||||||
let response = download(&url)?;
|
let response = download(&url)?;
|
||||||
let etag =
|
let etag = response
|
||||||
response.header("etag").expect("binary should have an etag").replace('\"', "");
|
.headers()
|
||||||
|
.get("etag")
|
||||||
|
.expect("binary should have an etag")
|
||||||
|
.to_str()
|
||||||
|
.unwrap()
|
||||||
|
.replace('\"', "");
|
||||||
|
|
||||||
if let Some(ManifestRef::Real(ref manifest)) = existing_manifest {
|
if let Some(ManifestRef::Real(ref manifest)) = existing_manifest {
|
||||||
if let Some(entry) = manifest.download_info.get(&platform) {
|
if let Some(entry) = manifest.download_info.get(&platform) {
|
||||||
@@ -312,7 +321,7 @@ fn main() -> Result<()> {
|
|||||||
eprintln!("already downloaded");
|
eprintln!("already downloaded");
|
||||||
fs::File::open(download_cache)?.read_to_end(&mut buf)?;
|
fs::File::open(download_cache)?.read_to_end(&mut buf)?;
|
||||||
} else {
|
} else {
|
||||||
response.into_reader().read_to_end(&mut buf)?;
|
response.into_body().into_reader().read_to_end(&mut buf)?;
|
||||||
eprintln!("download complete");
|
eprintln!("download complete");
|
||||||
fs::write(download_cache, &buf)?;
|
fs::write(download_cache, &buf)?;
|
||||||
}
|
}
|
||||||
@@ -335,7 +344,7 @@ fn main() -> Result<()> {
|
|||||||
eprintln!("already downloaded");
|
eprintln!("already downloaded");
|
||||||
minisign_verify::Signature::from_file(sig_download_cache)?
|
minisign_verify::Signature::from_file(sig_download_cache)?
|
||||||
} else {
|
} else {
|
||||||
let buf = download(&url)?.into_string()?;
|
let buf = download(&url)?.body_mut().read_to_string()?;
|
||||||
eprintln!("download complete");
|
eprintln!("download complete");
|
||||||
fs::write(sig_download_cache, &buf)?;
|
fs::write(sig_download_cache, &buf)?;
|
||||||
minisign_verify::Signature::decode(&buf)?
|
minisign_verify::Signature::decode(&buf)?
|
||||||
@@ -353,7 +362,7 @@ fn main() -> Result<()> {
|
|||||||
if crate_download_cache.is_file() {
|
if crate_download_cache.is_file() {
|
||||||
eprintln!("already downloaded");
|
eprintln!("already downloaded");
|
||||||
} else {
|
} else {
|
||||||
download(&url)?.into_reader().read_to_end(&mut buf2)?;
|
download(&url)?.into_body().into_reader().read_to_end(&mut buf2)?;
|
||||||
let hash = Sha256::digest(&buf2);
|
let hash = Sha256::digest(&buf2);
|
||||||
if format!("{hash:x}") != v.checksum {
|
if format!("{hash:x}") != v.checksum {
|
||||||
bail!("checksum mismatch for {url}");
|
bail!("checksum mismatch for {url}");
|
||||||
@@ -682,7 +691,7 @@ static GITHUB_TOKENS: LazyLock<GitHubTokens> = LazyLock::new(|| {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
fn download(url: &str) -> Result<ureq::Response> {
|
fn download(url: &str) -> Result<ureq::http::Response<ureq::Body>> {
|
||||||
let mut token = GITHUB_TOKENS.get(url);
|
let mut token = GITHUB_TOKENS.get(url);
|
||||||
let mut retry = 0;
|
let mut retry = 0;
|
||||||
let mut retry_time = 0;
|
let mut retry_time = 0;
|
||||||
@@ -694,7 +703,7 @@ fn download(url: &str) -> Result<ureq::Response> {
|
|||||||
loop {
|
loop {
|
||||||
let mut req = ureq::get(url);
|
let mut req = ureq::get(url);
|
||||||
if let Some(token) = &token {
|
if let Some(token) = &token {
|
||||||
req = req.set("Authorization", &format!("Bearer {token}"));
|
req = req.header(header::AUTHORIZATION, &format!("Bearer {token}"));
|
||||||
}
|
}
|
||||||
match req.call() {
|
match req.call() {
|
||||||
Ok(res) => return Ok(res),
|
Ok(res) => return Ok(res),
|
||||||
@@ -730,12 +739,12 @@ fn github_head(url: &str) -> Result<()> {
|
|||||||
loop {
|
loop {
|
||||||
let mut req = ureq::head(url);
|
let mut req = ureq::head(url);
|
||||||
if let Some(token) = &token {
|
if let Some(token) = &token {
|
||||||
req = req.set("Authorization", &format!("Bearer {token}"));
|
req = req.header(header::AUTHORIZATION, &format!("Bearer {token}"));
|
||||||
}
|
}
|
||||||
match req.call() {
|
match req.call() {
|
||||||
Ok(_) => return Ok(()),
|
Ok(_) => return Ok(()),
|
||||||
// rate limit
|
// rate limit
|
||||||
Err(e @ ureq::Error::Status(403, _)) => last_error = Some(e),
|
Err(e @ ureq::Error::StatusCode(403)) => last_error = Some(e),
|
||||||
Err(e) => return Err(e.into()),
|
Err(e) => return Err(e.into()),
|
||||||
}
|
}
|
||||||
retry_time += 1;
|
retry_time += 1;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0 OR MIT
|
// 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 anyhow::Result;
|
||||||
use fs_err as fs;
|
use fs_err as fs;
|
||||||
|
|||||||
34
tools/manifest-schema/Cargo.toml
Normal file
34
tools/manifest-schema/Cargo.toml
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
[package]
|
||||||
|
name = "install-action-manifest-schema"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
rust-version = "1.79" # Align to cargo-binstall: https://crates.io/crates/cargo-binstall
|
||||||
|
license = "Apache-2.0 OR MIT"
|
||||||
|
repository = "https://github.com/taiki-e/install-action"
|
||||||
|
keywords = []
|
||||||
|
categories = []
|
||||||
|
description = """
|
||||||
|
Structured access to the install-action manifests.
|
||||||
|
"""
|
||||||
|
|
||||||
|
[package.metadata.docs.rs]
|
||||||
|
targets = ["x86_64-unknown-linux-gnu"]
|
||||||
|
|
||||||
|
[package.metadata.cargo_check_external_types]
|
||||||
|
# The following are external types that are allowed to be exposed in our public API.
|
||||||
|
allowed_external_types = [
|
||||||
|
"semver::*",
|
||||||
|
"serde::*",
|
||||||
|
]
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
doc-scrape-examples = false
|
||||||
|
|
||||||
|
# Note: semver and serde are public dependencies.
|
||||||
|
[dependencies]
|
||||||
|
semver = { version = "1", features = ["serde"] }
|
||||||
|
serde = "1.0.165"
|
||||||
|
serde_derive = "1.0.165"
|
||||||
|
|
||||||
|
[lints]
|
||||||
|
workspace = true
|
||||||
177
tools/manifest-schema/LICENSE-APACHE
Normal file
177
tools/manifest-schema/LICENSE-APACHE
Normal file
@@ -0,0 +1,177 @@
|
|||||||
|
|
||||||
|
Apache License
|
||||||
|
Version 2.0, January 2004
|
||||||
|
http://www.apache.org/licenses/
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||||
|
|
||||||
|
1. Definitions.
|
||||||
|
|
||||||
|
"License" shall mean the terms and conditions for use, reproduction,
|
||||||
|
and distribution as defined by Sections 1 through 9 of this document.
|
||||||
|
|
||||||
|
"Licensor" shall mean the copyright owner or entity authorized by
|
||||||
|
the copyright owner that is granting the License.
|
||||||
|
|
||||||
|
"Legal Entity" shall mean the union of the acting entity and all
|
||||||
|
other entities that control, are controlled by, or are under common
|
||||||
|
control with that entity. For the purposes of this definition,
|
||||||
|
"control" means (i) the power, direct or indirect, to cause the
|
||||||
|
direction or management of such entity, whether by contract or
|
||||||
|
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||||
|
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||||
|
|
||||||
|
"You" (or "Your") shall mean an individual or Legal Entity
|
||||||
|
exercising permissions granted by this License.
|
||||||
|
|
||||||
|
"Source" form shall mean the preferred form for making modifications,
|
||||||
|
including but not limited to software source code, documentation
|
||||||
|
source, and configuration files.
|
||||||
|
|
||||||
|
"Object" form shall mean any form resulting from mechanical
|
||||||
|
transformation or translation of a Source form, including but
|
||||||
|
not limited to compiled object code, generated documentation,
|
||||||
|
and conversions to other media types.
|
||||||
|
|
||||||
|
"Work" shall mean the work of authorship, whether in Source or
|
||||||
|
Object form, made available under the License, as indicated by a
|
||||||
|
copyright notice that is included in or attached to the work
|
||||||
|
(an example is provided in the Appendix below).
|
||||||
|
|
||||||
|
"Derivative Works" shall mean any work, whether in Source or Object
|
||||||
|
form, that is based on (or derived from) the Work and for which the
|
||||||
|
editorial revisions, annotations, elaborations, or other modifications
|
||||||
|
represent, as a whole, an original work of authorship. For the purposes
|
||||||
|
of this License, Derivative Works shall not include works that remain
|
||||||
|
separable from, or merely link (or bind by name) to the interfaces of,
|
||||||
|
the Work and Derivative Works thereof.
|
||||||
|
|
||||||
|
"Contribution" shall mean any work of authorship, including
|
||||||
|
the original version of the Work and any modifications or additions
|
||||||
|
to that Work or Derivative Works thereof, that is intentionally
|
||||||
|
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||||
|
or by an individual or Legal Entity authorized to submit on behalf of
|
||||||
|
the copyright owner. For the purposes of this definition, "submitted"
|
||||||
|
means any form of electronic, verbal, or written communication sent
|
||||||
|
to the Licensor or its representatives, including but not limited to
|
||||||
|
communication on electronic mailing lists, source code control systems,
|
||||||
|
and issue tracking systems that are managed by, or on behalf of, the
|
||||||
|
Licensor for the purpose of discussing and improving the Work, but
|
||||||
|
excluding communication that is conspicuously marked or otherwise
|
||||||
|
designated in writing by the copyright owner as "Not a Contribution."
|
||||||
|
|
||||||
|
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||||
|
on behalf of whom a Contribution has been received by Licensor and
|
||||||
|
subsequently incorporated within the Work.
|
||||||
|
|
||||||
|
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
copyright license to reproduce, prepare Derivative Works of,
|
||||||
|
publicly display, publicly perform, sublicense, and distribute the
|
||||||
|
Work and such Derivative Works in Source or Object form.
|
||||||
|
|
||||||
|
3. Grant of Patent License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
(except as stated in this section) patent license to make, have made,
|
||||||
|
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||||
|
where such license applies only to those patent claims licensable
|
||||||
|
by such Contributor that are necessarily infringed by their
|
||||||
|
Contribution(s) alone or by combination of their Contribution(s)
|
||||||
|
with the Work to which such Contribution(s) was submitted. If You
|
||||||
|
institute patent litigation against any entity (including a
|
||||||
|
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||||
|
or a Contribution incorporated within the Work constitutes direct
|
||||||
|
or contributory patent infringement, then any patent licenses
|
||||||
|
granted to You under this License for that Work shall terminate
|
||||||
|
as of the date such litigation is filed.
|
||||||
|
|
||||||
|
4. Redistribution. You may reproduce and distribute copies of the
|
||||||
|
Work or Derivative Works thereof in any medium, with or without
|
||||||
|
modifications, and in Source or Object form, provided that You
|
||||||
|
meet the following conditions:
|
||||||
|
|
||||||
|
(a) You must give any other recipients of the Work or
|
||||||
|
Derivative Works a copy of this License; and
|
||||||
|
|
||||||
|
(b) You must cause any modified files to carry prominent notices
|
||||||
|
stating that You changed the files; and
|
||||||
|
|
||||||
|
(c) You must retain, in the Source form of any Derivative Works
|
||||||
|
that You distribute, all copyright, patent, trademark, and
|
||||||
|
attribution notices from the Source form of the Work,
|
||||||
|
excluding those notices that do not pertain to any part of
|
||||||
|
the Derivative Works; and
|
||||||
|
|
||||||
|
(d) If the Work includes a "NOTICE" text file as part of its
|
||||||
|
distribution, then any Derivative Works that You distribute must
|
||||||
|
include a readable copy of the attribution notices contained
|
||||||
|
within such NOTICE file, excluding those notices that do not
|
||||||
|
pertain to any part of the Derivative Works, in at least one
|
||||||
|
of the following places: within a NOTICE text file distributed
|
||||||
|
as part of the Derivative Works; within the Source form or
|
||||||
|
documentation, if provided along with the Derivative Works; or,
|
||||||
|
within a display generated by the Derivative Works, if and
|
||||||
|
wherever such third-party notices normally appear. The contents
|
||||||
|
of the NOTICE file are for informational purposes only and
|
||||||
|
do not modify the License. You may add Your own attribution
|
||||||
|
notices within Derivative Works that You distribute, alongside
|
||||||
|
or as an addendum to the NOTICE text from the Work, provided
|
||||||
|
that such additional attribution notices cannot be construed
|
||||||
|
as modifying the License.
|
||||||
|
|
||||||
|
You may add Your own copyright statement to Your modifications and
|
||||||
|
may provide additional or different license terms and conditions
|
||||||
|
for use, reproduction, or distribution of Your modifications, or
|
||||||
|
for any such Derivative Works as a whole, provided Your use,
|
||||||
|
reproduction, and distribution of the Work otherwise complies with
|
||||||
|
the conditions stated in this License.
|
||||||
|
|
||||||
|
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||||
|
any Contribution intentionally submitted for inclusion in the Work
|
||||||
|
by You to the Licensor shall be under the terms and conditions of
|
||||||
|
this License, without any additional terms or conditions.
|
||||||
|
Notwithstanding the above, nothing herein shall supersede or modify
|
||||||
|
the terms of any separate license agreement you may have executed
|
||||||
|
with Licensor regarding such Contributions.
|
||||||
|
|
||||||
|
6. Trademarks. This License does not grant permission to use the trade
|
||||||
|
names, trademarks, service marks, or product names of the Licensor,
|
||||||
|
except as required for reasonable and customary use in describing the
|
||||||
|
origin of the Work and reproducing the content of the NOTICE file.
|
||||||
|
|
||||||
|
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||||
|
agreed to in writing, Licensor provides the Work (and each
|
||||||
|
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||||
|
implied, including, without limitation, any warranties or conditions
|
||||||
|
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||||
|
appropriateness of using or redistributing the Work and assume any
|
||||||
|
risks associated with Your exercise of permissions under this License.
|
||||||
|
|
||||||
|
8. Limitation of Liability. In no event and under no legal theory,
|
||||||
|
whether in tort (including negligence), contract, or otherwise,
|
||||||
|
unless required by applicable law (such as deliberate and grossly
|
||||||
|
negligent acts) or agreed to in writing, shall any Contributor be
|
||||||
|
liable to You for damages, including any direct, indirect, special,
|
||||||
|
incidental, or consequential damages of any character arising as a
|
||||||
|
result of this License or out of the use or inability to use the
|
||||||
|
Work (including but not limited to damages for loss of goodwill,
|
||||||
|
work stoppage, computer failure or malfunction, or any and all
|
||||||
|
other commercial damages or losses), even if such Contributor
|
||||||
|
has been advised of the possibility of such damages.
|
||||||
|
|
||||||
|
9. Accepting Warranty or Additional Liability. While redistributing
|
||||||
|
the Work or Derivative Works thereof, You may choose to offer,
|
||||||
|
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||||
|
or other liability obligations and/or rights consistent with this
|
||||||
|
License. However, in accepting such obligations, You may act only
|
||||||
|
on Your own behalf and on Your sole responsibility, not on behalf
|
||||||
|
of any other Contributor, and only if You agree to indemnify,
|
||||||
|
defend, and hold each Contributor harmless for any liability
|
||||||
|
incurred by, or claims asserted against, such Contributor by reason
|
||||||
|
of your accepting any such warranty or additional liability.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
23
tools/manifest-schema/LICENSE-MIT
Normal file
23
tools/manifest-schema/LICENSE-MIT
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
Permission is hereby granted, free of charge, to any
|
||||||
|
person obtaining a copy of this software and associated
|
||||||
|
documentation files (the "Software"), to deal in the
|
||||||
|
Software without restriction, including without
|
||||||
|
limitation the rights to use, copy, modify, merge,
|
||||||
|
publish, distribute, sublicense, and/or sell copies of
|
||||||
|
the Software, and to permit persons to whom the Software
|
||||||
|
is furnished to do so, subject to the following
|
||||||
|
conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice
|
||||||
|
shall be included in all copies or substantial portions
|
||||||
|
of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
|
||||||
|
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
|
||||||
|
TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
|
||||||
|
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
|
||||||
|
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
DEALINGS IN THE SOFTWARE.
|
||||||
413
tools/manifest-schema/src/lib.rs
Normal file
413
tools/manifest-schema/src/lib.rs
Normal file
@@ -0,0 +1,413 @@
|
|||||||
|
// SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Structured access to the install-action manifests.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#![doc(test(
|
||||||
|
no_crate_inject,
|
||||||
|
attr(
|
||||||
|
deny(warnings, rust_2018_idioms, single_use_lifetimes),
|
||||||
|
allow(dead_code, unused_variables)
|
||||||
|
)
|
||||||
|
))]
|
||||||
|
#![warn(
|
||||||
|
// Lints that may help when writing public library.
|
||||||
|
missing_debug_implementations,
|
||||||
|
// missing_docs,
|
||||||
|
clippy::alloc_instead_of_core,
|
||||||
|
// clippy::exhaustive_enums,
|
||||||
|
// clippy::exhaustive_structs,
|
||||||
|
clippy::impl_trait_in_params,
|
||||||
|
// clippy::missing_inline_in_public_items,
|
||||||
|
// clippy::std_instead_of_alloc,
|
||||||
|
// clippy::std_instead_of_core,
|
||||||
|
)]
|
||||||
|
#![allow(clippy::missing_panics_doc, clippy::too_long_first_doc_paragraph)]
|
||||||
|
|
||||||
|
use std::{
|
||||||
|
cmp::{self, Reverse},
|
||||||
|
collections::BTreeMap,
|
||||||
|
fmt,
|
||||||
|
path::Path,
|
||||||
|
slice,
|
||||||
|
str::FromStr,
|
||||||
|
};
|
||||||
|
|
||||||
|
use serde::{
|
||||||
|
de::{self, Deserialize, Deserializer},
|
||||||
|
ser::{Serialize, Serializer},
|
||||||
|
};
|
||||||
|
use serde_derive::{Deserialize, Serialize};
|
||||||
|
|
||||||
|
#[must_use]
|
||||||
|
pub fn get_manifest_schema_branch_name() -> &'static str {
|
||||||
|
if env!("CARGO_PKG_VERSION_MAJOR") == "0" {
|
||||||
|
concat!("manifest-schema-0.", env!("CARGO_PKG_VERSION_MINOR"))
|
||||||
|
} else {
|
||||||
|
concat!("manifest-schema-", env!("CARGO_PKG_VERSION_MAJOR"))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||||
|
pub struct Version {
|
||||||
|
pub major: Option<u64>,
|
||||||
|
pub minor: Option<u64>,
|
||||||
|
pub patch: Option<u64>,
|
||||||
|
pub pre: semver::Prerelease,
|
||||||
|
pub build: semver::BuildMetadata,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Version {
|
||||||
|
#[must_use]
|
||||||
|
pub fn omitted(major: u64, minor: Option<u64>) -> Self {
|
||||||
|
Self {
|
||||||
|
major: Some(major),
|
||||||
|
minor,
|
||||||
|
patch: None,
|
||||||
|
pre: semver::Prerelease::default(),
|
||||||
|
build: semver::BuildMetadata::default(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[must_use]
|
||||||
|
pub fn latest() -> Self {
|
||||||
|
Self {
|
||||||
|
major: None,
|
||||||
|
minor: None,
|
||||||
|
patch: None,
|
||||||
|
pre: semver::Prerelease::default(),
|
||||||
|
build: semver::BuildMetadata::default(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[must_use]
|
||||||
|
pub fn to_semver(&self) -> Option<semver::Version> {
|
||||||
|
Some(semver::Version {
|
||||||
|
major: self.major?,
|
||||||
|
minor: self.minor?,
|
||||||
|
patch: self.patch?,
|
||||||
|
pre: self.pre.clone(),
|
||||||
|
build: self.build.clone(),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl From<semver::Version> for Version {
|
||||||
|
fn from(v: semver::Version) -> Self {
|
||||||
|
Self {
|
||||||
|
major: Some(v.major),
|
||||||
|
minor: Some(v.minor),
|
||||||
|
patch: Some(v.patch),
|
||||||
|
pre: v.pre,
|
||||||
|
build: v.build,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl PartialOrd for Version {
|
||||||
|
fn partial_cmp(&self, other: &Self) -> Option<cmp::Ordering> {
|
||||||
|
Some(self.cmp(other))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl Ord for Version {
|
||||||
|
fn cmp(&self, other: &Self) -> cmp::Ordering {
|
||||||
|
pub(crate) fn convert(v: &Version) -> semver::Version {
|
||||||
|
semver::Version {
|
||||||
|
major: v.major.unwrap_or(u64::MAX),
|
||||||
|
minor: v.minor.unwrap_or(u64::MAX),
|
||||||
|
patch: v.patch.unwrap_or(u64::MAX),
|
||||||
|
pre: v.pre.clone(),
|
||||||
|
build: v.build.clone(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
convert(self).cmp(&convert(other))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl fmt::Display for Version {
|
||||||
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
|
let Some(major) = self.major else {
|
||||||
|
f.write_str("latest")?;
|
||||||
|
return Ok(());
|
||||||
|
};
|
||||||
|
f.write_str(&major.to_string())?;
|
||||||
|
let Some(minor) = self.minor else {
|
||||||
|
return Ok(());
|
||||||
|
};
|
||||||
|
f.write_str(".")?;
|
||||||
|
f.write_str(&minor.to_string())?;
|
||||||
|
let Some(patch) = self.patch else {
|
||||||
|
return Ok(());
|
||||||
|
};
|
||||||
|
f.write_str(".")?;
|
||||||
|
f.write_str(&patch.to_string())?;
|
||||||
|
if !self.pre.is_empty() {
|
||||||
|
f.write_str("-")?;
|
||||||
|
f.write_str(&self.pre)?;
|
||||||
|
}
|
||||||
|
if !self.build.is_empty() {
|
||||||
|
f.write_str("+")?;
|
||||||
|
f.write_str(&self.build)?;
|
||||||
|
}
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl FromStr for Version {
|
||||||
|
type Err = semver::Error;
|
||||||
|
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
||||||
|
if s == "latest" {
|
||||||
|
return Ok(Self::latest());
|
||||||
|
}
|
||||||
|
match s.parse::<semver::Version>() {
|
||||||
|
Ok(v) => Ok(v.into()),
|
||||||
|
Err(e) => match s.parse::<semver::Comparator>() {
|
||||||
|
Ok(v) => Ok(Self {
|
||||||
|
major: Some(v.major),
|
||||||
|
minor: v.minor,
|
||||||
|
patch: v.patch,
|
||||||
|
pre: semver::Prerelease::default(),
|
||||||
|
build: semver::BuildMetadata::default(),
|
||||||
|
}),
|
||||||
|
Err(_e) => Err(e),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl Serialize for Version {
|
||||||
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||||
|
where
|
||||||
|
S: Serializer,
|
||||||
|
{
|
||||||
|
String::serialize(&self.to_string(), serializer)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl<'de> Deserialize<'de> for Version {
|
||||||
|
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
|
||||||
|
where
|
||||||
|
D: Deserializer<'de>,
|
||||||
|
{
|
||||||
|
String::deserialize(deserializer)?.parse().map_err(de::Error::custom)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
|
||||||
|
pub struct Manifests {
|
||||||
|
pub rust_crate: Option<String>,
|
||||||
|
pub template: Option<ManifestTemplate>,
|
||||||
|
/// Markdown for the licenses.
|
||||||
|
pub license_markdown: String,
|
||||||
|
#[serde(flatten)]
|
||||||
|
pub map: BTreeMap<Reverse<Version>, ManifestRef>,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||||
|
#[serde(untagged)]
|
||||||
|
pub enum ManifestRef {
|
||||||
|
Ref { version: Version },
|
||||||
|
Real(Manifest),
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||||
|
pub struct Manifest {
|
||||||
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
|
pub previous_stable_version: Option<Version>,
|
||||||
|
#[serde(flatten)]
|
||||||
|
pub download_info: BTreeMap<HostPlatform, ManifestDownloadInfo>,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||||
|
pub struct ManifestDownloadInfo {
|
||||||
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
|
pub url: Option<String>,
|
||||||
|
pub etag: String,
|
||||||
|
pub checksum: String,
|
||||||
|
/// Path to binaries in archive. Default to `${tool}${exe}`.
|
||||||
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
|
pub bin: Option<StringOrArray>,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||||
|
pub struct ManifestTemplate {
|
||||||
|
#[serde(flatten)]
|
||||||
|
pub download_info: BTreeMap<HostPlatform, ManifestTemplateDownloadInfo>,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||||
|
pub struct ManifestTemplateDownloadInfo {
|
||||||
|
pub url: String,
|
||||||
|
/// Path to binaries in archive. Default to `${tool}${exe}`.
|
||||||
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
|
pub bin: Option<StringOrArray>,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Deserialize)]
|
||||||
|
#[serde(deny_unknown_fields)]
|
||||||
|
pub struct BaseManifest {
|
||||||
|
/// Link to the GitHub repository.
|
||||||
|
pub repository: String,
|
||||||
|
/// Alternative link for the project. Automatically detected if possible.
|
||||||
|
pub website: Option<String>,
|
||||||
|
/// Markdown syntax for links to licenses. Automatically detected if possible.
|
||||||
|
pub license_markdown: Option<String>,
|
||||||
|
/// Prefix of release tag.
|
||||||
|
pub tag_prefix: String,
|
||||||
|
/// Crate name, if this is Rust crate.
|
||||||
|
pub rust_crate: Option<String>,
|
||||||
|
pub default_major_version: Option<String>,
|
||||||
|
/// Asset name patterns.
|
||||||
|
pub asset_name: Option<StringOrArray>,
|
||||||
|
/// Path to binaries in archive. Default to `${tool}${exe}`.
|
||||||
|
pub bin: Option<StringOrArray>,
|
||||||
|
pub signing: Option<Signing>,
|
||||||
|
#[serde(default)]
|
||||||
|
pub broken: Vec<semver::Version>,
|
||||||
|
pub version_range: Option<String>,
|
||||||
|
/// Use glibc build if host_env is gnu.
|
||||||
|
#[serde(default)]
|
||||||
|
pub prefer_linux_gnu: bool,
|
||||||
|
/// Check that the version is yanked not only when updating the manifest,
|
||||||
|
/// but also when running the action.
|
||||||
|
#[serde(default)]
|
||||||
|
pub immediate_yank_reflection: bool,
|
||||||
|
pub platform: BTreeMap<HostPlatform, BaseManifestPlatformInfo>,
|
||||||
|
}
|
||||||
|
impl BaseManifest {
|
||||||
|
/// Validate the manifest.
|
||||||
|
pub fn validate(&self) {
|
||||||
|
for bin in self.bin.iter().chain(self.platform.values().flat_map(|m| &m.bin)) {
|
||||||
|
assert!(!bin.as_slice().is_empty());
|
||||||
|
for bin in bin.as_slice() {
|
||||||
|
let file_name = Path::new(bin).file_name().unwrap().to_str().unwrap();
|
||||||
|
if !self.repository.ends_with("/xbuild") {
|
||||||
|
assert!(
|
||||||
|
!(file_name.contains("${version") || file_name.contains("${rust")),
|
||||||
|
"{bin}"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Deserialize)]
|
||||||
|
#[serde(deny_unknown_fields)]
|
||||||
|
pub struct Signing {
|
||||||
|
pub kind: SigningKind,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Deserialize, PartialEq, Eq)]
|
||||||
|
#[serde(rename_all = "kebab-case")]
|
||||||
|
#[serde(deny_unknown_fields)]
|
||||||
|
pub enum SigningKind {
|
||||||
|
/// algorithm: minisign
|
||||||
|
/// public key: package.metadata.binstall.signing.pubkey at Cargo.toml
|
||||||
|
/// <https://github.com/cargo-bins/cargo-binstall/blob/HEAD/SIGNING.md>
|
||||||
|
MinisignBinstall,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Deserialize)]
|
||||||
|
#[serde(deny_unknown_fields)]
|
||||||
|
pub struct BaseManifestPlatformInfo {
|
||||||
|
/// Asset name patterns. Default to the value at `BaseManifest::asset_name`.
|
||||||
|
pub asset_name: Option<StringOrArray>,
|
||||||
|
/// Path to binaries in archive. Default to the value at `BaseManifest::bin`.
|
||||||
|
pub bin: Option<StringOrArray>,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
||||||
|
#[serde(untagged)]
|
||||||
|
pub enum StringOrArray {
|
||||||
|
String(String),
|
||||||
|
Array(Vec<String>),
|
||||||
|
}
|
||||||
|
|
||||||
|
impl StringOrArray {
|
||||||
|
#[must_use]
|
||||||
|
pub fn as_slice(&self) -> &[String] {
|
||||||
|
match self {
|
||||||
|
Self::String(s) => slice::from_ref(s),
|
||||||
|
Self::Array(v) => v,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[must_use]
|
||||||
|
pub fn map<F: FnMut(&String) -> String>(&self, mut f: F) -> Self {
|
||||||
|
match self {
|
||||||
|
Self::String(s) => Self::String(f(s)),
|
||||||
|
Self::Array(v) => Self::Array(v.iter().map(f).collect()),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// GitHub Actions Runner supports Linux (x86_64, AArch64, Arm), Windows (x86_64, AArch64),
|
||||||
|
/// and macOS (x86_64, AArch64).
|
||||||
|
/// <https://github.com/actions/runner/blob/v2.321.0/.github/workflows/build.yml#L21>
|
||||||
|
/// <https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners#supported-architectures-and-operating-systems-for-self-hosted-runners>
|
||||||
|
///
|
||||||
|
/// Note:
|
||||||
|
/// - Static-linked binaries compiled for linux-musl will also work on linux-gnu systems and are
|
||||||
|
/// usually preferred over linux-gnu binaries because they can avoid glibc version issues.
|
||||||
|
/// (rustc enables statically linking for linux-musl by default, except for mips.)
|
||||||
|
/// - Binaries compiled for x86_64 macOS will usually also work on AArch64 macOS.
|
||||||
|
/// - Binaries compiled for x86_64 Windows will usually also work on AArch64 Windows 11+.
|
||||||
|
/// - Ignore Arm for now, as we need to consider the version and whether hard-float is supported.
|
||||||
|
/// <https://github.com/rust-lang/rustup/pull/593>
|
||||||
|
/// <https://github.com/cross-rs/cross/pull/1018>
|
||||||
|
/// Does it seem only armv7l+ is supported?
|
||||||
|
/// <https://github.com/actions/runner/blob/v2.321.0/src/Misc/externals.sh#L178>
|
||||||
|
/// <https://github.com/actions/runner/issues/688>
|
||||||
|
// TODO: support musl with dynamic linking like wasmtime 22.0.0+'s musl binaries: <https://github.com/bytecodealliance/wasmtime/releases/tag/v22.0.0>
|
||||||
|
#[allow(non_camel_case_types)]
|
||||||
|
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize)]
|
||||||
|
pub enum HostPlatform {
|
||||||
|
x86_64_linux_gnu,
|
||||||
|
x86_64_linux_musl,
|
||||||
|
x86_64_macos,
|
||||||
|
x86_64_windows,
|
||||||
|
aarch64_linux_gnu,
|
||||||
|
aarch64_linux_musl,
|
||||||
|
aarch64_macos,
|
||||||
|
aarch64_windows,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl HostPlatform {
|
||||||
|
#[must_use]
|
||||||
|
pub fn rust_target(self) -> &'static str {
|
||||||
|
match self {
|
||||||
|
Self::x86_64_linux_gnu => "x86_64-unknown-linux-gnu",
|
||||||
|
Self::x86_64_linux_musl => "x86_64-unknown-linux-musl",
|
||||||
|
Self::x86_64_macos => "x86_64-apple-darwin",
|
||||||
|
Self::x86_64_windows => "x86_64-pc-windows-msvc",
|
||||||
|
Self::aarch64_linux_gnu => "aarch64-unknown-linux-gnu",
|
||||||
|
Self::aarch64_linux_musl => "aarch64-unknown-linux-musl",
|
||||||
|
Self::aarch64_macos => "aarch64-apple-darwin",
|
||||||
|
Self::aarch64_windows => "aarch64-pc-windows-msvc",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[must_use]
|
||||||
|
pub fn rust_target_arch(self) -> &'static str {
|
||||||
|
match self {
|
||||||
|
Self::aarch64_linux_gnu
|
||||||
|
| Self::aarch64_linux_musl
|
||||||
|
| Self::aarch64_macos
|
||||||
|
| Self::aarch64_windows => "aarch64",
|
||||||
|
Self::x86_64_linux_gnu
|
||||||
|
| Self::x86_64_linux_musl
|
||||||
|
| Self::x86_64_macos
|
||||||
|
| Self::x86_64_windows => "x86_64",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[must_use]
|
||||||
|
pub fn rust_target_os(self) -> &'static str {
|
||||||
|
match self {
|
||||||
|
Self::aarch64_linux_gnu
|
||||||
|
| Self::aarch64_linux_musl
|
||||||
|
| Self::x86_64_linux_gnu
|
||||||
|
| Self::x86_64_linux_musl => "linux",
|
||||||
|
Self::aarch64_macos | Self::x86_64_macos => "macos",
|
||||||
|
Self::aarch64_windows | Self::x86_64_windows => "windows",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[must_use]
|
||||||
|
pub fn exe_suffix(self) -> &'static str {
|
||||||
|
match self {
|
||||||
|
Self::x86_64_windows | Self::aarch64_windows => ".exe",
|
||||||
|
_ => "",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -158,3 +158,44 @@ for tool in "${tools[@]}"; do
|
|||||||
git checkout main
|
git checkout main
|
||||||
git branch -D "${tool}"
|
git branch -D "${tool}"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
schema_workspace=/tmp/workspace
|
||||||
|
rm -rf -- "${schema_workspace}"
|
||||||
|
# Checkout manifest-schema branch
|
||||||
|
schema_version="$(cargo metadata --format-version=1 --no-deps | jq -r '.packages[] | select(.name == "install-action-manifest-schema") | .version')"
|
||||||
|
if [[ "${schema_version}" == "0."* ]]; then
|
||||||
|
schema_version="0.$(cut -d. -f2 <<<"${schema_version}")"
|
||||||
|
else
|
||||||
|
schema_version="$(cut -d. -f1 <<<"${schema_version}")"
|
||||||
|
fi
|
||||||
|
schema_branch="manifest-schema-${schema_version}"
|
||||||
|
|
||||||
|
git worktree add --force "${schema_workspace}"
|
||||||
|
(
|
||||||
|
cd -- "${schema_workspace}"
|
||||||
|
if git fetch origin "${schema_branch}"; then
|
||||||
|
git checkout "origin/${schema_branch}" -B "${schema_branch}"
|
||||||
|
elif ! git checkout "${schema_branch}"; then
|
||||||
|
# New branch with no history. Credit: https://stackoverflow.com/a/13969482
|
||||||
|
git checkout --orphan "${schema_branch}"
|
||||||
|
git rm -rf -- . || true
|
||||||
|
git commit -m 'Initial commit' --allow-empty
|
||||||
|
fi
|
||||||
|
)
|
||||||
|
|
||||||
|
# Copy over schema
|
||||||
|
cp -- ./manifests/* "${schema_workspace}"
|
||||||
|
|
||||||
|
(
|
||||||
|
cd -- "${schema_workspace}"
|
||||||
|
# Stage changes
|
||||||
|
git add .
|
||||||
|
# Detect changes, then commit and push if changes exist
|
||||||
|
if [[ "$(git status --porcelain=v1 | wc -l)" != "0" ]]; then
|
||||||
|
git commit -m 'Update manifest schema'
|
||||||
|
git push origin HEAD
|
||||||
|
fi
|
||||||
|
)
|
||||||
|
|
||||||
|
rm -rf -- "${schema_workspace}"
|
||||||
|
git worktree prune
|
||||||
|
|||||||
1121
tools/tidy.sh
1121
tools/tidy.sh
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user