Compare commits

...
56 Commits
Author SHA1 Message Date
1c37ad07a6 chore: update known checksums for 0.13.0 (#1089)
chore: update known checksums for 0.13.0

Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2026-10-09 15:33:43 -05:00
b3c9b5fc56 chore: update known checksums for 0.12.24 (#1084)
chore: update known checksums for 0.12.24

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-10-09 09:36:48 +02:00
Zanie BlueandGitHub b06acff4b6 Add python-arch support (#1079)
Windows ARM64 jobs may need x64 Python independently of their Python
version pin. Add `python-arch` to export `UV_PYTHON_ARCH` for subsequent
steps and include the selected architecture in the uv and managed-Python
cache keys. The input takes precedence over an inherited environment
value, and unsupported uv versions fail before environment creation.

Requires a uv release with `UV_PYTHON_ARCH` support.
2026-10-07 09:03:18 +02:00
c84232ca4f chore: update known checksums for 0.12.23 (#1082)
chore: update known checksums for 0.12.23

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-10-05 08:01:54 +02:00
Charlie MarshandGitHub 51fdd265d3 Use macOS 15 runners for tests (#1081)
We move the `macos-14` test jobs to `macos-15` ahead of GitHub’s
[October 5 brownout and November 2, 2026
retirement](https://github.com/actions/runner-images/issues/13518).

We also remove the macOS 14 cache-key test case; the matrix already
covers macOS 15.
2026-10-02 15:17:20 -05:00
a96208bed1 chore: update known checksums for 0.12.22 (#1080)
chore: update known checksums for 0.12.22

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-10-02 08:37:21 +02:00
0e3884b860 chore: update known checksums for 0.12.21 (#1078)
chore: update known checksums for 0.12.21

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-10-01 19:16:46 +02:00
bcf05803b5 chore: update known checksums for 0.12.20 (#1076)
chore: update known checksums for 0.12.20

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-29 13:06:23 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b92a892142 chore(deps): bump zizmorcore/zizmor-action from 0.6.2 to 0.6.3 (#1077)
Bumps
[zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action)
from 0.6.2 to 0.6.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/zizmorcore/zizmor-action/releases">zizmorcore/zizmor-action's
releases</a>.</em></p>
<blockquote>
<h2>v0.6.3</h2>
<p>zizmor 1.30.0 is now the default version.</p>
<p>Release notes: <a
href="https://docs.zizmor.sh/release-notes/%5B#1300%5D(https://redirect.github.com/zizmorcore/zizmor-action/issues/1300)">zizmorcore/zizmor-action#1300</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/70fb788f84895a7701f5643d103d587e460b5c99"><code>70fb788</code></a>
Sync zizmor versions (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/162">#162</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/7999d8c8ac51dbd3bd44e6e35e7cd015b5dcdc82"><code>7999d8c</code></a>
chore(deps): bump github/codeql-action/upload-sarif from 4.37.6 to
4.37.7 in ...</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/2ae1ce9c6b7248fdfc5a4f47f3527240521f79b9"><code>2ae1ce9</code></a>
chore(deps): bump github/codeql-action/upload-sarif (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/160">#160</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/951a5eef1c3d7669c20934ceca759fdf8dbd153e"><code>951a5ee</code></a>
Skip prerelease versions in sync-zizmor-versions workflow (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/158">#158</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/79f019101434ac77d41ed24f93c6bdc8676bd355"><code>79f0191</code></a>
chore(deps): bump github/codeql-action/upload-sarif (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/156">#156</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/26a3ae6758a68e521bfe592f503410eb61b699bb"><code>26a3ae6</code></a>
sync-zizmor-versions: retry up to 5 times (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/155">#155</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/435cb31ca936c013e7509783c876307347527f14"><code>435cb31</code></a>
chore(deps): bump github/codeql-action/upload-sarif (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/151">#151</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/d6cec1055e4fad6cfafcf37200f67065ef8d7acd"><code>d6cec10</code></a>
Try the new self-referencing syntax (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/148">#148</a>)</li>
<li><a
href="https://github.com/zizmorcore/zizmor-action/commit/edd9b84a6aa802c03764a5ba7c7f627bb5974436"><code>edd9b84</code></a>
README: bump pins (<a
href="https://redirect.github.com/zizmorcore/zizmor-action/issues/150">#150</a>)</li>
<li>See full diff in <a
href="https://github.com/zizmorcore/zizmor-action/compare/3dc1ecc9bcb9e94e9b2c709687979e1298497054...70fb788f84895a7701f5643d103d587e460b5c99">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=zizmorcore/zizmor-action&package-manager=github_actions&previous-version=0.6.2&new-version=0.6.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-29 13:03:48 +02:00
227a0f6bea chore: update known checksums for 0.12.19 (#1068)
chore: update known checksums for 0.12.19

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-25 08:48:57 +02:00
525b679e45 chore: update known checksums for 0.12.18 (#1065)
chore: update known checksums for 0.12.18

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-23 08:08:47 +02:00
c18668ad3c chore(deps): roll up Dependabot updates (#1059)
Co-authored-by: Amp <amp@ampcode.com>
2026-09-21 08:40:50 +02:00
ffe1476305 chore: update known checksums for 0.12.17 (#1058)
chore: update known checksums for 0.12.17

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-20 10:50:13 +02:00
f5548c5552 chore: update known checksums for 0.12.16 (#1057)
chore: update known checksums for 0.12.16

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-18 08:48:58 +02:00
a761a4e9af Disable automatic cache saves for merge queues (#1056)
Amp-Thread-ID:
https://ampcode.com/threads/T-01a0af68-f950-77dc-b9ae-9402987584c8

Closes: #1052

Co-authored-by: Amp <amp@ampcode.com>
2026-09-17 15:56:38 +02:00
3377a30666 chore: update known checksums for 0.12.15 (#1054)
chore: update known checksums for 0.12.15

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-16 08:10:10 +02:00
dfb5f38677 chore: update known checksums for 0.12.14 (#1053)
chore: update known checksums for 0.12.14

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-15 07:41:36 +02:00
45c121f982 chore: update known checksums for 0.12.13 (#1045)
chore: update known checksums for 0.12.13

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-11 08:30:39 +02:00
8073452fd4 docs: update version references to v10.1.0 (#1044)
Update `uses: astral-sh/setup-uv@...` references in documentation to
`bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0`.

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-10 21:27:24 +02:00
Kevin StillhammerandGitHub bec219d24c chore(deps-dev): roll up Dependabot updates (#1043)
## Summary

- bump `@biomejs/biome` from 2.5.7 to 2.5.8 (#1042)
- bump `@types/node` from 26.1.2 to 26.2.0 (#1039)
- bump `esbuild` from 0.28.1 to 0.28.2 (#1040)
- update the Biome schema URL to 2.5.8

The TypeScript 7.0.2 update from #1029 is intentionally excluded:
`ts-jest` currently declares TypeScript `<7`, and the update causes all
unit suites to fail during ts-jest configuration.

## Validation

- `npm run all` (npm 11.10.0)

Refs: pi-session 01a08ca1-d3b3-7190-a02e-9a955e1b58b0
2026-09-10 21:10:42 +02:00
marcelandGitHub b90ec40d15 fix: respect no proxy directive (#1037)
Closes #1034
2026-09-10 20:40:43 +02:00
421feb646d chore: update known checksums for 0.12.12 (#1041)
chore: update known checksums for 0.12.12

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-10 08:32:00 +02:00
William WoodruffandGitHub f634bf473a Expose a Python "identity" output (#1036)
https://github.com/pyca/cryptography/pull/15572#discussion_r3913508686
has the context for this: TL;DR our current `python-version` output
mirrors the "request" version exactly, which means that it's
insufficient for any downstream that needs to manage its own cache keys
(since caches shouldn't be shared across release candidates, but the `uv
python` request version doesn't include RC numbers).

The first commit here was my attempt to fix this by exposing the runtime
Python version, but this too is imprecise: the runtime version doesn't
indicate the interpreter variant (e.g. freethreading), which is also
important to capture in the cache identity.

My solution here is to expose `python-runtime-id`, which is just the
`key` of the active Python version from `uv python list
--output-format=json`.

---------

Signed-off-by: William Woodruff <william@yossarian.net>
2026-09-09 18:45:52 +02:00
a6772c8f0a chore: update known checksums for 0.12.10/0.12.11 (#1038)
chore: update known checksums for 0.12.11

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-09 08:15:09 +02:00
e105c8fb1d chore: update known checksums for 0.12.9 (#1035)
chore: update known checksums for 0.12.9

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-02 08:21:50 +02:00
cd13f92170 Verify downloads with astral-sh/versions checksums (#1033)
`setup-uv` currently ignores the `sha256` supplied by the default
`astral-sh/versions` manifest when a selected artifact is newer than its
bundled checksum table, allowing that download to proceed without
validation. Use the manifest checksum as a fallback after explicit and
bundled checksums, and reject manifest entries that do not provide one.
This preserves the stronger pinned hashes for known releases while
verifying newer releases without requiring an action update. Part of
#1032.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
Co-authored-by: William Woodruff <william@yossarian.net>
Co-authored-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>
2026-09-01 17:07:32 +02:00
3aef7b92c5 chore: update known checksums for 0.12.7/0.12.8 (#1031)
chore: update known checksums for 0.12.8

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-09-01 09:00:23 +02:00
d08d816a1e chore: update known checksums for 0.12.6 (#1030)
chore: update known checksums for 0.12.6

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-08-26 08:35:28 +02:00
19b4d1e990 Harden npm install defaults (#1026)
CI already disables npm lifecycle scripts, but ordinary installs from
the repository still run them. Set `ignore-scripts = true` in `.npmrc`
so developer and maintenance installs use the same default. Keep the
existing seven-day `min-release-age` policy for new resolutions. Require
`npm>=11.10.0` through `engines.npm` and `engine-strict`, while
retaining `devEngines` for newer clients; older installers can otherwise
ignore `devEngines` and the age setting. Pin the build and checksum
workflows to Node.js `24.19.0` so their bundled `npm` supports the
policy. Explicit project commands such as `npm run package` remain
available.

Related: astral-sh/ruff-action#401 applies the matching `npm` defaults,
and astral-sh/ruff-action#411 adds the same legacy-aware version floor.
astral-sh/ruff#27837 applies the install-script default to Ruff's
JavaScript projects. astral-sh/setup-uv#1027 separately adds
registry-signature and provenance verification.

---------

Co-authored-by: zaniebot <242828183+zaniebot@users.noreply.github.com>
2026-08-20 17:38:03 +02:00
William WoodruffandGitHub 7211c71869 Use JSON + a typed wrapper instead of TS codegen (#1025)
Signed-off-by: William Woodruff <william@yossarian.net>
2026-08-19 17:54:07 -04:00
5ec49509d7 chore: update known checksums for 0.12.5 (#1020)
chore: update known checksums for 0.12.5

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2026-08-16 22:24:06 +02:00
William WoodruffandGitHub 92a7c9ffa6 Use self-repo syntax for all in-repo actions/reusable workflows (#1024)
With the self-repo syntax, we also shouldn't need any of these
`actions/checkout` calls.

Signed-off-by: William Woodruff <william@yossarian.net>

---------

Signed-off-by: William Woodruff <william@yossarian.net>
2026-08-16 22:14:36 +02:00
William WoodruffandGitHub 51a7fe0131 Pin one-shot tools (#1022)
This just adds some pins to the action tests; these tests don't rely on
the packages under test being unpinned.

---

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
2026-08-16 21:44:17 +02:00
William WoodruffandGitHub 42bafdadf9 Add dependency cooldowns (#1021)
This does two things:

- Bumps our Dependabot-side cooldowns to 30d
- Adds an NPM-side 7d cooldown

The idea is to give automated cooldowns a longer period, whereas humans
doing maintenance/manual bumps can opt into a newer package as needed.

---

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
2026-08-16 21:41:43 +02:00
Kevin StillhammerandGitHub b555614122 ci: remove obsolete direct push attempts (#1019)
## Summary
- remove direct pushes to `main` from the docs update workflow
- remove the same dead push path from the known-checksums workflow
- create update pull requests directly when changes exist

Direct pushes cannot satisfy the repository rule requiring changes
through pull requests.

## Validation
- `npm ci --ignore-scripts`
- `npm run all`
- `actionlint .github/workflows/update-docs.yml
.github/workflows/update-known-checksums.yml`
- `uvx zizmor .github/workflows/update-docs.yml
.github/workflows/update-known-checksums.yml`

Refs: pi-session 019fff9d-7357-783c-8529-65bc5bf562c2
2026-08-14 11:40:50 +02:00
a1e5847df3 docs: update version references to v10.0.1 (#1018)
Update `uses: astral-sh/setup-uv@...` references in documentation to
`20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1`.

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-08-14 11:10:35 +02:00
20cfd1bf94 chore: update known checksums for 0.12.4 (#1017)
chore: update known checksums for 0.12.4

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-08-14 07:39:05 +02:00
d73a0cab66 Tolerate transient manifest timeouts (#1016)
Transient timeout fetching manifests have increased significantly
recently, especially with private runners.

```
Fetching manifest data from https://raw.githubusercontent.com/astral-sh/versions/main/v1/uv.ndjson ...
Error: The operation was aborted due to timeout
```

Retry transient manifest network failures up to three times with a
progressive backoff (not exponential), keeping the total wait bounded
while making setup resilient to short network blips.

Co-authored-by: Raymond <arguile-@users.noreply.github.com>
2026-08-13 18:34:10 +02:00
ae3b92d1bd docs: update version references to v10.0.0 (#1014)
Update `uses: astral-sh/setup-uv@...` references in documentation to
`ae62891fec2bb8e7d6c99fc78c9fec3a63790f8d # v10.0.0`.

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-08-12 16:22:43 +02:00
Kevin StillhammerandGitHub ae62891fec chore(deps): roll up Dependabot updates (#1013)
## Summary

Roll up the remaining dependency changes from:

- #1008 (`@actions/glob` 0.7.0)
- #1009 (`@types/node` 26.1.2)
- #1010 (`js-yaml` 5.2.3)
- #1011 (`@biomejs/biome` 2.5.7)
- #1012 (`@types/semver` 7.8.0)

The Biome schema URL and committed action bundles are updated
accordingly.

## Validation

- `npm run all`

Refs: pi-session 019ff5b2-b439-7431-9595-b965f7fe6119
2026-08-12 13:23:43 +02:00
Kevin StillhammerandGitHub f9cdb47d48 Reject paths in .tool-versions (#1007)
## Summary
- reject path-like uv versions from `.tool-versions`
- reject path-like Python versions from `.tool-versions`
- document the restriction and cover Unix and Windows paths in tests

## Testing
- `npm ci --ignore-scripts`
- `npm run all`

Refs: pi-session 019ff4bb-8b7c-7c4b-8bdf-7c188dfa2e3f
2026-08-12 13:18:20 +02:00
Kevin StillhammerandGitHub 4f6036f71c Require pull requests for Dependabot rollups (#1005)
## Summary

- require the Dependabot rollup skill to commit and push validated
changes
- always create a pull request with the `dependencies` label
- report the created PR and label confirmation

## Testing

- `git diff --check`

Refs: pi-session 019ff0f1-1aee-7691-8a2c-7c708812f7b0
2026-08-11 15:18:43 +02:00
Kevin StillhammerandGitHub 8d6402c9b7 chore(deps): roll up Dependabot updates (#1004)
## Summary

Roll up the remaining dependency changes from Dependabot PRs #997, #998,
#999, #1000, #1001, #1002, and #1003:

- update `github/codeql-action` to 4.37.6
- update `zizmorcore/zizmor-action` to 0.6.2
- update `undici` to 8.10.0
- update `smol-toml` to 1.7.1
- update `@biomejs/biome` and its schema to 2.5.6
- regenerate the published bundles

PRs #905 and #907 were excluded because their requested Jest and pep440
versions are already present on `main`.

## Validation

- `npm run all`
- `actionlint .github/workflows/codeql-analysis.yml
.github/workflows/test.yml`
- `uvx zizmor .github/workflows/codeql-analysis.yml
.github/workflows/test.yml`
- `git diff --check`

Refs: pi-session 019ff0c9-8e00-72d3-99ad-d4383a4c57d4
2026-08-11 15:08:35 +02:00
Kevin StillhammerandGitHub 46f427bd47 Read Python version from .tool-versions (#996)
## Summary
- read the Python version from an explicitly selected `.tool-versions`
file
- preserve `python-version` and existing `UV_PYTHON` precedence
- add parser, input, and workflow coverage and update documentation and
bundled action artifacts

## Validation
- `npm run all`
- `actionlint .github/workflows/test.yml`
- `uvx zizmor .github/workflows/test.yml`

Closes #983

Refs: pi-session 019ff01a-544c-79f3-8f73-a00132af39f5
2026-08-11 14:26:03 +02:00
Kevin StillhammerandGitHub 8ed89c5114 ci: pin Alpine container image (#995)
## Summary

- pin the Alpine test container to the current multi-platform digest for
Alpine 3.24.1
- resolve zizmor's `unpinned-images` finding

## Validation

- `actionlint .github/workflows/test.yml`
- `uvx zizmor .github/workflows/test.yml`
- `docker buildx imagetools inspect
alpine@sha256:28bd5fe8b56d1bd048e5babf5b10710ebe0bae67db86916198a6eec434943f8b`

Refs: pi-session 019ff01a-544c-79f3-8f73-a00132af39f5
2026-08-11 11:47:08 +02:00
Kevin StillhammerandGitHub 8473c7fea4 chore(deps): roll up Dependabot updates (#994)
## Summary

Roll up the remaining net changes from the open Dependabot updates:

- release-drafter/release-drafter 7.7.0 (#990)
- github/codeql-action 4.37.4 (#987, #988, #989)
- zizmorcore/zizmor-action 0.6.1 (#986)
- @actions/cache 6.2.0 (#975)
- @biomejs/biome 2.5.4 (#974)
- undici 8.7.0 (#973)

The Jest 30.4.2 (#905) and @renovatebot/pep440 5.0.0 (#907) updates are
already present on main and require no additional changes.

This also updates the Biome schema, applies the formatter changes from
Biome 2.5.4, and regenerates the published bundles.

## Testing

- `npm run all`
- `actionlint`
- `git diff --check`

Refs: pi-session 019ff01b-f917-73c1-950e-2966956f263c
2026-08-11 11:27:16 +02:00
Kevin StillhammerandGitHub 18d451d679 Add latest-known version selector (#993)
## Summary

- add `latest-known` as an explicit version selector
- resolve it locally to the newest version in the bundled checksum table
- preserve existing default and `latest` behavior
- document custom-manifest checksum semantics and update published
bundles

## Testing

- `npm ci --ignore-scripts`
- `npm run all` (99 tests passed)

Closes #919

Refs: pi-session 019fed0e-6019-7504-911b-bd9955cbbd49
2026-08-11 11:15:59 +02:00
Kevin StillhammerandGitHub f45168497b Disable automatic caching for sensitive events (#992)
## Summary

- disable `enable-cache: auto` for `pull_request_target`,
`workflow_run`, and `release` events
- disable automatic caching for tag pushes while leaving branch pushes
unchanged
- preserve explicit `enable-cache: true` as an override
- run a `workflow_run` integration fixture with `act` in pull request CI
and verify caching is disabled
- document the behavior and update the published bundles

## Testing

- `npm run all`
- `actionlint .github/workflows/test.yml
__tests__/workflows/workflow-run.yml`
- `uvx zizmor __tests__/workflows/workflow-run.yml`

Closes #984

Refs: pi-session 019fec42-9b26-714e-a359-830ac4401ecd
2026-08-10 18:12:08 +02:00
b68407c192 chore: update known checksums for 0.12.3 (#991)
chore: update known checksums for 0.12.3

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-08-09 10:26:32 +02:00
696e4e1bf2 chore: update known checksums for 0.12.2 (#985)
chore: update known checksums for 0.12.2

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-08-06 15:23:16 +02:00
dependabot[bot]andGitHub 7cd5f7fd2e chore(deps): bump zizmorcore/zizmor-action from 0.5.7 to 0.6.0 (#976)
Signed-off-by: dependabot[bot] <support@github.com>
2026-08-05 09:55:57 -04:00
dependabot[bot]andGitHub d64009a7c5 chore(deps): bump actions/checkout from 7.0.0 to 7.0.1 (#980)
Signed-off-by: dependabot[bot] <support@github.com>
2026-08-05 09:55:41 -04:00
7e7e21ddc3 chore: update known checksums for 0.12.1 (#982)
chore: update known checksums for 0.12.1

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-08-01 10:26:59 +02:00
094aa226ed chore: update known checksums for 0.12.0 (#981)
chore: update known checksums for 0.12.0

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-07-29 09:17:43 +02:00
d269b9917d chore: update known checksums for 0.11.31/0.11.32 (#972)
chore: update known checksums for 0.11.32

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-07-24 08:30:02 +02:00
c6081965dd docs: update version references to v9.0.0 (#971)
Update `uses: astral-sh/setup-uv@...` references in documentation to
`c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0`.

Co-authored-by: eifinger <eifinger@users.noreply.github.com>
2026-07-21 18:03:39 +02:00
56 changed files with 19173 additions and 14380 deletions
+6 -4
View File
@@ -1,6 +1,6 @@
---
name: dependabot-pr-rollup
description: Find open Dependabot PRs for the current GitHub repo, compare each PR head to its base branch, replay only the net dependency changes in a fresh worktree and branch, run npm validation, and optionally commit, push, and open a PR. Use when you want to batch or manually replicate active Dependabot updates.
description: Find open Dependabot PRs for the current GitHub repo, compare each PR head to its base branch, replay only the net dependency changes in a fresh worktree and branch, run npm validation, then commit, push, and open a pull request labeled dependencies. Use when you want to batch or manually replicate active Dependabot updates.
license: MIT
compatibility: Requires git, git worktree, gh CLI auth, npm, and a GitHub repo with an origin remote.
---
@@ -13,7 +13,7 @@ Use this skill when the user wants to:
- find all open Dependabot PRs in the current repo
- reproduce their net effect in one local branch
- validate the result with the repo's standard npm checks
- optionally commit, push, and open a PR
- commit and push the validated changes, then open a PR labeled `dependencies`
## Workflow
@@ -28,7 +28,8 @@ Use this skill when the user wants to:
- Use `npm install ... --ignore-scripts` for direct dependency changes so `package-lock.json` stays in sync.
- When updating `@biomejs/biome`, also update the Biome schema URL version in `biome.json` to match the installed Biome version.
7. Run `npm run all`.
8. If requested, commit the changed source, lockfile, and generated artifacts, then push and open a PR.
8. Commit the changed source, lockfile, and generated artifacts, then push the branch.
9. Always open a pull request for the rollup and add the `dependencies` label to it. Pass `--label dependencies` to `gh pr create`, or add the label immediately afterward with `gh pr edit --add-label dependencies`.
## Repo-specific notes
@@ -46,4 +47,5 @@ Always report:
- new worktree path
- files changed
- `npm run all` result
- if applicable, commit SHA and PR URL
- commit SHA and PR URL
- confirmation that the PR has the `dependencies` label
+1
View File
@@ -1,2 +1,3 @@
* text=auto eol=lf
dist/** -diff linguist-generated=true
src/download/checksum/known-checksums.json linguist-generated=true
+4
View File
@@ -8,6 +8,10 @@ self-hosted-runner:
# Empty array means no configuration variable is allowed.
config-variables: null
paths:
.github/workflows/**/*.{yml,yaml}:
ignore:
- 'specifying action "\$/" in invalid format because ref is missing'
- 'reusable workflow call "\$/.+" at "uses" is not following the format'
.github/workflows/test.yml:
ignore:
- 'invalid runner name.+'
+2 -2
View File
@@ -5,11 +5,11 @@ updates:
schedule:
interval: daily
cooldown:
default-days: 7
default-days: 30
- package-ecosystem: npm
directory: /
schedule:
interval: daily
cooldown:
default-days: 7
default-days: 30
+4 -4
View File
@@ -41,13 +41,13 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4.37.0
uses: github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
with:
languages: ${{ matrix.language }}
source-root: src
@@ -59,7 +59,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4.37.0
uses: github/codeql-action/autobuild@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
@@ -73,4 +73,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4.37.0
uses: github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
+1 -1
View File
@@ -19,7 +19,7 @@ jobs:
pull-requests: read
steps:
- name: 🚀 Run Release Drafter
uses: release-drafter/release-drafter@4d75298e00d9e34c483e5ff8c68d0ea1c1940c1e # v7.5.1
uses: release-drafter/release-drafter@34d80673e067bdc0c24568d3af899c216adcfaa9 # v7.7.0
with:
commitish: ${{ github.sha }}
env:
+1 -1
View File
@@ -116,7 +116,7 @@ jobs:
name: Update docs
needs:
- release
uses: ./.github/workflows/update-docs.yml
uses: $/.github/workflows/update-docs.yml
permissions:
contents: write
pull-requests: write
+127 -127
View File
@@ -21,13 +21,13 @@ jobs:
permissions:
security-events: write # for zizmor
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Actionlint
uses: eifinger/actionlint-action@1fc89649be682d16ec5cf65ea16e269eb88d3982 # v1.10.2
- name: Run zizmor
uses: zizmorcore/zizmor-action@192e21d79ab29983730a13d1382995c2307fbcaa # v0.5.7
uses: zizmorcore/zizmor-action@70fb788f84895a7701f5643d103d587e460b5c99 # v0.6.3
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version-file: .nvmrc
@@ -49,14 +49,14 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-latest]
os: [ubuntu-latest, macos-latest, macos-15, windows-latest]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
uses: $/
- run: uv sync
working-directory: __tests__/fixtures/uv-project
shell: bash
@@ -76,12 +76,12 @@ jobs:
test-uv-no-modify-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install with UV_NO_MODIFY_PATH set
id: setup-uv
uses: ./
uses: $/
env:
UV_NO_MODIFY_PATH: 1
- run: |
@@ -125,12 +125,12 @@ jobs:
expected-version: "0.1.0"
resolution-strategy: "lowest"
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install version ${{ matrix.input.version-input }} with strategy ${{ matrix.input.resolution-strategy || 'highest' }}
id: setup-uv
uses: ./
uses: $/
with:
version: ${{ matrix.input.version-input }}
resolution-strategy: ${{ matrix.input.resolution-strategy || 'highest' }}
@@ -154,11 +154,8 @@ jobs:
matrix:
version-input: ["latest", ">=0.8"]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install version ${{ matrix.version-input }}
uses: ./
uses: $/
with:
version: ${{ matrix.version-input }}
- name: Latest version gets installed
@@ -194,11 +191,11 @@ jobs:
- working-directory: "__tests__/fixtures/uv-toml-project"
expected-version: "0.5.15"
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install version from ${{ matrix.input.working-directory }}
uses: ./
uses: $/
with:
working-directory: ${{ matrix.input.working-directory }}
- name: Correct version gets installed
@@ -220,11 +217,11 @@ jobs:
- version-file: "__tests__/fixtures/.tool-versions"
expected-version: "0.5.15"
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install version from ${{ matrix.input.version-file }}
uses: ./
uses: $/
with:
version-file: ${{ matrix.input.version-file }}
- name: Correct version gets installed
@@ -234,15 +231,40 @@ jobs:
exit 1
fi
test-tool-versions-python-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install versions from .tool-versions
id: setup-uv
uses: $/
with:
version-file: "__tests__/fixtures/.tool-versions"
- name: Verify Python version from .tool-versions
run: |
if [ "$UV_PYTHON" != "3.13.1t" ]; then
echo "Wrong UV_PYTHON: $UV_PYTHON"
exit 1
fi
if [ "$PYTHON_VERSION" != "3.13.1t" ]; then
echo "Wrong python-version output: $PYTHON_VERSION"
exit 1
fi
shell: bash
env:
PYTHON_VERSION: ${{ steps.setup-uv.outputs.python-version }}
test-malformed-pyproject-file-fallback:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install using malformed pyproject.toml
id: setup-uv
uses: ./
uses: $/
with:
working-directory: "__tests__/fixtures/malformed-pyproject-toml-project"
- run: uv --help
@@ -257,11 +279,11 @@ jobs:
- os: macos-latest
checksum: "a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218"
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Checksum matches expected
uses: ./
uses: $/
with:
version: "0.3.2"
checksum: ${{ matrix.inputs.checksum }}
@@ -271,11 +293,11 @@ jobs:
test-with-explicit-token:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install default version
uses: ./
uses: $/
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- run: uv sync
@@ -284,25 +306,19 @@ jobs:
test-uvx:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install default version
uses: ./
- run: uvx ruff --version
uses: $/
- run: uvx ruff@0.14.10 --version
test-tool-install:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-latest]
os: [ubuntu-latest, macos-latest, macos-15, windows-latest]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install default version
uses: ./
- run: uv tool install ruff
uses: $/
- run: uv tool install ruff==0.14.10
- run: ruff --version
test-python-version:
@@ -311,12 +327,12 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
uses: $/
with:
python-version: 3.13.1t
- name: Verify UV_PYTHON is set to correct version
@@ -331,9 +347,14 @@ jobs:
if [ "$PYTHON_VERSION" != "3.13.1t" ]; then
exit 1
fi
if [ -n "$PYTHON_RUNTIME_ID" ]; then
echo "python-runtime-id should be empty without environment activation"
exit 1
fi
shell: bash
env:
PYTHON_VERSION: ${{ steps.setup-uv.outputs.python-version }}
PYTHON_RUNTIME_ID: ${{ steps.setup-uv.outputs.python-runtime-id }}
- run: uv sync
working-directory: __tests__/fixtures/uv-project
@@ -343,12 +364,9 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
uses: $/
with:
python-version: 3.13.1t
activate-environment: true
@@ -382,12 +400,9 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
uses: $/
with:
python-version: 3.13.1t
activate-environment: true
@@ -429,13 +444,19 @@ jobs:
raise SystemExit(f"Python is not running from custom venv: {sys.executable}")
PY
shell: bash
- name: Verify Python runtime ID from custom venv
run: |
case "$PYTHON_RUNTIME_ID" in
cpython-3.13.1+freethreaded-*) ;;
*) echo "Wrong Python runtime ID: $PYTHON_RUNTIME_ID"; exit 1 ;;
esac
shell: bash
env:
PYTHON_RUNTIME_ID: ${{ steps.setup-uv.outputs.python-runtime-id }}
test-activate-environment-no-project:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Create incompatible pyproject.toml
run: |
cat > pyproject.toml <<'EOF'
@@ -451,7 +472,7 @@ jobs:
shell: bash
- name: Install latest version with no-project
id: setup-uv
uses: ./
uses: $/
with:
python-version: 3.13.1t
activate-environment: true
@@ -477,11 +498,11 @@ jobs:
runs-on: ubuntu-latest
container: debian:unstable
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install latest version
uses: ./
uses: $/
with:
enable-cache: true
- run: uv sync
@@ -489,14 +510,14 @@ jobs:
test-musl:
runs-on: ubuntu-latest
container: alpine
container: alpine@sha256:28bd5fe8b56d1bd048e5babf5b10710ebe0bae67db86916198a6eec434943f8b # 3.24.1
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
uses: $/
with:
enable-cache: true
- name: Verify cache key contains alpine
@@ -521,8 +542,6 @@ jobs:
expected-os: "ubuntu-22.04"
- os: ubuntu-24.04
expected-os: "ubuntu-24.04"
- os: macos-14
expected-os: "macos-14"
- os: macos-15
expected-os: "macos-15"
- os: windows-2022
@@ -530,12 +549,9 @@ jobs:
- os: windows-2025
expected-os: "windows-2025"
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup uv
id: setup-uv
uses: ./
uses: $/
with:
enable-cache: true
- name: Verify cache key contains OS version
@@ -556,11 +572,11 @@ jobs:
enable-cache: ["true", "false", "auto"]
os: ["ubuntu-latest", "windows-latest"]
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: ${{ matrix.enable-cache }}
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-setup-cache-${{ matrix.os }}-${{ matrix.enable-cache }}
@@ -575,12 +591,12 @@ jobs:
os: ["ubuntu-latest", "windows-latest"]
needs: test-setup-cache
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Restore with cache
id: restore
uses: ./
uses: $/
with:
enable-cache: ${{ matrix.enable-cache }}
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-setup-cache-${{ matrix.os }}-${{ matrix.enable-cache }}
@@ -609,11 +625,11 @@ jobs:
test-setup-cache-requirements-txt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: true
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-setup-cache-requirements-txt
@@ -625,12 +641,12 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-requirements-txt
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Restore with cache
id: restore
uses: ./
uses: $/
with:
enable-cache: true
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-setup-cache-requirements-txt
@@ -649,11 +665,11 @@ jobs:
test-setup-cache-dependency-glob:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: true
cache-dependency-glob: |
@@ -666,7 +682,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-dependency-glob
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Change pyproject.toml
@@ -675,7 +691,7 @@ jobs:
echo 'dev-dependencies = []' >> __tests__/fixtures/uv-project/pyproject.toml
- name: Restore with cache
id: restore
uses: ./
uses: $/
with:
enable-cache: true
cache-dependency-glob: |
@@ -694,11 +710,11 @@ jobs:
test-setup-cache-save-cache-false:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: true
save-cache: false
@@ -710,12 +726,12 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-save-cache-false
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Restore with cache
id: restore
uses: ./
uses: $/
with:
enable-cache: true
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-setup-cache-save-cache-false
@@ -730,11 +746,11 @@ jobs:
test-setup-cache-restore-cache-false:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: true
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-setup-cache-restore-cache-false
@@ -745,12 +761,12 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-restore-cache-false
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Restore with cache
id: restore
uses: ./
uses: $/
with:
enable-cache: true
restore-cache: false
@@ -773,11 +789,8 @@ jobs:
expected-cache-dir: "D:\\a\\_temp\\setup-uv-cache"
runs-on: ${{ matrix.inputs.os }}
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: true
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-cache-local
@@ -791,11 +804,8 @@ jobs:
test-cache-local-cache-disabled:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup without cache
uses: ./
uses: $/
with:
enable-cache: false
@@ -810,11 +820,8 @@ jobs:
test-cache-local-cache-disabled-but-explicit-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup without cache
uses: ./
uses: $/
with:
enable-cache: false
cache-local-path: /tmp/uv-cache-disabled
@@ -830,13 +837,13 @@ jobs:
test-no-python-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Fake pyproject.toml at root
run: cp __tests__/fixtures/old-python-constraint-project/pyproject.toml pyproject.toml
- name: Setup with cache
uses: ./
uses: $/
with:
enable-cache: true
- run: uv sync
@@ -845,11 +852,11 @@ jobs:
test-custom-manifest-file:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install from custom manifest file
uses: ./
uses: $/
with:
manifest-file: "https://raw.githubusercontent.com/astral-sh/setup-uv/${{ github.ref }}/__tests__/download/custom-manifest.ndjson"
- run: uv sync
@@ -864,12 +871,9 @@ jobs:
test-download-from-astral-mirror-false:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install with download-from-astral-mirror disabled
id: setup-uv
uses: ./
uses: $/
with:
download-from-astral-mirror: false
- name: Verify uv is installed
@@ -878,14 +882,11 @@ jobs:
test-absolute-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Create requirements.txt
run: echo "uv==0.6.17" > /tmp/setup-uv-requirements.txt
- name: Install from requirements file
id: setup-uv
uses: ./
uses: $/
with:
version-file: "/tmp/setup-uv-requirements.txt"
- name: Correct version gets installed
@@ -898,16 +899,13 @@ jobs:
test-relative-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: mkdir
run: mkdir -p /tmp/setup-uv-test-relative-path
- name: Create requirements.txt
run: echo "uv==0.6.17" > /tmp/setup-uv-test-relative-path/setup-uv-requirements.txt
- name: Install from requirements file
id: setup-uv
uses: ./
uses: $/
with:
version-file: "./setup-uv-requirements.txt"
working-directory: "/tmp/setup-uv-test-relative-path"
@@ -922,11 +920,11 @@ jobs:
test-cache-prune-force:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup uv
uses: ./
uses: $/
with:
cache-suffix: ${{ github.run_id }}-${{ github.run_attempt }}-test-cache-prune-force
- name: Create long running python script
@@ -939,7 +937,7 @@ jobs:
test-cache-dir-from-file:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Verify uv cache dir is not populated
@@ -949,7 +947,7 @@ jobs:
exit 1
fi
- name: Setup uv
uses: ./
uses: $/
with:
working-directory: __tests__/fixtures/cache-dir-defined-project
- run: uv sync
@@ -966,11 +964,11 @@ jobs:
env:
UV_PYTHON_INSTALL_DIR: /tmp/missing-uv-python
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup uv with cache and python cache enabled
uses: ./
uses: $/
with:
enable-cache: true
cache-python: true
@@ -987,7 +985,7 @@ jobs:
test-cache-python-installs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Verify Python install dir is not populated
@@ -997,7 +995,7 @@ jobs:
exit 1
fi
- name: Setup uv with cache
uses: ./
uses: $/
with:
enable-cache: true
cache-python: true
@@ -1014,7 +1012,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-cache-python-installs
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Verify Python install dir does not exist
@@ -1025,7 +1023,7 @@ jobs:
fi
- name: Restore with cache
id: restore
uses: ./
uses: $/
with:
enable-cache: true
cache-python: true
@@ -1056,12 +1054,9 @@ jobs:
expected-python-dir: "D:\\a\\_temp\\uv-python-dir"
runs-on: ${{ matrix.inputs.os }}
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
uses: $/
- name: Check Python dir is expected dir
run: |
if [ "$UV_PYTHON_INSTALL_DIR" != "${{ matrix.inputs.expected-python-dir }}" ]; then
@@ -1072,25 +1067,29 @@ jobs:
- name: Install python works
run: uv python install
test-act:
test-workflow-run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install act
run: gh extension install https://github.com/nektos/gh-act
env:
GH_TOKEN: ${{ github.token }}
- name: Run test-uvx with act
run: gh act -j test-uvx -P ubuntu-latest=catthehacker/ubuntu:act-latest
- name: Verify workflow_run disables automatic caching with act
run: |
gh act workflow_run \
-W __tests__/workflows/workflow-run.yml \
-P ubuntu-latest=catthehacker/ubuntu:act-latest \
--env RUNNER_ENVIRONMENT=github-hosted
env:
GH_TOKEN: ${{ github.token }}
validate-typings:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Validate typings
@@ -1107,6 +1106,7 @@ jobs:
- test-from-working-directory-version
- test-malformed-pyproject-file-fallback
- test-version-file-version
- test-tool-versions-python-version
- test-checksum
- test-with-explicit-token
- test-uvx
@@ -1142,7 +1142,7 @@ jobs:
- test-cache-python-installs
- test-restore-python-installs
- test-python-install-dir
- test-act
- test-workflow-run
- validate-typings
if: always()
steps:
+2 -14
View File
@@ -18,7 +18,7 @@ jobs:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
persist-credentials: true
@@ -60,20 +60,8 @@ jobs:
else
echo "changes-exist=false" >> "$GITHUB_OUTPUT"
fi
- name: Commit and push changes
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
id: commit-and-push
continue-on-error: true
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
git add .
git commit -m "docs: update version references to $NEW_VERSION"
git push origin HEAD:refs/heads/main
env:
NEW_VERSION: ${{ steps.tag-info.outputs.tag }}
- name: Create Pull Request
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' && steps.commit-and-push.outcome != 'success' }}
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
with:
commit-message: "docs: update version references to ${{ steps.tag-info.outputs.tag }}"
+3 -16
View File
@@ -15,7 +15,7 @@ jobs:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: true
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
@@ -26,7 +26,7 @@ jobs:
id: update-known-checksums
run:
node dist/update-known-checksums/index.cjs
src/download/checksum/known-checksums.ts
src/download/checksum/known-checksums.json
- name: Check for changes
id: changes-exist
run: |
@@ -39,21 +39,8 @@ jobs:
- name: Compile changes
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
run: npm ci --ignore-scripts && npm run all
- name: Commit and push changes
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
id: commit-and-push
continue-on-error: true
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
git add .
git commit -m "chore: update known checksums for $LATEST_VERSION"
git push origin HEAD:refs/heads/main
env:
LATEST_VERSION: ${{ steps.update-known-checksums.outputs.latest-version }}
- name: Create Pull Request
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' && steps.commit-and-push.outcome != 'success' }}
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
with:
commit-message: "chore: update known checksums"
+3
View File
@@ -0,0 +1,3 @@
engine-strict = true
ignore-scripts = true
min-release-age = 7
+1 -1
View File
@@ -1 +1 @@
24
24.19.0
+58 -15
View File
@@ -15,6 +15,7 @@ Set up your GitHub Actions workflow with a specific version of [uv](https://docs
- [Inputs](#inputs)
- [Outputs](#outputs)
- [Python version](#python-version)
- [Python architecture](#python-architecture)
- [Working directory](#working-directory)
- [Advanced Configuration](#advanced-configuration)
- [How it works](#how-it-works)
@@ -26,7 +27,7 @@ Set up your GitHub Actions workflow with a specific version of [uv](https://docs
```yaml
- name: Install the latest version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
```
If you do not specify a version, this action will look for a [required-version](https://docs.astral.sh/uv/reference/settings/#required-version)
@@ -42,20 +43,23 @@ Have a look under [Advanced Configuration](#advanced-configuration) for detailed
```yaml
- name: Install uv with all available options
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
# The version of uv to install (default: searches for version in config files, then latest)
# The version of uv to install, e.g., "0.5.0", "latest", or "latest-known" (default: searches for version in config files, then latest)
version: ""
# Path to a file containing the version of uv to install, e.g., uv.toml, pyproject.toml, .tool-versions, requirements.txt or uv.lock (default: searches uv.toml then pyproject.toml)
# Path to a file containing the version of uv to install, e.g., uv.toml, pyproject.toml, .tool-versions, requirements.txt or uv.lock. A selected .tool-versions file can also provide the Python version (default: searches uv.toml then pyproject.toml)
version-file: ""
# Resolution strategy when resolving version ranges: 'highest' or 'lowest'
resolution-strategy: "highest"
# The version of Python to set UV_PYTHON to
# The version of Python to set UV_PYTHON to (overrides the Python version from .tool-versions)
python-version: ""
# The Python architecture to set UV_PYTHON_ARCH to, e.g., x86_64 or aarch64
python-arch: ""
# Use uv venv to activate a venv ready to be used by later steps
activate-environment: "false"
@@ -74,7 +78,7 @@ Have a look under [Advanced Configuration](#advanced-configuration) for detailed
# Used when downloading uv from GitHub releases
github-token: ${{ github.token }}
# Enable uploading of the uv cache: true, false, or auto (enabled on GitHub-hosted runners, disabled on self-hosted runners)
# Enable the GitHub Actions cache for uv: true, false, or auto (enabled on GitHub-hosted runners except for release, tag push, pull_request_target, and workflow_run events; disabled on self-hosted runners)
enable-cache: "auto"
# Glob pattern to match files relative to the repository root to control the cache
@@ -90,8 +94,8 @@ Have a look under [Advanced Configuration](#advanced-configuration) for detailed
# Whether to restore the cache if found
restore-cache: "true"
# Whether to save the cache after the run
save-cache: "true"
# Whether to save the cache after the run: true, false, or auto (disabled for merge_group events)
save-cache: "auto"
# Suffix for the cache key
cache-suffix: ""
@@ -138,17 +142,37 @@ Have a look under [Advanced Configuration](#advanced-configuration) for detailed
- `cache-hit`: A boolean value to indicate a cache entry was found.
- `venv`: Path to the activated venv if activate-environment is true.
- `python-version`: The Python version that was set.
- `python-runtime-id`: An opaque identifier reported by uv for the activated venv's Python runtime. Empty when `activate-environment` is false.
- `python-cache-hit`: A boolean value to indicate the Python cache entry was found.
### Python version
You can use the input `python-version` to set the environment variable `UV_PYTHON` for the rest of your workflow
This will override any python version specifications in `pyproject.toml` and `.python-version`
This will override any python version specifications in `pyproject.toml`, `.python-version`, and
an explicitly selected `.tool-versions` file.
When `version-file` points to `.tool-versions`, its `python` entry is used if neither
`python-version` nor `UV_PYTHON` is set:
```text
uv 0.12.3
python 3.13
```
```yaml
- uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version-file: ".tool-versions"
```
Only a single Python version is supported. Filesystem paths are not supported for uv or Python.
Multiple Python fallback versions and the asdf `ref:`, `path:`, and `system` forms are ignored with
a warning.
```yaml
- name: Install the latest version of uv and set the python version to 3.13t
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
python-version: 3.13t
- run: uv pip install --python=3.13t pip
@@ -166,13 +190,32 @@ jobs:
steps:
- uses: actions/checkout@v5
- name: Install the latest version of uv and set the python version
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
python-version: ${{ matrix.python-version }}
- name: Test with python ${{ matrix.python-version }}
run: uv run --frozen pytest
```
### Python architecture
Use `python-arch` to set `UV_PYTHON_ARCH` for the rest of the job. This selects the Python
architecture independently of the version, including versions requested by `.python-version`.
An explicit architecture or interpreter path in a Python request takes precedence.
```yaml
- uses: astral-sh/setup-uv@main
with:
python-version: "3.14"
python-arch: x86_64
- run: uv run --frozen pytest
```
The input overrides an existing `UV_PYTHON_ARCH` value. When it is omitted, the action respects
`UV_PYTHON_ARCH` from the environment. Both forms require a uv version that supports the variable;
the action reports an error if the installed version does not support it. The selected architecture
is included in the [cache key](docs/caching.md#cache-key).
### Working directory
You can set the working directory with the `working-directory` input.
@@ -183,7 +226,7 @@ It also controls where [the venv gets created](#activate-environment), unless `v
```yaml
- name: Install uv based on the config files in the working-directory
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
working-directory: my/subproject/dir
```
@@ -225,7 +268,7 @@ For example:
- name: Checkout the repository
uses: actions/checkout@main
- name: Install the latest version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
- name: Test
@@ -237,7 +280,7 @@ To install a specific version of Python, use
```yaml
- name: Install the latest version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
- name: Install Python 3.12
@@ -256,7 +299,7 @@ output:
uses: actions/checkout@main
- name: Install the default version of uv
id: setup-uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
- name: Print the installed version
run: echo "Installed uv version is ${{ steps.setup-uv.outputs.uv-version }}"
```
+44 -3
View File
@@ -4,6 +4,9 @@ import { createSetupInputs } from "../helpers/setup-inputs";
const mockRestoreCache = jest.fn();
const mockSaveState = jest.fn();
const mockSetOutput = jest.fn();
const mockGetArch = jest.fn(() => "x86_64");
const mockGetOSNameVersion = jest.fn(() => "ubuntu-24.04");
const mockGetPlatform = jest.fn(async () => "unknown-linux-gnu");
jest.unstable_mockModule("@actions/cache", () => ({
restoreCache: mockRestoreCache,
@@ -24,9 +27,9 @@ jest.unstable_mockModule("../../src/utils/logging", () => ({
}));
jest.unstable_mockModule("../../src/utils/platforms", () => ({
getArch: jest.fn(() => "x86_64"),
getOSNameVersion: jest.fn(() => "ubuntu-24.04"),
getPlatform: jest.fn(async () => "unknown-linux-gnu"),
getArch: mockGetArch,
getOSNameVersion: mockGetOSNameVersion,
getPlatform: mockGetPlatform,
}));
const { restoreCache } = await import("../../src/cache/restore-cache");
@@ -39,6 +42,9 @@ function cacheKeyOutput(): string {
beforeEach(() => {
jest.clearAllMocks();
mockGetArch.mockReturnValue("x86_64");
mockGetOSNameVersion.mockReturnValue("ubuntu-24.04");
mockGetPlatform.mockResolvedValue("unknown-linux-gnu");
});
describe("restoreCache", () => {
@@ -71,4 +77,39 @@ describe("restoreCache", () => {
"setup-uv-2-x86_64-unknown-linux-gnu-ubuntu-24.04-3.11-dependencyhash-tests-3.11",
);
});
it("includes the resolved Python architecture in the cache key", async () => {
const inputs = createSetupInputs({ pythonArch: "aarch64" });
await restoreCache(inputs, "3.14");
expect(cacheKeyOutput()).toContain("-3.14-python-aarch64-");
});
it.each(["aarch64", "x86_64"])(
"separates %s Python caches on a Windows ARM64 runner",
async (pythonArch) => {
mockGetArch.mockReturnValue("aarch64");
mockGetOSNameVersion.mockReturnValue("windows-11");
mockGetPlatform.mockResolvedValue("pc-windows-msvc");
const inputs = createSetupInputs({
cachePython: true,
pythonArch,
restoreCache: true,
});
await restoreCache(inputs, "3.14");
const cacheKey = `setup-uv-2-aarch64-pc-windows-msvc-windows-11-3.14-python-${pythonArch}-py-dependencyhash`;
expect(cacheKeyOutput()).toBe(cacheKey);
expect(mockRestoreCache).toHaveBeenCalledWith(
[inputs.cacheLocalPath?.path],
cacheKey,
);
expect(mockRestoreCache).toHaveBeenCalledWith(
[inputs.pythonDir],
`${cacheKey}-python`,
);
},
);
});
+46 -6
View File
@@ -26,9 +26,49 @@ test("provided checksum beats known checksums", async () => {
"x86_64",
"unknown-linux-gnu",
"0.3.0",
"incorrect-manifest-checksum",
);
});
test("known checksums beat manifest checksums", async () => {
await expect(
validateChecksum(
undefined,
filePath,
"x86_64",
"unknown-linux-gnu",
"0.3.0",
validChecksum,
),
).rejects.toThrow("did not match");
});
test("manifest checksums are used when no known checksum exists", async () => {
await expect(
validateChecksum(
undefined,
filePath,
"aarch64",
"pc-windows-msvc",
"1.2.3",
"incorrect-manifest-checksum",
),
).rejects.toThrow("did not match");
});
test("empty manifest checksums are rejected", async () => {
await expect(
validateChecksum(
undefined,
filePath,
"aarch64",
"pc-windows-msvc",
"1.2.3",
"",
),
).rejects.toThrow("No checksum found");
});
type KnownVersionFixture = { version: string; known: boolean };
it.each<KnownVersionFixture>([
@@ -40,9 +80,9 @@ it.each<KnownVersionFixture>([
known: false,
version: "0.0.15",
},
])("isknownVersion should return $known for version $version", ({
version,
known,
}) => {
expect(isknownVersion(version)).toBe(known);
});
])(
"isknownVersion should return $known for version $version",
({ version, known }) => {
expect(isknownVersion(version)).toBe(known);
},
);
@@ -0,0 +1,20 @@
import { expect, it, jest } from "@jest/globals";
jest.unstable_mockModule(
"../../../src/download/checksum/known-checksums",
() => ({
KNOWN_CHECKSUMS: {
"aarch64-apple-darwin-1.9.0": "checksum",
"x86_64-unknown-linux-gnu-1.8.0": "checksum",
"x86_64-unknown-linux-gnu-1.10.0": "checksum",
},
}),
);
const { getLatestKnownVersion } = await import(
"../../../src/download/checksum/known-version"
);
it("returns the highest version with a built-in checksum", () => {
expect(getLatestKnownVersion()).toBe("1.10.0");
});
@@ -0,0 +1,27 @@
import { promises as fs } from "node:fs";
import os from "node:os";
import path from "node:path";
import { expect, test } from "@jest/globals";
import { updateChecksums } from "../../../src/download/checksum/update-known-checksums";
test("serializes checksum entries as JSON data", async () => {
const tempDirectory = await fs.mkdtemp(
path.join(os.tmpdir(), "setup-uv-checksums-test-"),
);
const outputPath = path.join(tempDirectory, "known-checksums.json");
const key = 'platform-1.0.0"\n};\nglobalThis.compromised = true;';
const checksum = 'checksum"\\\nvalue';
try {
await updateChecksums(outputPath, [
{ checksum, key },
{ checksum: "duplicate", key },
]);
const content = await fs.readFile(outputPath, "utf8");
expect(JSON.parse(content)).toEqual({ [key]: checksum });
expect(content.endsWith("\n")).toBe(true);
} finally {
await fs.rm(tempDirectory, { force: true, recursive: true });
}
});
+22 -2
View File
@@ -55,6 +55,12 @@ jest.unstable_mockModule("../../src/download/checksum/checksum", () => ({
validateChecksum: mockValidateChecksum,
}));
const mockGetLatestKnownVersion = jest.fn(() => "0.9.25");
jest.unstable_mockModule("../../src/download/checksum/known-version", () => ({
getLatestKnownVersion: mockGetLatestKnownVersion,
}));
const { downloadVersion, resolveVersion, rewriteToMirror } = await import(
"../../src/download/download-version"
);
@@ -72,6 +78,7 @@ describe("download-version", () => {
mockGetFirstMatchingVersion.mockReset();
mockGetArtifact.mockReset();
mockValidateChecksum.mockReset();
mockGetLatestKnownVersion.mockClear();
mockDownloadTool.mockResolvedValue("/tmp/downloaded");
mockExtractTar.mockResolvedValue("/tmp/extracted");
@@ -90,6 +97,16 @@ describe("download-version", () => {
expect(mockGetLatestVersion).toHaveBeenCalledWith(undefined);
});
it("resolves latest-known without reading the manifest", async () => {
const version = await resolveVersion("latest-known", undefined);
expect(version).toBe("0.9.25");
expect(mockGetLatestKnownVersion).toHaveBeenCalledTimes(1);
expect(mockGetLatestVersion).not.toHaveBeenCalled();
expect(mockGetAllVersions).not.toHaveBeenCalled();
expect(mockGetFirstMatchingVersion).not.toHaveBeenCalled();
});
it("stops at the first matching version in the default manifest", async () => {
mockGetFirstMatchingVersion.mockImplementation(
(predicate: (version: string) => boolean) =>
@@ -210,10 +227,10 @@ describe("download-version", () => {
expect(mockValidateChecksum).not.toHaveBeenCalled();
});
it("uses built-in checksums for default manifest downloads", async () => {
it("uses the default manifest checksum as a fallback", async () => {
mockGetArtifact.mockResolvedValue({
archiveFormat: "tar.gz",
checksum: "manifest-checksum-that-should-be-ignored",
checksum: "manifest-checksum",
downloadUrl: "https://example.com/uv.tar.gz",
});
@@ -231,6 +248,7 @@ describe("download-version", () => {
"x86_64",
"unknown-linux-gnu",
"0.9.26",
"manifest-checksum",
);
});
@@ -383,6 +401,7 @@ describe("download-version", () => {
"x86_64",
"unknown-linux-gnu",
"0.9.26",
"manifest-checksum",
);
});
@@ -408,6 +427,7 @@ describe("download-version", () => {
"x86_64",
"unknown-linux-gnu",
"0.9.26",
"manifest-checksum",
);
});
+41 -1
View File
@@ -1,4 +1,11 @@
import { beforeEach, describe, expect, it, jest } from "@jest/globals";
import {
afterEach,
beforeEach,
describe,
expect,
it,
jest,
} from "@jest/globals";
// biome-ignore lint/suspicious/noExplicitAny: Mock requires flexible typing in tests.
const mockFetch = jest.fn<any>();
@@ -13,6 +20,7 @@ jest.unstable_mockModule("../../src/utils/fetch", () => ({
}));
const {
MANIFEST_FETCH_ATTEMPTS,
clearManifestCache,
fetchManifest,
getAllVersions,
@@ -73,6 +81,10 @@ describe("manifest", () => {
mockFetch.mockReset();
});
afterEach(() => {
jest.useRealTimers();
});
describe("fetchManifest", () => {
it("fetches and parses manifest data", async () => {
mockFetch.mockResolvedValue(
@@ -86,6 +98,34 @@ describe("manifest", () => {
expect(versions[1]?.version).toBe("0.9.25");
});
it("retries network failures", async () => {
jest.useFakeTimers();
mockFetch
.mockRejectedValueOnce(new Error("request timed out"))
.mockResolvedValueOnce(
createMockResponse(true, 200, "OK", sampleManifestResponse),
);
const result = fetchManifest();
await jest.runAllTimersAsync();
await expect(result).resolves.toHaveLength(2);
expect(mockFetch).toHaveBeenCalledTimes(2);
});
it("stops after the configured number of network failures", async () => {
jest.useFakeTimers();
mockFetch.mockRejectedValue(new Error("request timed out"));
const result = expect(fetchManifest()).rejects.toThrow(
"request timed out",
);
await jest.runAllTimersAsync();
await result;
expect(mockFetch).toHaveBeenCalledTimes(MANIFEST_FETCH_ATTEMPTS);
});
it("throws on a failed fetch", async () => {
mockFetch.mockResolvedValue(
createMockResponse(false, 500, "Internal Server Error", ""),
+1
View File
@@ -1 +1,2 @@
uv 0.5.15
python 3.13.1t
+2
View File
@@ -16,11 +16,13 @@ export function createSetupInputs(
checksum: "",
downloadFromAstralMirror: false,
enableCache: true,
exportPythonArch: false,
githubToken: "",
ignoreEmptyWorkdir: false,
ignoreNothingToCache: false,
noProject: false,
pruneCache: false,
pythonArch: "",
pythonDir: "/tmp/uv-python-dir",
pythonVersion: "",
quiet: false,
+188
View File
@@ -12,10 +12,14 @@ import {
let mockInputs: Record<string, string> = {};
const tempDirs: string[] = [];
const ORIGINAL_GITHUB_EVENT_NAME = process.env.GITHUB_EVENT_NAME;
const ORIGINAL_GITHUB_REF = process.env.GITHUB_REF;
const ORIGINAL_HOME = process.env.HOME;
const ORIGINAL_RUNNER_ENVIRONMENT = process.env.RUNNER_ENVIRONMENT;
const ORIGINAL_RUNNER_TEMP = process.env.RUNNER_TEMP;
const ORIGINAL_UV_CACHE_DIR = process.env.UV_CACHE_DIR;
const ORIGINAL_UV_PYTHON = process.env.UV_PYTHON;
const ORIGINAL_UV_PYTHON_ARCH = process.env.UV_PYTHON_ARCH;
const ORIGINAL_UV_PYTHON_INSTALL_DIR = process.env.UV_PYTHON_INSTALL_DIR;
const mockDebug = jest.fn();
@@ -52,10 +56,14 @@ function createTempProject(files: Record<string, string> = {}): string {
function resetEnvironment(): void {
jest.clearAllMocks();
mockInputs = {};
delete process.env.GITHUB_EVENT_NAME;
delete process.env.GITHUB_REF;
process.env.HOME = "/home/testuser";
delete process.env.RUNNER_ENVIRONMENT;
delete process.env.RUNNER_TEMP;
delete process.env.UV_CACHE_DIR;
delete process.env.UV_PYTHON;
delete process.env.UV_PYTHON_ARCH;
delete process.env.UV_PYTHON_INSTALL_DIR;
}
@@ -64,10 +72,18 @@ function restoreEnvironment(): void {
fs.rmSync(dir, { force: true, recursive: true });
}
process.env.GITHUB_EVENT_NAME = ORIGINAL_GITHUB_EVENT_NAME;
process.env.GITHUB_REF = ORIGINAL_GITHUB_REF;
process.env.HOME = ORIGINAL_HOME;
process.env.RUNNER_ENVIRONMENT = ORIGINAL_RUNNER_ENVIRONMENT;
process.env.RUNNER_TEMP = ORIGINAL_RUNNER_TEMP;
process.env.UV_CACHE_DIR = ORIGINAL_UV_CACHE_DIR;
process.env.UV_PYTHON = ORIGINAL_UV_PYTHON;
if (ORIGINAL_UV_PYTHON_ARCH === undefined) {
delete process.env.UV_PYTHON_ARCH;
} else {
process.env.UV_PYTHON_ARCH = ORIGINAL_UV_PYTHON_ARCH;
}
process.env.UV_PYTHON_INSTALL_DIR = ORIGINAL_UV_PYTHON_INSTALL_DIR;
}
@@ -89,11 +105,183 @@ describe("loadInputs", () => {
source: CacheLocalSource.Default,
});
expect(inputs.pythonDir).toBe("/runner-temp/uv-python-dir");
expect(inputs.pythonArch).toBe("");
expect(inputs.exportPythonArch).toBe(false);
expect(inputs.venvPath).toBe("/workspace/.venv");
expect(inputs.manifestFile).toBeUndefined();
expect(inputs.resolutionStrategy).toBe("highest");
});
it("uses the Python version from an explicitly selected .tool-versions file", () => {
mockInputs["working-directory"] = createTempProject({
".tool-versions": "uv 0.12.3\npython 3.13.1t\n",
});
mockInputs["version-file"] = ".tool-versions";
const inputs = loadInputs();
expect(inputs.pythonVersion).toBe("3.13.1t");
});
it("prefers the python-version input over .tool-versions", () => {
mockInputs["working-directory"] = createTempProject({
".tool-versions": "uv 0.12.3\npython 3.13\n",
});
mockInputs["version-file"] = ".tool-versions";
mockInputs["python-version"] = "3.12";
const inputs = loadInputs();
expect(inputs.pythonVersion).toBe("3.12");
});
it("preserves UV_PYTHON instead of overriding it from .tool-versions", () => {
mockInputs["working-directory"] = createTempProject({
".tool-versions": "uv 0.12.3\npython 3.13\n",
});
mockInputs["version-file"] = ".tool-versions";
process.env.UV_PYTHON = "3.11";
const inputs = loadInputs();
expect(inputs.pythonVersion).toBe("");
expect(process.env.UV_PYTHON).toBe("3.11");
});
it("does not discover .tool-versions from the working directory", () => {
mockInputs["working-directory"] = createTempProject({
".tool-versions": "uv 0.12.3\npython 3.13\n",
});
const inputs = loadInputs();
expect(inputs.pythonVersion).toBe("");
});
it("prefers the python-arch input over UV_PYTHON_ARCH", () => {
mockInputs["working-directory"] = "/workspace";
mockInputs["python-arch"] = "x86_64";
process.env.UV_PYTHON_ARCH = "aarch64";
const inputs = loadInputs();
expect(inputs.pythonArch).toBe("x86_64");
expect(inputs.exportPythonArch).toBe(true);
});
it.each(["aarch64", "x86_64_v3", ""])(
"uses UV_PYTHON_ARCH when python-arch is omitted: %s",
(pythonArch) => {
mockInputs["working-directory"] = "/workspace";
process.env.UV_PYTHON_ARCH = pythonArch;
const inputs = loadInputs();
expect(inputs.pythonArch).toBe(pythonArch);
expect(inputs.exportPythonArch).toBe(false);
},
);
it.each(["pull_request_target", "workflow_run", "release"])(
"disables automatic caching for the %s event",
(eventName) => {
mockInputs["working-directory"] = "/workspace";
mockInputs["enable-cache"] = "auto";
process.env.RUNNER_ENVIRONMENT = "github-hosted";
process.env.RUNNER_TEMP = "/runner-temp";
process.env.GITHUB_EVENT_NAME = eventName;
const inputs = loadInputs();
expect(inputs.enableCache).toBe(false);
expect(mockInfo).toHaveBeenCalledWith(
`Caching is disabled for the ${eventName} event`,
);
},
);
it("disables automatic caching for tag pushes", () => {
mockInputs["working-directory"] = "/workspace";
mockInputs["enable-cache"] = "auto";
process.env.RUNNER_ENVIRONMENT = "github-hosted";
process.env.RUNNER_TEMP = "/runner-temp";
process.env.GITHUB_EVENT_NAME = "push";
process.env.GITHUB_REF = "refs/tags/v1.0.0";
const inputs = loadInputs();
expect(inputs.enableCache).toBe(false);
expect(mockInfo).toHaveBeenCalledWith("Caching is disabled for tag pushes");
});
it("enables automatic caching for branch pushes", () => {
mockInputs["working-directory"] = "/workspace";
mockInputs["enable-cache"] = "auto";
process.env.RUNNER_ENVIRONMENT = "github-hosted";
process.env.RUNNER_TEMP = "/runner-temp";
process.env.GITHUB_EVENT_NAME = "push";
process.env.GITHUB_REF = "refs/heads/main";
const inputs = loadInputs();
expect(inputs.enableCache).toBe(true);
});
it("honors explicitly enabled caching for sensitive events", () => {
mockInputs["working-directory"] = "/workspace";
mockInputs["enable-cache"] = "true";
process.env.RUNNER_ENVIRONMENT = "github-hosted";
process.env.RUNNER_TEMP = "/runner-temp";
process.env.GITHUB_EVENT_NAME = "release";
const inputs = loadInputs();
expect(inputs.enableCache).toBe(true);
});
it("restores but does not save cache automatically for merge groups", () => {
mockInputs["working-directory"] = "/workspace";
mockInputs["enable-cache"] = "auto";
mockInputs["restore-cache"] = "true";
mockInputs["save-cache"] = "auto";
process.env.RUNNER_ENVIRONMENT = "github-hosted";
process.env.RUNNER_TEMP = "/runner-temp";
process.env.GITHUB_EVENT_NAME = "merge_group";
const inputs = loadInputs();
expect(inputs.enableCache).toBe(true);
expect(inputs.restoreCache).toBe(true);
expect(inputs.saveCache).toBe(false);
expect(mockInfo).toHaveBeenCalledWith(
"Cache saving is disabled for the merge_group event",
);
});
it.each([
["true", true],
["false", false],
])("honors save-cache %s for merge groups", (saveCacheInput, expected) => {
mockInputs["working-directory"] = "/workspace";
mockInputs["save-cache"] = saveCacheInput;
process.env.GITHUB_EVENT_NAME = "merge_group";
const inputs = loadInputs();
expect(inputs.saveCache).toBe(expected);
expect(mockInfo).not.toHaveBeenCalledWith(
"Cache saving is disabled for the merge_group event",
);
});
it("automatically saves cache for other events", () => {
mockInputs["working-directory"] = "/workspace";
mockInputs["save-cache"] = "auto";
process.env.GITHUB_EVENT_NAME = "push";
const inputs = loadInputs();
expect(inputs.saveCache).toBe(true);
});
it("uses cache-dir from pyproject.toml when present", () => {
mockInputs["working-directory"] = createTempProject({
"pyproject.toml": `[project]
+152
View File
@@ -0,0 +1,152 @@
import { promisify } from "node:util";
import {
afterEach,
beforeEach,
describe,
expect,
it,
jest,
} from "@jest/globals";
const ORIGINAL_UV_PYTHON_ARCH = process.env.UV_PYTHON_ARCH;
const mockExecFile =
jest.fn<
(...args: unknown[]) => Promise<{
stdout: string;
stderr: string;
}>
>();
const mockExportVariable = jest.fn();
jest.unstable_mockModule("node:child_process", () => ({
execFile: Object.assign(mockExecFile, { [promisify.custom]: mockExecFile }),
}));
jest.unstable_mockModule("@actions/core", () => ({
exportVariable: mockExportVariable,
}));
jest.unstable_mockModule("../../src/utils/logging", () => ({
info: jest.fn(),
}));
const { setupPythonArch } = await import("../../src/utils/python-arch");
const supportedProbe = Object.assign(new Error("uv exited with code 2"), {
code: 2,
stderr:
"error: Failed to parse environment variable `UV_PYTHON_ARCH` with invalid value `setup-uv-probe`: Unknown architecture: setup-uv-probe\n",
});
const success = { stderr: "", stdout: "/cache\n" };
beforeEach(() => {
delete process.env.UV_PYTHON_ARCH;
jest.clearAllMocks();
mockExecFile
.mockReset()
.mockRejectedValueOnce(supportedProbe)
.mockResolvedValueOnce(success);
});
afterEach(() => {
if (ORIGINAL_UV_PYTHON_ARCH === undefined) {
delete process.env.UV_PYTHON_ARCH;
} else {
process.env.UV_PYTHON_ARCH = ORIGINAL_UV_PYTHON_ARCH;
}
});
describe("setupPythonArch", () => {
it("leaves Python selection alone without an architecture", async () => {
await setupPythonArch("/tools/uv", "", false);
expect(mockExecFile).not.toHaveBeenCalled();
expect(mockExportVariable).not.toHaveBeenCalled();
});
it("validates a resolved environment architecture without exporting it", async () => {
process.env.UV_PYTHON_ARCH = "aarch64";
await setupPythonArch("/tools/uv", "aarch64", false);
expect(mockExecFile).toHaveBeenNthCalledWith(
2,
"/tools/uv",
["--no-config", "cache", "dir"],
expect.objectContaining({
env: expect.objectContaining({ UV_PYTHON_ARCH: "aarch64" }),
}),
);
expect(mockExportVariable).not.toHaveBeenCalled();
expect(process.env.UV_PYTHON_ARCH).toBe("aarch64");
});
it.each(["/runner temp/uv", "C:\\runner temp\\uv.exe"])(
"validates and exports the architecture using the installed uv: %s",
async (uvPath) => {
await setupPythonArch(uvPath, "x86_64", true);
expect(mockExecFile).toHaveBeenNthCalledWith(
1,
uvPath,
["--no-config", "cache", "dir"],
expect.objectContaining({
encoding: "utf8",
env: expect.objectContaining({ UV_PYTHON_ARCH: "setup-uv-probe" }),
}),
);
expect(mockExecFile).toHaveBeenNthCalledWith(
2,
uvPath,
["--no-config", "cache", "dir"],
expect.objectContaining({
env: expect.objectContaining({ UV_PYTHON_ARCH: "x86_64" }),
}),
);
expect(mockExportVariable).toHaveBeenCalledWith(
"UV_PYTHON_ARCH",
"x86_64",
);
},
);
it("rejects uv versions that ignore UV_PYTHON_ARCH", async () => {
mockExecFile.mockReset().mockResolvedValue(success);
await expect(setupPythonArch("/tools/uv", "x86_64", true)).rejects.toThrow(
"The installed version of uv does not support UV_PYTHON_ARCH",
);
expect(mockExecFile).toHaveBeenCalledTimes(1);
expect(mockExportVariable).not.toHaveBeenCalled();
});
it("reports unexpected probe failures", async () => {
mockExecFile.mockReset().mockRejectedValue(
Object.assign(new Error("uv exited with code 2"), {
code: 2,
stderr: "error: unrelated configuration error\n",
}),
);
await expect(setupPythonArch("/tools/uv", "x86_64", true)).rejects.toThrow(
"Failed to check uv's support for UV_PYTHON_ARCH: error: unrelated configuration error",
);
expect(mockExportVariable).not.toHaveBeenCalled();
});
it("reports invalid architectures before exporting them", async () => {
mockExecFile
.mockReset()
.mockRejectedValueOnce(supportedProbe)
.mockRejectedValueOnce(
Object.assign(new Error("uv exited with code 2"), {
code: 2,
stderr: "error: Unknown architecture: invalid\n",
}),
);
await expect(setupPythonArch("/tools/uv", "invalid", true)).rejects.toThrow(
"Failed to set Python architecture to invalid: error: Unknown architecture: invalid",
);
expect(mockExportVariable).not.toHaveBeenCalled();
});
});
+86
View File
@@ -0,0 +1,86 @@
import { promisify } from "node:util";
import { beforeEach, expect, it, jest } from "@jest/globals";
import { createSetupInputs } from "../helpers/setup-inputs";
const mockExecFile =
jest.fn<
(...args: unknown[]) => Promise<{ stdout: string; stderr: string }>
>();
const inputs = createSetupInputs({
activateEnvironment: true,
pythonVersion: "3.15t",
});
jest.unstable_mockModule("node:child_process", () => ({
// execFile's custom promisifier returns both stdout and stderr.
execFile: Object.assign(mockExecFile, { [promisify.custom]: mockExecFile }),
}));
const { getPythonRuntimeId } = await import("../../src/utils/python-runtime");
beforeEach(() => {
mockExecFile.mockReset();
mockExecFile.mockResolvedValue({
stderr: "",
stdout: '[{"key":"cpython-3.13.1-linux-x86_64-gnu"}]\r\n',
});
});
it("does not query uv without environment activation", async () => {
expect(
await getPythonRuntimeId({ ...inputs, activateEnvironment: false }),
).toBe("");
expect(mockExecFile).not.toHaveBeenCalled();
});
it.each([
"cpython-3.13.1-linux-x86_64-gnu",
"cpython-3.15.0rc1+freethreaded-macos-aarch64-none",
"cpython-3.15.0rc2+freethreaded-windows-x86_64-none",
"pypy-3.11.15-linux-x86_64-gnu",
])("returns uv's opaque runtime key unchanged: %s", async (key) => {
mockExecFile.mockResolvedValue({
stderr: "",
stdout: `${JSON.stringify([{ key }])}\r\n`,
});
expect(await getPythonRuntimeId(inputs)).toBe(key);
});
it.each(['/runner temp/a "quoted" venv', "C:\\runner temp\\custom venv"])(
"queries the exact venv directory: %s",
async (venvPath) => {
await getPythonRuntimeId({ ...inputs, venvPath });
expect(mockExecFile).toHaveBeenCalledWith(
"uv",
[
"python",
"list",
venvPath,
"--only-installed",
"--output-format",
"json",
],
{ encoding: "utf8" },
);
},
);
it.each([
new Error("uv failed"),
"not JSON",
"null",
"{}",
"[]",
'[{"key":""}]',
'[{"key":123}]',
'[{"key":"first"},{"key":"second"}]',
])("rejects uv failure or invalid results: %s", async (result) => {
if (result instanceof Error) {
mockExecFile.mockRejectedValue(result);
} else {
mockExecFile.mockResolvedValue({ stderr: "", stdout: result });
}
await expect(getPythonRuntimeId(inputs)).rejects.toThrow(
"Failed to identify the activated environment's Python runtime:",
);
});
+7 -4
View File
@@ -15,15 +15,18 @@ test("ignores dependencies starting with uv", async () => {
test.each([
["without space before marker", "uv==0.11.20; sys_platform != 'emscripten'"],
["with space before marker", "uv==0.11.20 ; sys_platform != 'emscripten'"],
])("strips PEP 508 markers from pyproject dependency groups %s", (_, dependency) => {
const parsedVersion = getUvVersionFromPyprojectContent(`[dependency-groups]
])(
"strips PEP 508 markers from pyproject dependency groups %s",
(_, dependency) => {
const parsedVersion = getUvVersionFromPyprojectContent(`[dependency-groups]
test = [
"${dependency}",
]
`);
expect(parsedVersion).toBe("==0.11.20");
});
expect(parsedVersion).toBe("==0.11.20");
},
);
test("strips PEP 508 markers from requirements dependencies", () => {
const parsedVersion = getUvVersionFromRequirementsText(
+90 -2
View File
@@ -21,6 +21,11 @@ async function getVersionFromToolVersions(filePath: string) {
return getUvVersionFromToolVersions(filePath);
}
async function getPythonVersionFromToolVersions(filePath: string) {
const module = await import("../../src/version/tool-versions-file");
return module.getPythonVersionFromToolVersions(filePath);
}
describe("getUvVersionFromToolVersions", () => {
beforeEach(() => {
jest.resetModules();
@@ -61,8 +66,8 @@ describe("getUvVersionFromToolVersions", () => {
expect(result).toBe("0.3.0");
});
it("should skip commented lines", async () => {
const fileContent = "# uv 0.1.0\npython 3.11.0\nuv 0.2.0";
it("should skip comments", async () => {
const fileContent = "# uv 0.1.0\npython 3.11.0\nuv 0.2.0 # inline comment";
mockReadFileSync.mockReturnValue(fileContent);
const result = await getVersionFromToolVersions(".tool-versions");
@@ -108,6 +113,20 @@ describe("getUvVersionFromToolVersions", () => {
);
});
it.each(["/my/python/exploit", "my/exploited/uv", "C:\\exploited\\uv"])(
"should warn and return undefined for path %s",
async (version) => {
mockReadFileSync.mockReturnValue(`uv ${version}`);
const result = await getVersionFromToolVersions(".tool-versions");
expect(result).toBeUndefined();
expect(mockWarning).toHaveBeenCalledWith(
`The uv version ${version} in .tool-versions is not supported. Paths are not allowed.`,
);
},
);
it("should handle file path with .tool-versions extension", async () => {
const fileContent = "uv 0.1.0";
mockReadFileSync.mockReturnValue(fileContent);
@@ -121,3 +140,72 @@ describe("getUvVersionFromToolVersions", () => {
);
});
});
describe("getPythonVersionFromToolVersions", () => {
beforeEach(() => {
jest.resetModules();
jest.clearAllMocks();
});
it("should return version for a valid Python entry", async () => {
mockReadFileSync.mockReturnValue(
"nodejs 24.0.0\r\npython v3.13.1t # use free-threaded Python\r\nuv 0.12.3",
);
const result = await getPythonVersionFromToolVersions(".tool-versions");
expect(result).toBe("3.13.1t");
});
it("should return the first matching Python version", async () => {
mockReadFileSync.mockReturnValue("python 3.12\npython 3.13");
const result = await getPythonVersionFromToolVersions(".tool-versions");
expect(result).toBe("3.12");
});
it("should return undefined when no Python entry is found", async () => {
mockReadFileSync.mockReturnValue("uv 0.12.3\nnodejs 24.0.0");
const result = await getPythonVersionFromToolVersions(".tool-versions");
expect(result).toBeUndefined();
});
it("should warn and return undefined for multiple Python versions", async () => {
mockReadFileSync.mockReturnValue("python 3.13 3.12 system");
const result = await getPythonVersionFromToolVersions(".tool-versions");
expect(result).toBeUndefined();
expect(mockWarning).toHaveBeenCalledWith(
"Multiple Python versions in .tool-versions are not supported. The Python entry will be ignored.",
);
});
it.each([
"ref:main",
"path:~/src/python",
"system",
"/my/python/exploit",
"my/exploited/python",
"C:\\exploited\\python",
])("should warn and return undefined for %s", async (version) => {
mockReadFileSync.mockReturnValue(`python ${version}`);
const result = await getPythonVersionFromToolVersions(".tool-versions");
expect(result).toBeUndefined();
expect(mockWarning).toHaveBeenCalledWith(
`The Python version ${version} in .tool-versions is not supported. The Python entry will be ignored.`,
);
});
it("should return undefined for non-.tool-versions files", async () => {
const result = await getPythonVersionFromToolVersions(".python-version");
expect(result).toBeUndefined();
expect(mockReadFileSync).not.toHaveBeenCalled();
});
});
+42
View File
@@ -0,0 +1,42 @@
name: "test workflow_run caching"
on: # zizmor: ignore[dangerous-triggers] this workflow is a test fixture executed by act only
workflow_run:
workflows:
- test
types:
- completed
permissions:
contents: read
jobs:
test-cache-disabled:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Setup uv with automatic caching
id: setup-uv
uses: ./
- name: Verify automatic caching is disabled
env:
CACHE_KEY: ${{ steps.setup-uv.outputs.cache-key }}
run: |
if [ "$GITHUB_EVENT_NAME" != "workflow_run" ]; then
echo "Expected workflow_run event, got: $GITHUB_EVENT_NAME"
exit 1
fi
if [ "$RUNNER_ENVIRONMENT" != "github-hosted" ]; then
echo "Expected a simulated GitHub-hosted runner, got: $RUNNER_ENVIRONMENT"
exit 1
fi
if [ -n "$CACHE_KEY" ]; then
echo "Cache key should not be set for a workflow_run event: $CACHE_KEY"
exit 1
fi
if [ -n "$UV_CACHE_DIR" ]; then
echo "UV_CACHE_DIR should not be set for a workflow_run event: $UV_CACHE_DIR"
exit 1
fi
+9 -1
View File
@@ -7,6 +7,8 @@ inputs:
type: string
python-version:
type: string
python-arch:
type: string
activate-environment:
type: boolean
venv-path:
@@ -33,7 +35,11 @@ inputs:
restore-cache:
type: boolean
save-cache:
type: boolean
type: enum
allowed-values:
- "true"
- "false"
- auto
cache-suffix:
type: string
cache-local-path:
@@ -79,5 +85,7 @@ outputs:
type: string
python-version:
type: string
python-runtime-id:
type: string
python-cache-hit:
type: boolean
+11 -6
View File
@@ -4,13 +4,16 @@ description:
author: "astral-sh"
inputs:
version:
description: "The version of uv to install e.g., `0.5.0` Defaults to the version in pyproject.toml or 'latest'."
description: "The version of uv to install, e.g., `0.5.0`, `latest`, or `latest-known`. Defaults to the version in pyproject.toml or `latest`."
default: ""
version-file:
description: "Path to a file containing the version of uv to install, e.g., uv.toml, pyproject.toml, .tool-versions, requirements.txt or uv.lock. Defaults to searching for uv.toml and if not found pyproject.toml."
description: "Path to a file containing the version of uv to install, e.g., uv.toml, pyproject.toml, .tool-versions, requirements.txt or uv.lock. A selected .tool-versions file can also provide the Python version. Defaults to searching for uv.toml and if not found pyproject.toml."
default: ""
python-version:
description: "The version of Python to set UV_PYTHON to"
description: "The version of Python to set UV_PYTHON to. Overrides the Python version from .tool-versions."
required: false
python-arch:
description: "The Python architecture to set UV_PYTHON_ARCH to, e.g., x86_64 or aarch64. Overrides UV_PYTHON_ARCH."
required: false
activate-environment:
description: "Use uv venv to activate a venv ready to be used by later steps. "
@@ -33,7 +36,7 @@ inputs:
required: false
default: ${{ github.token }}
enable-cache:
description: "Enable uploading of the uv cache"
description: "Enable the GitHub Actions cache for uv. 'auto' enables caching on GitHub-hosted runners except for release, tag push, pull_request_target, and workflow_run events."
default: "auto"
cache-dependency-glob:
description:
@@ -51,8 +54,8 @@ inputs:
description: "Whether to restore the cache if found."
default: "true"
save-cache:
description: "Whether to save the cache after the run."
default: "true"
description: "Whether to save the cache after the run. 'auto' disables saving for merge_group events."
default: "auto"
cache-suffix:
description: "Suffix for the cache key"
required: false
@@ -107,6 +110,8 @@ outputs:
description: "Path to the activated venv if activate-environment is true"
python-version:
description: "The Python version that was set."
python-runtime-id:
description: "An opaque identifier reported by uv for the activated venv's Python runtime. Empty when activate-environment is false."
python-cache-hit:
description: "A boolean value to indicate the Python cache entry was found"
runs:
+1 -1
View File
@@ -1,5 +1,5 @@
{
"$schema": "https://biomejs.dev/schemas/2.5.1/schema.json",
"$schema": "https://biomejs.dev/schemas/2.5.9/schema.json",
"assist": {
"actions": {
"source": {
Generated Vendored
+2716 -765
View File
@@ -1073,14 +1073,14 @@ var require_util = __commonJS({
}
const port = url2.port != null ? url2.port : url2.protocol === "https:" ? 443 : 80;
let origin = url2.origin != null ? url2.origin : `${url2.protocol || ""}//${url2.hostname || ""}:${port}`;
let path12 = url2.path != null ? url2.path : `${url2.pathname || ""}${url2.search || ""}`;
let path13 = url2.path != null ? url2.path : `${url2.pathname || ""}${url2.search || ""}`;
if (origin[origin.length - 1] === "/") {
origin = origin.slice(0, origin.length - 1);
}
if (path12 && path12[0] !== "/") {
path12 = `/${path12}`;
if (path13 && path13[0] !== "/") {
path13 = `/${path13}`;
}
return new URL(`${origin}${path12}`);
return new URL(`${origin}${path13}`);
}
if (!isHttpOrHttpsPrefixed(url2.origin || url2.protocol)) {
throw new InvalidArgumentError("Invalid URL protocol: the URL must start with `http:` or `https:`.");
@@ -1361,9 +1361,9 @@ var require_util = __commonJS({
function isValidHeaderValue(characters) {
return !headerCharRegex.test(characters);
}
function parseRangeHeader(range2) {
if (range2 == null || range2 === "") return { start: 0, end: null, size: null };
const m = range2 ? range2.match(/^bytes (\d+)-(\d+)\/(\d+)?$/) : null;
function parseRangeHeader(range3) {
if (range3 == null || range3 === "") return { start: 0, end: null, size: null };
const m = range3 ? range3.match(/^bytes (\d+)-(\d+)\/(\d+)?$/) : null;
return m ? {
start: parseInt(m[1]),
end: m[2] ? parseInt(m[2]) : null,
@@ -1531,39 +1531,39 @@ var require_diagnostics = __commonJS({
});
diagnosticsChannel.channel("undici:client:sendHeaders").subscribe((evt) => {
const {
request: { method, path: path12, origin }
request: { method, path: path13, origin }
} = evt;
debuglog("sending request to %s %s/%s", method, origin, path12);
debuglog("sending request to %s %s/%s", method, origin, path13);
});
diagnosticsChannel.channel("undici:request:headers").subscribe((evt) => {
const {
request: { method, path: path12, origin },
request: { method, path: path13, origin },
response: { statusCode }
} = evt;
debuglog(
"received response to %s %s/%s - HTTP %d",
method,
origin,
path12,
path13,
statusCode
);
});
diagnosticsChannel.channel("undici:request:trailers").subscribe((evt) => {
const {
request: { method, path: path12, origin }
request: { method, path: path13, origin }
} = evt;
debuglog("trailers received from %s %s/%s", method, origin, path12);
debuglog("trailers received from %s %s/%s", method, origin, path13);
});
diagnosticsChannel.channel("undici:request:error").subscribe((evt) => {
const {
request: { method, path: path12, origin },
request: { method, path: path13, origin },
error: error2
} = evt;
debuglog(
"request to %s %s/%s errored - %s",
method,
origin,
path12,
path13,
error2.message
);
});
@@ -1612,9 +1612,9 @@ var require_diagnostics = __commonJS({
});
diagnosticsChannel.channel("undici:client:sendHeaders").subscribe((evt) => {
const {
request: { method, path: path12, origin }
request: { method, path: path13, origin }
} = evt;
debuglog("sending request to %s %s/%s", method, origin, path12);
debuglog("sending request to %s %s/%s", method, origin, path13);
});
}
diagnosticsChannel.channel("undici:websocket:open").subscribe((evt) => {
@@ -1677,7 +1677,7 @@ var require_request = __commonJS({
var kHandler = /* @__PURE__ */ Symbol("handler");
var Request = class {
constructor(origin, {
path: path12,
path: path13,
method,
body: body2,
headers,
@@ -1692,11 +1692,11 @@ var require_request = __commonJS({
expectContinue,
servername
}, handler) {
if (typeof path12 !== "string") {
if (typeof path13 !== "string") {
throw new InvalidArgumentError("path must be a string");
} else if (path12[0] !== "/" && !(path12.startsWith("http://") || path12.startsWith("https://")) && method !== "CONNECT") {
} else if (path13[0] !== "/" && !(path13.startsWith("http://") || path13.startsWith("https://")) && method !== "CONNECT") {
throw new InvalidArgumentError("path must be an absolute URL or start with a slash");
} else if (invalidPathRegex.test(path12)) {
} else if (invalidPathRegex.test(path13)) {
throw new InvalidArgumentError("invalid request path");
}
if (typeof method !== "string") {
@@ -1762,7 +1762,7 @@ var require_request = __commonJS({
this.completed = false;
this.aborted = false;
this.upgrade = upgrade || null;
this.path = query ? buildURL(path12, query) : path12;
this.path = query ? buildURL(path13, query) : path13;
this.origin = origin;
this.idempotent = idempotent == null ? method === "HEAD" || method === "GET" : idempotent;
this.blocking = blocking == null ? false : blocking;
@@ -3577,7 +3577,7 @@ var require_data_url = __commonJS({
var require_webidl = __commonJS({
"node_modules/@actions/http-client/node_modules/undici/lib/web/fetch/webidl.js"(exports2, module2) {
"use strict";
var { types, inspect: inspect2 } = require("node:util");
var { types: types2, inspect: inspect2 } = require("node:util");
var { markAsUncloneable } = require("node:worker_threads");
var { toUSVString } = require_util();
var webidl = {};
@@ -3767,7 +3767,7 @@ var require_webidl = __commonJS({
});
}
const result = {};
if (!types.isProxy(O)) {
if (!types2.isProxy(O)) {
const keys2 = [...Object.getOwnPropertyNames(O), ...Object.getOwnPropertySymbols(O)];
for (const key of keys2) {
const typedKey = keyConverter(key, prefix2, argument);
@@ -3896,14 +3896,14 @@ var require_webidl = __commonJS({
return x;
};
webidl.converters.ArrayBuffer = function(V, prefix2, argument, opts) {
if (webidl.util.Type(V) !== "Object" || !types.isAnyArrayBuffer(V)) {
if (webidl.util.Type(V) !== "Object" || !types2.isAnyArrayBuffer(V)) {
throw webidl.errors.conversionFailed({
prefix: prefix2,
argument: `${argument} ("${webidl.util.Stringify(V)}")`,
types: ["ArrayBuffer"]
});
}
if (opts?.allowShared === false && types.isSharedArrayBuffer(V)) {
if (opts?.allowShared === false && types2.isSharedArrayBuffer(V)) {
throw webidl.errors.exception({
header: "ArrayBuffer",
message: "SharedArrayBuffer is not allowed."
@@ -3918,14 +3918,14 @@ var require_webidl = __commonJS({
return V;
};
webidl.converters.TypedArray = function(V, T, prefix2, name, opts) {
if (webidl.util.Type(V) !== "Object" || !types.isTypedArray(V) || V.constructor.name !== T.name) {
if (webidl.util.Type(V) !== "Object" || !types2.isTypedArray(V) || V.constructor.name !== T.name) {
throw webidl.errors.conversionFailed({
prefix: prefix2,
argument: `${name} ("${webidl.util.Stringify(V)}")`,
types: [T.name]
});
}
if (opts?.allowShared === false && types.isSharedArrayBuffer(V.buffer)) {
if (opts?.allowShared === false && types2.isSharedArrayBuffer(V.buffer)) {
throw webidl.errors.exception({
header: "ArrayBuffer",
message: "SharedArrayBuffer is not allowed."
@@ -3940,13 +3940,13 @@ var require_webidl = __commonJS({
return V;
};
webidl.converters.DataView = function(V, prefix2, name, opts) {
if (webidl.util.Type(V) !== "Object" || !types.isDataView(V)) {
if (webidl.util.Type(V) !== "Object" || !types2.isDataView(V)) {
throw webidl.errors.exception({
header: prefix2,
message: `${name} is not a DataView.`
});
}
if (opts?.allowShared === false && types.isSharedArrayBuffer(V.buffer)) {
if (opts?.allowShared === false && types2.isSharedArrayBuffer(V.buffer)) {
throw webidl.errors.exception({
header: "ArrayBuffer",
message: "SharedArrayBuffer is not allowed."
@@ -3961,13 +3961,13 @@ var require_webidl = __commonJS({
return V;
};
webidl.converters.BufferSource = function(V, prefix2, name, opts) {
if (types.isAnyArrayBuffer(V)) {
if (types2.isAnyArrayBuffer(V)) {
return webidl.converters.ArrayBuffer(V, prefix2, name, { ...opts, allowShared: false });
}
if (types.isTypedArray(V)) {
if (types2.isTypedArray(V)) {
return webidl.converters.TypedArray(V, V.constructor, prefix2, name, { ...opts, allowShared: false });
}
if (types.isDataView(V)) {
if (types2.isDataView(V)) {
return webidl.converters.DataView(V, prefix2, name, { ...opts, allowShared: false });
}
throw webidl.errors.conversionFailed({
@@ -5420,7 +5420,7 @@ var require_body = __commonJS({
const boundary = `----formdata-undici-0${`${random(1e11)}`.padStart(11, "0")}`;
const prefix2 = `--${boundary}\r
Content-Disposition: form-data`;
const escape2 = (str) => str.replace(/\n/g, "%0A").replace(/\r/g, "%0D").replace(/"/g, "%22");
const escape3 = (str) => str.replace(/\n/g, "%0A").replace(/\r/g, "%0D").replace(/"/g, "%22");
const normalizeLinefeeds = (value) => value.replace(/\r?\n|\r/g, "\r\n");
const blobParts = [];
const rn = new Uint8Array([13, 10]);
@@ -5428,14 +5428,14 @@ Content-Disposition: form-data`;
let hasUnknownSizeValue = false;
for (const [name, value] of object) {
if (typeof value === "string") {
const chunk2 = textEncoder.encode(prefix2 + `; name="${escape2(normalizeLinefeeds(name))}"\r
const chunk2 = textEncoder.encode(prefix2 + `; name="${escape3(normalizeLinefeeds(name))}"\r
\r
${normalizeLinefeeds(value)}\r
`);
blobParts.push(chunk2);
length += chunk2.byteLength;
} else {
const chunk2 = textEncoder.encode(`${prefix2}; name="${escape2(normalizeLinefeeds(name))}"` + (value.name ? `; filename="${escape2(value.name)}"` : "") + `\r
const chunk2 = textEncoder.encode(`${prefix2}; name="${escape3(normalizeLinefeeds(name))}"` + (value.name ? `; filename="${escape3(value.name)}"` : "") + `\r
Content-Type: ${value.type || "application/octet-stream"}\r
\r
`);
@@ -6281,7 +6281,7 @@ var require_client_h1 = __commonJS({
return method !== "GET" && method !== "HEAD" && method !== "OPTIONS" && method !== "TRACE" && method !== "CONNECT";
}
function writeH1(client, request) {
const { method, path: path12, host, upgrade, blocking, reset } = request;
const { method, path: path13, host, upgrade, blocking, reset } = request;
let { body: body2, headers, contentLength: contentLength2 } = request;
const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH" || method === "QUERY" || method === "PROPFIND" || method === "PROPPATCH";
if (util4.isFormDataLike(body2)) {
@@ -6347,7 +6347,7 @@ var require_client_h1 = __commonJS({
if (blocking) {
socket[kBlocking] = true;
}
let header = `${method} ${path12} HTTP/1.1\r
let header = `${method} ${path13} HTTP/1.1\r
`;
if (typeof host === "string") {
header += `host: ${host}\r
@@ -6873,7 +6873,7 @@ var require_client_h2 = __commonJS({
}
function writeH2(client, request) {
const session = client[kHTTP2Session];
const { method, path: path12, host, upgrade, expectContinue, signal, headers: reqHeaders } = request;
const { method, path: path13, host, upgrade, expectContinue, signal, headers: reqHeaders } = request;
let { body: body2 } = request;
if (upgrade) {
util4.errorRequest(client, request, new Error("Upgrade not supported for H2"));
@@ -6940,7 +6940,7 @@ var require_client_h2 = __commonJS({
});
return true;
}
headers[HTTP2_HEADER_PATH] = path12;
headers[HTTP2_HEADER_PATH] = path13;
headers[HTTP2_HEADER_SCHEME] = "https";
const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH";
if (body2 && typeof body2.read === "function") {
@@ -7293,9 +7293,9 @@ var require_redirect_handler = __commonJS({
return this.handler.onHeaders(statusCode, headers, resume, statusText);
}
const { origin, pathname, search } = util4.parseURL(new URL(this.location, this.opts.origin && new URL(this.opts.path, this.opts.origin)));
const path12 = search ? `${pathname}${search}` : pathname;
const path13 = search ? `${pathname}${search}` : pathname;
this.opts.headers = cleanRequestHeaders(this.opts.headers, statusCode === 303, this.opts.origin !== origin);
this.opts.path = path12;
this.opts.path = path13;
this.opts.origin = origin;
this.opts.maxRedirections = 0;
this.opts.query = null;
@@ -8529,10 +8529,10 @@ var require_proxy_agent = __commonJS({
};
const {
origin,
path: path12 = "/",
path: path13 = "/",
headers = {}
} = opts;
opts.path = origin + path12;
opts.path = origin + path13;
if (!("host" in headers) && !("Host" in headers)) {
const { host } = new URL2(origin);
headers.host = host;
@@ -9025,8 +9025,8 @@ var require_retry_handler = __commonJS({
}
if (this.end == null) {
if (statusCode === 206) {
const range2 = parseRangeHeader(headers["content-range"]);
if (range2 == null) {
const range3 = parseRangeHeader(headers["content-range"]);
if (range3 == null) {
return this.handler.onHeaders(
statusCode,
rawHeaders,
@@ -9034,7 +9034,7 @@ var require_retry_handler = __commonJS({
statusMessage
);
}
const { start, size, end = size - 1 } = range2;
const { start, size, end = size - 1 } = range3;
assert4(
start != null && Number.isFinite(start),
"content-range mismatch"
@@ -10391,15 +10391,15 @@ var require_mock_utils = __commonJS({
isPromise
}
} = require("node:util");
function matchValue(match2, value) {
if (typeof match2 === "string") {
return match2 === value;
function matchValue(match4, value) {
if (typeof match4 === "string") {
return match4 === value;
}
if (match2 instanceof RegExp) {
return match2.test(value);
if (match4 instanceof RegExp) {
return match4.test(value);
}
if (typeof match2 === "function") {
return match2(value) === true;
if (typeof match4 === "function") {
return match4(value) === true;
}
return false;
}
@@ -10453,20 +10453,20 @@ var require_mock_utils = __commonJS({
}
return true;
}
function safeUrl(path12) {
if (typeof path12 !== "string") {
return path12;
function safeUrl(path13) {
if (typeof path13 !== "string") {
return path13;
}
const pathSegments = path12.split("?");
const pathSegments = path13.split("?");
if (pathSegments.length !== 2) {
return path12;
return path13;
}
const qp = new URLSearchParams(pathSegments.pop());
qp.sort();
return [...pathSegments, qp.toString()].join("?");
}
function matchKey(mockDispatch2, { path: path12, method, body: body2, headers }) {
const pathMatch = matchValue(mockDispatch2.path, path12);
function matchKey(mockDispatch2, { path: path13, method, body: body2, headers }) {
const pathMatch = matchValue(mockDispatch2.path, path13);
const methodMatch = matchValue(mockDispatch2.method, method);
const bodyMatch = typeof mockDispatch2.body !== "undefined" ? matchValue(mockDispatch2.body, body2) : true;
const headersMatch = matchHeaders(mockDispatch2, headers);
@@ -10488,7 +10488,7 @@ var require_mock_utils = __commonJS({
function getMockDispatch(mockDispatches, key) {
const basePath = key.query ? buildURL(key.path, key.query) : key.path;
const resolvedPath = typeof basePath === "string" ? safeUrl(basePath) : basePath;
let matchedMockDispatches = mockDispatches.filter(({ consumed }) => !consumed).filter(({ path: path12 }) => matchValue(safeUrl(path12), resolvedPath));
let matchedMockDispatches = mockDispatches.filter(({ consumed }) => !consumed).filter(({ path: path13 }) => matchValue(safeUrl(path13), resolvedPath));
if (matchedMockDispatches.length === 0) {
throw new MockNotMatchedError(`Mock dispatch not matched for path '${resolvedPath}'`);
}
@@ -10526,9 +10526,9 @@ var require_mock_utils = __commonJS({
}
}
function buildKey(opts) {
const { path: path12, method, body: body2, headers, query } = opts;
const { path: path13, method, body: body2, headers, query } = opts;
return {
path: path12,
path: path13,
method,
body: body2,
headers,
@@ -10991,10 +10991,10 @@ var require_pending_interceptors_formatter = __commonJS({
}
format(pendingInterceptors) {
const withPrettyHeaders = pendingInterceptors.map(
({ method, path: path12, data: { statusCode }, persist, times, timesInvoked, origin }) => ({
({ method, path: path13, data: { statusCode }, persist, times, timesInvoked, origin }) => ({
Method: method,
Origin: origin,
Path: path12,
Path: path13,
"Status code": statusCode,
Persistent: persist ? PERSISTENT : NOT_PERSISTENT,
Invocations: timesInvoked,
@@ -12119,7 +12119,7 @@ var require_response = __commonJS({
var { URLSerializer } = require_data_url();
var { kConstruct } = require_symbols();
var assert4 = require("node:assert");
var { types } = require("node:util");
var { types: types2 } = require("node:util");
var textEncoder = new TextEncoder("utf-8");
var Response = class _Response {
// Creates network error Response.
@@ -12440,7 +12440,7 @@ var require_response = __commonJS({
if (isBlobLike(V)) {
return webidl.converters.Blob(V, prefix2, name, { strict: false });
}
if (ArrayBuffer.isView(V) || types.isArrayBuffer(V)) {
if (ArrayBuffer.isView(V) || types2.isArrayBuffer(V)) {
return webidl.converters.BufferSource(V, prefix2, name);
}
if (util4.isFormDataLike(V)) {
@@ -14676,7 +14676,7 @@ var require_util4 = __commonJS({
var { ProgressEvent } = require_progressevent();
var { getEncoding } = require_encoding();
var { serializeAMimeType, parseMIMEType } = require_data_url();
var { types } = require("node:util");
var { types: types2 } = require("node:util");
var { StringDecoder } = require("string_decoder");
var { btoa: btoa2 } = require("node:buffer");
var staticPropertyDescriptors = {
@@ -14706,7 +14706,7 @@ var require_util4 = __commonJS({
});
}
isFirstChunk = false;
if (!done && types.isUint8Array(value)) {
if (!done && types2.isUint8Array(value)) {
bytes.push(value);
if ((fr[kLastProgressEventFired] === void 0 || Date.now() - fr[kLastProgressEventFired] >= 50) && !fr[kAborted]) {
fr[kLastProgressEventFired] = Date.now();
@@ -15875,9 +15875,9 @@ var require_util6 = __commonJS({
}
}
}
function validateCookiePath(path12) {
for (let i = 0; i < path12.length; ++i) {
const code = path12.charCodeAt(i);
function validateCookiePath(path13) {
for (let i = 0; i < path13.length; ++i) {
const code = path13.charCodeAt(i);
if (code < 32 || // exclude CTLs (0-31)
code === 127 || // DEL
code === 59) {
@@ -17540,7 +17540,7 @@ var require_websocket = __commonJS({
var { ByteParser } = require_receiver();
var { kEnumerableProperty, isBlobLike } = require_util();
var { getGlobalDispatcher } = require_global2();
var { types } = require("node:util");
var { types: types2 } = require("node:util");
var { ErrorEvent, CloseEvent } = require_events();
var { SendQueue } = require_sender();
var WebSocket = class _WebSocket extends EventTarget {
@@ -17663,7 +17663,7 @@ var require_websocket = __commonJS({
this.#sendQueue.add(data, () => {
this.#bufferedAmount -= length;
}, sendHints.string);
} else if (types.isArrayBuffer(data)) {
} else if (types2.isArrayBuffer(data)) {
this.#bufferedAmount += data.byteLength;
this.#sendQueue.add(data, () => {
this.#bufferedAmount -= data.byteLength;
@@ -17869,7 +17869,7 @@ var require_websocket = __commonJS({
if (isBlobLike(V)) {
return webidl.converters.Blob(V, { strict: false });
}
if (ArrayBuffer.isView(V) || types.isArrayBuffer(V)) {
if (ArrayBuffer.isView(V) || types2.isArrayBuffer(V)) {
return webidl.converters.BufferSource(V);
}
}
@@ -18517,11 +18517,11 @@ var require_undici = __commonJS({
if (typeof opts.path !== "string") {
throw new InvalidArgumentError("invalid opts.path");
}
let path12 = opts.path;
let path13 = opts.path;
if (!opts.path.startsWith("/")) {
path12 = `/${path12}`;
path13 = `/${path13}`;
}
url2 = new URL(util4.parseOrigin(url2).origin + path12);
url2 = new URL(util4.parseOrigin(url2).origin + path13);
} else {
if (!opts) {
opts = typeof url2 === "object" ? url2 : {};
@@ -18614,11 +18614,11 @@ var require_concat_map = __commonJS({
var require_balanced_match = __commonJS({
"node_modules/balanced-match/index.js"(exports2, module2) {
"use strict";
module2.exports = balanced;
function balanced(a, b, str) {
if (a instanceof RegExp) a = maybeMatch(a, str);
if (b instanceof RegExp) b = maybeMatch(b, str);
var r = range2(a, b, str);
module2.exports = balanced2;
function balanced2(a, b, str) {
if (a instanceof RegExp) a = maybeMatch2(a, str);
if (b instanceof RegExp) b = maybeMatch2(b, str);
var r = range3(a, b, str);
return r && {
start: r[0],
end: r[1],
@@ -18627,12 +18627,12 @@ var require_balanced_match = __commonJS({
post: str.slice(r[1] + b.length)
};
}
function maybeMatch(reg, str) {
function maybeMatch2(reg, str) {
var m = str.match(reg);
return m ? m[0] : null;
}
balanced.range = range2;
function range2(a, b, str) {
balanced2.range = range3;
function range3(a, b, str) {
var begs, beg, left, right, result;
var ai = str.indexOf(a);
var bi = str.indexOf(b, ai + 1);
@@ -18669,27 +18669,27 @@ var require_balanced_match = __commonJS({
var require_brace_expansion = __commonJS({
"node_modules/brace-expansion/index.js"(exports2, module2) {
var concatMap = require_concat_map();
var balanced = require_balanced_match();
var balanced2 = require_balanced_match();
module2.exports = expandTop;
var escSlash = "\0SLASH" + Math.random() + "\0";
var escOpen = "\0OPEN" + Math.random() + "\0";
var escClose = "\0CLOSE" + Math.random() + "\0";
var escComma = "\0COMMA" + Math.random() + "\0";
var escPeriod = "\0PERIOD" + Math.random() + "\0";
function numeric(str) {
var escSlash2 = "\0SLASH" + Math.random() + "\0";
var escOpen2 = "\0OPEN" + Math.random() + "\0";
var escClose2 = "\0CLOSE" + Math.random() + "\0";
var escComma2 = "\0COMMA" + Math.random() + "\0";
var escPeriod2 = "\0PERIOD" + Math.random() + "\0";
function numeric2(str) {
return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0);
}
function escapeBraces(str) {
return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod);
function escapeBraces2(str) {
return str.split("\\\\").join(escSlash2).split("\\{").join(escOpen2).split("\\}").join(escClose2).split("\\,").join(escComma2).split("\\.").join(escPeriod2);
}
function unescapeBraces(str) {
return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join(".");
function unescapeBraces2(str) {
return str.split(escSlash2).join("\\").split(escOpen2).join("{").split(escClose2).join("}").split(escComma2).join(",").split(escPeriod2).join(".");
}
function parseCommaParts(str) {
function parseCommaParts2(str) {
if (!str)
return [""];
var parts = [];
var m = balanced("{", "}", str);
var m = balanced2("{", "}", str);
if (!m)
return str.split(",");
var pre = m.pre;
@@ -18697,7 +18697,7 @@ var require_brace_expansion = __commonJS({
var post = m.post;
var p = pre.split(",");
p[p.length - 1] += "{" + body2 + "}";
var postParts = parseCommaParts(post);
var postParts = parseCommaParts2(post);
if (post.length) {
p[p.length - 1] += postParts.shift();
p.push.apply(p, postParts);
@@ -18711,23 +18711,23 @@ var require_brace_expansion = __commonJS({
if (str.substr(0, 2) === "{}") {
str = "\\{\\}" + str.substr(2);
}
return expand(escapeBraces(str), true).map(unescapeBraces);
return expand2(escapeBraces2(str), true).map(unescapeBraces2);
}
function embrace(str) {
function embrace2(str) {
return "{" + str + "}";
}
function isPadded(el) {
function isPadded2(el) {
return /^-?0\d/.test(el);
}
function lte(i, y) {
function lte2(i, y) {
return i <= y;
}
function gte(i, y) {
function gte2(i, y) {
return i >= y;
}
function expand(str, isTop) {
function expand2(str, isTop) {
var expansions = [];
var m = balanced("{", "}", str);
var m = balanced2("{", "}", str);
if (!m || /\$$/.test(m.pre)) return [str];
var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
@@ -18735,8 +18735,8 @@ var require_brace_expansion = __commonJS({
var isOptions = m.body.indexOf(",") >= 0;
if (!isSequence && !isOptions) {
if (m.post.match(/,(?!,).*\}/)) {
str = m.pre + "{" + m.body + escClose + m.post;
return expand(str);
str = m.pre + "{" + m.body + escClose2 + m.post;
return expand2(str);
}
return [str];
}
@@ -18744,11 +18744,11 @@ var require_brace_expansion = __commonJS({
if (isSequence) {
n = m.body.split(/\.\./);
} else {
n = parseCommaParts(m.body);
n = parseCommaParts2(m.body);
if (n.length === 1) {
n = expand(n[0], false).map(embrace);
n = expand2(n[0], false).map(embrace2);
if (n.length === 1) {
var post = m.post.length ? expand(m.post, false) : [""];
var post = m.post.length ? expand2(m.post, false) : [""];
return post.map(function(p) {
return m.pre + n[0] + p;
});
@@ -18756,20 +18756,20 @@ var require_brace_expansion = __commonJS({
}
}
var pre = m.pre;
var post = m.post.length ? expand(m.post, false) : [""];
var post = m.post.length ? expand2(m.post, false) : [""];
var N;
if (isSequence) {
var x = numeric(n[0]);
var y = numeric(n[1]);
var x = numeric2(n[0]);
var y = numeric2(n[1]);
var width = Math.max(n[0].length, n[1].length);
var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1;
var test = lte;
var incr = n.length == 3 ? Math.abs(numeric2(n[2])) : 1;
var test = lte2;
var reverse = y < x;
if (reverse) {
incr *= -1;
test = gte;
test = gte2;
}
var pad = n.some(isPadded);
var pad = n.some(isPadded2);
N = [];
for (var i = x; test(i, y); i += incr) {
var c;
@@ -18794,7 +18794,7 @@ var require_brace_expansion = __commonJS({
}
} else {
N = concatMap(n, function(el) {
return expand(el, false);
return expand2(el, false);
});
}
for (var j = 0; j < N.length; j++) {
@@ -18812,9 +18812,9 @@ var require_brace_expansion = __commonJS({
// node_modules/minimatch/minimatch.js
var require_minimatch = __commonJS({
"node_modules/minimatch/minimatch.js"(exports2, module2) {
module2.exports = minimatch2;
minimatch2.Minimatch = Minimatch2;
var path12 = (function() {
module2.exports = minimatch3;
minimatch3.Minimatch = Minimatch3;
var path13 = (function() {
try {
return require("path");
} catch (e) {
@@ -18822,9 +18822,9 @@ var require_minimatch = __commonJS({
})() || {
sep: "/"
};
minimatch2.sep = path12.sep;
var GLOBSTAR = minimatch2.GLOBSTAR = Minimatch2.GLOBSTAR = {};
var expand = require_brace_expansion();
minimatch3.sep = path13.sep;
var GLOBSTAR2 = minimatch3.GLOBSTAR = Minimatch3.GLOBSTAR = {};
var expand2 = require_brace_expansion();
var plTypes = {
"!": { open: "(?:(?!(?:", close: "))[^/]*?)" },
"?": { open: "(?:", close: ")?" },
@@ -18832,11 +18832,11 @@ var require_minimatch = __commonJS({
"*": { open: "(?:", close: ")*" },
"@": { open: "(?:", close: ")" }
};
var qmark = "[^/]";
var star = qmark + "*?";
var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
var reSpecials = charSet("().*{}+?[]^$\\!");
var qmark3 = "[^/]";
var star3 = qmark3 + "*?";
var twoStarDot2 = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
var twoStarNoDot2 = "(?:(?!(?:\\/|^)\\.).)*?";
var reSpecials2 = charSet("().*{}+?[]^$\\!");
function charSet(s) {
return s.split("").reduce(function(set, c) {
set[c] = true;
@@ -18844,14 +18844,14 @@ var require_minimatch = __commonJS({
}, {});
}
var slashSplit = /\/+/;
minimatch2.filter = filter2;
function filter2(pattern, options) {
minimatch3.filter = filter3;
function filter3(pattern, options) {
options = options || {};
return function(p, i, list) {
return minimatch2(p, pattern, options);
return minimatch3(p, pattern, options);
};
}
function ext(a, b) {
function ext2(a, b) {
b = b || {};
var t = {};
Object.keys(a).forEach(function(k) {
@@ -18862,57 +18862,57 @@ var require_minimatch = __commonJS({
});
return t;
}
minimatch2.defaults = function(def) {
minimatch3.defaults = function(def) {
if (!def || typeof def !== "object" || !Object.keys(def).length) {
return minimatch2;
return minimatch3;
}
var orig = minimatch2;
var m = function minimatch3(p, pattern, options) {
return orig(p, pattern, ext(def, options));
var orig = minimatch3;
var m = function minimatch4(p, pattern, options) {
return orig(p, pattern, ext2(def, options));
};
m.Minimatch = function Minimatch3(pattern, options) {
return new orig.Minimatch(pattern, ext(def, options));
m.Minimatch = function Minimatch4(pattern, options) {
return new orig.Minimatch(pattern, ext2(def, options));
};
m.Minimatch.defaults = function defaults(options) {
return orig.defaults(ext(def, options)).Minimatch;
m.Minimatch.defaults = function defaults2(options) {
return orig.defaults(ext2(def, options)).Minimatch;
};
m.filter = function filter3(pattern, options) {
return orig.filter(pattern, ext(def, options));
m.filter = function filter4(pattern, options) {
return orig.filter(pattern, ext2(def, options));
};
m.defaults = function defaults(options) {
return orig.defaults(ext(def, options));
m.defaults = function defaults2(options) {
return orig.defaults(ext2(def, options));
};
m.makeRe = function makeRe2(pattern, options) {
return orig.makeRe(pattern, ext(def, options));
m.makeRe = function makeRe3(pattern, options) {
return orig.makeRe(pattern, ext2(def, options));
};
m.braceExpand = function braceExpand2(pattern, options) {
return orig.braceExpand(pattern, ext(def, options));
m.braceExpand = function braceExpand3(pattern, options) {
return orig.braceExpand(pattern, ext2(def, options));
};
m.match = function(list, pattern, options) {
return orig.match(list, pattern, ext(def, options));
return orig.match(list, pattern, ext2(def, options));
};
return m;
};
Minimatch2.defaults = function(def) {
return minimatch2.defaults(def).Minimatch;
Minimatch3.defaults = function(def) {
return minimatch3.defaults(def).Minimatch;
};
function minimatch2(p, pattern, options) {
assertValidPattern(pattern);
function minimatch3(p, pattern, options) {
assertValidPattern2(pattern);
if (!options) options = {};
if (!options.nocomment && pattern.charAt(0) === "#") {
return false;
}
return new Minimatch2(pattern, options).match(p);
return new Minimatch3(pattern, options).match(p);
}
function Minimatch2(pattern, options) {
if (!(this instanceof Minimatch2)) {
return new Minimatch2(pattern, options);
function Minimatch3(pattern, options) {
if (!(this instanceof Minimatch3)) {
return new Minimatch3(pattern, options);
}
assertValidPattern(pattern);
assertValidPattern2(pattern);
if (!options) options = {};
pattern = pattern.trim();
if (!options.allowWindowsEscape && path12.sep !== "/") {
pattern = pattern.split(path12.sep).join("/");
if (!options.allowWindowsEscape && path13.sep !== "/") {
pattern = pattern.split(path13.sep).join("/");
}
this.options = options;
this.set = [];
@@ -18924,9 +18924,9 @@ var require_minimatch = __commonJS({
this.partial = !!options.partial;
this.make();
}
Minimatch2.prototype.debug = function() {
Minimatch3.prototype.debug = function() {
};
Minimatch2.prototype.make = make;
Minimatch3.prototype.make = make;
function make() {
var pattern = this.pattern;
var options = this.options;
@@ -18958,7 +18958,7 @@ var require_minimatch = __commonJS({
this.debug(this.pattern, set);
this.set = set;
}
Minimatch2.prototype.parseNegate = parseNegate;
Minimatch3.prototype.parseNegate = parseNegate;
function parseNegate() {
var pattern = this.pattern;
var negate = false;
@@ -18972,42 +18972,42 @@ var require_minimatch = __commonJS({
if (negateOffset) this.pattern = pattern.substr(negateOffset);
this.negate = negate;
}
minimatch2.braceExpand = function(pattern, options) {
return braceExpand(pattern, options);
minimatch3.braceExpand = function(pattern, options) {
return braceExpand2(pattern, options);
};
Minimatch2.prototype.braceExpand = braceExpand;
function braceExpand(pattern, options) {
Minimatch3.prototype.braceExpand = braceExpand2;
function braceExpand2(pattern, options) {
if (!options) {
if (this instanceof Minimatch2) {
if (this instanceof Minimatch3) {
options = this.options;
} else {
options = {};
}
}
pattern = typeof pattern === "undefined" ? this.pattern : pattern;
assertValidPattern(pattern);
assertValidPattern2(pattern);
if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
return [pattern];
}
return expand(pattern);
return expand2(pattern);
}
var MAX_PATTERN_LENGTH = 1024 * 64;
var assertValidPattern = function(pattern) {
var MAX_PATTERN_LENGTH2 = 1024 * 64;
var assertValidPattern2 = function(pattern) {
if (typeof pattern !== "string") {
throw new TypeError("invalid pattern");
}
if (pattern.length > MAX_PATTERN_LENGTH) {
if (pattern.length > MAX_PATTERN_LENGTH2) {
throw new TypeError("pattern is too long");
}
};
Minimatch2.prototype.parse = parse4;
Minimatch3.prototype.parse = parse4;
var SUBPARSE = {};
function parse4(pattern, isSub) {
assertValidPattern(pattern);
assertValidPattern2(pattern);
var options = this.options;
if (pattern === "**") {
if (!options.noglobstar)
return GLOBSTAR;
return GLOBSTAR2;
else
pattern = "*";
}
@@ -19027,11 +19027,11 @@ var require_minimatch = __commonJS({
if (stateChar) {
switch (stateChar) {
case "*":
re += star;
re += star3;
hasMagic = true;
break;
case "?":
re += qmark;
re += qmark3;
hasMagic = true;
break;
default:
@@ -19044,7 +19044,7 @@ var require_minimatch = __commonJS({
}
for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) {
this.debug("%s %s %s %j", pattern, i, re, c);
if (escaping && reSpecials[c]) {
if (escaping && reSpecials2[c]) {
re += "\\" + c;
escaping = false;
continue;
@@ -19156,7 +19156,7 @@ var require_minimatch = __commonJS({
clearStateChar();
if (escaping) {
escaping = false;
} else if (reSpecials[c] && !(c === "^" && inClass)) {
} else if (reSpecials2[c] && !(c === "^" && inClass)) {
re += "\\";
}
re += c;
@@ -19178,7 +19178,7 @@ var require_minimatch = __commonJS({
return $1 + $1 + $2 + "|";
});
this.debug("tail=%j\n %s", tail, tail, pl, re);
var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type;
var t = pl.type === "*" ? star3 : pl.type === "?" ? qmark3 : "\\" + pl.type;
hasMagic = true;
re = re.slice(0, pl.reStart) + t + "\\(" + tail;
}
@@ -19186,12 +19186,12 @@ var require_minimatch = __commonJS({
if (escaping) {
re += "\\\\";
}
var addPatternStart = false;
var addPatternStart2 = false;
switch (re.charAt(0)) {
case "[":
case ".":
case "(":
addPatternStart = true;
addPatternStart2 = true;
}
for (var n = negativeLists.length - 1; n > -1; n--) {
var nl = negativeLists[n];
@@ -19216,7 +19216,7 @@ var require_minimatch = __commonJS({
if (re !== "" && hasMagic) {
re = "(?=.)" + re;
}
if (addPatternStart) {
if (addPatternStart2) {
re = patternStart + re;
}
if (isSub === SUBPARSE) {
@@ -19235,11 +19235,11 @@ var require_minimatch = __commonJS({
regExp._src = re;
return regExp;
}
minimatch2.makeRe = function(pattern, options) {
return new Minimatch2(pattern, options || {}).makeRe();
minimatch3.makeRe = function(pattern, options) {
return new Minimatch3(pattern, options || {}).makeRe();
};
Minimatch2.prototype.makeRe = makeRe;
function makeRe() {
Minimatch3.prototype.makeRe = makeRe2;
function makeRe2() {
if (this.regexp || this.regexp === false) return this.regexp;
var set = this.set;
if (!set.length) {
@@ -19247,11 +19247,11 @@ var require_minimatch = __commonJS({
return this.regexp;
}
var options = this.options;
var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
var twoStar = options.noglobstar ? star3 : options.dot ? twoStarDot2 : twoStarNoDot2;
var flags = options.nocase ? "i" : "";
var re = set.map(function(pattern) {
return pattern.map(function(p) {
return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src;
return p === GLOBSTAR2 ? twoStar : typeof p === "string" ? regExpEscape3(p) : p._src;
}).join("\\/");
}).join("|");
re = "^(?:" + re + ")$";
@@ -19263,9 +19263,9 @@ var require_minimatch = __commonJS({
}
return this.regexp;
}
minimatch2.match = function(list, pattern, options) {
minimatch3.match = function(list, pattern, options) {
options = options || {};
var mm = new Minimatch2(pattern, options);
var mm = new Minimatch3(pattern, options);
list = list.filter(function(f) {
return mm.match(f);
});
@@ -19274,15 +19274,15 @@ var require_minimatch = __commonJS({
}
return list;
};
Minimatch2.prototype.match = function match2(f, partial) {
Minimatch3.prototype.match = function match4(f, partial) {
if (typeof partial === "undefined") partial = this.partial;
this.debug("match", f, this.pattern);
if (this.comment) return false;
if (this.empty) return f === "";
if (f === "/" && partial) return true;
var options = this.options;
if (path12.sep !== "/") {
f = f.split(path12.sep).join("/");
if (path13.sep !== "/") {
f = f.split(path13.sep).join("/");
}
f = f.split(slashSplit);
this.debug(this.pattern, "split", f);
@@ -19309,7 +19309,7 @@ var require_minimatch = __commonJS({
if (options.flipNegate) return false;
return this.negate;
};
Minimatch2.prototype.matchOne = function(file, pattern, partial) {
Minimatch3.prototype.matchOne = function(file, pattern, partial) {
var options = this.options;
this.debug(
"matchOne",
@@ -19322,7 +19322,7 @@ var require_minimatch = __commonJS({
var f = file[fi];
this.debug(pattern, p, f);
if (p === false) return false;
if (p === GLOBSTAR) {
if (p === GLOBSTAR2) {
this.debug("GLOBSTAR", [pattern, p, f]);
var fr = fi;
var pr = pi + 1;
@@ -19376,7 +19376,7 @@ var require_minimatch = __commonJS({
function globUnescape(s) {
return s.replace(/\\(.)/g, "$1");
}
function regExpEscape(s) {
function regExpEscape3(s) {
return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
}
}
@@ -19535,13 +19535,13 @@ var require_parse_options = __commonJS({
var require_identifiers = __commonJS({
"node_modules/@actions/cache/node_modules/semver/internal/identifiers.js"(exports2, module2) {
"use strict";
var numeric = /^[0-9]+$/;
var numeric2 = /^[0-9]+$/;
var compareIdentifiers = (a, b) => {
if (typeof a === "number" && typeof b === "number") {
return a === b ? 0 : a < b ? -1 : 1;
}
const anum = numeric.test(a);
const bnum = numeric.test(b);
const anum = numeric2.test(a);
const bnum = numeric2.test(b);
if (anum && bnum) {
a = +a;
b = +b;
@@ -19725,8 +19725,8 @@ var require_semver = __commonJS({
throw new Error("invalid increment argument: identifier is empty");
}
if (identifier) {
const match2 = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
if (!match2 || match2[1] !== identifier) {
const match4 = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
if (!match4 || match4[1] !== identifier) {
throw new Error(`invalid identifier: ${identifier}`);
}
}
@@ -20103,8 +20103,8 @@ var require_gte = __commonJS({
"node_modules/@actions/cache/node_modules/semver/functions/gte.js"(exports2, module2) {
"use strict";
var compare2 = require_compare();
var gte = (a, b, loose) => compare2(a, b, loose) >= 0;
module2.exports = gte;
var gte2 = (a, b, loose) => compare2(a, b, loose) >= 0;
module2.exports = gte2;
}
});
@@ -20113,8 +20113,8 @@ var require_lte = __commonJS({
"node_modules/@actions/cache/node_modules/semver/functions/lte.js"(exports2, module2) {
"use strict";
var compare2 = require_compare();
var lte = (a, b, loose) => compare2(a, b, loose) <= 0;
module2.exports = lte;
var lte2 = (a, b, loose) => compare2(a, b, loose) <= 0;
module2.exports = lte2;
}
});
@@ -20125,9 +20125,9 @@ var require_cmp = __commonJS({
var eq2 = require_eq();
var neq = require_neq();
var gt2 = require_gt();
var gte = require_gte();
var gte2 = require_gte();
var lt2 = require_lt();
var lte = require_lte();
var lte2 = require_lte();
var cmp = (a, op, b, loose) => {
switch (op) {
case "===":
@@ -20155,11 +20155,11 @@ var require_cmp = __commonJS({
case ">":
return gt2(a, b, loose);
case ">=":
return gte(a, b, loose);
return gte2(a, b, loose);
case "<":
return lt2(a, b, loose);
case "<=":
return lte(a, b, loose);
return lte2(a, b, loose);
default:
throw new TypeError(`Invalid operator: ${op}`);
}
@@ -20186,28 +20186,28 @@ var require_coerce = __commonJS({
return null;
}
options = options || {};
let match2 = null;
let match4 = null;
if (!options.rtl) {
match2 = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
match4 = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
} else {
const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
let next;
while ((next = coerceRtlRegex.exec(version3)) && (!match2 || match2.index + match2[0].length !== version3.length)) {
if (!match2 || next.index + next[0].length !== match2.index + match2[0].length) {
match2 = next;
while ((next = coerceRtlRegex.exec(version3)) && (!match4 || match4.index + match4[0].length !== version3.length)) {
if (!match4 || next.index + next[0].length !== match4.index + match4[0].length) {
match4 = next;
}
coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
}
coerceRtlRegex.lastIndex = -1;
}
if (match2 === null) {
if (match4 === null) {
return null;
}
const major2 = match2[2];
const minor2 = match2[3] || "0";
const patch2 = match2[4] || "0";
const prerelease = options.includePrerelease && match2[5] ? `-${match2[5]}` : "";
const build = options.includePrerelease && match2[6] ? `+${match2[6]}` : "";
const major2 = match4[2];
const minor2 = match4[3] || "0";
const patch2 = match4[4] || "0";
const prerelease = options.includePrerelease && match4[5] ? `-${match4[5]}` : "";
const build = options.includePrerelease && match4[6] ? `+${match4[6]}` : "";
return parse4(`${major2}.${minor2}.${patch2}${prerelease}${build}`, options);
};
module2.exports = coerce;
@@ -20258,25 +20258,25 @@ var require_range = __commonJS({
"use strict";
var SPACE_CHARACTERS = /\s+/g;
var Range = class _Range {
constructor(range2, options) {
constructor(range3, options) {
options = parseOptions(options);
if (range2 instanceof _Range) {
if (range2.loose === !!options.loose && range2.includePrerelease === !!options.includePrerelease) {
return range2;
if (range3 instanceof _Range) {
if (range3.loose === !!options.loose && range3.includePrerelease === !!options.includePrerelease) {
return range3;
} else {
return new _Range(range2.raw, options);
return new _Range(range3.raw, options);
}
}
if (range2 instanceof Comparator) {
this.raw = range2.value;
this.set = [[range2]];
if (range3 instanceof Comparator) {
this.raw = range3.value;
this.set = [[range3]];
this.formatted = void 0;
return this;
}
this.options = options;
this.loose = !!options.loose;
this.includePrerelease = !!options.includePrerelease;
this.raw = range2.trim().replace(SPACE_CHARACTERS, " ");
this.raw = range3.trim().replace(SPACE_CHARACTERS, " ");
this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
if (!this.set.length) {
throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
@@ -20321,24 +20321,24 @@ var require_range = __commonJS({
toString() {
return this.range;
}
parseRange(range2) {
parseRange(range3) {
const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
const memoKey = memoOpts + ":" + range2;
const memoKey = memoOpts + ":" + range3;
const cached = cache.get(memoKey);
if (cached) {
return cached;
}
const loose = this.options.loose;
const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
range2 = range2.replace(hr, hyphenReplace(this.options.includePrerelease));
debug3("hyphen replace", range2);
range2 = range2.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
debug3("comparator trim", range2);
range2 = range2.replace(re[t.TILDETRIM], tildeTrimReplace);
debug3("tilde trim", range2);
range2 = range2.replace(re[t.CARETTRIM], caretTrimReplace);
debug3("caret trim", range2);
let rangeList = range2.split(" ").map((comp26) => parseComparator(comp26, this.options)).join(" ").split(/\s+/).map((comp26) => replaceGTE0(comp26, this.options));
range3 = range3.replace(hr, hyphenReplace(this.options.includePrerelease));
debug3("hyphen replace", range3);
range3 = range3.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
debug3("comparator trim", range3);
range3 = range3.replace(re[t.TILDETRIM], tildeTrimReplace);
debug3("tilde trim", range3);
range3 = range3.replace(re[t.CARETTRIM], caretTrimReplace);
debug3("caret trim", range3);
let rangeList = range3.split(" ").map((comp26) => parseComparator(comp26, this.options)).join(" ").split(/\s+/).map((comp26) => replaceGTE0(comp26, this.options));
if (loose) {
rangeList = rangeList.filter((comp26) => {
debug3("loose invalid filter", comp26, this.options);
@@ -20361,12 +20361,12 @@ var require_range = __commonJS({
cache.set(memoKey, result);
return result;
}
intersects(range2, options) {
if (!(range2 instanceof _Range)) {
intersects(range3, options) {
if (!(range3 instanceof _Range)) {
throw new TypeError("a Range is required");
}
return this.set.some((thisComparators) => {
return isSatisfiable(thisComparators, options) && range2.set.some((rangeComparators) => {
return isSatisfiable(thisComparators, options) && range3.set.some((rangeComparators) => {
return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
return rangeComparators.every((rangeComparator) => {
return thisComparator.intersects(rangeComparator, options);
@@ -20747,13 +20747,13 @@ var require_satisfies = __commonJS({
"node_modules/@actions/cache/node_modules/semver/functions/satisfies.js"(exports2, module2) {
"use strict";
var Range = require_range();
var satisfies2 = (version3, range2, options) => {
var satisfies2 = (version3, range3, options) => {
try {
range2 = new Range(range2, options);
range3 = new Range(range3, options);
} catch (er) {
return false;
}
return range2.test(version3);
return range3.test(version3);
};
module2.exports = satisfies2;
}
@@ -20764,7 +20764,7 @@ var require_to_comparators = __commonJS({
"node_modules/@actions/cache/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
"use strict";
var Range = require_range();
var toComparators = (range2, options) => new Range(range2, options).set.map((comp26) => comp26.map((c) => c.value).join(" ").trim().split(" "));
var toComparators = (range3, options) => new Range(range3, options).set.map((comp26) => comp26.map((c) => c.value).join(" ").trim().split(" "));
module2.exports = toComparators;
}
});
@@ -20775,12 +20775,12 @@ var require_max_satisfying = __commonJS({
"use strict";
var SemVer = require_semver();
var Range = require_range();
var maxSatisfying2 = (versions, range2, options) => {
var maxSatisfying2 = (versions, range3, options) => {
let max = null;
let maxSV = null;
let rangeObj = null;
try {
rangeObj = new Range(range2, options);
rangeObj = new Range(range3, options);
} catch (er) {
return null;
}
@@ -20804,12 +20804,12 @@ var require_min_satisfying = __commonJS({
"use strict";
var SemVer = require_semver();
var Range = require_range();
var minSatisfying2 = (versions, range2, options) => {
var minSatisfying2 = (versions, range3, options) => {
let min = null;
let minSV = null;
let rangeObj = null;
try {
rangeObj = new Range(range2, options);
rangeObj = new Range(range3, options);
} catch (er) {
return null;
}
@@ -20834,19 +20834,19 @@ var require_min_version = __commonJS({
var SemVer = require_semver();
var Range = require_range();
var gt2 = require_gt();
var minVersion = (range2, loose) => {
range2 = new Range(range2, loose);
var minVersion = (range3, loose) => {
range3 = new Range(range3, loose);
let minver = new SemVer("0.0.0");
if (range2.test(minver)) {
if (range3.test(minver)) {
return minver;
}
minver = new SemVer("0.0.0-0");
if (range2.test(minver)) {
if (range3.test(minver)) {
return minver;
}
minver = null;
for (let i = 0; i < range2.set.length; ++i) {
const comparators = range2.set[i];
for (let i = 0; i < range3.set.length; ++i) {
const comparators = range3.set[i];
let setMin = null;
comparators.forEach((comparator) => {
const compver = new SemVer(comparator.semver.version);
@@ -20877,7 +20877,7 @@ var require_min_version = __commonJS({
minver = setMin;
}
}
if (minver && range2.test(minver)) {
if (minver && range3.test(minver)) {
return minver;
}
return null;
@@ -20891,9 +20891,9 @@ var require_valid2 = __commonJS({
"node_modules/@actions/cache/node_modules/semver/ranges/valid.js"(exports2, module2) {
"use strict";
var Range = require_range();
var validRange2 = (range2, options) => {
var validRange2 = (range3, options) => {
try {
return new Range(range2, options).range || "*";
return new Range(range3, options).range || "*";
} catch (er) {
return null;
}
@@ -20913,23 +20913,23 @@ var require_outside = __commonJS({
var satisfies2 = require_satisfies();
var gt2 = require_gt();
var lt2 = require_lt();
var lte = require_lte();
var gte = require_gte();
var outside = (version3, range2, hilo, options) => {
var lte2 = require_lte();
var gte2 = require_gte();
var outside = (version3, range3, hilo, options) => {
version3 = new SemVer(version3, options);
range2 = new Range(range2, options);
range3 = new Range(range3, options);
let gtfn, ltefn, ltfn, comp26, ecomp;
switch (hilo) {
case ">":
gtfn = gt2;
ltefn = lte;
ltefn = lte2;
ltfn = lt2;
comp26 = ">";
ecomp = ">=";
break;
case "<":
gtfn = lt2;
ltefn = gte;
ltefn = gte2;
ltfn = gt2;
comp26 = "<";
ecomp = "<=";
@@ -20937,11 +20937,11 @@ var require_outside = __commonJS({
default:
throw new TypeError('Must provide a hilo val of "<" or ">"');
}
if (satisfies2(version3, range2, options)) {
if (satisfies2(version3, range3, options)) {
return false;
}
for (let i = 0; i < range2.set.length; ++i) {
const comparators = range2.set[i];
for (let i = 0; i < range3.set.length; ++i) {
const comparators = range3.set[i];
let high = null;
let low = null;
comparators.forEach((comparator) => {
@@ -20976,7 +20976,7 @@ var require_gtr = __commonJS({
"node_modules/@actions/cache/node_modules/semver/ranges/gtr.js"(exports2, module2) {
"use strict";
var outside = require_outside();
var gtr = (version3, range2, options) => outside(version3, range2, ">", options);
var gtr = (version3, range3, options) => outside(version3, range3, ">", options);
module2.exports = gtr;
}
});
@@ -20986,7 +20986,7 @@ var require_ltr = __commonJS({
"node_modules/@actions/cache/node_modules/semver/ranges/ltr.js"(exports2, module2) {
"use strict";
var outside = require_outside();
var ltr = (version3, range2, options) => outside(version3, range2, "<", options);
var ltr = (version3, range3, options) => outside(version3, range3, "<", options);
module2.exports = ltr;
}
});
@@ -21011,13 +21011,13 @@ var require_simplify = __commonJS({
"use strict";
var satisfies2 = require_satisfies();
var compare2 = require_compare();
module2.exports = (versions, range2, options) => {
module2.exports = (versions, range3, options) => {
const set = [];
let first = null;
let prev = null;
const v = versions.sort((a, b) => compare2(a, b, options));
for (const version3 of v) {
const included = satisfies2(version3, range2, options);
const included = satisfies2(version3, range3, options);
if (included) {
prev = version3;
if (!first) {
@@ -21049,8 +21049,8 @@ var require_simplify = __commonJS({
}
}
const simplified = ranges.join(" || ");
const original = typeof range2.raw === "string" ? range2.raw : String(range2);
return simplified.length < original.length ? simplified : range2;
const original = typeof range3.raw === "string" ? range3.raw : String(range3);
return simplified.length < original.length ? simplified : range3;
};
}
});
@@ -21244,8 +21244,8 @@ var require_semver2 = __commonJS({
var lt2 = require_lt();
var eq2 = require_eq();
var neq = require_neq();
var gte = require_gte();
var lte = require_lte();
var gte2 = require_gte();
var lte2 = require_lte();
var cmp = require_cmp();
var coerce = require_coerce();
var Comparator = require_comparator();
@@ -21282,8 +21282,8 @@ var require_semver2 = __commonJS({
lt: lt2,
eq: eq2,
neq,
gte,
lte,
gte: gte2,
lte: lte2,
cmp,
coerce,
Comparator,
@@ -21338,14 +21338,14 @@ var require_ms = __commonJS({
if (str.length > 100) {
return;
}
var match2 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
var match4 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
str
);
if (!match2) {
if (!match4) {
return;
}
var n = parseFloat(match2[1]);
var type = (match2[2] || "ms").toLowerCase();
var n = parseFloat(match4[1]);
var type = (match4[2] || "ms").toLowerCase();
switch (type) {
case "years":
case "year":
@@ -21476,19 +21476,19 @@ var require_common = __commonJS({
args.unshift("%O");
}
let index = 0;
args[0] = args[0].replace(/%([a-zA-Z%])/g, (match2, format) => {
if (match2 === "%%") {
args[0] = args[0].replace(/%([a-zA-Z%])/g, (match4, format) => {
if (match4 === "%%") {
return "%";
}
index++;
const formatter = createDebug.formatters[format];
if (typeof formatter === "function") {
const val = args[index];
match2 = formatter.call(self2, val);
match4 = formatter.call(self2, val);
args.splice(index, 1);
index--;
}
return match2;
return match4;
});
createDebug.formatArgs.call(self2, args);
const logFn = self2.log || createDebug.log;
@@ -21708,12 +21708,12 @@ var require_browser = __commonJS({
args.splice(1, 0, c, "color: inherit");
let index = 0;
let lastC = 0;
args[0].replace(/%[a-zA-Z%]/g, (match2) => {
if (match2 === "%%") {
args[0].replace(/%[a-zA-Z%]/g, (match4) => {
if (match4 === "%%") {
return;
}
index++;
if (match2 === "%c") {
if (match4 === "%c") {
lastC = index;
}
});
@@ -22691,7 +22691,7 @@ var require_package = __commonJS({
"node_modules/@actions/cache/package.json"(exports2, module2) {
module2.exports = {
name: "@actions/cache",
version: "6.1.0",
version: "6.2.0",
description: "Actions cache lib",
keywords: [
"github",
@@ -23844,9 +23844,9 @@ var require_json_format_contract = __commonJS({
}
exports2.jsonWriteOptions = jsonWriteOptions;
function mergeJsonOptions(a, b) {
var _a, _b;
var _a2, _b;
let c = Object.assign(Object.assign({}, a), b);
c.typeRegistry = [...(_a = a === null || a === void 0 ? void 0 : a.typeRegistry) !== null && _a !== void 0 ? _a : [], ...(_b = b === null || b === void 0 ? void 0 : b.typeRegistry) !== null && _b !== void 0 ? _b : []];
c.typeRegistry = [...(_a2 = a === null || a === void 0 ? void 0 : a.typeRegistry) !== null && _a2 !== void 0 ? _a2 : [], ...(_b = b === null || b === void 0 ? void 0 : b.typeRegistry) !== null && _b !== void 0 ? _b : []];
return c;
}
exports2.mergeJsonOptions = mergeJsonOptions;
@@ -23932,8 +23932,8 @@ var require_reflection_info = __commonJS({
RepeatType2[RepeatType2["UNPACKED"] = 2] = "UNPACKED";
})(RepeatType = exports2.RepeatType || (exports2.RepeatType = {}));
function normalizeFieldInfo(field) {
var _a, _b, _c, _d;
field.localName = (_a = field.localName) !== null && _a !== void 0 ? _a : lower_camel_case_1.lowerCamelCase(field.name);
var _a2, _b, _c, _d;
field.localName = (_a2 = field.localName) !== null && _a2 !== void 0 ? _a2 : lower_camel_case_1.lowerCamelCase(field.name);
field.jsonName = (_b = field.jsonName) !== null && _b !== void 0 ? _b : lower_camel_case_1.lowerCamelCase(field.name);
field.repeat = (_c = field.repeat) !== null && _c !== void 0 ? _c : RepeatType.NO;
field.opt = (_d = field.opt) !== null && _d !== void 0 ? _d : field.repeat ? false : field.oneof ? false : field.kind == "message";
@@ -23941,14 +23941,14 @@ var require_reflection_info = __commonJS({
}
exports2.normalizeFieldInfo = normalizeFieldInfo;
function readFieldOptions(messageType, fieldName, extensionName, extensionType) {
var _a;
const options = (_a = messageType.fields.find((m, i) => m.localName == fieldName || i == fieldName)) === null || _a === void 0 ? void 0 : _a.options;
var _a2;
const options = (_a2 = messageType.fields.find((m, i) => m.localName == fieldName || i == fieldName)) === null || _a2 === void 0 ? void 0 : _a2.options;
return options && options[extensionName] ? extensionType.fromJson(options[extensionName]) : void 0;
}
exports2.readFieldOptions = readFieldOptions;
function readFieldOption(messageType, fieldName, extensionName, extensionType) {
var _a;
const options = (_a = messageType.fields.find((m, i) => m.localName == fieldName || i == fieldName)) === null || _a === void 0 ? void 0 : _a.options;
var _a2;
const options = (_a2 = messageType.fields.find((m, i) => m.localName == fieldName || i == fieldName)) === null || _a2 === void 0 ? void 0 : _a2.options;
if (!options) {
return void 0;
}
@@ -24044,8 +24044,8 @@ var require_reflection_type_check = __commonJS({
var oneof_1 = require_oneof();
var ReflectionTypeCheck = class {
constructor(info3) {
var _a;
this.fields = (_a = info3.fields) !== null && _a !== void 0 ? _a : [];
var _a2;
this.fields = (_a2 = info3.fields) !== null && _a2 !== void 0 ? _a2 : [];
}
prepare() {
if (this.data)
@@ -24295,10 +24295,10 @@ var require_reflection_json_reader = __commonJS({
this.info = info3;
}
prepare() {
var _a;
var _a2;
if (this.fMap === void 0) {
this.fMap = {};
const fieldsInput = (_a = this.info.fields) !== null && _a !== void 0 ? _a : [];
const fieldsInput = (_a2 = this.info.fields) !== null && _a2 !== void 0 ? _a2 : [];
for (const field of fieldsInput) {
this.fMap[field.name] = field;
this.fMap[field.jsonName] = field;
@@ -24589,8 +24589,8 @@ var require_reflection_json_writer = __commonJS({
var assert_1 = require_assert();
var ReflectionJsonWriter = class {
constructor(info3) {
var _a;
this.fields = (_a = info3.fields) !== null && _a !== void 0 ? _a : [];
var _a2;
this.fields = (_a2 = info3.fields) !== null && _a2 !== void 0 ? _a2 : [];
}
/**
* Converts the message to a JSON object, based on the field descriptors.
@@ -24847,9 +24847,9 @@ var require_reflection_binary_reader = __commonJS({
this.info = info3;
}
prepare() {
var _a;
var _a2;
if (!this.fieldNoToField) {
const fieldsInput = (_a = this.info.fields) !== null && _a !== void 0 ? _a : [];
const fieldsInput = (_a2 = this.info.fields) !== null && _a2 !== void 0 ? _a2 : [];
this.fieldNoToField = new Map(fieldsInput.map((field) => [field.no, field]));
}
}
@@ -25517,9 +25517,9 @@ var require_message_type = __commonJS({
* This is equivalent to `JSON.stringify(T.toJson(t))`
*/
toJsonString(message, options) {
var _a;
var _a2;
let value = this.toJson(message, options);
return JSON.stringify(value, null, (_a = options === null || options === void 0 ? void 0 : options.prettySpaces) !== null && _a !== void 0 ? _a : 0);
return JSON.stringify(value, null, (_a2 = options === null || options === void 0 ? void 0 : options.prettySpaces) !== null && _a2 !== void 0 ? _a2 : 0);
}
/**
* Write the message to binary format.
@@ -25845,10 +25845,10 @@ var require_reflection_info2 = __commonJS({
exports2.readServiceOption = exports2.readMethodOption = exports2.readMethodOptions = exports2.normalizeMethodInfo = void 0;
var runtime_1 = require_commonjs();
function normalizeMethodInfo(method, service) {
var _a, _b, _c;
var _a2, _b, _c;
let m = method;
m.service = service;
m.localName = (_a = m.localName) !== null && _a !== void 0 ? _a : runtime_1.lowerCamelCase(m.name);
m.localName = (_a2 = m.localName) !== null && _a2 !== void 0 ? _a2 : runtime_1.lowerCamelCase(m.name);
m.serverStreaming = !!m.serverStreaming;
m.clientStreaming = !!m.clientStreaming;
m.options = (_b = m.options) !== null && _b !== void 0 ? _b : {};
@@ -25857,14 +25857,14 @@ var require_reflection_info2 = __commonJS({
}
exports2.normalizeMethodInfo = normalizeMethodInfo;
function readMethodOptions(service, methodName, extensionName, extensionType) {
var _a;
const options = (_a = service.methods.find((m, i) => m.localName === methodName || i === methodName)) === null || _a === void 0 ? void 0 : _a.options;
var _a2;
const options = (_a2 = service.methods.find((m, i) => m.localName === methodName || i === methodName)) === null || _a2 === void 0 ? void 0 : _a2.options;
return options && options[extensionName] ? extensionType.fromJson(options[extensionName]) : void 0;
}
exports2.readMethodOptions = readMethodOptions;
function readMethodOption(service, methodName, extensionName, extensionType) {
var _a;
const options = (_a = service.methods.find((m, i) => m.localName === methodName || i === methodName)) === null || _a === void 0 ? void 0 : _a.options;
var _a2;
const options = (_a2 = service.methods.find((m, i) => m.localName === methodName || i === methodName)) === null || _a2 === void 0 ? void 0 : _a2.options;
if (!options) {
return void 0;
}
@@ -25953,28 +25953,28 @@ var require_rpc_options = __commonJS({
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.mergeRpcOptions = void 0;
var runtime_1 = require_commonjs();
function mergeRpcOptions(defaults, options) {
function mergeRpcOptions(defaults2, options) {
if (!options)
return defaults;
return defaults2;
let o = {};
copy(defaults, o);
copy(defaults2, o);
copy(options, o);
for (let key of Object.keys(options)) {
let val = options[key];
switch (key) {
case "jsonOptions":
o.jsonOptions = runtime_1.mergeJsonOptions(defaults.jsonOptions, o.jsonOptions);
o.jsonOptions = runtime_1.mergeJsonOptions(defaults2.jsonOptions, o.jsonOptions);
break;
case "binaryOptions":
o.binaryOptions = runtime_1.mergeBinaryOptions(defaults.binaryOptions, o.binaryOptions);
o.binaryOptions = runtime_1.mergeBinaryOptions(defaults2.binaryOptions, o.binaryOptions);
break;
case "meta":
o.meta = {};
copy(defaults.meta, o.meta);
copy(defaults2.meta, o.meta);
copy(options.meta, o.meta);
break;
case "interceptors":
o.interceptors = defaults.interceptors ? defaults.interceptors.concat(val) : val.concat();
o.interceptors = defaults2.interceptors ? defaults2.interceptors.concat(val) : val.concat();
break;
}
}
@@ -26587,8 +26587,8 @@ var require_test_transport = __commonJS({
}
// Creates a promise for response headers from the mock data.
promiseHeaders() {
var _a;
const headers = (_a = this.data.headers) !== null && _a !== void 0 ? _a : _TestTransport.defaultHeaders;
var _a2;
const headers = (_a2 = this.data.headers) !== null && _a2 !== void 0 ? _a2 : _TestTransport.defaultHeaders;
return headers instanceof rpc_error_1.RpcError ? Promise.reject(headers) : Promise.resolve(headers);
}
// Creates a promise for a single, valid, message from the mock data.
@@ -26663,14 +26663,14 @@ var require_test_transport = __commonJS({
}
// Creates a promise for response status from the mock data.
promiseStatus() {
var _a;
const status = (_a = this.data.status) !== null && _a !== void 0 ? _a : _TestTransport.defaultStatus;
var _a2;
const status = (_a2 = this.data.status) !== null && _a2 !== void 0 ? _a2 : _TestTransport.defaultStatus;
return status instanceof rpc_error_1.RpcError ? Promise.reject(status) : Promise.resolve(status);
}
// Creates a promise for response trailers from the mock data.
promiseTrailers() {
var _a;
const trailers = (_a = this.data.trailers) !== null && _a !== void 0 ? _a : _TestTransport.defaultTrailers;
var _a2;
const trailers = (_a2 = this.data.trailers) !== null && _a2 !== void 0 ? _a2 : _TestTransport.defaultTrailers;
return trailers instanceof rpc_error_1.RpcError ? Promise.reject(trailers) : Promise.resolve(trailers);
}
maybeSuppressUncaught(...promise) {
@@ -26685,8 +26685,8 @@ var require_test_transport = __commonJS({
return rpc_options_1.mergeRpcOptions({}, options);
}
unary(method, input, options) {
var _a;
const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), responsePromise = headersPromise.catch((_) => {
var _a2;
const requestHeaders = (_a2 = options.meta) !== null && _a2 !== void 0 ? _a2 : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), responsePromise = headersPromise.catch((_) => {
}).then(delay4(this.responseDelay, options.abort)).then((_) => this.promiseSingleResponse(method)), statusPromise = responsePromise.catch((_) => {
}).then(delay4(this.afterResponseDelay, options.abort)).then((_) => this.promiseStatus()), trailersPromise = responsePromise.catch((_) => {
}).then(delay4(this.afterResponseDelay, options.abort)).then((_) => this.promiseTrailers());
@@ -26695,16 +26695,16 @@ var require_test_transport = __commonJS({
return new unary_call_1.UnaryCall(method, requestHeaders, input, headersPromise, responsePromise, statusPromise, trailersPromise);
}
serverStreaming(method, input, options) {
var _a;
const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), outputStream = new rpc_output_stream_1.RpcOutputStreamController(), responseStreamClosedPromise = headersPromise.then(delay4(this.responseDelay, options.abort)).catch(() => {
var _a2;
const requestHeaders = (_a2 = options.meta) !== null && _a2 !== void 0 ? _a2 : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), outputStream = new rpc_output_stream_1.RpcOutputStreamController(), responseStreamClosedPromise = headersPromise.then(delay4(this.responseDelay, options.abort)).catch(() => {
}).then(() => this.streamResponses(method, outputStream, options.abort)).then(delay4(this.afterResponseDelay, options.abort)), statusPromise = responseStreamClosedPromise.then(() => this.promiseStatus()), trailersPromise = responseStreamClosedPromise.then(() => this.promiseTrailers());
this.maybeSuppressUncaught(statusPromise, trailersPromise);
this.lastInput = { single: input };
return new server_streaming_call_1.ServerStreamingCall(method, requestHeaders, input, headersPromise, outputStream, statusPromise, trailersPromise);
}
clientStreaming(method, options) {
var _a;
const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), responsePromise = headersPromise.catch((_) => {
var _a2;
const requestHeaders = (_a2 = options.meta) !== null && _a2 !== void 0 ? _a2 : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), responsePromise = headersPromise.catch((_) => {
}).then(delay4(this.responseDelay, options.abort)).then((_) => this.promiseSingleResponse(method)), statusPromise = responsePromise.catch((_) => {
}).then(delay4(this.afterResponseDelay, options.abort)).then((_) => this.promiseStatus()), trailersPromise = responsePromise.catch((_) => {
}).then(delay4(this.afterResponseDelay, options.abort)).then((_) => this.promiseTrailers());
@@ -26713,8 +26713,8 @@ var require_test_transport = __commonJS({
return new client_streaming_call_1.ClientStreamingCall(method, requestHeaders, this.lastInput, headersPromise, responsePromise, statusPromise, trailersPromise);
}
duplex(method, options) {
var _a;
const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), outputStream = new rpc_output_stream_1.RpcOutputStreamController(), responseStreamClosedPromise = headersPromise.then(delay4(this.responseDelay, options.abort)).catch(() => {
var _a2;
const requestHeaders = (_a2 = options.meta) !== null && _a2 !== void 0 ? _a2 : {}, headersPromise = this.promiseHeaders().then(delay4(this.headerDelay, options.abort)), outputStream = new rpc_output_stream_1.RpcOutputStreamController(), responseStreamClosedPromise = headersPromise.then(delay4(this.responseDelay, options.abort)).catch(() => {
}).then(() => this.streamResponses(method, outputStream, options.abort)).then(delay4(this.afterResponseDelay, options.abort)), statusPromise = responseStreamClosedPromise.then(() => this.promiseStatus()), trailersPromise = responseStreamClosedPromise.then(() => this.promiseTrailers());
this.maybeSuppressUncaught(statusPromise, trailersPromise);
this.lastInput = new TestInputStream(this.data, options.abort);
@@ -26790,10 +26790,10 @@ var require_rpc_interceptor = __commonJS({
exports2.stackDuplexStreamingInterceptors = exports2.stackClientStreamingInterceptors = exports2.stackServerStreamingInterceptors = exports2.stackUnaryInterceptors = exports2.stackIntercept = void 0;
var runtime_1 = require_commonjs();
function stackIntercept(kind, transport, method, options, input) {
var _a, _b, _c, _d;
var _a2, _b, _c, _d;
if (kind == "unary") {
let tail = (mtd, inp, opt) => transport.unary(mtd, inp, opt);
for (const curr of ((_a = options.interceptors) !== null && _a !== void 0 ? _a : []).filter((i) => i.interceptUnary).reverse()) {
for (const curr of ((_a2 = options.interceptors) !== null && _a2 !== void 0 ? _a2 : []).filter((i) => i.interceptUnary).reverse()) {
const next = tail;
tail = (mtd, inp, opt) => curr.interceptUnary(next, mtd, inp, opt);
}
@@ -26998,7 +26998,7 @@ __export(save_cache_exports, {
run: () => run
});
module.exports = __toCommonJS(save_cache_exports);
var fs7 = __toESM(require("node:fs"), 1);
var fs9 = __toESM(require("node:fs"), 1);
// node_modules/@actions/core/lib/command.js
var os = __toESM(require("os"), 1);
@@ -27094,7 +27094,7 @@ function getProxyUrl(reqUrl) {
if (proxyVar) {
try {
return new DecodedURL(proxyVar);
} catch (_a) {
} catch (_a2) {
if (!proxyVar.startsWith("http://") && !proxyVar.startsWith("https://"))
return new DecodedURL(`http://${proxyVar}`);
}
@@ -27886,7 +27886,7 @@ var Summary = class {
}
try {
yield access(pathFromEnv, import_fs.constants.R_OK | import_fs.constants.W_OK);
} catch (_a) {
} catch (_a2) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
this._filePath = pathFromEnv;
@@ -28902,10 +28902,10 @@ function getState(name) {
// node_modules/@actions/cache/lib/cache.js
var path10 = __toESM(require("path"), 1);
// node_modules/@actions/glob/lib/internal-globber.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js
var fs2 = __toESM(require("fs"), 1);
// node_modules/@actions/glob/lib/internal-glob-options-helper.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-glob-options-helper.js
function getOptions(copy) {
const result = {
followSymbolicLinks: true,
@@ -28939,10 +28939,10 @@ function getOptions(copy) {
return result;
}
// node_modules/@actions/glob/lib/internal-globber.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js
var path7 = __toESM(require("path"), 1);
// node_modules/@actions/glob/lib/internal-path-helper.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path-helper.js
var path4 = __toESM(require("path"), 1);
var import_assert2 = __toESM(require("assert"), 1);
var IS_WINDOWS3 = process.platform === "win32";
@@ -29034,16 +29034,16 @@ function safeTrimTrailingSeparator(p) {
return p.substr(0, p.length - 1);
}
// node_modules/@actions/glob/lib/internal-match-kind.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-match-kind.js
var MatchKind;
(function(MatchKind2) {
MatchKind2[MatchKind2["None"] = 0] = "None";
MatchKind2[MatchKind2["Directory"] = 1] = "Directory";
MatchKind2[MatchKind2["File"] = 2] = "File";
MatchKind2[MatchKind2["All"] = 3] = "All";
(function(MatchKind3) {
MatchKind3[MatchKind3["None"] = 0] = "None";
MatchKind3[MatchKind3["Directory"] = 1] = "Directory";
MatchKind3[MatchKind3["File"] = 2] = "File";
MatchKind3[MatchKind3["All"] = 3] = "All";
})(MatchKind || (MatchKind = {}));
// node_modules/@actions/glob/lib/internal-pattern-helper.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern-helper.js
var IS_WINDOWS4 = process.platform === "win32";
function getSearchPaths(patterns) {
patterns = patterns.filter((x) => !x.negate);
@@ -29091,13 +29091,13 @@ function partialMatch(patterns, itemPath) {
return patterns.some((x) => !x.negate && x.partialMatch(itemPath));
}
// node_modules/@actions/glob/lib/internal-pattern.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.js
var os5 = __toESM(require("os"), 1);
var path6 = __toESM(require("path"), 1);
var import_assert4 = __toESM(require("assert"), 1);
var import_minimatch = __toESM(require_minimatch(), 1);
// node_modules/@actions/glob/lib/internal-path.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.js
var path5 = __toESM(require("path"), 1);
var import_assert3 = __toESM(require("assert"), 1);
var IS_WINDOWS5 = process.platform === "win32";
@@ -29159,7 +29159,7 @@ var Path = class {
}
};
// node_modules/@actions/glob/lib/internal-pattern.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.js
var { Minimatch } = import_minimatch.default;
var IS_WINDOWS6 = process.platform === "win32";
var Pattern = class _Pattern {
@@ -29320,15 +29320,15 @@ var Pattern = class _Pattern {
}
};
// node_modules/@actions/glob/lib/internal-search-state.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-search-state.js
var SearchState = class {
constructor(path12, level) {
this.path = path12;
constructor(path13, level) {
this.path = path13;
this.level = level;
}
};
// node_modules/@actions/glob/lib/internal-globber.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js
var __awaiter8 = function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve2) {
@@ -29431,10 +29431,10 @@ var DefaultGlobber = class _DefaultGlobber {
}
glob() {
return __awaiter8(this, void 0, void 0, function* () {
var _a, e_1, _b, _c;
var _a2, e_1, _b, _c;
const result = [];
try {
for (var _d = true, _e = __asyncValues(this.globGenerator()), _f; _f = yield _e.next(), _a = _f.done, !_a; _d = true) {
for (var _d = true, _e = __asyncValues(this.globGenerator()), _f; _f = yield _e.next(), _a2 = _f.done, !_a2; _d = true) {
_c = _f.value;
_d = false;
const itemPath = _c;
@@ -29444,7 +29444,7 @@ var DefaultGlobber = class _DefaultGlobber {
e_1 = { error: e_1_1 };
} finally {
try {
if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
if (!_d && !_a2 && (_b = _e.return)) yield _b.call(_e);
} finally {
if (e_1) throw e_1.error;
}
@@ -29478,9 +29478,9 @@ var DefaultGlobber = class _DefaultGlobber {
const traversalChain = [];
while (stack.length) {
const item = stack.pop();
const match2 = match(patterns, item.path);
const partialMatch2 = !!match2 || partialMatch(patterns, item.path);
if (!match2 && !partialMatch2) {
const match4 = match(patterns, item.path);
const partialMatch3 = !!match4 || partialMatch(patterns, item.path);
if (!match4 && !partialMatch3) {
continue;
}
const stats = yield __await(
@@ -29494,15 +29494,15 @@ var DefaultGlobber = class _DefaultGlobber {
continue;
}
if (stats.isDirectory()) {
if (match2 & MatchKind.Directory && options.matchDirectories) {
if (match4 & MatchKind.Directory && options.matchDirectories) {
yield yield __await(item.path);
} else if (!partialMatch2) {
} else if (!partialMatch3) {
continue;
}
const childLevel = item.level + 1;
const childItems = (yield __await(fs2.promises.readdir(item.path))).map((x) => new SearchState(path7.join(item.path, x), childLevel));
stack.push(...childItems.reverse());
} else if (match2 & MatchKind.File) {
} else if (match4 & MatchKind.File) {
yield yield __await(item.path);
}
}
@@ -29565,7 +29565,7 @@ var DefaultGlobber = class _DefaultGlobber {
}
};
// node_modules/@actions/glob/lib/glob.js
// node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.js
var __awaiter9 = function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve2) {
@@ -29681,11 +29681,11 @@ var __asyncValues2 = function(o) {
var versionSalt = "1.0";
function createTempDirectory() {
return __awaiter10(this, void 0, void 0, function* () {
const IS_WINDOWS9 = process.platform === "win32";
const IS_WINDOWS14 = process.platform === "win32";
let tempDirectory = process.env["RUNNER_TEMP"] || "";
if (!tempDirectory) {
let baseLocation;
if (IS_WINDOWS9) {
if (IS_WINDOWS14) {
baseLocation = process.env["USERPROFILE"] || "C:\\";
} else {
if (process.platform === "darwin") {
@@ -29706,7 +29706,7 @@ function getArchiveFileSizeInBytes(filePath) {
}
function resolvePaths(patterns) {
return __awaiter10(this, void 0, void 0, function* () {
var _a, e_1, _b, _c;
var _a2, e_1, _b, _c;
var _d;
const paths = [];
const workspace = (_d = process.env["GITHUB_WORKSPACE"]) !== null && _d !== void 0 ? _d : process.cwd();
@@ -29714,7 +29714,7 @@ function resolvePaths(patterns) {
implicitDescendants: false
});
try {
for (var _e = true, _f = __asyncValues2(globber.globGenerator()), _g; _g = yield _f.next(), _a = _g.done, !_a; _e = true) {
for (var _e = true, _f = __asyncValues2(globber.globGenerator()), _g; _g = yield _f.next(), _a2 = _g.done, !_a2; _e = true) {
_c = _g.value;
_e = false;
const file = _c;
@@ -29730,7 +29730,7 @@ function resolvePaths(patterns) {
e_1 = { error: e_1_1 };
} finally {
try {
if (!_e && !_a && (_b = _f.return)) yield _b.call(_f);
if (!_e && !_a2 && (_b = _f.return)) yield _b.call(_f);
} finally {
if (e_1) throw e_1.error;
}
@@ -32519,10 +32519,10 @@ function parseChallenges(challenges) {
const challengeRegex = /(\w+)\s+((?:\w+=(?:"[^"]*"|[^,]*),?\s*)+)/g;
const paramRegex = /(\w+)="([^"]*)"/g;
const parsedChallenges = [];
let match2;
while ((match2 = challengeRegex.exec(challenges)) !== null) {
const scheme = match2[1];
const paramsString = match2[2];
let match4;
while ((match4 = challengeRegex.exec(challenges)) !== null) {
const scheme = match4[1];
const paramsString = match4[2];
const params = {};
let paramMatch;
while ((paramMatch = paramRegex.exec(paramsString)) !== null) {
@@ -32658,7 +32658,7 @@ var SerializerImpl = class {
throw new Error(`"${objectName}" with value "${value}" should satisfy the constraint "${constraintName}": ${constraintValue}.`);
};
if (mapper.constraints && value !== void 0 && value !== null) {
const { ExclusiveMaximum, ExclusiveMinimum, InclusiveMaximum, InclusiveMinimum, MaxItems, MaxLength, MinItems, MinLength, MultipleOf, Pattern: Pattern2, UniqueItems } = mapper.constraints;
const { ExclusiveMaximum, ExclusiveMinimum, InclusiveMaximum, InclusiveMinimum, MaxItems, MaxLength, MinItems, MinLength, MultipleOf, Pattern: Pattern3, UniqueItems } = mapper.constraints;
if (ExclusiveMaximum !== void 0 && value >= ExclusiveMaximum) {
failValidation("ExclusiveMaximum", ExclusiveMaximum);
}
@@ -32686,10 +32686,10 @@ var SerializerImpl = class {
if (MultipleOf !== void 0 && value % MultipleOf !== 0) {
failValidation("MultipleOf", MultipleOf);
}
if (Pattern2) {
const pattern = typeof Pattern2 === "string" ? new RegExp(Pattern2) : Pattern2;
if (Pattern3) {
const pattern = typeof Pattern3 === "string" ? new RegExp(Pattern3) : Pattern3;
if (typeof value !== "string" || value.match(pattern) === null) {
failValidation("Pattern", Pattern2);
failValidation("Pattern", Pattern3);
}
}
if (UniqueItems && value.some((item, i, ar) => ar.indexOf(item) !== i)) {
@@ -33826,15 +33826,15 @@ function getRequestUrl(baseUri, operationSpec, operationArguments, fallbackObjec
let isAbsolutePath = false;
let requestUrl = replaceAll(baseUri, urlReplacements);
if (operationSpec.path) {
let path12 = replaceAll(operationSpec.path, urlReplacements);
if (operationSpec.path === "/{nextLink}" && path12.startsWith("/")) {
path12 = path12.substring(1);
let path13 = replaceAll(operationSpec.path, urlReplacements);
if (operationSpec.path === "/{nextLink}" && path13.startsWith("/")) {
path13 = path13.substring(1);
}
if (isAbsoluteUrl(path12)) {
requestUrl = path12;
if (isAbsoluteUrl(path13)) {
requestUrl = path13;
isAbsolutePath = true;
} else {
requestUrl = appendPath(requestUrl, path12);
requestUrl = appendPath(requestUrl, path13);
}
}
const { queryParams, sequenceParams } = calculateQueryParameters(operationSpec, operationArguments, fallbackObject);
@@ -33880,9 +33880,9 @@ function appendPath(url2, pathToAppend) {
}
const searchStart = pathToAppend.indexOf("?");
if (searchStart !== -1) {
const path12 = pathToAppend.substring(0, searchStart);
const path13 = pathToAppend.substring(0, searchStart);
const search = pathToAppend.substring(searchStart + 1);
newPath = newPath + path12;
newPath = newPath + path13;
if (search) {
parsedUrl.search = parsedUrl.search ? `${parsedUrl.search}&${search}` : search;
}
@@ -34625,22 +34625,22 @@ var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*";
var regexName = new RegExp("^" + nameRegexp + "$");
function getAllMatches(string, regex) {
const matches = [];
let match2 = regex.exec(string);
while (match2) {
let match4 = regex.exec(string);
while (match4) {
const allmatches = [];
allmatches.startIndex = regex.lastIndex - match2[0].length;
const len = match2.length;
allmatches.startIndex = regex.lastIndex - match4[0].length;
const len = match4.length;
for (let index = 0; index < len; index++) {
allmatches.push(match2[index]);
allmatches.push(match4[index]);
}
matches.push(allmatches);
match2 = regex.exec(string);
match4 = regex.exec(string);
}
return matches;
}
var isName = function(string) {
const match2 = regexName.exec(string);
return !(match2 === null || typeof match2 === "undefined");
const match4 = regexName.exec(string);
return !(match4 === null || typeof match4 === "undefined");
};
function isExist(v) {
return typeof v !== "undefined";
@@ -34961,8 +34961,8 @@ function getLineNumberForPosition(xmlData, index) {
col: lines[lines.length - 1].length + 1
};
}
function getPositionFromMatch(match2) {
return match2.startIndex + match2[1].length;
function getPositionFromMatch(match4) {
return match4.startIndex + match4[1].length;
}
// node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
@@ -35433,11 +35433,11 @@ function toNumber(str, options = {}) {
} else if (trimmedStr.includes("e") || trimmedStr.includes("E")) {
return resolveEnotation(str, trimmedStr, options);
} else {
const match2 = numRegex.exec(trimmedStr);
if (match2) {
const sign = match2[1] || "";
const leadingZeros = match2[2];
let numTrimmedByZeros = trimZeros(match2[3]);
const match4 = numRegex.exec(trimmedStr);
if (match4) {
const sign = match4[1] || "";
const leadingZeros = match4[2];
let numTrimmedByZeros = trimZeros(match4[3]);
const decimalAdjacentToLeadingZeros = sign ? (
// 0., -00., 000.
str[leadingZeros.length + 1] === "."
@@ -35853,13 +35853,13 @@ var Matcher = class {
* @returns {string}
*/
toString(separator, includeNamespace = true) {
const sep7 = separator || this.separator;
const sep8 = separator || this.separator;
return this.path.map((n) => {
if (includeNamespace && n.namespace) {
return `${n.namespace}:${n.tag}`;
}
return n.tag;
}).join(sep7);
}).join(sep8);
}
/**
* Get path as array of tag names
@@ -37479,17 +37479,17 @@ var XML_CHARKEY2 = "_";
// node_modules/@azure/core-xml/dist/esm/xml.js
function getCommonOptions(options) {
var _a;
var _a2;
return {
attributesGroupName: XML_ATTRKEY2,
textNodeName: (_a = options.xmlCharKey) !== null && _a !== void 0 ? _a : XML_CHARKEY2,
textNodeName: (_a2 = options.xmlCharKey) !== null && _a2 !== void 0 ? _a2 : XML_CHARKEY2,
ignoreAttributes: false,
suppressBooleanAttributes: false
};
}
function getSerializerOptions(options = {}) {
var _a, _b;
return Object.assign(Object.assign({}, getCommonOptions(options)), { attributeNamePrefix: "@_", format: true, suppressEmptyNode: true, indentBy: "", rootNodeName: (_a = options.rootName) !== null && _a !== void 0 ? _a : "root", cdataPropName: (_b = options.cdataPropName) !== null && _b !== void 0 ? _b : "__cdata" });
var _a2, _b;
return Object.assign(Object.assign({}, getCommonOptions(options)), { attributeNamePrefix: "@_", format: true, suppressEmptyNode: true, indentBy: "", rootNodeName: (_a2 = options.rootName) !== null && _a2 !== void 0 ? _a2 : "root", cdataPropName: (_b = options.cdataPropName) !== null && _b !== void 0 ? _b : "__cdata" });
}
function getParserOptions(options = {}) {
return Object.assign(Object.assign({}, getCommonOptions(options)), { parseAttributeValue: false, parseTagValue: false, attributeNamePrefix: "", stopNodes: options.stopNodes, processEntities: true, trimValues: false });
@@ -38724,9 +38724,9 @@ var StorageSharedKeyCredentialPolicy = class extends CredentialPolicy {
* @param request -
*/
getCanonicalizedResourceString(request) {
const path12 = getURLPath(request.url) || "/";
const path13 = getURLPath(request.url) || "/";
let canonicalizedResourceString = "";
canonicalizedResourceString += `/${this.factory.accountName}${path12}`;
canonicalizedResourceString += `/${this.factory.accountName}${path13}`;
const queries = getURLQueries(request.url);
const lowercaseQueries = {};
if (queries) {
@@ -39216,9 +39216,9 @@ function storageSharedKeyCredentialPolicy(options) {
return canonicalizedHeadersStringToSign;
}
function getCanonicalizedResourceString(request) {
const path12 = getURLPath(request.url) || "/";
const path13 = getURLPath(request.url) || "/";
let canonicalizedResourceString = "";
canonicalizedResourceString += `/${options.accountName}${path12}`;
canonicalizedResourceString += `/${options.accountName}${path13}`;
const queries = getURLQueries(request.url);
const lowercaseQueries = {};
if (queries) {
@@ -52117,8 +52117,8 @@ var PageBlobImpl = class {
* aligned and range-end is required.
* @param options The options parameters.
*/
uploadPagesFromURL(sourceUrl2, sourceRange2, contentLength2, range2, options) {
return this.client.sendOperationRequest({ sourceUrl: sourceUrl2, sourceRange: sourceRange2, contentLength: contentLength2, range: range2, options }, uploadPagesFromURLOperationSpec);
uploadPagesFromURL(sourceUrl2, sourceRange2, contentLength2, range3, options) {
return this.client.sendOperationRequest({ sourceUrl: sourceUrl2, sourceRange: sourceRange2, contentLength: contentLength2, range: range3, options }, uploadPagesFromURLOperationSpec);
}
/**
* The Get Page Ranges operation returns the list of valid page ranges for a page blob or snapshot of a
@@ -53114,13 +53114,13 @@ var StorageClient = class extends ExtendedServiceClient {
if (!options) {
options = {};
}
const defaults = {
const defaults2 = {
requestContentType: "application/json; charset=utf-8"
};
const packageDetails = `azsdk-js-azure-storage-blob/12.30.0`;
const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` : `${packageDetails}`;
const optionsWithDefaults = {
...defaults,
...defaults2,
...options,
userAgentOptions: {
userAgentPrefix
@@ -53159,10 +53159,10 @@ var StorageContextClient = class extends StorageClient {
// node_modules/@azure/storage-blob/dist/esm/utils/utils.common.js
function escapeURLPath(url2) {
const urlParsed = new URL(url2);
let path12 = urlParsed.pathname;
path12 = path12 || "/";
path12 = escape(path12);
urlParsed.pathname = path12;
let path13 = urlParsed.pathname;
path13 = path13 || "/";
path13 = escape(path13);
urlParsed.pathname = path13;
return urlParsed.toString();
}
function getProxyUriFromDevConnString(connectionString) {
@@ -53247,9 +53247,9 @@ function escape(text) {
}
function appendToURLPath(url2, name) {
const urlParsed = new URL(url2);
let path12 = urlParsed.pathname;
path12 = path12 ? path12.endsWith("/") ? `${path12}${name}` : `${path12}/${name}` : name;
urlParsed.pathname = path12;
let path13 = urlParsed.pathname;
path13 = path13 ? path13.endsWith("/") ? `${path13}${name}` : `${path13}/${name}` : name;
urlParsed.pathname = path13;
return urlParsed.toString();
}
function setURLParameter2(url2, name, value) {
@@ -55771,9 +55771,9 @@ var AvroEnumType = class extends AvroType {
};
var AvroUnionType = class extends AvroType {
_types;
constructor(types) {
constructor(types2) {
super();
this._types = types;
this._types = types2;
}
async read(stream, options = {}) {
const typeIndex = await AvroParser.readInt(stream, options);
@@ -59962,10 +59962,10 @@ var UploadProgress = class {
};
function uploadCacheArchiveSDK(signedUploadURL, archivePath, options) {
return __awaiter11(this, void 0, void 0, function* () {
var _a;
var _a2;
const blobClient = new BlobClient(signedUploadURL);
const blockBlobClient = blobClient.getBlockBlobClient();
const uploadProgress = new UploadProgress((_a = options === null || options === void 0 ? void 0 : options.archiveSizeBytes) !== null && _a !== void 0 ? _a : 0);
const uploadProgress = new UploadProgress((_a2 = options === null || options === void 0 ? void 0 : options.archiveSizeBytes) !== null && _a2 !== void 0 ? _a2 : 0);
const uploadOptions = {
blockSize: options === null || options === void 0 ? void 0 : options.uploadChunkSize,
concurrency: options === null || options === void 0 ? void 0 : options.uploadConcurrency,
@@ -60156,6 +60156,15 @@ function getCacheServiceVersion() {
return "v1";
return process.env["ACTIONS_CACHE_SERVICE_V2"] ? "v2" : "v1";
}
var KNOWN_CACHE_MODES = ["none", "read", "write", "write-only"];
function getCacheMode() {
return (process.env["ACTIONS_CACHE_MODE"] || "").trim().toLowerCase();
}
function isCacheWritable(mode) {
if (!KNOWN_CACHE_MODES.includes(mode))
return true;
return mode === "write" || mode === "write-only";
}
function getCacheServiceURL() {
const version3 = getCacheServiceVersion();
switch (version3) {
@@ -61288,8 +61297,8 @@ function getCommands(compressionMethod_1, type_1) {
});
}
function getWorkingDirectory() {
var _a;
return (_a = process.env["GITHUB_WORKSPACE"]) !== null && _a !== void 0 ? _a : process.cwd();
var _a2;
return (_a2 = process.env["GITHUB_WORKSPACE"]) !== null && _a2 !== void 0 ? _a2 : process.cwd();
}
function getDecompressionProgram(tarPath, compressionMethod, archivePath) {
return __awaiter15(this, void 0, void 0, function* () {
@@ -61445,6 +61454,12 @@ function saveCache2(paths_1, key_1, options_1) {
debug(`Cache service version: ${cacheServiceVersion}`);
checkPaths(paths);
checkKey(key);
const cacheMode = getCacheMode();
if (!isCacheWritable(cacheMode)) {
info(`Cache save skipped: the effective cache-mode '${cacheMode}' does not permit writes.`);
debug(`Skipped save for paths [${paths.join(", ")}] with key '${key}'.`);
return -1;
}
switch (cacheServiceVersion) {
case "v2":
return yield saveCacheV2(paths, key, options, enableCrossOsArchive);
@@ -61456,7 +61471,7 @@ function saveCache2(paths_1, key_1, options_1) {
}
function saveCacheV1(paths_1, key_1, options_1) {
return __awaiter16(this, arguments, void 0, function* (paths, key, options, enableCrossOsArchive = false) {
var _a, _b, _c, _d, _e, _f;
var _a2, _b, _c, _d, _e, _f;
const compressionMethod = yield getCompressionMethod();
let cacheId = -1;
const cachePaths = yield resolvePaths(paths);
@@ -61485,7 +61500,7 @@ function saveCacheV1(paths_1, key_1, options_1) {
enableCrossOsArchive,
cacheSize: archiveFileSize
});
if ((_a = reserveCacheResponse === null || reserveCacheResponse === void 0 ? void 0 : reserveCacheResponse.result) === null || _a === void 0 ? void 0 : _a.cacheId) {
if ((_a2 = reserveCacheResponse === null || reserveCacheResponse === void 0 ? void 0 : reserveCacheResponse.result) === null || _a2 === void 0 ? void 0 : _a2.cacheId) {
cacheId = (_b = reserveCacheResponse === null || reserveCacheResponse === void 0 ? void 0 : reserveCacheResponse.result) === null || _b === void 0 ? void 0 : _b.cacheId;
} else if ((reserveCacheResponse === null || reserveCacheResponse === void 0 ? void 0 : reserveCacheResponse.statusCode) === 400) {
throw new Error((_d = (_c = reserveCacheResponse === null || reserveCacheResponse === void 0 ? void 0 : reserveCacheResponse.error) === null || _c === void 0 ? void 0 : _c.message) !== null && _d !== void 0 ? _d : `Cache size of ~${Math.round(archiveFileSize / (1024 * 1024))} MB (${archiveFileSize} B) is over the data cap limit, not saving cache.`);
@@ -61502,8 +61517,6 @@ function saveCacheV1(paths_1, key_1, options_1) {
const typedError = error2;
if (typedError.name === ValidationError.name) {
throw error2;
} else if (typedError.name === CacheWriteDeniedError.name) {
warning(`Failed to save: ${typedError.message}`);
} else if (typedError.name === ReserveCacheError.name) {
info(`Failed to save: ${typedError.message}`);
} else {
@@ -61525,7 +61538,7 @@ function saveCacheV1(paths_1, key_1, options_1) {
}
function saveCacheV2(paths_1, key_1, options_1) {
return __awaiter16(this, arguments, void 0, function* (paths, key, options, enableCrossOsArchive = false) {
var _a;
var _a2;
options = Object.assign(Object.assign({}, options), { uploadChunkSize: 64 * 1024 * 1024, uploadConcurrency: 8, useAzureSdk: true });
const compressionMethod = yield getCompressionMethod();
const twirpClient = internalCacheTwirpClient();
@@ -61565,7 +61578,7 @@ function saveCacheV2(paths_1, key_1, options_1) {
signedUploadUrl = response.signedUploadUrl;
} catch (error2) {
debug(`Failed to reserve cache: ${error2}`);
const errorMessage = (_a = error2 === null || error2 === void 0 ? void 0 : error2.message) !== null && _a !== void 0 ? _a : "";
const errorMessage = (_a2 = error2 === null || error2 === void 0 ? void 0 : error2.message) !== null && _a2 !== void 0 ? _a2 : "";
if (errorMessage.startsWith(CACHE_WRITE_DENIED_PREFIX)) {
throw new CacheWriteDeniedError(`Unable to reserve cache with key ${key}. More details: ${errorMessage}`);
}
@@ -61591,8 +61604,6 @@ function saveCacheV2(paths_1, key_1, options_1) {
const typedError = error2;
if (typedError.name === ValidationError.name) {
throw error2;
} else if (typedError.name === CacheWriteDeniedError.name) {
warning(`Failed to save: ${typedError.message}`);
} else if (typedError.name === ReserveCacheError.name) {
info(`Failed to save: ${typedError.message}`);
} else if (typedError.name === FinalizeCacheError.name) {
@@ -61809,6 +61820,1885 @@ var RANGE_PATTERN = [
].join("");
var rangeRegex = new RegExp("^" + RANGE_PATTERN + "$", "i");
// node_modules/@actions/glob/lib/internal-path-helper.js
var IS_WINDOWS9 = process.platform === "win32";
// node_modules/@actions/glob/lib/internal-match-kind.js
var MatchKind2;
(function(MatchKind3) {
MatchKind3[MatchKind3["None"] = 0] = "None";
MatchKind3[MatchKind3["Directory"] = 1] = "Directory";
MatchKind3[MatchKind3["File"] = 2] = "File";
MatchKind3[MatchKind3["All"] = 3] = "All";
})(MatchKind2 || (MatchKind2 = {}));
// node_modules/@actions/glob/lib/internal-pattern-helper.js
var IS_WINDOWS10 = process.platform === "win32";
// node_modules/@actions/glob/node_modules/balanced-match/dist/esm/index.js
var balanced = (a, b, str) => {
const ma = a instanceof RegExp ? maybeMatch(a, str) : a;
const mb = b instanceof RegExp ? maybeMatch(b, str) : b;
const r = ma !== null && mb != null && range2(ma, mb, str);
return r && {
start: r[0],
end: r[1],
pre: str.slice(0, r[0]),
body: str.slice(r[0] + ma.length, r[1]),
post: str.slice(r[1] + mb.length)
};
};
var maybeMatch = (reg, str) => {
const m = str.match(reg);
return m ? m[0] : null;
};
var range2 = (a, b, str) => {
let begs, beg, left, right = void 0, result;
let ai = str.indexOf(a);
let bi = str.indexOf(b, ai + 1);
let i = ai;
if (ai >= 0 && bi > 0) {
if (a === b) {
return [ai, bi];
}
begs = [];
left = str.length;
while (i >= 0 && !result) {
if (i === ai) {
begs.push(i);
ai = str.indexOf(a, i + 1);
} else if (begs.length === 1) {
const r = begs.pop();
if (r !== void 0)
result = [r, bi];
} else {
beg = begs.pop();
if (beg !== void 0 && beg < left) {
left = beg;
right = bi;
}
bi = str.indexOf(b, i + 1);
}
i = ai < bi && ai >= 0 ? ai : bi;
}
if (begs.length && right !== void 0) {
result = [left, right];
}
}
return result;
};
// node_modules/@actions/glob/node_modules/brace-expansion/dist/esm/index.js
var escSlash = "\0SLASH" + Math.random() + "\0";
var escOpen = "\0OPEN" + Math.random() + "\0";
var escClose = "\0CLOSE" + Math.random() + "\0";
var escComma = "\0COMMA" + Math.random() + "\0";
var escPeriod = "\0PERIOD" + Math.random() + "\0";
var escSlashPattern = new RegExp(escSlash, "g");
var escOpenPattern = new RegExp(escOpen, "g");
var escClosePattern = new RegExp(escClose, "g");
var escCommaPattern = new RegExp(escComma, "g");
var escPeriodPattern = new RegExp(escPeriod, "g");
var slashPattern = /\\\\/g;
var openPattern = /\\{/g;
var closePattern = /\\}/g;
var commaPattern = /\\,/g;
var periodPattern = /\\\./g;
var EXPANSION_MAX = 1e5;
var EXPANSION_MAX_LENGTH = 4e6;
function numeric(str) {
return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
}
function escapeBraces(str) {
return str.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod);
}
function unescapeBraces(str) {
return str.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, ".");
}
function parseCommaParts(str) {
if (!str) {
return [""];
}
const parts = [];
const m = balanced("{", "}", str);
if (!m) {
return str.split(",");
}
const { pre, body: body2, post } = m;
const p = pre.split(",");
p[p.length - 1] += "{" + body2 + "}";
const postParts = parseCommaParts(post);
if (post.length) {
;
p[p.length - 1] += postParts.shift();
p.push.apply(p, postParts);
}
parts.push.apply(parts, p);
return parts;
}
function expand(str, options = {}) {
if (!str) {
return [];
}
const { max = EXPANSION_MAX, maxLength = EXPANSION_MAX_LENGTH } = options;
if (str.slice(0, 2) === "{}") {
str = "\\{\\}" + str.slice(2);
}
return expand_(escapeBraces(str), max, maxLength, true).map(unescapeBraces);
}
function embrace(str) {
return "{" + str + "}";
}
function isPadded(el) {
return /^-?0\d/.test(el);
}
function lte(i, y) {
return i <= y;
}
function gte(i, y) {
return i >= y;
}
function combine(acc, pre, values, max, maxLength, dropEmpties) {
const out = [];
let length = 0;
for (let a = 0; a < acc.length; a++) {
for (let v = 0; v < values.length; v++) {
if (out.length >= max)
return out;
const expansion = acc[a] + pre + values[v];
if (dropEmpties && !expansion)
continue;
if (length + expansion.length > maxLength)
return out;
out.push(expansion);
length += expansion.length;
}
}
return out;
}
function expandSequence(body2, isAlphaSequence, max, maxLength) {
const n = body2.split(/\.\./);
const N = [];
if (n[0] === void 0 || n[1] === void 0) {
return N;
}
const x = numeric(n[0]);
const y = numeric(n[1]);
const width = Math.max(n[0].length, n[1].length);
let incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1;
let test = lte;
const reverse = y < x;
if (reverse) {
incr *= -1;
test = gte;
}
const pad = n.some(isPadded);
let length = 0;
for (let i = x; test(i, y) && N.length < max; i += incr) {
let c;
if (isAlphaSequence) {
c = String.fromCharCode(i);
if (c === "\\") {
c = "";
}
} else {
c = String(i);
if (pad) {
const need = width - c.length;
if (need > 0) {
const z = new Array(need + 1).join("0");
if (i < 0) {
c = "-" + z + c.slice(1);
} else {
c = z + c;
}
}
}
}
if (length + c.length > maxLength)
break;
N.push(c);
length += c.length;
}
return N;
}
function expand_(str, max, maxLength, isTop) {
let acc = [""];
let dropEmpties = false;
let firstGroup = true;
for (; ; ) {
const m = balanced("{", "}", str);
if (!m) {
return combine(acc, str, [""], max, maxLength, dropEmpties);
}
const pre = m.pre;
if (/\$$/.test(pre)) {
acc = combine(acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length);
firstGroup = false;
if (!m.post.length)
break;
str = m.post;
continue;
}
const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
const isSequence = isNumericSequence || isAlphaSequence;
const isOptions = m.body.indexOf(",") >= 0;
if (!isSequence && !isOptions) {
if (m.post.match(/,(?!,).*\}/)) {
str = m.pre + "{" + m.body + escClose + m.post;
isTop = true;
continue;
}
return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties);
}
if (firstGroup) {
dropEmpties = isTop && !isSequence;
firstGroup = false;
}
let values;
if (isSequence) {
values = expandSequence(m.body, isAlphaSequence, max, maxLength);
} else {
let n = parseCommaParts(m.body);
if (n.length === 1 && n[0] !== void 0) {
n = expand_(n[0], max, maxLength, false).map(embrace);
if (n.length === 1) {
acc = combine(acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length);
if (!m.post.length)
break;
str = m.post;
continue;
}
}
let dropsEmpties = dropEmpties && !m.post.length && !pre;
for (let d = 0; dropsEmpties && d < acc.length; d++) {
if (acc[d]) {
dropsEmpties = false;
}
}
values = [];
let valuesLength = 0;
outer: for (let j = 0; j < n.length; j++) {
const expanded = expand_(n[j], max, maxLength, false);
for (let k = 0; k < expanded.length; k++) {
const v = expanded[k];
if (dropsEmpties && !v)
continue;
if (values.length >= max || valuesLength + v.length > maxLength) {
break outer;
}
values.push(v);
valuesLength += v.length;
}
}
}
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
if (!m.post.length)
break;
str = m.post;
}
return acc;
}
// node_modules/@actions/glob/node_modules/minimatch/dist/esm/assert-valid-pattern.js
var MAX_PATTERN_LENGTH = 1024 * 64;
var assertValidPattern = (pattern) => {
if (typeof pattern !== "string") {
throw new TypeError("invalid pattern");
}
if (pattern.length > MAX_PATTERN_LENGTH) {
throw new TypeError("pattern is too long");
}
};
// node_modules/@actions/glob/node_modules/minimatch/dist/esm/brace-expressions.js
var posixClasses = {
"[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
"[:alpha:]": ["\\p{L}\\p{Nl}", true],
"[:ascii:]": ["\\x00-\\x7f", false],
"[:blank:]": ["\\p{Zs}\\t", true],
"[:cntrl:]": ["\\p{Cc}", true],
"[:digit:]": ["\\p{Nd}", true],
"[:graph:]": ["\\p{Z}\\p{C}", true, true],
"[:lower:]": ["\\p{Ll}", true],
"[:print:]": ["\\p{C}", true],
"[:punct:]": ["\\p{P}", true],
"[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
"[:upper:]": ["\\p{Lu}", true],
"[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
"[:xdigit:]": ["A-Fa-f0-9", false]
};
var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
var rangesToString = (ranges) => ranges.join("");
var parseClass = (glob, position) => {
const pos = position;
if (glob.charAt(pos) !== "[") {
throw new Error("not in a brace expression");
}
const ranges = [];
const negs = [];
let i = pos + 1;
let sawStart = false;
let uflag = false;
let escaping = false;
let negate = false;
let endPos = pos;
let rangeStart = "";
WHILE: while (i < glob.length) {
const c = glob.charAt(i);
if ((c === "!" || c === "^") && i === pos + 1) {
negate = true;
i++;
continue;
}
if (c === "]" && sawStart && !escaping) {
endPos = i + 1;
break;
}
sawStart = true;
if (c === "\\") {
if (!escaping) {
escaping = true;
i++;
continue;
}
}
if (c === "[" && !escaping) {
for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
if (glob.startsWith(cls, i)) {
if (rangeStart) {
return ["$.", false, glob.length - pos, true];
}
i += cls.length;
if (neg)
negs.push(unip);
else
ranges.push(unip);
uflag = uflag || u;
continue WHILE;
}
}
}
escaping = false;
if (rangeStart) {
if (c > rangeStart) {
ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c));
} else if (c === rangeStart) {
ranges.push(braceEscape(c));
}
rangeStart = "";
i++;
continue;
}
if (glob.startsWith("-]", i + 1)) {
ranges.push(braceEscape(c + "-"));
i += 2;
continue;
}
if (glob.startsWith("-", i + 1)) {
rangeStart = c;
i += 2;
continue;
}
ranges.push(braceEscape(c));
i++;
}
if (endPos < i) {
return ["", false, 0, false];
}
if (!ranges.length && !negs.length) {
return ["$.", false, glob.length - pos, true];
}
if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
return [regexpEscape(r), false, endPos - pos, false];
}
const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
return [comb, uflag, endPos - pos, true];
};
// node_modules/@actions/glob/node_modules/minimatch/dist/esm/unescape.js
var unescape = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
if (magicalBraces) {
return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1");
}
return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1");
};
// node_modules/@actions/glob/node_modules/minimatch/dist/esm/ast.js
var _a;
var types = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
var isExtglobType = (c) => types.has(c);
var isExtglobAST = (c) => isExtglobType(c.type);
var adoptionMap = /* @__PURE__ */ new Map([
["!", ["@"]],
["?", ["?", "@"]],
["@", ["@"]],
["*", ["*", "+", "?", "@"]],
["+", ["+", "@"]]
]);
var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
["!", ["?"]],
["@", ["?"]],
["+", ["?", "*"]]
]);
var adoptionAnyMap = /* @__PURE__ */ new Map([
["!", ["?", "@"]],
["?", ["?", "@"]],
["@", ["?", "@"]],
["*", ["*", "+", "?", "@"]],
["+", ["+", "@", "?", "*"]]
]);
var usurpMap = /* @__PURE__ */ new Map([
["!", /* @__PURE__ */ new Map([["!", "@"]])],
[
"?",
/* @__PURE__ */ new Map([
["*", "*"],
["+", "*"]
])
],
[
"@",
/* @__PURE__ */ new Map([
["!", "!"],
["?", "?"],
["@", "@"],
["*", "*"],
["+", "+"]
])
],
[
"+",
/* @__PURE__ */ new Map([
["?", "*"],
["*", "*"]
])
]
]);
var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
var startNoDot = "(?!\\.)";
var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
var justDots = /* @__PURE__ */ new Set(["..", "."]);
var reSpecials = new Set("().*{}+?[]^$\\!");
var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
var qmark = "[^/]";
var star = qmark + "*?";
var starNoEmpty = qmark + "+?";
var ID = 0;
var AST = class {
type;
#root;
#hasMagic;
#uflag = false;
#parts = [];
#parent;
#parentIndex;
#negs;
#filledNegs = false;
#options;
#toString;
// set to true if it's an extglob with no children
// (which really means one child of '')
#emptyExt = false;
id = ++ID;
get depth() {
return (this.#parent?.depth ?? -1) + 1;
}
[/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() {
return {
"@@type": "AST",
id: this.id,
type: this.type,
root: this.#root.id,
parent: this.#parent?.id,
depth: this.depth,
partsLength: this.#parts.length,
parts: this.#parts
};
}
constructor(type, parent, options = {}) {
this.type = type;
if (type)
this.#hasMagic = true;
this.#parent = parent;
this.#root = this.#parent ? this.#parent.#root : this;
this.#options = this.#root === this ? options : this.#root.#options;
this.#negs = this.#root === this ? [] : this.#root.#negs;
if (type === "!" && !this.#root.#filledNegs)
this.#negs.push(this);
this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0;
}
get hasMagic() {
if (this.#hasMagic !== void 0)
return this.#hasMagic;
for (const p of this.#parts) {
if (typeof p === "string")
continue;
if (p.type || p.hasMagic)
return this.#hasMagic = true;
}
return this.#hasMagic;
}
// reconstructs the pattern
toString() {
return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")";
}
#fillNegs() {
if (this !== this.#root)
throw new Error("should only call on root");
if (this.#filledNegs)
return this;
this.toString();
this.#filledNegs = true;
let n;
while (n = this.#negs.pop()) {
if (n.type !== "!")
continue;
let p = n;
let pp = p.#parent;
while (pp) {
for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) {
for (const part of n.#parts) {
if (typeof part === "string") {
throw new Error("string part in extglob AST??");
}
part.copyIn(pp.#parts[i]);
}
}
p = pp;
pp = p.#parent;
}
}
return this;
}
push(...parts) {
for (const p of parts) {
if (p === "")
continue;
if (typeof p !== "string" && !(p instanceof _a && p.#parent === this)) {
throw new Error("invalid part: " + p);
}
this.#parts.push(p);
}
}
toJSON() {
const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())];
if (this.isStart() && !this.type)
ret.unshift([]);
if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) {
ret.push({});
}
return ret;
}
isStart() {
if (this.#root === this)
return true;
if (!this.#parent?.isStart())
return false;
if (this.#parentIndex === 0)
return true;
const p = this.#parent;
for (let i = 0; i < this.#parentIndex; i++) {
const pp = p.#parts[i];
if (!(pp instanceof _a && pp.type === "!")) {
return false;
}
}
return true;
}
isEnd() {
if (this.#root === this)
return true;
if (this.#parent?.type === "!")
return true;
if (!this.#parent?.isEnd())
return false;
if (!this.type)
return this.#parent?.isEnd();
const pl = this.#parent ? this.#parent.#parts.length : 0;
return this.#parentIndex === pl - 1;
}
copyIn(part) {
if (typeof part === "string")
this.push(part);
else
this.push(part.clone(this));
}
clone(parent) {
const c = new _a(this.type, parent);
for (const p of this.#parts) {
c.copyIn(p);
}
return c;
}
static #parseAST(str, ast, pos, opt, extDepth) {
const maxDepth = opt.maxExtglobRecursion ?? 2;
let escaping = false;
let inBrace = false;
let braceStart = -1;
let braceNeg = false;
if (ast.type === null) {
let i2 = pos;
let acc2 = "";
while (i2 < str.length) {
const c = str.charAt(i2++);
if (escaping || c === "\\") {
escaping = !escaping;
acc2 += c;
continue;
}
if (inBrace) {
if (i2 === braceStart + 1) {
if (c === "^" || c === "!") {
braceNeg = true;
}
} else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) {
inBrace = false;
}
acc2 += c;
continue;
} else if (c === "[") {
inBrace = true;
braceStart = i2;
braceNeg = false;
acc2 += c;
continue;
}
const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
if (doRecurse) {
ast.push(acc2);
acc2 = "";
const ext2 = new _a(c, ast);
i2 = _a.#parseAST(str, ext2, i2, opt, extDepth + 1);
ast.push(ext2);
continue;
}
acc2 += c;
}
ast.push(acc2);
return i2;
}
let i = pos + 1;
let part = new _a(null, ast);
const parts = [];
let acc = "";
while (i < str.length) {
const c = str.charAt(i++);
if (escaping || c === "\\") {
escaping = !escaping;
acc += c;
continue;
}
if (inBrace) {
if (i === braceStart + 1) {
if (c === "^" || c === "!") {
braceNeg = true;
}
} else if (c === "]" && !(i === braceStart + 2 && braceNeg)) {
inBrace = false;
}
acc += c;
continue;
} else if (c === "[") {
inBrace = true;
braceStart = i;
braceNeg = false;
acc += c;
continue;
}
const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
(extDepth <= maxDepth || ast && ast.#canAdoptType(c));
if (doRecurse) {
const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1;
part.push(acc);
acc = "";
const ext2 = new _a(c, part);
part.push(ext2);
i = _a.#parseAST(str, ext2, i, opt, extDepth + depthAdd);
continue;
}
if (c === "|") {
part.push(acc);
acc = "";
parts.push(part);
part = new _a(null, ast);
continue;
}
if (c === ")") {
if (acc === "" && ast.#parts.length === 0) {
ast.#emptyExt = true;
}
part.push(acc);
acc = "";
ast.push(...parts, part);
return i;
}
acc += c;
}
ast.type = null;
ast.#hasMagic = void 0;
ast.#parts = [str.substring(pos - 1)];
return i;
}
#canAdoptWithSpace(child2) {
return this.#canAdopt(child2, adoptionWithSpaceMap);
}
#canAdopt(child2, map = adoptionMap) {
if (!child2 || typeof child2 !== "object" || child2.type !== null || child2.#parts.length !== 1 || this.type === null) {
return false;
}
const gc = child2.#parts[0];
if (!gc || typeof gc !== "object" || gc.type === null) {
return false;
}
return this.#canAdoptType(gc.type, map);
}
#canAdoptType(c, map = adoptionAnyMap) {
return !!map.get(this.type)?.includes(c);
}
#adoptWithSpace(child2, index) {
const gc = child2.#parts[0];
const blank = new _a(null, gc, this.options);
blank.#parts.push("");
gc.push(blank);
this.#adopt(child2, index);
}
#adopt(child2, index) {
const gc = child2.#parts[0];
this.#parts.splice(index, 1, ...gc.#parts);
for (const p of gc.#parts) {
if (typeof p === "object")
p.#parent = this;
}
this.#toString = void 0;
}
#canUsurpType(c) {
const m = usurpMap.get(this.type);
return !!m?.has(c);
}
#canUsurp(child2) {
if (!child2 || typeof child2 !== "object" || child2.type !== null || child2.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) {
return false;
}
const gc = child2.#parts[0];
if (!gc || typeof gc !== "object" || gc.type === null) {
return false;
}
return this.#canUsurpType(gc.type);
}
#usurp(child2) {
const m = usurpMap.get(this.type);
const gc = child2.#parts[0];
const nt = m?.get(gc.type);
if (!nt)
return false;
this.#parts = gc.#parts;
for (const p of this.#parts) {
if (typeof p === "object") {
p.#parent = this;
}
}
this.type = nt;
this.#toString = void 0;
this.#emptyExt = false;
}
static fromGlob(pattern, options = {}) {
const ast = new _a(null, void 0, options);
_a.#parseAST(pattern, ast, 0, options, 0);
return ast;
}
// returns the regular expression if there's magic, or the unescaped
// string if not.
toMMPattern() {
if (this !== this.#root)
return this.#root.toMMPattern();
const glob = this.toString();
const [re, body2, hasMagic, uflag] = this.toRegExpSource();
const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob.toUpperCase() !== glob.toLowerCase();
if (!anyMagic) {
return body2;
}
const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : "");
return Object.assign(new RegExp(`^${re}$`, flags), {
_src: re,
_glob: glob
});
}
get options() {
return this.#options;
}
// returns the string match, the regexp source, whether there's magic
// in the regexp (so a regular expression is required) and whether or
// not the uflag is needed for the regular expression (for posix classes)
// TODO: instead of injecting the start/end at this point, just return
// the BODY of the regexp, along with the start/end portions suitable
// for binding the start/end in either a joined full-path makeRe context
// (where we bind to (^|/), or a standalone matchPart context (where
// we bind to ^, and not /). Otherwise slashes get duped!
//
// In part-matching mode, the start is:
// - if not isStart: nothing
// - if traversal possible, but not allowed: ^(?!\.\.?$)
// - if dots allowed or not possible: ^
// - if dots possible and not allowed: ^(?!\.)
// end is:
// - if not isEnd(): nothing
// - else: $
//
// In full-path matching mode, we put the slash at the START of the
// pattern, so start is:
// - if first pattern: same as part-matching mode
// - if not isStart(): nothing
// - if traversal possible, but not allowed: /(?!\.\.?(?:$|/))
// - if dots allowed or not possible: /
// - if dots possible and not allowed: /(?!\.)
// end is:
// - if last pattern, same as part-matching mode
// - else nothing
//
// Always put the (?:$|/) on negated tails, though, because that has to be
// there to bind the end of the negated pattern portion, and it's easier to
// just stick it in now rather than try to inject it later in the middle of
// the pattern.
//
// We can just always return the same end, and leave it up to the caller
// to know whether it's going to be used joined or in parts.
// And, if the start is adjusted slightly, can do the same there:
// - if not isStart: nothing
// - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$)
// - if dots allowed or not possible: (?:/|^)
// - if dots possible and not allowed: (?:/|^)(?!\.)
//
// But it's better to have a simpler binding without a conditional, for
// performance, so probably better to return both start options.
//
// Then the caller just ignores the end if it's not the first pattern,
// and the start always gets applied.
//
// But that's always going to be $ if it's the ending pattern, or nothing,
// so the caller can just attach $ at the end of the pattern when building.
//
// So the todo is:
// - better detect what kind of start is needed
// - return both flavors of starting pattern
// - attach $ at the end of the pattern when creating the actual RegExp
//
// Ah, but wait, no, that all only applies to the root when the first pattern
// is not an extglob. If the first pattern IS an extglob, then we need all
// that dot prevention biz to live in the extglob portions, because eg
// +(*|.x*) can match .xy but not .yx.
//
// So, return the two flavors if it's #root and the first child is not an
// AST, otherwise leave it to the child AST to handle it, and there,
// use the (?:^|/) style of start binding.
//
// Even simplified further:
// - Since the start for a join is eg /(?!\.) and the start for a part
// is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
// or start or whatever) and prepend ^ or / at the Regexp construction.
toRegExpSource(allowDot) {
const dot = allowDot ?? !!this.#options.dot;
if (this.#root === this) {
this.#flatten();
this.#fillNegs();
}
if (!isExtglobAST(this)) {
const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
const src = this.#parts.map((p) => {
const [re, _, hasMagic, uflag] = typeof p === "string" ? _a.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
this.#hasMagic = this.#hasMagic || hasMagic;
this.#uflag = this.#uflag || uflag;
return re;
}).join("");
let start2 = "";
if (this.isStart()) {
if (typeof this.#parts[0] === "string") {
const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]);
if (!dotTravAllowed) {
const aps = addPatternStart;
const needNoTrav = (
// dots are allowed, and the pattern starts with [ or .
dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or .
src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or .
src.startsWith("\\.\\.") && aps.has(src.charAt(4))
);
const needNoDot = !dot && !allowDot && aps.has(src.charAt(0));
start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : "";
}
}
}
let end = "";
if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") {
end = "(?:$|\\/)";
}
const final2 = start2 + src + end;
return [
final2,
unescape(src),
this.#hasMagic = !!this.#hasMagic,
this.#uflag
];
}
const repeated = this.type === "*" || this.type === "+";
const start = this.type === "!" ? "(?:(?!(?:" : "(?:";
let body2 = this.#partsToRegExp(dot);
if (this.isStart() && this.isEnd() && !body2 && this.type !== "!") {
const s = this.toString();
const me = this;
me.#parts = [s];
me.type = null;
me.#hasMagic = void 0;
return [s, unescape(this.toString()), false, false];
}
let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true);
if (bodyDotAllowed === body2) {
bodyDotAllowed = "";
}
if (bodyDotAllowed) {
body2 = `(?:${body2})(?:${bodyDotAllowed})*?`;
}
let final = "";
if (this.type === "!" && this.#emptyExt) {
final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty;
} else {
const close = this.type === "!" ? (
// !() must match something,but !(x) can match ''
"))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")"
) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`;
final = start + body2 + close;
}
return [
final,
unescape(body2),
this.#hasMagic = !!this.#hasMagic,
this.#uflag
];
}
#flatten() {
if (!isExtglobAST(this)) {
for (const p of this.#parts) {
if (typeof p === "object") {
p.#flatten();
}
}
} else {
let iterations = 0;
let done = false;
do {
done = true;
for (let i = 0; i < this.#parts.length; i++) {
const c = this.#parts[i];
if (typeof c === "object") {
c.#flatten();
if (this.#canAdopt(c)) {
done = false;
this.#adopt(c, i);
} else if (this.#canAdoptWithSpace(c)) {
done = false;
this.#adoptWithSpace(c, i);
} else if (this.#canUsurp(c)) {
done = false;
this.#usurp(c);
}
}
}
} while (!done && ++iterations < 10);
}
this.#toString = void 0;
}
#partsToRegExp(dot) {
return this.#parts.map((p) => {
if (typeof p === "string") {
throw new Error("string type in extglob ast??");
}
const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot);
this.#uflag = this.#uflag || uflag;
return re;
}).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|");
}
static #parseGlob(glob, hasMagic, noEmpty = false) {
let escaping = false;
let re = "";
let uflag = false;
let inStar = false;
for (let i = 0; i < glob.length; i++) {
const c = glob.charAt(i);
if (escaping) {
escaping = false;
re += (reSpecials.has(c) ? "\\" : "") + c;
continue;
}
if (c === "*") {
if (inStar)
continue;
inStar = true;
re += noEmpty && /^[*]+$/.test(glob) ? starNoEmpty : star;
hasMagic = true;
continue;
} else {
inStar = false;
}
if (c === "\\") {
if (i === glob.length - 1) {
re += "\\\\";
} else {
escaping = true;
}
continue;
}
if (c === "[") {
const [src, needUflag, consumed, magic] = parseClass(glob, i);
if (consumed) {
re += src;
uflag = uflag || needUflag;
i += consumed - 1;
hasMagic = hasMagic || magic;
continue;
}
}
if (c === "?") {
re += qmark;
hasMagic = true;
continue;
}
re += regExpEscape(c);
}
return [re, unescape(glob), !!hasMagic, uflag];
}
};
_a = AST;
// node_modules/@actions/glob/node_modules/minimatch/dist/esm/escape.js
var escape2 = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
if (magicalBraces) {
return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
}
return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
};
// node_modules/@actions/glob/node_modules/minimatch/dist/esm/index.js
var minimatch2 = (p, pattern, options = {}) => {
assertValidPattern(pattern);
if (!options.nocomment && pattern.charAt(0) === "#") {
return false;
}
return new Minimatch2(pattern, options).match(p);
};
var starDotExtRE = /^\*+([^+@!?*[(]*)$/;
var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
var starDotExtTestNocase = (ext2) => {
ext2 = ext2.toLowerCase();
return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
};
var starDotExtTestNocaseDot = (ext2) => {
ext2 = ext2.toLowerCase();
return (f) => f.toLowerCase().endsWith(ext2);
};
var starDotStarRE = /^\*+\.\*+$/;
var starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
var dotStarRE = /^\.\*+$/;
var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
var starRE = /^\*+$/;
var starTest = (f) => f.length !== 0 && !f.startsWith(".");
var starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
var qmarksRE = /^\?+([^+@!?*[(]*)?$/;
var qmarksTestNocase = ([$0, ext2 = ""]) => {
const noext = qmarksTestNoExt([$0]);
if (!ext2)
return noext;
ext2 = ext2.toLowerCase();
return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
};
var qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
const noext = qmarksTestNoExtDot([$0]);
if (!ext2)
return noext;
ext2 = ext2.toLowerCase();
return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
};
var qmarksTestDot = ([$0, ext2 = ""]) => {
const noext = qmarksTestNoExtDot([$0]);
return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
};
var qmarksTest = ([$0, ext2 = ""]) => {
const noext = qmarksTestNoExt([$0]);
return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
};
var qmarksTestNoExt = ([$0]) => {
const len = $0.length;
return (f) => f.length === len && !f.startsWith(".");
};
var qmarksTestNoExtDot = ([$0]) => {
const len = $0.length;
return (f) => f.length === len && f !== "." && f !== "..";
};
var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
var path11 = {
win32: { sep: "\\" },
posix: { sep: "/" }
};
var sep7 = defaultPlatform === "win32" ? path11.win32.sep : path11.posix.sep;
minimatch2.sep = sep7;
var GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
minimatch2.GLOBSTAR = GLOBSTAR;
var qmark2 = "[^/]";
var star2 = qmark2 + "*?";
var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
var filter2 = (pattern, options = {}) => (p) => minimatch2(p, pattern, options);
minimatch2.filter = filter2;
var ext = (a, b = {}) => Object.assign({}, a, b);
var defaults = (def) => {
if (!def || typeof def !== "object" || !Object.keys(def).length) {
return minimatch2;
}
const orig = minimatch2;
const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
return Object.assign(m, {
Minimatch: class Minimatch extends orig.Minimatch {
constructor(pattern, options = {}) {
super(pattern, ext(def, options));
}
static defaults(options) {
return orig.defaults(ext(def, options)).Minimatch;
}
},
AST: class AST extends orig.AST {
/* c8 ignore start */
constructor(type, parent, options = {}) {
super(type, parent, ext(def, options));
}
/* c8 ignore stop */
static fromGlob(pattern, options = {}) {
return orig.AST.fromGlob(pattern, ext(def, options));
}
},
unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
escape: (s, options = {}) => orig.escape(s, ext(def, options)),
filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
defaults: (options) => orig.defaults(ext(def, options)),
makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)),
sep: orig.sep,
GLOBSTAR
});
};
minimatch2.defaults = defaults;
var braceExpand = (pattern, options = {}) => {
assertValidPattern(pattern);
if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
return [pattern];
}
return expand(pattern, { max: options.braceExpandMax });
};
minimatch2.braceExpand = braceExpand;
var makeRe = (pattern, options = {}) => new Minimatch2(pattern, options).makeRe();
minimatch2.makeRe = makeRe;
var match2 = (list, pattern, options = {}) => {
const mm = new Minimatch2(pattern, options);
list = list.filter((f) => mm.match(f));
if (mm.options.nonull && !list.length) {
list.push(pattern);
}
return list;
};
minimatch2.match = match2;
var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
var regExpEscape2 = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
var Minimatch2 = class {
options;
set;
pattern;
windowsPathsNoEscape;
nonegate;
negate;
comment;
empty;
preserveMultipleSlashes;
partial;
globSet;
globParts;
nocase;
isWindows;
platform;
windowsNoMagicRoot;
maxGlobstarRecursion;
regexp;
constructor(pattern, options = {}) {
assertValidPattern(pattern);
options = options || {};
this.options = options;
this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200;
this.pattern = pattern;
this.platform = options.platform || defaultPlatform;
this.isWindows = this.platform === "win32";
const awe = "allowWindowsEscape";
this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false;
if (this.windowsPathsNoEscape) {
this.pattern = this.pattern.replace(/\\/g, "/");
}
this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
this.regexp = null;
this.negate = false;
this.nonegate = !!options.nonegate;
this.comment = false;
this.empty = false;
this.partial = !!options.partial;
this.nocase = !!this.options.nocase;
this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
this.globSet = [];
this.globParts = [];
this.set = [];
this.make();
}
hasMagic() {
if (this.options.magicalBraces && this.set.length > 1) {
return true;
}
for (const pattern of this.set) {
for (const part of pattern) {
if (typeof part !== "string")
return true;
}
}
return false;
}
debug(..._) {
}
make() {
const pattern = this.pattern;
const options = this.options;
if (!options.nocomment && pattern.charAt(0) === "#") {
this.comment = true;
return;
}
if (!pattern) {
this.empty = true;
return;
}
this.parseNegate();
this.globSet = [...new Set(this.braceExpand())];
if (options.debug) {
this.debug = (...args) => console.error(...args);
}
this.debug(this.pattern, this.globSet);
const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
this.globParts = this.preprocess(rawGlobParts);
this.debug(this.pattern, this.globParts);
let set = this.globParts.map((s, _, __) => {
if (this.isWindows && this.windowsNoMagicRoot) {
const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
const isDrive = /^[a-z]:/i.test(s[0]);
if (isUNC) {
return [
...s.slice(0, 4),
...s.slice(4).map((ss) => this.parse(ss))
];
} else if (isDrive) {
return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
}
}
return s.map((ss) => this.parse(ss));
});
this.debug(this.pattern, set);
this.set = set.filter((s) => s.indexOf(false) === -1);
if (this.isWindows) {
for (let i = 0; i < this.set.length; i++) {
const p = this.set[i];
if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
p[2] = "?";
}
}
}
this.debug(this.pattern, this.set);
}
// various transforms to equivalent pattern sets that are
// faster to process in a filesystem walk. The goal is to
// eliminate what we can, and push all ** patterns as far
// to the right as possible, even if it increases the number
// of patterns that we have to process.
preprocess(globParts) {
if (this.options.noglobstar) {
for (const partset of globParts) {
for (let j = 0; j < partset.length; j++) {
if (partset[j] === "**") {
partset[j] = "*";
}
}
}
}
const { optimizationLevel = 1 } = this.options;
if (optimizationLevel >= 2) {
globParts = this.firstPhasePreProcess(globParts);
globParts = this.secondPhasePreProcess(globParts);
} else if (optimizationLevel >= 1) {
globParts = this.levelOneOptimize(globParts);
} else {
globParts = this.adjascentGlobstarOptimize(globParts);
}
return globParts;
}
// just get rid of adjascent ** portions
adjascentGlobstarOptimize(globParts) {
return globParts.map((parts) => {
let gs = -1;
while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
let i = gs;
while (parts[i + 1] === "**") {
i++;
}
if (i !== gs) {
parts.splice(gs, i - gs);
}
}
return parts;
});
}
// get rid of adjascent ** and resolve .. portions
levelOneOptimize(globParts) {
return globParts.map((parts) => {
parts = parts.reduce((set, part) => {
const prev = set[set.length - 1];
if (part === "**" && prev === "**") {
return set;
}
if (part === "..") {
if (prev && prev !== ".." && prev !== "." && prev !== "**") {
set.pop();
return set;
}
}
set.push(part);
return set;
}, []);
return parts.length === 0 ? [""] : parts;
});
}
levelTwoFileOptimize(parts) {
if (!Array.isArray(parts)) {
parts = this.slashSplit(parts);
}
let didSomething = false;
do {
didSomething = false;
if (!this.preserveMultipleSlashes) {
for (let i = 1; i < parts.length - 1; i++) {
const p = parts[i];
if (i === 1 && p === "" && parts[0] === "")
continue;
if (p === "." || p === "") {
didSomething = true;
parts.splice(i, 1);
i--;
}
}
if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
didSomething = true;
parts.pop();
}
}
let dd = 0;
while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
const p = parts[dd - 1];
if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) {
didSomething = true;
parts.splice(dd - 1, 2);
dd -= 2;
}
}
} while (didSomething);
return parts.length === 0 ? [""] : parts;
}
// First phase: single-pattern processing
// <pre> is 1 or more portions
// <rest> is 1 or more portions
// <p> is any portion other than ., .., '', or **
// <e> is . or ''
//
// **/.. is *brutal* for filesystem walking performance, because
// it effectively resets the recursive walk each time it occurs,
// and ** cannot be reduced out by a .. pattern part like a regexp
// or most strings (other than .., ., and '') can be.
//
// <pre>/**/../<p>/<p>/<rest> -> {<pre>/../<p>/<p>/<rest>,<pre>/**/<p>/<p>/<rest>}
// <pre>/<e>/<rest> -> <pre>/<rest>
// <pre>/<p>/../<rest> -> <pre>/<rest>
// **/**/<rest> -> **/<rest>
//
// **/*/<rest> -> */**/<rest> <== not valid because ** doesn't follow
// this WOULD be allowed if ** did follow symlinks, or * didn't
firstPhasePreProcess(globParts) {
let didSomething = false;
do {
didSomething = false;
for (let parts of globParts) {
let gs = -1;
while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
let gss = gs;
while (parts[gss + 1] === "**") {
gss++;
}
if (gss > gs) {
parts.splice(gs + 1, gss - gs);
}
let next = parts[gs + 1];
const p = parts[gs + 2];
const p2 = parts[gs + 3];
if (next !== "..")
continue;
if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
continue;
}
didSomething = true;
parts.splice(gs, 1);
const other = parts.slice(0);
other[gs] = "**";
globParts.push(other);
gs--;
}
if (!this.preserveMultipleSlashes) {
for (let i = 1; i < parts.length - 1; i++) {
const p = parts[i];
if (i === 1 && p === "" && parts[0] === "")
continue;
if (p === "." || p === "") {
didSomething = true;
parts.splice(i, 1);
i--;
}
}
if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
didSomething = true;
parts.pop();
}
}
let dd = 0;
while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
const p = parts[dd - 1];
if (p && p !== "." && p !== ".." && p !== "**") {
didSomething = true;
const needDot = dd === 1 && parts[dd + 1] === "**";
const splin = needDot ? ["."] : [];
parts.splice(dd - 1, 2, ...splin);
if (parts.length === 0)
parts.push("");
dd -= 2;
}
}
}
} while (didSomething);
return globParts;
}
// second phase: multi-pattern dedupes
// {<pre>/*/<rest>,<pre>/<p>/<rest>} -> <pre>/*/<rest>
// {<pre>/<rest>,<pre>/<rest>} -> <pre>/<rest>
// {<pre>/**/<rest>,<pre>/<rest>} -> <pre>/**/<rest>
//
// {<pre>/**/<rest>,<pre>/**/<p>/<rest>} -> <pre>/**/<rest>
// ^-- not valid because ** doens't follow symlinks
secondPhasePreProcess(globParts) {
for (let i = 0; i < globParts.length - 1; i++) {
for (let j = i + 1; j < globParts.length; j++) {
const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
if (matched) {
globParts[i] = [];
globParts[j] = matched;
break;
}
}
}
return globParts.filter((gs) => gs.length);
}
partsMatch(a, b, emptyGSMatch = false) {
let ai = 0;
let bi = 0;
let result = [];
let which2 = "";
while (ai < a.length && bi < b.length) {
if (a[ai] === b[bi]) {
result.push(which2 === "b" ? b[bi] : a[ai]);
ai++;
bi++;
} else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
result.push(a[ai]);
ai++;
} else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
result.push(b[bi]);
bi++;
} else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
if (which2 === "b")
return false;
which2 = "a";
result.push(a[ai]);
ai++;
bi++;
} else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
if (which2 === "a")
return false;
which2 = "b";
result.push(b[bi]);
ai++;
bi++;
} else {
return false;
}
}
return a.length === b.length && result;
}
parseNegate() {
if (this.nonegate)
return;
const pattern = this.pattern;
let negate = false;
let negateOffset = 0;
for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
negate = !negate;
negateOffset++;
}
if (negateOffset)
this.pattern = pattern.slice(negateOffset);
this.negate = negate;
}
// set partial to true to test if, for example,
// "/a/b" matches the start of "/*/b/*/d"
// Partial means, if you run out of file before you run
// out of pattern, then that's fine, as long as all
// the parts match.
matchOne(file, pattern, partial = false) {
let fileStartIndex = 0;
let patternStartIndex = 0;
if (this.isWindows) {
const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
if (typeof fdi === "number" && typeof pdi === "number") {
const [fd, pd] = [
file[fdi],
pattern[pdi]
];
if (fd.toLowerCase() === pd.toLowerCase()) {
pattern[pdi] = fd;
patternStartIndex = pdi;
fileStartIndex = fdi;
}
}
}
const { optimizationLevel = 1 } = this.options;
if (optimizationLevel >= 2) {
file = this.levelTwoFileOptimize(file);
}
if (pattern.includes(GLOBSTAR)) {
return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
}
return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
}
#matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
const firstgs = pattern.indexOf(GLOBSTAR, patternIndex);
const lastgs = pattern.lastIndexOf(GLOBSTAR);
const [head, body2, tail] = partial ? [
pattern.slice(patternIndex, firstgs),
pattern.slice(firstgs + 1),
[]
] : [
pattern.slice(patternIndex, firstgs),
pattern.slice(firstgs + 1, lastgs),
pattern.slice(lastgs + 1)
];
if (head.length) {
const fileHead = file.slice(fileIndex, fileIndex + head.length);
if (!this.#matchOne(fileHead, head, partial, 0, 0)) {
return false;
}
fileIndex += head.length;
patternIndex += head.length;
}
let fileTailMatch = 0;
if (tail.length) {
if (tail.length + fileIndex > file.length)
return false;
let tailStart = file.length - tail.length;
if (this.#matchOne(file, tail, partial, tailStart, 0)) {
fileTailMatch = tail.length;
} else {
if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
return false;
}
tailStart--;
if (!this.#matchOne(file, tail, partial, tailStart, 0)) {
return false;
}
fileTailMatch = tail.length + 1;
}
}
if (!body2.length) {
let sawSome = !!fileTailMatch;
for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
const f = String(file[i2]);
sawSome = true;
if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
return false;
}
}
return partial || sawSome;
}
const bodySegments = [[[], 0]];
let currentBody = bodySegments[0];
let nonGsParts = 0;
const nonGsPartsSums = [0];
for (const b of body2) {
if (b === GLOBSTAR) {
nonGsPartsSums.push(nonGsParts);
currentBody = [[], 0];
bodySegments.push(currentBody);
} else {
currentBody[0].push(b);
nonGsParts++;
}
}
let i = bodySegments.length - 1;
const fileLength = file.length - fileTailMatch;
for (const b of bodySegments) {
b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
}
return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
}
// return false for "nope, not matching"
// return null for "not matching, cannot keep trying"
#matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
const bs = bodySegments[bodyIndex];
if (!bs) {
for (let i = fileIndex; i < file.length; i++) {
sawTail = true;
const f = file[i];
if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
return false;
}
}
return sawTail;
}
const [body2, after] = bs;
while (fileIndex <= after) {
const m = this.#matchOne(file.slice(0, fileIndex + body2.length), body2, partial, fileIndex, 0);
if (m && globStarDepth < this.maxGlobstarRecursion) {
const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body2.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
if (sub !== false) {
return sub;
}
}
const f = file[fileIndex];
if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
return false;
}
fileIndex++;
}
return partial || null;
}
#matchOne(file, pattern, partial, fileIndex, patternIndex) {
let fi;
let pi;
let pl;
let fl;
for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
this.debug("matchOne loop");
let p = pattern[pi];
let f = file[fi];
this.debug(pattern, p, f);
if (p === false || p === GLOBSTAR) {
return false;
}
let hit;
if (typeof p === "string") {
hit = f === p;
this.debug("string match", p, f, hit);
} else {
hit = p.test(f);
this.debug("pattern match", p, f, hit);
}
if (!hit)
return false;
}
if (fi === fl && pi === pl) {
return true;
} else if (fi === fl) {
return partial;
} else if (pi === pl) {
return fi === fl - 1 && file[fi] === "";
} else {
throw new Error("wtf?");
}
}
braceExpand() {
return braceExpand(this.pattern, this.options);
}
parse(pattern) {
assertValidPattern(pattern);
const options = this.options;
if (pattern === "**")
return GLOBSTAR;
if (pattern === "")
return "";
let m;
let fastTest = null;
if (m = pattern.match(starRE)) {
fastTest = options.dot ? starTestDot : starTest;
} else if (m = pattern.match(starDotExtRE)) {
fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
} else if (m = pattern.match(qmarksRE)) {
fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
} else if (m = pattern.match(starDotStarRE)) {
fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
} else if (m = pattern.match(dotStarRE)) {
fastTest = dotStarTest;
}
const re = AST.fromGlob(pattern, this.options).toMMPattern();
if (fastTest && typeof re === "object") {
Reflect.defineProperty(re, "test", { value: fastTest });
}
return re;
}
makeRe() {
if (this.regexp || this.regexp === false)
return this.regexp;
const set = this.set;
if (!set.length) {
this.regexp = false;
return this.regexp;
}
const options = this.options;
const twoStar = options.noglobstar ? star2 : options.dot ? twoStarDot : twoStarNoDot;
const flags = new Set(options.nocase ? ["i"] : []);
let re = set.map((pattern) => {
const pp = pattern.map((p) => {
if (p instanceof RegExp) {
for (const f of p.flags.split(""))
flags.add(f);
}
return typeof p === "string" ? regExpEscape2(p) : p === GLOBSTAR ? GLOBSTAR : p._src;
});
pp.forEach((p, i) => {
const next = pp[i + 1];
const prev = pp[i - 1];
if (p !== GLOBSTAR || prev === GLOBSTAR) {
return;
}
if (prev === void 0) {
if (next !== void 0 && next !== GLOBSTAR) {
pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
} else {
pp[i] = twoStar;
}
} else if (next === void 0) {
pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
} else if (next !== GLOBSTAR) {
pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
pp[i + 1] = GLOBSTAR;
}
});
const filtered = pp.filter((p) => p !== GLOBSTAR);
if (this.partial && filtered.length >= 1) {
const prefixes = [];
for (let i = 1; i <= filtered.length; i++) {
prefixes.push(filtered.slice(0, i).join("/"));
}
return "(?:" + prefixes.join("|") + ")";
}
return filtered.join("/");
}).join("|");
const [open2, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
re = "^" + open2 + re + close + "$";
if (this.partial) {
re = "^(?:\\/|" + open2 + re.slice(1, -1) + close + ")$";
}
if (this.negate)
re = "^(?!" + re + ").+$";
try {
this.regexp = new RegExp(re, [...flags].join(""));
} catch {
this.regexp = false;
}
return this.regexp;
}
slashSplit(p) {
if (this.preserveMultipleSlashes) {
return p.split("/");
} else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
return ["", ...p.split(/\/+/)];
} else {
return p.split(/\/+/);
}
}
match(f, partial = this.partial) {
this.debug("match", f, this.pattern);
if (this.comment) {
return false;
}
if (this.empty) {
return f === "";
}
if (f === "/" && partial) {
return true;
}
const options = this.options;
if (this.isWindows) {
f = f.split("\\").join("/");
}
const ff = this.slashSplit(f);
this.debug(this.pattern, "split", ff);
const set = this.set;
this.debug(this.pattern, "set", set);
let filename = ff[ff.length - 1];
if (!filename) {
for (let i = ff.length - 2; !filename && i >= 0; i--) {
filename = ff[i];
}
}
for (const pattern of set) {
let file = ff;
if (options.matchBase && pattern.length === 1) {
file = [filename];
}
const hit = this.matchOne(file, pattern, partial);
if (hit) {
if (options.flipNegate) {
return true;
}
return !this.negate;
}
}
if (options.flipNegate) {
return false;
}
return this.negate;
}
static defaults(def) {
return minimatch2.defaults(def).Minimatch;
}
};
minimatch2.AST = AST;
minimatch2.Minimatch = Minimatch2;
minimatch2.escape = escape2;
minimatch2.unescape = unescape;
// node_modules/@actions/glob/lib/internal-path.js
var IS_WINDOWS11 = process.platform === "win32";
// node_modules/@actions/glob/lib/internal-pattern.js
var IS_WINDOWS12 = process.platform === "win32";
// node_modules/@actions/glob/lib/internal-globber.js
var IS_WINDOWS13 = process.platform === "win32";
// src/utils/logging.ts
var quiet;
function isQuiet() {
@@ -61834,10 +63724,57 @@ var STATE_UV_PATH = "uv-path";
var STATE_UV_VERSION = "uv-version";
// src/utils/inputs.ts
var import_node_fs4 = __toESM(require("node:fs"), 1);
var import_node_path = __toESM(require("node:path"), 1);
// src/utils/config-file.ts
// src/version/tool-versions-file.ts
var import_node_fs2 = __toESM(require("node:fs"), 1);
function getPythonVersionFromToolVersions(filePath) {
const versions = getToolVersions(filePath, "python");
if (versions === void 0 || versions.length === 0) {
return void 0;
}
if (versions.length > 1) {
warning(
"Multiple Python versions in .tool-versions are not supported. The Python entry will be ignored."
);
return void 0;
}
const version3 = stripVersionPrefix(versions[0]);
if (version3 === "system" || version3.startsWith("ref:") || version3.startsWith("path:") || isPath(version3)) {
warning(
`The Python version ${versions[0]} in .tool-versions is not supported. The Python entry will be ignored.`
);
return void 0;
}
return version3;
}
function getToolVersions(filePath, toolName) {
if (!filePath.endsWith(".tool-versions")) {
return void 0;
}
const fileContents = import_node_fs2.default.readFileSync(filePath, "utf8");
for (const line of fileContents.split("\n")) {
const content = line.split("#", 1)[0].trim();
if (content === "") {
continue;
}
const [tool, ...versions] = content.split(/\s+/);
if (tool === toolName) {
return versions;
}
}
return void 0;
}
function stripVersionPrefix(version3) {
return version3.startsWith("v") ? version3.slice(1) : version3;
}
function isPath(version3) {
return version3.includes("/") || version3.includes("\\");
}
// src/utils/config-file.ts
var import_node_fs3 = __toESM(require("node:fs"), 1);
// node_modules/smol-toml/dist/date.js
var DATE_TIME_RE = /^(\d{4}-\d{2}-\d{2})?[T ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|[-+]\d{2}:\d{2})?$/i;
@@ -61850,18 +63787,18 @@ var TomlDate = class _TomlDate extends Date {
let hasTime = true;
let offset = "Z";
if (typeof date === "string") {
let match2 = date.match(DATE_TIME_RE);
if (match2) {
if (!match2[1]) {
let match4 = date.match(DATE_TIME_RE);
if (match4) {
if (!match4[1]) {
hasDate = false;
date = `0000-01-01T${date}`;
}
hasTime = !!match2[2];
hasTime = !!match4[2];
hasTime && date[10] === " " && (date = date.replace(" ", "T"));
if (match2[2] && +match2[2] > 23) {
if (match4[2] && +match4[2] > 23) {
date = "";
} else {
offset = match2[3] || null;
offset = match4[3] || null;
date = date.toUpperCase();
if (!offset && hasTime)
date += "Z";
@@ -61971,57 +63908,111 @@ ${codeblock}`, options);
}
};
// node_modules/smol-toml/dist/util.js
function indexOfNewline(str, start = 0) {
let idx = str.indexOf("\n", start);
if (str.charCodeAt(idx - 1) === 13)
idx--;
return idx;
}
function skipComment(ctx) {
for (; ctx.p < ctx.s.length; ctx.p++) {
let c = ctx.s.charCodeAt(ctx.p);
if (c === 10)
break;
if (c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10) {
ctx.p++;
break;
}
if (c < 32 && c !== 9 || c === 127) {
throw new TomlError("control characters are not allowed in comments", {
toml: ctx.s,
ptr: ctx.p
});
}
}
}
function skipVoid(ctx, banNewLines, banComments) {
let c;
while (1) {
while ((c = ctx.s.charCodeAt(ctx.p)) === 32 || c === 9 || !banNewLines && (c === 10 || c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10))
ctx.p++;
if (banComments || c !== 35)
break;
skipComment(ctx);
}
}
function skipUntil(ctx, sep8, end) {
let ptr = ctx.p;
if (!end) {
ptr = indexOfNewline(ctx.s, ptr);
ctx.p = ptr < 0 ? ctx.s.length : ptr;
return;
}
for (; ctx.p < ctx.s.length; ctx.p++) {
let c = ctx.s.charCodeAt(ctx.p);
if (c === 35) {
skipComment(ctx);
} else if (c === end || c === sep8) {
return;
}
}
throw new TomlError("cannot find end of structure", {
toml: ctx.s,
ptr
});
}
// node_modules/smol-toml/dist/primitive.js
var INT_REGEX = /^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/;
var FLOAT_REGEX = /^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/;
var LEADING_ZERO = /^[+-]?0[0-9_]/;
function parseString(str, ptr) {
let c = str[ptr++];
function parseString(ctx) {
let start = ctx.p;
let c = ctx.s.charCodeAt(ctx.p++);
let first = c;
let isLiteral = c === "'";
let isMultiline = c === str[ptr] && c === str[ptr + 1];
let isLiteral = c === 39;
let isMultiline = c === ctx.s.charCodeAt(ctx.p) && c === ctx.s.charCodeAt(ctx.p + 1);
if (isMultiline) {
if (str[ptr += 2] === "\n")
ptr++;
else if (str[ptr] === "\r" && str[ptr + 1] === "\n")
ptr += 2;
if ((c = ctx.s.charCodeAt(ctx.p += 2)) === 10)
ctx.p++;
else if (c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10)
ctx.p += 2;
}
let parsed = "";
let sliceStart = ptr;
let sliceStart = ctx.p;
let state3 = 0;
for (let i = ptr; i < str.length; i++) {
c = str[i];
if (isMultiline && (c === "\n" || c === "\r" && str[i + 1] === "\n")) {
for (; ctx.p < ctx.s.length; ctx.p++) {
c = ctx.s.charCodeAt(ctx.p);
if (isMultiline && (c === 10 || c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10)) {
state3 = state3 && 3;
} else if (c < " " && c !== " " || c === "\x7F") {
} else if (c < 32 && c !== 9 || c === 127) {
throw new TomlError("control characters are not allowed in strings", {
toml: str,
ptr: i
toml: ctx.s,
ptr: ctx.p
});
} else if ((!state3 || state3 === 3) && c === first && (!isMultiline || str[i + 1] === first && str[i + 2] === first)) {
} else if ((!state3 || state3 === 3) && c === first && (!isMultiline || ctx.s.charCodeAt(ctx.p + 1) === first && ctx.s.charCodeAt(ctx.p + 2) === first)) {
if (isMultiline) {
if (str[i + 3] === first)
i++;
if (str[i + 3] === first)
i++;
if (ctx.s.charCodeAt(ctx.p + 3) === first)
ctx.p++;
if (ctx.s.charCodeAt(ctx.p + 3) === first)
ctx.p++;
}
return [
// If we're in a newline escape still, then there's nothing to add.
// Also try to avoid concat if there's nothing to add to parsed, or nothing has been added to parsed.
state3 ? parsed : parsed + str.slice(sliceStart, i),
i + (isMultiline ? 3 : 1)
];
if (!state3)
parsed += ctx.s.slice(sliceStart, ctx.p);
ctx.p += isMultiline ? 3 : 1;
return parsed;
} else if (!state3) {
if (!isLiteral && c === "\\") {
parsed += str.slice(sliceStart, sliceStart = i);
if (!isLiteral && c === 92) {
parsed += ctx.s.slice(sliceStart, sliceStart = ctx.p);
state3 = 1;
}
} else if (state3 === 1) {
if (c === "x" || c === "u" || c === "U") {
if (c === 120 || c === 117 || c === 85) {
let value = 0;
let len = c === "x" ? 2 : c === "u" ? 4 : 8;
for (let j = 0; j < len; j++, i++) {
let hex = str.charCodeAt(i + 1);
let len = c === 120 ? 2 : c === 117 ? 4 : 8;
for (let j = 0; j < len; j++, ctx.p++) {
let hex = ctx.s.charCodeAt(ctx.p + 1);
let digit = (
/* 0-9 */
hex >= 48 && hex <= 57 ? hex - 48 : (
@@ -62033,57 +64024,68 @@ function parseString(str, ptr) {
)
);
if (digit < 0)
throw new TomlError("invalid non-hex character in unicode escape", { toml: str, ptr: i + 1 });
throw new TomlError("invalid non-hex character in unicode escape", { toml: ctx.s, ptr: ctx.p + 1 });
value = value << 4 | digit;
}
if (value < 0 || value > 1114111 || value >= 55296 && value <= 57343) {
throw new TomlError("invalid unicode escape", { toml: str, ptr: i });
throw new TomlError("invalid unicode escape", { toml: ctx.s, ptr: ctx.p });
}
parsed += String.fromCodePoint(value);
sliceStart = i + 1;
sliceStart = ctx.p + 1;
state3 = 0;
} else if (c === " " || c === " ") {
} else if (c === 32 || c === 9) {
state3 = 2;
} else {
if (c === "b")
if (c === 98)
parsed += "\b";
else if (c === "t")
else if (c === 116)
parsed += " ";
else if (c === "n")
else if (c === 110)
parsed += "\n";
else if (c === "f")
else if (c === 102)
parsed += "\f";
else if (c === "r")
else if (c === 114)
parsed += "\r";
else if (c === "e")
else if (c === 101)
parsed += "\x1B";
else if (c === '"')
else if (c === 34)
parsed += '"';
else if (c === "\\")
else if (c === 92)
parsed += "\\";
else
throw new TomlError("unrecognized escape sequence", { toml: str, ptr: i });
sliceStart = i + 1;
throw new TomlError("unrecognized escape sequence", { toml: ctx.s, ptr: ctx.p });
sliceStart = ctx.p + 1;
state3 = 0;
}
} else if (c !== " " && c !== " ") {
} else if (c !== 32 && c !== 9) {
if (state3 === 2) {
throw new TomlError("invalid escape: only line-ending whitespace may be escaped", {
toml: str,
toml: ctx.s,
ptr: sliceStart
});
}
state3 = !isLiteral && c === "\\" ? 1 : 0;
sliceStart = i;
state3 = !isLiteral && c === 92 ? 1 : 0;
sliceStart = ctx.p;
}
}
throw new TomlError("unfinished string", { toml: str, ptr });
throw new TomlError("unfinished string", { toml: ctx.s, ptr: start });
}
function parseValue2(value, toml, ptr, integersAsBigInt) {
if (value === "true")
return true;
if (value === "false")
return false;
function sliceAndTrimEndOf(ctx, start, end) {
let value = ctx.s.slice(start, end);
let commentIdx = value.indexOf("#");
if (commentIdx > 0) {
skipComment({ s: value, p: commentIdx, d: 0 });
value = value.slice(0, commentIdx);
}
return value.trimEnd();
}
function parseValue2(ctx, integersAsBigInt, end) {
let ptr = ctx.p;
let err = { toml: ctx.s, ptr };
skipUntil(ctx, 44, end);
let value = sliceAndTrimEndOf(ctx, ptr, ctx.p);
if (!value)
throw new TomlError("incomplete declaration: value expected", err);
if (value === "-inf")
return -Infinity;
if (value === "inf" || value === "+inf")
@@ -62095,303 +64097,201 @@ function parseValue2(value, toml, ptr, integersAsBigInt) {
let isInt = INT_REGEX.test(value);
if (isInt || FLOAT_REGEX.test(value)) {
if (LEADING_ZERO.test(value)) {
throw new TomlError("leading zeroes are not allowed", {
toml,
ptr
});
throw new TomlError("leading zeroes are not allowed", err);
}
value = value.replace(/_/g, "");
let numeric = +value;
if (isNaN(numeric)) {
throw new TomlError("invalid number", {
toml,
ptr
});
let numeric2 = +value;
if (isNaN(numeric2)) {
throw new TomlError("invalid number", err);
}
if (isInt) {
if ((isInt = !Number.isSafeInteger(numeric)) && !integersAsBigInt) {
throw new TomlError("integer value cannot be represented losslessly", {
toml,
ptr
});
if ((isInt = !Number.isSafeInteger(numeric2)) && !integersAsBigInt) {
throw new TomlError("integer value cannot be represented losslessly", err);
}
if (isInt || integersAsBigInt === true)
numeric = BigInt(value);
numeric2 = BigInt(value);
}
return numeric;
return numeric2;
}
const date = new TomlDate(value);
if (!date.isValid()) {
throw new TomlError("invalid value", {
toml,
ptr
});
}
if (!date.isValid())
throw new TomlError("invalid value", err);
return date;
}
// node_modules/smol-toml/dist/util.js
function indexOfNewline(str, start = 0, end = str.length) {
let idx = str.indexOf("\n", start);
if (str[idx - 1] === "\r")
idx--;
return idx <= end ? idx : -1;
}
function skipComment(str, ptr) {
for (let i = ptr; i < str.length; i++) {
let c = str[i];
if (c === "\n")
return i;
if (c === "\r" && str[i + 1] === "\n")
return i + 1;
if (c < " " && c !== " " || c === "\x7F") {
throw new TomlError("control characters are not allowed in comments", {
toml: str,
// node_modules/smol-toml/dist/extract.js
function extractValue(ctx, end, integersAsBigInt) {
let ptr = ctx.p;
let c = ctx.s.charCodeAt(ptr);
if (c === 91 || c === 123) {
if (!ctx.d--) {
throw new TomlError("document contains excessively nested structures. aborting.", {
toml: ctx.s,
ptr
});
}
let value = c === 91 ? parseArray(ctx, integersAsBigInt) : parseInlineTable(ctx, integersAsBigInt);
ctx.d++;
return value;
}
return str.length;
}
function skipVoid(str, ptr, banNewLines, banComments) {
let c;
while (1) {
while ((c = str[ptr]) === " " || c === " " || !banNewLines && (c === "\n" || c === "\r" && str[ptr + 1] === "\n"))
ptr++;
if (banComments || c !== "#")
break;
ptr = skipComment(str, ptr);
if (c === 34 || c === 39) {
return parseString(ctx);
}
return ptr;
}
function skipUntil(str, ptr, sep7, end, banNewLines = false) {
if (!end) {
ptr = indexOfNewline(str, ptr);
return ptr < 0 ? str.length : ptr;
if (c === 116) {
if (ctx.s.charCodeAt(++ctx.p) !== 114 || ctx.s.charCodeAt(++ctx.p) !== 117 || ctx.s.charCodeAt(++ctx.p) !== 101)
throw new TomlError("invalid value", { toml: ctx.s, ptr });
ctx.p++;
return true;
}
for (let i = ptr; i < str.length; i++) {
let c = str[i];
if (c === "#") {
i = indexOfNewline(str, i);
} else if (c === sep7) {
return i + 1;
} else if (c === end || banNewLines && (c === "\n" || c === "\r" && str[i + 1] === "\n")) {
return i;
}
if (c === 102) {
if (ctx.s.charCodeAt(++ctx.p) !== 97 || ctx.s.charCodeAt(++ctx.p) !== 108 || ctx.s.charCodeAt(++ctx.p) !== 115 || ctx.s.charCodeAt(++ctx.p) !== 101)
throw new TomlError("invalid value", { toml: ctx.s, ptr });
ctx.p++;
return false;
}
throw new TomlError("cannot find end of structure", {
toml: str,
ptr
});
}
// node_modules/smol-toml/dist/extract.js
function sliceAndTrimEndOf(str, startPtr, endPtr) {
let value = str.slice(startPtr, endPtr);
let commentIdx = value.indexOf("#");
if (commentIdx > -1) {
skipComment(str, commentIdx);
value = value.slice(0, commentIdx);
}
return [value.trimEnd(), commentIdx];
}
function extractValue(str, ptr, end, depth, integersAsBigInt) {
if (depth === 0) {
throw new TomlError("document contains excessively nested structures. aborting.", {
toml: str,
ptr
});
}
let c = str[ptr];
if (c === "[" || c === "{") {
let [value, endPtr2] = c === "[" ? parseArray(str, ptr, depth, integersAsBigInt) : parseInlineTable(str, ptr, depth, integersAsBigInt);
if (end) {
endPtr2 = skipVoid(str, endPtr2);
if (str[endPtr2] === ",")
endPtr2++;
else if (str[endPtr2] !== end) {
throw new TomlError("expected comma or end of structure", {
toml: str,
ptr: endPtr2
});
}
}
return [value, endPtr2];
}
if (c === '"' || c === "'") {
let [parsed, endPtr2] = parseString(str, ptr);
if (end) {
endPtr2 = skipVoid(str, endPtr2);
if (str[endPtr2] && str[endPtr2] !== "," && str[endPtr2] !== end && str[endPtr2] !== "\n" && str[endPtr2] !== "\r") {
throw new TomlError("unexpected character encountered", {
toml: str,
ptr: endPtr2
});
}
if (str[endPtr2] === ",")
endPtr2++;
}
return [parsed, endPtr2];
}
let endPtr = skipUntil(str, ptr, ",", end);
let slice = sliceAndTrimEndOf(str, ptr, endPtr - (str[endPtr - 1] === "," ? 1 : 0));
if (!slice[0]) {
throw new TomlError("incomplete key-value declaration: no value specified", {
toml: str,
ptr
});
}
if (end && slice[1] > -1) {
endPtr = skipVoid(str, ptr + slice[1]);
if (str[endPtr] === ",")
endPtr++;
}
return [
parseValue2(slice[0], str, ptr, integersAsBigInt),
endPtr
];
return parseValue2(ctx, integersAsBigInt, end);
}
// node_modules/smol-toml/dist/struct.js
var KEY_PART_RE = /^[a-zA-Z0-9-_]+[ \t]*$/;
function parseKey(str, ptr, end = "=") {
let dot = ptr - 1;
function parseKey(ctx, end = "=") {
let start = ctx.p;
let dot = start - 1;
let parsed = [];
let endPtr = str.indexOf(end, ptr);
let endPtr = ctx.s.indexOf(end, start);
if (endPtr < 0) {
throw new TomlError("incomplete key-value: cannot find end of key", {
toml: str,
ptr
toml: ctx.s,
ptr: start
});
}
do {
let c = str[ptr = ++dot];
if (c !== " " && c !== " ") {
if (c === '"' || c === "'") {
if (c === str[ptr + 1] && c === str[ptr + 2]) {
let c = ctx.s.charCodeAt(ctx.p = ++dot);
if (c !== 32 && c !== 9) {
if (c === 34 || c === 39) {
if (c === ctx.s.charCodeAt(ctx.p + 1) && c === ctx.s.charCodeAt(ctx.p + 2)) {
throw new TomlError("multiline strings are not allowed in keys", {
toml: str,
ptr
toml: ctx.s,
ptr: ctx.p
});
}
let [part, eos] = parseString(str, ptr);
dot = str.indexOf(".", eos);
let strEnd = str.slice(eos, dot < 0 || dot > endPtr ? endPtr : dot);
let part = parseString(ctx);
dot = ctx.s.indexOf(".", ctx.p);
let strEnd = ctx.s.slice(ctx.p, dot < 0 || dot > endPtr ? endPtr : dot);
let newLine = indexOfNewline(strEnd);
if (newLine > -1) {
throw new TomlError("newlines are not allowed in keys", {
toml: str,
ptr: ptr + dot + newLine
toml: ctx.s,
ptr: newLine
});
}
if (strEnd.trimStart()) {
throw new TomlError("found extra tokens after the string part", {
toml: str,
ptr: eos
toml: ctx.s,
ptr: ctx.p
});
}
if (endPtr < eos) {
endPtr = str.indexOf(end, eos);
if (endPtr < ctx.p) {
endPtr = ctx.s.indexOf(end, ctx.p);
if (endPtr < 0) {
throw new TomlError("incomplete key-value: cannot find end of key", {
toml: str,
ptr
toml: ctx.s,
ptr: start
});
}
}
parsed.push(part);
} else {
dot = str.indexOf(".", ptr);
let part = str.slice(ptr, dot < 0 || dot > endPtr ? endPtr : dot);
dot = ctx.s.indexOf(".", ctx.p);
let part = ctx.s.slice(ctx.p, dot < 0 || dot > endPtr ? endPtr : dot);
if (!KEY_PART_RE.test(part)) {
throw new TomlError("only letter, numbers, dashes and underscores are allowed in keys", {
toml: str,
ptr
toml: ctx.s,
ptr: ctx.p
});
}
parsed.push(part.trimEnd());
}
}
} while (dot + 1 && dot < endPtr);
return [parsed, skipVoid(str, endPtr + 1, true, true)];
ctx.p = endPtr + 1;
skipVoid(ctx, true, true);
return parsed;
}
function parseInlineTable(str, ptr, depth, integersAsBigInt) {
function parseInlineTable(ctx, integersAsBigInt) {
let res = {};
let seen = /* @__PURE__ */ new Set();
let c;
ptr++;
while ((c = str[ptr++]) !== "}" && c) {
if (c === ",") {
throw new TomlError("expected value, found comma", {
toml: str,
ptr: ptr - 1
});
} else if (c === "#")
ptr = skipComment(str, ptr);
else if (c !== " " && c !== " " && c !== "\n" && c !== "\r") {
let k;
let t = res;
let hasOwn = false;
let [key, keyEndPtr] = parseKey(str, ptr - 1);
for (let i = 0; i < key.length; i++) {
if (i)
t = hasOwn ? t[k] : t[k] = {};
k = key[i];
if ((hasOwn = Object.hasOwn(t, k)) && (typeof t[k] !== "object" || seen.has(t[k]))) {
throw new TomlError("trying to redefine an already defined value", {
toml: str,
ptr
});
}
if (!hasOwn && k === "__proto__") {
Object.defineProperty(t, k, { enumerable: true, configurable: true, writable: true });
}
}
if (hasOwn) {
ctx.p++;
while (ctx.p < ctx.s.length) {
skipVoid(ctx);
if ((c = ctx.s.charCodeAt(ctx.p)) === 125) {
ctx.p++;
return res;
}
let k;
let t = res;
let hasOwn = false;
let p = ctx.p;
let key = parseKey(ctx);
for (let i = 0; i < key.length; i++) {
if (i)
t = hasOwn ? t[k] : t[k] = {};
k = key[i];
if ((hasOwn = Object.hasOwn(t, k)) && (typeof t[k] !== "object" || seen.has(t[k]))) {
throw new TomlError("trying to redefine an already defined value", {
toml: str,
ptr
toml: ctx.s,
ptr: p
});
}
let [value, valueEndPtr] = extractValue(str, keyEndPtr, "}", depth - 1, integersAsBigInt);
seen.add(value);
t[k] = value;
ptr = valueEndPtr;
if (!hasOwn && k === "__proto__") {
Object.defineProperty(t, k, { enumerable: true, configurable: true, writable: true });
}
}
if (hasOwn) {
throw new TomlError("trying to redefine an already defined value", {
toml: ctx.s,
ptr: ctx.p
});
}
let value = extractValue(ctx, 125, integersAsBigInt);
seen.add(t[k] = value);
skipVoid(ctx);
if ((c = ctx.s.charCodeAt(ctx.p++)) === 125) {
return res;
}
if (c !== 44) {
throw new TomlError("expected comma or end of structure", { toml: ctx.s, ptr: ctx.p - 1 });
}
}
if (!c) {
throw new TomlError("unfinished table encountered", {
toml: str,
ptr
});
}
return [res, ptr];
throw new TomlError("unfinished table encountered", {
toml: ctx.s,
ptr: ctx.p
});
}
function parseArray(str, ptr, depth, integersAsBigInt) {
function parseArray(ctx, integersAsBigInt) {
let res = [];
let c;
ptr++;
while ((c = str[ptr++]) !== "]" && c) {
if (c === ",") {
throw new TomlError("expected value, found comma", {
toml: str,
ptr: ptr - 1
});
} else if (c === "#")
ptr = skipComment(str, ptr);
else if (c !== " " && c !== " " && c !== "\n" && c !== "\r") {
let e = extractValue(str, ptr - 1, "]", depth - 1, integersAsBigInt);
res.push(e[0]);
ptr = e[1];
ctx.p++;
while (ctx.p < ctx.s.length) {
skipVoid(ctx);
if ((c = ctx.s.charCodeAt(ctx.p)) === 93) {
ctx.p++;
return res;
}
res.push(extractValue(ctx, 93, integersAsBigInt));
skipVoid(ctx);
if ((c = ctx.s.charCodeAt(ctx.p++)) === 93) {
return res;
}
if (c !== 44) {
throw new TomlError("expected comma or end of structure", { toml: ctx.s, ptr: ctx.p - 1 });
}
}
if (!c) {
throw new TomlError("unfinished array encountered", {
toml: str,
ptr
});
}
return [res, ptr];
throw new TomlError("unfinished array encountered", {
toml: ctx.s,
ptr: ctx.p
});
}
// node_modules/smol-toml/dist/parse.js
@@ -62455,25 +64355,29 @@ function peekTable(key, table, meta, type) {
return [k, t, state3.c];
}
function parse3(toml, { maxDepth = 1e3, integersAsBigInt } = {}) {
let ctx = { s: toml, p: 0, d: maxDepth };
let res = {};
let meta = {};
let tmp;
let tbl = res;
let m = meta;
for (let ptr = skipVoid(toml, 0); ptr < toml.length; ) {
if (toml[ptr] === "[") {
let isTableArray = toml[++ptr] === "[";
let k = parseKey(toml, ptr += +isTableArray, "]");
skipVoid(ctx);
while (ctx.p < toml.length) {
if (toml.charCodeAt(ctx.p) === 91) {
let isTableArray = toml.charCodeAt(++ctx.p) === 91;
tmp = ctx.p += +isTableArray;
let k = parseKey(ctx, "]");
if (isTableArray) {
if (toml[k[1] - 1] !== "]") {
if (toml.charCodeAt(ctx.p - 1) !== 93) {
throw new TomlError("expected end of table declaration", {
toml,
ptr: k[1] - 1
ptr: ctx.p - 1
});
}
k[1]++;
ctx.p++;
}
let p = peekTable(
k[0],
k,
res,
meta,
isTableArray ? 2 : 1
@@ -62482,16 +64386,16 @@ function parse3(toml, { maxDepth = 1e3, integersAsBigInt } = {}) {
if (!p) {
throw new TomlError("trying to redefine an already defined table or value", {
toml,
ptr
ptr: tmp
});
}
m = p[2];
tbl = p[1];
ptr = k[1];
} else {
let k = parseKey(toml, ptr);
tmp = ctx.p;
let k = parseKey(ctx);
let p = peekTable(
k[0],
k,
tbl,
m,
0
@@ -62500,31 +64404,29 @@ function parse3(toml, { maxDepth = 1e3, integersAsBigInt } = {}) {
if (!p) {
throw new TomlError("trying to redefine an already defined table or value", {
toml,
ptr
ptr: tmp
});
}
let v = extractValue(toml, k[1], void 0, maxDepth, integersAsBigInt);
p[1][p[0]] = v[0];
ptr = v[1];
p[1][p[0]] = extractValue(ctx, void 0, integersAsBigInt);
}
ptr = skipVoid(toml, ptr, true);
if (toml[ptr] && toml[ptr] !== "\n" && toml[ptr] !== "\r") {
skipVoid(ctx, true);
if (ctx.p < toml.length && (tmp = toml.charCodeAt(ctx.p)) !== 10 && tmp !== 13) {
throw new TomlError("each key-value declaration must be followed by an end-of-line", {
toml,
ptr
ptr: ctx.p
});
}
ptr = skipVoid(toml, ptr);
skipVoid(ctx);
}
return res;
}
// src/utils/config-file.ts
function getConfigValueFromTomlFile(filePath, key) {
if (!import_node_fs2.default.existsSync(filePath) || !filePath.endsWith(".toml")) {
if (!import_node_fs3.default.existsSync(filePath) || !filePath.endsWith(".toml")) {
return void 0;
}
const fileContent = import_node_fs2.default.readFileSync(filePath, "utf-8");
const fileContent = import_node_fs3.default.readFileSync(filePath, "utf-8");
return getConfigValueFromTomlContent(filePath, fileContent, key);
}
function getConfigValueFromTomlContent(filePath, fileContent, key) {
@@ -62544,14 +64446,17 @@ function loadInputs() {
const workingDirectory = getInput("working-directory");
const version3 = getInput("version");
const versionFile = getVersionFile(workingDirectory);
const pythonVersion = getInput("python-version");
const pythonVersion = getPythonVersion(versionFile);
const pythonArchInput = getInput("python-arch");
const pythonArch = pythonArchInput || process.env.UV_PYTHON_ARCH || "";
const exportPythonArch = pythonArchInput !== "";
const activateEnvironment = getBooleanInput("activate-environment");
const noProject = getBooleanInput("no-project");
const venvPath = getVenvPath(workingDirectory, activateEnvironment);
const checksum = getInput("checksum");
const enableCache = getEnableCache();
const restoreCache2 = getInput("restore-cache") === "true";
const saveCache4 = getInput("save-cache") === "true";
const saveCache4 = getSaveCache();
const cacheSuffix = getInput("cache-suffix") || "";
const cacheLocalPath = getCacheLocalPath(
workingDirectory,
@@ -62582,12 +64487,14 @@ function loadInputs() {
checksum,
downloadFromAstralMirror,
enableCache,
exportPythonArch,
githubToken,
ignoreEmptyWorkdir,
ignoreNothingToCache,
manifestFile,
noProject,
pruneCache: pruneCache2,
pythonArch,
pythonDir,
pythonVersion,
quiet: quiet2,
@@ -62610,6 +64517,26 @@ function getVersionFile(workingDirectory) {
}
return versionFileInput;
}
function getPythonVersion(versionFile) {
const pythonVersionInput = getInput("python-version");
if (pythonVersionInput !== "") {
return pythonVersionInput;
}
if (process.env.UV_PYTHON !== void 0 && process.env.UV_PYTHON !== "") {
return "";
}
if (versionFile === "" || !import_node_fs4.default.existsSync(versionFile)) {
return "";
}
try {
return getPythonVersionFromToolVersions(versionFile) ?? "";
} catch (err) {
warning2(
`Error while parsing Python version from ${versionFile}: ${err.message}`
);
return "";
}
}
function getVenvPath(workingDirectory, activateEnvironment) {
const venvPathInput = getInput("venv-path");
if (venvPathInput !== "") {
@@ -62624,10 +64551,34 @@ function getVenvPath(workingDirectory, activateEnvironment) {
function getEnableCache() {
const enableCacheInput = getInput("enable-cache");
if (enableCacheInput === "auto") {
return process.env.RUNNER_ENVIRONMENT === "github-hosted";
if (process.env.RUNNER_ENVIRONMENT !== "github-hosted") {
return false;
}
const eventName = process.env.GITHUB_EVENT_NAME;
const isTagPush = eventName === "push" && process.env.GITHUB_REF?.startsWith("refs/tags/");
if (isTagPush) {
info2("Caching is disabled for tag pushes");
return false;
}
if (eventName === "pull_request_target" || eventName === "workflow_run" || eventName === "release") {
info2(`Caching is disabled for the ${eventName} event`);
return false;
}
return true;
}
return enableCacheInput === "true";
}
function getSaveCache() {
const saveCacheInput = getInput("save-cache");
if (saveCacheInput === "auto") {
if (process.env.GITHUB_EVENT_NAME === "merge_group") {
info2("Cache saving is disabled for the merge_group event");
return false;
}
return true;
}
return saveCacheInput === "true";
}
function getToolBinDir(workingDirectory) {
const toolBinDirInput = getInput("tool-bin-dir");
if (toolBinDirInput !== "") {
@@ -62840,7 +64791,7 @@ async function saveCache3(inputs) {
await pruneCache();
}
const actualCachePath = getUvCachePath(inputs);
if (!fs7.existsSync(actualCachePath)) {
if (!fs9.existsSync(actualCachePath)) {
if (inputs.ignoreNothingToCache) {
info2(
"No cacheable uv cache paths were found. Ignoring because ignore-nothing-to-cache is enabled."
@@ -62860,7 +64811,7 @@ async function saveCache3(inputs) {
}
}
if (inputs.cachePython) {
if (!fs7.existsSync(inputs.pythonDir)) {
if (!fs9.existsSync(inputs.pythonDir)) {
warning2(
`Python cache path ${inputs.pythonDir} does not exist on disk. Skipping Python cache save because no managed Python installation was found. If you want uv to install managed Python instead of using a system interpreter, set UV_PYTHON_PREFERENCE=only-managed.`
);
@@ -62927,8 +64878,8 @@ undici/lib/web/websocket/frame.js:
smol-toml/dist/date.js:
smol-toml/dist/error.js:
smol-toml/dist/primitive.js:
smol-toml/dist/util.js:
smol-toml/dist/primitive.js:
smol-toml/dist/extract.js:
smol-toml/dist/struct.js:
smol-toml/dist/parse.js:
Generated Vendored
+6483 -2365
View File
File diff suppressed because it is too large Load Diff
+2571 -565
View File
@@ -8542,7 +8542,7 @@ var require_proxy_agent = __commonJS({
return this.#client.destroy(err);
}
};
var ProxyAgent3 = class extends DispatcherBase {
var ProxyAgent2 = class extends DispatcherBase {
constructor(opts) {
super();
if (!opts || typeof opts === "object" && !(opts instanceof URL2) && !opts.uri) {
@@ -8683,7 +8683,7 @@ var require_proxy_agent = __commonJS({
throw new InvalidArgumentError("Proxy-Authorization should be sent in ProxyAgent constructor");
}
}
module2.exports = ProxyAgent3;
module2.exports = ProxyAgent2;
}
});
@@ -8693,14 +8693,14 @@ var require_env_http_proxy_agent = __commonJS({
"use strict";
var DispatcherBase = require_dispatcher_base();
var { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = require_symbols();
var ProxyAgent3 = require_proxy_agent();
var ProxyAgent2 = require_proxy_agent();
var Agent = require_agent();
var DEFAULT_PORTS = {
"http:": 80,
"https:": 443
};
var experimentalWarned = false;
var EnvHttpProxyAgent = class extends DispatcherBase {
var EnvHttpProxyAgent2 = class extends DispatcherBase {
#noProxyValue = null;
#noProxyEntries = null;
#opts = null;
@@ -8717,13 +8717,13 @@ var require_env_http_proxy_agent = __commonJS({
this[kNoProxyAgent] = new Agent(agentOpts);
const HTTP_PROXY = httpProxy ?? process.env.http_proxy ?? process.env.HTTP_PROXY;
if (HTTP_PROXY) {
this[kHttpProxyAgent] = new ProxyAgent3({ ...agentOpts, uri: HTTP_PROXY });
this[kHttpProxyAgent] = new ProxyAgent2({ ...agentOpts, uri: HTTP_PROXY });
} else {
this[kHttpProxyAgent] = this[kNoProxyAgent];
}
const HTTPS_PROXY = httpsProxy ?? process.env.https_proxy ?? process.env.HTTPS_PROXY;
if (HTTPS_PROXY) {
this[kHttpsProxyAgent] = new ProxyAgent3({ ...agentOpts, uri: HTTPS_PROXY });
this[kHttpsProxyAgent] = new ProxyAgent2({ ...agentOpts, uri: HTTPS_PROXY });
} else {
this[kHttpsProxyAgent] = this[kHttpProxyAgent];
}
@@ -8819,7 +8819,7 @@ var require_env_http_proxy_agent = __commonJS({
return process.env.no_proxy ?? process.env.NO_PROXY ?? "";
}
};
module2.exports = EnvHttpProxyAgent;
module2.exports = EnvHttpProxyAgent2;
}
});
@@ -18454,8 +18454,8 @@ var require_undici = __commonJS({
var Pool = require_pool();
var BalancedPool = require_balanced_pool();
var Agent = require_agent();
var ProxyAgent3 = require_proxy_agent();
var EnvHttpProxyAgent = require_env_http_proxy_agent();
var ProxyAgent2 = require_proxy_agent();
var EnvHttpProxyAgent2 = require_env_http_proxy_agent();
var RetryAgent = require_retry_agent();
var errors = require_errors();
var util = require_util();
@@ -18477,8 +18477,8 @@ var require_undici = __commonJS({
module2.exports.Pool = Pool;
module2.exports.BalancedPool = BalancedPool;
module2.exports.Agent = Agent;
module2.exports.ProxyAgent = ProxyAgent3;
module2.exports.EnvHttpProxyAgent = EnvHttpProxyAgent;
module2.exports.ProxyAgent = ProxyAgent2;
module2.exports.EnvHttpProxyAgent = EnvHttpProxyAgent2;
module2.exports.RetryAgent = RetryAgent;
module2.exports.RetryHandler = RetryHandler;
module2.exports.DecoratorHandler = DecoratorHandler;
@@ -19803,6 +19803,7 @@ var require_symbols6 = __commonJS({
kCounter: /* @__PURE__ */ Symbol("socket request counter"),
kMaxResponseSize: /* @__PURE__ */ Symbol("max response size"),
kHTTP2Session: /* @__PURE__ */ Symbol("http2Session"),
kHTTP2Options: /* @__PURE__ */ Symbol("http2 options"),
kHTTP2SessionState: /* @__PURE__ */ Symbol("http2Session state"),
kRetryHandlerDefaultRetry: /* @__PURE__ */ Symbol("retry agent default retry"),
kConstruct: /* @__PURE__ */ Symbol("constructable"),
@@ -20394,6 +20395,22 @@ var require_errors2 = __commonJS({
return true;
}
};
var kProxyConnectionError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_PRX_CONN");
var ProxyConnectionError = class extends UndiciError {
constructor(cause, message, options = {}) {
super(message, { cause, ...options });
this.name = "ProxyConnectionError";
this.message = message || "Proxy Connection failed";
this.code = "UND_ERR_PRX_CONN";
this.cause = cause;
}
static [Symbol.hasInstance](instance) {
return instance && instance[kProxyConnectionError] === true;
}
get [kProxyConnectionError]() {
return true;
}
};
var kMaxOriginsReachedError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");
var MaxOriginsReachedError = class extends UndiciError {
constructor(message) {
@@ -20455,6 +20472,7 @@ var require_errors2 = __commonJS({
RequestRetryError,
ResponseError,
SecureProxyConnectionError,
ProxyConnectionError,
MaxOriginsReachedError,
Socks5ProxyError,
MessageSizeExceededError
@@ -20912,7 +20930,10 @@ var require_util9 = __commonJS({
if (Object.getPrototypeOf(stream2).constructor === IncomingMessage) {
stream2.socket = null;
}
stream2.destroy(err);
try {
stream2.destroy(err);
} catch {
}
} else if (err) {
queueMicrotask(() => {
stream2.emit("error", err);
@@ -21100,9 +21121,8 @@ var require_util9 = __commonJS({
return object && typeof object === "object" && typeof object.append === "function" && typeof object.delete === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.has === "function" && typeof object.set === "function" && object[Symbol.toStringTag] === "FormData";
}
function addAbortListener(signal, listener) {
if (signal instanceof AbortSignal) {
const disposable = addAbortListenerNative(signal, listener);
return () => disposable[Symbol.dispose]();
if (!signal || "aborted" in signal) {
return addAbortListenerNative(signal, listener)[Symbol.dispose];
}
if (typeof signal.addEventListener === "function") {
signal.addEventListener("abort", listener, { once: true });
@@ -21406,7 +21426,8 @@ var require_util9 = __commonJS({
var rangeHeaderRegex = /^bytes (\d+)-(\d+)\/(\d+|\*)?$/;
function parseRangeHeader(range) {
if (range == null || range === "") return { start: 0, end: null, size: null };
const m = range ? range.match(rangeHeaderRegex) : null;
if (!range) return null;
const m = rangeHeaderRegex.exec(range);
return m ? {
start: parseInt(m[1]),
end: m[2] ? parseInt(m[2]) : null,
@@ -21480,7 +21501,18 @@ var require_util9 = __commonJS({
message += ` timeout: ${opts.timeout}ms)`;
destroy(socket, new ConnectTimeoutError(message));
}
var lastUrlString = null;
var lastProtocol = null;
function getProtocolFromUrlString(urlString) {
if (urlString === lastUrlString) {
return lastProtocol;
}
const protocol = getProtocolFromUrlStringSlow(urlString);
lastUrlString = urlString;
lastProtocol = protocol;
return protocol;
}
function getProtocolFromUrlStringSlow(urlString) {
if (urlString[0] === "h" && urlString[1] === "t" && urlString[2] === "t" && urlString[3] === "p") {
switch (urlString[4]) {
case ":":
@@ -21493,8 +21525,10 @@ var require_util9 = __commonJS({
}
return urlString.slice(0, urlString.indexOf(":") + 1);
}
var kEnumerableProperty = /* @__PURE__ */ Object.create(null);
kEnumerableProperty.enumerable = true;
var kEnumerableProperty = {
__proto__: null,
enumerable: true
};
var normalizedMethodRecordsBase = {
delete: "DELETE",
DELETE: "DELETE",
@@ -21507,7 +21541,9 @@ var require_util9 = __commonJS({
post: "POST",
POST: "POST",
put: "PUT",
PUT: "PUT"
PUT: "PUT",
query: "QUERY",
QUERY: "QUERY"
};
var normalizedMethodRecords = {
...normalizedMethodRecordsBase,
@@ -21958,7 +21994,7 @@ var require_request3 = __commonJS({
this.headersTimeout = headersTimeout;
this.bodyTimeout = bodyTimeout;
this.method = method;
this.typeOfService = typeOfService ?? 0;
this.typeOfService = typeOfService;
this.abort = null;
if (body == null) {
this.body = null;
@@ -21998,7 +22034,7 @@ var require_request3 = __commonJS({
this.path = query ? serializePathWithQuery(path, query) : path;
this.origin = origin;
this.protocol = getProtocolFromUrlString(origin);
this.idempotent = idempotent == null ? method === "HEAD" || method === "GET" : idempotent;
this.idempotent = idempotent == null ? method === "HEAD" || method === "GET" || method === "QUERY" : idempotent;
this.blocking = blocking ?? this.method !== "HEAD";
this.reset = reset == null ? null : reset;
this.host = null;
@@ -22192,7 +22228,11 @@ var require_request3 = __commonJS({
} else if (typeof val[i] === "object") {
throw new InvalidArgumentError(`invalid ${key} header`);
} else {
arr.push(`${val[i]}`);
const str = `${val[i]}`;
if (!isValidHeaderValue(str)) {
throw new InvalidArgumentError(`invalid ${key} header`);
}
arr.push(str);
}
}
val = arr;
@@ -22204,6 +22244,9 @@ var require_request3 = __commonJS({
val = "";
} else {
val = `${val}`;
if (!isValidHeaderValue(val)) {
throw new InvalidArgumentError(`invalid ${key} header`);
}
}
if (headerName === "host") {
if (request.host !== null) {
@@ -22324,6 +22367,7 @@ var require_dispatcher_base2 = __commonJS({
*/
get webSocketOptions() {
return {
maxFragments: this[kWebSocketOptions].maxFragments ?? 131072,
maxPayloadSize: this[kWebSocketOptions].maxPayloadSize ?? 128 * 1024 * 1024
// 128 MB default
};
@@ -22448,7 +22492,7 @@ var require_connect2 = __commonJS({
var net = require("node:net");
var assert = require("node:assert");
var util = require_util9();
var { InvalidArgumentError } = require_errors2();
var { InvalidArgumentError, ConnectTimeoutError } = require_errors2();
var tls;
var SessionCache = class WeakSessionCache {
constructor(maxCachedSessions) {
@@ -22490,7 +22534,7 @@ var require_connect2 = __commonJS({
this._sessionRegistry.register(session, sessionKey);
}
};
function buildConnector({ allowH2, useH2c, maxCachedSessions, socketPath, timeout, session: customSession, ...opts }) {
function buildConnector({ allowH2, preferH2, useH2c, maxCachedSessions, socketPath, timeout, session: customSession, ...opts }) {
if (maxCachedSessions != null && (!Number.isInteger(maxCachedSessions) || maxCachedSessions < 0)) {
throw new InvalidArgumentError("maxCachedSessions must be a positive integer or zero");
}
@@ -22516,7 +22560,7 @@ var require_connect2 = __commonJS({
servername,
session,
localAddress,
ALPNProtocols: allowH2 ? ["http/1.1", "h2"] : ["http/1.1"],
ALPNProtocols: allowH2 ? preferH2 ? ["h2", "http/1.1"] : ["http/1.1", "h2"] : ["http/1.1"],
socket: httpSocket,
// upgrade socket connection
port,
@@ -22528,14 +22572,26 @@ var require_connect2 = __commonJS({
} else {
assert(!httpSocket, "httpSocket can only be sent on TLS update");
port = port || 80;
socket = net.connect({
const connectOptions = {
highWaterMark: 64 * 1024,
// Same as nodejs fs streams.
...options,
localAddress,
port,
host: hostname
});
};
const family = net.isIP(hostname);
if (family !== 0 && servername && servername !== hostname) {
connectOptions.host = servername;
connectOptions.lookup = (_hostname, lookupOptions, cb) => {
if (lookupOptions.all) {
cb(null, [{ address: hostname, family }]);
} else {
cb(null, hostname, family);
}
};
}
socket = net.connect(connectOptions);
if (useH2c === true) {
socket.alpnProtocol = "h2";
}
@@ -22557,12 +22613,27 @@ var require_connect2 = __commonJS({
if (callback) {
const cb = callback;
callback = null;
cb(err);
cb(maybeNormalizeConnectError(err, this, { timeout, hostname, port }));
}
});
return socket;
};
}
function maybeNormalizeConnectError(err, socket, opts) {
if (err instanceof AggregateError && (err.code === "ETIMEDOUT" || err.errors.some((e) => e != null && e.code === "ETIMEDOUT"))) {
let message = "Connect Timeout Error";
if (Array.isArray(socket.autoSelectFamilyAttemptedAddresses)) {
message += ` (attempted addresses: ${socket.autoSelectFamilyAttemptedAddresses.join(", ")},`;
} else {
message += ` (attempted address: ${opts.hostname}:${opts.port},`;
}
message += ` timeout: ${opts.timeout}ms)`;
const wrapped = new ConnectTimeoutError(message);
wrapped.cause = err;
return wrapped;
}
return err;
}
module2.exports = buildConnector;
}
});
@@ -23369,7 +23440,7 @@ var require_constants8 = __commonJS({
);
var safeMethods = (
/** @type {const} */
["GET", "HEAD", "OPTIONS", "TRACE"]
["GET", "HEAD", "OPTIONS", "TRACE", "QUERY"]
);
var safeMethodsSet = new Set(safeMethods);
var requestMode = (
@@ -25091,7 +25162,7 @@ var require_util10 = __commonJS({
if (rangeEndValue === null && rangeStartValue === null) {
return "failure";
}
if (rangeStartValue > rangeEndValue) {
if (rangeStartValue !== null && rangeEndValue !== null && rangeStartValue > rangeEndValue) {
return "failure";
}
return { rangeStartValue, rangeEndValue };
@@ -25877,6 +25948,7 @@ var require_body2 = __commonJS({
var { multipartFormDataParser } = require_formdata_parser2();
var { parseJSONFromBytes } = require_infra();
var { utf8DecodeBytes } = require_encoding2();
var { ReadableStreamTee } = require("node:stream/web");
var textEncoder = new TextEncoder();
function noop() {
}
@@ -26019,7 +26091,7 @@ Content-Type: ${value.type || "application/octet-stream"}\r
return extractBody(object, keepalive);
}
function cloneBody(body) {
const { 0: out1, 1: out2 } = body.stream.tee();
const { 0: out1, 1: out2 } = ReadableStreamTee?.(body.stream, true) ?? body.stream.tee();
body.stream = out1;
return {
stream: out2,
@@ -26081,6 +26153,29 @@ Content-Type: ${value.type || "application/octet-stream"}\r
return consumeBody(this, (bytes) => {
return new Uint8Array(bytes);
}, instance, getInternalState);
},
textStream() {
const this_ = getInternalState(this);
if (bodyUnusable(this_)) {
throw new TypeError("Body is unusable: Body has already been read");
}
if (this_.body == null) {
let controller;
const emptyStream = new ReadableStream({
start: (c) => {
controller = c;
},
pull: () => Promise.resolve(),
cancel: () => Promise.resolve()
}, {
size: () => 1
});
controller.close();
return emptyStream;
}
const stream = this_.body.stream;
const decoder = new TextDecoderStream("UTF-8");
return stream.pipeThrough(decoder);
}
};
return methods;
@@ -26149,6 +26244,7 @@ var require_client_h12 = __commonJS({
RequestContentLengthMismatchError,
ResponseContentLengthMismatchError,
RequestAbortedError,
InvalidArgumentError,
HeadersTimeoutError,
HeadersOverflowError,
SocketError,
@@ -26195,6 +26291,10 @@ var require_client_h12 = __commonJS({
var EMPTY_BUF = Buffer.alloc(0);
var FastBuffer = Buffer[Symbol.species];
var removeAllListeners = util.removeAllListeners;
var kIdleSocketValidation = /* @__PURE__ */ Symbol("kIdleSocketValidation");
var kIdleSocketValidationTimeout = /* @__PURE__ */ Symbol("kIdleSocketValidationTimeout");
var kSocketUsed = /* @__PURE__ */ Symbol("kSocketUsed");
var kTypeOfService = /* @__PURE__ */ Symbol("kTypeOfService");
var extractBody;
function lazyllhttp() {
const llhttpWasmData = process.env.JEST_WORKER_ID ? require_llhttp_wasm2() : void 0;
@@ -26435,8 +26535,20 @@ var require_client_h12 = __commonJS({
finish() {
assert(currentParser === null);
assert(this.ptr != null);
assert(!this.paused);
const { llhttp } = this;
if (this.paused) {
let data;
do {
llhttp.llhttp_resume(this.ptr);
this.paused = false;
data = this.socket.read() || EMPTY_BUF;
this.execute(data);
} while (this.paused && data.length > 0);
if (this.paused) {
llhttp.llhttp_resume(this.ptr);
this.paused = false;
}
}
let ret;
try {
currentParser = this;
@@ -26493,6 +26605,10 @@ var require_client_h12 = __commonJS({
if (socket.destroyed) {
return -1;
}
if (client[kRunning] === 0) {
util.destroy(socket, new SocketError("bad response", util.getSocketInfo(socket)));
return -1;
}
const request = client[kQueue][client[kRunningIdx]];
if (!request) {
return -1;
@@ -26600,6 +26716,10 @@ var require_client_h12 = __commonJS({
if (socket.destroyed) {
return -1;
}
if (client[kRunning] === 0) {
util.destroy(socket, new SocketError("bad response", util.getSocketInfo(socket)));
return -1;
}
const request = client[kQueue][client[kRunningIdx]];
if (!request) {
return -1;
@@ -26733,6 +26853,7 @@ var require_client_h12 = __commonJS({
}
request.onResponseEnd(headers);
client[kQueue][client[kRunningIdx]++] = null;
socket[kSocketUsed] = client[kPending] === 0;
if (socket[kWriting]) {
assert(client[kRunning] === 0);
util.destroy(socket, new InformationalError("reset"));
@@ -26786,6 +26907,9 @@ var require_client_h12 = __commonJS({
socket[kWriting] = false;
socket[kReset] = false;
socket[kBlocking] = false;
socket[kIdleSocketValidation] = 0;
socket[kIdleSocketValidationTimeout] = null;
socket[kSocketUsed] = false;
socket[kParser] = new Parser(client, socket, llhttpInstance);
util.addListener(socket, "error", onHttpSocketError);
util.addListener(socket, "readable", onHttpSocketReadable);
@@ -26825,7 +26949,7 @@ var require_client_h12 = __commonJS({
* @returns {boolean}
*/
busy(request) {
if (socket[kWriting] || socket[kReset] || socket[kBlocking]) {
if (socket[kWriting] || socket[kReset] || socket[kBlocking] || socket[kIdleSocketValidation] === 1) {
return true;
}
if (request) {
@@ -26873,6 +26997,7 @@ var require_client_h12 = __commonJS({
}
function onHttpSocketClose() {
const parser = this[kParser];
clearIdleSocketValidation(this);
if (parser) {
if (!this[kError] && parser.statusCode && !parser.shouldKeepAlive) {
this[kError] = parser.finish() || this[kError];
@@ -26904,6 +27029,24 @@ var require_client_h12 = __commonJS({
function onSocketClose() {
this[kClosed] = true;
}
function clearIdleSocketValidation(socket) {
if (socket[kIdleSocketValidationTimeout]) {
clearTimeout(socket[kIdleSocketValidationTimeout]);
socket[kIdleSocketValidationTimeout] = null;
}
socket[kIdleSocketValidation] = 0;
}
function scheduleIdleSocketValidation(client, socket) {
socket[kIdleSocketValidation] = 1;
socket[kIdleSocketValidationTimeout] = setTimeout(() => {
socket[kIdleSocketValidationTimeout] = null;
socket[kIdleSocketValidation] = 2;
if (client[kSocket] === socket && !socket.destroyed) {
client[kResume]();
}
}, 0);
socket[kIdleSocketValidationTimeout].unref?.();
}
function resumeH1(client) {
const socket = client[kSocket];
if (socket && !socket.destroyed) {
@@ -26916,6 +27059,29 @@ var require_client_h12 = __commonJS({
socket.ref();
socket[kNoRef] = false;
}
if (client[kRunning] === 0 && client[kPending] > 0 && socket[kSocketUsed]) {
if (socket[kIdleSocketValidation] === 0) {
scheduleIdleSocketValidation(client, socket);
socket[kParser].readMore();
if (socket.destroyed) {
return;
}
return;
}
if (socket[kIdleSocketValidation] === 1) {
socket[kParser].readMore();
if (socket.destroyed) {
return;
}
return;
}
}
if (client[kRunning] === 0) {
socket[kParser].readMore();
if (socket.destroyed) {
return;
}
}
if (client[kSize] === 0) {
if (socket[kParser].timeoutType !== TIMEOUT_KEEP_ALIVE) {
socket[kParser].setTimeout(client[kKeepAliveTimeoutValue], TIMEOUT_KEEP_ALIVE);
@@ -26932,6 +27098,24 @@ var require_client_h12 = __commonJS({
function shouldSendContentLength(method) {
return method !== "GET" && method !== "HEAD" && method !== "OPTIONS" && method !== "TRACE" && method !== "CONNECT";
}
function setTypeOfService(socket, request) {
if (typeof socket.setTypeOfService !== "function") {
return;
}
const typeOfService = request.typeOfService;
if (typeOfService === void 0) {
return;
}
const currentTypeOfService = socket[kTypeOfService];
if (currentTypeOfService === typeOfService) {
return;
}
try {
socket.setTypeOfService(typeOfService);
socket[kTypeOfService] = typeOfService;
} catch {
}
}
function writeH1(client, request) {
const { method, path, host, upgrade, blocking, reset } = request;
let { body, headers, contentLength } = request;
@@ -26946,8 +27130,16 @@ var require_client_h12 = __commonJS({
}
body = bodyStream.stream;
contentLength = bodyStream.length;
} else if (util.isBlobLike(body) && request.contentType == null && body.type) {
headers.push("content-type", body.type);
} else if (util.isBlobLike(body) && request.contentType == null) {
const contentType = body.type;
if (contentType) {
const contentTypeValue = `${contentType}`;
if (!util.isValidHeaderValue(contentTypeValue)) {
util.errorRequest(client, request, new InvalidArgumentError("invalid content-type header"));
return false;
}
headers.push("content-type", contentTypeValue);
}
}
if (body && typeof body.read === "function") {
body.read(0);
@@ -26968,6 +27160,7 @@ var require_client_h12 = __commonJS({
process.emitWarning(new RequestContentLengthMismatchError());
}
const socket = client[kSocket];
clearIdleSocketValidation(socket);
const abort = (err) => {
if (request.aborted || request.completed) {
return;
@@ -26999,9 +27192,7 @@ var require_client_h12 = __commonJS({
if (blocking) {
socket[kBlocking] = true;
}
if (socket.setTypeOfService) {
socket.setTypeOfService(request.typeOfService);
}
setTypeOfService(socket, request);
let header = `${method} ${path} HTTP/1.1\r
`;
if (typeof host === "string") {
@@ -27359,7 +27550,9 @@ var require_client_h22 = __commonJS({
RequestAbortedError,
SocketError,
InformationalError,
InvalidArgumentError
InvalidArgumentError,
HeadersTimeoutError,
BodyTimeoutError
} = require_errors2();
var {
kUrl,
@@ -27375,20 +27568,20 @@ var require_client_h22 = __commonJS({
kStrictContentLength,
kOnError,
kMaxConcurrentStreams,
kPingInterval,
kHTTP2Session,
kHTTP2InitialWindowSize,
kHTTP2ConnectionWindowSize,
kHostAuthority,
kResume,
kSize,
kHTTPContext,
kClosed,
kKeepAliveDefaultTimeout,
kHeadersTimeout,
kBodyTimeout,
kEnableConnectProtocol,
kRemoteSettings,
kHTTP2Stream,
kHTTP2SessionState
kHTTP2SessionState,
kHTTP2Options
} = require_symbols6();
var { channels } = require_diagnostics2();
var kOpenStreams = /* @__PURE__ */ Symbol("open streams");
@@ -27397,6 +27590,9 @@ var require_client_h22 = __commonJS({
var kRequestStreamCleanup = /* @__PURE__ */ Symbol("request stream cleanup");
var kRequestStreamState = /* @__PURE__ */ Symbol("request stream state");
var kReceivedGoAway = /* @__PURE__ */ Symbol("received goaway");
var kGoAwayReplayAttempts = /* @__PURE__ */ Symbol("goaway replay attempts");
var kRefusedStreamRetry = /* @__PURE__ */ Symbol("refused stream retry");
var MAX_GOAWAY_REPLAY_ATTEMPTS = 1;
var extractBody;
var http2;
try {
@@ -27421,6 +27617,25 @@ var require_client_h22 = __commonJS({
function getGoAwayError(session, errorCode) {
return session[kError] || (errorCode === NGHTTP2_NO_ERROR ? new InformationalError(`HTTP/2: "GOAWAY" frame received with code ${errorCode}`) : new SocketError(`HTTP/2: "GOAWAY" frame received with code ${errorCode}`, util.getSocketInfo(session[kSocket])));
}
function resetHttp2Session(session, err) {
const client = session[kClient];
const socket = session[kSocket];
if (client[kHTTP2Session] === session) {
client[kSocket] = null;
client[kHTTPContext] = null;
client[kHTTP2Session] = null;
}
if (socket != null && socket[kError] == null) {
socket[kError] = err;
}
if (!session.closed && !session.destroyed) {
try {
session.destroy(err);
} catch {
}
}
util.destroy(socket, err);
}
function getGoAwayPendingIdx(client, lastStreamID) {
const maxAcceptedStreamID = Number.isInteger(lastStreamID) ? lastStreamID : Number.MAX_SAFE_INTEGER;
for (let i = client[kRunningIdx]; i < client[kPendingIdx]; i++) {
@@ -27454,13 +27669,37 @@ var require_client_h22 = __commonJS({
detachRequestFromStream(request);
cleanup?.(stream);
}
function canRetryRequestAfterGoAway(request) {
function requeueUnsentRequest(client, request) {
client[kQueue].splice(client[kPendingIdx] + 1, 0, request);
}
function completeRequest(client, request, resetPendingIdx = false) {
const queue = client[kQueue];
const runningIdx = client[kRunningIdx];
if (runningIdx < client[kPendingIdx] && queue[runningIdx] === request) {
queue[runningIdx] = null;
client[kRunningIdx] = runningIdx + 1;
return;
}
const index = queue.indexOf(request, runningIdx);
if (index === -1 || index >= client[kPendingIdx]) {
return;
}
queue.splice(index, 1);
client[kPendingIdx]--;
if (resetPendingIdx && client[kPendingIdx] < client[kRunningIdx]) {
client[kPendingIdx] = client[kRunningIdx];
}
}
function canReplayRequest(request) {
const { body } = request;
return body == null || util.isBuffer(body) || util.isBlobLike(body);
}
function closeRequestStream(request, code = NGHTTP2_REFUSED_STREAM) {
const stream = request[kRequestStream];
clearRequestStream(request);
function registerGoAwayRefusal(request) {
const attempts = (request[kGoAwayReplayAttempts] ?? 0) + 1;
request[kGoAwayReplayAttempts] = attempts;
return attempts <= MAX_GOAWAY_REPLAY_ATTEMPTS;
}
function closeStream(stream, code = NGHTTP2_REFUSED_STREAM) {
if (stream != null && !stream.destroyed && !stream.closed) {
try {
stream.close(code);
@@ -27468,13 +27707,33 @@ var require_client_h22 = __commonJS({
}
}
}
function detachRequestStreamForClose(request) {
const stream = request[kRequestStream];
clearRequestStream(request);
severRequestStream(stream);
return stream;
}
function severRequestStream(stream) {
if (stream == null || stream[kRequestStreamState] == null) {
return;
}
stream[kRequestStreamState] = null;
stream.off("close", completeRequestStream);
stream.off("close", onUpgradeStreamClose);
if (stream[kHTTP2Session] != null) {
closeStreamSession(stream);
}
if (!stream.destroyed && !stream.closed) {
stream.once("error", noop);
}
}
function connectH2(client, socket) {
client[kSocket] = socket;
const http2InitialWindowSize = client[kHTTP2InitialWindowSize];
const http2ConnectionWindowSize = client[kHTTP2ConnectionWindowSize];
const http2InitialWindowSize = client[kHTTP2Options].sessionOptions?.initialWindowSize;
const http2ConnectionWindowSize = client[kHTTP2Options].connectionWindowSize;
const session = http2.connect(client[kUrl], {
createConnection: () => socket,
peerMaxConcurrentStreams: client[kMaxConcurrentStreams],
peerMaxConcurrentStreams: client[kHTTP2Options].maxConcurrentStreams,
settings: {
// TODO(metcoder95): add support for PUSH
enablePush: false,
@@ -27486,8 +27745,17 @@ var require_client_h22 = __commonJS({
session[kClient] = client;
session[kSocket] = socket;
session[kHTTP2SessionState] = {
idleTimeout: null,
// Armed while the peer advertises MAX_CONCURRENT_STREAMS = 0 and we have
// work that cannot start. See setNoStreamsTimeout.
noStreamsTimeout: null,
// Sockets start out ref'd. Session ref/unref proxies to the socket, so a
// single cached flag lets us skip redundant uv ref/unref calls, provided
// every ref/unref of the session or its socket goes through
// refH2Session/unrefH2Session.
refed: true,
ping: {
interval: client[kPingInterval] === 0 ? null : setInterval(onHttp2SendPing, client[kPingInterval], session).unref()
interval: client[kHTTP2Options].pingInterval === 0 ? null : setInterval(onHttp2SendPing, client[kHTTP2Options].pingInterval, session).unref()
}
};
session[kReceivedGoAway] = false;
@@ -27498,11 +27766,10 @@ var require_client_h22 = __commonJS({
}
util.addListener(session, "error", onHttp2SessionError);
util.addListener(session, "frameError", onHttp2FrameError);
util.addListener(session, "end", onHttp2SessionEnd);
util.addListener(session, "goaway", onHttp2SessionGoAway);
util.addListener(session, "close", onHttp2SessionClose);
util.addListener(session, "remoteSettings", onHttp2RemoteSettings);
session.unref();
unrefH2Session(session);
client[kHTTP2Session] = session;
socket[kHTTP2Session] = session;
util.addListener(socket, "error", onHttp2SocketError);
@@ -27556,9 +27823,7 @@ var require_client_h22 = __commonJS({
}
if (request != null) {
if (client[kRunning] > 0) {
if (request.idempotent === false) return true;
if ((request.upgrade === "websocket" || request.method === "CONNECT") && session[kRemoteSettings] === false) return true;
if (util.bodyLength(request.body) !== 0 && (util.isStream(request.body) || util.isAsyncIterable(request.body) || util.isFormDataLike(request.body))) return true;
} else {
return (request.upgrade === "websocket" || request.method === "CONNECT") && session[kRemoteSettings] === false;
}
@@ -27567,18 +27832,109 @@ var require_client_h22 = __commonJS({
}
};
}
function refH2Session(session) {
const state = session[kHTTP2SessionState];
if (state.refed === false) {
state.refed = true;
session.ref();
}
}
function unrefH2Session(session) {
const state = session[kHTTP2SessionState];
if (state.refed === true) {
state.refed = false;
session.unref();
}
}
function resumeH2(client) {
const socket = client[kSocket];
const session = client[kHTTP2Session];
if (socket?.destroyed === false) {
if (client[kSize] === 0 || client[kMaxConcurrentStreams] === 0) {
socket.unref();
client[kHTTP2Session].unref();
unrefH2Session(session);
} else {
socket.ref();
client[kHTTP2Session].ref();
refH2Session(session);
}
if (client[kSize] === 0 && session[kOpenStreams] === 0) {
setHttp2IdleTimeout(session);
} else {
clearHttp2IdleTimeout(session);
}
if (client[kMaxConcurrentStreams] === 0 && client[kRunning] === 0 && client[kPending] > 0) {
setNoStreamsTimeout(session);
} else {
clearNoStreamsTimeout(session);
}
}
}
function clearNoStreamsTimeout(session) {
const state = session[kHTTP2SessionState];
if (state?.noStreamsTimeout != null) {
clearTimeout(state.noStreamsTimeout);
state.noStreamsTimeout = null;
}
}
function setNoStreamsTimeout(session) {
const client = session[kClient];
const state = session[kHTTP2SessionState];
const timeout = client[kHeadersTimeout];
if (!timeout || state.noStreamsTimeout != null) {
return;
}
state.noStreamsTimeout = setTimeout(onNoStreamsTimeout, timeout, session).unref();
}
function onNoStreamsTimeout(session) {
const client = session[kClient];
const state = session[kHTTP2SessionState];
state.noStreamsTimeout = null;
if (client[kHTTP2Session] !== session || client[kMaxConcurrentStreams] !== 0 || client[kRunning] !== 0 || client[kPending] === 0) {
return;
}
const err = new HeadersTimeoutError(
`HTTP/2: server did not accept a new stream within ${client[kHeadersTimeout]}`
);
const requests = client[kQueue].splice(client[kPendingIdx]);
for (let i = 0; i < requests.length; i++) {
if (requests[i] != null) {
util.errorRequest(client, requests[i], err);
}
}
session[kError] = err;
resetHttp2Session(session, err);
}
function clearHttp2IdleTimeout(session) {
const state = session[kHTTP2SessionState];
if (state?.idleTimeout != null) {
clearTimeout(state.idleTimeout);
state.idleTimeout = null;
}
}
function setHttp2IdleTimeout(session) {
const client = session[kClient];
if (client[kHTTP2Session] !== session || session.closed || session.destroyed) {
return;
}
if (session[kOpenStreams] !== 0 || client[kSize] !== 0) {
clearHttp2IdleTimeout(session);
return;
}
const state = session[kHTTP2SessionState];
if (state.idleTimeout == null) {
state.idleTimeout = setTimeout(onHttp2SessionIdleTimeout, client[kKeepAliveDefaultTimeout], session).unref();
}
}
function onHttp2SessionIdleTimeout(session) {
const client = session[kClient];
const socket = session[kSocket];
const state = session[kHTTP2SessionState];
state.idleTimeout = null;
if (client[kHTTP2Session] !== session || session[kOpenStreams] !== 0 || client[kSize] !== 0 || session.closed || session.destroyed) {
return;
}
const err = new InformationalError("socket idle timeout");
socket[kError] = err;
util.destroy(socket, err);
}
function applyConnectionWindowSize(connectionWindowSize) {
try {
if (typeof this.setLocalWindowSize === "function") {
@@ -27622,20 +27978,21 @@ var require_client_h22 = __commonJS({
function onHttp2SessionError(err) {
assert(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
this[kSocket][kError] = err;
if (this[kReceivedGoAway]) {
return;
}
this[kClient][kOnError](err);
}
function onHttp2FrameError(type, code, id) {
if (id === 0) {
if (this[kReceivedGoAway]) {
return;
}
const err = new InformationalError(`HTTP/2: "frameError" received - type ${type}, code ${code}`);
this[kSocket][kError] = err;
this[kClient][kOnError](err);
}
}
function onHttp2SessionEnd() {
const err = new SocketError("other side closed", util.getSocketInfo(this[kSocket]));
this.destroy(err);
util.destroy(this[kSocket], err);
}
function onHttp2SessionGoAway(errorCode, lastStreamID) {
if (this[kReceivedGoAway]) {
return;
@@ -27646,17 +28003,21 @@ var require_client_h22 = __commonJS({
const previousPendingIdx = client[kPendingIdx];
const pendingIdx = getGoAwayPendingIdx(client, lastStreamID);
const retriableRequests = [];
const streamsToClose = [];
for (let i = pendingIdx; i < previousPendingIdx; i++) {
const request = client[kQueue][i];
if (request != null) {
closeRequestStream(request);
if (canRetryRequestAfterGoAway(request)) {
streamsToClose.push(detachRequestStreamForClose(request));
if (canReplayRequest(request) && registerGoAwayRefusal(request)) {
retriableRequests.push(request);
} else {
util.errorRequest(client, request, err);
}
}
}
for (let i = 0; i < streamsToClose.length; i++) {
closeStream(streamsToClose[i]);
}
if (pendingIdx !== previousPendingIdx) {
const remainingPendingRequests = client[kQueue].slice(previousPendingIdx);
client[kQueue].length = pendingIdx;
@@ -27667,6 +28028,8 @@ var require_client_h22 = __commonJS({
client[kHTTPContext] = null;
client[kHTTP2Session] = null;
}
clearHttp2IdleTimeout(this);
clearNoStreamsTimeout(this);
if (!this.closed && !this.destroyed) {
this.close();
}
@@ -27682,6 +28045,8 @@ var require_client_h22 = __commonJS({
client[kHTTPContext] = null;
client[kHTTP2Session] = null;
}
clearHttp2IdleTimeout(this);
clearNoStreamsTimeout(this);
if (state.ping.interval != null) {
clearInterval(state.ping.interval);
state.ping.interval = null;
@@ -27691,7 +28056,9 @@ var require_client_h22 = __commonJS({
const requests = client[kQueue].splice(client[kRunningIdx]);
for (let i = 0; i < requests.length; i++) {
const request = requests[i];
util.errorRequest(client, request, err);
if (request != null) {
util.errorRequest(client, request, err);
}
}
}
}
@@ -27718,7 +28085,10 @@ var require_client_h22 = __commonJS({
function onHttp2SocketError(err) {
assert(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
this[kError] = err;
this[kClient][kOnError](err);
if (this[kHTTP2Session]?.[kReceivedGoAway]) {
return;
}
this[kHTTP2Session]?.[kClient]?.[kOnError](err);
}
function onHttp2SocketEnd() {
util.destroy(this, new SocketError("other side closed", util.getSocketInfo(this)));
@@ -27733,7 +28103,8 @@ var require_client_h22 = __commonJS({
stream[kHTTP2Session] = null;
session[kOpenStreams] -= 1;
if (session[kOpenStreams] === 0) {
session.unref();
unrefH2Session(session);
setHttp2IdleTimeout(session);
}
}
function onUpgradeStreamClose() {
@@ -27743,9 +28114,22 @@ var require_client_h22 = __commonJS({
failUpgradeStream(state, new InformationalError("HTTP/2: stream closed before response headers"));
closeStreamSession(this);
}
function onRequestStreamClose() {
this.off("data", onData);
this.off("error", noop);
function completeRequestStream() {
const state = this[kRequestStreamState];
if (state == null) {
return;
}
releaseRequestStream(this);
if (state.pendingEnd && !state.request.aborted && !state.request.completed) {
state.request.onResponseEnd(state.trailers || {});
} else if (!state.request.aborted && !state.request.completed) {
util.errorRequest(
state.client,
state.request,
new InformationalError("HTTP/2: stream closed before the response was complete")
);
}
finalizeRequest(state);
closeStreamSession(this);
this[kRequestStreamState] = null;
}
@@ -27824,7 +28208,7 @@ var require_client_h22 = __commonJS({
}
function onUpgradeStreamTimeout() {
const state = this[kRequestStreamState];
failUpgradeStream(state, new InformationalError(`HTTP/2: "stream timeout after ${state.requestTimeout}"`));
failUpgradeStream(state, new InformationalError(`HTTP/2: "stream timeout after ${state.headersTimeout}"`));
}
function onUpgradeResponse(headers, _flags) {
const stream = this;
@@ -27839,10 +28223,10 @@ var require_client_h22 = __commonJS({
}
removeUpgradeStreamListeners(stream);
detachRequestFromStream(request);
state.finalizeRequest();
finalizeRequest(state);
}
function setupUpgradeStream(stream, state) {
const { request, requestTimeout, session } = state;
const { request, headersTimeout, session } = state;
stream[kHTTP2Stream] = true;
stream[kHTTP2Session] = session;
stream[kRequestStreamState] = state;
@@ -27853,33 +28237,67 @@ var require_client_h22 = __commonJS({
stream.once("end", onUpgradeStreamEnd);
stream.on("timeout", onUpgradeStreamTimeout);
stream.once("close", onUpgradeStreamClose);
clearHttp2IdleTimeout(session);
++session[kOpenStreams];
stream.setTimeout(requestTimeout);
stream.setTimeout(headersTimeout);
}
function finalizeRequest(state, resetPendingIdx = false) {
if (state.requestFinalized) {
return;
}
state.requestFinalized = true;
completeRequest(state.client, state.request, resetPendingIdx);
state.client[kResume]();
}
function openStream(client, request, session, abort, headers, options) {
try {
return session.request(headers, options);
} catch (err) {
if (err?.code === "ERR_HTTP2_INVALID_SESSION" || err?.code === "ERR_HTTP2_GOAWAY_SESSION") {
const wrappedErr2 = new SocketError(err.message, util.getSocketInfo(session[kSocket]));
wrappedErr2.cause = err;
session[kError] = wrappedErr2;
resetHttp2Session(session, wrappedErr2);
requeueUnsentRequest(client, request);
return null;
}
const wrappedErr = new InformationalError(err.message, { cause: err });
session[kError] = wrappedErr;
session[kSocket][kError] = wrappedErr;
session.destroy(wrappedErr);
util.destroy(session[kSocket], wrappedErr);
abort(wrappedErr);
return null;
}
}
function writeH2(client, request) {
const requestTimeout = request.bodyTimeout ?? client[kBodyTimeout];
const headersTimeout = request.headersTimeout ?? client[kHeadersTimeout];
const bodyTimeout = request.bodyTimeout ?? client[kBodyTimeout];
const session = client[kHTTP2Session];
const { method, path, host, upgrade, expectContinue, signal, protocol, headers: reqHeaders } = request;
let { body } = request;
if (upgrade != null && upgrade !== "websocket") {
util.errorRequest(client, request, new InvalidArgumentError(`Custom upgrade "${upgrade}" not supported over HTTP/2`));
return false;
}
const headers = buildRequestHeaders(reqHeaders);
let stream = null;
headers[HTTP2_HEADER_AUTHORITY] = host || client[kHostAuthority];
headers[HTTP2_HEADER_METHOD] = method;
let requestFinalized = false;
const finalizeRequest = (resetPendingIdx = false) => {
if (requestFinalized) {
return;
}
requestFinalized = true;
client[kQueue][client[kRunningIdx]++] = null;
if (resetPendingIdx) {
client[kPendingIdx] = client[kRunningIdx];
}
client[kResume]();
const state = {
abort: null,
body: request.body,
client,
contentLength: null,
expectsPayload: false,
request,
headersTimeout,
bodyTimeout,
requestFinalized: false,
responseReceived: false,
bodySent: false,
pendingEnd: false,
trailers: null,
session,
stream: null
};
const abort = (err, resetPendingIdx = false) => {
if (request.aborted || request.completed) {
@@ -27887,30 +28305,20 @@ var require_client_h22 = __commonJS({
}
err = err || new RequestAbortedError();
util.errorRequest(client, request, err);
if (stream != null) {
if (state.stream != null) {
clearRequestStream(request);
stream.close();
client[kOnError](err);
finalizeRequest(resetPendingIdx);
}
util.destroy(body, err);
};
const requestStream = (headers2, options) => {
try {
return session.request(headers2, options);
} catch (err) {
if (err?.code !== "ERR_HTTP2_INVALID_CONNECTION_HEADERS") {
throw err;
const stream2 = state.stream;
stream2.close();
if (!stream2.destroyed) {
util.destroy(stream2);
}
const wrappedErr = new InformationalError(err.message, { cause: err });
session[kError] = wrappedErr;
session[kSocket][kError] = wrappedErr;
session.destroy(wrappedErr);
util.destroy(session[kSocket], wrappedErr);
abort(wrappedErr);
return null;
client[kOnError](err);
finalizeRequest(state, resetPendingIdx);
}
util.destroy(state.body, err);
};
state.abort = abort;
let stream = null;
try {
request.onRequestStart(abort, null);
} catch (err) {
@@ -27920,20 +28328,11 @@ var require_client_h22 = __commonJS({
return false;
}
if (upgrade || method === "CONNECT") {
session.ref();
const upgradeState = {
abort,
finalizeRequest,
request,
requestTimeout,
responseReceived: false,
session,
stream: null
};
refH2Session(session);
if (upgrade === "websocket") {
if (session[kEnableConnectProtocol] === false) {
util.errorRequest(client, request, new InformationalError("HTTP/2: Extended CONNECT protocol not supported by server"));
session.unref();
unrefH2Session(session);
return false;
}
headers[HTTP2_HEADER_METHOD] = "CONNECT";
@@ -27944,25 +28343,26 @@ var require_client_h22 = __commonJS({
} else {
headers[HTTP2_HEADER_SCHEME] = protocol === "http:" ? "http" : "https";
}
stream = requestStream(headers, { endStream: false, signal });
stream = openStream(client, request, session, abort, headers, { endStream: false, signal });
if (stream == null) {
session.unref();
unrefH2Session(session);
return false;
}
setupUpgradeStream(stream, upgradeState);
setupUpgradeStream(stream, state);
return true;
}
stream = requestStream(headers, { endStream: false, signal });
stream = openStream(client, request, session, abort, headers, { endStream: false, signal });
if (stream == null) {
session.unref();
unrefH2Session(session);
return false;
}
setupUpgradeStream(stream, upgradeState);
setupUpgradeStream(stream, state);
return true;
}
headers[HTTP2_HEADER_PATH] = path;
headers[HTTP2_HEADER_SCHEME] = protocol === "http:" ? "http" : "https";
const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH" || method === "QUERY" || method === "PROPFIND" || method === "PROPPATCH";
let body = state.body;
if (body && typeof body.read === "function") {
body.read(0);
}
@@ -27991,7 +28391,7 @@ var require_client_h22 = __commonJS({
assert(body || contentLength === 0, "no body must not have content length");
headers[HTTP2_HEADER_CONTENT_LENGTH] = `${contentLength}`;
}
session.ref();
refH2Session(session);
if (channels.sendHeaders.hasSubscribers) {
let header = "";
for (const key in headers) {
@@ -28001,45 +28401,39 @@ var require_client_h22 = __commonJS({
channels.sendHeaders.publish({ request, headers: header, socket: session[kSocket] });
}
const shouldEndStream = body === null || contentLength === 0;
const state = {
abort,
body,
client,
contentLength,
expectsPayload,
finalizeRequest,
request,
requestTimeout,
responseReceived: false,
session,
stream: null
};
state.body = body;
state.contentLength = contentLength;
state.expectsPayload = expectsPayload;
if (expectContinue) {
headers[HTTP2_HEADER_EXPECT] = "100-continue";
}
stream = requestStream(headers, { endStream: shouldEndStream, signal });
stream = openStream(client, request, session, abort, headers, { endStream: shouldEndStream, signal });
if (stream == null) {
return false;
}
stream[kHTTP2Stream] = true;
stream[kRequestStreamState] = state;
state.stream = stream;
bindRequestToStream(request, stream, null);
clearHttp2IdleTimeout(session);
++session[kOpenStreams];
stream.setTimeout(requestTimeout);
if (headersTimeout) {
stream.setTimeout(headersTimeout);
}
stream[kHTTP2Session] = session;
stream.once("close", onRequestStreamClose);
stream.on("close", completeRequestStream);
bindRequestToStream(request, stream, releaseRequestStream);
if (expectContinue) {
stream.once("continue", writeBodyH2);
}
stream.once("response", onResponse);
stream.once("end", onEnd);
stream.once("error", onError);
stream.once("frameError", onFrameError);
stream.on("response", onResponse);
stream.on("end", onEnd);
stream.on("error", onError);
stream.on("frameError", onFrameError);
stream.on("aborted", onAborted);
stream.on("timeout", onTimeout);
stream.once("trailers", onTrailers);
if (headersTimeout || bodyTimeout) {
stream.on("timeout", onTimeout);
}
stream.on("trailers", onTrailers);
if (!expectContinue) {
writeBodyH2.call(stream);
}
@@ -28069,14 +28463,18 @@ var require_client_h22 = __commonJS({
if (request[kRequestStream] === stream) {
detachRequestFromStream(request);
}
removeRequestStreamListeners(stream);
if (!stream.destroyed && !stream.closed) {
removeRequestStreamListeners(stream);
stream.once("error", noop);
}
}
function onData(chunk) {
const stream = this;
const { request } = stream[kRequestStreamState];
const state = stream[kRequestStreamState];
if (state == null) {
return;
}
const { request } = state;
if (request.aborted || request.completed) {
return;
}
@@ -28087,13 +28485,23 @@ var require_client_h22 = __commonJS({
function onResponse(headers) {
const stream = this;
const state = stream[kRequestStreamState];
if (state == null) {
return;
}
const { request } = state;
stream.off("response", onResponse);
if (state.body != null && !state.bodySent && !stream.writableEnded) {
stream.removeListener("continue", writeBodyH2);
stream.end();
}
const statusCode = headers[HTTP2_HEADER_STATUS];
delete headers[HTTP2_HEADER_STATUS];
request.onResponseStarted();
state.responseReceived = true;
if (request.aborted) {
if (state.headersTimeout || state.bodyTimeout) {
stream.setTimeout(state.bodyTimeout);
}
if (request.aborted || request.completed) {
releaseRequestStream(stream);
return;
}
@@ -28105,30 +28513,56 @@ var require_client_h22 = __commonJS({
function onEnd() {
const stream = this;
const state = stream[kRequestStreamState];
if (state == null) {
return;
}
const { request } = state;
stream.off("end", onEnd);
releaseRequestStream(stream);
if (state.responseReceived) {
if (!request.aborted && !request.completed) {
request.onResponseEnd({});
state.pendingEnd = true;
completeRequestStream.call(stream);
}
state.finalizeRequest();
} else {
state.abort(new InformationalError("HTTP/2: stream half-closed (remote)"), true);
}
}
function retryRefusedStream(stream, state) {
const { client, request } = state;
if (state.responseReceived || request.aborted || request.completed || request[kRefusedStreamRetry] || !canReplayRequest(request)) {
return false;
}
request[kRefusedStreamRetry] = true;
detachRequestStreamForClose(request);
state.stream = null;
state.requestFinalized = true;
completeRequest(client, request);
client[kQueue].splice(client[kPendingIdx], 0, request);
client[kResume]();
return true;
}
function onError(err) {
const stream = this;
const state = stream[kRequestStreamState];
if (state == null) {
return;
}
stream.off("error", onError);
releaseRequestStream(stream);
if (typeof stream.rstCode === "number" && stream.rstCode !== NGHTTP2_NO_ERROR) {
err.http2ErrorCode = stream.rstCode;
}
if (stream.rstCode === NGHTTP2_REFUSED_STREAM && retryRefusedStream(stream, state)) {
return;
}
state.abort(err);
}
function onFrameError(type, code) {
const stream = this;
const state = stream[kRequestStreamState];
if (state == null) {
return;
}
stream.off("frameError", onFrameError);
releaseRequestStream(stream);
state.abort(new InformationalError(`HTTP/2: "frameError" received - type ${type}, code ${code}`));
}
function onAborted() {
@@ -28137,25 +28571,31 @@ var require_client_h22 = __commonJS({
function onTimeout() {
const stream = this;
const state = stream[kRequestStreamState];
releaseRequestStream(stream);
const err = new InformationalError(`HTTP/2: "stream timeout after ${state.requestTimeout}"`);
if (state == null) {
return;
}
stream.off("timeout", onTimeout);
const err = state.responseReceived ? new BodyTimeoutError(`HTTP/2: "stream timeout after ${state.bodyTimeout}"`) : new HeadersTimeoutError(`HTTP/2: "headers timeout after ${state.headersTimeout}"`);
state.abort(err);
}
function onTrailers(trailers) {
const stream = this;
const state = stream[kRequestStreamState];
if (state == null) {
return;
}
const { request } = state;
stream.off("trailers", onTrailers);
stream.off("data", onData);
if (request.aborted || request.completed) {
return;
}
releaseRequestStream(stream);
request.onResponseEnd(trailers);
state.finalizeRequest();
state.trailers = trailers;
}
function writeBodyH2() {
const stream = this;
const state = stream[kRequestStreamState];
state.bodySent = true;
const { abort, body, client, contentLength, expectsPayload, request } = state;
if (!body || contentLength === 0) {
writeBuffer(
@@ -28395,10 +28835,8 @@ var require_client2 = __commonJS({
kHTTPContext,
kMaxConcurrentStreams,
kHostAuthority,
kHTTP2InitialWindowSize,
kHTTP2ConnectionWindowSize,
kResume,
kPingInterval
kHTTP2Options
} = require_symbols6();
var connectH1 = require_client_h12();
var connectH2 = require_client_h22();
@@ -28411,6 +28849,20 @@ var require_client2 = __commonJS({
function getPipelining(client) {
return client[kPipelining] ?? client[kHTTPContext]?.defaultPipelining ?? 1;
}
var h2NamespaceOptsWarning = false;
function emitH2OptionsNamespaceWarning(optName) {
if (h2NamespaceOptsWarning === true) return;
process.emitWarning(`Use h2Options.${optName} instead. ${optName} for H2 will be deprecated in future major.`, {
code: "UNDICI-H2-OPTIONS"
});
h2NamespaceOptsWarning = true;
}
function getMaxConcurrent(client) {
if (client[kHTTPContext]?.version === "h2") {
return client[kMaxConcurrentStreams];
}
return getPipelining(client);
}
var Client = class extends DispatcherBase {
/**
*
@@ -28448,7 +28900,8 @@ var require_client2 = __commonJS({
initialWindowSize,
connectionWindowSize,
pingInterval,
webSocket
webSocket,
h2Options
} = {}) {
if (keepAlive !== void 0) {
throw new InvalidArgumentError("unsupported keepAlive, use pipelining=0 instead");
@@ -28511,20 +28964,45 @@ var require_client2 = __commonJS({
if (allowH2 != null && typeof allowH2 !== "boolean") {
throw new InvalidArgumentError("allowH2 must be a valid boolean value");
}
if (maxConcurrentStreams != null && (typeof maxConcurrentStreams !== "number" || maxConcurrentStreams < 1)) {
throw new InvalidArgumentError("maxConcurrentStreams must be a positive integer, greater than 0");
}
if (useH2c != null && typeof useH2c !== "boolean") {
throw new InvalidArgumentError("useH2c must be a valid boolean value");
}
if (initialWindowSize != null && (!Number.isInteger(initialWindowSize) || initialWindowSize < 1)) {
throw new InvalidArgumentError("initialWindowSize must be a positive integer, greater than 0");
}
if (connectionWindowSize != null && (!Number.isInteger(connectionWindowSize) || connectionWindowSize < 1)) {
throw new InvalidArgumentError("connectionWindowSize must be a positive integer, greater than 0");
}
if (pingInterval != null && (typeof pingInterval !== "number" || !Number.isInteger(pingInterval) || pingInterval < 0)) {
throw new InvalidArgumentError("pingInterval must be a positive integer, greater or equal to 0");
if (allowH2 !== false) {
if (h2Options != null) {
if (h2Options.useH2c != null && typeof h2Options.useH2c !== "boolean") {
throw new InvalidArgumentError("h2Options.useH2c must be a valid boolean value");
}
if (h2Options.settings?.initialWindowSize != null && (!Number.isInteger(h2Options.settings.initialWindowSize) || h2Options.settings.initialWindowSize < 1)) {
throw new InvalidArgumentError("h2Options.settings.initialWindowSize must be a positive integer, greater than 0");
}
if (h2Options.maxConcurrentStreams != null && (!Number.isInteger(h2Options.connectionWindowSize) || h2Options.maxConcurrentStreams < 1)) {
throw new InvalidArgumentError("h2Options.maxConcurrentStreams must be a positive integer, greater than 0");
}
if (h2Options.connectionWindowSize != null && (!Number.isInteger(h2Options.connectionWindowSize) || h2Options.connectionWindowSize < 1)) {
throw new InvalidArgumentError("h2Options.connectionWindowSize must be a positive integer, greater than 0");
}
if (h2Options.pingInterval != null && (typeof h2Options.pingInterval !== "number" || !Number.isInteger(h2Options.pingInterval) || h2Options.pingInterval < 0)) {
throw new InvalidArgumentError("h2Options.pingInterval must be a positive integer, greater or equal to 0");
}
} else {
if (useH2c != null && typeof useH2c !== "boolean") {
emitH2OptionsNamespaceWarning("useH2c");
throw new InvalidArgumentError("useH2c must be a valid boolean value");
}
if (maxConcurrentStreams != null && (typeof maxConcurrentStreams !== "number" || maxConcurrentStreams < 1)) {
emitH2OptionsNamespaceWarning("maxConcurrentStreams");
throw new InvalidArgumentError("maxConcurrentStreams must be a positive integer, greater than 0");
}
if (initialWindowSize != null && (!Number.isInteger(initialWindowSize) || initialWindowSize < 1)) {
emitH2OptionsNamespaceWarning("initialWindowSize");
throw new InvalidArgumentError("initialWindowSize must be a positive integer, greater than 0");
}
if (connectionWindowSize != null && (!Number.isInteger(connectionWindowSize) || connectionWindowSize < 1)) {
emitH2OptionsNamespaceWarning("connectionWindowSize");
throw new InvalidArgumentError("connectionWindowSize must be a positive integer, greater than 0");
}
if (pingInterval != null && (typeof pingInterval !== "number" || !Number.isInteger(pingInterval) || pingInterval < 0)) {
emitH2OptionsNamespaceWarning("pingInterval");
throw new InvalidArgumentError("pingInterval must be a positive integer, greater or equal to 0");
}
}
}
super({ webSocket });
if (typeof connect2 !== "function") {
@@ -28532,8 +29010,8 @@ var require_client2 = __commonJS({
...tls,
maxCachedSessions,
allowH2,
useH2c,
socketPath,
useH2c: h2Options?.useH2c ?? useH2c,
timeout: connectTimeout,
...typeof autoSelectFamily === "boolean" ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0,
...connect2
@@ -28568,10 +29046,21 @@ var require_client2 = __commonJS({
this[kClosedResolve] = null;
this[kMaxResponseSize] = maxResponseSize > -1 ? maxResponseSize : -1;
this[kHTTPContext] = null;
this[kMaxConcurrentStreams] = maxConcurrentStreams != null ? maxConcurrentStreams : 100;
this[kHTTP2InitialWindowSize] = initialWindowSize != null ? initialWindowSize : 262144;
this[kHTTP2ConnectionWindowSize] = connectionWindowSize != null ? connectionWindowSize : 524288;
this[kPingInterval] = pingInterval != null ? pingInterval : 6e4;
this[kHTTP2Options] = {
pingInterval: h2Options?.pingInterval ?? pingInterval ?? 6e4,
connectionWindowSize: h2Options?.connectionWindowSize ?? connectionWindowSize ?? 524288,
maxConcurrentStreams: h2Options?.maxConcurrentStreams ?? maxConcurrentStreams ?? 100,
// Max peerConcurrentStreams for a Node h2 server
sessionOptions: {
// HTTP/2 window sizes are set to higher defaults than Node.js core for better performance:
// - initialWindowSize: 262144 (256KB) vs Node.js default 65535 (64KB - 1)
// Allows more data to be sent before requiring acknowledgment, improving throughput
// especially on high-latency networks. This matches common production HTTP/2 servers.
// - connectionWindowSize: 524288 (512KB) vs Node.js default (none set)
// Provides better flow control for the entire connection across multiple streams.
initialWindowSize: h2Options?.initialWindowSize ?? initialWindowSize ?? 262144
}
};
this[kQueue] = [];
this[kRunningIdx] = 0;
this[kPendingIdx] = 0;
@@ -28601,8 +29090,9 @@ var require_client2 = __commonJS({
return !!this[kHTTPContext] && !this[kConnecting] && !this[kHTTPContext].destroyed;
}
get [kBusy]() {
const allowsMux = this[kHTTPContext]?.version === "h2";
return Boolean(
this[kHTTPContext]?.busy(null) || this[kSize] >= (getPipelining(this) || 1) || this[kPending] > 0
this[kHTTPContext]?.busy(null) || this[kSize] >= (getMaxConcurrent(this) || 1) || this[kPending] > 0 && !allowsMux
);
}
[kConnect](cb) {
@@ -28638,7 +29128,9 @@ var require_client2 = __commonJS({
const requests = this[kQueue].splice(this[kPendingIdx]);
for (let i = 0; i < requests.length; i++) {
const request = requests[i];
util.errorRequest(this, request, err);
if (request != null) {
util.errorRequest(this, request, err);
}
}
const callback = () => {
if (this[kClosedResolve]) {
@@ -28663,7 +29155,9 @@ var require_client2 = __commonJS({
const requests = client[kQueue].splice(client[kRunningIdx]);
for (let i = 0; i < requests.length; i++) {
const request = requests[i];
util.errorRequest(client, request, err);
if (request != null) {
util.errorRequest(client, request, err);
}
}
assert(client[kSize] === 0);
}
@@ -28771,9 +29265,13 @@ var require_client2 = __commonJS({
});
}
if (err.code === "ERR_TLS_CERT_ALTNAME_INVALID") {
assert(client[kRunning] === 0);
const running = client[kQueue].splice(client[kRunningIdx], client[kRunning]);
client[kPendingIdx] = client[kRunningIdx];
for (let i = 0; i < running.length; i++) {
util.errorRequest(client, running[i], err);
}
while (client[kPending] > 0 && client[kQueue][client[kPendingIdx]].servername === client[kServerName]) {
const request = client[kQueue][client[kPendingIdx]++];
const request = client[kQueue].splice(client[kPendingIdx], 1)[0];
util.errorRequest(client, request, err);
}
} else {
@@ -28826,7 +29324,7 @@ var require_client2 = __commonJS({
if (client[kPending] === 0) {
return;
}
if (client[kRunning] >= (getPipelining(client) || 1)) {
if (client[kRunning] >= (getMaxConcurrent(client) || 1)) {
return;
}
const request = client[kQueue][client[kPendingIdx]];
@@ -28847,6 +29345,7 @@ var require_client2 = __commonJS({
return;
}
if (!client[kHTTPContext]) {
client[kServerName] = request.servername;
connect(client);
return;
}
@@ -29617,14 +30116,14 @@ var require_agent2 = __commonJS({
dispatcher.close();
}
let hasOrigin = false;
for (const client of this[kClients].values()) {
if (client[kUrl].origin === dispatcher[kUrl].origin) {
for (const k of this[kClients].keys()) {
if (k === origin || k === `${origin}#http1-only`) {
hasOrigin = true;
break;
}
}
if (!hasOrigin) {
this[kOrigins].delete(dispatcher[kUrl].origin);
this[kOrigins].delete(origin);
}
};
dispatcher.on("drain", this[kOnDrain]).on("connect", this[kOnConnect]).on("disconnect", (origin2, targets, err) => {
@@ -30257,7 +30756,7 @@ var require_socks5_proxy_agent = __commonJS({
var DispatcherBase = require_dispatcher_base2();
var { InvalidArgumentError } = require_errors2();
var { Socks5Client, STATES } = require_socks5_client();
var { kDispatch, kClose, kDestroy } = require_symbols6();
var { kBusy, kConnected, kDispatch, kClose, kDestroy } = require_symbols6();
var Pool = require_pool2();
var buildConnector = require_connect2();
var { debuglog } = require("node:util");
@@ -30268,6 +30767,7 @@ var require_socks5_proxy_agent = __commonJS({
var kProxyProtocol = /* @__PURE__ */ Symbol("proxy protocol");
var kPools = /* @__PURE__ */ Symbol("pools");
var kConnector = /* @__PURE__ */ Symbol("connector");
var kRequestTls = /* @__PURE__ */ Symbol("request tls settings");
var experimentalWarningEmitted = false;
var Socks5ProxyAgent = class extends DispatcherBase {
constructor(proxyUrl, options = {}) {
@@ -30289,6 +30789,7 @@ var require_socks5_proxy_agent = __commonJS({
this[kProxyUrl] = url;
this[kProxyHeaders] = options.headers || {};
this[kProxyProtocol] = options.proxyTls ? "https:" : "http:";
this[kRequestTls] = options.requestTls;
this[kProxyAuth] = {
username: options.username || (url.username ? decodeURIComponent(url.username) : null),
password: options.password || (url.password ? decodeURIComponent(url.password) : null)
@@ -30396,9 +30897,9 @@ var require_socks5_proxy_agent = __commonJS({
}
debug2("upgrading to TLS");
finalSocket = tls.connect({
...this[kRequestTls],
socket,
servername: targetHost,
...connectOpts.tls || {}
servername: this[kRequestTls]?.servername || targetHost
});
const tlsReady = Promise.withResolvers();
finalSocket.once("secureConnect", tlsReady.resolve);
@@ -30413,6 +30914,17 @@ var require_socks5_proxy_agent = __commonJS({
}
});
this[kPools].set(originKey, pool);
const closePoolIfUnused = () => {
if (this[kPools].get(originKey) !== pool || pool[kConnected] > 0 || pool[kBusy]) {
return;
}
this[kPools].delete(originKey);
if (!pool.destroyed) {
pool.close();
}
};
pool.on("disconnect", closePoolIfUnused);
pool.on("connectionError", closePoolIfUnused);
}
return pool[kDispatch](opts, handler);
} catch (err) {
@@ -30457,7 +30969,7 @@ var require_proxy_agent2 = __commonJS({
var Agent = require_agent2();
var Pool = require_pool2();
var DispatcherBase = require_dispatcher_base2();
var { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = require_errors2();
var { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError, ProxyConnectionError } = require_errors2();
var buildConnector = require_connect2();
var Client = require_client2();
var { channels } = require_diagnostics2();
@@ -30485,14 +30997,19 @@ var require_proxy_agent2 = __commonJS({
}
return new Pool(origin, opts);
}
function shouldProxyTunnel(requestProtocol, proxyTunnel) {
return proxyTunnel === true || requestProtocol !== "http:";
}
var Http1ProxyWrapper = class extends DispatcherBase {
#client;
constructor(proxyUrl, { headers = {}, connect, factory }) {
#proxyServername;
constructor(proxyUrl, { headers = {}, connect, factory, proxyServername }) {
if (!proxyUrl) {
throw new InvalidArgumentError("Proxy URL is mandatory");
}
super();
this[kProxyHeaders] = headers;
this.#proxyServername = proxyServername;
if (factory) {
this.#client = factory(proxyUrl, { connect });
} else {
@@ -30521,6 +31038,9 @@ var require_proxy_agent2 = __commonJS({
headers.host = host;
}
opts.headers = { ...this[kProxyHeaders], ...headers };
if (this.#proxyServername != null) {
opts.servername = this.#proxyServername;
}
return this.#client[kDispatch](opts, handler);
}
[kClose]() {
@@ -30530,7 +31050,7 @@ var require_proxy_agent2 = __commonJS({
return this.#client.destroy(err);
}
};
var ProxyAgent3 = class extends DispatcherBase {
var ProxyAgent2 = class extends DispatcherBase {
constructor(opts) {
if (!opts || typeof opts === "object" && !(opts instanceof URL) && !opts.uri) {
throw new InvalidArgumentError("Proxy uri is mandatory");
@@ -30539,7 +31059,7 @@ var require_proxy_agent2 = __commonJS({
if (typeof clientFactory !== "function") {
throw new InvalidArgumentError("Proxy opts.clientFactory must be a function.");
}
const { proxyTunnel = true, connectTimeout } = opts;
const { proxyTunnel, connectTimeout } = opts;
super();
const url = this.#getUrl(opts);
const { href, origin, port, protocol, username, password, hostname: proxyHostname } = url;
@@ -30560,6 +31080,7 @@ var require_proxy_agent2 = __commonJS({
this[kProxyHeaders]["proxy-authorization"] = `Basic ${Buffer.from(`${decodeURIComponent(username)}:`).toString("base64")}`;
}
const connect = buildConnector({ timeout: connectTimeout, ...opts.proxyTls });
const connectHTTP1 = buildConnector({ timeout: connectTimeout, ...opts.proxyTls, allowH2: false });
this[kConnectEndpoint] = buildConnector({ timeout: connectTimeout, ...opts.requestTls });
this[kConnectEndpointHTTP1] = buildConnector({ timeout: connectTimeout, ...opts.requestTls, allowH2: false });
const agentFactory = opts.factory || defaultAgentFactory;
@@ -30572,14 +31093,23 @@ var require_proxy_agent2 = __commonJS({
factory: agentFactory,
username: opts.username || username,
password: opts.password || password,
proxyTls: opts.proxyTls
proxyTls: opts.proxyTls,
requestTls: opts.requestTls
});
}
if (!this[kTunnelProxy] && protocol2 === "http:" && this[kProxy].protocol === "http:") {
if (!shouldProxyTunnel(protocol2, this[kTunnelProxy])) {
const forwardConnect = this[kProxy].protocol === "https:" ? (opts2, cb) => connectHTTP1(opts2, (err, socket) => {
if (err && err.code === "ERR_TLS_CERT_ALTNAME_INVALID") {
cb(new SecureProxyConnectionError(err));
} else {
cb(err, socket);
}
}) : connectHTTP1;
return new Http1ProxyWrapper(this[kProxy].uri, {
headers: this[kProxyHeaders],
connect,
factory: agentFactory
connect: forwardConnect,
factory: agentFactory,
proxyServername: this[kProxy].protocol === "https:" ? this[kProxyTls]?.servername || proxyHostname : void 0
});
}
return agentFactory(origin2, options);
@@ -30641,6 +31171,8 @@ var require_proxy_agent2 = __commonJS({
} catch (err) {
if (err.code === "ERR_TLS_CERT_ALTNAME_INVALID") {
callback(new SecureProxyConnectionError(err));
} else if (err.code === "UND_ERR_SOCKET") {
callback(new ProxyConnectionError(err));
} else {
callback(err);
}
@@ -30717,7 +31249,7 @@ var require_proxy_agent2 = __commonJS({
function throwProxyAuthError() {
throw new InvalidArgumentError("Proxy-Authorization should be sent in ProxyAgent constructor");
}
module2.exports = ProxyAgent3;
module2.exports = ProxyAgent2;
}
});
@@ -30727,13 +31259,13 @@ var require_env_http_proxy_agent2 = __commonJS({
"use strict";
var DispatcherBase = require_dispatcher_base2();
var { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = require_symbols6();
var ProxyAgent3 = require_proxy_agent2();
var ProxyAgent2 = require_proxy_agent2();
var Agent = require_agent2();
var DEFAULT_PORTS = {
"http:": 80,
"https:": 443
};
var EnvHttpProxyAgent = class extends DispatcherBase {
var EnvHttpProxyAgent2 = class extends DispatcherBase {
#noProxyValue = null;
#noProxyEntries = null;
#opts = null;
@@ -30744,13 +31276,13 @@ var require_env_http_proxy_agent2 = __commonJS({
this[kNoProxyAgent] = new Agent(agentOpts);
const HTTP_PROXY = httpProxy ?? process.env.http_proxy ?? process.env.HTTP_PROXY;
if (HTTP_PROXY) {
this[kHttpProxyAgent] = new ProxyAgent3({ ...agentOpts, uri: HTTP_PROXY });
this[kHttpProxyAgent] = new ProxyAgent2({ ...agentOpts, uri: HTTP_PROXY });
} else {
this[kHttpProxyAgent] = this[kNoProxyAgent];
}
const HTTPS_PROXY = httpsProxy ?? process.env.https_proxy ?? process.env.HTTPS_PROXY;
if (HTTPS_PROXY) {
this[kHttpsProxyAgent] = new ProxyAgent3({ ...agentOpts, uri: HTTPS_PROXY });
this[kHttpsProxyAgent] = new ProxyAgent2({ ...agentOpts, uri: HTTPS_PROXY });
} else {
this[kHttpsProxyAgent] = this[kHttpProxyAgent];
}
@@ -30777,7 +31309,7 @@ var require_env_http_proxy_agent2 = __commonJS({
}
#getProxyAgentForUrl(url) {
let { protocol, host: hostname, port } = url;
hostname = hostname.replace(/:\d*$/, "").toLowerCase();
hostname = hostname.replace(/:\d*$/, "").replace(/^\[(.+)\]$/, "$1").toLowerCase();
port = Number.parseInt(port, 10) || DEFAULT_PORTS[protocol] || 0;
if (!this.#shouldProxy(hostname, port)) {
return this[kNoProxyAgent];
@@ -30820,11 +31352,22 @@ var require_env_http_proxy_agent2 = __commonJS({
if (!entry) {
continue;
}
const parsed = entry.match(/^(.+):(\d+)$/);
let hostname, port;
const ipv6WithPort = entry.match(/^\[(.+)\]:(\d+)$/);
if (ipv6WithPort) {
hostname = ipv6WithPort[1];
port = Number.parseInt(ipv6WithPort[2], 10);
} else {
const unbracketed = entry.replace(/^\[(.+)\]$/, "$1");
const colonCount = (unbracketed.match(/:/g) || []).length;
const parsed = colonCount === 1 && unbracketed.match(/^(.+):(\d+)$/);
hostname = parsed ? parsed[1] : unbracketed;
port = parsed ? Number.parseInt(parsed[2], 10) : 0;
}
noProxyEntries.push({
// strip leading dot or asterisk with dot
hostname: (parsed ? parsed[1] : entry).replace(/^\*?\./, "").toLowerCase(),
port: parsed ? Number.parseInt(parsed[2], 10) : 0
hostname: hostname.replace(/^\*?\./, "").toLowerCase(),
port
});
}
this.#noProxyValue = noProxyValue;
@@ -30840,7 +31383,7 @@ var require_env_http_proxy_agent2 = __commonJS({
return process.env.no_proxy ?? process.env.NO_PROXY ?? "";
}
};
module2.exports = EnvHttpProxyAgent;
module2.exports = EnvHttpProxyAgent2;
}
});
@@ -30858,8 +31401,54 @@ var require_retry_handler2 = __commonJS({
} = require_util9();
function calculateRetryAfterHeader(retryAfter) {
const retryTime = new Date(retryAfter).getTime();
return isNaN(retryTime) ? 0 : retryTime - Date.now();
return isNaN(retryTime) ? null : retryTime - Date.now();
}
function validatePartialResponseContentLength(headers, range, statusCode, retryCount) {
const contentLength = headers["content-length"];
if (contentLength == null) {
return;
}
if (!Number.isFinite(range.start) || !Number.isFinite(range.end)) {
return;
}
const length = Number(contentLength);
const expectedLength = range.end - range.start + 1;
if (!Number.isFinite(length) || length !== expectedLength) {
throw new RequestRetryError("Content-Length mismatch", statusCode, {
headers,
data: { count: retryCount }
});
}
}
var RetryController = class {
constructor() {
this.target = null;
}
pause() {
this.target?.pause();
}
resume() {
this.target?.resume();
}
abort(reason) {
this.target?.abort(reason);
}
get paused() {
return this.target?.paused ?? false;
}
get aborted() {
return this.target?.aborted ?? false;
}
get reason() {
return this.target?.reason ?? null;
}
get rawHeaders() {
return this.target?.rawHeaders ?? null;
}
get rawTrailers() {
return this.target?.rawTrailers ?? null;
}
};
var RetryHandler = class _RetryHandler {
constructor(opts, { dispatch, handler }) {
const { retryOptions, ...dispatchOpts } = opts;
@@ -30892,7 +31481,7 @@ var require_retry_handler2 = __commonJS({
timeoutFactor: timeoutFactor ?? 2,
maxRetries: maxRetries ?? 5,
// What errors we should retry
methods: methods ?? ["GET", "HEAD", "OPTIONS", "PUT", "DELETE", "TRACE"],
methods: methods ?? ["GET", "HEAD", "OPTIONS", "PUT", "DELETE", "TRACE", "QUERY"],
// Indicates which errors to retry
statusCodes: statusCodes ?? [500, 502, 503, 504, 429],
// List of errors to retry
@@ -30916,12 +31505,13 @@ var require_retry_handler2 = __commonJS({
this.etag = null;
this.statusCode = null;
this.headers = null;
this.controllerProxy = new RetryController();
}
onResponseStartWithRetry(controller, statusCode, headers, statusMessage, err) {
if (this.retryOpts.throwOnError) {
if (this.retryOpts.statusCodes.includes(statusCode) === false) {
this.headersSent = true;
this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
this.handler.onResponseStart?.(this.controllerProxy, statusCode, headers, statusMessage);
} else {
this.error = err;
}
@@ -30929,13 +31519,13 @@ var require_retry_handler2 = __commonJS({
}
if (isDisturbed(this.opts.body)) {
this.headersSent = true;
this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
this.handler.onResponseStart?.(this.controllerProxy, statusCode, headers, statusMessage);
return;
}
function shouldRetry(passedErr) {
if (passedErr) {
this.headersSent = true;
this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
this.handler.onResponseStart?.(this.controllerProxy, statusCode, headers, statusMessage);
controller.resume();
return;
}
@@ -30953,12 +31543,13 @@ var require_retry_handler2 = __commonJS({
);
}
onRequestStart(controller, context) {
this.controllerProxy.target = controller;
if (!this.headersSent) {
this.handler.onRequestStart?.(controller, context);
this.handler.onRequestStart?.(this.controllerProxy, context);
}
}
onRequestUpgrade(controller, statusCode, headers, socket) {
this.handler.onRequestUpgrade?.(controller, statusCode, headers, socket);
onRequestUpgrade(_controller, statusCode, headers, socket) {
this.handler.onRequestUpgrade?.(this.controllerProxy, statusCode, headers, socket);
}
static [kRetryHandlerDefaultRetry](err, { state, opts }, cb) {
const { statusCode, code, headers } = err;
@@ -30994,10 +31585,14 @@ var require_retry_handler2 = __commonJS({
retryAfterHeader = Number(retryAfterHeader);
retryAfterHeader = Number.isNaN(retryAfterHeader) ? calculateRetryAfterHeader(headers["retry-after"]) : retryAfterHeader * 1e3;
}
const retryTimeout = retryAfterHeader > 0 ? Math.min(retryAfterHeader, maxTimeout) : Math.min(minTimeout * timeoutFactor ** (counter - 1), maxTimeout);
const retryTimeout = retryAfterHeader === 0 ? 0 : retryAfterHeader > 0 ? Math.min(retryAfterHeader, maxTimeout) : Math.min(minTimeout * timeoutFactor ** (counter - 1), maxTimeout);
setTimeout(() => cb(null), retryTimeout);
}
onResponseStart(controller, statusCode, headers, statusMessage) {
if (statusCode < 200) {
this.handler.onResponseStart?.(this.controllerProxy, statusCode, headers, statusMessage);
return;
}
this.error = null;
this.retryCount += 1;
this.statusCode = statusCode;
@@ -31032,6 +31627,7 @@ var require_retry_handler2 = __commonJS({
data: { count: this.retryCount }
});
}
validatePartialResponseContentLength(headers, contentRange, statusCode, this.retryCount);
const { start, size, end = size ? size - 1 : null } = contentRange;
assert(this.start === start, "content-range mismatch");
assert(this.end == null || this.end === end, "content-range mismatch");
@@ -31040,16 +31636,17 @@ var require_retry_handler2 = __commonJS({
if (this.end == null) {
if (statusCode === 206) {
const range = parseRangeHeader(headers["content-range"]);
if (range == null) {
if (range == null || range.end == null) {
this.headersSent = true;
this.handler.onResponseStart?.(
controller,
this.controllerProxy,
statusCode,
headers,
statusMessage
);
return;
}
validatePartialResponseContentLength(headers, range, statusCode, this.retryCount);
const { start, size, end = size ? size - 1 : null } = range;
assert(
start != null && Number.isFinite(start),
@@ -31059,7 +31656,7 @@ var require_retry_handler2 = __commonJS({
this.start = start;
this.end = end;
}
if (this.end == null) {
if (this.end == null && this.opts.method !== "HEAD") {
const contentLength = headers["content-length"];
this.end = contentLength != null ? Number(contentLength) - 1 : null;
}
@@ -31075,7 +31672,7 @@ var require_retry_handler2 = __commonJS({
}
this.headersSent = true;
this.handler.onResponseStart?.(
controller,
this.controllerProxy,
statusCode,
headers,
statusMessage
@@ -31087,14 +31684,14 @@ var require_retry_handler2 = __commonJS({
});
}
}
onResponseData(controller, chunk) {
onResponseData(_controller, chunk) {
if (this.error) {
return;
}
this.start += chunk.length;
this.handler.onResponseData?.(controller, chunk);
this.handler.onResponseData?.(this.controllerProxy, chunk);
}
onResponseEnd(controller, trailers) {
onResponseEnd(_controller, trailers) {
if (this.error && this.retryOpts.throwOnError) {
throw this.error;
}
@@ -31108,11 +31705,11 @@ var require_retry_handler2 = __commonJS({
}
}
this.retryCount = 0;
return this.handler.onResponseEnd?.(controller, trailers);
return this.handler.onResponseEnd?.(this.controllerProxy, trailers);
}
this.retry(controller);
this.retry();
}
retry(controller) {
retry() {
if (this.start !== 0) {
const headers = { range: `bytes=${this.start}-${this.end ?? ""}` };
if (this.etag != null) {
@@ -31130,20 +31727,20 @@ var require_retry_handler2 = __commonJS({
this.retryCountCheckpoint = this.retryCount;
this.dispatch(this.opts, this);
} catch (err) {
this.handler.onResponseError?.(controller, err);
this.handler.onResponseError?.(this.controllerProxy, err);
}
}
onResponseError(controller, err) {
if (controller?.aborted || isDisturbed(this.opts.body)) {
this.handler.onResponseError?.(controller, err);
this.handler.onResponseError?.(this.controllerProxy, err);
return;
}
function shouldRetry(returnedErr) {
if (!returnedErr) {
this.retry(controller);
this.retry();
return;
}
this.handler?.onResponseError?.(controller, returnedErr);
this.handler?.onResponseError?.(this.controllerProxy, returnedErr);
}
if (this.retryCount - this.retryCountCheckpoint > 0) {
this.retryCount = this.retryCountCheckpoint + (this.retryCount - this.retryCountCheckpoint);
@@ -31498,7 +32095,7 @@ var require_readable2 = __commonJS({
*/
setEncoding(encoding) {
if (Buffer.isEncoding(encoding)) {
this._readableState.encoding = encoding;
super.setEncoding(encoding);
}
return this;
}
@@ -31559,13 +32156,17 @@ var require_readable2 = __commonJS({
consumePush(consume2, chunk);
}
}
if (state.endEmitted) {
consumeEnd(this[kConsume], this._readableState.encoding);
} else {
consume2.stream.on("end", function() {
consumeEnd(this[kConsume], this._readableState.encoding);
});
const decoder = state.decoder;
if (decoder != null && decoder.lastNeed > 0) {
consumePush(consume2, Buffer.from(decoder.lastChar.subarray(0, decoder.lastTotal - decoder.lastNeed)));
}
if (state.endEmitted) {
consumeEnd(consume2, state.encoding);
return;
}
consume2.stream.on("end", function() {
consumeEnd(this[kConsume], this._readableState.encoding);
});
consume2.stream.resume();
while (consume2.stream.read() != null) {
}
@@ -31619,6 +32220,12 @@ var require_readable2 = __commonJS({
}
}
function consumePush(consume2, chunk) {
if (consume2.body === null) {
return;
}
if (typeof chunk === "string") {
chunk = Buffer.from(chunk, consume2.stream._readableState.encoding);
}
consume2.length += chunk.length;
consume2.body.push(chunk);
}
@@ -31705,7 +32312,9 @@ var require_api_request2 = __commonJS({
this.removeAbortListener = util.addAbortListener(signal, () => {
this.reason = signal.reason ?? new RequestAbortedError();
if (this.res) {
util.destroy(this.res.on("error", noop), this.reason);
const res = this.res;
this.res = null;
util.destroy(res.on("error", noop), this.reason);
} else if (this.abort) {
this.abort(this.reason);
}
@@ -32601,6 +33210,7 @@ var require_mock_utils2 = __commonJS({
}
} = require("node:util");
var { InvalidArgumentError } = require_errors2();
var requestAborted = /* @__PURE__ */ Symbol("request aborted");
function matchValue(match, value) {
if (typeof match === "string") {
return match === value;
@@ -32713,6 +33323,8 @@ var require_mock_utils2 = __commonJS({
return data;
} else if (data instanceof ArrayBuffer) {
return data;
} else if (ArrayBuffer.isView(data)) {
return new Uint8Array(data.buffer, data.byteOffset, data.byteLength);
} else if (typeof data === "object") {
return JSON.stringify(data);
} else if (data) {
@@ -32766,6 +33378,9 @@ var require_mock_utils2 = __commonJS({
}
}
function removeTrailingSlash(path) {
if (typeof path !== "string") {
return path;
}
while (path.endsWith("/")) {
path = path.slice(0, -1);
}
@@ -32814,17 +33429,43 @@ var require_mock_utils2 = __commonJS({
function mockDispatch(opts, handler) {
const key = buildKey(opts);
const mockDispatch2 = getMockDispatch(this[kDispatches], key);
const mockDispatches = this[kDispatches];
mockDispatch2.timesInvoked++;
if (mockDispatch2.data.callback) {
mockDispatch2.data = { ...mockDispatch2.data, ...mockDispatch2.data.callback(opts) };
}
const { data: { statusCode, data, headers, trailers, error: error2 }, delay, persist } = mockDispatch2;
const { timesInvoked, times } = mockDispatch2;
mockDispatch2.consumed = !persist && timesInvoked >= times;
mockDispatch2.consumed = !mockDispatch2.persist && timesInvoked >= times;
mockDispatch2.pending = timesInvoked < times;
if (error2 !== null) {
deleteMockDispatch(this[kDispatches], key);
handler.onResponseError(null, error2);
const hasBodyHooks = typeof handler.onBodySent === "function" || typeof handler.onRequestSent === "function";
if (mockDispatch2.data.callback && (!hasBodyHooks || opts.body == null)) {
const { callback, ...responseDefaults } = mockDispatch2.data;
const callbackResult = callback(opts);
if (isPromise(callbackResult)) {
callbackResult.then(
(resolvedData) => {
if (resolvedData == null || typeof resolvedData !== "object") {
handler.onResponseError(null, new InvalidArgumentError("reply options callback must return an object"));
return;
}
mockDispatch2.data = { ...responseDefaults, ...resolvedData };
dispatchMockReply(mockDispatches, mockDispatch2, key, opts, handler);
},
(error2) => {
handler.onResponseError(null, error2);
}
);
return true;
}
if (callbackResult == null || typeof callbackResult !== "object") {
throw new InvalidArgumentError("reply options callback must return an object");
}
mockDispatch2.data = { ...responseDefaults, ...callbackResult };
}
return dispatchMockReply(mockDispatches, mockDispatch2, key, opts, handler);
}
function dispatchMockReply(mockDispatches, mockDispatch2, key, opts, handler) {
const { data: response, delay } = mockDispatch2;
if (response.error !== null) {
deleteMockDispatch(mockDispatches, key);
handler.onResponseError(null, response.error);
return true;
}
let aborted = false;
@@ -32851,39 +33492,172 @@ var require_mock_utils2 = __commonJS({
handler.onResponseError?.(controller, reason);
}
};
let replyOpts = opts;
const dispatches = mockDispatches;
handler.onRequestStart?.(controller, null);
if (typeof delay === "number" && delay > 0) {
timer = setTimeout(() => {
timer = null;
handleReply(this[kDispatches]);
}, delay);
} else {
handleReply(this[kDispatches]);
if (aborted) {
return true;
}
function handleReply(mockDispatches, _data = data) {
const requestBody = dispatchRequestBody(opts.body, handler, controller, () => aborted);
if (isPromise(requestBody)) {
requestBody.then((body) => {
if (body === requestAborted) {
return;
}
if (body !== opts.body) {
replyOpts = { ...opts, body };
}
sendReply();
}, (error2) => controller.abort(error2));
return true;
}
if (requestBody === requestAborted) {
return true;
}
if (requestBody !== opts.body) {
replyOpts = { ...opts, body: requestBody };
}
sendReply();
function sendReply() {
if (response.callback) {
const { callback, ...responseDefaults } = response;
let callbackResult;
try {
callbackResult = callback(replyOpts);
} catch (err) {
deleteMockDispatch(mockDispatches, key);
handler.onResponseError(null, err);
return;
}
if (isPromise(callbackResult)) {
callbackResult.then(
(resolvedData) => {
if (resolvedData == null || typeof resolvedData !== "object") {
handler.onResponseError(null, new InvalidArgumentError("reply options callback must return an object"));
return;
}
mockDispatch2.data = { ...responseDefaults, ...resolvedData };
handleReply(dispatches, mockDispatch2.data);
},
(err) => {
handler.onResponseError(null, err);
}
);
return;
}
if (callbackResult == null || typeof callbackResult !== "object") {
throw new InvalidArgumentError("reply options callback must return an object");
}
mockDispatch2.data = { ...responseDefaults, ...callbackResult };
handleReply(dispatches, mockDispatch2.data);
return;
}
if (typeof delay === "number" && delay > 0) {
timer = setTimeout(() => {
timer = null;
handleReply(dispatches);
}, delay);
} else {
handleReply(dispatches);
}
}
function handleReply(mockDispatches2, _response = response) {
if (aborted) {
return;
}
const { statusCode, data, headers, trailers } = _response;
const optsHeaders = Array.isArray(opts.headers) ? buildHeadersFromArray(opts.headers) : opts.headers;
const body = typeof _data === "function" ? _data({ ...opts, headers: optsHeaders }) : _data;
const body = typeof data === "function" ? data({ ...replyOpts, headers: optsHeaders }) : data;
if (isPromise(body)) {
return body.then((newData) => handleReply(mockDispatches, newData));
return body.then((newData) => handleReply(mockDispatches2, { ..._response, data: newData }));
}
if (aborted) {
return;
}
const responseData = getResponseData(body);
const responseHeaders = generateKeyValues(headers);
const responseTrailers = generateKeyValues(trailers);
const responseHeaders = generateKeyValues(headers ?? {});
const responseTrailers = generateKeyValues(trailers ?? {});
controller.rawHeaders = responseHeaders;
controller.rawTrailers = responseTrailers;
handler.onResponseStart?.(controller, statusCode, parseHeaders(responseHeaders), getStatusText(statusCode));
handler.onResponseData?.(controller, Buffer.from(responseData));
handler.onResponseEnd?.(controller, parseHeaders(responseTrailers));
deleteMockDispatch(mockDispatches, key);
deleteMockDispatch(mockDispatches2, key);
}
return true;
}
function dispatchRequestBody(body, handler, controller, isAborted) {
if (typeof handler.onBodySent !== "function" && typeof handler.onRequestSent !== "function") {
return body;
}
if (body == null) {
return callOnRequestSent(handler, controller, isAborted) ? body : requestAborted;
}
if (body && typeof body[Symbol.asyncIterator] === "function") {
return dispatchAsyncIterableBody(body, handler, controller, isAborted);
}
if (isIterableBody(body)) {
const chunks = [];
for (const chunk of body) {
if (isAborted()) {
return requestAborted;
}
chunks.push(chunk);
if (!callOnBodySent(handler, controller, chunk) || isAborted()) {
return requestAborted;
}
}
return callOnRequestSent(handler, controller, isAborted) ? chunks : requestAborted;
}
if (isAborted()) {
return requestAborted;
}
if (!callOnBodySent(handler, controller, body)) {
return requestAborted;
}
return callOnRequestSent(handler, controller, isAborted) ? body : requestAborted;
}
async function dispatchAsyncIterableBody(body, handler, controller, isAborted) {
const chunks = [];
for await (const chunk of body) {
if (isAborted()) {
return requestAborted;
}
chunks.push(chunk);
if (!callOnBodySent(handler, controller, chunk) || isAborted()) {
return requestAborted;
}
}
if (!callOnRequestSent(handler, controller, isAborted)) {
return requestAborted;
}
return {
async *[Symbol.asyncIterator]() {
yield* chunks;
}
};
}
function callOnBodySent(handler, controller, chunk) {
try {
handler.onBodySent?.(chunk);
return true;
} catch (error2) {
controller.abort(error2);
return false;
}
}
function callOnRequestSent(handler, controller, isAborted) {
try {
handler.onRequestSent?.();
return !isAborted();
} catch (error2) {
controller.abort(error2);
return false;
}
}
function isIterableBody(body) {
return typeof body !== "string" && !Buffer.isBuffer(body) && !ArrayBuffer.isView(body) && typeof body[Symbol.iterator] === "function";
}
function buildMockDispatch() {
const agent = this[kMockAgent];
const origin = this[kOrigin];
@@ -32984,6 +33758,11 @@ var require_mock_interceptor2 = __commonJS({
} = require_mock_symbols2();
var { InvalidArgumentError } = require_errors2();
var { serializePathWithQuery } = require_util9();
var {
types: {
isPromise
}
} = require("node:util");
var MockScope = class {
constructor(mockDispatch) {
this[kMockDispatch] = mockDispatch;
@@ -33065,8 +33844,7 @@ var require_mock_interceptor2 = __commonJS({
*/
reply(replyOptionsCallbackOrStatusCode) {
if (typeof replyOptionsCallbackOrStatusCode === "function") {
const wrappedDefaultsCallback = (opts) => {
const resolvedData = replyOptionsCallbackOrStatusCode(opts);
const resolveReplyCallbackData = (resolvedData) => {
if (typeof resolvedData !== "object" || resolvedData === null) {
throw new InvalidArgumentError("reply options callback must return an object");
}
@@ -33076,6 +33854,13 @@ var require_mock_interceptor2 = __commonJS({
...this.createMockScopeDispatchData(replyParameters2)
};
};
const wrappedDefaultsCallback = (opts) => {
const resolvedData = replyOptionsCallbackOrStatusCode(opts);
if (isPromise(resolvedData)) {
return resolvedData.then(resolveReplyCallbackData);
}
return resolveReplyCallbackData(resolvedData);
};
const newMockDispatch2 = addMockDispatch(this[kDispatches], this[kDispatchKey], wrappedDefaultsCallback, { ignoreTrailingSlash: this[kIgnoreTrailingSlash] });
return new MockScope(newMockDispatch2);
}
@@ -33224,7 +34009,7 @@ var require_mock_call_history = __commonJS({
return finalOptions;
}
function makeFilterCalls(parameterName) {
return (parameterValue, logs) => {
return (parameterValue, logs = this.logs) => {
if (typeof parameterValue === "string" || parameterValue == null) {
return logs.filter((log) => {
return log[parameterName] === parameterValue;
@@ -34442,7 +35227,11 @@ var require_snapshot_agent = __commonJS({
* @returns {Promise<void>}
*/
async close() {
await this[kSnapshotRecorder].close();
if (this[kSnapshotMode] === "playback") {
this[kSnapshotRecorder].destroy();
} else {
await this[kSnapshotRecorder].close();
}
await this[kRealAgent]?.close();
await super.close();
}
@@ -34460,6 +35249,7 @@ var require_global4 = __commonJS({
var { InvalidArgumentError } = require_errors2();
var Agent = require_agent2();
var Dispatcher1Wrapper = require_dispatcher1_wrapper();
var fallbackDispatcher;
if (getGlobalDispatcher() === void 0) {
setGlobalDispatcher(new Agent());
}
@@ -34467,22 +35257,36 @@ var require_global4 = __commonJS({
if (!agent || typeof agent.dispatch !== "function") {
throw new InvalidArgumentError("Argument agent must implement Agent");
}
Object.defineProperty(globalThis, globalDispatcher, {
value: agent,
writable: true,
enumerable: false,
configurable: false
});
const legacyAgent = agent instanceof Dispatcher1Wrapper ? agent : new Dispatcher1Wrapper(agent);
Object.defineProperty(globalThis, legacyGlobalDispatcher, {
value: legacyAgent,
writable: true,
enumerable: false,
configurable: false
});
try {
Object.defineProperty(globalThis, globalDispatcher, {
value: agent,
writable: true,
enumerable: false,
configurable: false
});
} catch (err) {
if (err instanceof TypeError) {
fallbackDispatcher = agent;
return;
}
throw err;
}
try {
const legacyAgent = agent instanceof Dispatcher1Wrapper ? agent : new Dispatcher1Wrapper(agent);
Object.defineProperty(globalThis, legacyGlobalDispatcher, {
value: legacyAgent,
writable: true,
enumerable: false,
configurable: false
});
} catch (err) {
if (!(err instanceof TypeError)) {
throw err;
}
}
}
function getGlobalDispatcher() {
return globalThis[globalDispatcher];
return globalThis[globalDispatcher] ?? fallbackDispatcher;
}
var installedExports = (
/** @type {const} */
@@ -34589,9 +35393,11 @@ var require_redirect_handler2 = __commonJS({
}
this.dispatch = dispatch;
this.location = null;
const { maxRedirections: _, ...cleanOpts } = opts;
const { maxRedirections: _, stripHeadersOnRedirect, stripHeadersOnCrossOriginRedirect, ...cleanOpts } = opts;
this.opts = cleanOpts;
this.opts.body = util.wrapRequestBody(this.opts.body);
this.stripHeadersOnRedirect = normalizeStripHeaders(stripHeadersOnRedirect, "stripHeadersOnRedirect");
this.stripHeadersOnCrossOriginRedirect = normalizeStripHeaders(stripHeadersOnCrossOriginRedirect, "stripHeadersOnCrossOriginRedirect");
this.maxRedirections = maxRedirections;
this.handler = handler;
this.history = [];
@@ -34606,12 +35412,14 @@ var require_redirect_handler2 = __commonJS({
if (this.opts.throwOnMaxRedirect && this.history.length >= this.maxRedirections) {
throw new Error("max redirects");
}
let removeContentHeaders = statusCode === 303;
if ((statusCode === 301 || statusCode === 302) && this.opts.method === "POST") {
this.opts.method = "GET";
if (util.isStream(this.opts.body)) {
util.destroy(this.opts.body.on("error", noop));
}
this.opts.body = null;
removeContentHeaders = true;
}
if (statusCode === 303 && this.opts.method !== "HEAD") {
this.opts.method = "GET";
@@ -34636,7 +35444,7 @@ var require_redirect_handler2 = __commonJS({
throw new InvalidArgumentError(`Redirect loop detected. Cannot redirect to ${origin}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);
}
}
this.opts.headers = cleanRequestHeaders(this.opts.headers, statusCode === 303, this.opts.origin !== origin);
this.opts.headers = cleanRequestHeaders(this.opts.headers, removeContentHeaders, this.opts.origin !== origin, this.stripHeadersOnRedirect, this.stripHeadersOnCrossOriginRedirect);
this.opts.path = path;
this.opts.origin = origin;
this.opts.query = null;
@@ -34658,31 +35466,50 @@ var require_redirect_handler2 = __commonJS({
this.handler.onResponseError?.(controller, error2);
}
};
function shouldRemoveHeader(header, removeContent, unknownOrigin) {
if (header.length === 4) {
return util.headerNameToString(header) === "host";
}
if (removeContent && util.headerNameToString(header).startsWith("content-")) {
function shouldRemoveHeader(header, removeContent, unknownOrigin, stripHeaders, stripHeadersOnCrossOrigin) {
const name = util.headerNameToString(header);
if (name === "host") {
return true;
}
if (unknownOrigin && (header.length === 13 || header.length === 6 || header.length === 19)) {
const name = util.headerNameToString(header);
if (stripHeaders?.has(name) || unknownOrigin && stripHeadersOnCrossOrigin?.has(name)) {
return true;
}
if (removeContent && name.startsWith("content-")) {
return true;
}
if (unknownOrigin) {
return name === "authorization" || name === "cookie" || name === "proxy-authorization";
}
return false;
}
function cleanRequestHeaders(headers, removeContent, unknownOrigin) {
function normalizeStripHeaders(headers, optionName) {
if (headers == null) {
return null;
}
if (!Array.isArray(headers)) {
throw new InvalidArgumentError(`${optionName} must be an array`);
}
const normalized = /* @__PURE__ */ new Set();
for (const header of headers) {
if (typeof header !== "string") {
throw new InvalidArgumentError(`${optionName} must contain header names`);
}
normalized.add(util.headerNameToString(header));
}
return normalized;
}
function cleanRequestHeaders(headers, removeContent, unknownOrigin, stripHeaders, stripHeadersOnCrossOrigin) {
const ret = [];
if (Array.isArray(headers)) {
for (let i = 0; i < headers.length; i += 2) {
if (!shouldRemoveHeader(headers[i], removeContent, unknownOrigin)) {
if (!shouldRemoveHeader(headers[i], removeContent, unknownOrigin, stripHeaders, stripHeadersOnCrossOrigin)) {
ret.push(headers[i], headers[i + 1]);
}
}
} else if (headers && typeof headers === "object") {
const entries = util.hasSafeIterator(headers) ? headers : Object.entries(headers);
for (const [key, value] of entries) {
if (!shouldRemoveHeader(key, removeContent, unknownOrigin)) {
if (!shouldRemoveHeader(key, removeContent, unknownOrigin, stripHeaders, stripHeadersOnCrossOrigin)) {
ret.push(key, value);
}
}
@@ -34700,14 +35527,14 @@ var require_redirect2 = __commonJS({
"node_modules/undici/lib/interceptor/redirect.js"(exports2, module2) {
"use strict";
var RedirectHandler = require_redirect_handler2();
function createRedirectInterceptor({ maxRedirections: defaultMaxRedirections, throwOnMaxRedirect: defaultThrowOnMaxRedirect } = {}) {
function createRedirectInterceptor({ maxRedirections: defaultMaxRedirections, throwOnMaxRedirect: defaultThrowOnMaxRedirect, stripHeadersOnRedirect: defaultStripHeadersOnRedirect, stripHeadersOnCrossOriginRedirect: defaultStripHeadersOnCrossOriginRedirect } = {}) {
return (dispatch) => {
return function Intercept(opts, handler) {
const { maxRedirections = defaultMaxRedirections, throwOnMaxRedirect = defaultThrowOnMaxRedirect, ...rest } = opts;
const { maxRedirections = defaultMaxRedirections, throwOnMaxRedirect = defaultThrowOnMaxRedirect, stripHeadersOnRedirect = defaultStripHeadersOnRedirect, stripHeadersOnCrossOriginRedirect = defaultStripHeadersOnCrossOriginRedirect, ...rest } = opts;
if (maxRedirections == null || maxRedirections === 0) {
return dispatch(opts, handler);
}
const dispatchOpts = { ...rest, throwOnMaxRedirect };
const dispatchOpts = { ...rest, throwOnMaxRedirect, stripHeadersOnRedirect, stripHeadersOnCrossOriginRedirect };
const redirectHandler = new RedirectHandler(dispatch, maxRedirections, dispatchOpts, handler);
return dispatch(dispatchOpts, redirectHandler);
};
@@ -35318,6 +36145,9 @@ var require_dns2 = __commonJS({
const instance = new DNSInstance(opts);
return (dispatch) => {
return function dnsInterceptor(origDispatchOpts, handler) {
if (origDispatchOpts.origin == null) {
return dispatch(origDispatchOpts, handler);
}
const origin = origDispatchOpts.origin.constructor === URL ? origDispatchOpts.origin : new URL(origDispatchOpts.origin);
if (isIP(origin.hostname) !== 0) {
return dispatch(origDispatchOpts, handler);
@@ -35355,24 +36185,146 @@ var require_cache2 = __commonJS({
var {
safeHTTPMethods,
pathHasQueryOrFragment,
hasSafeIterator
hasSafeIterator,
isValidHTTPToken
} = require_util9();
var { serializePathWithQuery } = require_util9();
function makeCacheKey(opts) {
if (!opts.origin) {
throw new Error("opts.origin is undefined");
var MAX_DELTA_SECONDS = 2147483647;
var RESTRICTIVE_DIRECTIVE_NAMES = ["no-store", "private", "no-cache"];
var kInvalidCacheControlDirectives = /* @__PURE__ */ Symbol("invalid cache-control directives");
function trimOWS(value) {
return value.replace(/^[\t ]+|[\t ]+$/g, "");
}
function arrayIncludes(array, value) {
for (let i = 0; i < array.length; i++) {
if (array[i] === value) {
return true;
}
}
return false;
}
function trimOWSStart(value) {
return value.replace(/^[\t ]+/, "");
}
function trimOWSEnd(value) {
return value.replace(/[\t ]+$/, "");
}
function findUnescapedQuote(value, start) {
let escaped = false;
for (let i = start; i < value.length; i++) {
if (escaped) {
escaped = false;
} else if (value[i] === "\\") {
escaped = true;
} else if (value[i] === '"') {
return i;
}
}
return -1;
}
function splitCacheControlHeaderValue(value) {
const directives = [];
let start = 0;
let quoteStart = -1;
let inQuote = false;
let escaped = false;
for (let i = 0; i < value.length; i++) {
if (inQuote) {
if (escaped) {
escaped = false;
} else if (value[i] === "\\") {
escaped = true;
} else if (value[i] === '"') {
inQuote = false;
quoteStart = -1;
}
} else if (value[i] === '"') {
inQuote = true;
quoteStart = i;
} else if (value[i] === ",") {
directives.push({ value: value.substring(start, i), fromMalformedQuote: false });
start = i + 1;
}
}
if (!inQuote) {
directives.push({ value: value.substring(start), fromMalformedQuote: false });
return directives;
}
const tail = value.substring(start);
const quoteOffset = quoteStart - start;
let tailStart = 0;
for (let i = 0; i < tail.length; i++) {
if (tail[i] === ",") {
directives.push({
value: tail.substring(tailStart, i),
fromMalformedQuote: tailStart > quoteOffset
});
tailStart = i + 1;
}
}
directives.push({
value: tail.substring(tailStart),
fromMalformedQuote: tailStart > quoteOffset
});
return directives;
}
function markInvalidCacheControlDirective(directives, key) {
let invalidDirectives = directives[kInvalidCacheControlDirectives];
if (invalidDirectives === void 0) {
invalidDirectives = /* @__PURE__ */ new Set();
Object.defineProperty(directives, kInvalidCacheControlDirectives, {
value: invalidDirectives
});
}
invalidDirectives.add(key);
}
function hasInvalidCacheControlDirective(directives, key) {
return directives[kInvalidCacheControlDirectives]?.has(key) === true;
}
function getMalformedRestrictiveDirectiveName(key) {
for (const directiveName of RESTRICTIVE_DIRECTIVE_NAMES) {
if (key.startsWith(directiveName) && key.length > directiveName.length && !isValidHTTPToken(key[directiveName.length])) {
return directiveName;
}
}
let tokenOnlyKey = "";
let hasInvalidTokenChar = false;
for (let i = 0; i < key.length; i++) {
if (isValidHTTPToken(key[i])) {
tokenOnlyKey += key[i];
} else {
hasInvalidTokenChar = true;
}
}
if (hasInvalidTokenChar && arrayIncludes(RESTRICTIVE_DIRECTIVE_NAMES, tokenOnlyKey)) {
return tokenOnlyKey;
}
}
function makeCacheKey(opts) {
const origin = opts.origin ? opts.origin.toString() : "";
let fullPath = opts.path || "/";
if (opts.query && !pathHasQueryOrFragment(fullPath)) {
fullPath = serializePathWithQuery(fullPath, opts.query);
}
return {
origin: opts.origin.toString(),
origin,
method: opts.method,
path: fullPath,
headers: opts.headers
};
}
function appendHeader(headers, key, val) {
const headerName = key.toLowerCase();
const current = headers[headerName];
const values = Array.isArray(val) ? val : [val];
if (current === void 0) {
headers[headerName] = Array.isArray(val) ? val.slice() : val;
} else if (Array.isArray(current)) {
current.push(...values);
} else {
headers[headerName] = [current, ...values];
}
}
function normalizeHeaders(opts) {
let headers;
if (opts.headers == null) {
@@ -35380,19 +36332,57 @@ var require_cache2 = __commonJS({
} else if (typeof opts.headers === "object") {
headers = {};
if (hasSafeIterator(opts.headers)) {
for (const x of opts.headers) {
if (!Array.isArray(x)) {
throw new Error("opts.headers is not a valid header map");
if (Array.isArray(opts.headers)) {
const first = opts.headers[0];
if (Array.isArray(first)) {
for (const x of opts.headers) {
if (!Array.isArray(x)) {
throw new Error("opts.headers is not a valid header map");
}
const [key, val] = x;
if (typeof key !== "string" || typeof val !== "string") {
throw new Error("opts.headers is not a valid header map");
}
appendHeader(headers, key, val);
}
} else {
const len = opts.headers.length;
if (len % 2 !== 0) {
throw new Error("opts.headers is not a valid header map");
}
for (let i = 0; i < len; i += 2) {
const key = opts.headers[i];
const val = opts.headers[i + 1];
if (typeof key !== "string" || typeof val !== "string" && !Array.isArray(val)) {
throw new Error("opts.headers is not a valid header map");
}
if (typeof val === "string") {
appendHeader(headers, key, val);
} else {
const mapped = [];
for (let j = 0; j < val.length; j++) {
const v = val[j];
mapped.push(typeof v === "string" ? v : v.toString("latin1"));
}
appendHeader(headers, key, mapped);
}
}
}
const [key, val] = x;
if (typeof key !== "string" || typeof val !== "string") {
throw new Error("opts.headers is not a valid header map");
} else {
for (const x of opts.headers) {
if (!Array.isArray(x)) {
throw new Error("opts.headers is not a valid header map");
}
const [key, val] = x;
if (typeof key !== "string" || typeof val !== "string") {
throw new Error("opts.headers is not a valid header map");
}
appendHeader(headers, key, val);
}
headers[key.toLowerCase()] = val;
}
} else {
for (const key of Object.keys(opts.headers)) {
headers[key.toLowerCase()] = opts.headers[key];
appendHeader(headers, key, opts.headers[key]);
}
}
} else {
@@ -35437,25 +36427,32 @@ var require_cache2 = __commonJS({
}
function parseCacheControlHeader(header) {
const output = {};
let directives;
if (Array.isArray(header)) {
directives = [];
for (const directive of header) {
directives.push(...directive.split(","));
}
} else {
directives = header.split(",");
}
const invalidNumericDirectives = /* @__PURE__ */ new Set();
const invalidNoArgumentDirectives = /* @__PURE__ */ new Set();
const directives = splitCacheControlHeaderValue(Array.isArray(header) ? header.join(",") : header);
for (let i = 0; i < directives.length; i++) {
const directive = directives[i].toLowerCase();
const directiveRecord = directives[i];
const directive = directiveRecord.value.toLowerCase();
const fromMalformedQuote = directiveRecord.fromMalformedQuote;
const keyValueDelimiter = directive.indexOf("=");
let key;
let value;
let keyHasTrailingWhitespace = false;
let valueHasLeadingWhitespace = false;
if (keyValueDelimiter !== -1) {
key = directive.substring(0, keyValueDelimiter).trimStart();
value = directive.substring(keyValueDelimiter + 1);
const rawKey = directive.substring(0, keyValueDelimiter);
const rawValue = directive.substring(keyValueDelimiter + 1);
keyHasTrailingWhitespace = trimOWSEnd(rawKey) !== rawKey;
valueHasLeadingWhitespace = trimOWSStart(rawValue) !== rawValue;
key = trimOWS(rawKey);
value = trimOWSStart(rawValue);
} else {
key = directive.trim();
key = trimOWS(directive);
}
const malformedRestrictiveDirectiveName = getMalformedRestrictiveDirectiveName(key);
if (malformedRestrictiveDirectiveName !== void 0) {
output[malformedRestrictiveDirectiveName] = true;
continue;
}
switch (key) {
case "min-fresh":
@@ -35464,45 +36461,85 @@ var require_cache2 = __commonJS({
case "s-maxage":
case "stale-while-revalidate":
case "stale-if-error": {
if (value === void 0 || value[0] === " ") {
if (fromMalformedQuote || invalidNumericDirectives.has(key)) {
continue;
}
if (value === void 0 || keyHasTrailingWhitespace || valueHasLeadingWhitespace) {
delete output[key];
invalidNumericDirectives.add(key);
markInvalidCacheControlDirective(output, key);
continue;
}
if (value.length >= 2 && value[0] === '"' && value[value.length - 1] === '"') {
value = value.substring(1, value.length - 1);
}
const parsedValue = parseInt(value, 10);
if (parsedValue !== parsedValue) {
if (!/^[0-9]+$/.test(value)) {
delete output[key];
invalidNumericDirectives.add(key);
markInvalidCacheControlDirective(output, key);
continue;
}
if (key === "max-age" && key in output && output[key] >= parsedValue) {
continue;
const parsedValue = Math.min(parseInt(value, 10), MAX_DELTA_SECONDS);
if (key === "min-fresh") {
if (!(key in output) || output[key] < parsedValue) {
output[key] = parsedValue;
}
} else if (!(key in output) || output[key] > parsedValue) {
output[key] = parsedValue;
}
output[key] = parsedValue;
break;
}
case "private":
case "no-cache": {
if (fromMalformedQuote) {
output[key] = true;
break;
}
if (value !== void 0 && value.length === 0) {
output[key] = true;
break;
}
if (value) {
if (value[0] === '"') {
const headers = [value.substring(1)];
let foundEndingQuote = value[value.length - 1] === '"';
if (!foundEndingQuote) {
value = trimOWSEnd(value);
let fieldList = "";
let lastQuotedPart = i;
let foundEndingQuote = false;
const closingQuote = findUnescapedQuote(value, 1);
if (closingQuote !== -1) {
fieldList = value.substring(1, closingQuote);
foundEndingQuote = true;
} else {
const fieldListParts = [value.substring(1)];
for (let j = i + 1; j < directives.length; j++) {
const nextPart = directives[j];
const nextPartLength = nextPart.length;
headers.push(nextPart.trim());
if (nextPartLength !== 0 && nextPart[nextPartLength - 1] === '"') {
const nextPart = trimOWS(directives[j].value);
const closingQuote2 = findUnescapedQuote(nextPart, 0);
lastQuotedPart = j;
if (closingQuote2 !== -1) {
fieldListParts.push(nextPart.substring(0, closingQuote2));
foundEndingQuote = true;
break;
}
fieldListParts.push(nextPart);
}
fieldList = fieldListParts.join(",");
}
if (!foundEndingQuote) {
output[key] = true;
break;
}
i = lastQuotedPart;
const headers = fieldList.split(",");
let validFieldNames = true;
for (let j = 0; j < headers.length; j++) {
headers[j] = trimOWS(headers[j]);
if (!isValidHTTPToken(headers[j])) {
validFieldNames = false;
}
}
if (foundEndingQuote) {
let lastHeader = headers[headers.length - 1];
if (lastHeader[lastHeader.length - 1] === '"') {
lastHeader = lastHeader.substring(0, lastHeader.length - 1);
headers[headers.length - 1] = lastHeader;
}
if (!validFieldNames) {
output[key] = true;
} else if (output[key] !== true) {
if (key in output) {
output[key] = output[key].concat(headers);
} else {
@@ -35510,10 +36547,15 @@ var require_cache2 = __commonJS({
}
}
} else {
if (key in output) {
output[key] = output[key].concat(value);
} else {
output[key] = [value];
const fieldName = trimOWS(value);
if (!isValidHTTPToken(fieldName)) {
output[key] = true;
} else if (output[key] !== true) {
if (key in output) {
output[key] = output[key].concat(fieldName);
} else {
output[key] = [fieldName];
}
}
}
break;
@@ -35521,16 +36563,23 @@ var require_cache2 = __commonJS({
}
// eslint-disable-next-line no-fallthrough
case "public":
case "no-store":
case "must-revalidate":
case "proxy-revalidate":
case "immutable":
case "no-transform":
case "must-understand":
case "only-if-cached":
if (value) {
if (fromMalformedQuote || invalidNoArgumentDirectives.has(key)) {
continue;
}
if (value !== void 0) {
delete output[key];
invalidNoArgumentDirectives.add(key);
continue;
}
output[key] = true;
break;
case "no-store":
output[key] = true;
break;
default:
@@ -35539,21 +36588,51 @@ var require_cache2 = __commonJS({
}
return output;
}
function splitVaryHeader(varyHeader) {
const values = Array.isArray(varyHeader) ? varyHeader : [varyHeader];
const output = [];
for (let i = 0; i < values.length; i++) {
const parts = values[i].split(",");
for (let j = 0; j < parts.length; j++) {
output.push(parts[j]);
}
}
return output;
}
function hasVaryStar(varyHeader) {
const values = splitVaryHeader(varyHeader);
for (let i = 0; i < values.length; i++) {
if (trimOWS(values[i]).indexOf("*") !== -1) {
return true;
}
}
return false;
}
function parseVaryHeader(varyHeader, headers) {
if (typeof varyHeader === "string" && varyHeader.includes("*")) {
if (hasVaryStar(varyHeader)) {
return headers;
}
const output = (
/** @type {Record<string, string | string[] | null>} */
{}
);
const varyingHeaders = typeof varyHeader === "string" ? varyHeader.split(",") : varyHeader;
const varyingHeaders = splitVaryHeader(varyHeader);
for (const header of varyingHeaders) {
const trimmedHeader = header.trim().toLowerCase();
output[trimmedHeader] = headers[trimmedHeader] ?? null;
const trimmedHeader = trimOWS(header).toLowerCase();
if (trimmedHeader.length === 0) {
continue;
}
if (!isValidHTTPToken(trimmedHeader)) {
return void 0;
}
const headerValue = headers[trimmedHeader];
output[trimmedHeader] = Array.isArray(headerValue) ? headerValue.slice() : headerValue ?? null;
}
return output;
}
function isInvalidOrWildcardVaryHeader(varyHeader) {
return hasVaryStar(varyHeader) || parseVaryHeader(varyHeader, {}) === void 0;
}
function isEtagUsable(etag) {
if (etag.length <= 2) {
return false;
@@ -35584,7 +36663,7 @@ var require_cache2 = __commonJS({
throw new TypeError(`${name} needs to have at least one method`);
}
for (const method of methods) {
if (!safeHTTPMethods.includes(method)) {
if (!arrayIncludes(safeHTTPMethods, method)) {
throw new TypeError(`element of ${name}-array needs to be one of following values: ${safeHTTPMethods.join(", ")}, got ${method}`);
}
}
@@ -35608,7 +36687,10 @@ var require_cache2 = __commonJS({
assertCacheKey,
assertCacheValue,
parseCacheControlHeader,
hasInvalidCacheControlDirective,
parseVaryHeader,
hasVaryStar,
isInvalidOrWildcardVaryHeader,
isEtagUsable,
assertCacheMethods,
assertCacheStore,
@@ -35631,6 +36713,13 @@ var require_date = __commonJS({
return parseRfc850Date(date);
}
}
function makeDate(year, monthIdx, day, hour, minute, second, weekday) {
const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
if (year >= 0 && year <= 99) {
result.setUTCFullYear(year);
}
return result.getUTCFullYear() === year && result.getUTCMonth() === monthIdx && result.getUTCDate() === day && result.getUTCHours() === hour && result.getUTCMinutes() === minute && result.getUTCSeconds() === second && result.getUTCDay() === weekday ? result : void 0;
}
function parseImfDate(date) {
if (date.length !== 29 || date[4] !== " " || date[7] !== " " || date[11] !== " " || date[16] !== " " || date[19] !== ":" || date[22] !== ":" || date[25] !== " " || date[26] !== "G" || date[27] !== "M" || date[28] !== "T") {
return void 0;
@@ -35791,8 +36880,7 @@ var require_date = __commonJS({
}
second = (code1 - 48) * 10 + (code2 - 48);
}
const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
return result.getUTCDay() === weekday ? result : void 0;
return makeDate(year, monthIdx, day, hour, minute, second, weekday);
}
function parseAscTimeDate(date) {
if (date.length !== 24 || date[7] !== " " || date[10] !== " " || date[19] !== " ") {
@@ -35954,8 +37042,7 @@ var require_date = __commonJS({
return void 0;
}
const year = (yearDigit1 - 48) * 1e3 + (yearDigit2 - 48) * 100 + (yearDigit3 - 48) * 10 + (yearDigit4 - 48);
const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
return result.getUTCDay() === weekday ? result : void 0;
return makeDate(year, monthIdx, day, hour, minute, second, weekday);
}
function parseRfc850Date(date) {
let commaIndex = -1;
@@ -36104,8 +37191,7 @@ var require_date = __commonJS({
}
second = (code1 - 48) * 10 + (code2 - 48);
}
const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
return result.getUTCDay() === weekday ? result : void 0;
return makeDate(year, monthIdx, day, hour, minute, second, weekday);
}
module2.exports = {
parseHttpDate
@@ -36120,7 +37206,10 @@ var require_cache_handler = __commonJS({
var util = require_util9();
var {
parseCacheControlHeader,
hasInvalidCacheControlDirective,
parseVaryHeader,
hasVaryStar,
isInvalidOrWildcardVaryHeader,
isEtagUsable
} = require_cache2();
var { parseHttpDate } = require_date();
@@ -36144,6 +37233,79 @@ var require_cache_handler = __commonJS({
206
];
var MAX_RESPONSE_AGE = 2147483647e3;
var REVALIDATION_ONLY_RETENTION = 864e5;
function trimOWS(value) {
return value.replace(/^[\t ]+|[\t ]+$/g, "");
}
function arrayIncludes(array, value) {
for (let i = 0; i < array.length; i++) {
if (array[i] === value) {
return true;
}
}
return false;
}
function appendConnectionHeaderTokens(headersToRemove, connectionHeader) {
const values = Array.isArray(connectionHeader) ? connectionHeader : [connectionHeader];
for (let i = 0; i < values.length; i++) {
const tokens = values[i].split(",");
for (let j = 0; j < tokens.length; j++) {
headersToRemove.push(trimOWS(tokens[j]).toLowerCase());
}
}
}
function getSameOriginPath(cacheKey, location) {
if (typeof location !== "string") {
return void 0;
}
let originUrl;
let requestUrl;
let locationUrl;
try {
originUrl = new URL(cacheKey.origin);
requestUrl = new URL(cacheKey.path, originUrl);
locationUrl = new URL(location, requestUrl);
} catch {
return void 0;
}
if (locationUrl.origin !== originUrl.origin) {
return void 0;
}
return locationUrl.pathname + locationUrl.search;
}
function deleteCachedUri(store, cacheKey, path) {
deleteCachedValue(store, {
...cacheKey,
path
});
for (let i = 0; i < util.safeHTTPMethods.length; i++) {
const method = util.safeHTTPMethods[i];
if (method !== cacheKey.method) {
deleteCachedValue(store, {
...cacheKey,
method,
path
});
}
}
}
function deleteLocationTargets(store, cacheKey, headerValue) {
if (headerValue === void 0) {
return;
}
const values = Array.isArray(headerValue) ? headerValue : [headerValue];
for (let i = 0; i < values.length; i++) {
const path = getSameOriginPath(cacheKey, values[i]);
if (path !== void 0) {
deleteCachedUri(store, cacheKey, path);
}
}
}
function invalidateUnsafeRequest(store, cacheKey, resHeaders) {
deleteCachedUri(store, cacheKey, cacheKey.path);
deleteLocationTargets(store, cacheKey, resHeaders.location);
deleteLocationTargets(store, cacheKey, resHeaders["content-location"]);
}
var CacheHandler = class {
/**
* @type {import('../../types/cache-interceptor.d.ts').default.CacheKey}
@@ -36203,35 +37365,51 @@ var require_cache_handler = __commonJS({
statusMessage
);
const handler = this;
if (!util.safeHTTPMethods.includes(this.#cacheKey.method) && statusCode >= 200 && statusCode <= 399) {
try {
this.#store.delete(this.#cacheKey)?.catch?.(noop);
} catch {
}
if (!arrayIncludes(util.safeHTTPMethods, this.#cacheKey.method) && statusCode >= 200 && statusCode <= 399) {
invalidateUnsafeRequest(this.#store, this.#cacheKey, resHeaders);
return downstreamOnHeaders();
}
const cacheControlHeader = resHeaders["cache-control"];
const heuristicallyCacheable = resHeaders["last-modified"] && HEURISTICALLY_CACHEABLE_STATUS_CODES.includes(statusCode);
const heuristicallyCacheable = resHeaders["last-modified"] && arrayIncludes(HEURISTICALLY_CACHEABLE_STATUS_CODES, statusCode);
if (!cacheControlHeader && !resHeaders["expires"] && !heuristicallyCacheable && !this.#cacheByDefault) {
if (statusCode === 304 && resHeaders.vary && isInvalidOrWildcardVaryHeader(resHeaders.vary)) {
deleteCachedValue(this.#store, this.#cacheKey);
}
return downstreamOnHeaders();
}
const cacheControlDirectives = cacheControlHeader ? parseCacheControlHeader(cacheControlHeader) : {};
if (!canCacheResponse(this.#cacheType, statusCode, resHeaders, cacheControlDirectives, this.#cacheKey.headers)) {
if (statusCode === 304 && (cacheControlHeader || revalidationResponseDisallowsCachedReuse(this.#cacheType, resHeaders, cacheControlDirectives))) {
deleteCachedValue(this.#store, this.#cacheKey);
}
return downstreamOnHeaders();
}
const now = Date.now();
const resAge = resHeaders.age ? getAge(resHeaders.age) : void 0;
if (resAge && resAge >= MAX_RESPONSE_AGE) {
const resAge = Object.hasOwn(resHeaders, "age") ? getAge(resHeaders.age) : void 0;
if (resAge !== void 0 && resAge >= MAX_RESPONSE_AGE) {
deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
return downstreamOnHeaders();
}
const resDate = typeof resHeaders.date === "string" ? parseHttpDate(resHeaders.date) : void 0;
const staleAt = determineStaleAt(this.#cacheType, now, resAge, resHeaders, resDate, cacheControlDirectives) ?? this.#cacheByDefault;
if (staleAt === void 0 || resAge && resAge > staleAt) {
const resDate = Object.hasOwn(resHeaders, "date") ? getDate(resHeaders.date) : void 0;
if (resDate === null) {
deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
return downstreamOnHeaders();
}
const baseTime = resDate ? resDate.getTime() : now;
const apparentAge = resDate ? Math.max(0, now - resDate.getTime()) : 0;
const currentAge = Math.max(apparentAge, resAge ?? 0);
const hasValidator = typeof resHeaders.etag === "string" && isEtagUsable(resHeaders.etag) || typeof resHeaders["last-modified"] === "string";
const staleAt = determineStaleAt(this.#cacheType, now, resAge, resHeaders, resDate, cacheControlDirectives, hasValidator) ?? this.#cacheByDefault;
const revalidationOnly = staleAt === 0 && hasValidator;
if (staleAt === void 0 || currentAge >= staleAt && !revalidationOnly) {
if (cacheControlHeader || staleAt !== void 0) {
deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
}
return downstreamOnHeaders();
}
const baseTime = now - currentAge;
const absoluteStaleAt = staleAt + baseTime;
if (now >= absoluteStaleAt) {
if (now >= absoluteStaleAt && !revalidationOnly) {
deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
return downstreamOnHeaders();
}
let varyDirectives;
@@ -36241,8 +37419,8 @@ var require_cache_handler = __commonJS({
return downstreamOnHeaders();
}
}
const cachedAt = resAge ? now - resAge : now;
const deleteAt = determineDeleteAt(baseTime, cachedAt, cacheControlDirectives, absoluteStaleAt);
const cachedAt = baseTime;
const deleteAt = determineDeleteAt(baseTime, now, cacheControlDirectives, absoluteStaleAt);
const strippedHeaders = stripNecessaryHeaders(resHeaders, cacheControlDirectives);
const value = {
statusCode,
@@ -36262,6 +37440,7 @@ var require_cache_handler = __commonJS({
value.statusCode = cachedValue.statusCode;
value.statusMessage = cachedValue.statusMessage;
value.etag = cachedValue.etag;
value.vary = varyDirectives ?? cachedValue.vary;
value.headers = { ...cachedValue.headers, ...strippedHeaders };
downstreamOnHeaders();
this.#writeStream = this.#store.createWriteStream(this.#cacheKey, value);
@@ -36352,11 +37531,25 @@ var require_cache_handler = __commonJS({
this.#handler.onResponseError?.(controller, err);
}
};
function deleteCachedValue(store, cacheKey) {
try {
store.delete(cacheKey)?.catch?.(noop);
} catch {
}
}
function deleteCachedValueIfNotModified(statusCode, store, cacheKey) {
if (statusCode === 304) {
deleteCachedValue(store, cacheKey);
}
}
function revalidationResponseDisallowsCachedReuse(cacheType, resHeaders, cacheControlDirectives) {
return cacheControlDirectives["no-store"] === true || cacheType === "shared" && cacheControlDirectives.private === true || (resHeaders.vary ? isInvalidOrWildcardVaryHeader(resHeaders.vary) : false);
}
function canCacheResponse(cacheType, statusCode, resHeaders, cacheControlDirectives, reqHeaders) {
if (statusCode < 200 || NOT_UNDERSTOOD_STATUS_CODES.includes(statusCode)) {
if (statusCode < 200 || arrayIncludes(NOT_UNDERSTOOD_STATUS_CODES, statusCode)) {
return false;
}
if (!HEURISTICALLY_CACHEABLE_STATUS_CODES.includes(statusCode) && !resHeaders["expires"] && !cacheControlDirectives.public && cacheControlDirectives["max-age"] === void 0 && // RFC 9111: a private response directive, if the cache is not shared
if (!arrayIncludes(HEURISTICALLY_CACHEABLE_STATUS_CODES, statusCode) && !resHeaders["expires"] && !cacheControlDirectives.public && cacheControlDirectives["max-age"] === void 0 && // RFC 9111: a private response directive, if the cache is not shared
!(cacheControlDirectives.private && cacheType === "private") && !(cacheControlDirectives["s-maxage"] !== void 0 && cacheType === "shared")) {
return false;
}
@@ -36366,60 +37559,104 @@ var require_cache_handler = __commonJS({
if (cacheType === "shared" && cacheControlDirectives.private === true) {
return false;
}
if (resHeaders.vary?.includes("*")) {
if (resHeaders.vary && hasVaryStar(resHeaders.vary)) {
return false;
}
if (reqHeaders?.authorization) {
if (reqHeaders != null && Object.hasOwn(reqHeaders, "authorization")) {
if (!cacheControlDirectives.public && !cacheControlDirectives["s-maxage"] && !cacheControlDirectives["must-revalidate"]) {
return false;
}
if (typeof reqHeaders.authorization !== "string") {
return false;
}
if (Array.isArray(cacheControlDirectives["no-cache"]) && cacheControlDirectives["no-cache"].includes("authorization")) {
if (Array.isArray(cacheControlDirectives["no-cache"]) && arrayIncludes(cacheControlDirectives["no-cache"], "authorization")) {
return false;
}
if (Array.isArray(cacheControlDirectives["private"]) && cacheControlDirectives["private"].includes("authorization")) {
if (Array.isArray(cacheControlDirectives["private"]) && arrayIncludes(cacheControlDirectives["private"], "authorization")) {
return false;
}
}
return true;
}
function getAge(ageHeader) {
const age = parseInt(Array.isArray(ageHeader) ? ageHeader[0] : ageHeader);
return isNaN(age) ? void 0 : age * 1e3;
function getDate(dateHeader) {
let dateValue = dateHeader;
if (Array.isArray(dateValue)) {
if (dateValue.length !== 1) {
return null;
}
dateValue = dateValue[0];
}
if (typeof dateValue !== "string") {
return null;
}
return parseHttpDate(dateValue);
}
function determineStaleAt(cacheType, now, age, resHeaders, responseDate, cacheControlDirectives) {
function getAge(ageHeader) {
let ageValue = ageHeader;
if (Array.isArray(ageValue)) {
if (ageValue.length !== 1) {
return MAX_RESPONSE_AGE;
}
ageValue = ageValue[0];
}
if (typeof ageValue !== "string" || !/^[\t ]*[0-9]+[\t ]*$/.test(ageValue)) {
return MAX_RESPONSE_AGE;
}
const age = BigInt(ageValue.replace(/^[\t ]+|[\t ]+$/g, ""));
if (age >= BigInt(MAX_RESPONSE_AGE / 1e3)) {
return MAX_RESPONSE_AGE;
}
return Number(age) * 1e3;
}
function determineStaleAt(cacheType, now, age, resHeaders, responseDate, cacheControlDirectives, hasValidator) {
if (cacheType === "shared") {
if (hasInvalidCacheControlDirective(cacheControlDirectives, "s-maxage")) {
return 0;
}
const sMaxAge = cacheControlDirectives["s-maxage"];
if (sMaxAge !== void 0) {
return sMaxAge > 0 ? sMaxAge * 1e3 : void 0;
if (sMaxAge > 0) {
return sMaxAge * 1e3;
}
return 0;
}
}
if (hasInvalidCacheControlDirective(cacheControlDirectives, "max-age")) {
return 0;
}
const maxAge = cacheControlDirectives["max-age"];
if (maxAge !== void 0) {
return maxAge > 0 ? maxAge * 1e3 : void 0;
}
if (typeof resHeaders.expires === "string") {
const expiresDate = parseHttpDate(resHeaders.expires);
if (expiresDate) {
if (now >= expiresDate.getTime()) {
return void 0;
}
if (responseDate) {
if (responseDate >= expiresDate) {
return void 0;
}
if (age !== void 0 && age > expiresDate - responseDate) {
return void 0;
}
}
return expiresDate.getTime() - now;
if (maxAge > 0) {
return maxAge * 1e3;
}
return 0;
}
if (Object.hasOwn(resHeaders, "expires")) {
if (typeof resHeaders.expires !== "string") {
return 0;
}
const expiresDate = parseHttpDate(resHeaders.expires);
if (!expiresDate) {
return 0;
}
if (now >= expiresDate.getTime()) {
return 0;
}
if (responseDate) {
if (responseDate >= expiresDate) {
return 0;
}
const freshnessLifetime = expiresDate.getTime() - responseDate.getTime();
if (age !== void 0 && age >= freshnessLifetime) {
return 0;
}
return freshnessLifetime;
}
return expiresDate.getTime() - now;
}
if (typeof resHeaders["last-modified"] === "string") {
const lastModified = new Date(resHeaders["last-modified"]);
if (isValidDate(lastModified)) {
const lastModified = parseHttpDate(resHeaders["last-modified"]);
if (lastModified) {
if (lastModified.getTime() >= now) {
return void 0;
}
@@ -36430,6 +37667,9 @@ var require_cache_handler = __commonJS({
if (cacheControlDirectives.immutable) {
return 31536e6;
}
if (cacheControlDirectives["no-cache"] === true && hasValidator) {
return 0;
}
return void 0;
}
function determineDeleteAt(baseTime, cachedAt, cacheControlDirectives, staleAt) {
@@ -36447,6 +37687,9 @@ var require_cache_handler = __commonJS({
}
if (staleWhileRevalidate === -Infinity && staleIfError === -Infinity && immutable === -Infinity) {
const freshnessLifetime = staleAt - baseTime;
if (freshnessLifetime <= 0) {
return cachedAt + REVALIDATION_ONLY_RETENTION;
}
const datePrecisionPadding = Math.min(Math.max(cachedAt - baseTime, 0), 1e3);
return staleAt + freshnessLifetime + datePrecisionPadding;
}
@@ -36466,11 +37709,7 @@ var require_cache_handler = __commonJS({
"age"
];
if (resHeaders["connection"]) {
if (Array.isArray(resHeaders["connection"])) {
headersToRemove.push(...resHeaders["connection"].map((header) => header.trim()));
} else {
headersToRemove.push(...resHeaders["connection"].split(",").map((header) => header.trim()));
}
appendConnectionHeaderTokens(headersToRemove, resHeaders["connection"]);
}
if (Array.isArray(cacheControlDirectives["no-cache"])) {
headersToRemove.push(...cacheControlDirectives["no-cache"]);
@@ -36480,16 +37719,13 @@ var require_cache_handler = __commonJS({
}
let strippedHeaders;
for (const headerName of headersToRemove) {
if (resHeaders[headerName]) {
if (Object.hasOwn(resHeaders, headerName)) {
strippedHeaders ??= { ...resHeaders };
delete strippedHeaders[headerName];
}
}
return strippedHeaders ?? resHeaders;
}
function isValidDate(date) {
return date instanceof Date && Number.isFinite(date.valueOf());
}
module2.exports = CacheHandler;
}
});
@@ -36660,12 +37896,43 @@ var require_memory_cache_store = __commonJS({
}
};
function findEntry(key, entries, now) {
return entries.find((entry) => entry.deleteAt > now && entry.method === key.method && (entry.vary == null || Object.keys(entry.vary).every((headerName) => {
if (entry.vary[headerName] === null) {
return key.headers[headerName] === void 0;
for (let i = 0; i < entries.length; i++) {
const entry = entries[i];
if (entry.deleteAt > now && entry.method === key.method && varyMatches(key, entry)) {
return entry;
}
return entry.vary[headerName] === key.headers[headerName];
})));
}
}
function varyMatches(key, entry) {
if (entry.vary == null) {
return true;
}
for (const headerName in entry.vary) {
if (Object.hasOwn(entry.vary, headerName) && !headerValueEquals(key.headers?.[headerName], entry.vary[headerName])) {
return false;
}
}
return true;
}
function headerValueEquals(lhs, rhs) {
if (lhs == null && rhs == null) {
return true;
}
if (lhs == null && rhs != null || lhs != null && rhs == null) {
return false;
}
if (Array.isArray(lhs) && Array.isArray(rhs)) {
if (lhs.length !== rhs.length) {
return false;
}
for (let i = 0; i < lhs.length; i++) {
if (lhs[i] !== rhs[i]) {
return false;
}
}
return true;
}
return lhs === rhs;
}
module2.exports = MemoryCacheStore;
}
@@ -36679,7 +37946,7 @@ var require_cache_revalidation_handler = __commonJS({
var CacheRevalidationHandler = class {
#successful = false;
/**
* @type {((boolean, any) => void) | null}
* @type {((success: boolean, context?: any, statusCode?: number, headers?: import('../../types/header.d.ts').IncomingHttpHeaders) => void) | null}
*/
#callback;
/**
@@ -36692,7 +37959,7 @@ var require_cache_revalidation_handler = __commonJS({
*/
#allowErrorStatusCodes;
/**
* @param {(boolean) => void} callback Function to call if the cached value is valid
* @param {(success: boolean, context?: any, statusCode?: number, headers?: import('../../types/header.d.ts').IncomingHttpHeaders) => void} callback Function to call if the cached value is valid
* @param {import('../../types/dispatcher.d.ts').default.DispatchHandlers} handler
* @param {boolean} allowErrorStatusCodes
*/
@@ -36714,7 +37981,7 @@ var require_cache_revalidation_handler = __commonJS({
onResponseStart(controller, statusCode, headers, statusMessage) {
assert(this.#callback != null);
this.#successful = statusCode === 304 || this.#allowErrorStatusCodes && statusCode >= 500 && statusCode <= 504;
this.#callback(this.#successful, this.#context);
this.#callback(this.#successful, this.#context, statusCode, headers);
this.#callback = null;
if (this.#successful) {
return true;
@@ -36744,6 +38011,12 @@ var require_cache_revalidation_handler = __commonJS({
return;
}
if (this.#callback) {
if (this.#allowErrorStatusCodes) {
this.#successful = true;
this.#callback(true, this.#context);
this.#callback = null;
return;
}
this.#callback(false);
this.#callback = null;
}
@@ -36768,8 +38041,9 @@ var require_cache3 = __commonJS({
var CacheHandler = require_cache_handler();
var MemoryCacheStore = require_memory_cache_store();
var CacheRevalidationHandler = require_cache_revalidation_handler();
var { assertCacheStore, assertCacheMethods, makeCacheKey, normalizeHeaders, parseCacheControlHeader } = require_cache2();
var { assertCacheStore, assertCacheMethods, makeCacheKey, normalizeHeaders, parseCacheControlHeader, isInvalidOrWildcardVaryHeader } = require_cache2();
var { AbortError } = require_errors2();
var { parseHttpDate } = require_date();
function assertCacheOrigins(origins, name) {
if (origins === void 0) return;
if (!Array.isArray(origins)) {
@@ -36784,6 +38058,37 @@ var require_cache3 = __commonJS({
}
var nop = () => {
};
function trimOWS(value) {
return value.replace(/^[\t ]+|[\t ]+$/g, "");
}
function arrayIncludes(array, value) {
for (let i = 0; i < array.length; i++) {
if (array[i] === value) {
return true;
}
}
return false;
}
function hasPragmaNoCache(headers) {
const pragma = headers?.pragma;
if (!pragma) {
return false;
}
const values = Array.isArray(pragma) ? pragma : [pragma];
for (let i = 0; i < values.length; i++) {
const value = values[i];
if (typeof value !== "string") {
continue;
}
const directives = value.split(",");
for (let j = 0; j < directives.length; j++) {
if (trimOWS(directives[j]).toLowerCase() === "no-cache") {
return true;
}
}
}
return false;
}
function needsRevalidation(result, cacheControlDirectives, { headers = {} }) {
if (cacheControlDirectives?.["no-cache"]) {
return true;
@@ -36796,10 +38101,58 @@ var require_cache3 = __commonJS({
}
return false;
}
function isStale(result, cacheControlDirectives) {
function staleResponseRequiresRevalidation(result, cacheType) {
return result.cacheControlDirectives?.["must-revalidate"] === true || cacheType === "shared" && (result.cacheControlDirectives?.["proxy-revalidate"] === true || // https://www.rfc-editor.org/rfc/rfc9111.html#section-5.2.2.10
// s-maxage implies proxy-revalidate for shared caches.
result.cacheControlDirectives?.["s-maxage"] !== void 0);
}
function revalidationResponseDisallowsCachedReuse(cacheType, headers) {
if (headers.vary && isInvalidOrWildcardVaryHeader(headers.vary)) {
return true;
}
const cacheControl = headers["cache-control"];
if (!cacheControl) {
return false;
}
const cacheControlDirectives = parseCacheControlHeader(cacheControl);
return cacheControlDirectives["no-store"] === true || cacheType === "shared" && cacheControlDirectives.private === true;
}
function revalidationResponseUpdatesCacheControl(headers) {
return headers["cache-control"] !== void 0;
}
function deleteCachedValue(store, cacheKey) {
try {
store.delete(cacheKey)?.catch?.(nop);
} catch {
}
}
function getUsableLastModified(headers) {
const lastModified = headers?.["last-modified"];
if (typeof lastModified === "string" && parseHttpDate(lastModified)) {
return lastModified;
}
}
function makeRevalidationHeaders(opts, result) {
const headers = {
...opts.headers,
"if-modified-since": getUsableLastModified(result.headers) ?? new Date(result.cachedAt).toUTCString()
};
if (result.etag) {
headers["if-none-match"] = result.etag;
}
if (result.vary) {
for (const key in result.vary) {
if (result.vary[key] != null) {
headers[key] = result.vary[key];
}
}
}
return headers;
}
function isStale(result, cacheControlDirectives, cacheType) {
const now = Date.now();
if (now > result.staleAt) {
if (cacheControlDirectives?.["max-stale"]) {
if (!staleResponseRequiresRevalidation(result, cacheType) && cacheControlDirectives?.["max-stale"]) {
const gracePeriod = result.staleAt + cacheControlDirectives["max-stale"] * 1e3;
return now > gracePeriod;
}
@@ -36812,9 +38165,9 @@ var require_cache3 = __commonJS({
}
return false;
}
function withinStaleWhileRevalidateWindow(result) {
function withinStaleWhileRevalidateWindow(result, cacheType) {
const staleWhileRevalidate = result.cacheControlDirectives?.["stale-while-revalidate"];
if (!staleWhileRevalidate) {
if (!staleWhileRevalidate || staleResponseRequiresRevalidation(result, cacheType)) {
return false;
}
const now = Date.now();
@@ -36924,32 +38277,17 @@ var require_cache3 = __commonJS({
return dispatch(opts, new CacheHandler(globalOpts, cacheKey, handler));
}
const age = Math.round((now - result.cachedAt) / 1e3);
if (reqCacheControl?.["max-age"] && age >= reqCacheControl["max-age"]) {
return dispatch(opts, handler);
}
const stale = isStale(result, reqCacheControl);
const revalidate = needsRevalidation(result, reqCacheControl, opts);
const requestMaxAgeExpired = reqCacheControl?.["max-age"] !== void 0 && age >= reqCacheControl["max-age"];
const stale = requestMaxAgeExpired || isStale(result, reqCacheControl, globalOpts.type);
const revalidate = requestMaxAgeExpired || needsRevalidation(result, reqCacheControl, opts);
if (stale || revalidate) {
if (util.isStream(opts.body) && util.bodyLength(opts.body) !== 0) {
return dispatch(opts, new CacheHandler(globalOpts, cacheKey, handler));
}
if (!revalidate && withinStaleWhileRevalidateWindow(result)) {
if (!revalidate && withinStaleWhileRevalidateWindow(result, globalOpts.type)) {
sendCachedValue(handler, opts, result, age, null, true);
queueMicrotask(() => {
const headers2 = {
...opts.headers,
"if-modified-since": new Date(result.cachedAt).toUTCString()
};
if (result.etag) {
headers2["if-none-match"] = result.etag;
}
if (result.vary) {
for (const key in result.vary) {
if (result.vary[key] != null) {
headers2[key] = result.vary[key];
}
}
}
const headers2 = makeRevalidationHeaders(opts, result);
dispatch(
{
...opts,
@@ -36975,32 +38313,33 @@ var require_cache3 = __commonJS({
return true;
}
let withinStaleIfErrorThreshold = false;
const staleIfErrorExpiry = result.cacheControlDirectives["stale-if-error"] ?? reqCacheControl?.["stale-if-error"];
if (staleIfErrorExpiry) {
withinStaleIfErrorThreshold = now < result.staleAt + staleIfErrorExpiry * 1e3;
}
const headers = {
...opts.headers,
"if-modified-since": new Date(result.cachedAt).toUTCString()
};
if (result.etag) {
headers["if-none-match"] = result.etag;
}
if (result.vary) {
for (const key in result.vary) {
if (result.vary[key] != null) {
headers[key] = result.vary[key];
}
if (!staleResponseRequiresRevalidation(result, globalOpts.type)) {
const staleIfErrorExpiry = result.cacheControlDirectives["stale-if-error"] ?? reqCacheControl?.["stale-if-error"];
if (staleIfErrorExpiry) {
withinStaleIfErrorThreshold = now < result.staleAt + staleIfErrorExpiry * 1e3;
}
}
const headers = makeRevalidationHeaders(opts, result);
return dispatch(
{
...opts,
headers
},
new CacheRevalidationHandler(
(success, context) => {
(success, context, statusCode, headers2) => {
if (success) {
if (statusCode === 304) {
if (revalidationResponseDisallowsCachedReuse(globalOpts.type, headers2)) {
if (util.isStream(result.body)) {
result.body.on("error", nop).destroy();
}
deleteCachedValue(globalOpts.store, cacheKey);
return dispatch(opts, new CacheHandler(globalOpts, cacheKey, handler));
}
if (revalidationResponseUpdatesCacheControl(headers2)) {
deleteCachedValue(globalOpts.store, cacheKey);
}
}
sendCachedValue(handler, opts, result, age, context, stale);
} else if (util.isStream(result.body)) {
result.body.on("error", nop).destroy();
@@ -37042,13 +38381,22 @@ var require_cache3 = __commonJS({
cacheByDefault,
type
};
const safeMethodsToNotCache = util.safeHTTPMethods.filter((method) => methods.includes(method) === false);
const safeMethodsToNotCache = [];
for (let i = 0; i < util.safeHTTPMethods.length; i++) {
const method = util.safeHTTPMethods[i];
if (!arrayIncludes(methods, method)) {
safeMethodsToNotCache.push(method);
}
}
return (dispatch) => {
return (opts2, handler) => {
if (!opts2.origin || safeMethodsToNotCache.includes(opts2.method)) {
if (arrayIncludes(safeMethodsToNotCache, opts2.method)) {
return dispatch(opts2, handler);
}
if (origins !== void 0) {
if (!opts2.origin) {
return dispatch(opts2, handler);
}
const requestOrigin = opts2.origin.toString().toLowerCase();
let isAllowed = false;
for (let i = 0; i < origins.length; i++) {
@@ -37071,7 +38419,7 @@ var require_cache3 = __commonJS({
...opts2,
headers: normalizeHeaders(opts2)
};
const reqCacheControl = opts2.headers?.["cache-control"] ? parseCacheControlHeader(opts2.headers["cache-control"]) : void 0;
const reqCacheControl = opts2.headers?.["cache-control"] ? parseCacheControlHeader(opts2.headers["cache-control"]) : hasPragmaNoCache(opts2.headers) ? { "no-cache": true } : void 0;
if (reqCacheControl?.["no-store"]) {
return dispatch(opts2, handler);
}
@@ -37131,6 +38479,8 @@ var require_decompress = __commonJS({
var DecompressHandler = class extends DecoratorHandler {
/** @type {Transform[]} */
#decompressors = [];
/** @type {Record<string, string | string[]> | undefined} */
#trailers;
/** @type {Readonly<number[]>} */
#skipStatusCodes;
/** @type {boolean} */
@@ -37206,7 +38556,7 @@ var require_decompress = __commonJS({
const decompressor = this.#decompressors[0];
this.#setupDecompressorEvents(decompressor, controller);
decompressor.on("end", () => {
super.onResponseEnd(controller, {});
super.onResponseEnd(controller, this.#trailers);
});
}
/**
@@ -37222,7 +38572,7 @@ var require_decompress = __commonJS({
super.onResponseError(controller, err);
return;
}
super.onResponseEnd(controller, {});
super.onResponseEnd(controller, this.#trailers);
});
}
/**
@@ -37300,6 +38650,7 @@ var require_decompress = __commonJS({
*/
onResponseEnd(controller, trailers) {
if (this.#decompressors.length > 0) {
this.#trailers = trailers;
this.#decompressors[0].end();
this.#cleanupDecompressors();
return;
@@ -37331,6 +38682,9 @@ var require_decompress = __commonJS({
}
return (dispatch) => {
return (opts, handler) => {
if (opts.method === "HEAD") {
return dispatch(opts, handler);
}
const decompressHandler = new DecompressHandler(handler, options);
return dispatch(opts, decompressHandler);
};
@@ -37740,7 +39094,7 @@ var require_deduplicate = __commonJS({
const pendingRequests = /* @__PURE__ */ new Map();
return (dispatch) => {
return (opts2, handler) => {
if (!opts2.origin || methods.includes(opts2.method) === false) {
if (opts2.upgrade || methods.includes(opts2.method) === false) {
return dispatch(opts2, handler);
}
opts2 = {
@@ -38138,7 +39492,12 @@ var require_sqlite_cache_store = __commonJS({
if (lhs.length !== rhs.length) {
return false;
}
return lhs.every((x, i) => x === rhs[i]);
for (let i = 0; i < lhs.length; i++) {
if (lhs[i] !== rhs[i]) {
return false;
}
}
return true;
}
return lhs === rhs;
}
@@ -38644,9 +40003,7 @@ var require_response2 = __commonJS({
// https://fetch.spec.whatwg.org/#dom-response-json
static json(data, init = void 0) {
webidl.argumentLengthCheck(arguments, 1, "Response.json");
if (init !== null) {
init = webidl.converters.ResponseInit(init);
}
init = webidl.converters.ResponseInit(init);
const bytes = textEncoder.encode(
serializeJavascriptValueToJSONString(data)
);
@@ -39101,6 +40458,12 @@ var require_request4 = __commonJS({
/** @type {Headers} */
#headers;
#state;
/**
* Removes the `abort` listener that makes this request's signal follow the
* passed signal. `null` when no such listener was registered.
* @type {(() => void) | null}
*/
#abortCleanup = null;
// https://fetch.spec.whatwg.org/#dom-request
constructor(input, init = void 0) {
webidl.util.markAsUncloneable(this);
@@ -39298,8 +40661,13 @@ var require_request4 = __commonJS({
if (abortSignalHasEventHandlerLeakWarning && getMaxListeners(signal) === defaultMaxListeners) {
setMaxListeners(1500, signal);
}
util.addAbortListener(signal, abort);
const removeAbortListener = util.addAbortListener(signal, abort);
requestFinalizer.register(ac, { signal, abort }, abort);
this.#abortCleanup = () => {
requestFinalizer.unregister(abort);
removeAbortListener();
this.#abortCleanup = null;
};
}
}
this.#headers = new Headers2(kConstruct);
@@ -39578,14 +40946,23 @@ var require_request4 = __commonJS({
static setRequestState(request, newState) {
request.#state = newState;
}
/**
* Removes the `abort` listener that makes this request's signal follow the
* signal passed to its constructor, if any. Idempotent.
* @param {Request} request
*/
static removeRequestAbortListener(request) {
request.#abortCleanup?.();
}
};
var { setRequestSignal, getRequestDispatcher, setRequestDispatcher, setRequestHeaders, getRequestState, setRequestState } = Request;
var { setRequestSignal, getRequestDispatcher, setRequestDispatcher, setRequestHeaders, getRequestState, setRequestState, removeRequestAbortListener } = Request;
Reflect.deleteProperty(Request, "setRequestSignal");
Reflect.deleteProperty(Request, "getRequestDispatcher");
Reflect.deleteProperty(Request, "setRequestDispatcher");
Reflect.deleteProperty(Request, "setRequestHeaders");
Reflect.deleteProperty(Request, "getRequestState");
Reflect.deleteProperty(Request, "setRequestState");
Reflect.deleteProperty(Request, "removeRequestAbortListener");
mixinBody(Request, getRequestState);
function makeRequest(init) {
return {
@@ -39608,6 +40985,7 @@ var require_request4 = __commonJS({
referrerPolicy: init.referrerPolicy ?? "",
mode: init.mode ?? "no-cors",
useCORSPreflightFlag: init.useCORSPreflightFlag ?? false,
// TODO: is this credentials mode? https://fetch.spec.whatwg.org/#concept-request-credentials-mode
credentials: init.credentials ?? "same-origin",
useCredentials: init.useCredentials ?? false,
cache: init.cache ?? "default",
@@ -39779,7 +41157,8 @@ var require_request4 = __commonJS({
fromInnerRequest,
cloneRequest,
getRequestDispatcher,
getRequestState
getRequestState,
removeRequestAbortListener
};
}
});
@@ -39936,7 +41315,7 @@ var require_fetch2 = __commonJS({
getResponseState
} = require_response2();
var { HeadersList } = require_headers2();
var { Request, cloneRequest, getRequestDispatcher, getRequestState } = require_request4();
var { Request, cloneRequest, getRequestDispatcher, getRequestState, removeRequestAbortListener } = require_request4();
var zlib = require("node:zlib");
var {
makePolicyContainer,
@@ -40073,7 +41452,7 @@ var require_fetch2 = __commonJS({
let responseObject = null;
let locallyAborted = false;
let controller = null;
addAbortListener(
const removeAbortListener = addAbortListener(
requestObject.signal,
() => {
locallyAborted = true;
@@ -40083,16 +41462,22 @@ var require_fetch2 = __commonJS({
abortFetch(p, request, realResponse, requestObject.signal.reason, controller.controller);
}
);
const cleanupAbortListeners = () => {
removeAbortListener();
removeRequestAbortListener(requestObject);
};
const processResponse = (response) => {
if (locallyAborted) {
return;
}
if (response.aborted) {
abortFetch(p, request, responseObject, controller.serializedAbortReason, controller.controller);
cleanupAbortListeners();
return;
}
if (response.type === "error") {
p.reject(new TypeError("fetch failed", { cause: response.error }));
cleanupAbortListeners();
return;
}
responseObject = new WeakRef(fromInnerResponse(response, "immutable"));
@@ -40101,7 +41486,10 @@ var require_fetch2 = __commonJS({
};
controller = fetching({
request,
processResponseEndOfBody: handleFetchDone,
processResponseEndOfBody: (response) => {
handleFetchDone(response);
cleanupAbortListeners();
},
processResponse,
dispatcher: getRequestDispatcher(requestObject),
// undici
@@ -40600,7 +41988,12 @@ var require_fetch2 = __commonJS({
httpFetchParams = fetchParams;
httpRequest = request;
} else {
httpRequest = cloneRequest(request);
if (request.body?.source != null) {
httpRequest = cloneRequest(request);
} else {
httpRequest = cloneRequest({ ...request, body: null });
httpRequest.body = request.body;
}
httpFetchParams = { ...fetchParams };
httpFetchParams.request = httpRequest;
}
@@ -40645,7 +42038,7 @@ var require_fetch2 = __commonJS({
}
if (!httpRequest.headersList.contains("accept-encoding", true)) {
if (urlHasHttpsScheme(requestCurrentURL(httpRequest))) {
httpRequest.headersList.append("accept-encoding", "br, gzip, deflate", true);
httpRequest.headersList.append("accept-encoding", "br, gzip, deflate, zstd", true);
} else {
httpRequest.headersList.append("accept-encoding", "gzip, deflate", true);
}
@@ -41823,14 +43216,48 @@ var require_util12 = __commonJS({
for (let i = 0; i < path.length; ++i) {
const code = path.charCodeAt(i);
if (code < 32 || // exclude CTLs (0-31)
code === 127 || // DEL
code > 126 || // exclude non-ascii and DEL
code === 59) {
throw new Error("Invalid cookie path");
}
}
}
function isLetterOrDigit(code) {
return code >= 48 && code <= 57 || // 0-9
code >= 65 && code <= 90 || // A-Z
code >= 97 && code <= 122;
}
function validateCookieDomain(domain) {
if (domain.startsWith("-") || domain.endsWith(".") || domain.endsWith("-")) {
if (domain === " ") {
return;
}
if (domain.length > 255) {
throw new Error("Invalid cookie domain");
}
let labelLength = 0;
for (let i = 0; i < domain.length; ++i) {
const code = domain.charCodeAt(i);
if (code === 46) {
if (labelLength === 0) {
throw new Error("Invalid cookie domain");
}
if (domain.charCodeAt(i - 1) === 45) {
throw new Error("Invalid cookie domain");
}
labelLength = 0;
continue;
}
if (labelLength === 0 && !isLetterOrDigit(code)) {
throw new Error("Invalid cookie domain");
}
if (!isLetterOrDigit(code) && code !== 45) {
throw new Error("Invalid cookie domain");
}
if (++labelLength > 63) {
throw new Error("Invalid cookie domain");
}
}
if (labelLength === 0 || domain.charCodeAt(domain.length - 1) === 45) {
throw new Error("Invalid cookie domain");
}
}
@@ -41913,7 +43340,11 @@ var require_util12 = __commonJS({
throw new Error("Invalid unparsed");
}
const [key, ...value] = part.split("=");
out.push(`${key.trim()}=${value.join("=")}`);
const trimmedKey = key.trim();
const joinedValue = value.join("=");
validateCookieName(trimmedKey);
validateCookieValue(joinedValue);
out.push(`${trimmedKey}=${joinedValue}`);
}
return out.join("; ");
}
@@ -41936,7 +43367,6 @@ var require_parse2 = __commonJS({
var { maxNameValuePairSize, maxAttributeValueSize } = require_constants9();
var { isCTLExcludingHtab } = require_util12();
var assert = require("node:assert");
var { unescape: qsUnescape } = require("node:querystring");
function parseSetCookie(header) {
if (isCTLExcludingHtab(header)) {
return null;
@@ -41970,7 +43400,7 @@ var require_parse2 = __commonJS({
}
return {
name,
value: qsUnescape(value),
value,
...parseUnparsedAttributes(unparsedAttributes)
};
}
@@ -42013,7 +43443,9 @@ var require_parse2 = __commonJS({
const attributeNameLowercase = attributeName.toLowerCase();
if (attributeNameLowercase === "expires") {
const expiryTime = new Date(attributeValue);
cookieAttributeList.expires = expiryTime;
if (!Number.isNaN(expiryTime.getTime())) {
cookieAttributeList.expires = expiryTime;
}
} else if (attributeNameLowercase === "max-age") {
const charCode = attributeValue.charCodeAt(0);
if ((charCode < 48 || charCode > 57) && attributeValue[0] !== "-") {
@@ -42044,18 +43476,14 @@ var require_parse2 = __commonJS({
} else if (attributeNameLowercase === "httponly") {
cookieAttributeList.httpOnly = true;
} else if (attributeNameLowercase === "samesite") {
let enforcement = "Default";
const attributeValueLowercase = attributeValue.toLowerCase();
if (attributeValueLowercase.includes("none")) {
enforcement = "None";
if (attributeValueLowercase === "none") {
cookieAttributeList.sameSite = "None";
} else if (attributeValueLowercase === "strict") {
cookieAttributeList.sameSite = "Strict";
} else if (attributeValueLowercase === "lax") {
cookieAttributeList.sameSite = "Lax";
}
if (attributeValueLowercase.includes("strict")) {
enforcement = "Strict";
}
if (attributeValueLowercase.includes("lax")) {
enforcement = "Lax";
}
cookieAttributeList.sameSite = enforcement;
} else {
cookieAttributeList.unparsed ??= [];
cookieAttributeList.unparsed.push(`${attributeName}=${attributeValue}`);
@@ -43075,6 +44503,8 @@ var require_receiver2 = __commonJS({
/** @type {import('./websocket').Handler} */
#handler;
/** @type {number} */
#maxFragments;
/** @type {number} */
#maxPayloadSize;
/**
* @param {import('./websocket').Handler} handler
@@ -43085,6 +44515,7 @@ var require_receiver2 = __commonJS({
super();
this.#handler = handler;
this.#extensions = extensions == null ? /* @__PURE__ */ new Map() : extensions;
this.#maxFragments = options.maxFragments ?? 0;
this.#maxPayloadSize = options.maxPayloadSize ?? 0;
if (this.#extensions.has("permessage-deflate")) {
this.#extensions.set("permessage-deflate", new PerMessageDeflate(extensions, options));
@@ -43101,7 +44532,7 @@ var require_receiver2 = __commonJS({
this.run(callback);
}
#validatePayloadLength() {
if (this.#maxPayloadSize > 0 && !isControlFrame(this.#info.opcode) && this.#info.payloadLength > this.#maxPayloadSize) {
if (this.#maxPayloadSize > 0 && !isControlFrame(this.#info.opcode) && this.#info.payloadLength + this.#fragmentsBytes > this.#maxPayloadSize) {
failWebsocketConnection(this.#handler, 1009, "Payload size exceeds maximum allowed size");
return false;
}
@@ -43218,7 +44649,9 @@ var require_receiver2 = __commonJS({
this.#state = parserStates.INFO;
} else {
if (!this.#info.compressed) {
this.writeFragments(body);
if (!this.writeFragments(body)) {
return;
}
if (!this.#info.fragmented && this.#info.fin) {
websocketMessageReceived(this.#handler, this.#info.binaryType, this.consumeFragments());
}
@@ -43233,7 +44666,9 @@ var require_receiver2 = __commonJS({
failWebsocketConnection(this.#handler, code, error2.message);
return;
}
this.writeFragments(data);
if (!this.writeFragments(data)) {
return;
}
if (this.#maxPayloadSize > 0 && this.#fragmentsBytes > this.#maxPayloadSize) {
failWebsocketConnection(this.#handler, 1009, new MessageSizeExceededError().message);
return;
@@ -43298,8 +44733,13 @@ var require_receiver2 = __commonJS({
}
}
writeFragments(fragment) {
if (this.#maxFragments > 0 && this.#fragments.length === this.#maxFragments) {
failWebsocketConnection(this.#handler, 1008, "Too many message fragments");
return false;
}
this.#fragmentsBytes += fragment.length;
this.#fragments.push(fragment);
return true;
}
consumeFragments() {
const fragments = this.#fragments;
@@ -43504,6 +44944,8 @@ var require_websocket2 = __commonJS({
var { SendQueue } = require_sender2();
var { WebsocketFrameSend } = require_frame2();
var { channels } = require_diagnostics2();
var kRef = /* @__PURE__ */ Symbol.for("nodejs.ref");
var kUnref = /* @__PURE__ */ Symbol.for("nodejs.unref");
function getSocketAddress(socket) {
if (typeof socket?.address === "function") {
return socket.address();
@@ -43523,6 +44965,7 @@ var require_websocket2 = __commonJS({
#bufferedAmount = 0;
#protocol = "";
#extensions = "";
#refed = true;
/** @type {SendQueue} */
#sendQueue;
/** @type {Handler} */
@@ -43605,6 +45048,16 @@ var require_websocket2 = __commonJS({
this.#handler.readyState = _WebSocket.CONNECTING;
this.#binaryType = "blob";
}
[kRef]() {
webidl.brandCheck(this, _WebSocket);
this.#refed = true;
this.#handler.socket?.ref?.();
}
[kUnref]() {
webidl.brandCheck(this, _WebSocket);
this.#refed = false;
this.#handler.socket?.unref?.();
}
/**
* @see https://websockets.spec.whatwg.org/#dom-websocket-close
* @param {number|undefined} code
@@ -43766,8 +45219,13 @@ var require_websocket2 = __commonJS({
*/
#onConnectionEstablished(response, parsedExtensions) {
this.#handler.socket = response.socket;
if (!this.#refed) {
this.#handler.socket.unref?.();
}
const maxFragments = this.#handler.controller.dispatcher?.webSocketOptions?.maxFragments;
const maxPayloadSize = this.#handler.controller.dispatcher?.webSocketOptions?.maxPayloadSize;
const parser = new ByteParser(this.#handler, parsedExtensions, {
maxFragments,
maxPayloadSize
});
parser.on("drain", () => this.#handler.onParserDrain());
@@ -44213,7 +45671,12 @@ var require_websocketstream = __commonJS({
/** @type {import('../websocket').Handler['onConnectionEstablished']} */
#onConnectionEstablished(response, parsedExtensions) {
this.#handler.socket = response.socket;
const parser = new ByteParser(this.#handler, parsedExtensions);
const maxFragments = this.#handler.controller.dispatcher?.webSocketOptions?.maxFragments;
const maxPayloadSize = this.#handler.controller.dispatcher?.webSocketOptions?.maxPayloadSize;
const parser = new ByteParser(this.#handler, parsedExtensions, {
maxFragments,
maxPayloadSize
});
parser.on("drain", () => this.#handler.onParserDrain());
parser.on("error", (err) => this.#handler.onParserError(err));
this.#parser = parser;
@@ -44353,6 +45816,7 @@ var require_websocketstream = __commonJS({
var require_util14 = __commonJS({
"node_modules/undici/lib/web/eventsource/util.js"(exports2, module2) {
"use strict";
var { makeRequest } = require_request4();
function isValidLastEventId(value) {
return value.indexOf("\0") === -1;
}
@@ -44363,9 +45827,27 @@ var require_util14 = __commonJS({
}
return true;
}
function createPotentialCORSRequest(url, destination, corsAttributeState, sameOriginFallback) {
let mode = corsAttributeState === "no cors" ? "no-cors" : "cors";
if (sameOriginFallback && mode === "no-cors") {
mode = "same-origin";
}
let credentialsMode = "include";
if (corsAttributeState === "anonymous") {
credentialsMode = "same-origin";
}
return makeRequest({
urlList: [url],
destination,
mode,
credentials: credentialsMode,
useURLCredentials: true
});
}
module2.exports = {
isValidLastEventId,
isASCIINumber
isASCIINumber,
createPotentialCORSRequest
};
}
});
@@ -44717,7 +46199,6 @@ var require_eventsource2 = __commonJS({
"use strict";
var { pipeline } = require("node:stream");
var { fetching } = require_fetch2();
var { makeRequest } = require_request4();
var { webidl } = require_webidl2();
var { EventSourceStream } = require_eventsource_stream2();
var { parseMIMEType } = require_data_url2();
@@ -44725,6 +46206,7 @@ var require_eventsource2 = __commonJS({
var { isNetworkError } = require_response2();
var { kEnumerableProperty } = require_util9();
var { environmentSettingsObject } = require_util10();
var { createPotentialCORSRequest } = require_util14();
var experimentalWarned = false;
var defaultReconnectionTime = 3e3;
var CONNECTING = 0;
@@ -44789,20 +46271,12 @@ var require_eventsource2 = __commonJS({
corsAttributeState = USE_CREDENTIALS;
this.#withCredentials = true;
}
const initRequest = {
redirect: "follow",
keepalive: true,
// @see https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-settings-attributes
mode: "cors",
credentials: corsAttributeState === "anonymous" ? "same-origin" : "omit",
referrer: "no-referrer"
};
initRequest.client = environmentSettingsObject.settingsObject;
initRequest.headersList = [["accept", { name: "accept", value: "text/event-stream" }]];
initRequest.cache = "no-store";
initRequest.initiator = "other";
initRequest.urlList = [new URL(this.#url)];
this.#request = makeRequest(initRequest);
const request = createPotentialCORSRequest(urlRecord, "", corsAttributeState);
request.client = environmentSettingsObject.settingsObject;
request.headersList.set("Accept", "text/event-stream");
request.cache = "no-store";
request.initiator = "other";
this.#request = request;
this.#connect();
}
/**
@@ -45039,9 +46513,9 @@ var require_undici2 = __commonJS({
var RoundRobinPool = require_round_robin_pool();
var Agent = require_agent2();
var Dispatcher1Wrapper = require_dispatcher1_wrapper();
var ProxyAgent3 = require_proxy_agent2();
var ProxyAgent2 = require_proxy_agent2();
var Socks5ProxyAgent = require_socks5_proxy_agent();
var EnvHttpProxyAgent = require_env_http_proxy_agent2();
var EnvHttpProxyAgent2 = require_env_http_proxy_agent2();
var RetryAgent = require_retry_agent2();
var H2CClient = require_h2c_client();
var errors = require_errors2();
@@ -45067,9 +46541,9 @@ var require_undici2 = __commonJS({
module2.exports.RoundRobinPool = RoundRobinPool;
module2.exports.Agent = Agent;
module2.exports.Dispatcher1Wrapper = Dispatcher1Wrapper;
module2.exports.ProxyAgent = ProxyAgent3;
module2.exports.ProxyAgent = ProxyAgent2;
module2.exports.Socks5ProxyAgent = Socks5ProxyAgent;
module2.exports.EnvHttpProxyAgent = EnvHttpProxyAgent;
module2.exports.EnvHttpProxyAgent = EnvHttpProxyAgent2;
module2.exports.RetryAgent = RetryAgent;
module2.exports.H2CClient = H2CClient;
module2.exports.RetryHandler = RetryHandler;
@@ -45701,10 +47175,535 @@ function info(message) {
}
// src/update-known-checksums.ts
var semver2 = __toESM(require_semver(), 1);
// src/download/checksum/known-version.ts
var semver = __toESM(require_semver(), 1);
// src/download/checksum/known-checksums.ts
var KNOWN_CHECKSUMS = {
// src/download/checksum/known-checksums.json
var known_checksums_default = {
"aarch64-apple-darwin-0.13.0": "a9c1b29002cf3c83f07fa9cd8a887a3be0107d90e23189721221e7257db8e3d6",
"aarch64-pc-windows-msvc-0.13.0": "cb54028b59aa87f11cf6dec293ce000420043a49a8aea522e822a671321f8932",
"aarch64-unknown-linux-gnu-0.13.0": "3ccfb6af6e242433eb552f7d9676abd5412c6595c497e990d9c8cb7b5bd4d2c3",
"aarch64-unknown-linux-musl-0.13.0": "281ca6cf43f4e26e35474839ad4861be86de42af2682f74134460f5b2071b96d",
"arm-unknown-linux-musleabihf-0.13.0": "3f981753e12b6fcf705e05fe00bfe41366c5b5c260ebcea76965821dfc8f6c94",
"armv7-unknown-linux-gnueabihf-0.13.0": "e38957791fdd56d356421d81a509b66680d47478870082519340361e5abdbb8b",
"armv7-unknown-linux-musleabihf-0.13.0": "8c4e1f37dfcafa8244f0e8f1cd38f1ee597e5091c6e21a60fdd674987f69f8a2",
"i686-pc-windows-msvc-0.13.0": "5fca2da976672231e3dcc1d81bb1059781dea3915715fe8f000a916886d183cb",
"i686-unknown-linux-gnu-0.13.0": "4ee76d4f81003f04a1aeb6c743330d41a45054f2c69ceee4afdd129dd2786f88",
"i686-unknown-linux-musl-0.13.0": "fd9fe1435115fc62fda26cac28b024998d2af39f093f107ef51692d8e24ac7b4",
"powerpc64le-unknown-linux-gnu-0.13.0": "2fac854f1249968b91cd3bd6a089faf4cf7f896e407b9e1b3bc03ea0f0373989",
"riscv64gc-unknown-linux-gnu-0.13.0": "90f660b61ffb8cefae7a60e1b5915ab3eb828266f6d4593279440f735dcded63",
"riscv64gc-unknown-linux-musl-0.13.0": "6bfb5a8f9dce279e12f3ce1b57bef1a51b62ceb1de2c6233b61617883f23d56d",
"s390x-unknown-linux-gnu-0.13.0": "7b7b733e9b44eb0d1f5f6275672653c08f5abe2dd930acdc64123d5c69593132",
"x86_64-apple-darwin-0.13.0": "5f44dcbde809b632f47c36fadb241cb4d6f9af71d0c8f172b5d2026d3dde742c",
"x86_64-pc-windows-msvc-0.13.0": "088962f9e7b7bd9ea740c04c650b2a21c8928c345bd99ac24350dc924dba656c",
"x86_64-unknown-linux-gnu-0.13.0": "1468ebd5a5541121837c5a2817b9972ba6090fa6caa3d142620850a47fb75154",
"x86_64-unknown-linux-musl-0.13.0": "b0828fc4cdc47d65951e94b5f0a15a5364420e8dcd88723f3b21e7a2eb30bbc3",
"aarch64-apple-darwin-0.12.24": "0c4346de7abdb49495b393b9ec809fe387aa43e586be20fecb972216c1e71732",
"aarch64-pc-windows-msvc-0.12.24": "4b783bda5cc44bbae0651a837223873a7acee31152381aef5fc86ef6bef25997",
"aarch64-unknown-linux-gnu-0.12.24": "5231be65f496304623895dacdbf1de8504fec90303684bdf05805aa34414dd21",
"aarch64-unknown-linux-musl-0.12.24": "7f9ab4726d743b6a92e310477a7840c8a8a7b3938cb3c4657d541342fca75011",
"arm-unknown-linux-musleabihf-0.12.24": "c134b64ba9d6e760625ff9239708dffaeb67b612ebb47a774470bd88fac32084",
"armv7-unknown-linux-gnueabihf-0.12.24": "7ae5772338fb28f33052c06f82d1acb245df7bc1cb7628184a9baf91e9a101cd",
"armv7-unknown-linux-musleabihf-0.12.24": "fe46d0ad949c2901be0ead471109cfed57a082d4ff037cf64d7c7c65e910cdf2",
"i686-pc-windows-msvc-0.12.24": "752eda106495f96849951831a419f63796a01dc73ce5ab3cae6d48239527a06e",
"i686-unknown-linux-gnu-0.12.24": "89dde6d09ef1ae1e548b78c035ee75d0e2127b6c3991e0754651021c57110296",
"i686-unknown-linux-musl-0.12.24": "1d86de046c8be1ed1d7ea383f52469056145ee86a57fb11db5a51b4446d3d365",
"powerpc64le-unknown-linux-gnu-0.12.24": "897c61e780aded8062c9011f009b5d2971891b7e97df013c2ae10fca6fd41425",
"riscv64gc-unknown-linux-gnu-0.12.24": "c7789e1b3575c4c5a95a73ce280cd7335e4e1d8bf2aa90c606e33c5e3625d2e5",
"riscv64gc-unknown-linux-musl-0.12.24": "1adf83ae63acc09d7bd4926f6a1a0d26f819df6972635c0e57aa29d21e1d9797",
"s390x-unknown-linux-gnu-0.12.24": "9d2863b384a60f1c44c3e642226d1ffa97c0e6275cbb41f83aa2cdd764f8397c",
"x86_64-apple-darwin-0.12.24": "4fa82e37cb94767661f532b001e470b67a186c7260e305bd84ddb78fd545c0b6",
"x86_64-pc-windows-msvc-0.12.24": "7c38608c8a18ee137d748a1773053b07ec8f3a30fab49aebaa6f4e4efeceb019",
"x86_64-unknown-linux-gnu-0.12.24": "b4dfaef47d491a7296981f8374a4595f55dbf84e8937c8ecd2983574d8bb3da6",
"x86_64-unknown-linux-musl-0.12.24": "48170bd200a5430298c18f3b264485a1f3a8605f01088277daf6e37633edf0f5",
"aarch64-apple-darwin-0.12.23": "50487ae565ccd96e499056b4674d438f4c53170202617b4c759defe0c6a1b544",
"aarch64-pc-windows-msvc-0.12.23": "13294e232ececbe709c06b74e6ced06f2a225ea5591476685362f22be56a50d5",
"aarch64-unknown-linux-gnu-0.12.23": "6524bd338177ed50d035d39354e12545e993bbeba2ecbddf0480c5b3a81d313f",
"aarch64-unknown-linux-musl-0.12.23": "b536543cc4d50661986b165c76ee8aa9056e4fa332edcd153ff2e98760f9359b",
"arm-unknown-linux-musleabihf-0.12.23": "7184501c712c58abc9554e1f4fcc9bacc042ad28e1ad0f42e762a1ed27a151c5",
"armv7-unknown-linux-gnueabihf-0.12.23": "4d568920e1f60c4b881cbe2827dfa20592a9a9721f69b57d47650d035c4fe8f6",
"armv7-unknown-linux-musleabihf-0.12.23": "f5c941f2a7fa078ffcbc58654ec1b37de98e2a93a24cd3deb19c1acdd66ff533",
"i686-pc-windows-msvc-0.12.23": "22a92f4374e4716c2848acaa0392f2f8e4a13b0ff65d080e2a5ade167bce96a8",
"i686-unknown-linux-gnu-0.12.23": "52c93c40f6056c4d0e1e259acd60c11f7328416a4f28c85e5f1b04430538aeaa",
"i686-unknown-linux-musl-0.12.23": "b3838649e6896734be828e96c6b14f3064882508a7211398c0e3a35f974f501b",
"powerpc64le-unknown-linux-gnu-0.12.23": "e8e13421bdecb3f31c0794edfcb8b2e04406f34d645fd9c040f7bd9ace5c3f72",
"riscv64gc-unknown-linux-gnu-0.12.23": "661c1a11afc8db4adb20b2d30f789b50e682529b0f1f49e3dd138d86581065b3",
"riscv64gc-unknown-linux-musl-0.12.23": "d6dcc450fe1c159540115c8934c76515ee03192c9e61cb983228ad3809e1cc71",
"s390x-unknown-linux-gnu-0.12.23": "50c726711cb5f4cdbf45e31c141c9033fdd43146f90ac630c252857c60daf84b",
"x86_64-apple-darwin-0.12.23": "960da44cb4b73685206ddd250b19e0a117fa41095710c1038f081f5cb613efb4",
"x86_64-pc-windows-msvc-0.12.23": "75d05de6762778c31ee183398de7dd15093fad0ed90b1f236d8205ea5ec00c90",
"x86_64-unknown-linux-gnu-0.12.23": "9167d72b3319674b6303c4cbe071854bba13ebdf3d76b1a7cbdc175471fb66d6",
"x86_64-unknown-linux-musl-0.12.23": "1cff8783850e794470aadb73f54b749542a511fc57b0ce6468b64bd3852e0ade",
"aarch64-apple-darwin-0.12.22": "5d714de09501a59393ceca78f4bc232a50478729640d251907160299b2a93ddd",
"aarch64-pc-windows-msvc-0.12.22": "6a42b919c2bb7135f07b4d1bb8e489f0eaab0bae039020573cc522d831e2d32e",
"aarch64-unknown-linux-gnu-0.12.22": "6f66a14e8239871fb477f9746c941fedfa77e8fe28a8bc7c07e1dc7f53a66712",
"aarch64-unknown-linux-musl-0.12.22": "228bd32c180421a94eef91378a92b2dd63c768bd278430e833250524c4a13382",
"arm-unknown-linux-musleabihf-0.12.22": "e7df01f0b9cfec6a82232e0de063cb961e38e4e1a9767295bdee87e148f6dde0",
"armv7-unknown-linux-gnueabihf-0.12.22": "ec4d636bce8cc4d2ff0a927f2805671e2d7377e3f3f7b42109d5d4633839fa41",
"armv7-unknown-linux-musleabihf-0.12.22": "5f5ea3f80f8ffa47aa47fb8f59b5589eb3619c05ffe7730d8554ead42720f742",
"i686-pc-windows-msvc-0.12.22": "a18a913fe4435e5591113ff035077d9461177ad03ab2747eaeb88aee95833a16",
"i686-unknown-linux-gnu-0.12.22": "221bbc2362b7cbf651e3fbb0a228c034820bb07f9efe2785c9339828fcdf079b",
"i686-unknown-linux-musl-0.12.22": "50dadb6a043359f4762e338691306109ca1df3d3312460a926642dbf8c9f527c",
"powerpc64le-unknown-linux-gnu-0.12.22": "17b959094cffb2fd3c3fb9c64d98a1ea8eabfd0bc83507ab08e4ca2187302d1c",
"riscv64gc-unknown-linux-gnu-0.12.22": "f25202c8647b4a783b0f04e2c341c617d8d11a8bc72d4ccdcbcc6f0c9d7782f2",
"riscv64gc-unknown-linux-musl-0.12.22": "30b29481b4dd28a8cc9d903b66dbe9532781bd25de817fcd9ea5fd37598ef171",
"s390x-unknown-linux-gnu-0.12.22": "3672ce2d278239cbc52ba0c962f21556cd49f889a87577ea0801ad7eadc0be73",
"x86_64-apple-darwin-0.12.22": "1b8a5b316883df2daf20fb9a446e5b230e01d947d57aba2694977c5ac5a7e98c",
"x86_64-pc-windows-msvc-0.12.22": "ea1397797a0ca15f63516dd0f49c2dde9776db9be5861cab152ebe8ad199894d",
"x86_64-unknown-linux-gnu-0.12.22": "b9980552309f09c15172b8be828555e375097f16deb459795ce7bfd200380f0b",
"x86_64-unknown-linux-musl-0.12.22": "a50fd68c653b0cfb1c85e0a7db62cb78cf5c22b6f3dcf3ae173e5f222d084470",
"aarch64-apple-darwin-0.12.21": "b88bda573e566ef9bced66b155fe0408626fbbc053aee1c30ba686f0728c9447",
"aarch64-pc-windows-msvc-0.12.21": "93ed53b94e9cec000cacdfd18ca67bc4cb2b6a5f5ec041edd7f2a3dae365ce79",
"aarch64-unknown-linux-gnu-0.12.21": "030b69227b40af8c1981b7301793dc66e71ed3c796ea8688209dd268bd91ec51",
"aarch64-unknown-linux-musl-0.12.21": "67389a674e62adffa5a395d9a3b80688731c4aa7b33a6def3e62d00f7fec821f",
"arm-unknown-linux-musleabihf-0.12.21": "047c43febfaabcf06f6e20361bf99a4fd57b9c391a99e0bff2d410dd647829a6",
"armv7-unknown-linux-gnueabihf-0.12.21": "ddb4826a23a9a994da3d868c57b74b1fcb22e29691fc89f8b1702c6a1a9e0df7",
"armv7-unknown-linux-musleabihf-0.12.21": "eeb8edc4e5b74ec4521da4d3911153ba8ce24ed8557e2dbbe55d04a6d7a7f45e",
"i686-pc-windows-msvc-0.12.21": "66b7ffe136362b8522748c4d43b7e82b846e37e4e9272fcfadffaad8bf7b5a75",
"i686-unknown-linux-gnu-0.12.21": "b9ff98d9e6303f8d403af3f002ff1a429867cfcf915f1fa296689b43d9defd52",
"i686-unknown-linux-musl-0.12.21": "1492353034d106f2067eeec8f8b6aad1354e13fbb3f91c25a40eb5d44215fd6f",
"powerpc64le-unknown-linux-gnu-0.12.21": "c76a8589ed7f447d1e14dc20f060861fecd457a44a287047ef6a49bc6f22ae25",
"riscv64gc-unknown-linux-gnu-0.12.21": "202b30dff0f35cd8094e97949c8694b31951f404dd99802e1c997d65d752cf58",
"riscv64gc-unknown-linux-musl-0.12.21": "ca1dcb18c0e81c31d006d1ab808fcb4e3a95dde780b1e58805039f84a8ae0b2d",
"s390x-unknown-linux-gnu-0.12.21": "556bd11fca37f43a5ec051b5ed82e64b54fe536d6dea2fa84f8b34d2eb3a77d0",
"x86_64-apple-darwin-0.12.21": "2b336763b396ec6afa20c5a8b083538ca7402445b868311979d740a4344c17d8",
"x86_64-pc-windows-msvc-0.12.21": "5d223efa0bf00208c3853246af09420419dfbd352536aa6bb8163d6170e23890",
"x86_64-unknown-linux-gnu-0.12.21": "23f02075b652bb1df64178cfae41b5caf160822e720e2663568f3f5d63bc52c0",
"x86_64-unknown-linux-musl-0.12.21": "d69d543a55ec9cdf9d3d9f2648b0a161847e3dbddc477e3be6b5813a6d46f639",
"aarch64-apple-darwin-0.12.20": "848fdeb602ff1a1baacd4f6c8b7bdc6cf1ad026a6d9cf59475fda17c179743ca",
"aarch64-pc-windows-msvc-0.12.20": "b6bd9218855591742ffd3b00fcf2044b4d2fb6446b6a3545e0dfee447e950388",
"aarch64-unknown-linux-gnu-0.12.20": "8a7aad7bc76a2fae5151566ff3e43eacce0b2a113d5e4de3e4afe3e58fa2441e",
"aarch64-unknown-linux-musl-0.12.20": "94bb13feeebc6b59a4124016c957cdc9ee406d1476ce2b2ce2991e95b8e820b7",
"arm-unknown-linux-musleabihf-0.12.20": "6aeef64cf07b43135d6b1c20bd57809f2d965d0f8a2d5602230d5d55b8245477",
"armv7-unknown-linux-gnueabihf-0.12.20": "e1c53318608448ad3b8e7f2e9b069936730a6e7b47831ba5446e4b4f436ee715",
"armv7-unknown-linux-musleabihf-0.12.20": "a4c3a0e12e5489f092c93b232ddc4a811a6ea9a03f447f91f88e96867c0bac8d",
"i686-pc-windows-msvc-0.12.20": "1a372c273370ae9a7e9aa84020ce91fc1d9ebecbd287c3447e7e99cada0b14f3",
"i686-unknown-linux-gnu-0.12.20": "f1e83cc88970ed799b507a8392152d19916dfa0b6c9ae9c8145742035a40d5cb",
"i686-unknown-linux-musl-0.12.20": "11d541dd32dd779adbdfef69fe30d7d325036f50d394d3f260a0042998e05499",
"powerpc64le-unknown-linux-gnu-0.12.20": "39224a5bfc21a8041afc0315e5d47c86acecf4e669944564950996b516fb5987",
"riscv64gc-unknown-linux-gnu-0.12.20": "5cb9df36ca64fb72673c59a77b955b50f3bb907689a98d1d8d640aa3e71f2660",
"riscv64gc-unknown-linux-musl-0.12.20": "360e91a317a27bd33978577c57b6f3ed778bdfe8c30c9b613e46fdc33bf8aee8",
"s390x-unknown-linux-gnu-0.12.20": "25485439b52cb029afa724c442418ca08a53122100f8cce68ccceb88323ccde2",
"x86_64-apple-darwin-0.12.20": "ac54283d211fd77cdc152b67606dbaf6406ff4ab03f3af4ae99468fa8e887141",
"x86_64-pc-windows-msvc-0.12.20": "95f9bc30fbb3574d276e28ac4a6de932d25153645853d13da8c21eec3bc88d06",
"x86_64-unknown-linux-gnu-0.12.20": "6590717592ace991ff83a63fef799e3ad9d33ecc8f96c5d6bdd732496e79337f",
"x86_64-unknown-linux-musl-0.12.20": "14114d66a094f1907af0fcbc863f34226bbb7f5e430e13dce6676ba40dcc6891",
"aarch64-apple-darwin-0.12.19": "a9a8df1eedeb192f2e47e40e2faabfb387db4b850209118786d42f89dde3e0ba",
"aarch64-pc-windows-msvc-0.12.19": "115b54cb823bc48260670f5782001add6067ac8d98d18c8263a833704e287de9",
"aarch64-unknown-linux-gnu-0.12.19": "0804e9b164c64b6914182d5920c08551958a095986f10a3731056df701126436",
"aarch64-unknown-linux-musl-0.12.19": "ad8d8448a2ff642ba62c2f684d7dd22a03f8eb3fc9918c2c3e8ec975f4ed6710",
"arm-unknown-linux-musleabihf-0.12.19": "173b6b118e444dc3b3a0b6337dd87d66fa79835aa5e059d79e942ae33a850e20",
"armv7-unknown-linux-gnueabihf-0.12.19": "f47fe74244c4adcff20637c1aee2550dbc31c81ccf0b2a9537bf98b24bc4028a",
"armv7-unknown-linux-musleabihf-0.12.19": "0df353aac087509c47fe660837ca5d284858ef4a5eec4042cbcdeb0118ba0f1b",
"i686-pc-windows-msvc-0.12.19": "e1c2d19d1173a0e9f81ba3f95881ad741808133e372610889ff6870629218c7f",
"i686-unknown-linux-gnu-0.12.19": "952b0bae707e19b2b5d012b46519a2159be929273d466a1437759f0961be0b93",
"i686-unknown-linux-musl-0.12.19": "f923ac32e0e5139950fe1b63abab74d48cabb94b15c90637bc380dadcaf4da40",
"powerpc64le-unknown-linux-gnu-0.12.19": "e30649ad846a14bd96440efd45fdb60dcdf8db088fb143064aa78632048ad957",
"riscv64gc-unknown-linux-gnu-0.12.19": "50a83ea999ea861a6a853ae1ad0982baad96cc6451e46a5d7e366c4d9475f1bb",
"riscv64gc-unknown-linux-musl-0.12.19": "051de9eda7e09dab4c8a304ab2e119317649fee0e24efd0358f410d0c5b3407f",
"s390x-unknown-linux-gnu-0.12.19": "e6a9149ea122c1b3b9719ca3577c321376e3c400e004c3cc18231fdb1d35107b",
"x86_64-apple-darwin-0.12.19": "cb5fa57bafe68fc0fb94b17f06bee0b0b9a7feb94ccbd110445afa0696e39273",
"x86_64-pc-windows-msvc-0.12.19": "6dbb02d79e419522f1c500f0adb1cddcff0cda7d59b0d66ea7f5e3b4a1b2f5f0",
"x86_64-unknown-linux-gnu-0.12.19": "23bf5552d220e0842b65c862097b2ebaeba0064b74eda5e565e77fd25969d8c8",
"x86_64-unknown-linux-musl-0.12.19": "db7278c9f57981338fddff1fb250e11964bc0a4fafcb9eed8303fdb117dc067b",
"aarch64-apple-darwin-0.12.18": "cf40e0c6a202190ccd9e0406dcfdd5b2d6668a9a5c779b17948963df32aafe5b",
"aarch64-pc-windows-msvc-0.12.18": "17f27b1c64eacc757ae603579f116a014881e486c5e79ae81877980d4699e943",
"aarch64-unknown-linux-gnu-0.12.18": "afb6291f3f0a6b4521fc67b947822506c41dde5b60d2189dd8f3695b2ac8c9e7",
"aarch64-unknown-linux-musl-0.12.18": "0796973fb3eea8095078c3d0659bd17a5f6789a71b8dd85caff2483178f78ac3",
"arm-unknown-linux-musleabihf-0.12.18": "a37127fb331d5e6228efc1f8549d2447b50c907eee4629347f150a649083619c",
"armv7-unknown-linux-gnueabihf-0.12.18": "a38e82350e1e95d5526d1ab81d9b4eb676815c51646243b3b3fbc55b218732d1",
"armv7-unknown-linux-musleabihf-0.12.18": "41f0808328f65910bacdb487638475715f949900c7a23b393b3754e2156ff15a",
"i686-pc-windows-msvc-0.12.18": "e04c0f1fd9a8703761f9edd64d797ddb2c9a3e6eec0e2fed234a7bd2c2e868b9",
"i686-unknown-linux-gnu-0.12.18": "278dbc5dfc6bdde33a553fdba53174cc49daf512a857db1b3c1b5d663290196f",
"i686-unknown-linux-musl-0.12.18": "ebfdaaafc447fb2a7329cde879a7748b2ab40ecdcd3d5f04fc0a5d1ab79bb0bd",
"powerpc64le-unknown-linux-gnu-0.12.18": "332d174248230ed599a9df0e4e77d6921dbb42ca0fdfbe26eb2a6c999da936b3",
"riscv64gc-unknown-linux-gnu-0.12.18": "be88652a03225acbd6bf7204d006b244b0743c8c756a35137c209fa4ff731c41",
"riscv64gc-unknown-linux-musl-0.12.18": "29d34dcc833b99b09f78fa11c66fa3c490c3e37c4f0d754e7b84f7147850190e",
"s390x-unknown-linux-gnu-0.12.18": "ac412f7ab2a096a7302e0ae8828c7ef84db8a1f7ff97acba8ff8987d46d39cec",
"x86_64-apple-darwin-0.12.18": "2e4108f5395397c8bc5d43bf83d3bdbb2d0e92b90d0efa607756be704905fa33",
"x86_64-pc-windows-msvc-0.12.18": "cae6a3bc25239f83dffb467a4b180508d9da23986c04639ebfa44e43e6a84bff",
"x86_64-unknown-linux-gnu-0.12.18": "89eadd7c76fc063887959510d5ba0ab1264dfd5f1143b925ddb73021a40acf16",
"x86_64-unknown-linux-musl-0.12.18": "e38d97460b98ebfd31b197de0fe9fa578add4bc8ba0179b203dd3f87b99f98e6",
"aarch64-apple-darwin-0.12.17": "85f00cbdc6dd3e97eba4c31b4d014375a9fdfe8f570023b84e5102fc3456896b",
"aarch64-pc-windows-msvc-0.12.17": "3e1aa6849d77f0e00dc865e4afab5c5b32de053e21fe35bf5ad5cec3734ec976",
"aarch64-unknown-linux-gnu-0.12.17": "d636d1b678e9e7f367ecb22b46bd1cabbed234d6bc3b4d96365d2b507f72f86c",
"aarch64-unknown-linux-musl-0.12.17": "a6096da273d548cb9f277d237a01ac7344a39ef0f455c0e148e4dc9737c1596b",
"arm-unknown-linux-musleabihf-0.12.17": "16a98a65ef8545f7c32cf717683aac44248369ffaa41c43e665341489359c654",
"armv7-unknown-linux-gnueabihf-0.12.17": "796e101976e18a0f92d90b6f3efd289f77fbc5afd1aaa6fdedd3c84c209eabab",
"armv7-unknown-linux-musleabihf-0.12.17": "421c5f9c53d49088e705e7a64fea147082a2191178ea1d8c51d9ad758ca899f6",
"i686-pc-windows-msvc-0.12.17": "1d3653cb6eafd1e675e979d7cd8eeac1456202f8927a2216419993077a4c473f",
"i686-unknown-linux-gnu-0.12.17": "3faa79a70e2a1aa6eb3cd78eba02263f3e4b17b6be584a01429968f92ff74966",
"i686-unknown-linux-musl-0.12.17": "fc05220cfa1c6585e0e209877c228393b25a96e17cd43028b06566ac894cd078",
"powerpc64le-unknown-linux-gnu-0.12.17": "eb6dbedaaa622af32cba2388e0d2d47e34c8724d4214a129d614b96f071d8e53",
"riscv64gc-unknown-linux-gnu-0.12.17": "65b807b24357133c49d97ca9394ee7e13ca62822e1095376c809654b35f39cf2",
"riscv64gc-unknown-linux-musl-0.12.17": "87c339a735b578f285b961bebdefe0a671f3652477d1e84dc69cd1a829f45e92",
"s390x-unknown-linux-gnu-0.12.17": "d99f69f47fc5e0975d6e7a5745cf2332317015caffb3bb81e5154cc7b66fa77a",
"x86_64-apple-darwin-0.12.17": "8dcf05a8c809bb3c471d2b614788ba27a6e41298fc8c31ac84b5f4339fd468e5",
"x86_64-pc-windows-msvc-0.12.17": "a252121d5b59398fcb137c6ea448176459a44010f33f67e0072305a637119ca7",
"x86_64-unknown-linux-gnu-0.12.17": "fa82fd8dde8e8eefdecada6aa0889666556cfceb690d06e0c3bca49eb3070a63",
"x86_64-unknown-linux-musl-0.12.17": "6401c4665d8fa2a9893e087c91f585430738e3170f5398a1141483efb4a93310",
"aarch64-apple-darwin-0.12.16": "b6e03fae61704b1aa622f12b792a69483e837b83068e44f4fd34f8a07a8f74a3",
"aarch64-pc-windows-msvc-0.12.16": "9977129f89c4036edfcb200d2484755571e51fa74517f02e478c1d7bcc353b2e",
"aarch64-unknown-linux-gnu-0.12.16": "36d913ee9c647481d64f1a0a0485f85ff2feaee605c341fc22e73398f9212c26",
"aarch64-unknown-linux-musl-0.12.16": "5beba1f35c0922fd086cce850ce919e55bc4e873c4fcda891343526afdb4c5b3",
"arm-unknown-linux-musleabihf-0.12.16": "d91fa9dede60e851e4bb3ae8060300042bc6bf924476fae71898d2c08c46a9cf",
"armv7-unknown-linux-gnueabihf-0.12.16": "fbdfca5d4ace4a5abbf343c0f10a0b68c5eac0201073d2a504e32c57c0873669",
"armv7-unknown-linux-musleabihf-0.12.16": "f5a3b6c7fbd4c7ea66cbd704d821ffed0d20abbfa8a12c2e68d6dd22476d308b",
"i686-pc-windows-msvc-0.12.16": "0d4889cc6c4058f4fbc28f6c50ec09b528ef998547cac5c3425e1a0b8169e847",
"i686-unknown-linux-gnu-0.12.16": "0e8743e653ed124c526a9e86ee6a08fa6eee7618a3f12cc9033c74674bd2047f",
"i686-unknown-linux-musl-0.12.16": "f609686cbe67884eeb57daebd58eb0fef35f930dd92fd2c14e931da7515c7454",
"powerpc64le-unknown-linux-gnu-0.12.16": "312dc82f441debff371fe5fc0068b538787678d6d79edc86f028b011920a2f6a",
"riscv64gc-unknown-linux-gnu-0.12.16": "8b0142eee9d291c602218126e3fc558fe9bc1b7c8f1cc0b03dcd8df9f2f218a1",
"riscv64gc-unknown-linux-musl-0.12.16": "188af30f025c35569b302b84793a4c286f6740902885d054917375edbfd0193c",
"s390x-unknown-linux-gnu-0.12.16": "b90cc954c2cd52b695104e215189a0c8d9e6ceaee753c9be1a871bb8d969e9c3",
"x86_64-apple-darwin-0.12.16": "a42bcc9ce97eb8b364d7f162233a9c6b8c0ee25388e551d362809795127e0c31",
"x86_64-pc-windows-msvc-0.12.16": "f730454bf09019754e5e5abd71a8aa18683cb739cba0d9c720bac2e7c901160f",
"x86_64-unknown-linux-gnu-0.12.16": "8e5c6e5523dffc2dcf615bd995554c84c9feb4e577808a3fb8698a639d3f8d9c",
"x86_64-unknown-linux-musl-0.12.16": "a01206ffbd60f3a7ee30949be1863527986f5307494a064042c69ce7e6d44799",
"aarch64-apple-darwin-0.12.15": "dc304b9ed1b24174572290fba60ac3f6fe63c73a671f0439e62a91375841964d",
"aarch64-pc-windows-msvc-0.12.15": "a37c8e96cb1260488c8510b64c848533a3a82a2fdf9e905de7c2700ceebf6437",
"aarch64-unknown-linux-gnu-0.12.15": "0e9a3499b0587d449c9ff684c0160da607826e4af1cee220bc87f378702d3e08",
"aarch64-unknown-linux-musl-0.12.15": "93b801abb146e6431fb0434346a0162e65d3f0d1cd7360144d04c43488fd7f7d",
"arm-unknown-linux-musleabihf-0.12.15": "9b0204dbd368a7a5f84d3ef015684c3b0e830911641ebf4575f44ad4901c1b3e",
"armv7-unknown-linux-gnueabihf-0.12.15": "a0afe9cfc7dc4acc18e613f68c5b010b849323b3a3d6e9311b29d289dc94f95e",
"armv7-unknown-linux-musleabihf-0.12.15": "a113c782e6f96a56f73aba601cde73ddbe877e0a4179eabeb5b6e86be9bb75d9",
"i686-pc-windows-msvc-0.12.15": "cc8b28f77cf19f7ed88569d6d9163e503ebc94e1b70069889852bcf38839c559",
"i686-unknown-linux-gnu-0.12.15": "6fa19118f01ee547d5b9a3f4af389c5c929a34e0074a4313d3cdb3ce9c97fdcd",
"i686-unknown-linux-musl-0.12.15": "b66d6cf7916addeda13fbb61abe003ecc62f048e3a213d6bd2494ca7e8022989",
"powerpc64le-unknown-linux-gnu-0.12.15": "5f49c97ae7ec25c45513466e00a32cacb148f3824367c7e498c0b53a270bc1e2",
"riscv64gc-unknown-linux-gnu-0.12.15": "4c8f75c5969737b67621957010df5337bb721a8d48fdbb1620f5d35c3f1dd268",
"riscv64gc-unknown-linux-musl-0.12.15": "8c03514f57e517eb87a376deb3d6475045f6ce550956c6082910b4a529d08a47",
"s390x-unknown-linux-gnu-0.12.15": "1f5701cb5eedc5a34d3dd5896ca3bf509b15d382b3448f370df46e0a631889c1",
"x86_64-apple-darwin-0.12.15": "e9ca61775532368fe518ab03e7a354c7ecab8ccb3c7d941c775fcc4a362b801b",
"x86_64-pc-windows-msvc-0.12.15": "477bd99a84e34891f2bd4c9152ddeb74e971accccbc59c0f0301f11f08a32d46",
"x86_64-unknown-linux-gnu-0.12.15": "f97935763c04be3e692460a7aaeaaab8fc3b78fcf8b389da820b38ae7423a638",
"x86_64-unknown-linux-musl-0.12.15": "999c0c3da986953e508985c3932d283d2c62eb167b4f8d81e79f565e34104959",
"aarch64-apple-darwin-0.12.14": "dfed5683c5873d65eff8476eb93526059b81e5646a68305b5c94a26b29990894",
"aarch64-pc-windows-msvc-0.12.14": "46b930bdbb338099c7d9da711b751240eb97876eda6a553a2c28323967232041",
"aarch64-unknown-linux-gnu-0.12.14": "7fb91bd5d10529c60723eaec3caf44726f89280e5aeed78af8fc63fcad004c9b",
"aarch64-unknown-linux-musl-0.12.14": "571b5c73c9bcc294f8087f22613edb7c7ceb191f4dbf8cafd3f2ff15e6147d36",
"arm-unknown-linux-musleabihf-0.12.14": "6e0df0e690d5c29ce65ec6962d8b262a93e9951077f05d78943f858e7d6e9185",
"armv7-unknown-linux-gnueabihf-0.12.14": "c20a18bb275a6fc2599bc321d37e52650a449237c6111da203a1d73b45921b25",
"armv7-unknown-linux-musleabihf-0.12.14": "a128725e1e40226a9309d603cbb4c36e272932092a77f4d0478ef2fb8eacaa05",
"i686-pc-windows-msvc-0.12.14": "ddd9afd789c60a38d82f3021239e22daacc67b9ef0719345ee6f0dcc37ab93ae",
"i686-unknown-linux-gnu-0.12.14": "de65ccdb90dd818248161db761ae3b6713b1b3230a1b55068ad327598b3a14b8",
"i686-unknown-linux-musl-0.12.14": "268538a3b90c90f7d68d31ed781f0f2cb8618188019c8bb09ce0e7876bb54829",
"powerpc64le-unknown-linux-gnu-0.12.14": "6a6c2a91d6240700eb36895c3fb0533bd5e9c696a95e0a55f7a7ae844cbde537",
"riscv64gc-unknown-linux-gnu-0.12.14": "df2c854c77b1d32f75ef08282511b050066b3db9d7abc4dc2c23ea26227c6b74",
"riscv64gc-unknown-linux-musl-0.12.14": "c6d0824ebdf23811dfa659148ae2c224b385d07ae1b4c282e5bf6abe3d603a74",
"s390x-unknown-linux-gnu-0.12.14": "e01aec9706c88f93f90409eab42324571e2b2c9c2938aaa266ad048b37c52c6f",
"x86_64-apple-darwin-0.12.14": "e11a70264ceca38e929ecaeed953c323e517af7b960ebf9722d5918e8c7f0375",
"x86_64-pc-windows-msvc-0.12.14": "02cecb254f37f3396da625680796d3990164a590fb5611d46f719ad83e7b9a89",
"x86_64-unknown-linux-gnu-0.12.14": "18ef5c3888ae59828cb13f38d57e9389b8173ecc719eff163bfafc74b38f5936",
"x86_64-unknown-linux-musl-0.12.14": "df163630683e5a2106d3320e2a448fde8eda5e7b9b47f617c5c332769728e735",
"aarch64-apple-darwin-0.12.13": "7e6ddb9316acc00f2296c82ff4d99977870ee34b2f0ddcae9444d714db9364ed",
"aarch64-pc-windows-msvc-0.12.13": "1efb2654b06e7063d4ac1fc9d49a9bda9a6704d82f035b589a2751a592f14151",
"aarch64-unknown-linux-gnu-0.12.13": "2eaa5d94f5db7b3a1a092156b9420459e42ab0217d917fe74a876309cef9b5e9",
"aarch64-unknown-linux-musl-0.12.13": "f44bc1037a17889fe562fffd2002d4ed108e499fbe68b4f022af244dc7b8244f",
"arm-unknown-linux-musleabihf-0.12.13": "2c7644f891edcf1e74a1b9dde96ea4ba00b41301c936c87e843683656703ada2",
"armv7-unknown-linux-gnueabihf-0.12.13": "19252c4d21fce112817b9e07bef6b2e9c90cef80fe82659533105b37a772d067",
"armv7-unknown-linux-musleabihf-0.12.13": "54e2c10e4e6c18a3efbac645ea02d7e6b768ae2f975275595915a7039e802b75",
"i686-pc-windows-msvc-0.12.13": "4ddcdf859d3bd337a156a2fc567e685e4b3d61e07b4a2dbbed7aeb4325e116ac",
"i686-unknown-linux-gnu-0.12.13": "beb56f6eda61bc69a8acc1bca07929365aa5cd2e912e35c35003a45e266d8a0e",
"i686-unknown-linux-musl-0.12.13": "6c93a9703b6145266240cb2aeb31d3574c21b33570fddf92461707b906eb3a65",
"powerpc64le-unknown-linux-gnu-0.12.13": "cd45ac73fc711e717602a4dc0c9e19d9c6563d15b14515a9a5dd49b00172a8b6",
"riscv64gc-unknown-linux-gnu-0.12.13": "ff1fb4d7e4c1d3a4acc6eff69b2530e846964260469df345e0239059517c0a21",
"riscv64gc-unknown-linux-musl-0.12.13": "b88312b410c1183e33ae9fa7738f35b7cd7396b2aa0e82836d7e88dbf23e5fb5",
"s390x-unknown-linux-gnu-0.12.13": "d41e4784c2187c76970690a9e9a288231f5ec8d2160ad8464be74aa9c06717e8",
"x86_64-apple-darwin-0.12.13": "5e287ef61cb6a9b61b3a83fef124fd143e400468a7dac794230147a810e17119",
"x86_64-pc-windows-msvc-0.12.13": "a86c9dc7bad9b03f388583b7187c05fe9951c2e0d392217e8fd43d97787f6ec2",
"x86_64-unknown-linux-gnu-0.12.13": "745765a3b6e360ad76743599ae5c42e9278c7edf8bbff9fc76d05bf2623a04dd",
"x86_64-unknown-linux-musl-0.12.13": "4e2bfd0c9007b1032a50e539e965fd0a6037d87ad93ae1580d220a92d4c94098",
"aarch64-apple-darwin-0.12.12": "46740540b63fdee9a6cb2e19baf3f1f475b850c440a33e63455087a6871263f1",
"aarch64-pc-windows-msvc-0.12.12": "36559da51ecee83b2b1d80aa1a0ede2f80e2d9e5761fffcbb9e9366a7f3d022a",
"aarch64-unknown-linux-gnu-0.12.12": "fe08db50cc1b56cd1da7801065ed1103d27ed3f9571cd122386cfc7faf1b8df5",
"aarch64-unknown-linux-musl-0.12.12": "82e59fff633cbd96fb675f37c7a748c056d909a59ecf476f8ff0e5bee76b9b23",
"arm-unknown-linux-musleabihf-0.12.12": "72ac215cb44636c62de5a672c9ff822acd1ffd90b96f751c359902c8de11c75b",
"armv7-unknown-linux-gnueabihf-0.12.12": "ed00794f3750bcf405556ac28e8aff0480a4e309e4ab1505df9f96b83088b230",
"armv7-unknown-linux-musleabihf-0.12.12": "74220d4b9df5507f527478313f17190cdff1078532efb8547483804372f77f47",
"i686-pc-windows-msvc-0.12.12": "5d6ea94bc2fdbcd39710e0bac00db2a771aae05d09a34387841187958af48362",
"i686-unknown-linux-gnu-0.12.12": "ce4411f863d3bd0cf97699eecebce9331ae72d69cf57735806321bf60b637b03",
"i686-unknown-linux-musl-0.12.12": "b0a733aa67b9ea4d5dd28c1ae2c8393ce1be4b032c3d51642d6b05190f21fb6a",
"powerpc64le-unknown-linux-gnu-0.12.12": "b5d05f6cb74605da9bb371ee9f8128bb8611ba1fab324bd4abc6e70a83abe0c7",
"riscv64gc-unknown-linux-gnu-0.12.12": "7b0b054d9a7d7b2c32e9ca111b271091240c81cb41487bcbe65992a2baca9c97",
"riscv64gc-unknown-linux-musl-0.12.12": "d2324e24ad526bbc45ac8a40f4d846c315efef9d4c91bb25725f29ccf2382b8a",
"s390x-unknown-linux-gnu-0.12.12": "53135d16813f9ad961c809828da06f2339d49510c110668fe2e0353fef46b213",
"x86_64-apple-darwin-0.12.12": "0dc8cd6c961582b0d140b5398f96b23502885277fb3464241456a2435e460dfa",
"x86_64-pc-windows-msvc-0.12.12": "3d54912924c36e862c14f427d04f2ed70a99e8001d1c30caa101f6d5711626d5",
"x86_64-unknown-linux-gnu-0.12.12": "ab9b309d4586403f024e100abaceb396616e178a553e2500c36087d180f09509",
"x86_64-unknown-linux-musl-0.12.12": "0b0bbd7144f91d9b694e29c920fca3a060322bd134e8507e5eb92049a3e2edf0",
"aarch64-apple-darwin-0.12.11": "e01b69ee15e81918d5e8fc9cf39b3db7f59c5576e5e306cd9b7aeb2c7b7321c3",
"aarch64-pc-windows-msvc-0.12.11": "7a70f46305d28a95f913ef2888254a9f9c183a406daeeb8937134afc9ed434d2",
"aarch64-unknown-linux-gnu-0.12.11": "e9933d907fb9cd27d606d819bbded419f2844c0e2efc98225ecfa409288eb28d",
"aarch64-unknown-linux-musl-0.12.11": "de99cafdeb5ee6f61ac3acd6d9dc6a1ef166f9398fa5623c436246ee1ecea099",
"arm-unknown-linux-musleabihf-0.12.11": "dd8576a7194e69861cd9def865f3a26613bb116109f075e64925a38cdd509429",
"armv7-unknown-linux-gnueabihf-0.12.11": "8975dd185f9e34f93733fdcd7ae7ae552ecd7d3bd5792ff06ab3dc104f50e327",
"armv7-unknown-linux-musleabihf-0.12.11": "b1cb2600a61c8d780a7ef365f69f4a336e4657494e13b9a757b4d10bb55d65af",
"i686-pc-windows-msvc-0.12.11": "c5fb5da8a9578ccaf9dadd3622413c347661847ededb4a93d9d3dbf9304a9ea4",
"i686-unknown-linux-gnu-0.12.11": "ab2d67fa9d3cfbdfa616b6e91eda4ae0d159dca09b446226935458f9cd28bd3e",
"i686-unknown-linux-musl-0.12.11": "bc894f6f1c6aa2caef10caa3890948c2fec5159c678bae432c5aab88c2a71961",
"powerpc64le-unknown-linux-gnu-0.12.11": "7d7fccdd92328b3732bffc1ded64d430f8bd7a59dc575e4804256f907f10c957",
"riscv64gc-unknown-linux-gnu-0.12.11": "279a560bb492e92275ab96b1b601fc2a2feec84499d8b67160e07001496602b7",
"riscv64gc-unknown-linux-musl-0.12.11": "f24d2434251e9a9ea4b1dec014e28299a936fc387087ae953677c389b21f09f5",
"s390x-unknown-linux-gnu-0.12.11": "ac48ff502ee64983b904bcbe73559409f9a0ca950c788cd4ea77db510258f233",
"x86_64-apple-darwin-0.12.11": "96d773bf5fda4f9b08c4444847f9183d1c14bc8a28ff9c0490e261a8fc6e5309",
"x86_64-pc-windows-msvc-0.12.11": "e94225dea91e051472847bd6d146d7d66c4f54ffcd1f106678866a99580845f9",
"x86_64-unknown-linux-gnu-0.12.11": "4ae93e0f148a18434cc094072547cec88912fc4a72b984183c7d0d0e9586cb5e",
"x86_64-unknown-linux-musl-0.12.11": "3343303ad6b4f9537ae0abfb36f1926a90c0445ba8f23d0e0a840a66a124cffd",
"aarch64-apple-darwin-0.12.10": "51c6170e8e3a01cef9f33b94f582b7b81ac65046f55d40afb35f9cff5a68c179",
"aarch64-pc-windows-msvc-0.12.10": "ee985c51c0c9c1f82267a5d80f959b34a7ff888c109182bd3b2b35c4661bbcde",
"aarch64-unknown-linux-gnu-0.12.10": "9ff6b9d4665edcdd3a88dcc73cd1eb641754deb927f14e8c62ebfde6bf4f5f5e",
"aarch64-unknown-linux-musl-0.12.10": "3983cb642fae84eab33756109bb266f126eb61763d8d220dd662af589c5b3da5",
"arm-unknown-linux-musleabihf-0.12.10": "984d3539667b2d97d85aa07788f78f3aa87accc9b27c63913c3177d118f5df81",
"armv7-unknown-linux-gnueabihf-0.12.10": "682a52fea5deb07238420d7197e2d7cc10d558872f008a9b6799fb5326c8e420",
"armv7-unknown-linux-musleabihf-0.12.10": "4062b9eb018afdde9b3dfeceabe41aad4cc5ea7fe658b74fda0e8f36decef507",
"i686-pc-windows-msvc-0.12.10": "cbf375fe6bf8a4e9ffb2f09c1ff4f8ed29ba96594a604749f84fa4e08c9a4586",
"i686-unknown-linux-gnu-0.12.10": "d943d0c0af37ad884bef24972753f7c93e5765b458e6492a3eb0c2b855c83a58",
"i686-unknown-linux-musl-0.12.10": "9ab3d4ae061abcb8b000d7b472236f09998ddd466215753fc2eb4cdf372ba147",
"powerpc64le-unknown-linux-gnu-0.12.10": "2e6beb653888d2d2721b46d3d8aa328a2339a6cc20d4df98bbf206e728a92174",
"riscv64gc-unknown-linux-gnu-0.12.10": "38071e8f894acb0629a6f72017489e23642c1acee82953e3060635dd251cba8e",
"riscv64gc-unknown-linux-musl-0.12.10": "268ac2854b3c56370d68e94d819f5a3ee2dd7dfe81b17135d080a3648276d3b7",
"s390x-unknown-linux-gnu-0.12.10": "2192d8fb1d72860e8c0a85ccb074dcd4de0369c9fbd52a9041e16d5ba3f4467f",
"x86_64-apple-darwin-0.12.10": "5296d5aa2b9143360405eea866f8ef4d5dc8986b164eb0dc35e8f876a9304d30",
"x86_64-pc-windows-msvc-0.12.10": "f65744f94072152b1f86ba2aace4d01f1124d9a8ecb235805039e3718c36cac2",
"x86_64-unknown-linux-gnu-0.12.10": "173d95a0c32d18c896c46ba6fafbf3cf9c14ab74b033f81b76c883ef492a976b",
"x86_64-unknown-linux-musl-0.12.10": "848d0e261119e5b8f35db10164635e46a48bec29ceb1f8ec14a6fc76004973ee",
"aarch64-apple-darwin-0.12.9": "301f72afaf54060f92da7016cb0115bd077f43a9c8e39c1d8170a0bac80fd398",
"aarch64-pc-windows-msvc-0.12.9": "d3360363a3cb671f2c854f4ef48cf4a57fe8664f8ec6a248076d68b797a8acc0",
"aarch64-unknown-linux-gnu-0.12.9": "c36fe17937ff6bd16dc42fc13854b5465999fcab2efe0af559381e945e3c6001",
"aarch64-unknown-linux-musl-0.12.9": "7eb9bf48516448c9db6a9e436d8e747ac9c8a9cac74717160a29918249b080a6",
"arm-unknown-linux-musleabihf-0.12.9": "de6f5b904a6735bca2a6061bbc3a3a09718128b806e11981e37019e32292288b",
"armv7-unknown-linux-gnueabihf-0.12.9": "ac24ad959c4dee04c6cf42597a947828f661fda184db5fe82b3e72a07d391316",
"armv7-unknown-linux-musleabihf-0.12.9": "8c33bdfedafc27d73ca4850071383336671b9ce92a36cf53300fff799d8580b3",
"i686-pc-windows-msvc-0.12.9": "62396154da2dc04a9fffb027e75ae3d971ca3ac7d3f0ffa7dd2c27c94798ce3f",
"i686-unknown-linux-gnu-0.12.9": "c3669a2adfd83a9220b1da1ec8f2ef3624eca1ba1db3c45107b455694e9ef6dd",
"i686-unknown-linux-musl-0.12.9": "3c2a21d4dcb08cae133bb4ebd5cf40764bc5f076829fc2eab00df0a50d834eb9",
"powerpc64le-unknown-linux-gnu-0.12.9": "3da749e1a1d6e290811736aecdb13184e4732a07afe0e4162e9163f843f0315d",
"riscv64gc-unknown-linux-gnu-0.12.9": "7fd415b73bd19045e027d099209bb3fc4a59c36ee6d825caf40db2b8e2f3bd0d",
"riscv64gc-unknown-linux-musl-0.12.9": "3d6b761164444e1fe12be08f771583ed495354bcbd73631c65a62ae443d6a06a",
"s390x-unknown-linux-gnu-0.12.9": "d45e862e2001fa8a88e68cf8be91231a14143cdd1ac8351d8d8e4fdf44fbac1e",
"x86_64-apple-darwin-0.12.9": "e1ca175824f1056589ce9908f7631879ebc3c36535b5e63dc06510beb370b4c1",
"x86_64-pc-windows-msvc-0.12.9": "ddbfcee1ac615a0499f6aa97b5ec8ebdf3ee4a7714a48055ec2ba0030e3cf810",
"x86_64-unknown-linux-gnu-0.12.9": "ec7a99cd05e0cd7f80243f135ce1361c76835cb0ee60055d14d20eba8eba1460",
"x86_64-unknown-linux-musl-0.12.9": "aa4b1f8770910f7c7c543c7acc980e4270e52e70750c996acef813ea1c7c2912",
"aarch64-apple-darwin-0.12.8": "8ce083658dbff20143607ca7af8e0c1d64b6fd7bf03a5cdcb62bf3d47d991b5f",
"aarch64-pc-windows-msvc-0.12.8": "84b821c551802c200a32e25f9d1d960ef15e248f54f6a1bd9e1eb62934669da8",
"aarch64-unknown-linux-gnu-0.12.8": "ba8661f4fd207c8e94814191598e619b355ac10d5014e851e21eb800f9ef2b00",
"aarch64-unknown-linux-musl-0.12.8": "975917badc8370163989e5bbe5a7c69bf922d19f8e57cb2652531bbffc935f84",
"arm-unknown-linux-musleabihf-0.12.8": "0e0e733a33e229602c14a5c7af271917ef4b13b8bc50fd774d32bd4b18a09a3b",
"armv7-unknown-linux-gnueabihf-0.12.8": "bc80826f631f8836a974a88b8cf797935bc83f15552828ad5de0195f6246e333",
"armv7-unknown-linux-musleabihf-0.12.8": "794b2099dd9db9c359958fa8fcd0407bf3bc2682e020d40b8d20e046f3490a18",
"i686-pc-windows-msvc-0.12.8": "9b38cad9b06e0a910e606510cdb4ad2c4eb4f320c4f4c4ba90dd13ed1115c5b0",
"i686-unknown-linux-gnu-0.12.8": "739cfea6b2958da57106e6ff1b0f95ecb17522ce84fc8e07c8606b2f427a4e39",
"i686-unknown-linux-musl-0.12.8": "83d712e60c019b58015834804ffe4c9a4cdb7dc90c305be8c7e04bf14194158f",
"powerpc64le-unknown-linux-gnu-0.12.8": "5a39773f28a172d4ab62598306db2010c0e3bf3b278b2684afde86794af8ad71",
"riscv64gc-unknown-linux-gnu-0.12.8": "fd1905fbc62d5fff73994a48cf90149717541a6e30d097aef17626cbc5f8b734",
"riscv64gc-unknown-linux-musl-0.12.8": "1078863595c13c655f847111bd812468e7e6e0cb6b83c1cc6fd4bfc9337030cf",
"s390x-unknown-linux-gnu-0.12.8": "3a3b1fe41dea61afe6af2b8b59529ef2c4712d28dbb942a5e338fc9ff7578384",
"x86_64-apple-darwin-0.12.8": "bfcd4407de99e0a2c1904df0902fa1795653d4edd145358e6561527e746a4f16",
"x86_64-pc-windows-msvc-0.12.8": "e07acf3f8a29fe41f9e04b799c3325cb0e0893836bb222bf102829b45c679ad6",
"x86_64-unknown-linux-gnu-0.12.8": "2e2b37e9811e17675a9e70bed5e1a58fc8c0388be63d751d72cc735188c149ff",
"x86_64-unknown-linux-musl-0.12.8": "6ca4597639c97e921fb915e113061ce8e4a14ead9e42a1ead521dbb0a6763795",
"aarch64-apple-darwin-0.12.7": "127ebdda7ad953cdf198e964b570ea5771b85467ea93eb7cb6d6f8e6f55408f3",
"aarch64-pc-windows-msvc-0.12.7": "1611d0f4be72b0a354ad9a6ae954093dd4c91e93e36b8b490326a05a039ffe14",
"aarch64-unknown-linux-gnu-0.12.7": "66393193038dd7eb108abd7a218d9cec04ac70ab98242b0720fa94de19223b7c",
"aarch64-unknown-linux-musl-0.12.7": "6dcf60e3c085de88ace3671b949ca99f0652be561ff5627f0d21394140f041db",
"arm-unknown-linux-musleabihf-0.12.7": "7716bce33408494d7b46395504b9fc1ea3ea93b7d0e4b77ef15ca7d7e1ae245a",
"armv7-unknown-linux-gnueabihf-0.12.7": "e5b9a25ff397f593e9fff236c4d72ada28aff7da4540868dbca74f391a86d546",
"armv7-unknown-linux-musleabihf-0.12.7": "4b82298033bf6d20ee7c585a5da1448d681945f29b0dae5e73b72f83496f0e61",
"i686-pc-windows-msvc-0.12.7": "b4842ca13ae8ac33879341170eea32df1d9c41d0468a524e73375facddefb4b1",
"i686-unknown-linux-gnu-0.12.7": "edc692ff9b0dc2833b1490a420fac9bdc4c85257b383aff7467cb23a7c1ec16a",
"i686-unknown-linux-musl-0.12.7": "a1cccfea5d8063fd44ef0154691066f0c7607f04236a51360c113e29da3b3fca",
"powerpc64le-unknown-linux-gnu-0.12.7": "cf3d2cb9f156de68e827bed822ce85952c331d739abc0a214bc75f378ef81cb4",
"riscv64gc-unknown-linux-gnu-0.12.7": "0218ed3ecbd7c56e7811b46dce30319cf727f6fbf989080c5eeac1976216f22f",
"riscv64gc-unknown-linux-musl-0.12.7": "5b8d5113a5d0a975dec33f9569237181f06d0d4cffd110e7899321ffe64ca578",
"s390x-unknown-linux-gnu-0.12.7": "afebbf174931be732ed1e372dbdfecc6c053ab4148243196b449c9973adb79c5",
"x86_64-apple-darwin-0.12.7": "06b8ae1da8c2661c5434507a66f8c2b0b835933bf955b5958a9ac357a37d1959",
"x86_64-pc-windows-msvc-0.12.7": "bf1518af459a3915511a11fdc6e2f43ef9a2afa138b9d498eeb9642fe9d85218",
"x86_64-unknown-linux-gnu-0.12.7": "788f18abea7c5f55d6216e4f5613fd89d4d59b631efeec117b2b07fe72f1da21",
"x86_64-unknown-linux-musl-0.12.7": "3d64d44ed67da7908dc7f5c4d64ebb44bad326fa17f8a0a52fc9a7793017bbe1",
"aarch64-apple-darwin-0.12.6": "14b459d51ea2e71eeba28c45a268c922bdf8607fc6455e3f40b4e082895d160d",
"aarch64-pc-windows-msvc-0.12.6": "6dda514fbbe3152d980758e0f6347116060114d7d24932fc0ea5d8063f8b253a",
"aarch64-unknown-linux-gnu-0.12.6": "d58030acd26159499ac82f32da12d1b3c12a3a1bfc414232d9082070c03e128d",
"aarch64-unknown-linux-musl-0.12.6": "3719891de9ab41c878a84331e55826d2a46421976a346a65326513a6795b089a",
"arm-unknown-linux-musleabihf-0.12.6": "917aa56d9318f8ad9509d941625feb49d2a444363c82143b7f79ebef0df7cecc",
"armv7-unknown-linux-gnueabihf-0.12.6": "2bde552a6288852ce4858e740d9434b64cd9edbba1956f6170c43ad93867a5ac",
"armv7-unknown-linux-musleabihf-0.12.6": "ad000efcd6e82ee76f01c523e5fdf267638625307d8d211fd73d6acaee7968e6",
"i686-pc-windows-msvc-0.12.6": "ddec1f1ca7b96fbd3822b5dff3fbade7add64a03afc334e2fd31d4820911f447",
"i686-unknown-linux-gnu-0.12.6": "2c93b0ef748675555a2af0cbc45a51f7b2e7014f9a0e34ae28d092e0293990d8",
"i686-unknown-linux-musl-0.12.6": "3cdda2dd5ad434399cd4788ae70d8057a4549e91f725135c07d2a09a6c4f1c5a",
"powerpc64le-unknown-linux-gnu-0.12.6": "474660a7d36d10ae156e0acfe3d1fac6ce9a684f6d6d92287c370d9b7a2f4173",
"riscv64gc-unknown-linux-gnu-0.12.6": "978541918503866f21863353570c702d981596210bd3b05a816f037a97897f31",
"riscv64gc-unknown-linux-musl-0.12.6": "83357df6b043c3e1f0d8e91cd90ccbe835ecc2f8bf4d6be6cb220b20b8b67a32",
"s390x-unknown-linux-gnu-0.12.6": "05a05615e8227bf89902301ea29a7bf424d8caef8d9dca682c149ad34df2d31a",
"x86_64-apple-darwin-0.12.6": "2a26ea71bbeff1c7e12c2cc40245c96a041deff276bc921e7038e304d5d3e04c",
"x86_64-pc-windows-msvc-0.12.6": "df7cb9f243eae1621400d4fcf5b1b3d90f20e264ece91b64deb3b0078abca6ef",
"x86_64-unknown-linux-gnu-0.12.6": "8681d8921e7d520fb368991dcf5f9c1905b80f5bf2a265a0ed085c8d8e342477",
"x86_64-unknown-linux-musl-0.12.6": "14e4172aace66a475062cebec7ca04f497d5619e95325dfcc9e4447b9c516846",
"aarch64-apple-darwin-0.12.5": "5bb0e5fe008a773c3dbcb97ff79cd89e1241464fe9d2f986d52ad8f1b037bd62",
"aarch64-pc-windows-msvc-0.12.5": "724279317fee6e5fa8ad1908e4eba2bbe764ef1ece5b3f4597927b62b1fe562a",
"aarch64-unknown-linux-gnu-0.12.5": "9bf43b4d1a07665bf64d4c4e710930b382321a785e0eb10aac07f46471f86a31",
"aarch64-unknown-linux-musl-0.12.5": "8767a0e77f2cd45436401b1b42bf7e9ed5a4a91a74a5305d6fe93249d0f6dbc5",
"arm-unknown-linux-musleabihf-0.12.5": "970f86ddcd1373120c1e7ee246b533c2e75366294098e1406f07ecf3bb55d260",
"armv7-unknown-linux-gnueabihf-0.12.5": "63f86f3cd92de223c2680dee5149ed3f317ad7aeac774fd7e6fe1f86f53e85da",
"armv7-unknown-linux-musleabihf-0.12.5": "62f838f29cad6fda061b1566168555978c544a4107697cd1967398b7f8efea84",
"i686-pc-windows-msvc-0.12.5": "a5993a7c2e75b418e60d5ed733204222330085b14e85269545b084c273c1629b",
"i686-unknown-linux-gnu-0.12.5": "4875a06092c3b0aa8ece5265a42b053dfef649adba26434b5e40eeb58c2a2aa5",
"i686-unknown-linux-musl-0.12.5": "b920f32f0910be363f770485117e08494eec0b09abb4f3f9f1f9b9f53a29394c",
"powerpc64le-unknown-linux-gnu-0.12.5": "af3f868fc8af2c3a688b1a202cbed507ec5bb32522876141f1b7f4200ed0395f",
"riscv64gc-unknown-linux-gnu-0.12.5": "2a6fe4a685225082d82f8afba169d038d669f85bf6cff7f5f733079a7b7282d5",
"riscv64gc-unknown-linux-musl-0.12.5": "c7fc653d16f0214eaaf2b3af537ec917af4861e3d00c0f10e0784fe4cbc1dcd6",
"s390x-unknown-linux-gnu-0.12.5": "858d51fd178fe99c69923cef568fbac3f297f3767c0e0d985aa172bc1f3e2274",
"x86_64-apple-darwin-0.12.5": "b3b2137477cf96c9686ebfb71524614cec780c673fd73e59bce099aef02e70e8",
"x86_64-pc-windows-msvc-0.12.5": "4c4d49d8738847d9b71ba319e49a5688c93eac0fe6204b1df24e98528dddf39a",
"x86_64-unknown-linux-gnu-0.12.5": "68a509da24b06b4223a1c0175fb5eb5bc79342b76cbeff0cfe51ac3f5b17b6b2",
"x86_64-unknown-linux-musl-0.12.5": "a4742988791c9aeae68c78150d6cba762062ad2a47e53738c2779d2b596bfcdb",
"aarch64-apple-darwin-0.12.4": "99a913b606194867b43086404412c1afe079547fee72ecfb6af7e7b0dd54b0c6",
"aarch64-pc-windows-msvc-0.12.4": "3290abffee78c30e3113f5113e26684fd057287e89124a588dcdcdd6ceec0fea",
"aarch64-unknown-linux-gnu-0.12.4": "49d881b3403187e1f1789720881e77e4251ad4259d86c4844862657d2a35d13f",
"aarch64-unknown-linux-musl-0.12.4": "04ed16e895b08065720e3d06cde722f0d406b63d116247d5e7776525c41f4972",
"arm-unknown-linux-musleabihf-0.12.4": "9657ea47619bae9097e92a942694c3bbead7bf37c5ccffa6a0f8b3f08a947dba",
"armv7-unknown-linux-gnueabihf-0.12.4": "fd9d223afc79a4d116d48269ea8cdc00cdeb0637d028843910650abc037e7c4f",
"armv7-unknown-linux-musleabihf-0.12.4": "c61f3c109fcb0c9cac2a3c232d50ccd70c422a5d4dae44dab007bdf5c1e64f0d",
"i686-pc-windows-msvc-0.12.4": "06a4948b908ce93af14c140158e15b5247ae6c8f15db50f3e4c6335bfd08b3fd",
"i686-unknown-linux-gnu-0.12.4": "bcf9e594c0867f9bfe91b7979cdac38a86bb9f7136ceba259e727af912127f23",
"i686-unknown-linux-musl-0.12.4": "d4c95044a507046f1ce9efdd00fb6873432a7d582a29d22febad26d92551586a",
"powerpc64le-unknown-linux-gnu-0.12.4": "6028a1744a7c07d789f21cf4c1574bb4bfe40f2980ac411af5bcbaeac32b0094",
"riscv64gc-unknown-linux-gnu-0.12.4": "dca9b15d76b5547987fc6b08fc1ea14e49773d9434b52825c68397c53896a139",
"riscv64gc-unknown-linux-musl-0.12.4": "cc481ddf7f9d09491b83defa9a221e1410f7a4b1ea160687e201815ba1d91a7a",
"s390x-unknown-linux-gnu-0.12.4": "9c6eea6ed43d8753e7eb26489a73ac060012e1a2485992955dd82a3b10b47acb",
"x86_64-apple-darwin-0.12.4": "e603f1eb634ca97a2a125539b983891f53235e901511ed10c32c08c86e253ecd",
"x86_64-pc-windows-msvc-0.12.4": "4f3b7d63cd81fca0da5a655d973d20affca89ce6e5f9a29fd0183cc4204a7639",
"x86_64-unknown-linux-gnu-0.12.4": "c8c60f47e6f88d18dbf6f33d7279fb1fbf7ae76631768152cf5578c3d65729b4",
"x86_64-unknown-linux-musl-0.12.4": "7aef04898775585d636424e52053e5328f2b1779175d5cb47665ff9d7524e8e7",
"aarch64-apple-darwin-0.12.3": "546f7f8a6c70ff13a3a9d2bc958db3427298cebf3e0cb756f9177133b7068843",
"aarch64-pc-windows-msvc-0.12.3": "4343217d668727b8a8eb5cad92389a1d2eeead93c89940d1b955ba1bb15462eb",
"aarch64-unknown-linux-gnu-0.12.3": "bb66cb52e7b1823aed1183630d8d8e5c958840d584a4c55ec10a4cfc168dcca2",
"aarch64-unknown-linux-musl-0.12.3": "fa513fca1eb2913334c944fe9adbdd410274a1cbe8dd05d03699a9eb85311d4e",
"arm-unknown-linux-musleabihf-0.12.3": "44c4c43969c0e58945c7954b033a99916355acef558decf6a9a0b090a6e0465b",
"armv7-unknown-linux-gnueabihf-0.12.3": "f572e3b8496f2069e102fd02fb346d7b2fbe0cba6edf0013575cfe79322e4ad0",
"armv7-unknown-linux-musleabihf-0.12.3": "771c35fc4de5ea1e115ddab3147439498f30572be38fa2ff5c2dabb2258faa90",
"i686-pc-windows-msvc-0.12.3": "8b1e428b1f5acfd5ba6bf490a7205b4f9149a27a0d9cbd1487243fd8e3d8a80b",
"i686-unknown-linux-gnu-0.12.3": "0205eb65e8b39419616acbdad139718b59ea2a17869dea49bf7a5e3cf5aae1eb",
"i686-unknown-linux-musl-0.12.3": "981619b5cf63a1bbab8eaf011aaac9d511db6ec0ac2618d59e36b9ccd95e8f99",
"powerpc64le-unknown-linux-gnu-0.12.3": "bff188fcf2d867c5595f8db6061a39e54752ab213eaefc14287f37e85afe9ead",
"riscv64gc-unknown-linux-gnu-0.12.3": "84d0d7d1359c432545b5717b5d7ba97465d694e13bd80646e04769b54890037d",
"riscv64gc-unknown-linux-musl-0.12.3": "1b3ee81808a381bb0a83deb697c9612a5a48c47b9d98f6043c924600f2bf1321",
"s390x-unknown-linux-gnu-0.12.3": "c6d0d036c4250bd28554c78b411b711ff9367a7dd12f241a27f5b7d43f549ae3",
"x86_64-apple-darwin-0.12.3": "4c9f52262a14da336e4a42ed24992d12d0c956acde87619e4611d321dffa602b",
"x86_64-pc-windows-msvc-0.12.3": "b23350c79e8ad0192b8124af13a0f17e8d4e4549524785e1aef389ae5a06990e",
"x86_64-unknown-linux-gnu-0.12.3": "600cf9a742aca00d292673b16b5acffaa7b8c269a364ad0c2e79498dcb1fe101",
"x86_64-unknown-linux-musl-0.12.3": "0643b9fb8c9fb27458e709ce6ff939695013c41975ff7b02d3f3b138d8d4bdb3",
"aarch64-apple-darwin-0.12.2": "fa909fea3bc06f460db79017030a221fdbc43ec4478f089cb554d8335c090817",
"aarch64-pc-windows-msvc-0.12.2": "dccc2bb7724c015f2a82467dee5bf4b2353a3fcdbfdfb30e0f93cdf5db2dd1df",
"aarch64-unknown-linux-gnu-0.12.2": "19b7f1f66895261fbaa07f8ea91da0f86337ad4e47efa594e87641c1718ffc52",
"aarch64-unknown-linux-musl-0.12.2": "73b87f0d65d7dfcd39753a51ce65592360b02c29f8e1bc2c85cc4190fe914499",
"arm-unknown-linux-musleabihf-0.12.2": "4e27dfadda93c82dd85c2de29b7fd6417ea74c430bfbc52833ea9580c8c16d04",
"armv7-unknown-linux-gnueabihf-0.12.2": "0536e78e9796394fa135102c7500f24a291aaf9fbf129b70add472b6dcf42a4b",
"armv7-unknown-linux-musleabihf-0.12.2": "5e10ffda5760511a16c0d5a9b2c28ebaed864dfa34e73fddcf0f600cf125cfee",
"i686-pc-windows-msvc-0.12.2": "e2037092f25370ecbd8827b1d91650a9fbf002548ae647aea39073c6bbe45384",
"i686-unknown-linux-gnu-0.12.2": "659b83b91a329a6bf5fbb412ea61262640b9bf15f07b6208334bd7a379c0dbf0",
"i686-unknown-linux-musl-0.12.2": "b57cc4b2bd5e1cc20253222add0d377a5398c2bafc93611bd2a4438ac8e21f9c",
"powerpc64le-unknown-linux-gnu-0.12.2": "0e135c0fddbd303297a847016ea3cb60fdacebed20bd87200a3537cfb67d4d46",
"riscv64gc-unknown-linux-gnu-0.12.2": "cc348cecc84695394721e2fc1e0c4fd5b9a052d4eeeba57b194929c719d5681e",
"riscv64gc-unknown-linux-musl-0.12.2": "a0e9a9d99e0f2cc39b645aecdabe27e308074b1d3dc2afdd507433528c97e701",
"s390x-unknown-linux-gnu-0.12.2": "78797ad74c948950181b607be0989b1d5926a2096d81def4238192c95ff47aeb",
"x86_64-apple-darwin-0.12.2": "a6e6506a9109801222d65d17461abf4ed13bdecc5d2b13af0495418a82972c6b",
"x86_64-pc-windows-msvc-0.12.2": "01442d8ce5c7124151a73e697c836d252c6da853c18c73206d3cc4c2378a91d2",
"x86_64-unknown-linux-gnu-0.12.2": "d66e96b5f1ca3b99806eee283a8125d33a0bd669e6e6d9bc4ab7ffda63c41bf4",
"x86_64-unknown-linux-musl-0.12.2": "2dbe8209c9592f6d1009b8565f4bf29813427907bee2236023c013101ede343f",
"aarch64-apple-darwin-0.12.1": "77d2906988e8074fd43f2f329ec452ebbf9b0c257ba1c66451c71de70a6baf42",
"aarch64-pc-windows-msvc-0.12.1": "9bc7c18e616230fa2dc6fb24bc3afde18a95c2b5c9433de747e9502c66041568",
"aarch64-unknown-linux-gnu-0.12.1": "769d373e146692c639b5fbaae33b331c297a32e03d30448772051902df52bbf4",
"aarch64-unknown-linux-musl-0.12.1": "ce218dad9eb48a39dd86160bec6291fac7275f20a9cabcc4bc10dd2c757208f8",
"arm-unknown-linux-musleabihf-0.12.1": "fba356be49629c5e0c0270fb3c55def0d83a7abe014ea857b13d14e0cbeabbbc",
"armv7-unknown-linux-gnueabihf-0.12.1": "bfca453bdf4ea6ce149f9d5be0589fc2e17a22d434c66c2f374a802dabb13cb5",
"armv7-unknown-linux-musleabihf-0.12.1": "0cb3e6ccfedce3cf3f5f95e3a5ddb32977f54025ea74f91993072ebcf91f9df2",
"i686-pc-windows-msvc-0.12.1": "9b51c33d307a8ab9e9dfd88d4ae1491761f63de0bffa3cec96bec536491c9b97",
"i686-unknown-linux-gnu-0.12.1": "4c6f5d77215cf40ddd388215dfdac46471d074aeba62163f3e7fab6892645f95",
"i686-unknown-linux-musl-0.12.1": "be4d42582284456dae2ff4bf622c4169d1e6b8d1cd0e516658d6ba01f2a57dfa",
"powerpc64le-unknown-linux-gnu-0.12.1": "9f3ebd5e5ce0f7a212a8d1326995612896cdcaa4ef571194d3b061a2d0d4d92e",
"riscv64gc-unknown-linux-gnu-0.12.1": "dda637a8f2f11b73a3e8da35c7909772beb49799aea61bacb04c2e7d2455b939",
"riscv64gc-unknown-linux-musl-0.12.1": "31806babab570f6cab8bfdaaaf6890360f1efa4e122372ad73193b70326b8f83",
"s390x-unknown-linux-gnu-0.12.1": "58132e9675680eb952b9794206a7ee98b528c1e664e6f80f55fb4972ffb7f269",
"x86_64-apple-darwin-0.12.1": "69d9f9a00337f25a50dcb13882052da08b8469bac11091c98c5694c3c6721467",
"x86_64-pc-windows-msvc-0.12.1": "8fcb0cb46e1229065e344758980924e569bef5882ef45f46fada8fb24e06b74a",
"x86_64-unknown-linux-gnu-0.12.1": "90b2f223fb69d19db49e117da601f64978593417988530aa733d456141b4bcbb",
"x86_64-unknown-linux-musl-0.12.1": "47823f814693bab8623308341369190de30b5c621eec5b1ee20352eae8c7982c",
"aarch64-apple-darwin-0.12.0": "2b9e582af54f84fa50c115427451a6c13e80f43b52f8282b8af5791077317bbf",
"aarch64-pc-windows-msvc-0.12.0": "60c12dc34a8ff0269d7744a3a94506fa8f140618a82194b7bf7834fa789a765b",
"aarch64-unknown-linux-gnu-0.12.0": "2c5d6e3092cc5223b10ff403880cc75121bf64e84644e7a0c69f643b0d89ac95",
"aarch64-unknown-linux-musl-0.12.0": "936fbbf20188a2b1c66bce3dca3f4009a5c9cdf12bb2bbd084e71926f75d6a15",
"arm-unknown-linux-musleabihf-0.12.0": "b5879d87fe1fd7a3c8fb27346339222acc5628000002024e7f4d114f1e67a55d",
"armv7-unknown-linux-gnueabihf-0.12.0": "a84cc572bf83d82c9fb6ce6aaed37da98789420a84f6f754b80ba519d8683345",
"armv7-unknown-linux-musleabihf-0.12.0": "d4a3383585057824e16fa7f0b24e9f0fecf4b37d29e6d4c7f26b76a5959116e3",
"i686-pc-windows-msvc-0.12.0": "4b7f9319eeb79a8e6204952742ac5ef6a56a096dc9438f416bfa60a374d6e94d",
"i686-unknown-linux-gnu-0.12.0": "9399d51a33779007692e84e0395a78af7adfd21f2cc10da16ea2c9b6ad7dc260",
"i686-unknown-linux-musl-0.12.0": "7a1994b07077bd67ef76dab2107dfad576436951993969a93067f3217f7fa1fb",
"powerpc64le-unknown-linux-gnu-0.12.0": "9a4a9b50a27111545b16821449f79fa646bad4b14f0811d6f70ad77f627983a2",
"riscv64gc-unknown-linux-gnu-0.12.0": "a55f970e88e7acb73a21a9efe892caff40e1a7b928770a2b844fdd7d74d8070e",
"riscv64gc-unknown-linux-musl-0.12.0": "01253909dec1d5cdd836f52ed70a2fc1a7017ec723a724b7315b55f2025728a1",
"s390x-unknown-linux-gnu-0.12.0": "3737b6d3fe7100ade46df0aae3d59564e7bbbb2fcb926186209e103e942535ab",
"x86_64-apple-darwin-0.12.0": "d41593beaefc54bab7d062af0ef6ca093bfb81d001d58ebbef39e44423f9c496",
"x86_64-pc-windows-msvc-0.12.0": "68200e25de594df92387186bbfb9d9df606ec1d87efaa0ae0c7f690970e53db6",
"x86_64-unknown-linux-gnu-0.12.0": "eaf842262aa1c418d8ecc5605f02ee1ebfd369124fa48548e85f9481a47831a9",
"x86_64-unknown-linux-musl-0.12.0": "3340a9d8cffc4d801bc1a7459ebfaf5790c79400720d9b6963d806f058526684",
"aarch64-apple-darwin-0.11.33": "d75e3d2bfc203d17388edaabd3aa37958edbcbfc36219e3ee0d31bb080b4baa2",
"aarch64-pc-windows-msvc-0.11.33": "6eb261d3ad61b35e2a6cfd997b296b908ff74d6199717eca81c3c73e1df7fbc7",
"aarch64-unknown-linux-gnu-0.11.33": "9ed88a9a42de3102f9704d021ab186fdf8a69a7ad9a1d3f3486ac6b1e55d6141",
"aarch64-unknown-linux-musl-0.11.33": "e256e5cf23f8c2e7d4d83f029acd662cbe7275ff24268ce1d6d2ba9016855268",
"arm-unknown-linux-musleabihf-0.11.33": "8c973de331a13f83a1b9bc358b6e7bfa5e5e1f015ff93545dc04839c868e20fe",
"armv7-unknown-linux-gnueabihf-0.11.33": "5446f812e7f5512198adaf60d2c66672a41d9676e86686819222baef021bce5b",
"armv7-unknown-linux-musleabihf-0.11.33": "9e0f6904f62997e34ee8795d615ba2974f31b0461674572d05859ba0b9402290",
"i686-pc-windows-msvc-0.11.33": "10b09a49823dd561bb4ececee1eea2c29cb58982f7253865ec27d23fd131daa7",
"i686-unknown-linux-gnu-0.11.33": "b5b82a4eedf863f855acba77bb51fc7c1f399b276fdbfdff63edf35bb2a2fdfb",
"i686-unknown-linux-musl-0.11.33": "af050631909811e945a9a8b087cc071038bfe25cfa5ff0b7afd17fb468522f43",
"powerpc64le-unknown-linux-gnu-0.11.33": "eee721adf229681b98cdd868d4991886bd91527ecbdb6fa778feb79f46d4be75",
"riscv64gc-unknown-linux-gnu-0.11.33": "bbb1fc2e25beb8bf0ee4342e70bb0caacb74a7503a02e04cb009aff28a182cfd",
"riscv64gc-unknown-linux-musl-0.11.33": "ff4d248fff98c1c6ea12088ae002c07b861278bfc2c41e31ac0ecc1795ddb2f0",
"s390x-unknown-linux-gnu-0.11.33": "bbb4740bd2596d2da979ad721258761fa0d4c5bb6ed151356c2146c150edfd21",
"x86_64-apple-darwin-0.11.33": "f1b919f740bd6be1d014ff58c4271b0779a32198adfb19ad9c5d1c4d9b2b4301",
"x86_64-pc-windows-msvc-0.11.33": "c253ce868ad48d29327b661452ce184c9e333e6d6f5bc8d6fcfbf4dd52b83442",
"x86_64-unknown-linux-gnu-0.11.33": "aa9fca823c03289fb6e3460b3dc864f3ea895cafaf9b99247701a67b17d1b018",
"x86_64-unknown-linux-musl-0.11.33": "3e95b84d8a8b3390c91584d4fd0c4d326e951da2b8fb15a76719368af2795424",
"aarch64-apple-darwin-0.11.32": "ed336d0ba49db8ef89b2b41fffa372ce63bd032f22a56f001c265891aec32829",
"aarch64-pc-windows-msvc-0.11.32": "a7427ea0440bb826b6716d1837ff3d173b8e7d496cb09ee8f456b4e023a2fdcd",
"aarch64-unknown-linux-gnu-0.11.32": "4d4fa08d95b06642e5800df6a22bd71455f23f988269e18da2847971d8c0bf31",
"aarch64-unknown-linux-musl-0.11.32": "d70cdae687feb6aad9a09fe8d686df8c8efaf69a1007fa581379a2025adc10a5",
"arm-unknown-linux-musleabihf-0.11.32": "43b1c42483d15e94747699b5f718e829144d2b1b117e1c1658742e73d05527a3",
"armv7-unknown-linux-gnueabihf-0.11.32": "593e0f6b92cef908b23e3e3e0da2fd8ae24392afdb70eed05651869fea4a1b02",
"armv7-unknown-linux-musleabihf-0.11.32": "cc169fc42b63970cb0cc10a1658c9833e79a5bfde8915ec5f6f5316d9e0cb95f",
"i686-pc-windows-msvc-0.11.32": "e54e814a3963af3af607940f142169312d7550d44db8e2daa2bf6c524554ac3c",
"i686-unknown-linux-gnu-0.11.32": "d4c53923c44dd060a42dbc6b88e349c86676d779b01603329d8c6b8f916e74cd",
"i686-unknown-linux-musl-0.11.32": "7704bf0270e1ef8421608c585e8016411a625314125fce473e01446fdcb1fcf3",
"powerpc64le-unknown-linux-gnu-0.11.32": "0afff437b499f5919045fd0095b52dec18d818771f9a6bd0be0ff027b427fb16",
"riscv64gc-unknown-linux-gnu-0.11.32": "f10954d2263d407f6ffa6bfdd458d0fc0918f097f851ca3cf4907d4f7ebf2dae",
"riscv64gc-unknown-linux-musl-0.11.32": "3c58fc5e82589a77b2409a6c308f1a55361c29130cb3ff239e850d413433f97f",
"s390x-unknown-linux-gnu-0.11.32": "9922ba31cd582f4d762ac88a3cfdf339be599063c689c64c36916f04139ed43d",
"x86_64-apple-darwin-0.11.32": "77f5ca26c0de20e992a3677a174fe1121ee25c36f9b1434a863f75bf077a05eb",
"x86_64-pc-windows-msvc-0.11.32": "acfde570451cfdb8689fa159a138ee805ba4e241c466432750302c86254b0984",
"x86_64-unknown-linux-gnu-0.11.32": "aab924fd522efd06f1c5f3b93a243864fc453132c94b2dc49f1371b528a4b967",
"x86_64-unknown-linux-musl-0.11.32": "1fd052f196108d87e61fc3d98fe06b4ec758c9a1eb1466a6fd1a436fe45885f2",
"aarch64-apple-darwin-0.11.31": "b2b93e82a6786f9c7cb89fd4ca0e859a147b292ae8f6f95784f9742f0efec39e",
"aarch64-pc-windows-msvc-0.11.31": "060da44c6474680ce9ed31f866a496cb06979dbea86de8fe24e0f22c48ac992b",
"aarch64-unknown-linux-gnu-0.11.31": "d74f23949fd07be4970f293d06ca99d87cd2a78a341c3d7b7fc0df7bc2d8a145",
"aarch64-unknown-linux-musl-0.11.31": "49cb5ffce40cc9c85355caa8104f7b61c40a8daac7334f4bc841cad1a7bb359e",
"arm-unknown-linux-musleabihf-0.11.31": "0f71f9f2b37d1f82dd225662b3ecb10c3ff114a5828819173015dbc86d2fa0dd",
"armv7-unknown-linux-gnueabihf-0.11.31": "de23124095c4df154d3807495b59f1985d8d9460bd70d3de61fef2034756bd61",
"armv7-unknown-linux-musleabihf-0.11.31": "9cb5373c1c2e6939077dcc60723a79dc348dd3c9942f2559d19696d16ac34990",
"i686-pc-windows-msvc-0.11.31": "4b4d07862b81275ea1a507d5e80774b0f38502493f854cbb585a987c0155d627",
"i686-unknown-linux-gnu-0.11.31": "85c71ad3f7c189e77bef0d94bcc3c1cbf8792695efe616dec86a389fbb1ee72b",
"i686-unknown-linux-musl-0.11.31": "160a9e19934879492f5b92c8eb132b39ee19858a406c9f3224c05c7b7cd70e59",
"powerpc64le-unknown-linux-gnu-0.11.31": "43e21695092a3c58aa3d364c139bbeab838baba662f0e9f37aa78e52305289e3",
"riscv64gc-unknown-linux-gnu-0.11.31": "7fa2c496e1ca94c7bcfcc9361f7928c4126d63fc4588dee4c8a2465332b60636",
"riscv64gc-unknown-linux-musl-0.11.31": "b300fe07dd1fb98e8608277d7b822ff637e25ee839674645f7ddcbc42199a39b",
"s390x-unknown-linux-gnu-0.11.31": "42114face40b846720980dc3f6e2c1b4676d8bf56c8c551586b249be9137cb84",
"x86_64-apple-darwin-0.11.31": "33ee6bd62b57fcd77a499deb54e4432dc1e1a2f3d34930ba987ad8b43f9c7bc7",
"x86_64-pc-windows-msvc-0.11.31": "410c2fd3126ff621c9450a21cfc200002c7540dc48d130069a8f619cdb0a811b",
"x86_64-unknown-linux-gnu-0.11.31": "8cc1cd82d434ec565376f98bd938d4b715b5791a80ff2d3aa78821cf85091b4b",
"x86_64-unknown-linux-musl-0.11.31": "89048b7e30a6c459fa7e8f2e91cfdc413dc004dcbddc6c2af5e09df123e3246d",
"aarch64-apple-darwin-0.11.30": "9bed3567d496d8dab84ecf7a1247551ac94ef1baaebb7b65df008dd93e9dc357",
"aarch64-pc-windows-msvc-0.11.30": "0edc44e7f23668bce7985facd96b2fe04a4d8ea8edfc7e53294afd8993e960fc",
"aarch64-unknown-linux-gnu-0.11.30": "8c11d90f5f66d232930cf8ae3a085c39877690d409e10878234802b028b20e2a",
@@ -50707,6 +52706,26 @@ var KNOWN_CHECKSUMS = {
"x86_64-unknown-linux-musl-0.0.5": "705bbe04a93a9d4d9db5224c2f980a88bba272538a33a78ea2e966f46b4d5eb7"
};
// src/download/checksum/known-checksums.ts
var KNOWN_CHECKSUMS = known_checksums_default;
// src/download/checksum/known-version.ts
var VERSION_IN_CHECKSUM_KEY_PATTERN = /-(\d+\.\d+\.\d+(?:[-+][0-9A-Za-z.-]+)?)$/;
function getLatestKnownVersion() {
const versions = /* @__PURE__ */ new Set();
for (const key of Object.keys(KNOWN_CHECKSUMS)) {
const version = key.match(VERSION_IN_CHECKSUM_KEY_PATTERN)?.[1];
if (version !== void 0) {
versions.add(version);
}
}
const latestVersion = [...versions].sort(semver.rcompare)[0];
if (!latestVersion) {
throw new Error("Could not determine latest known version from checksums.");
}
return latestVersion;
}
// src/download/checksum/update-known-checksums.ts
var import_node_fs = require("node:fs");
async function updateChecksums(filePath, checksumEntries) {
@@ -50717,9 +52736,8 @@ async function updateChecksums(filePath, checksumEntries) {
}
deduplicatedEntries.set(entry.key, entry.checksum);
}
const body = [...deduplicatedEntries.entries()].map(([key, checksum]) => ` "${key}":
"${checksum}"`).join(",\n");
const content = "// AUTOGENERATED_DO_NOT_EDIT\nexport const KNOWN_CHECKSUMS: { [key: string]: string } = {\n" + body + (body === "" ? "" : ",\n") + "};\n";
const content = `${JSON.stringify(Object.fromEntries(deduplicatedEntries), null, 2)}
`;
await import_node_fs.promises.writeFile(filePath, content);
}
@@ -50732,23 +52750,12 @@ var VERSIONS_MANIFEST_URL = "https://raw.githubusercontent.com/astral-sh/version
// src/utils/fetch.ts
var import_undici2 = __toESM(require_undici2(), 1);
function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_proxy;
if (httpProxy) {
return new import_undici2.ProxyAgent(httpProxy);
}
const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
if (httpsProxy) {
return new import_undici2.ProxyAgent(httpsProxy);
}
return void 0;
}
var fetch = async (url, opts) => {
const timeoutSignal = AbortSignal.timeout(5e3);
const existingSignal = opts.signal;
const mergedSignal = existingSignal ? AbortSignal.any([timeoutSignal, existingSignal]) : timeoutSignal;
return await (0, import_undici2.fetch)(url, {
dispatcher: getProxyAgent(),
dispatcher: new import_undici2.EnvHttpProxyAgent(),
...opts,
signal: mergedSignal
});
@@ -50770,6 +52777,7 @@ function info2(msg) {
// src/download/manifest.ts
var cachedManifestData = /* @__PURE__ */ new Map();
var MANIFEST_FETCH_ATTEMPTS = 3;
async function fetchManifest(manifestUrl = VERSIONS_MANIFEST_URL) {
const cachedManifest = cachedManifestData.get(manifestUrl);
if (cachedManifest?.complete === true) {
@@ -50810,8 +52818,24 @@ async function getLatestVersion(manifestUrl = VERSIONS_MANIFEST_URL) {
return latestVersion;
}
async function fetchManifestResponse(manifestUrl) {
info2(`Fetching manifest data from ${manifestUrl} ...`);
const response = await fetch(manifestUrl, {});
let response;
for (let attempt = 1; attempt <= MANIFEST_FETCH_ATTEMPTS; attempt++) {
info2(`Fetching manifest data from ${manifestUrl} ...`);
try {
response = await fetch(manifestUrl, {});
break;
} catch (error2) {
if (attempt >= MANIFEST_FETCH_ATTEMPTS) {
throw error2;
}
const delayMs = 1e3 * 2 ** (attempt - 1);
info2(`Manifest fetch failed; retrying in ${delayMs}ms ...`);
await new Promise((resolve) => setTimeout(resolve, delayMs));
}
}
if (response === void 0) {
throw new Error("Manifest fetch attempts exhausted.");
}
if (!response.ok) {
throw new Error(
`Failed to fetch manifest data: ${response.status} ${response.statusText}`
@@ -50921,7 +52945,6 @@ function isRecord(value) {
}
// src/update-known-checksums.ts
var VERSION_IN_CHECKSUM_KEY_PATTERN = /-(\d+\.\d+\.\d+(?:[-+][0-9A-Za-z.-]+)?)$/;
async function run() {
const checksumFilePath = process.argv.slice(2)[0];
if (!checksumFilePath) {
@@ -50930,8 +52953,8 @@ async function run() {
);
}
const latestVersion = await getLatestVersion();
const latestKnownVersion = getLatestKnownVersionFromChecksums();
if (semver.lte(latestVersion, latestKnownVersion)) {
const latestKnownVersion = getLatestKnownVersion();
if (semver2.lte(latestVersion, latestKnownVersion)) {
info2(
`Latest release (${latestVersion}) is not newer than the latest known version (${latestKnownVersion}). Skipping update.`
);
@@ -50942,23 +52965,6 @@ async function run() {
await updateChecksums(checksumFilePath, checksumEntries);
setOutput("latest-version", latestVersion);
}
function getLatestKnownVersionFromChecksums() {
const versions = /* @__PURE__ */ new Set();
for (const key of Object.keys(KNOWN_CHECKSUMS)) {
const version = extractVersionFromChecksumKey(key);
if (version !== void 0) {
versions.add(version);
}
}
const latestVersion = [...versions].sort(semver.rcompare)[0];
if (!latestVersion) {
throw new Error("Could not determine latest known version from checksums.");
}
return latestVersion;
}
function extractVersionFromChecksumKey(key) {
return key.match(VERSION_IN_CHECKSUM_KEY_PATTERN)?.[1];
}
function extractChecksumsFromManifest(versions) {
const checksums = [];
for (const version of versions) {
+25 -9
View File
@@ -6,16 +6,29 @@ This document covers advanced options for configuring which version of uv to ins
```yaml
- name: Install the latest version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: "latest"
```
## Install the latest version with a checksum verified by this action
Use `latest-known` to install the newest uv version whose checksums were bundled with the version of setup-uv used by your workflow. Version resolution is performed locally without fetching the latest release, so updating setup-uv also updates the version selected by `latest-known`.
When `manifest-file` is set, `latest-known` still selects a version from setup-uv's bundled checksum table, but the artifact and checksum come from the custom manifest.
```yaml
- name: Install the latest version of uv known to setup-uv
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: "latest-known"
```
## Install a specific version
```yaml
- name: Install a specific version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: "0.4.4"
```
@@ -28,21 +41,21 @@ to install the latest version that satisfies the range.
```yaml
- name: Install a semver range of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: ">=0.4.0"
```
```yaml
- name: Pinning a minor version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: "0.4.x"
```
```yaml
- name: Install a pep440-specifier-satisfying version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: ">=0.4.25,<0.5"
```
@@ -54,7 +67,7 @@ You can change this behavior using the `resolution-strategy` input:
```yaml
- name: Install the lowest compatible version of uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: ">=0.4.0"
resolution-strategy: "lowest"
@@ -72,11 +85,14 @@ You can use the `version-file` input to specify a file that contains the version
This can either be a `pyproject.toml` or `uv.toml` file which defines a `required-version` or
uv defined as a dependency in `pyproject.toml` or `requirements.txt`.
[asdf](https://asdf-vm.com/) `.tool-versions` is also supported, but without the `ref` syntax.
[asdf](https://asdf-vm.com/) `.tool-versions` is also supported for selecting uv. If neither
`python-version` nor `UV_PYTHON` is set, the `python` entry from the selected file is also exported
as `UV_PYTHON`. Only a single Python version is supported; multiple fallback versions and the asdf
`ref:`, `path:`, and `system` forms are ignored with a warning.
```yaml
- name: Install uv based on the version defined in pyproject.toml
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version-file: "pyproject.toml"
```
@@ -87,7 +103,7 @@ silently picking up a newer uv until the lockfile is updated.
```yaml
- name: Install uv based on the version locked in uv.lock
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version-file: "uv.lock"
```
+21 -15
View File
@@ -11,6 +11,7 @@ The cache key is automatically generated based on:
`pc-windows-msvc`)
- **OS version**: OS name and version (e.g., `ubuntu-22.04`, `macos-14`, `windows-2022`)
- **Python version**: The Python version in use
- **Python architecture**: The architecture selected by `python-arch` or `UV_PYTHON_ARCH`, when set
- **Cache options**: Whether pruning and Python caching are enabled
- **Dependency hash**: Hash of files matching `cache-dependency-glob`
- **Suffix**: Optional `cache-suffix` if provided
@@ -23,7 +24,7 @@ The computed cache key is available as the `cache-key` output:
```yaml
- name: Setup uv
id: setup-uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
- name: Print cache key
@@ -38,7 +39,10 @@ The computed cache key is available as the `cache-key` output:
If you enable caching, the [uv cache](https://docs.astral.sh/uv/concepts/cache/) will be uploaded to
the GitHub Actions cache. This can speed up runs that reuse the cache by several minutes.
Caching is enabled by default on GitHub-hosted runners.
With the default `enable-cache: auto`, caching is enabled on GitHub-hosted runners except for
`release`, tag push, `pull_request_target`, and `workflow_run` events. Caching is disabled for these
events to prevent insecure or release-sensitive jobs from restoring potentially poisoned caches.
Set `enable-cache: true` to explicitly enable caching for any event.
> [!TIP]
>
@@ -50,7 +54,7 @@ You can optionally define a custom cache key suffix.
```yaml
- name: Enable caching and define a custom cache key suffix
id: setup-uv
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
cache-suffix: "optional-suffix"
@@ -89,7 +93,7 @@ changes. If you use relative paths, they are relative to the working directory.
```yaml
- name: Define a cache dependency glob
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
cache-dependency-glob: "**/pyproject.toml"
@@ -97,7 +101,7 @@ changes. If you use relative paths, they are relative to the working directory.
```yaml
- name: Define a list of cache dependency globs
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
cache-dependency-glob: |
@@ -107,7 +111,7 @@ changes. If you use relative paths, they are relative to the working directory.
```yaml
- name: Define an absolute cache dependency glob
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
cache-dependency-glob: "/tmp/my-folder/requirements*.txt"
@@ -115,7 +119,7 @@ changes. If you use relative paths, they are relative to the working directory.
```yaml
- name: Never invalidate the cache
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
cache-dependency-glob: ""
@@ -128,7 +132,7 @@ By default, the cache will be restored.
```yaml
- name: Don't restore an existing cache
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
restore-cache: false
@@ -136,13 +140,15 @@ By default, the cache will be restored.
## Save cache
You can also disable saving the cache after the run with the `save-cache` input.
You can control saving the cache after the run with the `save-cache` input.
This can be useful to save cache storage when you know you will not use the cache of the run again.
By default, the cache will be saved.
By default, `save-cache: auto` saves the cache except for `merge_group` events, where caches created
for temporary merge queue refs are unlikely to be reused. Cache restoration remains enabled for
these events. Set `save-cache: true` to save the cache for all events.
```yaml
- name: Don't save the cache after the run
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
save-cache: false
@@ -168,7 +174,7 @@ It defaults to `setup-uv-cache` in the `TMP` dir, `D:\a\_temp\setup-uv-cache` on
```yaml
- name: Define a custom uv cache path
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
cache-local-path: "/path/to/cache"
```
@@ -185,7 +191,7 @@ If you want to prune the cache before saving it, enable cache pruning with the `
```yaml
- name: Prune the cache before saving it
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
prune-cache: true
@@ -204,7 +210,7 @@ To force managed Python installs, set `UV_PYTHON_PREFERENCE=only-managed`.
```yaml
- name: Cache Python installs
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
cache-python: true
@@ -222,7 +228,7 @@ If you want to ignore this, set the `ignore-nothing-to-cache` input to `true`.
```yaml
- name: Ignore nothing to cache
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
enable-cache: true
ignore-nothing-to-cache: true
+6 -5
View File
@@ -4,13 +4,14 @@ This document covers advanced customization options including checksum validatio
## Validate checksum
You can specify a checksum to validate the downloaded executable. Checksums up to the default version
are automatically verified by this action. The sha256 hashes can be found on the
Downloaded executables are automatically verified using checksums bundled with this action or,
for newer, not yet bundled versions, the checksum from [`astral-sh/versions`](https://github.com/astral-sh/versions).
You can specify a checksum to override those values. The sha256 hashes can also be found on the
[releases page](https://github.com/astral-sh/uv/releases) of the uv repo.
```yaml
- name: Install a specific version and validate the checksum
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
version: "0.3.1"
checksum: "e11b01402ab645392c7ad6044db63d37e4fd1e745e015306993b07695ea5f9f8"
@@ -39,7 +40,7 @@ The `archive_format` field is currently ignored.
```yaml
- name: Use a custom manifest file
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
manifest-file: "https://example.com/my-custom-manifest.ndjson"
```
@@ -58,7 +59,7 @@ You can disable this by setting the `add-problem-matchers` input to `false`.
```yaml
- name: Install the latest version of uv without problem matchers
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
add-problem-matchers: false
```
+24 -9
View File
@@ -9,7 +9,7 @@ This allows directly using it in later steps:
```yaml
- name: Install the latest version of uv and activate the environment
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
activate-environment: true
- run: uv pip install pip
@@ -17,10 +17,22 @@ This allows directly using it in later steps:
By default, the venv is created at `.venv` inside the `working-directory`.
With `activate-environment: true`, the `python-runtime-id` output identifies the
venv's Python runtime as reported by uv. This is an opaque identifier that users of the action
can use as a cache key if necessary; users should not assume anything about
the stability or structure of the identifier itself.
For example, you can combine it with the platform and dependency information relevant to
your cache with `id: setup-uv` on the setup step:
```yaml
key: build-${{ runner.os }}-${{ runner.arch }}-${{ steps.setup-uv.outputs.python-runtime-id }}-${{ hashFiles('uv.lock') }}
```
You can customize the venv location with `venv-path`, for example to place it in the runner temp directory:
```yaml
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
- uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
activate-environment: true
venv-path: ${{ runner.temp }}/custom-venv
@@ -51,7 +63,7 @@ are not sufficient, you can provide a custom GitHub token with the necessary per
```yaml
- name: Install the latest version of uv with a custom GitHub token
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
github-token: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
```
@@ -69,7 +81,7 @@ input:
```yaml
- name: Install the latest version of uv with a custom tool dir
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
tool-dir: "/path/to/tool/dir"
```
@@ -88,7 +100,7 @@ If you want to change this behaviour (especially on self-hosted runners) you can
```yaml
- name: Install the latest version of uv with a custom tool bin dir
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
tool-bin-dir: "/path/to/tool-bin/dir"
```
@@ -105,7 +117,7 @@ This action supports expanding the `~` character to the user's home directory fo
```yaml
- name: Expand the tilde character
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
cache-local-path: "~/path/to/cache"
tool-dir: "~/path/to/tool/dir"
@@ -122,7 +134,7 @@ If you want to ignore this, set the `ignore-empty-workdir` input to `true`.
```yaml
- name: Ignore empty workdir
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
ignore-empty-workdir: true
```
@@ -131,7 +143,8 @@ If you want to ignore this, set the `ignore-empty-workdir` input to `true`.
This action sets several environment variables that influence uv's behavior and can be used by subsequent steps:
- `UV_PYTHON`: Set when `python-version` input is specified. Controls which Python version uv uses.
- `UV_PYTHON`: Set when `python-version` is specified or the selected `.tool-versions` file contains a supported `python` entry. Controls which Python version uv uses.
- `UV_PYTHON_ARCH`: Set when `python-arch` is specified. Controls the architecture of Python requests that do not specify one.
- `UV_CACHE_DIR`: Set when caching is enabled (unless already configured in uv config files). Controls where uv stores its cache.
- `UV_TOOL_DIR`: Set when `tool-dir` input is specified. Controls where uv installs tool environments.
- `UV_TOOL_BIN_DIR`: Set when `tool-bin-dir` input is specified. Controls where uv installs tool binaries.
@@ -142,10 +155,12 @@ This action sets several environment variables that influence uv's behavior and
- `UV_NO_MODIFY_PATH`: If set, prevents the action from modifying PATH. Cannot be used with `activate-environment`.
- `UV_CACHE_DIR`: If already set, the action will respect it instead of setting its own cache directory.
- `UV_PYTHON`: If already set and `python-version` is not specified, the action will respect it instead of using the `python` entry from `.tool-versions`.
- `UV_PYTHON_ARCH`: If already set and `python-arch` is not specified, the action will use it and include it in the cache key. Requires a uv version that supports `UV_PYTHON_ARCH`.
```yaml
- name: Example using environment variables
uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
with:
python-version: "3.12"
tool-dir: "/custom/tool/dir"
+425 -344
View File
@@ -9,33 +9,36 @@
"version": "1.0.0",
"license": "MIT",
"dependencies": {
"@actions/cache": "^6.1.0",
"@actions/cache": "^6.2.0",
"@actions/core": "^3.0.0",
"@actions/exec": "^3.0.0",
"@actions/glob": "^0.6.1",
"@actions/glob": "^0.7.0",
"@actions/io": "^3.0.2",
"@actions/tool-cache": "^4.0.0",
"@renovatebot/pep440": "^5.0.0",
"smol-toml": "^1.7.0",
"undici": "^8.3.0"
"smol-toml": "^1.8.0",
"undici": "^8.10.0"
},
"devDependencies": {
"@biomejs/biome": "^2.5.1",
"@biomejs/biome": "^2.5.9",
"@types/js-yaml": "^4.0.9",
"@types/node": "^26.1.1",
"@types/semver": "^7.7.1",
"@vercel/ncc": "^0.44.1",
"esbuild": "^0.28.1",
"@types/node": "^26.2.0",
"@types/semver": "^7.8.0",
"@vercel/ncc": "^0.45.0",
"esbuild": "^0.28.2",
"jest": "^30.4.2",
"js-yaml": "^5.2.1",
"js-yaml": "^5.3.0",
"ts-jest": "^29.4.11",
"typescript": "^6.0.3"
},
"engines": {
"npm": ">=11.10.0"
}
},
"node_modules/@actions/cache": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/@actions/cache/-/cache-6.1.0.tgz",
"integrity": "sha512-LVqybSbzhBp2uAETOQ3HnVjXA4AcjavgMH+LCr+cjgO+PZfciv/1QAgoW+esXBaAhvDid+vXeV70GGJpAh4V5Q==",
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/@actions/cache/-/cache-6.2.0.tgz",
"integrity": "sha512-Nv0xWRmbxfDbAn/70flO/F6tj2Nv4XTYMAsQHiDFSojCDfso/Zni+fRKa14ToI9hnmOW/rQcY1WYb6wsM7Pgwg==",
"license": "MIT",
"dependencies": {
"@actions/core": "^3.0.1",
@@ -49,6 +52,16 @@
"semver": "^7.7.4"
}
},
"node_modules/@actions/cache/node_modules/@actions/glob": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.6.1.tgz",
"integrity": "sha512-K4+2Ac5ILcf2ySdJCha+Pop9NcKjxqCL4xL4zI50dgB2PbXgC0+AcP011xfH4Of6b4QEJJg8dyZYv7zl4byTsw==",
"license": "MIT",
"dependencies": {
"@actions/core": "^3.0.0",
"minimatch": "^3.0.4"
}
},
"node_modules/@actions/cache/node_modules/semver": {
"version": "7.7.4",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
@@ -81,13 +94,49 @@
}
},
"node_modules/@actions/glob": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.6.1.tgz",
"integrity": "sha512-K4+2Ac5ILcf2ySdJCha+Pop9NcKjxqCL4xL4zI50dgB2PbXgC0+AcP011xfH4Of6b4QEJJg8dyZYv7zl4byTsw==",
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.7.0.tgz",
"integrity": "sha512-+7s3wM+cXapDLmLL1NVWHawqcJOZzXZy2df/VhNn8DnZtS/x83iTCKaUn9F0llur4h3CII0AilvKKH4CMPL8Gw==",
"license": "MIT",
"dependencies": {
"@actions/core": "^3.0.0",
"minimatch": "^3.0.4"
"minimatch": "^10.2.5"
}
},
"node_modules/@actions/glob/node_modules/balanced-match": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
"integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
"license": "MIT",
"engines": {
"node": "18 || 20 || >=22"
}
},
"node_modules/@actions/glob/node_modules/brace-expansion": {
"version": "5.0.9",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
"integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
"license": "MIT",
"dependencies": {
"balanced-match": "^4.0.2"
},
"engines": {
"node": "20 || >=22"
}
},
"node_modules/@actions/glob/node_modules/minimatch": {
"version": "10.2.6",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz",
"integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==",
"license": "BlueOak-1.0.0",
"dependencies": {
"brace-expansion": "^5.0.8"
},
"engines": {
"node": "18 || 20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/@actions/http-client": {
@@ -863,9 +912,9 @@
"license": "MIT"
},
"node_modules/@biomejs/biome": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.1.tgz",
"integrity": "sha512-IXWLCxKmae+rI7LOHS1B3EbVisQ6GRAWbhN9msa6KjNCyFWrvKZWR4oUdinaNssrV852OrSHuSPa95h1GPJc7Q==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.9.tgz",
"integrity": "sha512-KkgCvdHB4IhtpHpF564plA9jo6fDOwWGQ/3jvreLzgOtRLEDoPqr7QO9qejNA8jKwDsSkAKr77hqBHnyUbIw4g==",
"dev": true,
"license": "MIT OR Apache-2.0",
"bin": {
@@ -879,20 +928,20 @@
"url": "https://opencollective.com/biome"
},
"optionalDependencies": {
"@biomejs/cli-darwin-arm64": "2.5.1",
"@biomejs/cli-darwin-x64": "2.5.1",
"@biomejs/cli-linux-arm64": "2.5.1",
"@biomejs/cli-linux-arm64-musl": "2.5.1",
"@biomejs/cli-linux-x64": "2.5.1",
"@biomejs/cli-linux-x64-musl": "2.5.1",
"@biomejs/cli-win32-arm64": "2.5.1",
"@biomejs/cli-win32-x64": "2.5.1"
"@biomejs/cli-darwin-arm64": "2.5.9",
"@biomejs/cli-darwin-x64": "2.5.9",
"@biomejs/cli-linux-arm64": "2.5.9",
"@biomejs/cli-linux-arm64-musl": "2.5.9",
"@biomejs/cli-linux-x64": "2.5.9",
"@biomejs/cli-linux-x64-musl": "2.5.9",
"@biomejs/cli-win32-arm64": "2.5.9",
"@biomejs/cli-win32-x64": "2.5.9"
}
},
"node_modules/@biomejs/cli-darwin-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.1.tgz",
"integrity": "sha512-npqDzvqv7vFaWRiNN1Te71siRgPaqS9MpqgYCdP/CrUbkJ7ApezaeaKjueKHRN/JH/6lRjJQAHi8acQDCAz22w==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.9.tgz",
"integrity": "sha512-am22pX2aBqznqq1eMyIj/bZ++riF3Lk6ct7cbv+gQK0csFhr+d8O0RkOi2FF2qSgFgANbqNkIZ0/PxlnW2pLFg==",
"cpu": [
"arm64"
],
@@ -907,9 +956,9 @@
}
},
"node_modules/@biomejs/cli-darwin-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.1.tgz",
"integrity": "sha512-RgwTqPAM8g2tn1j+b5oRjF/DbSBX8a4gwojtuG9XuhfK7GgomvZ9+T+tqjXiVbjLEeGJOoL6VEk8mvRTVeSybw==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.9.tgz",
"integrity": "sha512-l44KWDHLDvEnD0N/XcrVs7VXb3A18xL7QS3WB0eL93wbmk529ffIG55vleGCqaunpRUjLrdnjK05Qki1dsjylg==",
"cpu": [
"x64"
],
@@ -924,9 +973,9 @@
}
},
"node_modules/@biomejs/cli-linux-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.1.tgz",
"integrity": "sha512-yhV35CzZh38VyMvTEXi3JTjxZBs++oCKK9KG8vB6VI5+uvQvZNR3BFWEKKzuOmx9DJJj7sQpZ4LQJcmbGTs3+Q==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.9.tgz",
"integrity": "sha512-ICaK+IYaVZvKbBxX2rwrPT0DdUDMnE9Vm3nQGe+mltQPmUg19pONzkPWGdY4FCsoreDETWDynvdt4ysCbF5gNQ==",
"cpu": [
"arm64"
],
@@ -941,9 +990,9 @@
}
},
"node_modules/@biomejs/cli-linux-arm64-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.1.tgz",
"integrity": "sha512-WMcvMLgByyTqVxGlq918NBBYliq9FRR9GAQVETHb+VjGVqXCZFfHlZHC1FX4ibuYY/Hg6TJE3rHU0xVrdJXNRw==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.9.tgz",
"integrity": "sha512-7ImVPwBLCtkmpR5esd8RHhTqW94f0JLJQum6AneYcy94jRm18TaPPm7slaigGzFhfgt3QiD1Vj52LKmBAnKizA==",
"cpu": [
"arm64"
],
@@ -958,9 +1007,9 @@
}
},
"node_modules/@biomejs/cli-linux-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.1.tgz",
"integrity": "sha512-J/7uHSX7NfoYDI7HijAkd8lnQIOrRb2W7j3X+tw4R+N5ExvXGsyXFiGdQcfcxfOmNQmZVSQOCDk757fwpzqQcg==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.9.tgz",
"integrity": "sha512-z22Q/zFYSvbIJfW1CbfZPu4X8PddS6Qd2ORbc6h+aT6EcwAxUF3m6fA4HjNvA3TU4X0dTJRwNPB165ES3PJXzg==",
"cpu": [
"x64"
],
@@ -975,9 +1024,9 @@
}
},
"node_modules/@biomejs/cli-linux-x64-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.1.tgz",
"integrity": "sha512-ANTowtlLmPYm5yeMckWY8Xzb9Ix+JJP3tgHR/n6xRj1VWyIzzWtfRfih9hv9VmClwadpBvZduISZIbBsIlYG3A==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.9.tgz",
"integrity": "sha512-RXGaD0o1/pTTguYw1aeDJh9ad6Lfrui0fI7mBderTyGr7WuUJkBIttgLkR3XJyoxOkkgfBDspaUT8wXArTqLZw==",
"cpu": [
"x64"
],
@@ -992,9 +1041,9 @@
}
},
"node_modules/@biomejs/cli-win32-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.1.tgz",
"integrity": "sha512-zgXnKNgWPC4iPF7Y1lR3STUeCUuZRpD6IiOrC7TZTlh0Lx6FiVUT05myuMQHQ9D+1cc7uyMldi4forE6lp0ivQ==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.9.tgz",
"integrity": "sha512-nHK+/HHC+D0ogAHUxomgoSTdjImb6fmNNVTKmf0tyu4eDL1DqPKIHc+i+UL8+b0RnAu8224qo8F2tCVnaT0A3w==",
"cpu": [
"arm64"
],
@@ -1009,9 +1058,9 @@
}
},
"node_modules/@biomejs/cli-win32-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.1.tgz",
"integrity": "sha512-6uxpR9hvaglANkZemeSiN/FhYgkGasrEGn267eXIWvjrjJ2LhDlk251IhjVJq6MXzkV2/bcXwLwSroLyPtqRZg==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.9.tgz",
"integrity": "sha512-Yiq0H56LjXSSw/hd9YkXgSLQfzyDJzbzU2TezozxyNw+uKWAqOtqGVvBfzKRRDiaFF5avGAhHdWKx7LtDOShUw==",
"cpu": [
"x64"
],
@@ -1060,9 +1109,9 @@
}
},
"node_modules/@esbuild/aix-ppc64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz",
"integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.2.tgz",
"integrity": "sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==",
"cpu": [
"ppc64"
],
@@ -1077,9 +1126,9 @@
}
},
"node_modules/@esbuild/android-arm": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz",
"integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.2.tgz",
"integrity": "sha512-kXXoiPVVGQcnIYGOeaovwOURpniDBpSq4A03qkQ+BMQqtGG6HYap3xne9C1O1yo4TR3qxlCX5IqqmX6fFo2Lqg==",
"cpu": [
"arm"
],
@@ -1094,9 +1143,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz",
"integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.2.tgz",
"integrity": "sha512-5YfKeeI8qWfBZIX+u2xZC3Zlb3Os/gLS2sbEKM+I4ZOcsWmHS2WLysCcQZDAFRslDUU5Oiq44gf6PYN1vGwG5A==",
"cpu": [
"arm64"
],
@@ -1111,9 +1160,9 @@
}
},
"node_modules/@esbuild/android-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz",
"integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.2.tgz",
"integrity": "sha512-O387ite7SzUyCcy3JQX4P4bLtEA7bLLkx+esve5JHnyYfNTxcVpXZo9jhdB0lTKN44gztELTdU7nS8Nr16Fs1Q==",
"cpu": [
"x64"
],
@@ -1128,9 +1177,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz",
"integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.2.tgz",
"integrity": "sha512-n4KqkOQrraxHJcgjM1RvwbigfQKIKJVpM7xp+KsxiyUSrRdIXnt73VhrPAx0fV44hgfmIVKjxMN9J1t5jySVkw==",
"cpu": [
"arm64"
],
@@ -1145,9 +1194,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz",
"integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.2.tgz",
"integrity": "sha512-uq6suIWYP37qzGddBKPw5QEQPi6HiLGsO7UmkpfyaYNQ3D+rN6w6WfwH+nuqcGXWvawGwxOEroO4YGnFh95azw==",
"cpu": [
"x64"
],
@@ -1162,9 +1211,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz",
"integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.2.tgz",
"integrity": "sha512-n+I0BTSRIoy+d6RPKnEVwql5UwBJolytvY4mAOIEJorKlqgPII8ix6slVVrfZ5Tnj7glIZvloylbB/EJPMWEXw==",
"cpu": [
"arm64"
],
@@ -1179,9 +1228,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz",
"integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.2.tgz",
"integrity": "sha512-78XJTJkvPs0kz2w61301PJjXl4g7q3JqiYMZ/M/yVI73EHBrCRTgkhu9oqG7vPqq+a/yadEW8aD+agKlk5xrmg==",
"cpu": [
"x64"
],
@@ -1196,9 +1245,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz",
"integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.2.tgz",
"integrity": "sha512-XlDnu2q5yoqems+xay6wSAcg9DDD7K9RLKZEBOMZm3ckNpJBvOX20tSfby8KfrrhINDyv9V2YVZKY/SpoGJI8w==",
"cpu": [
"arm"
],
@@ -1213,9 +1262,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz",
"integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.2.tgz",
"integrity": "sha512-pW4AC0P3it8c7do9MVM4p51FzHzdM/TZrerurgRcHJ2WTa1VQ1CIq18xncfpBJw4ojkiZZrKW2yIBWBP92j6Ug==",
"cpu": [
"arm64"
],
@@ -1230,9 +1279,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz",
"integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.2.tgz",
"integrity": "sha512-CYbnj78HsIeA+DhgUKgFCfvNsTHFhMMrinUrMZpDXJXKN8T3XViTZ/+wtHeVxEWY8ewSzTFN+nRmSwO2tZaLUQ==",
"cpu": [
"ia32"
],
@@ -1247,9 +1296,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz",
"integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.2.tgz",
"integrity": "sha512-buwkd8nsph4R+ajRvw0qM5Hja/TXQow3ptzWO2EbG/cqcIkHloRrdlBtQlshyYGTNFvfkfJ5tpPLVkY4DtsPfQ==",
"cpu": [
"loong64"
],
@@ -1264,9 +1313,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz",
"integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.2.tgz",
"integrity": "sha512-ZVykbDyk7519VwiNb9Lcj9m8XM6v5V9uKPvrEMkkEedVewf+0itkhahp4HDpgERXhwLRpWFypsGbG/J8s0QjJA==",
"cpu": [
"mips64el"
],
@@ -1281,9 +1330,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz",
"integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.2.tgz",
"integrity": "sha512-CAXl+Dtd9UUuJd8pKKdwh6MLm3MUMiqMPmhZ3tTSXPqfyQ3vDl6R5hZdZ/kYojK4ofXtdfSv1tFq8XzWx3heNQ==",
"cpu": [
"ppc64"
],
@@ -1298,9 +1347,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz",
"integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.2.tgz",
"integrity": "sha512-GeXCej4IQtU1B+QlDV8W/RRvbzI3O/Stss+/bCXv4lZls5WGRtu2a+3JkA3i4qIUlMXpcHebWpF8AkJhATowuA==",
"cpu": [
"riscv64"
],
@@ -1315,9 +1364,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz",
"integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.2.tgz",
"integrity": "sha512-3H1weTYZPxt/WOhByszQZybS9w5lKzUn1FDMsgEChbHWQwHYQQRfBxgCcZvPhjHfKyJjIievvMmEUawJrdY9Dg==",
"cpu": [
"s390x"
],
@@ -1332,9 +1381,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz",
"integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.2.tgz",
"integrity": "sha512-4xTZr1FUmSoQW4XIWmit3tzQrUTZM+N3P0XV8xROKYF50XfI7xeO90+1bZvNwxIufQ9hDQVRJH5YhgPVF8A/HQ==",
"cpu": [
"x64"
],
@@ -1349,9 +1398,9 @@
}
},
"node_modules/@esbuild/netbsd-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz",
"integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.2.tgz",
"integrity": "sha512-sSATRjPeDBg3pdgHoQfoYBob11Kk1FGa9lui5RIHZCoCkJa9QKlvl3/vKz2usCmYYjs7ymJR/2Nnsqe+Hjt5nw==",
"cpu": [
"arm64"
],
@@ -1366,9 +1415,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz",
"integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.2.tgz",
"integrity": "sha512-lqnzCV+mM0gIADaKihiCg6ifgfU2L3h5E33rNQBN1Y4MaVGnzryzmvvf7UHxprpQdE8hpqLolJ9Rl+SkIRDpyw==",
"cpu": [
"x64"
],
@@ -1383,9 +1432,9 @@
}
},
"node_modules/@esbuild/openbsd-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz",
"integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.2.tgz",
"integrity": "sha512-AL2qJILH7lNjrDmCQDvdxMfAUIv8KMNZOvrwAQ8i8//ntL9FflhOyMJ8OZSMBb8/AWXe3/5v5S20y3zCoZWKoQ==",
"cpu": [
"arm64"
],
@@ -1400,9 +1449,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz",
"integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.2.tgz",
"integrity": "sha512-QtiuPytchRyC4rwUKhexJdQKvDuZ6hWloi3igqPQNUJCS1/v9EiO3UTOXR6A3FoMo4fnAKbWJdqaIwhOzh8qEw==",
"cpu": [
"x64"
],
@@ -1417,9 +1466,9 @@
}
},
"node_modules/@esbuild/openharmony-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz",
"integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.2.tgz",
"integrity": "sha512-WkhYDmpTjLvGlScA1rwjRUmhl4k8oXR3cIbtqWmELgU/dFeHHlEllxDvdWcNJV9rbzCexB5vz8gtNewWLgCT7Q==",
"cpu": [
"arm64"
],
@@ -1434,9 +1483,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz",
"integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.2.tgz",
"integrity": "sha512-GPMSkTOtMnv2U2F8gxe4Io6qmVs+YKyp832Etqqxr0hFngmXQ3rzwytelm3GIn7T4VviRUlf3sOgBOiTdvaf7g==",
"cpu": [
"x64"
],
@@ -1451,9 +1500,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz",
"integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.2.tgz",
"integrity": "sha512-PIhhEkE9uPBleRBrQEJpUn7MBnibZzbGzYWPmY3x+YoVg/95zbjB4CxPPOQ8l5tYYM4mMaCthF8/1DIfBQQyWQ==",
"cpu": [
"arm64"
],
@@ -1468,9 +1517,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz",
"integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.2.tgz",
"integrity": "sha512-YmJbfTlvU7Sdn9BB+4PRES4oB6pxgS37MAONj+hBr/cpXS1aBPKXxNnDbu+QCWPj0o9dgyxeq79g6c5P8KeuYA==",
"cpu": [
"ia32"
],
@@ -1485,9 +1534,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz",
"integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.2.tgz",
"integrity": "sha512-5ebpxr3nWMzrL/rnUI755Jkuee0bHL/Gq0WTF9lvcpv73wAp5eu8MfBUgWK9bhWvZjj7yX8etf/8tI8Ney695g==",
"cpu": [
"x64"
],
@@ -2145,9 +2194,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
"version": "26.1.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.1.1.tgz",
"integrity": "sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==",
"version": "26.2.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.2.0.tgz",
"integrity": "sha512-5IviulTZeRNp2vAJ514cc/HUlY5nZ9fCbq9DMyC52BrhFZACo3nI0R7qBxhQmo/d27NFe96ur/b7Wwxklda+kg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2155,9 +2204,9 @@
}
},
"node_modules/@types/semver": {
"version": "7.7.1",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz",
"integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==",
"version": "7.8.0",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.8.0.tgz",
"integrity": "sha512-1mAINjtQCXXeLkJ9ehXkwOcBpqtLxiVtKhpUf83DdRNdQKV0iXZpaHYqRr7nj+wvxuJzoAmAwXI+sCNMv1CzLQ==",
"dev": true,
"license": "MIT"
},
@@ -2520,9 +2569,9 @@
]
},
"node_modules/@vercel/ncc": {
"version": "0.44.1",
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.44.1.tgz",
"integrity": "sha512-cUjIE5P2YY1n+Kt9rFIazMMpGoPn1Fic04rOmTkElMkiDP5oszGfERMpo2shVkFKDL7rVppdM2pqJKC59shQWQ==",
"version": "0.45.0",
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.45.0.tgz",
"integrity": "sha512-8zPi1yO2mHpoKTD+e+Bf0ZT3e+sWHSOyGapm9s7b5R0gxJi3CiFTqmeQiMEyu6ejrz2s09M8JkEoUaTWjBJPQQ==",
"dev": true,
"license": "MIT",
"bin": {
@@ -3115,9 +3164,9 @@
}
},
"node_modules/esbuild": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz",
"integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.2.tgz",
"integrity": "sha512-HKVLS8dvII+xoKW9kmqxbRKrnWEXfJJr/FZhhJmiqIB0e053QNYFqOBouTMO/k5sID4MvCiUCvv8b9M4h32wIA==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -3128,32 +3177,32 @@
"node": ">=18"
},
"optionalDependencies": {
"@esbuild/aix-ppc64": "0.28.1",
"@esbuild/android-arm": "0.28.1",
"@esbuild/android-arm64": "0.28.1",
"@esbuild/android-x64": "0.28.1",
"@esbuild/darwin-arm64": "0.28.1",
"@esbuild/darwin-x64": "0.28.1",
"@esbuild/freebsd-arm64": "0.28.1",
"@esbuild/freebsd-x64": "0.28.1",
"@esbuild/linux-arm": "0.28.1",
"@esbuild/linux-arm64": "0.28.1",
"@esbuild/linux-ia32": "0.28.1",
"@esbuild/linux-loong64": "0.28.1",
"@esbuild/linux-mips64el": "0.28.1",
"@esbuild/linux-ppc64": "0.28.1",
"@esbuild/linux-riscv64": "0.28.1",
"@esbuild/linux-s390x": "0.28.1",
"@esbuild/linux-x64": "0.28.1",
"@esbuild/netbsd-arm64": "0.28.1",
"@esbuild/netbsd-x64": "0.28.1",
"@esbuild/openbsd-arm64": "0.28.1",
"@esbuild/openbsd-x64": "0.28.1",
"@esbuild/openharmony-arm64": "0.28.1",
"@esbuild/sunos-x64": "0.28.1",
"@esbuild/win32-arm64": "0.28.1",
"@esbuild/win32-ia32": "0.28.1",
"@esbuild/win32-x64": "0.28.1"
"@esbuild/aix-ppc64": "0.28.2",
"@esbuild/android-arm": "0.28.2",
"@esbuild/android-arm64": "0.28.2",
"@esbuild/android-x64": "0.28.2",
"@esbuild/darwin-arm64": "0.28.2",
"@esbuild/darwin-x64": "0.28.2",
"@esbuild/freebsd-arm64": "0.28.2",
"@esbuild/freebsd-x64": "0.28.2",
"@esbuild/linux-arm": "0.28.2",
"@esbuild/linux-arm64": "0.28.2",
"@esbuild/linux-ia32": "0.28.2",
"@esbuild/linux-loong64": "0.28.2",
"@esbuild/linux-mips64el": "0.28.2",
"@esbuild/linux-ppc64": "0.28.2",
"@esbuild/linux-riscv64": "0.28.2",
"@esbuild/linux-s390x": "0.28.2",
"@esbuild/linux-x64": "0.28.2",
"@esbuild/netbsd-arm64": "0.28.2",
"@esbuild/netbsd-x64": "0.28.2",
"@esbuild/openbsd-arm64": "0.28.2",
"@esbuild/openbsd-x64": "0.28.2",
"@esbuild/openharmony-arm64": "0.28.2",
"@esbuild/sunos-x64": "0.28.2",
"@esbuild/win32-arm64": "0.28.2",
"@esbuild/win32-ia32": "0.28.2",
"@esbuild/win32-x64": "0.28.2"
}
},
"node_modules/escalade": {
@@ -4365,9 +4414,9 @@
"license": "MIT"
},
"node_modules/js-yaml": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.2.1.tgz",
"integrity": "sha512-zfLtNfQqxVqq3uaTqSkh4x4hZw3KHobGUA0fJUj4wawW8bsQLTVqpHdXSIzidh7o+4lEW36tANuAGdaFx6Zgnw==",
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.3.0.tgz",
"integrity": "sha512-muutsYr+e2+d3rTgUGslq5rxbBlUy3cJ61IsHag2QNDQV+7zXWjkUpmALIajhrlLlrgRUiymj6U3zUr/TMK84Q==",
"dev": true,
"funding": [
{
@@ -4994,9 +5043,9 @@
}
},
"node_modules/smol-toml": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.7.0.tgz",
"integrity": "sha512-aqVvWoyO21L23mb+drl4RmMXbf6N7FdHjAhTRA9ZBL7apWBgfWC16KjrASI+1p9GAroljyMHj6fK67i0UiTNvQ==",
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.8.0.tgz",
"integrity": "sha512-kCZr2V3ch9i00x8zXRhjUNVcjG9ijES5dDudkXvUVCT5QlJNQWElSJdZqyPemffHoLNUYwOcou0Fy+ojN0uHSQ==",
"license": "BSD-3-Clause",
"engines": {
"node": ">= 18"
@@ -5436,9 +5485,9 @@
}
},
"node_modules/undici": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-8.3.0.tgz",
"integrity": "sha512-TkUDgb6tl7KOGZ+7e8E3d2FYgUQgF6z5YypqjWmixVQSQERFcVrVg0ySADm2LVLRh5ljAaHTCR5Fmz3Q34rB7Q==",
"version": "8.10.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-8.10.0.tgz",
"integrity": "sha512-HvltHd7avK13QIw/oLe4qoOLyoVSoafqJ2jYOrtMRBkbYT31eiBQ8O0ehRKZiEZCMEyLFQNIADpgCWC5fALvYQ==",
"license": "MIT",
"engines": {
"node": ">=22.19.0"
@@ -5789,9 +5838,9 @@
},
"dependencies": {
"@actions/cache": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/@actions/cache/-/cache-6.1.0.tgz",
"integrity": "sha512-LVqybSbzhBp2uAETOQ3HnVjXA4AcjavgMH+LCr+cjgO+PZfciv/1QAgoW+esXBaAhvDid+vXeV70GGJpAh4V5Q==",
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/@actions/cache/-/cache-6.2.0.tgz",
"integrity": "sha512-Nv0xWRmbxfDbAn/70flO/F6tj2Nv4XTYMAsQHiDFSojCDfso/Zni+fRKa14ToI9hnmOW/rQcY1WYb6wsM7Pgwg==",
"requires": {
"@actions/core": "^3.0.1",
"@actions/exec": "^3.0.0",
@@ -5804,6 +5853,15 @@
"semver": "^7.7.4"
},
"dependencies": {
"@actions/glob": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.6.1.tgz",
"integrity": "sha512-K4+2Ac5ILcf2ySdJCha+Pop9NcKjxqCL4xL4zI50dgB2PbXgC0+AcP011xfH4Of6b4QEJJg8dyZYv7zl4byTsw==",
"requires": {
"@actions/core": "^3.0.0",
"minimatch": "^3.0.4"
}
},
"semver": {
"version": "7.7.4",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
@@ -5829,12 +5887,35 @@
}
},
"@actions/glob": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.6.1.tgz",
"integrity": "sha512-K4+2Ac5ILcf2ySdJCha+Pop9NcKjxqCL4xL4zI50dgB2PbXgC0+AcP011xfH4Of6b4QEJJg8dyZYv7zl4byTsw==",
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.7.0.tgz",
"integrity": "sha512-+7s3wM+cXapDLmLL1NVWHawqcJOZzXZy2df/VhNn8DnZtS/x83iTCKaUn9F0llur4h3CII0AilvKKH4CMPL8Gw==",
"requires": {
"@actions/core": "^3.0.0",
"minimatch": "^3.0.4"
"minimatch": "^10.2.5"
},
"dependencies": {
"balanced-match": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
"integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA=="
},
"brace-expansion": {
"version": "5.0.9",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
"integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
"requires": {
"balanced-match": "^4.0.2"
}
},
"minimatch": {
"version": "10.2.6",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz",
"integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==",
"requires": {
"brace-expansion": "^5.0.8"
}
}
}
},
"@actions/http-client": {
@@ -6377,74 +6458,74 @@
"dev": true
},
"@biomejs/biome": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.1.tgz",
"integrity": "sha512-IXWLCxKmae+rI7LOHS1B3EbVisQ6GRAWbhN9msa6KjNCyFWrvKZWR4oUdinaNssrV852OrSHuSPa95h1GPJc7Q==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.9.tgz",
"integrity": "sha512-KkgCvdHB4IhtpHpF564plA9jo6fDOwWGQ/3jvreLzgOtRLEDoPqr7QO9qejNA8jKwDsSkAKr77hqBHnyUbIw4g==",
"dev": true,
"requires": {
"@biomejs/cli-darwin-arm64": "2.5.1",
"@biomejs/cli-darwin-x64": "2.5.1",
"@biomejs/cli-linux-arm64": "2.5.1",
"@biomejs/cli-linux-arm64-musl": "2.5.1",
"@biomejs/cli-linux-x64": "2.5.1",
"@biomejs/cli-linux-x64-musl": "2.5.1",
"@biomejs/cli-win32-arm64": "2.5.1",
"@biomejs/cli-win32-x64": "2.5.1"
"@biomejs/cli-darwin-arm64": "2.5.9",
"@biomejs/cli-darwin-x64": "2.5.9",
"@biomejs/cli-linux-arm64": "2.5.9",
"@biomejs/cli-linux-arm64-musl": "2.5.9",
"@biomejs/cli-linux-x64": "2.5.9",
"@biomejs/cli-linux-x64-musl": "2.5.9",
"@biomejs/cli-win32-arm64": "2.5.9",
"@biomejs/cli-win32-x64": "2.5.9"
}
},
"@biomejs/cli-darwin-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.1.tgz",
"integrity": "sha512-npqDzvqv7vFaWRiNN1Te71siRgPaqS9MpqgYCdP/CrUbkJ7ApezaeaKjueKHRN/JH/6lRjJQAHi8acQDCAz22w==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.9.tgz",
"integrity": "sha512-am22pX2aBqznqq1eMyIj/bZ++riF3Lk6ct7cbv+gQK0csFhr+d8O0RkOi2FF2qSgFgANbqNkIZ0/PxlnW2pLFg==",
"dev": true,
"optional": true
},
"@biomejs/cli-darwin-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.1.tgz",
"integrity": "sha512-RgwTqPAM8g2tn1j+b5oRjF/DbSBX8a4gwojtuG9XuhfK7GgomvZ9+T+tqjXiVbjLEeGJOoL6VEk8mvRTVeSybw==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.9.tgz",
"integrity": "sha512-l44KWDHLDvEnD0N/XcrVs7VXb3A18xL7QS3WB0eL93wbmk529ffIG55vleGCqaunpRUjLrdnjK05Qki1dsjylg==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.1.tgz",
"integrity": "sha512-yhV35CzZh38VyMvTEXi3JTjxZBs++oCKK9KG8vB6VI5+uvQvZNR3BFWEKKzuOmx9DJJj7sQpZ4LQJcmbGTs3+Q==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.9.tgz",
"integrity": "sha512-ICaK+IYaVZvKbBxX2rwrPT0DdUDMnE9Vm3nQGe+mltQPmUg19pONzkPWGdY4FCsoreDETWDynvdt4ysCbF5gNQ==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-arm64-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.1.tgz",
"integrity": "sha512-WMcvMLgByyTqVxGlq918NBBYliq9FRR9GAQVETHb+VjGVqXCZFfHlZHC1FX4ibuYY/Hg6TJE3rHU0xVrdJXNRw==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.9.tgz",
"integrity": "sha512-7ImVPwBLCtkmpR5esd8RHhTqW94f0JLJQum6AneYcy94jRm18TaPPm7slaigGzFhfgt3QiD1Vj52LKmBAnKizA==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.1.tgz",
"integrity": "sha512-J/7uHSX7NfoYDI7HijAkd8lnQIOrRb2W7j3X+tw4R+N5ExvXGsyXFiGdQcfcxfOmNQmZVSQOCDk757fwpzqQcg==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.9.tgz",
"integrity": "sha512-z22Q/zFYSvbIJfW1CbfZPu4X8PddS6Qd2ORbc6h+aT6EcwAxUF3m6fA4HjNvA3TU4X0dTJRwNPB165ES3PJXzg==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-x64-musl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.1.tgz",
"integrity": "sha512-ANTowtlLmPYm5yeMckWY8Xzb9Ix+JJP3tgHR/n6xRj1VWyIzzWtfRfih9hv9VmClwadpBvZduISZIbBsIlYG3A==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.9.tgz",
"integrity": "sha512-RXGaD0o1/pTTguYw1aeDJh9ad6Lfrui0fI7mBderTyGr7WuUJkBIttgLkR3XJyoxOkkgfBDspaUT8wXArTqLZw==",
"dev": true,
"optional": true
},
"@biomejs/cli-win32-arm64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.1.tgz",
"integrity": "sha512-zgXnKNgWPC4iPF7Y1lR3STUeCUuZRpD6IiOrC7TZTlh0Lx6FiVUT05myuMQHQ9D+1cc7uyMldi4forE6lp0ivQ==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.9.tgz",
"integrity": "sha512-nHK+/HHC+D0ogAHUxomgoSTdjImb6fmNNVTKmf0tyu4eDL1DqPKIHc+i+UL8+b0RnAu8224qo8F2tCVnaT0A3w==",
"dev": true,
"optional": true
},
"@biomejs/cli-win32-x64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.1.tgz",
"integrity": "sha512-6uxpR9hvaglANkZemeSiN/FhYgkGasrEGn267eXIWvjrjJ2LhDlk251IhjVJq6MXzkV2/bcXwLwSroLyPtqRZg==",
"version": "2.5.9",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.9.tgz",
"integrity": "sha512-Yiq0H56LjXSSw/hd9YkXgSLQfzyDJzbzU2TezozxyNw+uKWAqOtqGVvBfzKRRDiaFF5avGAhHdWKx7LtDOShUw==",
"dev": true,
"optional": true
},
@@ -6480,184 +6561,184 @@
}
},
"@esbuild/aix-ppc64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz",
"integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.2.tgz",
"integrity": "sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==",
"dev": true,
"optional": true
},
"@esbuild/android-arm": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz",
"integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.2.tgz",
"integrity": "sha512-kXXoiPVVGQcnIYGOeaovwOURpniDBpSq4A03qkQ+BMQqtGG6HYap3xne9C1O1yo4TR3qxlCX5IqqmX6fFo2Lqg==",
"dev": true,
"optional": true
},
"@esbuild/android-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz",
"integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.2.tgz",
"integrity": "sha512-5YfKeeI8qWfBZIX+u2xZC3Zlb3Os/gLS2sbEKM+I4ZOcsWmHS2WLysCcQZDAFRslDUU5Oiq44gf6PYN1vGwG5A==",
"dev": true,
"optional": true
},
"@esbuild/android-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz",
"integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.2.tgz",
"integrity": "sha512-O387ite7SzUyCcy3JQX4P4bLtEA7bLLkx+esve5JHnyYfNTxcVpXZo9jhdB0lTKN44gztELTdU7nS8Nr16Fs1Q==",
"dev": true,
"optional": true
},
"@esbuild/darwin-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz",
"integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.2.tgz",
"integrity": "sha512-n4KqkOQrraxHJcgjM1RvwbigfQKIKJVpM7xp+KsxiyUSrRdIXnt73VhrPAx0fV44hgfmIVKjxMN9J1t5jySVkw==",
"dev": true,
"optional": true
},
"@esbuild/darwin-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz",
"integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.2.tgz",
"integrity": "sha512-uq6suIWYP37qzGddBKPw5QEQPi6HiLGsO7UmkpfyaYNQ3D+rN6w6WfwH+nuqcGXWvawGwxOEroO4YGnFh95azw==",
"dev": true,
"optional": true
},
"@esbuild/freebsd-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz",
"integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.2.tgz",
"integrity": "sha512-n+I0BTSRIoy+d6RPKnEVwql5UwBJolytvY4mAOIEJorKlqgPII8ix6slVVrfZ5Tnj7glIZvloylbB/EJPMWEXw==",
"dev": true,
"optional": true
},
"@esbuild/freebsd-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz",
"integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.2.tgz",
"integrity": "sha512-78XJTJkvPs0kz2w61301PJjXl4g7q3JqiYMZ/M/yVI73EHBrCRTgkhu9oqG7vPqq+a/yadEW8aD+agKlk5xrmg==",
"dev": true,
"optional": true
},
"@esbuild/linux-arm": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz",
"integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.2.tgz",
"integrity": "sha512-XlDnu2q5yoqems+xay6wSAcg9DDD7K9RLKZEBOMZm3ckNpJBvOX20tSfby8KfrrhINDyv9V2YVZKY/SpoGJI8w==",
"dev": true,
"optional": true
},
"@esbuild/linux-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz",
"integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.2.tgz",
"integrity": "sha512-pW4AC0P3it8c7do9MVM4p51FzHzdM/TZrerurgRcHJ2WTa1VQ1CIq18xncfpBJw4ojkiZZrKW2yIBWBP92j6Ug==",
"dev": true,
"optional": true
},
"@esbuild/linux-ia32": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz",
"integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.2.tgz",
"integrity": "sha512-CYbnj78HsIeA+DhgUKgFCfvNsTHFhMMrinUrMZpDXJXKN8T3XViTZ/+wtHeVxEWY8ewSzTFN+nRmSwO2tZaLUQ==",
"dev": true,
"optional": true
},
"@esbuild/linux-loong64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz",
"integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.2.tgz",
"integrity": "sha512-buwkd8nsph4R+ajRvw0qM5Hja/TXQow3ptzWO2EbG/cqcIkHloRrdlBtQlshyYGTNFvfkfJ5tpPLVkY4DtsPfQ==",
"dev": true,
"optional": true
},
"@esbuild/linux-mips64el": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz",
"integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.2.tgz",
"integrity": "sha512-ZVykbDyk7519VwiNb9Lcj9m8XM6v5V9uKPvrEMkkEedVewf+0itkhahp4HDpgERXhwLRpWFypsGbG/J8s0QjJA==",
"dev": true,
"optional": true
},
"@esbuild/linux-ppc64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz",
"integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.2.tgz",
"integrity": "sha512-CAXl+Dtd9UUuJd8pKKdwh6MLm3MUMiqMPmhZ3tTSXPqfyQ3vDl6R5hZdZ/kYojK4ofXtdfSv1tFq8XzWx3heNQ==",
"dev": true,
"optional": true
},
"@esbuild/linux-riscv64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz",
"integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.2.tgz",
"integrity": "sha512-GeXCej4IQtU1B+QlDV8W/RRvbzI3O/Stss+/bCXv4lZls5WGRtu2a+3JkA3i4qIUlMXpcHebWpF8AkJhATowuA==",
"dev": true,
"optional": true
},
"@esbuild/linux-s390x": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz",
"integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.2.tgz",
"integrity": "sha512-3H1weTYZPxt/WOhByszQZybS9w5lKzUn1FDMsgEChbHWQwHYQQRfBxgCcZvPhjHfKyJjIievvMmEUawJrdY9Dg==",
"dev": true,
"optional": true
},
"@esbuild/linux-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz",
"integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.2.tgz",
"integrity": "sha512-4xTZr1FUmSoQW4XIWmit3tzQrUTZM+N3P0XV8xROKYF50XfI7xeO90+1bZvNwxIufQ9hDQVRJH5YhgPVF8A/HQ==",
"dev": true,
"optional": true
},
"@esbuild/netbsd-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz",
"integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.2.tgz",
"integrity": "sha512-sSATRjPeDBg3pdgHoQfoYBob11Kk1FGa9lui5RIHZCoCkJa9QKlvl3/vKz2usCmYYjs7ymJR/2Nnsqe+Hjt5nw==",
"dev": true,
"optional": true
},
"@esbuild/netbsd-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz",
"integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.2.tgz",
"integrity": "sha512-lqnzCV+mM0gIADaKihiCg6ifgfU2L3h5E33rNQBN1Y4MaVGnzryzmvvf7UHxprpQdE8hpqLolJ9Rl+SkIRDpyw==",
"dev": true,
"optional": true
},
"@esbuild/openbsd-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz",
"integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.2.tgz",
"integrity": "sha512-AL2qJILH7lNjrDmCQDvdxMfAUIv8KMNZOvrwAQ8i8//ntL9FflhOyMJ8OZSMBb8/AWXe3/5v5S20y3zCoZWKoQ==",
"dev": true,
"optional": true
},
"@esbuild/openbsd-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz",
"integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.2.tgz",
"integrity": "sha512-QtiuPytchRyC4rwUKhexJdQKvDuZ6hWloi3igqPQNUJCS1/v9EiO3UTOXR6A3FoMo4fnAKbWJdqaIwhOzh8qEw==",
"dev": true,
"optional": true
},
"@esbuild/openharmony-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz",
"integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.2.tgz",
"integrity": "sha512-WkhYDmpTjLvGlScA1rwjRUmhl4k8oXR3cIbtqWmELgU/dFeHHlEllxDvdWcNJV9rbzCexB5vz8gtNewWLgCT7Q==",
"dev": true,
"optional": true
},
"@esbuild/sunos-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz",
"integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.2.tgz",
"integrity": "sha512-GPMSkTOtMnv2U2F8gxe4Io6qmVs+YKyp832Etqqxr0hFngmXQ3rzwytelm3GIn7T4VviRUlf3sOgBOiTdvaf7g==",
"dev": true,
"optional": true
},
"@esbuild/win32-arm64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz",
"integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.2.tgz",
"integrity": "sha512-PIhhEkE9uPBleRBrQEJpUn7MBnibZzbGzYWPmY3x+YoVg/95zbjB4CxPPOQ8l5tYYM4mMaCthF8/1DIfBQQyWQ==",
"dev": true,
"optional": true
},
"@esbuild/win32-ia32": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz",
"integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.2.tgz",
"integrity": "sha512-YmJbfTlvU7Sdn9BB+4PRES4oB6pxgS37MAONj+hBr/cpXS1aBPKXxNnDbu+QCWPj0o9dgyxeq79g6c5P8KeuYA==",
"dev": true,
"optional": true
},
"@esbuild/win32-x64": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz",
"integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.2.tgz",
"integrity": "sha512-5ebpxr3nWMzrL/rnUI755Jkuee0bHL/Gq0WTF9lvcpv73wAp5eu8MfBUgWK9bhWvZjj7yX8etf/8tI8Ney695g==",
"dev": true,
"optional": true
},
@@ -7153,18 +7234,18 @@
"dev": true
},
"@types/node": {
"version": "26.1.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.1.1.tgz",
"integrity": "sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==",
"version": "26.2.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.2.0.tgz",
"integrity": "sha512-5IviulTZeRNp2vAJ514cc/HUlY5nZ9fCbq9DMyC52BrhFZACo3nI0R7qBxhQmo/d27NFe96ur/b7Wwxklda+kg==",
"dev": true,
"requires": {
"undici-types": "~8.3.0"
}
},
"@types/semver": {
"version": "7.7.1",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz",
"integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==",
"version": "7.8.0",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.8.0.tgz",
"integrity": "sha512-1mAINjtQCXXeLkJ9ehXkwOcBpqtLxiVtKhpUf83DdRNdQKV0iXZpaHYqRr7nj+wvxuJzoAmAwXI+sCNMv1CzLQ==",
"dev": true
},
"@types/stack-utils": {
@@ -7364,9 +7445,9 @@
"optional": true
},
"@vercel/ncc": {
"version": "0.44.1",
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.44.1.tgz",
"integrity": "sha512-cUjIE5P2YY1n+Kt9rFIazMMpGoPn1Fic04rOmTkElMkiDP5oszGfERMpo2shVkFKDL7rVppdM2pqJKC59shQWQ==",
"version": "0.45.0",
"resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.45.0.tgz",
"integrity": "sha512-8zPi1yO2mHpoKTD+e+Bf0ZT3e+sWHSOyGapm9s7b5R0gxJi3CiFTqmeQiMEyu6ejrz2s09M8JkEoUaTWjBJPQQ==",
"dev": true
},
"agent-base": {
@@ -7754,37 +7835,37 @@
}
},
"esbuild": {
"version": "0.28.1",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz",
"integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==",
"version": "0.28.2",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.2.tgz",
"integrity": "sha512-HKVLS8dvII+xoKW9kmqxbRKrnWEXfJJr/FZhhJmiqIB0e053QNYFqOBouTMO/k5sID4MvCiUCvv8b9M4h32wIA==",
"dev": true,
"requires": {
"@esbuild/aix-ppc64": "0.28.1",
"@esbuild/android-arm": "0.28.1",
"@esbuild/android-arm64": "0.28.1",
"@esbuild/android-x64": "0.28.1",
"@esbuild/darwin-arm64": "0.28.1",
"@esbuild/darwin-x64": "0.28.1",
"@esbuild/freebsd-arm64": "0.28.1",
"@esbuild/freebsd-x64": "0.28.1",
"@esbuild/linux-arm": "0.28.1",
"@esbuild/linux-arm64": "0.28.1",
"@esbuild/linux-ia32": "0.28.1",
"@esbuild/linux-loong64": "0.28.1",
"@esbuild/linux-mips64el": "0.28.1",
"@esbuild/linux-ppc64": "0.28.1",
"@esbuild/linux-riscv64": "0.28.1",
"@esbuild/linux-s390x": "0.28.1",
"@esbuild/linux-x64": "0.28.1",
"@esbuild/netbsd-arm64": "0.28.1",
"@esbuild/netbsd-x64": "0.28.1",
"@esbuild/openbsd-arm64": "0.28.1",
"@esbuild/openbsd-x64": "0.28.1",
"@esbuild/openharmony-arm64": "0.28.1",
"@esbuild/sunos-x64": "0.28.1",
"@esbuild/win32-arm64": "0.28.1",
"@esbuild/win32-ia32": "0.28.1",
"@esbuild/win32-x64": "0.28.1"
"@esbuild/aix-ppc64": "0.28.2",
"@esbuild/android-arm": "0.28.2",
"@esbuild/android-arm64": "0.28.2",
"@esbuild/android-x64": "0.28.2",
"@esbuild/darwin-arm64": "0.28.2",
"@esbuild/darwin-x64": "0.28.2",
"@esbuild/freebsd-arm64": "0.28.2",
"@esbuild/freebsd-x64": "0.28.2",
"@esbuild/linux-arm": "0.28.2",
"@esbuild/linux-arm64": "0.28.2",
"@esbuild/linux-ia32": "0.28.2",
"@esbuild/linux-loong64": "0.28.2",
"@esbuild/linux-mips64el": "0.28.2",
"@esbuild/linux-ppc64": "0.28.2",
"@esbuild/linux-riscv64": "0.28.2",
"@esbuild/linux-s390x": "0.28.2",
"@esbuild/linux-x64": "0.28.2",
"@esbuild/netbsd-arm64": "0.28.2",
"@esbuild/netbsd-x64": "0.28.2",
"@esbuild/openbsd-arm64": "0.28.2",
"@esbuild/openbsd-x64": "0.28.2",
"@esbuild/openharmony-arm64": "0.28.2",
"@esbuild/sunos-x64": "0.28.2",
"@esbuild/win32-arm64": "0.28.2",
"@esbuild/win32-ia32": "0.28.2",
"@esbuild/win32-x64": "0.28.2"
}
},
"escalade": {
@@ -8627,9 +8708,9 @@
"dev": true
},
"js-yaml": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.2.1.tgz",
"integrity": "sha512-zfLtNfQqxVqq3uaTqSkh4x4hZw3KHobGUA0fJUj4wawW8bsQLTVqpHdXSIzidh7o+4lEW36tANuAGdaFx6Zgnw==",
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.3.0.tgz",
"integrity": "sha512-muutsYr+e2+d3rTgUGslq5rxbBlUy3cJ61IsHag2QNDQV+7zXWjkUpmALIajhrlLlrgRUiymj6U3zUr/TMK84Q==",
"dev": true,
"requires": {
"argparse": "^2.0.1"
@@ -9035,9 +9116,9 @@
"dev": true
},
"smol-toml": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.7.0.tgz",
"integrity": "sha512-aqVvWoyO21L23mb+drl4RmMXbf6N7FdHjAhTRA9ZBL7apWBgfWC16KjrASI+1p9GAroljyMHj6fK67i0UiTNvQ=="
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.8.0.tgz",
"integrity": "sha512-kCZr2V3ch9i00x8zXRhjUNVcjG9ijES5dDudkXvUVCT5QlJNQWElSJdZqyPemffHoLNUYwOcou0Fy+ojN0uHSQ=="
},
"source-map": {
"version": "0.6.1",
@@ -9303,9 +9384,9 @@
"optional": true
},
"undici": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-8.3.0.tgz",
"integrity": "sha512-TkUDgb6tl7KOGZ+7e8E3d2FYgUQgF6z5YypqjWmixVQSQERFcVrVg0ySADm2LVLRh5ljAaHTCR5Fmz3Q34rB7Q=="
"version": "8.10.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-8.10.0.tgz",
"integrity": "sha512-HvltHd7avK13QIw/oLe4qoOLyoVSoafqJ2jYOrtMRBkbYT31eiBQ8O0ehRKZiEZCMEyLFQNIADpgCWC5fALvYQ=="
},
"undici-types": {
"version": "8.3.0",
+21 -11
View File
@@ -5,6 +5,16 @@
"type": "module",
"description": "Set up your GitHub Actions workflow with a specific version of uv",
"main": "dist/setup/index.cjs",
"engines": {
"npm": ">=11.10.0"
},
"devEngines": {
"packageManager": {
"name": "npm",
"version": ">=11.10.0",
"onFail": "error"
}
},
"scripts": {
"build": "tsc --noEmit",
"check": "biome check --write",
@@ -12,7 +22,7 @@
"test:unit": "node --experimental-vm-modules ./node_modules/jest/bin/jest.js",
"test": "npm run build && npm run test:unit",
"act": "act pull_request -W .github/workflows/test.yml --container-architecture linux/amd64 -s GITHUB_TOKEN=\"$(gh auth token)\"",
"update-known-checksums": "RUNNER_TEMP=known_versions node dist/update-known-checksums/index.cjs src/download/checksum/known-checksums.ts",
"update-known-checksums": "RUNNER_TEMP=known_versions node dist/update-known-checksums/index.cjs src/download/checksum/known-checksums.json",
"all": "npm run build && npm run check && npm run package && npm run test:unit"
},
"repository": {
@@ -28,25 +38,25 @@
"author": "@eifinger",
"license": "MIT",
"dependencies": {
"@actions/cache": "^6.1.0",
"@actions/cache": "^6.2.0",
"@actions/core": "^3.0.0",
"@actions/exec": "^3.0.0",
"@actions/glob": "^0.6.1",
"@actions/glob": "^0.7.0",
"@actions/io": "^3.0.2",
"@actions/tool-cache": "^4.0.0",
"@renovatebot/pep440": "^5.0.0",
"smol-toml": "^1.7.0",
"undici": "^8.3.0"
"smol-toml": "^1.8.0",
"undici": "^8.10.0"
},
"devDependencies": {
"@biomejs/biome": "^2.5.1",
"@biomejs/biome": "^2.5.9",
"@types/js-yaml": "^4.0.9",
"@types/node": "^26.1.1",
"@types/semver": "^7.7.1",
"@vercel/ncc": "^0.44.1",
"esbuild": "^0.28.1",
"@types/node": "^26.2.0",
"@types/semver": "^7.8.0",
"@vercel/ncc": "^0.45.0",
"esbuild": "^0.28.2",
"jest": "^30.4.2",
"js-yaml": "^5.2.1",
"js-yaml": "^5.3.0",
"ts-jest": "^29.4.11",
"typescript": "^6.0.3"
}
+4 -1
View File
@@ -98,11 +98,14 @@ async function computeKeys(
? `-${encodeURIComponent(inputs.cacheSuffix)}`
: "";
const version = encodeURIComponent(pythonVersion ?? "unknown");
const pythonArchKey = inputs.pythonArch
? `-python-${encodeURIComponent(inputs.pythonArch)}`
: "";
const platform = await getPlatform();
const osNameVersion = getOSNameVersion();
const pruned = inputs.pruneCache ? "-pruned" : "";
const python = inputs.cachePython ? "-py" : "";
return `setup-uv-${CACHE_VERSION}-${getArch()}-${platform}-${osNameVersion}-${version}${pruned}${python}${cacheDependencyPathHash}${suffix}`;
return `setup-uv-${CACHE_VERSION}-${getArch()}-${platform}-${osNameVersion}-${version}${pythonArchKey}${pruned}${python}${cacheDependencyPathHash}${suffix}`;
}
function handleMatchResult(
+13 -2
View File
@@ -11,19 +11,30 @@ export async function validateChecksum(
arch: Architecture,
platform: Platform,
version: string,
manifestChecksum?: string,
): Promise<void> {
const key = `${arch}-${platform}-${version}`;
const hasProvidedChecksum = checksum !== undefined && checksum !== "";
const checksumToUse = hasProvidedChecksum ? checksum : KNOWN_CHECKSUMS[key];
const knownChecksum = KNOWN_CHECKSUMS[key];
const hasManifestChecksum =
manifestChecksum !== undefined && manifestChecksum !== "";
const checksumToUse = hasProvidedChecksum
? checksum
: (knownChecksum ?? (hasManifestChecksum ? manifestChecksum : undefined));
if (checksumToUse === undefined) {
if (manifestChecksum !== undefined) {
throw new Error(`No checksum found for ${key} in manifest.`);
}
core.debug(`No checksum found for ${key}.`);
return;
}
const checksumSource = hasProvidedChecksum
? "provided checksum"
: `KNOWN_CHECKSUMS entry for ${key}`;
: knownChecksum !== undefined
? `KNOWN_CHECKSUMS entry for ${key}`
: "manifest checksum";
core.debug(`Validating checksum using ${checksumSource}.`);
const isValid = await validateFileCheckSum(downloadPath, checksumToUse);
+5524
View File
@@ -0,0 +1,5524 @@
{
"aarch64-apple-darwin-0.13.0": "a9c1b29002cf3c83f07fa9cd8a887a3be0107d90e23189721221e7257db8e3d6",
"aarch64-pc-windows-msvc-0.13.0": "cb54028b59aa87f11cf6dec293ce000420043a49a8aea522e822a671321f8932",
"aarch64-unknown-linux-gnu-0.13.0": "3ccfb6af6e242433eb552f7d9676abd5412c6595c497e990d9c8cb7b5bd4d2c3",
"aarch64-unknown-linux-musl-0.13.0": "281ca6cf43f4e26e35474839ad4861be86de42af2682f74134460f5b2071b96d",
"arm-unknown-linux-musleabihf-0.13.0": "3f981753e12b6fcf705e05fe00bfe41366c5b5c260ebcea76965821dfc8f6c94",
"armv7-unknown-linux-gnueabihf-0.13.0": "e38957791fdd56d356421d81a509b66680d47478870082519340361e5abdbb8b",
"armv7-unknown-linux-musleabihf-0.13.0": "8c4e1f37dfcafa8244f0e8f1cd38f1ee597e5091c6e21a60fdd674987f69f8a2",
"i686-pc-windows-msvc-0.13.0": "5fca2da976672231e3dcc1d81bb1059781dea3915715fe8f000a916886d183cb",
"i686-unknown-linux-gnu-0.13.0": "4ee76d4f81003f04a1aeb6c743330d41a45054f2c69ceee4afdd129dd2786f88",
"i686-unknown-linux-musl-0.13.0": "fd9fe1435115fc62fda26cac28b024998d2af39f093f107ef51692d8e24ac7b4",
"powerpc64le-unknown-linux-gnu-0.13.0": "2fac854f1249968b91cd3bd6a089faf4cf7f896e407b9e1b3bc03ea0f0373989",
"riscv64gc-unknown-linux-gnu-0.13.0": "90f660b61ffb8cefae7a60e1b5915ab3eb828266f6d4593279440f735dcded63",
"riscv64gc-unknown-linux-musl-0.13.0": "6bfb5a8f9dce279e12f3ce1b57bef1a51b62ceb1de2c6233b61617883f23d56d",
"s390x-unknown-linux-gnu-0.13.0": "7b7b733e9b44eb0d1f5f6275672653c08f5abe2dd930acdc64123d5c69593132",
"x86_64-apple-darwin-0.13.0": "5f44dcbde809b632f47c36fadb241cb4d6f9af71d0c8f172b5d2026d3dde742c",
"x86_64-pc-windows-msvc-0.13.0": "088962f9e7b7bd9ea740c04c650b2a21c8928c345bd99ac24350dc924dba656c",
"x86_64-unknown-linux-gnu-0.13.0": "1468ebd5a5541121837c5a2817b9972ba6090fa6caa3d142620850a47fb75154",
"x86_64-unknown-linux-musl-0.13.0": "b0828fc4cdc47d65951e94b5f0a15a5364420e8dcd88723f3b21e7a2eb30bbc3",
"aarch64-apple-darwin-0.12.24": "0c4346de7abdb49495b393b9ec809fe387aa43e586be20fecb972216c1e71732",
"aarch64-pc-windows-msvc-0.12.24": "4b783bda5cc44bbae0651a837223873a7acee31152381aef5fc86ef6bef25997",
"aarch64-unknown-linux-gnu-0.12.24": "5231be65f496304623895dacdbf1de8504fec90303684bdf05805aa34414dd21",
"aarch64-unknown-linux-musl-0.12.24": "7f9ab4726d743b6a92e310477a7840c8a8a7b3938cb3c4657d541342fca75011",
"arm-unknown-linux-musleabihf-0.12.24": "c134b64ba9d6e760625ff9239708dffaeb67b612ebb47a774470bd88fac32084",
"armv7-unknown-linux-gnueabihf-0.12.24": "7ae5772338fb28f33052c06f82d1acb245df7bc1cb7628184a9baf91e9a101cd",
"armv7-unknown-linux-musleabihf-0.12.24": "fe46d0ad949c2901be0ead471109cfed57a082d4ff037cf64d7c7c65e910cdf2",
"i686-pc-windows-msvc-0.12.24": "752eda106495f96849951831a419f63796a01dc73ce5ab3cae6d48239527a06e",
"i686-unknown-linux-gnu-0.12.24": "89dde6d09ef1ae1e548b78c035ee75d0e2127b6c3991e0754651021c57110296",
"i686-unknown-linux-musl-0.12.24": "1d86de046c8be1ed1d7ea383f52469056145ee86a57fb11db5a51b4446d3d365",
"powerpc64le-unknown-linux-gnu-0.12.24": "897c61e780aded8062c9011f009b5d2971891b7e97df013c2ae10fca6fd41425",
"riscv64gc-unknown-linux-gnu-0.12.24": "c7789e1b3575c4c5a95a73ce280cd7335e4e1d8bf2aa90c606e33c5e3625d2e5",
"riscv64gc-unknown-linux-musl-0.12.24": "1adf83ae63acc09d7bd4926f6a1a0d26f819df6972635c0e57aa29d21e1d9797",
"s390x-unknown-linux-gnu-0.12.24": "9d2863b384a60f1c44c3e642226d1ffa97c0e6275cbb41f83aa2cdd764f8397c",
"x86_64-apple-darwin-0.12.24": "4fa82e37cb94767661f532b001e470b67a186c7260e305bd84ddb78fd545c0b6",
"x86_64-pc-windows-msvc-0.12.24": "7c38608c8a18ee137d748a1773053b07ec8f3a30fab49aebaa6f4e4efeceb019",
"x86_64-unknown-linux-gnu-0.12.24": "b4dfaef47d491a7296981f8374a4595f55dbf84e8937c8ecd2983574d8bb3da6",
"x86_64-unknown-linux-musl-0.12.24": "48170bd200a5430298c18f3b264485a1f3a8605f01088277daf6e37633edf0f5",
"aarch64-apple-darwin-0.12.23": "50487ae565ccd96e499056b4674d438f4c53170202617b4c759defe0c6a1b544",
"aarch64-pc-windows-msvc-0.12.23": "13294e232ececbe709c06b74e6ced06f2a225ea5591476685362f22be56a50d5",
"aarch64-unknown-linux-gnu-0.12.23": "6524bd338177ed50d035d39354e12545e993bbeba2ecbddf0480c5b3a81d313f",
"aarch64-unknown-linux-musl-0.12.23": "b536543cc4d50661986b165c76ee8aa9056e4fa332edcd153ff2e98760f9359b",
"arm-unknown-linux-musleabihf-0.12.23": "7184501c712c58abc9554e1f4fcc9bacc042ad28e1ad0f42e762a1ed27a151c5",
"armv7-unknown-linux-gnueabihf-0.12.23": "4d568920e1f60c4b881cbe2827dfa20592a9a9721f69b57d47650d035c4fe8f6",
"armv7-unknown-linux-musleabihf-0.12.23": "f5c941f2a7fa078ffcbc58654ec1b37de98e2a93a24cd3deb19c1acdd66ff533",
"i686-pc-windows-msvc-0.12.23": "22a92f4374e4716c2848acaa0392f2f8e4a13b0ff65d080e2a5ade167bce96a8",
"i686-unknown-linux-gnu-0.12.23": "52c93c40f6056c4d0e1e259acd60c11f7328416a4f28c85e5f1b04430538aeaa",
"i686-unknown-linux-musl-0.12.23": "b3838649e6896734be828e96c6b14f3064882508a7211398c0e3a35f974f501b",
"powerpc64le-unknown-linux-gnu-0.12.23": "e8e13421bdecb3f31c0794edfcb8b2e04406f34d645fd9c040f7bd9ace5c3f72",
"riscv64gc-unknown-linux-gnu-0.12.23": "661c1a11afc8db4adb20b2d30f789b50e682529b0f1f49e3dd138d86581065b3",
"riscv64gc-unknown-linux-musl-0.12.23": "d6dcc450fe1c159540115c8934c76515ee03192c9e61cb983228ad3809e1cc71",
"s390x-unknown-linux-gnu-0.12.23": "50c726711cb5f4cdbf45e31c141c9033fdd43146f90ac630c252857c60daf84b",
"x86_64-apple-darwin-0.12.23": "960da44cb4b73685206ddd250b19e0a117fa41095710c1038f081f5cb613efb4",
"x86_64-pc-windows-msvc-0.12.23": "75d05de6762778c31ee183398de7dd15093fad0ed90b1f236d8205ea5ec00c90",
"x86_64-unknown-linux-gnu-0.12.23": "9167d72b3319674b6303c4cbe071854bba13ebdf3d76b1a7cbdc175471fb66d6",
"x86_64-unknown-linux-musl-0.12.23": "1cff8783850e794470aadb73f54b749542a511fc57b0ce6468b64bd3852e0ade",
"aarch64-apple-darwin-0.12.22": "5d714de09501a59393ceca78f4bc232a50478729640d251907160299b2a93ddd",
"aarch64-pc-windows-msvc-0.12.22": "6a42b919c2bb7135f07b4d1bb8e489f0eaab0bae039020573cc522d831e2d32e",
"aarch64-unknown-linux-gnu-0.12.22": "6f66a14e8239871fb477f9746c941fedfa77e8fe28a8bc7c07e1dc7f53a66712",
"aarch64-unknown-linux-musl-0.12.22": "228bd32c180421a94eef91378a92b2dd63c768bd278430e833250524c4a13382",
"arm-unknown-linux-musleabihf-0.12.22": "e7df01f0b9cfec6a82232e0de063cb961e38e4e1a9767295bdee87e148f6dde0",
"armv7-unknown-linux-gnueabihf-0.12.22": "ec4d636bce8cc4d2ff0a927f2805671e2d7377e3f3f7b42109d5d4633839fa41",
"armv7-unknown-linux-musleabihf-0.12.22": "5f5ea3f80f8ffa47aa47fb8f59b5589eb3619c05ffe7730d8554ead42720f742",
"i686-pc-windows-msvc-0.12.22": "a18a913fe4435e5591113ff035077d9461177ad03ab2747eaeb88aee95833a16",
"i686-unknown-linux-gnu-0.12.22": "221bbc2362b7cbf651e3fbb0a228c034820bb07f9efe2785c9339828fcdf079b",
"i686-unknown-linux-musl-0.12.22": "50dadb6a043359f4762e338691306109ca1df3d3312460a926642dbf8c9f527c",
"powerpc64le-unknown-linux-gnu-0.12.22": "17b959094cffb2fd3c3fb9c64d98a1ea8eabfd0bc83507ab08e4ca2187302d1c",
"riscv64gc-unknown-linux-gnu-0.12.22": "f25202c8647b4a783b0f04e2c341c617d8d11a8bc72d4ccdcbcc6f0c9d7782f2",
"riscv64gc-unknown-linux-musl-0.12.22": "30b29481b4dd28a8cc9d903b66dbe9532781bd25de817fcd9ea5fd37598ef171",
"s390x-unknown-linux-gnu-0.12.22": "3672ce2d278239cbc52ba0c962f21556cd49f889a87577ea0801ad7eadc0be73",
"x86_64-apple-darwin-0.12.22": "1b8a5b316883df2daf20fb9a446e5b230e01d947d57aba2694977c5ac5a7e98c",
"x86_64-pc-windows-msvc-0.12.22": "ea1397797a0ca15f63516dd0f49c2dde9776db9be5861cab152ebe8ad199894d",
"x86_64-unknown-linux-gnu-0.12.22": "b9980552309f09c15172b8be828555e375097f16deb459795ce7bfd200380f0b",
"x86_64-unknown-linux-musl-0.12.22": "a50fd68c653b0cfb1c85e0a7db62cb78cf5c22b6f3dcf3ae173e5f222d084470",
"aarch64-apple-darwin-0.12.21": "b88bda573e566ef9bced66b155fe0408626fbbc053aee1c30ba686f0728c9447",
"aarch64-pc-windows-msvc-0.12.21": "93ed53b94e9cec000cacdfd18ca67bc4cb2b6a5f5ec041edd7f2a3dae365ce79",
"aarch64-unknown-linux-gnu-0.12.21": "030b69227b40af8c1981b7301793dc66e71ed3c796ea8688209dd268bd91ec51",
"aarch64-unknown-linux-musl-0.12.21": "67389a674e62adffa5a395d9a3b80688731c4aa7b33a6def3e62d00f7fec821f",
"arm-unknown-linux-musleabihf-0.12.21": "047c43febfaabcf06f6e20361bf99a4fd57b9c391a99e0bff2d410dd647829a6",
"armv7-unknown-linux-gnueabihf-0.12.21": "ddb4826a23a9a994da3d868c57b74b1fcb22e29691fc89f8b1702c6a1a9e0df7",
"armv7-unknown-linux-musleabihf-0.12.21": "eeb8edc4e5b74ec4521da4d3911153ba8ce24ed8557e2dbbe55d04a6d7a7f45e",
"i686-pc-windows-msvc-0.12.21": "66b7ffe136362b8522748c4d43b7e82b846e37e4e9272fcfadffaad8bf7b5a75",
"i686-unknown-linux-gnu-0.12.21": "b9ff98d9e6303f8d403af3f002ff1a429867cfcf915f1fa296689b43d9defd52",
"i686-unknown-linux-musl-0.12.21": "1492353034d106f2067eeec8f8b6aad1354e13fbb3f91c25a40eb5d44215fd6f",
"powerpc64le-unknown-linux-gnu-0.12.21": "c76a8589ed7f447d1e14dc20f060861fecd457a44a287047ef6a49bc6f22ae25",
"riscv64gc-unknown-linux-gnu-0.12.21": "202b30dff0f35cd8094e97949c8694b31951f404dd99802e1c997d65d752cf58",
"riscv64gc-unknown-linux-musl-0.12.21": "ca1dcb18c0e81c31d006d1ab808fcb4e3a95dde780b1e58805039f84a8ae0b2d",
"s390x-unknown-linux-gnu-0.12.21": "556bd11fca37f43a5ec051b5ed82e64b54fe536d6dea2fa84f8b34d2eb3a77d0",
"x86_64-apple-darwin-0.12.21": "2b336763b396ec6afa20c5a8b083538ca7402445b868311979d740a4344c17d8",
"x86_64-pc-windows-msvc-0.12.21": "5d223efa0bf00208c3853246af09420419dfbd352536aa6bb8163d6170e23890",
"x86_64-unknown-linux-gnu-0.12.21": "23f02075b652bb1df64178cfae41b5caf160822e720e2663568f3f5d63bc52c0",
"x86_64-unknown-linux-musl-0.12.21": "d69d543a55ec9cdf9d3d9f2648b0a161847e3dbddc477e3be6b5813a6d46f639",
"aarch64-apple-darwin-0.12.20": "848fdeb602ff1a1baacd4f6c8b7bdc6cf1ad026a6d9cf59475fda17c179743ca",
"aarch64-pc-windows-msvc-0.12.20": "b6bd9218855591742ffd3b00fcf2044b4d2fb6446b6a3545e0dfee447e950388",
"aarch64-unknown-linux-gnu-0.12.20": "8a7aad7bc76a2fae5151566ff3e43eacce0b2a113d5e4de3e4afe3e58fa2441e",
"aarch64-unknown-linux-musl-0.12.20": "94bb13feeebc6b59a4124016c957cdc9ee406d1476ce2b2ce2991e95b8e820b7",
"arm-unknown-linux-musleabihf-0.12.20": "6aeef64cf07b43135d6b1c20bd57809f2d965d0f8a2d5602230d5d55b8245477",
"armv7-unknown-linux-gnueabihf-0.12.20": "e1c53318608448ad3b8e7f2e9b069936730a6e7b47831ba5446e4b4f436ee715",
"armv7-unknown-linux-musleabihf-0.12.20": "a4c3a0e12e5489f092c93b232ddc4a811a6ea9a03f447f91f88e96867c0bac8d",
"i686-pc-windows-msvc-0.12.20": "1a372c273370ae9a7e9aa84020ce91fc1d9ebecbd287c3447e7e99cada0b14f3",
"i686-unknown-linux-gnu-0.12.20": "f1e83cc88970ed799b507a8392152d19916dfa0b6c9ae9c8145742035a40d5cb",
"i686-unknown-linux-musl-0.12.20": "11d541dd32dd779adbdfef69fe30d7d325036f50d394d3f260a0042998e05499",
"powerpc64le-unknown-linux-gnu-0.12.20": "39224a5bfc21a8041afc0315e5d47c86acecf4e669944564950996b516fb5987",
"riscv64gc-unknown-linux-gnu-0.12.20": "5cb9df36ca64fb72673c59a77b955b50f3bb907689a98d1d8d640aa3e71f2660",
"riscv64gc-unknown-linux-musl-0.12.20": "360e91a317a27bd33978577c57b6f3ed778bdfe8c30c9b613e46fdc33bf8aee8",
"s390x-unknown-linux-gnu-0.12.20": "25485439b52cb029afa724c442418ca08a53122100f8cce68ccceb88323ccde2",
"x86_64-apple-darwin-0.12.20": "ac54283d211fd77cdc152b67606dbaf6406ff4ab03f3af4ae99468fa8e887141",
"x86_64-pc-windows-msvc-0.12.20": "95f9bc30fbb3574d276e28ac4a6de932d25153645853d13da8c21eec3bc88d06",
"x86_64-unknown-linux-gnu-0.12.20": "6590717592ace991ff83a63fef799e3ad9d33ecc8f96c5d6bdd732496e79337f",
"x86_64-unknown-linux-musl-0.12.20": "14114d66a094f1907af0fcbc863f34226bbb7f5e430e13dce6676ba40dcc6891",
"aarch64-apple-darwin-0.12.19": "a9a8df1eedeb192f2e47e40e2faabfb387db4b850209118786d42f89dde3e0ba",
"aarch64-pc-windows-msvc-0.12.19": "115b54cb823bc48260670f5782001add6067ac8d98d18c8263a833704e287de9",
"aarch64-unknown-linux-gnu-0.12.19": "0804e9b164c64b6914182d5920c08551958a095986f10a3731056df701126436",
"aarch64-unknown-linux-musl-0.12.19": "ad8d8448a2ff642ba62c2f684d7dd22a03f8eb3fc9918c2c3e8ec975f4ed6710",
"arm-unknown-linux-musleabihf-0.12.19": "173b6b118e444dc3b3a0b6337dd87d66fa79835aa5e059d79e942ae33a850e20",
"armv7-unknown-linux-gnueabihf-0.12.19": "f47fe74244c4adcff20637c1aee2550dbc31c81ccf0b2a9537bf98b24bc4028a",
"armv7-unknown-linux-musleabihf-0.12.19": "0df353aac087509c47fe660837ca5d284858ef4a5eec4042cbcdeb0118ba0f1b",
"i686-pc-windows-msvc-0.12.19": "e1c2d19d1173a0e9f81ba3f95881ad741808133e372610889ff6870629218c7f",
"i686-unknown-linux-gnu-0.12.19": "952b0bae707e19b2b5d012b46519a2159be929273d466a1437759f0961be0b93",
"i686-unknown-linux-musl-0.12.19": "f923ac32e0e5139950fe1b63abab74d48cabb94b15c90637bc380dadcaf4da40",
"powerpc64le-unknown-linux-gnu-0.12.19": "e30649ad846a14bd96440efd45fdb60dcdf8db088fb143064aa78632048ad957",
"riscv64gc-unknown-linux-gnu-0.12.19": "50a83ea999ea861a6a853ae1ad0982baad96cc6451e46a5d7e366c4d9475f1bb",
"riscv64gc-unknown-linux-musl-0.12.19": "051de9eda7e09dab4c8a304ab2e119317649fee0e24efd0358f410d0c5b3407f",
"s390x-unknown-linux-gnu-0.12.19": "e6a9149ea122c1b3b9719ca3577c321376e3c400e004c3cc18231fdb1d35107b",
"x86_64-apple-darwin-0.12.19": "cb5fa57bafe68fc0fb94b17f06bee0b0b9a7feb94ccbd110445afa0696e39273",
"x86_64-pc-windows-msvc-0.12.19": "6dbb02d79e419522f1c500f0adb1cddcff0cda7d59b0d66ea7f5e3b4a1b2f5f0",
"x86_64-unknown-linux-gnu-0.12.19": "23bf5552d220e0842b65c862097b2ebaeba0064b74eda5e565e77fd25969d8c8",
"x86_64-unknown-linux-musl-0.12.19": "db7278c9f57981338fddff1fb250e11964bc0a4fafcb9eed8303fdb117dc067b",
"aarch64-apple-darwin-0.12.18": "cf40e0c6a202190ccd9e0406dcfdd5b2d6668a9a5c779b17948963df32aafe5b",
"aarch64-pc-windows-msvc-0.12.18": "17f27b1c64eacc757ae603579f116a014881e486c5e79ae81877980d4699e943",
"aarch64-unknown-linux-gnu-0.12.18": "afb6291f3f0a6b4521fc67b947822506c41dde5b60d2189dd8f3695b2ac8c9e7",
"aarch64-unknown-linux-musl-0.12.18": "0796973fb3eea8095078c3d0659bd17a5f6789a71b8dd85caff2483178f78ac3",
"arm-unknown-linux-musleabihf-0.12.18": "a37127fb331d5e6228efc1f8549d2447b50c907eee4629347f150a649083619c",
"armv7-unknown-linux-gnueabihf-0.12.18": "a38e82350e1e95d5526d1ab81d9b4eb676815c51646243b3b3fbc55b218732d1",
"armv7-unknown-linux-musleabihf-0.12.18": "41f0808328f65910bacdb487638475715f949900c7a23b393b3754e2156ff15a",
"i686-pc-windows-msvc-0.12.18": "e04c0f1fd9a8703761f9edd64d797ddb2c9a3e6eec0e2fed234a7bd2c2e868b9",
"i686-unknown-linux-gnu-0.12.18": "278dbc5dfc6bdde33a553fdba53174cc49daf512a857db1b3c1b5d663290196f",
"i686-unknown-linux-musl-0.12.18": "ebfdaaafc447fb2a7329cde879a7748b2ab40ecdcd3d5f04fc0a5d1ab79bb0bd",
"powerpc64le-unknown-linux-gnu-0.12.18": "332d174248230ed599a9df0e4e77d6921dbb42ca0fdfbe26eb2a6c999da936b3",
"riscv64gc-unknown-linux-gnu-0.12.18": "be88652a03225acbd6bf7204d006b244b0743c8c756a35137c209fa4ff731c41",
"riscv64gc-unknown-linux-musl-0.12.18": "29d34dcc833b99b09f78fa11c66fa3c490c3e37c4f0d754e7b84f7147850190e",
"s390x-unknown-linux-gnu-0.12.18": "ac412f7ab2a096a7302e0ae8828c7ef84db8a1f7ff97acba8ff8987d46d39cec",
"x86_64-apple-darwin-0.12.18": "2e4108f5395397c8bc5d43bf83d3bdbb2d0e92b90d0efa607756be704905fa33",
"x86_64-pc-windows-msvc-0.12.18": "cae6a3bc25239f83dffb467a4b180508d9da23986c04639ebfa44e43e6a84bff",
"x86_64-unknown-linux-gnu-0.12.18": "89eadd7c76fc063887959510d5ba0ab1264dfd5f1143b925ddb73021a40acf16",
"x86_64-unknown-linux-musl-0.12.18": "e38d97460b98ebfd31b197de0fe9fa578add4bc8ba0179b203dd3f87b99f98e6",
"aarch64-apple-darwin-0.12.17": "85f00cbdc6dd3e97eba4c31b4d014375a9fdfe8f570023b84e5102fc3456896b",
"aarch64-pc-windows-msvc-0.12.17": "3e1aa6849d77f0e00dc865e4afab5c5b32de053e21fe35bf5ad5cec3734ec976",
"aarch64-unknown-linux-gnu-0.12.17": "d636d1b678e9e7f367ecb22b46bd1cabbed234d6bc3b4d96365d2b507f72f86c",
"aarch64-unknown-linux-musl-0.12.17": "a6096da273d548cb9f277d237a01ac7344a39ef0f455c0e148e4dc9737c1596b",
"arm-unknown-linux-musleabihf-0.12.17": "16a98a65ef8545f7c32cf717683aac44248369ffaa41c43e665341489359c654",
"armv7-unknown-linux-gnueabihf-0.12.17": "796e101976e18a0f92d90b6f3efd289f77fbc5afd1aaa6fdedd3c84c209eabab",
"armv7-unknown-linux-musleabihf-0.12.17": "421c5f9c53d49088e705e7a64fea147082a2191178ea1d8c51d9ad758ca899f6",
"i686-pc-windows-msvc-0.12.17": "1d3653cb6eafd1e675e979d7cd8eeac1456202f8927a2216419993077a4c473f",
"i686-unknown-linux-gnu-0.12.17": "3faa79a70e2a1aa6eb3cd78eba02263f3e4b17b6be584a01429968f92ff74966",
"i686-unknown-linux-musl-0.12.17": "fc05220cfa1c6585e0e209877c228393b25a96e17cd43028b06566ac894cd078",
"powerpc64le-unknown-linux-gnu-0.12.17": "eb6dbedaaa622af32cba2388e0d2d47e34c8724d4214a129d614b96f071d8e53",
"riscv64gc-unknown-linux-gnu-0.12.17": "65b807b24357133c49d97ca9394ee7e13ca62822e1095376c809654b35f39cf2",
"riscv64gc-unknown-linux-musl-0.12.17": "87c339a735b578f285b961bebdefe0a671f3652477d1e84dc69cd1a829f45e92",
"s390x-unknown-linux-gnu-0.12.17": "d99f69f47fc5e0975d6e7a5745cf2332317015caffb3bb81e5154cc7b66fa77a",
"x86_64-apple-darwin-0.12.17": "8dcf05a8c809bb3c471d2b614788ba27a6e41298fc8c31ac84b5f4339fd468e5",
"x86_64-pc-windows-msvc-0.12.17": "a252121d5b59398fcb137c6ea448176459a44010f33f67e0072305a637119ca7",
"x86_64-unknown-linux-gnu-0.12.17": "fa82fd8dde8e8eefdecada6aa0889666556cfceb690d06e0c3bca49eb3070a63",
"x86_64-unknown-linux-musl-0.12.17": "6401c4665d8fa2a9893e087c91f585430738e3170f5398a1141483efb4a93310",
"aarch64-apple-darwin-0.12.16": "b6e03fae61704b1aa622f12b792a69483e837b83068e44f4fd34f8a07a8f74a3",
"aarch64-pc-windows-msvc-0.12.16": "9977129f89c4036edfcb200d2484755571e51fa74517f02e478c1d7bcc353b2e",
"aarch64-unknown-linux-gnu-0.12.16": "36d913ee9c647481d64f1a0a0485f85ff2feaee605c341fc22e73398f9212c26",
"aarch64-unknown-linux-musl-0.12.16": "5beba1f35c0922fd086cce850ce919e55bc4e873c4fcda891343526afdb4c5b3",
"arm-unknown-linux-musleabihf-0.12.16": "d91fa9dede60e851e4bb3ae8060300042bc6bf924476fae71898d2c08c46a9cf",
"armv7-unknown-linux-gnueabihf-0.12.16": "fbdfca5d4ace4a5abbf343c0f10a0b68c5eac0201073d2a504e32c57c0873669",
"armv7-unknown-linux-musleabihf-0.12.16": "f5a3b6c7fbd4c7ea66cbd704d821ffed0d20abbfa8a12c2e68d6dd22476d308b",
"i686-pc-windows-msvc-0.12.16": "0d4889cc6c4058f4fbc28f6c50ec09b528ef998547cac5c3425e1a0b8169e847",
"i686-unknown-linux-gnu-0.12.16": "0e8743e653ed124c526a9e86ee6a08fa6eee7618a3f12cc9033c74674bd2047f",
"i686-unknown-linux-musl-0.12.16": "f609686cbe67884eeb57daebd58eb0fef35f930dd92fd2c14e931da7515c7454",
"powerpc64le-unknown-linux-gnu-0.12.16": "312dc82f441debff371fe5fc0068b538787678d6d79edc86f028b011920a2f6a",
"riscv64gc-unknown-linux-gnu-0.12.16": "8b0142eee9d291c602218126e3fc558fe9bc1b7c8f1cc0b03dcd8df9f2f218a1",
"riscv64gc-unknown-linux-musl-0.12.16": "188af30f025c35569b302b84793a4c286f6740902885d054917375edbfd0193c",
"s390x-unknown-linux-gnu-0.12.16": "b90cc954c2cd52b695104e215189a0c8d9e6ceaee753c9be1a871bb8d969e9c3",
"x86_64-apple-darwin-0.12.16": "a42bcc9ce97eb8b364d7f162233a9c6b8c0ee25388e551d362809795127e0c31",
"x86_64-pc-windows-msvc-0.12.16": "f730454bf09019754e5e5abd71a8aa18683cb739cba0d9c720bac2e7c901160f",
"x86_64-unknown-linux-gnu-0.12.16": "8e5c6e5523dffc2dcf615bd995554c84c9feb4e577808a3fb8698a639d3f8d9c",
"x86_64-unknown-linux-musl-0.12.16": "a01206ffbd60f3a7ee30949be1863527986f5307494a064042c69ce7e6d44799",
"aarch64-apple-darwin-0.12.15": "dc304b9ed1b24174572290fba60ac3f6fe63c73a671f0439e62a91375841964d",
"aarch64-pc-windows-msvc-0.12.15": "a37c8e96cb1260488c8510b64c848533a3a82a2fdf9e905de7c2700ceebf6437",
"aarch64-unknown-linux-gnu-0.12.15": "0e9a3499b0587d449c9ff684c0160da607826e4af1cee220bc87f378702d3e08",
"aarch64-unknown-linux-musl-0.12.15": "93b801abb146e6431fb0434346a0162e65d3f0d1cd7360144d04c43488fd7f7d",
"arm-unknown-linux-musleabihf-0.12.15": "9b0204dbd368a7a5f84d3ef015684c3b0e830911641ebf4575f44ad4901c1b3e",
"armv7-unknown-linux-gnueabihf-0.12.15": "a0afe9cfc7dc4acc18e613f68c5b010b849323b3a3d6e9311b29d289dc94f95e",
"armv7-unknown-linux-musleabihf-0.12.15": "a113c782e6f96a56f73aba601cde73ddbe877e0a4179eabeb5b6e86be9bb75d9",
"i686-pc-windows-msvc-0.12.15": "cc8b28f77cf19f7ed88569d6d9163e503ebc94e1b70069889852bcf38839c559",
"i686-unknown-linux-gnu-0.12.15": "6fa19118f01ee547d5b9a3f4af389c5c929a34e0074a4313d3cdb3ce9c97fdcd",
"i686-unknown-linux-musl-0.12.15": "b66d6cf7916addeda13fbb61abe003ecc62f048e3a213d6bd2494ca7e8022989",
"powerpc64le-unknown-linux-gnu-0.12.15": "5f49c97ae7ec25c45513466e00a32cacb148f3824367c7e498c0b53a270bc1e2",
"riscv64gc-unknown-linux-gnu-0.12.15": "4c8f75c5969737b67621957010df5337bb721a8d48fdbb1620f5d35c3f1dd268",
"riscv64gc-unknown-linux-musl-0.12.15": "8c03514f57e517eb87a376deb3d6475045f6ce550956c6082910b4a529d08a47",
"s390x-unknown-linux-gnu-0.12.15": "1f5701cb5eedc5a34d3dd5896ca3bf509b15d382b3448f370df46e0a631889c1",
"x86_64-apple-darwin-0.12.15": "e9ca61775532368fe518ab03e7a354c7ecab8ccb3c7d941c775fcc4a362b801b",
"x86_64-pc-windows-msvc-0.12.15": "477bd99a84e34891f2bd4c9152ddeb74e971accccbc59c0f0301f11f08a32d46",
"x86_64-unknown-linux-gnu-0.12.15": "f97935763c04be3e692460a7aaeaaab8fc3b78fcf8b389da820b38ae7423a638",
"x86_64-unknown-linux-musl-0.12.15": "999c0c3da986953e508985c3932d283d2c62eb167b4f8d81e79f565e34104959",
"aarch64-apple-darwin-0.12.14": "dfed5683c5873d65eff8476eb93526059b81e5646a68305b5c94a26b29990894",
"aarch64-pc-windows-msvc-0.12.14": "46b930bdbb338099c7d9da711b751240eb97876eda6a553a2c28323967232041",
"aarch64-unknown-linux-gnu-0.12.14": "7fb91bd5d10529c60723eaec3caf44726f89280e5aeed78af8fc63fcad004c9b",
"aarch64-unknown-linux-musl-0.12.14": "571b5c73c9bcc294f8087f22613edb7c7ceb191f4dbf8cafd3f2ff15e6147d36",
"arm-unknown-linux-musleabihf-0.12.14": "6e0df0e690d5c29ce65ec6962d8b262a93e9951077f05d78943f858e7d6e9185",
"armv7-unknown-linux-gnueabihf-0.12.14": "c20a18bb275a6fc2599bc321d37e52650a449237c6111da203a1d73b45921b25",
"armv7-unknown-linux-musleabihf-0.12.14": "a128725e1e40226a9309d603cbb4c36e272932092a77f4d0478ef2fb8eacaa05",
"i686-pc-windows-msvc-0.12.14": "ddd9afd789c60a38d82f3021239e22daacc67b9ef0719345ee6f0dcc37ab93ae",
"i686-unknown-linux-gnu-0.12.14": "de65ccdb90dd818248161db761ae3b6713b1b3230a1b55068ad327598b3a14b8",
"i686-unknown-linux-musl-0.12.14": "268538a3b90c90f7d68d31ed781f0f2cb8618188019c8bb09ce0e7876bb54829",
"powerpc64le-unknown-linux-gnu-0.12.14": "6a6c2a91d6240700eb36895c3fb0533bd5e9c696a95e0a55f7a7ae844cbde537",
"riscv64gc-unknown-linux-gnu-0.12.14": "df2c854c77b1d32f75ef08282511b050066b3db9d7abc4dc2c23ea26227c6b74",
"riscv64gc-unknown-linux-musl-0.12.14": "c6d0824ebdf23811dfa659148ae2c224b385d07ae1b4c282e5bf6abe3d603a74",
"s390x-unknown-linux-gnu-0.12.14": "e01aec9706c88f93f90409eab42324571e2b2c9c2938aaa266ad048b37c52c6f",
"x86_64-apple-darwin-0.12.14": "e11a70264ceca38e929ecaeed953c323e517af7b960ebf9722d5918e8c7f0375",
"x86_64-pc-windows-msvc-0.12.14": "02cecb254f37f3396da625680796d3990164a590fb5611d46f719ad83e7b9a89",
"x86_64-unknown-linux-gnu-0.12.14": "18ef5c3888ae59828cb13f38d57e9389b8173ecc719eff163bfafc74b38f5936",
"x86_64-unknown-linux-musl-0.12.14": "df163630683e5a2106d3320e2a448fde8eda5e7b9b47f617c5c332769728e735",
"aarch64-apple-darwin-0.12.13": "7e6ddb9316acc00f2296c82ff4d99977870ee34b2f0ddcae9444d714db9364ed",
"aarch64-pc-windows-msvc-0.12.13": "1efb2654b06e7063d4ac1fc9d49a9bda9a6704d82f035b589a2751a592f14151",
"aarch64-unknown-linux-gnu-0.12.13": "2eaa5d94f5db7b3a1a092156b9420459e42ab0217d917fe74a876309cef9b5e9",
"aarch64-unknown-linux-musl-0.12.13": "f44bc1037a17889fe562fffd2002d4ed108e499fbe68b4f022af244dc7b8244f",
"arm-unknown-linux-musleabihf-0.12.13": "2c7644f891edcf1e74a1b9dde96ea4ba00b41301c936c87e843683656703ada2",
"armv7-unknown-linux-gnueabihf-0.12.13": "19252c4d21fce112817b9e07bef6b2e9c90cef80fe82659533105b37a772d067",
"armv7-unknown-linux-musleabihf-0.12.13": "54e2c10e4e6c18a3efbac645ea02d7e6b768ae2f975275595915a7039e802b75",
"i686-pc-windows-msvc-0.12.13": "4ddcdf859d3bd337a156a2fc567e685e4b3d61e07b4a2dbbed7aeb4325e116ac",
"i686-unknown-linux-gnu-0.12.13": "beb56f6eda61bc69a8acc1bca07929365aa5cd2e912e35c35003a45e266d8a0e",
"i686-unknown-linux-musl-0.12.13": "6c93a9703b6145266240cb2aeb31d3574c21b33570fddf92461707b906eb3a65",
"powerpc64le-unknown-linux-gnu-0.12.13": "cd45ac73fc711e717602a4dc0c9e19d9c6563d15b14515a9a5dd49b00172a8b6",
"riscv64gc-unknown-linux-gnu-0.12.13": "ff1fb4d7e4c1d3a4acc6eff69b2530e846964260469df345e0239059517c0a21",
"riscv64gc-unknown-linux-musl-0.12.13": "b88312b410c1183e33ae9fa7738f35b7cd7396b2aa0e82836d7e88dbf23e5fb5",
"s390x-unknown-linux-gnu-0.12.13": "d41e4784c2187c76970690a9e9a288231f5ec8d2160ad8464be74aa9c06717e8",
"x86_64-apple-darwin-0.12.13": "5e287ef61cb6a9b61b3a83fef124fd143e400468a7dac794230147a810e17119",
"x86_64-pc-windows-msvc-0.12.13": "a86c9dc7bad9b03f388583b7187c05fe9951c2e0d392217e8fd43d97787f6ec2",
"x86_64-unknown-linux-gnu-0.12.13": "745765a3b6e360ad76743599ae5c42e9278c7edf8bbff9fc76d05bf2623a04dd",
"x86_64-unknown-linux-musl-0.12.13": "4e2bfd0c9007b1032a50e539e965fd0a6037d87ad93ae1580d220a92d4c94098",
"aarch64-apple-darwin-0.12.12": "46740540b63fdee9a6cb2e19baf3f1f475b850c440a33e63455087a6871263f1",
"aarch64-pc-windows-msvc-0.12.12": "36559da51ecee83b2b1d80aa1a0ede2f80e2d9e5761fffcbb9e9366a7f3d022a",
"aarch64-unknown-linux-gnu-0.12.12": "fe08db50cc1b56cd1da7801065ed1103d27ed3f9571cd122386cfc7faf1b8df5",
"aarch64-unknown-linux-musl-0.12.12": "82e59fff633cbd96fb675f37c7a748c056d909a59ecf476f8ff0e5bee76b9b23",
"arm-unknown-linux-musleabihf-0.12.12": "72ac215cb44636c62de5a672c9ff822acd1ffd90b96f751c359902c8de11c75b",
"armv7-unknown-linux-gnueabihf-0.12.12": "ed00794f3750bcf405556ac28e8aff0480a4e309e4ab1505df9f96b83088b230",
"armv7-unknown-linux-musleabihf-0.12.12": "74220d4b9df5507f527478313f17190cdff1078532efb8547483804372f77f47",
"i686-pc-windows-msvc-0.12.12": "5d6ea94bc2fdbcd39710e0bac00db2a771aae05d09a34387841187958af48362",
"i686-unknown-linux-gnu-0.12.12": "ce4411f863d3bd0cf97699eecebce9331ae72d69cf57735806321bf60b637b03",
"i686-unknown-linux-musl-0.12.12": "b0a733aa67b9ea4d5dd28c1ae2c8393ce1be4b032c3d51642d6b05190f21fb6a",
"powerpc64le-unknown-linux-gnu-0.12.12": "b5d05f6cb74605da9bb371ee9f8128bb8611ba1fab324bd4abc6e70a83abe0c7",
"riscv64gc-unknown-linux-gnu-0.12.12": "7b0b054d9a7d7b2c32e9ca111b271091240c81cb41487bcbe65992a2baca9c97",
"riscv64gc-unknown-linux-musl-0.12.12": "d2324e24ad526bbc45ac8a40f4d846c315efef9d4c91bb25725f29ccf2382b8a",
"s390x-unknown-linux-gnu-0.12.12": "53135d16813f9ad961c809828da06f2339d49510c110668fe2e0353fef46b213",
"x86_64-apple-darwin-0.12.12": "0dc8cd6c961582b0d140b5398f96b23502885277fb3464241456a2435e460dfa",
"x86_64-pc-windows-msvc-0.12.12": "3d54912924c36e862c14f427d04f2ed70a99e8001d1c30caa101f6d5711626d5",
"x86_64-unknown-linux-gnu-0.12.12": "ab9b309d4586403f024e100abaceb396616e178a553e2500c36087d180f09509",
"x86_64-unknown-linux-musl-0.12.12": "0b0bbd7144f91d9b694e29c920fca3a060322bd134e8507e5eb92049a3e2edf0",
"aarch64-apple-darwin-0.12.11": "e01b69ee15e81918d5e8fc9cf39b3db7f59c5576e5e306cd9b7aeb2c7b7321c3",
"aarch64-pc-windows-msvc-0.12.11": "7a70f46305d28a95f913ef2888254a9f9c183a406daeeb8937134afc9ed434d2",
"aarch64-unknown-linux-gnu-0.12.11": "e9933d907fb9cd27d606d819bbded419f2844c0e2efc98225ecfa409288eb28d",
"aarch64-unknown-linux-musl-0.12.11": "de99cafdeb5ee6f61ac3acd6d9dc6a1ef166f9398fa5623c436246ee1ecea099",
"arm-unknown-linux-musleabihf-0.12.11": "dd8576a7194e69861cd9def865f3a26613bb116109f075e64925a38cdd509429",
"armv7-unknown-linux-gnueabihf-0.12.11": "8975dd185f9e34f93733fdcd7ae7ae552ecd7d3bd5792ff06ab3dc104f50e327",
"armv7-unknown-linux-musleabihf-0.12.11": "b1cb2600a61c8d780a7ef365f69f4a336e4657494e13b9a757b4d10bb55d65af",
"i686-pc-windows-msvc-0.12.11": "c5fb5da8a9578ccaf9dadd3622413c347661847ededb4a93d9d3dbf9304a9ea4",
"i686-unknown-linux-gnu-0.12.11": "ab2d67fa9d3cfbdfa616b6e91eda4ae0d159dca09b446226935458f9cd28bd3e",
"i686-unknown-linux-musl-0.12.11": "bc894f6f1c6aa2caef10caa3890948c2fec5159c678bae432c5aab88c2a71961",
"powerpc64le-unknown-linux-gnu-0.12.11": "7d7fccdd92328b3732bffc1ded64d430f8bd7a59dc575e4804256f907f10c957",
"riscv64gc-unknown-linux-gnu-0.12.11": "279a560bb492e92275ab96b1b601fc2a2feec84499d8b67160e07001496602b7",
"riscv64gc-unknown-linux-musl-0.12.11": "f24d2434251e9a9ea4b1dec014e28299a936fc387087ae953677c389b21f09f5",
"s390x-unknown-linux-gnu-0.12.11": "ac48ff502ee64983b904bcbe73559409f9a0ca950c788cd4ea77db510258f233",
"x86_64-apple-darwin-0.12.11": "96d773bf5fda4f9b08c4444847f9183d1c14bc8a28ff9c0490e261a8fc6e5309",
"x86_64-pc-windows-msvc-0.12.11": "e94225dea91e051472847bd6d146d7d66c4f54ffcd1f106678866a99580845f9",
"x86_64-unknown-linux-gnu-0.12.11": "4ae93e0f148a18434cc094072547cec88912fc4a72b984183c7d0d0e9586cb5e",
"x86_64-unknown-linux-musl-0.12.11": "3343303ad6b4f9537ae0abfb36f1926a90c0445ba8f23d0e0a840a66a124cffd",
"aarch64-apple-darwin-0.12.10": "51c6170e8e3a01cef9f33b94f582b7b81ac65046f55d40afb35f9cff5a68c179",
"aarch64-pc-windows-msvc-0.12.10": "ee985c51c0c9c1f82267a5d80f959b34a7ff888c109182bd3b2b35c4661bbcde",
"aarch64-unknown-linux-gnu-0.12.10": "9ff6b9d4665edcdd3a88dcc73cd1eb641754deb927f14e8c62ebfde6bf4f5f5e",
"aarch64-unknown-linux-musl-0.12.10": "3983cb642fae84eab33756109bb266f126eb61763d8d220dd662af589c5b3da5",
"arm-unknown-linux-musleabihf-0.12.10": "984d3539667b2d97d85aa07788f78f3aa87accc9b27c63913c3177d118f5df81",
"armv7-unknown-linux-gnueabihf-0.12.10": "682a52fea5deb07238420d7197e2d7cc10d558872f008a9b6799fb5326c8e420",
"armv7-unknown-linux-musleabihf-0.12.10": "4062b9eb018afdde9b3dfeceabe41aad4cc5ea7fe658b74fda0e8f36decef507",
"i686-pc-windows-msvc-0.12.10": "cbf375fe6bf8a4e9ffb2f09c1ff4f8ed29ba96594a604749f84fa4e08c9a4586",
"i686-unknown-linux-gnu-0.12.10": "d943d0c0af37ad884bef24972753f7c93e5765b458e6492a3eb0c2b855c83a58",
"i686-unknown-linux-musl-0.12.10": "9ab3d4ae061abcb8b000d7b472236f09998ddd466215753fc2eb4cdf372ba147",
"powerpc64le-unknown-linux-gnu-0.12.10": "2e6beb653888d2d2721b46d3d8aa328a2339a6cc20d4df98bbf206e728a92174",
"riscv64gc-unknown-linux-gnu-0.12.10": "38071e8f894acb0629a6f72017489e23642c1acee82953e3060635dd251cba8e",
"riscv64gc-unknown-linux-musl-0.12.10": "268ac2854b3c56370d68e94d819f5a3ee2dd7dfe81b17135d080a3648276d3b7",
"s390x-unknown-linux-gnu-0.12.10": "2192d8fb1d72860e8c0a85ccb074dcd4de0369c9fbd52a9041e16d5ba3f4467f",
"x86_64-apple-darwin-0.12.10": "5296d5aa2b9143360405eea866f8ef4d5dc8986b164eb0dc35e8f876a9304d30",
"x86_64-pc-windows-msvc-0.12.10": "f65744f94072152b1f86ba2aace4d01f1124d9a8ecb235805039e3718c36cac2",
"x86_64-unknown-linux-gnu-0.12.10": "173d95a0c32d18c896c46ba6fafbf3cf9c14ab74b033f81b76c883ef492a976b",
"x86_64-unknown-linux-musl-0.12.10": "848d0e261119e5b8f35db10164635e46a48bec29ceb1f8ec14a6fc76004973ee",
"aarch64-apple-darwin-0.12.9": "301f72afaf54060f92da7016cb0115bd077f43a9c8e39c1d8170a0bac80fd398",
"aarch64-pc-windows-msvc-0.12.9": "d3360363a3cb671f2c854f4ef48cf4a57fe8664f8ec6a248076d68b797a8acc0",
"aarch64-unknown-linux-gnu-0.12.9": "c36fe17937ff6bd16dc42fc13854b5465999fcab2efe0af559381e945e3c6001",
"aarch64-unknown-linux-musl-0.12.9": "7eb9bf48516448c9db6a9e436d8e747ac9c8a9cac74717160a29918249b080a6",
"arm-unknown-linux-musleabihf-0.12.9": "de6f5b904a6735bca2a6061bbc3a3a09718128b806e11981e37019e32292288b",
"armv7-unknown-linux-gnueabihf-0.12.9": "ac24ad959c4dee04c6cf42597a947828f661fda184db5fe82b3e72a07d391316",
"armv7-unknown-linux-musleabihf-0.12.9": "8c33bdfedafc27d73ca4850071383336671b9ce92a36cf53300fff799d8580b3",
"i686-pc-windows-msvc-0.12.9": "62396154da2dc04a9fffb027e75ae3d971ca3ac7d3f0ffa7dd2c27c94798ce3f",
"i686-unknown-linux-gnu-0.12.9": "c3669a2adfd83a9220b1da1ec8f2ef3624eca1ba1db3c45107b455694e9ef6dd",
"i686-unknown-linux-musl-0.12.9": "3c2a21d4dcb08cae133bb4ebd5cf40764bc5f076829fc2eab00df0a50d834eb9",
"powerpc64le-unknown-linux-gnu-0.12.9": "3da749e1a1d6e290811736aecdb13184e4732a07afe0e4162e9163f843f0315d",
"riscv64gc-unknown-linux-gnu-0.12.9": "7fd415b73bd19045e027d099209bb3fc4a59c36ee6d825caf40db2b8e2f3bd0d",
"riscv64gc-unknown-linux-musl-0.12.9": "3d6b761164444e1fe12be08f771583ed495354bcbd73631c65a62ae443d6a06a",
"s390x-unknown-linux-gnu-0.12.9": "d45e862e2001fa8a88e68cf8be91231a14143cdd1ac8351d8d8e4fdf44fbac1e",
"x86_64-apple-darwin-0.12.9": "e1ca175824f1056589ce9908f7631879ebc3c36535b5e63dc06510beb370b4c1",
"x86_64-pc-windows-msvc-0.12.9": "ddbfcee1ac615a0499f6aa97b5ec8ebdf3ee4a7714a48055ec2ba0030e3cf810",
"x86_64-unknown-linux-gnu-0.12.9": "ec7a99cd05e0cd7f80243f135ce1361c76835cb0ee60055d14d20eba8eba1460",
"x86_64-unknown-linux-musl-0.12.9": "aa4b1f8770910f7c7c543c7acc980e4270e52e70750c996acef813ea1c7c2912",
"aarch64-apple-darwin-0.12.8": "8ce083658dbff20143607ca7af8e0c1d64b6fd7bf03a5cdcb62bf3d47d991b5f",
"aarch64-pc-windows-msvc-0.12.8": "84b821c551802c200a32e25f9d1d960ef15e248f54f6a1bd9e1eb62934669da8",
"aarch64-unknown-linux-gnu-0.12.8": "ba8661f4fd207c8e94814191598e619b355ac10d5014e851e21eb800f9ef2b00",
"aarch64-unknown-linux-musl-0.12.8": "975917badc8370163989e5bbe5a7c69bf922d19f8e57cb2652531bbffc935f84",
"arm-unknown-linux-musleabihf-0.12.8": "0e0e733a33e229602c14a5c7af271917ef4b13b8bc50fd774d32bd4b18a09a3b",
"armv7-unknown-linux-gnueabihf-0.12.8": "bc80826f631f8836a974a88b8cf797935bc83f15552828ad5de0195f6246e333",
"armv7-unknown-linux-musleabihf-0.12.8": "794b2099dd9db9c359958fa8fcd0407bf3bc2682e020d40b8d20e046f3490a18",
"i686-pc-windows-msvc-0.12.8": "9b38cad9b06e0a910e606510cdb4ad2c4eb4f320c4f4c4ba90dd13ed1115c5b0",
"i686-unknown-linux-gnu-0.12.8": "739cfea6b2958da57106e6ff1b0f95ecb17522ce84fc8e07c8606b2f427a4e39",
"i686-unknown-linux-musl-0.12.8": "83d712e60c019b58015834804ffe4c9a4cdb7dc90c305be8c7e04bf14194158f",
"powerpc64le-unknown-linux-gnu-0.12.8": "5a39773f28a172d4ab62598306db2010c0e3bf3b278b2684afde86794af8ad71",
"riscv64gc-unknown-linux-gnu-0.12.8": "fd1905fbc62d5fff73994a48cf90149717541a6e30d097aef17626cbc5f8b734",
"riscv64gc-unknown-linux-musl-0.12.8": "1078863595c13c655f847111bd812468e7e6e0cb6b83c1cc6fd4bfc9337030cf",
"s390x-unknown-linux-gnu-0.12.8": "3a3b1fe41dea61afe6af2b8b59529ef2c4712d28dbb942a5e338fc9ff7578384",
"x86_64-apple-darwin-0.12.8": "bfcd4407de99e0a2c1904df0902fa1795653d4edd145358e6561527e746a4f16",
"x86_64-pc-windows-msvc-0.12.8": "e07acf3f8a29fe41f9e04b799c3325cb0e0893836bb222bf102829b45c679ad6",
"x86_64-unknown-linux-gnu-0.12.8": "2e2b37e9811e17675a9e70bed5e1a58fc8c0388be63d751d72cc735188c149ff",
"x86_64-unknown-linux-musl-0.12.8": "6ca4597639c97e921fb915e113061ce8e4a14ead9e42a1ead521dbb0a6763795",
"aarch64-apple-darwin-0.12.7": "127ebdda7ad953cdf198e964b570ea5771b85467ea93eb7cb6d6f8e6f55408f3",
"aarch64-pc-windows-msvc-0.12.7": "1611d0f4be72b0a354ad9a6ae954093dd4c91e93e36b8b490326a05a039ffe14",
"aarch64-unknown-linux-gnu-0.12.7": "66393193038dd7eb108abd7a218d9cec04ac70ab98242b0720fa94de19223b7c",
"aarch64-unknown-linux-musl-0.12.7": "6dcf60e3c085de88ace3671b949ca99f0652be561ff5627f0d21394140f041db",
"arm-unknown-linux-musleabihf-0.12.7": "7716bce33408494d7b46395504b9fc1ea3ea93b7d0e4b77ef15ca7d7e1ae245a",
"armv7-unknown-linux-gnueabihf-0.12.7": "e5b9a25ff397f593e9fff236c4d72ada28aff7da4540868dbca74f391a86d546",
"armv7-unknown-linux-musleabihf-0.12.7": "4b82298033bf6d20ee7c585a5da1448d681945f29b0dae5e73b72f83496f0e61",
"i686-pc-windows-msvc-0.12.7": "b4842ca13ae8ac33879341170eea32df1d9c41d0468a524e73375facddefb4b1",
"i686-unknown-linux-gnu-0.12.7": "edc692ff9b0dc2833b1490a420fac9bdc4c85257b383aff7467cb23a7c1ec16a",
"i686-unknown-linux-musl-0.12.7": "a1cccfea5d8063fd44ef0154691066f0c7607f04236a51360c113e29da3b3fca",
"powerpc64le-unknown-linux-gnu-0.12.7": "cf3d2cb9f156de68e827bed822ce85952c331d739abc0a214bc75f378ef81cb4",
"riscv64gc-unknown-linux-gnu-0.12.7": "0218ed3ecbd7c56e7811b46dce30319cf727f6fbf989080c5eeac1976216f22f",
"riscv64gc-unknown-linux-musl-0.12.7": "5b8d5113a5d0a975dec33f9569237181f06d0d4cffd110e7899321ffe64ca578",
"s390x-unknown-linux-gnu-0.12.7": "afebbf174931be732ed1e372dbdfecc6c053ab4148243196b449c9973adb79c5",
"x86_64-apple-darwin-0.12.7": "06b8ae1da8c2661c5434507a66f8c2b0b835933bf955b5958a9ac357a37d1959",
"x86_64-pc-windows-msvc-0.12.7": "bf1518af459a3915511a11fdc6e2f43ef9a2afa138b9d498eeb9642fe9d85218",
"x86_64-unknown-linux-gnu-0.12.7": "788f18abea7c5f55d6216e4f5613fd89d4d59b631efeec117b2b07fe72f1da21",
"x86_64-unknown-linux-musl-0.12.7": "3d64d44ed67da7908dc7f5c4d64ebb44bad326fa17f8a0a52fc9a7793017bbe1",
"aarch64-apple-darwin-0.12.6": "14b459d51ea2e71eeba28c45a268c922bdf8607fc6455e3f40b4e082895d160d",
"aarch64-pc-windows-msvc-0.12.6": "6dda514fbbe3152d980758e0f6347116060114d7d24932fc0ea5d8063f8b253a",
"aarch64-unknown-linux-gnu-0.12.6": "d58030acd26159499ac82f32da12d1b3c12a3a1bfc414232d9082070c03e128d",
"aarch64-unknown-linux-musl-0.12.6": "3719891de9ab41c878a84331e55826d2a46421976a346a65326513a6795b089a",
"arm-unknown-linux-musleabihf-0.12.6": "917aa56d9318f8ad9509d941625feb49d2a444363c82143b7f79ebef0df7cecc",
"armv7-unknown-linux-gnueabihf-0.12.6": "2bde552a6288852ce4858e740d9434b64cd9edbba1956f6170c43ad93867a5ac",
"armv7-unknown-linux-musleabihf-0.12.6": "ad000efcd6e82ee76f01c523e5fdf267638625307d8d211fd73d6acaee7968e6",
"i686-pc-windows-msvc-0.12.6": "ddec1f1ca7b96fbd3822b5dff3fbade7add64a03afc334e2fd31d4820911f447",
"i686-unknown-linux-gnu-0.12.6": "2c93b0ef748675555a2af0cbc45a51f7b2e7014f9a0e34ae28d092e0293990d8",
"i686-unknown-linux-musl-0.12.6": "3cdda2dd5ad434399cd4788ae70d8057a4549e91f725135c07d2a09a6c4f1c5a",
"powerpc64le-unknown-linux-gnu-0.12.6": "474660a7d36d10ae156e0acfe3d1fac6ce9a684f6d6d92287c370d9b7a2f4173",
"riscv64gc-unknown-linux-gnu-0.12.6": "978541918503866f21863353570c702d981596210bd3b05a816f037a97897f31",
"riscv64gc-unknown-linux-musl-0.12.6": "83357df6b043c3e1f0d8e91cd90ccbe835ecc2f8bf4d6be6cb220b20b8b67a32",
"s390x-unknown-linux-gnu-0.12.6": "05a05615e8227bf89902301ea29a7bf424d8caef8d9dca682c149ad34df2d31a",
"x86_64-apple-darwin-0.12.6": "2a26ea71bbeff1c7e12c2cc40245c96a041deff276bc921e7038e304d5d3e04c",
"x86_64-pc-windows-msvc-0.12.6": "df7cb9f243eae1621400d4fcf5b1b3d90f20e264ece91b64deb3b0078abca6ef",
"x86_64-unknown-linux-gnu-0.12.6": "8681d8921e7d520fb368991dcf5f9c1905b80f5bf2a265a0ed085c8d8e342477",
"x86_64-unknown-linux-musl-0.12.6": "14e4172aace66a475062cebec7ca04f497d5619e95325dfcc9e4447b9c516846",
"aarch64-apple-darwin-0.12.5": "5bb0e5fe008a773c3dbcb97ff79cd89e1241464fe9d2f986d52ad8f1b037bd62",
"aarch64-pc-windows-msvc-0.12.5": "724279317fee6e5fa8ad1908e4eba2bbe764ef1ece5b3f4597927b62b1fe562a",
"aarch64-unknown-linux-gnu-0.12.5": "9bf43b4d1a07665bf64d4c4e710930b382321a785e0eb10aac07f46471f86a31",
"aarch64-unknown-linux-musl-0.12.5": "8767a0e77f2cd45436401b1b42bf7e9ed5a4a91a74a5305d6fe93249d0f6dbc5",
"arm-unknown-linux-musleabihf-0.12.5": "970f86ddcd1373120c1e7ee246b533c2e75366294098e1406f07ecf3bb55d260",
"armv7-unknown-linux-gnueabihf-0.12.5": "63f86f3cd92de223c2680dee5149ed3f317ad7aeac774fd7e6fe1f86f53e85da",
"armv7-unknown-linux-musleabihf-0.12.5": "62f838f29cad6fda061b1566168555978c544a4107697cd1967398b7f8efea84",
"i686-pc-windows-msvc-0.12.5": "a5993a7c2e75b418e60d5ed733204222330085b14e85269545b084c273c1629b",
"i686-unknown-linux-gnu-0.12.5": "4875a06092c3b0aa8ece5265a42b053dfef649adba26434b5e40eeb58c2a2aa5",
"i686-unknown-linux-musl-0.12.5": "b920f32f0910be363f770485117e08494eec0b09abb4f3f9f1f9b9f53a29394c",
"powerpc64le-unknown-linux-gnu-0.12.5": "af3f868fc8af2c3a688b1a202cbed507ec5bb32522876141f1b7f4200ed0395f",
"riscv64gc-unknown-linux-gnu-0.12.5": "2a6fe4a685225082d82f8afba169d038d669f85bf6cff7f5f733079a7b7282d5",
"riscv64gc-unknown-linux-musl-0.12.5": "c7fc653d16f0214eaaf2b3af537ec917af4861e3d00c0f10e0784fe4cbc1dcd6",
"s390x-unknown-linux-gnu-0.12.5": "858d51fd178fe99c69923cef568fbac3f297f3767c0e0d985aa172bc1f3e2274",
"x86_64-apple-darwin-0.12.5": "b3b2137477cf96c9686ebfb71524614cec780c673fd73e59bce099aef02e70e8",
"x86_64-pc-windows-msvc-0.12.5": "4c4d49d8738847d9b71ba319e49a5688c93eac0fe6204b1df24e98528dddf39a",
"x86_64-unknown-linux-gnu-0.12.5": "68a509da24b06b4223a1c0175fb5eb5bc79342b76cbeff0cfe51ac3f5b17b6b2",
"x86_64-unknown-linux-musl-0.12.5": "a4742988791c9aeae68c78150d6cba762062ad2a47e53738c2779d2b596bfcdb",
"aarch64-apple-darwin-0.12.4": "99a913b606194867b43086404412c1afe079547fee72ecfb6af7e7b0dd54b0c6",
"aarch64-pc-windows-msvc-0.12.4": "3290abffee78c30e3113f5113e26684fd057287e89124a588dcdcdd6ceec0fea",
"aarch64-unknown-linux-gnu-0.12.4": "49d881b3403187e1f1789720881e77e4251ad4259d86c4844862657d2a35d13f",
"aarch64-unknown-linux-musl-0.12.4": "04ed16e895b08065720e3d06cde722f0d406b63d116247d5e7776525c41f4972",
"arm-unknown-linux-musleabihf-0.12.4": "9657ea47619bae9097e92a942694c3bbead7bf37c5ccffa6a0f8b3f08a947dba",
"armv7-unknown-linux-gnueabihf-0.12.4": "fd9d223afc79a4d116d48269ea8cdc00cdeb0637d028843910650abc037e7c4f",
"armv7-unknown-linux-musleabihf-0.12.4": "c61f3c109fcb0c9cac2a3c232d50ccd70c422a5d4dae44dab007bdf5c1e64f0d",
"i686-pc-windows-msvc-0.12.4": "06a4948b908ce93af14c140158e15b5247ae6c8f15db50f3e4c6335bfd08b3fd",
"i686-unknown-linux-gnu-0.12.4": "bcf9e594c0867f9bfe91b7979cdac38a86bb9f7136ceba259e727af912127f23",
"i686-unknown-linux-musl-0.12.4": "d4c95044a507046f1ce9efdd00fb6873432a7d582a29d22febad26d92551586a",
"powerpc64le-unknown-linux-gnu-0.12.4": "6028a1744a7c07d789f21cf4c1574bb4bfe40f2980ac411af5bcbaeac32b0094",
"riscv64gc-unknown-linux-gnu-0.12.4": "dca9b15d76b5547987fc6b08fc1ea14e49773d9434b52825c68397c53896a139",
"riscv64gc-unknown-linux-musl-0.12.4": "cc481ddf7f9d09491b83defa9a221e1410f7a4b1ea160687e201815ba1d91a7a",
"s390x-unknown-linux-gnu-0.12.4": "9c6eea6ed43d8753e7eb26489a73ac060012e1a2485992955dd82a3b10b47acb",
"x86_64-apple-darwin-0.12.4": "e603f1eb634ca97a2a125539b983891f53235e901511ed10c32c08c86e253ecd",
"x86_64-pc-windows-msvc-0.12.4": "4f3b7d63cd81fca0da5a655d973d20affca89ce6e5f9a29fd0183cc4204a7639",
"x86_64-unknown-linux-gnu-0.12.4": "c8c60f47e6f88d18dbf6f33d7279fb1fbf7ae76631768152cf5578c3d65729b4",
"x86_64-unknown-linux-musl-0.12.4": "7aef04898775585d636424e52053e5328f2b1779175d5cb47665ff9d7524e8e7",
"aarch64-apple-darwin-0.12.3": "546f7f8a6c70ff13a3a9d2bc958db3427298cebf3e0cb756f9177133b7068843",
"aarch64-pc-windows-msvc-0.12.3": "4343217d668727b8a8eb5cad92389a1d2eeead93c89940d1b955ba1bb15462eb",
"aarch64-unknown-linux-gnu-0.12.3": "bb66cb52e7b1823aed1183630d8d8e5c958840d584a4c55ec10a4cfc168dcca2",
"aarch64-unknown-linux-musl-0.12.3": "fa513fca1eb2913334c944fe9adbdd410274a1cbe8dd05d03699a9eb85311d4e",
"arm-unknown-linux-musleabihf-0.12.3": "44c4c43969c0e58945c7954b033a99916355acef558decf6a9a0b090a6e0465b",
"armv7-unknown-linux-gnueabihf-0.12.3": "f572e3b8496f2069e102fd02fb346d7b2fbe0cba6edf0013575cfe79322e4ad0",
"armv7-unknown-linux-musleabihf-0.12.3": "771c35fc4de5ea1e115ddab3147439498f30572be38fa2ff5c2dabb2258faa90",
"i686-pc-windows-msvc-0.12.3": "8b1e428b1f5acfd5ba6bf490a7205b4f9149a27a0d9cbd1487243fd8e3d8a80b",
"i686-unknown-linux-gnu-0.12.3": "0205eb65e8b39419616acbdad139718b59ea2a17869dea49bf7a5e3cf5aae1eb",
"i686-unknown-linux-musl-0.12.3": "981619b5cf63a1bbab8eaf011aaac9d511db6ec0ac2618d59e36b9ccd95e8f99",
"powerpc64le-unknown-linux-gnu-0.12.3": "bff188fcf2d867c5595f8db6061a39e54752ab213eaefc14287f37e85afe9ead",
"riscv64gc-unknown-linux-gnu-0.12.3": "84d0d7d1359c432545b5717b5d7ba97465d694e13bd80646e04769b54890037d",
"riscv64gc-unknown-linux-musl-0.12.3": "1b3ee81808a381bb0a83deb697c9612a5a48c47b9d98f6043c924600f2bf1321",
"s390x-unknown-linux-gnu-0.12.3": "c6d0d036c4250bd28554c78b411b711ff9367a7dd12f241a27f5b7d43f549ae3",
"x86_64-apple-darwin-0.12.3": "4c9f52262a14da336e4a42ed24992d12d0c956acde87619e4611d321dffa602b",
"x86_64-pc-windows-msvc-0.12.3": "b23350c79e8ad0192b8124af13a0f17e8d4e4549524785e1aef389ae5a06990e",
"x86_64-unknown-linux-gnu-0.12.3": "600cf9a742aca00d292673b16b5acffaa7b8c269a364ad0c2e79498dcb1fe101",
"x86_64-unknown-linux-musl-0.12.3": "0643b9fb8c9fb27458e709ce6ff939695013c41975ff7b02d3f3b138d8d4bdb3",
"aarch64-apple-darwin-0.12.2": "fa909fea3bc06f460db79017030a221fdbc43ec4478f089cb554d8335c090817",
"aarch64-pc-windows-msvc-0.12.2": "dccc2bb7724c015f2a82467dee5bf4b2353a3fcdbfdfb30e0f93cdf5db2dd1df",
"aarch64-unknown-linux-gnu-0.12.2": "19b7f1f66895261fbaa07f8ea91da0f86337ad4e47efa594e87641c1718ffc52",
"aarch64-unknown-linux-musl-0.12.2": "73b87f0d65d7dfcd39753a51ce65592360b02c29f8e1bc2c85cc4190fe914499",
"arm-unknown-linux-musleabihf-0.12.2": "4e27dfadda93c82dd85c2de29b7fd6417ea74c430bfbc52833ea9580c8c16d04",
"armv7-unknown-linux-gnueabihf-0.12.2": "0536e78e9796394fa135102c7500f24a291aaf9fbf129b70add472b6dcf42a4b",
"armv7-unknown-linux-musleabihf-0.12.2": "5e10ffda5760511a16c0d5a9b2c28ebaed864dfa34e73fddcf0f600cf125cfee",
"i686-pc-windows-msvc-0.12.2": "e2037092f25370ecbd8827b1d91650a9fbf002548ae647aea39073c6bbe45384",
"i686-unknown-linux-gnu-0.12.2": "659b83b91a329a6bf5fbb412ea61262640b9bf15f07b6208334bd7a379c0dbf0",
"i686-unknown-linux-musl-0.12.2": "b57cc4b2bd5e1cc20253222add0d377a5398c2bafc93611bd2a4438ac8e21f9c",
"powerpc64le-unknown-linux-gnu-0.12.2": "0e135c0fddbd303297a847016ea3cb60fdacebed20bd87200a3537cfb67d4d46",
"riscv64gc-unknown-linux-gnu-0.12.2": "cc348cecc84695394721e2fc1e0c4fd5b9a052d4eeeba57b194929c719d5681e",
"riscv64gc-unknown-linux-musl-0.12.2": "a0e9a9d99e0f2cc39b645aecdabe27e308074b1d3dc2afdd507433528c97e701",
"s390x-unknown-linux-gnu-0.12.2": "78797ad74c948950181b607be0989b1d5926a2096d81def4238192c95ff47aeb",
"x86_64-apple-darwin-0.12.2": "a6e6506a9109801222d65d17461abf4ed13bdecc5d2b13af0495418a82972c6b",
"x86_64-pc-windows-msvc-0.12.2": "01442d8ce5c7124151a73e697c836d252c6da853c18c73206d3cc4c2378a91d2",
"x86_64-unknown-linux-gnu-0.12.2": "d66e96b5f1ca3b99806eee283a8125d33a0bd669e6e6d9bc4ab7ffda63c41bf4",
"x86_64-unknown-linux-musl-0.12.2": "2dbe8209c9592f6d1009b8565f4bf29813427907bee2236023c013101ede343f",
"aarch64-apple-darwin-0.12.1": "77d2906988e8074fd43f2f329ec452ebbf9b0c257ba1c66451c71de70a6baf42",
"aarch64-pc-windows-msvc-0.12.1": "9bc7c18e616230fa2dc6fb24bc3afde18a95c2b5c9433de747e9502c66041568",
"aarch64-unknown-linux-gnu-0.12.1": "769d373e146692c639b5fbaae33b331c297a32e03d30448772051902df52bbf4",
"aarch64-unknown-linux-musl-0.12.1": "ce218dad9eb48a39dd86160bec6291fac7275f20a9cabcc4bc10dd2c757208f8",
"arm-unknown-linux-musleabihf-0.12.1": "fba356be49629c5e0c0270fb3c55def0d83a7abe014ea857b13d14e0cbeabbbc",
"armv7-unknown-linux-gnueabihf-0.12.1": "bfca453bdf4ea6ce149f9d5be0589fc2e17a22d434c66c2f374a802dabb13cb5",
"armv7-unknown-linux-musleabihf-0.12.1": "0cb3e6ccfedce3cf3f5f95e3a5ddb32977f54025ea74f91993072ebcf91f9df2",
"i686-pc-windows-msvc-0.12.1": "9b51c33d307a8ab9e9dfd88d4ae1491761f63de0bffa3cec96bec536491c9b97",
"i686-unknown-linux-gnu-0.12.1": "4c6f5d77215cf40ddd388215dfdac46471d074aeba62163f3e7fab6892645f95",
"i686-unknown-linux-musl-0.12.1": "be4d42582284456dae2ff4bf622c4169d1e6b8d1cd0e516658d6ba01f2a57dfa",
"powerpc64le-unknown-linux-gnu-0.12.1": "9f3ebd5e5ce0f7a212a8d1326995612896cdcaa4ef571194d3b061a2d0d4d92e",
"riscv64gc-unknown-linux-gnu-0.12.1": "dda637a8f2f11b73a3e8da35c7909772beb49799aea61bacb04c2e7d2455b939",
"riscv64gc-unknown-linux-musl-0.12.1": "31806babab570f6cab8bfdaaaf6890360f1efa4e122372ad73193b70326b8f83",
"s390x-unknown-linux-gnu-0.12.1": "58132e9675680eb952b9794206a7ee98b528c1e664e6f80f55fb4972ffb7f269",
"x86_64-apple-darwin-0.12.1": "69d9f9a00337f25a50dcb13882052da08b8469bac11091c98c5694c3c6721467",
"x86_64-pc-windows-msvc-0.12.1": "8fcb0cb46e1229065e344758980924e569bef5882ef45f46fada8fb24e06b74a",
"x86_64-unknown-linux-gnu-0.12.1": "90b2f223fb69d19db49e117da601f64978593417988530aa733d456141b4bcbb",
"x86_64-unknown-linux-musl-0.12.1": "47823f814693bab8623308341369190de30b5c621eec5b1ee20352eae8c7982c",
"aarch64-apple-darwin-0.12.0": "2b9e582af54f84fa50c115427451a6c13e80f43b52f8282b8af5791077317bbf",
"aarch64-pc-windows-msvc-0.12.0": "60c12dc34a8ff0269d7744a3a94506fa8f140618a82194b7bf7834fa789a765b",
"aarch64-unknown-linux-gnu-0.12.0": "2c5d6e3092cc5223b10ff403880cc75121bf64e84644e7a0c69f643b0d89ac95",
"aarch64-unknown-linux-musl-0.12.0": "936fbbf20188a2b1c66bce3dca3f4009a5c9cdf12bb2bbd084e71926f75d6a15",
"arm-unknown-linux-musleabihf-0.12.0": "b5879d87fe1fd7a3c8fb27346339222acc5628000002024e7f4d114f1e67a55d",
"armv7-unknown-linux-gnueabihf-0.12.0": "a84cc572bf83d82c9fb6ce6aaed37da98789420a84f6f754b80ba519d8683345",
"armv7-unknown-linux-musleabihf-0.12.0": "d4a3383585057824e16fa7f0b24e9f0fecf4b37d29e6d4c7f26b76a5959116e3",
"i686-pc-windows-msvc-0.12.0": "4b7f9319eeb79a8e6204952742ac5ef6a56a096dc9438f416bfa60a374d6e94d",
"i686-unknown-linux-gnu-0.12.0": "9399d51a33779007692e84e0395a78af7adfd21f2cc10da16ea2c9b6ad7dc260",
"i686-unknown-linux-musl-0.12.0": "7a1994b07077bd67ef76dab2107dfad576436951993969a93067f3217f7fa1fb",
"powerpc64le-unknown-linux-gnu-0.12.0": "9a4a9b50a27111545b16821449f79fa646bad4b14f0811d6f70ad77f627983a2",
"riscv64gc-unknown-linux-gnu-0.12.0": "a55f970e88e7acb73a21a9efe892caff40e1a7b928770a2b844fdd7d74d8070e",
"riscv64gc-unknown-linux-musl-0.12.0": "01253909dec1d5cdd836f52ed70a2fc1a7017ec723a724b7315b55f2025728a1",
"s390x-unknown-linux-gnu-0.12.0": "3737b6d3fe7100ade46df0aae3d59564e7bbbb2fcb926186209e103e942535ab",
"x86_64-apple-darwin-0.12.0": "d41593beaefc54bab7d062af0ef6ca093bfb81d001d58ebbef39e44423f9c496",
"x86_64-pc-windows-msvc-0.12.0": "68200e25de594df92387186bbfb9d9df606ec1d87efaa0ae0c7f690970e53db6",
"x86_64-unknown-linux-gnu-0.12.0": "eaf842262aa1c418d8ecc5605f02ee1ebfd369124fa48548e85f9481a47831a9",
"x86_64-unknown-linux-musl-0.12.0": "3340a9d8cffc4d801bc1a7459ebfaf5790c79400720d9b6963d806f058526684",
"aarch64-apple-darwin-0.11.33": "d75e3d2bfc203d17388edaabd3aa37958edbcbfc36219e3ee0d31bb080b4baa2",
"aarch64-pc-windows-msvc-0.11.33": "6eb261d3ad61b35e2a6cfd997b296b908ff74d6199717eca81c3c73e1df7fbc7",
"aarch64-unknown-linux-gnu-0.11.33": "9ed88a9a42de3102f9704d021ab186fdf8a69a7ad9a1d3f3486ac6b1e55d6141",
"aarch64-unknown-linux-musl-0.11.33": "e256e5cf23f8c2e7d4d83f029acd662cbe7275ff24268ce1d6d2ba9016855268",
"arm-unknown-linux-musleabihf-0.11.33": "8c973de331a13f83a1b9bc358b6e7bfa5e5e1f015ff93545dc04839c868e20fe",
"armv7-unknown-linux-gnueabihf-0.11.33": "5446f812e7f5512198adaf60d2c66672a41d9676e86686819222baef021bce5b",
"armv7-unknown-linux-musleabihf-0.11.33": "9e0f6904f62997e34ee8795d615ba2974f31b0461674572d05859ba0b9402290",
"i686-pc-windows-msvc-0.11.33": "10b09a49823dd561bb4ececee1eea2c29cb58982f7253865ec27d23fd131daa7",
"i686-unknown-linux-gnu-0.11.33": "b5b82a4eedf863f855acba77bb51fc7c1f399b276fdbfdff63edf35bb2a2fdfb",
"i686-unknown-linux-musl-0.11.33": "af050631909811e945a9a8b087cc071038bfe25cfa5ff0b7afd17fb468522f43",
"powerpc64le-unknown-linux-gnu-0.11.33": "eee721adf229681b98cdd868d4991886bd91527ecbdb6fa778feb79f46d4be75",
"riscv64gc-unknown-linux-gnu-0.11.33": "bbb1fc2e25beb8bf0ee4342e70bb0caacb74a7503a02e04cb009aff28a182cfd",
"riscv64gc-unknown-linux-musl-0.11.33": "ff4d248fff98c1c6ea12088ae002c07b861278bfc2c41e31ac0ecc1795ddb2f0",
"s390x-unknown-linux-gnu-0.11.33": "bbb4740bd2596d2da979ad721258761fa0d4c5bb6ed151356c2146c150edfd21",
"x86_64-apple-darwin-0.11.33": "f1b919f740bd6be1d014ff58c4271b0779a32198adfb19ad9c5d1c4d9b2b4301",
"x86_64-pc-windows-msvc-0.11.33": "c253ce868ad48d29327b661452ce184c9e333e6d6f5bc8d6fcfbf4dd52b83442",
"x86_64-unknown-linux-gnu-0.11.33": "aa9fca823c03289fb6e3460b3dc864f3ea895cafaf9b99247701a67b17d1b018",
"x86_64-unknown-linux-musl-0.11.33": "3e95b84d8a8b3390c91584d4fd0c4d326e951da2b8fb15a76719368af2795424",
"aarch64-apple-darwin-0.11.32": "ed336d0ba49db8ef89b2b41fffa372ce63bd032f22a56f001c265891aec32829",
"aarch64-pc-windows-msvc-0.11.32": "a7427ea0440bb826b6716d1837ff3d173b8e7d496cb09ee8f456b4e023a2fdcd",
"aarch64-unknown-linux-gnu-0.11.32": "4d4fa08d95b06642e5800df6a22bd71455f23f988269e18da2847971d8c0bf31",
"aarch64-unknown-linux-musl-0.11.32": "d70cdae687feb6aad9a09fe8d686df8c8efaf69a1007fa581379a2025adc10a5",
"arm-unknown-linux-musleabihf-0.11.32": "43b1c42483d15e94747699b5f718e829144d2b1b117e1c1658742e73d05527a3",
"armv7-unknown-linux-gnueabihf-0.11.32": "593e0f6b92cef908b23e3e3e0da2fd8ae24392afdb70eed05651869fea4a1b02",
"armv7-unknown-linux-musleabihf-0.11.32": "cc169fc42b63970cb0cc10a1658c9833e79a5bfde8915ec5f6f5316d9e0cb95f",
"i686-pc-windows-msvc-0.11.32": "e54e814a3963af3af607940f142169312d7550d44db8e2daa2bf6c524554ac3c",
"i686-unknown-linux-gnu-0.11.32": "d4c53923c44dd060a42dbc6b88e349c86676d779b01603329d8c6b8f916e74cd",
"i686-unknown-linux-musl-0.11.32": "7704bf0270e1ef8421608c585e8016411a625314125fce473e01446fdcb1fcf3",
"powerpc64le-unknown-linux-gnu-0.11.32": "0afff437b499f5919045fd0095b52dec18d818771f9a6bd0be0ff027b427fb16",
"riscv64gc-unknown-linux-gnu-0.11.32": "f10954d2263d407f6ffa6bfdd458d0fc0918f097f851ca3cf4907d4f7ebf2dae",
"riscv64gc-unknown-linux-musl-0.11.32": "3c58fc5e82589a77b2409a6c308f1a55361c29130cb3ff239e850d413433f97f",
"s390x-unknown-linux-gnu-0.11.32": "9922ba31cd582f4d762ac88a3cfdf339be599063c689c64c36916f04139ed43d",
"x86_64-apple-darwin-0.11.32": "77f5ca26c0de20e992a3677a174fe1121ee25c36f9b1434a863f75bf077a05eb",
"x86_64-pc-windows-msvc-0.11.32": "acfde570451cfdb8689fa159a138ee805ba4e241c466432750302c86254b0984",
"x86_64-unknown-linux-gnu-0.11.32": "aab924fd522efd06f1c5f3b93a243864fc453132c94b2dc49f1371b528a4b967",
"x86_64-unknown-linux-musl-0.11.32": "1fd052f196108d87e61fc3d98fe06b4ec758c9a1eb1466a6fd1a436fe45885f2",
"aarch64-apple-darwin-0.11.31": "b2b93e82a6786f9c7cb89fd4ca0e859a147b292ae8f6f95784f9742f0efec39e",
"aarch64-pc-windows-msvc-0.11.31": "060da44c6474680ce9ed31f866a496cb06979dbea86de8fe24e0f22c48ac992b",
"aarch64-unknown-linux-gnu-0.11.31": "d74f23949fd07be4970f293d06ca99d87cd2a78a341c3d7b7fc0df7bc2d8a145",
"aarch64-unknown-linux-musl-0.11.31": "49cb5ffce40cc9c85355caa8104f7b61c40a8daac7334f4bc841cad1a7bb359e",
"arm-unknown-linux-musleabihf-0.11.31": "0f71f9f2b37d1f82dd225662b3ecb10c3ff114a5828819173015dbc86d2fa0dd",
"armv7-unknown-linux-gnueabihf-0.11.31": "de23124095c4df154d3807495b59f1985d8d9460bd70d3de61fef2034756bd61",
"armv7-unknown-linux-musleabihf-0.11.31": "9cb5373c1c2e6939077dcc60723a79dc348dd3c9942f2559d19696d16ac34990",
"i686-pc-windows-msvc-0.11.31": "4b4d07862b81275ea1a507d5e80774b0f38502493f854cbb585a987c0155d627",
"i686-unknown-linux-gnu-0.11.31": "85c71ad3f7c189e77bef0d94bcc3c1cbf8792695efe616dec86a389fbb1ee72b",
"i686-unknown-linux-musl-0.11.31": "160a9e19934879492f5b92c8eb132b39ee19858a406c9f3224c05c7b7cd70e59",
"powerpc64le-unknown-linux-gnu-0.11.31": "43e21695092a3c58aa3d364c139bbeab838baba662f0e9f37aa78e52305289e3",
"riscv64gc-unknown-linux-gnu-0.11.31": "7fa2c496e1ca94c7bcfcc9361f7928c4126d63fc4588dee4c8a2465332b60636",
"riscv64gc-unknown-linux-musl-0.11.31": "b300fe07dd1fb98e8608277d7b822ff637e25ee839674645f7ddcbc42199a39b",
"s390x-unknown-linux-gnu-0.11.31": "42114face40b846720980dc3f6e2c1b4676d8bf56c8c551586b249be9137cb84",
"x86_64-apple-darwin-0.11.31": "33ee6bd62b57fcd77a499deb54e4432dc1e1a2f3d34930ba987ad8b43f9c7bc7",
"x86_64-pc-windows-msvc-0.11.31": "410c2fd3126ff621c9450a21cfc200002c7540dc48d130069a8f619cdb0a811b",
"x86_64-unknown-linux-gnu-0.11.31": "8cc1cd82d434ec565376f98bd938d4b715b5791a80ff2d3aa78821cf85091b4b",
"x86_64-unknown-linux-musl-0.11.31": "89048b7e30a6c459fa7e8f2e91cfdc413dc004dcbddc6c2af5e09df123e3246d",
"aarch64-apple-darwin-0.11.30": "9bed3567d496d8dab84ecf7a1247551ac94ef1baaebb7b65df008dd93e9dc357",
"aarch64-pc-windows-msvc-0.11.30": "0edc44e7f23668bce7985facd96b2fe04a4d8ea8edfc7e53294afd8993e960fc",
"aarch64-unknown-linux-gnu-0.11.30": "8c11d90f5f66d232930cf8ae3a085c39877690d409e10878234802b028b20e2a",
"aarch64-unknown-linux-musl-0.11.30": "7562a40e4e08b1bfd566bd6aeca55a16ee5ac45211554543e8cdb3c395b47416",
"arm-unknown-linux-musleabihf-0.11.30": "58967610a6f14f2785e3be3b1b47553b5ff92c3d51bc0f1d9d90d83dc224f0db",
"armv7-unknown-linux-gnueabihf-0.11.30": "8e2d2ab63a37af47c1b4126c5871ee191b983a10670af91d8ef0bee198292931",
"armv7-unknown-linux-musleabihf-0.11.30": "33b515887e04c79d4d5de5967b8278b9dac1853cc8d657bf77052bab16a6629f",
"i686-pc-windows-msvc-0.11.30": "8ceaa74889e30d64adf55d7ad7acce6ed101fb036155bf2d7613715c9d9533c1",
"i686-unknown-linux-gnu-0.11.30": "e53221602d83b03c63a5e262bfcbf0f5f6e5972e93847498418bdb42005f04e7",
"i686-unknown-linux-musl-0.11.30": "f66898852a6a745a8c0ab0a26e046857ee77c9f24e4a3b64cb078753490b3978",
"powerpc64le-unknown-linux-gnu-0.11.30": "81a71fa495239c372b3b0c1bb2509167da00cf307323a2d2a39cbc92f0c6d5d1",
"riscv64gc-unknown-linux-gnu-0.11.30": "e2d65822d8f668f6d055679dba4937e386764b9561f9d1269d3bc9e7140f7491",
"riscv64gc-unknown-linux-musl-0.11.30": "3d75e26ace5e679e5de26106a71ee775af5c7f7ad872cd04f33b4d53c523a707",
"s390x-unknown-linux-gnu-0.11.30": "a30f253aca1291dbcdbb7f76c754235f268ff84d106a595f7d1abf337ab22ac1",
"x86_64-apple-darwin-0.11.30": "ce285fbbfbe294b1e1bc6c87c8b59d9622b85383b88b2b132a2df5c73e83d7c1",
"x86_64-pc-windows-msvc-0.11.30": "be8d78c992312212e5cc05e9f9de3fa996db73b7c86a186dfb9231eb9f91d33e",
"x86_64-unknown-linux-gnu-0.11.30": "04bc7d180d6138bf6dc08387acf507a823f397a98fea55da36b0ccc7fbce3b68",
"x86_64-unknown-linux-musl-0.11.30": "023fdd3b59fccfb67b365c69fb34182aaaed1d685d367a57571e3c1468a4c70c",
"aarch64-apple-darwin-0.11.29": "61c04acc52a33ef0f331e494bdfbedcdb6c26c6970c022ed3699e5860f8930e3",
"aarch64-pc-windows-msvc-0.11.29": "55b597ae81bc29531a7c352a1431a8a73cc2755d7a5b9ec454580cbe02e5154f",
"aarch64-unknown-linux-gnu-0.11.29": "94500fb064ae3c971a873cba64d94694c50677e0a4dbf78735c80509e7429919",
"aarch64-unknown-linux-musl-0.11.29": "593d79a797ece3f1dfaaf3e0a973263422a135d9262c7dbc6cd75d9c11acc0b4",
"arm-unknown-linux-musleabihf-0.11.29": "b160d7eb7dc45af378b3c9dd2cd6b07d64c65b509f2da673434e8e5dc996e5b1",
"armv7-unknown-linux-gnueabihf-0.11.29": "7b5717ae304fbb1e94104699fb8c08b32d1537fedc90dd8fcf87768d818951ed",
"armv7-unknown-linux-musleabihf-0.11.29": "bfd05286a80b39bd4708bbbb4450fe09f07fea86eea60d31ea2de0b5e816ef54",
"i686-pc-windows-msvc-0.11.29": "c173af6f6e125d65214b55d6b75fcf1a32d5e1c3a656938740fe0b2379cd4bcc",
"i686-unknown-linux-gnu-0.11.29": "c62af324951ae6f31f9453280e077176c96b6e31897d8133c00411a91a20878f",
"i686-unknown-linux-musl-0.11.29": "368dd75d030cae0512631ba0d50604e8471275ec2d9f02836edb91e4c82ad36a",
"powerpc64le-unknown-linux-gnu-0.11.29": "641b15637de9fedc7e738b0e4716b2233c792ba6dca722ba0484381749e1a9fd",
"riscv64gc-unknown-linux-gnu-0.11.29": "5c1229cc0309ebc6872ee847b8fc75564b3b7688edeb09e19427203e2dbc0ea7",
"riscv64gc-unknown-linux-musl-0.11.29": "d4708d913ba88fad9fe1d81da3e13aecadde7a3190cc095a7f2af2fa5c8caa8f",
"s390x-unknown-linux-gnu-0.11.29": "fa029183f550a3b00b89c06529fabfa11e0c69c097ccd397a8e7eae46f397348",
"x86_64-apple-darwin-0.11.29": "c4c4de482da9ccdd076dc4fb5cfe7b740609029385c72f58606be3153602387d",
"x86_64-pc-windows-msvc-0.11.29": "a047d55651bc3e0ca24595b25ec4cfcb10f9dca9fb56514e661269b37d4fae68",
"x86_64-unknown-linux-gnu-0.11.29": "04f8b82f5d47f0512dcd32c67a4a6f16a0ea27c81537c338fd0ad6b23cebe829",
"x86_64-unknown-linux-musl-0.11.29": "46711858adb2a3acaa9cee00f9060688ad1fd5706aecc005b96a6a7f285a00b7",
"aarch64-apple-darwin-0.11.28": "33540eb7c883ab857eff79bd5ac2aa31fe27b595abecb4a9c003a2c998447232",
"aarch64-pc-windows-msvc-0.11.28": "3248109afad3ec59baad299d324ff53de17e2d9a3b3e21580ffd26744b11e036",
"aarch64-unknown-linux-gnu-0.11.28": "03e9fe0a81b0718d0bc84625de3885df6cc3f89a8b6af6121d6b9f6113fb6533",
"aarch64-unknown-linux-musl-0.11.28": "da10cdfa7d92212b7acb62021a0fd61bcf8580c58c3632ec915d10c3a1a7906b",
"arm-unknown-linux-musleabihf-0.11.28": "955f9697d4781cf4dfc62d9442a49f3e57861f19405a981ffe9fdc0d18e0a31a",
"armv7-unknown-linux-gnueabihf-0.11.28": "b7cddaad27cd531096e88e64de863f7e37c6fedde11c97595060e6503544d120",
"armv7-unknown-linux-musleabihf-0.11.28": "eb00e0f246d278133df6a55b5d3534a49f051a7dfc276f640b66504c091167f6",
"i686-pc-windows-msvc-0.11.28": "01975deb06072edfc1f18435c25737d8d378dc849b918cd580768ab3b7641e85",
"i686-unknown-linux-gnu-0.11.28": "f8d01e918dd4d5eabdd4caee78e8adbc3993a70f3b82395fa6b23fcf791925d9",
"i686-unknown-linux-musl-0.11.28": "c869415e44e13000d9daae15cec7bcfaf0735915a8d6e66402d459f6bed35710",
"powerpc64le-unknown-linux-gnu-0.11.28": "b634b6f26a036d112914c2d6d7ae1944bf8f4a6dfed6e19a22b35e5d91f168fb",
"riscv64gc-unknown-linux-gnu-0.11.28": "be7473dc29ee88bd260e30642faa5ba6dccd7d4493012077873b293c377ab546",
"riscv64gc-unknown-linux-musl-0.11.28": "4a9e553d8a62c42600d5c2874b7c2f728c03d4310d72ed7351edbee8ed6a71b4",
"s390x-unknown-linux-gnu-0.11.28": "f5ed9d2aed566e11ffc3f1f7ab5b4049dfbfcb04c326ce2ed5bbf42069d62b27",
"x86_64-apple-darwin-0.11.28": "2ad79983127ffca7d77b77ce6a24278d7e4f7b817a1acf72fea5f8124b4aac5e",
"x86_64-pc-windows-msvc-0.11.28": "0a23463216d09c6a72ff80ef5dc5a795f07dc1575cb84d24596c2f124a441b7b",
"x86_64-unknown-linux-gnu-0.11.28": "e490a6464492183c5d4534a5527fb4440f7f2bb2f228162ad7e4afe076dc0224",
"x86_64-unknown-linux-musl-0.11.28": "f02146b371c35c287d860f003ece7345c86e358a3fd70a9b63700cd141ee7fb4",
"aarch64-apple-darwin-0.11.27": "34e63cc0de0aebbc8d424767c588c31b685479f045f9ced9e5ef43ff9e0e8d63",
"aarch64-pc-windows-msvc-0.11.27": "7566a80fe96ee84e6938621a1b704f44b0db546672bf43025905784b2507b7fe",
"aarch64-unknown-linux-gnu-0.11.27": "321580b9a7069d0cdbd8db9482a5fb62b4f1285110f847746e3b495408e3a08c",
"aarch64-unknown-linux-musl-0.11.27": "b0b1909a7e5caf2ec0cbe2649f5171050c26d85efb65d9d4de2cfe754dc14ea3",
"arm-unknown-linux-musleabihf-0.11.27": "d2a165d17814b88d0190ae69bca9877261d26cac79aba3d27d343a56a7ac47ba",
"armv7-unknown-linux-gnueabihf-0.11.27": "b54d68117ca6f9ba451537acf89ed5c6723bcd08a2d33e21a543659fce31cfd8",
"armv7-unknown-linux-musleabihf-0.11.27": "ecdc47f7fbb3eed8081f16ea24d61e9ae562c3a0286eb75a9633ebd75f6ff0ab",
"i686-pc-windows-msvc-0.11.27": "479fa122a5a332b1bb09a877d7fa1cc2215a951d2af0af966336a640ae9cc568",
"i686-unknown-linux-gnu-0.11.27": "9add1a8c71bbbbe9058c56ab37c7a423baa4dcdcda64194a4e4f588f323f38da",
"i686-unknown-linux-musl-0.11.27": "377d0e1a5a34fc66e7e060adefaf4f141882460e84e76e7a8e9943f8d6e933d8",
"powerpc64le-unknown-linux-gnu-0.11.27": "f7673c8308b4f7df79b4dd3771dc43d4140d44439f500f82168121bda1eb12f4",
"riscv64gc-unknown-linux-gnu-0.11.27": "ad677746993287a092e3d32748b24751098638bc1188d4340f8d47583f0ac1ee",
"riscv64gc-unknown-linux-musl-0.11.27": "7fee728248d487de1b76aa31882319fec8ee117d5128cfd1e1fd78ab2f77184b",
"s390x-unknown-linux-gnu-0.11.27": "2a984c393b494bfef78f58770e09295fbebe33ec88eede32f6b59df2a8ac2995",
"x86_64-apple-darwin-0.11.27": "9f00047455b2a9e81f282297fca39cdd6cd5761a6b0ce75e2d7698744c59e1af",
"x86_64-pc-windows-msvc-0.11.27": "b7e32288ce0e289dbe94d2cac7adbb008f74f0e038542a2d9969dd50eb7056ee",
"x86_64-unknown-linux-gnu-0.11.27": "0f4088a04ac92e4c52b4b76759d227a1047355e0ce1dd57cd738a6dec5966bd9",
"x86_64-unknown-linux-musl-0.11.27": "5d5594af1530c7c31e46a8cc0a35ceb4d28f3890049efe2149ac53c9ad121493",
"aarch64-apple-darwin-0.11.26": "8f7fbf1708399b921857bce71e1d60f0d3ccf52a30caebc1c1a2f175dce13ab6",
"aarch64-pc-windows-msvc-0.11.26": "98246149741f558e25e45ecf2b0b20f34de0634269f2bf0dcb4012d4b6ba289a",
"aarch64-unknown-linux-gnu-0.11.26": "befa1a59c91e96eb601b0fd9a97c03dd666f17baba644b2b4db9c59a767e387e",
"aarch64-unknown-linux-musl-0.11.26": "47418cfdb34b1ca42e503da72631ac8c475602e2411ac6c39aa84c2373fe6324",
"arm-unknown-linux-musleabihf-0.11.26": "400ebbca4062f7960cbdb2359cd28741dc9a1fab2656abb9ee05fb525e3f1e12",
"armv7-unknown-linux-gnueabihf-0.11.26": "e1a6e135f68c237f969f2acb5277ef2691dec582e99d9f6c237c21583bd26f7b",
"armv7-unknown-linux-musleabihf-0.11.26": "3b4453d821588f7fafe622a099db4b7f55a668bec79db73411414ffc24b8c45d",
"i686-pc-windows-msvc-0.11.26": "6e19e7ef0ccacfeea7edeb0a7be951d31148b49f5170c1770c58db312fe443f8",
"i686-unknown-linux-gnu-0.11.26": "65cc2d8719febecd1bc2fd3ea437c72317ac54de96e54de0a73344e150982478",
"i686-unknown-linux-musl-0.11.26": "ef5d5c982dfd4d6b5aa107c33b882b978ccccf1487500ae2adbc1d3665ea7e04",
"powerpc64le-unknown-linux-gnu-0.11.26": "095f7cfd814495719244897f96f1c35f10369bcd9237276c63cfed824353f505",
"riscv64gc-unknown-linux-gnu-0.11.26": "253d728a2660006e4aadee627f5d9f3ca2a874559b5fc716a5023965e58092bf",
"riscv64gc-unknown-linux-musl-0.11.26": "4ef67e6bb961583eb4ee7ce61b3c98bcede9e51b771b4b4967719d0fb6aa3cbd",
"s390x-unknown-linux-gnu-0.11.26": "34f514ed6ecbf33a3d90346c8bf3074954dd0c76340f5765b88577daa05d307b",
"x86_64-apple-darwin-0.11.26": "922b460202707dd5f4ccacbadbe7f6a546cc46e82a99bf50ca99a7977a78eddd",
"x86_64-pc-windows-msvc-0.11.26": "4e1278ede866be6c0bf32d2f466cc6de7a9fb399ecf20c9ce2d186e52424be47",
"x86_64-unknown-linux-gnu-0.11.26": "6426a73c3837e6e2483ee344cbc00f36394d179afcba6183cb77437e67db4af0",
"x86_64-unknown-linux-musl-0.11.26": "62bf1a53501adf4083224b69b33737450ac516935f5a5e483e9dfaf2665084de",
"aarch64-apple-darwin-0.11.25": "5fc334bb25d19806262efd1f6e7d380155c7e817d89bf426df4ba7ae873c9471",
"aarch64-pc-windows-msvc-0.11.25": "40d65c29c4d97db6a0993df665d3727700bb799b3618992ce9a4dc533c6d1a31",
"aarch64-unknown-linux-gnu-0.11.25": "e0e9d73f74e06a7dcd53910d5962146ab48f0af9c92cc8df33a37baa0121014d",
"aarch64-unknown-linux-musl-0.11.25": "3d9c9a95f1868ff20ac880712f3a337d710ea4b65f135184b7a35635d1acbf84",
"arm-unknown-linux-musleabihf-0.11.25": "50ef6368eebaa9f31d8e8685a91689666c7bae86a1bd9a72b7a505f752084ef9",
"armv7-unknown-linux-gnueabihf-0.11.25": "eb60b2931d2461022e1675a7f6c08078b1e47150edb2f7728fe117563a5ebc99",
"armv7-unknown-linux-musleabihf-0.11.25": "50f6f10ca38e4628998c17de24c2780f429d9b354db98b1832c130b7394e8ec4",
"i686-pc-windows-msvc-0.11.25": "91a87e8a7ea2d5e9451b9bd8b1e9fa490542311ac43e80a9115abbd231c417fb",
"i686-unknown-linux-gnu-0.11.25": "1b0f2ceee8dbe718eb1e14d7eccf67534d2f72698f4f85e70cf8a5055412b5d3",
"i686-unknown-linux-musl-0.11.25": "e650be31af3fd31f5e2236a47daab0899070a66a732026d140461f1614fbe786",
"powerpc64le-unknown-linux-gnu-0.11.25": "fbf67c8beccc718b9de478d7e74d605fe9c2e259c4398f95c9df7680da710af1",
"riscv64gc-unknown-linux-gnu-0.11.25": "29e74713e89242c6bf0971b28e904836298a04fb7e0d83262c7bd5aff695ae33",
"riscv64gc-unknown-linux-musl-0.11.25": "90c5a720dd9ddf32de8511c79fc83bc69e38795a94b5b49fcb2d010f96b1374d",
"s390x-unknown-linux-gnu-0.11.25": "3d508ed6e66898ce80aa668cb7d6ec4ddb4d30440fcfbd409365d3d0e4afa75c",
"x86_64-apple-darwin-0.11.25": "65ff85b33212f75d34d7c0f0724aba9a742c74f62559f67dc0d6c543dc2fc52f",
"x86_64-pc-windows-msvc-0.11.25": "15bfd1423b7eaa7aae949922d4712ebaac2bb44a81af64ab59bbe007090cb0d0",
"x86_64-unknown-linux-gnu-0.11.25": "1db18b5e76fa645a7f3865773139bdec8e2d46adbdbb35e7410b34fa8015ccd2",
"x86_64-unknown-linux-musl-0.11.25": "7195cfcc1785d0c559d4682ad9109f26664b8db4d828d42d66078ef454061891",
"aarch64-apple-darwin-0.11.24": "7578c6087c5cd76981732b1f5d126248101faebdf81016ba780a65ce03653cdf",
"aarch64-pc-windows-msvc-0.11.24": "51bcf8051dcc2075fba9136ece0f229205a6ef813e68e5709c6eeb18802afed5",
"aarch64-unknown-linux-gnu-0.11.24": "e22c66d36a0098b17cff80a8647e0b8c58202af899d4e9eb820fc7ad126435a1",
"aarch64-unknown-linux-musl-0.11.24": "222fcd9878ed6f5a8565d121d1a10e1f958e3c7b42e4ec5cbc6927b2be20cc1a",
"arm-unknown-linux-musleabihf-0.11.24": "92fa5e688c5dac8cf459421ad65f6d21ea1c530dd2225981bcebfd5d538aa4bc",
"armv7-unknown-linux-gnueabihf-0.11.24": "b9ec27086af022b2962428beeb5d391903d663f3bd76fed3d8a39def1cc7fe19",
"armv7-unknown-linux-musleabihf-0.11.24": "747560329d0765623f261969fffb8acd35403c280d1baec36bed46d335731aca",
"i686-pc-windows-msvc-0.11.24": "1df231a0da08d691c32047cce8a4aa0aba82d2a74f02999f2e4847a5e8e7e2df",
"i686-unknown-linux-gnu-0.11.24": "e7444c509c01efb293d2e0c78d306ec2624aa9d1d63c7fed095e0a3e29800bb9",
"i686-unknown-linux-musl-0.11.24": "ec692d59d86071fd07d2e7cf8cef8473941019238dd00c0481e6db59b79b4665",
"powerpc64le-unknown-linux-gnu-0.11.24": "29db3e6f7422f027d14f5718fe3efa4b6b475ada234d7b10b6002ba1367cdc08",
"riscv64gc-unknown-linux-gnu-0.11.24": "3e975a156d5972359c6b12ce3235a5cf68f838a0be3605c5800996556b902674",
"riscv64gc-unknown-linux-musl-0.11.24": "4d39d5eec286daab074b5b2ed142cd9d9042306a2996f708f5a86dcd19a35eaf",
"s390x-unknown-linux-gnu-0.11.24": "a0baa1dc34efcb896c8e82e0844b10e308cf48fb1f5060cef6d12ea5a801c3f7",
"x86_64-apple-darwin-0.11.24": "8e026ec796a2760c33c832298b0910bf07fb369d00cc075761c321923ac37522",
"x86_64-pc-windows-msvc-0.11.24": "af9573a2e36f7020b18ec5fdde20117aae74bbad3f4acb3dc3fc03319f1aa083",
"x86_64-unknown-linux-gnu-0.11.24": "5ce1ad074a78f96c5c8122088bb85a12eb282195bc1453151a48762e4fc31fed",
"x86_64-unknown-linux-musl-0.11.24": "2f9eaa976cf8ad8574623dde6916fb87ec047524fe65b99dc11e44e33eae4bfb",
"aarch64-apple-darwin-0.11.23": "71ef9de85db820749b3b12b7585624ee279e9c5afcbc6f8236bc3d628c4305b0",
"aarch64-pc-windows-msvc-0.11.23": "c24ef88c44c5e6be3daa7357c0cd8419a88de74c5d01f4ff403e06b765249788",
"aarch64-unknown-linux-gnu-0.11.23": "1873a77350f6621279ae1a0d2227f2bd8b67131598f14a7eb0ba2215d3da2c98",
"aarch64-unknown-linux-musl-0.11.23": "80efb615b78c1e5721e5858135cd3499609b26741220332c843bd58936053bc6",
"arm-unknown-linux-musleabihf-0.11.23": "2467703669be1cf02f31f4347a11c9b10a763e794424eb1073b9fc2565ba45fc",
"armv7-unknown-linux-gnueabihf-0.11.23": "d10df2ebaa729a51d15395720c3f5e76497ae6414beb82043bb2e53f9a86314a",
"armv7-unknown-linux-musleabihf-0.11.23": "417e901f5873a62af344e25e08fb96d75be3a02628e59da4529b73c3693bd31b",
"i686-pc-windows-msvc-0.11.23": "6756a552713bd1b9bd1e8d15402db21600c4fbdeae94c70721e0387b6bbad410",
"i686-unknown-linux-gnu-0.11.23": "87c661f2ccb116dd306b69423fa51f9d7d921ba9bcb1eb8e000853dfbc4b069d",
"i686-unknown-linux-musl-0.11.23": "dac33b2ca44fc162f074bb3b08ef9018e70df930ea82e4c7906e48704b0cfd12",
"powerpc64le-unknown-linux-gnu-0.11.23": "1c87278219389da56f49670ac3f9ae72cda4c38c6a1305290961586ce1b98c3b",
"riscv64gc-unknown-linux-gnu-0.11.23": "38c3b11a79dd6729ff2f35d1882a40c8919e47f385ed51703bed8e1c1ab9afea",
"riscv64gc-unknown-linux-musl-0.11.23": "2bf05826fe1b29adc8031132581400e1ccca0c0051fcbbfe93bddefb80f8dbeb",
"s390x-unknown-linux-gnu-0.11.23": "1a13fd6ab96af55456e6f4ca3f173475e0edf9c9f887bf6e0bc545bc2d931fad",
"x86_64-apple-darwin-0.11.23": "7a88155033cc469bba5bd5a24212e355eb92e3e2a276320b669ec576296c1e25",
"x86_64-pc-windows-msvc-0.11.23": "02ad29f07e674d68726ba3bb1ff25b335d83515756e2b1a194bb56c3cc30e07c",
"x86_64-unknown-linux-gnu-0.11.23": "e12c4cda2fe8c305510a78380a88f2c32a27e90cdcd123cefd2873388f0ebb5f",
"x86_64-unknown-linux-musl-0.11.23": "6be47081100ff1ce0ac7e85ba2ac12e32f2ffa6f946d78bf7f24ee9ce3a46181",
"aarch64-apple-darwin-0.11.22": "97a45e2ff8d5ea262623eed57ec2d9c468a42d74496d5c3c3eef11340235bd7f",
"aarch64-pc-windows-msvc-0.11.22": "30fa01e0fc7c78bdaf6f369ebac401f22f0f865d650f0732a26f1df3e2c6971e",
"aarch64-unknown-linux-gnu-0.11.22": "54b22e9f5570f3643cdf85a33bbc8e9feb3fc6e836a7c660c05378434ef44fe2",
"aarch64-unknown-linux-musl-0.11.22": "bc28063fe57e76a2d632d804cae9c602f8aded1d99f41025d7fefeb66b10befd",
"arm-unknown-linux-musleabihf-0.11.22": "950284c836a2f2aff79d64e703b68ea6bc6ee3a5c5f49399a7889cdd5069d78a",
"armv7-unknown-linux-gnueabihf-0.11.22": "7ff74f488d401f66a0314f65b6970edb011885e09f154e31a307e6d620daad0d",
"armv7-unknown-linux-musleabihf-0.11.22": "10d3f2a47d8c8c99d6aaafb1ec9c98aaf0b2a8ece43af01141693596b8a5cf35",
"i686-pc-windows-msvc-0.11.22": "08388dc9258b211236136327c775f74c127a2321c4f66d7dfcd4ae5cc76748fd",
"i686-unknown-linux-gnu-0.11.22": "522c0d3e0799914cb821661b947d73cd0ee44f6f8ecdadd60bdf11bbf0efef5a",
"i686-unknown-linux-musl-0.11.22": "47e78c168133cb3dd860090de5e832292e9f6d4e3110edd5028f90500a9d791d",
"powerpc64le-unknown-linux-gnu-0.11.22": "519602d26c50891254e19eb269c35da44a330e0499107bceb7926b7b061ed455",
"riscv64gc-unknown-linux-gnu-0.11.22": "291a5506ff058ba68357298752b83b5b230212b0a15845b568029d00cc1d4e8b",
"riscv64gc-unknown-linux-musl-0.11.22": "dd03fa6c9e6ba49195ba78c401bd838496d77d25c17594b7ff0e8e151c13edb9",
"s390x-unknown-linux-gnu-0.11.22": "d5149a1bdd21dc8a86ad91d8657a4cd4eb0761a433ef0ce76117720e41ec950e",
"x86_64-apple-darwin-0.11.22": "9490033dc405b4afc8fa5f9ecd5cc1793e80c727a8c42c32ad456778720d39f2",
"x86_64-pc-windows-msvc-0.11.22": "b56939bac92d29996d351647f7c6f15b31cc69cf952d06d136de3e1e62eb64d1",
"x86_64-unknown-linux-gnu-0.11.22": "30075b14624a62021198319f22e08f1651a97d4026a8c84dab6abcbfaba0d81c",
"x86_64-unknown-linux-musl-0.11.22": "b80bd6952ee11b920b5ab2a35dbccddc364f579e5f2e028d115848cdaa72963e",
"aarch64-apple-darwin-0.11.21": "1f921d491ba5ffeea774eb04d6681ecee379101341cbb1500394993b541bf3f4",
"aarch64-pc-windows-msvc-0.11.21": "74e443f8004022dde57a1bd0d10c097830f9ea8feb4ec927db52cd5d805c2f48",
"aarch64-unknown-linux-gnu-0.11.21": "88e800834007cc5efd4675f166eb2a51e7e3ad19876d85fa8805a6fb5c922397",
"aarch64-unknown-linux-musl-0.11.21": "e71badaed2a2c3a404a0a00974b51c7ed5f5bc7be947916846005b739c68a5a2",
"arm-unknown-linux-musleabihf-0.11.21": "7cd6637deebacfa0224e53afb4dd7da4f464ba0ecc128f6f543897c157e39a0f",
"armv7-unknown-linux-gnueabihf-0.11.21": "929440f991ccd8097e01be1ec831f673ac7bbf508e94819b4270f2873f69e658",
"armv7-unknown-linux-musleabihf-0.11.21": "20f4b653a17adb09cdfa7f911d46a1f254b918a2b49bef1266c735ab4c6fced0",
"i686-pc-windows-msvc-0.11.21": "77d7979222c6bd621bdb862c9cb138be41dce1e3cea239b1e87eb82dfac2dbd5",
"i686-unknown-linux-gnu-0.11.21": "07125219898b1c8e71bc612d91b190927c6b192a7bce5dd029b1c9070e9b7049",
"i686-unknown-linux-musl-0.11.21": "865eff26cef62b7862854e176d57d9e0164daeec595723132a81aa3611238798",
"powerpc64le-unknown-linux-gnu-0.11.21": "0e97021d831f9670c8261f9270ecf94b83f1a90ff5312389e37a77676deaec87",
"riscv64gc-unknown-linux-gnu-0.11.21": "63013d7afe8fd552b273a7a5ca1f1425c0c82b12d73454d24237876bc26006e9",
"riscv64gc-unknown-linux-musl-0.11.21": "b869fe80435715b2b414443af28de96ed5d7f8c6759e12ba141abca221ebc0cd",
"s390x-unknown-linux-gnu-0.11.21": "743694a86a05eaf15d292c3d757388c4b2a11b4a7eb67f000077b4d6c467347e",
"x86_64-apple-darwin-0.11.21": "f3c8e5708a84b920c18b691214d54d2b0da6b984789caae95d47c95120cb7765",
"x86_64-pc-windows-msvc-0.11.21": "ace861f360c6de2babedc1607d0f454b6b09a820dbc8182dc15af927e4df9589",
"x86_64-unknown-linux-gnu-0.11.21": "8c88519b0ef0af9801fcdee419bbb12116bd9e6b18e162ae093c932d8b264050",
"x86_64-unknown-linux-musl-0.11.21": "9dadff5b9e7b1d2d011e41852a1cbca713d9d5d88194f2eb6bd240fa4fb0a719",
"aarch64-apple-darwin-0.11.20": "0a2b6a757d5693671a7ce0002554ae869604e1e69acb10313ac14d08374be01a",
"aarch64-pc-windows-msvc-0.11.20": "5248e1a5f980a77f153c4c452511ec6376abb8772b0979c450775f3a268fc61e",
"aarch64-unknown-linux-gnu-0.11.20": "c8b5b7f9c804b640da0bb66cddddf0a00ce971f64d8076622d70bd141bc80857",
"aarch64-unknown-linux-musl-0.11.20": "79931fc8e82dddff6eb9cab32aa8492e35bc22767322dd68cad36012411ae6d5",
"arm-unknown-linux-musleabihf-0.11.20": "4113bf774c0626d82374fcb4de1dbe117f38e68cfd4cf7360e44259ca62a6d48",
"armv7-unknown-linux-gnueabihf-0.11.20": "b8004b8be37d13ae8c05e8d55028d9ea3ea387fa61a96eeda7812e1a413fd9f8",
"armv7-unknown-linux-musleabihf-0.11.20": "1a6ab0ebac84282838ec96dadb245b1d4404ea8a40e375822cc5a2f1f3997d72",
"i686-pc-windows-msvc-0.11.20": "00c3f694414bf3821922dc9766cec373bcceb16ae3d98ff1fd0774b97bbc55fb",
"i686-unknown-linux-gnu-0.11.20": "08d3e199788ca3ce331da13cc4df15449bd44844a1262597bacea15bb1e42a0d",
"i686-unknown-linux-musl-0.11.20": "0556b545dcba5402c6120575e66e046f3165df4be6baed6992ba7ebc000054e6",
"powerpc64le-unknown-linux-gnu-0.11.20": "555c15dfb8e95e9edb5d4c4f442f9a77fe7f007804da164450cac1eddb41bcde",
"riscv64gc-unknown-linux-gnu-0.11.20": "f78a42002f4c7702688493f7513a081939ca3d52b41dcc7b9224bb660f0c4c28",
"riscv64gc-unknown-linux-musl-0.11.20": "7433aed57cf15cf0657d0ce7c655f95eb00e54e49a0dc408d0170467260843d9",
"s390x-unknown-linux-gnu-0.11.20": "208af0d9d0099f86ed093b68b05703451b884f6db351f9555fda905d3538e53d",
"x86_64-apple-darwin-0.11.20": "bef01a86faab997f6022b45cfa29bfc5b090f2f72cd4a91d2ecefe641efdabe7",
"x86_64-pc-windows-msvc-0.11.20": "4c281f1b6b9ccb14d9567ebde9a218a7cabfb35e5ffe8c1d4ef5e2821a655474",
"x86_64-unknown-linux-gnu-0.11.20": "5de211d9278af365497d387e25316907b3b4a9f25b4476dd6dbf238d6f85cff3",
"x86_64-unknown-linux-musl-0.11.20": "a7545a1360d29baa696753af2f41849047b332bcb90e8ea75ad0568e7f865e35",
"aarch64-apple-darwin-0.11.19": "d8f59c38e8c4168ee468d423cd63184be12fa6995a4283d41ee1a14d003c9453",
"aarch64-pc-windows-msvc-0.11.19": "5592a990a9d9901fd0d23992d872f2ec3ca91b7bbd3d5f0bb5e6f42b851493d8",
"aarch64-unknown-linux-gnu-0.11.19": "83b13ab184a45b7d9a3b0e4b10eaebd50ad41e66cb16dcce8e60aa7be13ae399",
"aarch64-unknown-linux-musl-0.11.19": "767629b64cdf078c32e42819db28d5ca868b8dc7e3a879967fadc3e4f7f66be3",
"arm-unknown-linux-musleabihf-0.11.19": "638bb5aac6419e062149b4600c0030e2203dfbb8bf6b0db740755bb19f458abf",
"armv7-unknown-linux-gnueabihf-0.11.19": "56c307d18acadb1bee2b76bde39cedcf0d29f93102c52f39f8c0c8a42dffe96e",
"armv7-unknown-linux-musleabihf-0.11.19": "d807c33e89c27430a68b7be52a8a0d39e08c91dba0fa295172c6ff2ce2d07a27",
"i686-pc-windows-msvc-0.11.19": "e701a69f0ab192fde8ea3f4cfdedfa6cade0c92cea2e350613b6528e966b50c7",
"i686-unknown-linux-gnu-0.11.19": "d0ef2e69c44a2763161d5b5f40b722fe81e0d16bed217cbc526fb5a3640802b3",
"i686-unknown-linux-musl-0.11.19": "f58e41864cb91fbd2306a7b46718fdd0c1029169fe03347719771a1c68a527e6",
"powerpc64le-unknown-linux-gnu-0.11.19": "b6dcd94b5c456d11787d1e6d01b5f9a34b456e22e2dde9bbae3531dc7676c0d8",
"riscv64gc-unknown-linux-gnu-0.11.19": "4b9ca6bd2ed1e4c2658e5f85cf8a208c192490d9d24dbf2c36d61ea10a389778",
"riscv64gc-unknown-linux-musl-0.11.19": "184232b4e0de4d6a674d57b1d6d8c39a3c5a5dbc27f95ed972c46974d21b0115",
"s390x-unknown-linux-gnu-0.11.19": "c4535a5f9f27a94df384ea8140b78c3e7c083d4130cd341fd826b5ab343979fb",
"x86_64-apple-darwin-0.11.19": "1585f415cade9f061e7f00fe5b00030a79ccfac60c650242ce639ba946138d40",
"x86_64-pc-windows-msvc-0.11.19": "1665fc8e37b5d70a134820d6d7891747471a2ac8bc940ee7af0b69fd03b28d61",
"x86_64-unknown-linux-gnu-0.11.19": "7035608168e106375b36d0c818d537a889c51a8625fe7f8f7cad5e62b947c368",
"x86_64-unknown-linux-musl-0.11.19": "c4c0d0a383413261af5f0f0743e1292f4aafbe907987ed83bd0ac66f0a3d7e20",
"aarch64-apple-darwin-0.11.18": "1a7adf8dadae3b55853115d13a8bf564d219597ad13824b93b213706933863e5",
"aarch64-pc-windows-msvc-0.11.18": "0689e1a40d36b387522d2b1b865cd98a15ddd4a7507e256ad93be6f6a335fec1",
"aarch64-unknown-linux-gnu-0.11.18": "0f03c6648df1c159557f4222c0f37250f84733fb88d6fc3c16770e17c177a8c9",
"aarch64-unknown-linux-musl-0.11.18": "6d895725333680bf7633ad635baff8e49dc45d3b52e00b2b3adf6ced41f2ebe2",
"arm-unknown-linux-musleabihf-0.11.18": "c4fe354b28c489fa6649531808076c43eb3a34122df49b0a3005bb75dbf101c3",
"armv7-unknown-linux-gnueabihf-0.11.18": "a70a8b1124dc1fabcce9f2bbe6591c72a05d49df74125d1c327b5745f2becbb6",
"armv7-unknown-linux-musleabihf-0.11.18": "f8b6f4df3ff9d142a25892be575ade438672a8353ad71997f7db88e9b9a1062d",
"i686-pc-windows-msvc-0.11.18": "7505112a7bf72f50391c50f2aa07950b95b3c43c7d9fd4da5626876407d15dda",
"i686-unknown-linux-gnu-0.11.18": "5f3df0d62af1d174a06b82a6faf1a5e9a1f729b87d11c7d9cd87d4241e04f23d",
"i686-unknown-linux-musl-0.11.18": "4237cfcd03fb8767a7ec713ab3db14381d83bbd0bf5ccc88cd6f28ac8c2c616f",
"powerpc64le-unknown-linux-gnu-0.11.18": "fc8f46a198e540ca2d89fd9480da0648d673ff3e25b4048c82ca5c292a478052",
"riscv64gc-unknown-linux-gnu-0.11.18": "cdb0555db7828bbd1dc24e55171b8ac3dbbc24fe17b6a7387783cd4d543a1538",
"riscv64gc-unknown-linux-musl-0.11.18": "3d5b533080bb593c82b281b8d289e29d51b97c0994655099845752e948181fe2",
"s390x-unknown-linux-gnu-0.11.18": "7a91aa963680f2fe14ebf89291cf8eafcff634eccdeb6d301e0252b282171818",
"x86_64-apple-darwin-0.11.18": "00a61e3db99b53c927a7e6c4ccdccb898aa3253d07928822211e9dc570a25661",
"x86_64-pc-windows-msvc-0.11.18": "bf8e0021336b7c77bd80a078b612125f385b08f541437edaea8c8ca9e574db0d",
"x86_64-unknown-linux-gnu-0.11.18": "588f3e360f69ce02b6982aa99f2240e803933a6b7e176ac01617830adf955add",
"x86_64-unknown-linux-musl-0.11.18": "a095a969fc8357f42e35652e0554525a47a29010ddb814bd82650c2ffa7d6d62",
"aarch64-apple-darwin-0.11.17": "2a162f6b90ff3691a2f9cae1622e066a3ce592e110f66670cdcc841324b28226",
"aarch64-pc-windows-msvc-0.11.17": "f4463aa9671c6d153d32f2a9b272389675a711a9bca806c4ab4a3c7559b045c2",
"aarch64-unknown-linux-gnu-0.11.17": "de008880a903ac2c5654647dc19a75c0d6652313c977a2bc5ce05e1e3a93429e",
"aarch64-unknown-linux-musl-0.11.17": "9e5eaf16ffad968fc689f18c2733ace914ed417d4e5572e92d807fd51a90228c",
"arm-unknown-linux-musleabihf-0.11.17": "201c7d727423095aa4ba39cc79b16cac2465720d4348270a3977824009526179",
"armv7-unknown-linux-gnueabihf-0.11.17": "c941377b20fdd4b101376a9c8ce37c209d36655697815a32658a7cbcb3212409",
"armv7-unknown-linux-musleabihf-0.11.17": "12606cc40d15c5ab5fd06e434c8ee1b0ef7e3ca3cd4d5b2b135a16dd1a45fed2",
"i686-pc-windows-msvc-0.11.17": "be48cd9aa35c8615eff3dba6a24e214edf00885150eacde032a258399131c59d",
"i686-unknown-linux-gnu-0.11.17": "89f859f3bfaf3a74733aef671e6a4ade36173623d4539d3559e11caa2c722718",
"i686-unknown-linux-musl-0.11.17": "8d2ecb44951b80861570f4a7f732c9f16f3b342450eeb0bd2eef876b10395400",
"powerpc64le-unknown-linux-gnu-0.11.17": "714c7b292c805231edbfc77ca14b29e6e469342236ef1cfb58fe7d6f8fed48a4",
"riscv64gc-unknown-linux-gnu-0.11.17": "f8bece740520b35f69c82653da77912b38a29a5634a6e0ce7d83122a485c6a6f",
"riscv64gc-unknown-linux-musl-0.11.17": "ae07b4e9c2bea3dcba2e3267e9e4229e45de63c15e74eee7fac7ccf9df6e04cd",
"s390x-unknown-linux-gnu-0.11.17": "10ec2070644dda19ab9c8dcc3d6f3bbf4b09ad6665b8a8be067d7fdb5a58b56c",
"x86_64-apple-darwin-0.11.17": "6c66e41eaf4d15abeda58d3f268161b6e3f742d98390341b174a7cfc1b48841d",
"x86_64-pc-windows-msvc-0.11.17": "35fc29e03e62f3cda769bc12773f3cb70ce305d0d36c0d8bd0c117dd0b3fcd14",
"x86_64-unknown-linux-gnu-0.11.17": "0017ccecaeb4d431d7f93b583ebff0c5c38e00eb734fcf13d05f72ca419125fe",
"x86_64-unknown-linux-musl-0.11.17": "4231a429d4e0f7c1937d8916658c08a7706cd7872afebeb87203a18c2e0dc28e",
"aarch64-apple-darwin-0.11.16": "2b25be1af546be330b340b0a76b99f989daa6d92678fdffb87438e661e9d88fb",
"aarch64-pc-windows-msvc-0.11.16": "e4f8e70eb21f0f4efd2eeb159ab289f9a16057d59881a4475758be4ce39bc8c5",
"aarch64-unknown-linux-gnu-0.11.16": "8c9d0f0ee98166ae6ab198747519ba6f25db29d185bd2ae5960ecebc91a5c22a",
"aarch64-unknown-linux-musl-0.11.16": "ac022d96411143b9a2dd75ea711fa8dd4cd14538bf248f2e5df3c10a80f7f6a4",
"arm-unknown-linux-musleabihf-0.11.16": "cdd60c84597690139e3696461d1278bf4dcd598cd44e3896a98aa75aa59965bf",
"armv7-unknown-linux-gnueabihf-0.11.16": "71cf33cb511c9fe28ae261c0b4789e1fd9bb84d1bc68828db647b77305a15185",
"armv7-unknown-linux-musleabihf-0.11.16": "f24fca34326c5b8f7ddc0001a40e5454bc8091ca67f9ce931ffdaef4ea4815e8",
"i686-pc-windows-msvc-0.11.16": "7417090298bf202395b9b3d6eefb9230332d8d6c94a5616e531148a0b041c8e2",
"i686-unknown-linux-gnu-0.11.16": "0d1e427cd3fcc042e85dfc75f6d95e076dff9b930241686969d6706afda21375",
"i686-unknown-linux-musl-0.11.16": "d5e611deffd3f5fd637b2dc89dbe252342ce4a38c8970e63add8029afe2b5629",
"powerpc64le-unknown-linux-gnu-0.11.16": "8a3b09ce14d14a75dbbf051cdb78a314fb579e78fb3a02e1ee833c4cb5f6e81e",
"riscv64gc-unknown-linux-gnu-0.11.16": "0314895f159ce97bcedac00a4b97fa7e53c16fee911a6a2d9f0b69ee6461b7d5",
"riscv64gc-unknown-linux-musl-0.11.16": "8a1aef4261011143f56c964eeaed5e06fa0cb95ff3005386381c610c91784feb",
"s390x-unknown-linux-gnu-0.11.16": "d161e914ad552aed83478fe9766061844297dadfa77a43e56285a147bde0021e",
"x86_64-apple-darwin-0.11.16": "6b91ae3de155f51bd1f5b74814821c79f016a176561f252cd9ddfb976939af2e",
"x86_64-pc-windows-msvc-0.11.16": "dd9d6d6554bfab265bfa98aa8e8a406c5c3a7b97582f93de1f4d48d9154a0395",
"x86_64-unknown-linux-gnu-0.11.16": "74947fe2c03315cf07e82ab3acc703eddef01aba4d5232a98e4c6825ec116131",
"x86_64-unknown-linux-musl-0.11.16": "1bc4be1be0a000f893b0d1db97906cf392b63fa22fda9a0ecf33d0d4bbb4bc9a",
"aarch64-apple-darwin-0.11.15": "7e5b336108f8576eda1939920ca0a805b4a9a3c3d3eb2f6140e38b7092fbe4f3",
"aarch64-pc-windows-msvc-0.11.15": "9eac2d68f3a66326c3e1fc97ef28bd54f1d13136ec092c2f0a8173ae12aaaf1e",
"aarch64-unknown-linux-gnu-0.11.15": "21a7dd1a03ea17ac0366887455dab15d215b31dba0870dcd65d3714e22f46c81",
"aarch64-unknown-linux-musl-0.11.15": "6505075cec3f551fad4fe9026922967ff9c895c9f513c97682b24e7a1c9becd3",
"arm-unknown-linux-musleabihf-0.11.15": "f9206848d617b7beec37c346624ad961d8d4110606990653ebbfc4c62b1f1741",
"armv7-unknown-linux-gnueabihf-0.11.15": "eb6a12e3e80e1474c1018edc9541bbe71cdf2248fa17b583dcbcc7bb391ad0c0",
"armv7-unknown-linux-musleabihf-0.11.15": "a40ee3c41443341846137afc5c7f29be766a9a677bd70c7ff91cbb4273e5383c",
"i686-pc-windows-msvc-0.11.15": "6a9431f0044a1ff59fd6920f6f982b691acf336b6e26ac8cd40a02b5ab839cd1",
"i686-unknown-linux-gnu-0.11.15": "557e329e76072b513e47bcd8b50ca4bad07ec87cb325cbfc05e6069847af06c4",
"i686-unknown-linux-musl-0.11.15": "69490ca5580958cdee3353b54357925913ec0540dc8e09819294b9e5b6d48556",
"powerpc64le-unknown-linux-gnu-0.11.15": "6be3637ef86cdee3f5fcfbc66681ecbf6d57c6a123398a1bdd09786d65a06016",
"riscv64gc-unknown-linux-gnu-0.11.15": "a43e22243e3f3b1fb136a0998b730367fe2589ea98ce6cd4f0d7d20b9f77fb5b",
"riscv64gc-unknown-linux-musl-0.11.15": "2256c9b625d67a55986adda62b09782b5547e28a79fba472e7e93ac3ec0af258",
"s390x-unknown-linux-gnu-0.11.15": "df2b69ed893ce00e242d8cfe5b9fdc7b7a42d578df487d09aa624563a9801578",
"x86_64-apple-darwin-0.11.15": "42bca7cc879d117ed7139a0e26de8cab0b6f033ad439a32144f324d1f8580d8c",
"x86_64-pc-windows-msvc-0.11.15": "04b98d414a9000e25e5e0e7c9f53749e66b790cdaffc582829e6f58c544ee11c",
"x86_64-unknown-linux-gnu-0.11.15": "b03e572f010bea94a4a52d42671ba72981e12894f71576181a1d26ff68546da7",
"x86_64-unknown-linux-musl-0.11.15": "200ccf2f351849c5d6698714e7e7eb9ead1e8c097dbdbb43730e1a4e059ceb87",
"aarch64-apple-darwin-0.11.14": "4333af5c0730d94323a7819bbdf87ce92dd07fc857d67fff0059e0fca31b5c02",
"aarch64-pc-windows-msvc-0.11.14": "d66c76ba912ba66fed011e0189dfbc4527dd9e620a2b5d5d5ecd2ad8936601b8",
"aarch64-unknown-linux-gnu-0.11.14": "c4958f729e216f1610632574ed927b8cf0af1bd02cb88cb30d948571727aee43",
"aarch64-unknown-linux-musl-0.11.14": "d7d3966e46915c5f6932692aaf152a2473eecb1d2517ca4f8e88a07484b380b6",
"arm-unknown-linux-musleabihf-0.11.14": "31b07fa8bc5bbc8f22064fc1d4238b53c663bdb4812cbfead0b43719571aec03",
"armv7-unknown-linux-gnueabihf-0.11.14": "2aca3925d7ad91d2e02a0f9cf75974ebd077ec5cb939a5eb66aba096d5666819",
"armv7-unknown-linux-musleabihf-0.11.14": "988d79544bbf55ebeaf6521d3cbf46957bcfbab998d22092ea860580639e2f30",
"i686-pc-windows-msvc-0.11.14": "579408a1134ec3c45dd7b94187978b98b15df4e0c49ebf05c52565e3858d9f2a",
"i686-unknown-linux-gnu-0.11.14": "8c93880c54dc7a632f602b7627d4338d80011ecf32e340fd2f67129df5325dc7",
"i686-unknown-linux-musl-0.11.14": "c84acf1036767797a7be97a3315122b9565a78bf90b5733741b1abeefa58387f",
"powerpc64le-unknown-linux-gnu-0.11.14": "d2da5ba5911b86dfec96f0737b7d1053ed78c0c65e51585db03fb4969b2a3825",
"riscv64gc-unknown-linux-gnu-0.11.14": "55731359293842826cd82d5fbd826a6bce542c3fec458214604e308b352560ed",
"riscv64gc-unknown-linux-musl-0.11.14": "86b053903d29a2d04441e4cbd05a8f690b8ec56f8959d27f15df13efffb5879b",
"s390x-unknown-linux-gnu-0.11.14": "cc7b233541a76dd484516a39c06d9d14100d1048708483e6f49ee20b6cc5761b",
"x86_64-apple-darwin-0.11.14": "9836c1440b0bd6aa5f81793648a339bd01d593b7b8f575de3b855dae4ab64654",
"x86_64-pc-windows-msvc-0.11.14": "52ba5d19409aaa688a8a1a6ec8dfb6a4817230d20186e75f4006105c3e39a846",
"x86_64-unknown-linux-gnu-0.11.14": "f3b623eb0e6141a7053d571d59a0bdc341e0f238ea8f5f0b4815ddbec9a2a296",
"x86_64-unknown-linux-musl-0.11.14": "077d36f45a0cc6d440b653b2d5c53e7731121e99e54b0221267eec5d1cae76ce",
"aarch64-apple-darwin-0.11.13": "196a58aa24da89144187670df7c407358028984537fbc2f8f2d8f7a2604980df",
"aarch64-pc-windows-msvc-0.11.13": "07c3c997020430a9f287fc05ff4c63fd5744eec49df5392a34731ed1a0971f2e",
"aarch64-unknown-linux-gnu-0.11.13": "12366407dc1fdba5179b10bd69c11ebfc2eff25791366089c0b2f5701056efc5",
"aarch64-unknown-linux-musl-0.11.13": "bea8a97b1b3ed41491e075c1f474e7f0249582aa3f62849c4e874b5f34ddc95e",
"arm-unknown-linux-musleabihf-0.11.13": "ee282adf170eb845821309ca6038fdd87a93dd25326f96efe6ea58a1b66a9064",
"armv7-unknown-linux-gnueabihf-0.11.13": "4761e38e3d5ca62e87ef13bc35ba169e6ebd126472482095405367b31be88945",
"armv7-unknown-linux-musleabihf-0.11.13": "d54342a96dda65339b4f7b9e6bb7a27b81aeeffca14e5dfa7911d00fe4a3ead9",
"i686-pc-windows-msvc-0.11.13": "a9b2d96a118a401c7dc5b717752a074b6324ddc9b36dcb2b60466a4e2912a3ba",
"i686-unknown-linux-gnu-0.11.13": "630774d3fd255a219a6eef58f004201737c60f4b282777fb99e599cd90567fe4",
"i686-unknown-linux-musl-0.11.13": "52cb28c81ca43ea5184f944c31555981cb29c03c2497fa848541af5ee4d8448f",
"powerpc64le-unknown-linux-gnu-0.11.13": "7f302104ea18a01381fe58434b593f887c4f10bc523ad50781de408fbec54354",
"riscv64gc-unknown-linux-gnu-0.11.13": "3264ce97b34d5c8d37c1e67821a74960ca89237e001253309a3cda25fb416040",
"riscv64gc-unknown-linux-musl-0.11.13": "44f23b8e59fd8628fb68383e4cbdf78c3cff02ed86d3dcea5605ebd7757ca363",
"s390x-unknown-linux-gnu-0.11.13": "e0e5e0a652650900d97f6a660bae526601033d9d071ca5dd9ca735442161ebed",
"x86_64-apple-darwin-0.11.13": "99aad3f4956f5b92efd83eca6d87bf03e10688899487ad541f904c9c25c61dc1",
"x86_64-pc-windows-msvc-0.11.13": "0953ac2ef4fbe47ad469bfa80b658a577a02c4d73a2fb9c4c7c70dda432efded",
"x86_64-unknown-linux-gnu-0.11.13": "f830ea3d38ae1492acf53cb7f2cd0f81d6ae22b42d2d7310a6c7d42c451e1a43",
"x86_64-unknown-linux-musl-0.11.13": "5635afc285df86ce6f05f3f22335f9548b0026e58531904482c9670a1c1c65d9",
"aarch64-apple-darwin-0.11.12": "bb7c6ef869ec00cd1452f4884acf23d00b153c356ba9197ae99a1bc1ceadb7f3",
"aarch64-pc-windows-msvc-0.11.12": "393de1abc2f663cb9dd24405c7a7b31119e2a734609a233d9b89415821f39bf9",
"aarch64-unknown-linux-gnu-0.11.12": "d6e3e5183e71bbd40400da3d2913743cefb98835d8312a5e7908c33865597515",
"aarch64-unknown-linux-musl-0.11.12": "b70e87f15f12d750d218042c4ed36e41de0757eab249d332ee2e242e4174b5d5",
"arm-unknown-linux-musleabihf-0.11.12": "c1991e652c345395eff3e43aaa0f2ce5d7f0c7ed0dd5a72dcb0a3c109289ac11",
"armv7-unknown-linux-gnueabihf-0.11.12": "432e6a96ecc976861dc884d96ac3aa3cc305abc3bb49d3204544477d4a290c64",
"armv7-unknown-linux-musleabihf-0.11.12": "a8855302bad162af78c8fa53f402128a3496b7806dc7201252e7f123eefed8b9",
"i686-pc-windows-msvc-0.11.12": "98efe2a4cb9529724639aac488c43b28753e738b0f4c679d3e2dea150e5a9b20",
"i686-unknown-linux-gnu-0.11.12": "22dbbbcd9088ad3ddefce9be142ce2b127b3950718222413e3890f7fbf4a567d",
"i686-unknown-linux-musl-0.11.12": "fc5ff3fef5facf01a664f0942f372988804bda1bb8c7f9e9642d9d29398cf129",
"powerpc64le-unknown-linux-gnu-0.11.12": "36619f91357b240648caed6557fe893922c7986319c070f4feb225e8f3180b49",
"riscv64gc-unknown-linux-gnu-0.11.12": "9bdcac006731a2094ad002d93c4fe84a259484e4d35566e29fcb76962961cef9",
"riscv64gc-unknown-linux-musl-0.11.12": "80012ba0aa3b21561c96edda003add87d9111daf3425e5cc3243957ca76ba396",
"s390x-unknown-linux-gnu-0.11.12": "c9ae09f73066fb9c48beaec2ab4ad2407ce94354c5224e2982196577d6bf4581",
"x86_64-apple-darwin-0.11.12": "32fb217e6181384bf6534b31adcc66cd552eff98643c4bb35832be8552486912",
"x86_64-pc-windows-msvc-0.11.12": "e46956a6b088a0382101c797eef945c1b03826e629e968d434cf838d42d85b6b",
"x86_64-unknown-linux-gnu-0.11.12": "9acdecddacba550ee616c02bb4616d894352022550c5977524556fd5077ce1d4",
"x86_64-unknown-linux-musl-0.11.12": "591a7557f5ba7e51565f338dd4c50cebc12820ec2ebb8403a4304685f8d53ab9",
"aarch64-apple-darwin-0.11.11": "3a185bf8f46a7b7c8b910d111825907b1638d0ae503cb3c333ae205772354046",
"aarch64-pc-windows-msvc-0.11.11": "3d8f05de7ed9de885299565f78832a13e443be51de86260f25edb7cfd0fa05f6",
"aarch64-unknown-linux-gnu-0.11.11": "155fe4d3b3cb4bfce118ab4b1380f71515ae874d13d9858171b4f9c26e16684d",
"aarch64-unknown-linux-musl-0.11.11": "0fc9a49b3900f77ffaccf3ff69a70ddbc1d479e70ac5d8fd6416a7577b03c5a1",
"arm-unknown-linux-musleabihf-0.11.11": "ef98cbcd50a62d063958740194497a44fc1dc07867b6fe001db1ab2e621f1f2e",
"armv7-unknown-linux-gnueabihf-0.11.11": "c102609d34c06bdec87896d738a0e91df21f71faf21ae4379c7a1d7c961879e1",
"armv7-unknown-linux-musleabihf-0.11.11": "6660651927263c587769697572f4843ac6ea91b2b2d24be1b9c8465e87d05b46",
"i686-pc-windows-msvc-0.11.11": "c230fccbe5737e1a54a2f77ff3116c88fbee21c9b437323907618931b767410e",
"i686-unknown-linux-gnu-0.11.11": "4be5e9901e87f90a9eb5ee11a08a8df2f637df76f3a2dcb11778991b7db9d9a2",
"i686-unknown-linux-musl-0.11.11": "d2ded13fbaf59f5f1d3363c47a7cafb73cb7454db1e16cea13365bc28c75522d",
"powerpc64le-unknown-linux-gnu-0.11.11": "5348415c8606e5efac5cb293d83d2ae71e43a2dcabf677c6a4cac965c1982c74",
"riscv64gc-unknown-linux-gnu-0.11.11": "0eadf068918b960e7bf62eda83613c08d99f0d002b8d475d3383993191554d04",
"riscv64gc-unknown-linux-musl-0.11.11": "0ee27ce77e32496bc46e01f1cbb730d13647cbca41934a5871bf2fe5fdc5ba39",
"s390x-unknown-linux-gnu-0.11.11": "f19c950a93b1f5af4108267743f3de61346250b35c60cc552fb4187b534af770",
"x86_64-apple-darwin-0.11.11": "57a1a8085b4088fbcbd5080c0c30723ba6d0692c89cd071c08a4209e8da602d1",
"x86_64-pc-windows-msvc-0.11.11": "2f75a0db2c3530b6b3c24434dc38137f61ff1f4e5f2d7b4ddc5bcd142cf58b65",
"x86_64-unknown-linux-gnu-0.11.11": "a767848254391855c96df271e9ca8b7f72dd172d310460447853d25d907b9ae0",
"x86_64-unknown-linux-musl-0.11.11": "80521f18ba83109acd17e0730bd8ff898c3426aa62252c627d63418b353e788a",
"aarch64-apple-darwin-0.11.10": "e93d6af7dfff7071edd16342ba9eeccfc28d8a7deaa5707efeecf63a63a74453",
"aarch64-pc-windows-msvc-0.11.10": "3d5878cfc55106083ada1e41cccdde477413701eb9d34767e8ad973bb0863de6",
"aarch64-unknown-linux-gnu-0.11.10": "91d5f4583539640765662ef86edcf3bf4db07439b622c7bed50c961240162046",
"aarch64-unknown-linux-musl-0.11.10": "14c21bef6b54d268c6583d851095a543e6cb03a8e4bdca9a44ab91532b14cbc2",
"arm-unknown-linux-musleabihf-0.11.10": "bea66b5dcfb3460a9a2c399033b071ec4a825ff3bf27c3fedc666dcbdc2354dd",
"armv7-unknown-linux-gnueabihf-0.11.10": "ba259f6c14b5653f1b36400fb8c7862e499a4537201edda76991f2b044014fdb",
"armv7-unknown-linux-musleabihf-0.11.10": "9d6e2ea60fae542e2bd9b36f44672e99fd941f7da0898533bc274329b001a055",
"i686-pc-windows-msvc-0.11.10": "d56ad43d355d6c40fee4009d0fb7e6710416ce9b25bebf12a4127e51b3595b3c",
"i686-unknown-linux-gnu-0.11.10": "ade0a830fd0b4b67c373c8ed1e46e5af2e312032ebbe15438beddeb5b1e4d8f3",
"i686-unknown-linux-musl-0.11.10": "fb2ba8c938247f82908acf6ad41a19935b36d0fe7bbe6945ac1ba1f6044756fc",
"powerpc64le-unknown-linux-gnu-0.11.10": "dfe5b338e2ebc1e5a2850a17bce35edb8e47550c221d9245c007eaf3003cb6ed",
"riscv64gc-unknown-linux-gnu-0.11.10": "0c8776a0814bf7e32e025d13c733c3a800171a16fba77d1c21e6f10be6a28d8b",
"riscv64gc-unknown-linux-musl-0.11.10": "8ae35c10dfcae262dee07c93a3d8d10c2ce597d4a152ba1a2f1385395a286ec3",
"s390x-unknown-linux-gnu-0.11.10": "66dfdc5a216a9fbd7c2541a66f753544dddbcbb2f7a597c9bbc91d10af534c7d",
"x86_64-apple-darwin-0.11.10": "8fd091211089973f528e147166e3af683ab4ecebd4312a55d0d17d87adbde67a",
"x86_64-pc-windows-msvc-0.11.10": "7a0c424c7bc55a74751f13592235953ebbe182fa00355f7ae3fb7ab734a51638",
"x86_64-unknown-linux-gnu-0.11.10": "077e1a0777bcf516e02f4ef245e269c8d1baa780438e4c50e09c5c997f85538a",
"x86_64-unknown-linux-musl-0.11.10": "e3e78e7698d72c133c5ce851a6d60ee83afdc4c0edced382af9fd1f8e11d0105",
"aarch64-apple-darwin-0.11.9": "7d02e5f206dcfb555284f8f6b8547890f0b8eb8987f44e9a0a2378cd23338733",
"aarch64-pc-windows-msvc-0.11.9": "93de7822f6214c704ec15db1b4d33eabd3709a0303ec068723d9f5f5aa99e9e7",
"aarch64-unknown-linux-gnu-0.11.9": "6d22be8d0d675668f657cee802a1344ea7941403f59eb2a6645ef316f69b4309",
"aarch64-unknown-linux-musl-0.11.9": "31abb258d8ec2196993b82e746365717a86e3d3d55502b4c60f384540bf16306",
"arm-unknown-linux-musleabihf-0.11.9": "60fd2f75fa0a927ce0373a9289e9490351be3142b00fb0e8da082ed652c7f23c",
"armv7-unknown-linux-gnueabihf-0.11.9": "074f216882a79506f56f65413932dba9032ca6100285a562c48965688857970e",
"armv7-unknown-linux-musleabihf-0.11.9": "0ebca62577232bab2c152fdd0fa81f78a28f8fd1f4f09689347759332aae996d",
"i686-pc-windows-msvc-0.11.9": "9dbb9bf746f00dd379e7e1bd544a5e1b48a5f36408f75a7f8c6c89a7a5e5506a",
"i686-unknown-linux-gnu-0.11.9": "84418c97aeadbbdb0b80090c43e29149c3d5c4a70c76ecffb738cd4a05d515d2",
"i686-unknown-linux-musl-0.11.9": "f724d184888a52714229584536a3219f0c2fa416944fd476b52c7f597d9b3625",
"powerpc64le-unknown-linux-gnu-0.11.9": "cbcdb1b6ee99ca69a572b75544dab484cd34e29109962f5945bb95ccd85d0d52",
"riscv64gc-unknown-linux-gnu-0.11.9": "a825d1e6b62ca69971c50e6e356ebe478f7616a7873d9f7d7e17fb3efacabef2",
"riscv64gc-unknown-linux-musl-0.11.9": "486b67c16381bb75d74daa86c091b36273cde617e0a2678e0b685b89047a6e6f",
"s390x-unknown-linux-gnu-0.11.9": "caa3a59d49003d52c841625885bd60c87a957ed6173070af59c2ef7b4845b727",
"x86_64-apple-darwin-0.11.9": "a974a0226ac5d3706ebaf660d3587b0dfb93ef9cf1fd146f97d40cd4ad69db98",
"x86_64-pc-windows-msvc-0.11.9": "facbf9637c373761a96fa63c537d6c46581d357a65af01eacfd8c6319e6fb14e",
"x86_64-unknown-linux-gnu-0.11.9": "5c43f82077ff0cd5aec588286cbabd89913e4d045bd4e8aa60b20b3ecffc36e3",
"x86_64-unknown-linux-musl-0.11.9": "ac3e5051edbf30613b0f90d1c18d4807fea6b246f37490799fee0c1284a658b2",
"aarch64-apple-darwin-0.11.8": "c729adb365114e844dd7f9316313a7ed6443b89bb5681d409eebac78b0bd06c8",
"aarch64-pc-windows-msvc-0.11.8": "bb48716e74e4998993f15bc57a55e4d0d73ccbd27a66d7cbed37605f7c67d747",
"aarch64-unknown-linux-gnu-0.11.8": "eee8dd658d20e5ac85fec9c2326b6cbc9d83a1eef09ef07433e58698ac849591",
"aarch64-unknown-linux-musl-0.11.8": "29418befb64f926a2dba3473e8e69acd00b36fb845d85344ef11321a993ad8f5",
"arm-unknown-linux-musleabihf-0.11.8": "858f50a1164e9d2e3d1641a5f9d81a8b098025bd4f40011882df4f6b7d6ee393",
"armv7-unknown-linux-gnueabihf-0.11.8": "b0674ede45b797362f34af0a75d6391e844992ae92a9c181a353e3892af4c325",
"armv7-unknown-linux-musleabihf-0.11.8": "eda6e549a1d3bea67de6550e84b05d75e5538350bf50ba229840ec92063f153e",
"i686-pc-windows-msvc-0.11.8": "59520c34c3c29a901bb490d4bec55a8e1d46c75d2fbad238871e18de733b4201",
"i686-unknown-linux-gnu-0.11.8": "4a82441b70adc3886a4f9c29a1070f104ed73c7e68d14cfa6d6343a8ce0c4ccc",
"i686-unknown-linux-musl-0.11.8": "56b8e8874ba09194c580583697c09cbe6c31626e5bb4cfb1f8bfbf4998a8d6c6",
"powerpc64le-unknown-linux-gnu-0.11.8": "7b66bcc99237d19fb25d8b1bcbc1f973f735027d49e7cb9ffa22cd539fefccbc",
"riscv64gc-unknown-linux-gnu-0.11.8": "dd43289c567fda3ca59ec714ffca09125f1149289448667f36a4bb7c29c859be",
"riscv64gc-unknown-linux-musl-0.11.8": "c06b5bbbfecb258f869b18168abb46ef974a76c786fa9350923b1cf38d1661a0",
"s390x-unknown-linux-gnu-0.11.8": "068eb3f47d0760d50cd2e0fc59cc2c09eb12a4ec8bb12c269f3aef706bf4dc1a",
"x86_64-apple-darwin-0.11.8": "c59d73bf34b58bc8e33a11629f7a255c11789fd00f03cd3e68ab2d1603645de9",
"x86_64-pc-windows-msvc-0.11.8": "c84629a56e0706b69a47ea35862208af827cb6fbfa1d0ca763c52c67594637e8",
"x86_64-unknown-linux-gnu-0.11.8": "56dd1b66701ecb62fe896abb919444e4b83c5e8645cca953e6ddd496ff8a0feb",
"x86_64-unknown-linux-musl-0.11.8": "de82507d12e31cfc86c1c776238f7c248e48e40d996dedc812d64fdd31c6ed12",
"aarch64-apple-darwin-0.11.7": "66e37d91f839e12481d7b932a1eccbfe732560f42c1cfb89faddfa2454534ba8",
"aarch64-pc-windows-msvc-0.11.7": "1387e1c94e15196351196b79fce4c1e6f4b30f19cdaaf9ff85fbd6b046018aa2",
"aarch64-unknown-linux-gnu-0.11.7": "f2ee1cde9aabb4c6e43bd3f341dadaf42189a54e001e521346dc31547310e284",
"aarch64-unknown-linux-musl-0.11.7": "46647dc16cbb7d6700f762fdd7a67d220abe18570914732bc310adc91308d272",
"arm-unknown-linux-musleabihf-0.11.7": "238974610607541ccdb3b8f4ad161d4f2a4b018d749dc9d358b0965d9a1ddd0f",
"armv7-unknown-linux-gnueabihf-0.11.7": "7aa9ddc128f58c0e667227feb84e0aac3bb65301604c5f6f2ab0f442aaaafd99",
"armv7-unknown-linux-musleabihf-0.11.7": "77a237761579125b822d604973a2d4afb62b10a8f066db4f793906deec66b017",
"i686-pc-windows-msvc-0.11.7": "04652b46b1be90a753e686b839e109a79af3d032ba96d3616c162dffdbe89e5c",
"i686-unknown-linux-gnu-0.11.7": "9c77e5b5f2ad4151c6dc29db5511af549e205dbd6e836e544c80ebfadd7a07ec",
"i686-unknown-linux-musl-0.11.7": "b067ce3e92d04425bc11b84dc350f97447d3e8dffafccb7ebebde54a56bfc619",
"powerpc64le-unknown-linux-gnu-0.11.7": "6ac23c519d1b06297e1e8753c96911fadee5abab4ca35b8c17da30e3e927d8ac",
"riscv64gc-unknown-linux-gnu-0.11.7": "2052356c7388d26dc4dfcf2d44e28b3f800785371f37c5f37d179181fe377659",
"riscv64gc-unknown-linux-musl-0.11.7": "219a25e413efb62c8ef3efb3593f1f01d9a3c22d1facf3b9c0d80b7caf3a5e56",
"s390x-unknown-linux-gnu-0.11.7": "760152aa9e769712d52b6c65a8d7b86ed3aac25a24892cf5998a522d84942f9e",
"x86_64-apple-darwin-0.11.7": "0a4bc8fcde4974ea3560be21772aeecab600a6f43fa6e58169f9fa7b3b71d302",
"x86_64-pc-windows-msvc-0.11.7": "fe0c7815acf4fc45f8a5eff58ed3cf7ae2e15c3cf1dceadbd10c816ec1690cc1",
"x86_64-unknown-linux-gnu-0.11.7": "6681d691eb7f9c00ac6a3af54252f7ab29ae72f0c8f95bdc7f9d1401c23ea868",
"x86_64-unknown-linux-musl-0.11.7": "64ddb5f1087649e3f75aa50d139aa4f36ddde728a5295a141e0fa9697bfb7b0f",
"aarch64-apple-darwin-0.11.6": "4b69a4e366ec38cd5f305707de95e12951181c448679a00dce2a78868dfc9f5b",
"aarch64-pc-windows-msvc-0.11.6": "bee7b25a7a999f17291810242b47565c3ef2b9205651a0fd02a086f261a7e167",
"aarch64-unknown-linux-gnu-0.11.6": "d5be4bf7015ea000378cb3c3aba53ba81a8673458ace9c7fa25a0be005b74802",
"aarch64-unknown-linux-musl-0.11.6": "d14ebd6f200047264152daaf97b8bd36c7885a5033e9e8bba8366cb0049c0d00",
"arm-unknown-linux-musleabihf-0.11.6": "4410a9489e0a29ce8f86fc8604b75a3dd821e9e52734282cbb413b4e19c5c70a",
"armv7-unknown-linux-gnueabihf-0.11.6": "9758d49c200c211ccb2c9cbf43877102031c3457e80b6c3cb9da1e4c00119d2a",
"armv7-unknown-linux-musleabihf-0.11.6": "0677423d98cea5011d346d7d4a33a53360b99a51a04df4b45f67d43a8308c831",
"i686-pc-windows-msvc-0.11.6": "c5569da150166363389a719553d87f99e0c29e542b2c31bc8bd4aeeb8eb83d99",
"i686-unknown-linux-gnu-0.11.6": "b4bf8d78478b573c1816b17ec86da7ade14242cd68ac092c1701c5b4a75dc228",
"i686-unknown-linux-musl-0.11.6": "ca31705d93f48313d5ffdc23da165e680c6c5389d9a2cc62b85a1ed495e0331f",
"powerpc64le-unknown-linux-gnu-0.11.6": "153397d3d82e45e68fb1f4a40ee9898245ec8ed86fd03fcaacaf6e793316acf7",
"riscv64gc-unknown-linux-gnu-0.11.6": "0e3ead8667b51b07b5fb9d114bcd1914a5fe3159e6959a584dc2f89c6724e123",
"riscv64gc-unknown-linux-musl-0.11.6": "87d5932bffef3b7b9cba4a2a042f95edf75cd34555fc80cfa98cc5a4426635f9",
"s390x-unknown-linux-gnu-0.11.6": "6e3d4338da2db2c63326721f1eb3b4f32d9bde24aeff11208d397e1aeba8678e",
"x86_64-apple-darwin-0.11.6": "8e0ed5035eaa28c7c8cd2a46b5b9a05bfff1ef01dbdc090a010eb8fdf193a457",
"x86_64-pc-windows-msvc-0.11.6": "99aa60edd017a256dbf378f372d1cff3292dbc6696e0ea01716d9158d773ab77",
"x86_64-unknown-linux-gnu-0.11.6": "0c6bab77a67a445dc849ed5e8ee8d3cb333b6e2eba863643ce1e228075f27943",
"x86_64-unknown-linux-musl-0.11.6": "aa342a53abe42364093506d7704214d2cdca30b916843e520bc67759a5d20132",
"aarch64-apple-darwin-0.11.5": "470993e87503874c7c48861daa308b48a7c367e117235bbecf19368b9fdd35b2",
"aarch64-pc-windows-msvc-0.11.5": "9b9b99a985cccf249225aaad76412823e9d9736d605dc2252151172a7f6ab3db",
"aarch64-unknown-linux-gnu-0.11.5": "3e9b525d686ae4f3682412bce21536366a5c79616a41055530319c501c883169",
"aarch64-unknown-linux-musl-0.11.5": "d73860013061c62d6a89f3370527d4c407214038af331147773ae2fd8f6394c1",
"arm-unknown-linux-musleabihf-0.11.5": "dcfb4dc15f46eae90ac6d64e7dfc91d8bc0b16816f53b9f8d58ccc8a1220dbb8",
"armv7-unknown-linux-gnueabihf-0.11.5": "818d86386fb57ca4182f39df25dd6160e97300d5ba362bc44e25d8adc904776c",
"armv7-unknown-linux-musleabihf-0.11.5": "2cae8baae2c1b42249e656e16f5fe733189b0760ee93995be024f9cc5e72eb19",
"i686-pc-windows-msvc-0.11.5": "2057ccf3dba9ed23755df92318a08ab221e9e088385c667292acc09d9cc477c6",
"i686-unknown-linux-gnu-0.11.5": "2d340e2e5b3354ee7208bb8f2bbf4d2347d7ffdf2af733c21bee98746e34076d",
"i686-unknown-linux-musl-0.11.5": "ffe2bc9e0c4fdc18f69b7c5bc016a03fa17028d42620ab2b024ad5bb22cd3f3d",
"powerpc64le-unknown-linux-gnu-0.11.5": "c4dabaaa36a13989ab04389263064ca5c27093eb2e7c851ab62d50b6312d9800",
"riscv64gc-unknown-linux-gnu-0.11.5": "6ae3ec3cf1aab72604bc6aa8486faf4b473066422c49d9c42ea8366ff3039de4",
"riscv64gc-unknown-linux-musl-0.11.5": "d4686fb144563a40e791fc3f010a91e57fdce9cac7a03b8a14a972c25be4464c",
"s390x-unknown-linux-gnu-0.11.5": "1309f1e462462dab2da6a55c37012a228d1c06a55c5b43f8ef901ba1599d9e12",
"x86_64-apple-darwin-0.11.5": "b8964bed538143f9016d807e421e28f0237a29589851fc79e8159751ac64779a",
"x86_64-pc-windows-msvc-0.11.5": "3fa5b6ea9de9256a035e0471f5ef0bb5d95344659723d6eb063e27c76431515d",
"x86_64-unknown-linux-gnu-0.11.5": "0d87793f733f327849ebf9cf51b576cfb08328e22af73061405e4bec96ae84d1",
"x86_64-unknown-linux-musl-0.11.5": "ee8a52743ce3979e52872b49c5e58ffa541048cb95132142bff23fe5608d73ea",
"aarch64-apple-darwin-0.11.4": "9b9cb6c6f58c3246dbf3351ed4e97c500bc3266f5f237d2fd620b66e1c31dc56",
"aarch64-pc-windows-msvc-0.11.4": "708b1c210109e50ff520bcd9b6d29cbd8cee584bb55e84d3d1941bf75ab0893d",
"aarch64-unknown-linux-gnu-0.11.4": "f5aa91bba0b98d85a4e5262e2847f9ab2273c754f6374dff62b37ef18c65a2e7",
"aarch64-unknown-linux-musl-0.11.4": "a02ec7667d7bb1d33cdb7e1de22f7e4242967e3df7e350bac6212515e3bce8ac",
"arm-unknown-linux-musleabihf-0.11.4": "5bbc59d8c3d5fdade88fca47e4c18298e44a367e178e97e11466b22e992edae2",
"armv7-unknown-linux-gnueabihf-0.11.4": "9d2299155b65988643a55777c638408a0df8e65f606933d1e44691ada72ff106",
"armv7-unknown-linux-musleabihf-0.11.4": "43b1e02f8f4b27fd1d085fb14a246638bb607af32408cb13c5c3b3fb47db027f",
"i686-pc-windows-msvc-0.11.4": "661588b3607e6d5bb78551f596772a0d04a930ce128189c90800d07f6fca1998",
"i686-unknown-linux-gnu-0.11.4": "4248773a2574c3b697588655d7bf14f97baa744c3e156585230e5c711befa6ff",
"i686-unknown-linux-musl-0.11.4": "0323c08c1e7455cdf65c89296eda28bad9051cb09d16ea3ce1d0bf718143449e",
"powerpc64le-unknown-linux-gnu-0.11.4": "3ddb764538a5dcb4967d7375fde193ce5391e37ddd4d1242012d04cf3848479f",
"riscv64gc-unknown-linux-gnu-0.11.4": "93db93607a824d677c47003ee828936913cfdeb2c871bb34cd79c3ec4481e2b1",
"riscv64gc-unknown-linux-musl-0.11.4": "78f0d7f92244ce3d7a7a0df5fab2495450bcb18600b59acf1755e77cafed2300",
"s390x-unknown-linux-gnu-0.11.4": "07361e1fb32e870841a27d3d7b0b20c4a81e0cc25eeb8b9115425bfd227d2d05",
"x86_64-apple-darwin-0.11.4": "c326edaf3fd492f53d1c58777f3459c0d87bf9dae8d89e80aec4b0da6622dcf3",
"x86_64-pc-windows-msvc-0.11.4": "26d84455a40b0272b2ab4785cad298ff2c89cd0765b482e9f85b5a1bd880a863",
"x86_64-unknown-linux-gnu-0.11.4": "12f9a192bb32d70470aa22cbd2a193d1323a3f58f6ac5f9e3866aaca760c98c6",
"x86_64-unknown-linux-musl-0.11.4": "36ce1c5d8997db9b6a24d0f41646d5509b6d1d8b9448c7325f8248a6ea5d4b00",
"aarch64-apple-darwin-0.11.3": "2bc3d0c7bf2bd08325b1e170abac6f7e5b3346e1d4eab3370d17cefec934996f",
"aarch64-pc-windows-msvc-0.11.3": "e99c56f9ab5e1e1ddcaea3e2389990c94baf38e0d7cb2148de08baf2d3261d49",
"aarch64-unknown-linux-gnu-0.11.3": "711382e3158433f06b11d99afb440f4416359fc3c84558886d8ed8826a921bff",
"aarch64-unknown-linux-musl-0.11.3": "8ecec82cb9a744d5fabff6d16d7777218a7730f699d2aa0d2f751c17858e2efa",
"arm-unknown-linux-musleabihf-0.11.3": "3d021046a94ad11f12b9d83f36442a1a28e92e7149c3f79ba2951c96653dafac",
"armv7-unknown-linux-gnueabihf-0.11.3": "13c9a0f5f624275ccd36db2896607f4fee3585f420734b16f6c66d70e32aa458",
"armv7-unknown-linux-musleabihf-0.11.3": "260a88e2f00daab0363a745fde036a7881002d7a81094388f31925acb284110b",
"i686-pc-windows-msvc-0.11.3": "036fa39fa5ea3cb86c127324924b913b5858e8d91c4cb413edacfc3123001696",
"i686-unknown-linux-gnu-0.11.3": "b9410c8dae2fa0d4939af5b0ee7272d5591bd55890e8274dcf7f1aea84bfe043",
"i686-unknown-linux-musl-0.11.3": "afe533fd409105e753d844490c65a4375e75bfb3812e49122684f996bed9e90a",
"powerpc64le-unknown-linux-gnu-0.11.3": "5cdcadf4d50a5354312bc8ef37c2a6cfab4e2f13ccdf8380d3012b927b4ded95",
"riscv64gc-unknown-linux-gnu-0.11.3": "8271e07ed9695870f4b0ae5ec722e3ae08fff280068f08bc6a8ca76c67d7fefa",
"riscv64gc-unknown-linux-musl-0.11.3": "b750fc8393ced9939448849b05e94de6bf1e998bb7030c4ebe744b47b372bce9",
"s390x-unknown-linux-gnu-0.11.3": "6dc4f555a5f6515f7fddb281422d2a8a3943853dae5de837bbb5d996d7576c71",
"x86_64-apple-darwin-0.11.3": "b0e05e0b43a000fdc2132ee3f3400ba5dee427bc2337d3ec4eb8cf4f3d5722af",
"x86_64-pc-windows-msvc-0.11.3": "ae681c0aaec7cc96af184648cb88d73f8393ed60fa5880abdd6bdb910f9b227c",
"x86_64-unknown-linux-gnu-0.11.3": "c0f3236f146e55472663cfbcc9be3042a9f1092275bbe3fe2a56a6cbfd3da5ce",
"x86_64-unknown-linux-musl-0.11.3": "8b40cf16b849634b81a530a3d0a0bcae5f24996ef9ae782976fd69b6266d3b8e",
"aarch64-apple-darwin-0.11.2": "4beaa9550f93ef7f0fc02f7c28c9c48cd61fe30db00f5ac8947e0a425c3fb282",
"aarch64-pc-windows-msvc-0.11.2": "ffdded8338205f53727b51d404563a5ac8eaa9aea53279a7b7c42177e11d478c",
"aarch64-unknown-linux-gnu-0.11.2": "04792cac761c4a6ba78267f36f2af541b7f92196d42ac55d21d3ff6b0f5ab6a5",
"aarch64-unknown-linux-musl-0.11.2": "275d91dd1f1955136591e7ec5e1fa21e84d0d37ead7da7c35c3683df748d9855",
"arm-unknown-linux-musleabihf-0.11.2": "ce572dac1a8f9a92960f89e99351352fae068d34b24bed86fb88e75fd5dd67d9",
"armv7-unknown-linux-gnueabihf-0.11.2": "3e90d7de9e3a4e2d8d1bd9ce164362fce22248474986e712039479fb6fd73136",
"armv7-unknown-linux-musleabihf-0.11.2": "5222cdd7c7dd3263f8c243831606a9f01a1a07a40ffc3c26c03afb34491075c2",
"i686-pc-windows-msvc-0.11.2": "506f8274b253b2386881a121f3b7d915b637019bda15876bbd1357235305cf12",
"i686-unknown-linux-gnu-0.11.2": "c7ec378bab887443a70786382e58d76489da14a7e33b155915d648cca4bdb46c",
"i686-unknown-linux-musl-0.11.2": "ade8714be45457899568c5b03ef885a0cc94476c07a0bdbe34531ba84231bab2",
"powerpc64le-unknown-linux-gnu-0.11.2": "3f3a50e99364efc8ff7add10e79757a2b8458700a38180ec5f313524481b9fbc",
"riscv64gc-unknown-linux-gnu-0.11.2": "e56a93f0ff21d6908461a6ecbf465beae19ae22719f900284abb7680bd07ec41",
"riscv64gc-unknown-linux-musl-0.11.2": "4f263571bb457a16a31cb38fba4fcc9cf1059d1d32c5b2e54c43175fcd59205d",
"s390x-unknown-linux-gnu-0.11.2": "42ebe40775f2a77a514fa47399fde86473bf35bd33b6896c6410a0309fc4d205",
"x86_64-apple-darwin-0.11.2": "a9c3653245031304c50dd60ac0301bf6c112e12c38c32302a71d4fa6a63ba2cb",
"x86_64-pc-windows-msvc-0.11.2": "171b7ccda1bbd562da6babeffcf533a1c6cc7862cf998da826e1db534fc43e48",
"x86_64-unknown-linux-gnu-0.11.2": "7ac2ca0449c8d68dae9b99e635cd3bc9b22a4cb1de64b7c43716398447d42981",
"x86_64-unknown-linux-musl-0.11.2": "4700d9fc75734247587deb3e25dd2c6c24f4ac69e8fe91d6acad4a6013115c06",
"aarch64-apple-darwin-0.11.1": "f7815f739ed5d0e4202e6292acedb8659b9ae7de663d07188d8c6cbd7f96303f",
"aarch64-pc-windows-msvc-0.11.1": "b789db0c1504dd3b02c090bd5783487497cc46cc2eb71754874cdd1ef59eb52a",
"aarch64-unknown-linux-gnu-0.11.1": "1340e62da1ee3c1109764340e1247e8a1a232c30dde4a0f0548976dcaa90f06d",
"aarch64-unknown-linux-musl-0.11.1": "bd04ffce77ee8d77f39823c13606183581847c2f5dcd704f2ea0f15e376b1a27",
"arm-unknown-linux-musleabihf-0.11.1": "625c0e756e2374fce864ceaa6beedd5821e276e2b6307f2b719f2d62b449b89c",
"armv7-unknown-linux-gnueabihf-0.11.1": "baf8daaab20b0502d1853dbfd916afb0762c024ae7f0df1c2deb2a1a1c1c3467",
"armv7-unknown-linux-musleabihf-0.11.1": "684c25b74e83bcb1b177152379cfe2c974ba731aa5af278e1d161e41709f8bcf",
"i686-pc-windows-msvc-0.11.1": "3c07858a08c54e4e5753239354c7b07ae69071b2b6f5aa2cc970e612adcb4740",
"i686-unknown-linux-gnu-0.11.1": "6e83167c05708570563b10b6cc7e8c289daef5f51fde0b152e41af2a7ef70813",
"i686-unknown-linux-musl-0.11.1": "b0d5152635c257fec76f95cb9268112b47ff70bd33a23866295a4f2ed9f46b7f",
"powerpc64le-unknown-linux-gnu-0.11.1": "e42d2abfac46f57564789e2bfa6dbea4ae3135892e36ae066ba0ae77b69bb676",
"riscv64gc-unknown-linux-gnu-0.11.1": "5e2c757b35dab015ad37f74ee3e060208390b5f4defb6684876f1be0664f3f6e",
"riscv64gc-unknown-linux-musl-0.11.1": "6f590a824aed363cbec4079f7ddab87b5685119e0f5f0e71cd114c7b7c326199",
"s390x-unknown-linux-gnu-0.11.1": "4208173c74e29572b799178709b5ed5828b24888659f944a4b47c0aaf78b42d2",
"x86_64-apple-darwin-0.11.1": "2103670e8e949605e51926c7b953923ff6f6befbfb55aee928f5e760c9c910f8",
"x86_64-pc-windows-msvc-0.11.1": "6659250cebbd3bb6ee48bcb21a3f0c6656450d63fb97f0f069bcb532bdb688ed",
"x86_64-unknown-linux-gnu-0.11.1": "7c0c8069053e6e99e5911ff32b916be571f3419cd8e11bd28fb7da2c7dcaa553",
"x86_64-unknown-linux-musl-0.11.1": "4e949471a95b37088a1ff1a585f69abed4d3cd3f921f50709a46b6ba62986d38",
"aarch64-apple-darwin-0.11.0": "0c0f32c6a3473c5928aff96c3233715edfc79290e892f255cac93710cde7b91a",
"aarch64-pc-windows-msvc-0.11.0": "95419e04a3ef5f13fb2a06bd6d787ba80a9d8981d6f097780e5a979817a2879d",
"aarch64-unknown-linux-gnu-0.11.0": "8e179ca110343a17f801444ff9ef117dba56ef5fc9f6a4c9bb77b318ddba5f24",
"aarch64-unknown-linux-musl-0.11.0": "658be4b8ec905635f1295468d4d5120d9e1ab1722eec9a104473ce993590babe",
"arm-unknown-linux-musleabihf-0.11.0": "bfdcbd5fa41c8a9877a72c2b55a95da2bc79933885ef56c699b65bb2ed9cea91",
"armv7-unknown-linux-gnueabihf-0.11.0": "0cad4e1b6769e48aa1e80cf639ddcc7c1bfe9ed017e95868fed185a8d818c949",
"armv7-unknown-linux-musleabihf-0.11.0": "2aa9da83c6c0cf8a06bc9df14d51056284fa067ef5390b4db79998ff12f3bee7",
"i686-pc-windows-msvc-0.11.0": "3b09d70e686087e096dbd8a2af21b922a2cac7d613dc053c3281c3ddbb961961",
"i686-unknown-linux-gnu-0.11.0": "59928a0267501c20d9f9942f5f1d81a991ec55e29a19e002ae3d5c178c674c89",
"i686-unknown-linux-musl-0.11.0": "1f438d6f6f851f0dabad3307ce7fd46541ecc5c42ebb664f382eb6c9a424a67d",
"powerpc64le-unknown-linux-gnu-0.11.0": "29f17fb43595492b1a36cda57df7adad74183132df32799d32897268ff4e26dd",
"riscv64gc-unknown-linux-gnu-0.11.0": "84ef37dda1003c5b65fa6c8f84242d35a7fcc84cc5ea9490d702edc36cad1f67",
"s390x-unknown-linux-gnu-0.11.0": "b25be62f3b642348a2fece5c658624586661b8d1103891ab6903768b0529edc4",
"x86_64-apple-darwin-0.11.0": "31aaec764166af8885cf99321fd6ed24fef80225a6f26ed1ae8ce04111688a7e",
"x86_64-pc-windows-msvc-0.11.0": "e21d00b172df83531564a95e75a2bdc0c59b471dbb3515f0c1b4d6ef657dc451",
"x86_64-unknown-linux-gnu-0.11.0": "cc0fbb42b3642125f600a55b0b095bea65cddaadb94c6ea2b6ba5d79c5825089",
"x86_64-unknown-linux-musl-0.11.0": "bf6b0757c73d1726faa2a819b155d4d864919a95766720215d78fdcd09d42d26",
"aarch64-apple-darwin-0.10.12": "ae738b5661a900579ec621d3918c0ef17bdec0da2a8a6d8b161137cd15f25414",
"aarch64-pc-windows-msvc-0.10.12": "e79881e2c4f98a0f3a37b8770bf224e8fee70f6dcf8fc17055d8291bb1b0b867",
"aarch64-unknown-linux-gnu-0.10.12": "0ed7d20f49f6b9b60d45fdfcac28f3ac01a671a6ef08672401ed2833423fea2a",
"aarch64-unknown-linux-musl-0.10.12": "55bd1c1c10ec8b95a8c184f5e18b566703c6ab105f0fc118aaa4d748aabf28e4",
"arm-unknown-linux-musleabihf-0.10.12": "9714e5059b05110a1c7ddbc18c971c13e0260e10551b7b77d82cbf907a4ebd9b",
"armv7-unknown-linux-gnueabihf-0.10.12": "eaa02f36d5112029601b18ac3d1a0c03a83bb20cb4154c2f5345f777fa6c4101",
"armv7-unknown-linux-musleabihf-0.10.12": "bd735652298c6e62cdd2ac939babe176a3356613e6803baa33d0bc10e8d9e4ed",
"i686-pc-windows-msvc-0.10.12": "2312e75b9c77befdc1bff30da18f16df03083452852952553bee91da362c1a1d",
"i686-unknown-linux-gnu-0.10.12": "8501844b34e3a28cfbba5a4b857eebd696d952e0bb4160357451ad80f3f49db8",
"i686-unknown-linux-musl-0.10.12": "56cad78abcf5b710d2f7b9f774fcfd6bbed340d2aa9d9fc9e3b515542ec5e953",
"powerpc64le-unknown-linux-gnu-0.10.12": "3c8017d9112221c83f43e8a15a58099663c0b2bdeabc8b43bb800413dfa21218",
"riscv64gc-unknown-linux-gnu-0.10.12": "b1ca482b6b5dd7bf6ab733a3695cb0ab5b8e992ca96527efae93aa78fcc52a9b",
"s390x-unknown-linux-gnu-0.10.12": "e1a0345eefe6fd3300948cd6f18aab092f9b88a243782113e645ce96530a6693",
"x86_64-apple-darwin-0.10.12": "17443e293f2ae407bb2d8d34b875ebfe0ae01cf1296de5647e69e7b2e2b428f0",
"x86_64-pc-windows-msvc-0.10.12": "4c1d55501869b3330d4aabf45ad6024ce2367e0f3af83344395702d272c22e88",
"x86_64-unknown-linux-gnu-0.10.12": "ec72570c9d1f33021aa80b176d7baba390de2cfeb1abcbefca346d563bf17484",
"x86_64-unknown-linux-musl-0.10.12": "adccf40b5d1939a5e0093081ec2307ea24235adf7c2d96b122c561fa37711c46",
"aarch64-apple-darwin-0.10.11": "437a7d498dd6564d5bf986074249ba1fc600e73da55ae04d7bd4c24d5f149b95",
"aarch64-pc-windows-msvc-0.10.11": "6a3eec4105c775dd87c11ef8ec41564648273751ff807c8955c24ddbcc636d03",
"aarch64-unknown-linux-gnu-0.10.11": "23003df007937dd607409c8ddf010baa82bad2673e60e254632ca5b04edcce13",
"aarch64-unknown-linux-musl-0.10.11": "5d80a7f6343d2676dfde1e5126582070a2bbc62df6f60d5527a169be3788532a",
"arm-unknown-linux-musleabihf-0.10.11": "d3c248497c450d22a39c1d43a4a358c0c852e6056f5f49be96495eea41afb96c",
"armv7-unknown-linux-gnueabihf-0.10.11": "7895a6470dfba051af4e74253599482fc0b37141b5d229956b383365e1a22902",
"armv7-unknown-linux-musleabihf-0.10.11": "d2880c08acfdaef0985488972c8b14969f7139c27545046e2f6202f0e0f4d9d8",
"i686-pc-windows-msvc-0.10.11": "c17f3dc3b2c47490057f17a1f0c37270f11a7b7cedf9bf2c0f841ce02bc7001b",
"i686-unknown-linux-gnu-0.10.11": "1ab69ff7dd104a902731758ee05b782dfd9bdb263384e61650de638f33f586df",
"i686-unknown-linux-musl-0.10.11": "cffb80d303fc1655e259d0b769c489f452e97425a6b6d3393d766413783a1d8c",
"powerpc64le-unknown-linux-gnu-0.10.11": "ddc6a20670e60219e947b1b04813be80d7e9f4c4a0234231c8ed9298eec04aa6",
"riscv64gc-unknown-linux-gnu-0.10.11": "c0719473cf5f8b475e917b8dfef6ae5d876b86a00a82ef91e47a02f561399f4f",
"s390x-unknown-linux-gnu-0.10.11": "305ee734c585918515a22fe43b7cf253c38d468771373a0c02364d67498e07b2",
"x86_64-apple-darwin-0.10.11": "ff90020b554cf02ef8008535c9aab6ef27bb7be6b075359300dec79c361df897",
"x86_64-pc-windows-msvc-0.10.11": "9ee74df98582f37fdd6069e1caac80d2616f9a489f5dbb2b1c152f30be69c58e",
"x86_64-unknown-linux-gnu-0.10.11": "5a360b0de092ddf4131f5313d0411b48c4e95e8107e40c3f8f2e9fcb636b3583",
"x86_64-unknown-linux-musl-0.10.11": "d78246139dc6cf3ed6d03c84da762686bced7ad1de67977ee372a45b95a1f6d0",
"aarch64-apple-darwin-0.10.10": "8a09f0ef51ee7f7170731b4cb8bde5bf9ba6da5304f49a7df6cdab42a1f37b5d",
"aarch64-pc-windows-msvc-0.10.10": "2c6fe113f14574bc27f085751c68d3485589fcc3c3c64ed85dd1eecc2f87cffc",
"aarch64-unknown-linux-gnu-0.10.10": "2b80457b950deda12e8d5dc3b9b7494ac143eae47f1fb11b1c6e5a8495a6421e",
"aarch64-unknown-linux-musl-0.10.10": "d08c08b82cdcaf2bd3d928ffe844d3558dda53f90066db6ef9174157cc763252",
"arm-unknown-linux-musleabihf-0.10.10": "ccc3c4dd5eeea4b2be829ef9bc0b8d9882389c0f303f7ec5ba668065d57e2673",
"armv7-unknown-linux-gnueabihf-0.10.10": "032786622b52f8d0232b5ad16e25342a64f9e43576652db7bf607231021902f3",
"armv7-unknown-linux-musleabihf-0.10.10": "f6f67b190eb28b473917c97210f89fd11d9b9393d774acd093ea738fcee68864",
"i686-pc-windows-msvc-0.10.10": "980d7ea368cc4883f572bb85c285a647eddfc23539064d2bfaf8fbfefcc2112b",
"i686-unknown-linux-gnu-0.10.10": "5260fbef838f8cfec44697064a5cfae08a27c6ab7ed7feab7fc946827e896952",
"i686-unknown-linux-musl-0.10.10": "a6683ade964f8d8623098ca0c96b4311d8388b44a56a386cd795974f39fb5bd2",
"powerpc64le-unknown-linux-gnu-0.10.10": "78939dc4fc905aca8af4be19b6c6ecc306f04c6ca9f98d144372595d9397fd0d",
"riscv64gc-unknown-linux-gnu-0.10.10": "5eff670bf80fce9d9e50df5b4d46c415a9c0324eadf7059d97c76f89ffc33c3f",
"s390x-unknown-linux-gnu-0.10.10": "a32d2be5600f7f42f82596ffe9d3115f020974ca7fb4f15251c5625c5481ea5e",
"x86_64-apple-darwin-0.10.10": "dd18420591d625f9b4ca2b57a7a6fe3cce43910f02e02d90e47a4101428de14a",
"x86_64-pc-windows-msvc-0.10.10": "d31a30f1dfb96e630a08d5a9b3f3f551254b7ed6e9b7e495f46a4232661c7252",
"x86_64-unknown-linux-gnu-0.10.10": "3e1027f26ce8c7e4c32e2277a7fed2cb410f2f1f9320d3df97653d40e21f415b",
"x86_64-unknown-linux-musl-0.10.10": "74544e8755fbc27559e22e29fd561bdc48f91b8bd8323e760a1130f32433bea4",
"aarch64-apple-darwin-0.10.9": "a92f61e9ac9b0f29668c15f56152e4a60143fca148ff5bfadb86718472c3f376",
"aarch64-pc-windows-msvc-0.10.9": "5c2526844acf978eab784161c21604343141aa6c9ed22c237ae2f315648f049d",
"aarch64-unknown-linux-gnu-0.10.9": "cc0c5a8573e7d6d78aecb954e0a62b5c0d18217bb81f1e19363b428c57a9962a",
"aarch64-unknown-linux-musl-0.10.9": "05b0d3087e913ebe11756365a90dd47c05d6728752fdbe129ad4c3ccd769826d",
"arm-unknown-linux-musleabihf-0.10.9": "6220fa3eb5f8212cae4ec3a5053060914aaa829549cf706dde9f9cc344f75f61",
"armv7-unknown-linux-gnueabihf-0.10.9": "0076eac165c2f7129627e2297478e7ffbb9465d9ae6a8961b2f53dcbd807473d",
"armv7-unknown-linux-musleabihf-0.10.9": "f702e821b80e371e14987a886d58ee103c5948b7b096fa49a552624c24d7e073",
"i686-pc-windows-msvc-0.10.9": "034bf6b91390b9adc5f41a5946fdb618ebc8cef1574f3d95af9c12fe2bf9aaf3",
"i686-unknown-linux-gnu-0.10.9": "90d9168a4e7900463f9fd79a32eb1890081fb1e238d803404f6e17b2dcdcca7b",
"i686-unknown-linux-musl-0.10.9": "1d42b0d0a037b3d658b11ec889154686db3ab269ba2b789bdbc45d36e3549f34",
"powerpc64le-unknown-linux-gnu-0.10.9": "e804f4a7d0659e09ef806365f04bdd33c940603fab903e925402748d05dd109a",
"riscv64gc-unknown-linux-gnu-0.10.9": "1541596da45855e34202130027a613a2ace7d441e04d747cb4dd9f2590461c9a",
"s390x-unknown-linux-gnu-0.10.9": "a589d4a8930c82fa7225daec19c632651b3c84f50f770efe758056b387e5f0dd",
"x86_64-apple-darwin-0.10.9": "9cc2de7d195fa157f98b306a8a1cb151ded93f488939b93363cebc8b9d598c28",
"x86_64-pc-windows-msvc-0.10.9": "f58dc40896000229db7c52b8bdd931394040ef2ad59abd1eda841f6d70b13d7a",
"x86_64-unknown-linux-gnu-0.10.9": "20d79708222611fa540b5c9ed84f352bcd3937740e51aacc0f8b15b271c57594",
"x86_64-unknown-linux-musl-0.10.9": "433e56874739e92c7cfd661ba9e5f287b376ca612c08c8194a41a98a13158aea",
"aarch64-apple-darwin-0.10.8": "c3a6fff5b6b4abddff863117878194e35dbc6b0267d61ad259ab9896f9b8dcbb",
"aarch64-pc-windows-msvc-0.10.8": "20db25dc446f9a75d1cfde0a5f4b021e1b2eb266e600a610d32c7ca5d7ff83bf",
"aarch64-unknown-linux-gnu-0.10.8": "661860e954f87dcd823251191866af3486484d1a9df60eed56f4586ed7559e3d",
"aarch64-unknown-linux-musl-0.10.8": "2ef0d0489e9e2a32f134ca80097fa36be4b486c4ab004706a1d6d0d57980ff07",
"arm-unknown-linux-musleabihf-0.10.8": "f6dfca333c566024f6feaef19adf7ce06675a1bc2fcadc2de640dd805112a518",
"armv7-unknown-linux-gnueabihf-0.10.8": "1bee8f88a7129f7922c43b0e091a7065d4e13a2934e599aa8a48f162cf9739aa",
"armv7-unknown-linux-musleabihf-0.10.8": "ad0ca78991518fde1c4c42f8590e86f29db1f746cedb637f9dac1bb7de2e28da",
"i686-pc-windows-msvc-0.10.8": "db40952a0c16eb647cb3a06c8cc13712b72e5b6a2501bc080c7e00c0f0e4ad88",
"i686-unknown-linux-gnu-0.10.8": "3a78c54ffedce8eafd59a19a32eaec538924169fa4bf9d28d2d5841a7f604210",
"i686-unknown-linux-musl-0.10.8": "25cf70c12abded06c4c18db8fdba253776bc115ce28f849af6f6ef771e67d730",
"powerpc64le-unknown-linux-gnu-0.10.8": "3a4a158e645d04825872eb59ca60dd5026529e4f9fe5dd88987a45478301724d",
"riscv64gc-unknown-linux-gnu-0.10.8": "2349e786d2de14fbd72386f42ed9f398cad52f47f6cdd78e05f338a1faf1321c",
"s390x-unknown-linux-gnu-0.10.8": "21de0f86838b06e6ebcc3cb6a079d49d3d3886e5b49822ae58e5758eb08a6710",
"x86_64-apple-darwin-0.10.8": "e0a1b22b039f8155765f5bc8c13df03a5f994a901901179791572e8e5f053281",
"x86_64-pc-windows-msvc-0.10.8": "2e70ecd22196cbd9d14eefb700814bcafc5b75a0d8275b52e8402e5fe256d928",
"x86_64-unknown-linux-gnu-0.10.8": "f0c566b55683395a62fefb9261a060fa09824914b5682c3b9629fa154762ae2f",
"x86_64-unknown-linux-musl-0.10.8": "a4e6ad1aecac61077de548d2cc9ccf2c2f1848863312b3b59fb0d2eb8d8a043c",
"aarch64-apple-darwin-0.10.7": "1eb4dcc5e0fc8669fa0b33cf1151b64ba3b8c26b60dceff4f7a686129e2af22b",
"aarch64-pc-windows-msvc-0.10.7": "45ba7b72a7435343d650c73d21d65d2e8bdda47f6bd39af00e37f3cb70aa79ef",
"aarch64-unknown-linux-gnu-0.10.7": "20efc27d946860093650bcf26096a016b10fdaf03b13c33b75fbde02962beea9",
"aarch64-unknown-linux-musl-0.10.7": "115291f9943531a3b63db3a2eabda8b74b8da4831551679382cb309c9debd9f7",
"arm-unknown-linux-musleabihf-0.10.7": "3ea331cd68f28235e13639d5400341a3893d0455f2473a74a9926b7d62cb739c",
"armv7-unknown-linux-gnueabihf-0.10.7": "2e2f88cc5a7b49282c9aa05cfe03e3b8b0a044e90981062fbeb60a7aeba188ca",
"armv7-unknown-linux-musleabihf-0.10.7": "27319e842d802c5c73be52f3774999d79d0f28f37984090998560fd925133375",
"i686-pc-windows-msvc-0.10.7": "a7960473a473ee5907a55fccb8c645e24c1da7d39076aaef652b819e3a26a28b",
"i686-unknown-linux-gnu-0.10.7": "1a22aa0d2268a9a6fb2e5f092ca3d1ef7c14f96c3b4fd546226814f376e59d73",
"i686-unknown-linux-musl-0.10.7": "75c2cc60675fb6f846b394c3f7b51f77c08f0981abf5cfcb5e27cfbb2f5837e0",
"powerpc64le-unknown-linux-gnu-0.10.7": "7398686962b966959c32e7fbfd2868fbac38491ff0d86033d7c8bbb826a04026",
"riscv64gc-unknown-linux-gnu-0.10.7": "39abc60403fdcf5c681b63c967059d42aea58a81ffb092d6dda767390222a4b0",
"s390x-unknown-linux-gnu-0.10.7": "281ae4c1343e0c5f9775358690d40e00edbf63ca788b4d8b6574a0b5cba624f4",
"x86_64-apple-darwin-0.10.7": "4fed9d4f4608fb3850db714ee37244436f850a2b6e485bc510795679c2d08866",
"x86_64-pc-windows-msvc-0.10.7": "8881afb877996a1373a12e816395122a8d39a3ac06cd066272acdb49510cf0fe",
"x86_64-unknown-linux-gnu-0.10.7": "9ac6cee4e379a5abfca06e78a777b26b7ba1f81cb7935b97054d80d85ac00774",
"x86_64-unknown-linux-musl-0.10.7": "992529add6024e67135b1c80617abd2eca7be2cf0b99b3911f923de815bd8dc1",
"aarch64-apple-darwin-0.10.6": "3993249d8f51deaf34cfce037e57e294e82267ff1f9dc45b7983a17afaf065b4",
"aarch64-pc-windows-msvc-0.10.6": "e431c9a4f8d66e872f6640500cbbf1af20418720b78ac01404399ac810ef2e46",
"aarch64-unknown-linux-gnu-0.10.6": "9380705294a85e3e634570abddd5b2577900c1873c29b790c7abc56a81dce4bc",
"aarch64-unknown-linux-musl-0.10.6": "7de7aa836fd54ff930fa5e63bc04da35e2fbd72889d6258e153479c44d08b863",
"arm-unknown-linux-musleabihf-0.10.6": "9d0b55a3b0aff97884f49e15739a9936eb33a1b59a5bf1b3c7ce4d9e517d4d76",
"armv7-unknown-linux-gnueabihf-0.10.6": "165400192202ee2487bcee4429a5e5a2fddfe8fef8985fb548e2a89fda6b2376",
"armv7-unknown-linux-musleabihf-0.10.6": "1cf58447f2003122f83b1a34aee94429cb2686010c3502bfa21c8116e09d5bdf",
"i686-pc-windows-msvc-0.10.6": "ec189db03b89262e6089e4fb895af6116b964234cf4166b330e258aaf7f999b4",
"i686-unknown-linux-gnu-0.10.6": "f72a88d489fc424aca69c1cbf175bb5aeae649aa8c55b092628e5e553b481dd5",
"i686-unknown-linux-musl-0.10.6": "94471f51aedbfaceb495949d5ce37d44352b2dfea45b61399870c39a881681fc",
"powerpc64le-unknown-linux-gnu-0.10.6": "72d504553fc7150177bbf57b585c850cb4d695ddd848b9ba1416ac122eb88293",
"riscv64gc-unknown-linux-gnu-0.10.6": "8f8a966d1f911f39334581a933805a30cdec5a7c1d4f580e03973ff45bf9b6ad",
"s390x-unknown-linux-gnu-0.10.6": "5ed60237762862b05561d02b7f095268897d0561e87dca5986b04319265bc2cf",
"x86_64-apple-darwin-0.10.6": "d7647571fb17a5107d4d23cc190418039c157fd7361ddb59bc6f8127a49e3eac",
"x86_64-pc-windows-msvc-0.10.6": "b27eb789f281e398a82197477de727fc8faf08605152115686da2c3cba0d25f7",
"x86_64-unknown-linux-gnu-0.10.6": "aaa402e19d14a6b9a4267fcf4ec35380f804c68923525cea67cd6ee05bb4e930",
"x86_64-unknown-linux-musl-0.10.6": "01d6ce770da88ce6445acb0a8764c8b1634c9f69c728dca68b19fc7a893f72b9",
"aarch64-apple-darwin-0.10.5": "796c2d264c6aba3e1179249438a9fa2fe64140748f0e5b6681e38218ab6238f1",
"aarch64-pc-windows-msvc-0.10.5": "7f88f279e271cd76a6e07fe1ad711cbdf15374206ab79f55adadb818ebbd8e43",
"aarch64-unknown-linux-gnu-0.10.5": "dfa82b047456c646c50ba769af81a6b7ba20aaf5feee96e61554861db8db5809",
"aarch64-unknown-linux-musl-0.10.5": "cf01a960442b9aff4cadc4d27c691086151e9289b5b9fbd0dc41ecfcff1db872",
"arm-unknown-linux-musleabihf-0.10.5": "abe18becc57fe3c3bf55e62b4b7be0231cb4dbb941fdb3f4f9132703b1f4868c",
"armv7-unknown-linux-gnueabihf-0.10.5": "46d79f64e88cb339160cf90f6df51ea14795960840fb4fca8aa61af8cddd8187",
"armv7-unknown-linux-musleabihf-0.10.5": "13444ea0cc650551c4c455af73ac27a77185064275475b2999c627158b7455f4",
"i686-pc-windows-msvc-0.10.5": "67d96bae5ef30b9f1e201622505591601b936996ceea84c36fce5e577db5a442",
"i686-unknown-linux-gnu-0.10.5": "56eb897036b8607bb7516349388bef6c83004ae05e694ec34e1bae69f3a0f237",
"i686-unknown-linux-musl-0.10.5": "b0be10f5c16a987294a806dfd3927348456fca8b465377c99e0d167792b842dc",
"powerpc64le-unknown-linux-gnu-0.10.5": "c7f4049b7e26a43107351808f7748c3bc0dfdf118c29f4b1470b69be15fef45b",
"riscv64gc-unknown-linux-gnu-0.10.5": "756c43f4844953a2241c4254d268335b3bd35ca81856e8e06c7d4826466e87ce",
"s390x-unknown-linux-gnu-0.10.5": "fbccde48aec139fc99558bd022ec3cab15f607b9b5e0efc0279c6145ab5ecaf7",
"x86_64-apple-darwin-0.10.5": "84c4ce2902e2e840a54a75360b00f06ceffc6c26894bc5e73151a2c55d5fd043",
"x86_64-pc-windows-msvc-0.10.5": "d5b3b04127eb6fb41ffca60c0da655124133b62b4b58e29cfc5435469a176e06",
"x86_64-unknown-linux-gnu-0.10.5": "bcb127225873baa5ebd23cf09f29996cc97c1091830c9933e2e320bf1429a584",
"x86_64-unknown-linux-musl-0.10.5": "88aeea39c77b6b796ca6b19c0216a577b18095dc450972dac7872a307bb1e160",
"aarch64-apple-darwin-0.10.4": "a6852e4dc565c8fedcf5adcdf09fca7caf5347739bed512bd95b15dada36db51",
"aarch64-pc-windows-msvc-0.10.4": "77f859cfc26181bdfb94087ce42336d9e2d9e0700bc42f6668445cde517198ce",
"aarch64-unknown-linux-gnu-0.10.4": "c84a6e6405715caa6e2f5ef8e5f29a5d0bc558a954e9f1b5c082b9d4708c222e",
"aarch64-unknown-linux-musl-0.10.4": "82fc461031dafb130af761e7dbec1bcc51b826c2e664f5bf8bc4e4f8330320cd",
"arm-unknown-linux-musleabihf-0.10.4": "2050d9037a63975dafed987bdc7d2960a3b82345951c14193060fce20f9d31d8",
"armv7-unknown-linux-gnueabihf-0.10.4": "d1824ed14f3ad0e7cb7835b46bc0299859cd8141d039a66274a135ca9797bf9c",
"armv7-unknown-linux-musleabihf-0.10.4": "3038fdf153a722941424c28ae76996d60589f7f626c2000eb6567b3c301100dd",
"i686-pc-windows-msvc-0.10.4": "b42379a65e9cec5863a22cf81810aec57281b08d426e70cc3b90320b996d84a7",
"i686-unknown-linux-gnu-0.10.4": "79821b1d6c035aa8dc32a45d41551a4f010b8e357c98df48c95c5cb5ec18a743",
"i686-unknown-linux-musl-0.10.4": "459315d7dba39b0297f44104fad1c93fa5cf866f91b533bba02d58f1e54129ad",
"powerpc64le-unknown-linux-gnu-0.10.4": "7b315d9580ef574a1d0ff2023c16e5ac8a164feb1e998f33ed144dfd4c4fc125",
"riscv64gc-unknown-linux-gnu-0.10.4": "101a71c072986929c410d4839babf66851563fd855b36c1dd7ffbbf5fbedce36",
"s390x-unknown-linux-gnu-0.10.4": "59a50f14892c82de8f3e7a1a63ebc0ef98778085e4bb35ec99323f5009232fe2",
"x86_64-apple-darwin-0.10.4": "df6dd1c3ebeab4369a098c516c15c233c62bf789a40a4864b30dad1d38d7604e",
"x86_64-pc-windows-msvc-0.10.4": "0f0e22d7507633bfb38d9b42fb6a0341f1f74b8e80b070a31231c354812432a3",
"x86_64-unknown-linux-gnu-0.10.4": "6b52a47358deea1c5e173278bf46b2b489747a59ae31f2a4362ed5c6c1c269f7",
"x86_64-unknown-linux-musl-0.10.4": "18adf097cea30a165ba086c1e72659fec3c5aca056a560e7c39e0164ac871196",
"aarch64-apple-darwin-0.10.3": "ed2a08079527dafae4943fee80162ed750286657901e642eba4c9de928706df8",
"aarch64-pc-windows-msvc-0.10.3": "48243b8acbb31d0081e00878ee3b28535ed9f28ab8b27960b88aed8e1d6dd16a",
"aarch64-unknown-linux-gnu-0.10.3": "cce7d1e4c34e22955cd647b256409b6504f4ae72acf190a6f26189efefbc9a9d",
"aarch64-unknown-linux-musl-0.10.3": "a98f8decf21204d40acb512b0e08a803ed718c640a97f3c095864967463d5b15",
"arm-unknown-linux-musleabihf-0.10.3": "e4b3c6dc59cd65125eda09e6c24b97fca71647df979f8963662807dc6a53e165",
"armv7-unknown-linux-gnueabihf-0.10.3": "1d453ef56127d3aab3ea7f383b27765840e0bdc0b683347191e4cbc26272de2e",
"armv7-unknown-linux-musleabihf-0.10.3": "d2484df75c9ba4c7e9750da00c4c4276b65c088d8b551b63717d5d9aa227ffa5",
"i686-pc-windows-msvc-0.10.3": "51f745bcab5f77fe75e6f221e3e55a4bddf54824e634ac6f229132880506ce7e",
"i686-unknown-linux-gnu-0.10.3": "e82e76ced718091d946eed30880728cf39f05b85f4f82c483a7dbf95f1663531",
"i686-unknown-linux-musl-0.10.3": "0baca51f61729c6911d1d055c2e6dee5d11d88f6abbcd1ff801460f46880dc8d",
"powerpc64le-unknown-linux-gnu-0.10.3": "cf4969ba97af3a53d1e4dc8a28441b79e78a8d9a9d41854e88b425f6b6fc6179",
"riscv64gc-unknown-linux-gnu-0.10.3": "79b6b362e48c80e5b7d251fb96546d8ee52dd3458e01518cef969f757b59502b",
"s390x-unknown-linux-gnu-0.10.3": "fc969d6011e4ffd0752abb5d812fc453649a7394c3f08a11556c9960891e359c",
"x86_64-apple-darwin-0.10.3": "e8071cedb9986724ca3d70020b4460a85a274394b378c0e8eb1e8f9e33402ff9",
"x86_64-pc-windows-msvc-0.10.3": "d029201a3eebaa8a0001fa762ee44ca14a9cb3cae4d59fc3fd69857da03a6f8c",
"x86_64-unknown-linux-gnu-0.10.3": "c60b9956a0e6727f0ddd881c303a706c6408b2047f3a8fa4d1454a826338ccdc",
"x86_64-unknown-linux-musl-0.10.3": "126496b606129eda426dac502af0d910d895f3db81da28efc49b18edf5557741",
"aarch64-apple-darwin-0.10.2": "3828b2de196687f60e9d199aea8b504299629300831eea0935ff3fe339903d0a",
"aarch64-pc-windows-msvc-0.10.2": "826e4ee3a03ec245e54c449e272fdf8aab749e039cc49c950ad43cc13702221f",
"aarch64-unknown-linux-gnu-0.10.2": "4998f545234d52fc6f1280827d392f00a9278295050d59c53a776546dbf0124d",
"aarch64-unknown-linux-musl-0.10.2": "685e47f8f88b6845a9fc2ca27c3d246c0f53af8c017daf8e98ac0a97fe20365b",
"arm-unknown-linux-musleabihf-0.10.2": "1c51ebc67e8e492fa549167a96e40bb21a2c2ccde8a8b440f9c8bc0e07f3d4a8",
"armv7-unknown-linux-gnueabihf-0.10.2": "45243fed8f587f11002f175216894c9c75e2f402324627b7e0855e670557ec14",
"armv7-unknown-linux-musleabihf-0.10.2": "45b3d7eee7a3af2e4309b0bbe4886c6640b773f6500f0e0b662d84f4a5466f67",
"i686-pc-windows-msvc-0.10.2": "a828ee0a2f42d1384f79acd3edaf01956000e1ec5d18d9992d79e17d70d9aa6c",
"i686-unknown-linux-gnu-0.10.2": "7f64628a8a0869185eed24de4a02f4c8d19c99dec7363f383050ccb7474a76e9",
"i686-unknown-linux-musl-0.10.2": "8d1978ecfa37d2d71cbb0e2e75262e65c184d040130fe2dc331f25e044ed97b4",
"powerpc64le-unknown-linux-gnu-0.10.2": "9b7f8e3ced416276a9e6321369f69234552d9cbf39d68d96a67e85cee4cd611f",
"riscv64gc-unknown-linux-gnu-0.10.2": "1ad005a361293175170f3c193b50d5a5c7f1da631649236cd857721ce8c9cbde",
"s390x-unknown-linux-gnu-0.10.2": "d4832c85f3e8e17f7ae4ced90059dc2b6927939a47fea3e92e5712e7148b9c09",
"x86_64-apple-darwin-0.10.2": "3cdbd038333cfe861ce04f3d91678547bf2e726224acf5f42d3f0affa6740e19",
"x86_64-pc-windows-msvc-0.10.2": "493ebbe0e06128d6ee4905e1ed5e2a433fb0f7cfc08b0eaca9fab4ca76778ae1",
"x86_64-unknown-linux-gnu-0.10.2": "6aa4576c31f791c0b9d4739e256d07358d45e7535695287fec03cf6839e25512",
"x86_64-unknown-linux-musl-0.10.2": "c162182ba7dd692794362d76dd183990d6e51553217954106da19bdb6ced211b",
"aarch64-apple-darwin-0.10.1": "37c101cd8a745a43d69bc3832c41866ab721467a1d58881f57b73b705abc2851",
"aarch64-pc-windows-msvc-0.10.1": "9644d0e37c41c19aa65137a928bf6fad78dc887f820202c0cfcf010cceb416a0",
"aarch64-unknown-linux-gnu-0.10.1": "3731e98805ea6789188edec0dd97e673da195bf976a72db38f325f7c51cf5cdd",
"aarch64-unknown-linux-musl-0.10.1": "ae9ae536be5b4d1cf7a6560d52a20711f267e7b21e23ee6cc538a4afa236b757",
"arm-unknown-linux-musleabihf-0.10.1": "af7994b58553156fb4acdac40b3f7b1b43260a76de96ca7123bdf861351675d4",
"armv7-unknown-linux-gnueabihf-0.10.1": "4f8857a779df69e2aa9df8ff35b6c34ef3ce45c13d2d4a0ae3957b0e68d322cc",
"armv7-unknown-linux-musleabihf-0.10.1": "79d978b0e829cab83de4c78e80bd014f3210cf0a1a653d880d0aa6760baeaf80",
"i686-pc-windows-msvc-0.10.1": "c4e989d479f9fc229302345a64f272be3c249d5fff4a2e722aa3d73c381fb303",
"i686-unknown-linux-gnu-0.10.1": "0c4a17893df6e11991483277c5f0bee06d8ea60b6e11b349a9849bfe13a8c5cf",
"i686-unknown-linux-musl-0.10.1": "7219a96adde5316489886c0d74749b7248c2c4070170b8e153d9d3f8f9fdfa5e",
"powerpc64le-unknown-linux-gnu-0.10.1": "aa2ed9587a9ad5127662da9ceccaa747b941f37cbd9e6d9334c7c6c3286c9587",
"riscv64gc-unknown-linux-gnu-0.10.1": "bda96a9ff8be79f780ff4711a2515061fe80d6f135ba55a47c41e1c6739d048e",
"s390x-unknown-linux-gnu-0.10.1": "091eeeecfcdb15a954f2488be6b89d8709709003ada81d215d6ca88145826049",
"x86_64-apple-darwin-0.10.1": "f61f1122193698a53fc2d4cc6fb5a5849b283817509778ac8f1a7d2a36a218de",
"x86_64-pc-windows-msvc-0.10.1": "64c297ef1cd8e3a50966dee20cbe039564cd59e41186e0d1dd38fa4e627fc285",
"x86_64-unknown-linux-gnu-0.10.1": "8b5af2d678da1bdae80a5107c934f6ab010c6cdeb2de5b8e07568031d9486051",
"x86_64-unknown-linux-musl-0.10.1": "d1a3b08dd9abf9e500541cadd0e2f4b144c99b9265fb00e500c2b5c82a3b4ee8",
"aarch64-apple-darwin-0.10.0": "82d4b99dc6ea686695b5ee142ceba03dd3e3eda2b414e94215ab7bce94972fbb",
"aarch64-pc-windows-msvc-0.10.0": "614dd3c409d7fb5a98b516d532c98db9b7799a23fb450150e3784338a9ebd903",
"aarch64-unknown-linux-gnu-0.10.0": "c300afd5f2d31df039fe6a26a2d68a76b62832098c272a43e1e74ab9efd4fbd7",
"aarch64-unknown-linux-musl-0.10.0": "edf1adb1d183730302f87eef9b71bc4e47b4b8058832c3393b0fbcd86f270510",
"arm-unknown-linux-musleabihf-0.10.0": "fea6d45bce1e7172192b4a7d3feb9f37c4198c243be1c573c8dacae765a32c53",
"armv7-unknown-linux-gnueabihf-0.10.0": "3e8ab76a515884c29c773e01360acb6da61a1351c630377b54ba58918d9673af",
"armv7-unknown-linux-musleabihf-0.10.0": "85423cda078ed0313f993ddea6ac897e469885539ce156643ace982bbffb8109",
"i686-pc-windows-msvc-0.10.0": "b71bca0987dd12ea09ac6a0e52fdfa89f53601b6074be38366d0592b181f3001",
"i686-unknown-linux-gnu-0.10.0": "dbac897653b0d60fb863288587dbacb30140f9725a42718f2c017df7b2d2b3c3",
"i686-unknown-linux-musl-0.10.0": "56a211155275dd33731cbbb33aa915d3e7efa59d4436502edaca39ba436c157a",
"powerpc64le-unknown-linux-gnu-0.10.0": "677a414608c61e2ecd751364dae9209cc5b76019481968b99b5d5ad7258d2d77",
"riscv64gc-unknown-linux-gnu-0.10.0": "9da4019ecfd3440a5d0a0a957d8d5e4c6534ac1e3a10636d55266a22ab4135f8",
"s390x-unknown-linux-gnu-0.10.0": "a1b9aa45c1a6b69066179e8d7e3f6e122e0f433ef2ad4e91c0acd1433a083c31",
"x86_64-apple-darwin-0.10.0": "664aed584c276f8d79cdc3b7685cd48f5d64657bd6840b06b4b2b0db731b9c99",
"x86_64-pc-windows-msvc-0.10.0": "4037b444541f695cd2eb93188a9346de3e334af562381411deade0a31c7bf898",
"x86_64-unknown-linux-gnu-0.10.0": "230e328948c92dd1ebad83949c4d56e83813dfe9c6362a4c519e6a227973f1ae",
"x86_64-unknown-linux-musl-0.10.0": "312d37f31b6f2c3bfc65668ba0efea9f1f9eaf7bc3209fe1a109e5cf861b95fa",
"aarch64-apple-darwin-0.9.30": "03a5d9ec7f7d588446b2ec226d13ff6300055e55365eca8f3fab39f342b0e805",
"aarch64-pc-windows-msvc-0.9.30": "cfbc40baf1da11c55eff92ee008f5af3cdbb4c24c40ddb0bbd489b983fadf43f",
"aarch64-unknown-linux-gnu-0.9.30": "6aadf3c71600d594e16dabf382cc15282ead4c5ca768599b6bcb43c5004d9aa8",
"aarch64-unknown-linux-musl-0.9.30": "b658b56957bceea742ca14f3ef28fb3542adbcedfb8bd5bd718ae255394ccd09",
"arm-unknown-linux-musleabihf-0.9.30": "5a7f4cd306363b734dba2d86eb760812cb1211254d36ace01860f9e783df1900",
"armv7-unknown-linux-gnueabihf-0.9.30": "bf8d9c2f1b4d0eee9bfb689b5483b1bd4b0b76acbeaaa4d0d68b132574c606ff",
"armv7-unknown-linux-musleabihf-0.9.30": "8715a9da643d9e6cb984c2d3e00480849f93f11251d1474cd382cc9d7faeab84",
"i686-pc-windows-msvc-0.9.30": "218b7ec0d052836d7ee395d5e0592e5dac7578fd618f439a5d09c1ad36466399",
"i686-unknown-linux-gnu-0.9.30": "1bab147179887ebcb5c31e016e9ac9987f687e79f92fd2f0ff9bcedf927b8228",
"i686-unknown-linux-musl-0.9.30": "14d8b2e2caa0b470418e551e027f3a8283aa8d09eae79206e7dbcd23a8ffa027",
"powerpc64-unknown-linux-gnu-0.9.30": "ac4cd1a021462885932f6023b005a4835cca4c72bb60dec186ee2be4b60dca6f",
"powerpc64le-unknown-linux-gnu-0.9.30": "73b8cbc560c6b2fa205358365d4e174abdf50cfcf57dc36a447572c56eba5ae4",
"riscv64gc-unknown-linux-gnu-0.9.30": "5e0453d9252aab874a3658a039d4ffdde79dba4096974fcdc945498697dc81cf",
"s390x-unknown-linux-gnu-0.9.30": "b35975bb9e5c2c418b428d0316cc6e3c7a6eff710c69212be14005c192f54516",
"x86_64-apple-darwin-0.9.30": "ce069bf750567e9a4a31d6e285d1eae75d444d8a281409b641235903943b7681",
"x86_64-pc-windows-msvc-0.9.30": "875981be7908295937dee09532bb66d576986d4f223259e171b0c767c885897a",
"x86_64-unknown-linux-gnu-0.9.30": "8b3762374972daa7a74bbc6896cc73229ca69a07403dd9f9ea3805a51ffd7582",
"x86_64-unknown-linux-musl-0.9.30": "1caf8fe092e2005dd4c134ba515c1aa3eea3d3c143f8a1903bcb58fcdf169365",
"aarch64-apple-darwin-0.9.29": "0729ddd5c02df33669b03627aa5d9ac7cde4421657f808d54585e3cda944bb55",
"aarch64-pc-windows-msvc-0.9.29": "39f7dce0d2993cd18d67980c012945ea678a99aef199f7afcea522b5bd70ecf7",
"aarch64-unknown-linux-gnu-0.9.29": "935b35542b7e25493a551dcb3487af23b72ad284ee8ac6a488a97d02ce2d84ec",
"aarch64-unknown-linux-musl-0.9.29": "b1edc94f5d6c36bb28a20f8c8afb400e55a428fcf396b03bf78cb7394f75077c",
"arm-unknown-linux-musleabihf-0.9.29": "c72ae74c04668d4cf3143fb11ad5bbd1c9e9a80aaa439cb3e43208c127249202",
"armv7-unknown-linux-gnueabihf-0.9.29": "e263645c9ab44e3f7e732b0317da775082f077bb86933be662395eeab97fb3d2",
"armv7-unknown-linux-musleabihf-0.9.29": "98ab47dcb345d746b230a359d72a96444b1be21cf24026c653d5c7848c680beb",
"i686-pc-windows-msvc-0.9.29": "049a929882a3f4a2d054c9dc44848d2c24175079696e131a57d60d9ab62df81a",
"i686-unknown-linux-gnu-0.9.29": "9415828fc2fdacadb56263382a27da6661a89a4bb3a6683d6d864d5c013b7c6a",
"i686-unknown-linux-musl-0.9.29": "3ac91c9cccc85c07c0950afc4f45b3e14f2a3e9484f4940366ebab72e71fa8dc",
"powerpc64-unknown-linux-gnu-0.9.29": "7feb1fb35fe66b4f83d3bc7776810f708c6609c9be48ceed6ec024b15733101d",
"powerpc64le-unknown-linux-gnu-0.9.29": "1f4e1f859868abcf3557afe78b8b7525a938921af745945deef737927a017d82",
"riscv64gc-unknown-linux-gnu-0.9.29": "18dc2d3b513c4bfe0fc4b3a67a80f62ce32077f84db343a1f0eb8003ab276732",
"s390x-unknown-linux-gnu-0.9.29": "10e6d5dcd72bf99daee6678f6b508d1056e9f1670f6d76c1cfdf02b7560bcb4a",
"x86_64-apple-darwin-0.9.29": "d251e48db2a962272a2efeb2771c82c02e40f473193a255e8e5c05eb61112139",
"x86_64-pc-windows-msvc-0.9.29": "9825b1a5955d8a432b664e56660641aac8886ed30cd9c59a94aacc68ae9116ce",
"x86_64-unknown-linux-gnu-0.9.29": "1ce5212f8f42dc7427a1bd3db4168d6d1abcf81b38d8c82a5b9d0ddc54ceebfc",
"x86_64-unknown-linux-musl-0.9.29": "44c93c73e8870e003bda17ab50d433e27d201d0cb28d2bb75351ef1497ffa9db",
"aarch64-apple-darwin-0.9.28": "12163fe09eb292d3ad1ea0f132a84485c902e2ff360d57562bf676e6615fcba0",
"aarch64-pc-windows-msvc-0.9.28": "081703fa19ae05a49f486f97468f7792e1cdacda403a091b151af7f5bd6f4595",
"aarch64-unknown-linux-gnu-0.9.28": "382c342735ff29f8ba4574d88e39bca798bcbac50bff6742710ca9cd8143e7d2",
"aarch64-unknown-linux-musl-0.9.28": "eec3249254efac972d2555ff858f8ed20f05b40fbb38ac83b15cf0a2ccc86749",
"arm-unknown-linux-musleabihf-0.9.28": "d0df2a9e7db464a567038bd560dc5007e488542c073989334a4a293b8957e1e1",
"armv7-unknown-linux-gnueabihf-0.9.28": "6ddf1979609a3f5bdf897965ed6984dacce860ce57c579596bdc4b514c19320b",
"armv7-unknown-linux-musleabihf-0.9.28": "e391ba4cc05a3a1096f1ab6cd82fcbed059d048a6ba108b4cb18da311a07c4d5",
"i686-pc-windows-msvc-0.9.28": "fb5015efd0db178268312a7a7dcde7b0d3b7d7e0eccd0372a4b6f1dcfc075472",
"i686-unknown-linux-gnu-0.9.28": "c0d34d92cb11925530fbc313de7536da3e1d097a442f54668417d241697fb3a2",
"i686-unknown-linux-musl-0.9.28": "be1ad4f30d97c95af5105405fc38329d66375cde3de18cd0f9fe73b4581155c7",
"powerpc64-unknown-linux-gnu-0.9.28": "6f23bfca0febb001792e7124d0c2ba41ddcfe01d6c030f4a8668ed634a5a582b",
"powerpc64le-unknown-linux-gnu-0.9.28": "894ac114f076cffbf041e55e1ad0df759f7bc9dba1291158690781baad38001e",
"riscv64gc-unknown-linux-gnu-0.9.28": "e61fa014a0b77acd17f9f366a55cbc0e67b377c4eff13629021a4242cc71eabb",
"s390x-unknown-linux-gnu-0.9.28": "af15dc54893b2caecc3604ac68104914b155a8bbf821f667996549e777919a90",
"x86_64-apple-darwin-0.9.28": "3a8030881d13b824e5168f5e4d060e715e40753249766bda3d52d6771d93b169",
"x86_64-pc-windows-msvc-0.9.28": "9cb567fcd92f31431220ce620787043b946c30b9bb46ca213780e5ef471453be",
"x86_64-unknown-linux-gnu-0.9.28": "66ad1822dd9cf96694b95c24f25bc05cff417a65351464da01682a91796d1f2b",
"x86_64-unknown-linux-musl-0.9.28": "83cd032167b6b97ac94830608efe11159b3d485654e39fdb0bf84718ef236afe",
"aarch64-apple-darwin-0.9.27": "1359538ed8664d172692cf4719ee0933a4a3bfb22fc91b0be1e19e7bdd8f5ef3",
"aarch64-pc-windows-msvc-0.9.27": "b448ab228f5d1165b8497e8ca10346af6f652eb8ad4e75e47fa55e8cdb5b60d7",
"aarch64-unknown-linux-gnu-0.9.27": "a58b3b77a25620ae15ff3587049b755c7cbf3eaa7df187620b3e6c3dbf71daa0",
"aarch64-unknown-linux-musl-0.9.27": "f80e97e1154a06e42143a173831289336ca9e34a67096ab070346958153e8e52",
"arm-unknown-linux-musleabihf-0.9.27": "b80f4db9254b9ddec4b576190bdf15723e948f37f648d9b273be2e153d05f820",
"armv7-unknown-linux-gnueabihf-0.9.27": "03b45c99ca940739c2a093f6a514da3dd858b3bc1e8c957c16c1832e30b30c28",
"armv7-unknown-linux-musleabihf-0.9.27": "da43ee6e2f17b4646e35e2d55ce6a021fdf47c06601a6ae8b827de7bb7b3b02f",
"i686-pc-windows-msvc-0.9.27": "f47831a97b8a1bc7c7211905c1e517cc2f4ef84df877f2a283c49609275db0fa",
"i686-unknown-linux-gnu-0.9.27": "fdf3067e0c05d39b849ad48fbbc2b58919f70a686a40506c643d32688ceba1a9",
"i686-unknown-linux-musl-0.9.27": "3c1f8c2b148ebf884311558aaff32b9fb5b68fe4f4242e3e3765381bb594386a",
"powerpc64-unknown-linux-gnu-0.9.27": "c3cbda5118b06f2261d32f4802adfdc71f618f808df0c6a3184695a6ffecb88a",
"powerpc64le-unknown-linux-gnu-0.9.27": "9011f6085cee3921c9fce82ce03041ca97aacc8cab86b7a5791faa71fa5f2712",
"riscv64gc-unknown-linux-gnu-0.9.27": "7193628620c2c50c2d6632ea8e53a4ab5313f7e8003ddedd9e999f48b6d2c222",
"s390x-unknown-linux-gnu-0.9.27": "5b055f02f2c8e5086ae1d05cf70d32d66982d27d8469ed896a65067fac2001d2",
"x86_64-apple-darwin-0.9.27": "3977309c5c79984c13c55d2d1cd7aa114a718eb29436c5bdb4bdfa08bf243438",
"x86_64-pc-windows-msvc-0.9.27": "c3bf465d5f2b93c836f369aec9f3fa8350843f24abd5f710bb74e72440b82898",
"x86_64-unknown-linux-gnu-0.9.27": "8636e693ea0e05f5f4294b161f816c4d8df065267fdb0405cfb84c8e326991fa",
"x86_64-unknown-linux-musl-0.9.27": "9f269bfb9c2e80808c373902af6a4af6cd5f4b4668b28c44aa09639cfed925c5",
"aarch64-apple-darwin-0.9.26": "fcf0a9ea6599c6ae28a4c854ac6da76f2c889354d7c36ce136ef071f7ab9721f",
"aarch64-pc-windows-msvc-0.9.26": "79e1398ec98681b1b0494ed3485b0f4565e98a7db109a3f205d0fcdc6a1992f7",
"aarch64-unknown-linux-gnu-0.9.26": "f71040c59798f79c44c08a7a1c1af7de95a8d334ea924b47b67ad6b9632be270",
"aarch64-unknown-linux-musl-0.9.26": "ba8698c36c00c22efed4bd3506339b03c95604d001f02eaf6fbc814c9224d801",
"arm-unknown-linux-musleabihf-0.9.26": "8baa850e6f7a4f8edeef411891780161e95682bf291c85405fdc331925c425c2",
"armv7-unknown-linux-gnueabihf-0.9.26": "f9cf9806b3bd434b4aca5de1a8412502a29bcbc908848cdea18e32480964ab79",
"armv7-unknown-linux-musleabihf-0.9.26": "881df52998da192f0609be37abe445ab0d89f28daceecb171ea8a14088153aee",
"i686-pc-windows-msvc-0.9.26": "2fa5e36d7dc3053962a95a2583b2bcc19aab2ec6c5d4c887cca58de819cf77dd",
"i686-unknown-linux-gnu-0.9.26": "03548a2abd1d604724c9d65184b506d3eafef1b0a7d8cea974a083f5f9c9496f",
"i686-unknown-linux-musl-0.9.26": "5208601b9baee1a04a604f441bd94a1ab91b511f142b27729b073f4286994f8f",
"powerpc64-unknown-linux-gnu-0.9.26": "6ac6baa2dd7db742ff58a2d54e3fc09693e69c878666bcacf9d49bc58decc98a",
"powerpc64le-unknown-linux-gnu-0.9.26": "1a7fbd268b7520e03747022f879113545a5bd71cad02e9cbabd591b268b5a36c",
"riscv64gc-unknown-linux-gnu-0.9.26": "9f202ad04cc398dc77a6efe20ea91ec044ad66e1f7a60777e6efd20a357f479a",
"s390x-unknown-linux-gnu-0.9.26": "f8e6b8f1264821add1ea21d592b4522300401f44ac4124fba9fea6874fd79797",
"x86_64-apple-darwin-0.9.26": "171eb8c518313e157c5b4cec7b4f743bc6bab1bd23e09b646679a02d096a047f",
"x86_64-pc-windows-msvc-0.9.26": "eb02fd95d8e0eed462b4a67ecdd320d865b38c560bffcda9a0b87ec944bdf036",
"x86_64-unknown-linux-gnu-0.9.26": "30ccbf0a66dc8727a02b0e245c583ee970bdafecf3a443c1686e1b30ec4939e8",
"x86_64-unknown-linux-musl-0.9.26": "708b752876aeeb753257e1d55470569789e465684c1d3bc1760db26360b6c28b",
"aarch64-apple-darwin-0.9.25": "606b3c6949d971709f2526fa0d9f0fd23ccf60e09f117999b406b424af18a6a6",
"aarch64-pc-windows-msvc-0.9.25": "6a4c2a753a94d9639725b435f5d1a65bfa25cd196d448ad60841f5fe81ef0052",
"aarch64-unknown-linux-gnu-0.9.25": "a8f1d71a42c4470251a880348b2d28d530018693324175084fa1749d267c98c6",
"aarch64-unknown-linux-musl-0.9.25": "11cddffc61826e3b7af02db37bc3ed8e9e6747dad328d45c8b02f89408afbf75",
"arm-unknown-linux-musleabihf-0.9.25": "52f3a96605a7873ec44bb84c33ee08e717df61136fec121f715871cae5b779ec",
"armv7-unknown-linux-gnueabihf-0.9.25": "7ae274742a5b2398bd75f9075536c7f0b3f99ebc8c6588c37e3bfcd9cc9d781d",
"armv7-unknown-linux-musleabihf-0.9.25": "77220a539dfffe576cdc9b9e9ab5432c07dd1b63915c859c227883af7ba00538",
"i686-pc-windows-msvc-0.9.25": "55dbf32074a76e029410620e7e3fbef9762799c7dfcf539b098ccc0a64cac9a3",
"i686-unknown-linux-gnu-0.9.25": "b9dae29f4e37bc89e69836e59169a51d8cac4da118b7548a20b2269b19c94cad",
"i686-unknown-linux-musl-0.9.25": "a84a159856a0227c273e86594d9cf8fbf84c56bd4eeeb9a665c946304c49dbec",
"powerpc64-unknown-linux-gnu-0.9.25": "37bc519ebe5e4efb12fd155eb94512547a874f0e41251203b49d715f75eb5a20",
"powerpc64le-unknown-linux-gnu-0.9.25": "a01a273b5cd64ece96d4589afbacaf5e99a0695f37ebe9a72fd6b2f7cf0a7071",
"riscv64gc-unknown-linux-gnu-0.9.25": "9d9692f1bd5ff6d9db2c4bffc4ceeb8d8746ae03ddeca0b24a0f8fc9ea81b911",
"s390x-unknown-linux-gnu-0.9.25": "92d5e4504ef83f421a841381678f871bf2a8821a69d3374dd638e2014d4762ab",
"x86_64-apple-darwin-0.9.25": "4982dfff14b3548bc85d0fa0abec6ab8ae62836b218bf1223741ba1392ef93bf",
"x86_64-pc-windows-msvc-0.9.25": "d63f8e59cf76bcce9cb8a3eac6c1a89adce0f89a29bacca978c9bf842f419277",
"x86_64-unknown-linux-gnu-0.9.25": "fa1f4abfe101d43e820342210c3c6854028703770f81e95b119ed1e65ec81b35",
"x86_64-unknown-linux-musl-0.9.25": "700776c376ce36ed5b731fcd699e141d897551f5111907987b63897e0c1ad797",
"aarch64-apple-darwin-0.9.24": "89661d9a16682197086df54bb43d0b03e58e23d4d9360fc8c6c0166f2828fd71",
"aarch64-pc-windows-msvc-0.9.24": "40ceb66af2667fc9b4d30a65ad8b8795d4effc39a44019b4218ad03f8f1d5a14",
"aarch64-unknown-linux-gnu-0.9.24": "9b291a1a4f2fefc430e4fc49c00cb93eb448d41c5c79edf45211ceffedde3334",
"aarch64-unknown-linux-musl-0.9.24": "b16359904ede857b90b68168f10b0f6bf500858df9bed4e7156dbc59fd3f0747",
"arm-unknown-linux-musleabihf-0.9.24": "b343d7f49ea5c0982c9696cbc5c7f96d7053cf8f9c7383a58d6c0c44fbeb6422",
"armv7-unknown-linux-gnueabihf-0.9.24": "8d05b55fe2108ecab3995c2b656679a72c543fd9dc72eeb3a525106a709cfdcb",
"armv7-unknown-linux-musleabihf-0.9.24": "788d2bee1dfdb57a462f2a5c4e3d6e8c68ee9f9f1a938bdcdc00fa9e5edeaeec",
"i686-pc-windows-msvc-0.9.24": "b49265a713cb3f874bcb373572095993d3098ab77cd2665483f53b24b788e5e9",
"i686-unknown-linux-gnu-0.9.24": "940b8985c4d464c7cc69e40b17bf09d840b980028e1d82a3fb8dd007a737f29e",
"i686-unknown-linux-musl-0.9.24": "4ffe6f377b7d68904d8d882af8adc85f2fa1bbccd26151785ff961adb67f2a99",
"powerpc64-unknown-linux-gnu-0.9.24": "1fbaff65544a2c36bbd8992e2abe6c50179401745dc00b5e12bded89794056a4",
"powerpc64le-unknown-linux-gnu-0.9.24": "57ea84430ccf49f97184d9ee21102b250214fc6e6af4a87eefaaf8bb7c9c2b9a",
"riscv64gc-unknown-linux-gnu-0.9.24": "81a884380f0ee954afd968140aaa55df19f2bee30d74f3c0c94a11d2265bb388",
"s390x-unknown-linux-gnu-0.9.24": "3da41f22f78f27a7764e303b07c68f5716f748128327c7d3d72f11c6b81b6c78",
"x86_64-apple-darwin-0.9.24": "fda9b3203cce6ec3a37177440c33c4c1963c4957fff17e2820c60ab6ccd625da",
"x86_64-pc-windows-msvc-0.9.24": "cf9d6fa12017199d19c6f9a8f7f55811c8c04d70681b8cb6d89ffb179f08cf1f",
"x86_64-unknown-linux-gnu-0.9.24": "fb13ad85106da6b21dd16613afca910994446fe94a78ee0b5bed9c75cd066078",
"x86_64-unknown-linux-musl-0.9.24": "cf307aa4271038daa334ca64e75aa40c0c085ce6fa0c0e6f21e41a2b62c7904d",
"aarch64-apple-darwin-0.9.23": "3aae069424778d13ef45ebd2ec906c66ab10e459e7b33341a64cd371a3d70998",
"aarch64-pc-windows-msvc-0.9.23": "dfdb23dbfa6c89847e4163f0b3b683de889df7d9bdf95a3909dfbc6430106304",
"aarch64-unknown-linux-gnu-0.9.23": "d60b0b2aee79f9d83897615fed427bee1ea4ebcb2f15b48dd522319ecdb3de91",
"aarch64-unknown-linux-musl-0.9.23": "ee987d943427ee24c1d3af79c7ad676950c9ad634e60a4d07e328d8a54fff92f",
"arm-unknown-linux-musleabihf-0.9.23": "1950c235e76e007f75d30903dc5da6747a344c72a1608123feff720c134ecbfe",
"armv7-unknown-linux-gnueabihf-0.9.23": "a7104ab491a0c2f0c58760bcb9a13cfb64c899e02a7b747c4d11da114b3f9114",
"armv7-unknown-linux-musleabihf-0.9.23": "c5d494337a5ca86ad83d6a887634fda3f8392560799e4236a44d76f8e27621b6",
"i686-pc-windows-msvc-0.9.23": "94292f02b7484616bb3cd7361411540a5a52e952d149eb6faeec610b6657015d",
"i686-unknown-linux-gnu-0.9.23": "627627174d31e6fa270e91c7b2988558e4b18b86cc31de9222b6cf3b7354e9b7",
"i686-unknown-linux-musl-0.9.23": "5f65a0eb1f9067a4f5149275faba3bcb3af94dd68fbce7cd9e93ba86b5bc59c3",
"powerpc64-unknown-linux-gnu-0.9.23": "69e2925397d0e781e8525ad0fd22896a114ffa02f5055e7a360e4dda3796c24e",
"powerpc64le-unknown-linux-gnu-0.9.23": "fb3ad2cb1a19f1bb4785580dc71837161147beab134fdc3eb4e8ccda577db1e0",
"riscv64gc-unknown-linux-gnu-0.9.23": "0d1d9300e2df3155b0d0b071c292fb27f8213d91854decdfb27c293397dc8e0e",
"s390x-unknown-linux-gnu-0.9.23": "7d0b411a365b0cd8fad2b336c259743e7381676654adfbdb4f887b4136820cb8",
"x86_64-apple-darwin-0.9.23": "b5bbfbd5d8c7effa24b505365ae306116fdac58880bc9b024ec4c89435d57728",
"x86_64-pc-windows-msvc-0.9.23": "bb6d2987906b27d3031640c4a909b6f7c134cd29674c41ef545c6e7d57dd6700",
"x86_64-unknown-linux-gnu-0.9.23": "b7bd7d9b9c9c34327f1118f99fe8c298252787ea35f7b345b8bf639377f63217",
"x86_64-unknown-linux-musl-0.9.23": "a824a0f5f7aa67b668f54756284d458a25dea332da6e558d303890d134cc06d1",
"aarch64-apple-darwin-0.9.22": "4bfc6dacc9bcc9e433a9214a658495ca082b94fd607949b6745a955f34ccbc3c",
"aarch64-pc-windows-msvc-0.9.22": "19b848523d5802279702f5df4ade6d45f17d111cf9e368883d4f6560f0426d49",
"aarch64-unknown-linux-gnu-0.9.22": "2f8716c407d5da21b8a3e8609ed358147216aaab28b96b1d6d7f48e9bcc6254e",
"aarch64-unknown-linux-musl-0.9.22": "a400eaede62557af86bed6c5252a101aa1efd596698bb10c9400334fcc2847ec",
"arm-unknown-linux-musleabihf-0.9.22": "23e0770034e31aaf47b0c84156b2e5ec7638ca0edc76a4cccb8bdc94bfd16159",
"armv7-unknown-linux-gnueabihf-0.9.22": "db3ac49b78b3ac57c0e6e9a0ea61237a235447338594ad8e398e8074448bd071",
"armv7-unknown-linux-musleabihf-0.9.22": "c153ac78c571dbbd9bab54c954b93b496645efbd4d3a0689b03e04d0de17c30f",
"i686-pc-windows-msvc-0.9.22": "f08889e9567feb1e802c9e588de60efef5a436630e4c211fbf4a2116928f69ab",
"i686-unknown-linux-gnu-0.9.22": "841e534a28285dcadfea2ca0f848a9669df287990f93d64c6bf87a9794c98ec9",
"i686-unknown-linux-musl-0.9.22": "b2c5322e188980afd4bc1afb19f4e8dee7000ad0e17ca754e97dab21c1d4d1f5",
"powerpc64-unknown-linux-gnu-0.9.22": "309c4a48d7f65cdf47aa7e1c5e02502556e04f486d46e9591f5b4196c92730a3",
"powerpc64le-unknown-linux-gnu-0.9.22": "1e829630f8317cf3e9818c3ad1f9927fdc9d087cd38abb05f9587c19872a8560",
"riscv64gc-unknown-linux-gnu-0.9.22": "d3036e36b330ad6caab68fa31c12c21f80c9b8cc7822416343a5100f09d6b640",
"s390x-unknown-linux-gnu-0.9.22": "aff367a5c6ffb87b9cebbda4372464ca6aff69a53c81a94f1d78541be9677b2d",
"x86_64-apple-darwin-0.9.22": "c0057ad78b475f343739b1bbe223361c1054524c9edf310ee1dc85a050207f86",
"x86_64-pc-windows-msvc-0.9.22": "93a0a244f26eec208d8ea8077e3de743d9687ad76c190342722f1f57fa629457",
"x86_64-unknown-linux-gnu-0.9.22": "e170aed70ac0225feee612e855d3a57ae73c61ffb22c7e52c3fd33b87c286508",
"x86_64-unknown-linux-musl-0.9.22": "84d087a8e77a223d80578919894f3103f46ca7c263250c3e0478ce7c38850349",
"aarch64-apple-darwin-0.9.21": "473977236ef8ac5937c80de08a3599cb6ed6021d0e015e10f88076767877a153",
"aarch64-pc-windows-msvc-0.9.21": "54f66a44108b1b68583c9da0a515195d011189874ec9547710c032801726e042",
"aarch64-unknown-linux-gnu-0.9.21": "416984484783a357170c43f98e7d2d203f1fb595d6b3b95131513c53e50986ef",
"aarch64-unknown-linux-musl-0.9.21": "03a49fb609888032dbc3be9fd114b50fc9bce8b73b3df319746ae08d1fbdea83",
"arm-unknown-linux-musleabihf-0.9.21": "5d84273d9e79aa1262e11d50b4b4e61c7b33bbbf47c7f7e271cb07f89ac479c1",
"armv7-unknown-linux-gnueabihf-0.9.21": "74b2a73b3569cbba8c73470eb45dfba393401c834dd432fc8bd2039b40b1dde6",
"armv7-unknown-linux-musleabihf-0.9.21": "fa3806603be42aad687bb97ff5939a32f5e1c21d565155299410ad445669ce11",
"i686-pc-windows-msvc-0.9.21": "941e2b656cf9c94eac4b751933b24e5820247d938958c3d62d9d95d0e2409956",
"i686-unknown-linux-gnu-0.9.21": "73fbd705cb4b5c071318afee896ba9984e3a14fcf7842435a93c43dc9ca0a12c",
"i686-unknown-linux-musl-0.9.21": "c38f823354fff387758f6288ad184b104f47520b3cee7d53e92f3666b3466f55",
"powerpc64-unknown-linux-gnu-0.9.21": "2cf68ea2ff75c4a627101bfe22064d6646a03cd7ddb939c933f3d8127b8d5982",
"powerpc64le-unknown-linux-gnu-0.9.21": "3ede0329f67f5db37914b5dfd6014c414d27e1bf0153dab8d5cc2e066da034dc",
"riscv64gc-unknown-linux-gnu-0.9.21": "3b7b070afd9c7be5a6364f081081cf9fec2160b53eba46cad27304b8b158e4ab",
"s390x-unknown-linux-gnu-0.9.21": "34bd75d67a5819c9f796a78b1ec9ebd48021d87d2391b4cf282249c4d026f145",
"x86_64-apple-darwin-0.9.21": "26390da48bd55e21ab62451a80ad240ef6df10d4c48ec199cbb34c18b4288983",
"x86_64-pc-windows-msvc-0.9.21": "d27952e73183ef8f6ee8c2a50cf8b3f2e08e01b6a9279a00a85cb261ea8d8337",
"x86_64-unknown-linux-gnu-0.9.21": "0a1ab27383c28ef1c041f85cbbc609d8e3752dfb4b238d2ad97b208a52232baf",
"x86_64-unknown-linux-musl-0.9.21": "7abc29b3a06a99fb23564400fe884f5798a1786dc2ca05b6e0f70c53de748ab2",
"aarch64-apple-darwin-0.9.20": "c3f4b03a5d526119d41fa8b8f255aa8053c49d787778df654895e3d174b1519a",
"aarch64-pc-windows-msvc-0.9.20": "ddba8b1ca82df9b49745c93855c670490d776027269cf7de404d951919c96ea7",
"aarch64-unknown-linux-gnu-0.9.20": "0451ecac1d0ed43d5870927df84c3d1dc93d72cf1933310acfadce5ad457c587",
"aarch64-unknown-linux-musl-0.9.20": "d1b645d63c70da3f6f2368ea4dbc9dd5534b54be74ae32dee8941531c6874b6d",
"arm-unknown-linux-musleabihf-0.9.20": "ddbaab7f1413f181bafc96c8b18af8e69372373798d2294d03d3935fd829c939",
"armv7-unknown-linux-gnueabihf-0.9.20": "e1b2f5e4298878e6ac1137f744ba38b59ce68abd6a43878e66a1cac4dd7efd0e",
"armv7-unknown-linux-musleabihf-0.9.20": "afc4a709ad83773bafa4ba83afa44bb101e44b817c5ad620cb9c54b62fe52e4e",
"i686-pc-windows-msvc-0.9.20": "d7e50a3bc433bbb08e7890206bec0623627e6a911a6c10322c98721bde1a9cb0",
"i686-unknown-linux-gnu-0.9.20": "aec778b1c44607416102139b6bb6a7f53a313fce8ad1033049b10ac90ed3c597",
"i686-unknown-linux-musl-0.9.20": "92dd40f272b65f8301f0f9559fe55ac99b340caba93fe1952172e3485494cbba",
"powerpc64-unknown-linux-gnu-0.9.20": "c2abda00a2b53cde9b6c8380ef9773749d341039771d7447df5647d935eb54c6",
"powerpc64le-unknown-linux-gnu-0.9.20": "f40409d551a30081ada78cca7a1a260c02a7d16c912d73988d8e212324dea758",
"riscv64gc-unknown-linux-gnu-0.9.20": "6dda223f877ff3eb3eba2fcf14abfd36280e5db1c0480addf5da5273ece087d6",
"s390x-unknown-linux-gnu-0.9.20": "8ca14c1a9fe47ad2293a321f061c7278b32d7bc200d2692662790ab6ccd395c1",
"x86_64-apple-darwin-0.9.20": "0059dc2986e7032c12b7039e1a66e570ab5c3a41598263c76e5a9c4e7da9f971",
"x86_64-pc-windows-msvc-0.9.20": "be51ed9fcba5be4ac9c41a46aaf8af5cef86624fe27e2c645771b174069e049d",
"x86_64-unknown-linux-gnu-0.9.20": "01ac5d872ab4cf6b11965c9df317f699882405f0319872fe3dbbb3adb045600b",
"x86_64-unknown-linux-musl-0.9.20": "0de686dcc02e0b045980779e7330f2deb98e6cd9ece40d3341bd45c6733e682d",
"aarch64-apple-darwin-0.9.18": "dc3bee4abbb3bac267a3985a23ea7617d19d41ff381dbaf560ba415ad65af68f",
"aarch64-pc-windows-msvc-0.9.18": "fadb43ba13091f44e1786fc3967e65c7786d86192aa205d718307c649927cfc2",
"aarch64-unknown-linux-gnu-0.9.18": "f8e23ec786b18660ade6b033b6191b7e9c283c872eeb8c4531d56a873decf160",
"aarch64-unknown-linux-musl-0.9.18": "b710ceb9889276cbd7ce04e2ca06b5bd3e288da465bd38f7dd17955c4e703a65",
"arm-unknown-linux-musleabihf-0.9.18": "2219049d28baaa0764e0315996e26c70ef548a0ba59add7f42358575ab04b410",
"armv7-unknown-linux-gnueabihf-0.9.18": "dddf55144884f5d83b9f5795f0b16d023abedf615505962a6ebcaaef2cb62815",
"armv7-unknown-linux-musleabihf-0.9.18": "265d49a8976a5956d3cab524e85e86df5397ab0daf6bd77f1494b0b9e1c00b9a",
"i686-pc-windows-msvc-0.9.18": "52bd6fedef821a2412de73c31fdcf41c31b0a5c5886a416c3ba1a3d282ff02b8",
"i686-unknown-linux-gnu-0.9.18": "6cc0437382adddd0439c874c41625539523725d551da9f9aecf7c0a3e86a1c77",
"i686-unknown-linux-musl-0.9.18": "a727b054337ce453e98b80d6eccaa913cf542c155f3252503aff3e613735c640",
"powerpc64-unknown-linux-gnu-0.9.18": "522154f752a90513cedcc621071893e46fb05d025ce8f0d4523514e8a87417d7",
"powerpc64le-unknown-linux-gnu-0.9.18": "0660534d548800b17d2fc1dcdaf0f284e48ca3e34fff2b8b5c1797610e18fc0e",
"riscv64gc-unknown-linux-gnu-0.9.18": "db6f5cbbc56a7212e61445a8cd1fcf880dc2906b4cac8f945320f0ab8eb9bf75",
"s390x-unknown-linux-gnu-0.9.18": "bfa789548a345189b70d9069d9d7ef8f9c2236f0d10e2ae47a13549ffded5b84",
"x86_64-apple-darwin-0.9.18": "f86836c637333c65bbc7902acc9c49888eef9fbd15dccbc1946b10e30b041073",
"x86_64-pc-windows-msvc-0.9.18": "28cbe5d30907a774bfe27a517a39b494ec6f7d3816bda8bbf6f9645490449182",
"x86_64-unknown-linux-gnu-0.9.18": "c2def3db178ade63933fa15ffc96e882c196ce53e06173dcee05b36c5f6f68f5",
"x86_64-unknown-linux-musl-0.9.18": "a55ae2d0d53c8f6541bb4d6afc95857ff33a97de8f1d23e9d09acdcb865c4a00",
"aarch64-apple-darwin-0.9.17": "a1e1464aa1d04d5e5fa700aa2f2e10397d1114e835dbd56be25ba65c9a31bd99",
"aarch64-pc-windows-msvc-0.9.17": "28423a27ad1d82347c00411a6792567119b3c1cfe775d3312c0e08a6b489be5b",
"aarch64-unknown-linux-gnu-0.9.17": "e9eba97b7169e47fd3c926e409f0b714820f0befc23b3ae062780586a793e4cc",
"aarch64-unknown-linux-musl-0.9.17": "f6f48a301f8e855765af42ef50257af0cebc9c5439dfdcbc188142941aea45ca",
"arm-unknown-linux-musleabihf-0.9.17": "4d80f3509b6351882a64c1dd08f72a80e2b27f055a996295ef1f935bc3efcdde",
"armv7-unknown-linux-gnueabihf-0.9.17": "30a6c041429e2176062573f33c5c44307cb756264224bcb005723a6e18cff34c",
"armv7-unknown-linux-musleabihf-0.9.17": "6b034dc63735c2a4541430cbece688e28bce51a09e2ad1ea2c1646a6b24cf1c3",
"i686-pc-windows-msvc-0.9.17": "6e93737710e31bf73fcc3b4b6da616bd341e9c6baf1162ddc1e7f65884063f50",
"i686-unknown-linux-gnu-0.9.17": "d2426a6d10bedd83524599bb0fbe0ba22e681ed45e892b4fd29086b424daf02a",
"i686-unknown-linux-musl-0.9.17": "988c7702a2e88092b30f16fb7f8c18284a8062044cf57e6abd1dfeae82aa6377",
"powerpc64-unknown-linux-gnu-0.9.17": "5ad301d9fa15e0791ef96abd83f0ed97e7ac1191b4b7578caaad3151633fb17c",
"powerpc64le-unknown-linux-gnu-0.9.17": "4958185c5febf22f1c4c84944334cb0d9262c2c2c93faf30c1e0abd26f9d94fa",
"riscv64gc-unknown-linux-gnu-0.9.17": "feed7cc7b5fc8a99e683ee1761cf99e3da12b60a2a413b7b87a0447726a66369",
"s390x-unknown-linux-gnu-0.9.17": "a297518913a0f0e4af1bce434440ca9d415728aaf828c7def0e913aa5c46da8f",
"x86_64-apple-darwin-0.9.17": "249e7fb18d45c06ba283c48f0a8e586ecc5fbb9e8dad0923c4169a7c4db815b2",
"x86_64-pc-windows-msvc-0.9.17": "ebc76197bf3e1a58f9dac6f70f49b0ebd3e6907ab35289ce228bce5ba8a3f201",
"x86_64-unknown-linux-gnu-0.9.17": "0114d54f9aafd07516cf1cadfe72afa970f5fd293fbe82dd924b8a7b42c984d8",
"x86_64-unknown-linux-musl-0.9.17": "ab616c1851e7b1ed377a9ff3997dcee184bea7eda0b20bc8607abba6c469cbad",
"aarch64-apple-darwin-0.9.16": "db6d7fb299c35dc9bbbeb89cfa9aa55a9584f637d370c0a4c62a50df9c9294a7",
"aarch64-pc-windows-msvc-0.9.16": "591c73f47dfec72f9d242eebcb36197f27ad652a59d70e70db5c52018684d78e",
"aarch64-unknown-linux-gnu-0.9.16": "a8e9e3f7e621e212d9663ea28827bd8fb9ec11c453ae88d520b48e969e9ff5db",
"aarch64-unknown-linux-musl-0.9.16": "cb6730e083f17b38aea88c2bdfc3d4c834a832444087d30d7914bd460ae15b79",
"arm-unknown-linux-musleabihf-0.9.16": "4c2447ff0aad62934605252eaf6372efb82fb38330b88785e162929491870186",
"armv7-unknown-linux-gnueabihf-0.9.16": "5a09476442563f6ee32d864d89a87490bf5a850c987898c648ef57608c5899cb",
"armv7-unknown-linux-musleabihf-0.9.16": "180846487d6baa1ca9d4cd90a0aaf38f7466d3c211c219bd4d7ffbbbc5077ef2",
"i686-pc-windows-msvc-0.9.16": "f6921ace765a2905c0cda8bf8185ecd60d83060da4b2904a28b5a8c23ffc7aa2",
"i686-unknown-linux-gnu-0.9.16": "1cdb9a2086a5d1ea37e219c45407730ef3e7711737b71fae49d1396918f4cdba",
"i686-unknown-linux-musl-0.9.16": "f8b0159c52bc43cbe598c52dd43ca911c22c6b9da992f3604434b23d21ac5ff6",
"powerpc64-unknown-linux-gnu-0.9.16": "40c39d344c92c6a877fdfe89db8a5f84990dbb7097e529122bd7d90d1975eb90",
"powerpc64le-unknown-linux-gnu-0.9.16": "982167ebae22efbda212ccbacc582b00486150695d83fca94d39c3422a0f8865",
"riscv64gc-unknown-linux-gnu-0.9.16": "b94ef3afa9bc94288e069162143ec20ed1d103d7631a17ca14c6ac28e8825baa",
"s390x-unknown-linux-gnu-0.9.16": "cd32014282b2d2de53eb0176004dffddec77f0afbe76713f57c245e08cdf2b21",
"x86_64-apple-darwin-0.9.16": "e1ba1992e163f8b9d54d1cd1501002f019f4b729dec2a197e79a56d354ec2773",
"x86_64-pc-windows-msvc-0.9.16": "e498a1d5983da7727af96b63ddfcd52ee883173552664ad0b629b3d4c7a46e91",
"x86_64-unknown-linux-gnu-0.9.16": "3adbf5322471b53a61483b4a5d091e70c32231ebc63fd327fae7b844cbcd3e01",
"x86_64-unknown-linux-musl-0.9.16": "35a26bea6aad2c8eb468cdf69baccc7ab79b3d0971a76a6741a687535a2acfad",
"aarch64-apple-darwin-0.9.15": "388029510fdf64771745e9fb85cd6ec042580678a9e61c90fe355301f1c42f1e",
"aarch64-pc-windows-msvc-0.9.15": "19422893deba37feb4b4191b43be89525ac48bd378f9fdbf2d5bca44319f8c19",
"aarch64-unknown-linux-gnu-0.9.15": "d89430e201f629b203975c605cd6bfe85afc2bc0781d95838e2b5177a03b1545",
"aarch64-unknown-linux-musl-0.9.15": "41f6ef4f86e9f8015bc31e9ca4fd44a6e2c80fc0b75d6eb74063f64ca15177c7",
"arm-unknown-linux-musleabihf-0.9.15": "c85740e8c22187f82e3dad042d412991076d5701c7e1a4eba9ae1166f08f769b",
"armv7-unknown-linux-gnueabihf-0.9.15": "d30d648e4c1c76110ee78953b43ecb8c356cda438a071a60c97308f9a7d2cf27",
"armv7-unknown-linux-musleabihf-0.9.15": "a1fa385da85131e071f9a6cbde89456945ea821609624e80f9b4d8877b8fbcdb",
"i686-pc-windows-msvc-0.9.15": "7dabeb4719dedc1f690e4d5e9641d92c6b17e04245015d64511d207dbb1792d8",
"i686-unknown-linux-gnu-0.9.15": "806e2e49c539a030336c83cc8dd9fe6250a70b1f8fb15ecb165837ff330f4ee8",
"i686-unknown-linux-musl-0.9.15": "7ab63f3549f3fc61bab32f9526a6a3ba750dedb7f609a345a4205e41fcd91e92",
"powerpc64-unknown-linux-gnu-0.9.15": "b5b72a9053e4ad1c5baa68c3c8ae728567d8d9847f8cc852e0c6fabea9307647",
"powerpc64le-unknown-linux-gnu-0.9.15": "880b977489a0a580df04cf9020968bf05553bccd8dd48375a0c7cb6dd8048f58",
"riscv64gc-unknown-linux-gnu-0.9.15": "cb993da480f90b226bca66a1f54c4a0419a245d07d3d0e30a3f8c9a5b1f8fd2a",
"s390x-unknown-linux-gnu-0.9.15": "e0cac629299a49336e92a13684671bbf50933749412f480e051a4071a619fcd8",
"x86_64-apple-darwin-0.9.15": "a7d9ae35ce2d192cb0356f07439cfc6768d4dff8e95ae69f821e8fbe7bcb0e09",
"x86_64-pc-windows-msvc-0.9.15": "a6887c93a54c46de7dcc0bc798f84a130d7f411124ad43252716f75d0c2c33e0",
"x86_64-unknown-linux-gnu-0.9.15": "2053df0089327569cddd6afea920c2285b482d9b123f5db9f658273e96ab792c",
"x86_64-unknown-linux-musl-0.9.15": "7037889adb182ce50379b3a789154ad6be00397b892fec9e93e11c457945aec0",
"aarch64-apple-darwin-0.9.14": "5267ecb62737b2ec0d61fd40e93c20d0a201eba96588582633f725792c778e00",
"aarch64-pc-windows-msvc-0.9.14": "966f4ddb5450ade2be0989bb3d4cc4ff66ec316ad714618f2391712ec3660908",
"aarch64-unknown-linux-gnu-0.9.14": "b19bac23c34490b46f024636f164889b14403ab262118e2f97224053fc17ed8c",
"aarch64-unknown-linux-musl-0.9.14": "631ac3b88a77ec1af35297fdecc0b60b3eef16482617e3a2a5805bd667166437",
"arm-unknown-linux-musleabihf-0.9.14": "a5e112d7ec880c2fe9bb95500d3e6f148e68ca7ff2dd88ab0f8d966e14ef3c9d",
"armv7-unknown-linux-gnueabihf-0.9.14": "09449988d71401c37e8a7db2eb381e4a931c6394b7c1c9db7e444c2948f16677",
"armv7-unknown-linux-musleabihf-0.9.14": "b7273fc488ac5ae624ab5f657410d44443f30643b77b0ac0d1fdec0f7dee7b95",
"i686-pc-windows-msvc-0.9.14": "b361e46aa3d9fa94850fbf006deff3c23f1aa1392ec78da598b5e3af0349ae23",
"i686-unknown-linux-gnu-0.9.14": "106d70d5a9034d06ad1c2c6b028e6b0b77816f5de34d42f4e5c88fd5d5a0a8b0",
"i686-unknown-linux-musl-0.9.14": "2b9685ea197030fbcd327f5a96012c0d8a468db35c36e84b683b944b696d853a",
"powerpc64-unknown-linux-gnu-0.9.14": "1cdb82fa8fc213149dd34bed755ba2ec8faef9d45a4206799256b2926c1495d9",
"powerpc64le-unknown-linux-gnu-0.9.14": "9ae475bb30150d12633283dd73707fc059bece75e2c42288bf35212b5e6f09ec",
"riscv64gc-unknown-linux-gnu-0.9.14": "96abad8a9324bd756905ab705ef853e036b3725242161682e7ceab2bf4081186",
"s390x-unknown-linux-gnu-0.9.14": "f5250473bd8a036b78f4ec19450eb3efe743232d688f770ea2a92f21da7fb417",
"x86_64-apple-darwin-0.9.14": "276fe2605a0ba8306a875101e3a11bc5b93e2bce0b6b3b6c49c9ad14507d9dba",
"x86_64-pc-windows-msvc-0.9.14": "7ca7a43da656d9c5fd4b40ce6e8de19bc46d51e026c9dfd4909c1bc8b25f88bc",
"x86_64-unknown-linux-gnu-0.9.14": "e72024e390fed178072e0c9b262c052d89ccff32a5522504f4991d6265aff411",
"x86_64-unknown-linux-musl-0.9.14": "2b9636963c700a595d476e387eb8041973d30c5add3193a8710a4306442ee74b",
"aarch64-apple-darwin-0.9.13": "9c594dce1c237e11680be2b6d1331448eeb6f8a1453fb851a66a40291bb624de",
"aarch64-pc-windows-msvc-0.9.13": "761e29d5a67ca61f1d19c20ce935a9fd1f0011efb0e00f1efb20b0801e06b3c4",
"aarch64-unknown-linux-gnu-0.9.13": "c221d04810f873a7aa8bae9aa6ed721e600e56534980df1363952386a4fcdcc5",
"aarch64-unknown-linux-musl-0.9.13": "5a81540af68e28df324d01d79900e7b86c659e8167cb236528b8e6050d74f94e",
"arm-unknown-linux-musleabihf-0.9.13": "35043814a4eff41141943834e70faa8de54a4a9f6635e0993382ac2ee06651bf",
"armv7-unknown-linux-gnueabihf-0.9.13": "a6c99ae8fdd21e58b8908ecf4f521d2045e297572d899fdd6b59e14d1095600c",
"armv7-unknown-linux-musleabihf-0.9.13": "8a7655f116f90380a9b9e5a11cf8dc37c5a898b01087d48a801a59165eb2e42c",
"i686-pc-windows-msvc-0.9.13": "be134c7576ba494db286a2ccc2ada117b4709e67090264d81891221ea366f2ef",
"i686-unknown-linux-gnu-0.9.13": "b0884051fdf28461db2f1d4f0968cfcc4ad51539195638beb2656cba863a9895",
"i686-unknown-linux-musl-0.9.13": "839215a614165993ee4daecb25857f17d81640ca88bb2874129a92451ac109f3",
"powerpc64-unknown-linux-gnu-0.9.13": "735fd044e22dbcda6d174d9dc7f007a2782610509be4bc9c0bdec18eb0f76684",
"powerpc64le-unknown-linux-gnu-0.9.13": "bac44db58d9e4fc9f1ebc6c03d4ef73d10ae871569a19099d348803e1b09a763",
"riscv64gc-unknown-linux-gnu-0.9.13": "189ce36262a01fc411e85dc6d2cb8dc262b9ba2ce5bc1e6f3ba2bb284a190b95",
"s390x-unknown-linux-gnu-0.9.13": "037fc4a382a2d591429a35078cce5ff44170e2d14fa5fa4625902f36b8aa892a",
"x86_64-apple-darwin-0.9.13": "571cb1623681c439af892335c729c272266e836a9ebcb627f34f8012c6459d9d",
"x86_64-pc-windows-msvc-0.9.13": "cdfb04512c9184939f16eea02644a7133b4e41233ead69122d49847d29a45538",
"x86_64-unknown-linux-gnu-0.9.13": "c45a44144bf23a2182e143227b4ad0bbe41a2bb7161a637c02e968906af53fd1",
"x86_64-unknown-linux-musl-0.9.13": "04cf326d2d742ce5c8890fdc0b9f71bd707be8640979bf6e53ddd52da74dfb41",
"aarch64-apple-darwin-0.9.12": "6bf1148aa48bc42853e8216982a89f6909e1932a51f4d8dce27815e8954e4664",
"aarch64-pc-windows-msvc-0.9.12": "0975aff9837edcd97f2f781ff78754929ee13386708b76a5f223ed41b5741fec",
"aarch64-unknown-linux-gnu-0.9.12": "3c4dd18c1db6bd1af3b84ea3b3cc34dd9d8b955d3e700d1e1e4a18249decbe69",
"aarch64-unknown-linux-musl-0.9.12": "e953307caacdcf8a5bbac510423b2e64840428244a542ae2d7a6ca79c2931c24",
"arm-unknown-linux-musleabihf-0.9.12": "3f8ede818c4a7d8f7f3069eb4034dcdea85342d7b952b269cf17bd2854a9e028",
"armv7-unknown-linux-gnueabihf-0.9.12": "2f06cb797ba7c4f5f1774331d4e15f912b1e8035e49c9ad5f510378fd2d129dc",
"armv7-unknown-linux-musleabihf-0.9.12": "d72ecd42c3657c1e6ca76adc0d98c0576751da8e115cbfbb2cbd36be3f8c8638",
"i686-pc-windows-msvc-0.9.12": "e140404f281a6427faac4d4d0fab467f3e305ae6ba6ecfab0d149ad6815a2c04",
"i686-unknown-linux-gnu-0.9.12": "a56311ec3dfa0fa0760e763dcd0879f5a5c21aa5342b9290d2650b014fec49c8",
"i686-unknown-linux-musl-0.9.12": "1ac8ad42c48eebdc0d62ae78707d4ca2727d0c88ec00fbdd07d0655f023e2ab9",
"powerpc64-unknown-linux-gnu-0.9.12": "89f4a9122dfd30dd51db572513e5db4a05e29abe752405d751b92fe6f30990e2",
"powerpc64le-unknown-linux-gnu-0.9.12": "2941ffdf84340c8416cec8beb15c35b92afb1185a08cae05b8637c26225473d5",
"riscv64gc-unknown-linux-gnu-0.9.12": "0f95884ded94f98d3b8a1f2f9f78f6da4eea5e20f718185a0da4778ab0798e9b",
"s390x-unknown-linux-gnu-0.9.12": "a73662924261b0c581b762040c27fb839aca9164b13e017ca5162ae3dbb51c50",
"x86_64-apple-darwin-0.9.12": "b91852ea80e1c137f6246c8b01bc52d1c7213bff8d82cccd532ce2272c56d482",
"x86_64-pc-windows-msvc-0.9.12": "ee09ed595c54ee70fb29b596c9a15aa71f5d7a1191417985a0684a1dd644a8da",
"x86_64-unknown-linux-gnu-0.9.12": "4e43dac0c82b12b66564d91d5649350377b771d1df84374d9be1b9e6c8dd8152",
"x86_64-unknown-linux-musl-0.9.12": "3621344419cedb7625f0c07c54e876d0a6bb5576b39879b118ed96a6d104fd11",
"aarch64-apple-darwin-0.9.11": "594d9f4cfbd21d5a2f34b0352bf423066a9dab1733c90b5d40e3e227506deb03",
"aarch64-pc-windows-msvc-0.9.11": "04964328f8e8a4e868153f65a29a927c5d3d8f16c343686bbab5147c72858903",
"aarch64-unknown-linux-gnu-0.9.11": "b695e1796449ea85f967b749f87283678ce284e2c042b4b6fa51fa36ec06f47c",
"aarch64-unknown-linux-musl-0.9.11": "26b33bb65714247dd865216e71c5528030c85c6de9ce06172152158ed7add70c",
"arm-unknown-linux-musleabihf-0.9.11": "6b64be48c461ec1b25d8695d407d6189c660ca2f25ab5978476ae2cff516ce32",
"armv7-unknown-linux-gnueabihf-0.9.11": "2212adfff866e062dcea7d1ef99935043a49e3d77a18c9258851b7d23c5c3f90",
"armv7-unknown-linux-musleabihf-0.9.11": "73729ebd29e2895f30c1a600adac56748b1afe18e9398e86ac4a293941fee3f7",
"i686-pc-windows-msvc-0.9.11": "d7a6e1d8f3d6bc2eea36311fe1b30ee44e8aac5de54189bbf17849a212a388a0",
"i686-unknown-linux-gnu-0.9.11": "19189d007a820ed37b08a54cc46efd2b697ed266e71bac6f38abf44e319a5067",
"i686-unknown-linux-musl-0.9.11": "d517ec84358c3ed55757bf8e28eba40072b7912626d96ef0df29fd115f875ad1",
"powerpc64-unknown-linux-gnu-0.9.11": "a30437a5ccbbcedcdd2e70e81404cfcf7a6b4f34d1a440c61e7df96702165869",
"powerpc64le-unknown-linux-gnu-0.9.11": "6340562f7aff862c6b15c55520ca81823fe446e595f96f4732ddf37544977a5d",
"riscv64gc-unknown-linux-gnu-0.9.11": "89ac4d89928dded2e1f300f5f6b184b9f370493c2e506ca272d77e39c6a1b68f",
"s390x-unknown-linux-gnu-0.9.11": "665208d604a63d8e934bd4f748e689283f507b20a083f6c027146d92eb3048c0",
"x86_64-apple-darwin-0.9.11": "14236594b4edbd90929d845766a41a1d4e51d530c9ebbedfb3d93688661f142c",
"x86_64-pc-windows-msvc-0.9.11": "45a3ff2a68c246ed9fd2d9df032496c1beebe480357f356ac25d2cb144884c30",
"x86_64-unknown-linux-gnu-0.9.11": "817c0722b437b4b45b9a7e0231616a09db76bab1b8d178ba7a9680c690db19f0",
"x86_64-unknown-linux-musl-0.9.11": "5cc06fe71374a8883aeb2c83a141a4b5fac8584ee894ba31c5792254508b4e9a",
"aarch64-apple-darwin-0.9.10": "af171d5a4eb1c502819de32740aa811ff71851b1f5ec2d8bd0dda302ed9554c2",
"aarch64-pc-windows-msvc-0.9.10": "6cca85b629d2944f839651e01070dc3de03d238c75a310f28914fcd63ddb9aa6",
"aarch64-unknown-linux-gnu-0.9.10": "39d80f85f604018281b3e7bf2e1515ab96e8eec5763a2cef9f87d821f66d1758",
"aarch64-unknown-linux-musl-0.9.10": "9dda17fe2261a16ce0d267617e5898b9678ba6c5f1c8528b7fe48d32d839f427",
"arm-unknown-linux-musleabihf-0.9.10": "8b71fe3fc0148bcf5a16fe397ad39260145e497f11c51c02293083e8674932f1",
"armv7-unknown-linux-gnueabihf-0.9.10": "cc2ecd5c5093de3d591f4b856ded66a73af3e18eca48eafb65bd3a0b650adcd4",
"armv7-unknown-linux-musleabihf-0.9.10": "52dd0c8479d1f2e9973d2cf84039005b93f63b8d9bcbce6779f73a48b23fff0c",
"i686-pc-windows-msvc-0.9.10": "3b3198c214294d5dc352a94dc7bb22f582d11e364780f70dbc3580602339de9a",
"i686-unknown-linux-gnu-0.9.10": "2896597201449656c0366c5ce657050f1be3fed77db7f3c40e70008719c8db8c",
"i686-unknown-linux-musl-0.9.10": "5fbd3f8857870a30c0dd8066439adf3a7a3999809088b42ca932e8d4ea458475",
"powerpc64-unknown-linux-gnu-0.9.10": "bbff176ee9a6f2b3dc3764bfe9e782f9f244403082bf774d23f0d1575fdfee16",
"powerpc64le-unknown-linux-gnu-0.9.10": "6136887ae446c05fb0c88bed01289a830b6ab5b2cd167b05f0c9add6674bfc00",
"riscv64gc-unknown-linux-gnu-0.9.10": "0572b985da8b546496dbcb087b57127c0d55a02778a7697e27e1314f8f6bccc8",
"s390x-unknown-linux-gnu-0.9.10": "12cefdeba209ffab42cfff6f9f5b24d1d6f561f22825ce545be04bbc20dd9810",
"x86_64-apple-darwin-0.9.10": "0e395aad905332bb106f8bb05575ed001de34e9627a4c455a2f6b9475957719e",
"x86_64-pc-windows-msvc-0.9.10": "bf5a9bb171e90bc612c7acebfb560693d04dba1d1009c297b83da23155218607",
"x86_64-unknown-linux-gnu-0.9.10": "440c4215b171e64061d65d16a23753dd25c29a7f7b1b0446c9e9aed0fa372f27",
"x86_64-unknown-linux-musl-0.9.10": "e614681a150d52446eb8f4cf34f90b5d42b609bd1f2615da049449d795bfe5b4",
"aarch64-apple-darwin-0.9.9": "737e1c2c4f97577aa7764141846e27de915eebb3b2a0f467451089a64824d2f7",
"aarch64-pc-windows-msvc-0.9.9": "517a34f4e609f1ae4920f3a31280427244927d713e0451e21ceb102eb59450d2",
"aarch64-unknown-linux-gnu-0.9.9": "35cbad89f226a06cd8b295f946e7083e15cd6fa058e09c2e02bb388be39a8fe4",
"aarch64-unknown-linux-musl-0.9.9": "84675e9f81c7ec45b11761db4e1f047c64e772d96a7d99201507a10279f7f835",
"arm-unknown-linux-musleabihf-0.9.9": "0ac0dc5e822e8acc9bcd53d3854ebbeef80c806d5722ee8666b8fa49582c8ff3",
"armv7-unknown-linux-gnueabihf-0.9.9": "0390a683afc68c10c3cef45d80678015c6d097260a612ab6bca006ec68f75918",
"armv7-unknown-linux-musleabihf-0.9.9": "9de2898662af656fb80bdbfae1958423ed572745f3c10272ff4c214f02c0cfe0",
"i686-pc-windows-msvc-0.9.9": "724c82034a49f7e859de83382d18b38ec830730446996ccc92ddf65d8d1073e7",
"i686-unknown-linux-gnu-0.9.9": "892e4fd9ee89a1e04ec3608a341e635f4ff5fc6278d0e0be817d1a8df2b29683",
"i686-unknown-linux-musl-0.9.9": "25d9277765bc8e854d5043aa6bad21ed41aca2d84c6f490e6872c5bbd21a8f03",
"powerpc64-unknown-linux-gnu-0.9.9": "2dd81137f5d033ec742e33cb1914a0113b798bb189cf0ba341c4ecda7e7a3a3f",
"powerpc64le-unknown-linux-gnu-0.9.9": "4b22b352bb953d8e050a6f7e72e5308e437e28f9ce2bd9a037b40d0c0aae9bfe",
"riscv64gc-unknown-linux-gnu-0.9.9": "527aa930b057c79712089c4529e35b53a0a7884947a3f4bab8d36d91d0011c70",
"s390x-unknown-linux-gnu-0.9.9": "9ff624746c1f6e6516a05461fb7d918a2f61e77d139d113784c91e932440244e",
"x86_64-apple-darwin-0.9.9": "8a755971dbf0b394cb61607c3d21e81affd62a22cfd306351eb518be7a3f0a89",
"x86_64-pc-windows-msvc-0.9.9": "b1c5d78c5cb6804e556e07eeafbcdea7378107c2bd5c342dea0cdc05a607d8e5",
"x86_64-unknown-linux-gnu-0.9.9": "9ec303873e00deed44d1b2b52b85ab7aa55d849588d7242298748390eaea07ef",
"x86_64-unknown-linux-musl-0.9.9": "b0e4530c1fed09720d7eb703703047f097fe23d6b266945a98422f0a0e5c74b4",
"aarch64-apple-darwin-0.9.8": "c021ce28988acbbfcb496e68cd9f2f6ba6401cc6d3292a5d25313873f825e002",
"aarch64-pc-windows-msvc-0.9.8": "911f354690319ef93f434ecaccd6a893861d231a2af0466b495edee9313d5759",
"aarch64-unknown-linux-gnu-0.9.8": "8dc203a27c99f721545adc531279f0486ea3deb77c951a051e6bb9ea1d588a71",
"aarch64-unknown-linux-musl-0.9.8": "4d6d0e435950f62a2b221d1c1c30ab5d27f22a498939b7a5035806e985b9d48e",
"arm-unknown-linux-musleabihf-0.9.8": "1f9b8fcf30f49923f22b026ae5dd97ea2103e18bcb779d5d10da28ad448a5645",
"armv7-unknown-linux-gnueabihf-0.9.8": "7f6d2b328ebcd9f55cd342a4d47330f075d3dea4efaef10c1d11d6ec35d8a4c7",
"armv7-unknown-linux-musleabihf-0.9.8": "177c0e7721fb7554fbb2be6c7d7cb11d22d9aa90ee9872858a7b4f41824e67cb",
"i686-pc-windows-msvc-0.9.8": "b4e39d7c94a3252d475096a62b2a0cc1f1b96dcd8cd4fe3fe50c0d617494b1e5",
"i686-unknown-linux-gnu-0.9.8": "f2a8f5443d819088844a35f451f1a685ba40075788a58fd50d4df5cfcc070a30",
"i686-unknown-linux-musl-0.9.8": "f49983d5fa96bb4bbf733988b667ce1f019a0d2fc1763cf7d14d039e9fe803d4",
"powerpc64-unknown-linux-gnu-0.9.8": "21aa2fa7f120e48be2f200b98ee036ccb0856be89e5bdaf56a73d765fb23b3d0",
"powerpc64le-unknown-linux-gnu-0.9.8": "19c8a06bf229157e72275d2946273c2d19be98b37a1311affa07286fa2b3ff3d",
"riscv64gc-unknown-linux-gnu-0.9.8": "ba0b56345f2faad97132170437c2300f407346b54386e99e0be38e456e08fed5",
"s390x-unknown-linux-gnu-0.9.8": "2dcbd7726da56a351418b90010ec569f3a569e92020c4752fa6b6daf376938db",
"x86_64-apple-darwin-0.9.8": "10423293b0b11ed019551a0cd3e5d6d66e2799fab25dd2403e1d63cc883eb671",
"x86_64-pc-windows-msvc-0.9.8": "bb94629392b11d49f202e748d5842a0c89ebe570c152ad8ea1425ece01dc4222",
"x86_64-unknown-linux-gnu-0.9.8": "950bad4899800ab158db97081b30a601a3ff4237d705756fda8695342cfcc20a",
"x86_64-unknown-linux-musl-0.9.8": "7763091b882874ae80d162ff77284032ce83174da68c3a759988c81e677e1286",
"aarch64-apple-darwin-0.9.7": "35572b9619fc14d67fc1cd72582c3cfc5c9c66d97f310192e04f26fb3fe96005",
"aarch64-pc-windows-msvc-0.9.7": "4482ad2544544e1966b6d933d38e27368ce0307739d293322c10459f698a1629",
"aarch64-unknown-linux-gnu-0.9.7": "8b3d31a154673c6d357727d2083a33525b515589d153fa5b5455e1db9e9e6363",
"aarch64-unknown-linux-musl-0.9.7": "f177397625eb7ca184a01a954c7d487d1cafee68e53cc8f2789a02f75c347a68",
"arm-unknown-linux-musleabihf-0.9.7": "a9c99005da0b50675195e901b4e46869e5519f0190b5670f66c925ab0d6960d7",
"armv7-unknown-linux-gnueabihf-0.9.7": "5957d4296da0d5f668a4203811c764e4d7f3b1296c7e899e94dfe4753dc6c910",
"armv7-unknown-linux-musleabihf-0.9.7": "5ba2ae9412fe5c03130a0924f148bec1b36af9385c5b5e8ef01d6cf7f090553f",
"i686-pc-windows-msvc-0.9.7": "02349c4380c26838be6fd9bde646c5c3296adc2ba224509ee8e16ffa5baba13e",
"i686-unknown-linux-gnu-0.9.7": "164d9901a130a4b1e3ac19b33bd26c3e41bb726555b7543dbffe1d7d7fcb2f3c",
"i686-unknown-linux-musl-0.9.7": "69b1563d852435ea02e74ada09c5e27fa92ad36ee08847920dbdc227df34ad2e",
"powerpc64-unknown-linux-gnu-0.9.7": "ebb818386029e5d9003d1fa5301bef75c7979a7740c8d2b00bab125b842020b2",
"powerpc64le-unknown-linux-gnu-0.9.7": "bbc59737aa88ac3874d959fe0eb92a368dc8a685f04ac3f548b2c521fbec1296",
"riscv64gc-unknown-linux-gnu-0.9.7": "5e3974b6f46bb938feb87d492106983875c494e1dc0919434befba7a8d540d14",
"s390x-unknown-linux-gnu-0.9.7": "905477be08cf926e53c6d47fdda36302a68ce1880eef8bfe23ef32dce3bfe17e",
"x86_64-apple-darwin-0.9.7": "41946d87e1576c297d6d3cca88b089b6942b8777a5a25e70de1ef8c57b94b9cf",
"x86_64-pc-windows-msvc-0.9.7": "5d250c32d3604e28dbe18dc65c668ff628c53e00dde2c642576e831e4a60da64",
"x86_64-unknown-linux-gnu-0.9.7": "b26fcc8dfa1c39b5a5613445af3be3eefda45d9a39359bee271eafe34913583e",
"x86_64-unknown-linux-musl-0.9.7": "611d1e4d340c6b78519891d37d512c184f58b5424aebecdbd983585ff659ff16",
"aarch64-apple-darwin-0.9.6": "892e8ac6d5240a4dec21fac5bedef52c1b6d40f0dfe52f9e3203038e7e16aed2",
"aarch64-pc-windows-msvc-0.9.6": "57370b6a43b9c7d93064de27e5ef7e068868062473df227a733e2d8a46ea87cf",
"aarch64-unknown-linux-gnu-0.9.6": "5bf67f958b1fbcee03c975b9b3bfe8f6b7437a3967ef97dd5b618c2323c51014",
"aarch64-unknown-linux-musl-0.9.6": "b0c037ea1f8f7c13dbf4f2b2064c6259e642fd3b0bb8960dbdd6c7c9ed5c554d",
"arm-unknown-linux-musleabihf-0.9.6": "fdfe89c41d61fed32e924f57fee6336ebd9b11fcea754a5750085921b584354b",
"armv7-unknown-linux-gnueabihf-0.9.6": "bdc473884b0abbc87be99b33eef358b505fc8671f85ab1221478a267ebbc0186",
"armv7-unknown-linux-musleabihf-0.9.6": "62017a93f07e676b3f3ffae390a2b09f427468a8981510b26891ddf2c97c464e",
"i686-pc-windows-msvc-0.9.6": "7a08b77907b5a5e93f0419be197449747ad1d5647268ff76b50c9f21904459f2",
"i686-unknown-linux-gnu-0.9.6": "8794a2633bf813ae5537ef54c9ee8c887487023c59663739724af56cde626a84",
"i686-unknown-linux-musl-0.9.6": "e19bff04ed47d2be15b70aa5816630c2c288cffa5dcffbd376e0145185df13bf",
"powerpc64-unknown-linux-gnu-0.9.6": "8007e37929c5665746e1704b0b0d70db40a2def7ffb2856691f3162c31a50eeb",
"powerpc64le-unknown-linux-gnu-0.9.6": "0cad393ef7592a8aef64895a2511cfb35acbe60e56289c5815b2ad5c811bed3b",
"riscv64gc-unknown-linux-gnu-0.9.6": "5828042d4f1942ca2ee4ed8ad5c8ae5cc17351a15fa1934dd4eaca9a5ee79f51",
"s390x-unknown-linux-gnu-0.9.6": "34562cc181e09abe75b09788af7a37e5baf953a4b92d2d2ba7abb6447df845d3",
"x86_64-apple-darwin-0.9.6": "b47e42976ff4749f960b9030f5948c1af0b51ef944293de266a6cc10cecef9c7",
"x86_64-pc-windows-msvc-0.9.6": "4cde4a7907214053320d5ab4b6f9add77b7aca6eb39cc7e4928b61704c1328b1",
"x86_64-unknown-linux-gnu-0.9.6": "ccf643248118d5ed85698161e4456f384ff3ec1f20a9f89e4daa9f4de1b4ab6f",
"x86_64-unknown-linux-musl-0.9.6": "8b119693b1c78b6f27a1a9cf435e88011d596e9554bc71254c6ea05bc834efaa",
"aarch64-apple-darwin-0.9.5": "dc098ff224d78ed418e121fd374f655949d2c7031a70f6f6604eaf016a130433",
"aarch64-pc-windows-msvc-0.9.5": "4c615aa19e37b2ec7da3370a25a562bb0061ab005081e4539702c059715dc2b0",
"aarch64-unknown-linux-gnu-0.9.5": "9db0c2f6683099f86bfeea47f4134e915f382512278de95b2a0e625957594ff3",
"aarch64-unknown-linux-musl-0.9.5": "42b9b83933a289fe9c0e48f4973dee49ce0dfb95e19ea0b525ca0dbca3bce71f",
"arm-unknown-linux-musleabihf-0.9.5": "68249598cd76214d7e279a9c3d85d9d0469193c46eda54ad56b1c9bc24a587b4",
"armv7-unknown-linux-gnueabihf-0.9.5": "beebd359fc2700d0af1aaaf8436c7edfc9cb61fe523525df45465bc0b1dd6545",
"armv7-unknown-linux-musleabihf-0.9.5": "6f366dcb0e85ecbc9c247c0c36392820f291f62f3edfb925d099680a8826a87a",
"i686-pc-windows-msvc-0.9.5": "a0f454fb7bb350821b228e6d9f46f942eb9103f40ce7bd8fafb495647586a82b",
"i686-unknown-linux-gnu-0.9.5": "510c1b579c8f8b52c40bff564c6d8dec8510abe8dd5c75aac787d0f4c80f066e",
"i686-unknown-linux-musl-0.9.5": "37382087159d27c1a3b510d4ac16fd695a050a406e99c5ced9458bdc6c08a3b8",
"powerpc64-unknown-linux-gnu-0.9.5": "c13202a151c201435dfab2331e7ea96e7cd670b0a3772b36d136da64274878fc",
"powerpc64le-unknown-linux-gnu-0.9.5": "17d9ec5324091ed86077a4164eca88cbcbecbb3f06c95730cb8c61fb6a2d7ca8",
"riscv64gc-unknown-linux-gnu-0.9.5": "f1b2ddecb96959b2cc2405bebb006553c94d86948261e179748a1f7b078d3823",
"s390x-unknown-linux-gnu-0.9.5": "bf87e642ea6373c0f0655d42719643cf88d6e27e59da04e332bf7d6e7d3480b8",
"x86_64-apple-darwin-0.9.5": "58b1d4a25aa8ff99147c2550b33dcf730207fe7e0f9a0d5d36a1bbf36b845aca",
"x86_64-pc-windows-msvc-0.9.5": "515dc53d7553f1357d0abc1f70acd921fbb9e30230b1d9a08737236daa6ee920",
"x86_64-unknown-linux-gnu-0.9.5": "2cf10babba653310606f8b49876cfb679928669e7ddaa1fb41fb00ce73e64f66",
"x86_64-unknown-linux-musl-0.9.5": "3665ffb6c429c31ad6c778ac0489b7746e691acf025cf530b3510b2f9b1660ff",
"aarch64-apple-darwin-0.9.4": "52793821b13ac7e424f76c47f544b103a9bdd10546f165b327eba225d0ba4993",
"aarch64-pc-windows-msvc-0.9.4": "cebd4cc1bfb1f9876903b528eb8d096dff701be9e1b0da04dab2f7151ec8ae11",
"aarch64-unknown-linux-gnu-0.9.4": "c507e8cc4df18ed16533364013d93c2ace2c7f81a2a0d892a0dc833915b02e8b",
"aarch64-unknown-linux-musl-0.9.4": "c66e99128739ff1ff34c1c883d4b85f72ba1b7ce1c192c07f8327f43172e8d06",
"arm-unknown-linux-musleabihf-0.9.4": "25cfc8bf0f133c9f85f6627dc08d955e0ad80927e01b2e26c68de2470b6e38e6",
"armv7-unknown-linux-gnueabihf-0.9.4": "ebc126709a6ec2863ff22b0cae7ecd50b2094a88e269da674e382ddfb1da4881",
"armv7-unknown-linux-musleabihf-0.9.4": "aa002dc4f272ceb02b5535c80a5b043a61b1d45c0234b4bdcae42096c0b25831",
"i686-pc-windows-msvc-0.9.4": "c3bf7eb197164d3d63651412ff84185efc9c5b77509db120493dd84df6883ed4",
"i686-unknown-linux-gnu-0.9.4": "df07db314f640d981fd057fdbb4d139248e79743d802137a0334de70952232da",
"i686-unknown-linux-musl-0.9.4": "63fe6e880420411a5d8e42ea94ba8e21f503fd7c0b430c0cc0a7c4293f9d8ed3",
"powerpc64-unknown-linux-gnu-0.9.4": "0b1526e807c7e3ce564b00db6b502ed6110f147e2db1eaf88f86c38fdf63af83",
"powerpc64le-unknown-linux-gnu-0.9.4": "eff46de91f1d7db051822c9f42e8e7ad06d8e77caa9fe8e9aa9d6e00bdc388af",
"riscv64gc-unknown-linux-gnu-0.9.4": "7d58c5bbbeb7417eb8e5bdc638e2c45ed7515190fe65e8407674d5efa2aab51c",
"s390x-unknown-linux-gnu-0.9.4": "7936fdcd29e3dac647d2966643835c6c91fbae05afe0b67a400dea73df96cc86",
"x86_64-apple-darwin-0.9.4": "b6a9682124666840031bde1f7a9ab6ca7389d918b4ee5f3d7e318ad574bb5936",
"x86_64-pc-windows-msvc-0.9.4": "6529c0039c89754d5e2d19a8869694b2f6c7c5a27e89bfe44037fef8077dcc30",
"x86_64-unknown-linux-gnu-0.9.4": "e02f7fc102d6a1ebfa3b260b788e9adf35802be28c8d85640e83246e61519c1e",
"x86_64-unknown-linux-musl-0.9.4": "89c128a9bb7a0086cc35922401c20099337db84294c7997dd3df79b9f3157c45",
"aarch64-apple-darwin-0.9.3": "d6b2eaa1025b24b4779602763ad92f20112cbf19732fc6e0c72bb57a6a592c6c",
"aarch64-pc-windows-msvc-0.9.3": "cf14a72d3a53e9cd63a0d87b6f2d1e92429dea9cd133d77c8ebffd57248191f1",
"aarch64-unknown-linux-gnu-0.9.3": "2094a3ead5a026a2f6894c4d3f71026129c8878939a57f17f0c8246a737bed1d",
"aarch64-unknown-linux-musl-0.9.3": "0544bdb24daffe91e3c14373875767e0be31e85e85e532171ab53d8c744149ac",
"arm-unknown-linux-musleabihf-0.9.3": "d120656ddfd22cbcf751c3cf7173992ab4fccf83282868ba1e3ffb79cea4fee6",
"armv7-unknown-linux-gnueabihf-0.9.3": "a524b78c31a43131ad0872e56fcaeb36616f11e5323acb74b547157272723eb6",
"armv7-unknown-linux-musleabihf-0.9.3": "acb2a76a585e27b3ded59eeba114771cc76303ea1d3e53c7b9df6b60ed44b952",
"i686-pc-windows-msvc-0.9.3": "dd054d5a92c1b88daa757e913c85f2f1b9c8bd3b6e530916cfc4d4a612f5638f",
"i686-unknown-linux-gnu-0.9.3": "fd16f999a437157d7a0fce41963373d994480431412b465bda9d818c4070c952",
"i686-unknown-linux-musl-0.9.3": "c77e3cd1ac93cf04695f952bc53f79f93b5ff2f126f0d1fa6a347b7099aca0b2",
"powerpc64-unknown-linux-gnu-0.9.3": "98eee12b4bab516bdea0be3a6c5ea0077c6f90d8d745382fc1f41256fcbacddb",
"powerpc64le-unknown-linux-gnu-0.9.3": "ae6e1c44e6291041dfcef21bedb5ea528992ff52ae193c5a17d4ac0bf94188e5",
"riscv64gc-unknown-linux-gnu-0.9.3": "369eb1efe7126228a77eab55eafb53f176025b67c9c73c53cd176a173d2d3485",
"s390x-unknown-linux-gnu-0.9.3": "3864b46a71bc7873d712a4b38d89df47c9e654b09a535d21a4280feb325e7c7a",
"x86_64-apple-darwin-0.9.3": "ad57ed22bf793267ea97cfc0022afa096149e894dd161ee4ae5401b7c4a6db83",
"x86_64-pc-windows-msvc-0.9.3": "9f7595313b44e57dcaeef63fe4f3de9a0cf4f92a53302b429341f457f70ca3b9",
"x86_64-unknown-linux-gnu-0.9.3": "4d6f84490da4b21bb6075ffc1c6b22e0cf37bc98d7cca8aff9fbb759093cdc23",
"x86_64-unknown-linux-musl-0.9.3": "bee6515c7476baea4a491a088ad7750cf599d25f4adcd37e0f987d4192c68f24",
"aarch64-apple-darwin-0.9.2": "90b1e69da3d04772565dd556ae8e72c86bdb7da85a8dfc2c6b50c400b0e6aa97",
"aarch64-pc-windows-msvc-0.9.2": "b28ae90188f00c6d9e6f32fe252ace25a3698eeca1458d435ac1ca55049607ff",
"aarch64-unknown-linux-gnu-0.9.2": "0f0ecf2abcb50f8fb5d2b52c8095af4c133897086e3f2e0259f4fcb3d8ddf273",
"aarch64-unknown-linux-musl-0.9.2": "1456894c855d38a56d541b201abae306780d8494c3a3497aff2815abd3eba12f",
"arm-unknown-linux-musleabihf-0.9.2": "f6a969f0506b4d9e1d73d223243457825a2544ef9cd8dabc0a8e7e7bea697a62",
"armv7-unknown-linux-gnueabihf-0.9.2": "93bbf2c8612174548822086487eef982bb19d95b569d3df83328cff6f5bf7660",
"armv7-unknown-linux-musleabihf-0.9.2": "0f96d45eb4edfff26faaac58d9d5761b3f2628519557534e6969ec2777f35984",
"i686-pc-windows-msvc-0.9.2": "f0cc299f9cfd9850d30f073794cda9523ac7fa2b90de3d1ed47e3fdcbda69ab6",
"i686-unknown-linux-gnu-0.9.2": "5623618c4a99694b24eb3388577495873847ccae716c0827fdb03035ddd4d441",
"i686-unknown-linux-musl-0.9.2": "c9d60b1e09611e3b36d91d5b520687ac15d765fe2a06a47dae068c6ebf23ada1",
"powerpc64-unknown-linux-gnu-0.9.2": "d2c92ae4df26b4f62181b3e8840f85f5a9474cfac707f0f8fdbef03f573836ae",
"powerpc64le-unknown-linux-gnu-0.9.2": "216e11a9001d7985990b0c4b6efd734b27e5e96222f9815d23c6fc8a5a406718",
"riscv64gc-unknown-linux-gnu-0.9.2": "3fdbc9dc623a992c39ea4c126d4ebe1f78dc2013e9056f2ec93f42b0deb154eb",
"s390x-unknown-linux-gnu-0.9.2": "4e4aa34554891bcfb92d50fc2067e99cbbc5bec473ce4b8e3dedad0d42017c85",
"x86_64-apple-darwin-0.9.2": "c887d2c4f629eee99b80a347880870f3bc77f7746db81923efe520f609f80857",
"x86_64-pc-windows-msvc-0.9.2": "ba61d01b7470b282e09e7c82a053472723c2a737fb3d137bd0f111e420cc1d9f",
"x86_64-unknown-linux-gnu-0.9.2": "b775bb84c72210c6c0b9670cfaad0ac2e3953f12a2947d52b57603b4fbae3798",
"x86_64-unknown-linux-musl-0.9.2": "42e4ac8e9dab04d560a9d44be2091cae994d14653238e779177c026e0dbf5779",
"aarch64-apple-darwin-0.9.1": "cc84b5c86fbde176c0e1908abd65cec6e989ff755b6e68a912652beb1311de31",
"aarch64-pc-windows-msvc-0.9.1": "862e0fef8e68f229c99ce05de70a712221bc552403f480379d03f5b05a6886fe",
"aarch64-unknown-linux-gnu-0.9.1": "450cf31a80cf1335b0169b82310ea589e51b12711ca84b1f5b322b87d26b16c5",
"aarch64-unknown-linux-musl-0.9.1": "a171e7335fc2e05767fe0d151db5a6af7d1ba93debfc8c91721763eff457d0a3",
"arm-unknown-linux-musleabihf-0.9.1": "cc290a14f3ffa286b8c5a437f50d5c9bb76e1d27f3d51dd701b0487e62987ea0",
"armv7-unknown-linux-gnueabihf-0.9.1": "1f0d511f7776deaf40bae03102020f939c96c3d12eec741edf81f581546d2232",
"armv7-unknown-linux-musleabihf-0.9.1": "790728d01dd0d252e3151b57b5a716f84d851d0802962144ea822118ae61b2f6",
"i686-pc-windows-msvc-0.9.1": "8880c92097c5410c3bbad5e72cf7d38b57523ed374bcd7462d309b9a11b6df33",
"i686-unknown-linux-gnu-0.9.1": "4eccf96c57c30edf6c11477351f536b1a6191d13854c8ffa6d8eee58637d82e6",
"i686-unknown-linux-musl-0.9.1": "9763ef30957011ce61c56117ef3078c40960c7521c9ee7cbb3ce8aed5b6207a4",
"powerpc64-unknown-linux-gnu-0.9.1": "4a0965091073115314f9fc935cfa3eed43c3f46a48dfa370583a019b052a950c",
"powerpc64le-unknown-linux-gnu-0.9.1": "cd9e06feaccd26dce79fd6930afbe1210edf69b4181304b4c7143871e8fadbe2",
"riscv64gc-unknown-linux-gnu-0.9.1": "394edca0f59b6cf31ee6e3d252442e1e2708483265199d390ac1fc4161f97510",
"s390x-unknown-linux-gnu-0.9.1": "8f4eedabfe57cf1d3ef29633be444ad9fd1c1ce9db89450a548e50ac88436cf0",
"x86_64-apple-darwin-0.9.1": "df530fc06d2fd51ed2efeb75b1ea5eeb77a631eb945efe5f9d90ef5969cd3672",
"x86_64-pc-windows-msvc-0.9.1": "8dba20107ebcd38f3a8e4acfeb7b209d594e112a3be8d1cea69fe6d501a69fdf",
"x86_64-unknown-linux-gnu-0.9.1": "da55e00c6399a34a47c1f10973d8618b425a530e149836305bcca7ff68d955ff",
"x86_64-unknown-linux-musl-0.9.1": "104bbd393104f09f84db474310b0fc0327c5f6566bd903c9a9cac00d137208b7",
"aarch64-apple-darwin-0.9.0": "136e70984e3fd359f4119ef445bfd67d6e0d50f15400226ef8db7b738ebef6d0",
"aarch64-pc-windows-msvc-0.9.0": "a816625eae0117c8ca0cd618716ddc11c68522d1ecfa7d2738f1c670099fef10",
"aarch64-unknown-linux-gnu-0.9.0": "ca410766024d2d726c937bda2e9441823e2848894ac5a2f8b608902384fc391f",
"aarch64-unknown-linux-musl-0.9.0": "041d8f56ffe82cbbc0f63f187f4e1935ac8b32531cf071bf5fa7abcb0441b147",
"arm-unknown-linux-musleabihf-0.9.0": "ec1ec28a7cc584a8a06632b717f89747fa8b8ba58277ad68c8f289aaeac35a0d",
"armv7-unknown-linux-gnueabihf-0.9.0": "3063c9adb4786ed49d699de9cf24c721ff2cb96bd2bb39465cab3e42d4e4efcc",
"armv7-unknown-linux-musleabihf-0.9.0": "b425603d3ef20c579b94681a587eaa3f8a2198a86473c7cd5f687a93f8a0fdb0",
"i686-pc-windows-msvc-0.9.0": "fd1dc1c9f7f9bc66186188894e24864e3def2232e1de0d49416037161932bdd7",
"i686-unknown-linux-gnu-0.9.0": "02f4b4070af6e0c591d676543b97f7f5d2c0ebf5b1d01d9e116391289f44afc0",
"i686-unknown-linux-musl-0.9.0": "41fc684a948ec2ff9255b484e11b99a0b504a4fc19d466b549e51b690a6325d5",
"powerpc64-unknown-linux-gnu-0.9.0": "122b9216414a8a89b0a716dd7bf5995d03cded62747deef68dacca6a9839f96f",
"powerpc64le-unknown-linux-gnu-0.9.0": "affbf883bfe4ae0204943b7d936fc2269e806a2534d65da0e75da713ac71ce4e",
"riscv64gc-unknown-linux-gnu-0.9.0": "86c9596204fecdacf038f498553a7e8be81aabebe430a1eb08f8ae8215610b10",
"s390x-unknown-linux-gnu-0.9.0": "8f41968e5eceda304d9cd70d83a9dc7e205e221c651572862b74845d045203ee",
"x86_64-apple-darwin-0.9.0": "8fce2fe15b227ca38c706acda7cf0ebc43d5ec4be537f1badd58d5e938c7ed89",
"x86_64-pc-windows-msvc-0.9.0": "4bad2c47dafb52ad774072fb7a260e5c9f3dbf73441658db1128eb2aec5818eb",
"x86_64-unknown-linux-gnu-0.9.0": "4dadaa5ff5009ccd6a0a43f6ccfa32bf36ed2eff18df7011275a9b1d81950e7b",
"x86_64-unknown-linux-musl-0.9.0": "8b045dceb6f13f2ce36285c72ed2d6a51241aea9da5636637c020bcecea205c8",
"aarch64-apple-darwin-0.8.24": "5f0d9d14b17ba3f0af4602a7a5a2e4faececf0a9463736cf8e6269c49569b2fa",
"aarch64-pc-windows-msvc-0.8.24": "349e5f26ea4db6459578db210bb8d676e5b2acc13962877637a95f3e951a6899",
"aarch64-unknown-linux-gnu-0.8.24": "9526f8b0eddd13f5162c18df5ecf35c21e4f96567d21849750356b60121882df",
"aarch64-unknown-linux-musl-0.8.24": "2b8f7383b19d408c680a74a6dbd41c70976516922234eb0075fd2de67413cf29",
"arm-unknown-linux-musleabihf-0.8.24": "e25ead24c0809fd81c67b72a30c81f2e76eff0d702d341c468326e3e374559f5",
"armv7-unknown-linux-gnueabihf-0.8.24": "3c0d984f55bcde6c16c8b4b749d2249b6a61125418dd6b333f249d846e759c71",
"armv7-unknown-linux-musleabihf-0.8.24": "3e980197c242f36cf93cba0ebdad8f772ebf442ee856ba694daab624affab146",
"i686-pc-windows-msvc-0.8.24": "7a8b3cdd8c02a662a19c426fbae99809d83dbedf172e52d30ba4c266ccd9a8b9",
"i686-unknown-linux-gnu-0.8.24": "7957fbdc4538d706440173d14e91b6a2098b95701654125ebc2d05824aa233e6",
"i686-unknown-linux-musl-0.8.24": "1a2b59dddc206106fb19a66dd665bfe85411281ace07825ba60988a00e230afd",
"powerpc64-unknown-linux-gnu-0.8.24": "22dfcf44c1e8b273640e13aa41c72856654da650d58e0b39d1143dbdb4ee7997",
"powerpc64le-unknown-linux-gnu-0.8.24": "0e757a7109aecbe5b6759470164d466e2a2a234808d84095e6db52a13a62f399",
"riscv64gc-unknown-linux-gnu-0.8.24": "45342e4477dfde1f1d50a8c223706377ddb861cf5c4e1a323a936401472ed2da",
"s390x-unknown-linux-gnu-0.8.24": "8167af20bf336179f5ffb96421d38cc7cb5d54dfa9b90820154cffbb456032de",
"x86_64-apple-darwin-0.8.24": "b75ccf924654ad168efac2ec6934704b3d6b9cbff1650b35e17fa3d26d2bea1f",
"x86_64-pc-windows-msvc-0.8.24": "5055be7909a844f703c54e8846d14ab676c34be6ea0d969ee74c5747feaedda0",
"x86_64-unknown-linux-gnu-0.8.24": "db8179fffd97b7557b9a519bae82eaa4f499b02ef546f738a35e74e26c47e6b7",
"x86_64-unknown-linux-musl-0.8.24": "b38ce629a8653a6b444b7c1bff2d8b99bdafd274e66a4900c5838051e3d99d26",
"aarch64-apple-darwin-0.8.23": "e9128449ea08a3c953f0e08dabc78c7588361a898e6bd8163e7e8f8c96adeb66",
"aarch64-pc-windows-msvc-0.8.23": "b4720ff1e3dcab3f41ce8135ae6c87d27682428088ce9e9b6802f2645e189a9e",
"aarch64-unknown-linux-gnu-0.8.23": "503d1df80abe76c1f30264de817c9c847ff5fa457d4085517aecde1f5749ed66",
"aarch64-unknown-linux-musl-0.8.23": "d745f61cdd3a845da6484785995bc6d19ceb3117dc3fa609bd304ecbedb87fea",
"arm-unknown-linux-musleabihf-0.8.23": "55fd7161d526080dc07fec87aed63734cf18a20f4ef2fa9b870dd99cfb4e1b07",
"armv7-unknown-linux-gnueabihf-0.8.23": "160e9522965702a31bfcb86ee28318f7d83f3ffdf330739670703fa0a85ce012",
"armv7-unknown-linux-musleabihf-0.8.23": "8cc14b0b7b5118a13c80d9245f0aa540c2596c757d7cbfab622b4f798ce90dd5",
"i686-pc-windows-msvc-0.8.23": "9ca7cc83d6730762bb811ec96aff9c95c5c9a131d4305229348df61bbfc9241a",
"i686-unknown-linux-gnu-0.8.23": "bd578dc12e1170bf14cecd17b343e308edaaee5b44f0cb066076366353567856",
"i686-unknown-linux-musl-0.8.23": "3237b711f1c313b328be0d42395319a2ffdab5f67cd2338fbf77155b6bf425f5",
"powerpc64-unknown-linux-gnu-0.8.23": "92f30e2adc8c4ec75b8dc85a82df7b74a617346c7748c41cb4672a61e42791d6",
"powerpc64le-unknown-linux-gnu-0.8.23": "b3f9b147022053b792fd82f7722b527323378c5130a227b7ec667c08b600d1be",
"riscv64gc-unknown-linux-gnu-0.8.23": "a4925b51f0810e44075d336c3fa5b7534c086111dce0d0d9d92a2e2270aea0a8",
"s390x-unknown-linux-gnu-0.8.23": "6bafdbed0e750930a2af123e3cf8b782228aef88d24bf25dc6b0f280bc8ad461",
"x86_64-apple-darwin-0.8.23": "bbb1db369de63d85334e2c43bb925fce63261cefa8c1a8569a6bd4c520f03c0d",
"x86_64-pc-windows-msvc-0.8.23": "454c727fe05ec3763cae9436bb409a6bc5156e9c8ee55a09218191faf8c32445",
"x86_64-unknown-linux-gnu-0.8.23": "b8d378bf1cbdefa6fd18570c3d5e7ea85066f75549cf3840212f505ed37522ed",
"x86_64-unknown-linux-musl-0.8.23": "598f7939cae516de105075d55eb20d906787de307a0011904e301346a13de2ff",
"aarch64-apple-darwin-0.8.22": "3f61099e261e449527141dbf125629fab33ad696468c8c90cebbac40185a306c",
"aarch64-pc-windows-msvc-0.8.22": "dbb3a5bd06d20c9ab8bb9a79c7c4fb5832ca1c7ba5f231a020bc92e5a3c6dcf4",
"aarch64-unknown-linux-gnu-0.8.22": "726b72a137fda33565143325f7d31c42cd30ff9ccdf067e00d124d37b4081cb2",
"aarch64-unknown-linux-musl-0.8.22": "3cb3c891f56891f0027f0287980014930b18875c9396c1d8a19d607b0a6049d9",
"arm-unknown-linux-musleabihf-0.8.22": "78c4898abb5285cbcb53bc2544d93158a705bf2024393d203b7df89406ffd5d7",
"armv7-unknown-linux-gnueabihf-0.8.22": "96f7e526b7cac851f4448ca773ee82216d3d8564161486f5c0ab0d84418cc3bc",
"armv7-unknown-linux-musleabihf-0.8.22": "763bd2b60642c68e2d2d5ce43f741fe9cdb77b6fa771cd8b45971e4a380411d7",
"i686-pc-windows-msvc-0.8.22": "e84c697e29afc76223e020edb3786acebed34779a9cc2ab88e570ff93d69a617",
"i686-unknown-linux-gnu-0.8.22": "f6cfe03095b9cafdbf530cf228803e9ec329511d45e5901e3baa355f96ba37f3",
"i686-unknown-linux-musl-0.8.22": "6ea34f5e656ee0f2085436513e9b6a2caeae7ff14d14871f177a7797f79db20e",
"powerpc64-unknown-linux-gnu-0.8.22": "87b1f9b6452540d1b3e3286e9209fcae39a692c323544c10f6b4f096bfc04673",
"powerpc64le-unknown-linux-gnu-0.8.22": "2f639a402031e62dabd6ca534635d73b26e8b72afeb063f8abc9abc6ba97a8e3",
"riscv64gc-unknown-linux-gnu-0.8.22": "75c83abe161c6e673f7d21e46cd27df539081a9ccf74e4d053e90ba8d2d715e0",
"s390x-unknown-linux-gnu-0.8.22": "a0f671106b8b4c128aad3b52becc34691d7669c3d40bbd5a18df2c60b4d67971",
"x86_64-apple-darwin-0.8.22": "76638fdcfa91357858771551a1c88de1f7c3b270b33ab1866f8a0618d9e442d8",
"x86_64-pc-windows-msvc-0.8.22": "5049375aa2a5162f132b2c1cb992e25d42d47d934cab8c174dbe6f60973dcc12",
"x86_64-unknown-linux-gnu-0.8.22": "741ff1f5742c5a4a25d2f829e8395355e43f7a5ae2ebc6368e9ae2df0efb69cf",
"x86_64-unknown-linux-musl-0.8.22": "06b891ef144bd8390fecb150838f0ff8a34ccaeecf9d744d97945d02ec7389c0",
"aarch64-apple-darwin-0.8.21": "51a10a0ba94139911266779e61296b07fffc98eedf3d8f6e206f86375ac7fb31",
"aarch64-pc-windows-msvc-0.8.21": "ad60ed2fd2c95957c55041d2e61146f0f41aedc7afe87f3f79a8648802713fb5",
"aarch64-unknown-linux-gnu-0.8.21": "5ebc05755ee1688434993d3bf346b6fbdbcbd2f17f1a8339f175e76af18de50c",
"aarch64-unknown-linux-musl-0.8.21": "2afeee16b09d40cbe4de445fe82e1ecc00ed51dd8e118ed7800ca537ee4cf0c2",
"arm-unknown-linux-musleabihf-0.8.21": "f45daacdd988284b011137ba017e5b151252922eec52b457d50770f0cde18387",
"armv7-unknown-linux-gnueabihf-0.8.21": "f6b5fa5a6cfad7fd9fa80c11b24cef18acb8d99c137a6144a4bb1c50dbfb5b1b",
"armv7-unknown-linux-musleabihf-0.8.21": "d53ad3c1c5b549654c2da6f9369df7a68b961f18fcaf847cb8242dc48fe17e20",
"i686-pc-windows-msvc-0.8.21": "8ee8cd0cc5d49a9e3c6f176bdc9d09ece03144dbc0914c20b27e67ff72c0570e",
"i686-unknown-linux-gnu-0.8.21": "327ef2b81967cb2e8407255d3580dd67ddf15fdb18fd3d6e945dc13f76462b0c",
"i686-unknown-linux-musl-0.8.21": "18b7a77c37155ea15166a3a212e69b53f0e6b8d1d399b87c1b3ac4cc646e9b4f",
"powerpc64-unknown-linux-gnu-0.8.21": "1fae8052ce8a9663438ba332f930062b14621adb395eff2950928d7cf8323d16",
"powerpc64le-unknown-linux-gnu-0.8.21": "cca5f83f59251fced9056ecf8ae90e89a83252dda1eb53eab96a76e484776e0d",
"riscv64gc-unknown-linux-gnu-0.8.21": "485f2654720d9fca3c85b147e837f0dc32bb869113bde58e979fc76f0c37547e",
"s390x-unknown-linux-gnu-0.8.21": "5757570db02d2ed3ef5742a1a484b921e716d8412daf45e85c4c79c0a75bf0c1",
"x86_64-apple-darwin-0.8.21": "df0fae941f83f796ea8100958f5d31a185dacc34777f346019123b6cb5571101",
"x86_64-pc-windows-msvc-0.8.21": "ed4f66aacea41026675bca18699958cda13112c77ef5eff3a2f3d376bd1f9177",
"x86_64-unknown-linux-gnu-0.8.21": "166bfa522cc836a3b68bdcef78e40b263ea62f12bb80a8d9c6fda4ce5f2a3994",
"x86_64-unknown-linux-musl-0.8.21": "ff6f6ffca9a026cc99bc43df46e70e33df09bcb544b43e8ef97a5176dd68b516",
"aarch64-apple-darwin-0.8.20": "a87008d013efd78d94102e5268a24990c409bfb39b80df4de32d1c97f093e7ef",
"aarch64-pc-windows-msvc-0.8.20": "ac33f921e0d48d14a106a6cc84b146da7a1f4a3c329c7fb0e1a8e6ff4cf541e6",
"aarch64-unknown-linux-gnu-0.8.20": "b434851cd94e9e2083bc9a5851f1d13748771726bd2ac30027f820fc134b2104",
"aarch64-unknown-linux-musl-0.8.20": "60ad9b7fb846c2051e0113077b1e9510b4b1a73b9a1816a03e82406deedff08d",
"arm-unknown-linux-musleabihf-0.8.20": "72fa919115f5a7c4557c1adb55ac77154f3fb0272b95ff0270d4eaf98bc814c2",
"armv7-unknown-linux-gnueabihf-0.8.20": "87a993df182a2abb5581421d6c76b0cbccb311cfca625d8c827f2cfcf1c78fed",
"armv7-unknown-linux-musleabihf-0.8.20": "3a3c1b2370824f3129c89bf3def5b2b703813152cf0be0ec3c04dead21077cd0",
"i686-pc-windows-msvc-0.8.20": "62fd821f330f469cce6e02eded6f63ba51a9461acc9e0e16794e05da08fe16be",
"i686-unknown-linux-gnu-0.8.20": "a7bfa2c07183f2fd44ef4d6c910971796a980ebb3c52e9620e6b741cc6fe45c0",
"i686-unknown-linux-musl-0.8.20": "67eec91d7ca5a8dc8d95149be52bcf459efb4caeacbacf8586f371f8192a0ec7",
"powerpc64-unknown-linux-gnu-0.8.20": "b96d6a4907ab4c26d7061e43f6993aa47c76a01af6f3cb871d9c48b7b250fbca",
"powerpc64le-unknown-linux-gnu-0.8.20": "1c13fbcd13214e93300749cb14cb5c1425d6a4095f2e406a80b34ab10d269b5b",
"riscv64gc-unknown-linux-gnu-0.8.20": "a14f8297bae6dc3993a9367e0fcf6061281f5f3f0da7c46a6a2a5fd47467f56c",
"s390x-unknown-linux-gnu-0.8.20": "8e59db8d1cb791897237982e369fea0217a12ffe3527cf6f1d30fea32d20a509",
"x86_64-apple-darwin-0.8.20": "ec47686e5e1499b9ea53aa61181fa3f08d4113bc7628105dc299c092d4debf44",
"x86_64-pc-windows-msvc-0.8.20": "e2aa89b78f0a0fa7cbf9d42508c7a962bda803425d8ec3e9cf7a69fb00cf6791",
"x86_64-unknown-linux-gnu-0.8.20": "dc67aa1a5b6b16a8cc4a5fdf5697f354fbf9e45f77a3da6d9e71db6ec213c082",
"x86_64-unknown-linux-musl-0.8.20": "a29e1854ee3ce1ccc5ba1d27783c4f34e99605e16c886a71446a90bad40a38c9",
"aarch64-apple-darwin-0.8.19": "bb63d43c40a301d889a985223ee8ce540be199e98b3f27ed8477823869a0a605",
"aarch64-pc-windows-msvc-0.8.19": "3bfe2db4bccf95e05d2685bcbfad7e49e7cd2177a20aebe81a5e5348cbdfc0a3",
"aarch64-unknown-linux-gnu-0.8.19": "ffd29feed13cdd30b27def8e80e64223325fbe4f7cfc4d4c906ec2531f746bde",
"aarch64-unknown-linux-musl-0.8.19": "87925376fa1e59de23582e1cbd81d6aabd16611e871ad085e09be2c2fa12689d",
"arm-unknown-linux-musleabihf-0.8.19": "00d4835ba20e2e4a3bfed6fe4f6fbf4982c5a0e6a3105c7bde93fb9377e61dea",
"armv7-unknown-linux-gnueabihf-0.8.19": "7a58efdb9c6e3f320759f9f074306e34f03ccfb535b306cbace92e9ad414efd5",
"armv7-unknown-linux-musleabihf-0.8.19": "c8f8a244009f3ad01b23772c936c5c5a95871a87b0add90b85a55d3913d1fae0",
"i686-pc-windows-msvc-0.8.19": "32c7176e49f5fa1c7480b32e325a631431212904b1020427e62afef46fddddb9",
"i686-unknown-linux-gnu-0.8.19": "94a5f944d1cba4db2e7fc6831bf9c78c291c5c1e5e079b4095e9fcdcbc15bc71",
"i686-unknown-linux-musl-0.8.19": "491b282b50e078fac4ced99e69359ac6cecc3f43f585f812d52515e6b081261a",
"powerpc64-unknown-linux-gnu-0.8.19": "3c7c7ecb8d5b61acee3914984f1025af1707a987a51285aba44d968420139f2c",
"powerpc64le-unknown-linux-gnu-0.8.19": "711e39050b528b0860d868c98057eebbd181befbe6a6f24e0f6fd571eab5520f",
"riscv64gc-unknown-linux-gnu-0.8.19": "5dd8e1ec8bf8722e08d9853953ed0ef12318d0f5e82d06a8dd98815666f99186",
"s390x-unknown-linux-gnu-0.8.19": "5b3af341a39364f147d7286e40f55dd92ac8a142110e29ff1b4825afb96e1b27",
"x86_64-apple-darwin-0.8.19": "b5f91770e55761b32c9618757ef23ded6671bb9ca0ddf5737eea60dddd493fe9",
"x86_64-pc-windows-msvc-0.8.19": "945b07182de7de279ba5ae5c746785dfd55cf9b17481d3535b0b03efd6e64567",
"x86_64-unknown-linux-gnu-0.8.19": "cfc674e9b83d1becfca4d70386e5f7ace4c1fa8c47c518abeebb8ef2b30da4b8",
"x86_64-unknown-linux-musl-0.8.19": "6a37f712ae90c7b8cf364fe751144d7acc2479d6b336378111e74cc7fb14fa7b",
"aarch64-apple-darwin-0.8.18": "ce660d5cdf0ed83d1a045bbe9792b93d06725b8c9e9b88960a503d42192be445",
"aarch64-pc-windows-msvc-0.8.18": "f49a25f1a89c76d750e2179f40f9302310504f40c89283ca4522b13363c7bdc9",
"aarch64-unknown-linux-gnu-0.8.18": "164363f88618f4e8e175faf9fcf5172321c221fce93d64cec8e9ab3339511dad",
"aarch64-unknown-linux-musl-0.8.18": "1d7e3bfc3b5ec9d747bc3f42a6a3362249f30560966512b172e8967b11046144",
"arm-unknown-linux-musleabihf-0.8.18": "3c356156c074eb21f731116501992aa6ad6079231f37c75ea7a15c22d1c41cf6",
"armv7-unknown-linux-gnueabihf-0.8.18": "15e12cfba5fb7b20b4eb45887b78fe157d29bd28b38bbc03a19224ad6766a641",
"armv7-unknown-linux-musleabihf-0.8.18": "008cd8225fd8b6b4bb3293d1d7520023f8e432141f256320c034dc5a1a15c7ab",
"i686-pc-windows-msvc-0.8.18": "55f0d91f766ca141e166fe74b8a81da667b5d703ca1b5f2671677f0b2bfdd901",
"i686-unknown-linux-gnu-0.8.18": "3b42e3b58650cde6fa0d03dfdb8528573cf679ac9809191b3976913cdec13b6f",
"i686-unknown-linux-musl-0.8.18": "e2dae897955f666eb2f83af12d9a566bc42c26c17413d1480124cef6b30dc0fd",
"powerpc64-unknown-linux-gnu-0.8.18": "88cd4ad593e6dd915c69dee02b56cbf1b6d16cb7c8129a5ad1fa8ac02bd755ab",
"powerpc64le-unknown-linux-gnu-0.8.18": "50b418096f4d82df5d22cb23e650754ca92bca7be657113dcd53631f0e0cec77",
"riscv64gc-unknown-linux-gnu-0.8.18": "b696be9a2ef0808f230227477b8e23acedba0b90933978c760ea2a748e8c30fa",
"s390x-unknown-linux-gnu-0.8.18": "3b106572a8574f58e3df591cdaef915bdb38fdff11e5de0ec53bfe1b857267e8",
"x86_64-apple-darwin-0.8.18": "a08c3a6c50f49e68216ac133bd0aaae952db2cd8d19a3cd5be782f8f4becf135",
"x86_64-pc-windows-msvc-0.8.18": "3e42d63c8323839d50b11959ec558ad3954a2c16aab1ad52c0521bd055442a3f",
"x86_64-unknown-linux-gnu-0.8.18": "59ad1a1809fa47019b86cf339fff161cb7b00ad3d8d42354eea57d0d91aeb44c",
"x86_64-unknown-linux-musl-0.8.18": "3a93bc3597ab73c9c31d8ad709b4d0b788961cbb508c5a4dcf21636fd7e3e8ce",
"aarch64-apple-darwin-0.8.17": "e4d4859d7726298daa4c12e114f269ff282b2cfc2b415dc0b2ca44ae2dbd358e",
"aarch64-pc-windows-msvc-0.8.17": "2396749de576e45a40efa35fe94b3f953c3224c21f75c05772593e085d78e77d",
"aarch64-unknown-linux-gnu-0.8.17": "9a20d65b110770bbaa2ee89ed76eb963d8c6a480b9ebef584ea9df2ae85b4f0f",
"aarch64-unknown-linux-musl-0.8.17": "bd141b7e263935d14f5725f2a5c1c942fd89642e37683cb904f1984ce7e365f4",
"arm-unknown-linux-musleabihf-0.8.17": "9d4ffb6751d65a52f8daf3fd88e331ab989d490a6e336d6a96cac668fce17a65",
"armv7-unknown-linux-gnueabihf-0.8.17": "014afffa5621986aefbe8a6d71597eb45b8cd3d4e94f825f34ec49ba4cd0c382",
"armv7-unknown-linux-musleabihf-0.8.17": "fb976e7482c4550f38c51c5c23b9dae0322c3173f56436bf9a81252e4b74fcfb",
"i686-pc-windows-msvc-0.8.17": "f528893452ca512b555b63267292977d237bd6fbdd967c9be6941a65ebf256f4",
"i686-unknown-linux-gnu-0.8.17": "d52438a1588ea7c2332dc4aa8c93eedae344fc435c95491037237c7b4b36eae4",
"i686-unknown-linux-musl-0.8.17": "9e10f4c57034e6e98dea48b0f4250a7eff983f1b2947d99ed6605a4eb0ec8d22",
"loongarch64-unknown-linux-gnu-0.8.17": "1d02e45dbbcbbaa867afe59fd62b294cba47abf1a76e151e19db03b5dbf1c9c8",
"powerpc64-unknown-linux-gnu-0.8.17": "6f448735dfd72e2d5c3e3bb541b388c58cdfcf3a562128d5ac1a5f2be47f95d6",
"powerpc64le-unknown-linux-gnu-0.8.17": "e4b28cab21eb990e2bea768bc9f43b61e4fd554552cea8868c855027decef69d",
"riscv64gc-unknown-linux-gnu-0.8.17": "f653caa34479d405d290b825a2fe782bb26c55a7bfaa870911b4e18792312d45",
"s390x-unknown-linux-gnu-0.8.17": "8fae8182704b4b11316c87d897c3e64f2d3f55ac8c58c482d9bbef9ad611f90c",
"x86_64-apple-darwin-0.8.17": "31ed353cfd8e6c962e7c60617bd8a9d6b97b704c1ecb5b5eceaff8c6121b54ac",
"x86_64-pc-windows-msvc-0.8.17": "0d051779fbcb173b183efeae1c3e96148764fd82709bbbf0966df3efe48b67c5",
"x86_64-unknown-linux-gnu-0.8.17": "920cbcaad514cc185634f6f0dcd71df5e8f4ee4456d440a22e0f8c0f142a8203",
"x86_64-unknown-linux-musl-0.8.17": "4057052999a210fe78d93599d2165da9e24c8bbb23370cdd26b66a98ab479203",
"aarch64-apple-darwin-0.8.16": "87e4b51b735e8445f6c445c7b4c0398273e40d34cd192bad8158736653600cd6",
"aarch64-pc-windows-msvc-0.8.16": "392acca957d8d7cccafbb68ce6c4ba29b2ff00c8b0d4744a2136918d3a7bf765",
"aarch64-unknown-linux-gnu-0.8.16": "22a3cbaf87776b73c2657ba5d63f8565c1235b65eaf57dffda66061f7a09913b",
"aarch64-unknown-linux-musl-0.8.16": "6bd6a11c384f07353c3c7eec9bde094f89b92a12dc09caea9df40c424afebea5",
"arm-unknown-linux-musleabihf-0.8.16": "53c31a6559dc4fb22ce8c56640b00a8404b7e4d55f68b6bb3aa188864e2c3084",
"armv7-unknown-linux-gnueabihf-0.8.16": "ada6f393d5e5d9cba5445832ba61e8222859e915e5d77a37f5dd35979f3f18e4",
"armv7-unknown-linux-musleabihf-0.8.16": "55690f70f9c61963c0069558e205acda9ff0604a44028226b9a0ec3b847c9125",
"i686-pc-windows-msvc-0.8.16": "1e727b8af6c0781bc6eb9a2c34e7ee704070b7a2f122544443418e8be13019ee",
"i686-unknown-linux-gnu-0.8.16": "4eaf39134663ef184f684be6f6aa83e971fb36ef7d1c67a5f2196268b61c0579",
"i686-unknown-linux-musl-0.8.16": "a179ceba9f2fcca7b46a86b12715e28fb3429ff8193ae839700d534e35e95a45",
"loongarch64-unknown-linux-gnu-0.8.16": "600a8be6d2621d654b6665d9a8df9370f4af9c0b6ceb851d1ae0d4b895e8e546",
"powerpc64-unknown-linux-gnu-0.8.16": "c86008ef8a3e3730b0e58a168542331960c90a3b043e3853c1941457748595f3",
"powerpc64le-unknown-linux-gnu-0.8.16": "91645092447a14c23b47d0f434a787a9555b29e061607d9e60d2d556b831f5aa",
"riscv64gc-unknown-linux-gnu-0.8.16": "dbaeff3f0baad73c264c35abd937a231fb6b9d1201b6763d82e39e7516358115",
"s390x-unknown-linux-gnu-0.8.16": "e29c330a8956c13acb0f2af7aa650dd5d9ebba6aefdceaea77f689953d140780",
"x86_64-apple-darwin-0.8.16": "07491a998fd741090501df9bbfe538f85568901a3a66c9e0368636509158727a",
"x86_64-pc-windows-msvc-0.8.16": "97fb93678eca3b4f731ea3879ae2e78787976e03f38c9c6fb744ab28bc3aec1b",
"x86_64-unknown-linux-gnu-0.8.16": "fc94e50e8ef93a97d723b83faa42888e7710c4443a5b8a1af3aac2cda5390f3a",
"x86_64-unknown-linux-musl-0.8.16": "ee220f112b91b23f641d169ba7a3652c6ab7104e7c666d26104ebd6a2f76be43",
"aarch64-apple-darwin-0.8.15": "103367962c5cb00bf7370d84cbaa3fec5a9807be9cc833ea9d8eea400c119fa2",
"aarch64-pc-windows-msvc-0.8.15": "16d92f21508c5dbd3374466c2cdad2909959a6d3bd06672b9db023f2a5d7a014",
"aarch64-unknown-linux-gnu-0.8.15": "6ede0fefa7db7be3d5d9eda8784a8e43b1cf5410720eb3da60ab1d2f66678e82",
"aarch64-unknown-linux-musl-0.8.15": "23ea21a05c62c4c307ce691f29bff2f15c94c4f07f2b83d9b356f0664bc8b3a2",
"arm-unknown-linux-musleabihf-0.8.15": "deeac755224244b535c9f654b29aad8a165c94840a520d41e5c697235edd0576",
"armv7-unknown-linux-gnueabihf-0.8.15": "07ad33bc28ed276944d069eb714322b24167bfe106b4bded01e272fe245934ba",
"armv7-unknown-linux-musleabihf-0.8.15": "0b4f73e084a04828f2431c887c2e3eea590ff06a1dc279e473dd1d94cdc8f25d",
"i686-pc-windows-msvc-0.8.15": "34425e7dc7323b98fc844d9223596e9a1d2347e6f85a512221428a455dcbea78",
"i686-unknown-linux-gnu-0.8.15": "16230e9b785fccb628e920d0fa1ca59b50b0515b838b2bb80f997bcb7a35f2bb",
"i686-unknown-linux-musl-0.8.15": "43d554953beac56a8d8ba23aeb2b0e0e5c43020b074071c15df5d492e46a81f3",
"powerpc64-unknown-linux-gnu-0.8.15": "71465b1d08e0a4cb3fcfe02e127104400a85ed00c30ec5f53f8705e71567fb6a",
"powerpc64le-unknown-linux-gnu-0.8.15": "54157ee5e01b02b8c89131391d62228787750b556bbdb7d3428a3cdfd1698102",
"riscv64gc-unknown-linux-gnu-0.8.15": "faa4a470a26ad0db0dbefc510fac91fa0da4d9cd06ca4f229933f7aac21e46b2",
"s390x-unknown-linux-gnu-0.8.15": "0bb022274375745352a748b8332bb170941fe01915a1670c2c6d06d182783437",
"x86_64-apple-darwin-0.8.15": "2bbef70982e97dfc36454de173f35ec1a5e83ae11e3885df6a50db3fd76171cb",
"x86_64-pc-windows-msvc-0.8.15": "459d95892a5cc5c21779532f4f41b9238594b79e312a5142da2148ecfa10e705",
"x86_64-unknown-linux-gnu-0.8.15": "be9878e9d08ebcb621a683aba52e7fb8bbf92b2532e0d759026ffcc067673042",
"x86_64-unknown-linux-musl-0.8.15": "d0fec58f3124e05e0a1af0f6541abfce4333253cdaf23c7b6bb2e6128bf138ea",
"aarch64-apple-darwin-0.8.14": "281ea18a5778099f7edeee0a7b20671d14918782de153604c939486f2b8a2791",
"aarch64-pc-windows-msvc-0.8.14": "d7fef1d1d0b0f8e0aa94391376fe5fb95f0e213ef7ee1c498c287fe0ea76f886",
"aarch64-unknown-linux-gnu-0.8.14": "69616218470b2ad053617efb9e7027b1518ea38918d933c2791e113d99cec507",
"aarch64-unknown-linux-musl-0.8.14": "d492d433d8ea87a4051c3f071ed04f13f8f001aa782e2e8192eaa5143e9a6f39",
"arm-unknown-linux-musleabihf-0.8.14": "ef6a51cc1808de75969e2719420464d494bb5932d18ebf3ac07df7a5ab27b16a",
"armv7-unknown-linux-gnueabihf-0.8.14": "75c77b40c39dd526f88f5119d686e44d95c10cece436e4306f0db32b94d91716",
"armv7-unknown-linux-musleabihf-0.8.14": "33a15d40d407323a516edabdc4eb33bbefc04e17d40769a04bfc15605d2eee1e",
"i686-pc-windows-msvc-0.8.14": "b43c5703cdfb15c019b04cad2ef19034a91e8a0872ae2d674d366dfc0a755124",
"i686-unknown-linux-gnu-0.8.14": "d49a796d569b010d43eeb8d9259f1a12fa910176b076c04c13609648973f428e",
"i686-unknown-linux-musl-0.8.14": "cee58d8fe55f59a0869039f83875ee44a4a12b3b3f1f1f5a2bdc68968e449f54",
"powerpc64-unknown-linux-gnu-0.8.14": "f118e642a7e360384a0277980986cea4857cc2d90364d58865d941c6b8abfcd1",
"powerpc64le-unknown-linux-gnu-0.8.14": "c411e63edd125283641420bb4be830872be269451756de2095aebc3ca8b0277a",
"riscv64gc-unknown-linux-gnu-0.8.14": "1bb13f9d1a3e55dcea09f3b99b35ec0fbd3428276311b068268b07cd07c5b067",
"s390x-unknown-linux-gnu-0.8.14": "8643d6ab3513ab4adc3ffb56c39813651725d047ee6af5de3ae1fd0e4975c364",
"x86_64-apple-darwin-0.8.14": "567d98b0c541a68df8aaa2c3214242c4070068b2edaea1be376a4c0fa348bdf1",
"x86_64-pc-windows-msvc-0.8.14": "3f68ab95d2856e6b238e0e3f4255a723ccdc2cf1d4b8e53f5a4f5a47b645dc72",
"x86_64-unknown-linux-gnu-0.8.14": "954add045f29f93191523175e4aea066996840e86c1b6339dee25f48b15b5ddb",
"x86_64-unknown-linux-musl-0.8.14": "e018287fb321c3c633df2b622c2cf53042caa5c4c43a4ca6431bcb38e0685fa4",
"aarch64-apple-darwin-0.8.13": "c3eddc0e314abb8588f1cdf312f0b060d79e1906eff8f43b64a05ff5e2727872",
"aarch64-pc-windows-msvc-0.8.13": "5b3a80d385d26fb9f63579a0712d020ec413ada38a6900e88fdfd41b58795b7e",
"aarch64-unknown-linux-gnu-0.8.13": "3bb77b764618f65a969da063d1c4a507d8de5360ca2858f771cab109fa879a4d",
"aarch64-unknown-linux-musl-0.8.13": "40ba6e62de35820e8460eacee2b5b8f4add70a834d3859f7a60cdfc6b19ab599",
"arm-unknown-linux-musleabihf-0.8.13": "f108a49a17b0700d7121b0215575f96c46a203774ed80ef40544005d7af74a67",
"armv7-unknown-linux-gnueabihf-0.8.13": "730d8ef57f221ecc572d47b227ecbd8261be08157efb351311f7bc1f6c1c944a",
"armv7-unknown-linux-musleabihf-0.8.13": "b78dacab7c2fb352301d8997c0c705c3959a4e44d7b3afe670aee2397a2c9ab3",
"i686-pc-windows-msvc-0.8.13": "08482edef8b077e12e73f76e6b4bb0300c054b8009cfac5cc354297f47d24623",
"i686-unknown-linux-gnu-0.8.13": "0ce384911d4af9007576ceba2557c5d474a953ced34602ee4e09bd888cee13c0",
"i686-unknown-linux-musl-0.8.13": "b6462dc8190c7a1eafa74287d8ff213764baa49e098aeeb522fa479d29e1c0bf",
"powerpc64-unknown-linux-gnu-0.8.13": "9a8e8a8927df9fa39af79214ab1acfc227dba9d9e690a424cef1dc17296161a8",
"powerpc64le-unknown-linux-gnu-0.8.13": "4880a8e2ba5086e7ed4bd3aecfdae5e353da569ddaac02cd3db598b4c8e77193",
"riscv64gc-unknown-linux-gnu-0.8.13": "0cd68055cedbc5b1194e7e7ab2b35ac7aa1d835c586fb3778c7acb0e8a8ac822",
"s390x-unknown-linux-gnu-0.8.13": "8cc2e70bee35c9e437c2308f130b79acc0d7c43e710296990ed76e702e220912",
"x86_64-apple-darwin-0.8.13": "b799253441726351bc60c2e91254a821001e5e2e22a0e2b077d8983f583e8139",
"x86_64-pc-windows-msvc-0.8.13": "60870fa18d438737088e533ed06617549e42531c522cc9a8fe4455d8e745dc29",
"x86_64-unknown-linux-gnu-0.8.13": "8ca3db7b2a3199171cfc0870be1f819cb853ddcec29a5fa28dae30278922b7ba",
"x86_64-unknown-linux-musl-0.8.13": "38ade73396b48fce89d9d1cb8a7e8f02b6e18a2d87467525ee8fb7e09899f70d",
"aarch64-apple-darwin-0.8.12": "a3f78d20465c6d18f7072f118ce1c61b164b98698fdc37357e72958c7d1b68fd",
"aarch64-pc-windows-msvc-0.8.12": "eb0c7e47411d11cbc3990eef51a5e10215a1fc9d5f5058fd8e952da94be16512",
"aarch64-unknown-linux-gnu-0.8.12": "9a8a53df515bd64d423c85ace7ddca08fb9a91d8a115934c4495b5cf74c60ea6",
"aarch64-unknown-linux-musl-0.8.12": "de85bafc3e238a4fce87eb6a4e584c9c04721475abb9e5f6fe186bdce650763f",
"arm-unknown-linux-musleabihf-0.8.12": "5fe2f13d8c62d410278fbd69b0c1f03be5bd2c40168a98dc8fc82bca64c2eaad",
"armv7-unknown-linux-gnueabihf-0.8.12": "6ddde49d5fcc04a90855f31b5cb500146dac23f31d16f6d7fa7da1ae481eab1e",
"armv7-unknown-linux-musleabihf-0.8.12": "39b626f438c22a3122546445d581fe02b6fc449649b4890f44791af4f3d3c18b",
"i686-pc-windows-msvc-0.8.12": "97e0e04648e48cccdd25210f5eaf6fb2d46f1a198983b7de10613faf1629663d",
"i686-unknown-linux-gnu-0.8.12": "74484899512bb91ed4bd64d117284c20912c39c600cc775d6ef1bf278d6c2a94",
"i686-unknown-linux-musl-0.8.12": "b1e303c231068a3a419b12d3ba4dc852931740ab3ad691c7a87309327eac732f",
"powerpc64-unknown-linux-gnu-0.8.12": "455bd841952724bff1f45dad91555ce2a33c837cc8d734ca39afaa0ac3c8385d",
"powerpc64le-unknown-linux-gnu-0.8.12": "30f1191e997d8d2845b27f57ce30e8d3643994161b7d099caf81fde22d723fa6",
"riscv64gc-unknown-linux-gnu-0.8.12": "1e9e7ca966999161ef5174d28a18777d2a143c081a63d455f5b7fd5a1513d2e7",
"s390x-unknown-linux-gnu-0.8.12": "55ec25ef06c1e0c095f2baa1a12ce38879db8db99a4b046286a9573dd3c605d5",
"x86_64-apple-darwin-0.8.12": "467b462e854bc750fcad8e3ad35e2aca0d301c9287f2365afad8c17b7672b6a8",
"x86_64-pc-windows-msvc-0.8.12": "3fb92ce0860db7cb094ddeeb1ac521532fdd3e61d0a130f7bbc6be54caca7c2e",
"x86_64-unknown-linux-gnu-0.8.12": "f976ebdc612e71209f46664ab6c0325fa0090059b4474e047edd39eb9395373b",
"x86_64-unknown-linux-musl-0.8.12": "fa682c444b8a57a0984129d0989801fb0406f9238a57df76fdde063c6b2339c2",
"aarch64-apple-darwin-0.8.11": "c9e74f779a65798057bca2ff328d5c9952f458391e220c3d3216d7a03a338d9f",
"aarch64-pc-windows-msvc-0.8.11": "09c6cc8c511d166dc12c9e56ce06c92de928a2e5bad14fc079654901dc8ea114",
"aarch64-unknown-linux-gnu-0.8.11": "472dbebd1369049e58d3bbeaae663b212e691676cfd15d799e4faca616d37264",
"aarch64-unknown-linux-musl-0.8.11": "1c6045bec4d5ca17777dd271401a0407c5acad79f74fd38f35c31ca64c689808",
"arm-unknown-linux-musleabihf-0.8.11": "84da6bfdf9ee693c7278770e1d16d0d5e3ba5ea8f913d7fed13e9854aad95e31",
"armv7-unknown-linux-gnueabihf-0.8.11": "a27bb0ae23d0584f1a6a7f851362cb52687bbd22ecce37cc80f3eeca0925dac4",
"armv7-unknown-linux-musleabihf-0.8.11": "29605e9724eb7c68bc67892b4d8bcc28d03c1cb1125cb3dd783e81dd61cc15b5",
"i686-pc-windows-msvc-0.8.11": "17e45a6afa19443a9749668540a033e9fedd3d6bec1ad8952d10da1f40ed9e92",
"i686-unknown-linux-gnu-0.8.11": "85fb818676480ac0cc0f7219e4fd96667d851790c4dd054dc84f304128d88817",
"i686-unknown-linux-musl-0.8.11": "194bc103af40c2a15b0a2e86e5eaad53a5219243df8e296d98e9c6269f67e0b3",
"powerpc64-unknown-linux-gnu-0.8.11": "fde3e344ee3ef3eabc4803a27a05f06b082819d09153ec126b09f93882e54082",
"powerpc64le-unknown-linux-gnu-0.8.11": "a1de2c76674c5566e27f8a5b8868b4f416ec659ad657aa87ccc2d17f9cfeaac5",
"riscv64gc-unknown-linux-gnu-0.8.11": "c068fe0b27b7b91d79c3505fcca16ea8dc2df499e6420877bd5cf75b26f5304f",
"s390x-unknown-linux-gnu-0.8.11": "e4d8ee92b9e20a7713cf7a9f7d7b288d9d726e7e96d874aaa20e3acc1d408287",
"x86_64-apple-darwin-0.8.11": "7ed76b0cc314fa0cb6dd7ae99379efd3cf8fc14d71af8d71b0b5238582c7958d",
"x86_64-pc-windows-msvc-0.8.11": "3e802b69307b10f228c8f1d096bd5721ac37a133bf33672f9fcc46a58dd5c920",
"x86_64-unknown-linux-gnu-0.8.11": "0c6078318332c100d7d9988ea99144b534e40adef2958aa314a9f7c7b8516ed7",
"x86_64-unknown-linux-musl-0.8.11": "0c66f4d06a4f933bddf75d4ad64e0e2d717f015ba1876c51e32ff293c84f57d5",
"aarch64-apple-darwin-0.8.10": "5200278ae00b5c0822a7db7a99376b2167e8e9391b29c3de22f9e4fdebc9c0e8",
"aarch64-pc-windows-msvc-0.8.10": "c51b02188c312baef71187273afa625576101e5680739eab83b1b09ca5d2f3a8",
"aarch64-unknown-linux-gnu-0.8.10": "de60f5e3d69b54e6196fb8937fef4feb15e239f0fd14278e77e44dbb353214ae",
"aarch64-unknown-linux-musl-0.8.10": "704f202ca92386eaa095706ec7e26c4f052f7e17721767d4ee18c676565c51b1",
"arm-unknown-linux-musleabihf-0.8.10": "51d1244dd7f23d8aa021fa4d2a662a3727b27241e0ceb6f11820cb495611965f",
"armv7-unknown-linux-gnueabihf-0.8.10": "ce22ffada0356570f63ad0aae096226f1c45c3d561023b3fb2b1f0936f2b804c",
"armv7-unknown-linux-musleabihf-0.8.10": "9ee0a14ec4fa263095bae4da329602f7735d914db4ad59079b47d714bfb95409",
"i686-pc-windows-msvc-0.8.10": "e62a2549135b4b9474c18e7bc9f0937837012dd9039f6b4b2c109a1cf99ad925",
"i686-unknown-linux-gnu-0.8.10": "cdd36af87ca53ec6b8cc4507e85c9ca54c40fd77613633a1095a1a2f317a0563",
"i686-unknown-linux-musl-0.8.10": "658f14b093e3bf4ffcad645fe27d7aa2f8f18a6f625a22a246288c6368a4d88f",
"powerpc64-unknown-linux-gnu-0.8.10": "f16d77cfca0dfca2bcef7cc556e0316ba5fdc61b1c3387d60b7c40e12f6617dd",
"powerpc64le-unknown-linux-gnu-0.8.10": "00bc1b47078520c588dbd383700d35c786ac2fa3e53c9fca51c5410581f8c87e",
"riscv64gc-unknown-linux-gnu-0.8.10": "db605bb442563f0494c174be639b9d80fcc4e27e360a31ad2675005ea1a1e3ab",
"s390x-unknown-linux-gnu-0.8.10": "83ca774828d652ce9dd1d6e2619e66c471e2cb236754783019b9ae0f4da72718",
"x86_64-apple-darwin-0.8.10": "3b935381af9124a5d5da48235e149f5f0662f2717e75782d1b843d39d9265d6d",
"x86_64-pc-windows-msvc-0.8.10": "37fcd011fd22b2a569f7e583a924af2d624d99445f669752923a2fd3841f8e3d",
"x86_64-unknown-linux-gnu-0.8.10": "2c4392591fe9469d006452ef22f32712f35087d87fb1764ec03e23544eb8770d",
"x86_64-unknown-linux-musl-0.8.10": "4031c6f7ac3890f29c72e0ea655add58b8fa1c678d20afcf57efa51e57751732",
"aarch64-apple-darwin-0.8.9": "c233bee389c15fdef09a6028db61cc54a12e6171f27d6d9c018eedca5bbbd011",
"aarch64-pc-windows-msvc-0.8.9": "7dc9b954e236f842c2120bdb50307f23104ca20a52896c7ae0ea0100904b2aed",
"aarch64-unknown-linux-gnu-0.8.9": "03108a851cb87ce44069767e0ae7907d9a31180bdd64913852fcde25848d84f2",
"aarch64-unknown-linux-musl-0.8.9": "fb1f2800bfd0bc9a121269e276653899c726d81cd08d6299f0fb34b4b0d61fcf",
"arm-unknown-linux-musleabihf-0.8.9": "9a73ca16557efd21d4dad17759261c6f93eb4079a95bb39c578998ad787ee871",
"armv7-unknown-linux-gnueabihf-0.8.9": "a6be2240c8bf070baaed8ee0a9071fe5f33b2fad55f67d39fcdc8ea720ff668a",
"armv7-unknown-linux-musleabihf-0.8.9": "758bf39e33d3162fe6ec7bd5f359cc78daf8ce46b2300dec6c31f37b705521f9",
"i686-pc-windows-msvc-0.8.9": "25988dae5e7698de1a6ff4bf08ed336d138710ee52f52de60859b99acf2bc96b",
"i686-unknown-linux-gnu-0.8.9": "02a140e4d0af8d469ec088eff51ed9b232c76cfa02d4df0b84b7567c2d6ab95e",
"i686-unknown-linux-musl-0.8.9": "99fa13e9079901365277b9b409a2892afe2efb0260f940388cadb2d56d706766",
"powerpc64-unknown-linux-gnu-0.8.9": "604102c2bf07fbb3cc26bcb6b95e60cac55d74b4e21f1cee4b2d5f58930aa5cf",
"powerpc64le-unknown-linux-gnu-0.8.9": "8ab18629d8a71a4188761e4e2b0eca0970690f13c85697ad232fe8b22e8d5a99",
"riscv64gc-unknown-linux-gnu-0.8.9": "757944803901c5ca4049147e28e429e34c04d5ac5fe78728396ec4b810063b00",
"s390x-unknown-linux-gnu-0.8.9": "b78f56186edfed8f117ed1fa09fc59ad9932864ae4e655ae61f3e205846c7ced",
"x86_64-apple-darwin-0.8.9": "27fe8645c2599b672c3a6c865131a3d916eed9a3ba7cff5a0b863e01a473df66",
"x86_64-pc-windows-msvc-0.8.9": "b08d68a0d86e4d0d1b5fa439ffa73ac90df2305c595f617ba9d9b5e8740a8efb",
"x86_64-unknown-linux-gnu-0.8.9": "1056ab7c04bf9030dc0623c260fae0b414675775f333f318918000f667da6ee1",
"x86_64-unknown-linux-musl-0.8.9": "6bb907345f9100978d3529c8a5b2cbb4e831080909c51a5bff714b491251303e",
"aarch64-apple-darwin-0.8.8": "9de9365997d7579d27cdbc132883343b3c47add16804f11be679375037dec33a",
"aarch64-pc-windows-msvc-0.8.8": "3029df83f2b40d2fa0cc896aed8a157afd02e8ce767064d80923e166e46b75ce",
"aarch64-unknown-linux-gnu-0.8.8": "4e144807bef9a3b6f44fd5e4084d5010738787745c07e09dee4f008e8bee17a8",
"aarch64-unknown-linux-musl-0.8.8": "fb7785d31a64f416ef67292ba3717781ef4eb1d6f93b6e30715d9127e862de2b",
"arm-unknown-linux-musleabihf-0.8.8": "fb8ea8fa543322b4901b5acc585e1373dafd996d9aadce7d0c00c00ad36f2cdd",
"armv7-unknown-linux-gnueabihf-0.8.8": "684538c1aa5da718abb86b0f5a3c5d2eb05a11520e5c87a2b75050751adcc8c6",
"armv7-unknown-linux-musleabihf-0.8.8": "c5eebbf9ae549ca45f563a9a9770c1534854a5c4056acac0ab3779b9e1f24d75",
"i686-pc-windows-msvc-0.8.8": "9ec9bf63460e0625cd941a5bbe0775b99c33def5a2f1fe6cbc9e99e167fea33e",
"i686-unknown-linux-gnu-0.8.8": "d934b2f6c892a25d928cdc2dfd42b3e925011992603879d2035bc7b15a236c35",
"i686-unknown-linux-musl-0.8.8": "a5b258ee1f686bb58f912ce8c5def3531e0e4cd2bcfe3ee332bfaf3b35e674e0",
"powerpc64-unknown-linux-gnu-0.8.8": "23dc87674b030bf4d7f4f1cd1b903d18ccaec43af0373d62e309ee79cbe2c2f8",
"powerpc64le-unknown-linux-gnu-0.8.8": "6a72bb057073ca989690882ac0ae70e6825151e0d2d52d37540be2dd41d70b56",
"riscv64gc-unknown-linux-gnu-0.8.8": "f107450c910336bfc636208d4d0430a8a6581d98824a4deee5715ac72b73c97a",
"s390x-unknown-linux-gnu-0.8.8": "5aafe51b39dc715c887d6c1960d82659fa18a7505d0050e6eba36ae5956e4c96",
"x86_64-apple-darwin-0.8.8": "3346a3d4a45d7457dafadcc1715e8e529e5b65c27aaba2417db4b0b32a8cbac6",
"x86_64-pc-windows-msvc-0.8.8": "ac76b826e5ba70c7a041e9ee344cbcba2919cdd3010fff7f1a83b7864911633e",
"x86_64-unknown-linux-gnu-0.8.8": "ecc2e39de86afea661c145f33f6a89a45b1d2427d51a22b458e2c64238794180",
"x86_64-unknown-linux-musl-0.8.8": "80ee2bde42e1cc39c59ae8a3a20f5b73127b90ece009ef7bdd13ab189ff0c353",
"aarch64-apple-darwin-0.8.7": "d1f056d2d04b07a69d2be6ed7eb07ece12dda26570a9af316309787865eba374",
"aarch64-pc-windows-msvc-0.8.7": "5e0fdc7ebe4f237fa1b24a95116243e6c5fb52e0601aed3b7ca24b6a76b6c2ec",
"aarch64-unknown-linux-gnu-0.8.7": "405965165e6c5a782d9b69e1a641a491533cec80390b0bfbe95eedcf5cdc5078",
"aarch64-unknown-linux-musl-0.8.7": "70fa63fca7c7b1ccb5a96b8b5691f8dee2f2caeb61fcf6a110227e3f55fcf94c",
"arm-unknown-linux-musleabihf-0.8.7": "172e93344f2aaee552e606150a1d9bd8de2df2716c81ecc332904e4b2713b964",
"armv7-unknown-linux-gnueabihf-0.8.7": "3277a9db5244767ed6e8848e487377dea69b67e0a196886696263ddbc5681daf",
"armv7-unknown-linux-musleabihf-0.8.7": "3170d7251d8d2ab40c86a1b20221d6486baf5f52e7069525893cf20481cc8281",
"i686-pc-windows-msvc-0.8.7": "f97b09e12f10e8e77b1519124f1f16720bbd64bc0436cad0868f4a2927a7a0e0",
"i686-unknown-linux-gnu-0.8.7": "0e88d6a9f088f6632026d7009559d519598876db8b46540dcc6ff015bbf16b85",
"i686-unknown-linux-musl-0.8.7": "1ab32b294aa94846ee9d1c2597ea8f617aade1e7faf2c8e460d5414d87dd8a58",
"powerpc64-unknown-linux-gnu-0.8.7": "52fe0acf3cb57ee33407c1a2d25e66ec08ac6c4a259e016a54ea34cfe749f148",
"powerpc64le-unknown-linux-gnu-0.8.7": "ad8d7a098c7f1603adb55bf794a6ba952c715d5d05112482a6c9a9b63d04fef8",
"riscv64gc-unknown-linux-gnu-0.8.7": "f6bea3521a2d5b1593cb8f18d54237d0ae3b388cbd2cce83c1dcd4b512dde1a6",
"s390x-unknown-linux-gnu-0.8.7": "ee877021eb1862d9d0cc37697267a01cfdae307c6a8bf7ece27ae92b330fd2d9",
"x86_64-apple-darwin-0.8.7": "dca85ae222d59ddbd83f61355561d3183cce9d23eb5931c41646499f43cb2b93",
"x86_64-pc-windows-msvc-0.8.7": "0baf6d021ca283df5e5c768ff51281043fefc889ac14aff8ce58189453166eef",
"x86_64-unknown-linux-gnu-0.8.7": "060f68b7e86fee70ed19b852934ce6f05bb15d42894ce4a26c34a18b4c3cd511",
"x86_64-unknown-linux-musl-0.8.7": "b1283a1b42f81dc79c2e58eb77a41e21fd4c59344d3d19e72810ab031ba93771",
"aarch64-apple-darwin-0.8.6": "15269226c753f01137b5a35c79e59ab46d8aab25a242641fdc4003a6d0a831ff",
"aarch64-pc-windows-msvc-0.8.6": "a2891f1f1c56e717115579da655951007e2e5e498535b473d9f7cbffe7369e1a",
"aarch64-unknown-linux-gnu-0.8.6": "6fd314ca589788265ff99ec754bd2fa2a5d090ef592ddbbe8ded6b141615a491",
"aarch64-unknown-linux-musl-0.8.6": "d78076c7e0dfcd3580736c11e009ef856bd13015f00406e3ded1fc895e2104ba",
"arm-unknown-linux-musleabihf-0.8.6": "87d33a579cc2ee986e3163bb5de1791c6052ef8716d5fb8d8bf73aa2e5f1bf66",
"armv7-unknown-linux-gnueabihf-0.8.6": "4139d74dfe3192bc71dacd3cf0cdf6a006d121db2c4d841e08f369761baaf00e",
"armv7-unknown-linux-musleabihf-0.8.6": "5d4d117cebddc7dbdbf6e1410c65868f113a75700acac77eed28dfdc0411c113",
"i686-pc-windows-msvc-0.8.6": "4eaa185b61f9cfe73ab7534de7282e51cc0f6bf47361429bdcbb6a5f3264f6e4",
"i686-unknown-linux-gnu-0.8.6": "7fb9324cfb0c57a9b9145e73598794c7bc4df01f50730bd926d4ab10d4fc59ff",
"i686-unknown-linux-musl-0.8.6": "3c2e2d69e8da093df76ffffa9758669c33ae47624f73d06ec2a83a363f17fbd4",
"powerpc64-unknown-linux-gnu-0.8.6": "264dbfddd58cdbd35b33ea24dd802a3409eae1d4516d057bdff88df2e257eaa2",
"powerpc64le-unknown-linux-gnu-0.8.6": "d34c6d7df2ed9e9739bc0313875e602a943b17fccbf1127f824a5ff9a3253bb5",
"riscv64gc-unknown-linux-gnu-0.8.6": "6bcd5a72977a4362f042cc2568960b5a42c1f13240ada6b1cce6aa2f6d6a3e42",
"s390x-unknown-linux-gnu-0.8.6": "8b4372280249038ea5824937d6e1ca7e2192061bd38f3362200133ff55cbb9c3",
"x86_64-apple-darwin-0.8.6": "4b1da363d8913a85a4a40df6620ae800b16c62beb54f60b1d336432644cb12bb",
"x86_64-pc-windows-msvc-0.8.6": "f7ed402ea1e4d7fb2b2490e1a097e9849bfdaaa689521d290bdce5478db0428f",
"x86_64-unknown-linux-gnu-0.8.6": "5429c9b96cab65198c2e5bfe83e933329aa16303a0369d5beedc71785a4a2f36",
"x86_64-unknown-linux-musl-0.8.6": "0d89cffae3ad1c4ae2d4da06f71ad4539974185a31f7c196a6151b400bf84039",
"aarch64-apple-darwin-0.8.5": "467e875ac84ac2155f048b56e33741d7dee6f02369048d5b6c05b74b745411e2",
"aarch64-pc-windows-msvc-0.8.5": "8d3dda6ff64065e65b49ecd42018a885c0f20e6967af950ef121f976d73e72db",
"aarch64-unknown-linux-gnu-0.8.5": "db05450c7c1e9dd51eeaf4b59c3bc3721bd9146e7ad95e87f5736d45c4037ae0",
"aarch64-unknown-linux-musl-0.8.5": "400771c1136c9d5cf624bb1695b08d46a4e4e0fc2c9b8897e7be950ac5e00ae0",
"arm-unknown-linux-musleabihf-0.8.5": "7dcd2a34735d2871714ee4993cf0227492c860ab089691a30f6a65d48ec469b6",
"armv7-unknown-linux-gnueabihf-0.8.5": "0032fa90b0a74559ac965538178499de6b396ec7ff9b8d8134f442d2d3079f8a",
"armv7-unknown-linux-musleabihf-0.8.5": "daab0e8f9b563dcbd6bc6ac517a5f9ebe1b1dca9671011d40012c73f0cde8cd0",
"i686-pc-windows-msvc-0.8.5": "2c133809d2839eac93341a14df6fb16bf834ae3c7582f069cf24ccc60cf367f7",
"i686-unknown-linux-gnu-0.8.5": "6c6b88bf178f5bd508523457a589e09c885deb57983f8d73dfdd43794d6decfb",
"i686-unknown-linux-musl-0.8.5": "5968f60135941a2bcca742bf44854bbbe8adfba4d0a170f5991d95572c0e4d26",
"powerpc64-unknown-linux-gnu-0.8.5": "a4e7b7dca6386b8623c12581ecb606b31a9df53ca8acbbb14dec5ceaa23c1603",
"powerpc64le-unknown-linux-gnu-0.8.5": "1d521c56d8ee83b90f15350f1cebb506e2441e574b27acdbdfce8449ddbfa1c3",
"riscv64gc-unknown-linux-gnu-0.8.5": "ca7536b206090982e6f90d566bc441598a6aaad4cfc885618f12051c51a0e454",
"s390x-unknown-linux-gnu-0.8.5": "92fd077879ea943775bebf49d3515b5da8a237bcb9a975b2476183946b6ed017",
"x86_64-apple-darwin-0.8.5": "9ee5b34975ab4659345fc96cc08098d7ec871cdfa969a5774894bcaebdaf3b58",
"x86_64-pc-windows-msvc-0.8.5": "898049e2db4a92e59bf1da7e14cad9b5afadb7d0cf9dd55a5274825290f7ba6d",
"x86_64-unknown-linux-gnu-0.8.5": "9db7e7db3cf98ddb57954bfb72c9ba4b8a4514b910e666e3c57e8b4e83a0d630",
"x86_64-unknown-linux-musl-0.8.5": "64aec5c2fa8255d19ff20480afb6445e29be94628c58a429c131f5c60bd990b5",
"aarch64-apple-darwin-0.8.4": "ef6785df8c23232ce6209c04acefd0c0d2ffb3a3ba0eef16422bdfe99a059105",
"aarch64-pc-windows-msvc-0.8.4": "34cdff9ed7e1ffece93a895e65377a0ea4f186eb6785ead045280be59edabf19",
"aarch64-unknown-linux-gnu-0.8.4": "d42742a28ce161e72cce45c8c5621ee23317e30d461f595c382acf0f9b331f20",
"aarch64-unknown-linux-musl-0.8.4": "d194e457ba2c9f4e737ee9919c66465e0297d956b6c7121b61d37b98e15a694c",
"arm-unknown-linux-musleabihf-0.8.4": "cfd9d5c2d5bc462308c54e4224cb4102819cfc230cd7a75dcf5cd345969ab732",
"armv7-unknown-linux-gnueabihf-0.8.4": "234358eb9384c6392678d392ab0835daf500a71b6d78b5b33f10793c2c695d05",
"armv7-unknown-linux-musleabihf-0.8.4": "65408f9aab2895faa1c523a064eef01f2d5cea4686ceb704217d8ece03a69a8c",
"i686-pc-windows-msvc-0.8.4": "fc4fca95757e78fa4a782ae7f5cba4f52137df49b737cec0a6ad8092ca829151",
"i686-unknown-linux-gnu-0.8.4": "d43485d5531529c4a57bf9b504e9ac1609a4467d220a268c38464d83d6df08b6",
"i686-unknown-linux-musl-0.8.4": "cd4e9127d6562f0817060aa9c1b396afc7db31cdf48b73ecc347bd6f4f77f075",
"powerpc64-unknown-linux-gnu-0.8.4": "3083419366b512e89e53f7e73c48ca15e28daa1ec674f5ef6492d06b0834e62d",
"powerpc64le-unknown-linux-gnu-0.8.4": "1e1164b8b2bfcd09daf5b32bada5fdc08b81d384bebd9707691cc48561749a27",
"riscv64gc-unknown-linux-gnu-0.8.4": "0b4e5e41b4c2836e6d8c1b4eb5151a0ea775908bc892ba62a8126fcdd7b06914",
"s390x-unknown-linux-gnu-0.8.4": "28aefb0bac0349aa3f218cfa43ce50793f81c6948d01e2e4b97ea5421a2734ab",
"x86_64-apple-darwin-0.8.4": "14e5309f182d1a92cf6c82f5891a0a0dc1cd5d46627171eaa1e84fa2b7e0afc3",
"x86_64-pc-windows-msvc-0.8.4": "817c50c80229f88de9699626ee3774c0cceed86099663e8fb00c5ffae7ea911c",
"x86_64-unknown-linux-gnu-0.8.4": "eb61d39fdc6ea21a6d00a24b50376102168240849c5022d3eba331f972ba3934",
"x86_64-unknown-linux-musl-0.8.4": "4e16694fcc20a94136af70fb1449e8817150896af0339b6b28dfb6d006cd8116",
"aarch64-apple-darwin-0.8.3": "9ebfe9f3b51187932ef97270b689da48261acacadd6ea7018d2cc62719c86ffe",
"aarch64-pc-windows-msvc-0.8.3": "6e0692b817c5d6cfddad13ad177e866e36d95e8d32b4a296a49d937fdcda18d3",
"aarch64-unknown-linux-gnu-0.8.3": "e82b5a3eb19e5087a6ea92800b0402f60378bd395e3483acd0b46124128ab71f",
"aarch64-unknown-linux-musl-0.8.3": "05707835aadb8d0dfacf64a50dc31eb77fb11d1773b13ddd78d2404d43be3b7f",
"arm-unknown-linux-musleabihf-0.8.3": "63f09a167470e40f5a7afce7ba726fa31d700042107215a8f46572a617b2ba64",
"armv7-unknown-linux-gnueabihf-0.8.3": "ca3ab5110a248febf3af56ca8e417add5a164228d8861d2f6439d6c77654ad24",
"armv7-unknown-linux-musleabihf-0.8.3": "79b9f2f8abf64b93aaf48f87b159bc34e73b92428c6424a9e633f481449bc8be",
"i686-pc-windows-msvc-0.8.3": "5d272849a94b7ad36711f336d745e08ed3732042fc51f5c7f28bfc4e95463615",
"i686-unknown-linux-gnu-0.8.3": "5ca9dcdd8aba4c59266536c00453f3815ccf4852a1bef78f181f4ae43726e742",
"i686-unknown-linux-musl-0.8.3": "7a7eb903b673c0a0fa8282e12d2130fb63c1f0e574b1b8eb24ac63503db5db9e",
"powerpc64-unknown-linux-gnu-0.8.3": "ad94079c0aa352730e5656246ecb8fd6cb5c7c1bbcc100954020f32128d6b0de",
"powerpc64le-unknown-linux-gnu-0.8.3": "27ccd00f3c617b59d6977e48612dc5fe49d15c1181bf995863350e78002e54ac",
"riscv64gc-unknown-linux-gnu-0.8.3": "897257393ca612058bb22691fab3a45480d3f7fc1df5bb968696576d7d98d6c1",
"s390x-unknown-linux-gnu-0.8.3": "d148aebfc019aa14c686713fb0a391bb700290ecdf2903c2fdab0009182d880b",
"x86_64-apple-darwin-0.8.3": "77eac9622f76ad89a8c59b31a96277aa61eb290d2949c69ab2061076471aeda2",
"x86_64-pc-windows-msvc-0.8.3": "4ca84e28b08f48255f95156c5987d61a5e4c51a43372708bc6d84e994eeb7bdb",
"x86_64-unknown-linux-gnu-0.8.3": "427c27ed5f87bf91aa045cf459ea34d348ed6377c62c3c054f1b4046b2f83fe2",
"x86_64-unknown-linux-musl-0.8.3": "bfbe34caae328355b720ad0f667be99990b1b93721c8cb726e4a502796eb6d68",
"aarch64-apple-darwin-0.8.2": "954d24634d5f37fa26c7af75eb79893d11623fc81b4de4b82d60d1ade4bfca22",
"aarch64-pc-windows-msvc-0.8.2": "0e1e80ca0d6faab2c716ac7b73214c6df7a37dc0a45998d5f7d6e73339db8e48",
"aarch64-unknown-linux-gnu-0.8.2": "27da35ef54e9131c2e305de67dd59a07c19257882c6b1f3cf4d8d5fbb8eaf4ca",
"aarch64-unknown-linux-musl-0.8.2": "725237095ea91ad4fe54b1a047138194bdef428002709e0ae9dfea33b66e1c8a",
"arm-unknown-linux-musleabihf-0.8.2": "ea523b34d5c96b32f1f68a51b690774f7822474a355fd74973a089ba2002e82a",
"armv7-unknown-linux-gnueabihf-0.8.2": "8fcbdce85af3b62b8625e780c0065ccd35aab830fcd380c2bb5a03e2174861b0",
"armv7-unknown-linux-musleabihf-0.8.2": "d433a35cd4e0b9ed8163b42b69d050954b77163765e5c25ac21aa08da2117ad3",
"i686-pc-windows-msvc-0.8.2": "d862eaf046abe9143b3e172137cb50657920d324cb3e00be78d22aba4478d7f8",
"i686-unknown-linux-gnu-0.8.2": "fc0baebac65fba4865c23f0ec31722750543c5f5320d7c52221b0565065520ce",
"i686-unknown-linux-musl-0.8.2": "fff6ad20fbcf808089823161a303ab32bfbec31b0af73c3d5717fe8b80aa8a81",
"powerpc64-unknown-linux-gnu-0.8.2": "d0cfde8f85eeeb7baabbca6ad7e66fba0bfb2e6145a95fb9fc97d82d153d08c8",
"powerpc64le-unknown-linux-gnu-0.8.2": "f44b3870a323ba5dbd189c46ef10e565f9ba94c1f675b1daf8d1deab7cda92fb",
"riscv64gc-unknown-linux-gnu-0.8.2": "87e97d546129846a2ee73516fa71770ee787ee62121ebfc5c3db682ae0f54cf1",
"s390x-unknown-linux-gnu-0.8.2": "de324cd0b04162e25fd1dc2332b05e556978fec4bfcc3fbea6565e8276caac53",
"x86_64-apple-darwin-0.8.2": "ae755df53c8c2c1f3dfbee6e3d2e00be0dfbc9c9b4bdffdb040b96f43678b7ce",
"x86_64-pc-windows-msvc-0.8.2": "503a430df36957f851daedaed707a2ab69ed21a48bd499c2f0f7253ad5ba983f",
"x86_64-unknown-linux-gnu-0.8.2": "6dcb28a541868a455aefb2e8d4a1283dd6bf888605a2db710f0530cec888b0ad",
"x86_64-unknown-linux-musl-0.8.2": "2df1c90246ac03b237f997dce0a31a757523a6aaa9a15b26996a9851dc08ad3c",
"aarch64-apple-darwin-0.8.1": "4dd195318b0ca893f9e51bd243441016fcf721dfc2c29f86ab7de74c1c216e53",
"aarch64-pc-windows-msvc-0.8.1": "759b952f7ee0f2a556f6470ea48a2a87508f9a5cbd3624c881875c93748389af",
"aarch64-unknown-linux-gnu-0.8.1": "0604abcd1a9232022f1b093874e6303d2725512f2e9fc324f0ac49a30d1b2de6",
"aarch64-unknown-linux-musl-0.8.1": "4b87748593ca3fd060b96599494d5bad6e172455208c3d6a0f4d36cc89a435f9",
"arm-unknown-linux-musleabihf-0.8.1": "6903a6c4ac2f00548a0164ff53ba1898be2e48449071c90bdf38811537ef47d2",
"armv7-unknown-linux-gnueabihf-0.8.1": "179e0c81217d97eecba4c75566404edf947614f72b0be8b5c975b60b7d973282",
"armv7-unknown-linux-musleabihf-0.8.1": "f62be877927f3a5e6ee99e352e73af8e1735e4251bb8cf11424f79b560616b20",
"i686-pc-windows-msvc-0.8.1": "87107714fee0e0b137360b8b5f2425d5994655c58f2743fac5203c5d5cbf2f7e",
"i686-unknown-linux-gnu-0.8.1": "1689bb02d731cd4e0ad6e9fb384c937d5ea38246f80c4a3f86bd9bf30c395490",
"i686-unknown-linux-musl-0.8.1": "9a39a92210752fb03436eb9e69a52cade45c6fdad92aca209fef5594df2dded1",
"powerpc64-unknown-linux-gnu-0.8.1": "5a6bb32ba3f0e26d7a2de90987ba285850a8b405eb402484448c927721fb784d",
"powerpc64le-unknown-linux-gnu-0.8.1": "0e7bb9f5c298b9a55e019809fbc7d4a88e491ea7b606cd6b4bbc9ab648904af0",
"riscv64gc-unknown-linux-gnu-0.8.1": "5346c2757546b26fc3b738cc021c3c17e372a08b6ee361cde95a88ee1eb87577",
"s390x-unknown-linux-gnu-0.8.1": "66108f45f1fe81b7b02c3490debf838a90c818de00dd8c17c45ccad65554f8d7",
"x86_64-apple-darwin-0.8.1": "96b3836b7bf97a24ac13a8854f2da7cd3a44993820935b29be964d776e3a3446",
"x86_64-pc-windows-msvc-0.8.1": "b161c45b2a7f97400b1005591d782d2c96ea1c4570ac1336cd82a2500dbbed1f",
"x86_64-unknown-linux-gnu-0.8.1": "abaeb153d85cf57277945c70fe449f813b14aa1913d1caa50daf333a01b2f317",
"x86_64-unknown-linux-musl-0.8.1": "e54c95d4f1420311b7266d57e36304755b24c956a2928f365bb91215e3554c34",
"aarch64-apple-darwin-0.8.0": "5a5ca58e3999d4f440632da87a56f7030eaaa3a13d3896561eec5fd51cb9ad45",
"aarch64-pc-windows-msvc-0.8.0": "2fc83c9e2de30c1de8e9461188ffdac75ad41ac1e2227fd158d46b6cd09501d3",
"aarch64-unknown-linux-gnu-0.8.0": "61f136a187150624c10ec7025137fdf5391ef083a4cab0eba4fbdb2a928de16b",
"aarch64-unknown-linux-musl-0.8.0": "c5a7c042e40a9acb693c5ee01f26db047b07e4f3f301470b38ee4a2f3e0e831b",
"arm-unknown-linux-musleabihf-0.8.0": "94c54815e371c93ce08ba5d4b95e7d847d11bdc1ba5af5e15656e6d1be521f74",
"armv7-unknown-linux-gnueabihf-0.8.0": "57c891ebe985ef1c4e83bbc60b9d2fce40fd6e383db451ac1fc04d60a415022d",
"armv7-unknown-linux-musleabihf-0.8.0": "fa8a3f50c1ffeb7013a7fb9d9dbba54ff0a1e5d2c4c758ec6fe785c37426ae7f",
"i686-pc-windows-msvc-0.8.0": "cd03e12986765e48297228678dbeada0c284c552884910bcb3f0ea3ceeec8ee4",
"i686-unknown-linux-gnu-0.8.0": "ebb52595b6b5a0b6805a50c5d5dc06fd632bbfcce5854228e1e426784e7813b6",
"i686-unknown-linux-musl-0.8.0": "b9a44b22bb0605f8413d84a811346696b79e624aed850c0087fbea389074d401",
"powerpc64-unknown-linux-gnu-0.8.0": "7b65a08c8ac4a2fae9f466d94e29896fb5f49f92d72a7c6ac315031b94d43857",
"powerpc64le-unknown-linux-gnu-0.8.0": "698bc873422f261ec7e9da3ddb3a1b2b2d96be3f4aa6abe566c9d4a315b9d9d4",
"riscv64gc-unknown-linux-gnu-0.8.0": "c508d286c64d34933f06e6ce04e2aada129e039692a57f6d8adf0bf9bbb90186",
"s390x-unknown-linux-gnu-0.8.0": "756f55e2567585f1e62522b3e25bfae8c1b7f8a856d2e7ec85b48fcf5abbe9a8",
"x86_64-apple-darwin-0.8.0": "828917cad79aae8327811c59fcc625ff3861bfe21d2cbb77c206737d41117ff2",
"x86_64-pc-windows-msvc-0.8.0": "bad5afed0c18bd7f6c5125f5c7ab89ac830a3db7340c96d50a50527e9880cdfe",
"x86_64-unknown-linux-gnu-0.8.0": "a7d74ee5c5ff3069b9d88236a05f293cc4e2809bad872f3a88a384489ba3675e",
"x86_64-unknown-linux-musl-0.8.0": "0208cbcb3850bfc69277c9a16c2b0399218b075dc923aca7e4b576ee4228c570",
"aarch64-apple-darwin-0.7.22": "707677074a9ae6906d4ccb22089341e3541db78022dc926e985bcc35fbb53a74",
"aarch64-pc-windows-msvc-0.7.22": "bcbee39a55eca43ea286cbaa467b083888c7811ab8f47458063bc53331224f4d",
"aarch64-unknown-linux-gnu-0.7.22": "d2ee24524f5ed45baceaddebded48493f7dd2692fad8a1d1796c606134c133b7",
"aarch64-unknown-linux-musl-0.7.22": "1d524e7d61336ccdc4caa2299df811f318b96d81034ff621b7217d6c440a1702",
"arm-unknown-linux-musleabihf-0.7.22": "ad458ba424cbd77f8278b634e9e14a2fea0ba1610b7a51b38e611cd8a8072792",
"armv7-unknown-linux-gnueabihf-0.7.22": "3523c1f0396249bc3eae97f15141921108214e4fdce50f153272c79c91d3e737",
"armv7-unknown-linux-musleabihf-0.7.22": "b96ec5d9be9527fe3a4e6642e26489cd1b12a8cbd3f2b80145bd61bd4919e188",
"i686-pc-windows-msvc-0.7.22": "aca18c571d8bd6d370e0440a16544afde421ea01585721a46d3847c11404fb41",
"i686-unknown-linux-gnu-0.7.22": "ea5f6c1460843bd1c391e06d731278707806666438a9389f957e604f60be3eca",
"i686-unknown-linux-musl-0.7.22": "e20e7eceb3100bc93ed638d723a5b4f9985dd2650398b3f10b175a93e744c7b7",
"powerpc64-unknown-linux-gnu-0.7.22": "7e7281c99a62a729483ea0268511bf9416a97f6256cc9123d7910b42d7c27937",
"powerpc64le-unknown-linux-gnu-0.7.22": "0891f6f9fb7099cf35cc6bf4d3e565504ce793466d0a592056703518cb771dcf",
"riscv64gc-unknown-linux-gnu-0.7.22": "8bf7e0bff7f1cfa2c8057405c2f5a377c7b864a83dfff8ce045f5773374f7add",
"s390x-unknown-linux-gnu-0.7.22": "d7aba1fe8783e39f5f05061fc255a28d98eff0b83600915b606903ee1764b674",
"x86_64-apple-darwin-0.7.22": "af8fb83280a000f5864653ca0c9a1f69bbdbc8b2bbfeb2e1d450ce7fd1518ff1",
"x86_64-pc-windows-msvc-0.7.22": "ce5c13291643e8306e8d2dbcaf340d36ea985a761a53f2ca0a45e1a8e8936c85",
"x86_64-unknown-linux-gnu-0.7.22": "8379e040fa1828e662968edaa3856aaeb6e1a0a0ec76ef8583096be1f72f19d4",
"x86_64-unknown-linux-musl-0.7.22": "0508e73f28fa4024c76c4e0a5e347fea6aeb4bead0234618e6cfb76804237259",
"aarch64-apple-darwin-0.7.21": "c73af7a4e0bcea9b5b593a0c7e5c025ee78d8be3f7cd60bfeadc8614a16c92ef",
"aarch64-pc-windows-msvc-0.7.21": "877454562ba2af12a020652fb8f63d14b6c05aa6d1d3497441822c6c0b198541",
"aarch64-unknown-linux-gnu-0.7.21": "1dae18211605b9d00767d913da5108aea50200a88372bf8a2e1f56abdbe509f0",
"aarch64-unknown-linux-musl-0.7.21": "6577895c91a6bf6c1fda5f0fdfd07f8ee05f75f24a70a49193f8fb8dcde81fc3",
"arm-unknown-linux-musleabihf-0.7.21": "cb175698eeb3abf77c00c4d19e9c5e10ed847f6988769f5b18a5c98c1ebd21ad",
"armv7-unknown-linux-gnueabihf-0.7.21": "9c64218ebc2f96520105fddf3b500026a50d9319c7faf4d2221a7113efd96fd7",
"armv7-unknown-linux-musleabihf-0.7.21": "9f83f0c4821e572e9289e270e64429495b188e372519ee88524e97b50943e657",
"i686-pc-windows-msvc-0.7.21": "aaf3f3bc934616214e1f33ccb22432dc59110211b2b15636d66e8e42e9cf2f6f",
"i686-unknown-linux-gnu-0.7.21": "141a4ecfe0bf08e82fe5834a0fd265cf3c27833c1bfbab69344efb1604c2d964",
"i686-unknown-linux-musl-0.7.21": "ae1faeda2475f0df8733215133771da58de159d9e7b5a728f30047708e21a724",
"powerpc64-unknown-linux-gnu-0.7.21": "bef76b3992d21682dfc82e096d18f449d43a757f28a00a62eb7e05002349f287",
"powerpc64le-unknown-linux-gnu-0.7.21": "107c6c5a444c27bf772b1ec233b5b83dffd79348488cccc832dc9c14ee5ddf56",
"riscv64gc-unknown-linux-gnu-0.7.21": "c5c160e64809ae29404354e555df7264763f7cf67012ffc1350619cc9d19299b",
"s390x-unknown-linux-gnu-0.7.21": "77f3472201867a766e6f2a37ceb2e2f2f78343d3460c2313e3643483c80ecf92",
"x86_64-apple-darwin-0.7.21": "f8a9b4f4a80a44653344d36b53e148134176e8f7cc99f8e823676a57c884595e",
"x86_64-pc-windows-msvc-0.7.21": "7a4e427ceaf3c7d8437e512cbc25af84796c4079cf842c3349d4b646a9209da5",
"x86_64-unknown-linux-gnu-0.7.21": "ca3e8898adfce5fcc891d393a079013fa4bd0d9636cef11aded8a7485bcba312",
"x86_64-unknown-linux-musl-0.7.21": "7400debadcd63e530cf58c3cfc71d43d5a1017d2f699be86c6e91d7dc2073c7c",
"aarch64-apple-darwin-0.7.20": "69da236af5934209a5c059fff1b2f69068918c423601f42448b1d92336853127",
"aarch64-pc-windows-msvc-0.7.20": "34f3720cdd736f034f3b0d1b03d6b74b85d3528ccefd3552b3aadf455f191b2f",
"aarch64-unknown-linux-gnu-0.7.20": "675165f879d6833aa313ecb25ac44781e131933a984727e180b3218d2cd6c1e9",
"aarch64-unknown-linux-musl-0.7.20": "0f68f4a4583923635e56f7f930526bbbcc14d090f1c1a7ec1d28cc4ddad05279",
"arm-unknown-linux-musleabihf-0.7.20": "9d3eb7fd1e3580a40e5d3f25db5d8a0719fb77be1d750b4849f6dbc96885e39f",
"armv7-unknown-linux-gnueabihf-0.7.20": "775c3634a1ed7f0c23e5ce8e418acdb394fe87df1ac21af9f274e1e68df0d9b4",
"armv7-unknown-linux-musleabihf-0.7.20": "27ac3e7f44c1af5bb9f01560e1848893e09c502a85552521cc9cf0d2cd4322c5",
"i686-pc-windows-msvc-0.7.20": "90367e9f5adc46d6effd2b2107bee5f900f959c64898ae3ffb1e28b9519b15e5",
"i686-unknown-linux-gnu-0.7.20": "9b53f988b7024728da39fc3e4217bf8cf233d1aa7afda20599dc3acb2049f328",
"i686-unknown-linux-musl-0.7.20": "fa3091a175cdba4202367b30bda899bc3ed3b6c2161b7c42500c3bd1b388c3e2",
"powerpc64-unknown-linux-gnu-0.7.20": "84b76581c50071a87609d340050b2cd0ba7fad7e929106202d4c99f4c5a41243",
"powerpc64le-unknown-linux-gnu-0.7.20": "25082231ee1b479cc9fc486949e3196affda09b82bf0c6b3c8eacde37f56e9db",
"riscv64gc-unknown-linux-gnu-0.7.20": "339015c2c934b93355a972c737f649fdf96abb699bebbc1b0955de9e5fff04bb",
"s390x-unknown-linux-gnu-0.7.20": "16819d631e56438ea2e58b60bfb99feb8b2b8cdbec73e375e21c6dbe1de8c725",
"x86_64-apple-darwin-0.7.20": "0c0edf17aff045bcb9bf89ffa43fefaec2d6585ff69debdb0ade62608f8ff069",
"x86_64-pc-windows-msvc-0.7.20": "ddf35e258c32971c00f3f4213cf1b5cf0847a42dac578738cb294d379e4a9f6c",
"x86_64-unknown-linux-gnu-0.7.20": "10f204426ff188925d22a53c1d0310d190a8d4d24513712e1b8e2ca9873f0666",
"x86_64-unknown-linux-musl-0.7.20": "c8efa6bacde9154aa705feb35985cbc852d75c7d634e8a6867aa2f5571b27a62",
"aarch64-apple-darwin-0.7.19": "698d24883fd441960fb4bc153b7030b89517a295502017ff3fdbba2fb0a0aa67",
"aarch64-pc-windows-msvc-0.7.19": "c843b95d9bad3e364ead2af00b793d42156cb4f8ac0c2e33bfd2b3e50a0efc86",
"aarch64-unknown-linux-gnu-0.7.19": "31b81b4b4ecd51ee4202f1e710fc22b72666f716ffbb825aa397c8246624d60f",
"aarch64-unknown-linux-musl-0.7.19": "e83c7c6d86c8e7456078c736a72550ce20222df8083f9317fc58cd49422ce5eb",
"arm-unknown-linux-musleabihf-0.7.19": "fe9834d5383feccd095cbfdbc290d7379f64bafc894ae8d8eb0724edfa754853",
"armv7-unknown-linux-gnueabihf-0.7.19": "6678e4d1a91349dacd3405b0efa88656d1c8a16fa7ccea822c368039988f8339",
"armv7-unknown-linux-musleabihf-0.7.19": "3022a75e757a31978e896e2e3fc2cf2dc966267a8757a270be0b421f541467e4",
"i686-pc-windows-msvc-0.7.19": "063829d117c2e42322b0e3a59ee91020dcb1d95522889b903ffad392df197a11",
"i686-unknown-linux-gnu-0.7.19": "1785537fc65a35609dc33063b5f1cc85437a08ade4c0a832071c018481afe515",
"i686-unknown-linux-musl-0.7.19": "e64bc4f74cee116694ea63ad0722245f62f386de271be1a1c28a6e4fd977326e",
"powerpc64-unknown-linux-gnu-0.7.19": "fb8a4a0d20dd3e236a88229e15af89fa3144bd06c4087dbfc7ba8ca691b0a953",
"powerpc64le-unknown-linux-gnu-0.7.19": "b335d0593c165fbfcc51915b3eb056f45c5691d06744a5ded7210d789469870a",
"riscv64gc-unknown-linux-gnu-0.7.19": "36ccef1387594e8fb212257fbeafa9e260709b363e1b262f43bd5a679134e4ac",
"s390x-unknown-linux-gnu-0.7.19": "08ac0245d24ba16bbf224b00e8bc8021d081f9dcfdc61881cb6e4ac83954705a",
"x86_64-apple-darwin-0.7.19": "40667bcb615b5af3e373ad611c4a9b95639b97e19b5924a436df8e69ca9331e2",
"x86_64-pc-windows-msvc-0.7.19": "3098b38638b271d8b14b81247d6d69bb105807ec9fc5eb85f8cc8b6de5867c86",
"x86_64-unknown-linux-gnu-0.7.19": "5ad6f11d5a04cb3af2418666031f20b63190f82032ec5a7f3a174385cc5567e4",
"x86_64-unknown-linux-musl-0.7.19": "6236ed00a7442ab2c0f56f807d5a3331f3fb5c7640a357482fbc8492682641b2",
"aarch64-apple-darwin-0.7.18": "c33cfaab95da1413a0403f643b7edb1c5af6798d8a2370196a80fc37b894df48",
"aarch64-pc-windows-msvc-0.7.18": "c9c78de380e459f8424f648d107d4ab5286273ab19622a5d17796dc6689de453",
"aarch64-unknown-linux-gnu-0.7.18": "2af8d0d963f547deba09c52aca79a26113f0ed5c903c101241fedcac90c2d8f4",
"aarch64-unknown-linux-musl-0.7.18": "32872da98e5c48945e45406d427b3b4fdc11f04e4b8f297f49f76724894eb61b",
"arm-unknown-linux-musleabihf-0.7.18": "c6c9e718aee25142139b25bf6bb5f9566c57812abced3efa71b4677ac3ef1275",
"armv7-unknown-linux-gnueabihf-0.7.18": "00cdc4c898a251ea0c12f5db7b22929ff6f73f87a51fc6f874dfb57aecdcc995",
"armv7-unknown-linux-musleabihf-0.7.18": "92a07d26943b5e223e941b64fa22e048c13fb6462ccb35f18fe2e212cfdc1c18",
"i686-pc-windows-msvc-0.7.18": "4293c65f1fce52bd5396ec4419ce1c76412e276e0f292ec2464c319b7f8d59be",
"i686-unknown-linux-gnu-0.7.18": "e5db36cb7b7edbe405c70211802ffe3b161983027f7644ca9ddc9ed5605dd504",
"i686-unknown-linux-musl-0.7.18": "5829e240206ca895f8e500e9432dd87553091459a80d2a40c0d144688d443336",
"powerpc64-unknown-linux-gnu-0.7.18": "927af365bc8388da27d241149a52ee3b9772db87ebace6fec6b00062aedd4a24",
"powerpc64le-unknown-linux-gnu-0.7.18": "dc7ca0bca11efd40a4f85c40e2d83d830dacb7b0f9626bc40360a6697aa035e6",
"riscv64gc-unknown-linux-gnu-0.7.18": "2cd75769322d264151e9abc2cf89edd086239afa00c0a1354d52a700657f7deb",
"s390x-unknown-linux-gnu-0.7.18": "bc63ad2eefe5278b121a78255e8c488eb69ae29784b69012439ef365701393db",
"x86_64-apple-darwin-0.7.18": "7a4a3350224a3a3904589ea306041af68686d72ec4d4b68e34c15d25dfc5cb4a",
"x86_64-pc-windows-msvc-0.7.18": "5a5b3ef7c6aee0bb1101ef047f35a0fc7cc82e34eef3286e54c5badd261cb599",
"x86_64-unknown-linux-gnu-0.7.18": "bcb8093f59eb08539087faf895ea1e794fe3db395de79eb41ddaa41d8c25adf7",
"x86_64-unknown-linux-musl-0.7.18": "c8b51ed978b5f95a7c34dfe39e1dce966f7497fc12179f27507d507d9f3ff40b",
"aarch64-apple-darwin-0.7.17": "0777e13ba598ccb9a9f78df209c98922b219a195765b9f1b309457a08cbae43d",
"aarch64-pc-windows-msvc-0.7.17": "be0e7263e4106ca73ac72b4f84ae1c203db446d42d764b2b6459bf1d84aa1859",
"aarch64-unknown-linux-gnu-0.7.17": "b88fda8f37769d445dd4b433c83490112afa18fc009b75e3cb28412a1d189c53",
"aarch64-unknown-linux-musl-0.7.17": "789f3749497181311fbc27d2da322f4f836d814389901e8a7917ee664f500a6b",
"arm-unknown-linux-musleabihf-0.7.17": "7f39a83f2cd7925aa25020dce70f9d2617213b710aec1c9fd686c3314ee814a2",
"armv7-unknown-linux-gnueabihf-0.7.17": "9a4ee0fe51b07b8badf7ca874b3a065a0d2cf3b04c69aa2c7618c03d6ddd46ce",
"armv7-unknown-linux-musleabihf-0.7.17": "6a5d3fa02a7bb5696ac392d6277f29174f27bc38e0100016ee67c55c8a472e3b",
"i686-pc-windows-msvc-0.7.17": "45ffa8cd52e6a0764c2bde7c97be840b6c7606f976e6ae51bab394a891653f52",
"i686-unknown-linux-gnu-0.7.17": "043897d13541c11c1221761c768d4234b889ce1fa39f1f27a567e11ca2c86233",
"i686-unknown-linux-musl-0.7.17": "0d7a846ff1ae9d620243da530adcc468bba4aa317cb3ba4210c724e2ec5734b4",
"powerpc64-unknown-linux-gnu-0.7.17": "46331c3771dbc8aaaa4c75421b6195edb763bac5ca4b8d551efd2da013351252",
"powerpc64le-unknown-linux-gnu-0.7.17": "9f7e13304c7f3977c2e1eaa068a6beb36e6974a2abcf8cb1b8e0d8b96c251203",
"riscv64gc-unknown-linux-gnu-0.7.17": "789fea86b495397c7bd12c92221259f07c78ba738d568757b06500ac94b6ebe8",
"s390x-unknown-linux-gnu-0.7.17": "208c6609012ca921aa3ca67d49dde34464e405041b1d8b041c15078687456570",
"x86_64-apple-darwin-0.7.17": "c0aff6481443e7dc38c01dfb3535814db42c00ad3ab374e7b4ed4ebb7f5b2237",
"x86_64-pc-windows-msvc-0.7.17": "b49d1a02662ac4a490c886fff8a340a4adc32da8d0634fc653a69459d2b5f863",
"x86_64-unknown-linux-gnu-0.7.17": "e9bf64a66a318a82d3c37a74c31527df0ac7e7c821a10f5e1032415f000d7d43",
"x86_64-unknown-linux-musl-0.7.17": "ffd877241741df0a6436ba6ed0d8cd6573f1f922ede3a967c32c57d2133c72b0",
"aarch64-apple-darwin-0.7.16": "a157919a2a615fac5de0fcef5120a63de7e6582fb6e0ae4428238af347ed1054",
"aarch64-pc-windows-msvc-0.7.16": "a832dd02c44cd8d373b226ca34128982aca5303dd3b477c90c5a1f83efa874b0",
"aarch64-unknown-linux-gnu-0.7.16": "4ff5b8542514b453073cad1dfba08db751ada21981b869c69a2ac29fd639b586",
"aarch64-unknown-linux-musl-0.7.16": "c1536a85aa85cae05c51d25b2819c5b9869f67c66c65948aadeb0c38c4bd51b3",
"arm-unknown-linux-musleabihf-0.7.16": "20902d98f9a309df2a83ffd31ecfda444dfb75249c2779eedaeed7d73274f34b",
"armv7-unknown-linux-gnueabihf-0.7.16": "72afc7e60eff20a1c2181f88c9d96e06553f854192b3a13069aba0f8b045a839",
"armv7-unknown-linux-musleabihf-0.7.16": "c0b5300958a489330a9790b701f1491a1bec72e402281cdaf6a2362b51fa4c13",
"i686-pc-windows-msvc-0.7.16": "6d4c4de0cc8c88fb7d94138c05091dac6746a7bc9d94b3743e804a485546154b",
"i686-unknown-linux-gnu-0.7.16": "ee03aaf5d736524a8b6e74c273d5877be1bb720933cb8f7f5e70b42c70933418",
"i686-unknown-linux-musl-0.7.16": "b815f060a689e0fe95ec36498533bb261b92dab5cdb60b02cc19fa30c6cd7e57",
"powerpc64-unknown-linux-gnu-0.7.16": "a2b78151e50646b26cacef24de87d625d4b100efe69347c88a8a6d340b0e82cb",
"powerpc64le-unknown-linux-gnu-0.7.16": "c231b3880c6584b6fe411b0c7507ed0c091856a64f84720b732ddd39b21b7e6c",
"riscv64gc-unknown-linux-gnu-0.7.16": "6be4c3e27989ffd49befc689884b78b55c53c817a27040b8e232edd92185b037",
"s390x-unknown-linux-gnu-0.7.16": "f4e1814f2326db1eb0d0d2ea96ee36c361a856e8c9d8d82817936aad9baa4299",
"x86_64-apple-darwin-0.7.16": "414cb3c348b0482bc88fdabbc267973a11401e684a78fd471b2c4553fa8b6965",
"x86_64-pc-windows-msvc-0.7.16": "409d19c14a9b1ce83bf7331dbda89984802efb3a2fbf9ffdf149b22ab9cf2826",
"x86_64-unknown-linux-gnu-0.7.16": "c51f5dc9fd33e789992839d2957d6cfe0b6dce1cd7ec641740af456b12e9d468",
"x86_64-unknown-linux-musl-0.7.16": "34c9da84a673e6c06d2e081d72d953f278fe5bb6aba0437210ba62817b340eb7",
"aarch64-apple-darwin-0.7.15": "7a20f3d33cbbc75683d66e0562d4bdbd702ca656d7dc1b7be3c592de6a6517b9",
"aarch64-pc-windows-msvc-0.7.15": "d15770be109fdde45c60a522fcc97bf19e0d9d9de8a0d2f0dadc772786110123",
"aarch64-unknown-linux-gnu-0.7.15": "a8241809c6efcf5ff649d259276dabd297a2c46e9e2f78891a1f9b8ae858e1e8",
"aarch64-unknown-linux-musl-0.7.15": "4351c1e2ec13f5eb4da058ac1c39f00ae3042de9d6fdb6480e0170f32813210f",
"arm-unknown-linux-musleabihf-0.7.15": "26c7f1baf3f14857d8d5d2df86ea47a3ce5a0e6223c1db9af2a32bb3d216d5f1",
"armv7-unknown-linux-gnueabihf-0.7.15": "6609e0f39c958a2b728ffec99ed53741cee92d5db168fb275448216a9e2f5a63",
"armv7-unknown-linux-musleabihf-0.7.15": "3a60e3bfc6b927537eff1c6fdb359bdfb5a02a59820bb964e04144d731b12ca9",
"i686-pc-windows-msvc-0.7.15": "831ac11382c9ae014f6f5d27506c8977bfba5aa6b104e278d3a87ff4d1e311d3",
"i686-unknown-linux-gnu-0.7.15": "8d11cd225843aa7e7b25a5300721d48519a13bc82fc8b7bf63b063b8520b2db6",
"i686-unknown-linux-musl-0.7.15": "8640a014e5ef7020b33a8e95fabd5e0c75adf80beeaf265ed50dfe2bee92aeb2",
"powerpc64-unknown-linux-gnu-0.7.15": "6a4c0fe1075c4f3b9dfb8d0654a58ca547aaa84f829bc9e1b60a096153d18686",
"powerpc64le-unknown-linux-gnu-0.7.15": "81f6d18b857cc3517f249fd7e321b9cad6e6c17bc7d7ad88cefc0c25cca3e486",
"riscv64gc-unknown-linux-gnu-0.7.15": "6a0a6ef8fa3d03b6a6cab9185cd84e28c78db1e5736efa711e6f5efa4e6c27e3",
"s390x-unknown-linux-gnu-0.7.15": "d5a2343934c7fec124fb0a140b12c4dd30e20c5473e67b11d064f5b6e52eead0",
"x86_64-apple-darwin-0.7.15": "4c7c1fe116566b6f8725a3801a33fa5e066b8687643acd73249e5db1351c2103",
"x86_64-pc-windows-msvc-0.7.15": "b78c2d265e74b21b1c04b5b4ffd61c5c7b8110f9188e24949ee9f6fd5fbaf0a8",
"x86_64-unknown-linux-gnu-0.7.15": "b1dc0892749e93382decbd894755be0ba1535587f0bb8333572b072d1b0f652a",
"x86_64-unknown-linux-musl-0.7.15": "c97afc120614c88bd8c13dac2d35015bc59656289633d61bc438e7e680a38710",
"aarch64-apple-darwin-0.7.14": "7cb9cb6b3005a16356493887d7e7e297237b754b5753b91e826ada98ab2da172",
"aarch64-pc-windows-msvc-0.7.14": "f28f27e529e30e96e7b289b724c8229cfc5ca25312c23bdae089d6998ffd0aae",
"aarch64-unknown-linux-gnu-0.7.14": "c0932f428d24d87aaad6a6b7ad48aa09f260d2da5c69e877acd87c3ac90fbbad",
"aarch64-unknown-linux-musl-0.7.14": "30e41b1f68b3e57c1375c0b2e7fe932a9eb5487fbcef7c4c7d03def3e05b9f7e",
"arm-unknown-linux-musleabihf-0.7.14": "3b494d3d6a892d9c03d1fa6dcec8ac6077653939a6645570ab6f1f40adbd0b3c",
"armv7-unknown-linux-gnueabihf-0.7.14": "d5d1f6c49559914678267ce9f3a57528ab45e26e907a816736306b4f10a7b4b8",
"armv7-unknown-linux-musleabihf-0.7.14": "0016d3138edc52de9f2f4b0587afb6b579dc3bb3abfe2df151f97cc43a4ab421",
"i686-pc-windows-msvc-0.7.14": "42391f3a71229342b17d944e956d116aabc5147b0ed28a26c59601feac1f24cd",
"i686-unknown-linux-gnu-0.7.14": "71c358c315da7ddd2de334fe52a54719f9bdac8d6970e7966e2d080ae73ad028",
"i686-unknown-linux-musl-0.7.14": "d02de9391fe7b7d7e97dc2fa63a539201a31eb51d2c6a87b7570cf8a5ac22398",
"powerpc64-unknown-linux-gnu-0.7.14": "a2a43332f860520f7cd3d32f5a4ed5e0d938cc59e025372f8f1bfe47ea64355a",
"powerpc64le-unknown-linux-gnu-0.7.14": "3c545528b601a75baad5e1cc93cbf973123e9e6df6d905b432d91ba9ca769c0b",
"riscv64gc-unknown-linux-gnu-0.7.14": "4085fd8d4acb0a50a012fa63ae37e50472bf8742d58f4943529b5b5bda95a1a9",
"s390x-unknown-linux-gnu-0.7.14": "b20a69092f3171dd99445fe0d71e3ed3e67ff85346cb0723a43a1b8d55ce0f33",
"x86_64-apple-darwin-0.7.14": "352a56bb3823040f19f936dd5e277340cd304da03e5b00c0959800a72a9f55ac",
"x86_64-pc-windows-msvc-0.7.14": "f9ac952c69d32b2263ba19ba93d18d9e708dcb9bddb8124555bbda96d6d5168f",
"x86_64-unknown-linux-gnu-0.7.14": "2b38641d02bf107c5099f09778fda93bbaa4a4a2ee44ba303a4097102254e5e5",
"x86_64-unknown-linux-musl-0.7.14": "8c62a823744630e6cf3fdf0bf38c4fe4558bfcbe082b076a76446a3aab2af5f5",
"aarch64-apple-darwin-0.7.13": "721f532b73171586574298d4311a91d5ea2c802ef4db3ebafc434239330090c6",
"aarch64-pc-windows-msvc-0.7.13": "bb40708ad549ad6a12209cb139dd751bf0ede41deb679ce7513ce197bd9ef234",
"aarch64-unknown-linux-gnu-0.7.13": "0b2ad9fe4295881615295add8cc5daa02549d29cc9a61f0578e397efcf12f08f",
"aarch64-unknown-linux-musl-0.7.13": "52baba71881c978d32b7c32216ad0cde4546a4dc62e606c9834ec4616c1610eb",
"arm-unknown-linux-musleabihf-0.7.13": "ff2b11fff489301f9d55c851b9ebce7ca5530d743d2c0a3861cc45896715ea9b",
"armv7-unknown-linux-gnueabihf-0.7.13": "903350811ee31b2b758c8afb853490c27a34382a535b236739705b104bc13894",
"armv7-unknown-linux-musleabihf-0.7.13": "7e3b2aa966c54ced0fcd9febea6b913ee7ea12ee85246513895f199ab13296a8",
"i686-pc-windows-msvc-0.7.13": "5cf71014fde208ee0833026b3828007f8eaf514ec003784dc1ae92633877179b",
"i686-unknown-linux-gnu-0.7.13": "ff031258ff08b3aca46648398e21fe9679744501e3c9a928c8e42d596a708bbc",
"i686-unknown-linux-musl-0.7.13": "41851d695bb5401bce5af81a156d63215087cf8e8e1275e69dd96de4bfa30c26",
"powerpc64-unknown-linux-gnu-0.7.13": "02a80ce1436bf673b0d7276bb24dea0bbc70958dc91e5fb04ad37ac515be7424",
"powerpc64le-unknown-linux-gnu-0.7.13": "60c8907cce089de97dcce732ae363eda0620f7196c25e8bd539f168b93f9e34c",
"riscv64gc-unknown-linux-gnu-0.7.13": "521a5235bc5a053dd7f0221c363544cef6d033064cc9d92dbb4ef19771000052",
"s390x-unknown-linux-gnu-0.7.13": "41e4b6093dd408b41dffb4c9e08c4aa31424ee4573ce9c95566c2617f7f2d0c6",
"x86_64-apple-darwin-0.7.13": "d785753ac092e25316180626aa691c5dfe1fb075290457ba4fdb72c7c5661321",
"x86_64-pc-windows-msvc-0.7.13": "e199b10bef1a7cc540014483e7f60f825a174988f41020e9d2a6b01bd60f0669",
"x86_64-unknown-linux-gnu-0.7.13": "909278eb197c5ed0e9b5f16317d1255270d1f9ea4196e7179ce934d48c4c2545",
"x86_64-unknown-linux-musl-0.7.13": "560bb64e060354e45138d7dd47c8dd48a4f7a349af5520d29cd3c704e79f286c",
"aarch64-apple-darwin-0.7.12": "189108cd026c25d40fb086eaaf320aac52c3f7aab63e185bac51305a1576fc7e",
"aarch64-pc-windows-msvc-0.7.12": "fbedfb71356d0e63c86b507cf1434a58406afe6eac77aee9d37b8282d4006e14",
"aarch64-unknown-linux-gnu-0.7.12": "23233d2e950ed8187858350da5c6803b14cbbeaef780382093bb2f2bc4ba1200",
"aarch64-unknown-linux-musl-0.7.12": "0589f6d27bbbe2e205aa6fc25e4cd28ab97e984cdba20842de8d3a00714e13e9",
"arm-unknown-linux-musleabihf-0.7.12": "6996e32ac1c37af33a4c6e40ab0126a82d62ccb94edb164b7dae554be4dd8336",
"armv7-unknown-linux-gnueabihf-0.7.12": "aee2dc202deed7e15984d71eb59803111052fbe8c0fb3ffad27ae0a6d290d74f",
"armv7-unknown-linux-musleabihf-0.7.12": "87bd7676d31858d9e1937ab69d13e30cc93ebb09fb246dde6a8f183e9570a82c",
"i686-pc-windows-msvc-0.7.12": "c7ec71ba64d01ef3cdb89553445de94ab4fd7375c8f2a7068353aec7a3a06342",
"i686-unknown-linux-gnu-0.7.12": "d1def68ff10b30327a5cacab497664aaf8338e192ba277b76f45dad63208f2e2",
"i686-unknown-linux-musl-0.7.12": "f56a0a9c84b35b7e910c4d628c667b843fb3fa1d9dddb0bbf4bf3f21eeaee07f",
"powerpc64-unknown-linux-gnu-0.7.12": "6eafb546d1b8642a5c27e4dfda213659fee41b0fd150b4c33ef96c917e595344",
"powerpc64le-unknown-linux-gnu-0.7.12": "0d550348d7a0f54352824cd751dc7baea0c23b17d744a5a7784b6b825e5fc909",
"s390x-unknown-linux-gnu-0.7.12": "76f5a2c1c13446233312d140136f3f55fa7c162176327830eb109ccaae6c9cea",
"x86_64-apple-darwin-0.7.12": "a338354420dba089218c05d4d585e4bcf174a65fe53260592b2af19ceec85835",
"x86_64-pc-windows-msvc-0.7.12": "2cf29c8ffaa2549aa0f86927b2510008e8ca3dcd2100277d86faf437382a371b",
"x86_64-unknown-linux-gnu-0.7.12": "735891fb553d0be129f3aa39dc8e9c4c49aaa76ec17f7dfb6a732e79a714873a",
"x86_64-unknown-linux-musl-0.7.12": "bb493f1e6ae426c06b5a103cb71aa60c678976d2377f0590644538658656c2a7",
"aarch64-apple-darwin-0.7.11": "b5f4cb27a3002d6590c3681377c6d826db0b52e2a9529c7144fcd53fec89ba79",
"aarch64-pc-windows-msvc-0.7.11": "856bac93344a6980b2703a4143f26fc042c941b02f11ed21f55ec6be3fdfde87",
"aarch64-unknown-linux-gnu-0.7.11": "80cf695c4e10b532e9db3c7fbbcfb0f8356f2e70e7a4a5040e005f0fae70923d",
"aarch64-unknown-linux-musl-0.7.11": "2ad20d143c74d7f63d1c99db3999f239f045b7be041e23f6ac8b269c99fa54fe",
"arm-unknown-linux-musleabihf-0.7.11": "21fec46f09d96cd9f51378fe01ed050dd2032c1fef823f8bd81fa50a2337bbcc",
"armv7-unknown-linux-gnueabihf-0.7.11": "1a75aaff4695c07151d5b9abb50232ea9fb6f5ccc82d4b319abd8796605d9db8",
"armv7-unknown-linux-musleabihf-0.7.11": "431b3115ab8fb5e2210d01f29b7901e6eb1174ff65545ec49318d6d4adf4c802",
"i686-pc-windows-msvc-0.7.11": "985f5eabf42b8ad0166ae6b9f799564220fa932938a8401c890d5e07321ce7c0",
"i686-unknown-linux-gnu-0.7.11": "619e205d56594fc530dbde6c6a543dd094c796791a5e2cfcd3bb70fa5767bf9d",
"i686-unknown-linux-musl-0.7.11": "838c6336ba8e88818459b10c3520e83601b9c0a9850a209accef9782c050faad",
"powerpc64-unknown-linux-gnu-0.7.11": "769c7f32cbc2ad918ccf9ae661d99a6c0d0fd3a0056691832b4a79049a9d06ec",
"powerpc64le-unknown-linux-gnu-0.7.11": "c9bbbcc2d4f11c83e0edbff5868d95f07f81455adb6f2f909cdb9b992928101b",
"s390x-unknown-linux-gnu-0.7.11": "0e7b9b27e9fef1b42aa052173a2a47a2ec33bad82425237dfac402b7f69bd073",
"x86_64-apple-darwin-0.7.11": "97980b067dc3fea16534371b030eaf38554d701de5058004edcfd542a88a2e84",
"x86_64-pc-windows-msvc-0.7.11": "0f4ef69fde75bb8bcfba7ecf0a4134d8875578cd2e98c9fcfc21573e746c70ac",
"x86_64-unknown-linux-gnu-0.7.11": "df54b274e99b7ef26030dc21d105ce115bc21a644fc6a321bde9222cb1616de6",
"x86_64-unknown-linux-musl-0.7.11": "e4e8948645ebea1950a3c77574ce079dfe1c71547ba5a8a141d6e362fa036684",
"aarch64-apple-darwin-0.7.10": "316b80c19832ff4085748c3a20a3e05f36e1d19234e8b9399a6fd1c971241bce",
"aarch64-pc-windows-msvc-0.7.10": "1eed0f11bca79403648195f8ce257763d956e861cb73de98c480dae15358bb26",
"aarch64-unknown-linux-gnu-0.7.10": "8746acb754807050124c6dbcb05fcad2665a3f0cdb2a0fe9de528bd37b092656",
"aarch64-unknown-linux-musl-0.7.10": "f9000f08850a5c575d5fe1ddc2ec928ecc9f287ecdcd9fa1ea4e3f405b23d4a3",
"arm-unknown-linux-musleabihf-0.7.10": "657b1b8a534f7fe78e63aff56aac5bbcb21f6254df79825fe204d5c7c1219653",
"armv7-unknown-linux-gnueabihf-0.7.10": "1cf4a8f40abbd802a7b44fe9695da356701100d267eb3567c17db27e0a24cf69",
"armv7-unknown-linux-musleabihf-0.7.10": "5282b825f469295dc2b88c94eccd375a93135a279b0711cb10e615e7a71a0617",
"i686-pc-windows-msvc-0.7.10": "f3c62ff935685d9d4312b82d01ed386493b97c3d22bd434d943fc99ce9aef83a",
"i686-unknown-linux-gnu-0.7.10": "24a2a3eb0e89b74de6aac492516303747519439775d22254e838d33410ac27b2",
"i686-unknown-linux-musl-0.7.10": "e317d35af60b38ad32935390a83d12adc3ed7ffdbc2ccccd3039bf6cef650eb3",
"powerpc64-unknown-linux-gnu-0.7.10": "c1ab41ec53cd720179f3351b61b4ded73ec520804413b75051736829a125e4fe",
"powerpc64le-unknown-linux-gnu-0.7.10": "ce2c3fdf177facf6c77c5316bb54b9deaf498bee9f664e01a4030ecf27063ab1",
"s390x-unknown-linux-gnu-0.7.10": "b7603e3f4494e9093a86ace1103e3fcfa172a952989f0c7dca6eeac7f77be81f",
"x86_64-apple-darwin-0.7.10": "9123e8aa944654404787f80731ec08850c4e9b9129c0d0445c9e41438828b8b8",
"x86_64-pc-windows-msvc-0.7.10": "1568a71af55e9d9bc4a050ec79134a342a8a3765a73f6b7ec26490c2814f8797",
"x86_64-unknown-linux-gnu-0.7.10": "ff2ef46298963fee8104ccb3c0a4ecbc97c057ac6a0bc5fec7636c855384252e",
"x86_64-unknown-linux-musl-0.7.10": "b2cf1f63e83a873652ffef032681bbbe1469e3bab617f7e715e09529c30f5689",
"aarch64-apple-darwin-0.7.9": "7a8b716a2b5905fb89512371ce6c6dbc0dd0344185bd1cd93a3fe27516eef7ec",
"aarch64-pc-windows-msvc-0.7.9": "63c0990b9c49dc9f9a92aaaa27ba627cbf9cf6b2e42766588ef6f880208893de",
"aarch64-unknown-linux-gnu-0.7.9": "23242a8051e2191ed8d61f71a6792f2fc069ef18e6cdf07dedac3d3f648643c5",
"aarch64-unknown-linux-musl-0.7.9": "60f30508c9002b2b7af55d70db2741cf7ea24c066ced710ad09681a6d2d19b3a",
"arm-unknown-linux-musleabihf-0.7.9": "57d8e43e257f0ccd9df2b8581338c5145b9937aba53e9c9bb81b31044b720c61",
"armv7-unknown-linux-gnueabihf-0.7.9": "83353ee7e1724083ea94d7f488fa34c9159995a3996f87017fdf72e422c93242",
"armv7-unknown-linux-musleabihf-0.7.9": "b2d8d81bc2abbdd857bad7cd3bf0d36c5155c0681aae8ac9fb8f49d54b95b3f2",
"i686-pc-windows-msvc-0.7.9": "b5dc0dc10d9dd0dcf5729a94e98538418760d13877d4d4b1bc4efa9926280e78",
"i686-unknown-linux-gnu-0.7.9": "fb8f1a7cb593c819c0fff71afa2dc480237ca80a3f5d8d433c8b51d2ae90ffdf",
"i686-unknown-linux-musl-0.7.9": "a77592be13fea81ca42b2b7815784e769e1fd9ff476cfab69f2652823f99c55e",
"powerpc64-unknown-linux-gnu-0.7.9": "26fee4867c158c04dd3a51ff9a23b4220a9ba69fae2e71be618d2cfa48164d96",
"powerpc64le-unknown-linux-gnu-0.7.9": "d588fbb01cacccb7fd6e0f101d34282ebb0569381f967d332f8072055e39840e",
"s390x-unknown-linux-gnu-0.7.9": "d823d68ff662b7e59c6791281427bf1019dae791a964ffae31ae1d2d723dfc08",
"x86_64-apple-darwin-0.7.9": "a4c084568850588b77e4a34c21b7df5c8cf9e2160b4d614307ed92fa12411742",
"x86_64-pc-windows-msvc-0.7.9": "f91d8a3322a10caf257fd416807bd8d2801285b80b46ee37f2d0c6e426b8822c",
"x86_64-unknown-linux-gnu-0.7.9": "b8450a419c0bcc85841bbed8511eb59e2a5683ddd3f813f2b98b97babf6b1b8b",
"x86_64-unknown-linux-musl-0.7.9": "95918a1e1faf851a39cad402f1a77318e8fc90b7f829833ebaff27de9722d60e",
"aarch64-apple-darwin-0.7.8": "ad6b3825ba277de70b9d0a37055f7d828f3f37416aee1cde65000f330efd4587",
"aarch64-pc-windows-msvc-0.7.8": "e43448e5e3267dffb6bbdc30ffa291f8db664d1da9d084c44f99dc568f459e0a",
"aarch64-unknown-linux-gnu-0.7.8": "da9e1c97f1452b25c8955127c92da7b68be228ad0b43bf50bba4dadb25c8b337",
"aarch64-unknown-linux-musl-0.7.8": "4d18efb46f93fa942dc4c212dea3b6b07e3db62fe57d0c3d08de6bf5d9f9bb51",
"arm-unknown-linux-musleabihf-0.7.8": "133b1c3fb850ec496bfb4ef84379bfaeff1d2c322114a0984d8a5c2e10e63028",
"armv7-unknown-linux-gnueabihf-0.7.8": "7d61c6e18e81447482dc80c090c65a6615a1232512899943566baf2808ca37bb",
"armv7-unknown-linux-musleabihf-0.7.8": "0b6d6afcdb7c78e5df42cb2ab0929d2bec2654a350a8efacc6f95e830a31eb6e",
"i686-pc-windows-msvc-0.7.8": "0d4b01372ca972543cd40366bb5480bb457e79dcf45b5f662721d709d6932dbd",
"i686-unknown-linux-gnu-0.7.8": "db1c60961aea7a7f8c64a098801e0138e761b7556d1c1691fc4f3f771f0e47ae",
"i686-unknown-linux-musl-0.7.8": "b765eb1817bc1d545f4860eff0adeb0c7907ea66be14536653192e588386b308",
"powerpc64-unknown-linux-gnu-0.7.8": "2c894b104195ab194af05c6ad756ce8746a349a8620c83888207db5fccf29a8f",
"powerpc64le-unknown-linux-gnu-0.7.8": "4b0d93385685f756068f76af1871dcb7cc8f427ab6d650afc07493d06dca71db",
"s390x-unknown-linux-gnu-0.7.8": "e58fc9f6d846ccbf50d9bcf27920ff4bc061541df8a6a3aa6f13be24981e0772",
"x86_64-apple-darwin-0.7.8": "f046249639014eb70b43cbaf83eb6f56aac724ada354f9b9aad65f9960737920",
"x86_64-pc-windows-msvc-0.7.8": "355736ddf9a01ab9da918b35470027c12128d7ed1d7f54f54771507d79529679",
"x86_64-unknown-linux-gnu-0.7.8": "285981409c746508c1fd125f66a1ea654e487bf1e4d9f45371a062338f788adb",
"x86_64-unknown-linux-musl-0.7.8": "8a707e45e0d1a8bdbc5bd1af0ae7d19ffab55f3722c5e73471039561900e3d48",
"aarch64-apple-darwin-0.7.7": "6a06eaa8165d5abd89c3dc37ffbe1db60fcf49a87d7c612bfca7e87a1514695d",
"aarch64-pc-windows-msvc-0.7.7": "e86cd59f2569f4bf475e5ad944910142c0ab107ad12613429ad8873a6f41087f",
"aarch64-unknown-linux-gnu-0.7.7": "013061d4d33385e9a3fc52df18d22334f20f12616970b0d81583d5125ce8d6fa",
"aarch64-unknown-linux-musl-0.7.7": "4014dc9dc024bb5a082f16c54adcd5936d47dae664bafa38453b3017ede41aab",
"arm-unknown-linux-musleabihf-0.7.7": "c1dc010e3ab855391f3a6906fcffbeac873d136df2b20cfd998105385444e45c",
"armv7-unknown-linux-gnueabihf-0.7.7": "e08406cfcc1ccc0c069d22c91008967f662664abdbf8a15779a1944070e0f5b2",
"armv7-unknown-linux-musleabihf-0.7.7": "35379428e6d001e63714449c26c9111d1d5ee6f3b6a95559c724ad57df9d8d17",
"i686-pc-windows-msvc-0.7.7": "5e47a44df7707b58884cdf5d30527857ec1bf186e8f200517fd11a572669cacc",
"i686-unknown-linux-gnu-0.7.7": "fc782a829cccb0201c4a918d9f5a3a114511d734953f7e5e60aed52951264454",
"i686-unknown-linux-musl-0.7.7": "10b852326ee48502d6da26c7fe394345b7ce7ca94d76f293dbe4cde9577c3993",
"powerpc64-unknown-linux-gnu-0.7.7": "4b26663e0c21289bd21c05a3ba344e6b069c600e5a6333e660ae16eb38027bd5",
"powerpc64le-unknown-linux-gnu-0.7.7": "e691d6a8a8c285cd644cf1f6d47c2568740ddca645c860f9bb23799790b54e56",
"s390x-unknown-linux-gnu-0.7.7": "b21953a1c6c5475306e64f9ccf721762d2fc6aa572ee5268ed61a3b1531f06c1",
"x86_64-apple-darwin-0.7.7": "4b337495ced2a9797357ee853873c2f5a45cc52f6ed68c9feba3c997443452b0",
"x86_64-pc-windows-msvc-0.7.7": "a27a1fdf3f6b850dfb45fb009f7ea0fe3db1a59f692ebdc64c24ff8dbd0467d1",
"x86_64-unknown-linux-gnu-0.7.7": "d83e2b9c2b251c93985824d9a12d97f5b036b7a9ff0b7d647c9ca7ae5ff2ae1b",
"x86_64-unknown-linux-musl-0.7.7": "3876cafbb6599287a78778d2c265fd2050acfc247409ed677a8583f20385a3ae",
"aarch64-apple-darwin-0.7.6": "a0e7c0e44ec4b2743e1c1d1f6edca1418687b05084f48c007c6e1c7d3a35bcd2",
"aarch64-pc-windows-msvc-0.7.6": "2ada1290e87144726b6a723b38fd34ce64da5a3fe820a21685564924f894408c",
"aarch64-unknown-linux-gnu-0.7.6": "4eae30038653bbec528257054fe07495f20c5d4bc663b630258e87d159e282b6",
"aarch64-unknown-linux-musl-0.7.6": "9e59f0753383d6a27404be238360165e415605b1504b209349852a27cc01d48f",
"arm-unknown-linux-musleabihf-0.7.6": "b81d59deeba1f92aba48aefce2b364530baa1cb8aa4c59fc2a90c9acf98c9a20",
"armv7-unknown-linux-gnueabihf-0.7.6": "e9d1b7d52def14fb1ab8af2fa52963ff8e4323934ec2e78720a94d92261fa9fc",
"armv7-unknown-linux-musleabihf-0.7.6": "c525ad0f41c67d944e56362adffcda206aef36f3ed84daf90386fcbfa4a62c66",
"i686-pc-windows-msvc-0.7.6": "aca45dbdb75cd2c5fdf70bf5ff436306d476352b135fcab544c4a9759d7d1af8",
"i686-unknown-linux-gnu-0.7.6": "71448fddb93306b1b67f0c2e711eb79b6ea33d027212259abd7546a48d15b49f",
"i686-unknown-linux-musl-0.7.6": "a641ada8b2ca3ec22c24414c2edef8c01370d7d4ac79998eac091b84f743c476",
"powerpc64-unknown-linux-gnu-0.7.6": "9f63727933d11b0157ebc3fd640811c1224fe55215acff24e8ec5747fb4f90fc",
"powerpc64le-unknown-linux-gnu-0.7.6": "da746e6e809f32ab9709e45c7d5e7c37901478cc610119c08ae335c43ac089b2",
"s390x-unknown-linux-gnu-0.7.6": "a07d4303e97f72312f9db8a1a67bae08f02d883f1879fa917b9ae87aec90d933",
"x86_64-apple-darwin-0.7.6": "718cfd68b13a1a642fadc53646742785cd33b2e06124a01454ad358617841852",
"x86_64-pc-windows-msvc-0.7.6": "4c81818cc89d75ca54762e2641deebad69c0af6594212a9fb24b9849df8ac413",
"x86_64-unknown-linux-gnu-0.7.6": "0c5f0935bba35359150774fc5876d72947b863b8173c94dda776e6d88014a0df",
"x86_64-unknown-linux-musl-0.7.6": "be755e8503b7e7174f24ad8cdcadab94f0662fe0b60df4fc35e1ddae48b19f35",
"aarch64-apple-darwin-0.7.5": "8d82c7f6fcfd79b142c8845f694c8225dd5b401cd720e8e1e2a35a1c4150f516",
"aarch64-pc-windows-msvc-0.7.5": "9ec005bf0b472d47ab730e463cc5a156b18ca9a9a6fe1c72bf18d97384d0b717",
"aarch64-unknown-linux-gnu-0.7.5": "715bd03f6b2924b8f742b716d0f4b9d31ccbb1ad4a7f8df4ce2f572efff7f2cb",
"aarch64-unknown-linux-musl-0.7.5": "ce23f5e1d22f1cdfc0db4358d3b2642c115ad99d404aef15030af31e39ef3484",
"arm-unknown-linux-musleabihf-0.7.5": "2e85c3ba3ba461822940bca197198babcb1a8ce620c3d1c624423e68bba49d43",
"armv7-unknown-linux-gnueabihf-0.7.5": "cbd7990fb0d06750f7e966a54dc344396e4d605d029aa94a0cf00d695cb283e9",
"armv7-unknown-linux-musleabihf-0.7.5": "96d5eb1246e654f4e2c37542797196d94c0d72fe44e470050a9fbf67e356fb10",
"i686-pc-windows-msvc-0.7.5": "84e70b46e0f218db9573b0efce085c13e0e5ce7808b3143b990d1a334e5a8ee6",
"i686-unknown-linux-gnu-0.7.5": "20efc06bc129d8757e81fdd00cf828a9c1d928a4a30c8c538c6d1ed219b52c5d",
"i686-unknown-linux-musl-0.7.5": "3cc8dbcdb230a6abbaa3cd6b918d6150f747f45f8f96b7399d6258c54fab5867",
"powerpc64-unknown-linux-gnu-0.7.5": "dab5571d40ce3347fe295b9afec9f560ad709461883ae604d0de827071b8d2f8",
"powerpc64le-unknown-linux-gnu-0.7.5": "4c3843068cd0e1bf9e5f68e5487fba28feef3196c025a1b1eaddd533a52b7bd7",
"s390x-unknown-linux-gnu-0.7.5": "1b286e386a4d66dd9393caf78888a881cf63202522a6a88262e551bc7b8b3995",
"x86_64-apple-darwin-0.7.5": "751ae339c91a6b8eddb868a64222c2533c722042476e4f28466683ddf96fa488",
"x86_64-pc-windows-msvc-0.7.5": "e95cb3789b2f80052c80048ff2865e06eae7512d06d304127898c70c4fd3564f",
"x86_64-unknown-linux-gnu-0.7.5": "a3d1964080a855e1f8806975b5fa943376045a64852c06ba80540813aa333305",
"x86_64-unknown-linux-musl-0.7.5": "be058167ae65f7a2b56f607b070bd4e93dacd09be52511ccb8ebb10fa132709f",
"aarch64-apple-darwin-0.7.4": "1af8c353479890b29b75933706890627555bbc07e12a0117ae62da3ec2ee372e",
"aarch64-pc-windows-msvc-0.7.4": "3800868f3cc1509d6ea16036e3268ff45fd22a85c922cf3de4fb9535dbb0099e",
"aarch64-unknown-linux-gnu-0.7.4": "c407e4c7431ee6cb28deb842edb49fea1ee3f5674a357f11244bfb0fd57e2ae4",
"aarch64-unknown-linux-musl-0.7.4": "ff0d9172d2105da526501e01c38ecf0558ea323cfcd25adff9a89cd7fad5c076",
"arm-unknown-linux-musleabihf-0.7.4": "4e6b7d15444ae58bc196ee4e7e6e11b451b4e994c0c73968254d3d4ff1c89bca",
"armv7-unknown-linux-gnueabihf-0.7.4": "303bac0f866c450fefe7543297fa87563941f924cb13f007dfe7cc02ac64dcd7",
"armv7-unknown-linux-musleabihf-0.7.4": "004e22fe946fabec6b5dff668f4bd8f93569dab30efe0f3d4640f266760744bd",
"i686-pc-windows-msvc-0.7.4": "113070d23ba1498cf9fff9ae634893a2a1dce42a0baa617c4a82009f61c71fbc",
"i686-unknown-linux-gnu-0.7.4": "19f0f19dfe9d722a2fb89bde4771682cf632182d6204cc4ddb11d700d5b34c07",
"i686-unknown-linux-musl-0.7.4": "fe281041401b4140a387f6101e64fcf4abb344791c12398c441c7e339510423d",
"powerpc64-unknown-linux-gnu-0.7.4": "ef2320254e52234750d9745e6dc6e3b3c990aa51e506057d0869d4d18b55e5e3",
"powerpc64le-unknown-linux-gnu-0.7.4": "e143278764aab89b68c6f55dfdfa4242c8f5d5213880b584880a776a5ca1b0dd",
"s390x-unknown-linux-gnu-0.7.4": "14dbae76be8999dcc8336fac1f6f86710e7ce4f4c3e1aec01e7ef7f9a3468811",
"x86_64-apple-darwin-0.7.4": "a6c5fd8aa67db03447934b14703a2d7bb04b5e5f7ff45630a749760393c5610f",
"x86_64-pc-windows-msvc-0.7.4": "966d0dd8d86f02f94128714180cd5ff42cd2ea9b33b86fc197f25cfa066aaea1",
"x86_64-unknown-linux-gnu-0.7.4": "5264d9b2bf021fccbaf6edb97bc17ce4863687745f2443460a8ca71e55891614",
"x86_64-unknown-linux-musl-0.7.4": "70083140d9efaf82cbb7ffa6231d5de3536d6497ec84d708afaf9b7e2fffbac2",
"aarch64-apple-darwin-0.7.3": "162b328fc63e0075d4267688201de91356e1c1b81db50419fa4466cfe2dfdebc",
"aarch64-pc-windows-msvc-0.7.3": "542b318c98b0295dd3d620fbcd63388757f382e14c69c569cb3ce793aa75c975",
"aarch64-unknown-linux-gnu-0.7.3": "2c2be8bbb83e9bc722f2013de8bb7506cfe6521d0e30b4ad046849d036b3eea6",
"aarch64-unknown-linux-musl-0.7.3": "a3f01c3c993b57fa8d13855c5ba60e3847bda4f8e795a52d52879e242e886604",
"arm-unknown-linux-musleabihf-0.7.3": "87f72dc1c3b1b598e08c8efc7f9ab8eca23df8549cf4c1fc27a4a6b2524809c1",
"armv7-unknown-linux-gnueabihf-0.7.3": "69f285d861cd1809a4bad0f08c2ea8a77ec17cbe20524a4ebbee4c5a7c868520",
"armv7-unknown-linux-musleabihf-0.7.3": "1a0071551cd575bbecef3218fb13bf05ab96ceb71b4b1d13a99b8a4af059f99f",
"i686-pc-windows-msvc-0.7.3": "1c9becbc63c15dcf43b09c0ba84e0ba6fa533fa799b7baf57a36363ef42fbc52",
"i686-unknown-linux-gnu-0.7.3": "a2b56cb262337380aa02b6d131e973d54090c3e655d3e55385d02850454c24de",
"i686-unknown-linux-musl-0.7.3": "d6e846079ef38929206079147448c5683a3018116b2b3e6059cf4c26bcfbb290",
"powerpc64-unknown-linux-gnu-0.7.3": "a9b94c618a5d5bc992102733a45759e38db9a9e069830c3e94c744d1bfc33c21",
"powerpc64le-unknown-linux-gnu-0.7.3": "782e9c343cb7c219b5514e64a799a8b9fa82585f6176b53ed095dc030a22d993",
"s390x-unknown-linux-gnu-0.7.3": "ea803eafd6e3414d3a18aed9257f8ded8f7d1f6f182d2572969c4c487faa1986",
"x86_64-apple-darwin-0.7.3": "d676940b51bdd5606b218bc2965fed67731f94ad07926045716acbf78626e09b",
"x86_64-pc-windows-msvc-0.7.3": "20d3a420abbf2af9699cd9a02225d9325344046af8deb15563cc451e3c4fd059",
"x86_64-unknown-linux-gnu-0.7.3": "17fc118ba4d7e9303f84fcabdc0a593fc3480ba76eb6980668fdbbb96fe88562",
"x86_64-unknown-linux-musl-0.7.3": "325143825b88e7b0dadd1a8e8d3cbe4791d3cbbb9e2244350d917803fec8b3d1",
"aarch64-apple-darwin-0.7.2": "8edc0bea8a9e35409f970b352036326393e79a6039577d8cc9ef63872c178a99",
"aarch64-pc-windows-msvc-0.7.2": "a3d7affcd62e617bd2dd2a91fde679dd8d68a84762c8f3aaac294606ec14ffe5",
"aarch64-unknown-linux-gnu-0.7.2": "2872fdf4785666575d129ba90590c44e6508e22584735f3e7e8a30d773dfc3db",
"aarch64-unknown-linux-musl-0.7.2": "d5b31df40da794dab943c55e67d14fc111146e185b14a6de6eb749ee264a641c",
"arm-unknown-linux-musleabihf-0.7.2": "fd203cef8c6cd775c2a5f7da31f69a72020a6c74b6fb808db3217ab04b70a038",
"armv7-unknown-linux-gnueabihf-0.7.2": "b69999c29c759f5a47f71c1f328d6e7c489229efa5ce0e84afce026201730abb",
"armv7-unknown-linux-musleabihf-0.7.2": "f98a827e198de2d0a7224ecad87eb64c18c9c0ed4f0c768456e9b48482015d2f",
"i686-pc-windows-msvc-0.7.2": "8b06489b2cc8814fc23dae4562c5e7d500e782c2b0d2556529f515a4d1e0b8e3",
"i686-unknown-linux-gnu-0.7.2": "36f26a496c6dc53703e070761ef96f07acc88eae868f94c4665f5c17a88d8acf",
"i686-unknown-linux-musl-0.7.2": "763bf7cd2119c40858cbd0892fd9b2c7102c79e5c590800b2f8e9c2f427cb7d1",
"powerpc64-unknown-linux-gnu-0.7.2": "bd4a42ed0b9ab725f0cb565ae29c338ea6ce0689ddb35da632535a47c891e72f",
"powerpc64le-unknown-linux-gnu-0.7.2": "9a598869167b7e56ab971614972a2c486c8137681210094009a6fb61ac36699b",
"s390x-unknown-linux-gnu-0.7.2": "7dd2240d60b1628869a2348ca0901cceee572bc20116ab04f9484ea0b6d40813",
"x86_64-apple-darwin-0.7.2": "7d30b59d54900c97c492f3c07ff21cc3387a9e5bd8ca6db2d502462eaaeefd68",
"x86_64-pc-windows-msvc-0.7.2": "35fd793df52fd13773425c9a97cc94cc13c8ee63abec6380b5083c183c688019",
"x86_64-unknown-linux-gnu-0.7.2": "cfaab1b5166a6439ff66f020333d3a12bbdf622deee3b510718283e8f06c9de7",
"x86_64-unknown-linux-musl-0.7.2": "dd10babf6c531597d246c97e55e32ca17b44fe251405fe539ec8ea2f22fac2d6",
"aarch64-apple-darwin-0.7.1": "236d70d7738a5f41b45253d68665fda039fecee579939921e0795680d300f55f",
"aarch64-pc-windows-msvc-0.7.1": "5fdbc703e6f22696ac053811e9750ff3cf50814aabf1792b9bc49f2647b836c6",
"aarch64-unknown-linux-gnu-0.7.1": "ee8a98f485a22837be9e95eb55e4cd06db6c8deba94b6a2dd63d828fb5ef4226",
"aarch64-unknown-linux-musl-0.7.1": "b65409802669913f5fd49ed6656d45c434aa9273fb864aefa0fbbb685b9834b6",
"arm-unknown-linux-musleabihf-0.7.1": "96cfceb7716a9003750111c7f1a62aebccf02e0288f95bc670c69062d2ec6e61",
"armv7-unknown-linux-gnueabihf-0.7.1": "f156bdedd8a969dc49a5e01f6b38c7e50a63cf69acf3b5982adfaf232dfcb80f",
"armv7-unknown-linux-musleabihf-0.7.1": "ae21a9c0b413976a24c51f095603294ca36da9089813022cb9bae0b84f0be6de",
"i686-pc-windows-msvc-0.7.1": "38a98c532e463169e8c4f1ae3649dd500c168f6db687e3b29570930c55ffedf7",
"i686-unknown-linux-gnu-0.7.1": "133a41ae763d8474cc4ff8e0c24ab8cdaf422f261cbcc284f4b90b57aa60f3fe",
"i686-unknown-linux-musl-0.7.1": "6e55fea1ee9a8c5c1d29b3aeb033a8b01d3895a347b27ee108ba94c53d60cfb7",
"powerpc64-unknown-linux-gnu-0.7.1": "cd6714a55577d6eb0ecad313646a4ade3c7a4407e1a2a4703a2fbb83c88681d5",
"powerpc64le-unknown-linux-gnu-0.7.1": "a354eda3a43323cf5445cfdf0197ebd4b36e967df9537e97910c47dcd9321aaa",
"s390x-unknown-linux-gnu-0.7.1": "59d194c544a8a53186c3da6ac26f90ab0f453fae71fd2e0d4d177a8ed8890abb",
"x86_64-apple-darwin-0.7.1": "a81e655cc0b6a5ccf9197f2dc0df513171e68804e498c17076d6e56b41234c5d",
"x86_64-pc-windows-msvc-0.7.1": "b4d48072e384014ecd04ec5c544aee523ead1faaebcd428ba5f6abf2836096df",
"x86_64-unknown-linux-gnu-0.7.1": "cec71afc57276b1857970d6ec96e110989c3e4ed0d81f0c4c11c1231970b7e56",
"x86_64-unknown-linux-musl-0.7.1": "9b714ddf470795d5f1aa5c8111ea153139ae202216ffbe4105fb92f202e0b02b",
"aarch64-apple-darwin-0.7.0": "964ebe641b563920e0650a60bf5ac21e6c8c56557704e5ecfaaad7ff62c3a73c",
"aarch64-pc-windows-msvc-0.7.0": "c00950aa4b243e1043d1ec651fdfd71e5f4e5b80135b30fcf3b70fc201aeb1c4",
"aarch64-unknown-linux-gnu-0.7.0": "540fcb8f2f972c82260a8063a6a4b496d7ff858edc42aa0e2c733a7b55ef8dd8",
"aarch64-unknown-linux-musl-0.7.0": "f6367e288617021aba6176945ba20a7f8ea3b22a5f8896314a7d0acb863b533e",
"arm-unknown-linux-musleabihf-0.7.0": "6fc85b25a4b3cb27b924e1f3181f96197667b7465fe52bf703afb5539d09c09c",
"armv7-unknown-linux-gnueabihf-0.7.0": "035b46fde90a7ee4b48292ff9d116cc771b10d9e955d1979b1a1cd6b3998f602",
"armv7-unknown-linux-musleabihf-0.7.0": "5f43390685fbb9f29d6075df1d492f9bf39cabb868bf37e0da3cd925c679b068",
"i686-pc-windows-msvc-0.7.0": "f045db339b2acecc790d2071598275086978a99262d9c4b0c52189c26cba68a9",
"i686-unknown-linux-gnu-0.7.0": "9936acd12616548a04ce6875aa125ea34f3b288181f2188bfb72d914965680be",
"i686-unknown-linux-musl-0.7.0": "bfad15225152d9fa8769731b35dd53e0b39cba045900b6d43f90e655652af5b8",
"powerpc64-unknown-linux-gnu-0.7.0": "91cfac9b5a9ba844c3ba90944e00bfb79da2983b7c6306bdb054c75ab3fea0fe",
"powerpc64le-unknown-linux-gnu-0.7.0": "d690793c993a1a03049b7e7f3f0e41c94ba2c45b0155bdde917d550ecd4ee02d",
"s390x-unknown-linux-gnu-0.7.0": "429ffee0dddd8c0c59e246fb89bef721d1ed22a4c051925d7dfafcfc7dce464f",
"x86_64-apple-darwin-0.7.0": "dc5037f3ffbf8074b3ee63de7a73aa57421b0da0837a478e26317424dbab16f3",
"x86_64-pc-windows-msvc-0.7.0": "62836c9d6e3f346d06c45fee4109be21ca9d1df8d087472dcc8d51815f182332",
"x86_64-unknown-linux-gnu-0.7.0": "ca1e8196672bf04ccb926519f2071208a8d6c0ce02fb65bc7d0a85be1b684b0f",
"x86_64-unknown-linux-musl-0.7.0": "08e1bb8fdea2c6d5edbe40ab1651de097b884020056c0925a9973582ff669d04",
"aarch64-apple-darwin-0.6.17": "e686c73b9314c77a36a6a4c9f94b07c001f0c9157c50c63c764941141c0d0088",
"aarch64-pc-windows-msvc-0.6.17": "3a9468e90df970f75759da6caed7dfde2816e0f3842031235c3835fc0c4e7d09",
"aarch64-unknown-linux-gnu-0.6.17": "6fb716c36e8ca9cf98b7cb347b0ced41679145837eb22890ee5fa9d8b68ce9f5",
"aarch64-unknown-linux-musl-0.6.17": "98750f5c0cd9eb520799d10649efb18441b616150f07e6c1125f616a3fd137e8",
"arm-unknown-linux-musleabihf-0.6.17": "649d8d0f37e8365af5aaa012b09dd083d6e71018e569a4d2e78316d5013f18a7",
"armv7-unknown-linux-gnueabihf-0.6.17": "efc12955d7a6120ea0be2de5ee03dbb33d0d7d9de9dbe0dce560514f2ee129d3",
"armv7-unknown-linux-musleabihf-0.6.17": "0661d97df8262ef83ccdc6a55ed101abfe8f1cf1ff1be879d9b0d7d1e894c970",
"i686-pc-windows-msvc-0.6.17": "56dea6c98e1606e95445e77177d7e3cd49bb3d1a63c81b11fe49bf733adb62a2",
"i686-unknown-linux-gnu-0.6.17": "4bc37f8303a4a5aae1c309f08166884027f325b6872c418cfbaa2cf20a2b2ac5",
"i686-unknown-linux-musl-0.6.17": "8ec08cca0806a9205ccf5758258c617b57e413b33275bcd861fca363e0eaddf7",
"powerpc64-unknown-linux-gnu-0.6.17": "d33b70ab206e1ed0663e755506a11db3776787012bfe9d2b2138a90942f506be",
"powerpc64le-unknown-linux-gnu-0.6.17": "cd91a579850fc45d3b786a654a2c0343836f007929b2e35de9606082eec5361f",
"s390x-unknown-linux-gnu-0.6.17": "3c753a9d3485bbac23403a0b41a9e70ceeb586f3b4df891ced7ed27d4c6c542b",
"x86_64-apple-darwin-0.6.17": "61e9bdc02aacdb994da6ea2a477b11b34c23fc09203237aeee8d3817daab012d",
"x86_64-pc-windows-msvc-0.6.17": "32882cf98f646cafca003e7a7c471b7ff4ba977b681c9fa3b12cf908ba64af82",
"x86_64-unknown-linux-gnu-0.6.17": "720ec28f7a94aa8cd91d3d57dec1434d64b9ae13d1dd6a25f4c0cdb837ba9cf6",
"x86_64-unknown-linux-musl-0.6.17": "28bd6b50be068cc09d8a46b76f8c4b72271d471c6673a5bdb47793622e62224d",
"aarch64-apple-darwin-0.6.16": "2b1ea0d5cf27375738f5f0f229587bc3590c0f501cb00bc48133a3d122d28364",
"aarch64-pc-windows-msvc-0.6.16": "5abca187b8aecbdffef7547cb39a527168e4cb93d8d2e4ce14271f5831a4d902",
"aarch64-unknown-linux-gnu-0.6.16": "a82f96ab5f285825f9acee6ac1563683c4940d80df2f08549cad43d37c7ba4a7",
"aarch64-unknown-linux-musl-0.6.16": "ae3f793c62fe6ced80483d6c78cb49f06a01088bc5d86f1446a9b5988b2acecc",
"arm-unknown-linux-musleabihf-0.6.16": "91f7f5a4eb97b7983a8e5421d5bfea8802064422ce2f535055f373726eb0aa9a",
"armv7-unknown-linux-gnueabihf-0.6.16": "a4ffe043952bf4e757a5ca0f546bb83b055b6ee0646dd5c4f5e5f13dbc5ee8f8",
"armv7-unknown-linux-musleabihf-0.6.16": "0237c8d9914e0d9fd2f022d6d5f91ce392d13e0ccbb7fa7ebe601296a67c3d6c",
"i686-pc-windows-msvc-0.6.16": "f5c6400f07db2014b2b0c66770e1125fa70efe4dd99cc8351838bed0045c34f8",
"i686-unknown-linux-gnu-0.6.16": "f46f89efcc599a6695e8378a1201e62cd4afb9a4438d65a89098ab11201f84ab",
"i686-unknown-linux-musl-0.6.16": "afe69380a9d3592a87893d6bdc11ff33e4180b98f1e1fd4e626c0307d7598914",
"powerpc64-unknown-linux-gnu-0.6.16": "bf455747580dbbf76cbcf616f67f825c40bd1bdec20c9ff993e03485f9eaad44",
"powerpc64le-unknown-linux-gnu-0.6.16": "508ec561b1740a551d2b33e96671e0e8435a1bcc0e97080f3d7ba88a096bd360",
"s390x-unknown-linux-gnu-0.6.16": "e25c5527826524f51f114388bff47871bf1ca67badbfd72d45427bdba4b46794",
"x86_64-apple-darwin-0.6.16": "ce512b5e40a8ad2916a46df2bdba729d5541e4b3649a09aaddff6e525be012e4",
"x86_64-pc-windows-msvc-0.6.16": "f1b4c24ec602b6c0b06b6bc64aa447bbe4cf313e93fbec326741961e80ffa8b7",
"x86_64-unknown-linux-gnu-0.6.16": "e9ef28b675df68978a60f87192fb8c730b8bfca9bef42b121686b218ea0f6542",
"x86_64-unknown-linux-musl-0.6.16": "25024557931d04cc34f80b818c7547c9c62b762ec6df807e30cb52f383fa2615",
"aarch64-apple-darwin-0.6.15": "1c5b25f75c6438b6910dbc4c6903debe53f31ee14aee55d02243dfe7bf7c9f72",
"aarch64-pc-windows-msvc-0.6.15": "317fe0b29e647aad1e9f02ffe764dcbbc6e2ef189f018c81b673884173ab98ba",
"aarch64-unknown-linux-gnu-0.6.15": "3bf650aec162157b7e01461f41c2a9797366b6043452c6e7035c6c926d0a585b",
"aarch64-unknown-linux-musl-0.6.15": "183cebae8c9d91bbd48219f9006a5c0c41c90a075d6724aec53a7ea0503c665a",
"arm-unknown-linux-musleabihf-0.6.15": "d83c76e130ffb25fb6a4ba8ea5870207d810190733a14ae87084c63a417912f6",
"armv7-unknown-linux-gnueabihf-0.6.15": "d661ec44e5fc7553cd8dd5ad5f48848c5a4d5279ba0df0036c0e2422ec9f312b",
"armv7-unknown-linux-musleabihf-0.6.15": "6fc86a829965362f99602c47627b269c9b676731586a60ca5bb9d6069677938d",
"i686-pc-windows-msvc-0.6.15": "7f15e3377e94fac882b33465cb8cbb24705f5c8d63d9d65c6f1b0816c1d30a0b",
"i686-unknown-linux-gnu-0.6.15": "bfedd03be9f579a9bc10e6c25176017e514cca0500cfb9bba43794387a577661",
"i686-unknown-linux-musl-0.6.15": "82bf8666c0a57514af4e5403f162314b710e1682e1065ab71a845ebb5d8db0b7",
"powerpc64-unknown-linux-gnu-0.6.15": "6e9795344d61ee9ac497d6e03a447d808f2aab13925f30e44c00638abec57deb",
"powerpc64le-unknown-linux-gnu-0.6.15": "e38f13284ed8b645b87ef07c8b549d1f1a5b746aa0411c2115dcd5cda0da13fc",
"s390x-unknown-linux-gnu-0.6.15": "416f61249b330ea9735cda0c866c9460f87111bc9d4e040c98916fda6a45be09",
"x86_64-apple-darwin-0.6.15": "97adf61511c0f6ea42c090443c38d8d71116b78ae626363f9f149924c91ae886",
"x86_64-pc-windows-msvc-0.6.15": "10c75d566db1447f3bdcbcb31d6598e4b5f4ea638be5d8b73a7350929389512b",
"x86_64-unknown-linux-gnu-0.6.15": "85d98ef282cdbfcb4020922f0c12421ecca4130f0a4570d3b827a15ffd544acc",
"x86_64-unknown-linux-musl-0.6.15": "78289c93836cb32b8b24e3216b5b316e7fdf483365de2fc571844d308387e8a4",
"aarch64-apple-darwin-0.6.14": "4ea4731010fbd1bc8e790e07f199f55a5c7c2c732e9b77f85e302b0bee61b756",
"aarch64-pc-windows-msvc-0.6.14": "7b0b3367c4060c9b47b961201ceb4252e97496c890ad1bd13c664bf5b0744d57",
"aarch64-unknown-linux-gnu-0.6.14": "ea25597354af186bdd55aee0de431e16d45d82951a4f41f065a8e4dc27885265",
"aarch64-unknown-linux-musl-0.6.14": "94e22c4be44d205def456427639ca5ca1c1a9e29acc31808a7b28fdd5dcf7f17",
"arm-unknown-linux-musleabihf-0.6.14": "de00f51ff804c145f9a0a13ead54e1ed08d317fac690477312cf9430ed43e62e",
"armv7-unknown-linux-gnueabihf-0.6.14": "d73b09f23c7056b3b5318edf670ebc8d2eac5adfdd4f4ee46796723298f21e18",
"armv7-unknown-linux-musleabihf-0.6.14": "f7844b89c77d1d57ca28a25b6b2e16a5bb3605ccf1dd9dc17ce641a2fa2d8b29",
"i686-pc-windows-msvc-0.6.14": "4e9f9ccc229a03d923213b8b4c7b373cd8bb941984f421de17fe9dac3d5491e9",
"i686-unknown-linux-gnu-0.6.14": "32c967c3dd80ecc9006a30be1a9c8ec77d63aa8080b78787d4ec0f79db12dbe4",
"i686-unknown-linux-musl-0.6.14": "c5a484d15049fd2b8ea9a7bbf0f968614819a7eda769f35c202e01e1904f6458",
"powerpc64-unknown-linux-gnu-0.6.14": "79abdc4c6e566e98067dc4b612f1fca5cb384b964553a0b8e0f5c40885ff3db8",
"powerpc64le-unknown-linux-gnu-0.6.14": "2eae20cf66ba5de1b7ac180458e4f2a889cd705637626e01c400f73f07dd0491",
"s390x-unknown-linux-gnu-0.6.14": "a51f8319b2b334c1392d3927e925b46c62ac584eb35b944d384f0af227cf0f36",
"x86_64-apple-darwin-0.6.14": "1d8ecb2eb3b68fb50e4249dc96ac9d2458dc24068848f04f4c5b42af2fd26552",
"x86_64-pc-windows-msvc-0.6.14": "93b29fc234758e381df461d7638ff73d0f08bdf3a0dc37923b1ee0b9e442ca3f",
"x86_64-unknown-linux-gnu-0.6.14": "0aaf451c391d3913823bfb8ed354b446dcfd0553a32ed8266611e4181c61fd51",
"x86_64-unknown-linux-musl-0.6.14": "0cac4df0cb3457b154f2039ae471e89cd4e15f3bd790bbb3cb0b8b40d940b93e",
"aarch64-apple-darwin-0.6.13": "0ddb8458634cc3a02799b6da839cb546dff9dabc6f3394912c48dd479016683b",
"aarch64-pc-windows-msvc-0.6.13": "3f3d6aa73b4859469fa3ad7efca3e5d0dba1112292c91d5c5f740983f16a8d8a",
"aarch64-unknown-linux-gnu-0.6.13": "ac0c723663ff76183077cc9aa91dcd0b5100081d87f93e1ba482930e0a584e90",
"aarch64-unknown-linux-musl-0.6.13": "379a5c48f6e3eb32c2d16022c0a4fc10cdfcca3543b75e2e9d819d62fead6a75",
"arm-unknown-linux-musleabihf-0.6.13": "ba1f630a299cfdd456b93a8b41e20bd2ad37a86aac884aca4efd722a62a26bb8",
"armv7-unknown-linux-gnueabihf-0.6.13": "1d55eb46510db8f169bb9be6fbd3a6ff34aa52340dff5eda0acdcb1b834e8bee",
"armv7-unknown-linux-musleabihf-0.6.13": "dc86e9d807ac324eed2e4a73fec341618ea288826a27143b8b695565a35f1b70",
"i686-pc-windows-msvc-0.6.13": "08367c3a04cf4da1c3ac6784431421de1efb8584ba68b8017efcd5e889d4a2a2",
"i686-unknown-linux-gnu-0.6.13": "2896a75940761a2ce90a8a650da02d6766de0b9990dfa6a99cd94fd3d1e6c530",
"i686-unknown-linux-musl-0.6.13": "29e64ef33ff2d7dcbbb3167bc7241de3b9d258fb39a6a992dfc847f1b968d32d",
"powerpc64-unknown-linux-gnu-0.6.13": "cdd2ba090ce9e3ed66a94bfe95b45a584bd5b9e45626836993f1279290b1a95e",
"powerpc64le-unknown-linux-gnu-0.6.13": "88830c596ef2a875a0c73aefda48e8398fdafe4eb4acecbee0b44a7995e9dc13",
"s390x-unknown-linux-gnu-0.6.13": "49e494038871006e36b404f0559f1c831b3e68692986b3c67510a675028c9696",
"x86_64-apple-darwin-0.6.13": "ed240854d97f7b234082f5a0ce734869a4310d86d46a819860bbce6d7df8b2eb",
"x86_64-pc-windows-msvc-0.6.13": "19bb08768fd3b8664068cc45faa633ee110bfef4215e560bc1e5833b1bc6c30e",
"x86_64-unknown-linux-gnu-0.6.13": "f6788fd45a25ea1033a671eaa9ece6c9b004ce5c9cf09552effadde567a7d7a5",
"x86_64-unknown-linux-musl-0.6.13": "779560faf6a21b5a6dbc2664c2dfbde2b9387b1f486c9197a9f4d143a3b66875",
"aarch64-apple-darwin-0.6.12": "fab8db5b62da1e945524b8d1a9d4946fcc6d9b77ec0cab423d953e82159967ac",
"aarch64-pc-windows-msvc-0.6.12": "d72d8cf0633dc40198a868e906442bc6bacfa38c3b807c26bcbf3fc364af5d96",
"aarch64-unknown-linux-gnu-0.6.12": "d867553e5ea19f9cea08e564179d909c69ecfce5e7e382099d1844dbf1c9878c",
"aarch64-unknown-linux-musl-0.6.12": "e999ae0679bfabe8a1e6343b8b204a531a6c851e315caff9b326f34182884af6",
"arm-unknown-linux-musleabihf-0.6.12": "da8d0700ec5e0cb0b2f20cc20834b48d5927197042e49bea5eef7fd139d72fe9",
"armv7-unknown-linux-gnueabihf-0.6.12": "b5dedaca5fbb46f412c5426102eec7c9f10003a67dd41b943232e4a2b6a5cc16",
"armv7-unknown-linux-musleabihf-0.6.12": "8fb6c1b16f8b3c2aa4073cd02729432f9afd9389f110850aed8228464fa37398",
"i686-pc-windows-msvc-0.6.12": "23431d1a798aee234bd7b271bce306fbd760c91d98e19a314ddd890a065aff83",
"i686-unknown-linux-gnu-0.6.12": "d0774e847de6c0fe6a9c3aba44b7d400261d01171ae32da60c472eb410691785",
"i686-unknown-linux-musl-0.6.12": "02e4503b244cbb18d2fa14b3a7e9433fe437e767ffcbfc39c5f0fdff9b8dd65e",
"powerpc64-unknown-linux-gnu-0.6.12": "046b43cf8af74d8892e9559e8b3181ec1e4045a4910a4dfdd00b110694c93188",
"powerpc64le-unknown-linux-gnu-0.6.12": "e61ba76fa6dfd6041c985881c024385c31d544d6a182d1a050da7594438f073f",
"s390x-unknown-linux-gnu-0.6.12": "6eae67730009eb4f8ad7a4e5733ab69b6c4dcb21b482f4567015e3e6d0729357",
"x86_64-apple-darwin-0.6.12": "5b6ee08766de11dc49ee9e292333e8b46ef2ceaaa3ebb0388467e114fca2ed8c",
"x86_64-pc-windows-msvc-0.6.12": "30fdf26c209f0cb7c97d3b08a26ab4e78ce5ae0e031b88798cbaccc0f24f452b",
"x86_64-unknown-linux-gnu-0.6.12": "eec3ccf53616e00905279a302bc043451bd96ca71a159a2ac3199452ac914c26",
"x86_64-unknown-linux-musl-0.6.12": "25f055a556576003fefc0f5fd213bf3c6df1824d4c7fc35e6361fbecc420139f",
"aarch64-apple-darwin-0.6.11": "a5b14a92448b908d1a5415f2a49522010fef8972695e2f7bbb4e5c5f88024573",
"aarch64-pc-windows-msvc-0.6.11": "858e523d9498a332aab093852c30c524bbd94622137dd6f773d19da14ac920b4",
"aarch64-unknown-linux-gnu-0.6.11": "5384098938893f060b8b47e606918c271a419b52eedda1546a4d6febae4b0c06",
"aarch64-unknown-linux-musl-0.6.11": "de20c247ef6a6bc0948e611ace3f3f321c098d7bf75b737f169c1db06b4f4d69",
"arm-unknown-linux-musleabihf-0.6.11": "76a1558e2cb8d0e5e646a0cf8a204b53d3779221bea3af50b204c8d28532daa7",
"armv7-unknown-linux-gnueabihf-0.6.11": "5abacc141dabb6071fcc3a19a301874083c6cc4a36d6eb6b0654a276efbfd33b",
"armv7-unknown-linux-musleabihf-0.6.11": "cf05ab1fe44494cc490ec5c29578e200a3c195b395e67fe62d45be9a4c897d06",
"i686-pc-windows-msvc-0.6.11": "331e94f1db12fa92266f764f63586d8c18e6cea5d37d430af2eb7673f108e874",
"i686-unknown-linux-gnu-0.6.11": "b9d193f28736c3166f533c61fc4a2e8e8a4c7961c6bd46e17c3db66f750ef4b6",
"i686-unknown-linux-musl-0.6.11": "dfa735baacc13ba9962fb9b7167599407aa733bfc7853824a785773769c58ed5",
"powerpc64-unknown-linux-gnu-0.6.11": "b79060dc0726a1fc8a4458a80fb1ce0489198dd3ad334fe54bb7926e473750ed",
"powerpc64le-unknown-linux-gnu-0.6.11": "ebd219d0b5f0a60a584ebb88e1379c616e746cabaaf79608d54be5919d742ee3",
"s390x-unknown-linux-gnu-0.6.11": "3b5563127303c16e0531c1fd13356763decc0ea91b860eb5f63c3108a275aa2c",
"x86_64-apple-darwin-0.6.11": "099b163ce5098558ccdc1df54bdcf8b02eb11364458095e95f8dd54ff8984d96",
"x86_64-pc-windows-msvc-0.6.11": "292ade13fc2e1530d0021ec7fd42526df58a8436974b8a5b829685db856e667e",
"x86_64-unknown-linux-gnu-0.6.11": "c19b3be7ac26f8b211f7a5f07f01a77fd4d2b6205ff257790770a585f7f5bda4",
"x86_64-unknown-linux-musl-0.6.11": "23aabfa5d0bde26d151eaf31a392595a5c88e74e0bc804351b02fbb0328f8aaa",
"aarch64-apple-darwin-0.6.10": "82bf2cb3b34ab504eb08486093c9e97cfaf5299da4d4a60e14b6642a2a2e9b8e",
"aarch64-pc-windows-msvc-0.6.10": "afc3c1ed78273843417b781fd30b263ba417dcfd05ef9a65be50eec7aa500f20",
"aarch64-unknown-linux-gnu-0.6.10": "527f0adc3bcf841a3a0df0d3fef8db277b8afffac588d80948638719b611a8c2",
"aarch64-unknown-linux-musl-0.6.10": "36c36aafdf4b2fb8040d0b8db2eaa4b3f44260a689a6e789bc1cd95689e890bc",
"arm-unknown-linux-musleabihf-0.6.10": "abef3136f0da26055368df298f3379bbd0d6776ba7e7a0c12275e403136408d8",
"armv7-unknown-linux-gnueabihf-0.6.10": "8b776d606b3b9566ae659ab8b2c767e771f1f3e2e632b4c634ff80b26796795f",
"armv7-unknown-linux-musleabihf-0.6.10": "d5af6869e1f69753e9ac2b8bacadd6356f84f373b0f6edfda60dc85c194d3a6b",
"i686-pc-windows-msvc-0.6.10": "ff6c580750d6bdbca1cb7c64601ebf0f079cc6d8ab79df6472e5fd61e4f89cf9",
"i686-unknown-linux-gnu-0.6.10": "978e8d7b495251d842250045a3f15c59e9fe148d09538aa322d4c045db632cc3",
"i686-unknown-linux-musl-0.6.10": "432c0609dec5d196f516639de8845fdf9393b4591978a927f6b2bfa92edd0220",
"powerpc64-unknown-linux-gnu-0.6.10": "ec4285062cc4bec8aa7f95efba227c4ee3301503938735902fdd896c3ef8ec7f",
"powerpc64le-unknown-linux-gnu-0.6.10": "d1dcbdd11b133bcce003aa48be6710a56f1c938eff496eb021dbeac8c09b5c2d",
"s390x-unknown-linux-gnu-0.6.10": "4a68f92213c567a8d2bc22ccc10a328f3dd851967f315c517fc1eb52c8f58ed5",
"x86_64-apple-darwin-0.6.10": "ddd27652b1a4053b848e35c348500841a8fde38e8ac2b37233464ab91e8f7788",
"x86_64-pc-windows-msvc-0.6.10": "c41c4f34782558d3263f7a51e4efd053bc4d074dc46fefa574c4fdb2ed0a00e1",
"x86_64-unknown-linux-gnu-0.6.10": "d58885f055fdb726d12cdd1cc54119432a0e4557c8e8ba04ca1d625058b98832",
"x86_64-unknown-linux-musl-0.6.10": "1bdeaa0396405a30c4bff35b2d7c9df832836da50eec132ccc0d92657a336c4c",
"aarch64-apple-darwin-0.6.9": "a6841484affb3c123313df98bcd8932208bdfb3d9d90a72aec274e8a696caa88",
"aarch64-pc-windows-msvc-0.6.9": "bdb7e5eebaa5bb807f2c665b909dbba4bce6f23adf774134924a4a3c6acd4e72",
"aarch64-unknown-linux-gnu-0.6.9": "f5032ad47151c7906c0fb25f7c3b00a85ab0bfed2170cbc444e79c438799095b",
"aarch64-unknown-linux-musl-0.6.9": "4de15999c38a0e57a3708eccb1fe3295b3d1c0c69410029b16e5e42452d232a9",
"arm-unknown-linux-musleabihf-0.6.9": "1a228a1cc86689894c771d0b4635b74708db416c240cfbdc36ddd87c90ae0eb0",
"armv7-unknown-linux-gnueabihf-0.6.9": "a9a307d6b3e6a3500aa0102ff7b03cccebe2a9af40130df97382688574afc637",
"armv7-unknown-linux-musleabihf-0.6.9": "2cf77dcd0e73b323c5f10120452f6ef34191cab3bb8061ee01d5e62706af7493",
"i686-pc-windows-msvc-0.6.9": "709d6d7e6d0e8244b4d51ac9ef0f373d2ac2cb20570e8bdf71c84ccab8c8cba0",
"i686-unknown-linux-gnu-0.6.9": "4000a6fd98af6ed84c9a7c2f06019cab5f4a8cfa4e5a9c37b6984e4c7cae1df2",
"i686-unknown-linux-musl-0.6.9": "d227586d574264922f344cf98b0f469335ce52d3443619d15448140b44ff8204",
"powerpc64-unknown-linux-gnu-0.6.9": "f12b8dbc8ed1ca24dfadbd3969730ab9c2cf797e117cdb508732f49b9fa4b620",
"powerpc64le-unknown-linux-gnu-0.6.9": "451cd936bd35405c1cf2d0b63c975d5490e2646f1516b9bcb27af66688946903",
"s390x-unknown-linux-gnu-0.6.9": "e25ec6762b68383abfbecb1ec24c1eda52a64dc67866021280c649ef3813726f",
"x86_64-apple-darwin-0.6.9": "96eb2bfbe2bb3b74836aa5d6f563ae21bbb9e071148adfda1e67000735a020a3",
"x86_64-pc-windows-msvc-0.6.9": "4d959abc2517c38b5527e3368b6755d66ecbb85679a9b2b34b7a78796c6cf7f8",
"x86_64-unknown-linux-gnu-0.6.9": "001b87a0c2ea642a3c75a98c6af3e8528aa473d560e653cf213efcc9aaa4a028",
"x86_64-unknown-linux-musl-0.6.9": "2b2914da53f9412a1aad7457cee424680da037e6a49c378365c3b5ff5ef0b926",
"aarch64-apple-darwin-0.6.8": "e4f83fc42d9735512198c2d86a6fc136e2f5a2b59b3ccc4f104018ed07465499",
"aarch64-pc-windows-msvc-0.6.8": "5619c7fbc026544c8cc77ade994ef79e799fc521a050268172aa47826f364834",
"aarch64-unknown-linux-gnu-0.6.8": "3ffcaa4f4dba917fa58484a1c3dcb96a958a4baca0204e9c10a4799f81b9ee2f",
"aarch64-unknown-linux-musl-0.6.8": "c1d4504ee47d8577761989c9daa4bbd1b93e5d04056215584a0415ad8738b0f9",
"arm-unknown-linux-musleabihf-0.6.8": "7280cb1425787faf335bed8e9f2d575bcb179e1b19489ee7984c546d6ef07fff",
"armv7-unknown-linux-gnueabihf-0.6.8": "6753d79f3f8e1556a855912f0f859b039b67e591332f6ee794e2c51f2eda1658",
"armv7-unknown-linux-musleabihf-0.6.8": "ba73e8503d3ded103cc1fd946bd307f5b986e096d673296eb616f2edb6cf23aa",
"i686-pc-windows-msvc-0.6.8": "c28ab471753368b79887fd5cbd12b002704fa7fb2e96b0f5a98277e4f1d8572a",
"i686-unknown-linux-gnu-0.6.8": "df60b14b5b6bf29c75c06d8d04b0dd358070bf91f19c6f23afaf738fd05fa271",
"i686-unknown-linux-musl-0.6.8": "b1e92aabb97fa356e8f0d4b61f698e0f372b6a5582df949ffbcc60565e7a9c7a",
"powerpc64-unknown-linux-gnu-0.6.8": "a18998d2f8f426b1ccf1f6c7ec279dd35ccc1cbe76d90b185e453e6b199df245",
"powerpc64le-unknown-linux-gnu-0.6.8": "0d7460fe945a7ed48a9236d50f683a5eb937f22eaa605f4e6eb6a5f9cdf3676e",
"s390x-unknown-linux-gnu-0.6.8": "127a7d547be5029b29532f937822332fed690e135d0a97ec9574d43904a4622a",
"x86_64-apple-darwin-0.6.8": "e069e79f6e0c430d7beaca3025b398980357b8b5c6faa7191032e20d5ee75970",
"x86_64-pc-windows-msvc-0.6.8": "d31c3d01ca3e1a75e15ed9514c135239770b6b40a99cae716661e28e433aa495",
"x86_64-unknown-linux-gnu-0.6.8": "2378ea0122bd56a11ee7ae2ad6116c1f22f4657c03b9efb78ac150236bf7974c",
"x86_64-unknown-linux-musl-0.6.8": "58902317e1872994b5e707c3c77f4cbf3010104d4b07990a5110bbc09f3e9b8a",
"aarch64-apple-darwin-0.6.7": "1a4d04477893c215e3def30149208fabe58a70d031388684d0125f553e3cd74f",
"aarch64-pc-windows-msvc-0.6.7": "1c6de0c79ad35baadb61f6be7a014f3114a320809868b4ccb09c4d16b7118b48",
"aarch64-unknown-linux-gnu-0.6.7": "b64c4ec32d55bd8e8b726b3162be0dfb3c117c3ca4cd798862497d33fe68e7b9",
"aarch64-unknown-linux-musl-0.6.7": "df9e1b9530ad63085b66936e65cca107acc98197856e2ac22b896b1ab3936ac4",
"arm-unknown-linux-musleabihf-0.6.7": "03a4b36d50fe4f0e50845559a524ed75610762072075c411f7ed84479e6c736d",
"armv7-unknown-linux-gnueabihf-0.6.7": "a877f7697375f6b19d3b537c5152cbb3d86430120b20d957cfa7c084e6b79d6c",
"armv7-unknown-linux-musleabihf-0.6.7": "e337a7dd6b86c842dac78041acfa9d9402662d5a8cede1d0ae694c9c17057162",
"i686-pc-windows-msvc-0.6.7": "33002d9f1dab894f48254f43b4b882f6c88078d70ace883ed29fcde82616bbb0",
"i686-unknown-linux-gnu-0.6.7": "b5f04a274f96aa41e8094b1c4355632f6caa9dfb7e62a45908950ca1c5d3fb38",
"i686-unknown-linux-musl-0.6.7": "bd56de94a3ffac99a06fc0d37e7cb45e1c35ba275924b5ed502da833dc712d12",
"powerpc64-unknown-linux-gnu-0.6.7": "57c668908878e1b12c726efc0439cd609697892a22e1e43c0ebb520ef2995a27",
"powerpc64le-unknown-linux-gnu-0.6.7": "abe3004c0fc468e89ddcf8490991c7fc83abc9d9f6e6a29c59473541265e8bd5",
"s390x-unknown-linux-gnu-0.6.7": "b6c60b7b907f871880a9be43294b02f84be5ec3187b1a16d7705f5beb622e01a",
"x86_64-apple-darwin-0.6.7": "680be39f40bf00a8c3a6776e9ddaa9c3c18ef2efbb0c1a9a854b333660ca8678",
"x86_64-pc-windows-msvc-0.6.7": "11b902b07e98331cef0d648c182c6aa1f279cde688c4411eb9153dc957d48f90",
"x86_64-unknown-linux-gnu-0.6.7": "601c2b1147117c4471a154b4cebbdb31c818105f796d5f8115fe42d2526689c8",
"x86_64-unknown-linux-musl-0.6.7": "a31bd6916eff780a7a44c84c194f4f8b70a8250b9175b3839ce2d4403fd735de",
"aarch64-apple-darwin-0.6.6": "d0fb047593122746c7529960f8efd5d7d10d2cb230302f71158e9765ad37727b",
"aarch64-pc-windows-msvc-0.6.6": "6bb6d5a28e8a181fd5b0046778b97a75c3ec1c5117a058e1961e0f6df9ee2925",
"aarch64-unknown-linux-gnu-0.6.6": "37a543598cdb7d8fc9b74e6b1fe1fdf8b9a279c6137c7ff8396a88f69ec7a43c",
"aarch64-unknown-linux-musl-0.6.6": "1f11c12ccfb693a6928c097c6b2ae3caa8e073744661795a6c96c5ffa9358f24",
"arm-unknown-linux-musleabihf-0.6.6": "6cbd68ca3cef4a9a2f0f5c53492d47596494c82df8f1017df144c37a39d13294",
"armv7-unknown-linux-gnueabihf-0.6.6": "97c71ad1f443182b3594ef671624e23f8f7960cb84badbbbda38598457845f83",
"armv7-unknown-linux-musleabihf-0.6.6": "bee1941d59c8703fa143e186db1f335324b1922f38201cd52bfdfe1b29062987",
"i686-pc-windows-msvc-0.6.6": "2231f24bfe6b8729427a5ecccf0339c5feacf96309f62da51c5077f4cfe8954e",
"i686-unknown-linux-gnu-0.6.6": "16667b429a57ee917b10093e81e52956e4c19f9fd73d05dd87c3cbc27779ac7e",
"i686-unknown-linux-musl-0.6.6": "96fab088198ef251facccfdf3850139720249f673c937cf6cc21642f54f19894",
"powerpc64-unknown-linux-gnu-0.6.6": "564d1207601cdb3a3684f7d3ac31bf40436ac6912df7de340216b30a2e94ca44",
"powerpc64le-unknown-linux-gnu-0.6.6": "c2aa7d2686b1f5943a562488153141f9690acfa59d6fdb01a2272019dc4f94dd",
"s390x-unknown-linux-gnu-0.6.6": "fe7a1425620325b6063bf8b5c008846bc0ef7c867e7a155049adf5d9c356db2d",
"x86_64-apple-darwin-0.6.6": "c584b85e81df8d8ae8142876b80ae977e41c6bba14c57cc1061b6a87f361ad2e",
"x86_64-pc-windows-msvc-0.6.6": "72d7866fac1a9f5e895ec632a0b8a98ea59627cb2c3b8e68af4fec899ee4b43b",
"x86_64-unknown-linux-gnu-0.6.6": "4c3426c4919d9f44633ab9884827fa1ad64ad8d993516d636eb955a3835c4a8c",
"x86_64-unknown-linux-musl-0.6.6": "bcc30541d54156d434a74d6070a44c333263edc65ea423d3039cb8112ed78c95",
"aarch64-apple-darwin-0.6.5": "4952c6275778fbc7e5cf6b5739ffd944c47063134d6ea43a7037b0a028ef771e",
"aarch64-pc-windows-msvc-0.6.5": "2af20abb3a289d57ae6a8f34ec9f6a60276947fdfb80de6d7304a1b49242cc64",
"aarch64-unknown-linux-gnu-0.6.5": "ebf0707ab949b948ad14250ed93f968fec954e20d12ce6bc9fce74b0ce7e4900",
"aarch64-unknown-linux-musl-0.6.5": "8e3eae9802c443f87f7519518c9900a323e95a54e47f89433452287d9d2e9d13",
"arm-unknown-linux-musleabihf-0.6.5": "85caa3c874d98ae5cb981d13e127602c2063d69874b8fd18ca0d1083805a04b1",
"armv7-unknown-linux-gnueabihf-0.6.5": "184051f8cceccaafee109787f5c8f5788ed6e619ad65edc98779a96b3a8782c2",
"armv7-unknown-linux-musleabihf-0.6.5": "86c7f7dcd0197c131ecce8f3c34807470753c145e1570cec5f0836e34481af9d",
"i686-pc-windows-msvc-0.6.5": "65dac0af6d2f143736e83fe17f5b52546686fa000fb2f1f89dbb26d1c96183db",
"i686-unknown-linux-gnu-0.6.5": "beb346c6a869d6e742de8a797fa7c2a489c6cbc3127387e08a9106a944f56dc2",
"i686-unknown-linux-musl-0.6.5": "5a254d1f0dc92e00c3f2a9c97f27a1adb1261f841e08f1ed3e4f03dcf45b7c12",
"powerpc64-unknown-linux-gnu-0.6.5": "1f8fd8dde91258380dbcd4b9fc65f15a7dc3af6cfffefb9a4f99d32c4c67436d",
"powerpc64le-unknown-linux-gnu-0.6.5": "d2b6e19ca7ecd8d7e0d1ddced965aa91a3c822d07a7f7657743945245c1f627a",
"s390x-unknown-linux-gnu-0.6.5": "43a3e39f19fd5d098bb8c896b6c0f99a146253c271d78409cf31c2f55f2763d0",
"x86_64-apple-darwin-0.6.5": "d336d862694e1c36afea55eb15f5df02aa77c04a168b781df515d641e23285f0",
"x86_64-pc-windows-msvc-0.6.5": "a3e9f0913189c38b804bf6bb3d348af305a8ceabc690be92b6e111245a821640",
"x86_64-unknown-linux-gnu-0.6.5": "8fc9895719a1291ecd193cb86f9282ff3649cef797d29eacc74c4f573aab1e2f",
"x86_64-unknown-linux-musl-0.6.5": "ed4830b7b6293b9413618970b84dad7bc9245f4a7dfa741f943afdb647c196c4",
"aarch64-apple-darwin-0.6.4": "1497302e13b33188d6ea4b255520e72f4b9ca9a2c5e9ad30b7bc919e5a0b1071",
"aarch64-pc-windows-msvc-0.6.4": "92d18fec3da41dd759ff5c05074445def51d30a325cee0e94d4539fbaabae795",
"aarch64-unknown-linux-gnu-0.6.4": "4c78928aa92170bb1c68245da3a5ce0c051e185b7cb6356c33909f94f033ae84",
"aarch64-unknown-linux-musl-0.6.4": "fec5583459f22a26eab91aa32cb922cdb7bd72826b3e23c6c164c3814126f462",
"arm-unknown-linux-musleabihf-0.6.4": "e9e1ef68e6b316b47a5ee48a48e5b28898a351fb588f0944666b004fa5baed2c",
"armv7-unknown-linux-gnueabihf-0.6.4": "65df00771f9d4928853ecb5a627745edc829af3ee1339171c2f53f2afa935323",
"armv7-unknown-linux-musleabihf-0.6.4": "f963d53f99ddcf5281b79545cf905dc66a6b25a4a5dcdefaecefd42a63710b88",
"i686-pc-windows-msvc-0.6.4": "ecdb47abb3fc29511a2adc9df0407fe604371c6518cd2861235c8aa178928941",
"i686-unknown-linux-gnu-0.6.4": "7e8c9c6d1b1c9f43eb50a634742f03c34d87a94d8155d2602f1f23c2c6cbfc22",
"i686-unknown-linux-musl-0.6.4": "f3985d87a510c1fded1c8de25c6e70bcc2039e587f17efc5ab328b20c956b224",
"powerpc64-unknown-linux-gnu-0.6.4": "81d3430b221d57070af86cdd868d766316266515fa49aa61c660ff1d61e5fa78",
"powerpc64le-unknown-linux-gnu-0.6.4": "c8aba58a91854645ee41deeb9b0223c5218231c4d03b5b9cbe17f2ddd2f62358",
"s390x-unknown-linux-gnu-0.6.4": "a73197566e1b706a6ca0427556b6d4732185eb6d621f0730d70c165ee5b1395e",
"x86_64-apple-darwin-0.6.4": "af09c768697edd009ac1af66eaea35bbd29f145bd9c2c02b8f93309e23670b4f",
"x86_64-pc-windows-msvc-0.6.4": "4526b772f5d9b0afdd61a780ab649730d125e0a56348daa7463ee44c0c5e5762",
"x86_64-unknown-linux-gnu-0.6.4": "ed38cde84d822c1878c484e560e28c157a1c025204151efa60aa46831500f4d6",
"x86_64-unknown-linux-musl-0.6.4": "1b04edff73d7d7f837b9d6a36a556fe2feb59cc9f747c4fcd01f76c886dd3579",
"aarch64-apple-darwin-0.6.3": "51b84818bbfe08358a298ba3389c6d448d3ddc0f2601a2d63c5a62cb7b704062",
"aarch64-pc-windows-msvc-0.6.3": "ec3561ca86328aa351919de2d5208f6761a58d42a2e0e50e1d1d80d10039756a",
"aarch64-unknown-linux-gnu-0.6.3": "447726788204106ffd8ecc59396fccc75fae7aca998555265b5ea6950b00160c",
"aarch64-unknown-linux-musl-0.6.3": "2bb44c9fb8a13e244d502a577d6c32669b680941c996c35524817971e6e56460",
"arm-unknown-linux-musleabihf-0.6.3": "d1e508cdbb4b479c496d6a50febe4b0f0159ef1d0693d09d274c119471545aea",
"armv7-unknown-linux-gnueabihf-0.6.3": "d067b079991909b3f76279c048c57470aaa2d0fcf1ce3307b7f15fec88b7a99d",
"armv7-unknown-linux-musleabihf-0.6.3": "82c7b7aca1855f285db509ae3c957f9b1ca5e3eaa77ecbd80da8349fe0a6491e",
"i686-pc-windows-msvc-0.6.3": "83173da302701020c44cefdab5d127e5cde9e4333ca7e7cbefc03e39908b7a39",
"i686-unknown-linux-gnu-0.6.3": "7c044bd2db0690cce49b0613abf01daaeb6fb829737ef9ec7978191f218e1542",
"i686-unknown-linux-musl-0.6.3": "a3401dd97c1ee55c1def00c5b98419087da2fd0ce81a74df1cf268a95b338998",
"powerpc64-unknown-linux-gnu-0.6.3": "6023103b5d761da0e06c70a95197476796ba68ed3f6849529c89d603609a82d5",
"powerpc64le-unknown-linux-gnu-0.6.3": "e41eec560bd166f5bd155772ef120ec7220a80dcb4b70e71d8f4781276c5d102",
"s390x-unknown-linux-gnu-0.6.3": "2c3c03d95c20adb2e521efaeddf6f9947c427c5e8140e38585595f3c947cebed",
"x86_64-apple-darwin-0.6.3": "a675d2d0fcf533f89f4b584bfa8ee3173a1ffbc87d9d1d48fcc3abb8c55d946d",
"x86_64-pc-windows-msvc-0.6.3": "40b50b3da3cf74dc5717802acd076b4669b6d7d2c91c4482875b4e5e46c62ba3",
"x86_64-unknown-linux-gnu-0.6.3": "b7a37a33d62cb7672716c695226450231e8c02a8eb2b468fa61cd28a8f86eab2",
"x86_64-unknown-linux-musl-0.6.3": "7c77a5bc7c5fc56becf266c2ea8dae1e0fd4f9fe2c510110d097ad9066cacfb1",
"aarch64-apple-darwin-0.6.2": "4af802a1216053650dd82eee85ea4241994f432937d41c8b0bc90f2639e6ae14",
"aarch64-pc-windows-msvc-0.6.2": "02299bd78e4fbd2850532710c52a92368601f77654e3c6c342c651d75e6ca1f6",
"aarch64-unknown-linux-gnu-0.6.2": "ca4c08724764a2b6c8f2173c4e3ca9dcde0d9d328e73b4d725cfb6b17a925eed",
"aarch64-unknown-linux-musl-0.6.2": "9a90ef4761d75ee1a5158cc2fbd787c78dcfb1c12532a00a3c13b915db720c2e",
"arm-unknown-linux-musleabihf-0.6.2": "f3643b8b67d6f711876a5682d4607b4a31e6e2935b4ccb35d7a98ec067b944d9",
"armv7-unknown-linux-gnueabihf-0.6.2": "79a0df9c7e1df089722ff5338c7766e2437a2d3e40b4e232c72be4a4e9e3a7b9",
"armv7-unknown-linux-musleabihf-0.6.2": "6aff9c4d54a1466be66234a754181f6e48501ac206d02dd5cf5e81df4c9efbfd",
"i686-pc-windows-msvc-0.6.2": "29e46887292d4d645cb941731bfbc688fc1689255f9898b25e6b1c96bf1b954c",
"i686-unknown-linux-gnu-0.6.2": "66301b549ea0e8e6960dc6d1eb7b9dcf5fc8d8913f2bb480434918af25f1c6c4",
"i686-unknown-linux-musl-0.6.2": "b85ec115f14ca15418db3540c597e13a970546df49a85c1905c16286b86eb471",
"powerpc64-unknown-linux-gnu-0.6.2": "de17553549280fd877452dd1f7f9d0a604e3544bfad007b8ec0b9943f103796f",
"powerpc64le-unknown-linux-gnu-0.6.2": "f341fd4874d2d007135626a0657d1478f331a78991d8a1a06aaa0d52fbe16183",
"s390x-unknown-linux-gnu-0.6.2": "17fd89bd8de75da9c91baf918b8079c1f1f92bb6a398f0cfbc5ddefe0c7f0ee5",
"x86_64-apple-darwin-0.6.2": "2b9e78b2562aea93f13e42df1177cb07c59a4d4f1c8ff8907d0c31f3a5e5e8db",
"x86_64-pc-windows-msvc-0.6.2": "5f33c3cc5c183775cc51b3e661a0d2ce31142d32a50406a67c7ad0321fc841d9",
"x86_64-unknown-linux-gnu-0.6.2": "37ea31f099678a3bee56f8a757d73551aad43f8025d377a8dde80dd946c1b7f2",
"x86_64-unknown-linux-musl-0.6.2": "fcd01693df76379be5bc325efa43c644cf0704a2e720ccd6695f41ded09934d7",
"aarch64-apple-darwin-0.6.1": "90e10cc7f26cbaf3eaa867cf99344ffd550e942fd4b660e88f2f91c23022dc5a",
"aarch64-pc-windows-msvc-0.6.1": "a9bce4582ec8dcc93e19e94b4d7ab653b378a68da1a7e72f5ea82ddd2d42fb44",
"aarch64-unknown-linux-gnu-0.6.1": "f355989fb5ecf47c9f9087a0b21e2ee7d7c802bc3d0cf6edae07560d4297751f",
"aarch64-unknown-linux-musl-0.6.1": "6455886f9aef3392df0af630dee9df892787fdffda0f0800245f86a735bd810d",
"arm-unknown-linux-musleabihf-0.6.1": "4bbd397391134dbfedebb938d40845573eafe6dfd1e8e1882e89c21de702104e",
"armv7-unknown-linux-gnueabihf-0.6.1": "811e19387997ac14f1b775c3e975a7d560c93f866eb5fd2955132f9718445a0a",
"armv7-unknown-linux-musleabihf-0.6.1": "a2022883913d55c0913001869f64208b8b3244ec6286c9e097ad9563b9f747b9",
"i686-pc-windows-msvc-0.6.1": "920e08d6d649a414981c2c1814746fcb0a10f25e2c65e359abf534212e1f0c8c",
"i686-unknown-linux-gnu-0.6.1": "943a9a4637151d9f950de65725b28f0dfe3f73e7ad5b2b9ab35392cbc44b3cec",
"i686-unknown-linux-musl-0.6.1": "63d269c67e7da4f645cd6be593b55e2f0e84a9bb7cf2d45faca791c27c5f9f66",
"powerpc64-unknown-linux-gnu-0.6.1": "8775b00b1c44a7400e8a8d5238efc5ecc636f62ed8e865bd612486c67c6272b3",
"powerpc64le-unknown-linux-gnu-0.6.1": "becf4913112c475b2713df01a8c0536b38dc2c48f04b1d603cd6f0a74f88caa2",
"s390x-unknown-linux-gnu-0.6.1": "ee687d56ba1e359a7a2e20e301b992b83882df5ffb1409d301e1b0d21b3fa16a",
"x86_64-apple-darwin-0.6.1": "d8609b53f280d5e784a7586bf7a3fd90c557656af109cee8572b24a0c1443191",
"x86_64-pc-windows-msvc-0.6.1": "32de1730597db0a7c5f34e2257ab491b660374b22c016c3d9a59ae279d837697",
"x86_64-unknown-linux-gnu-0.6.1": "0dcad9831d3f10f3bc4dcd7678948dfc74c0b3ab3f07aa684eb9e5135b971a58",
"x86_64-unknown-linux-musl-0.6.1": "143dba84867f72107048e1f95be8f894d59f456e018a34276d9d2d6bacdf8f99",
"aarch64-apple-darwin-0.6.0": "ff4f1ec24a3adb3dd251f9523e4b7a7cba379e9896ae6ed1efa163fcdcd6af8a",
"aarch64-pc-windows-msvc-0.6.0": "c29a1bfcc3070a3a4834b9aa8e290f25e82e7b2a1d25cdbae3418fb8b72c2b0b",
"aarch64-unknown-linux-gnu-0.6.0": "47fa7ada7352f69a5efd19628b86b83c0bbda34541de3a4254ba75a188414953",
"aarch64-unknown-linux-musl-0.6.0": "92b105bb9253a6123a0f8a8412aec9d05b162bf529cbe60fcad75a71a9a43d3f",
"arm-unknown-linux-musleabihf-0.6.0": "a36895e6bde3bb0a74f2d61230332bd8f2cb60984e86bbbc69e9b2e742e1b971",
"armv7-unknown-linux-gnueabihf-0.6.0": "01cbd440e41eb9fff4e372a534706156fefefe34ac44d6eb9b8abc7d5739b0fd",
"armv7-unknown-linux-musleabihf-0.6.0": "62424a2b18a7b4a7cd62912d7cd952a74f755e6b46e46c9bae6029f4b3f2f2cf",
"i686-pc-windows-msvc-0.6.0": "40422491d697c2da3f30c2b00b5fbfbe5075e33dd64956137959a6536b851213",
"i686-unknown-linux-gnu-0.6.0": "22ee5cacb0139b065e219e43db84f4f21ea2a316f7341b245786d2f3e748488d",
"i686-unknown-linux-musl-0.6.0": "1ab5f3ea0e809c5390dbda97558d4176efcbe7e3eb5166eb2c61a41991d7c4f9",
"powerpc64-unknown-linux-gnu-0.6.0": "b99ba184663eecbd1197d60c3120b5451879009b69e900eed83b8dd5f9b568ec",
"powerpc64le-unknown-linux-gnu-0.6.0": "d782751a6ec8a0775aa57087275225b6562a115004c1f41935bec1609765508d",
"s390x-unknown-linux-gnu-0.6.0": "664f4165767a0cd808d1784d1d70243da4789024ec5cd779a861201b54a479b7",
"x86_64-apple-darwin-0.6.0": "530ef3b6f563448e8e017a8cd6693d6c72c146fb0a3c43440bb0e93fcf36264f",
"x86_64-pc-windows-msvc-0.6.0": "65836dae55d3a63e5fc1d51ae52e6ea175aaab1c82c4a6660d46462b27d19c2a",
"x86_64-unknown-linux-gnu-0.6.0": "1a26ce241f7ff1f52634d869f86db533fffba21e528597029ee9d1423bf3df18",
"x86_64-unknown-linux-musl-0.6.0": "ac2331cda152aa71fed700c7b1ceec4a0662185e65f544b3c3a607be53f856f0",
"aarch64-apple-darwin-0.5.31": "396c9bd6acd98466fdb585da2ed040eecea15228e580d4bd649c09215b490bf9",
"aarch64-pc-windows-msvc-0.5.31": "e1c862e67f03f11ff5d359d4b1afa9f624bd52489d09ffb6efcc1c5c743674bc",
"aarch64-unknown-linux-gnu-0.5.31": "e7f358efb0718bd8f98dc0c29fd0902323b590381ca765537063a2ca23ed34c7",
"aarch64-unknown-linux-musl-0.5.31": "7a49b56be133a756b8ef589beef33f70176a7ce796e118de2911bdae0ffb9a56",
"arm-unknown-linux-musleabihf-0.5.31": "2ad1f334295c3ce92c5fd7c3fa9121ffd4569b6db1846c1ecbb6a2007041d09f",
"armv7-unknown-linux-gnueabihf-0.5.31": "78270187aebe5f37fdff184f65e8aa537fd9a06cb5d5119f59c6dd7badcf95ef",
"armv7-unknown-linux-musleabihf-0.5.31": "329dba251b81dcc840f261148d6466442b23bad54d75f1a21d5005c9c4d04aa0",
"i686-pc-windows-msvc-0.5.31": "3860cbf6115f7af85cdf9e83ba1a9ee2bc6cf4da750825014a999738ba6950dd",
"i686-unknown-linux-gnu-0.5.31": "4347e44f076448a8b37140a762845d65831819c21f1b6b1da4706640b82d3e4a",
"i686-unknown-linux-musl-0.5.31": "54365460d1dbed67a6106ece17ec50900f1209ec1543172364696e7694c7b64c",
"powerpc64-unknown-linux-gnu-0.5.31": "1263a21ef5f72d48d03b7051b69102d7addcb647af2e5182b5e6c5313d8ffd48",
"powerpc64le-unknown-linux-gnu-0.5.31": "e292dc0a7b23fab01bbf2b6fdddf8bb0c531805b1dbc3905637af70a88ff1f5f",
"s390x-unknown-linux-gnu-0.5.31": "66232646bd15a38cf6877c6af6bf8668fadb2af910d7cf7a1159885487a15e70",
"x86_64-apple-darwin-0.5.31": "5316b82da14fab9a76b3521c901e7c0a7d641fb9d28eb07874e26a00b0ac2725",
"x86_64-pc-windows-msvc-0.5.31": "1ad54dace424c259b603ecd36262cb235af2bc8d6f280e24063d57919545f593",
"x86_64-unknown-linux-gnu-0.5.31": "017ce7ed02c967f1b0489f09162e19ee3df4586a44e681211d16206e007fce62",
"x86_64-unknown-linux-musl-0.5.31": "b0642eedb1704371f0cf533e2103ebcaebed59e043c71a70c8fa4a971d2032ab",
"aarch64-apple-darwin-0.5.30": "654c3e010c9c53b024fa752d08b949e0f80f10ec4e3a1acea9437a1d127a1053",
"aarch64-pc-windows-msvc-0.5.30": "aa5331546935864fe0c627fc22f4ffc60cd2d24ec17900780e95e11436d544a8",
"aarch64-unknown-linux-gnu-0.5.30": "d1ea4a2299768b2c8263db0abd8ea0de3b8052a34a51f5cf73094051456d4de2",
"aarch64-unknown-linux-musl-0.5.30": "e9b51e591a852a5bc432df3411acaf2c03efd5c8a1ea4280e356881a0c689d31",
"arm-unknown-linux-musleabihf-0.5.30": "d143460c27df2b8bcafe8a548eb90fb8000a97921754f13a45cb675d04d366f8",
"armv7-unknown-linux-gnueabihf-0.5.30": "3d1953151a534e0cbe3c2094e5165a419e75f1ae32444748c5cd69bcfb9906c0",
"armv7-unknown-linux-musleabihf-0.5.30": "4ef3aee22dc8feb9665df4339d4689c1262a26d36d34c7c543e0caa31eb8f45b",
"i686-pc-windows-msvc-0.5.30": "3389683ab13451b628cfd95ca5bf56fd7137300af5903180d60eed35c4cbfb82",
"i686-unknown-linux-gnu-0.5.30": "3ebb74ae2326030c93972f4c1b5e77a17b29bd191349b6244e41e70bb98d8507",
"i686-unknown-linux-musl-0.5.30": "bc590e89243cf7688709ba39822d0acaee394dc0b4781eef044af411e6ac26af",
"powerpc64-unknown-linux-gnu-0.5.30": "e289eae011dec0fa5d00133c17efde5e427237e876bfb0e1e27146e45959fc26",
"powerpc64le-unknown-linux-gnu-0.5.30": "b10ba261377f89e598322f3329beeada6b868119581e2a7294e7585351d3733f",
"s390x-unknown-linux-gnu-0.5.30": "7341e6d62b0e02fbd33fe6ce0158e9f68617f43e5ec42fc6904d246bda5f6d34",
"x86_64-apple-darwin-0.5.30": "42c4a5d3611928613342958652ab16943d05980b1ab5057bb47e4283ef7e890d",
"x86_64-pc-windows-msvc-0.5.30": "43d6b97d2e283f6509a9199fd32411d67a64d5b5dca3e6e63e45ec2faec68f73",
"x86_64-unknown-linux-gnu-0.5.30": "9d82816c14c44054f0c679f2bcaecfd910c75f207e08874085cb27b482f17776",
"x86_64-unknown-linux-musl-0.5.30": "7cc79871e5fcd2678474d756bfc32c6c3d28e136963dda10902c516fab67fa2d",
"aarch64-apple-darwin-0.5.29": "c89e96bde40402cc4db2f59bcb886882ab69e557235279283a2db9dea61135c3",
"aarch64-pc-windows-msvc-0.5.29": "172509e9824b925082612f19ab0e030e08108033d7e5c10e67ede69b3bf290d8",
"aarch64-unknown-linux-gnu-0.5.29": "d1f716e8362d7da654a154b8331054a987c1fc16562bd719190a42458e945785",
"aarch64-unknown-linux-musl-0.5.29": "3f2d03e62b951a3e46e9c1cfae3091235c05ff274c7163162b8726fb56133219",
"arm-unknown-linux-musleabihf-0.5.29": "5ee7d5e95f93434845c1e14740c5e957f8747b751af054996f45a9095426a496",
"armv7-unknown-linux-gnueabihf-0.5.29": "98b88f2bc2905241ff460529a9d24cdaa70e8b31c573ba07240eb4a163e7fa3d",
"armv7-unknown-linux-musleabihf-0.5.29": "95f148fb44c71f817d0f9c7e14591f1364c7da62a3cb9d353a0e45b4332031d3",
"i686-pc-windows-msvc-0.5.29": "e35c4bba6af151e3a952629c7054b0f6d901c83aa7a3a21aedc3880424790294",
"i686-unknown-linux-gnu-0.5.29": "9e81a4f621500d161ae810a7f68a25a8bfc141d172267a36c19cf491c5bf8fa7",
"i686-unknown-linux-musl-0.5.29": "07b4f43a4c561120cd5951c5aa49ad0aa2a1c1ebce870f533f06fa0e0a8ece4f",
"powerpc64-unknown-linux-gnu-0.5.29": "0eae3ece0811815cbed9619995486a2d4ba4df47abe3f7fcc27153eff9c5a655",
"powerpc64le-unknown-linux-gnu-0.5.29": "0e38436e4068eec23498f88a5c1b721411986e6a983f243680a60b716b7c301c",
"s390x-unknown-linux-gnu-0.5.29": "6a42886dd10c6437a1a56982cd0c116d063f05483aa7db1cc0343f705ef96f91",
"x86_64-apple-darwin-0.5.29": "2f13ef5a82b91ba137fd6441f478c406a0a8b0df41e9573d1e61551a1de5a3a2",
"x86_64-pc-windows-msvc-0.5.29": "2453b17df889822a5b8dcd3467dd6b75a410d61f5e6504362e3852fb3175c19c",
"x86_64-unknown-linux-gnu-0.5.29": "46d3fcf04d64be42bded914d648657cd62d968172604e3aaf8386142c09d2317",
"x86_64-unknown-linux-musl-0.5.29": "bb06a385a918b7b8d927ef08e283843b66005dfccf0a940bfd0882f22cbc1a7f",
"aarch64-apple-darwin-0.5.28": "57cbf655a5bc5c1ffa7315c0b25ff342f44a919fa099311c0d994914011b421e",
"aarch64-pc-windows-msvc-0.5.28": "76bb4fe97c78f5de294614cb36294a3204e57117d8ce2f826bf1b8fd28d770ef",
"aarch64-unknown-linux-gnu-0.5.28": "fe3c481940c5542d034a863239f23d64ee45abcd636c480c1ea0f34469a66c86",
"aarch64-unknown-linux-musl-0.5.28": "d2f622ffbb129c9368a147672e79f9b7c8e33c4ac0bbba6510c7e92d699d7fb3",
"arm-unknown-linux-musleabihf-0.5.28": "0bf8b33107e58d15065bce5fd29d24de7b4401ddcaf6791840568876f1247f46",
"armv7-unknown-linux-gnueabihf-0.5.28": "6a3ceb156b6ced721792ffa1d9d4fd35a28167960cd5b1847bfd39fd1d2d59bf",
"armv7-unknown-linux-musleabihf-0.5.28": "29dec32b29a5f4736f0062ff47aade2c922e08922241783e7af4aba0639658cc",
"i686-pc-windows-msvc-0.5.28": "7ff2b7bde705cdca7f6fe6aec9e7047b47e09bf97be9c5ff597ff6e19a369544",
"i686-unknown-linux-gnu-0.5.28": "27ff0f4d1ce96b5abe5113e3033e48a16d588c2e855439f0d8fbc59b75c041de",
"i686-unknown-linux-musl-0.5.28": "0f72a1c8321d05dbfc3382d28e7bb9f83079198fd5b16c25560b0f66b6a6a8c7",
"powerpc64-unknown-linux-gnu-0.5.28": "caf37897a6a3734a706f2d5ffb2c7953f37e903b6a34d02300fbf96f77a44b82",
"powerpc64le-unknown-linux-gnu-0.5.28": "74bc6aacea26c67305910bcbe4b6178b96fefe643b2002567cc094ad2c209ef1",
"s390x-unknown-linux-gnu-0.5.28": "b3f49b0268ab971ff7f39ca924fb8291ce3d8ffe8f6c0d7ff16bc12055cd1e85",
"x86_64-apple-darwin-0.5.28": "36484907ec1988f1553bdc7de659d8bc0b46b8eaca09b0f67359b116caac170d",
"x86_64-pc-windows-msvc-0.5.28": "31053741c49624726d5ce8cb1ab8f5fc267ed0333ab8257450bd71a7c2a68d05",
"x86_64-unknown-linux-gnu-0.5.28": "1f2a654627e02fed5f8b883592439b842e74d98091bbafe9e71c7101f4f97d74",
"x86_64-unknown-linux-musl-0.5.28": "9ca7e51c8ea414aa1a275d12956676da1064e0a1cbf8d5b39b15c45d923a09c3",
"aarch64-apple-darwin-0.5.27": "efe367393fc02b8e8609c38bce78d743261d7fc885e5eabfbd08ce881816aea3",
"aarch64-pc-windows-msvc-0.5.27": "5b652867d6dc42946953d786aa1e466e9fbcd877a48d4c18f56c26801abb486b",
"aarch64-unknown-linux-gnu-0.5.27": "7b8175e7370056efa6e8f4c8fec854f3a026c0ecda628694f5200fdf666167fa",
"aarch64-unknown-linux-musl-0.5.27": "5df998660ed17555679c7a6b43b25f1c4d76d76b6062d31491663960804060d5",
"arm-unknown-linux-musleabihf-0.5.27": "d80200d7c0c3ef32b2e938872726de29128a3b9bc080038fb3fc6f2eedbf1f34",
"armv7-unknown-linux-gnueabihf-0.5.27": "3fa94262b12268c7b9b91ed0ea739752e0c63ef2105396122faa93cd5bbdae8c",
"armv7-unknown-linux-musleabihf-0.5.27": "86e688ced31f6322d6b4dc544453ba02021685e553995c2c72eb41f82fd2662b",
"i686-pc-windows-msvc-0.5.27": "0158534490ba4b4cf64716116d73220f019688a22a1eba78535d9d95e918ec71",
"i686-unknown-linux-gnu-0.5.27": "66b6128cd9b745a312bc81d6d3fedf02850acdf96dfca53ab5a3d11ddb1fe083",
"i686-unknown-linux-musl-0.5.27": "8e95b813f804e8670aed79608778582b3f64dcf468ec185e49f5188505c3edf6",
"powerpc64-unknown-linux-gnu-0.5.27": "1a129dbc27566be04ce68f5bc10a626954abe7651b35ce73d8a24b2e7a89ffe1",
"powerpc64le-unknown-linux-gnu-0.5.27": "b63051bdd5392fa6a3d8d98c661b395c62a2a05a0e96ae877047c4c7be1b92ff",
"s390x-unknown-linux-gnu-0.5.27": "07377ed611dbf1548f06b65ad6d2bb84f3ff1ccce936ba972d7b7f5492e47d30",
"x86_64-apple-darwin-0.5.27": "a75c9d77c90c4ac367690134cd471108c09b95226c62cd6422ca0db8bbea2197",
"x86_64-pc-windows-msvc-0.5.27": "195d43f6578c33838523bf4f3c80d690914496592b2946bda8598b8500e744f6",
"x86_64-unknown-linux-gnu-0.5.27": "27261ddf7654d4f34ed4600348415e0c30de2a307cc6eff6a671a849263b2dcf",
"x86_64-unknown-linux-musl-0.5.27": "94cb0a392e5cfb82068476462e6c06e19745ea9e74fc828187f6809d97b529b4",
"aarch64-apple-darwin-0.5.26": "3b503c630dc65b991502e1d9fe0ffc410ae50c503e8df6d4900f23b9ad436366",
"aarch64-pc-windows-msvc-0.5.26": "3319e6f4506fdb2e3d8791bae05995f0aeda947ee87e373c17a699fb39165e3d",
"aarch64-unknown-linux-gnu-0.5.26": "6ce061c2f14bf2f0b12c2b7a0f80c65408bf2dcee9743c4fc4ec1f30b85ecb98",
"aarch64-unknown-linux-musl-0.5.26": "42ce9a728ecd054268ba5a621002385e79ea10ba4546a8a6a695f430902029f5",
"arm-unknown-linux-musleabihf-0.5.26": "87b8a2af3b9784a6b7ab5ddb2fff0c505bbccaae0a457f6b228257ed23adfed0",
"armv7-unknown-linux-gnueabihf-0.5.26": "c311f89e6d23a9bd7d2f62e225d6b54a8fc85889f3519219f3308ea7eb687871",
"armv7-unknown-linux-musleabihf-0.5.26": "0e4d68538847637c376f51d962796e9336c9ccbcccdfad547e3458cd7cf1a70e",
"i686-pc-windows-msvc-0.5.26": "ecf2858d13ba0cbe1b82cc10e9b0538309ee53a7c18f71e8afcc56b1e5e909e0",
"i686-unknown-linux-gnu-0.5.26": "833199e00a8187468c49dd315e041dbaf30e6e6340e65dd3df0c5aec8605c3d8",
"i686-unknown-linux-musl-0.5.26": "72d4ed889ceac3cf5f7233a7e38eb2dd70a95e36dab0ce9ebed1f6a9a68f19be",
"powerpc64-unknown-linux-gnu-0.5.26": "7838adddce0d17aa933cbe843ca673e44eb89de508175cc707473540de6388cd",
"powerpc64le-unknown-linux-gnu-0.5.26": "fe1d770840110b59554228b12382881abefc1ab2d2ca009adc1502179422bc0d",
"s390x-unknown-linux-gnu-0.5.26": "086c8d03ee4aff702a32d58086accf971ce58a2f000323414935e0f50e816c04",
"x86_64-apple-darwin-0.5.26": "7cf20dd534545a74290a244d3e8244d1010ba38d2d5950f504b6c93fab169f57",
"x86_64-pc-windows-msvc-0.5.26": "a938eebb7433eb7097ae1cf3d53f9bb083edd4c746045f284a1c8904af1a1a11",
"x86_64-unknown-linux-gnu-0.5.26": "555f17717e7663109104b62976e9da6cfda1ad84213407b437fd9c8f573cc0ef",
"x86_64-unknown-linux-musl-0.5.26": "6858d7951b9ae20c3955b2b0addbf2f184ab68175d1c659d11e0a14f1472fb81",
"aarch64-apple-darwin-0.5.25": "3c29e941d691614bc4eba95629c8f8dee106e5d44d70a03efed66a544588caa1",
"aarch64-pc-windows-msvc-0.5.25": "e3c4d014dc8aa14a36fab9316d9f435a93900893d7164472452c39037112b829",
"aarch64-unknown-linux-gnu-0.5.25": "402342f9a5ff1544b41af368794ab436965a1a03109b43bd0dd552ce6af8256d",
"aarch64-unknown-linux-musl-0.5.25": "6648d924f01ce01e4968e377c1f32a53592b55485a859f97421619d3a7dd7d86",
"arm-unknown-linux-musleabihf-0.5.25": "45ed53c20c5852d9dba97deeceaa1cb8fdccdaec69952c0940329e27b3830e83",
"armv7-unknown-linux-gnueabihf-0.5.25": "54bd4af03e93acdc7ac6546f62923a782fc871a20850356fa8870dd256a6c2e8",
"armv7-unknown-linux-musleabihf-0.5.25": "f2adbe37fbe57540c39396d6d47878c86027eae91b442d609c2e97da2398dff5",
"i686-pc-windows-msvc-0.5.25": "7f55c0e6ab90218d2646c3915b111378fc0ffd61308893d495ddc8e49f16ed36",
"i686-unknown-linux-gnu-0.5.25": "8d71e66e4efcc1097e2beedd3572867eb7ea9b5cdac286c115a5118fcf5d2219",
"i686-unknown-linux-musl-0.5.25": "406630b6b20bcef76069e08c5eaaa5420e190ae0036f4a85e2a14f3d7c610be6",
"powerpc64-unknown-linux-gnu-0.5.25": "202aa6bc9e541bc322ad743f6afe334ef31dcb5c568f24cd5c963fa535538f20",
"powerpc64le-unknown-linux-gnu-0.5.25": "7956759f6543ca7ed4e51ab7d68a2dca6d9e73d12a19afbe40d275f2384b8535",
"s390x-unknown-linux-gnu-0.5.25": "b17eed40b701252cf6e02c64533bc741dfa6e05340da64cd9feef36afcfed897",
"x86_64-apple-darwin-0.5.25": "f76e3fb259ec74b2e003ed7e47d1f06a431686381665fc03e2f35e2ee72e6a57",
"x86_64-pc-windows-msvc-0.5.25": "51ea202a472e552c04e6a13ac7eece0d56748750b9726e4b94f4f3dc96b5f77f",
"x86_64-unknown-linux-gnu-0.5.25": "fe04914881e2e01fe62001b223344a7c43af734faba447d4764fe92d3baf794e",
"x86_64-unknown-linux-musl-0.5.25": "aeade1b8fa1fa3c021d30e8f1932fd2c24dca62217c7d6d9da740dde75b7e52f",
"aarch64-apple-darwin-0.5.24": "8016d47f4cce265b3d122ad8cbbf701713caf803fa7d3ef69d8a1fd6793d939a",
"aarch64-unknown-linux-gnu-0.5.24": "3cf910468c37c709580d83d19b7b55352cfe05d6e1cc038718698410b6b8c6f0",
"aarch64-unknown-linux-musl-0.5.24": "aaae0b6fb17b3cafa9869292f4e03104b26fd0de4a36182a6edec44c1665f6a5",
"arm-unknown-linux-musleabihf-0.5.24": "a11698237ff36b72d119467805c8630d5bfdf6132fe98d01f7c44451c783d450",
"armv7-unknown-linux-gnueabihf-0.5.24": "e44001c955b7a2c3e53006a262bf74189f75bc2e6d63ac2e71638fb8eee20501",
"armv7-unknown-linux-musleabihf-0.5.24": "8ca5c602c5a31a6c497abf10dd96694fb2bb9df362fdc604d156fa5044786379",
"i686-pc-windows-msvc-0.5.24": "d2550254b96753214f9098a03091fa398d948c971738d50ff36113a3b27e391e",
"i686-unknown-linux-gnu-0.5.24": "7b335c5736fa50aa3092f4212201ea7a65a15c6f40282a315861ec36bf64a41e",
"i686-unknown-linux-musl-0.5.24": "6b7a8df65d15ad782ca17d82f79b4d7a235e85bf50411e3f7549878909b2a0bb",
"powerpc64-unknown-linux-gnu-0.5.24": "22c2fb1971cd4ea77d78fc2c7c5574f5e4646525473d08d1b16a4389cda560a8",
"powerpc64le-unknown-linux-gnu-0.5.24": "1e3cfaa0890d42f448bed7d6c7b66240abfe43130c6923b1d5fb7b0ebc302b94",
"s390x-unknown-linux-gnu-0.5.24": "a3c8e92deb720dcbf7414d8d0bb91934016d0ace23c3dd452f49a1b92490e0bf",
"x86_64-apple-darwin-0.5.24": "dcee10ef84309cf0de4153cb7913b0b506eae0a2e6407faa0f1717f015c35f0c",
"x86_64-pc-windows-msvc-0.5.24": "bd3fedeee0da543d7ac0a530328b3880bc83c1b332b3996f0da691f83423e813",
"x86_64-unknown-linux-gnu-0.5.24": "a0eb614f7fc38a6e14ef1c4819f1f187591db8e0d3c4218dae38b1bd663a00e2",
"x86_64-unknown-linux-musl-0.5.24": "5a5a1231a3ecb4f01aab9c839a49764d9ea1ae8e5e467a0aa2a2754c94f9f81c",
"aarch64-apple-darwin-0.5.23": "bedfc709b281ab4c6ff1c84c0ad7e4525bf2669f56f009f6fb308657bebe165b",
"aarch64-unknown-linux-gnu-0.5.23": "0f864a958e88693b8102dd7bc0e543a6b6f56e514ba8798235e54fb95c4856a4",
"aarch64-unknown-linux-musl-0.5.23": "bbfafc3623267d25f63713c934eb57bf521b8b14b94d18412c697d69dbd68251",
"arm-unknown-linux-musleabihf-0.5.23": "3031d44ae02a6189182956de345c0e22c40b6a8f19bbe67ed7016df228da5cd6",
"armv7-unknown-linux-gnueabihf-0.5.23": "48429f7f01e9bd6bfb80c2e97db878c05d7d1be1d10de432a33650c65c9d6172",
"armv7-unknown-linux-musleabihf-0.5.23": "baa22c4e66f80eb1a900437b58966f529af70c89739b690096fa665d6324f540",
"i686-pc-windows-msvc-0.5.23": "c9d6f5806666921a31f0a3ac88f9848884c67cd7348b0c0dd420c92ae40371ff",
"i686-unknown-linux-gnu-0.5.23": "91bf1765b77010318d9666601d6ec41108f561a8be5d8a3a0b41c4fbd38c4bb1",
"i686-unknown-linux-musl-0.5.23": "79093074197e76be9c7699ad361cf6fccc95dd8cea2b10ac2875acc658be55b3",
"powerpc64-unknown-linux-gnu-0.5.23": "acce824961d78934ec9735bd9dac2a8b7f16e9638c6d909671690c43283bd644",
"powerpc64le-unknown-linux-gnu-0.5.23": "678773a17cccfa5d8c8e7043e4ebbbaf48b3e1aa482dd334c36e06ba8ebe993e",
"s390x-unknown-linux-gnu-0.5.23": "34700493c47fcf668ac175ab66c8fb6bdc058dfc56a3f868d34b6e5a586957dd",
"x86_64-apple-darwin-0.5.23": "40525eceff3a95051e0139839140ec3597a45221cca5000b8290d20d771294f5",
"x86_64-pc-windows-msvc-0.5.23": "140be2cf57e37c7c86be4840d17b71fbc7daa21e2f46ed60830b4a39ef527663",
"x86_64-unknown-linux-gnu-0.5.23": "6c45b9a95328b5c250bab14a17af574f7fa284fac0830d6a827e5f6f0b0e6732",
"x86_64-unknown-linux-musl-0.5.23": "d656e3c274b43e8d9253d79ce3bd20d6bf1bd3fdb13dfd13e5e07d7aa528906d",
"aarch64-apple-darwin-0.5.22": "95496f513653e7246589b2334a04e2a001f6436919af30d68180ce480fd3971a",
"aarch64-unknown-linux-gnu-0.5.22": "0ff503ff9d473d25d0460a375ff6ec3ed186ee6be2ffedc67642b3c7d77b6299",
"aarch64-unknown-linux-musl-0.5.22": "43593ffde18d83f9453a69db70f5dbc61726beefc3bbdb80d1db61612eb26a41",
"arm-unknown-linux-musleabihf-0.5.22": "78829476fad51a9361aefbb8ee5ed7aa19b981a7d6384e6033115277b761fe94",
"armv7-unknown-linux-gnueabihf-0.5.22": "2c6b4876c6aa6e642466fb389cc106f5f9cb4ebb9e389bf2c9e883012d3d127b",
"armv7-unknown-linux-musleabihf-0.5.22": "fc62722c44cd4ccae7e713452bc5d81907852da6d50f3123c4878e510fba52f7",
"i686-pc-windows-msvc-0.5.22": "4c4e029f05cd94b09cb3c3ac9d2dd4adeb2a1e54d13a09ba79c244d95d960ba7",
"i686-unknown-linux-gnu-0.5.22": "d17ee5a2ea99875781c21ba2acc3785d86ebf27cc76011fa59ae52f21d349a49",
"i686-unknown-linux-musl-0.5.22": "092387e1a32a40cee94165d96072e219b299b8d76a25a764659ccb178855c3d8",
"powerpc64-unknown-linux-gnu-0.5.22": "bd8c2b70f461d6cc189abaaaa0d4e75f6b3044eddaef0f790920436f2d7cb772",
"powerpc64le-unknown-linux-gnu-0.5.22": "ecd4c18c0a889b7ceaca906340f89ef815b5a7e37fbfb318ec6131f23627b794",
"s390x-unknown-linux-gnu-0.5.22": "5c092fb46def4c7a45094905990acfab34cf4ad3af60e6accddbfa81b1409c03",
"x86_64-apple-darwin-0.5.22": "5f636c75a976389ec0a4b03b4a7a78b5634daf1915703079cbc514a26c691e18",
"x86_64-pc-windows-msvc-0.5.22": "bbe5dc1b2777f170d53d3d7856376eda9229a2c4f74332336e0ef0603325cbe5",
"x86_64-unknown-linux-gnu-0.5.22": "d15f8595f080817f55f207bf9a67cbce6423e5b1fbfeba58c7e67e86bcc7be41",
"x86_64-unknown-linux-musl-0.5.22": "fba667f90b0b89b4171127ebe7b29961250ddbcd9f86116eb195c46afe0857c8",
"aarch64-apple-darwin-0.5.21": "74f501d91b4db0b767d5d621086d3e2e8acc3f5356cf5527de80e97bb312a626",
"aarch64-unknown-linux-gnu-0.5.21": "c4cc2ec78a294378b867ebd08c5842d3ce71074c2818dc7f641422fb3bf4b2d2",
"aarch64-unknown-linux-musl-0.5.21": "26152b092f6ace9bec1fe91b39fe11f55428ce5fba87f5de0ec6b16e2c65928f",
"arm-unknown-linux-musleabihf-0.5.21": "2a90a8976a7efbe5eef613b84285f2f6b0cda7e9547a2e548bf6f253cc06dbb1",
"armv7-unknown-linux-gnueabihf-0.5.21": "71b0e840af1e50368d60bdb6a4bb22483b0462e7238e7e08fb624466c4b22c65",
"armv7-unknown-linux-musleabihf-0.5.21": "46a3be0330ebfbeb4c521a523545334ef3bd38ac0b4acab19734c0d50399ac6f",
"i686-pc-windows-msvc-0.5.21": "a0583cd71a410ce8329cd0951a72966a1219c1a7c12c437c3072779ce7dfe893",
"i686-unknown-linux-gnu-0.5.21": "5d46307d7883f5ec5416c589b65bfedd17544accbe54eabd13d27417bcdf435e",
"i686-unknown-linux-musl-0.5.21": "27d220b8e8effd1dc566e6ae7f90e7a074af07f4e61a0406f2c8c9883ef82e33",
"powerpc64-unknown-linux-gnu-0.5.21": "ca744fee2634dfe203683fa809e4b5998564ebf2b8e7f0c329c1229edbe1ea8a",
"powerpc64le-unknown-linux-gnu-0.5.21": "1c08d342b4644158eee7723a75f59b3f388ceb4a91106d284d343acfb906bb77",
"s390x-unknown-linux-gnu-0.5.21": "892c78a989164f1e6e97a8e07d995bf1ab6c5374ee85d4b47c47c6706bb2e8fe",
"x86_64-apple-darwin-0.5.21": "66a0f5ea3aee2d497450138ae1e99f734eed7457af5e839a41ef219d51e90e17",
"x86_64-pc-windows-msvc-0.5.21": "9968e8ef4b567d5690ccb9ac6e8338eb56cb964c57430a2843dd21f88ec5b81a",
"x86_64-unknown-linux-gnu-0.5.21": "e108c300eafae22ad8e6d94519605530f18f8762eb58d2b98a617edfb5d088fc",
"x86_64-unknown-linux-musl-0.5.21": "71347d2fdda9e3e7105ecd3a8566e3b607da9fddf23ac83adafcf6451ea9139d",
"aarch64-apple-darwin-0.5.20": "d7f0c219808073f8ae8c6a991e85e5c7539b4e539b014a4ca5b3286911f06fd5",
"aarch64-unknown-linux-gnu-0.5.20": "3d2281312d047288ecb021f4c761cd351f993514e3ea7f369354701b3a44c756",
"aarch64-unknown-linux-musl-0.5.20": "162b19dbe6d82fd7846dd6ff25a7a6250ce4ee5d0d55e2e245625382984072b0",
"arm-unknown-linux-musleabihf-0.5.20": "19a06cf913bfb3d8ecb0e1c0368f98b03e9ec5a35ea3edc03a4e0af04f4f95ad",
"armv7-unknown-linux-gnueabihf-0.5.20": "769c07de286d607d0e13e9e83051a5ac0cfe1c34695ece976934345e09e97f4b",
"armv7-unknown-linux-musleabihf-0.5.20": "1330f3e38f6bdae2d2e2d458957e5531cf729989db942832aede12c5e5d5a1ab",
"i686-pc-windows-msvc-0.5.20": "389182a593b6f761dffb7c82c3eee3f8e4f4848fbf26fa1e6ab95ac3fcad687b",
"i686-unknown-linux-gnu-0.5.20": "88a1e7b7c08682fb379f540cfab31c38c31d5a7a3f227e5446dd9000519c7195",
"i686-unknown-linux-musl-0.5.20": "fb105fc9c3bbb4ad44ac5c0066cb9f48912f55a97f65dabaa48367198c0f87ea",
"powerpc64-unknown-linux-gnu-0.5.20": "a42c4bf4e397ed0d85bc5ed8d589f1e3dbd6f24fdbb16469ffa20b63977894aa",
"powerpc64le-unknown-linux-gnu-0.5.20": "bf52e43047ad4e7f178b62d2a175f0ee272f014a520726fe293960d03bfa122d",
"s390x-unknown-linux-gnu-0.5.20": "69c198eca4c81299a7a323df729e03ce6198d84fa26e9d98ea1e02436933469f",
"x86_64-apple-darwin-0.5.20": "22bb373a2bb0f15e441819a054e68798534d536b1b1943fdb813d6b53ffe48a4",
"x86_64-pc-windows-msvc-0.5.20": "dede2f71e7a15137ca17e3a1106e3797a650a2e2d607658f31ad4e986de3d67d",
"x86_64-unknown-linux-gnu-0.5.20": "8fdbfca767917f957e4541747cbf7b23b45c211109dbba97b49962fa3547aab4",
"x86_64-unknown-linux-musl-0.5.20": "5326a6d14d4668dafee4ecf36f7664103a25bf0918dfe162c8c49dab017b74ed",
"aarch64-apple-darwin-0.5.19": "f223bb08d04257dbba421736f906d91b040f654ab49963afc2f30f7949ae7b79",
"aarch64-unknown-linux-gnu-0.5.19": "2da1baa85958e5ee36f2ac85b0c56cb99c0c3140f6ff18c60825485b8193eedb",
"aarch64-unknown-linux-musl-0.5.19": "ff5b42337bd94f41db157f73b39d41586be8c76d8824550b0f6d5e808e5f0356",
"arm-unknown-linux-musleabihf-0.5.19": "84ae72130383340e14df47656f1974eb76a28ab7ed8b5c479bdbc8b907ad91e7",
"armv7-unknown-linux-gnueabihf-0.5.19": "bec22bc7e1d584749f26bc4d84116faf925f9db484fe0afb58f6a2aa0c04707c",
"armv7-unknown-linux-musleabihf-0.5.19": "79c575e9dcd58cf88e8b2fd37242ac923d04c31a62bed54db78219e35257a262",
"i686-pc-windows-msvc-0.5.19": "7f0439c0977baf5573d0c31820887fb0c478d2ef29fdad4256bf0a0b536a387f",
"i686-unknown-linux-gnu-0.5.19": "0b9a88787f80bda623987a314875c7cccfed599b5d2803565734c292e2cd33ef",
"i686-unknown-linux-musl-0.5.19": "e9a89334fadda0905da42017db76c63da9b1ef02ef9595acea322d1e73f1fea0",
"powerpc64-unknown-linux-gnu-0.5.19": "d891e5a5849e0220a49a31396371303d7f9de6c86b34f306c129a87dc6debfac",
"powerpc64le-unknown-linux-gnu-0.5.19": "efeb6ce7adff1ef45ca2e3351011a9a423add39f08676f5f4b85fdf2244fb8cd",
"s390x-unknown-linux-gnu-0.5.19": "a37620a3ce3d351adc57ce70249ee0bdce2fbd336886db6b4de4d31447644acb",
"x86_64-apple-darwin-0.5.19": "9af5050495e9fc114cabcb4c2dbaded65569ccc0583ab3f62a6d9977984b65fa",
"x86_64-pc-windows-msvc-0.5.19": "ada2b3d704a78e118f6c8e215468e8f50eef440211938970cdef79dfafe9ddc5",
"x86_64-unknown-linux-gnu-0.5.19": "ace8c180865bb87fb3d7004a8cafde78270676d87ab5531615f136cc860db78d",
"x86_64-unknown-linux-musl-0.5.19": "eb9d0e1db24c6abbfec3e589f55efd2ef9ce9313f89bf1dd934635d194762b57",
"aarch64-apple-darwin-0.5.18": "13bcde0a15c50af976980b484f140e10969df67488542856a2152534f255c675",
"aarch64-unknown-linux-gnu-0.5.18": "a511f609236b9bfc9dedfcb9867ef1d0f1dc23cc2012f9e4e38e0c184657fd31",
"aarch64-unknown-linux-musl-0.5.18": "5b1bd1471f4d8298f11da5f025bdbcc4c8057a24c8b95573003c0320b6fa99a8",
"arm-unknown-linux-musleabihf-0.5.18": "4262e0a6c14998c8637f1ba018980464a5e6aeb5f35aaa0149643c99a32631b3",
"armv7-unknown-linux-gnueabihf-0.5.18": "29d4f9b0c020f55de11c9bd24cf8360771c1893275dd9e3b978f0fe4421bfb4f",
"armv7-unknown-linux-musleabihf-0.5.18": "95049e75c3da2113142da0b9e60451c43fac44702590f4e5abb6fc7cde744429",
"i686-pc-windows-msvc-0.5.18": "06729cf6685f0271e91bcb5cf748d18a5c5d793fa9e0a611d0c7541a0aed574a",
"i686-unknown-linux-gnu-0.5.18": "d92146688e5b1a7ddb79e8f91d91c8174d44a5945b06797cd17bbf187f13da64",
"i686-unknown-linux-musl-0.5.18": "1ec37579d0dec4739c707cb5096c52dea9319196dfd63ea6e121e16074892cac",
"powerpc64-unknown-linux-gnu-0.5.18": "e6cf16040aabb5b1940e88841dcc90967aa592c8c7492699449ca050713cb567",
"powerpc64le-unknown-linux-gnu-0.5.18": "3efccbb5820be67b270333f9ca87d2d598e38648a6ea7a3fb9970a5a424be11f",
"s390x-unknown-linux-gnu-0.5.18": "f7903ade2a7747041d5d10f043e01e0a6c9c881b6fe7cb1bd54b9efac8ed7620",
"x86_64-apple-darwin-0.5.18": "e77b6b35169d2e0a3b43d43690f813136c94e24e4eef72d560e7901e42621d18",
"x86_64-pc-windows-msvc-0.5.18": "77f414173d0970c8977a614585fc013290659b0d74ae22be24559fde915832de",
"x86_64-unknown-linux-gnu-0.5.18": "1dbaeffc5cfac769f99700c0fc8c4ef4494a339720c6bf8b79367b1acd701b46",
"x86_64-unknown-linux-musl-0.5.18": "d4d3bf7dda0fd66a34ee99407506b753213bbe6e4076c0c38c4b645d00406979",
"aarch64-apple-darwin-0.5.17": "9e041a7c0bbd8a653b2272e03ba5de5b726dcbbccc3ffcc526dc7de9f14ad334",
"aarch64-unknown-linux-gnu-0.5.17": "22164a4a86272ab2a4af2b01773a7e636f643426831f4dd9c71b2760c592a57b",
"aarch64-unknown-linux-musl-0.5.17": "86021b10ad06f97a82d605ae7b7e580cd17d29b2877b65e31ef63db50514d2b0",
"arm-unknown-linux-musleabihf-0.5.17": "b68e96d7abb87180a44f9b315db2d3f88ad59325b10451b561e0620edd71d476",
"armv7-unknown-linux-gnueabihf-0.5.17": "125662419ae6b2332d2bab6764ba8ef9396fd0cc9487a5fbbcf41bdcf379e697",
"armv7-unknown-linux-musleabihf-0.5.17": "f8d2dcee69ad15858a827265db527184bdbd07b60a24e04d2d9787abf781cc0b",
"i686-pc-windows-msvc-0.5.17": "1aecdd843d15a0149cf83d07c3b36d184578a6a07fcf2730ef9986393259e960",
"i686-unknown-linux-gnu-0.5.17": "4165443b8757cdcd615ccfe721aac5137c7d4165ae9dc2640975c1035018f09c",
"i686-unknown-linux-musl-0.5.17": "0242308d2ffe1de6538d79a13aae4cee8a48bfc76e71d559836a2f43808393c0",
"powerpc64-unknown-linux-gnu-0.5.17": "a79bfc1c004339c1da253421b35471af383e724eaffe8ab332685b253402a7c1",
"powerpc64le-unknown-linux-gnu-0.5.17": "db2f384a7b9605b9ae03ca493f0c35174577a3b53d238861b11b9dc1c404cb16",
"s390x-unknown-linux-gnu-0.5.17": "4312abce9f52dca597c4b4896e8f2f7575d50b2183af4c74412bc26eb6278d3f",
"x86_64-apple-darwin-0.5.17": "f66f961bf0c6e2bbc3e45de4692cdebb126edd5af4e920dea91a3fedabc502ee",
"x86_64-pc-windows-msvc-0.5.17": "00aed721abc4bb125d92b45733aa65a2254344bffed984d85cf0de6b164f5011",
"x86_64-unknown-linux-gnu-0.5.17": "6121d9693b2013e970e495872c5a750ff0e471c2618821c2d4314666c0bd9ee7",
"x86_64-unknown-linux-musl-0.5.17": "0aa0d03f80422a066396a54c7d9f7f78576a22827860273fd635f97e04f3e1a7",
"aarch64-apple-darwin-0.5.16": "0b16039f469df078c1445f5b7f84d3c0342580c4592b5a4b604db2c86dc37c3e",
"aarch64-unknown-linux-gnu-0.5.16": "59d28abe79037f835020ba834f01ac5c1f96c8556c6ff9a06a8fd5701048731c",
"aarch64-unknown-linux-musl-0.5.16": "8913580d960e1d5a24316506b9925cb6aa4ab6547d88d7cab1aa5049825e1d4a",
"arm-unknown-linux-musleabihf-0.5.16": "e97d623d641a3c807bcafef222544786813ed5176d0dbea8d0f6adc2deea88b7",
"armv7-unknown-linux-gnueabihf-0.5.16": "fe814f38a72c7f264e4cd8fdcb84519bf92a88f0e67d7a0a6a38dc18e938c0fc",
"armv7-unknown-linux-musleabihf-0.5.16": "f72c8302fa59190a90ccb743d90d3efae71e78ea7c6b52c68b3e23b6c6fb3276",
"i686-pc-windows-msvc-0.5.16": "fe24a7b1438152d8dcc7acedaad3b15362ef2e58d496611819fd8b99942dc2ed",
"i686-unknown-linux-gnu-0.5.16": "d2ddc285d3962b45e05a59e62fb188d7bad3f969b45ff5256db0226efe44208b",
"i686-unknown-linux-musl-0.5.16": "ac6b59b6b383a852ba5c22df777f9c3f39a85364a485bcc4203ca427417cb25b",
"powerpc64-unknown-linux-gnu-0.5.16": "1ff9c39c6660548aa69934a25c8d92ffb11a7c9c1f39db9795e9f061ff34a8bd",
"powerpc64le-unknown-linux-gnu-0.5.16": "87c568a126d59d66b99ec087182f4cd9de336678dfb60c51da35d678160875d6",
"s390x-unknown-linux-gnu-0.5.16": "23c8331689d99c6fb70646a41a9d8ef5211d4eefe25baebb08b6b6c7f126af6e",
"x86_64-apple-darwin-0.5.16": "72732a379d2aff6585c6bfd52593042a470e752d6af685cc01e1ee06d817cddb",
"x86_64-pc-windows-msvc-0.5.16": "3fe298d7b10b63e9cec6711d03853874735f1dd33f655ad3ee6677965807883f",
"x86_64-unknown-linux-gnu-0.5.16": "a320393232ac29acfe75cd0d3fb943ee2a5cc3727d2c9d1bb14bb9eea1fc60c9",
"x86_64-unknown-linux-musl-0.5.16": "82962a1ef9ca888c32933fe9022c4b946e9bf047ffb0084a614b8cf7a5306dbf",
"aarch64-apple-darwin-0.5.15": "bb7409c4d7d503e929bcd31bf179ae6f555f5092d0d5dc38df37be9f29832859",
"aarch64-unknown-linux-gnu-0.5.15": "02f69686d0e1fe9673bb449fc45e53e6bfb0f48c5d371b35c145828c4239f123",
"aarch64-unknown-linux-musl-0.5.15": "78ac5d4c7b9773bb3f6867f452ed83dd2f38f26116d2369ff5b4ea02eb7519bd",
"arm-unknown-linux-musleabihf-0.5.15": "f416a9350161feacc48a96f90a1a38244d70f3ba07fbf96010ed477ff69814ed",
"armv7-unknown-linux-gnueabihf-0.5.15": "182c316f44df157979e7430fb952eced1ad8020d1d8d810e88ce6985c9428615",
"armv7-unknown-linux-musleabihf-0.5.15": "0b4400e8c22921355d5e69cf17cb0a44da93af09125e1dc636a69d2175a23898",
"i686-pc-windows-msvc-0.5.15": "9092e142ce3a35f8c9f36058c3278f6b99718c02d8b904001ccc1cd918a0c798",
"i686-unknown-linux-gnu-0.5.15": "d945431e618c2688ac62e640c16022c587a6f80677c64346280143d83939f93f",
"i686-unknown-linux-musl-0.5.15": "6e1a968662a0952083e9a297ec067606621f93b55ccfbdd8ca475fd13b328d90",
"powerpc64-unknown-linux-gnu-0.5.15": "58a6663e477645194c34dfac96b4c42ba6e7c4b5aa851c1e52276769b279b605",
"powerpc64le-unknown-linux-gnu-0.5.15": "c7281fa8fedd6332c594faa7e1dc1555960c7fb60d3e1b013309651b8d53377d",
"s390x-unknown-linux-gnu-0.5.15": "590751ffaf36f3f01b66afcb7de844ed0f69aeb2b54595cf191a4e60ddfab11c",
"x86_64-apple-darwin-0.5.15": "6a729cb237d895eebeb65363419f41b217dbcd745819bcef61098a5ddd583f08",
"x86_64-pc-windows-msvc-0.5.15": "2c49a892f793b957b0add32aa21a64940caf4bc03319cf0bb3b27caeebb985f7",
"x86_64-unknown-linux-gnu-0.5.15": "6c650324daafc07331c00b458872d50f56f160544015c8a499fd2e160b404ebb",
"x86_64-unknown-linux-musl-0.5.15": "40d8564e954bbd18f2c5ba80978491c3a25ab49e067664daf525e34c38a370b8",
"aarch64-apple-darwin-0.5.14": "d548dffc256014c4c8c693e148140a3a21bcc2bf066a35e1d5f0d24c91d32112",
"aarch64-unknown-linux-gnu-0.5.14": "1c9cdb265b0c24ce2e74b7795a00842dc6d487c11ba49aa6c9ca1c784b82755a",
"aarch64-unknown-linux-musl-0.5.14": "64c5321f5141db39e04209d170db34fcef5c8de3f561346dc0c1d132801c4f88",
"arm-unknown-linux-musleabihf-0.5.14": "903f87c609479099c87c229429f2a25f451689d862ee19170f6d87ab656815a0",
"armv7-unknown-linux-gnueabihf-0.5.14": "c33a4caa441c770ca720d301059eeb6af5473ceb22b69adf08b99043c3e4a854",
"armv7-unknown-linux-musleabihf-0.5.14": "c3b1bbe0d70e916abdd557092bf94c4830f98c471fe7d45b23d4dec8546251f3",
"i686-pc-windows-msvc-0.5.14": "2ea709cf816b70661c6aa43d6aff7526faebafc2d45f7167d3192c5b9bb0a28f",
"i686-unknown-linux-gnu-0.5.14": "74fd05a1e04bb8c591cb4531d517848d1e2cdc05762ccd291429c165e2a19aa1",
"i686-unknown-linux-musl-0.5.14": "a616553164336a57fc154a424d44cd75eb06104bc4e69f3d757e3da90a90d31f",
"powerpc64-unknown-linux-gnu-0.5.14": "4b675ac963f4d90034f8b8de8b03e0691b7e48eb8ce7bf5449ea65774750dfd4",
"powerpc64le-unknown-linux-gnu-0.5.14": "2a7bb1d27a6a057cbd5f62a5bc2ec77175c71224de8fb1bb5107acb1a07cc02a",
"s390x-unknown-linux-gnu-0.5.14": "68acbfadd9e100b69b31f4995265b716465df909a7d110bba76d93e8adc3a76b",
"x86_64-apple-darwin-0.5.14": "8caf91b936ede1167abaebae07c2a1cbb22473355fa0ad7ebb2580307e84fb47",
"x86_64-pc-windows-msvc-0.5.14": "ee2468e40320a0a2a36435e66bbd0d861228c4c06767f22d97876528138f4ba0",
"x86_64-unknown-linux-gnu-0.5.14": "22034760075b92487b326da5aa1a2a3e1917e2e766c12c0fd466fccda77013c7",
"x86_64-unknown-linux-musl-0.5.14": "e1ccdfe1691c1f791d84bb6e1697e49416ca4b62103dcdf3b63772f03834f113",
"aarch64-apple-darwin-0.5.13": "8a1ddbe5131c50cbf5247f2f335252d14767a7ff74f08c8a1813f003bc86d37f",
"aarch64-unknown-linux-gnu-0.5.13": "d0054db9ba0ec472ee6d28fa3eda94fb021b5e77c962f3bb1ff4b4fa7934e66d",
"aarch64-unknown-linux-musl-0.5.13": "fcbc405bdf8f6edf25818b756af702e8161528f4317d65310d9a0d4e02d7f544",
"arm-unknown-linux-musleabihf-0.5.13": "ba382034294dffcbe36d4a299a5c69c4f48caac9c4b78a1727c7fc9101175202",
"armv7-unknown-linux-gnueabihf-0.5.13": "cc28eeaa29b85f17c27cefe96497b3448024e14b5bc92921e1b7d157375d2334",
"armv7-unknown-linux-musleabihf-0.5.13": "449b680c4a3d936e9005e39983208a183e0fffa62fe73e6daed85f51389fc40e",
"i686-pc-windows-msvc-0.5.13": "c1531c2f1eb8c36b2947abf039caf1aeba4253c3c35716705ca339a0a3d96594",
"i686-unknown-linux-gnu-0.5.13": "35b964c75699b6569d950fb39561146b830101403c9a937ace1fc64fc1967c1b",
"i686-unknown-linux-musl-0.5.13": "a33007ed60d67fa4c5b7689c1adb33751a5c1a8732057ed84b9deddbb39cd3a6",
"powerpc64-unknown-linux-gnu-0.5.13": "9e34fc400e51f3331452083dd5e54fadc0f3be81f7901772366faf4c75e2680b",
"powerpc64le-unknown-linux-gnu-0.5.13": "ee01812f102379bc9bb6ea991f81536c9546a5f0d4990b9ed1fbb1900cb5f647",
"s390x-unknown-linux-gnu-0.5.13": "f43c42318411ff5f3e8ea4be2228e71fb28b01ffcc08259bb301877c7f7155e0",
"x86_64-apple-darwin-0.5.13": "f871b2b002b750438e5e6df4b0809a9f7d089bc5d4d0466bc63577c9ecc59979",
"x86_64-pc-windows-msvc-0.5.13": "c8a2e7e8bd87866fd1d52dbd4b4c0d85f328a6dcdeff17b85cc9c9af447ef3c3",
"x86_64-unknown-linux-gnu-0.5.13": "0127da50d3c361d094545aab32921bbce856b3fcc24f1d10436a6426b3f16330",
"x86_64-unknown-linux-musl-0.5.13": "1afaef0180a6b9fe43fa6658443796b8e235fc41382a451634515890cf3aca06",
"aarch64-apple-darwin-0.5.12": "9eb8e0d3487f5389bec2c60cea37bb0a4d028513bffe854b9ece82d538c0f312",
"aarch64-unknown-linux-gnu-0.5.12": "ed8b4928a148365a84133ce96344fc22ac62674db2c6bef88853d0e38791e8d8",
"aarch64-unknown-linux-musl-0.5.12": "3ce19d81232cd2dcc2646060370a1583ca5558e7f61d934ae22798006719341d",
"arm-unknown-linux-musleabihf-0.5.12": "744409cd0b7f6314b8ba140cb63f72e2576dfec5c83491d12455775d870d508d",
"armv7-unknown-linux-gnueabihf-0.5.12": "452f8b769818858c3343444396d270d34026f0f7649cc89c4076ecdc8eb6d391",
"armv7-unknown-linux-musleabihf-0.5.12": "35abf5e98f2c9a8250045a58a568086f0e223be703c090134bedaf6279ebaac5",
"i686-pc-windows-msvc-0.5.12": "04f91508e6aeb7a2054e98552ff537b9863afbcbd4f72ba8bf8d9e9e25b37808",
"i686-unknown-linux-gnu-0.5.12": "38c8fbdb74ee9eb95ecdb4b843d9014d47214cdf5415520378161979d1b0cb34",
"i686-unknown-linux-musl-0.5.12": "6a8bb35f83c2a66711da3cee8d939e8893b34b25ae6cb53590c111637a93d527",
"powerpc64-unknown-linux-gnu-0.5.12": "d1477f41b919c60d10a191bd81aeec0185cec7efb0364d9689b202b3a6607912",
"powerpc64le-unknown-linux-gnu-0.5.12": "12629950b444487c66a3a99f0ff0f82f11a7b0a57e8305b2767eed5b85a4a3bb",
"s390x-unknown-linux-gnu-0.5.12": "36fc6d9ee6294ce54a2e3e92f10df094bebdd2862c29223bde18361aad9a9f1d",
"x86_64-apple-darwin-0.5.12": "78f38c88bf5e410600cd8f8ee4d5ba3ee781c94c091b1a57566256a2178ef4a3",
"x86_64-pc-windows-msvc-0.5.12": "04b45a4af12c0bb7cc31004dfcfed2e722c4ca07e1ac58850f93a9343dd5d06f",
"x86_64-unknown-linux-gnu-0.5.12": "65b8dcf3f3e592887fae0daf1b3a9e3aad1262f74bb21cf80d1700c7caba7f23",
"x86_64-unknown-linux-musl-0.5.12": "bd517e6508feef0261289b16c844c377127f21377c18c4a564d0d09add556fca",
"aarch64-apple-darwin-0.5.11": "695f3640d5b1a4e28de7e36e3a2e14072852dcc6c70bf9e4deec6ada00d516b4",
"aarch64-unknown-linux-gnu-0.5.11": "055c329c38a93c01d378349d51cb4d521d1998c8a79355ddc00f863ce451942f",
"aarch64-unknown-linux-musl-0.5.11": "d0bb82d8bceb561dc785f3811f5f5a427f1be47b654f0cc5d6c36d779e03a3ff",
"arm-unknown-linux-musleabihf-0.5.11": "a889ef4a6bbb7d2c2e460544e8c949ca9d01e18c56af23b6bfb4d8b952319dc7",
"armv7-unknown-linux-gnueabihf-0.5.11": "e9f4ff168ecaf87fee4ba129c0de59f6bab96a249fa21ecafdd853d61f2ff929",
"armv7-unknown-linux-musleabihf-0.5.11": "202b6437480af1e46a9722d20e179983951edee1d92c307ea457acfafbd378bf",
"i686-pc-windows-msvc-0.5.11": "955dfba777851761b246bfa701a05fa809676493fa83ec29837f5315ada38b3f",
"i686-unknown-linux-gnu-0.5.11": "916df079c0125c2a5d48e1f012064f24dc7ef2ab8c94bccc192cf9d96094db5a",
"i686-unknown-linux-musl-0.5.11": "a06d22d1f9d0233941817fc263dd928913f20aaac940c336f995e3ad3592736d",
"powerpc64-unknown-linux-gnu-0.5.11": "dc2e4ce36bf01c1fb1f1ff8506cc11f4fe607f077ab235ea660417fd4e1964df",
"powerpc64le-unknown-linux-gnu-0.5.11": "ca60d5f715f068647e487c003f1e55eea303abcec2ef8cb04c3d87c83bc580f7",
"s390x-unknown-linux-gnu-0.5.11": "8b1b9d9c1dc2f195e4f490c1ea7c848e0eec025510dd576036df44dc78c27c28",
"x86_64-apple-darwin-0.5.11": "7e23d1d892c23f9e74245c4fd3d3e246438ce9b34460f85eee61f784de137b0b",
"x86_64-pc-windows-msvc-0.5.11": "3e8203e6434b45427f20824419f8d8d53f970a76d94ccdcad07f8498fa01a9d0",
"x86_64-unknown-linux-gnu-0.5.11": "14411de26cdea5f5139fafaf2b675b1c633e744dd49c6d6a9fc8817ec065158b",
"x86_64-unknown-linux-musl-0.5.11": "5b77978bc8ded7e1b6ddb6d6a3e52f684bcc07c6d9be11d7b4fc3c1c23f4458f",
"aarch64-apple-darwin-0.5.10": "dd3fa053379017923a4692cabdebb96844f83c7a516d9e6cb30502574cbd322d",
"aarch64-unknown-linux-gnu-0.5.10": "f4316a657c964994d7eb736ba875f3f685c4b61e961f514e98fb50ed181da72a",
"aarch64-unknown-linux-musl-0.5.10": "82e0472b5b0e6c738db3abe454e39e4b25b3d02f84b34b41dc7abca01ade09b7",
"arm-unknown-linux-musleabihf-0.5.10": "269001ff4b3cda3af685d78803ae25d96fe78282040c416875784cda37fa6c73",
"armv7-unknown-linux-gnueabihf-0.5.10": "e6c0d421a2c66e3938cc2d78138239a782561da3c595c2e37d4bde36883ede95",
"armv7-unknown-linux-musleabihf-0.5.10": "ab50758c7e1f56e6ec1e8a66a9b727ad7f3db1a872dd56b2c2e7f9d71a06b39a",
"i686-pc-windows-msvc-0.5.10": "676336743ca7f152a5f5186c49e8a171a9d49ad735c08e1bb5d85f6ed280d57b",
"i686-unknown-linux-gnu-0.5.10": "1d8c84de2e995ee26dfc9cd0bfee6bf546b06995dcd13e255b005d5a59a8c349",
"i686-unknown-linux-musl-0.5.10": "1867b910f331a56891bc0f287ae5fbf05cb09ded229d1d95a25a1e76e7b0a010",
"powerpc64-unknown-linux-gnu-0.5.10": "b617172c145df05dcf28666570cb3a798d393cb7f48292686490cf7b0b8fb508",
"powerpc64le-unknown-linux-gnu-0.5.10": "95a0234191ba11109163cba2bf4c757d92bc98be0aa1349d7f32b5d85c8935b5",
"s390x-unknown-linux-gnu-0.5.10": "a6943d479fca4fccab7af39bd47f097d67e64382665768600ab268cf167f1cee",
"x86_64-apple-darwin-0.5.10": "f82ed219d9e4cc22ac24168450567351881930774197bf9ad4bb5fc50e1eaf0d",
"x86_64-pc-windows-msvc-0.5.10": "d97566f535f07a9bbcaed90900a4a9e1b800076daa3193f23d17910879e7fbc5",
"x86_64-unknown-linux-gnu-0.5.10": "13452b7a99d953e970ec52861de03f6f2e00bfee2c4357bc63c292a70472b386",
"x86_64-unknown-linux-musl-0.5.10": "e94e9060ce51fabad2b62846df3963f908101ffebc02fec5e8c1baa373bd6edb",
"aarch64-apple-darwin-0.5.9": "66d352728d0efe9ecc65f7e9ee419fce139e3ab99addc08527e8cebbb405d382",
"aarch64-unknown-linux-gnu-0.5.9": "376d5d52a4b3a9875d66898261e2ce2d31d36c095a1d81cb88d953f5bf7273eb",
"aarch64-unknown-linux-musl-0.5.9": "ec5598ae9daba48f7a12b2f12533c6aa683049e6a822835794cea136f63abd31",
"arm-unknown-linux-musleabihf-0.5.9": "4ca86619f26c0879f81e26760b529a548ba96b33141d24075b71137cf9dfa639",
"armv7-unknown-linux-gnueabihf-0.5.9": "412d249f2c9a3dd7c070a219fc658fe9a36c6e9c50bef53b536efd54446eeae9",
"armv7-unknown-linux-musleabihf-0.5.9": "4097f1b45627212aa8936c973d9c7dcfaf1512ed08cfe958cf9dc68d0cc5d02f",
"i686-pc-windows-msvc-0.5.9": "73ac9d7aab6bafe1d8da36b7d4cb2bd969ca1d9c675b7a021afec3c913fe223f",
"i686-unknown-linux-gnu-0.5.9": "7236440874031e47a2ff3b4df93c7c2833c0bbe428716e491b8e87c8539a6651",
"i686-unknown-linux-musl-0.5.9": "64e588a32f12dac948733eb8ad57f7344bffd30023150a4b9b2b9b2a47ba2c9b",
"powerpc64-unknown-linux-gnu-0.5.9": "56d62d87a42f05f49f29fda674ec2576b811838029c048ed776cdbbaa690da57",
"powerpc64le-unknown-linux-gnu-0.5.9": "15a6f24ad5b30b2ce71a9fcc31ecd88d658c8534fac58d2a9af33a3e7c48a99b",
"s390x-unknown-linux-gnu-0.5.9": "e5a3ebc23c9acba4f8ae2a9f0a4344297e5a604cb24f63751193494f64e42822",
"x86_64-apple-darwin-0.5.9": "f4b4311cd2c2928aadee6b4e85aec2c6db7d779d4f9009eb4733bc8b2f20dbb5",
"x86_64-pc-windows-msvc-0.5.9": "8cb608cdf23b79f4f598969b72890db657c5addab312890c37ab20b9b57c501f",
"x86_64-unknown-linux-gnu-0.5.9": "e9cca3fb618dbc056f770d3ac4d52af491b532e60c8b19b97b9ba24f42db2bc1",
"x86_64-unknown-linux-musl-0.5.9": "f97ffe29c03f01bb19a948eb8eb1e27cefbbf83b8dd54057da0247a664a303ac",
"aarch64-apple-darwin-0.5.8": "745b3b8c0c2ea5b3ae253bc4c01fa5026ef399f4836749bef468d44747f291b0",
"aarch64-unknown-linux-gnu-0.5.8": "2eecc3b90d2316a85c9245107ddc6a5eecb9f481d97f4da94845972db0e93457",
"aarch64-unknown-linux-musl-0.5.8": "f30278b8a479e5d5e55f69432e4fcfc2b7ef20fa6e7aebfe92c30fb6bcef93c7",
"arm-unknown-linux-musleabihf-0.5.8": "59c1e1a3c2aa50ad06495655d3ae1f0a58d9ec3c6179aecd6f3a6b5a01a30fde",
"armv7-unknown-linux-gnueabihf-0.5.8": "a697d9cee4e1698a4e9634caa57fc3f0afca370014bb37cc8d13a339374bf1da",
"armv7-unknown-linux-musleabihf-0.5.8": "596a103852edd5e09c8acd12206b123a1c1808c9161271c2819572477d4694f5",
"i686-pc-windows-msvc-0.5.8": "2e1dc6042c1d419c296d4fa424218b24fb87a2fc6c8b61280f9d7df26a90e3f7",
"i686-unknown-linux-gnu-0.5.8": "e4edad6a7a772ccf7695ece61698fa289cb9ef113fb3e3b5ce8739cfee7ab8d6",
"i686-unknown-linux-musl-0.5.8": "878cd30bfbfbe53b721970d72961f1a1694afba3de6df96aa15d0f3782fa249b",
"powerpc64-unknown-linux-gnu-0.5.8": "36735c72bb137cdd44f7d534da570d99354f08b1bf2e704616a946cf58f37c71",
"powerpc64le-unknown-linux-gnu-0.5.8": "a00e19ebf37b384abdb19968e65d38503880d5dc093f9795bc3d5d45ca9db6b3",
"s390x-unknown-linux-gnu-0.5.8": "b8feaf065cad523651936acd62d90d4d37d4cb5b52703cf753f6cd1eb97cb6ea",
"x86_64-apple-darwin-0.5.8": "c3da7bebc434c59264737ff2430d942cb1d8605f20a7f4093232b1715eaafdca",
"x86_64-pc-windows-msvc-0.5.8": "9335f35ebfb29ad2cc8b65862f43d5f72ee50038a22b216e999342efb402e319",
"x86_64-unknown-linux-gnu-0.5.8": "dd73615862bb9cfb1f31a491b486123eb7730f99a815ec38baf297a37c749a14",
"x86_64-unknown-linux-musl-0.5.8": "b503c9e5a9aacba7f9283a1595931656cbac652c7fda1c486935af7d6e82b0c2",
"aarch64-apple-darwin-0.5.7": "b8cab25ab2ec0714dbb34179f948c27aa4ab307be54e0628e9e1eef1d2264f9f",
"aarch64-unknown-linux-gnu-0.5.7": "d4dd7a72689888c92b5191902fd4ec9d25b7eeba07be41ba4a8f89acbb403e2d",
"aarch64-unknown-linux-musl-0.5.7": "2c0fdf774ebfabecadf403c2fb966cc1a023b3db3907041fae34c77464a38a2b",
"arm-unknown-linux-musleabihf-0.5.7": "7d375c18cb8819f712072fa64cbfeede37bc246513d2bcdabb06e08999ac3908",
"armv7-unknown-linux-gnueabihf-0.5.7": "2495d0c98b18b0fb1e258bcefd05d9771720e769f642046e6943aa9c8dc3a006",
"armv7-unknown-linux-musleabihf-0.5.7": "070f3c59782832f1befd054053ba9def92e94e265aea2c06078c127525d2b086",
"i686-pc-windows-msvc-0.5.7": "d207a2791a513e3d645779e5d86cc88f7040426ec5e4a5521498b87558f93db6",
"i686-unknown-linux-gnu-0.5.7": "01d7c0444812563712038f472fcac77981a5dac9c44d507ccbccd49ec1828a12",
"i686-unknown-linux-musl-0.5.7": "ad934cb434d896637a4a9bf9defd309ebd71b46294aa6d878cf23d8377d3b2e1",
"powerpc64-unknown-linux-gnu-0.5.7": "ff17ee98044a38d65f177d4534c10d7e971f7df13ee4b50710f7929cc6cb1342",
"powerpc64le-unknown-linux-gnu-0.5.7": "080de54bc6b2a2c56c3d39d3ae857bac322702fd5a53b7732260a04ea6f25f67",
"powerpc64le-unknown-linux-musl-0.5.7": "326c1da6f0bbd16350a45243a4ebe4deab838c2af5662c20514ae878986689c2",
"s390x-unknown-linux-gnu-0.5.7": "ad94c056abf9a5caf652136de3569b999a5e0cba0456e41459e5ee34215465b0",
"x86_64-apple-darwin-0.5.7": "b0ff9937005e9dbc68798f587e72cedfe488f0866bb47532a8c3273e7222090a",
"x86_64-pc-windows-msvc-0.5.7": "cb2aea0d8f85ffe1c4e2a431cbbd6e5c8faeb732e7cf8e4bee1c10b7779e7352",
"x86_64-unknown-linux-gnu-0.5.7": "8a0a3e823684dec6e49ae17f31bf6483c778fd579671992d9156875210e5161e",
"x86_64-unknown-linux-musl-0.5.7": "4433fddf179fb49c962d6b4f824602b81cc20228406382b6fd21da33f816f8db",
"aarch64-apple-darwin-0.5.6": "dc122e0c41f7a3fbc8004802062785e6b5c8171bc2a2ca0adc5485165c92452d",
"aarch64-unknown-linux-gnu-0.5.6": "e90777ae28652cc7c40084ca2156bd344b5f95ee2ea9792b6e0c3a15f527c778",
"aarch64-unknown-linux-musl-0.5.6": "b7e346728daac9c0d0d2e5df333f19275c232373a9ad29255b7aab2d8972f7fe",
"arm-unknown-linux-musleabihf-0.5.6": "89ab758f876a6724ad1667f9e267369892dc7c570c136e40651ecbfd3a78e0e5",
"armv7-unknown-linux-gnueabihf-0.5.6": "6e17c62e361400498f95d39c0565e1e71fd252c732485ff0bea7af68ea24739c",
"armv7-unknown-linux-musleabihf-0.5.6": "c1806fb75ebc416e50e796ad3a61b82d096172d46fd4701c431cb54df4faf85a",
"i686-pc-windows-msvc-0.5.6": "4e387415a2238a7e827cf653448c032aa7085ccb4e14c5376f022aa52a3b145d",
"i686-unknown-linux-gnu-0.5.6": "d61e0b1aa8fa302f39604ba8080972fccd9e2b76b653c0ae4d9fffc0b91e193d",
"i686-unknown-linux-musl-0.5.6": "3ca5626e6325a116aad2f44ba30bccc31a15b35ac2e67349982b9c717900004f",
"powerpc64-unknown-linux-gnu-0.5.6": "112fd134f44c35800c1321bdd5ffc081d1d0bcd439e43fc3043829ed718fb7d5",
"powerpc64le-unknown-linux-gnu-0.5.6": "56fcf8a19260d25ebda937422382c701446ff7849d86fc0aba37d9b60e8dcca9",
"powerpc64le-unknown-linux-musl-0.5.6": "86f0347ff9cdfa214192d0143e673c61aca0981ab330f9ecf967acce2002f0df",
"s390x-unknown-linux-gnu-0.5.6": "170beaaa681acf3c7535dbca04808f1ad51689c86a3439f93eb6e0a4567ea24d",
"x86_64-apple-darwin-0.5.6": "9c45d209e5abdcfa42aa44cf456df6c0952b9d719b01d9c9e787886b17a5080e",
"x86_64-pc-windows-msvc-0.5.6": "46c21ac0449ae967d65518d8025f6ae4006387802373bce0e72ebd133d77e94f",
"x86_64-unknown-linux-gnu-0.5.6": "83521a07922e4ddff61b9204890a974e56ad9333f295690d3ddae931243ec3db",
"x86_64-unknown-linux-musl-0.5.6": "0578a350834a79f39dc2301b613e094597fc6b7937e5249519a7e1fd17f6184f",
"aarch64-apple-darwin-0.5.5": "9368ad5eb6dfb414e88b1ab70ef03a15963569a2bba5b2ad79f8cd0cdde01646",
"aarch64-unknown-linux-gnu-0.5.5": "aa3e8c6e095798c92e0b1bc7599af6313c10c0f35cd301221d230abb083cf6b0",
"aarch64-unknown-linux-musl-0.5.5": "fb09752aa9459cefd98f3c390ba4a937c32c0079588cf79586069883df204423",
"arm-unknown-linux-musleabihf-0.5.5": "5485e615f345643ea926ef8dce39c0c996b5b539a37755a4406142fed6b124c7",
"armv7-unknown-linux-gnueabihf-0.5.5": "42639efed5fe9b1102941c520fb3debc70149f18a1fa1befe541c90ae35423ab",
"armv7-unknown-linux-musleabihf-0.5.5": "0720626dc41384eeceafb4c8820e941f81bfd035c045f5db093ebfe11a1f3181",
"i686-pc-windows-msvc-0.5.5": "100b63404a3e6085b107effa70bb06b41f4409365cb139f0f424c1336bcd3dfc",
"i686-unknown-linux-gnu-0.5.5": "5d7f545bfc9493e3f259a93b666dfba1a009da2446151efb6d40a8420156d3a8",
"i686-unknown-linux-musl-0.5.5": "0128c3263b143ef084c59a178d2677e746942eb2f5d16db9a0afd303c10b4b8a",
"powerpc64-unknown-linux-gnu-0.5.5": "bbbf810e9994c362e645f7bf1d93fcfdb7e0eb65665f7b87da7ab341607ec162",
"powerpc64le-unknown-linux-gnu-0.5.5": "d3ebdeb4aba8b9c8a00017cb99c7b4e57883b1bf0241668214de81b878866db2",
"powerpc64le-unknown-linux-musl-0.5.5": "7c6539386d5a92297f6b84857bb6612897f3cc97d8e0cd30593c1598030464ac",
"s390x-unknown-linux-gnu-0.5.5": "fce501e64047f2a54829b75fd27a65e4334116684db459d52e2628c5bef6a3d2",
"x86_64-apple-darwin-0.5.5": "da8f40c1effe0e5d6ac0438a72ecb7671d67dcf8e3d53ff3d4e1b17140a1b5bc",
"x86_64-pc-windows-msvc-0.5.5": "4a2d709b55a2267fcf4adf35f9c38e244c23b118d0992d52a897df8aa21961d2",
"x86_64-unknown-linux-gnu-0.5.5": "3ef767034dec63a33d97424b0494be6afa7e61bcde36ab5aa38d690e89cac69c",
"x86_64-unknown-linux-musl-0.5.5": "59c3d11f819deeec4fa01ce6d2bdc08b32ac72b8e3031ae5b2b0706d3e751dba",
"aarch64-apple-darwin-0.5.4": "f924d82255a0b25fd04a78c7012f90300cdadfb72ca0af4508f3eeaf9509010f",
"aarch64-unknown-linux-gnu-0.5.4": "7a1d505fa5c8425b0391398a49efc747836fcfbb7df82d1cc5b2a048c5d79ccb",
"aarch64-unknown-linux-musl-0.5.4": "3efc0e33d6f6f2c9e6b6567c713f4a02bf21339ca850465983997fd18fbc1bf8",
"arm-unknown-linux-musleabihf-0.5.4": "6033792a905d9fd4159a7e932a65a730920c2b7d706bd7ee24cf67db5ee0b0b2",
"armv7-unknown-linux-gnueabihf-0.5.4": "f650b2c618c77a535e32d9594ac07f60019f338bb9c244d13f75579851d9b8e7",
"armv7-unknown-linux-musleabihf-0.5.4": "55267162c22bd10ac1f6a45e6417be776eb7b3246403eb302c508f2311b37f24",
"i686-pc-windows-msvc-0.5.4": "357ecb0b64de0e0c4ddb9d30818d8569a1b524df115aed181ade34f96cde9dfd",
"i686-unknown-linux-gnu-0.5.4": "07cd53252ac1a95e5639cd5bc40b09236ac6d314f26d3de83df44a581c357ed9",
"i686-unknown-linux-musl-0.5.4": "5489b2207e2a6d44a9553bccb3eb93e87c92092abeee489799b5d412aa5d36ec",
"powerpc64-unknown-linux-gnu-0.5.4": "1c5b0edc2e1c5195e110fc5c11c6e0b7d7e043264e9c6e18bbff114b4dae34da",
"powerpc64le-unknown-linux-gnu-0.5.4": "99f357c6461ff687e13bd28f20d2115166a0d9de0f54c80eea2605cb30b03e19",
"powerpc64le-unknown-linux-musl-0.5.4": "e9f5c4c25a3aea450c93b23fb0d09d69cd9355150cae965ae01be4fc799f4a90",
"s390x-unknown-linux-gnu-0.5.4": "4a93135b8b1336fb6877da2b5426b4b42b4e0e2b8a23275d853fea0876e66c0d",
"x86_64-apple-darwin-0.5.4": "f879864954b2229611155bb201088d0f09becf1436b0ec8707c8f560e98e9209",
"x86_64-pc-windows-msvc-0.5.4": "db68a1850f156c89b82ecec359d09ba298fb1ce2a35dabc5072de458b175d8fb",
"x86_64-unknown-linux-gnu-0.5.4": "c5b63d1cd0a894246195250c034f9d82d646dc8f718f1f424cec2bb1a42e7b17",
"x86_64-unknown-linux-musl-0.5.4": "054016bcb6c7171feccd4234738d65727e67d39eddb500146edc779845b8846f",
"aarch64-apple-darwin-0.5.3": "634a7bd1250ab42a1b185789ceb733b7a186791eb78f995ecee283758abe44f6",
"aarch64-unknown-linux-gnu-0.5.3": "bebf7c00cad982137346ed30b31d0d2de2868d5925f98fcdb950380b27cdee8f",
"aarch64-unknown-linux-musl-0.5.3": "8a348779ea5b5698827ab0787dce9a9e6a16b7ac69beb9a7cb244e6aad8a8f1b",
"arm-unknown-linux-musleabihf-0.5.3": "79ad77f1260fb6147c4f7ba6292c62b667e64e6e139343a1aaf0e75868ebf208",
"armv7-unknown-linux-gnueabihf-0.5.3": "750037a75d9333365051afb0801a236bc07f7bbf28976abb1b0d77fb0dd7ccd7",
"armv7-unknown-linux-musleabihf-0.5.3": "e143cbc82ed16fa19d92a9ef3117aee27f043f784d55f909f9796edb2887ab35",
"i686-pc-windows-msvc-0.5.3": "fc10c2d9660893f0e8409742ac4af3767f04564b0be016dfd2088fe86c1427c7",
"i686-unknown-linux-gnu-0.5.3": "5a9f5d61ce8906589b8bd399710f659dcabf2f52504533dc9c9a14d125492a5a",
"i686-unknown-linux-musl-0.5.3": "517182e5cfc84fe9d7bfe5bd2d49ea9aff9ffa5ab279ae744dc796771118e594",
"powerpc64-unknown-linux-gnu-0.5.3": "c21e205404b9613b9cfcd82cb84222dc71d4f4534bef822c7306b44847ff7842",
"powerpc64le-unknown-linux-gnu-0.5.3": "b68f0f2a1a3a90808fbf0f82d09ad50857b430eaa7b086982824af040f13bda8",
"powerpc64le-unknown-linux-musl-0.5.3": "c2621d3b9db558147c3290a15c1968d016a236147c122a2540eff7c5970883f7",
"s390x-unknown-linux-gnu-0.5.3": "f18ce59914e4d4a8e51e4fd13b6f0f2c57eb6d529abbb7d90c355bb0fb867dc8",
"x86_64-apple-darwin-0.5.3": "f4b4f2b24b8f91704a4d821ac0ca4262de3d64bb15c3090cab549834bdf77753",
"x86_64-pc-windows-msvc-0.5.3": "146e5d6305b6f3c1a4d87d344bee80c2aea5439f9a540365e940b1b54caa20c2",
"x86_64-unknown-linux-gnu-0.5.3": "ba8828266c79c299ca24a1d9f2f78172667254d0f8ff07e24e1735d50c03d9b7",
"x86_64-unknown-linux-musl-0.5.3": "73b06fce21772d1c279d33bf53fa2f69c1ed9f929b5b06b14405bbf7244394fc",
"aarch64-apple-darwin-0.5.2": "b4dc200d88ee9a8c9c3d5c755d9641fdf0e22b7d77239b4eeda08f204571f871",
"aarch64-unknown-linux-gnu-0.5.2": "e118c53908dc5baf779319129ed93ac783796fbe0b8416db03066877f0425ee6",
"aarch64-unknown-linux-musl-0.5.2": "4de0933b3a2dbdbf0bc17579ddda21e13d1a2cd6dfbc644e45ddab558f45e827",
"arm-unknown-linux-musleabihf-0.5.2": "926a0f6effd0439360fef7a6726320f0a5212da2259e68046882d4f32e69e933",
"armv7-unknown-linux-gnueabihf-0.5.2": "01e9c31b32f894b8e7b500991dfb35ed7f110d4c91ee9b2ead5f0408d8d91df5",
"armv7-unknown-linux-musleabihf-0.5.2": "b099de4fa747ea34f3f96122906143bf48de4c1c2529348e0651c95b53a0eea4",
"i686-pc-windows-msvc-0.5.2": "66e5934ee5f384270c39e54e5833411dca0c07f8e972d29e6c3c3e87fa53b9a8",
"i686-unknown-linux-gnu-0.5.2": "c91111b470608555c3ed4dc140071d7b041be7fd4a3328cf5ed2ffc5b011b024",
"i686-unknown-linux-musl-0.5.2": "ce67a80b31785268e7252521565b8aca7db8cf7d2f5b4a712a3173d919ad6e33",
"powerpc64-unknown-linux-gnu-0.5.2": "ca6c5dd9f02dbf97b0dce1005ff299632a36a9bc28dd343f26a5ae7aaae4d778",
"powerpc64le-unknown-linux-gnu-0.5.2": "2c60b1537b82c0c873ca0666b69452775566c4519a85efab51f47e2e3e59841a",
"powerpc64le-unknown-linux-musl-0.5.2": "14126a436daf913c86fad68e13db002e7c92ced381a72e8f2df186c1a729a9cf",
"s390x-unknown-linux-gnu-0.5.2": "cad1e4ad85f29fc73ec8fe79b1c0498fdea8e0071e38ecacb953633f1b553c71",
"x86_64-apple-darwin-0.5.2": "00bf6b346cc8fcf57df7653f48fc4bad1b47c6024f75e96e32e3193e9bc8ff73",
"x86_64-pc-windows-msvc-0.5.2": "0e97899b5c800da39730d3a612d8359ad2f346bdea540f973fa6c6ad17129a17",
"x86_64-unknown-linux-gnu-0.5.2": "d2d9d4b9ce536ab7ebb09d33629694385a3ebb72d156ae0b4dd28c9b6f6cbd13",
"x86_64-unknown-linux-musl-0.5.2": "61c386972ce13850cf20308de0be98a056d932e58d4154d1aec663714ac57067",
"aarch64-apple-darwin-0.5.1": "240bc4dc0d424ce652746ea030e61798c07e3d22426c0e0fb46d1b408078df91",
"aarch64-unknown-linux-gnu-0.5.1": "aab7f31071c548e3ce64de5f622494f8d8679ef838d5b07e53e74399d14ee79f",
"aarch64-unknown-linux-musl-0.5.1": "f7b2b4dfb45d6a6c1b98ce1b40b0a3b67b72263f5f722fc8b452d340325fd169",
"arm-unknown-linux-musleabihf-0.5.1": "0205c18b606dd9e496bd664190ab380da27cedb09a84857367431c48bec71c82",
"armv7-unknown-linux-gnueabihf-0.5.1": "f91a59e1fbd3f913464841afd6d7a65b570b2e9255e8df0b36866a8ccbe82833",
"armv7-unknown-linux-musleabihf-0.5.1": "6285fc7f9c3c6872c55846fe57c643e47ba8fabf3c8be825ccbbd373369dba5c",
"i686-pc-windows-msvc-0.5.1": "7b0d716352f36730b3bdd40e1785e5e0299a2fa84929537c69f0b7ad9a1040e7",
"i686-unknown-linux-gnu-0.5.1": "db2950f841070db17192fbba149aebfe64f4087eb6ba842974a03ee12c66fddb",
"i686-unknown-linux-musl-0.5.1": "bac54f3c4afc0508fc91d03091dbce87efc8ab30e8d6ed2fcb7b9fc23533d040",
"powerpc64-unknown-linux-gnu-0.5.1": "40c415fa19fbaa4fe7452bea6248a381cc509c43eb25aa77b1d207b4d201987a",
"powerpc64le-unknown-linux-gnu-0.5.1": "1ce2764b411864597309fc331a31009dfb44abdd5ce767b83e4fa8208b9a7a9a",
"powerpc64le-unknown-linux-musl-0.5.1": "44239fdc81cd3eaf510683009aea1728cd7f647aea8b5901fa6e17071e77cbfa",
"s390x-unknown-linux-gnu-0.5.1": "362fbe64935721239c7e75e96ad1b313b30a2fc13b4a87470a5ff040c883bf2c",
"x86_64-apple-darwin-0.5.1": "817c11ee1808a775290d694c28090e032076be2c97e04c3fb7d5563a2aa52041",
"x86_64-pc-windows-msvc-0.5.1": "3dcb47a9334d7527e402eba8ba5aae3a62c77cddc3ce400f57fe2a40a621000d",
"x86_64-unknown-linux-gnu-0.5.1": "942e29ff6769b096c7c99e9c3b1c08276869667d0d5d6121852dd9b9d875b3f3",
"x86_64-unknown-linux-musl-0.5.1": "c446a98876ed86c810a80621a43e2378c35f39794020f8de99da72b003b17dd5",
"aarch64-apple-darwin-0.5.0": "400f1e87d211af5ba4c412984b6d0e1e885cae480ee37cab58b5fabe9f9539c5",
"aarch64-unknown-linux-gnu-0.5.0": "ae2832e4e4cc923cdc62072eb23eab784be10450d6c1f10da58a24a3d552aa46",
"aarch64-unknown-linux-musl-0.5.0": "f49e979a2d64de50006951f15eb303524548a40c240b111acf3bf422abba7aa8",
"arm-unknown-linux-musleabihf-0.5.0": "9d77d34abbae1e77fdeb022dffc3dc736ddb193e2fd5e99068d16ebd0583b7ef",
"armv7-unknown-linux-gnueabihf-0.5.0": "e18fd84a30b89da3d850c003381b7946ac9a2c10e097206883c6f3d041a8b4ab",
"armv7-unknown-linux-musleabihf-0.5.0": "e1ccf1342253f5124442981b1fd01e8715a6ae20932370b8ebb4ddae06dd0003",
"i686-pc-windows-msvc-0.5.0": "288a13a986ac78c6f6a8b303b537e5eafc0501aab77249b2724484fa6ffae21f",
"i686-unknown-linux-gnu-0.5.0": "2edca509d6a57d07ad4b755cd992e4733531954374b7220c5795fcdef267af71",
"i686-unknown-linux-musl-0.5.0": "509a326cff65ca2fcf467b117ecb30c689b98ed35f79542fd358b44958fd7aa3",
"powerpc64-unknown-linux-gnu-0.5.0": "be94c615d8767f174beaf354fdb3fa3374bddb4ff88b8c157ce3c9e648ce4f95",
"powerpc64le-unknown-linux-gnu-0.5.0": "04c5883f4f4f1bcdfee452db51e97e00a2fbdc5abfd20a080aede481e7478743",
"powerpc64le-unknown-linux-musl-0.5.0": "4d8b6b581344d4ebd3fa3cb7c144e62be6671c62eca6f1dee8e799f0daf23707",
"s390x-unknown-linux-gnu-0.5.0": "68bb232360d081407674f740460071c6c34567dda0ff1782eb352ff7ca437b8f",
"x86_64-apple-darwin-0.5.0": "e0b64fb827ad2d93e0bf5fc508c38a9c6cdd295949f66efee92448c89a786913",
"x86_64-pc-windows-msvc-0.5.0": "47ce6713934f9c692a2051551e04cc9d63ee2e418f4179dd3ec8545b5cc22cb3",
"x86_64-unknown-linux-gnu-0.5.0": "e8f8c7e55ef2dfb0b57faba265faeb5049e30b9065a38e2a4fef89d6f6a492d0",
"x86_64-unknown-linux-musl-0.5.0": "a82a2e9c0cf4af58aa1f8d4a6f910c2d36abd38dd6d3315a6e11e7176c872a8d",
"aarch64-apple-darwin-0.4.30": "5fb068be1d0c77d0829a0a611a470f74318f114c4dc8671cfaf1e606ab81e40a",
"aarch64-unknown-linux-gnu-0.4.30": "1beafc7773f20dc89154a338d5d4cfda98a8004d40249fe040806c5780ecb33f",
"aarch64-unknown-linux-musl-0.4.30": "c6b267c78d4dd2dc90853b4dd265d9508de2b454b20ef03bd242848d5994df9c",
"arm-unknown-linux-musleabihf-0.4.30": "1a7f220167a49128b3dce0b96b3f71ec5c8b9eb4f85c9b520f0d849c0c55f348",
"armv7-unknown-linux-gnueabihf-0.4.30": "18f4fcdc86a9c1cb6cf65aed94ac72e9cc9486b0aa4266dec75e332d65f14cdb",
"armv7-unknown-linux-musleabihf-0.4.30": "589a642bf0d9c9ef98a3cabb67fe87a899ada28bb576a8d3d825d4088e74848b",
"i686-pc-windows-msvc-0.4.30": "c809f327b9347e95d5743ff65538d31fff2ca2bd7a1504d3abe19641d66256bc",
"i686-unknown-linux-gnu-0.4.30": "66b3193e64a97249f24b8f743957a65c8e28ffcb951d048e37067d4003604568",
"i686-unknown-linux-musl-0.4.30": "550e5643bf396bcc6f5ef44bee1da0e8ac934fccbc4bb5c9d0a4642c55b15c5a",
"powerpc64-unknown-linux-gnu-0.4.30": "134fa292c8a51520b9c5cc25a486d5420a2b902b40a27c172844bb1ae741b468",
"powerpc64le-unknown-linux-gnu-0.4.30": "92e9e1c766108be851fbf7a6fb9e6152d98582d7cb32c1501ee088f524514815",
"powerpc64le-unknown-linux-musl-0.4.30": "4f5c6b7eeabd81bf9a12cb4d709d9ababa89ab2ac2e53c765de50dce342b6f06",
"s390x-unknown-linux-gnu-0.4.30": "b894d5f74d7b250805b12d0d241528023c611bc6331303ce4581c1518ba00cc9",
"x86_64-apple-darwin-0.4.30": "a56b550c08e3315bfa450c134410bbe91318ae2f39a0ce2649b882a76cd9b601",
"x86_64-pc-windows-msvc-0.4.30": "0a2315679441bb3f861b814fd3900a3f2bbf05d7f77eb43612371f9710f1feb4",
"x86_64-unknown-linux-gnu-0.4.30": "5637be5d163ccdcb9f0fe625890d84bbc3596810320be1f56b53bb111edb5dd7",
"x86_64-unknown-linux-musl-0.4.30": "f01c55c20eb356bfb7316020ec79d18ac2846ce2dd5bc68ef68858810ccac7c5",
"aarch64-apple-darwin-0.4.29": "0679dd093e97c1d8996caee91ce5aed76533f023fef639b281b2479574d22338",
"aarch64-unknown-linux-gnu-0.4.29": "985f7909af497dce312fe57c6f34d8e7a213445ebb219dd002bc4f0b60261b2a",
"aarch64-unknown-linux-musl-0.4.29": "5c052a5ffcfe3e9ebf42bd0af57c1be76842cee3aaec74c0c87d57882b53eb1e",
"arm-unknown-linux-musleabihf-0.4.29": "39aa63a330bd6eb458965fed2dff31511c75ff3c9da17640f30742a7d698529d",
"armv7-unknown-linux-gnueabihf-0.4.29": "4c515eab94b3c008ce4cbfb082f3f804827793495ab4d72b5643bfdfe582ce52",
"armv7-unknown-linux-musleabihf-0.4.29": "28f0aef0e5b667c9e131345215915dde3e95e73f6c9c7fc06efd2df6efdf92e2",
"i686-pc-windows-msvc-0.4.29": "3d22457614bd80280d385166da1e38e4e046610730be5e1a74e053b7ffc4a1ab",
"i686-unknown-linux-gnu-0.4.29": "660736950f58bfbe2c2ed2427c93d54dd733f002dd6057e174ab906cb6d51488",
"i686-unknown-linux-musl-0.4.29": "c4d398316eaaa0d9a024370d8e4694fbca4c8afb5d86911b612a823d1a2bdf08",
"powerpc64-unknown-linux-gnu-0.4.29": "f256106ee2a69ac3b632e65f8d240b6f01f1150c98c343386d3729eaa580a7c0",
"powerpc64le-unknown-linux-gnu-0.4.29": "a81f1c190562b372f081b630be7b459e66a151b1a18c09bfb1a1944b3a560cc1",
"powerpc64le-unknown-linux-musl-0.4.29": "3fcfe1b5d0e6b4e81d852d0d60adcafe1e8c49f03e14cd9bec8607cef198fd80",
"s390x-unknown-linux-gnu-0.4.29": "d55dc29f3b071cbb873a099144be6e498bf6961e5acf0d6f75e18791667574a4",
"x86_64-apple-darwin-0.4.29": "3c0336e162707938b6b37d516522607128045f9cdd8443b5ff6434df4c66c97e",
"x86_64-pc-windows-msvc-0.4.29": "5b7c6d0ee94a6b389fa289d09642352793dc972701a6ad50a73a02431f392e17",
"x86_64-unknown-linux-gnu-0.4.29": "c755b97c0c555eb449538b6d8c7cc5555a5668f08ff23a300eb874277fa58668",
"x86_64-unknown-linux-musl-0.4.29": "3b4030b5f4c0a57c5f2691db47c29c8e14d3712ea81dae0c7fdae0034ae1f353",
"aarch64-apple-darwin-0.4.28": "ac75193926e6295ee0b8715296054b48b758f63fcf3732d8538c69140b9793f4",
"aarch64-unknown-linux-gnu-0.4.28": "d7dcda636da601a9f5578e5448eb6de00f56a06e37bdb05d6669f91ed7191555",
"aarch64-unknown-linux-musl-0.4.28": "a18f1d1a356bfa0b20b0218f5d83a05da38380b087ffe56ab82adbeb9ab5c1f1",
"arm-unknown-linux-musleabihf-0.4.28": "2742349f37c96b0bbfecc6c4c240c17cfbbe247470cb2b3e2c18af05ccd4e795",
"armv7-unknown-linux-gnueabihf-0.4.28": "2df2aced6e8fb601bfd0f0a17bc82c5d35d0117a9df8ef14ddef6693b8c38d48",
"armv7-unknown-linux-musleabihf-0.4.28": "94c3960e02899e839d3fed43de61208281e3b81b72c4934172b369ef647660ee",
"i686-pc-windows-msvc-0.4.28": "118bbc97bd416b63b0d49ed20f198ac3801bcd177598fa431f87fa30aac5c8b0",
"i686-unknown-linux-gnu-0.4.28": "5bc1598815cc261b01d107252b653617b4e2601f5c27780cbfc2d8caaa26001a",
"i686-unknown-linux-musl-0.4.28": "e80d6481943123fcc29f86dcdd723a3a3680dc0c3420010823016f1f7b572b0b",
"powerpc64-unknown-linux-gnu-0.4.28": "91a7b40a678119451250126816b773dc73f3f54c8339e5693f28087214f2d3b0",
"powerpc64le-unknown-linux-gnu-0.4.28": "b041d98ca978c09e4d957b9a55d997b63d8b9c97675b32c88e7973187aa9da7a",
"powerpc64le-unknown-linux-musl-0.4.28": "7ad21951e1cdf66a9ca2402aaee294e0d62922b01049bc48132373c1d9500176",
"s390x-unknown-linux-gnu-0.4.28": "b46121ac837af41fbeba0a1caabd62413a33a6f638a4650b3123385e92580d5f",
"x86_64-apple-darwin-0.4.28": "445e3f3ef48725bfd838f7ce3163cd7757797186ea2c89f6d374e6fffe24cc8b",
"x86_64-pc-windows-msvc-0.4.28": "8341760e108c8584c5d3ce4ff45d174cbb5f9ba5adf1a97c50af14f47f3b7699",
"x86_64-unknown-linux-gnu-0.4.28": "fa0183aa09a410bec74c70f4e750ab6f9e91c152a452da4a06692938a3d5556d",
"x86_64-unknown-linux-musl-0.4.28": "6c0317109500cd38cb27dfe1e8d0fad032caaab1afaa1062a7a9480606da6cac",
"aarch64-apple-darwin-0.4.27": "f2424efb16c5e646901a8c09b604e3cec3adfa871481c401947a4ae8476ae02f",
"aarch64-unknown-linux-gnu-0.4.27": "474ec2797950ccb0ed7a7300a20d9b84e0af71cac48d24ed8dacb0ab3e8ffd73",
"aarch64-unknown-linux-musl-0.4.27": "31a6aaa90b9948c1b738a0e30ae80f1e0d69938a7e76f5ef7d755d619547e7d8",
"arm-unknown-linux-musleabihf-0.4.27": "7e2ad3c1a30580ec6e7065ac12737b8a078c81d30de54b24717ecfc6caa7b364",
"armv7-unknown-linux-gnueabihf-0.4.27": "8b5b195913bfbcfe0cdfc013d6a3e073afbde347b68261c66d4fbb182ab5b073",
"armv7-unknown-linux-musleabihf-0.4.27": "70bb9bc564fc88a4b76b55c6ec9c8e3e6a3f7cdcbb05affd93bed5e9bc26f71a",
"i686-pc-windows-msvc-0.4.27": "5dd59d011bf19968628a25a76ff7e7d0ff5ed0b43ba1c6bc0e2ce960802048bf",
"i686-unknown-linux-gnu-0.4.27": "23fd57db751b7e919ba72c0c38566ddab808447b74ab582cd80580733c781f65",
"i686-unknown-linux-musl-0.4.27": "f21a27146c88107597440d79f3cc9c5d40a049b2e8241f11cdeafd0f74b91d70",
"powerpc64-unknown-linux-gnu-0.4.27": "ed16a3983285267abe92309219694cf06f8711d217f9aa609638d756201a442a",
"powerpc64le-unknown-linux-gnu-0.4.27": "ec0f343b330d380dca7808be3262d55c5559fdbc09abafcafc9ab2396fb108a3",
"powerpc64le-unknown-linux-musl-0.4.27": "7fd1b021b807e255c7742e8a0b0ac6738742a6faedee16229f9cac6a27f3283d",
"s390x-unknown-linux-gnu-0.4.27": "d6ec2c48705f0e3eb319cafcd3fe7265f7ad831a4ce9f75ccec2f45f2ee18cda",
"x86_64-apple-darwin-0.4.27": "607810910c630333a6dca3e75257bc69ccaf0531febde41c00c7e7ac2b173d3d",
"x86_64-pc-windows-msvc-0.4.27": "6ad21f2d42ff61740666133de00b6195bcb806780d08d7734d1ba1adad940700",
"x86_64-unknown-linux-gnu-0.4.27": "5565ad9d050a08fef2951d28aef1372ccfe39ccd41dec6fea13167589baae087",
"x86_64-unknown-linux-musl-0.4.27": "6b8233d4890b28575f3636f974d906089b9c4a6e9903ddfea257a2f16f3ca28a",
"aarch64-apple-darwin-0.4.26": "42cdc5e7adad5348c8763ec3d57ef7972a25c034121d13424614b83849585303",
"aarch64-unknown-linux-gnu-0.4.26": "3f4bd759d3c089b6db87b278642aac1a681ef22a0d413dc3d6da7afb0606649b",
"aarch64-unknown-linux-musl-0.4.26": "8ce7ac4d93cf145b9d67642cb54f2311142fad62a59fadb7ca36ad68a3108f98",
"arm-unknown-linux-musleabihf-0.4.26": "5fd4cf5be34a90eccfe0c86137a06be77b9e6355fbcd7581aa9a69c6de275568",
"armv7-unknown-linux-gnueabihf-0.4.26": "e680cd84efd4f2b7ced6ff566afa8ab88e38c3bf33d66989f6ff905ff9cb1abf",
"armv7-unknown-linux-musleabihf-0.4.26": "4decb4481b10fcf862ddbfb03f3dbf270652180086eb6dc40e36684f592daa49",
"i686-pc-windows-msvc-0.4.26": "bd3599762172f1d321be22f1f788cf2a6b981123f53bc7aa5336901e31e9a9bd",
"i686-unknown-linux-gnu-0.4.26": "4db90f578dffb5cd0017c5d4e77f01756961fccb1144e1770efea740af771532",
"i686-unknown-linux-musl-0.4.26": "8b3a73585b3d7a868190f44373be62c38c05877e1636d467b68850a0b98a0930",
"powerpc64-unknown-linux-gnu-0.4.26": "47d14be9be1c5b63518a3170acb9191bf4a8a39f4ee98e54c666b9384fe7a781",
"powerpc64le-unknown-linux-gnu-0.4.26": "c65b94d17c4f06ca8d2d443851e9eff00a428a2dc147925fd5de1654fd1a9620",
"powerpc64le-unknown-linux-musl-0.4.26": "220979e1f842263e00039d44a7f774f0d798a9ecd8e1a75187c8db192ea67b3d",
"s390x-unknown-linux-gnu-0.4.26": "22bd9d010316bc78a0a2f5bf5c726dbac8c84df5856fa745621aaf1691d7a2fd",
"x86_64-apple-darwin-0.4.26": "b424403d93939fa025b3f1dcc34f23b0676ad48d3c33c9486a4e55d095b8ad07",
"x86_64-pc-windows-msvc-0.4.26": "1dfb521253945f381279d21b7c3f4e6539100a7fefdcd0bc7080668237575cd3",
"x86_64-unknown-linux-gnu-0.4.26": "6fab73c9e2ea841852bc3c7157c1e49470ba62d1cde4af401436f13468b8d709",
"x86_64-unknown-linux-musl-0.4.26": "c9dfe6a38354a85b3c4c4718703c23682c8cd7f5ad2e592458cb081b970f4c02",
"aarch64-apple-darwin-0.4.25": "bb2ff4348114ef220ca52e44d5086640c4a1a18f797a5f1ab6f8559fc37b1230",
"aarch64-unknown-linux-gnu-0.4.25": "4485852eb8013530c4275cd222c0056ce123f92742321f012610f1b241463f39",
"aarch64-unknown-linux-musl-0.4.25": "d08a7a8adfa7f1e7e6d427b9ab38b071a50dcf63a11b3cbfaaad9b8e68e69df6",
"arm-unknown-linux-musleabihf-0.4.25": "31255c91483407ab20000a7e46d702aa1c83c886a7639aac1583d3b5ab77b563",
"armv7-unknown-linux-gnueabihf-0.4.25": "789f18e18b0623e34dfdf9f1cf340d7c432eea575c00f87c0ed2a1004a4ca386",
"armv7-unknown-linux-musleabihf-0.4.25": "09b8fc32bfbf8bd53251f46a6896f17e86ddb61ef96ee8249a541a73cc8742aa",
"i686-pc-windows-msvc-0.4.25": "328e36c4a3e262e27f714d580d7f9e8eb9bfe66ed8c65cf9aaf63a6d44d3fa16",
"i686-unknown-linux-gnu-0.4.25": "496bc5ba76a1d7fcb6fee2f3520333acb7fab6153f54059426e69d0f98db6bae",
"i686-unknown-linux-musl-0.4.25": "e99caee76fa1e73fd335c164fbfd3bc3a5fcf1dace8a7c846b3707e6ede5222b",
"powerpc64-unknown-linux-gnu-0.4.25": "b7a1aadea6eb9aa225404d4f9ee79982304864668a6ed4c9dbaed236fad55032",
"powerpc64le-unknown-linux-gnu-0.4.25": "32421c61e8d497243171b28c7efd74f039251256ae9e57ce4a457fdd7d045e24",
"powerpc64le-unknown-linux-musl-0.4.25": "57effa74e70011be0579a2d8e0590c636d43f4758c18e52b02c287f677c87be9",
"s390x-unknown-linux-gnu-0.4.25": "9afa342d87256f5178a592d3eeb44ece8a93e9359db37e31be1b092226338469",
"x86_64-apple-darwin-0.4.25": "f0ec1f79f4791294382bff242691c6502e95853acef080ae3f7c367a8e1beb6f",
"x86_64-pc-windows-msvc-0.4.25": "c5c7fa084ae4e8ac9e3b0b6c4c7b61e9355eb0c86801c4c7728c0cb142701f38",
"x86_64-unknown-linux-gnu-0.4.25": "6cb6eaf711cd7ce5fb1efaa539c5906374c762af547707a2041c9f6fd207769a",
"x86_64-unknown-linux-musl-0.4.25": "2e19246cb4ac903b9bbe9b52b09de673885785dfe64e5faa818ac13c1e5dfa21",
"aarch64-apple-darwin-0.4.24": "69dbd88647d260dac051db11004f1e6438d1296da23cfec084a5ef9100e46c4b",
"aarch64-unknown-linux-gnu-0.4.24": "6b2fc7cf361ee7075ddec6d2ba1d724fce887d2fd38014314357821fb52897cc",
"aarch64-unknown-linux-musl-0.4.24": "887e1aa6e6b616894e273fe543879f4d1f117519275a1c224a3ef03499c54445",
"arm-unknown-linux-musleabihf-0.4.24": "d43e56087c97b2f2c4bb58926f8c1092a6c653065b4644e21b2ae2b21811b3bf",
"armv7-unknown-linux-gnueabihf-0.4.24": "7b41b20a13307100c88688e60048bfb5216e0967e884d9fbd3fb22d68d56a085",
"armv7-unknown-linux-musleabihf-0.4.24": "d1ab37d51e333dac1191e1e7d5359d8405f5b2b05d257b2d5e4dc9dfa618d77a",
"i686-pc-windows-msvc-0.4.24": "a2a05cecc1252a356528f912688e84fca768eead930082fafba39b1488115b09",
"i686-unknown-linux-gnu-0.4.24": "0471c00736fd1d101b8d8fc3a73128833ad712e5cc113f3e955ebb79fde4d572",
"i686-unknown-linux-musl-0.4.24": "735249b972407ea5a714863f1638e3d374b9a8270f1a81a5b1db5e1d59565a4e",
"powerpc64-unknown-linux-gnu-0.4.24": "51e8aff9c901d57628d565a498c06df1baeec16e6efc0eb7b1cfc73809fcb564",
"powerpc64le-unknown-linux-gnu-0.4.24": "c2e87f03900f7a386b2e5a541979943295cd44aa9e397854aa295b59a738172c",
"powerpc64le-unknown-linux-musl-0.4.24": "9d29dfb1b7240fb1672f710cbbc30f59f2fdf52f764fac80bda00c2df7f6b92b",
"s390x-unknown-linux-gnu-0.4.24": "fccc7c481c33f8f252fcdfaebde8313a6d7881d89e0af6b946b580097f800073",
"x86_64-apple-darwin-0.4.24": "5cfe28aae1472d3e3dde8323d9351e53425bf56ade838318487b76cb97785684",
"x86_64-pc-windows-msvc-0.4.24": "a990d2f067c7922493921662e403e9961733d159deb6393f05bf59fdd9e0b0cf",
"x86_64-unknown-linux-gnu-0.4.24": "06bc8c7de34cedb1dcb6a32a2462b09f92984ceb9d6aec9035424c8fe30ca510",
"x86_64-unknown-linux-musl-0.4.24": "1d06fbda8f87232acd7b315c1202925e44627821901c49d0920e9bbec34b09b8",
"aarch64-apple-darwin-0.4.23": "be5cdbdcba170a989f9be991d89277eb42eb3fdf9c020fa4d3ac4d3d292a74e8",
"aarch64-unknown-linux-gnu-0.4.23": "8139b22b648085c1a89cb56aff05c7c081c544868f323bbd574c41423cc170da",
"aarch64-unknown-linux-musl-0.4.23": "d35c4849fa12755749450593852859276c52f21a8e9d7457bf058bd84a1263dc",
"arm-unknown-linux-musleabihf-0.4.23": "9ef3d377a543aa2c5ec4bed4c25327610852af09d9969cc65f2da337632d13d6",
"armv7-unknown-linux-gnueabihf-0.4.23": "c01cbc3432500394f6c4709879011b499087d3cb37effd162cfca3d6250b72c2",
"armv7-unknown-linux-musleabihf-0.4.23": "0d4c8eca6b22d062cdf761320d83835508f2504f352ab467e0e3a372d711e3e5",
"i686-pc-windows-msvc-0.4.23": "640c5c5d23c0ce629a2f68fb1b6de447bcb35388dc9885a998b040b4c34327dd",
"i686-unknown-linux-gnu-0.4.23": "5c30e7cd12fc1d3ea224a7aa3818cf614c809bb895bcb09e515ecee1bd1c3ee2",
"i686-unknown-linux-musl-0.4.23": "2ba9a7fcc2a5b9521107dc3614d8cfbd526f195fbe5fb4749ce2ffd938e0fd77",
"powerpc64-unknown-linux-gnu-0.4.23": "6ccb7bd0a45d6a4cab1ef58172df499676fbbdbca73c2bb1a6d8c3554507a8b9",
"powerpc64le-unknown-linux-gnu-0.4.23": "c43e004c7cb8b1db4eeb7f751d811e11c9b799c31e2beef239342c5b007e3e2e",
"powerpc64le-unknown-linux-musl-0.4.23": "fab6d53a945bfd03e738a636f5f2e323c0eeaee12d3c4c8b455e3d95e458a24f",
"s390x-unknown-linux-gnu-0.4.23": "cd6461ece4c0627890a4f71487dcd538706fc5535c636eaa7cb6908752839d10",
"x86_64-apple-darwin-0.4.23": "48679f4185aee4f844515a93e22ed9a9dfc9c18356ecd7547d2ddddbb446bce5",
"x86_64-pc-windows-msvc-0.4.23": "906b19adc9cd7c47e6bd50e5f68e2e64ebc7abaeee90e44e97e560d9bc01a677",
"x86_64-unknown-linux-gnu-0.4.23": "337d693e4700d7b963ee35ecf12572d2d7f97507bbc151a671eee12e91fcc994",
"x86_64-unknown-linux-musl-0.4.23": "4545997b54bf405f5dcb2379b4b3c0e1d0bb930e198733f7b8325598a8e95cbf",
"aarch64-apple-darwin-0.4.22": "a58779b2009926745cabbe075ab16824dec53e1ff635a47a43115f6b95fda607",
"aarch64-unknown-linux-gnu-0.4.22": "bf0f5249da890474c216856e8e4de2a24c33b8a8cc3b5df058f10a38c6f5b234",
"aarch64-unknown-linux-musl-0.4.22": "4951dd9e5b5fda712db5f30bb76fad4701a85cd8e6dab61d7a78acf040f4c211",
"arm-unknown-linux-musleabihf-0.4.22": "78de0183e9e7ca4f37a3ab8bed199b07273f010eba95e4e80af07b7717be2f14",
"armv7-unknown-linux-gnueabihf-0.4.22": "09cb6ed3e3d3ea4ecd7c51a784cdbde920b7bb749cf91589866ecc914910a677",
"armv7-unknown-linux-musleabihf-0.4.22": "5707dee00cb3b998ca8fe085fd90e19e8e5cf845840a04bebe7636eb75b636c6",
"i686-pc-windows-msvc-0.4.22": "818250c85496f54f6b703ced9a8e78ac518fb9137eba657e60bfff4a27b28574",
"i686-unknown-linux-gnu-0.4.22": "57e9465238723814f5f5f78c164bc3f80d7741fc96d3bfcc89b11ccd89cfedec",
"i686-unknown-linux-musl-0.4.22": "15e2f00e96a12ff5554b86be6a549335d9b1ec8599984daa582c269b2b18ba9e",
"powerpc64-unknown-linux-gnu-0.4.22": "e9308e5e2e856a28c3080792d93ff8528130ecf327719a19651f8da130779800",
"powerpc64le-unknown-linux-gnu-0.4.22": "61ff11a99f31036883ce6d1185b7cb3e49b7d37ab79764fecbb7cb11749b01e1",
"powerpc64le-unknown-linux-musl-0.4.22": "d8f3c7e3a4348816eac7208d40ad4c560f1739b3a34f274b1e50ba7f7f4668ee",
"s390x-unknown-linux-gnu-0.4.22": "26d737cfafdde8f2a3588915cf2ec4f2a448f03b83f7f15b6f561820a3ecefd2",
"x86_64-apple-darwin-0.4.22": "90185ec1b8d67cd15e6342a9c82dd404381f42f37ab9721abcfa028034441fc0",
"x86_64-pc-windows-msvc-0.4.22": "709ab9ccf3958131ad2fac4590ebf005f9dbffb43d801d489492b654f321e49f",
"x86_64-unknown-linux-gnu-0.4.22": "11c3b92be7b0a72d1b3fe0140485a55ab581ea11e5f61baf9975a89c6d70018f",
"x86_64-unknown-linux-musl-0.4.22": "4e89a6a01caab6eec0490c8dc47079aaac086ad1723e00ba2b6f2536d8ffd561",
"aarch64-apple-darwin-0.4.21": "a7e40398954d45c58573bfd79eb2cb4c329552d50101b519c3477ef525ffa8bb",
"aarch64-unknown-linux-gnu-0.4.21": "52db7b44b57d904ae336610c5c857087a80cd4ad8e7d30784ca06ce70dc5061e",
"aarch64-unknown-linux-musl-0.4.21": "1a0f764fbed8b76b7aaf8d866844bca62645b8aaf257d89ef332f4ec17a0dfff",
"arm-unknown-linux-musleabihf-0.4.21": "b0b0caf931b94e740c68de80ad0c9310fb85e06d0268ed2ffd6ef0a7c5afa836",
"armv7-unknown-linux-gnueabihf-0.4.21": "2c05350217b3045d010df11758a36f23f17e51594c10533c0d3f0b42a3bf8e29",
"armv7-unknown-linux-musleabihf-0.4.21": "93a1960fe8edb2ea720615a0c544877bd9e1ce24ac12fb0015c0b38aed09b640",
"i686-pc-windows-msvc-0.4.21": "f170a08e146cd9c7beb17041e23affc3f379fe39ab8c7035891275cf10e4cda8",
"i686-unknown-linux-gnu-0.4.21": "29d805ff63e8a31a0e42d50914d8ed714bbbe1148ebd0cf94cdeb62f5c6522c0",
"i686-unknown-linux-musl-0.4.21": "ed1ba4f8216bcf14ff7f2592fcd4c0c75a88841f2703ba36713f2495b27f0fe3",
"powerpc64-unknown-linux-gnu-0.4.21": "56cd5bae87ce3c7eb8c8dd678689def06facb8ca5dd91a35a037cafa74b9c761",
"powerpc64le-unknown-linux-gnu-0.4.21": "9dfa72df994379a8670c9a108f4e9526efc6aaba246168636047f4b3b1466a97",
"powerpc64le-unknown-linux-musl-0.4.21": "dccd70ddf999f5efc425cba92a7fc3aa423b750d6d46d35902e565bd1c8c22e0",
"s390x-unknown-linux-gnu-0.4.21": "37c0ca423f7d3fbc708fc6331c62805dbebafb883a9d1360ef9254c2169052cd",
"x86_64-apple-darwin-0.4.21": "21e3144995d3f8fb44bda6ed859fe0d3dd0d2de0d33a13beb37bb2d99f094057",
"x86_64-pc-windows-msvc-0.4.21": "9ac448e5406e2e187cfe9b60b767985e1e7d25d479fe39ef7f0423edc2c08939",
"x86_64-unknown-linux-gnu-0.4.21": "2fb2fd070b27f2ea741fafde8a73ab7bf8e945c802bc92e07db01337d387c8e7",
"x86_64-unknown-linux-musl-0.4.21": "32902e33b46ef011257d44af1f515eb824b1b17d7f24c139bcecc8eb1984762c",
"aarch64-apple-darwin-0.4.20": "b4a8df5b37ccc80a08a6a39647aa1b329645e932fb770158aa1453ffde11e1ab",
"aarch64-unknown-linux-gnu-0.4.20": "e7b173900e155210aebf205a3041ba8f896febb05d4863ba6390a3cb79c5a722",
"aarch64-unknown-linux-musl-0.4.20": "48373b07772021df32f7fbb38226e4ad9f3bbc27f0acf2634e0bf9591d133902",
"arm-unknown-linux-musleabihf-0.4.20": "fac2d2647ab8651743a144dc5bc9329de5b3f5724817a05c36891b6ede6e4103",
"armv7-unknown-linux-gnueabihf-0.4.20": "affeb6a9e9d03df245bb5ab252d3b3562f90228bfa4c4029842e8370445b3feb",
"armv7-unknown-linux-musleabihf-0.4.20": "59c9bba80f7f4c91576b1add15a5d695d931833f7c9193c9dd252e2ca6786a0a",
"i686-pc-windows-msvc-0.4.20": "3abe03202575bd26fa0e7deb1790dc149f90879561a241ed04b6886461f5e3b1",
"i686-unknown-linux-gnu-0.4.20": "33a92cb1316de5e28f69e99a8e66eff435b6cc721366be31c46bf603c070d1ae",
"i686-unknown-linux-musl-0.4.20": "29547e66c0b73a15760416e57be3d1fc58eb4c9c3953f451cc2a6cb432ffacca",
"powerpc64-unknown-linux-gnu-0.4.20": "233de85af024cc2e724829d183261df574ee69c295646f032fb9ef1da09d0791",
"powerpc64le-unknown-linux-gnu-0.4.20": "75f0f0f35fd3fd002c546765191fea45a65c88d07ef9bac8417c42acaed8b548",
"powerpc64le-unknown-linux-musl-0.4.20": "a65075eb916ca738a50e27be0d01afbd6b655ac0c67a0399e84971232ce3a637",
"s390x-unknown-linux-gnu-0.4.20": "23269967f868b2ad1b8844fefc241604e1217cc7b6e703a084e26f4bd9506d86",
"x86_64-apple-darwin-0.4.20": "d5ec2279da6bfa06d63a6a79461d07fa678a50d6aa9381d1783a6072d4df558b",
"x86_64-pc-windows-msvc-0.4.20": "f3a88e0d8a160b696fb4c838521142d2a766b6bd29915c5d5df1a2ddc531030b",
"x86_64-unknown-linux-gnu-0.4.20": "2283626b627f33382338b7621e5b1c8df5432c5deff9e64e217ff33652beb7f0",
"x86_64-unknown-linux-musl-0.4.20": "2b826106f075b11e195390385650f16df79b85ea6e51a7e1f3dbf5acd7457899",
"aarch64-apple-darwin-0.4.19": "6eba1317f46c1533ad3ea8098b732752d298a1b2726a87d96f146f0c45dae1cd",
"aarch64-unknown-linux-gnu-0.4.19": "290740d9b749d9ddc3e313230c88dd6618d052a4b32dc9b900d734036e5b4b31",
"aarch64-unknown-linux-musl-0.4.19": "2ae6ac4f5e3b465ced1f14520d30305924a02ab38e6c20def341b0c50f3b2d0f",
"arm-unknown-linux-musleabihf-0.4.19": "56bc058c4f92aecaa1b0843790f475d3a8d759f70d2456a64f7a804324406446",
"armv7-unknown-linux-gnueabihf-0.4.19": "7b94f62297447cdc5d9857cbef2afde685ed74c2f87e1b0606b50647f5b438a5",
"armv7-unknown-linux-musleabihf-0.4.19": "915827e42348e93877ead47733d721579a837fe4c88e839396f5eb18afbb8bd5",
"i686-pc-windows-msvc-0.4.19": "97f827433e351140e693c05743d59bf15d5e0b784cf2a7b900113901f0f60268",
"i686-unknown-linux-gnu-0.4.19": "68b93d15880dd87da1a0866942128d637ccbd399bf4742bdfc3219364f606aea",
"i686-unknown-linux-musl-0.4.19": "df660a0c66c33bb7c59c1d1e65e352b0b2d14b04469a8448f9d80c621ef594da",
"powerpc64-unknown-linux-gnu-0.4.19": "e1acc1ae67111b91af895a75ba743510af088d375d1d0dce5bbdb38eccc3feb7",
"powerpc64le-unknown-linux-gnu-0.4.19": "697e70caa5e4b0d0f7302b5e9e8c9b31c7ccd4e6a91cf03c52b4d783f3527341",
"powerpc64le-unknown-linux-musl-0.4.19": "3edc272f490d9758e05f1a88db6989606ed6f180c072c7913fbca8c2de2b6845",
"s390x-unknown-linux-gnu-0.4.19": "64a24a57fee65f5d54573f82354e5fb6d77753fe3ba8d8b62bf0097f76760be7",
"x86_64-apple-darwin-0.4.19": "2e591e055a2c38734cb35927aa6d7799b1d3b492bc74cede6b9b1be16163c3e2",
"x86_64-pc-windows-msvc-0.4.19": "b172ec03cbe46b6cc7a328b2cbcdb8d144f53cc18150b288b4476d58d6f69f13",
"x86_64-unknown-linux-gnu-0.4.19": "72d33be21956a1bed0621cd94ef42a22456fc2731c376947b15f581bce3355a5",
"x86_64-unknown-linux-musl-0.4.19": "34b780a752ceda46efbd5fe05ac1c058e75eb78eba5308c40c87ddf2547d0ef9",
"aarch64-apple-darwin-0.4.18": "49929e29bad25dfdb2f4ec49973c2265fbb538ddef3b1fa46fdb20245fa7a605",
"aarch64-unknown-linux-gnu-0.4.18": "6a949b7230ea5c557faf1a2974940036b1b732d2fd073ef35b665fccc11fa34b",
"aarch64-unknown-linux-musl-0.4.18": "59d50976e32d18ea94210dcd8da4eea3306690e3edc1cb5a40342ca1f7db2c47",
"arm-unknown-linux-musleabihf-0.4.18": "13a232efd19792802831e13137efae692cb467eb17e53118e4f4dbf65fa37def",
"armv7-unknown-linux-gnueabihf-0.4.18": "15665159b7f5d27b45eb833f3448714b9069472ccd165af5b9c26ae24306a013",
"armv7-unknown-linux-musleabihf-0.4.18": "714a63650fddc889053ad27f41ee513f2a736fbecf3fd5ba5051b7a13564d0aa",
"i686-pc-windows-msvc-0.4.18": "acc6e07df1b96e42d8e3becea4aa70110c921e6f77f69b521f7477222651bc75",
"i686-unknown-linux-gnu-0.4.18": "908df3634d34f90e49b2e5e67fb627b0a4d8c0571719c60edf28e1a1ee277154",
"i686-unknown-linux-musl-0.4.18": "48aad5171df7e21d22438bf3af3fbe6cdae409e09cee3842d5782dfd11428003",
"powerpc64-unknown-linux-gnu-0.4.18": "0f500d33f5c52addf735329ce6818c8b9226ed379dc63593b0a6a51ef5274c04",
"powerpc64le-unknown-linux-gnu-0.4.18": "8991bddaaad0c06305dd5c4a91e3ece36016de816eeb75f6ee1e3ff9148f65b3",
"powerpc64le-unknown-linux-musl-0.4.18": "0f12157dab6cd370a5f71d9c6d83d5875a3e11ea91977e4f189115ed9f56805d",
"s390x-unknown-linux-gnu-0.4.18": "5c4c101fdf5d29677a4b7ed2bb54d0a7b5c3cfa7abadb8d9ef58f02f68703e38",
"x86_64-apple-darwin-0.4.18": "a99d009f16b6681825ab8a672f83bcf838e851a8914c497ccf65f310b5be17b9",
"x86_64-pc-windows-msvc-0.4.18": "f6cffb80499da1e3ca0a3bb4710cb3601f6933315f5568ce4b785c664d65c644",
"x86_64-unknown-linux-gnu-0.4.18": "946243fa93da15d33e2d2bb59cf9bc622806b5bf5776da8b0e27562e608ad8a1",
"x86_64-unknown-linux-musl-0.4.18": "f0cc269adcad633f06ad50755af38d8f5bf745fbe7e4edafa35cfbb286706397",
"aarch64-apple-darwin-0.4.17": "af8e68a0e831e8b482d9e2f5443af63d24d003b0c53e0d5f921c2bcb5eed1644",
"aarch64-unknown-linux-gnu-0.4.17": "5b7c0269aa15aca1f6171e06db39e24a5ec81f1b484ab382a8db218424afc5b4",
"aarch64-unknown-linux-musl-0.4.17": "7dc33d60655e7a78bf13ad68bff89da6233b24484cd01a668d72a4ca88c7e70d",
"arm-unknown-linux-musleabihf-0.4.17": "1e409703fa3639ac01d5c2b277763987b3b6e856097bb7c59dec168861ad9d9b",
"armv7-unknown-linux-gnueabihf-0.4.17": "b14484ed08fe0073db869ed73c12f2ca1d45f22daabba241e2aa12086793ba51",
"armv7-unknown-linux-musleabihf-0.4.17": "6920000627deb6f101dd6a144f1930f4649550d9bf2eb9189fa7d38270d85900",
"i686-pc-windows-msvc-0.4.17": "c8a2c21e23694e4d8079693d8d980642ceabad7589a8da5d5c112844cd9a1530",
"i686-unknown-linux-gnu-0.4.17": "67d1ed2af42d7f355eb08325645013e24fc3797f33cfa9d5aca18f74a98c4885",
"i686-unknown-linux-musl-0.4.17": "771dbc2b9bda1653029018eb6b7e98d83935df26595a2194bc7f57251bdd9caf",
"powerpc64-unknown-linux-gnu-0.4.17": "f2c4ea4bed0f4f42686742bc1078761a232b1ce51532169f17bd99ebb2595ec3",
"powerpc64le-unknown-linux-gnu-0.4.17": "915a06db243c43cc88f96bf271dd25a3f564ebdda097b79b6d0ee3a6835fc6e2",
"powerpc64le-unknown-linux-musl-0.4.17": "faaefdc9ed84ab263d0be277b4cccd0a7cd0870fb3bc77a50e293a5d2d74d207",
"s390x-unknown-linux-gnu-0.4.17": "a49de0293c8177367bd90c527dc88c105e100d04a866ed15898a2f9778e1c648",
"x86_64-apple-darwin-0.4.17": "7ed2445e83cb919525535774004e294061a8c79253367490647c6aab0e9d06b8",
"x86_64-pc-windows-msvc-0.4.17": "929407c72ec63c54502c3aef61a2195c2b6a145d6d4b15fd9a0528475cc5cd50",
"x86_64-unknown-linux-gnu-0.4.17": "9282496b24585c54f4cb71c1cb1dbdecd650f2311237f71ddf217f8756136f79",
"x86_64-unknown-linux-musl-0.4.17": "6f703368f2d5d4c974e3ece239f64815fb0c6e040eba078ffc87c421a9375deb",
"aarch64-apple-darwin-0.4.16": "cbfb46932ced7319e0b90cff87bfff759bc319e719cca369ace476906b178f25",
"aarch64-unknown-linux-gnu-0.4.16": "c5f4f0a7acdbcb6273d117ac9a72767406e2a8da3cc2c72b5818ca08165e90c9",
"aarch64-unknown-linux-musl-0.4.16": "7f093031e442181b7504fd55e9d0211358646b4fead1317d45aba44efcab719e",
"arm-unknown-linux-musleabihf-0.4.16": "ec9ca782be4eabb583423539fd335cc1ff9edcbcca8f73cd4cc4a6cdc433023a",
"armv7-unknown-linux-gnueabihf-0.4.16": "ee55becb4a3e861fdc25eb42fb9fd224625bc6cb06391894aa2b064aa00682d0",
"armv7-unknown-linux-musleabihf-0.4.16": "5c8dc9de0130004b63ac0b104b460f93bbccc47bc2274294c27ad922142f8d8a",
"i686-pc-windows-msvc-0.4.16": "44e1d1cb1bb87b18ef6a106585e6860cbe4cda7cd9475cd20eb68b741d4d9293",
"i686-unknown-linux-gnu-0.4.16": "72799882d18ea4b8ad7cf8b12768c35311d25f6c4eb241a12d44d52b2b02efc3",
"i686-unknown-linux-musl-0.4.16": "0bb65ab130e6cad00c4d28c8c4f359157bf752ec92145ca44769e66a1143804b",
"powerpc64-unknown-linux-gnu-0.4.16": "5699b114794b83b42753f4ddeefd00c902e10564733879efeb45b60dd25b04f5",
"powerpc64le-unknown-linux-gnu-0.4.16": "65f61fc69579d7f6a7238bd180588481ea4b20ff5d45ee62ce590229d53dbb3d",
"powerpc64le-unknown-linux-musl-0.4.16": "48c83cf9ce5b3e4ecce2fe305aa3f4f8fc0a633f8a0398c7f59f501e8db61fb6",
"s390x-unknown-linux-gnu-0.4.16": "112e6dea4ddbc6c0dbf416bc7d5dff79fcacd3e0f7fa52772f7647b8cd26ca25",
"x86_64-apple-darwin-0.4.16": "ecf035262115b216f6cc709917418df9dbafe47d49b8048c465faa406face032",
"x86_64-pc-windows-msvc-0.4.16": "93a6df8f8225fb73dda275d06455fe5026f00c42e8dccc787812841c0c104291",
"x86_64-unknown-linux-gnu-0.4.16": "f4f4de434206fb610ecb2dbc3fc44c62adb6b61e8d1237d858a10b407a2737c4",
"x86_64-unknown-linux-musl-0.4.16": "aab3a3ef8e4ffa641210b1ed374eebd08b5e612b1a928c291a543d3b624d46d1",
"aarch64-apple-darwin-0.4.15": "32f6ad64b9dcf164fa75efef73e0e9a9b769073e6bfe844560329a3176b39b9b",
"aarch64-unknown-linux-gnu-0.4.15": "cf3f9f98642bd2a7e9d6fa27d880bdbdccc16b6a525b240013789d3048c02348",
"aarch64-unknown-linux-musl-0.4.15": "fbc0433275134fc50d25ce3c291b3e7a53ffb70b447741398c31d6c4deeba4b8",
"arm-unknown-linux-musleabihf-0.4.15": "4cc15f1cd1bf5b3508886baa005c6dd51ae7cf995e8699c100ee5a32da70f13b",
"armv7-unknown-linux-gnueabihf-0.4.15": "380366651e5c924239f1e085fade96ec04d1a312c8a9db7a9f383fcf87e073d1",
"armv7-unknown-linux-musleabihf-0.4.15": "50eb304472f7b6b02c4fed987e0931f02a0b5e7c1620559f0246416e725297f5",
"i686-pc-windows-msvc-0.4.15": "3ad9d42a4308adc69dd7061b0ba9451b26d118032d3937dd92e3acef4aa62a40",
"i686-unknown-linux-gnu-0.4.15": "2e90ee238cba49c5f096c8b0648c7fc531a75dcf0c26eb0cde4d9ce5447d8d82",
"i686-unknown-linux-musl-0.4.15": "0120dfe81ebc98d20dec01f8ce7a8c571673155dbd67ab08a6cf4000de85df65",
"powerpc64-unknown-linux-gnu-0.4.15": "ef10cefd6db62ea6c4ae082457b720332927e86ad3e1dc404da75961d9bd987c",
"powerpc64le-unknown-linux-gnu-0.4.15": "e58fa6d325e81bd845265c980f3dc7ffcd6ae6b912c525bc165938964bc2b0c0",
"powerpc64le-unknown-linux-musl-0.4.15": "c64194823946c45640990c1616f2043bda63e05a2fcfdcc33fd64bbadcc6408b",
"s390x-unknown-linux-gnu-0.4.15": "662f0bee11f330a80b002eb3b6d74f574832b1ceee6943a6bdc0486dabde3514",
"x86_64-apple-darwin-0.4.15": "ab91ee8c6461e9ac385a2f96d23d77e027b4e4274e983d0aedf1d64abfb6353b",
"x86_64-pc-windows-msvc-0.4.15": "17e7ecb448c8b507bb08347df6aa974f58a7536b6fbe21f0ce57372509e409a0",
"x86_64-unknown-linux-gnu-0.4.15": "f590376432bcb26c2aff86b6ec495d55ba2384d068c62dca477f498902721674",
"x86_64-unknown-linux-musl-0.4.15": "70e331be83d97f42fd355f18cb1f8b3f4cadc4973b29fec659109fad4a053a8f",
"aarch64-apple-darwin-0.4.14": "e7368a2ffe19cc39e4b733c0b5ddced9952da85fad5d5eb55c75c4a67c7e4747",
"aarch64-unknown-linux-gnu-0.4.14": "3647ba1da46b7b2dde959c03e3dfd54ad63e7fefe3de7789e1d88931712da1c1",
"aarch64-unknown-linux-musl-0.4.14": "11a871df0ca91843e09871e7ee8f5d000a3df73f8dd6d7d1ebf0f237feaa18c8",
"arm-unknown-linux-musleabihf-0.4.14": "8aaf34ca8078db54597173961788f7a9f292ce473629e0b684f7c7b346fb5a68",
"armv7-unknown-linux-gnueabihf-0.4.14": "6a59fc0794760c20f01dac7594a7559f871d8428b5440303a9e450ae72a53c96",
"armv7-unknown-linux-musleabihf-0.4.14": "099db2dc91ea868864c55e0820bfa1c279af07259aee4ccfe151e2f3a208aaf4",
"i686-pc-windows-msvc-0.4.14": "a6d255d229d2447a259d8affe9e537aadb12079852c1bc9097664371e2406a82",
"i686-unknown-linux-gnu-0.4.14": "6389b5000e256b150f8c185ff3fb28c6bfc4116ad35f07b7b49088675d7c9ceb",
"i686-unknown-linux-musl-0.4.14": "2307c79f88b9302b4ec2db9d500a240b0710f9e011548e776dfbd15fa1c084e7",
"powerpc64-unknown-linux-gnu-0.4.14": "01d94b9de93a424781d5a4b4890b6f4e5f5ea59d98363415d4f90fa75ee80426",
"powerpc64le-unknown-linux-gnu-0.4.14": "0ab4524a49d201368da79ff3d69a01b780cefcec7115acc1448d4a3b71fa3c24",
"powerpc64le-unknown-linux-musl-0.4.14": "51cc5cbb145f09e60a4a739a8e664657fd0b3d81053b2973ac133513aa43aae2",
"s390x-unknown-linux-gnu-0.4.14": "f30bb00682299ca9e10e98f387178f839e136414b66ab99f2e28b6f160258315",
"x86_64-apple-darwin-0.4.14": "442b93a10d3d5d5422c615f73bb13bd491ee88bc2ea913185728940a31c51b35",
"x86_64-pc-windows-msvc-0.4.14": "dbde8853a1d7c005e34dee03ec1bfc337374c111c86b26701c403bba6076254c",
"x86_64-unknown-linux-gnu-0.4.14": "873b4b95c5d3d49ae1306122256cb0b116b5c725e068db8100a76efb13d7669d",
"x86_64-unknown-linux-musl-0.4.14": "1985046d3e36acd02395c704dcd9d1aff03114afe13fdc166754675bae8ad294",
"aarch64-apple-darwin-0.4.13": "32d73e0257dab4371254d26bd9328de4e43b7817ee154d7c77e879df130b15c4",
"aarch64-unknown-linux-gnu-0.4.13": "0f653d8ece44da59056dd2fda6bddc7e274ed4d6431787bd7aa26ae7e02a66d3",
"aarch64-unknown-linux-musl-0.4.13": "c24306c2cfc3bcaeab57f866c2501f07e21098fa03db7c1e5961280d44404443",
"arm-unknown-linux-musleabihf-0.4.13": "f8b9375a7ff918e6b4ec2fbaa4fbac0707b85d9a391ab82a888ec07f4d7ae813",
"armv7-unknown-linux-gnueabihf-0.4.13": "ab59e9586b89d11ee043aff7410712fa2bc178b6aa83eb70173b81d6f2ef93b5",
"armv7-unknown-linux-musleabihf-0.4.13": "bdb133e0ecfe889661910bb52f77c54268b82161fdb8af2b1f6c867537626a39",
"i686-pc-windows-msvc-0.4.13": "b4a92170b85d63ee9d7ac3a9b07fa444e4257e3dfb91a22774c1f76f94a06ddb",
"i686-unknown-linux-gnu-0.4.13": "a4f2dc1eb9526ae9f1a617fddfc8e565817540ee06b022cc85a31f8915b8130e",
"i686-unknown-linux-musl-0.4.13": "0f72e2a16e55b57feb8741f86f3e968f3e080868da6c848f6a115149b7d63652",
"powerpc64-unknown-linux-gnu-0.4.13": "44471a861399b11870b41f8c0e4b8080490803b2c6be5ebf906a09ac0e67b5c9",
"powerpc64le-unknown-linux-gnu-0.4.13": "4a95260671f6578f773c70aab21da55f1995dde7dbd38794e510a6b5b0fd0c1e",
"powerpc64le-unknown-linux-musl-0.4.13": "bf3fef07eeb29f1bd79b677afcc52deb1f594fd13bfe25c0d4f05c171957d717",
"s390x-unknown-linux-gnu-0.4.13": "548e6cfb8ac09cf422d6fef9886ed8ba73bda8333f69ae420aab2cd5f676d7cc",
"x86_64-apple-darwin-0.4.13": "fb58d588c237218c275f63b6b77eda9477d2c1e1007605e10207c2504ae2a6d5",
"x86_64-pc-windows-msvc-0.4.13": "888e73d16bc7c67ee2e369e4660249ec107efaf998583cce68dbcd942b76d047",
"x86_64-unknown-linux-gnu-0.4.13": "0f955f51eaa3ccf56215ace06dab2e9b78437e22002eabc2cedcfcf541d997b2",
"x86_64-unknown-linux-musl-0.4.13": "c8f73e30407a6e15eea7334f7067ac84ae1526a1ae7f4420dc873492bdfe626e",
"aarch64-apple-darwin-0.4.12": "507aeb4efbb4a2b97654df8333aaa9d78109c55e3c3d5959f50cf0d93baa0263",
"aarch64-unknown-linux-gnu-0.4.12": "73c6f84462895eb924b6fddc2cfef6b9fde0e0c15ff45a0eb882ec5275f5a2f7",
"aarch64-unknown-linux-musl-0.4.12": "7329992bee100397b3520f1e93512804aa47ea01404c05609aedd181311cdf3b",
"arm-unknown-linux-musleabihf-0.4.12": "21e4bcaf22259b4a473912403e9a89debd7f8f052e2f5d7d52f350539adade9e",
"armv7-unknown-linux-gnueabihf-0.4.12": "7a0433a46595b40d9e50eb9a8aeb193b18eb5d545a677a646f86760b716f4b6e",
"armv7-unknown-linux-musleabihf-0.4.12": "3803d4ef65fea709940bd897c9d27123cd60ca1f72b173eadad69a9949bf1e69",
"i686-pc-windows-msvc-0.4.12": "e0550b4db9d9074560cdff66e81298288ddeb75347585514601c598ea46df54f",
"i686-unknown-linux-gnu-0.4.12": "4c0a025f4b1f40a4248435410cbc1c6df0656ccee02f145aecedefac0efac392",
"i686-unknown-linux-musl-0.4.12": "a0572decd32eb5917bb80bc8d1de0351be362b6a06423ae36bd03c745292c1f7",
"powerpc64-unknown-linux-gnu-0.4.12": "51e624d5317e4ac6bcd67d1cae49e092c0186cab3dab4f7fa15c2e32066e16f8",
"powerpc64le-unknown-linux-gnu-0.4.12": "5eafc18d05671ad38488f1b1d48712e829f4eb7f0d25eac423be79e7d8834cdf",
"powerpc64le-unknown-linux-musl-0.4.12": "926d3caff745f4b4c376ff4328cf5129b8f61af6671d84614270ed8fa05816ca",
"s390x-unknown-linux-gnu-0.4.12": "810cd900581925ee16e7d606e30fa39912123f9d96a740dbc1f4f9aa3d7e9760",
"x86_64-apple-darwin-0.4.12": "d2934f4afba1f33d4078cbde301e780db132df6d33f2f5b27df466775e01b236",
"x86_64-pc-windows-msvc-0.4.12": "4dc5e08f2f69245859b8ff57c7e6f844ebd1a65df12ae13f66a068268af17389",
"x86_64-unknown-linux-gnu-0.4.12": "db44453ec57d6e3a35b7af2bb7938b47bdc9e7ca397269e978c53dd3065b1195",
"x86_64-unknown-linux-musl-0.4.12": "ef9551ecf6f0efd51264f8a6a683b8b0210789aeaeab664863a90535a553b985",
"aarch64-apple-darwin-0.4.11": "b988bce29ca19fa229f088f982b66ef9dbf8571cc45eb98b00370a817cfe383a",
"aarch64-unknown-linux-gnu-0.4.11": "865feeea66be67497506b76925949f97eb1f6da7dda2583a6558bed972f5de13",
"aarch64-unknown-linux-musl-0.4.11": "db1b16b5e8d943a296667d176e474739c652660cbf56ee5e9157aa7e267442fb",
"arm-unknown-linux-musleabihf-0.4.11": "9a141516deb4c966d4ae5a4d14dfef0f3c7880817823645760c09fb4cc580ce3",
"armv7-unknown-linux-gnueabihf-0.4.11": "4748f81c391e0040eb489056677f6caee5886e5c15ef85448db51f11ea9b90df",
"armv7-unknown-linux-musleabihf-0.4.11": "b564fb4631b6b668d891ec2ce91af10fda1f4374bd846eab24a85abb6fd77b25",
"i686-pc-windows-msvc-0.4.11": "f1c0c12a40097949aa793f870f811ac8ffcc349228f0d3cae246bd93108e62da",
"i686-unknown-linux-gnu-0.4.11": "c894193d37fa6cedb3b6c76d85bcca6031a5ef051adb046d583b7f078edc3872",
"i686-unknown-linux-musl-0.4.11": "c80a63db7be49971b91417fdd5b9327803c38e23998d88d2a3489a2d9fa32de2",
"powerpc64-unknown-linux-gnu-0.4.11": "f5ecc0461d1b9a8f56804abf5b2200aa22c08b89f404845a9f684817d0824521",
"powerpc64le-unknown-linux-gnu-0.4.11": "862c8cdc587d435e09aaa0645440d1a8d72e23c68050cd978d4e5d11aede6a6b",
"powerpc64le-unknown-linux-musl-0.4.11": "82bfb567ab6f2412706f157a998925fd49a491a4eaffb2bf8c09ca512be51a2f",
"s390x-unknown-linux-gnu-0.4.11": "4b3cacd593aaecbaf193633f3105851ba7fe6627ed567bc3133e48a398e7c947",
"x86_64-apple-darwin-0.4.11": "1db522b0eebb16cc08094b558f76048834a4d25878d74e07c5b4b7320239a5ab",
"x86_64-pc-windows-msvc-0.4.11": "b9d43ddca9affbf03c048e34112c470a37af8d8e04c3ff2b79933a073f48e34d",
"x86_64-unknown-linux-gnu-0.4.11": "3fc34d56857f24c7065309593a5df05ce953f1736f0cf32965b91f69adb66c46",
"x86_64-unknown-linux-musl-0.4.11": "c3c6eb97198a29c6ca51bed673941ffbe7d97d481e74eec034fd8ad8d59b187c",
"aarch64-apple-darwin-0.4.10": "e8cf273f464d36b72237347eb42a0bfe75d473a029bc4f89d5a2c098f971186c",
"aarch64-unknown-linux-gnu-0.4.10": "eb2bd6709ac9634444e4cd7d1b1db05549d602579845ddbd52152dfd1916c723",
"aarch64-unknown-linux-musl-0.4.10": "e2fa68d49d83fac5961ae57232d2896bde52f1aad40c9a88cfb3ffcde6130043",
"arm-unknown-linux-musleabihf-0.4.10": "2b9c91b9bfdd07f1b81671b70a1d3ae2c843991c30d11a31ec96efe34d9326dd",
"armv7-unknown-linux-gnueabihf-0.4.10": "ac56ab4b0f99b2c2288f95dd0ad7a2395d118e023f00c3da307e054d1adfc970",
"armv7-unknown-linux-musleabihf-0.4.10": "a9e4bf044ad4aeb6c8ae4c2068a3767264da4cb033befe6b64567490d24b586d",
"i686-pc-windows-msvc-0.4.10": "ead4fcbb66fe148650ea1bfe0a826aa2b6d895d94fb590f04dbd910a390ac8f9",
"i686-unknown-linux-gnu-0.4.10": "e1e20f3b5ec85e5e8b193aa20e0e112e0590332208fa4537d3cc5043ccaf49aa",
"i686-unknown-linux-musl-0.4.10": "10c8deba52e78411ab78b2096b5ca32ec3910915db11845269a76c0333ef6a7f",
"powerpc64-unknown-linux-gnu-0.4.10": "86b2c97c8f512ddef6639eac9a19f803865ea445488379ed5ab9dd61ff1f89e2",
"powerpc64le-unknown-linux-gnu-0.4.10": "de6c605fc1bc02b29e109b6a1c2be82dca60bbe65ae8691ac9b47e86abbe4c5b",
"powerpc64le-unknown-linux-musl-0.4.10": "c590a2050bbcabcafe569014774b59b03e9ee8f356d270bcc35595bcb6e9906b",
"s390x-unknown-linux-gnu-0.4.10": "2ade7963186ca5d70bb36b3ac89f5c36bddb82c6a34b0a8d1ddf553ce1afb76a",
"x86_64-apple-darwin-0.4.10": "828b02de490735955b2c5e83d2758eba668a981b8a61d8afe4f9ddf70c523c17",
"x86_64-pc-windows-msvc-0.4.10": "b2a2257c1d3fecaf1258483465e82958a223e6ac2a057f090cd83d4df41e948f",
"x86_64-unknown-linux-gnu-0.4.10": "fd5540ef6cdc80091094a2fbc29b2cecab6c41b0a204220d9c882120210bbd11",
"x86_64-unknown-linux-musl-0.4.10": "c911e323f3eaf0486755fb5a109e3b1fc4fdbe07e3fed49054e78973f5b70226",
"aarch64-apple-darwin-0.4.9": "049466d3f7f86262f5915b57cc037b2c814634fa4733ba2bd9062b72c4264482",
"aarch64-unknown-linux-gnu-0.4.9": "7f8eb20c003bc789136d80ad4dd9f1b2875d30e41ed085197eada9e3ad0fdda6",
"aarch64-unknown-linux-musl-0.4.9": "82c9ac934f587a36910b47f11b430472280e6a0d28d3f3ba126aaa6fee3b9767",
"arm-unknown-linux-musleabihf-0.4.9": "06546daa31d52d4ff9ff5589d1549c18988758f583912a5bba65d27e57c5f89b",
"armv7-unknown-linux-gnueabihf-0.4.9": "08a5f64077331759b1a7c05b632645b56a9e8a42f54485a23d6b49f3f5dcdf6b",
"armv7-unknown-linux-musleabihf-0.4.9": "b5e497e71693a6eff6c5ceacaadce0979a0b7a08f18882b38f774c79de436c34",
"i686-pc-windows-msvc-0.4.9": "e24eecd74d1ee3955fc3d14a99769766ffe4933eb51622d1db12fa0bddd2e122",
"i686-unknown-linux-gnu-0.4.9": "64a539c0cddedd3b5c75290f687e37824a573032f3de4bf3382942b3bc6cc357",
"i686-unknown-linux-musl-0.4.9": "f21072c59cfe898837533369eae8952954ee1c18d4bd52a5ed0fa5ee72017820",
"powerpc64-unknown-linux-gnu-0.4.9": "d02d6427583ab1007e5b52580322cf3bd0434e49d4683819230f59adfda1c343",
"powerpc64le-unknown-linux-gnu-0.4.9": "bda93bd35f1651a7d15c4367b5d35a0ffa88f6c7e527d0bd89324210c23761aa",
"powerpc64le-unknown-linux-musl-0.4.9": "018503cda7e80d1b0d158800670ef42dd9b819c74102d5ccb91167012552158a",
"s390x-unknown-linux-gnu-0.4.9": "f35cda4c013a15c833f170c28761fbdf1e244c3ad56b2a1c1516ac09362cc751",
"x86_64-apple-darwin-0.4.9": "71b5ec02380a413a9ab65f6f5e2433a73aaee95834dbc3c6c451492268471f35",
"x86_64-pc-windows-msvc-0.4.9": "5d082ee82624e51f3c8c994329277168f427732d46ab59cfbb974bdd83f6fea2",
"x86_64-unknown-linux-gnu-0.4.9": "4d78a50027f9195db60905b2f50422f417a0aed287f6f94b205e86fecbdb5464",
"x86_64-unknown-linux-musl-0.4.9": "43a2aacf680cba78f1730bc363995f7d3b27fd10ae77a70cd35f5e30e9c1418c",
"aarch64-apple-darwin-0.4.8": "3184e9db9191ca2665feaa72b4b9ed1958feafde81da9573a1320bff6a6a8767",
"aarch64-unknown-linux-gnu-0.4.8": "72439cb8e248f609e541de90988375a9ca42bb1f4afa9be14b333970acab4c9f",
"aarch64-unknown-linux-musl-0.4.8": "f4f0740dc1ede0ae49a6f8affc6b1e966b4759877db5add0317090303961d23b",
"arm-unknown-linux-musleabihf-0.4.8": "26bfc468f9a30ce76577ecf0bc10298f66f04f8893ceda3ab569d9ba18ce899c",
"armv7-unknown-linux-gnueabihf-0.4.8": "7798c99ca955b272ac534d355b31d6992f1c608c81bf5b106a149144ea39258b",
"armv7-unknown-linux-musleabihf-0.4.8": "ceb1d908b5cb5a68c848631175c03f5f3960d08ef6f796daabd79f988d153f38",
"i686-pc-windows-msvc-0.4.8": "1e5fbb0a8677da15ec3f5c46a4c84433071533ffe539c2fe2071c8c20e27b420",
"i686-unknown-linux-gnu-0.4.8": "535d7b0a09a63e7348b1df1f07806eaca4c080ae4f03605a32fd9177babafa95",
"i686-unknown-linux-musl-0.4.8": "83c901abf25eab073d310c4a3ec04a2bedbd31a7d4079f6b329c250e85ab9376",
"powerpc64-unknown-linux-gnu-0.4.8": "2329e55a246e92973175ff9a7276e155b873e566cf0a584c76ff24f1d2eaa28e",
"powerpc64le-unknown-linux-gnu-0.4.8": "0a19a35c20351d08869e25be8d9913fddc696a9d8effc2f790def7fcf6a4114b",
"powerpc64le-unknown-linux-musl-0.4.8": "0ba79511f67ba1335321cd31ab8b6ed84ed65ad1be4d39406b245b40f2f7a61e",
"s390x-unknown-linux-gnu-0.4.8": "7c0a52c4d2c02ad3046b792985f50a55869b73fa4e38b0bc51ab04479a2cc41a",
"x86_64-apple-darwin-0.4.8": "95f94045898d34e552f43fd65b5a1824cf86873a64e35866a06689dd5de266b2",
"x86_64-pc-windows-msvc-0.4.8": "0bbb4fd2d8b7a850a295a0f1fb87a77992c85f59d223d964004e36243b6c803f",
"x86_64-unknown-linux-gnu-0.4.8": "3c2e233746eba77b490024f386d1d20fa09b11717365c8ddd69043729fb71ab2",
"x86_64-unknown-linux-musl-0.4.8": "5b07df5d9228fb09c31dd1b08e2582ca8df6765705c0fb550b9eb87950d3ca1e",
"aarch64-apple-darwin-0.4.7": "a1fa60ccd00d9702e6d2792810226ce2c17d43807f38ab70c7418763693a3f7e",
"aarch64-unknown-linux-gnu-0.4.7": "b54ab2370cb726d40896e9e9b71ee08bb93aec656a80413515214699b64eb458",
"aarch64-unknown-linux-musl-0.4.7": "ec700622902ba26c465b4ff4a304dfdb9c0cd7cbcfe4e5dccba3f8e43f988934",
"arm-unknown-linux-musleabihf-0.4.7": "3f4a9dffba224b064f8947be8aa12f71aba931badbb2f2b0ad31c4a248f55470",
"armv7-unknown-linux-gnueabihf-0.4.7": "50d1a6da4ad12cc78bc011e01e9eeb8f881f37699c6b7ca0e3b0578e9553185b",
"armv7-unknown-linux-musleabihf-0.4.7": "7f1f5918c9634358703f4283c384375294d5f7c80ad7a7ef5cb83a008ac941da",
"i686-pc-windows-msvc-0.4.7": "cecb8bce8a911438c52ebdfbfbd516c5fa8111ff9c4c609224443b56074c409f",
"i686-unknown-linux-gnu-0.4.7": "a1117f56ed6e8b99d468fb147782314dc8e6e870d0e49a81f601e5bf61c54422",
"i686-unknown-linux-musl-0.4.7": "eecb9b2bc451d4eb44b629018fb1dd3cd9b775ff57110be680b75aa208fe8bf7",
"powerpc64-unknown-linux-gnu-0.4.7": "49569c1a10047dc9275ca439db69861c627ad6c0f906da1263f5925e41f92119",
"powerpc64le-unknown-linux-gnu-0.4.7": "a6ed76b1349fa098a1d7b54b8a3f05e7b80d15e2ef46302b001025809fc05b60",
"powerpc64le-unknown-linux-musl-0.4.7": "9f95bbac0b79034be0230325f5056d5964542899e3369d1c93718a1c5d84a6db",
"s390x-unknown-linux-gnu-0.4.7": "f852e6d71fbbe3a469f8215d3168b754321c09bd574a4ff3c6a12b168ac92640",
"x86_64-apple-darwin-0.4.7": "3c5df7248b25a688188d6f4a950e615574e87d8aa2dd56577b4325f15bf0ab9b",
"x86_64-pc-windows-msvc-0.4.7": "5bf8c7a9bda91c8aaa0a7d4aeaa25fe891010cb3336972fb3a58065b668f66e4",
"x86_64-unknown-linux-gnu-0.4.7": "a391db7b4c0b2c4b54be407df1a90ebba0542db468f25eefc2d56b7ab3282856",
"x86_64-unknown-linux-musl-0.4.7": "aea262a35d402a183b670f635be80dbe73fc9461aa2c9b57c5a3de538fc00017",
"aarch64-apple-darwin-0.4.6": "3fa569aad68c8d3f6f96eccfb4def127411f795d819f90c7dbcdb4a3cec04667",
"aarch64-unknown-linux-gnu-0.4.6": "1c12f6dbe4cc88f17af8cde38d7b8fc7524cbbbe1b405f2b7243737680b87a8d",
"aarch64-unknown-linux-musl-0.4.6": "d3ade7505a8d8b76e3d022425cd3602323af5ec65373f2fdd30211d25e3b9253",
"arm-unknown-linux-musleabihf-0.4.6": "cfd84da6f080bcc89313280da1bbb0d8b1c74b830b5f8056e09af00ca0b4cb75",
"armv7-unknown-linux-gnueabihf-0.4.6": "285ebafea67216c27a3006c618275b6fc20a4643d631981684459aac4ce9e124",
"armv7-unknown-linux-musleabihf-0.4.6": "045ee86e317c3d82f07ec8685c1d4c983ba25f8284051fecfe76de6732e9ef3f",
"i686-pc-windows-msvc-0.4.6": "33289a7a2cc369831ae8384f0113f30c614a6be333ebef6abfc487decd50cf95",
"i686-unknown-linux-gnu-0.4.6": "3038fa755b71b333a1f919a3157dafaace4aaaa8dc2fe5d68d882c026962ad72",
"i686-unknown-linux-musl-0.4.6": "1638e9acb5dff0170e84cc7c9bb346a8ef2298999a236f1b7f8b8d4d4972431b",
"powerpc64-unknown-linux-gnu-0.4.6": "fba69a56be4b89179568b957eeed6b78a09ef6e00d9d21cf6f7e59c675983d13",
"powerpc64le-unknown-linux-gnu-0.4.6": "f14e76ca097ea841af0090bccc4d41015d1d6e839af095384ab24a36ed534bcd",
"powerpc64le-unknown-linux-musl-0.4.6": "a3bc7c30bd527470a49ba6ac9ab61b992e39c9ee687b1cbfe5d14d314ade17c6",
"s390x-unknown-linux-gnu-0.4.6": "351e1ec195545f7356f81142e0b7136ccdb7d342a361584dd7fb5c408345d3f1",
"x86_64-apple-darwin-0.4.6": "6b3971c57414ec91b55febc4d08e2e4724e9aa4c80e787e1a195c827048f9048",
"x86_64-pc-windows-msvc-0.4.6": "d48c8855f79933ab006b6a930bc611105aa52031f33aa80c32f1765a956dd92a",
"x86_64-unknown-linux-gnu-0.4.6": "68af9a5c41f38bfc4f625bbdc8a9f3921f7c384324ddd7773f078ddfe94eaa9a",
"x86_64-unknown-linux-musl-0.4.6": "984a0a07c7a83fc8b21c4b6ac1d81ddb08a5a30c35fd5608b969796a60cdcd25",
"aarch64-apple-darwin-0.4.5": "e7e8496b494be710261e7524abeb59d7c92ecff949f33174598425bdd14aa519",
"aarch64-unknown-linux-gnu-0.4.5": "cf63221a8268116c2472f889e548c8d1ba3d8d0f2f77aa782e89202a2ff0e50d",
"aarch64-unknown-linux-musl-0.4.5": "f588424a62d0592967f2d467238a6749d3efee0a0d6ba855cd60eba662453efa",
"arm-unknown-linux-musleabihf-0.4.5": "0938a35cb3b381047f7480da1382da2f10551b5c92aba10f367a83ebaf6cb4bc",
"armv7-unknown-linux-gnueabihf-0.4.5": "46b7b5e4ee5498e0cb9a1150e68b61823919fab6ff4215f1d8be8e135826458e",
"armv7-unknown-linux-musleabihf-0.4.5": "7242649738791d9ca51f4afc5016e7ffb1e5f539b496637db6f2ea9afea45e29",
"i686-pc-windows-msvc-0.4.5": "b6efe473a6cf7f93ae060e040b5d7e9a988d67cbb9e089a4547c7e0ad7ed7323",
"i686-unknown-linux-gnu-0.4.5": "c296363ec6cc70b029272a449223fbf8992579dd977fa65c16ec338f026254f6",
"i686-unknown-linux-musl-0.4.5": "3482ad8aa6f8f5b06e3891008c50a53f5ff3de00ff4fbaa4caab040f8f05f11b",
"powerpc64-unknown-linux-gnu-0.4.5": "0368d675c188d56ba3527af02f63b0cb0179a8db95a62428ef0f5377b6ea72cc",
"powerpc64le-unknown-linux-gnu-0.4.5": "38c7a636e530114720935c4836faa2e4ca11c9b8c3c150a500158da4a7b60b31",
"powerpc64le-unknown-linux-musl-0.4.5": "1a33c9841b70b76b148618c910efa1f836e650fb007be1727db189e70f43e007",
"s390x-unknown-linux-gnu-0.4.5": "d9b8fb73eba7bf4d7addadce76735eee94791442a4e6d5ba46a6bc0478ed96d4",
"x86_64-apple-darwin-0.4.5": "50b87fa1dfe6526bb602781ccd862d2c8eed77abdc0a47606146f7594fa199a2",
"x86_64-pc-windows-msvc-0.4.5": "850c5718328883cbf88558d2420b6c82066925e258a6207cef1e5ba3931e5028",
"x86_64-unknown-linux-gnu-0.4.5": "a23e94ab0fb58beb2e7bc2f1d968fb30939b505f1bdab8df5cd1599c02f93793",
"x86_64-unknown-linux-musl-0.4.5": "e56d951c90bbff7a1b88c42403cd784af2d0233ea660b8b1b4282af872371f43",
"aarch64-apple-darwin-0.4.4": "3d2e48f405023e0a1762ad66336fd4e615928343c90023972bf3418fa5c829ae",
"aarch64-unknown-linux-gnu-0.4.4": "f6851b5ef48caa066284b5522d153c49d55c310672962e7d0d8f2f4afab4a9b2",
"aarch64-unknown-linux-musl-0.4.4": "803d1ec97d8b5a918d33f21673cf8183906d08c75acc0434fa15afb06b3dae9d",
"arm-unknown-linux-musleabihf-0.4.4": "e1255b31c76764d67481b262d5d8dcf8e2b5d7bbfd46407267e3dd21bb1ee5c6",
"armv7-unknown-linux-gnueabihf-0.4.4": "fbf8562f1a4fad1fcc030fb47621fee8935048ecc267919e9b1180b3e71f7b37",
"armv7-unknown-linux-musleabihf-0.4.4": "9af2bffbdc4d25538130c864e2e58c9108e2bb231e5fc4890c0ea2a9f52f3681",
"i686-pc-windows-msvc-0.4.4": "01ab40fb314e2a581023ecd727eccc153776cf97afbee5b921bd41110319642a",
"i686-unknown-linux-gnu-0.4.4": "9cc0ca4d7ad6b35a1c181d2f5751ad0c955c51b1cd62ce8237e652f46752f1b4",
"i686-unknown-linux-musl-0.4.4": "5397c1b4116fcc32c451dd0dca7114b58e78f952401bbf5d6279954b99d8c2aa",
"powerpc64-unknown-linux-gnu-0.4.4": "7830e971425323fc58fe2eab4e800cafd4f67e25ca71c6bf81c0be0612b27744",
"powerpc64le-unknown-linux-gnu-0.4.4": "79f047ef2860a5e2ec5751c88b39b83108da3d071b12433c1d48ff2d800c0a17",
"powerpc64le-unknown-linux-musl-0.4.4": "bbdc878e609ccf1699b6e235bdde965bdd9ce60db34285aeef54276111e077ce",
"s390x-unknown-linux-gnu-0.4.4": "a541d3f1981eaa6f92cc982ae9b7a23983e0f28ff6dcc3076455e3a09132b2cf",
"x86_64-apple-darwin-0.4.4": "618f6745b2ed50560cb4491bc852f235c65cea88fc665dee83d1875596618c6f",
"x86_64-pc-windows-msvc-0.4.4": "dc7ee57fb214eafc0d3f5d211e2432b80c98d707bcc36552fdc16a609192fd65",
"x86_64-unknown-linux-gnu-0.4.4": "c7c0a6804538e083bcfbc49c2cecf07c5aaf9fc31fdcfb4449c787d3a40c980b",
"x86_64-unknown-linux-musl-0.4.4": "a72c31f068323803485b6f3f878eda5e7d17383df675123b0e56c2bb6aeaa586",
"aarch64-apple-darwin-0.4.3": "e90719268e20a046ef23ad4d1a44e991876f6abe850147f7525901cdd28e799d",
"aarch64-unknown-linux-gnu-0.4.3": "bd1239ef5d488e17d513ef98d24f56f3bedb7e41500a20f798fda5cf3c606801",
"aarch64-unknown-linux-musl-0.4.3": "8c98b1dbcfe6a1b5ed9cb567f57f25390af9925c30632fe33d9a38dd9d0b0c0f",
"arm-unknown-linux-musleabihf-0.4.3": "c582a58adb495cd79c360ad0c3ffb4800a01502f7c87ed1e199ad2ed67ee29c0",
"armv7-unknown-linux-gnueabihf-0.4.3": "f20fc36774cd6c76965224a4a82362afd2917b1bde601b857060035b85ee02f0",
"armv7-unknown-linux-musleabihf-0.4.3": "9efc62f095a324855be55f91b3ba4b339293156778db273f1455dfc78aafb585",
"i686-pc-windows-msvc-0.4.3": "ca179ef25b4ef471eacde2dc93f67300e4e7aa1ce416ffb2055bf11fb7ed17b0",
"i686-unknown-linux-gnu-0.4.3": "762021a53b27c87798ec95cb1f660e1d46f0b43f8614bf5b655bbe53e6d164fa",
"i686-unknown-linux-musl-0.4.3": "8b639325a79f1f29fb9bf538c71d40699aaa382808a62b10c9c2d0ff059d01c9",
"powerpc64-unknown-linux-gnu-0.4.3": "b72e80d33e1d5fd73dd4bd537ece5c2240bd6ab3b785991a7aa90f8159be12e8",
"powerpc64le-unknown-linux-gnu-0.4.3": "cf1882fb365d69acebd8e8acb108d1910247459d499a35b0607ab3f99362f710",
"powerpc64le-unknown-linux-musl-0.4.3": "6f441f17d3fd11411356cd5b4a0e3ff563309c05127cb79e936399b0c2cce7f3",
"s390x-unknown-linux-gnu-0.4.3": "f415319904dc5e5cf1b2a83f76f96b890d09be8f8cd5445143629604a99d6086",
"x86_64-apple-darwin-0.4.3": "bb7c9e642d8b4d2c456bae9d0b23a9aa8b872b9701e62c8a4d5b1af80413e8dd",
"x86_64-pc-windows-msvc-0.4.3": "6dd21e06b67f86870bf7cbe262d5a65428a6c7f4bbccd1268063b3ea75b0440e",
"x86_64-unknown-linux-gnu-0.4.3": "af57fae9c355d3ff8f561170edc87be3f52b7d34dc14b1a8980824a483dc4cb8",
"x86_64-unknown-linux-musl-0.4.3": "ad4811828ee085d90c08f0cf9e4571e1afe1037a6b35ce04f6dfad9df0c34333",
"aarch64-apple-darwin-0.4.2": "c6b2f6e442d2f3863d3fb02aaeefe8783297bbbd9d3e9cf8a418ec46baa4006e",
"aarch64-unknown-linux-gnu-0.4.2": "19a5baaf444a4897dcbd021612f868a64a3337908b5d95a54a0d9758da8d6edc",
"aarch64-unknown-linux-musl-0.4.2": "2256900148763d3d0bfe161d3ddd3fb20bf7c8ce540b7a00543c1e281a4213c4",
"arm-unknown-linux-musleabihf-0.4.2": "9dd02c971bf65dffebdfed9c36890363cbe133c67386e3cee302b3cde2de3d26",
"armv7-unknown-linux-gnueabihf-0.4.2": "d6bd54c976473c9f2d06c37353e5a00a3f782e32227357237deaf4df3641512e",
"armv7-unknown-linux-musleabihf-0.4.2": "931dadcade79204529af9d0a7dd44c416a2b86dfe1d7a758a2788ee7d63fe61e",
"i686-pc-windows-msvc-0.4.2": "c5f9766aa50be6eb6ac81db42a611a613ee07a30a72414251b59d30fef1f32a6",
"i686-unknown-linux-gnu-0.4.2": "2130afec71eec90eae57ab739a3e16e742ef57db5f3ef83c6d5c4b9c477572e2",
"i686-unknown-linux-musl-0.4.2": "b28cb44e615c0983c418b40181e1d24ccc7ad2909b2687c8d7df96d11ad78e6e",
"powerpc64-unknown-linux-gnu-0.4.2": "61a51c8495c600d0c28e4c73ef53d80ce70f887b61b102d19bcbfe3ab91fe6b6",
"powerpc64le-unknown-linux-gnu-0.4.2": "ca34b76bc438fda3d14dc44c36a91f3c232ade46e65225285767eeef64e952a6",
"powerpc64le-unknown-linux-musl-0.4.2": "8dbe56310f094a32abe41b2d3c6b739c4afe5f58d37a79ea66364ec9fac6f90f",
"s390x-unknown-linux-gnu-0.4.2": "8e48c560cba98ce5cf5d5375373d2f4239ddc32e48530d87b324074adfa92c9d",
"x86_64-apple-darwin-0.4.2": "4ce2c58dfc5fa678a02f0779b4a9339ebfab0bc5f2fcecdcd1234a65319e321d",
"x86_64-pc-windows-msvc-0.4.2": "3e44ce091683186d35a1cd1a55f8a1f922fa765c6681dd56257d505b0ab6655c",
"x86_64-unknown-linux-gnu-0.4.2": "56998ecebd1894876da5eabe628e73a975d45fc579e1bcbcf14f8945c811e289",
"x86_64-unknown-linux-musl-0.4.2": "7a29c961b51831ac43c7f4cffa1b60b1138d61dcbd4ef77915bc8475e14b636d",
"aarch64-apple-darwin-0.4.1": "d89a7a658d0a4f44ab60730a5152759a6e6f1238cdc9e6e6391362291e34000b",
"aarch64-unknown-linux-gnu-0.4.1": "2332272ecec1cd5f9e67e22ca989a40b4e97b8e649e72272efe0fba01ecdb694",
"aarch64-unknown-linux-musl-0.4.1": "d9a8098461aa0e1970c809402b220e6fd70d61cbecd70bec433ff3abbfb27e1f",
"arm-unknown-linux-musleabihf-0.4.1": "1cf1d949f8a67edb2944e19f7f521fefdb4e7f2212ff7c36b5958c6a638cb3d2",
"armv7-unknown-linux-gnueabihf-0.4.1": "19973f6c41071feab28e865cabd880f795923c07590cf66ecb35cfe63eff9b01",
"armv7-unknown-linux-musleabihf-0.4.1": "d750b79dbee80a96eaa6b12f2d338577e11a8acfe6ccca4e4b30b42e595a6b92",
"i686-pc-windows-msvc-0.4.1": "7d98efdfcf9480fc73405f1fa077b792a2a5d73546e7501a78179b3c42dbcbee",
"i686-unknown-linux-gnu-0.4.1": "ac51b7be1fa76c86257e6430546bc0de47090a1a6b3cd2842bc9b770f9839aa2",
"i686-unknown-linux-musl-0.4.1": "43818552c715eea40a9d8c2d19e271be6ed9c9481ea811f3b7f7b4a266b50abe",
"powerpc64-unknown-linux-gnu-0.4.1": "12bb4d5297e47babea349b19c69bdeac3e48a6a6363e4b02ae6a16aaa1c524e7",
"powerpc64le-unknown-linux-gnu-0.4.1": "13ee23388e55e716807c79085471401b9b9c8dfd66f1a7f2f4314e49e006e7b0",
"powerpc64le-unknown-linux-musl-0.4.1": "c7a33c648769bf73486d7342093bbffed0147c04a17c91f0fb8d270d1b7fb71f",
"s390x-unknown-linux-gnu-0.4.1": "cc9ed1e759ae963dd9f0b3d78bf060a74c1cc5530b91d6b45337a2481a596181",
"x86_64-apple-darwin-0.4.1": "7166c6864d68e0372e3703d788cae0b9d92956ea11bde970ac5db93fffe1c76d",
"x86_64-pc-windows-msvc-0.4.1": "a4f4335c3b62230f70de3f5dcd2eaca848f8df0ffcc75e0af2acf90e8bed1a89",
"x86_64-unknown-linux-gnu-0.4.1": "f465e1f82b2eb4702f90c44a2caac64b13b72970f22ec73ac8bbf42fbf19e94e",
"x86_64-unknown-linux-musl-0.4.1": "f83d084bed06b59c981a6de683eb58ad0d2e8ec36e066a4f82d8553327ee9c44",
"aarch64-apple-darwin-0.4.0": "33393f06d0f950b715559b7bd1566f394a90020b9ad0cdb169a6ff49304aa0a9",
"aarch64-unknown-linux-gnu-0.4.0": "0fe9eb6624e699085213347a1b0b3c6dfd8b4fd9454a41606ee695358a014a07",
"aarch64-unknown-linux-musl-0.4.0": "5ad6693e937587abf0cc31979d4922b427995534b639a2b467199fc8c87bbafd",
"arm-unknown-linux-musleabihf-0.4.0": "1550a498361902dd13ed5dc574f151c531c0ba75b150edbb24a07505ed5c9ad8",
"armv7-unknown-linux-gnueabihf-0.4.0": "b06194e2b24e1b594d3beef364402393aff5af8ff567e4860add59a6035cb2ce",
"armv7-unknown-linux-musleabihf-0.4.0": "38cd80d9de64eadb5213b4d026e9e5ee45d5222a01c859540cdb29042842a4ae",
"i686-pc-windows-msvc-0.4.0": "60041b66a092cd7f13655ac19ad50aa83ea5f2012af3b87d7defe4ea96483efc",
"i686-unknown-linux-gnu-0.4.0": "0e76ba23a272188f0a1c5eaaf7bb8ee626e5e8820ff96a2ae1490e591e7a388f",
"i686-unknown-linux-musl-0.4.0": "bea1b1832bc8518c5f5c1c50f1dd3d2ef042d40a031da4fbe583fb991ba4f690",
"powerpc64-unknown-linux-gnu-0.4.0": "56e80876b799c973fd7e24646e116a90b4011be4f2e6bdd27c5aa8e03f173124",
"powerpc64le-unknown-linux-gnu-0.4.0": "e819a6dc969b696809d295cce013bc06b31aaac60b15f7aff9e2e580933e3ec0",
"powerpc64le-unknown-linux-musl-0.4.0": "64002df7a5b93f7d599ab975de5675a759cfce0b34ce4204302bfa592d58e838",
"s390x-unknown-linux-gnu-0.4.0": "d899f780193a53c6eacd878383a7496502e3319e22c2262f95de5df91ca609da",
"x86_64-apple-darwin-0.4.0": "5788b3f1a4d51bce070d40d432ca0fe675510b501359b3a60461ade53ecd7272",
"x86_64-pc-windows-msvc-0.4.0": "2681d6efd66fb7963317de0b6a8b4b63735e1f8e9f5fca6a7eeec14838307792",
"x86_64-unknown-linux-gnu-0.4.0": "1302d70383d6da5a760cd1710511b118e10482dd11e4e6475776b13ed6a414b1",
"x86_64-unknown-linux-musl-0.4.0": "033e69e03668de34eeccbdb3f559c1db578c3aad4a5a34509924871dc9413e0c",
"aarch64-apple-darwin-0.3.5": "a9ddfd6d9350e6cb93e0e57d679f39a4493b510e5d14d475f8524a5ade1132d8",
"aarch64-unknown-linux-gnu-0.3.5": "30ae840dad58774f0617de8d4a36a1fc9f2ea87a0ff6293f06babe0ddf0d56ae",
"aarch64-unknown-linux-musl-0.3.5": "012b9455d53fb732fc1ec83c0148f87df6e2da15f206e44585577a1a3daef6a5",
"arm-unknown-linux-musleabihf-0.3.5": "88ae64b409bcf91070022d19b9fb0e172e6137dcfbf388840b8ab60c8b8a523f",
"armv7-unknown-linux-gnueabihf-0.3.5": "ed21de216cb027e443518f7efe4ce12b5f966be836b1e7c2a8612612bff719a3",
"armv7-unknown-linux-musleabihf-0.3.5": "1fcf0ac7f29ffc7f05961a3abfcecc4f25f0d7d6fa78e304a073e03dcc5e6f25",
"i686-pc-windows-msvc-0.3.5": "3607d1495951607e0e04ee763d67733b171146e3003f071894cc83d344b3943c",
"i686-unknown-linux-gnu-0.3.5": "91ef1a96b3bd2780c55bd01b8f7631ff3d70c2956c9ec8e0d651bbcde8210df8",
"i686-unknown-linux-musl-0.3.5": "8b70ff380216770feb7cdf32442e1819eb5fc25e5d161e4b7bf232e33b9e0966",
"powerpc64-unknown-linux-gnu-0.3.5": "cb9dd4ece47beb2107f71bc36a3b7945640d4316a782778bce10f4c178187e12",
"powerpc64le-unknown-linux-gnu-0.3.5": "343967158a0490afea4ba9f98b932da4a2681d3132b0e98be11f137e21c310f7",
"powerpc64le-unknown-linux-musl-0.3.5": "7c65f135dce64e954b96893f0ac6ecbdbfb2db6b9d43c7c1e3d0d8a980a6ef55",
"s390x-unknown-linux-gnu-0.3.5": "b335ff326e5096a7b76ff13e023948172b2f4d5e0ca306909f439176ecd05a8d",
"x86_64-apple-darwin-0.3.5": "483bd51fdf952e039b715aa95887700e37efbd35eda37e38ecdb07fe136e1e9c",
"x86_64-pc-windows-msvc-0.3.5": "339f3bec736bf392966b5451dedce7f88097bf410168a7c2b559a101e81ffe95",
"x86_64-unknown-linux-gnu-0.3.5": "a1de10f96dbb75a549159bea5771d2be320c130d233422a327ada653e80967db",
"x86_64-unknown-linux-musl-0.3.5": "f2b0ec58c2215aa618740a1a66344193f135652b1b8da25b065ae18fa71e7f84",
"aarch64-apple-darwin-0.3.4": "d00391fa2e398d431d0ab62868d3430cb20ae0b6ccea84afa61c4c63252e3086",
"aarch64-unknown-linux-gnu-0.3.4": "f8b3a8fe20a3d5157ba9a49a45e57b94615a1488ef234377011b605355ec778f",
"aarch64-unknown-linux-musl-0.3.4": "743f179ca7eb1fb4e12852d132923d7f764f27384270cb61b1a9441b61806346",
"arm-unknown-linux-musleabihf-0.3.4": "8b21608c9a5f7f3a2ab329c453cb253173e0e6231e39163a13fa0dee6695aa16",
"armv7-unknown-linux-gnueabihf-0.3.4": "2c9d6172143155f47a10c451ca2f6e8085bd69063268a0a5580be767b951545c",
"armv7-unknown-linux-musleabihf-0.3.4": "9d1b93f687e1c2800dd48eeb6e9dceb6845af473ad9c8981edf234a53e7647dd",
"i686-pc-windows-msvc-0.3.4": "9d164ee3db2ba3903a5993ce36ed93ca6bfa7ca429871829a1791fb27ee8cdbf",
"i686-unknown-linux-gnu-0.3.4": "4b7a066c0f41691933e8a2e92a17ae0ae04853cc0539ee6b1e355bc73dcff6c3",
"i686-unknown-linux-musl-0.3.4": "1bc925e4e94666c6b0ed21a89e61a72abc87549e2b1ab19fc29c7f786a5749dd",
"powerpc64-unknown-linux-gnu-0.3.4": "63f90d3ad9a5fb6926ca799a609825bf838e280ce2d86e39339c4dfe0afe8158",
"powerpc64le-unknown-linux-gnu-0.3.4": "513b36159e8deff8944398322aaf0d2e4e1a39c847419f48b7201f61c6018232",
"powerpc64le-unknown-linux-musl-0.3.4": "a6c59a23ae3b23d7d17acef707ffe0ac077acd41c4a84941eba74707b4c021e5",
"s390x-unknown-linux-gnu-0.3.4": "4c9aa26a2c8a92a2aeb2c3b5663a427cd17b16ee10e82a95ef054fb09826a0b9",
"x86_64-apple-darwin-0.3.4": "70eaaaadb3145e7ba3551ee92559d19a926d165c60ed0c5f22a84940c4bcbf23",
"x86_64-pc-windows-msvc-0.3.4": "32932773c45ee57e87225203b86db8283feb46a99fd53cb09ee17598046e064d",
"x86_64-unknown-linux-gnu-0.3.4": "d0235c11b43ca285d066bdff63e674f71063c43d398b22590e0c7817f48c59fe",
"x86_64-unknown-linux-musl-0.3.4": "c93ba9ebfd97440c9936630d5667f5ec53bb54f0dd8a5fc9a297a781aa338747",
"aarch64-apple-darwin-0.3.3": "a8e6593f5f787823de4c0509af030b0327b536903044c77c9e61941e0032def7",
"aarch64-unknown-linux-gnu-0.3.3": "a0815f3950be714b4d32efacecf32cb33b2857f837fe9cda56b717d69a33851b",
"aarch64-unknown-linux-musl-0.3.3": "47f6794a78e3ae62c27bd19d347b30362f3aa7466eb1767c10bbc5ddd015208e",
"arm-unknown-linux-musleabihf-0.3.3": "90384cd65b755d3e60cbe21c2b991a1ddb03e42649d8598248b782d66fb41135",
"armv7-unknown-linux-gnueabihf-0.3.3": "bf4e8c2d1137959dc2271190e036f9046ea95e82ef3af948ec9bf6a8e4ed4c45",
"armv7-unknown-linux-musleabihf-0.3.3": "92578e0da2b2fff1002a70d217d54b3b1a37be424bbe91b03aa0ee1ec233d54f",
"i686-pc-windows-msvc-0.3.3": "7184333831c6608f395c600ac2bb98890babf38fcea48eee8a9fe5e3a8c81bcb",
"i686-unknown-linux-gnu-0.3.3": "11f0071666d5dd10255c73a80938eb573d7d080203c3f6b7f13ddbc9054cbad9",
"i686-unknown-linux-musl-0.3.3": "de74c76c0c03a2a9638276d46c2fae14d732679a011600e5d361c880124a9aef",
"powerpc64-unknown-linux-gnu-0.3.3": "6bd8a0cb576b49a25f57dc3f602f1caa1e37a60c602d0f170809af78fd66c55d",
"powerpc64le-unknown-linux-gnu-0.3.3": "d9d6db9f3ffcedfd8a29a8f18af3fb09fd639fbdb33c2cb58b2bf5e428942269",
"powerpc64le-unknown-linux-musl-0.3.3": "cd7d6199b1682d0348b3411f094e653e132a2c78ed39424ebc3278f78b51d0e1",
"s390x-unknown-linux-gnu-0.3.3": "bc941ccd12529957eff13882cc8f2f37b5a47a4ab80ea67ba5444778764efec5",
"x86_64-apple-darwin-0.3.3": "be1cdcdee3d91402d259c34b756a42beaafe7bb93567bb5d48c7fdcf799e423b",
"x86_64-pc-windows-msvc-0.3.3": "742f3c5aefd0966c38705b0439641c390aef290e8ea007496ac83fcb825203a6",
"x86_64-unknown-linux-gnu-0.3.3": "729da13410ba857c6e258753c4fabcccc39d32801fea7f5149997e9f88b27b3d",
"x86_64-unknown-linux-musl-0.3.3": "8c7a7bf83bbe25bc5e5d7d41cc5f58148a8b577a298cd91ea9173b4e612bafda",
"aarch64-apple-darwin-0.3.2": "a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218",
"aarch64-unknown-linux-gnu-0.3.2": "6be360abe140f6818844aa3fdf6a3d004b2337b9c240be77c348bcf1f032e877",
"aarch64-unknown-linux-musl-0.3.2": "65735e2776fae9ee3f4604f6d3c562f1f7cae203e428a6d8824a37379f469d77",
"arm-unknown-linux-musleabihf-0.3.2": "68818f6b349260ae60bae969dfa048f45e4196c74a0639c4b9c3591cc0f56dcf",
"armv7-unknown-linux-gnueabihf-0.3.2": "474b62fbbd461792e224dbc5e883a4bfe23f85aa2e3d45b6f1fda1b5be1ab0f3",
"armv7-unknown-linux-musleabihf-0.3.2": "b66b76824df42c3057a9ed440a2d1630533a8fa1fbab3c99f237cecb0cbafc47",
"i686-pc-windows-msvc-0.3.2": "26ddb27546bb7fc97758aed476938bd4469d9a6698292909b6e7820c48a3eead",
"i686-unknown-linux-gnu-0.3.2": "44b11e3cb4e0e6e51e3a78738fa17da251975434b0d538dd6219fc221b520585",
"i686-unknown-linux-musl-0.3.2": "37a8728fd5125990b4de3468a3f12b7242f336852c5c2b27fe14a81a7df6b579",
"powerpc64-unknown-linux-gnu-0.3.2": "d4f02f9781be8e0bd2dc87481b1aa045cb37f2bb83cef20272a1a506ccffc9a8",
"powerpc64le-unknown-linux-gnu-0.3.2": "6ca624ec97b6f13a65d8d0d4b854634b48e6b7b6f9dcd1433ebb584ee3164fcd",
"powerpc64le-unknown-linux-musl-0.3.2": "7a50bf8228ec8ca60dc5ca1a1aaad4ece43d2ff08e32c0178ac0c5e652126372",
"s390x-unknown-linux-gnu-0.3.2": "b0ffeeba7605cab0058713be4f23a9772f8dcc0218d760ee22635f9caf4c56de",
"x86_64-apple-darwin-0.3.2": "7b54003989387079ca27b8895a11abba7ccae60712641592c81e0edab4c668dd",
"x86_64-pc-windows-msvc-0.3.2": "ee77cedd463673505bf6c060eb8149f3d3965c46090bbf76595d2b05a95e596b",
"x86_64-unknown-linux-gnu-0.3.2": "4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd",
"x86_64-unknown-linux-musl-0.3.2": "38d18a40c0bdf02f98f3ee35749c295638be37fb8699aa626ca5c87d0ad42512",
"aarch64-apple-darwin-0.3.1": "e11b01402ab645392c7ad6044db63d37e4fd1e745e015306993b07695ea5f9f8",
"aarch64-unknown-linux-gnu-0.3.1": "6d57e45392f7cffe62853f1f35382e8ac9d52f1061c97ecace28dbf50243e7e1",
"aarch64-unknown-linux-musl-0.3.1": "2465eb291940c51cdf84c68d2a699d4026f7030cdaeb2a4e2801a3c4c0213f19",
"arm-unknown-linux-musleabihf-0.3.1": "dba9127924bd5e809600b1554a8b91f8abde511cbe9ddb5027a9749254c7a531",
"armv7-unknown-linux-gnueabihf-0.3.1": "e95c07dced47f3c6444c66f52378bfbcc0015281bda2ad79d308421a458b5384",
"armv7-unknown-linux-musleabihf-0.3.1": "8c58b4ce189d5e1add276eaaf3d69c77de340cbbe79fec375333de00e4e360dc",
"i686-pc-windows-msvc-0.3.1": "f5d15af65e0782f2459770afacb3ce8c5a4916566399e357c951618edbd27c9d",
"i686-unknown-linux-gnu-0.3.1": "22508ed628b2966ec0cac3264db99337059f8c1cf70c0db0ee88d7d27f3e181f",
"i686-unknown-linux-musl-0.3.1": "223b6920226ff5af37178b0511112d82af6dbcb24dd78230d972a17de6a4a0ae",
"powerpc64-unknown-linux-gnu-0.3.1": "c4eb8e06853c0e1accb6ef7976ee52ffe21631709a3ff63f4a1523ecafd7354d",
"powerpc64le-unknown-linux-gnu-0.3.1": "540aa375abc43c5fcb39e646ab7e3ebc14ebfb95264575c81b8c9c335ab4122f",
"powerpc64le-unknown-linux-musl-0.3.1": "387459fa2cdfa3f9814c8a2de2a864a0be6ce159f76e831cd249f4b659edda5a",
"s390x-unknown-linux-gnu-0.3.1": "b469bd51615edb3ec245b0aeb9338d074a8832856029b331f2a949946e921cd9",
"x86_64-apple-darwin-0.3.1": "8a4fc632bf32b49a08d1994e6a4054b535eb7f0eb85e618f30fae86375b34cab",
"x86_64-pc-windows-msvc-0.3.1": "e57ebd003eee92edfaa909fffec3214aa032590566851edc5ce55824c4aacf8a",
"x86_64-unknown-linux-gnu-0.3.1": "1ad8815d46435ab29923d84717dd0f8ee467be055cff5c4ba1d9855882a6ae19",
"x86_64-unknown-linux-musl-0.3.1": "e9f8396a2c06d6c06c36338b795e2978645c2b3b0e6915537e1860dd0cd951ab",
"aarch64-apple-darwin-0.3.0": "232935b3b2c187c4f8dc8bf533875bd7163d06a6fab625a1770689b337cbfded",
"aarch64-unknown-linux-gnu-0.3.0": "27fca2b1fda6870e1e6d376276cf0e7d3ca87b7e5c3062ef1301d9e5266cfa39",
"aarch64-unknown-linux-musl-0.3.0": "55bc78ee396f3b9847d28a83edbeeb557edd78462b782459d95fa9cad86cca5e",
"arm-unknown-linux-musleabihf-0.3.0": "9305f0214f16eda22e72f4dd08c6b980243fe16a43b6efcaf11227efd1aa5d9e",
"armv7-unknown-linux-gnueabihf-0.3.0": "e949eb495b199e6c5853f6b051e3c7db84c044453e443d7b7892aef4eb08f5bd",
"armv7-unknown-linux-musleabihf-0.3.0": "c466e061a8547a669e216321738d02ca5c864eb4ab3feac53a51a681a07cb2d7",
"i686-pc-windows-msvc-0.3.0": "1dbe4b2b9829bb11cdb3ec64e916749f6224f0db0a65bbba69570a8aa1289e2c",
"i686-unknown-linux-gnu-0.3.0": "b5a7fb7e649de9fb0342fd42c3bb1c5e6dd25d96096e08af99caa276fa44dc07",
"i686-unknown-linux-musl-0.3.0": "569ed9ac409ebce382e1583c33705e159bb960e79f9fe58feb9a357676be3607",
"powerpc64-unknown-linux-gnu-0.3.0": "0e075944b22557da941677ff25fa21677cd1eaf8302782dd2c94643494f667e6",
"powerpc64le-unknown-linux-gnu-0.3.0": "6886c917446d6b954eff5c688596a4216e9418560166271eac1caa722847350c",
"powerpc64le-unknown-linux-musl-0.3.0": "560583853792f5e3e4d40594436d5f75cdbc9a4e304d6f781f601b9eeaafbfd1",
"s390x-unknown-linux-gnu-0.3.0": "72b1b81523466a0fbe388bbde0a6926ed0af4884cb46d1e46ed1c0232a076cab",
"x86_64-apple-darwin-0.3.0": "8f3abf9bc7f49ddf85b1ebb4e5a5dd2032b6e7a4492fb5fce4b70ee4a9938733",
"x86_64-pc-windows-msvc-0.3.0": "b8b693699b46d2063cf92ada07671a309f14ccb99b34f9b3f927f7fa08b24c19",
"x86_64-unknown-linux-gnu-0.3.0": "06e38986b2923882ad250ac42c9e5db3295bde33693aa9a63b8d32632daba007",
"x86_64-unknown-linux-musl-0.3.0": "194d2a550af3e334f693f6afd716d66adc90445805e72bfa8108f36714ed7431",
"aarch64-apple-darwin-0.2.37": "35786030f926e3d34d186edc0ea3989698e57755852af9ae4b39da5109abcbfa",
"aarch64-unknown-linux-gnu-0.2.37": "ac1b4688074f5a2eab1fbe331e76b5f5766e143a8eac87f64f24379168b971f9",
"aarch64-unknown-linux-musl-0.2.37": "ddec1dd3aced1a209645c0d4c8fc9bd9f3c6a4577c43a854efd6708440f34f14",
"arm-unknown-linux-musleabihf-0.2.37": "d99c5c44ae042249b50720d3979aa5b82f61838ee76474a250ced23c09475a85",
"armv7-unknown-linux-gnueabihf-0.2.37": "3fe173e1e1d2f1bf0196bf8a140f39bc4eee34d16c6f758e552bf2a40f82b579",
"armv7-unknown-linux-musleabihf-0.2.37": "dd5a3225a8f39a4621425079f867decea4638e21d65cc9fc6803f1f6d4e22f6b",
"i686-pc-windows-msvc-0.2.37": "4c024f88c23359f8c0a61a31f93197e1fcc0b6e2ed2ea17733b99494b75078c8",
"i686-unknown-linux-gnu-0.2.37": "a041764c46d872124b4ba390bf1a9263fb52fe1b17cfbd5af85a0deaf66ade1e",
"i686-unknown-linux-musl-0.2.37": "b307f7dd65a3175aee4283603c0107496de14e431614ab10060d89f4c9ceaf31",
"powerpc64-unknown-linux-gnu-0.2.37": "c4bee003a56938110c1e9d1c1843837149f20696c35d148567b1106223f06200",
"powerpc64le-unknown-linux-gnu-0.2.37": "c54213db80c976487f54e5521f73010029da1bcdd22136a52a9976deca30db9e",
"powerpc64le-unknown-linux-musl-0.2.37": "8da6a98b7bec35b6333b33872c641a52070331192da840ea5716fbd182f66e27",
"s390x-unknown-linux-gnu-0.2.37": "5603fbd953a980203c9f6adec0482165a3b8274b2202a9fe46e1ec3168d4386e",
"x86_64-apple-darwin-0.2.37": "13185dd359d6b3c3c0e170711b2939f3512741ec64c436e0bef83813e94a6691",
"x86_64-pc-windows-msvc-0.2.37": "ea51e0dfdc0c1884d116b5a12b589e65bb47d0b2d071d6da4a23f453585be144",
"x86_64-unknown-linux-gnu-0.2.37": "2aa80df3a7120a13fe8cfd0ced688a6285e58c40cfa878e6de817356914df485",
"x86_64-unknown-linux-musl-0.2.37": "a4ec0d06361c27a87111212623559da332382c2ead25c1f4c9386adee9905b62",
"aarch64-apple-darwin-0.2.36": "89f0f76695ee554cdfae60245667b795ffeac7e4d52c0b7fa90bb46d4cf95d59",
"aarch64-unknown-linux-gnu-0.2.36": "8bbc36002d398b5d9febe93be913d42d2844944451189cad6ff2b844c604f499",
"aarch64-unknown-linux-musl-0.2.36": "921a5c069a74608e63e7292d606b1cf0096ffd0914f28bd825968ac66ab3a77f",
"arm-unknown-linux-musleabihf-0.2.36": "349369041c1c86c69bcbdbc3fa2bb0d03e864a95db5e50ef0c04ee67c4e0d428",
"armv7-unknown-linux-gnueabihf-0.2.36": "42d15ec25a0e04fcda9e6e7501e8cc51d17e593a8758ec76e686381336ec6302",
"armv7-unknown-linux-musleabihf-0.2.36": "eaed31f496ce42bccbe17eab69d36351c67d3832f9c7740e33c34a3edf5c5451",
"i686-pc-windows-msvc-0.2.36": "b8a3fcaf5e66ae916f31d8c1df8a7d32558eb8e852087c6038cc80fb3e04dace",
"i686-unknown-linux-gnu-0.2.36": "1f0515ebd04690b5f09b5a55531eff3595fc778d021bf6b33b5d5dbfdd76ce0a",
"i686-unknown-linux-musl-0.2.36": "07bb7a141abfe23d0fbdf30e0840865671f491228288cd851d943a984ff5982b",
"powerpc64-unknown-linux-gnu-0.2.36": "9ec964f73faa23b52e8022086fbffc8f77dbe346e5a17344967a290c10ea0143",
"powerpc64le-unknown-linux-gnu-0.2.36": "f7cf2055c9048faebd75665487d20a55812e37535c6f8393a97f715f40482433",
"powerpc64le-unknown-linux-musl-0.2.36": "03c3221271bbde6333be35e7bdf0576a73165f8f35c48e33cf09b8e14f907718",
"s390x-unknown-linux-gnu-0.2.36": "91788d177f47e3a6db63d5d619f622814b1407b673c311873b4868f223eb2ca5",
"x86_64-apple-darwin-0.2.36": "a8c08a6c978b0ef87c00012d892d936324dc9a6881efefbd028622b69c903aa5",
"x86_64-pc-windows-msvc-0.2.36": "ae6e07bd2c0843a0ffd18959a519c125bcc444d4ad1b71c00e7c3734bed0777e",
"x86_64-unknown-linux-gnu-0.2.36": "6fbea0801c1698d00b2300b220d4f72a4edeb0406877ac6d774f4ff385b6fbe2",
"x86_64-unknown-linux-musl-0.2.36": "d3543c84d8b2da5d8f08b6f2e87e792aa7626c47cb65458c7b92e68e8614d3a8",
"aarch64-apple-darwin-0.2.35": "e07fd0ed3b5e92ce9018f8775aa76cfd891fae8cb0a1627d5a861158fdbbe32a",
"aarch64-unknown-linux-gnu-0.2.35": "41d1a15fbd346ca3b33e8c60e54bc36df11a8e8655e98e25801847c270e1b6f9",
"aarch64-unknown-linux-musl-0.2.35": "b8c920e4d335f09ab032087e0f27b4beda00248577ae708fbebf0362f7b19818",
"arm-unknown-linux-musleabihf-0.2.35": "d50f55d2cdcca7aa7542e73482106fa8413541ad17da47a2a9be612a0b53dc74",
"armv7-unknown-linux-gnueabihf-0.2.35": "322b8564e20a860d5d6e0d9de950f2f0d8204ed7b7a9605f25c0039cb01ac6a4",
"armv7-unknown-linux-musleabihf-0.2.35": "5f2a37d0414c8585770721139fcad061f123f312ca85faebc70f8836bc5b0c30",
"i686-pc-windows-msvc-0.2.35": "2bd193bb68095b21b86a1126a6fe7740a36bd76cdbb606f51b0da6f19214487a",
"i686-unknown-linux-gnu-0.2.35": "44719f49c7e7d634db35d9656f2f168fc13042ab87ee9afe8f04c864a3c341b9",
"i686-unknown-linux-musl-0.2.35": "2cb162263ee067df2a10c3f9c9959835862aebc17402b7e0decff4a0dda30b45",
"powerpc64-unknown-linux-gnu-0.2.35": "31ca8623f79926496f78d335839d13d15c66c7e164804604e8f4535be4f5be19",
"powerpc64le-unknown-linux-gnu-0.2.35": "b1d797f9a9f413f3d3f884accd47a97c84d64145407d458e4442b4d011aa39b6",
"powerpc64le-unknown-linux-musl-0.2.35": "fc7e73e1af403cb91a0b4d6bb3d133facf93d0c28c188bdb5f9294d4e1e0e657",
"s390x-unknown-linux-gnu-0.2.35": "f52ffe9ceb3817df9a999194ab32fb8f997707a44e6597dcede0df238fc14c77",
"x86_64-apple-darwin-0.2.35": "f8159e1977b00cf99e120858253ee675a66669b820e63af7f7e7e91cf6a3b9da",
"x86_64-pc-windows-msvc-0.2.35": "1bbb2a9a81f609a5f257ed066e25902bba995ca2ade3cbd4839703ffbd221071",
"x86_64-unknown-linux-gnu-0.2.35": "f1a9bcbcc3e085fb5ee6a79f5778373fe27fa192d95fc47db20c596789dd1b97",
"x86_64-unknown-linux-musl-0.2.35": "bec7f54d33aaff97098157b4893b9d4a93200c2902772cba13d60c266a54d087",
"aarch64-apple-darwin-0.2.34": "2eebf71aa924d8d977983394c212cb3ad99f6e241e77702822e8f407c8e231e0",
"aarch64-unknown-linux-gnu-0.2.34": "022b805b4d0360e4441fb94262e6a4cdcde9038aabe156242ba833e1ed00e0c3",
"aarch64-unknown-linux-musl-0.2.34": "227cd1dabb4ebb98e51c1b7735fa94dea96e14db7efb2d3d76b48c87a61a3d28",
"arm-unknown-linux-musleabihf-0.2.34": "b71616ec27d83325f0b1f5a801181da201c2bc0c148c20006a40e48adaf2ad6f",
"armv7-unknown-linux-gnueabihf-0.2.34": "5e3ff5bbb4159b7a2f9768caab5bcb692756509566ef52fd5eca129b2e0949b6",
"armv7-unknown-linux-musleabihf-0.2.34": "7366c01e5996b7d5251423ae37bc3646e919b39a0d9f1fbde25e3215134a006f",
"i686-pc-windows-msvc-0.2.34": "34035c24e9c6dcf1164f10fee22e12fd03b329479233986909458df3259cf22f",
"i686-unknown-linux-gnu-0.2.34": "99c3873d4bc3816c383c0e2686de1066be1ca8ff546e29e418e435296df13ae0",
"i686-unknown-linux-musl-0.2.34": "e659c3d71edba36fec7b9d742c5c4c3172a22bc409d713bb2d944a8a916d221c",
"powerpc64-unknown-linux-gnu-0.2.34": "e5b4e6c20f5f79abbc4e9eb3881ea2b1edae1ad747980d7a2e062f3be09478df",
"powerpc64le-unknown-linux-gnu-0.2.34": "125035676a19c335f6c8af34ccf69d5df144183c13649e823cc0959886a11cae",
"powerpc64le-unknown-linux-musl-0.2.34": "728c7750d408d3300437fb79b74b126e5b49382b45b45fa22d49195ebd19b2cc",
"s390x-unknown-linux-gnu-0.2.34": "0da036696c1decfa388ebaf98e779e8085fd2bb76a91128bf2445fe32c84c053",
"x86_64-apple-darwin-0.2.34": "62764007f4553f3677ef86e864097405d1b054e8a62e89f047e545816347491c",
"x86_64-pc-windows-msvc-0.2.34": "d237ebacb6f4a651fbad3af702f29b8262b825e070c87e9020d5164936459393",
"x86_64-unknown-linux-gnu-0.2.34": "cee114bb3c73a4be5066660d71eea1ac996378f567ba69fb7f29c688289245cd",
"x86_64-unknown-linux-musl-0.2.34": "d1d49d2d3e1e2e2ba547b6cad8b1ad279cdbf622fe5b3fe3b6d470d7a06e3c92",
"aarch64-apple-darwin-0.2.33": "a2602b99e71bc04d7eb11df00b87be068727bb47fc415f7fcbd24dae49c947a3",
"aarch64-unknown-linux-gnu-0.2.33": "d4d24e221c5f1c9b0f2bb39b919c933259175bb9db37845a92d31bf241f28035",
"aarch64-unknown-linux-musl-0.2.33": "9d4ba96eee49b9483fd55ab1b376ed4b9f88f0f9d155c0e48e7280d3cc388d4e",
"arm-unknown-linux-musleabihf-0.2.33": "9940e8f34a702e6944ce953208c1abac7bc9fcbe8348dd76c3b5eb62c1125126",
"armv7-unknown-linux-gnueabihf-0.2.33": "08b9a84370acc5ea1631a8fff94bf7522305612da3c24c612fc1d4fb5ecd3839",
"armv7-unknown-linux-musleabihf-0.2.33": "fa5a2cdd3714a2f4b8d6f64c86b988e6c7189d67411814a6c20905992201d16c",
"i686-pc-windows-msvc-0.2.33": "69c5d28aa75d0ce3fa5466736e2e156db48514cd7c9c44e6bc6515994944695d",
"i686-unknown-linux-gnu-0.2.33": "176caa5100e047b32e84c0c7ce1a31f74610b3f94266f5aa3f86d02417fcdfb6",
"i686-unknown-linux-musl-0.2.33": "f0d93ceced329740403cde3c0e6f44325aee40b5619c3fc855e602f1829bf731",
"powerpc64-unknown-linux-gnu-0.2.33": "7aa9bf5a765801bdfda72b491d716cf08eea7d4821c41698217732a403b7eac2",
"powerpc64le-unknown-linux-gnu-0.2.33": "329aab924d8572d6aa19e2c2e225beb5bcca8bf04e62cc023941aaa06768fd6d",
"powerpc64le-unknown-linux-musl-0.2.33": "1c99451ea9d95732e78bf3c612bce889a1815cf333406857b170986739fda597",
"s390x-unknown-linux-gnu-0.2.33": "095a4b15583e21d521e7954b5da62d5a08b69a08cdfb8847b3b5318e054c29ce",
"x86_64-apple-darwin-0.2.33": "0d4a2c20e1d0e06c83a60fac0d85bff46cd5312f146dd0f6bf35b63ae8f7a9fe",
"x86_64-pc-windows-msvc-0.2.33": "c080525062c3d803e63ef493002f234056dd6efe6d0281d86d672510702823d3",
"x86_64-unknown-linux-gnu-0.2.33": "e62a4123e6b77c9dd22f133212f7bac638077ebde73daa20fea3bef3ac51c84c",
"x86_64-unknown-linux-musl-0.2.33": "5f6842bd7a800a83c568b7a2cf18f4d9428e929e7ea91d55cc8d53e0a0c10c42",
"aarch64-apple-darwin-0.2.32": "5084b7544da648d3467440f87a3f2929ca7c593a311a3b77271b638ca7664f3c",
"aarch64-unknown-linux-gnu-0.2.32": "97879b661787586ab3a747d9a65a0c295d9ed445001b5860f9ff2923ef07d824",
"aarch64-unknown-linux-musl-0.2.32": "b3fff6bb0ae62154c5d17256b40f3d568a7bd7037e4839cb672545b16cd8622f",
"arm-unknown-linux-musleabihf-0.2.32": "9b3957aea729f36d823a59ae0dba033860f5904cb42215d55c7857d2d1fb3340",
"armv7-unknown-linux-gnueabihf-0.2.32": "c3afbf787fa9b2cc8fcfaa74cf0fc723d224d56b514b0851dc0901747b03fbc4",
"armv7-unknown-linux-musleabihf-0.2.32": "33941dd54c28c6b56f105cd198e7ca7ea480676bda71b0c5e31b55a1493c4acb",
"i686-pc-windows-msvc-0.2.32": "7a449bc0fe9326d31ad809c8cfbe19ba2b67b28c9dc631bb6f1696334442d928",
"i686-unknown-linux-gnu-0.2.32": "1c91f7ad89b5697a33906be435fe6b9fad903916096ef61f034257252a8e4c86",
"i686-unknown-linux-musl-0.2.32": "ba1b6775f17d1522a6ba69655bfe792ba0b4c9ed481edec08ee56bd74d0d5368",
"powerpc64-unknown-linux-gnu-0.2.32": "e5e0d7b9ce6db091ccd8b642d11e65205650cb9b02514fdcc9ca35b699cce0f6",
"powerpc64le-unknown-linux-gnu-0.2.32": "60534e2567ee4b84922d4b6e39000a2709bfa7f2cb162c8c0a2274f3c4ccd2d1",
"powerpc64le-unknown-linux-musl-0.2.32": "732bb92926d033e22bf65c671ecca31f5a08f15b696fa944e7f57d70a4823f1f",
"s390x-unknown-linux-gnu-0.2.32": "80420ca075a995f2171b68d6311a304da59461c39594db88d146079f2656b51e",
"x86_64-apple-darwin-0.2.32": "e86f3bd4e7c30b0e4094d1eff520d762fdfac9e55da785db23b0139b675aeda9",
"x86_64-pc-windows-msvc-0.2.32": "1725fafdcc1390574b8682805ec31ebc9287085f562dc7ac6a64b186abaf1b0d",
"x86_64-unknown-linux-gnu-0.2.32": "c676266d23c8dbe7832c44f37832c4e4ecf21781b7b0560bf27b270bedb14462",
"x86_64-unknown-linux-musl-0.2.32": "e7deca89ca4e273c57adc45cd91e83377c74916feb9ece311cc93c8a8ab2c2e5",
"aarch64-apple-darwin-0.2.31": "34938bcc045b35a646aa768d660755e838a23ab224ea3687dc577299da227fb3",
"aarch64-unknown-linux-gnu-0.2.31": "f8d46c40c3f6ff762e5f0408a151f4e2ce97ff878625b0c9bd5ca13f14e576e8",
"aarch64-unknown-linux-musl-0.2.31": "f2bdf2132993b1dfe50ee610e9df2a56cd89f0346d9d8a5cc3275b47c4c5e7a0",
"arm-unknown-linux-musleabihf-0.2.31": "8c4628e19a571ca7480b48c6ea739efeae2abfe08e07fb8f8e7b0f49887af223",
"armv7-unknown-linux-gnueabihf-0.2.31": "8e7879750c682fbd3619ced0770a43afa902865a839cc84fe361bf5a9f55154a",
"armv7-unknown-linux-musleabihf-0.2.31": "051c6f44f5f1607ea5f11d8a73cc91064a29c7293d6d050d2d7ae34c9d1ec680",
"i686-pc-windows-msvc-0.2.31": "382c7007bdfa6f02d436b552fee33d2d2beec5335410b9fe308067c094f95742",
"i686-unknown-linux-gnu-0.2.31": "dcecee22480a73c9a31fcf76cd633ab4c4befb10180e61b1b298e78a85ea7f8a",
"i686-unknown-linux-musl-0.2.31": "990d1ac694f8d4bc31b79a0a64817d0781f0c59a42e57136cf9165dbb7aeab2f",
"powerpc64-unknown-linux-gnu-0.2.31": "3b556388d586f24e37c6e6478b97d4519a402b564b7a70f1ee5f4d86352547ee",
"powerpc64le-unknown-linux-gnu-0.2.31": "c2219e0285a14b8d1dbbcbae750ef9b66a3567e862bec3fc2f55e465941f78fe",
"powerpc64le-unknown-linux-musl-0.2.31": "1756ca439bfcc86b40ed3d987170439212c54118a5741a0af662892817e46f93",
"s390x-unknown-linux-gnu-0.2.31": "98a83bcfdeaff40772f7338538ea8a1b94ae60a94b20e552a80efd0ef4db7add",
"x86_64-apple-darwin-0.2.31": "8674abad2d95099de054c92a9310d95466932176548a57916fb5f1c5674db790",
"x86_64-pc-windows-msvc-0.2.31": "e5779b76db0ae0334221a1dc9956b97dc10969735750777717551397a2b48e31",
"x86_64-unknown-linux-gnu-0.2.31": "351278978126eb9a74c4d735d3ee2191de5cd492fcc1615cc4c1107ad3e632ff",
"x86_64-unknown-linux-musl-0.2.31": "003e8ea52e2b8383009f5d2bc78becc27f6c97bd9f6837140162cc25247a465b",
"aarch64-apple-darwin-0.2.30": "387f24ebf55f304352bc5fc4638ca251112ab682291a00290de3753a1b5092f7",
"aarch64-unknown-linux-gnu-0.2.30": "3cb0b65d21961dc36044562b9ba9462320e1106bb40f55e5ec03614c83a8fe0d",
"aarch64-unknown-linux-musl-0.2.30": "4b4e5fb2ca63fee674a32ed99e1c371d4dcfe194787c3bddc7bef37b4ae3fd24",
"arm-unknown-linux-musleabihf-0.2.30": "aa68e7f58b1b6b31481f104893f44acdd57ab712f17429f3bb6ba03ac3fee370",
"armv7-unknown-linux-gnueabihf-0.2.30": "355672634f530981171c67c7d99bda999bfd66b4273d0d292ce3f5db25118213",
"armv7-unknown-linux-musleabihf-0.2.30": "b3fa035bb0b493ab7bb65ff4d5c6c6740a8804815acfbd50c718ec03f6876e33",
"i686-pc-windows-msvc-0.2.30": "2ce7b022fab83161cf9b26a8413702ab328c2f01a530a2739712527acd769068",
"i686-unknown-linux-gnu-0.2.30": "6777ab4ee773df50790da19586afe41507dd9b4c69db39e09154cc013e066aa5",
"i686-unknown-linux-musl-0.2.30": "2145948b75e56106618e2b7a9cea916194cca7768c7e83a3e06095e4690f214d",
"powerpc64-unknown-linux-gnu-0.2.30": "7287d8034db3f1e071ea1098f7fc0cf8fd853c7731d37f59e374e9c771d92026",
"powerpc64le-unknown-linux-gnu-0.2.30": "b7c8a829b869e11e64ca9fa1d748b5094e1841c6487f017b70117d826dfe6c46",
"powerpc64le-unknown-linux-musl-0.2.30": "cb83556e2cb6f6d7731c436dd3ad1b048d323622d6d37ecbb3e320d7dd0c6d39",
"s390x-unknown-linux-gnu-0.2.30": "c8f623ad3da4bc425185fc026b52b80a86b796955dc65ccaf67e7a4778bb05c6",
"x86_64-apple-darwin-0.2.30": "4048630dcfca6946dd8b7f2e8ff38dbc54a9e47ae50f9e04a372081c413e0b66",
"x86_64-pc-windows-msvc-0.2.30": "8cae7297892b5cd947fc8dc9ef045dc82c8a3c948413cbc68aa46285b888031c",
"x86_64-unknown-linux-gnu-0.2.30": "572a09703b40680191f4da33ffad2ae57cee93f0007f1eb25b84d241b0b418f2",
"x86_64-unknown-linux-musl-0.2.30": "430aa21ca5c6eea5731dd5f3f8c0a364160a6e2d7153dcc0b3941ecc06947000",
"aarch64-apple-darwin-0.2.29": "34e214671c640b72e7805ae4802ad774f9e7636d59361b6434f38950af0fc6c3",
"aarch64-unknown-linux-gnu-0.2.29": "ada417de9049b4e16cc4b31de1096e19835bd971569f6462d3c6d24ce75006b9",
"aarch64-unknown-linux-musl-0.2.29": "77607a17959e650fa085a28f74b120db065833957a8306ee458a06e331433a21",
"arm-unknown-linux-musleabihf-0.2.29": "fc91ac746a94ae16bfb1fbb0fff159d9df6e40b7ce67f91dc7ba7984d417912f",
"armv7-unknown-linux-gnueabihf-0.2.29": "9ddfcbac00d7594e3c99ea4a97fe3a63895266a5993ae458e70e05e6834e3247",
"armv7-unknown-linux-musleabihf-0.2.29": "62dc5eb5430aca18e02b0f8b156716bdcda15ff4a7605f4129500d6f18d157d7",
"i686-pc-windows-msvc-0.2.29": "0ff66ebe55fca07d6637b39ff9b9cf8169c726d5c3d3776e232b8cee2b04b22a",
"i686-unknown-linux-gnu-0.2.29": "719d62f7e8e48fb746454c817f8ba094958f673bcef3bfbf0a3fe21b9d9fa296",
"i686-unknown-linux-musl-0.2.29": "c204569e573555810c54cd7fdb96cac3ecc1014d69fb3017b44270413313a212",
"powerpc64-unknown-linux-gnu-0.2.29": "c4e63df2e3843c1fa9919df76d00996ec2f8d733b81f13673c7f09ddc5e8fd85",
"powerpc64le-unknown-linux-gnu-0.2.29": "b18ed91775d1a715f975c91a3b9a16f53b7c5e25ee6d9101493f1091c425edbc",
"powerpc64le-unknown-linux-musl-0.2.29": "7a35b550385b8131561de362d769da1477b3c22a9eb3c9a42f4e758971d56b01",
"s390x-unknown-linux-gnu-0.2.29": "47c3b46b281c46a1379a9ec3e11748e44c33b613582f294f3fb5794270c49d90",
"x86_64-apple-darwin-0.2.29": "8536255454ef7c9875d64baf7616cfdad6ce263270860f34b6ec38f02faffa0d",
"x86_64-pc-windows-msvc-0.2.29": "45456b9383097670a5f05ecb1288f9d6b7f7d84889ae7b6022130feaae834334",
"x86_64-unknown-linux-gnu-0.2.29": "1199ddcaba212d1909d934b7edfe24ee39f6ac60cfce1a558d74d082f9763937",
"x86_64-unknown-linux-musl-0.2.29": "a7529403581edef6e1e34d1b7c321540e526105aedaea1672cb0f37cc1b5da0c",
"aarch64-apple-darwin-0.2.28": "b84fc81eecdeda15f9cedc1634685104463798903ad2241f46994bec17bdc5be",
"aarch64-unknown-linux-gnu-0.2.28": "103fa6a5e68562376351d174bedb5013dcc52b0a7a27258336b87a7186aa10be",
"aarch64-unknown-linux-musl-0.2.28": "bf23111a512596da533ad21ef94ea1758957f0f12ca9a306b298617affa4db8d",
"arm-unknown-linux-musleabihf-0.2.28": "0b0113d0326fae2e99c9ac6b8a66607f74aadae7e9868149439472fe6c3fabfc",
"armv7-unknown-linux-gnueabihf-0.2.28": "6e50f4f5690f0135b30d0f6e4cbbceec1909bdef10b1996abb42042b6b28c64b",
"armv7-unknown-linux-musleabihf-0.2.28": "ec9bcd417ccd5608d8f6f053b84497204704c6439c04e80ccc9cd4ec379a3fc3",
"i686-pc-windows-msvc-0.2.28": "75de1d50a1f5d19de6794375762ab8afefb0b0c4704d6c599e5af6cee84ad0e3",
"i686-unknown-linux-gnu-0.2.28": "b01214f008a456aef5acd9043fe13ffadd8bc7975912f288a4afc7f26ae1136f",
"i686-unknown-linux-musl-0.2.28": "ded399ffdfda93b56c78a29eb3889f7e8c0700348af73207972940e66fb45c43",
"powerpc64-unknown-linux-gnu-0.2.28": "5e1cda75b920f9478f4711a3420ddad07d2d25b5f7eae93430968a7af57568f4",
"powerpc64le-unknown-linux-gnu-0.2.28": "0b246ecc617ac22c75170bf9db20ba03fee0df46f7adf6b42a3f949f5316e380",
"powerpc64le-unknown-linux-musl-0.2.28": "8928c0ed5e2a5ca68989d823ac813592c25de7c2c2e77c999cb79f50b6c9425f",
"s390x-unknown-linux-gnu-0.2.28": "b865fec71668ab77aee6f6ffc823a3fc4f92ac04d0746755e1fb624fd3fd7f75",
"x86_64-apple-darwin-0.2.28": "52da204e0117cb65471ff2e17b449f69adb6091720e0290721aa2a9d7947f6d6",
"x86_64-pc-windows-msvc-0.2.28": "7635ff298ddfde400e00054ba31d88a139dbfec234578f10376984f3e0aa36e2",
"x86_64-unknown-linux-gnu-0.2.28": "9c6cbe9f7d7b2abcb45e028d82a5986b951af76a587c93c99922ba0e71c7f21c",
"x86_64-unknown-linux-musl-0.2.28": "ba2656952c1dd29e400a9d21a7b923b26f1cc8a4b29468e7c99fa4613034d837",
"aarch64-apple-darwin-0.2.27": "d071d3063933e2e98322619bd4318594e84b7f6ce4f6c5c13a2ef424b0704bb7",
"aarch64-unknown-linux-gnu-0.2.27": "c390e4791f3bcb44041d326f6a7aabb2498a610d2b1d28964c3fa8de97fa7dc3",
"aarch64-unknown-linux-musl-0.2.27": "f7ad07f32e01dfdbd6b217c7f6acd7822eb6600d9992d204b93bfa0749bc6b29",
"arm-unknown-linux-musleabihf-0.2.27": "41df51f4a9de2258973c6f0b80d6122475f18909d3905135d9b0defcb0222737",
"armv7-unknown-linux-gnueabihf-0.2.27": "0316c82068bd34faee8a26bff0b85c25951a10fc54bc2ec5bfae64dc00e4a58d",
"armv7-unknown-linux-musleabihf-0.2.27": "8553382a71fbd84e351f732ece7513e1b36a294dfb2949d956a45e389a397b6b",
"i686-pc-windows-msvc-0.2.27": "6183e4fecfe5404dc69d9cc23c248441ba25a21541c8046c8a27b09a63f224b7",
"i686-unknown-linux-gnu-0.2.27": "4def707256649e6ad40ad33c8c00464d163728a969e54baf94f9d8463b4b89d8",
"i686-unknown-linux-musl-0.2.27": "383bdad28c1a571856aee566f37f888c65fa36385d9e0fff50950dd4280d09c3",
"powerpc64-unknown-linux-gnu-0.2.27": "bc7161175d823aa92d27402e137d1753da1a37fb6d2f7fe534e829bf7f9317cf",
"powerpc64le-unknown-linux-gnu-0.2.27": "bd8eb63b1e3de60279c8daa045f3f738f4f533787302fa0199275b8624831f8f",
"powerpc64le-unknown-linux-musl-0.2.27": "9eff96f3761db33e7043cabdc38b5e49011929dc777ee44f1ea3c4747ee07dd9",
"s390x-unknown-linux-gnu-0.2.27": "4a8e46f67995c86e955416907b4b37558f9df6786851e943ae896f22fb6a3bbb",
"x86_64-apple-darwin-0.2.27": "56be1ded925e7c1852f8853f7637942786ae379c0ecdbc88cf101f17f8413129",
"x86_64-pc-windows-msvc-0.2.27": "1ea0b0623c362c47c6d00801e09ddf948cc27cc18200e5390469e279dfb85d29",
"x86_64-unknown-linux-gnu-0.2.27": "224cdff5d82ff7053d1a9bf61e5ae89961d536eb2da8a4a13b93a49a0ab434bf",
"x86_64-unknown-linux-musl-0.2.27": "2fa8e18d3804863c1355ef8b0688530c1a57b1981be69476641a8dc87c812d60",
"aarch64-apple-darwin-0.2.26": "e99954e3853a367497f66ed5ec1460cbe0c527e5664732eb2407ffc375cb3207",
"aarch64-unknown-linux-gnu-0.2.26": "93595aa21aecddfafb3573db9b83761a33d12f9c20ce38bd0840262fdbcd94f8",
"aarch64-unknown-linux-musl-0.2.26": "824c3a1e4eba63370232998dfb34964afcebd00fc79b4c7b4e9a1c5d749cf08f",
"arm-unknown-linux-musleabihf-0.2.26": "100c1bbb2b5f09b7c2ca0e9ce9b0c36e8870a2f8c536b24a8098b4bb5375edb7",
"armv7-unknown-linux-gnueabihf-0.2.26": "d42cd9db133bb16faa844f46baba52184a3cba5ad6f428bdfb0f3a5d85d01951",
"armv7-unknown-linux-musleabihf-0.2.26": "370e1a42247359f275dd2e68b6e7279b1718f7ce8148492a291c7851effd7291",
"i686-pc-windows-msvc-0.2.26": "ce1118475dfd9636c873b5d135f2f238f522f069955653805def0196ba2c227d",
"i686-unknown-linux-gnu-0.2.26": "81408c83605c95ad7f5431100293970c040a2f78651f8de6269784999c283932",
"i686-unknown-linux-musl-0.2.26": "c6b6dabebbf86c533f75150f67be276d0a934c13db1922597cacc086cd64e6c2",
"powerpc64-unknown-linux-gnu-0.2.26": "7c094b2a084288d586bad962330648c19c02faf421590c1542c4c961db5b28f6",
"powerpc64le-unknown-linux-gnu-0.2.26": "ee28b5db562c13f9262799cd407373734ef4aac229f4436cf4478117ab70d2dc",
"powerpc64le-unknown-linux-musl-0.2.26": "577babbcfaf8ca472286b492164ac49e0209a18a014b93b340be73c563bbb915",
"s390x-unknown-linux-gnu-0.2.26": "f08d8559b2f73c3b112edd8414bcba3a94d0a1bc986099a2d24e4a24ba68ceee",
"x86_64-apple-darwin-0.2.26": "f7dfea29cd87f8e8ad893fc50fbdd06270de392c79fa42f6e9ef8ebb61ce6c5d",
"x86_64-pc-windows-msvc-0.2.26": "7bd19cc12f927dcd29e61ea1ad428d4c7315a01561d05ce32d6f9c09ee5ce972",
"x86_64-unknown-linux-gnu-0.2.26": "f70997db1acf979b626e23236c289bfbf418e17ffd18a7956d8cf44e6f3f5522",
"x86_64-unknown-linux-musl-0.2.26": "aa61951a7101f9de68265425a64ea2320d2ac1857001293274a338becef63180",
"aarch64-apple-darwin-0.2.25": "79887e314f1614352852b45aad55bb533b45add7ba239faa50cc0122665a941d",
"aarch64-unknown-linux-gnu-0.2.25": "2d45144527eb5aaa1e073f1046d510b8854f24553bbbf883d0971ac10721a1ce",
"aarch64-unknown-linux-musl-0.2.25": "34fe01cb0ed953aab2584231875b7f112d306955a92d674edcae4632c475bd2f",
"arm-unknown-linux-musleabihf-0.2.25": "368bd210f1ac181879d8394480672243e10710d41fbaaff46d5195a5f13f7ed4",
"armv7-unknown-linux-gnueabihf-0.2.25": "a107c831168cd40131be62193cc9ee8516868542e14d08c649d7767bf74077f8",
"armv7-unknown-linux-musleabihf-0.2.25": "b3e910c7c857dee9436ecce2a5c706a5f70c8e443e10c007a994741d5f0ead54",
"i686-pc-windows-msvc-0.2.25": "4d787b0549b4ded295ada22a5fb6764588bedbcd83e73a1185292c756922dfe8",
"i686-unknown-linux-gnu-0.2.25": "8f16d242447721557bdd8b5a4eb97c06d031e02f5f3acaa6c3a0dbc210fd0bb6",
"i686-unknown-linux-musl-0.2.25": "9c0ab30932a97e8ed1b64a6ddcff313b32eba2a51a46b5aff595df1af5b6b91c",
"powerpc64-unknown-linux-gnu-0.2.25": "f36f267441929b6dc21459a8244b70477877e03ad0a72e5cadce4518f81c141e",
"powerpc64le-unknown-linux-gnu-0.2.25": "2ad2221281afd1f68e8746a0ca630cf2b31d03d017b6bb1dd624975b35a1f70c",
"powerpc64le-unknown-linux-musl-0.2.25": "57ed0874e885ed1318f10d65971ee6fa91365cb958a5f5f0005975e4754782f5",
"s390x-unknown-linux-gnu-0.2.25": "39d33889705863efcbfc08ef840ce7e6b0a823dc9bd5b80f5001f732c0f1d83c",
"x86_64-apple-darwin-0.2.25": "ed21c9ee096bb7306eaf3ff39307461452ace0221a132d45f6919ddd5972949d",
"x86_64-pc-windows-msvc-0.2.25": "7e55a0ae316797723acc2974a658a5aaf0b94ec9ecc90cf62b94da64da223a8f",
"x86_64-unknown-linux-gnu-0.2.25": "7f3396784a504ffb3d2190312b4a7c5330f08906ef22bcf544fe20ecde30081c",
"x86_64-unknown-linux-musl-0.2.25": "c92951cc355ba7de4897d538e8d420c7b32f810945dcd664f55d50a936331629",
"aarch64-apple-darwin-0.2.24": "49d55dd8a8f2adfb83d1feaee5bf40c20169b411e3809e3455ff0d96bae4f388",
"aarch64-unknown-linux-gnu-0.2.24": "0232b3d2ad506df099ec488b48a7801e7a51118bd6b5c48b081d5d172ee63ea9",
"aarch64-unknown-linux-musl-0.2.24": "56bd0db80905d0f5eeba51aa33872727aa40e3dda65c86a584c095ac05609509",
"arm-unknown-linux-musleabihf-0.2.24": "63d0a438b8ae0e080a5321b668d72a0b40ed9e9f09240592020dc55a39edf762",
"armv7-unknown-linux-gnueabihf-0.2.24": "c2650b42b0211cca495cbb8ccadd200256876cd02f70ce5ccb03e4eb6782c16d",
"armv7-unknown-linux-musleabihf-0.2.24": "51ad3c67b2730040858d59e71b4d3cb8f32e7ef6e1c2b03023cc8518c92c1794",
"i686-pc-windows-msvc-0.2.24": "3995fbf5a09bcdfc54824ccd0969a975844d586a5fe5dc689f0b8d36eec6e5e6",
"i686-unknown-linux-gnu-0.2.24": "dfb662a3dbb7bd1d5da4dbb20805484d8ba7e9d8cc1f6884e737ffdb3106cba2",
"i686-unknown-linux-musl-0.2.24": "ebb6d14796fb172b03f2ed561d68c6a0f7468173dd9c2f34823dc868bed6ee90",
"powerpc64-unknown-linux-gnu-0.2.24": "3d7abf03072c74c6d841979d444add3d44eea3ef2955ea5bf2968549c9ad8b2d",
"powerpc64le-unknown-linux-gnu-0.2.24": "40e3fa0cdb1da02314c998ba0dde02cbc0ef60dfc75eddbe7a51e5bf83e0db28",
"powerpc64le-unknown-linux-musl-0.2.24": "c89746e4807e8a960f681faefc9fcbbc9cf6c261153791f893f90b3ce8b2dc39",
"s390x-unknown-linux-gnu-0.2.24": "ae088d02d3435bf7e7dd15f72ea8b92888a92762cc7d6830a1a8c9f9cb8c1635",
"x86_64-apple-darwin-0.2.24": "dbb918c9d55b99cfe1c995cc330b6b1dac29379e320c35a84e7bc6bc0e0a55f4",
"x86_64-pc-windows-msvc-0.2.24": "a044e2cbdfaaea36d15a7c8091d12e2ae81784329116fdf967a573b792fc1fd5",
"x86_64-unknown-linux-gnu-0.2.24": "24a0c6758a4f533c37193592fd0a9a37a61fb583a4b6abd0bb81b83127d86336",
"x86_64-unknown-linux-musl-0.2.24": "cb91cb5111e9eb4f1be7c4b8e467380e65b41c5f19ad956f613b290deaa838c9",
"aarch64-apple-darwin-0.2.23": "1d41beb151ace9621a0e729d661cfb04d6375bffdaaf0e366d1653576ce3a687",
"aarch64-unknown-linux-gnu-0.2.23": "c35042255239b75d29b9fd4b0845894b91284ed3ff90c2595d0518b4c8902329",
"aarch64-unknown-linux-musl-0.2.23": "60a122ac03b4187ddf716995f5f87838ff0edf9bfac372202c5c05269a32537d",
"arm-unknown-linux-musleabihf-0.2.23": "643666522fb27c45b8cbb12533b57519ede6c1c1a61c1597e9c632888080d55c",
"armv7-unknown-linux-gnueabihf-0.2.23": "2e284e7718176306b0d042a65143ff5b2c6453f33cadc1ebb19aedbb4f70ec95",
"armv7-unknown-linux-musleabihf-0.2.23": "27408e6dcdca9437d7813f7122ef08b2de4e21c90c0c1784c32998dcb9f5ed7c",
"i686-pc-windows-msvc-0.2.23": "8f7e83f5c09320d1ed32dee5773c4c122797c194ce27922cb03889c54d927eac",
"i686-unknown-linux-gnu-0.2.23": "1cbd6066b8e39445f36cc621b982a053a917708bd5f13d1624484677449bd854",
"i686-unknown-linux-musl-0.2.23": "a3e68f5c51efdbc63edfda7f3f830d381964458d46a42b993f8847d4369e0818",
"powerpc64-unknown-linux-gnu-0.2.23": "2644acd3c6fb902b14325a2a60b324bec6617ce90ff73fe4df15d2ca26ca5572",
"powerpc64le-unknown-linux-gnu-0.2.23": "ca16c9456d297e623164e3089d76259c6d70ac40c037dd2068accc3bb1b09d5e",
"powerpc64le-unknown-linux-musl-0.2.23": "ee6596b3241df3884ce77780833051ce4a3700a83e82e1704cb60981db8f8801",
"s390x-unknown-linux-gnu-0.2.23": "55f8c2aa089f382645fce9eed3ee002f2cd48de4696568e7fd63105a02da568c",
"x86_64-apple-darwin-0.2.23": "960d2ae6ec31bcf5da3f66083dedc527712115b97ee43eae903d74a43874fa72",
"x86_64-pc-windows-msvc-0.2.23": "66f80537301c686a801b91468a43dbeb0881bd6d51857078c24f29e5dca8ecf1",
"x86_64-unknown-linux-gnu-0.2.23": "4384db514959beb4de1dcdf7f1f2d5faf664f7180820b0e7a521ef2147e33d1d",
"x86_64-unknown-linux-musl-0.2.23": "c7b80246dad84eadf288c26128f6504fa27529f21091ccf7d5f9450fbc229dd4",
"aarch64-apple-darwin-0.2.22": "ed44fcb929f8cef958ed9e6de350d542f7392a43331d3605c4fcbf418e204c5c",
"aarch64-unknown-linux-gnu-0.2.22": "2fa9b4647ac17dcc050abb8ed1547b8c87e3d914bde3e045b51ddc16946a4e57",
"aarch64-unknown-linux-musl-0.2.22": "1855c439577523fd2a3e1afb19712fd80eb59d63c92fa29d24afb7f68c8ba88c",
"arm-unknown-linux-musleabihf-0.2.22": "bba9175deeb797714c629543276a98fb834c58d85d8edce47d28c90e2e600e07",
"armv7-unknown-linux-gnueabihf-0.2.22": "dcb1fcea336bf36bc5880c2ea29e1f32b10296f3b14ff6f3f2ffd8667a2146f7",
"armv7-unknown-linux-musleabihf-0.2.22": "de1a29702d5fc14be20b21e0ba7b513d84f4debe8c5ff49a66ae333060fdd767",
"i686-pc-windows-msvc-0.2.22": "aa5b36bdc88a16c92d5ca93c4a9325bb82eb875507d363ec28cb6e5ee694e8ed",
"i686-unknown-linux-gnu-0.2.22": "00002ada635ce3f17a97a4eca7361eb6ac065db342540dc31e743920a723b92f",
"i686-unknown-linux-musl-0.2.22": "c98fd1af293fb19bdeac03320f83ff328b4575478ca30845f7172e9491c5bb05",
"powerpc64-unknown-linux-gnu-0.2.22": "98dc7f3d818368190389aa008b5873df84a470c40c94f5f339655c50af0cdb89",
"powerpc64le-unknown-linux-gnu-0.2.22": "cb9096be1041b49b09b3f407059bab3a4b68219fc407f05dd441c58b40299c0a",
"powerpc64le-unknown-linux-musl-0.2.22": "4c0d300931775be6069dd5fa095077a639e780b5c890885035df9fb3f4dcbbd7",
"s390x-unknown-linux-gnu-0.2.22": "acdc4f3e01327209883e0578a077a69e46be0a0ce95f53c742d64ac753f93610",
"x86_64-apple-darwin-0.2.22": "cb03b461250b688e39b19feaa0853d842e5d4193e262c9d4db2d15faafc54dcc",
"x86_64-pc-windows-msvc-0.2.22": "6ab3ed27e38e3a2c4a3a4880b87b8d607fa14589860aebbb1a34064d792d54ad",
"x86_64-unknown-linux-gnu-0.2.22": "65cd2e2c3660779f8a1fb02eac488b540d1ae30f3a80a381f8a7859d0b76bf06",
"x86_64-unknown-linux-musl-0.2.22": "8e165482df8590a620bea0411023c4c345f14301b733a9b6f6ca93e730947aba",
"aarch64-apple-darwin-0.2.21": "5b3925fc797bc5e168b5883a5ba2ff6c5751a1c900748c132f01d1ee5c87d24e",
"aarch64-unknown-linux-gnu-0.2.21": "77ff74dcda1e08d757632eee8c6aa3928d1e52dddb460056a0c7224c888d2956",
"aarch64-unknown-linux-musl-0.2.21": "3ae6f0de1698b257052d5b1a05809a0f17db64fb6b1e80ffc64b659840105002",
"arm-unknown-linux-musleabihf-0.2.21": "af4467849e6815b89067b9133dead64d0c912b9d2645a80b0dad575c01ff4912",
"armv7-unknown-linux-gnueabihf-0.2.21": "ec15bee0208d23966a5ae6f2dfd07e38ca8656960a5caf26970d3a91f055e34b",
"armv7-unknown-linux-musleabihf-0.2.21": "5671278eb619ee82615ab8e7be2251763d57d5b210d317d92c40d6bff0c6c418",
"i686-pc-windows-msvc-0.2.21": "7740b290f6efdfc73d24977e4dc86be144865ca92ec106cb8e0b206f7b77b80f",
"i686-unknown-linux-gnu-0.2.21": "ec323eb0b67103da905e24de5c6ee4036da22068c439f098b93d4c206e6764b8",
"i686-unknown-linux-musl-0.2.21": "118a1a3c0484a392ccf9388cd296bdbaa1e8b5479772efd69056ac99119c0aa5",
"powerpc64-unknown-linux-gnu-0.2.21": "0fbf9a1b148b86511a0c167f3dc7e5fd228c784af0d3fe8d8c99e024ed2fa1d5",
"powerpc64le-unknown-linux-gnu-0.2.21": "ff49e7dbd25e98932b5207100916c1d6a6c624a620d37aabbc307bc97be53674",
"powerpc64le-unknown-linux-musl-0.2.21": "29e32e5b7bb5facb8eddec8e9146f3b20074fa73dfd3555c985b79c10d3c55fd",
"s390x-unknown-linux-gnu-0.2.21": "897414d24d13a202a6f9a437408da64cb26e10bbbb5820571e0de2b4d540fa99",
"x86_64-apple-darwin-0.2.21": "92eec02ae5ff8ef4b4070cf6ef787a2ee3bfc6ca910b61669a8615e2149d6595",
"x86_64-pc-windows-msvc-0.2.21": "bf4946c5a8751cc63def72aaa53a9a0c1ca015876b9ec144cc389ef4901dbc4a",
"x86_64-unknown-linux-gnu-0.2.21": "bb6ff8fa0ac1d86a32b1ef615ec52acb5c8230f803146ad4ceeaba8aaa26a787",
"x86_64-unknown-linux-musl-0.2.21": "90b0903364aa45e588ac2b269d70e871180f81df0f7c603d6b17742fccc660b3",
"aarch64-apple-darwin-0.2.20": "519bd42c022a41187984234a040c3f00a3eb4bcb189f101c0fa48fe70b953357",
"aarch64-unknown-linux-gnu-0.2.20": "b97b67c7f65025729da8194f8b0e21ffbd91a1210fbbc89279dc46d5342a3e4d",
"aarch64-unknown-linux-musl-0.2.20": "bef8bdd253acc9a82269e5574ab4843b0d70a1935235805bb470eae3ceaa2fee",
"arm-unknown-linux-musleabihf-0.2.20": "2caeadb57638fae11cab25094975201d3f8573fe6f752e628b89d61447f7abe4",
"armv7-unknown-linux-gnueabihf-0.2.20": "faa32b09015770fa5a72557a04236a7be61f06bbef77a6707c658be791adf039",
"armv7-unknown-linux-musleabihf-0.2.20": "ba1be06d8aec4b5247b5d09032f37fd4aa8f54acd07b05db18351d61a93e0cf5",
"i686-pc-windows-msvc-0.2.20": "c4430939e934ca8ba2b079138728a22600d32572fe315ac1811f8a40b062534d",
"i686-unknown-linux-gnu-0.2.20": "6c8c4e58391c508eed5f8506257d421f3fe13464fc8672b5995bf6243d46fad5",
"i686-unknown-linux-musl-0.2.20": "4a4f8a73f29362e40e9de94749f988e691665102ca2bd6501f39248735c40647",
"powerpc64-unknown-linux-gnu-0.2.20": "aa557c951623d746ea30b4ae107fc37ce7328196929d5cf38beecf2c1c60555b",
"powerpc64le-unknown-linux-gnu-0.2.20": "1ef60183bf6de0c1da96fa027a8b3847da289222aa4bd5ac81255aa614e36fc7",
"powerpc64le-unknown-linux-musl-0.2.20": "56c880df3b97d2a1c0ac6812ba174d4b7e1362fd256ce8b29f029adabfdaf28c",
"s390x-unknown-linux-gnu-0.2.20": "455863a0850d211aad8c94b61778b2c30cc7d5639ae0d5607549f1d56372f706",
"x86_64-apple-darwin-0.2.20": "41018b406133a2ee5e51d8f35c990999c2bb96ce457864ac9883a0f9dcb49c58",
"x86_64-pc-windows-msvc-0.2.20": "74d2f2c945da68a2aa8f0f277229f3b172c7aec1072cd990d866c25ecbe21410",
"x86_64-unknown-linux-gnu-0.2.20": "bafad50e1b8b8b89083df115cdbad6e991747fd6ecb52ca407d6b5533ddb150f",
"x86_64-unknown-linux-musl-0.2.20": "1c27fd144912433d7f12b58b00eebb80a7ad9a1864b22b1ba41b07b5998a743b",
"aarch64-apple-darwin-0.2.19": "539f2cb812f0596b3f56d41a92662f6e102094587ff07f0793bd015d21cda54b",
"aarch64-unknown-linux-gnu-0.2.19": "7ba7454ceca1b789e74637b5cc8d1353d6a87ae3985dedd16869c036e3b4d02e",
"aarch64-unknown-linux-musl-0.2.19": "a9932edc68680dc388bf13cb21132f4d0aa13bf9c31c1c1f4febf1415ad51923",
"arm-unknown-linux-musleabihf-0.2.19": "71dedaf8f40e3939b8ad493093584d03046c607cb7e7c155de7eb0c8e0da2830",
"armv7-unknown-linux-gnueabihf-0.2.19": "17b44738383b1a5fe7ad592be61c543048022c09c649759c589a74a00fa3afb5",
"armv7-unknown-linux-musleabihf-0.2.19": "6c287d699c95cffbb30520d27d7b80ce1971b336bd387f72391340acac434c86",
"i686-pc-windows-msvc-0.2.19": "68977cc3fde46c61a80ea451651f3b6789ee2a8cb67a4e5fbfc7db93022d9e1a",
"i686-unknown-linux-gnu-0.2.19": "5ed1da9e25968be4581ff301a9034e8e82f2206686f504734015c348b94333eb",
"i686-unknown-linux-musl-0.2.19": "236c3fde87ee06c2b49372e184f2fca84f82ea3daa36e85ac884f7459b18ebf7",
"powerpc64-unknown-linux-gnu-0.2.19": "9ecdf74c9846c271e78e300f1db8cf3762ace6d9ba1f2e9d6e695cc64fb2e746",
"powerpc64le-unknown-linux-gnu-0.2.19": "fc8bedb7f7b35905fd5e1180466593e2ad35788994f7d61c6605ff985bb61aff",
"powerpc64le-unknown-linux-musl-0.2.19": "a5d1f2b9686ed2466e9e588d8ada686130318015693ef1a7064651347063bd05",
"s390x-unknown-linux-gnu-0.2.19": "6b68ee8a45062e9a6d3be5de5c0fddf49f8669c2b2b897432f0a55e99fed57ea",
"x86_64-apple-darwin-0.2.19": "1b8bd98a1ffb5823b499d914d8fc430b6bb96b3f97bedf06b67c60f084e366ca",
"x86_64-pc-windows-msvc-0.2.19": "b704c9c6e5e18e1c822e44f118902468df76245eca8831c5f8d4dd1223c0fbda",
"x86_64-unknown-linux-gnu-0.2.19": "71132ec5c59ec865d73877f2f7f4ff75cd2f56a93d967c1a91ef797bdc87ff93",
"x86_64-unknown-linux-musl-0.2.19": "6e8a64434d3baf03fd64f58016a9a37b08a8561db6979b807de8feb55d94502d",
"aarch64-apple-darwin-0.2.18": "979ddc0aa7b068632bf4c517bbb6d97798b95c54dfeaca9ba653df91989ed958",
"aarch64-unknown-linux-gnu-0.2.18": "5cc1535801398ad74e5fc8a5cf5a619d3e806b8b7de6b973b33c02b9b2584ffe",
"aarch64-unknown-linux-musl-0.2.18": "473ae75c6e9ed1f63f0c0c556ac6ca4718457903c3652adf07c8d46655133e31",
"arm-unknown-linux-musleabihf-0.2.18": "7fb75cfe47c50f9306eea91f1d713a0f76dacefc92b6a35271b7af90e024bac5",
"armv7-unknown-linux-gnueabihf-0.2.18": "c0ff7d440ccd43666d813da4dce5e90a1c6b90e3dfc951ed868a38c488ebff07",
"armv7-unknown-linux-musleabihf-0.2.18": "1c99194b715b74f0bbab9ba2f350bcbdc4e101f056d81ce35f62736b951b212f",
"i686-pc-windows-msvc-0.2.18": "554b9b65eee4f30b70ff2d3b1c2cee07600eef176c235d8639aacdca799610c4",
"i686-unknown-linux-gnu-0.2.18": "efd8fbe10f88622479611cac0ad18d7e5614a9335d655e64be8e30db6ea749cc",
"i686-unknown-linux-musl-0.2.18": "9d991b27482edc0891c8aa2750e95aa4f8007f3af9746d90f0176462a2cb3a09",
"powerpc64-unknown-linux-gnu-0.2.18": "0dde2eea6496139c10bad1e7e1d49d210bc47f294dde158db65f78eabcc363a1",
"powerpc64le-unknown-linux-gnu-0.2.18": "4515b5741a0cd2596526f4504429bbd8e6122c384ffd9211023771aa042c6815",
"powerpc64le-unknown-linux-musl-0.2.18": "48ce3450450a0314a6b7996f53145e273c3a2013c1771b56449c275d9260575b",
"s390x-unknown-linux-gnu-0.2.18": "4c3826eabcb81aeb187a3de95fa3e3f3c784fb71539be05ea56a963b3d97fe4d",
"x86_64-apple-darwin-0.2.18": "140158512a43d8266fbbc550dad7ed3f27953d5bb5bc7a3e91e94ed3c1c1773e",
"x86_64-pc-windows-msvc-0.2.18": "16dff877e19f61d094af35878a00b592302a1794c1c27afb1b194106931e9e59",
"x86_64-unknown-linux-gnu-0.2.18": "e5a0bde1e0fe57a7ea1d26bdb582c636ba742c3db8a10d0a965536da7004abd7",
"x86_64-unknown-linux-musl-0.2.18": "4472cd12522d96566be88545f1520dc5099f12f47df297f54f9239fc1af0ed87",
"aarch64-apple-darwin-0.2.17": "7dc5fe97867ac3bbcbeabf32fb76b3caaf12141b5e20926ed81353f9a2ff7dcb",
"aarch64-unknown-linux-gnu-0.2.17": "5037a966a2422f40c63d36982d46f10362383c128ce1707a56b4339b44a50c94",
"aarch64-unknown-linux-musl-0.2.17": "910edd0a8db6ff39baaad0f7f77b2ce74e0111b6b83a4439e2e02d5b82404e1d",
"arm-unknown-linux-musleabihf-0.2.17": "6e72744e9cadf1649397acceb006f27c9cdce3dcc2876fb73a887d8914166791",
"armv7-unknown-linux-gnueabihf-0.2.17": "a5f18a5f739402e9c2a6b5a4dafe0ead37125bedc7c03a74a9a92e4682a0f49c",
"armv7-unknown-linux-musleabihf-0.2.17": "fcf11ba75a1d21c49d53474c51b612de1627fbb97c23bd7752d64d178740014e",
"i686-pc-windows-msvc-0.2.17": "ed5dc4a4341e7af3d92ef0649df6152b555b16e09c072c43f7f39b9d5bdce784",
"i686-unknown-linux-gnu-0.2.17": "d1d478429fdaeadd56ce280bd43460275bd131cd44f9878987d9d7a5caa4f398",
"i686-unknown-linux-musl-0.2.17": "8fcafe168ae2eb4de6891c0d0d5c0c598af87b552d99d2c4d15deca824236cd2",
"powerpc64-unknown-linux-gnu-0.2.17": "b2601121c8df47bdb430da2bf85848b7e38ff5df1150d8ea980d8ab7b4f5551e",
"powerpc64le-unknown-linux-gnu-0.2.17": "1f94aeda1cf36d401073ae21d9dc4acafed761d41074795f622ffa1fbd4a3677",
"powerpc64le-unknown-linux-musl-0.2.17": "a3599741a236d088cb418f446e491b661c042ebd9f23e15f6cadcfe2833a6609",
"s390x-unknown-linux-gnu-0.2.17": "4dccbee34457c45f4fb9df5760094d402db7642a3a5665ccbc271293dc19b746",
"x86_64-apple-darwin-0.2.17": "78137a1b9d6fd1f8f5f0d4208829dd5f89b6505c314192c0fa2a35d6faff5e91",
"x86_64-pc-windows-msvc-0.2.17": "e77465f8a964cf0cbd932af506df6ca42ce288e6db4df312c53f27b05c7c09e5",
"x86_64-unknown-linux-gnu-0.2.17": "d49537780cd9cd5621bbc34e6864356487155cd4a7540035e1b0acb0d1017def",
"x86_64-unknown-linux-musl-0.2.17": "20184a870ba25416b61d46c387853afd27d9a8df3f0598ee6878a315db5c7302",
"aarch64-apple-darwin-0.2.16": "9a19728c43c35a2d5f97f2bf85b0dc7b508e1931738f0d95e2354f0f745196e1",
"aarch64-unknown-linux-gnu-0.2.16": "f50584835c2099d5dcfff4fe4292719871ea40661d6fb124f732c81b131ac2cf",
"aarch64-unknown-linux-musl-0.2.16": "47af1d071daf655fea352a440f533f3ad7dfbdfc2314160ac14b31815d959c37",
"arm-unknown-linux-musleabihf-0.2.16": "5ab0424e8c18776c809f0c1e7f6e925f7e478c36b2260b24f2694d1293e5f8c2",
"armv7-unknown-linux-gnueabihf-0.2.16": "9d4a66d55c273ae5f265ee979899faa6636823b1dbaf4079085e108adfcb916c",
"armv7-unknown-linux-musleabihf-0.2.16": "384ffae2d98a0f2211d1353eb66031710e452838349fdad115503b26a3dc01d1",
"i686-pc-windows-msvc-0.2.16": "8b140cb56029585fb95685410f17eb866a4d6dae9d63de4fba14268e17730951",
"i686-unknown-linux-gnu-0.2.16": "902439f172d22dde421681d54994fcc9bc66ac412baf1dab978fc061342bc4e3",
"i686-unknown-linux-musl-0.2.16": "1e02d7e7e06dd44c1cd077bd645427af7f04901e685ba3fbcc2691d024906470",
"powerpc64-unknown-linux-gnu-0.2.16": "68209030923b2276df8dbcec9ae3a0efd9f7166419018e7d282dcbbc5043e97d",
"powerpc64le-unknown-linux-gnu-0.2.16": "9c0ef3b12fc81337612841f3d0588d60e5cd6f40ff533c546218c5f8f3b30935",
"powerpc64le-unknown-linux-musl-0.2.16": "d41c74bda5a383cd71667ad7d38a7a5af667a82fd83df997ebd0547a5050a5ee",
"s390x-unknown-linux-gnu-0.2.16": "ca828149fa733859b4837b3aae69e253cd336d690ab6af6fca8726f5498d21f6",
"x86_64-apple-darwin-0.2.16": "1457a592a56326ac67ca12db89f8cc175634d36bd17a2efa7b605a9f81edcb31",
"x86_64-pc-windows-msvc-0.2.16": "0eceb9b4c9ec8049ac15455ee79100bdd2e9db2153977da7d9788ba792e1eaeb",
"x86_64-unknown-linux-gnu-0.2.16": "0a6cebd98cda27fe3f49853a686ca050fbfef2da7871f6cf4065c5e9a7b2233d",
"x86_64-unknown-linux-musl-0.2.16": "e4efe763ad24e32b658e33b38cde271694f2fff7c2eb07cca5a267d600c1f718",
"aarch64-apple-darwin-0.2.15": "7342fba0eeb0ea204eb4ec6311378e76d43bd237ad0576872aca3345914b024d",
"aarch64-unknown-linux-gnu-0.2.15": "939998c380bb95b4fbc15bc00c43c1b1fc1fc30d02638aeca6113f02a99c608f",
"aarch64-unknown-linux-musl-0.2.15": "3f5c7c25e4099854330b3a21bb9670d3cdcf3ec3c0eb9f8bee7e42c5098cc5a1",
"arm-unknown-linux-musleabihf-0.2.15": "2b53a33e0f46f2c37f949d12d420f666e93f8286ed371a1bc5b1406899ab5ff3",
"armv7-unknown-linux-gnueabihf-0.2.15": "1f8712bd2b6c11533d4defea1f2e7e3972b9db887ef26a4c33f452a8492891ea",
"armv7-unknown-linux-musleabihf-0.2.15": "0bb582c399933b7affce3c9f5992a6aa7f7bf596fbd43e08623a08dff564fbc3",
"i686-pc-windows-msvc-0.2.15": "339014778ebae1bfaf327217c137997ef272047626c857bd3fe84286af61a7a0",
"i686-unknown-linux-gnu-0.2.15": "8c5e80b94a84ab14b91de827858c076b0501a85de40c7ba917070a929e914a18",
"i686-unknown-linux-musl-0.2.15": "148fb4554317f84cb27e563707cff8acd35a5b3f668f27a45005e076833cd4ce",
"powerpc64-unknown-linux-gnu-0.2.15": "c533ec6526e7c338c79c38181c94b88b5d80c5a1ec8d7182a0aac3b6448caa46",
"powerpc64le-unknown-linux-gnu-0.2.15": "681b607989c135d17215a3442fb0e6b11d5c5ea90973eacc6f3aaf2f7b1520d7",
"powerpc64le-unknown-linux-musl-0.2.15": "a39e8898c033b86e3432e177d9d6ee7da5f9ffcd1624b894bce92d6fdd58bf56",
"s390x-unknown-linux-gnu-0.2.15": "2fe5fe764afdb8e4f6f752f17400013af4c0ed60fbc91eabfe5b05483f30fb82",
"x86_64-apple-darwin-0.2.15": "dd7ff73cbab1c65b3f2d110bf025d0c74ca2aee3001e38e808d7b1816f49a6cd",
"x86_64-pc-windows-msvc-0.2.15": "c1ffecd50d417b3de667da0fee07b577abeffd5f9d6762501818252b3aa6c7a8",
"x86_64-unknown-linux-gnu-0.2.15": "f9c06177f2153336c3a96f9ab54d881126447cde1cb5d00ed771223427692e9c",
"x86_64-unknown-linux-musl-0.2.15": "3151e375fdb6c73765a8cae5048790c52366cae4593e89365549587f24406837",
"aarch64-apple-darwin-0.2.14": "0a78382f3e93514d51257243313a420646a2316da47bc4bc194bb66ed2e50ee5",
"aarch64-unknown-linux-gnu-0.2.14": "5461797a801f3752cab99b63b206dcf54de037283d93f03adba736179f099d31",
"aarch64-unknown-linux-musl-0.2.14": "3b315856284f2d4c2a6e3b19fd6c5eae87334c37f1a7dfdaad3f696b976dae72",
"arm-unknown-linux-musleabihf-0.2.14": "40b481cb4ad70be8afe62fdb62c6b4f4f90a6a3cc6061950f58e4d92b13e58b9",
"armv7-unknown-linux-gnueabihf-0.2.14": "bf7ceff49dd3ceb384316c6bd85b037a9b5c830074166f57d6ad6fc8b42fbb75",
"armv7-unknown-linux-musleabihf-0.2.14": "3e246f87058d03d0879c0a2dc287aa352785fa8a37e166b6c322b7ad1e79fe49",
"i686-pc-windows-msvc-0.2.14": "97d1cd6da0bbdfcda220167c0309b50ff294304d273d59a5b30076e31a8b9deb",
"i686-unknown-linux-gnu-0.2.14": "7f41c2d76af64bb5fa790516a43d86dda8c03b1ba5b57f1b2db9cea7eb836a53",
"i686-unknown-linux-musl-0.2.14": "28d924aaf00228b35d0219a4e0b87846bcc515c6575f3712733cdf614716e9ae",
"powerpc64-unknown-linux-gnu-0.2.14": "d20a64a746d24e49fc85d46064538fb2c84778131340abe345192c1d62c29357",
"powerpc64le-unknown-linux-gnu-0.2.14": "1bc57215f96f156d784761c616de0a1c7d90aecf145c5f7e401add537db17106",
"powerpc64le-unknown-linux-musl-0.2.14": "2fbb0995b0a34d3cc2a97e3a5c4aa0e8b6b3b52d432a082f566112eaae1c490c",
"s390x-unknown-linux-gnu-0.2.14": "8b025f335dc7066dae5646114b7fa0e9026a12a05b8909acccaf9c6348298d7b",
"x86_64-apple-darwin-0.2.14": "402525d3a113fbdcc687ca408d42cb104ce18e8e030dc05b83381ca4f9ea76ec",
"x86_64-pc-windows-msvc-0.2.14": "a4c00d69418061c1566e758e85f3f6fc1532908453d03cd9f9aeba03d0bf640b",
"x86_64-unknown-linux-gnu-0.2.14": "79b2582675bd93c7d632e71a667478a3b1eed101669944e64c848f7240ab4725",
"x86_64-unknown-linux-musl-0.2.14": "c0f760078a326b6f861d0eb4e9a04bccd0bdeed6cf72f284efa698e54ba83c77",
"aarch64-apple-darwin-0.2.13": "f588388d2b13f77e4526e619f618a306b6b026a96975fbfb2c6dd1ded134cb72",
"aarch64-unknown-linux-gnu-0.2.13": "f342442088a56a8a5e4af6781501870bed1b388b37ac2e9deb250cd1d0dc1845",
"aarch64-unknown-linux-musl-0.2.13": "56151690ccd6a12205478212dd16013d1969e3ef808a66f99809da850a49ed29",
"arm-unknown-linux-musleabihf-0.2.13": "ef70483125e00033ed6bd5f9b0c4cfd377db54897284cd7d1d25e2ca6224312a",
"armv7-unknown-linux-gnueabihf-0.2.13": "20f96f8a6b2dee8a6013bc12b243b718027e5a34c9fceb4baef7e85e530f9da8",
"armv7-unknown-linux-musleabihf-0.2.13": "59b50354236a4a3919ecf9619bb5791936724351e6d1f96a18969d0e5df2dc51",
"i686-pc-windows-msvc-0.2.13": "644e97188d6f4d96e0b149992958c20cce928ad0f4ab4800e0fed70ae16198ef",
"i686-unknown-linux-gnu-0.2.13": "aa94cec4368c615297aa4d81ab81c9034b4a40d66c75854002f0e26857e659a5",
"i686-unknown-linux-musl-0.2.13": "152cabfaf4c433d6904c5f68c2771b0c5ad207e356ef96867680faeb9bba0c8d",
"powerpc64-unknown-linux-gnu-0.2.13": "7f6bcf0354c87993bdcb76ca0ce3b6211703d19f08bef2cd3306b75cda6ff8ad",
"powerpc64le-unknown-linux-gnu-0.2.13": "0f38a41264be0ef325f8d438f34ea95c002736b3c092e3276518a2253c4ff923",
"powerpc64le-unknown-linux-musl-0.2.13": "081e0c31a971c3755108a6c70c90fb68a2b0829f995665aa5df1002eaa4945ec",
"s390x-unknown-linux-gnu-0.2.13": "dc843c32e51ee3fb46381699bffbc4b6040c51083a1dc7d6c597582b84956aa7",
"x86_64-apple-darwin-0.2.13": "6262eba42ebb9035a574b74c5ea253a41353fb4b6b264600e3b05b1a7f4cabc0",
"x86_64-pc-windows-msvc-0.2.13": "898ce45b3767ea97429426a7bd0ec54d070eb9e29ff2b072bdcf288bf6ddc9a1",
"x86_64-unknown-linux-gnu-0.2.13": "3f96048fa1b82eca14d45bbcc86714cd0dee19a73ef9311da6707faa308ec25f",
"x86_64-unknown-linux-musl-0.2.13": "2121a2184aaa0e4c7ef599358dc2bfd20e5a07a1373c302b6fedf79f2ba0778d",
"aarch64-apple-darwin-0.2.12": "cd9ca2c17a32f08dc03a6430fb99c16cb2eec1350a4857292df6a600d71a1467",
"aarch64-unknown-linux-gnu-0.2.12": "8e57c9baf43f80a4b0eca7d5fd0de9152b99ec22809ecfd8350ab4317ae1d629",
"aarch64-unknown-linux-musl-0.2.12": "74981df43332e9ca6abd2855d73e0d1f5565d3f724c60f4a67bf0c09d84902a9",
"arm-unknown-linux-musleabihf-0.2.12": "50c8f8178978679455da0b14e5b03039001c39270d8fd1e51dde9addd45f3cb6",
"armv7-unknown-linux-gnueabihf-0.2.12": "cdcda5bef68ecb96c593a1389349b19d6a52a2c235308e6aaade522f67def730",
"armv7-unknown-linux-musleabihf-0.2.12": "b1c55e5e3b1cd5310318572d5243d7ba725c413e0a20d6a77987ea00dcfafbe4",
"i686-pc-windows-msvc-0.2.12": "4bd4c4fbe449799d0ffd179b6432712c4843d1b802ea79b582989d3cd9eda6e8",
"i686-unknown-linux-gnu-0.2.12": "301351fa77cf03bb0584c45deb36f0049223f404250ba31d69ebdf689ffae9cb",
"i686-unknown-linux-musl-0.2.12": "379de8132478143542aeac0a4b4310eb2ed172927561ec9cdf11cda2ccd87a2b",
"powerpc64-unknown-linux-gnu-0.2.12": "9dd50c32d2c3a41a43e5f08fb34cdf829bba0d2222abffcd20429f2dd19cc6a4",
"powerpc64le-unknown-linux-gnu-0.2.12": "53b30539dcb80d074e8d33eae582745a155ff0c3291d816c0596332a980e6389",
"powerpc64le-unknown-linux-musl-0.2.12": "9d9af6a119f15cec26e90e18dbdbf004a8ddfe9078e1877bb43a7ba87172150b",
"s390x-unknown-linux-gnu-0.2.12": "df8a4b496f5307a27c4a8b90e356d4b508b3aab24ddfc5904f7ec53bc3bc5cb8",
"x86_64-apple-darwin-0.2.12": "71f6c77cf22b8cdd04aa561fe4bd1da8720351359a7c04740bce6a68fdf582a4",
"x86_64-pc-windows-msvc-0.2.12": "5a1b374ac29e1b65ca581573f175ec3c8071cd09eb73f127d9081d37a0ac21cc",
"x86_64-unknown-linux-gnu-0.2.12": "7a0c67d32844afadd2d964d9d6ecb769a56e122e1423efce53e7554a33fb5c6f",
"x86_64-unknown-linux-musl-0.2.12": "a617fdeb285e0dbb13a0f37f802b80be1fe5272a44f752d62d1425ea56428170",
"aarch64-apple-darwin-0.2.11": "abcc9dd4234623defca3ee8c1b36d2b3662d5fd12c90727e1111b8e1592fb9ba",
"aarch64-unknown-linux-gnu-0.2.11": "ccdf23e44d3479ffe61bb68b61af5a014bcb76397f19b2a85587f55a6cc7a98e",
"aarch64-unknown-linux-musl-0.2.11": "f4f5b8f496d655206a4bfd28c54192a225da1274d04fa3ff6ff74df1e756c400",
"arm-unknown-linux-musleabihf-0.2.11": "2579a68e7e434f0c47d3af460bf6c0570759761dcf1fa834f2df87abcfa0ee18",
"armv7-unknown-linux-gnueabihf-0.2.11": "f76c811a073bd0feea69555270fd0437e7b4c085d604a3949d2dd98b418b1597",
"armv7-unknown-linux-musleabihf-0.2.11": "45463088ca59aadb7cd0343f98e1892198799e24b19873c8885433d72673c6c3",
"i686-pc-windows-msvc-0.2.11": "fb7e8b6647fca55e627a2df40c811e2d1af8a5f9bd802122b5b93edcbb605aaf",
"i686-unknown-linux-gnu-0.2.11": "13e7682d48e802c16e41ca97c0b137eed9302caff943464f9ef43dc1de2dc8e8",
"i686-unknown-linux-musl-0.2.11": "64f849ed7de03cd4ae08759224a3065677a4164f42318c8e6c883f28c443e698",
"powerpc64-unknown-linux-gnu-0.2.11": "5cf33f99dc3318989c8e14697677ee5bb9029c38c60b44c69e9f58d8e8cd8417",
"powerpc64le-unknown-linux-gnu-0.2.11": "70a3c979624bc22307708d84ef9dda1739672606804b68badd6a01b88ec5d4e9",
"powerpc64le-unknown-linux-musl-0.2.11": "a3ec1fdfbe0551d9ddd522eec0040a13eabeb8081d8114a8bbe3ea6b1efc5df5",
"s390x-unknown-linux-gnu-0.2.11": "57ac8fcb1880cda4551bad47065e434ed020b6b2a401fb655861813bec1de223",
"x86_64-apple-darwin-0.2.11": "b0c3cf377363bb0bc0917bcf8efa08590e3ec86a3713debb51b0a5efe7a48e9a",
"x86_64-pc-windows-msvc-0.2.11": "07ee4e64fe871de647f0580348f317475906162398604b96bd5c52d99fd2778a",
"x86_64-unknown-linux-gnu-0.2.11": "4a6188b172cb8d43e59c91dad8cdc4418ed0b395b09e4198ba4661cbcdbb40eb",
"x86_64-unknown-linux-musl-0.2.11": "063afd8753870e147cf5d7c6273748d585f758d43d8df4bc04121667b7d5a6fe",
"aarch64-apple-darwin-0.2.10": "a099cd4dc28f879e023ce221697e07a2089b12dc42099dd240a2e64d5cf428be",
"aarch64-unknown-linux-musl-0.2.10": "fffdf595dd2a231b372b685a2e25589bd8d537fea252b28678565f01e5b8bddc",
"arm-unknown-linux-musleabihf-0.2.10": "c1ccd50c4f3a18dcdd46d44d285313a84a9a2b36e8a676e4935e339362794489",
"armv7-unknown-linux-gnueabihf-0.2.10": "38c30fa3c5e3c97db50396609619c17741c860c36e13ee210e387c94c59ce1ff",
"armv7-unknown-linux-musleabihf-0.2.10": "36b38e5124202686aa79ee7d872419746aa3675e34fa7782be489fe310cd4440",
"i686-pc-windows-msvc-0.2.10": "e4130ec5fd7af4d52ecf39144a15ff7926e7994a14a1c2e75f66d8c352f74bda",
"i686-unknown-linux-gnu-0.2.10": "0ceaf9b11a1173497e96c5f74b2d13a8cecd9d794eb4096b8eb21537aefc0a6f",
"i686-unknown-linux-musl-0.2.10": "078a21bfdd32363b989e28903d37d9a3114e5ec76683339abedaaebe2b78e57c",
"powerpc64-unknown-linux-gnu-0.2.10": "5ea1aa731bfafe544b754daf06b987d50a569944ffebb856512bf016ae747b68",
"powerpc64le-unknown-linux-gnu-0.2.10": "d9122acabde5b4bca92fecb83abdb4eb9e2310b8985ea0c02028d6605dcb7d9f",
"powerpc64le-unknown-linux-musl-0.2.10": "cba75fdad8751c443db162af15a0ba730ceda6f0a32d58d0f794be906e518a69",
"s390x-unknown-linux-gnu-0.2.10": "eac781c177f900b3175e24b38da8d20d2a985e7e1b7cb8a2506a663ba930ae94",
"x86_64-apple-darwin-0.2.10": "d81a89883ea4ed47a115f4b4947cfe20db26b91d28a08287554eb594efc20cab",
"x86_64-pc-windows-msvc-0.2.10": "f1df811e31940bb50c7f07a1e94eea0b7e3344f0e5ebed9e57a61f7c7857deef",
"x86_64-unknown-linux-gnu-0.2.10": "99b25a80e170fde54b299c05f4c071c7130ed85db45fe8e7663cef44f09aac5f",
"x86_64-unknown-linux-musl-0.2.10": "5ab4daa64daad2fc53624c1e88dca7166424526713e6fcbe8e34e80f23ee612d",
"aarch64-apple-darwin-0.2.9": "ebcbfb397dc045356e1b758176b83fe192bf6cede3ac307e30e6934c54ef45a5",
"aarch64-unknown-linux-musl-0.2.9": "b8d055a0279c52021238a92e41bd6076813fac3ae77f4a3235b8aa4e2d398c0a",
"arm-unknown-linux-musleabihf-0.2.9": "f21a687de862282ed42f8f515a9221ef2d4b4e831a634c83837eba5ade3bed35",
"armv7-unknown-linux-gnueabihf-0.2.9": "9c43a432b9e02b126e2a1e42262b8ecc7d5715e9183c0fdccfdb6a98911067ae",
"armv7-unknown-linux-musleabihf-0.2.9": "fa57fc9740b58b7db4cecbbb3e93a92f73dd30267965097504736ea6982e67b0",
"i686-pc-windows-msvc-0.2.9": "c68cbadfe1242f8f47469481773b9b7ec09b0b1bfa99cd545a170a3c4a3d294a",
"i686-unknown-linux-gnu-0.2.9": "530a4070e2fe5733a0f1ea262033e83638f283fd80fccf81c0e445a68bf47f60",
"i686-unknown-linux-musl-0.2.9": "68410fd939715734af7d0d7f2a770cb786996604af688f260db94e17f2aeb8e9",
"powerpc64-unknown-linux-gnu-0.2.9": "04c59c34f3895e9484f40c05fe6fdd2bb1e17a919d4b9cdfd99633a2f52d2ef6",
"powerpc64le-unknown-linux-gnu-0.2.9": "15a1902193c2654031fd7fafc416f434c36524d86a827e085b35580f83ced93a",
"powerpc64le-unknown-linux-musl-0.2.9": "9c1ae1bbb60b334d3249e4fbfb6ee2c3b52854764a3e4f6e6a612c4b96542826",
"s390x-unknown-linux-gnu-0.2.9": "444f7bc74488219e6157136638696fdf6bad37f3090e324e6e843318ff09abb6",
"x86_64-apple-darwin-0.2.9": "30f22cbe600b657cf6e987a05740194c2f1822f394b1c60e15621989b28b6591",
"x86_64-pc-windows-msvc-0.2.9": "32057b35feb2dbdb8de32bda75c8621a00f2aa619cfcc6d4cb5506b3b6ba6d63",
"x86_64-unknown-linux-gnu-0.2.9": "83438964a0be35ddded2099ea64599706e7c7a7de575429ce4df78e20d57774d",
"x86_64-unknown-linux-musl-0.2.9": "28e583284cdbbd5e3796c4db2c94997f805b5c632d73dcd9a25ddb3dfa9453b7",
"aarch64-apple-darwin-0.2.8": "ce64cb16c5e0dd567ba926926a67c569d9138c5162685ed5a40639b2c9163275",
"aarch64-unknown-linux-musl-0.2.8": "8f4bc88fbb7c498224122047f3f559b93e145753032d59782037ccf2969360b0",
"arm-unknown-linux-musleabihf-0.2.8": "095db570c8c5d0b8033d605984d2a0513585232b6c44f0255365c1bc016a12c6",
"armv7-unknown-linux-gnueabihf-0.2.8": "c88b3f63ea7b3727500545edf0a6c1581a34ab5328fa2503e7c40911dce9e26d",
"armv7-unknown-linux-musleabihf-0.2.8": "0063e160561a5928d73a8d89714aff77c51adbb62f4f1f4f0f438d7d3a03b4ec",
"i686-pc-windows-msvc-0.2.8": "dd3bcf604e2538625affbcda1e4e61ef1b27aa4515081ac13afaba92ed7ded02",
"i686-unknown-linux-gnu-0.2.8": "7643a101a02befca1cc3a5c830fc51a157f54bee2afc1eb098686972a9079810",
"i686-unknown-linux-musl-0.2.8": "71a792c953f782efb1648170abef72ce4ac0ca4dafa101719d87798dca5e7833",
"powerpc64-unknown-linux-gnu-0.2.8": "fa4afad36eb706bebea001d335aeab753b164ac6870267a6f6dc1f7dd70c03db",
"powerpc64le-unknown-linux-gnu-0.2.8": "43bf0cd00751c0332c9016c7b30dd2a6c753f0922dc5a1ccaba45e8b6afa4621",
"powerpc64le-unknown-linux-musl-0.2.8": "a0f15bd3e80e8b97affda7d24e2143c7dd99fcb7c8c8e948bad849d4a3658e52",
"s390x-unknown-linux-gnu-0.2.8": "106264c325eeeb17e7d8ec5f1b30a31129d4ebe2c97f54dc88fde16be7177a11",
"x86_64-apple-darwin-0.2.8": "8eafabb094127b35d472e8219047d4596652a9a645189f829f6bdb1b4786f282",
"x86_64-pc-windows-msvc-0.2.8": "1ee50b71511cf7007b07843562fc2467dee81cb8baf488e8cc0ea0b58ee12ebc",
"x86_64-unknown-linux-gnu-0.2.8": "ce9f8fca5faef55af4fb83343143bb403ecef518f9118e97a37ccfbf1ccadfc3",
"x86_64-unknown-linux-musl-0.2.8": "6f155b9b9d2b1baba811bd0c1aba0306a39ac547dd6eeb3906f692d3cec86984",
"aarch64-apple-darwin-0.2.7": "b9a0e6c501afbc4b47f07a199927d0783857013736c1c8c2d173201175139e45",
"aarch64-unknown-linux-musl-0.2.7": "40e4fba3abcc76d5f69dc420cbc457ccc7bd7003a07e6caa0a2a8a803b339e31",
"arm-unknown-linux-musleabihf-0.2.7": "5ec601accbc0b3a3cae4c8223dae977c4233313a246888ee5bf2adf381e07910",
"armv7-unknown-linux-gnueabihf-0.2.7": "a960192da71ba05438d1ab3632ee5a22c8b02dea087f9c054c224803870c9571",
"armv7-unknown-linux-musleabihf-0.2.7": "62bd71eb14a9e6149e7277a7cc3f5ab61e291a861d2cb252544353972183427e",
"i686-pc-windows-msvc-0.2.7": "51144d9d46629f0c260988ff486fe1720ad049fce7cbea201fa861752172d26f",
"i686-unknown-linux-gnu-0.2.7": "f35314685a233ee0b769cbac99d552f2feb21dcdf5f24bbf069b34dc5a26edf0",
"i686-unknown-linux-musl-0.2.7": "41afe171469eb811b50fbc6f45c97db842019f3c8707fbf992335eecd78125d6",
"powerpc64-unknown-linux-gnu-0.2.7": "d84c24bc570589cbf61b35bff7b3b2b7a56fdcd5ba64f53602a0ab8009e07bd7",
"powerpc64le-unknown-linux-gnu-0.2.7": "f9ed8c319e5dc5920f5cc4455e088ac7768a858bed95eecec330f1e99e47d903",
"powerpc64le-unknown-linux-musl-0.2.7": "8fbc6d52c63680cc6857b55cf8f025740a807a58c59ccadba87300f7103e0551",
"s390x-unknown-linux-gnu-0.2.7": "e1d74dce851c3ef82e347221b36247f649d12e5bdfba5c91b211caee7de004b9",
"x86_64-apple-darwin-0.2.7": "fa3f52a05222d4cefba742e2db029f85c41b7e539c1f748b2583be42b806de91",
"x86_64-pc-windows-msvc-0.2.7": "5a9b7053ae9d25cd28abdd8fb10a8c5353dc0212594013216da5905eb7515360",
"x86_64-unknown-linux-gnu-0.2.7": "080bedb35224afca73cb424629e3512b529398f96353c4cdf59fe6cdceac5034",
"x86_64-unknown-linux-musl-0.2.7": "ebc3de0f88e8cdc211fa914124f201b91037c0ba5f30f2614e630295a147c833",
"aarch64-apple-darwin-0.2.6": "f985057f3ef9a101ca4d485337f8b5800d894277f4dbbda50dfef5e0e1d352e4",
"aarch64-unknown-linux-musl-0.2.6": "41606b5c24e40ae2bcf71d9f8fc28b1f3e1399950ee324aa9925621d5bf1bc0e",
"arm-unknown-linux-musleabihf-0.2.6": "854f619dfcc52b26e89189b8c8fce3a5041bdd1408cd867d87c9e4751caff6de",
"armv7-unknown-linux-gnueabihf-0.2.6": "f1194ec0b18cda58537698c5b417f9464d8258334d69049fc32c40c3b8dd173c",
"armv7-unknown-linux-musleabihf-0.2.6": "5ec8d44a6ef6c732a91463a2c4f6817a71efa0838db6924e2bc889a48118f493",
"i686-pc-windows-msvc-0.2.6": "abff721157dcf759582735e4c9b366cbde1487d6d8a7d1fb50e1a20fd37d6b4e",
"i686-unknown-linux-gnu-0.2.6": "e1868d5f0e345d454a8895b09d2e62dd1886bdf01cbeb6d494be9e24a2717b1f",
"i686-unknown-linux-musl-0.2.6": "abd36ef7319182876fa2bde268f378cf3351036158c6ca9e45996b58f4e54ef6",
"powerpc64-unknown-linux-gnu-0.2.6": "55b6480dcea50327c20b835fe81a30d685224c5022cabadf364b59a258967e8b",
"powerpc64le-unknown-linux-gnu-0.2.6": "e8de807c6b42e602b8aa05885627225a33b65d4155c514b58b7bc853d02b792e",
"powerpc64le-unknown-linux-musl-0.2.6": "6ddc687f19bbb1f9279cf36d3ac05d8ccb7bde1c7b19f1787cd5ac427943fd17",
"s390x-unknown-linux-gnu-0.2.6": "f596c5420cfc7eb608cc7c560d57047985ff1882d2e95c681e42ce85213adb3e",
"x86_64-apple-darwin-0.2.6": "8e3a83165f751174041fbe0063cc063f4206270c0a187b55941f52e8a9f132cb",
"x86_64-pc-windows-msvc-0.2.6": "b359026e348df4e3cc12fc8411992ade3fc5bb5debe334669515383681088a18",
"x86_64-unknown-linux-gnu-0.2.6": "02c7803b6209a80cdc8a4867a02ca6cb6a622f0d83f5276770a8d5636a89a396",
"x86_64-unknown-linux-musl-0.2.6": "5efba2047b1e72dbecd64e707d0063f6dc49c22f8ba467480e665534c5f6a17d",
"aarch64-apple-darwin-0.2.5": "a827cb84658d321de0a029b7207b99fa6e20b99f0c1ab8d24484497b3b87c0e2",
"aarch64-unknown-linux-musl-0.2.5": "f465b75f0129bfb1e47902a14731460aec5cc71d9586a19ad19a644fd2fa7a5e",
"arm-unknown-linux-musleabihf-0.2.5": "d630b4b3716d4c4da9118d2d5c083e2fe6b7c769dcae39d4c8546ee3709aa0bb",
"armv7-unknown-linux-gnueabihf-0.2.5": "3341aa26179eb68f6b6c7bcdf44a0c3f5dbea3f43905920f4c018410fb3d46eb",
"armv7-unknown-linux-musleabihf-0.2.5": "8be8dacd13b0ea18720b818e536bd80d83ac30eba4d37e8913aeaecf9e2feeb7",
"i686-pc-windows-msvc-0.2.5": "13cb20dcf23792bc7ad8d73c2e4f003702606f6e9821c1ac8eaf089f6e98f57f",
"i686-unknown-linux-gnu-0.2.5": "8432f9d68840fe56a21a8542681045447dcab18b75f43a073bc28c4d5c1b8157",
"i686-unknown-linux-musl-0.2.5": "52540ed8ddf78ec80db95cf54618e6e4fd4cdceab860cbea9a8fafa957c98983",
"powerpc64-unknown-linux-gnu-0.2.5": "0a4891a6e8fe2ccd4c17196fad8215fe6611d74a89a7b2569d3fca3546103300",
"powerpc64le-unknown-linux-gnu-0.2.5": "8717ac07d0684b618f112bfb9a7926490511cecebeed8f125b25f4969dba663b",
"powerpc64le-unknown-linux-musl-0.2.5": "c9811d9a90b3babf6c384d0a10d38f38e5109b604dcc68564f2c1216a3afb21f",
"s390x-unknown-linux-gnu-0.2.5": "70bbb790f817b1e0d930bea18bfa688d8177362aee8a49b83f1fe88d9123f86d",
"x86_64-apple-darwin-0.2.5": "8e5808450482b5533c6b33096952b0cfca0a7020d7524c0132616926a9f58878",
"x86_64-pc-windows-msvc-0.2.5": "bd6c8e30fad5bb2207c2f7248c375034a9becc3ce905bd94322f9d70e9cc6b20",
"x86_64-unknown-linux-gnu-0.2.5": "5eb13622b4450b3756f2395c261315562c48f405208cd1a160fe47e43fc85da1",
"x86_64-unknown-linux-musl-0.2.5": "dc591b1322d0ad2d3561c6d18657c5c5c34ff9addaa588645a062cd60d14f0dd",
"aarch64-apple-darwin-0.2.4": "2edcd05f37e6f1c44aba1388086768dbc53777473c354feef3033fcb5cc3434a",
"aarch64-unknown-linux-musl-0.2.4": "8bec0692741573c6f150321cdb9be14b1dd22f91fbdb1a87c9b94a184a6ef753",
"arm-unknown-linux-musleabihf-0.2.4": "c86f3a90d91fbe659708928493a69e35b1a79b2b4bf47d5941a5230ed9412462",
"armv7-unknown-linux-gnueabihf-0.2.4": "59e781c25a16e667b57f76b8b99bfc31b85ca94811ddd95c549045928f80c3cb",
"armv7-unknown-linux-musleabihf-0.2.4": "5a89f32071ace6e5d0501fdf7fe787f2739f89df862dfe1d1d48eaef09abc0ae",
"i686-pc-windows-msvc-0.2.4": "4e6255288f9041070bb0736b4626ddbe9b8933ff5e067224584c9ca14867902f",
"i686-unknown-linux-gnu-0.2.4": "7f78cc0b7f0316500539f8c9e4f4077c2a94d015673c1aa6ac9402dc8f35ebd4",
"i686-unknown-linux-musl-0.2.4": "97df66100411c14f30639b8cb97b42365422f462e0a5d1acc0770f1d468cf258",
"powerpc64-unknown-linux-gnu-0.2.4": "52b2c0dde7367c0424363092f276dc07d4fafa7a5696fc34849975717c53b5f0",
"powerpc64le-unknown-linux-gnu-0.2.4": "14c765959084196deba0e4f858fec071b03fd70ec9176e7414e7cee88d6d8e0d",
"powerpc64le-unknown-linux-musl-0.2.4": "118d70b310f2a4029bf15146d5e574c8b987144b13e235b76bb909654bbf8881",
"s390x-unknown-linux-gnu-0.2.4": "175c5c05689bb332f74927c4001d1a72866bcf8f5b7fd4f2ac766eb30119882b",
"x86_64-apple-darwin-0.2.4": "a5bd83234920728797fc523e2aa3605c45c7c3ca760e611c4071943cf109e58d",
"x86_64-pc-windows-msvc-0.2.4": "60599a616c7ea04b2c6a4baac30de0b70e3d934795b672eef73298fdf187656a",
"x86_64-unknown-linux-gnu-0.2.4": "2c470b016f749063080fefc5dd19176bd25b9761033df9df7b5ab914eba1a8e5",
"x86_64-unknown-linux-musl-0.2.4": "d795a27ccc2a47e8939b02296780c58377342ca35b51a518e36fa6b62291eabc",
"aarch64-apple-darwin-0.2.3": "20e466f87ebeda26da0fff5306ad998375fe1e27d2514e4b4f5711f9fad6bcee",
"aarch64-unknown-linux-musl-0.2.3": "8574f4d4c56b87eb0e9041f984d8e79d98c53d2183533c2196f8a6dd16944929",
"arm-unknown-linux-musleabihf-0.2.3": "092dd369d4336989dffc7114006c069c851a0a09b463e0522e06704fe002d149",
"armv7-unknown-linux-gnueabihf-0.2.3": "cf2925523919708024d7a99a24318faa252a5fd1264e19aad936295ba65ab97e",
"armv7-unknown-linux-musleabihf-0.2.3": "04512d5e3d68a6b4f8bcaa8e94d0e196ca0f525a387c45272d3efbcf87ad846e",
"i686-pc-windows-msvc-0.2.3": "4f9c95a4f10ca3a35ef3d7c84b02ee473826ca3089c0e701c84efaf9bc5dd1dc",
"i686-unknown-linux-gnu-0.2.3": "1e9a60953f4c7910bc2a28e1b131cad975c4e0b8e4c1616a2c494160badfd330",
"i686-unknown-linux-musl-0.2.3": "fc5e7a35c7b229eb8be9c38901ffd29ecdbc7bcf4a54cca21c477f8d10f8cdb0",
"powerpc64-unknown-linux-gnu-0.2.3": "079dd937d5c71ae1ec72ed47a3d78afbe73a1281094f4fb49884758752d28f06",
"powerpc64le-unknown-linux-gnu-0.2.3": "a6ceeeae7a98c410b97d72a26a6ce5d53115c4883672008a5c614fdf3519e18e",
"powerpc64le-unknown-linux-musl-0.2.3": "c093aad7e88ce3edd7a971b6921e3365c017cebdda704366249db13b143d8cb0",
"s390x-unknown-linux-gnu-0.2.3": "0f817aac0d53f0d362b23399d49c5c113c9cd1a7c60cc0d1677dd4306d3c2858",
"x86_64-apple-darwin-0.2.3": "79c28e2121d4299a2190ab0c8f149d676a6d623a4396c86cda947a9280f494a8",
"x86_64-pc-windows-msvc-0.2.3": "c02509cee8e75ac1e17ea0101c4e0d624a8e4e033eb74d3fd50d7f06d30ff949",
"x86_64-unknown-linux-gnu-0.2.3": "d94b9f679b3718ed0f62eee1126f02f1552301b7dc473a7dc3727f20b889e057",
"x86_64-unknown-linux-musl-0.2.3": "872113d59455f86700d23b4589bd2767491fb7ee4e21c0a62a9f2555c631045b",
"aarch64-apple-darwin-0.2.2": "4533c5a3f81f64dbcf9fd154cfa5e1cf904e4d9698eca63ec6a209f554a0beb9",
"aarch64-unknown-linux-gnu-0.2.2": "fa01c8584e6dbea991e9f14e50ad33e51c1a321cabedae738075fe58ee5a3ab7",
"aarch64-unknown-linux-musl-0.2.2": "2f004af91dc4e5e18074724e3f6ddf074026e264a2ecd27fad067d152e739893",
"arm-unknown-linux-musleabihf-0.2.2": "3d6038f9d043209c9b135743e766ea11ddd26d25721a21b2494d72233f470090",
"armv7-unknown-linux-gnueabihf-0.2.2": "2e680d9b99deae3939da2d5bab5997e12713a2991a326a412c117c3471d41d32",
"armv7-unknown-linux-musleabihf-0.2.2": "9363ea6707d8451b78980cc2a4baef357d9f86ed2e1bc877f68140c5ec47aa3f",
"i686-pc-windows-msvc-0.2.2": "e3c321c02572db320f1f6555da93fa0a2550cee84be49df8890f45dba49cc31c",
"i686-unknown-linux-gnu-0.2.2": "e81b97d0dc2756b7ca632d1344d9dcdf0dd3d127f1c4b134c338a05b28454e8a",
"i686-unknown-linux-musl-0.2.2": "54d79ac9d9f04637176f1eca20917c27993f1cc5040e9f73d2672ba5f414d044",
"powerpc64-unknown-linux-gnu-0.2.2": "9811a9021a302229a487bb717f643d96c2746691773c552f0c43294b0935a78b",
"powerpc64le-unknown-linux-gnu-0.2.2": "386bb032c291e0f2c24fa6866588e632eeb999ebac6ab20ce7aaee97f046ba4b",
"powerpc64le-unknown-linux-musl-0.2.2": "28540d8ca31c5d7568bfb361d7a28a0b5f20ef9f08086d5cc70fda07ad9fb250",
"s390x-unknown-linux-gnu-0.2.2": "237b3a93ac0d9ccf7d841f89ee0e7b122ae21a0e637ff8149e1faf7a4f55550a",
"x86_64-apple-darwin-0.2.2": "4c0acbde53ce0fec440379c112bcc6beafd924dbbd6717d97e92245473d1e51a",
"x86_64-pc-windows-msvc-0.2.2": "fdfede202032b74e3a3e94034c26e23607b4a4326625953f48eae74c1f7d4d0b",
"x86_64-unknown-linux-gnu-0.2.2": "d19904a4eb2dca1b654639e82fc0327957c73427e504492005645f62d2205a3b",
"x86_64-unknown-linux-musl-0.2.2": "82c4759fd56e932fd94642172ebea98cb55f4fbaafc4d00038ce425b08a5547f",
"aarch64-apple-darwin-0.2.1": "bb50bd8c7844ecc366c6dd99205d8cadefaae3a8bc10ea03d51e3e3634426b45",
"aarch64-unknown-linux-gnu-0.2.1": "e26270d4d3a2f0273ed40e1a237e085500f4db85255ed7d17ebaaa48123a0122",
"aarch64-unknown-linux-musl-0.2.1": "6ab4c698ee4d2efc2ad9db2d832d47b77feaa4944e8ac90bedb78eae76c0ad76",
"arm-unknown-linux-musleabihf-0.2.1": "0f58165c9947ea4a2178076fcf31f28186185f73537ff7e77aadcc04225cca0d",
"armv7-unknown-linux-gnueabihf-0.2.1": "8d36878c23be2c560bb2a14d9fb8e4d418dc14593bd2d7b4ad93aef82eed6d6a",
"armv7-unknown-linux-musleabihf-0.2.1": "f714dc140fd40d149659ced54ac2d5e9532957afc4d66c3071131b648e417f3e",
"i686-pc-windows-msvc-0.2.1": "65e6f8c12bd9feb46b0d415d2af9fb4bf018756c1158931a1e8adaa075ad41cb",
"i686-unknown-linux-gnu-0.2.1": "ce3973a4f332ef0ff996e1dcd7cfcbbcde977a5eb5febe118c4bd1387da66ee2",
"i686-unknown-linux-musl-0.2.1": "de3a0be9533980e74f1f6d834960cb3cda326a9aa33f86de18238ec9eca148c9",
"powerpc64-unknown-linux-gnu-0.2.1": "f60a5e600c56cac45289d738264ba99c27c1e345c7e75f41a01d65a3f78d4098",
"powerpc64le-unknown-linux-gnu-0.2.1": "b49dd3b2e9691daaa9793f1fced2b32edf0998ef55c630b5dcf18670005bdb73",
"powerpc64le-unknown-linux-musl-0.2.1": "068a869b16d7a1310d895c6bca1b6a6dd6c6b6b5d2c7998433d10b59aee0ff11",
"s390x-unknown-linux-gnu-0.2.1": "0d79f0c4ad50f6c397889723c22db136d7f819c21576d0a40fb8b762d136b80e",
"x86_64-apple-darwin-0.2.1": "438b30b81e86b95118ceeee0f8e2a2e018dccb22a5ef83985728610715336d62",
"x86_64-pc-windows-msvc-0.2.1": "959a818ecf5869d69a4689c3984c5c87c915d898d8327ced120806e0b2f0f699",
"x86_64-unknown-linux-gnu-0.2.1": "623069deb38e4f2d47054388fdf1e4f9a676853fa42080d3b9bf52cd812c75b5",
"x86_64-unknown-linux-musl-0.2.1": "d8af260263364fed8f2d4ba7c1c404bbf30f587cbc2a97807b6f8d5a1feb4cab",
"aarch64-apple-darwin-0.2.0": "fc2c917a8c2b1567b1d035f4a8122750f900cd813409f9d80bbd287e2597dfae",
"aarch64-unknown-linux-musl-0.2.0": "3504273e59259c6307446a2c7c1f49f194e8c7d8b79474cdfac97696a655fc34",
"arm-unknown-linux-musleabihf-0.2.0": "b4664ef3e726bd5569912e4ebab338263b5da150985513fcace4481b8422a09f",
"armv7-unknown-linux-gnueabihf-0.2.0": "202f293aee0e156611898ef95313be812f9de6273412a27a530370763c5a5daf",
"armv7-unknown-linux-musleabihf-0.2.0": "afa807e1ce8fdaed8fcb372a0ca46cacd39572d1e87613d4df583936bd8bbfdb",
"i686-pc-windows-msvc-0.2.0": "d65d94ade914f7507dc93122561e47996c5e0861bdcccdabe794bcd5c9185f82",
"i686-unknown-linux-gnu-0.2.0": "ac307c2cc67d81c3e22b0cb9af0e808551df4c1b50d1f92ee41bf6f07523ab3e",
"i686-unknown-linux-musl-0.2.0": "f81963f737b1398d4c3c5ee0d370e7c4706936949e82ae42b52e54fbcc1840fd",
"powerpc64-unknown-linux-gnu-0.2.0": "5bfcd8a0061edde591868437fe061728c4ae0fcedbe5a2671628eeda35b444ba",
"powerpc64le-unknown-linux-gnu-0.2.0": "d1338054af7e09ea91016fb0e3656646774e0223859498d814c7495b8a008c94",
"powerpc64le-unknown-linux-musl-0.2.0": "90fce3a907c1124391408bb5f71a795264a226c8fe31b58ae1808fbe802de043",
"s390x-unknown-linux-gnu-0.2.0": "e9554cd1d54f00675f768a47b7d68cf541214256d4db9b7d2c60ddab3e85bcd5",
"x86_64-apple-darwin-0.2.0": "5ac4c95dee24980ced348a86cfe4e114cfcef442ca3cc11046cf8b6edc65f58b",
"x86_64-pc-windows-msvc-0.2.0": "d716371c39d9075f664f9c30697fe0987fcad79a3d403f79b87f30e1022656e7",
"x86_64-unknown-linux-gnu-0.2.0": "a14c9317e2c000475851100c83c20ae725e998511b1ff890006d70532567a822",
"x86_64-unknown-linux-musl-0.2.0": "44a6168281d2fe1226f4af6c94b068006dc458a7b98ff4d4dac1991e161eb678",
"aarch64-apple-darwin-0.1.45": "4990c1ca07e87ea215085c798294205057efd7ed97d7d5f4c76e840fc366753c",
"aarch64-unknown-linux-gnu-0.1.45": "71ff02cac3e257e12d35fe9bbd6dc096858ec23e218b069b5ec6e5157db39e1b",
"aarch64-unknown-linux-musl-0.1.45": "7ca9c40f40b1b9f9673f78475a08e45b5c367bf3d73052896ee57a5f434872a6",
"arm-unknown-linux-musleabihf-0.1.45": "64526323d11e496ff7012821424be3bb102ca2b74bf47392fbdac4991674a650",
"armv7-unknown-linux-gnueabihf-0.1.45": "c26b07ccb7e35595addc328bfcb99356343b12d59c4d3f9676aebd7aec24163d",
"armv7-unknown-linux-musleabihf-0.1.45": "dd2fa3ecfaf7a73e86fcb7f3945873b242a3f863742530afc98921cc0daf30b1",
"i686-pc-windows-msvc-0.1.45": "b010c1ddf3c0de9ec25068e1f7026b369df453b78c6619634da9cdd14aa9d810",
"i686-unknown-linux-gnu-0.1.45": "2f14d4d41617b0358aadbf1bc8d77db60ca27200a8bdf66b8fd87fe66a18575a",
"i686-unknown-linux-musl-0.1.45": "bca68fe4228aebd2f5f9572a6cc70fe4a1d0c146a2d64135f264e4ae355bc3d4",
"powerpc64-unknown-linux-gnu-0.1.45": "f62159477309071a00fef10f0f0305e527bb6ffa1dac99650de365ba4ad6a2bd",
"powerpc64le-unknown-linux-gnu-0.1.45": "b67882e3778107610793c64048d07ad0d8e9ac627ef215f43ea45cbe074e25fd",
"powerpc64le-unknown-linux-musl-0.1.45": "1c19bf1fad5e032c812fb084826ce5630081a2863a4aa529f1689e091f340499",
"s390x-unknown-linux-gnu-0.1.45": "85f6ee976f34bca558da5117613a16dde793e3b05395463cff0f3d3547ca309e",
"x86_64-apple-darwin-0.1.45": "b820364764eb628a89e11b25acd3fe19dfce436546f4f7c8dc38ede3f7d939df",
"x86_64-pc-windows-msvc-0.1.45": "3de68132a6316e346f2ae3847dcedaa13ee89a8672b91544bc7d31f49362f20e",
"x86_64-unknown-linux-gnu-0.1.45": "11341c386088233e197707a30fd9b13233deb222fd366cd39f9daf8e5924c7db",
"x86_64-unknown-linux-musl-0.1.45": "ceac15973402e27c6c9b1077e35249437b2cbc26f60fc90be31114c47631884b",
"aarch64-apple-darwin-0.1.44": "154d45db602d5c4f8dbffb0e038fee581f161963f5562568be565625ac7bc753",
"aarch64-unknown-linux-gnu-0.1.44": "afb7039f033546d55730dae38a106dd56b358117a565a42bf3ebda9c48db53c6",
"aarch64-unknown-linux-musl-0.1.44": "3a461fb08697104ac5ff9749a6b370af87b95ad83008978ceffa7d0564fdc8c7",
"arm-unknown-linux-musleabihf-0.1.44": "db0371a9995d3d6c9ec9a7528ca535d0a5def1177127032360b374817030a71d",
"armv7-unknown-linux-gnueabihf-0.1.44": "a89e4114aa9855c9070e74c06f663213da614dc145ad21c0ec1aa5f0fa294c30",
"armv7-unknown-linux-musleabihf-0.1.44": "eeff1ff78345df0e86dc8f3144ea7af47d50ce9400f0d73798964a399167b250",
"i686-pc-windows-msvc-0.1.44": "c0f74ab851a704b8dfe6afd6bc7fad9d23947561d6c2da1a6cd5274a762c6c4f",
"i686-unknown-linux-gnu-0.1.44": "6e68901f49540494274fbccb83feda57bef7ef137443228669c790f5f1a14fc9",
"i686-unknown-linux-musl-0.1.44": "592020dd3bbe026d657341b0a7b28daaa57a68626585491a70863ae9f63a4769",
"powerpc64-unknown-linux-gnu-0.1.44": "1af1b7839ff2a5cfebc7997fc579cc61a34c8ac4c838edfc07cae7318f1c3ed9",
"powerpc64le-unknown-linux-gnu-0.1.44": "cdd52a058a4243f9e3c5a4c2ba8edacb969df09623344e45a7adfe5e61e83cfc",
"s390x-unknown-linux-gnu-0.1.44": "3022aa438b64de7e75c8adea6b1e9650874f63d6e317e4c294d24e41e53d1621",
"x86_64-apple-darwin-0.1.44": "0c2deb646f49ad7dbf8db9a9a7fa839b76654569d97b1ccd9d18bea89a34b3e0",
"x86_64-pc-windows-msvc-0.1.44": "f876f8c0867707db2d653973caf9ea306d65503ec772d0df9c02b6d0973fc7df",
"x86_64-unknown-linux-gnu-0.1.44": "68e8fda65c987cc104bdf7ae1eb332477733d44a27823032826f9370928568b2",
"x86_64-unknown-linux-musl-0.1.44": "1df53dac9e3a81df6fbbef36e23cd932b1cf0fad9016d943fef63d2ca284bd02",
"aarch64-apple-darwin-0.1.43": "e52c5f38cbcbd238fc40382252e2d40df3df1bbcc1302da86c19324285e9d27c",
"aarch64-unknown-linux-gnu-0.1.43": "9dd96e89be41fa12b1101ac921265538871d99947ca3b31c87713f3edc6140ea",
"aarch64-unknown-linux-musl-0.1.43": "f0667c6d7e412ad40e5bbe5964e7448afefaa07d1d9c1a820090f3d555f9184d",
"arm-unknown-linux-musleabihf-0.1.43": "940a297a5ee1833239632c28c5570e661ff7281607e6c6da003167b70ac28d27",
"armv7-unknown-linux-gnueabihf-0.1.43": "1adc03865b683480c454994fd6a679607de2843e96a94d470c1e89abced8105a",
"armv7-unknown-linux-musleabihf-0.1.43": "84010f6b5010caba4186c7824004000687d326f91a9570e176a23ec627d5a83d",
"i686-pc-windows-msvc-0.1.43": "5e1896d8d83a58c8b02c328c1bcd852515ff760253622b9508228a062120f9c7",
"i686-unknown-linux-gnu-0.1.43": "ce026f056c1d4cbab5bfef762d1d08f8833191d595151550419d45e4b3a5303f",
"i686-unknown-linux-musl-0.1.43": "da54678dc50154ed8254308cf6f0c51c6e3fd34cf1f74f418dbdade980705fea",
"powerpc64-unknown-linux-gnu-0.1.43": "2bc10fa243971de5c7aa2ca1d993b431dbd191ffc0858071c4418f08983f642d",
"powerpc64le-unknown-linux-gnu-0.1.43": "b624d9c4ebe991f52452b038848e3d23eba9aaa790ff1727520d21f9efa876a8",
"s390x-unknown-linux-gnu-0.1.43": "d3f707cf4547669431eeb557b097682265c1534e8745a029ad48fd9eacc1c11e",
"x86_64-apple-darwin-0.1.43": "cf86ff709df440f3bf745af81217484d49fb9d5d6d896f3a9e1b9fd7956cc643",
"x86_64-pc-windows-msvc-0.1.43": "5765acc5bd938e3dd9e47b2807e9552129de466f31cb835b3c0da3029c46def7",
"x86_64-unknown-linux-gnu-0.1.43": "62217d8a269cd8901e84e3e197133cdb719a1fa37cd6f4afb07fab001163d247",
"x86_64-unknown-linux-musl-0.1.43": "c27d81bd87b60ca7bd0119316f0026b231c0418638255400b54e1094140367b0",
"aarch64-apple-darwin-0.1.42": "d49e7dea59668962765b8aa2f3a4512b03c166042e380e7a6fec971146ce11e4",
"aarch64-unknown-linux-gnu-0.1.42": "d4f1192eb260fb67a7b2f69313474c5a08bb3feb777b6ce6e9a74b3c12d22374",
"aarch64-unknown-linux-musl-0.1.42": "3836a7a5147f6e8826ccfe7b0a081b16b26922ef8359c26b5d678fb50c36ad21",
"arm-unknown-linux-musleabihf-0.1.42": "354f1d937911f9683dc5f249a4bdd09c637f34b078cd7a2ab0df1133126066b7",
"armv7-unknown-linux-gnueabihf-0.1.42": "7ef29721204772ab0584acf4d98a43f7a7c54a3beae090b4c443128336492bcd",
"armv7-unknown-linux-musleabihf-0.1.42": "bada2af1a5cd37573ad88271e8ad6cdd8e038aa88335d667180d91cee4728445",
"i686-pc-windows-msvc-0.1.42": "7c31034d3869d0b38c64c3b5c066676e0f0e03b1598bc51d931d958bce4ef214",
"i686-unknown-linux-gnu-0.1.42": "cd7395cb8bf4380f895d88912d872470eae7656e549fec1c2fcf404ab84018d1",
"i686-unknown-linux-musl-0.1.42": "0eacdfc8d3fe450fa8203797ce1cacc9a6b43e9e4bcabf2901ddd5804b1f84cb",
"powerpc64-unknown-linux-gnu-0.1.42": "e7b900e759cc429baea47c6f200bf70517207388392c268bdf3dcea98727d271",
"powerpc64le-unknown-linux-gnu-0.1.42": "03da000f9ca22693e45b729d90eac800014d5dcefec22b74553ea6bebc0b3790",
"s390x-unknown-linux-gnu-0.1.42": "c9d6d0ead67084fde129e1672d14b56507cd4bc6bb96aef6b0ba6ed0ce085da4",
"x86_64-apple-darwin-0.1.42": "b510fb1ba6b039acac0e1b4278ef0b8e935feea4dc8006c68e3ac4cf793a0876",
"x86_64-pc-windows-msvc-0.1.42": "57d82e1b0507aa7b4f2259e411dde942876888265aff04ae1eaa3575ab53fced",
"x86_64-unknown-linux-gnu-0.1.42": "cf3ca3ffbd1971ccef9b4d6cf703c8cf1730b824888bf63a7f1ede13943ddf7d",
"x86_64-unknown-linux-musl-0.1.42": "ba96ab47ec0366abc78f8f91613d9fed314da8ff414262535a7dc605caea5a9c",
"aarch64-apple-darwin-0.1.41": "c493ac2c5170d656499b7aa4a06d0c20d1c42b8b3b006b72661c747626cb7133",
"aarch64-unknown-linux-gnu-0.1.41": "84c7427e700888ed4fd8ccd368c69cf28212eac4a81ead1ce376631e51127a1f",
"aarch64-unknown-linux-musl-0.1.41": "a334362acc469af8928df113e881638e23582d0b86eef133a58c047e904a3974",
"arm-unknown-linux-musleabihf-0.1.41": "8348e5cf28b04ca15e8f2d04a38ffd43daccfa3b1dd82cefafcdca8b692fcf9a",
"armv7-unknown-linux-gnueabihf-0.1.41": "e0e5b30a899924516c574d9159fadcce008f5f11a5dccbdf95eaa35c24b28c67",
"armv7-unknown-linux-musleabihf-0.1.41": "b4ea7eee3c6b2ed72d0f0602304f64d405ed4dc600c8879309c9876818c5e5ce",
"i686-pc-windows-msvc-0.1.41": "d090a0e918b889e963f681322a3f0901d2dae78be15afc2907ded13a8534c815",
"i686-unknown-linux-gnu-0.1.41": "21b6ad517cf12b5ff2eb030b0dd523ca49e16d9d99136328f1e8197ec50d981c",
"i686-unknown-linux-musl-0.1.41": "40ed1d7ee942d25458e9d59a27a261cbaaa3433a966aadc141e48deeaa58b243",
"powerpc64-unknown-linux-gnu-0.1.41": "799f5a7e1ad802a8e5a7dcf3f340bbaf3ea74cc330cd0294cd9787064cd271a0",
"powerpc64le-unknown-linux-gnu-0.1.41": "1d80e8205503dab569b7d5d4f833a32b7163bd7770917321185e078e84f64298",
"s390x-unknown-linux-gnu-0.1.41": "d8ee3120408bff3313832d623debb8d2dea79ce05427daf534ee5f54e9360d81",
"x86_64-apple-darwin-0.1.41": "af544d0fb0d902b5e4ad1ce574b9bcd1ced6718ede9f7a2c2c163c531b10c602",
"x86_64-pc-windows-msvc-0.1.41": "0d9567b67a6cc6404c4163f8b661561502440eb68698ad7be1197276717f8d75",
"x86_64-unknown-linux-gnu-0.1.41": "8d4782acbea2c04f34d90df25c8a7cce62e3673949d3be4a2baaf610385d5db4",
"x86_64-unknown-linux-musl-0.1.41": "9b0058e9fc92c96e3530ec4e1a998e435214cb3905e7284e09cf7c68f1c33c01",
"aarch64-apple-darwin-0.1.40": "28e92ed4534fa5085050fe51db0a641c319377e6498e5ee98d892ae91139f603",
"aarch64-unknown-linux-gnu-0.1.40": "452cd7ec339345d4067f27b6db672f02db942bb525c80c510bc3bdd7596d74b3",
"aarch64-unknown-linux-musl-0.1.40": "b2fcf9819a5fb53aa98a0fc19ecee6bcd862969886de9d63fffe9b3270d284d6",
"arm-unknown-linux-musleabihf-0.1.40": "cbeada3fbd6c380aa5524e8e963558da11a214d9c416da64428d92af555567f6",
"armv7-unknown-linux-gnueabihf-0.1.40": "7ae8180326f005e12dfc8be04c2f88c54efba020d5bdfe49608e1b3407956e55",
"armv7-unknown-linux-musleabihf-0.1.40": "0c1aa0c94457412d466798e565aefbd11e9de4e1b2d4dc9ac0ae45c91d01857f",
"i686-pc-windows-msvc-0.1.40": "c985f0339bc7375fab00b4a06d1e215017516188040202dae9d6147196a4bd60",
"i686-unknown-linux-gnu-0.1.40": "e1e5c191d4b5634be80a7f4e79484d58190848253a43c678b8c9a8811483fe93",
"i686-unknown-linux-musl-0.1.40": "2b6cc95ea515a50d8da69536eb68478009ec7ae0fc94a13f584be11eedc4a4f9",
"powerpc64-unknown-linux-gnu-0.1.40": "e7d56ee62672e809ddcc7f90b863d5f1a0d314fb613647abc830526b0161b975",
"powerpc64le-unknown-linux-gnu-0.1.40": "8c5217c8b58824f1939748818fbd0eb57d35196b361c1dad774bbb2ff0b38869",
"s390x-unknown-linux-gnu-0.1.40": "60689531d1a4308396dfacc16a466749730fdcc9c5fced509172349a2f5d9b58",
"x86_64-apple-darwin-0.1.40": "9b29374bc79dc4cca9b6e82e420867a06806651f814081987927fec5bc3ea85a",
"x86_64-pc-windows-msvc-0.1.40": "bf3845b59aaf6bb383c6caf89eae949a18106387be154fb5b2ae9a4e4ed646a4",
"x86_64-unknown-linux-gnu-0.1.40": "d9175308fcd2bd4b953b05cee66a022380ba493c01b2d35884684719d599299c",
"x86_64-unknown-linux-musl-0.1.40": "7a5a1173ba3319f176167bd32544ad5d8edf0f38c753820b5627b036c74aabad",
"aarch64-apple-darwin-0.1.39": "35e320cfa41c8902d66e2c491b5b2d2414e1c6443177c660736de657c66fb2c2",
"aarch64-unknown-linux-gnu-0.1.39": "62b24363f21c07e02f62cf8e298ee6ec30e844006f3a52ac55c02903c755586d",
"aarch64-unknown-linux-musl-0.1.39": "1a77b4cd4bf6ab52efc780fb252097184c23f81233a8f508e49939eb2e6e690b",
"arm-unknown-linux-musleabihf-0.1.39": "c8f628862e665199b82826db24db3007c16c361c8d0f31d8dfbd4be2d7aefdfb",
"armv7-unknown-linux-gnueabihf-0.1.39": "63342dac1cac572f8f12b179d91fcb0527f115f6a7ef17ba7aa24b699854cf39",
"armv7-unknown-linux-musleabihf-0.1.39": "a9013c428f1505e21e56715e6c91a4e45367b7eb341a14a51663e61305cf7162",
"i686-pc-windows-msvc-0.1.39": "53e4c2ae32318699a5f6c4c7f19f1dd114b39b15e63704be902ff894b428dfed",
"i686-unknown-linux-gnu-0.1.39": "f0280538ed9bc68283606e4db031f9cc4c4c8404dc5719e9d1f03f705762966c",
"i686-unknown-linux-musl-0.1.39": "baa9ef041ed3834d7e5869b10945bb804449e23ea0ffbe91a9475bc4c4e83fe2",
"powerpc64-unknown-linux-gnu-0.1.39": "5d0312a1ee77d652115a21021f47e374886e84e8d986f3a1bcaa7e5851cd2767",
"powerpc64le-unknown-linux-gnu-0.1.39": "07b1856e71c35f93ef5359c54f63d819841762316bf4d7c2774e178412d9090c",
"s390x-unknown-linux-gnu-0.1.39": "773725ad1e02d6f4c90494fad5309a7cb4ce03b2e377fad336fecd895bc42dd2",
"x86_64-apple-darwin-0.1.39": "cf5393f17de6961c7140d68f80e09c1f43ef47f8fac923ccd41896cce698f296",
"x86_64-pc-windows-msvc-0.1.39": "a44eb417b0c1e1c7cffd7349b8019d684f6200d0b5cfaef7dc322e8312bb254c",
"x86_64-unknown-linux-gnu-0.1.39": "e748caea4ddafd3aebba771f4e8f51fe5aa517b71151a648269b3be982a349a1",
"x86_64-unknown-linux-musl-0.1.39": "dc57b6f64ae82fe604390e05cf66092fe598ae0fd0fdea9d568f6c4874fb3fe2",
"aarch64-apple-darwin-0.1.38": "9ed4dee0e0f3da47fc85264fed79ea118f66043481ad71182c21e838f4f207dc",
"aarch64-unknown-linux-gnu-0.1.38": "8d5afd982060a11748a46b4ca8ef9a2aec52ea4736419dc7c0dc53ad98843454",
"aarch64-unknown-linux-musl-0.1.38": "b15f7f84f0975825f6f0e2f10ec0ad49ad3bb48d6b7bd89f058e578a939cf383",
"arm-unknown-linux-musleabihf-0.1.38": "df7fd36d0de1d751f091c431d955b9d0a5cdcc74f446bdd65b91aad97cd016d2",
"armv7-unknown-linux-gnueabihf-0.1.38": "e0a55e1dde1d1421a10d4706a8e79f37039fd57026f02e629e93b6feea504cfe",
"armv7-unknown-linux-musleabihf-0.1.38": "b1371b764e2840e5a4ef3567a36626b4aaac2ede2165d42e5ac19683ae4beaf1",
"i686-pc-windows-msvc-0.1.38": "4acad6296bb67eb9900fefd0ccca8af7d770f485f40c0545120e7b452ef7a0dc",
"i686-unknown-linux-gnu-0.1.38": "c7065c75b52ba3b9eabb69378e01a1a5d4ca0f80545dcb8a027080fdfcb112a3",
"i686-unknown-linux-musl-0.1.38": "b65b24356366655aa112c18205d3214fd5fd3eca80888392f7b1e25d215f70e5",
"powerpc64-unknown-linux-gnu-0.1.38": "2eaad33bb7d742498aec2dc6ff52ebc82103347db74ccdf202e0dbe2047815a9",
"powerpc64le-unknown-linux-gnu-0.1.38": "a1110c55b4383fb0dc967ae0ee3950499915d34d69d10c08c39d66340f28651a",
"s390x-unknown-linux-gnu-0.1.38": "537202439156061acea27ef3be90c524368ceffa642f43333dbce223c35be866",
"x86_64-apple-darwin-0.1.38": "f35f8e07f66109867f10bce591188e5a54a822344517bf5150fcd28c616b744e",
"x86_64-pc-windows-msvc-0.1.38": "decfffd2e6e707b7b51b0981a51d6d277e8c15aa904be3c820dbd46b35a35a95",
"x86_64-unknown-linux-gnu-0.1.38": "9b19bf6067ebb2e200211a300f0721e35144424f8f0f703dfc50c0bc745f69df",
"x86_64-unknown-linux-musl-0.1.38": "29635ef915c1bb4048720e6b5e19f424a5a5f3934adef5a0e036295256c098df",
"aarch64-apple-darwin-0.1.37": "1a160798d79a626a06e16634d77315e9dbe363ab6bfdaef424f7b5bffd30cab7",
"aarch64-unknown-linux-gnu-0.1.37": "d59ed726780815d48f95bf4f7a2d9c41aaa05fc746d5a8af49ae11d7e1f3f34b",
"aarch64-unknown-linux-musl-0.1.37": "d86cc49c68c9efd1116fe164f4be14d096d20f846ea50fb02148cb44ed3d920f",
"arm-unknown-linux-musleabihf-0.1.37": "2ad8488bbc2f519bcd2a4435aea33ba79c0dc71fd61f90d898964a02068b8aab",
"armv7-unknown-linux-gnueabihf-0.1.37": "86441af7ba294abf25ffd60a452955db4e8610490bdaf8c054976bb31d96baa3",
"armv7-unknown-linux-musleabihf-0.1.37": "7b813fdcadffd54e629dc65541edf2d90d043083e32def8332bf87ce2443f583",
"i686-pc-windows-msvc-0.1.37": "e676cacfd871e33e7c4972ae241ed6362e20159261f9da8545a3816e436b59b0",
"i686-unknown-linux-gnu-0.1.37": "bf4c37a3aa6ee61a409c89261593909756dbbd86b0819d5003dc3ac83aa081e1",
"i686-unknown-linux-musl-0.1.37": "ecf205ac1196602877ad24d1c5fef5c8688d66262d358fe818155190ff0ad8a0",
"powerpc64-unknown-linux-gnu-0.1.37": "4a0cc47732dada5ee1e1392fe6ddf6e2947a6bcb0b61e83936eaf1ebd363b5e7",
"powerpc64le-unknown-linux-gnu-0.1.37": "70764f4145e931dfbc195b4f6c2ac592a776b34402480de8dc6145cf2196b7e2",
"s390x-unknown-linux-gnu-0.1.37": "222b3567a5ce77b4ee0b8732cd18a34a88e31e0c5230c652609da922b83d7d36",
"x86_64-apple-darwin-0.1.37": "61502d8054f12aafd56ff193abca0606f688fb7d84cea40e94ff3de5a0cc950f",
"x86_64-pc-windows-msvc-0.1.37": "6bc00aec8b4731a7883b88d27450c959055a24a1f5858777313addbe850a7cad",
"x86_64-unknown-linux-gnu-0.1.37": "33cb815958a3e84b929dc06d42bf5170a5a5eb60b413f2243b4e62e75edc3e49",
"x86_64-unknown-linux-musl-0.1.37": "2c591eaa0be3711dce1ad6d07a7564c8738b5c16b009c84037727f94c073a962",
"aarch64-apple-darwin-0.1.36": "d37641e38512b7e55b9eda7f8a6cb831375b5f1e86f0f326dfe0e6a8602ca7b6",
"aarch64-unknown-linux-gnu-0.1.36": "c64b7d23c3e27346a5b31a95fc16663407bc72aee0b17eb0aa9d069e312e606e",
"aarch64-unknown-linux-musl-0.1.36": "89740c2cb16bb57dfb125764fb889f86b225cba0b8691b2bbf30baf96d2348c9",
"arm-unknown-linux-musleabihf-0.1.36": "a802fd2c6ccd2ca8dcfe85fd2c5fb58689c5c082e6ce8e3aa1b1436031c70879",
"armv7-unknown-linux-gnueabihf-0.1.36": "07b8fcdcde9f43c94ab4d5296c1e8c86f41589f4d8d15f124311bd3c1f019777",
"armv7-unknown-linux-musleabihf-0.1.36": "78026455886e3c264eb952c92d2795d19cffddf529651a2d8f20cadac4ad31f8",
"i686-pc-windows-msvc-0.1.36": "e945b6a176ee08d7440703eb4a975a8b7d383b8e9b480f724dc5d614a90a080a",
"i686-unknown-linux-gnu-0.1.36": "b1ef60a4b5b153a3c11e9177e2d72f334e1c7d9311bea75d42faa8ac8c9d4e42",
"i686-unknown-linux-musl-0.1.36": "7fbc9f02618d22f54644c29c65cf6d5ff3cd813f1fcc26cdeaf3ae393057f604",
"powerpc64-unknown-linux-gnu-0.1.36": "678a5fba4ec6b6d52d6de833a447b288869df501ba33399ddb437977bac14efc",
"powerpc64le-unknown-linux-gnu-0.1.36": "873a0531ba05ff56ee452365e4ef9c40acd4c4e6225c250e6a6c4c65d728ef70",
"s390x-unknown-linux-gnu-0.1.36": "14b4956ea11f85a43031509c6d01e8bb941d946f974d405f3cf5dc65500f47fe",
"x86_64-apple-darwin-0.1.36": "30e3e1156c38e335b969d999b83d9e9f6fa5d497c80e5cdf1c43339cdbbd02bd",
"x86_64-pc-windows-msvc-0.1.36": "fd43e117e08414970f84cddc6300c5fbd5096be8f9c981d5b3464c28720ddcfb",
"x86_64-unknown-linux-gnu-0.1.36": "7108a5709273156a176394d6da4b64f63b3c658e350657978eb1ba4c9e287e02",
"x86_64-unknown-linux-musl-0.1.36": "3c95bc263adcab13ae5c7e9a0c97e9de5037f8926294cf22902d04eb99f951ef",
"aarch64-apple-darwin-0.1.35": "d5c0740e4a64c5d79150f1e819d903ec6281906bfce433bfe599312de7994435",
"aarch64-unknown-linux-gnu-0.1.35": "70721a0535ab34354b2fab1461c6ccfc5949943ad34bfec179f4558aa331635c",
"aarch64-unknown-linux-musl-0.1.35": "59e4100cdad71bcbf4618516ba860b1829c3b2f255bee00794b5ae1823cd1388",
"arm-unknown-linux-musleabihf-0.1.35": "4832abf5ab1c3d238e35a1634c6cb62148f5fb722e48d498c1cb10876efaecb5",
"armv7-unknown-linux-gnueabihf-0.1.35": "ebdda308333bf6ee351f0f225d7076697c316e6f671a23caa8922f876ba2627c",
"armv7-unknown-linux-musleabihf-0.1.35": "6ea7e2e6953bf3afcc973fea7aaf12ada410407432d86e7665ccd641c503d739",
"i686-pc-windows-msvc-0.1.35": "af6066ee9197a675a6138a118d3125890468ea036c81d3d3327329830ad3d587",
"i686-unknown-linux-gnu-0.1.35": "9ad7c1b2a4555b37e54f3e999482d0301e8d030ce3e99627b0fcb1435e853203",
"i686-unknown-linux-musl-0.1.35": "41be10fbc59cbd7a059f0fbd33440c7b034086d36395546856f2076cb562b4c4",
"powerpc64-unknown-linux-gnu-0.1.35": "df17a85fb14b5e295bf45a2e371ca0f78463ac66b5fa6d1c1f51f22f3eed592c",
"powerpc64le-unknown-linux-gnu-0.1.35": "d6300efc3079c3d7fbc861a1907c76c9e9f79bb0b3b6effd39bfeefb38bc9bc3",
"s390x-unknown-linux-gnu-0.1.35": "6fcece3d517c4a47e4dd40ef8cf40c18bafa88c22f7846abe80f10ae494260a9",
"x86_64-apple-darwin-0.1.35": "9de159d413f235d791377ecc7266b6c1b076c8a638772f04e6dc05fca32b6b4a",
"x86_64-pc-windows-msvc-0.1.35": "543ed32847307ef50b5d21c1f9f4968e1e8c97e75a5899f80de5a6c26cd61888",
"x86_64-unknown-linux-gnu-0.1.35": "ae2081221ea244e4998b89c408421e9922499fecf371c7310cfa0e951bff2a9e",
"x86_64-unknown-linux-musl-0.1.35": "9abd44dfd8958e251a3b29a1eb95f152fef94f38fcef8bf534b86fd94ef89e35",
"aarch64-apple-darwin-0.1.34": "40233daeac0eca7ea233b79a8f312fb9d85913fc74547031c81f2ec7c3f3aae0",
"aarch64-unknown-linux-gnu-0.1.34": "e4fac2f30a2c8e1773b08d4f50994c484a8166f64fc2cf0ed19ccac62f5d01a9",
"aarch64-unknown-linux-musl-0.1.34": "e13bc0a5fa7aebdb83627cccb95d50d202d6c1d08ec3bc8ff035abc6c5438edf",
"arm-unknown-linux-musleabihf-0.1.34": "ad0fb8ab07cf301192a829684c8f3b0fc3d024d7e75297c2ed4dddd8d249fc89",
"armv7-unknown-linux-gnueabihf-0.1.34": "48b5588ad3ff90944a13c24744a14964b68a99fac7694d9a79f4cf38aa38b386",
"armv7-unknown-linux-musleabihf-0.1.34": "7591b8ee28f1c79b9fa35a32a3f3af32012a221f01851a9747e2686dffe735d6",
"i686-pc-windows-msvc-0.1.34": "1dd6e548b6f3f661152fed143257184439b819334d7f1124aab015a4919dd4e6",
"i686-unknown-linux-gnu-0.1.34": "e5b8ac197e33d4884cdeaedf48a90bda44dabff330c194ca55ceff769dd8dcb9",
"i686-unknown-linux-musl-0.1.34": "2d43d99471b8dc32f6776559769d9dca1c9b587445f9be12ae751d7c58947f06",
"powerpc64-unknown-linux-gnu-0.1.34": "a6774692b35f66f871c537e0133d4e1ea629862c73dccd6221307a609f7b4cf8",
"powerpc64le-unknown-linux-gnu-0.1.34": "8ac52b6ad77eb013fa289b42f465b9ab8ba5f861cd76c828c69aca6121682cd8",
"s390x-unknown-linux-gnu-0.1.34": "2d394cf56c1f81b434e45aa0df61b48241675a5b5c97b91b6d511827aa0f2ea4",
"x86_64-apple-darwin-0.1.34": "2f6933cf0e10e99cb3575deebcad5cc143961a3da167c4b21eff4d600ef872ec",
"x86_64-pc-windows-msvc-0.1.34": "98c824618c808cf4ae1af16c5341086f0038e0dc1ae7e0a805c872d6fcc033b7",
"x86_64-unknown-linux-gnu-0.1.34": "1d3b075c89e5763ddbd19efdaf03d6ad96a753db889a28f5127227c40bb9f0bc",
"x86_64-unknown-linux-musl-0.1.34": "bd162c354d0406c5ce91c0b16d130a62edbac6528ecd90a7f5b3f2d315f12df3",
"aarch64-apple-darwin-0.1.33": "6e6af126bfc34a9d0e02641bd99fda1201a81356455ee4f196b760b3d995cb7a",
"aarch64-unknown-linux-gnu-0.1.33": "12f04ed3437f06ce6fc0384958e4dbb74c441bd9b46d5f83b8342c6c9247da97",
"aarch64-unknown-linux-musl-0.1.33": "580542f3997a10191091cbc1f142e1526afb9e98aa6ba0a709245cfde2d99d99",
"arm-unknown-linux-musleabihf-0.1.33": "febb8276163a99d18fadb04f9dbe298e613b1716c5721a3e2433c2da0fd9b69e",
"armv7-unknown-linux-gnueabihf-0.1.33": "0302de0a1f48ae05a3a0f7d7924f8845012628fbc55da590037d433bc5977e8f",
"armv7-unknown-linux-musleabihf-0.1.33": "db82699a990ab3f37709dd0108a336d1cf3e9d3d0f5cd906795eb1a1d0758714",
"i686-pc-windows-msvc-0.1.33": "753a1ef176fc87846a48eafdda3b0b5e0a3e0e70a746f6868e6c8c097c6322c3",
"i686-unknown-linux-gnu-0.1.33": "7b55900bfb6423541fdb129ca34396efb614ebfcb8e40027d7861907278f9258",
"i686-unknown-linux-musl-0.1.33": "302f5755e99fe449664135069e60be7bfbd931d09e22f6447fc0f64c82a464bd",
"powerpc64-unknown-linux-gnu-0.1.33": "8b007854d21401c41cf2084e21664981aaaa7cbfa5df71365858d12470323823",
"powerpc64le-unknown-linux-gnu-0.1.33": "02ed93b767b1d4a2d69c61932366104bd016417980cf71c1f898fcd93ec74232",
"s390x-unknown-linux-gnu-0.1.33": "4341f067c105607d971dca3d9c79cac59b3e8cf4f8f61a50fe87b6236d97cc44",
"x86_64-apple-darwin-0.1.33": "3e32e8242b32c1231a45888134b5615f45bfd938fc865d82f270a9ca76ab1a90",
"x86_64-pc-windows-msvc-0.1.33": "b5adf2b7abdd72ab763a1a65624bdbde178797387c461a6e12803157dbf62fee",
"x86_64-unknown-linux-gnu-0.1.33": "c582cf587db50ae4dd50360c5bc5dffce110c7e457f1dc1955fc6ad447bdfcce",
"x86_64-unknown-linux-musl-0.1.33": "6a9877d92235c225ba82d18a6960489a8463716ce1f858f793b971f4aa2f7abb",
"aarch64-apple-darwin-0.1.32": "2f33ca87c17c27d6c2e7ac45b26e19de1a07fcd5e9312670a7bbb90634278414",
"aarch64-unknown-linux-gnu-0.1.32": "ffd433c6508a165f29688694b436289214c5f4569ee62e4b8b00a95dcd661cee",
"aarch64-unknown-linux-musl-0.1.32": "5b19aeef841ad88313afa80dd56198af6a33c3be2f890936e88e5ee197b914f9",
"arm-unknown-linux-musleabihf-0.1.32": "ee9a2df7647689dac93f7e98f0f71ea04977b9cbf899a56b061aca594542a8c0",
"armv7-unknown-linux-gnueabihf-0.1.32": "ec316ac2dc8d5b8ba81e3f19f4550bbdefa5c36ef2a8a7bc90afcc82f37e3f96",
"armv7-unknown-linux-musleabihf-0.1.32": "43c0dce83f4450ee6442ad768071f834e0d4dadedf333e3d6ff9d2e9b23f0487",
"i686-pc-windows-msvc-0.1.32": "df848217d4ef5f7a0d55572ac307bccd0052d97c5be21437ec717bb9e461d85e",
"i686-unknown-linux-gnu-0.1.32": "93c79fa1bfc8d558176cdb5a457c106e3327a5a00c01127d099310fcf312c8d7",
"i686-unknown-linux-musl-0.1.32": "c6804b16c453d08acfb0a62a9e537d526447df06bf6eba2e70b407dd620ccecc",
"powerpc64-unknown-linux-gnu-0.1.32": "2b69efb247e543134ac2a5cc662b90f73ed1a2f23eb0a09475db16a82ba7bfa7",
"powerpc64le-unknown-linux-gnu-0.1.32": "a421a69614e9600df89761193f947f8a1411636dd676a7eaef2f8a38e30d6a51",
"s390x-unknown-linux-gnu-0.1.32": "4a6e350dfe0b13b56a0877ec033f97c6e24283dd99c9664c755a9ff79a97fd06",
"x86_64-apple-darwin-0.1.32": "d3450c42b890767f2bad09e496f35f392e0d52f502a0d12b207371852b013a44",
"x86_64-pc-windows-msvc-0.1.32": "4df4192f5c7824bdfaecd4d3d8fb6310ced6e0980592d5d44b7afed88ef89ff0",
"x86_64-unknown-linux-gnu-0.1.32": "281204339346c00f395332cec43de65bcdd3675a7dbe17b5d8d1292d7854679a",
"x86_64-unknown-linux-musl-0.1.32": "a9dc63f9f48a1964340488e4d139d64b59fc14b06733a165af06d1857980dc97",
"aarch64-apple-darwin-0.1.31": "b00f0d2fbeb2806790b18294c0bf82ae8e69043a7da29d456b369202b261aef1",
"aarch64-unknown-linux-gnu-0.1.31": "9de4de11f1297a96aa731cf2f8ed7bc2e85405692dd3216d50685062b877ec75",
"aarch64-unknown-linux-musl-0.1.31": "fc4127da459a7f7264662faca4c697c71ac5c5a13dc92354520453e1f62426fd",
"arm-unknown-linux-musleabihf-0.1.31": "b2781e289f12f47e7f6af9e908c404e9fb47c74935f3c5d71f6bd34e68c2f88d",
"armv7-unknown-linux-gnueabihf-0.1.31": "3ef451b3f6dd065a17b3f25d945e3ff0084e2d29c2487ba2cac01f55caa19368",
"armv7-unknown-linux-musleabihf-0.1.31": "ed6888e8c090593857b9112af8cdf918053e09cf26cb960af73c66f2fe708e1c",
"i686-pc-windows-msvc-0.1.31": "84b3a4480643c722d7b5a53b219d9e4546b428b9acd5bf003584e3d458b61a4a",
"i686-unknown-linux-gnu-0.1.31": "01e6a76d251f692fa18630b99b0dc941b11ac9d08cd01622272892f6a75708a6",
"i686-unknown-linux-musl-0.1.31": "8e3a1312a7d54dc05e661c2af91164b27ec6ba992d37af7c32611c83d970b00e",
"powerpc64-unknown-linux-gnu-0.1.31": "74ec1054cde973ee495dddc95026f12fa7cf584c1b67b728cdcad118d6524b33",
"powerpc64le-unknown-linux-gnu-0.1.31": "cdb328074d4f795fee91fbe7e6930149f8b7b5a7921d96e5d7c00b574a4583bf",
"s390x-unknown-linux-gnu-0.1.31": "90fc1a8614195626642470d4e31b52fd3ac27d5d12df4fe81e008568822c5017",
"x86_64-apple-darwin-0.1.31": "c10ba963e651ab09a5b1cbb8ac1d0ee74c8f7dca99eab7d41cb9a35b5b7c06b7",
"x86_64-pc-windows-msvc-0.1.31": "980833bbbbcffb3cf0e2abaf8963cdccfcb4cd378ed980a4168be124efda5c0a",
"x86_64-unknown-linux-gnu-0.1.31": "f5b4508eb49d8d65fdc712267d18312f4e3d67f168a8d9b4bb24a28bafdaa831",
"x86_64-unknown-linux-musl-0.1.31": "02ba313bd081d2a99137f123e30692c991d0c6d9e190bdf403fe5b1a53c2bc2e",
"aarch64-apple-darwin-0.1.30": "2efee289f003bf2033a44396886836dbff9d4e76ad2e0ef6d81d7a39a1068c49",
"aarch64-unknown-linux-gnu-0.1.30": "169e02774fed015ee7e780b614548f2c0aa9041a6cfb99b7f57cd9bfdebcb367",
"aarch64-unknown-linux-musl-0.1.30": "35883d461fa233b076a9643e4ca5b0f61ddf0dfc46d545156793beec673acac6",
"arm-unknown-linux-musleabihf-0.1.30": "673f9a4297e555507cc3e0228693b94d0e2f689022cd04076c49df2b0e84b6ea",
"armv7-unknown-linux-gnueabihf-0.1.30": "79475a7560e463c484acee1f0da822c32316bc08086445717b5cbb813821593e",
"armv7-unknown-linux-musleabihf-0.1.30": "168ddee00a64eef97a709084ebafb822bf47ac1fc4962cf44d60a64fb5b8d4c5",
"i686-pc-windows-msvc-0.1.30": "9c057e5bb6e86da7477fddea1f942cc605c7b780071875fb9b4c3b1931083199",
"i686-unknown-linux-gnu-0.1.30": "2e3e0925aead2a8e6e2a5dbaa36ac8c292758398d412eab6b01c0651d956df1d",
"i686-unknown-linux-musl-0.1.30": "6df4acabcc41139433f24d37e4acceeb576826f651b815f3f363afe467e5c5ae",
"powerpc64-unknown-linux-gnu-0.1.30": "57b9885562cc038d0e784c5875e9e03c7dd13f0b6b3f5fceffb573891ed1b68f",
"powerpc64le-unknown-linux-gnu-0.1.30": "02f5f9e086980b4429d51c8e73ee5098f69f00edd0684465cc15ee7e2d5eeac0",
"s390x-unknown-linux-gnu-0.1.30": "e16fdb1ca6941eafdc4ff992ce8e7905c493da3a64000dd7bd362bfc75766627",
"x86_64-apple-darwin-0.1.30": "a99071ba49044263a24be61aa8341bed035d15f3f1023e3e29eb4522d978a485",
"x86_64-pc-windows-msvc-0.1.30": "0f8a4b6d093a91b638ac1c9683ed484c491e19911249ce64c26cd31501a90206",
"x86_64-unknown-linux-gnu-0.1.30": "bf102d20cf00bd2c001610570b6cd1409b63db3f5cef6b55e386d64f3d4724a5",
"x86_64-unknown-linux-musl-0.1.30": "ff073ae9fce030fab64d1b93fc7a4688a0495eecac7316d55e4dc08a9283a326",
"aarch64-apple-darwin-0.1.29": "a5f4cf59f873ea6ffb8d1c11468936f508e444dba0c8278b8f550e811bcfe77f",
"aarch64-unknown-linux-gnu-0.1.29": "f4227d02eecfe3f2a7cfb42b25630dd5a4e5f5144231b84b5acdf6be0158a468",
"aarch64-unknown-linux-musl-0.1.29": "22bf69e1cef9958774751b2770278a0aebaf132c51c04cc6800f0884a18273c3",
"arm-unknown-linux-musleabihf-0.1.29": "54b34a71c3d3f011f9920caf0b8a9081a62ec16c77e0c69e947c888782f5f6e6",
"armv7-unknown-linux-gnueabihf-0.1.29": "86c73423657e91cc4e5e1d541f6a061678bb098bb23b74fc44d79524523031af",
"armv7-unknown-linux-musleabihf-0.1.29": "76108491438a15f9acae142afdec5ca0ea31437ea909240a2534bd7aa45ac96e",
"i686-pc-windows-msvc-0.1.29": "3dac7e8f710f723accadaf876b7034cd1108509e95fb1ad7fff3a8bf579bda3e",
"i686-unknown-linux-gnu-0.1.29": "e117aa0b4b1f588699a4259d4e7485938b6aa00d2ab21093ab0047304450fdf1",
"i686-unknown-linux-musl-0.1.29": "690682d5103b907e43c9704fdd26e5f09ad68894b8135db823b391adef654a91",
"powerpc64-unknown-linux-gnu-0.1.29": "27aa0b5c7e2278ad74afb27f1f2843ccd6bc0c1c8674e6a10e0bcec73e660012",
"powerpc64le-unknown-linux-gnu-0.1.29": "90cf042117be9de01e9e2348a7200954fc25c6989b41b4d5e995b8f42dfa5fcc",
"s390x-unknown-linux-gnu-0.1.29": "4242e2cf825ca433947d44d985eecb11460638f1a8427cc9fe6fa6b70de86c6f",
"x86_64-apple-darwin-0.1.29": "cb51b2f22f06e99f79ee85f3d353a93a9c25ad674f150490e391166a97fa6db8",
"x86_64-pc-windows-msvc-0.1.29": "7926be66598e6c0f2b07c6db72a1d9c61f7b1cce72663266dcdcbf4055e1c9a3",
"x86_64-unknown-linux-gnu-0.1.29": "59e9df30439a01e6852da3f62615d6e6fb8fd79029ee86c7ffdd3fc06c76a84e",
"x86_64-unknown-linux-musl-0.1.29": "72b43a0e804d033d4064b57acfbd95671abfb0d2c0ddf11bfaf779efdad03e94",
"aarch64-apple-darwin-0.1.28": "3892e0a04ced4e8a1c900a7577a0c0805f362c5cbe13abc9c822215cb8f2317c",
"aarch64-unknown-linux-gnu-0.1.28": "6615631b7f8eab6841de405f1978114bba290540fc8b581d4581133dd43d3635",
"aarch64-unknown-linux-musl-0.1.28": "e6b3421876506904f6aee949303403f5065b00a3be3b799fc921c88e9652bacf",
"arm-unknown-linux-musleabihf-0.1.28": "23ae513903449d357a452553b9f4f59d7b852507615ddc79136a3c1cec48e5d0",
"armv7-unknown-linux-gnueabihf-0.1.28": "e6595be0cc281eda4833ea6d398d030a0f8a4f23634004b83a6c0e52805cce78",
"armv7-unknown-linux-musleabihf-0.1.28": "f24ddffcb5270cb297a5ecdc6a4c59f8be74e47772ddefa26ab2f36339be53bd",
"i686-pc-windows-msvc-0.1.28": "1eddf62f14320c1049294d2aa3ddefc10f8d309a64735e9b06b1a02e587bc134",
"i686-unknown-linux-gnu-0.1.28": "6f5627bce734f3a4d3fecb20a047346158d166970e38600eb4c2e4381a3749d6",
"i686-unknown-linux-musl-0.1.28": "411d3c65c0fe26abc5d6fdc81b3fa5b8a9baf4b431897a52c840779ff1483cd4",
"powerpc64-unknown-linux-gnu-0.1.28": "39cbd9850e5f40eee31d72403321e00faea9179406d6a670db79b3698eaadf8f",
"powerpc64le-unknown-linux-gnu-0.1.28": "5a32ff73dbbb335a4b30326ff40b731ce91118d8c792967e274bf43c8811ddc9",
"s390x-unknown-linux-gnu-0.1.28": "09b41889c9a2c6735f8e8106c31570840ada321c7e574c4e9180ef8e4670f6bc",
"x86_64-apple-darwin-0.1.28": "a126c460b6cb471c5a9df400773a1e918fdb481db13ce56d072feb5487cb13e8",
"x86_64-pc-windows-msvc-0.1.28": "5ef7961cf2f35e6df6029c7c83ca3fd08042c9c8b2c692cdeccb19c2a19eb7a6",
"x86_64-unknown-linux-gnu-0.1.28": "8047abff126ceb1a0e6c3e4f7a6420568e3421b485533f22f30767302ebae235",
"x86_64-unknown-linux-musl-0.1.28": "2c50282284cf8fdbfa605f6c7c7f2c407be858cc1d36c545571d302da24480c8",
"aarch64-apple-darwin-0.1.27": "c805ff702e7b5557277154e5d97b0456c811475a704590de8f4e14679efd276b",
"aarch64-unknown-linux-gnu-0.1.27": "ab1eb8b6e1f7ff05083a03811e33dac1324b20d109747be2aa8f8503800a949b",
"aarch64-unknown-linux-musl-0.1.27": "7c07173dede199d35061e53827901808dd3cee423ff983e16cc6f5af3343b145",
"arm-unknown-linux-musleabihf-0.1.27": "ee63d702ddba49e41ecb4073c1ccb75199d61f805b749b9c240c7ae706e641b6",
"armv7-unknown-linux-gnueabihf-0.1.27": "8a0d62408d061c240fd2db5a50424eae1b37868dbfef9693d8aac2604755a327",
"armv7-unknown-linux-musleabihf-0.1.27": "3082a815c196f75d80b7104268d6d0c7eb188445fbf5a556d744fd07c371ff94",
"i686-pc-windows-msvc-0.1.27": "159ae0ab972533827a8a1374145506dc7c761e41f932318b90c5f704d04b6579",
"i686-unknown-linux-gnu-0.1.27": "1e44735218fec4f95abe3b113c1f7001255a8867166bb007b051f2c930fe0ed3",
"i686-unknown-linux-musl-0.1.27": "7cc8aab8f6893736847a39075986ed35acc30f75c943202381e287dc3d5a78da",
"powerpc64-unknown-linux-gnu-0.1.27": "e12e774e4caee36410362bce92ce57f08d438a29178152bc03d097809941b733",
"powerpc64le-unknown-linux-gnu-0.1.27": "721b6e0dafdd8465d19a22104fc500eb81e9dee1792faba032eec0cea2a9fbca",
"s390x-unknown-linux-gnu-0.1.27": "4e0697704f335912178816063cec97a5d43da5723e029559ffa245ed6fb73b27",
"x86_64-apple-darwin-0.1.27": "d2382aa0fa9e42be04bb04132b94765d3f69aeac79c9d4ad3b6066269d0195be",
"x86_64-pc-windows-msvc-0.1.27": "7e045d7976419e954d8e527f42c27b1726a81ef835747b2b1e4440eb05312b06",
"x86_64-unknown-linux-gnu-0.1.27": "ffdea092d716bcce4483b29b52c8a14645f4c12c5aa4c012249963d333a0ca7a",
"x86_64-unknown-linux-musl-0.1.27": "573115039c44ab9c83990bfe9cffdec0ed3d2ee03ad81bb4c391b5e95dbea50b",
"aarch64-apple-darwin-0.1.26": "37e5e9359c6eb943d31ff0082b0ec5327c93b572a2eafedc8266963181dbb1d0",
"aarch64-unknown-linux-gnu-0.1.26": "17ebc81973124e4c1c0958ce0eeabb541553d74bccad5a055ab2d33dddd4051b",
"aarch64-unknown-linux-musl-0.1.26": "9bcedf6847f85a687806a63af1c78d81ad86136074519a2de41120cea1d59ba1",
"arm-unknown-linux-musleabihf-0.1.26": "b4c4f3acbb11a61074b17c2c3cc18dba861da23cc2f2f512104d4c2710261111",
"armv7-unknown-linux-gnueabihf-0.1.26": "7c310d13ba517a5cb1e7210b2969a224490d099d2da0012b02613f8448aa7428",
"armv7-unknown-linux-musleabihf-0.1.26": "1c5900b15c11483d6cc1ecf6aa5c49f5807c2280c8a0333bcd7e47db75635ce0",
"i686-pc-windows-msvc-0.1.26": "45ad6ac84cf7d4a4195fa96011fb902c7c05221cb65dcb0b84aeeb0194125c76",
"i686-unknown-linux-gnu-0.1.26": "5f30097ff062c718c40178b904cd654f1259f7ee012db7c102d31af650047602",
"i686-unknown-linux-musl-0.1.26": "0beb787beb1b8491248977a6407231462b27e47a7678027b3a540bf5f08076b9",
"powerpc64-unknown-linux-gnu-0.1.26": "576afce4b7a8b8f51b7ac4adb7c93525f6fdf6527e0bbd7a2f0329f3cfb73f89",
"powerpc64le-unknown-linux-gnu-0.1.26": "98654b9dbf6696391d7362fcf8bb7604afef8e999ffcb645694350e77eb064d8",
"s390x-unknown-linux-gnu-0.1.26": "7ff5028b7939b346ec195443df9f18155501a1829800d70d9b0face999a4db09",
"x86_64-apple-darwin-0.1.26": "431a180adf346d96b39f3477a4f26b53741819e0fe411c276c2aa07b90b0a4f5",
"x86_64-pc-windows-msvc-0.1.26": "874ce589229f3423cd2824dbc4fc1af7c933d0dde544d5883fd68012aaa44f7d",
"x86_64-unknown-linux-gnu-0.1.26": "27e4edfa8f12986430c2f6265653b7fca3dec9cd8709692b7fb353c5c0f4db82",
"x86_64-unknown-linux-musl-0.1.26": "39738b23bcedb73e51f2010aac87e759d6b31463af40fba27b5e72cfdb42dd95",
"aarch64-apple-darwin-0.1.25": "4971997b9e3abe7fcb6635676db8f3e1d94c4e1939a21024639e6ed08129e512",
"aarch64-unknown-linux-gnu-0.1.25": "5ab29171ee0b08f2eb3c53416857c4e4737b23fc43ca1e5ec6647e8cd15f94f6",
"aarch64-unknown-linux-musl-0.1.25": "00b8aa7808e99bb6e8ae07a125f171a4235e3e3f50eb4ac5754bb065ee89df3c",
"arm-unknown-linux-musleabihf-0.1.25": "24ff2311900171455e909e369e071b419dba3554fa45c01c61e14731f81c936c",
"armv7-unknown-linux-gnueabihf-0.1.25": "adf4f27836d7dd8e5fbe243eeb15088a47d0aff30e4ed8f0dee5e098e790efd4",
"armv7-unknown-linux-musleabihf-0.1.25": "b4c36a4eec6fb6f03ef3f7df1b19384d8b0132563e28f67422c557c66a0975f7",
"i686-pc-windows-msvc-0.1.25": "d647fc906d07c080743b0b0b5eec4e8b40258016b79cff042c47e0ef84464d60",
"i686-unknown-linux-gnu-0.1.25": "73376185add2a603281bd8d01cca84b9a432228e81d8ab3d801a7493a82d991d",
"i686-unknown-linux-musl-0.1.25": "ddf82492c02474371c5cae6bc1dabd6f78c307264a8b494300d9eeda443921c0",
"powerpc64-unknown-linux-gnu-0.1.25": "730ffc370137f938e3dcfd4a3e93ee3824f159aef94d9e992a4791f485501a86",
"powerpc64le-unknown-linux-gnu-0.1.25": "e8a57fcf40cb53dce733fb9d04f0e0284861992a33b92dec057147ef93bbe857",
"s390x-unknown-linux-gnu-0.1.25": "a8045c20f903ec32fbbecf63555379b36b7ce1f4b678912c251a501fc2690603",
"x86_64-apple-darwin-0.1.25": "658de1759adad8218253f142959fba74b1857a3b77fe5e9c75497bea6ab61277",
"x86_64-pc-windows-msvc-0.1.25": "101807a6fa761be68d02849c648007dbc2575c86014dc5b1cc6e3273a1e51440",
"x86_64-unknown-linux-gnu-0.1.25": "8bcac2c9d93cf39d248e5284a2dce442a239f69923f999bf87ed39ec010e204a",
"x86_64-unknown-linux-musl-0.1.25": "d42a18274d064eeb5bc9a14f48b175c7b5d814effd12cd5a32e8c37c1846cda0",
"aarch64-apple-darwin-0.1.24": "e87bdea0fdd29327cc94f4be23e75e1894692423f714ef9afd544c3cef53ebea",
"aarch64-unknown-linux-gnu-0.1.24": "1799b9fdca185a7efb3abdccdee1a6923c233642d2e84413e1e25bfbdf375db0",
"aarch64-unknown-linux-musl-0.1.24": "c22b8089a79ca82897e5eeca2cd8a9122ef1423c9b73bf1a12e46895beb01106",
"arm-unknown-linux-musleabihf-0.1.24": "c90fd4f848f5e87de6117c4f2d1ffe32e5b6347c6ba848427f6557451f117e86",
"armv7-unknown-linux-gnueabihf-0.1.24": "5b729378de4018d9d722bd3daf60c8e0168ebcfbe6ca2a2eb12fb409c8b0979e",
"armv7-unknown-linux-musleabihf-0.1.24": "8b3184c5339ac0a1221b1c2b43a1a788bcfa483cf99741257be3e54913aaadfe",
"i686-pc-windows-msvc-0.1.24": "5fd539c4a8b4838e7ccbdc83270e654cf9dc695f6f70063646f7857c05d558fa",
"i686-unknown-linux-gnu-0.1.24": "cb8fb04212fab42a5c0886f79d75d578d500676aadfe4549a47b3a880072efb4",
"i686-unknown-linux-musl-0.1.24": "26c5e68560ee87a017f7ff304da8e38a5b81c8eb6c7c4e866167c14fbdba6421",
"powerpc64-unknown-linux-gnu-0.1.24": "dc8af9b4d77af8a2f7969ea717f855733bd33179aa134cfafa8cf53399cbfe58",
"powerpc64le-unknown-linux-gnu-0.1.24": "216cd6ddbad3d6249e516562df59d786cb98640cfa6e19a62043b86192afa97a",
"s390x-unknown-linux-gnu-0.1.24": "45d2fc92dbbcceb2c64176f5d795bb8259cb3f84b5e5f3b2f3d3809ff4e22531",
"x86_64-apple-darwin-0.1.24": "f2cf50777bf50f004271be23d74b29fcefe80b98f0c5c3026c003df33cb3467d",
"x86_64-pc-windows-msvc-0.1.24": "c2ac19c64314f45349c1db423b2b246800d9080f023c231a875de1e084e226eb",
"x86_64-unknown-linux-gnu-0.1.24": "128c23c81dd74f9fa8fe18844b649c0060322ac13e0e1b3a9ceba259b0c10dc6",
"x86_64-unknown-linux-musl-0.1.24": "8d2eb876a50c8bfd187fbf166dbadd2790ff41cd351a2e9667e43c97567bfdb0",
"aarch64-apple-darwin-0.1.23": "5851419401ceaae8f902cf9f439409e7216abdad4f708fbaedd3d229041aff7c",
"aarch64-unknown-linux-gnu-0.1.23": "fd322ad0454ad76ba642fecda02d4e2c12971c6c82affdb36f604b1fc9f3481a",
"aarch64-unknown-linux-musl-0.1.23": "08bd62cafb09d2aea69baf144eb3d4417c9ec2119f02a69103322def653c6ad6",
"arm-unknown-linux-musleabihf-0.1.23": "0215ea54d551052e90fe6062e574f6fc3888e57a07b5fd790d48750cae037033",
"armv7-unknown-linux-gnueabihf-0.1.23": "fdb7687c0c3a0cd06c1364379f98641fc58481f05edc32f59dc679abbcab79bc",
"armv7-unknown-linux-musleabihf-0.1.23": "17972bc9dc7d0d987dd9cb05f7be72dfa8f86c1835b9ccd483e762da20e0dc88",
"i686-pc-windows-msvc-0.1.23": "8a03b0c564c9b7a82e7811b913b6db0502a05a59baffbc7a5453259f5527dd32",
"i686-unknown-linux-gnu-0.1.23": "4c65c0772e1f6dbf99923c0564314638df36476c43f2cb394092c72cc79e6c65",
"i686-unknown-linux-musl-0.1.23": "690afb97130c2d916ddb083c2c853765f6cdb477f28c3cc9e197a2ceae2622d2",
"powerpc64-unknown-linux-gnu-0.1.23": "0a4bb782d4792b0f1f77249f08841ad82a33f9d46d9bc3f76b330bdcf6cf4726",
"powerpc64le-unknown-linux-gnu-0.1.23": "bb5cc89be676f9c4e76fa2fc99fbcb9cb9d243f4f27050c115e84ef0824735ff",
"s390x-unknown-linux-gnu-0.1.23": "0e0f8d08ba4378184819bc02b11e52ceea1bb7aadcf5f70c7c4c01b598c9fd3f",
"x86_64-apple-darwin-0.1.23": "172e1499a0a02770e7b2544921745596d5c3e7b650043460eda0758249342051",
"x86_64-pc-windows-msvc-0.1.23": "ad1e99dffc902a3d58589e74180ed4399e59c144bef80cae2027414188f66892",
"x86_64-unknown-linux-gnu-0.1.23": "81909f58ec476a40998e5ff2b81f8704195140305c8dea58aa041ec1a8e5aa06",
"x86_64-unknown-linux-musl-0.1.23": "7748461ee4d8922b93843e1850e4dd2defbb1c0b3db8b3c062977637a9d6ffdf",
"aarch64-apple-darwin-0.1.22": "4768499576438c1d7c741b5dc907a5778fd7f52c88555c1eda7288c7c501a0bb",
"aarch64-unknown-linux-gnu-0.1.22": "bec340cdf59d2451bb22189289e1cfc799c40073a3b40eea62c1efb69c4f13fd",
"aarch64-unknown-linux-musl-0.1.22": "f8e56575b94adfd190807e248eedac0d4ea5298881e67c00c90f9f7b1940393b",
"arm-unknown-linux-musleabihf-0.1.22": "e212ab59866890a08f6df8f744e64091609aecbc09eaaa407e70298f0c9fccee",
"armv7-unknown-linux-gnueabihf-0.1.22": "631d1f8908570a4d0a158de5502f6822ecd80b090f1d71a4642432c988f03097",
"armv7-unknown-linux-musleabihf-0.1.22": "bc10728ced9bbd5e95b7b55e87e7bdd5c3ed5784ce15350edc99638e9a4220f4",
"i686-pc-windows-msvc-0.1.22": "e2620f54e81e89071c9bec1bb3ee2c20856a47290b940965a1c2a8f172a44e69",
"i686-unknown-linux-gnu-0.1.22": "869b6b8587f5fde32dade9ecc1eabbf0a2c41395d0d5936ad7e0ac3d5d3539db",
"i686-unknown-linux-musl-0.1.22": "7453ffa73990121103a0cec73ba1cfdb16141276c13925a6e043dd70f35381c1",
"powerpc64-unknown-linux-gnu-0.1.22": "859f3bef8acadaa80c653748dfcb71bae18cc00024c4b74b28a6a3a9b8e058d1",
"powerpc64le-unknown-linux-gnu-0.1.22": "d39570a41d46206ef04eb2e258e6d005db9cfb797f44cc810001341eb5d46076",
"s390x-unknown-linux-gnu-0.1.22": "46a306e508b48b3ba404ea10cf13ec18a44caa8851d1ef8e7cad90ac0d665d03",
"x86_64-apple-darwin-0.1.22": "a46107c1844b21b96b6ed4c222925bcd8b1429ad24d56a3cf41ecb9732554a5a",
"x86_64-pc-windows-msvc-0.1.22": "7c597a925a893d6e326d3dbb2971883728968ef815168048896ede472563bc35",
"x86_64-unknown-linux-gnu-0.1.22": "9c17b11bd3991ae98b5333378127aba0ba51888b6969427259b51fbda6bbf955",
"x86_64-unknown-linux-musl-0.1.22": "6f80cd8ad79c119ed6882bc9c5b8f860f7e554f87b97830a4ebf1e5b746d5e70",
"aarch64-apple-darwin-0.1.21": "1e7788eb132a6e8b1c81829d81cdbb8ba0b26fe098320217284d4af4332fe606",
"aarch64-unknown-linux-gnu-0.1.21": "a749bb07a4fb16dfc1942868544043483a233956a882af2944036cd081e54280",
"aarch64-unknown-linux-musl-0.1.21": "2386ec124440ae73d3a74af4f80685210b2dc7a06266546f21987db557186242",
"armv7-unknown-linux-gnueabihf-0.1.21": "0a6978192ca8a1a3c0ba9981a946a876c2ab6f06f6e223e79fe77d786b786e67",
"armv7-unknown-linux-musleabihf-0.1.21": "53ceb4be6f4f036e482c22189c3198f755055725864c38df4cb5928b0e08b0de",
"i686-pc-windows-msvc-0.1.21": "8713eda354e6dfe9b5d4802c3da111c76210dd7dc671df62fe2fbbfa50522ab8",
"i686-unknown-linux-gnu-0.1.21": "667846071d7b7dc76d2425270ef569774d18defa59c6ea335c53cca27e1cd3ed",
"i686-unknown-linux-musl-0.1.21": "531750c37b6aa1694f3e3999dedbe504dd9178196af66db8d9e9412136761143",
"powerpc64-unknown-linux-gnu-0.1.21": "62713acd9cad5cefc99637f81d995b7d61a900f5a0a15d454ca30ceebd79bae1",
"powerpc64le-unknown-linux-gnu-0.1.21": "95aad3d08499e9e369d49a02e70ec5ad3502cceedcc08d5de04c490406b1ed90",
"s390x-unknown-linux-gnu-0.1.21": "f781f57cd8976449e83f7233271021e57646eac516f81c61b284db54759545ab",
"x86_64-apple-darwin-0.1.21": "02bf25cc3f25c6a70d4c7f40a23c1122aecb0191824e9fedea4814e8295d09e6",
"x86_64-pc-windows-msvc-0.1.21": "d453b672f4db4a5fed1d7cefec2696b7c6e534f340da22f2d275b0e093c29e60",
"x86_64-unknown-linux-gnu-0.1.21": "1926f6112b03934f9e4b5caf14f15dc284e5129d1f8572ec55269afb798ed3a7",
"x86_64-unknown-linux-musl-0.1.21": "999773834330b6b20174f4486d2ddb19e51dc812291189cfb509aa1e1a3d6b6c",
"aarch64-apple-darwin-0.1.20": "7d6b1bb7e4e044a1f04a541703ea9de0df57111dab57863d82602d848556bc23",
"aarch64-unknown-linux-gnu-0.1.20": "8dc61e683cbcfda8f3584cf3c58a70fb8f574e1b882e5c94c6b6bc3c00eff44f",
"aarch64-unknown-linux-musl-0.1.20": "9a4337d01191a16cdc875ee8ee19f884e948a2b5ce8b07f8a7ec1672292cc63a",
"armv7-unknown-linux-gnueabihf-0.1.20": "aa3ec54087cf351d2016f61ef327eb85117d005b1b6e21027996b7b12e9ce08f",
"armv7-unknown-linux-musleabihf-0.1.20": "692c438a97afadf193c03ce2de4aee1dc5714ebdb3f8de6a52ed93411927eee4",
"i686-pc-windows-msvc-0.1.20": "b20110c34f308608d2061786c334e6004e2e91ec165232689fb6c2a4209889c9",
"i686-unknown-linux-gnu-0.1.20": "e1c1d3947fb72d83a6dc1498c0cebf6ec3be4c963543636ce8fe476731ced694",
"i686-unknown-linux-musl-0.1.20": "035bfabc092e230a89fcacfd7e0e77ce7e70f03c4e76307cbaa80f2036a38829",
"powerpc64-unknown-linux-gnu-0.1.20": "49ea75ecbcf149991ddb7ccb9401be88852ff0475e60d55d54bcd4abccf6181e",
"powerpc64le-unknown-linux-gnu-0.1.20": "a40ccdc8dd695e5b3d767ecec98875615e94ac8cb4c3f81f990c7a619e85fc5d",
"s390x-unknown-linux-gnu-0.1.20": "b8afa3df67516e9ed86bfd6caf889a21337e20f03f356079e85546ac1912d731",
"x86_64-apple-darwin-0.1.20": "baff815f3fe568af2440ae4da23b8a1a97c00c6c2710c980f0b0eaff22002ffd",
"x86_64-pc-windows-msvc-0.1.20": "9be323847cfab082cb2dfa75a5f42631efcd7c1ffbab96d0f36cd7afef4a0c9a",
"x86_64-unknown-linux-gnu-0.1.20": "88cc7354f27134acf45df679bd6e529191409183a936a974ead9ff2714c3e6ce",
"x86_64-unknown-linux-musl-0.1.20": "db28ca169154ce55ea7356071dbbed94fc5cc94b3564cd58bb458342788ac45e",
"aarch64-apple-darwin-0.1.19": "1ac97b4bedad801cd5860a83e92e092e9e04246fd7028393ba6b5c2f76fc1dff",
"aarch64-unknown-linux-gnu-0.1.19": "c9371f7189f129b01bce0a9923d6067ecd77de57860ec3071f163d7ee247fe45",
"aarch64-unknown-linux-musl-0.1.19": "aa56f9002481cc5e3994d1afd61c03b766967946ceafb95d460203369f262eec",
"armv7-unknown-linux-gnueabihf-0.1.19": "2d832319b08d16df798accec166f257afb5d308f17a93927f1f2e4b9f9b52e92",
"armv7-unknown-linux-musleabihf-0.1.19": "bd404945a5f8a46b5b88c2a0fa1f23394cb02cc22c523fb6b248e77c629e6982",
"i686-pc-windows-msvc-0.1.19": "0c22efc82e8aafd73b1183bebc36f5712df260df6b42b1b4649a16143c1a47bc",
"i686-unknown-linux-gnu-0.1.19": "fb85b8910523422ccc81822614dac97cf8f2de258b535c7d177fc5932e64a766",
"i686-unknown-linux-musl-0.1.19": "559720353183dbcb4c29ed359988159369660b80b41e6bc60b47ee48d74caeec",
"powerpc64-unknown-linux-gnu-0.1.19": "9bb39a224f870c168a1fe5568a9bb16aa358899fe2a74c8870545c058270cf87",
"powerpc64le-unknown-linux-gnu-0.1.19": "2c131f1139079ab740f8ab9b24865df3fa1d64d8a2f6608a331915e8ecf071ec",
"s390x-unknown-linux-gnu-0.1.19": "a8cd88c4a007e7bb6260f8b3a226611a3a509fc37d924af651e41ae9302a41fc",
"x86_64-apple-darwin-0.1.19": "35a276f51381ba7497a3e1d7fec3c47688f485045d65d8922d7ec30f1da489cb",
"x86_64-pc-windows-msvc-0.1.19": "41f9663eb2407ad661d0f204dcf479a93257a72be06d36e787b0dea93fcc2e0e",
"x86_64-unknown-linux-gnu-0.1.19": "ab187b253f9f7ffb0063e827cf5efbedb0482d013ac619f6b28158941ca8d5f7",
"x86_64-unknown-linux-musl-0.1.19": "10e5e7f2007f363717a69393c7c4fee3b7ca8f16d1ae7a4e2cbfa67f7bc41bc7",
"aarch64-apple-darwin-0.1.18": "1806f3ada6ab943d86aa45a336e690f66b160145fe85f2adb82f3fcaf4eef925",
"aarch64-unknown-linux-gnu-0.1.18": "db4eaf43f593b4b7ae8bbd0235e850aa7a18b7e8d8a20141e99866d43967f868",
"aarch64-unknown-linux-musl-0.1.18": "bd15842c9b530b544b21597cc2212e2e28b1e18b83a27d344482c9df6800c604",
"armv7-unknown-linux-gnueabihf-0.1.18": "c2971d604eea6d3869bab0d7a292d16f5c8167d48f85b22f6c16fe27e947e26f",
"armv7-unknown-linux-musleabihf-0.1.18": "4875b208471317c9a7212bb4cdab14b0b350ab35a9c21c7481ebbdf09b4983e9",
"i686-pc-windows-msvc-0.1.18": "f4e17a94f14bc775dbef4fffc59ce6290e05806e93c348d60e82adc4d9850d51",
"i686-unknown-linux-gnu-0.1.18": "6a06f1dddfe7dbfe8a09ff2c1d2971204095300edb5bd39ba3b6b289220d52b0",
"i686-unknown-linux-musl-0.1.18": "12300f65ab5d023e3708327b826de20d7a0451539379fcbf223c6125d221a159",
"powerpc64-unknown-linux-gnu-0.1.18": "fd8262bc61f6ca8f051b3f5abe0e5d5f5fb25002d0940760a949d5ed61838a97",
"powerpc64le-unknown-linux-gnu-0.1.18": "557f836ed5c52678db56a90db9b5ce91396d80ce14ac94141a10eea57c44e693",
"s390x-unknown-linux-gnu-0.1.18": "651f6a6e81939f5e9ed781111f581b71a9ccd3f9dfd269a7d72ffd860d852e58",
"x86_64-apple-darwin-0.1.18": "a54f1b97fef0d94834e77bb5c013b26be6e94ce888172c80d671453aa12e3cbd",
"x86_64-pc-windows-msvc-0.1.18": "c34cf263728d784ec98eb6bfda4adb2d7e9ab5f649af8e22a05b60253f919668",
"x86_64-unknown-linux-gnu-0.1.18": "605e49d8dc48081ef8ba32212df2f17f02e531c02de36b5caf417bd97818fc3a",
"x86_64-unknown-linux-musl-0.1.18": "ed1e5264e84246f91e1f2dbb642eff24fbce273ded3bac337930a0c6ef9ad6b3",
"aarch64-apple-darwin-0.1.17": "8f6d1b142dfc4d2040b86a94956eb3c2f5436fd0e889e0d0d1c59dbb8fbbf9de",
"aarch64-unknown-linux-gnu-0.1.17": "f2aa28f1f9e35c67eb1f4e20d372eca5474c7421b0f1f416210f6542942c5a26",
"aarch64-unknown-linux-musl-0.1.17": "34fd79808e301a31b884fe98ef2da209883d00f6253cd75df8966744075599ca",
"armv7-unknown-linux-gnueabihf-0.1.17": "06ae3888af28eab2827e836acde849b4caa993c302a296e35b7275d16346ecba",
"armv7-unknown-linux-musleabihf-0.1.17": "95bbff6685491e1c9768bb68e35e8a9973abfa65218fc36404f0ad03ddb9dd06",
"i686-pc-windows-msvc-0.1.17": "7d90730e88affcc9ef564e75d477fa03d341d6bd0473b7ed8060bd5845a73548",
"i686-unknown-linux-gnu-0.1.17": "7cb5dc29a6bc9d46758f121007d6ed9bedd0969db30214205a298c2b70805605",
"i686-unknown-linux-musl-0.1.17": "70167e21f118995d5d64ad653eb17430bda962806b6d2df767773db6b33ba444",
"powerpc64-unknown-linux-gnu-0.1.17": "40f920c10951a89a967b7d6722c74c88038b8c978e3651d5e99b9a1145604df4",
"powerpc64le-unknown-linux-gnu-0.1.17": "e76e43e9eda10c3730e1b36856a510458a708cfab150a888c8a96ca21234de7f",
"s390x-unknown-linux-gnu-0.1.17": "de8ae6042474e876d1235a09a771a274f848db13c82229bc9d7d63d5c89f8ce6",
"x86_64-apple-darwin-0.1.17": "957fbe84e1fb1a7e8b43ed4db7bd5ef5ea3b3f996c92144d5eaf6b3e259859cd",
"x86_64-pc-windows-msvc-0.1.17": "bd7c736a62f8a102e31a425f4a614de586be30a7c5dbe782bec99c838edd8cdd",
"x86_64-unknown-linux-gnu-0.1.17": "add91a881b3de0a2defa6cf363bbbbfb5dc58e85cff52e8164052e86fee73809",
"x86_64-unknown-linux-musl-0.1.17": "d793d93fa5eac748c1ca84ae28f1ba3fbe6d0ec4093818f960e8378d3c012c3f",
"aarch64-apple-darwin-0.1.16": "915b89c135b3890f086149cc50019fb6b243a26311dfe69d7f00204fb6035c87",
"aarch64-unknown-linux-gnu-0.1.16": "ca18e5b1c9d776130d67e6b7a4f22d14e6abd65c84106fb8b3b2c097bff18f90",
"aarch64-unknown-linux-musl-0.1.16": "64d8c04ce2b251e34f38f14eeca5d126a05a97bd5734ea77dab2c48a7923921f",
"armv7-unknown-linux-gnueabihf-0.1.16": "216e542e2c7a22b2325ed7b0f94c1b6491c4dd3297fb595e166f7cce2ea6a0fa",
"armv7-unknown-linux-musleabihf-0.1.16": "f886aba91e4a79f07899eb97dbde5ffcbcff93b750fff9ccd6a0361fc97c3fab",
"i686-pc-windows-msvc-0.1.16": "6dbcc9df5402155a8514b60b07b48d09cb402ee34ed07a2450298d5e75b2ce11",
"i686-unknown-linux-gnu-0.1.16": "ea109c8a25ff78e99318af5c0e8ef9348ff64af2ee718345a4a1e87d0e1e4820",
"i686-unknown-linux-musl-0.1.16": "48f35670fffab656a342201eca3b6c1c0279cab52fc11b5b42fb87df8fff5297",
"powerpc64-unknown-linux-gnu-0.1.16": "636ecb9fcf40a7e0d970ec0526cbc7803de8800d8f6945fa0005add0334c7770",
"powerpc64le-unknown-linux-gnu-0.1.16": "2b07b26602e6d39481e3db5cebe3456190d281327590ef03279357d8b05305ee",
"s390x-unknown-linux-gnu-0.1.16": "9db4724da884ff01b394c7499b0520f977d10f20f697f6bb5e9b2e01d50470e2",
"x86_64-apple-darwin-0.1.16": "daf6316c3e5e610ed99c1eb054bcf9dcc66f970b96a334f7bf6d4eb0d211736d",
"x86_64-pc-windows-msvc-0.1.16": "73659c150df62c0c42d8f195763fc270a213383fbcf413f746bb026878fa1d93",
"x86_64-unknown-linux-gnu-0.1.16": "84b15dbd298969ecf2bffb22a3e1003df085579d53d39a6bb87d5813a14e10f2",
"x86_64-unknown-linux-musl-0.1.16": "1d76289dea83224d61eb84284f00136a1275234e7537baba44ca3c9e696dab05",
"aarch64-apple-darwin-0.1.15": "df9bab49d9a171bfafb619422ec8c88c0bea930fb69ddd6c8884420b9cf7a13d",
"aarch64-unknown-linux-gnu-0.1.15": "33c5c5340b0c29381b0dcfc0458194800a74866301fd6f64efb1e77e4491beba",
"aarch64-unknown-linux-musl-0.1.15": "ae21b106eb5dd26f76d163613746ae869ff5c6f111aad2a7b482f906a8de81f0",
"armv7-unknown-linux-gnueabihf-0.1.15": "9bc6769404a17f24340ae39c1b23a495c405644d3c003719145d92596b1559f5",
"armv7-unknown-linux-musleabihf-0.1.15": "5d678a5a06561c01e8052528186394a45eabcb37595c4540205c292d8d9f2f82",
"i686-pc-windows-msvc-0.1.15": "84cfd219b31f5cde825d212012652ab326a81d621faf86c08b03b0b85e72ae4c",
"i686-unknown-linux-gnu-0.1.15": "56ceeb2d72f0ae1fa2852b4951bb0c64c5502472a867532ca157c89e93ade4c2",
"i686-unknown-linux-musl-0.1.15": "62b821fd3e94190b2f7427a6a805b0b9308e21383a8c3161bc4ab7d777ef40b0",
"powerpc64-unknown-linux-gnu-0.1.15": "f06fbd8a50544d9e76d1e0a984a5fc17fcaddf237e28f2874d8a6f01ea5034a0",
"powerpc64le-unknown-linux-gnu-0.1.15": "14f177d8e9c83356e57f7f3f54c1dcca28f47bd784278436207c6149244ee1d5",
"s390x-unknown-linux-gnu-0.1.15": "cb714eab80809c6b921c2b4f7b81e2c166c07a75c990032ee6d5e939986beabe",
"x86_64-apple-darwin-0.1.15": "8cb18f0aa3d61dea3b3d8dc98aaea6b9f1f8677d43db89a0c69b53c86ad6a9c5",
"x86_64-pc-windows-msvc-0.1.15": "dfe55955cc7ab137b0dfb186f0e6108f320d79383761d62415ea554167cecb42",
"x86_64-unknown-linux-gnu-0.1.15": "00a37907aa7985e88584ab4765905b720fa8b9088d1bcae7611c10f398299c5d",
"x86_64-unknown-linux-musl-0.1.15": "5f7378a55671fa53e32cf5cc8beaf2cca40db95a579faaaa1310399f9329d27c",
"aarch64-apple-darwin-0.1.14": "793d267ae803c4c59b9d825bbacd09d4f1a06579567a7ea9aa458e2986b5b778",
"aarch64-unknown-linux-gnu-0.1.14": "fd82838503cd540c5a2aebb38b0c539912c858ff6b8e6c4b74b90a190442a0db",
"aarch64-unknown-linux-musl-0.1.14": "ef9e8a2cb2a440d8b6b8fddd00f7d7d91b5f060ac8e2142b6ad778a85f00fda5",
"armv7-unknown-linux-gnueabihf-0.1.14": "03ad6b59053a933de33a4779484ea275fa7e885a8dfe833153eb1cc24b3009ff",
"armv7-unknown-linux-musleabihf-0.1.14": "ddebfea1674aeb6534181d034477c39d7ccc15065e34e7c9c4abe1333f5f0890",
"i686-pc-windows-msvc-0.1.14": "365b29899ee7e83057850fc25e231a33f27671785724b0718bda07fce311de1a",
"i686-unknown-linux-gnu-0.1.14": "f3983d685e27a55554b6107d59db017addebacf143daeceaf15f7a81a0286006",
"i686-unknown-linux-musl-0.1.14": "84f6644fb06ef46478c68e55b367ecfceebbed80c7e3b5e2b8af70d7fdee6c87",
"powerpc64-unknown-linux-gnu-0.1.14": "bd21243c9d1679e27ce5d0651cac380521743d20bf996ba146b7a98c9c975dd2",
"powerpc64le-unknown-linux-gnu-0.1.14": "25f42e9e3fd230e7cc9f416143dd0aa6a5806f306a1abb4d02989edcf938000c",
"s390x-unknown-linux-gnu-0.1.14": "15ce4609be46217639b0b589398bbc6ead801cb42c750b0c734d51e2384e9be1",
"x86_64-apple-darwin-0.1.14": "c8d471a0c6f5a710508284cc260005e2d535ecb255b5f2ddc8b362057d8cd80d",
"x86_64-pc-windows-msvc-0.1.14": "eba641a900d26feb5158fb131a80bb7bbb4ce4bec71284753345f23f885414f9",
"x86_64-unknown-linux-gnu-0.1.14": "394c421302ba972fffdd674a0a57f7189d8cc5a728fac8a175027abf833eee59",
"x86_64-unknown-linux-musl-0.1.14": "3c26c7a3e236d9f5d10aa6f32a8751322e8719812424b0b05ede1023f16dbd52",
"aarch64-apple-darwin-0.1.13": "9d7a71dbb75dbabcbaace98d06517caa691ec8dab8ecbda3afee44ac9cb1e1c3",
"aarch64-unknown-linux-gnu-0.1.13": "16429c1a00b0a1fb653ae8a104d5af121bc765f047a7b750f356515c50c226c7",
"aarch64-unknown-linux-musl-0.1.13": "c07044d21142e308961c1509975b71f52bc2f298497869ba40aa84fefa3807cd",
"armv7-unknown-linux-gnueabihf-0.1.13": "7a62ee6b4e669ea1aec3ab05da021e59ae8b226f524fdc610e14cfafc5b513d7",
"armv7-unknown-linux-musleabihf-0.1.13": "24c717aa7d4b8cc2e0b2378d2b6097adc376cb8422733a0478f0696ef4f2b5a9",
"i686-pc-windows-msvc-0.1.13": "5e75f004ece194c6c0bbec894f229bae440556c3c43df6d6a33a93b287a6ef96",
"i686-unknown-linux-gnu-0.1.13": "3a74bace4da3dbdc3f36e7720d7f6bc56098716e7c3e949664b301136fdf3dee",
"i686-unknown-linux-musl-0.1.13": "d9c18676b96654a7133cf9a9f1dbfc47b37bf02ba8f7ab9f5f0307a3d6483311",
"powerpc64-unknown-linux-gnu-0.1.13": "2ffd41af6962f46807f64a44e30c7d5faac3fa8faa1bb1dd65f03cd49e61f66c",
"powerpc64le-unknown-linux-gnu-0.1.13": "9fcb334fa7d99f732628214f2af386183fccaa7abbf9157df0966b619f741131",
"s390x-unknown-linux-gnu-0.1.13": "e575fd873988078a20d99346ba0c4964e6fbc322700c8d2541e9fe9e07eee113",
"x86_64-apple-darwin-0.1.13": "ad133fc0c67cbe2d578631d77d2f6442626c77a1e144bbda2912b7af9085e91a",
"x86_64-pc-windows-msvc-0.1.13": "f61cc5c329abc535248cce0912fe01c20e7c99ae9bead6015842f8c5fd3cdfeb",
"x86_64-unknown-linux-gnu-0.1.13": "2bfc6a542a3df6af6f56ccd8ec9f1b0596fff62b11650b0bdb830f10ee4e2d64",
"x86_64-unknown-linux-musl-0.1.13": "5e771e72b3dd42d99a354fc4ce9be047e4d9fc1a653b2f551128a3b4fd533d28",
"aarch64-apple-darwin-0.1.12": "c27629967760a84caeae66a130bb4c53dc1da0386122a4e67eeb19a0a163311e",
"aarch64-unknown-linux-gnu-0.1.12": "84b611afe5b7234585999a9ed2e24b542b8d3cb438595f9564629cae6d6a7580",
"aarch64-unknown-linux-musl-0.1.12": "c9abbf7d6c9ebe737e3b881243297eeb6d67b5a8fd458b9d55deb80b29b45fb8",
"armv7-unknown-linux-gnueabihf-0.1.12": "1b3bd6f3e8d8080481af2c231fb72defd0d0c63eab2e28528ca420cfbc1b71cf",
"armv7-unknown-linux-musleabihf-0.1.12": "d74b4a43ddd2601b18e2f4bedd9bcdd84bbd64fba2e4bfb169cda95bbabc88b4",
"i686-pc-windows-msvc-0.1.12": "6424486541fbdb17c3dd9144e690e3e86c318374342f02db94fc2a369ba31a14",
"i686-unknown-linux-gnu-0.1.12": "84caece3b6498801a9fca6ae91c341c4287a6f16d3a089199636259b00217bef",
"i686-unknown-linux-musl-0.1.12": "3daee4d2580054255a78d73eba040a247b1bc1db559726a4be0a4029b9bd1006",
"powerpc64-unknown-linux-gnu-0.1.12": "588ea9f541451f435eca5811d970e528cf599fc7054d258821f96a87af51eadc",
"powerpc64le-unknown-linux-gnu-0.1.12": "91c60c49b0309f2f51919a6603eeb03ae32dd7ead8f9f3f390929703577a1ac6",
"s390x-unknown-linux-gnu-0.1.12": "54334b0bf35ef275a092f4567539066d4a25c59de08bee9dcfa1bb3eaa2348b8",
"x86_64-apple-darwin-0.1.12": "5ce7d6c25e68cb96ed21773fba9bb9cebca81dac70ab7dce86e620eacf547f24",
"x86_64-pc-windows-msvc-0.1.12": "c458aa2416bde29315d73356ac34f6639cf55305018bec226c0e310343d6af07",
"x86_64-unknown-linux-gnu-0.1.12": "fb1f56e7485b6c94364d11f227107fdc74799e8c91ca5321c35e8a19828d7a72",
"x86_64-unknown-linux-musl-0.1.12": "3d4fe441702e719156c373caffbfccd75254594113d8e3ef5e43d871fad7c722",
"aarch64-apple-darwin-0.1.11": "64e0aeae1d5135684c65e5d41741f1b2eba5c60e574dfef7386712b259066d95",
"aarch64-unknown-linux-gnu-0.1.11": "56a7edd9bfadab67100bde6aca3012c9d7d8619405ebb360eae50b88ba2c6dff",
"aarch64-unknown-linux-musl-0.1.11": "0c890bb996c6431149583a402d5bfc3124da92b6e65ec3ee3a961935b06f8cfd",
"armv7-unknown-linux-gnueabihf-0.1.11": "d26ac8502154f45e080c8330c58842e33e2330a73937a8f8be0d02f0d20391ee",
"armv7-unknown-linux-musleabihf-0.1.11": "b7b3e0ba037f28994bbe99abba47ca2fe651e451c533fa54927ab61d21bacb9f",
"i686-pc-windows-msvc-0.1.11": "75e74c43bf6aeb3cd83a7b7a1f578c2247c48a03fa421317ca7f27f881c0890e",
"i686-unknown-linux-gnu-0.1.11": "f8d63781a8a0d3452f7322268a4bfb3a6e06816b76deafde660d53bbc2d790d9",
"i686-unknown-linux-musl-0.1.11": "fef030f0adb05a19072a8a4f042a5e8f55102633653cc092841ab5ea6fef342d",
"powerpc64-unknown-linux-gnu-0.1.11": "de28ad908376178c3a66bb71a1e882bca9d30964c068c2d84e26982da5fa12b4",
"powerpc64le-unknown-linux-gnu-0.1.11": "62454fa7c614b129bfdfebd8ed1928b66e379ba4f3da14750255fcd936890256",
"s390x-unknown-linux-gnu-0.1.11": "75915f9b4efb686247e6524cc467f7d498054915c1aa9888eafc5d3385c3e904",
"x86_64-apple-darwin-0.1.11": "62f2c6696fdf8bf394662cad54244411b9e96908de9e52b3743955b0d94bd8d4",
"x86_64-pc-windows-msvc-0.1.11": "e3e49f27f032c195f01d33df30dff16c9ce7d6ac60512c1af117fc4597d0e632",
"x86_64-unknown-linux-gnu-0.1.11": "8b1d098549f46814ed40975db6e88aba2eb541196bea54753b08f789b6db8384",
"x86_64-unknown-linux-musl-0.1.11": "a74b6e51ccf087f78814eecd449ad759f55a633015d9762f06d134394e6122fa",
"aarch64-apple-darwin-0.1.10": "1febf66f3377f28d59cedaf16ca08fdf0b18a19dff201ee29cfd4c09b5672a7e",
"aarch64-unknown-linux-gnu-0.1.10": "88d6b781dfaef6676eb1aae170a8dd18dc0935bb49e6ef4fff0cb33733d3b7ac",
"aarch64-unknown-linux-musl-0.1.10": "bc7b0d6bbd58eb6eb00ef0fa3bc4ef2fb54c693c0027bcfec8787259de6ab9e3",
"armv7-unknown-linux-gnueabihf-0.1.10": "c3a6624ce92cce721d32327b7354b656272ee593b1fe97ed8221b429b103a353",
"armv7-unknown-linux-musleabihf-0.1.10": "b3ac69be2544c280acf6ef4aef660bbc78b000bfe08d46156833031359a3fe8f",
"i686-pc-windows-msvc-0.1.10": "354b9be42669c2b3e90a3d0e900264fdab89212c0159551a4ef3d2bb273a84a4",
"i686-unknown-linux-gnu-0.1.10": "665208a455b369b36af3558a2bc75248eb357d54eeaf84b6aa06673c69b7e5ee",
"i686-unknown-linux-musl-0.1.10": "d2c152c9192eb565917089a2c5d0b5462d01a3e6799ae9e37fc11f4b32e97291",
"powerpc64-unknown-linux-gnu-0.1.10": "69ab3b4a36ee75892e4a242fd030dbbe11f8028c84b318196496d8ce2e368fc3",
"powerpc64le-unknown-linux-gnu-0.1.10": "6d037c45c46ceb8b760c8c80e37b0f9cb5cb194ec0ed152ee6b43b3700a1bd37",
"s390x-unknown-linux-gnu-0.1.10": "bd2bb41a6efb3df0f8336685708963d37cc019ab6782af2d9f5a0e8e08e5f199",
"x86_64-apple-darwin-0.1.10": "349e36a0b1806d6760b7529384b94b450dffb0284bf541f50f1b9880a4c40667",
"x86_64-pc-windows-msvc-0.1.10": "d2842d27994304c8613a1ef366386f1cc7d15c05fba3c48b5b115ccb4b59a88a",
"x86_64-unknown-linux-gnu-0.1.10": "94c6a8bdde7151ea9587f866f47f5d376acedd90606c546bac9585d3ad5b4426",
"x86_64-unknown-linux-musl-0.1.10": "ff6b01c23bab0333dc258d9decaeddd500d7bcfb3bd6a1c47c12b449e9430bfa",
"aarch64-apple-darwin-0.1.9": "0b92f201c4f48a54a23074001e490722d8a532043566f3b24fdfddcee5dbbb81",
"aarch64-unknown-linux-gnu-0.1.9": "51e3791eff68824daf1360631aa2f11f98f3728d5d342cadef191f53e9321c61",
"aarch64-unknown-linux-musl-0.1.9": "9b00d23f7d7267af182641df08c2c120271164c803f31e9cfb6de62ef1facb87",
"armv7-unknown-linux-gnueabihf-0.1.9": "8e0c5b9838daf8403dbfc5f6befa54440afbbecc54eddb446265c6db3b3e91ba",
"armv7-unknown-linux-musleabihf-0.1.9": "0569e3dd62ed50478f1b546d7c32bdfbbf8fc7a9bfd5331794733f89bc1ea114",
"i686-pc-windows-msvc-0.1.9": "1b6bf7348f81c34912bdf7bf5ff57911849820f198dce12e737f635f87b79cda",
"i686-unknown-linux-gnu-0.1.9": "3fed572fce343c86737e3912f86dce47a26611b07c86b2ff3be0f4936861a1d3",
"i686-unknown-linux-musl-0.1.9": "e3f71bc7566e407c88caa0acf98fd2d7267a0e88ba53ca8d8ebd0018ef1a0ede",
"powerpc64-unknown-linux-gnu-0.1.9": "c2918765883475223e63f9281fc43695f311162a5583e21bc20f86dc5bd124d8",
"powerpc64le-unknown-linux-gnu-0.1.9": "6571b7c86c31db0e0bca2a002566c94a557968fd58b8f9c7d38539b89cac47ce",
"s390x-unknown-linux-gnu-0.1.9": "2c7c5a7409a6ecf47062b29342f4a792c689170d9bea4ae9e3db81c6a134bfd3",
"x86_64-apple-darwin-0.1.9": "a2cbd617b00e26d633ce0622b97ef96282e4924d0aef222754412d2c2ab7e625",
"x86_64-pc-windows-msvc-0.1.9": "0de903c0c36b91dd1d734d61a1677afbd80e6c0db3c91d775ba011d710866c60",
"x86_64-unknown-linux-gnu-0.1.9": "4c6305655fba53bd68dcecebc622e172c9de369543539428a5449b4c6ee53ec0",
"x86_64-unknown-linux-musl-0.1.9": "93f43d609bc6298af89519fc2a8ddcdc3a494110f64e7238c6f19639b3a45755",
"aarch64-apple-darwin-0.1.8": "0993fce3759983899a83d6c2727576a4b35176d97c13d1bcbabd41e91f6147fb",
"aarch64-unknown-linux-gnu-0.1.8": "6a8a4ffa1e7157563706e1fbb5b42936d94bbe57effab8b62aef06c69234558d",
"aarch64-unknown-linux-musl-0.1.8": "f4ae032d4484c5493584b2effc5936627065440eb4c7fa1265b0f5da904f9538",
"armv7-unknown-linux-gnueabihf-0.1.8": "eb223bf424c28f7d60f24b1a51a8903746c9020d94fb51c91a62024b5463bf2d",
"armv7-unknown-linux-musleabihf-0.1.8": "eb060441259b20e77b6115a483d8505ff44cb358449dbcb3d72b9ae561ff7c11",
"i686-pc-windows-msvc-0.1.8": "71d40d232f81acac3ec4ffeb9a732ec231945093867eae3b1008ed516f588c3c",
"i686-unknown-linux-gnu-0.1.8": "aaf5320b5305621b5ef850e5dcda5e65946443980147015bdf19472ae3ea5360",
"i686-unknown-linux-musl-0.1.8": "e68cd09932d18ccde2e48830eb068b5ac01f93d06b0c690f8035b9f3dcf07cd1",
"powerpc64-unknown-linux-gnu-0.1.8": "3980df97930b76b5b93975321f8662db7f8518229079b383df667e88616afdff",
"powerpc64le-unknown-linux-gnu-0.1.8": "c76e9a5e285c8f728853749c2cc0f39480d0b59c4215437df5055ae73a7659fc",
"s390x-unknown-linux-gnu-0.1.8": "ec5ed3af4632c6c8a23364bc88b2f9f2266602219be0eada354d4ad1d2496067",
"x86_64-apple-darwin-0.1.8": "a6f9188e79a95f5220ce27185283d9aba2fc3ea8cdd2abb9d41eda08a9416fb2",
"x86_64-pc-windows-msvc-0.1.8": "f7fa2a6ff10c3a0281014acabb463ac5b1ff7b3599b6f91e6f507c0fd52483ea",
"x86_64-unknown-linux-gnu-0.1.8": "074267e2a2eaed2eb87c3ffc71eb1ce1c21c5594e079ec2f2d5d5ff6815cbdf4",
"x86_64-unknown-linux-musl-0.1.8": "3d8d92513f85811d1383d74c2b5eeef75002b33f1dfcf48cb46c253c31297cc8",
"aarch64-apple-darwin-0.1.7": "020cd34efacc144b7dcd0bd1813ca1e8153cbb281b6fb4506be80714ad2322da",
"aarch64-unknown-linux-gnu-0.1.7": "e349b8e6959ec7840178e48bc06be3a6c41c35dabb7243bd7627ad0c8b9b962b",
"aarch64-unknown-linux-musl-0.1.7": "8fec50377df06f83dab2248f7397de8250e531e24ef2d2f840e74b55469e4d64",
"armv7-unknown-linux-gnueabihf-0.1.7": "d07ee44215d486aab894a054576f45efa65cbc45d026785187053aa33f8e195e",
"armv7-unknown-linux-musleabihf-0.1.7": "f795784c9d352afbf3b7fdbe2109bbd664c65217e6cdbd55efa00f8c383ed2cd",
"i686-pc-windows-msvc-0.1.7": "6acf1caed9ebc233a3de1cb9fe2ebf20253e4fa915cda65fa53a53a13c860f13",
"i686-unknown-linux-gnu-0.1.7": "a7022f599dfa97fe21c0926c95b24d04379ec364c8210516525c837e7d19ec9d",
"i686-unknown-linux-musl-0.1.7": "8045ed3acbf3190daebd5acd62e8707add1b0dd40b138cf9e49934eecb8622d8",
"powerpc64-unknown-linux-gnu-0.1.7": "52245ab38a7f443e2951814ccb253e4aa11d7c183bbe3ffbd352d5afd6b8bd0a",
"powerpc64le-unknown-linux-gnu-0.1.7": "1ee56598340ea158ffbfcd3b9ae50e30f3802df5554b1537971531a5b4c8fe23",
"s390x-unknown-linux-gnu-0.1.7": "179840bf7c06d0d99dbaca52b02a7d697bc43fb48fdf7327b1f4733511d1dc1d",
"x86_64-apple-darwin-0.1.7": "4a98413d5edae3117d0c0960be2f91dedd88ca0975583819eb520279bcfae55c",
"x86_64-pc-windows-msvc-0.1.7": "aa20b99f4d687fe95e0ad952300648bad9bc581d034f8fe9952bb1ce3272cc6d",
"x86_64-unknown-linux-gnu-0.1.7": "60175158c359cf247e67b6499feca8d0848c75d95061b7552dd3c5500938ef63",
"x86_64-unknown-linux-musl-0.1.7": "d0777ccaf989172b821f7c1a6d2f94b327e527a01ffbd3d5cec1d9d2321ca5db",
"aarch64-apple-darwin-0.1.6": "3c6f147f2f45d0327803a690722d25ba4c23c4145cf08df971cba161567e448b",
"aarch64-unknown-linux-gnu-0.1.6": "de9f62f4fbad55c6b8918006e02c65e9cb871d017263f4f1ec3ebb7b6ca87247",
"aarch64-unknown-linux-musl-0.1.6": "e8a5e657a2837c5522a9f6d5c7b20384cdc53f8841c9190d34cfd251a0087385",
"armv7-unknown-linux-gnueabihf-0.1.6": "324b4645fe37b68a33fdcd292ba026201c3321882f16ca8293decf943c360426",
"armv7-unknown-linux-musleabihf-0.1.6": "e4ebba2ab004ea22aa59829bb774230b58e9c750b277a995c3247dcede63ad6f",
"i686-pc-windows-msvc-0.1.6": "8e6d2180a42c468d72b1ac4bd2b16adfc16021286fe1aae34c27248158fbf25f",
"i686-unknown-linux-gnu-0.1.6": "332a3a588e95ba99eddbe059d7cf330d98a5d11db4b7d24ef3e9472e046d944b",
"i686-unknown-linux-musl-0.1.6": "32bd89273ce21fdc064c6bdebcbacc07e74d9ffcd237a2cbdabb522aa5952f7a",
"powerpc64-unknown-linux-gnu-0.1.6": "7dff85ff980f80915247674288020b9e7050fb42286b73bfa8ea09c6def6aa96",
"powerpc64le-unknown-linux-gnu-0.1.6": "ad3c76383c5c61e6510057658d013594bf9c34e0d80484de18b8f864ec4dc752",
"s390x-unknown-linux-gnu-0.1.6": "b58a9ff37ca400c22844e0e0d4aa691b11417b98afe4077a8f2b468aaadd602a",
"x86_64-apple-darwin-0.1.6": "ac26fa53a156385781959487abe5112d5154bc395eaacbdb21e3ceb20ab5b835",
"x86_64-pc-windows-msvc-0.1.6": "864a4142b671b1f67fa7e853094e83af8a71445463886f74552636ac7aaac985",
"x86_64-unknown-linux-gnu-0.1.6": "7dc7a615ed6d613ad49d77c0e4a39361a97f43b842e8b14536a00db9671ce5ab",
"x86_64-unknown-linux-musl-0.1.6": "4d956f457e0f5a2116d4138082f030488865c0c04aa7389a54f4f80ad0868119",
"aarch64-apple-darwin-0.1.5": "dc62f02d9684e3453ef62d2b8775323a54d89a446e3dbbd94115e809dbd0aa56",
"aarch64-unknown-linux-gnu-0.1.5": "23d4ac8e358ef51e436e0dc66f120cf5acb86c1cede69d8ee3bed0864a44efdf",
"aarch64-unknown-linux-musl-0.1.5": "0b4f963239a69e03ea856e52b474c05be06417961ff7003e06bc0f0db1025f1b",
"armv7-unknown-linux-gnueabihf-0.1.5": "53778c45a8d95bab74b096bad6e5071b45f7b9d379438c770dbebe119bbf55a6",
"armv7-unknown-linux-musleabihf-0.1.5": "09a37f4749d1efe473aabe8bf7de3429a92456703741eaa5a41aa85eb3a08f51",
"i686-pc-windows-msvc-0.1.5": "a50ef8b67c8f50e73a080dcf8e1b928c266a6c08d5c5ee8485b2b9e5a0cc57d3",
"i686-unknown-linux-gnu-0.1.5": "8a9b3fa8c50ab85767db7c633589ce8aae6440ce615e3984c96aa2885b97d949",
"i686-unknown-linux-musl-0.1.5": "16f37509d028e7dcd28679f9b24cfd5a21751531a05c8f79fefdbd385b81403f",
"powerpc64-unknown-linux-gnu-0.1.5": "2788c0444cb62cf6536f3cec9996ec1eeba9daf9f039176920e5f55e1ee30e8f",
"powerpc64le-unknown-linux-gnu-0.1.5": "08a4022f73326145ce468cac03169e1970685f0eb9bdb053bf61ec53f6f769ed",
"s390x-unknown-linux-gnu-0.1.5": "3763dd278fe3df1e911cb11fd104327a07dead0e642550ee817e956937da61e2",
"x86_64-apple-darwin-0.1.5": "3559b67be0cc77a944323bafd5e70de8bd2933613f1825d7980fa0b22ba5f465",
"x86_64-pc-windows-msvc-0.1.5": "5f3f000d8405d0f93756cefeccca7cf529effc0353d2c694a4b05d79be677ead",
"x86_64-unknown-linux-gnu-0.1.5": "06e1530ca6dd161d7052a26cd08716276d8d6aee90d6e164cf4e05d4f5694312",
"x86_64-unknown-linux-musl-0.1.5": "6d290240419ba81e789b458b3d0685bb3cf8c61d725fb43949b554c64a50ce9b",
"aarch64-apple-darwin-0.1.4": "20ddf1a3919664d427d2d5ebb9875d9fef39a9ffd6850c036591235678e42609",
"aarch64-unknown-linux-gnu-0.1.4": "d0341732b39688b2464cceecaf617af40898eb80b1093ced778e91d13837e057",
"aarch64-unknown-linux-musl-0.1.4": "f05108b90840554a42b3486c1779c283348131093ee459883e3af73c6bff9cd5",
"armv7-unknown-linux-gnueabihf-0.1.4": "57fd95339e096d1f59641083bc58b42cd8e4b49ac355a40aed2613fbdaf5bafc",
"armv7-unknown-linux-musleabihf-0.1.4": "9f0a39ce106970b437ab36cd7f04ed9e5790c79632a44c62e7eee3e97fb89fee",
"i686-pc-windows-msvc-0.1.4": "55619ce61c7b1788cf6c490f45491a11656c1067e2e6e53a759e9eef338538b2",
"i686-unknown-linux-gnu-0.1.4": "a3d55664de30d58ba26d34106fea81f2532d73afb47d6812efa884d0726dae39",
"i686-unknown-linux-musl-0.1.4": "c08cdb5232797e88c3bcf817ff1d8c47c2096275574391e30417fd2cc3f7976f",
"powerpc64-unknown-linux-gnu-0.1.4": "80ac83cbe2ee1b3c8632988d45d1e9873bd665d8ce03275f8c67cb8a5c4ffc6d",
"powerpc64le-unknown-linux-gnu-0.1.4": "35fa6f4234785dd0a7362fe3e4521caddb8aec3645cc6b55fc196f0e22756019",
"s390x-unknown-linux-gnu-0.1.4": "9cfe751e4c0d0db2d3693f777966e2e4b9d01f3651314df87871d5807aa1fd7d",
"x86_64-apple-darwin-0.1.4": "3b0648dffde1337a592963da1cf1e6167d54cb832128bba2a151b23b260decbc",
"x86_64-pc-windows-msvc-0.1.4": "0e52e5e2f92599f839d2a69739343d80044fe3593f807c9415729f56cdf59673",
"x86_64-unknown-linux-gnu-0.1.4": "1eb2f8ba39c231a310e41784980c8085eb747711ad59e430e75975a61a0a7fbf",
"x86_64-unknown-linux-musl-0.1.4": "04789d4a7f5a50524679b0d7f440566cfe69873448f4128815fab1354d3a0bb0",
"aarch64-apple-darwin-0.1.3": "f15e35d795cb370f6ae9d4107961acb3e7ab190196d6f6e1243ed8941947dcff",
"aarch64-unknown-linux-gnu-0.1.3": "51d4d1c9fcd4db37535b8aa75698efcb38aeaf29a35ad969c2b17d099e7b9b89",
"aarch64-unknown-linux-musl-0.1.3": "3e15d92c271a426b7bd3fa65e5947aa7d91c97202645eb8269fa483d58d49167",
"armv7-unknown-linux-gnueabihf-0.1.3": "391828d0f9916852650de441d947e059a6a1c47eb2a96fcb4e3fecde385a6878",
"armv7-unknown-linux-musleabihf-0.1.3": "7361f722e2cf3e8c16017778140be3f27f3a4a4f0167c1f25682a35dc374e8d4",
"i686-pc-windows-msvc-0.1.3": "50370c13b2b841c9f48d66ee056caf369ed70ccfe465f1a7caa44457af494cdd",
"i686-unknown-linux-gnu-0.1.3": "3516336206e39ced43d534e7319ed01722af68cba0b7d110921eb62e1db991cf",
"i686-unknown-linux-musl-0.1.3": "0738d7d3a2e9bb13fcaa4c1001c2af00295f3e2f76441fb34edbb83a6ba0f433",
"powerpc64-unknown-linux-gnu-0.1.3": "f5cc9474f9b19d0ad210454eb779b85e2cd3089f0f509da0995f1c90f86ec9cf",
"powerpc64le-unknown-linux-gnu-0.1.3": "8bd935aa9c9f894e145de738cdd11b97ee8164ac6fee4915d3b5a5d3ac37d121",
"s390x-unknown-linux-gnu-0.1.3": "c044ef56eb600fff4c734da9912deaf3b20d962679fde9a88eb7de4cc3d77ad5",
"x86_64-apple-darwin-0.1.3": "e08524327a9c3ca3f087dcec5fa6ab20c35f3714051034a97ea04eda19e7dc04",
"x86_64-pc-windows-msvc-0.1.3": "c37479397b96f1576b08a2bb82d94fb5228918633b4605e0b580feefc5794467",
"x86_64-unknown-linux-gnu-0.1.3": "785f82659bb563553adc08608abd65475bce99f080fd01e9f5a358d2e8ddb2a6",
"x86_64-unknown-linux-musl-0.1.3": "f7355abd4f4013c573d7ae64c0a42986ffc6b08a73ee24e8bff74ee6335136df",
"aarch64-apple-darwin-0.1.2": "13289f543d96c2506f7c3319e8bbc5fb944c8109374b61188593567dc2dae454",
"aarch64-unknown-linux-gnu-0.1.2": "5d4a1e82e78080ba308a06ecc408b3f17a13077dd35174031ed37646a4c24bfd",
"aarch64-unknown-linux-musl-0.1.2": "c869e839347f2fd9e0302d25470659df99918ad8bdfad2477a61393a32d1a361",
"armv7-unknown-linux-gnueabihf-0.1.2": "67f6d19583bb24d628c6d3a97fd412a81b0f15f88491b6b244cda2832365d3a3",
"armv7-unknown-linux-musleabihf-0.1.2": "7acbfaef69adffb9591766c1e6b25b5750ddac8c43bded8b8b6301852b3bb436",
"i686-pc-windows-msvc-0.1.2": "7c923a8c0198da91094c96fe9bf9f737e09aa67f569b5c0f76b5f492b9394190",
"i686-unknown-linux-gnu-0.1.2": "d5462c8746aaf8f36ca43829c6bc71f8ad303bec83d9173f44e1a3ad36d83871",
"i686-unknown-linux-musl-0.1.2": "aa85ccbac61b7e8153dd7239f9757ca3a95fb01d0782949f554fd88a396edb29",
"powerpc64-unknown-linux-gnu-0.1.2": "4055b1ce30f7786fa49fcc9dd7eb3b818aa8903930fc49a42dd11ce99507f8d9",
"powerpc64le-unknown-linux-gnu-0.1.2": "d36b4d8c78ad8816a760f2d888d52c732b2eae5d62fc0830e6918a0732361c96",
"s390x-unknown-linux-gnu-0.1.2": "5829510eb1684d2f0f58ddab2e80313e5858d5e5be6e315b9b9a74c9742f6fac",
"x86_64-apple-darwin-0.1.2": "20777b7f904ec9cf7e4f7ee19fe8a0b64afada1a7168908c14557130768f46b7",
"x86_64-pc-windows-msvc-0.1.2": "35b7fdb10fad5e644125bfb3d7f5aff83d9aca24268701359e9fef767b8a4a15",
"x86_64-unknown-linux-gnu-0.1.2": "89624cd11aa20bc4a841bdcb110940ecb9f05555d79c3f8f4758e34d76c5c7ca",
"x86_64-unknown-linux-musl-0.1.2": "f69cbd79dfea3bd69c4db064565f9eaebb86db2c0ba0609c090be86366d5db42",
"aarch64-apple-darwin-0.1.1": "ff595133104cd486c7d852f68d5fa82bafddc7cedcc5087432fd55f0681af89a",
"aarch64-unknown-linux-gnu-0.1.1": "4919f30de5b5321df003f4c73cd8d43e6d1b28da2050e221e7b574398a6c48d8",
"aarch64-unknown-linux-musl-0.1.1": "1a4382a0e417658c531ad4377f3d2ef95c55cd0bf52b9e854b7a46dc7ba679fe",
"armv7-unknown-linux-gnueabihf-0.1.1": "96f169f7bbc78bcef25f4a36ec51baf9cf2ecb4f3628267ca1cba780e9f4434a",
"armv7-unknown-linux-musleabihf-0.1.1": "581d354ec9b3504a133863e2a7ffde8bec2cce12f13e9fffed8f8bcfb28e2a24",
"i686-pc-windows-msvc-0.1.1": "f8abfe07f7c80e6f0b0bc41b827735e6342bfa14ef302195b23d9d548a3e4827",
"i686-unknown-linux-gnu-0.1.1": "b976191b1a507b709e95efee48befbf41df0e31cb882a07d4c9a928070985a68",
"i686-unknown-linux-musl-0.1.1": "ee9702c41ad0606c5b811b62acdbc5a82d814ddcf90b6d9e4f337ac6d5692f97",
"powerpc64-unknown-linux-gnu-0.1.1": "62cbd638e66db9eddfe05a4d21eb9b3c611b81f8f941c0b93bd8e4c0adb80426",
"powerpc64le-unknown-linux-gnu-0.1.1": "b0b8107d6f18c9ddfb287a5f25ff01c6b9505aae1e1001be19acfa0c0b024799",
"s390x-unknown-linux-gnu-0.1.1": "5b50e4cadb4e5ab9f2022c976f41c171fb92c4ed57b3366d8b89397d0de4735b",
"x86_64-apple-darwin-0.1.1": "dde96aad74a1abd6ba3440eceebca2a5c9f29aecf9178dda0b10d1177cfa3a8d",
"x86_64-pc-windows-msvc-0.1.1": "2f47b60169f343f0ee64cda77392aab96b77444e52b2e800d881263f33630abe",
"x86_64-unknown-linux-gnu-0.1.1": "f9d426e72ae4fccb849cef5e944ab8391accde203966f6e309dcc2505379f341",
"x86_64-unknown-linux-musl-0.1.1": "05fbfb6d1f46b2fda2bbb916b5e0c5e396dc01e8f5b14cc2a9b46f427539a380",
"aarch64-apple-darwin-0.1.0": "955d8dcb920b0a544f3595ebf35b813912fefedf4e18f8ac6a984a0532f9e35e",
"aarch64-unknown-linux-gnu-0.1.0": "fbd2a9edbe98517ba8eb89e8650a411498b5da7b5e6470f3a0cd072bd31f7b79",
"aarch64-unknown-linux-musl-0.1.0": "492c26b75153aefae58a2f81f4582dc20e2c7b686b284dbb085a7bc0a6270430",
"armv7-unknown-linux-gnueabihf-0.1.0": "674bf524bcd8b6ed0b9ed42873bcf18af09352ea91777ecec1f1c6bc174f9837",
"armv7-unknown-linux-musleabihf-0.1.0": "8cfbe423184a860e805dc1b7a2df7b390e0c605cea77ad8dacd8968fca650a41",
"i686-pc-windows-msvc-0.1.0": "75ae72a862cf609e2141eb5fbd8206cae861e9368c27eff72f34911739cb4a3e",
"i686-unknown-linux-gnu-0.1.0": "961e44ac4d75e10f64154dcdefa40650767727fba08d73de140b8bb071db0918",
"i686-unknown-linux-musl-0.1.0": "7db329f27696a0ea70cf36ea6a437eac6ac8740a462d130af1c96fa5c5ae7539",
"powerpc64-unknown-linux-gnu-0.1.0": "0b5996241dbd3c774bbd76fbb682496367773871787132e3a917f251419ff647",
"powerpc64le-unknown-linux-gnu-0.1.0": "2d53a5bdf82f26702d5e8db20981b048265040fde49e3e5f1bc8add56ca72ff4",
"s390x-unknown-linux-gnu-0.1.0": "d9ea9847f045366b428e679d9e44ccce53119f9ed6b2bd167563ef865097695a",
"x86_64-apple-darwin-0.1.0": "e8e386f588f8fb1a51e309e89da771febda1dc34e99fce5ebf042211389e7c01",
"x86_64-pc-windows-msvc-0.1.0": "d9a55a65d761831e073a9461a3d5f4462203e991b814522f27dad12ddfab0183",
"x86_64-unknown-linux-gnu-0.1.0": "43a5253b18dee80d3e259dc0df39db39728296d0a506ab89974d3fc15d8e3a16",
"x86_64-unknown-linux-musl-0.1.0": "9caa5b457d1adbd30b28444bfccb6c789702e3bb260e286d8f3278bd0cb02af6",
"aarch64-apple-darwin-0.0.5": "887f58afbcdb879bcb07a0d5f99106a10b8023d4b104882627a93798629c7ed8",
"aarch64-unknown-linux-gnu-0.0.5": "ac9aa3b0ecb1655baafe87be9fdc6e4f904fc7856779e292e8d55d679867f033",
"aarch64-unknown-linux-musl-0.0.5": "e7ae701ed98ccbe51ef07345c9721b73afac8e68d0c95f9739e2eb367856bf15",
"armv7-unknown-linux-gnueabihf-0.0.5": "697804a6c83cf1fcfad284baaf72a7a5d03228759aefeccc191a4ed4d6e2ff89",
"armv7-unknown-linux-musleabihf-0.0.5": "23d2fa787666ed1b4418d584758789805d0954e36e221ec9d58376b5630d3fcc",
"i686-pc-windows-msvc-0.0.5": "ba05493ffbb4b848ac333278471f119c58bff3ff56a4de9c98449c3cde5b27d4",
"i686-unknown-linux-gnu-0.0.5": "b867363feedcce39bb6935ad12a597e6474280f69b6c759cc0ee00d0d9859427",
"i686-unknown-linux-musl-0.0.5": "40e56b614a64d0b2001738f41808f543cd3e43a0bcc4df70d4c28b92376ddf84",
"powerpc64-unknown-linux-gnu-0.0.5": "0742fd23ced7fafba5ecd580bd47dacd5613acf4b962385909032f1f6d484cb7",
"powerpc64le-unknown-linux-gnu-0.0.5": "a7f847c0490388a9f970559ff88f935d83373efda94f9db260cec26aa85f11a8",
"s390x-unknown-linux-gnu-0.0.5": "27fd1a54606ee68d07d5acd2a6000497f43fb1b87203a0c0c92da9cc77007c74",
"x86_64-apple-darwin-0.0.5": "9a62a8b6d8cefb8716aae62e1deb34df18b4fa6cfc5069c5ef645193c5a9f6c6",
"x86_64-pc-windows-msvc-0.0.5": "952e3e9ca0e88ad49c516ddaaa6625b0f818b34d83b3ff65f7557c3e07d90c2d",
"x86_64-unknown-linux-gnu-0.0.5": "c0f3bc450ffac667dd3c12e2fb221177262d60ccac0521797bb4f4fef14cfad3",
"x86_64-unknown-linux-musl-0.0.5": "705bbe04a93a9d4d9db5224c2f980a88bba272538a33a78ea2e966f46b4d5eb7"
}
File diff suppressed because it is too large Load Diff
+23
View File
@@ -0,0 +1,23 @@
import * as semver from "semver";
import { KNOWN_CHECKSUMS } from "./known-checksums";
const VERSION_IN_CHECKSUM_KEY_PATTERN =
/-(\d+\.\d+\.\d+(?:[-+][0-9A-Za-z.-]+)?)$/;
export function getLatestKnownVersion(): string {
const versions = new Set<string>();
for (const key of Object.keys(KNOWN_CHECKSUMS)) {
const version = key.match(VERSION_IN_CHECKSUM_KEY_PATTERN)?.[1];
if (version !== undefined) {
versions.add(version);
}
}
const latestVersion = [...versions].sort(semver.rcompare)[0];
if (!latestVersion) {
throw new Error("Could not determine latest known version from checksums.");
}
return latestVersion;
}
@@ -19,16 +19,7 @@ export async function updateChecksums(
deduplicatedEntries.set(entry.key, entry.checksum);
}
const body = [...deduplicatedEntries.entries()]
.map(([key, checksum]) => ` "${key}":\n "${checksum}"`)
.join(",\n");
const content =
"// AUTOGENERATED_DO_NOT_EDIT\n" +
"export const KNOWN_CHECKSUMS: { [key: string]: string } = {\n" +
body +
(body === "" ? "" : ",\n") +
"};\n";
const content = `${JSON.stringify(Object.fromEntries(deduplicatedEntries), null, 2)}\n`;
await fs.writeFile(filePath, content);
}
+15 -3
View File
@@ -47,12 +47,14 @@ export async function downloadVersion(
);
}
// For the default astral-sh/versions source, checksum validation relies on
// user input or the built-in KNOWN_CHECKSUMS table, not manifest sha256 values.
// Custom manifests are explicitly selected by the user, so their checksum
// takes precedence over the built-in table. For the default manifest, pass
// its checksum as a fallback after user input and KNOWN_CHECKSUMS.
const resolvedChecksum =
manifestUrl === undefined
? checksum
: resolveChecksum(checksum, artifact.checksum);
const manifestChecksum = artifact.checksum;
const mirrorUrl = downloadFromAstralMirror
? rewriteToMirror(artifact.downloadUrl)
@@ -67,6 +69,7 @@ export async function downloadVersion(
arch,
version,
resolvedChecksum,
manifestChecksum,
githubTokenForUrl(downloadUrl, githubToken),
);
} catch (err) {
@@ -85,6 +88,7 @@ export async function downloadVersion(
arch,
version,
resolvedChecksum,
manifestChecksum,
githubTokenForUrl(artifact.downloadUrl, githubToken),
);
}
@@ -122,6 +126,7 @@ async function downloadArtifact(
arch: Architecture,
version: string,
checksum: string | undefined,
manifestChecksum: string | undefined,
githubToken: string | undefined,
): Promise<{ version: string; cachedToolDir: string }> {
log.info(`Downloading uv from "${downloadUrl}" ...`);
@@ -130,7 +135,14 @@ async function downloadArtifact(
undefined,
githubToken,
);
await validateChecksum(checksum, downloadPath, arch, platform, version);
await validateChecksum(
checksum,
downloadPath,
arch,
platform,
version,
manifestChecksum,
);
let uvDir: string;
if (platform === "pc-windows-msvc") {
+21 -2
View File
@@ -31,6 +31,7 @@ interface CachedManifest {
}
const cachedManifestData = new Map<string, CachedManifest>();
export const MANIFEST_FETCH_ATTEMPTS = 3;
export async function fetchManifest(
manifestUrl: string = VERSIONS_MANIFEST_URL,
@@ -166,8 +167,26 @@ export function clearManifestCache(manifestUrl?: string): void {
}
async function fetchManifestResponse(manifestUrl: string) {
log.info(`Fetching manifest data from ${manifestUrl} ...`);
const response = await fetch(manifestUrl, {});
let response: Awaited<ReturnType<typeof fetch>> | undefined;
for (let attempt = 1; attempt <= MANIFEST_FETCH_ATTEMPTS; attempt++) {
log.info(`Fetching manifest data from ${manifestUrl} ...`);
try {
response = await fetch(manifestUrl, {});
break;
} catch (error) {
if (attempt >= MANIFEST_FETCH_ATTEMPTS) {
throw error;
}
const delayMs = 1_000 * 2 ** (attempt - 1);
log.info(`Manifest fetch failed; retrying in ${delayMs}ms ...`);
await new Promise((resolve) => setTimeout(resolve, delayMs));
}
}
if (response === undefined) {
throw new Error("Manifest fetch attempts exhausted.");
}
if (!response.ok) {
throw new Error(
`Failed to fetch manifest data: ${response.status} ${response.statusText}`,
+8
View File
@@ -16,6 +16,8 @@ import {
getPlatform,
type Platform,
} from "./utils/platforms";
import { setupPythonArch } from "./utils/python-arch";
import { getPythonRuntimeId } from "./utils/python-runtime";
import { resolveUvVersion } from "./version/resolve";
const sourceDir = __dirname;
@@ -85,6 +87,11 @@ async function run(): Promise<void> {
throw new Error(`Unsupported architecture: ${process.arch}`);
}
const setupResult = await setupUv(inputs, platform, arch);
const uvPath = path.join(
setupResult.uvDir,
process.platform === "win32" ? "uv.exe" : "uv",
);
await setupPythonArch(uvPath, inputs.pythonArch, inputs.exportPythonArch);
addToolBinToPath(inputs);
addUvToPathAndOutput(setupResult.uvDir);
@@ -101,6 +108,7 @@ async function run(): Promise<void> {
const detectedPythonVersion = await getPythonVersion(inputs);
core.setOutput("python-version", detectedPythonVersion);
core.setOutput("python-runtime-id", await getPythonRuntimeId(inputs));
if (inputs.enableCache) {
await restoreCache(inputs, detectedPythonVersion);
+2 -27
View File
@@ -1,6 +1,6 @@
import * as core from "@actions/core";
import * as semver from "semver";
import { KNOWN_CHECKSUMS } from "./download/checksum/known-checksums";
import { getLatestKnownVersion } from "./download/checksum/known-version";
import {
type ChecksumEntry,
updateChecksums,
@@ -12,9 +12,6 @@ import {
} from "./download/manifest";
import * as log from "./utils/logging";
const VERSION_IN_CHECKSUM_KEY_PATTERN =
/-(\d+\.\d+\.\d+(?:[-+][0-9A-Za-z.-]+)?)$/;
async function run(): Promise<void> {
const checksumFilePath = process.argv.slice(2)[0];
if (!checksumFilePath) {
@@ -24,7 +21,7 @@ async function run(): Promise<void> {
}
const latestVersion = await getLatestVersion();
const latestKnownVersion = getLatestKnownVersionFromChecksums();
const latestKnownVersion = getLatestKnownVersion();
if (semver.lte(latestVersion, latestKnownVersion)) {
log.info(
@@ -40,28 +37,6 @@ async function run(): Promise<void> {
core.setOutput("latest-version", latestVersion);
}
function getLatestKnownVersionFromChecksums(): string {
const versions = new Set<string>();
for (const key of Object.keys(KNOWN_CHECKSUMS)) {
const version = extractVersionFromChecksumKey(key);
if (version !== undefined) {
versions.add(version);
}
}
const latestVersion = [...versions].sort(semver.rcompare)[0];
if (!latestVersion) {
throw new Error("Could not determine latest known version from checksums.");
}
return latestVersion;
}
function extractVersionFromChecksumKey(key: string): string | undefined {
return key.match(VERSION_IN_CHECKSUM_KEY_PATTERN)?.[1];
}
function extractChecksumsFromManifest(
versions: ManifestVersion[],
): ChecksumEntry[] {
+6 -16
View File
@@ -1,18 +1,8 @@
import { ProxyAgent, type RequestInit, fetch as undiciFetch } from "undici";
export function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_proxy;
if (httpProxy) {
return new ProxyAgent(httpProxy);
}
const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
if (httpsProxy) {
return new ProxyAgent(httpsProxy);
}
return undefined;
}
import {
EnvHttpProxyAgent,
type RequestInit,
fetch as undiciFetch,
} from "undici";
export const fetch = async (url: string, opts: RequestInit) => {
// Merge timeout signal with any existing signal from opts
@@ -23,7 +13,7 @@ export const fetch = async (url: string, opts: RequestInit) => {
: timeoutSignal;
return await undiciFetch(url, {
dispatcher: getProxyAgent(),
dispatcher: new EnvHttpProxyAgent(),
...opts,
signal: mergedSignal,
});
+66 -3
View File
@@ -1,5 +1,7 @@
import fs from "node:fs";
import path from "node:path";
import * as core from "@actions/core";
import { getPythonVersionFromToolVersions } from "../version/tool-versions-file";
import { getConfigValueFromTomlFile } from "./config-file";
import * as log from "./logging";
@@ -22,6 +24,8 @@ export interface SetupInputs {
version: string;
versionFile: string;
pythonVersion: string;
pythonArch: string;
exportPythonArch: boolean;
activateEnvironment: boolean;
noProject: boolean;
venvPath: string;
@@ -51,14 +55,17 @@ export function loadInputs(): SetupInputs {
const workingDirectory = core.getInput("working-directory");
const version = core.getInput("version");
const versionFile = getVersionFile(workingDirectory);
const pythonVersion = core.getInput("python-version");
const pythonVersion = getPythonVersion(versionFile);
const pythonArchInput = core.getInput("python-arch");
const pythonArch = pythonArchInput || process.env.UV_PYTHON_ARCH || "";
const exportPythonArch = pythonArchInput !== "";
const activateEnvironment = core.getBooleanInput("activate-environment");
const noProject = core.getBooleanInput("no-project");
const venvPath = getVenvPath(workingDirectory, activateEnvironment);
const checksum = core.getInput("checksum");
const enableCache = getEnableCache();
const restoreCache = core.getInput("restore-cache") === "true";
const saveCache = core.getInput("save-cache") === "true";
const saveCache = getSaveCache();
const cacheSuffix = core.getInput("cache-suffix") || "";
const cacheLocalPath = getCacheLocalPath(
workingDirectory,
@@ -92,12 +99,14 @@ export function loadInputs(): SetupInputs {
checksum,
downloadFromAstralMirror,
enableCache,
exportPythonArch,
githubToken,
ignoreEmptyWorkdir,
ignoreNothingToCache,
manifestFile,
noProject,
pruneCache,
pythonArch,
pythonDir,
pythonVersion,
quiet,
@@ -122,6 +131,28 @@ function getVersionFile(workingDirectory: string): string {
return versionFileInput;
}
function getPythonVersion(versionFile: string): string {
const pythonVersionInput = core.getInput("python-version");
if (pythonVersionInput !== "") {
return pythonVersionInput;
}
if (process.env.UV_PYTHON !== undefined && process.env.UV_PYTHON !== "") {
return "";
}
if (versionFile === "" || !fs.existsSync(versionFile)) {
return "";
}
try {
return getPythonVersionFromToolVersions(versionFile) ?? "";
} catch (err) {
log.warning(
`Error while parsing Python version from ${versionFile}: ${(err as Error).message}`,
);
return "";
}
}
function getVenvPath(
workingDirectory: string,
activateEnvironment: boolean,
@@ -140,11 +171,43 @@ function getVenvPath(
function getEnableCache(): boolean {
const enableCacheInput = core.getInput("enable-cache");
if (enableCacheInput === "auto") {
return process.env.RUNNER_ENVIRONMENT === "github-hosted";
if (process.env.RUNNER_ENVIRONMENT !== "github-hosted") {
return false;
}
const eventName = process.env.GITHUB_EVENT_NAME;
const isTagPush =
eventName === "push" && process.env.GITHUB_REF?.startsWith("refs/tags/");
if (isTagPush) {
log.info("Caching is disabled for tag pushes");
return false;
}
if (
eventName === "pull_request_target" ||
eventName === "workflow_run" ||
eventName === "release"
) {
log.info(`Caching is disabled for the ${eventName} event`);
return false;
}
return true;
}
return enableCacheInput === "true";
}
function getSaveCache(): boolean {
const saveCacheInput = core.getInput("save-cache");
if (saveCacheInput === "auto") {
if (process.env.GITHUB_EVENT_NAME === "merge_group") {
log.info("Cache saving is disabled for the merge_group event");
return false;
}
return true;
}
return saveCacheInput === "true";
}
function getToolBinDir(workingDirectory: string): string | undefined {
const toolBinDirInput = core.getInput("tool-bin-dir");
if (toolBinDirInput !== "") {
+75
View File
@@ -0,0 +1,75 @@
import { execFile } from "node:child_process";
import { promisify } from "node:util";
import * as core from "@actions/core";
import * as log from "./logging";
const execFileAsync = promisify(execFile);
const PROBE_ARCH = "setup-uv-probe";
export async function setupPythonArch(
uvPath: string,
pythonArch: string,
exportPythonArch: boolean,
): Promise<void> {
if (pythonArch === "") {
return;
}
// Older uv releases ignore unknown environment variables. An invalid architecture
// confirms that uv recognizes UV_PYTHON_ARCH without finding or downloading Python.
const probe = await queryPythonArch(uvPath, PROBE_ARCH);
if (probe.exitCode === 0) {
throw new Error(
"The installed version of uv does not support UV_PYTHON_ARCH. Select a newer uv version or use an architecture-qualified python-version.",
);
}
if (
!probe.stderr.includes(
`environment variable \`UV_PYTHON_ARCH\` with invalid value \`${PROBE_ARCH}\``,
)
) {
throw new Error(
`Failed to check uv's support for UV_PYTHON_ARCH: ${probe.stderr.trim() || `uv exited with code ${probe.exitCode}`}`,
);
}
const selected = await queryPythonArch(uvPath, pythonArch);
if (selected.exitCode !== 0) {
throw new Error(
`Failed to set Python architecture to ${pythonArch}: ${selected.stderr.trim() || `uv exited with code ${selected.exitCode}`}`,
);
}
if (exportPythonArch) {
core.exportVariable("UV_PYTHON_ARCH", pythonArch);
log.info(`Set UV_PYTHON_ARCH to ${pythonArch}`);
}
}
async function queryPythonArch(
uvPath: string,
pythonArch: string,
): Promise<{ exitCode: number; stderr: string }> {
try {
const { stderr } = await execFileAsync(
uvPath,
["--no-config", "cache", "dir"],
{
encoding: "utf8",
env: { ...process.env, NO_COLOR: "1", UV_PYTHON_ARCH: pythonArch },
},
);
return { exitCode: 0, stderr };
} catch (error) {
if (
error instanceof Error &&
"code" in error &&
typeof error.code === "number" &&
"stderr" in error &&
typeof error.stderr === "string"
) {
return { exitCode: error.code, stderr: error.stderr };
}
throw error;
}
}
+43
View File
@@ -0,0 +1,43 @@
import { execFile } from "node:child_process";
import { promisify } from "node:util";
import type { SetupInputs } from "./inputs";
const execFileAsync = promisify(execFile);
export async function getPythonRuntimeId(inputs: SetupInputs): Promise<string> {
if (!inputs.activateEnvironment) {
return "";
}
try {
// The venv path restricts results to this invocation's runtime, even if
// earlier setup-uv calls installed other Python versions in the same job.
const { stdout } = await execFileAsync(
"uv",
[
"python",
"list",
inputs.venvPath,
"--only-installed",
"--output-format",
"json",
],
{ encoding: "utf8" },
);
const pythons = JSON.parse(stdout);
if (
!Array.isArray(pythons) ||
pythons.length !== 1 ||
typeof pythons[0]?.key !== "string" ||
pythons[0].key === ""
) {
throw new Error("Expected one installed Python with a runtime key");
}
return pythons[0].key;
} catch (error) {
throw new Error(
`Failed to identify the activated environment's Python runtime: ${error instanceof Error ? error.message : String(error)}`,
{ cause: error },
);
}
}
+5
View File
@@ -2,6 +2,7 @@ import * as core from "@actions/core";
import * as tc from "@actions/tool-cache";
import * as pep440 from "@renovatebot/pep440";
import * as semver from "semver";
import { getLatestKnownVersion } from "../download/checksum/known-version";
import {
getAllVersions,
getFirstMatchingVersion,
@@ -143,6 +144,10 @@ export async function resolveVersion(
): Promise<string> {
core.debug(`Resolving version: ${versionInput}`);
if (versionInput.trim() === "latest-known") {
return getLatestKnownVersion();
}
const context: ConcreteVersionResolutionContext = {
manifestUrl,
parsedSpecifier: parseVersionSpecifier(versionInput),
+69 -14
View File
@@ -4,28 +4,83 @@ import * as core from "@actions/core";
export function getUvVersionFromToolVersions(
filePath: string,
): string | undefined {
const versions = getToolVersions(filePath, "uv");
if (versions === undefined || versions.length !== 1) {
return undefined;
}
const version = stripVersionPrefix(versions[0]);
if (isPath(version)) {
core.warning(
`The uv version ${versions[0]} in .tool-versions is not supported. Paths are not allowed.`,
);
return undefined;
}
if (version.startsWith("ref")) {
core.warning(
"The ref syntax of .tool-versions is not supported. Please use a released version instead.",
);
return undefined;
}
return version;
}
export function getPythonVersionFromToolVersions(
filePath: string,
): string | undefined {
const versions = getToolVersions(filePath, "python");
if (versions === undefined || versions.length === 0) {
return undefined;
}
if (versions.length > 1) {
core.warning(
"Multiple Python versions in .tool-versions are not supported. The Python entry will be ignored.",
);
return undefined;
}
const version = stripVersionPrefix(versions[0]);
if (
version === "system" ||
version.startsWith("ref:") ||
version.startsWith("path:") ||
isPath(version)
) {
core.warning(
`The Python version ${versions[0]} in .tool-versions is not supported. The Python entry will be ignored.`,
);
return undefined;
}
return version;
}
function getToolVersions(
filePath: string,
toolName: string,
): string[] | undefined {
if (!filePath.endsWith(".tool-versions")) {
return undefined;
}
const fileContents = fs.readFileSync(filePath, "utf8");
const lines = fileContents.split("\n");
for (const line of lines) {
// Skip commented lines
if (line.trim().startsWith("#")) {
for (const line of fileContents.split("\n")) {
const content = line.split("#", 1)[0].trim();
if (content === "") {
continue;
}
const match = line.match(/^\s*uv\s*v?\s*(?<version>[^\s]+)\s*$/);
if (match) {
const matchedVersion = match.groups?.version.trim();
if (matchedVersion?.startsWith("ref")) {
core.warning(
"The ref syntax of .tool-versions is not supported. Please use a released version instead.",
);
return undefined;
}
return matchedVersion;
const [tool, ...versions] = content.split(/\s+/);
if (tool === toolName) {
return versions;
}
}
return undefined;
}
function stripVersionPrefix(version: string): string {
return version.startsWith("v") ? version.slice(1) : version;
}
function isPath(version: string): boolean {
return version.includes("/") || version.includes("\\");
}
+1
View File
@@ -5,6 +5,7 @@
"module": "esnext",
"moduleResolution": "bundler",
"noImplicitAny": true,
"resolveJsonModule": true,
"strict": true,
"target": "ES2022"
},