mirror of
https://github.com/astral-sh/setup-uv.git
synced 2025-12-15 11:07:14 +00:00
Compare commits
48 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3b9817b1bf | ||
|
|
cf841c25e2 | ||
|
|
864c48a352 | ||
|
|
64311bdf43 | ||
|
|
59604e6118 | ||
|
|
260f4a22de | ||
|
|
273d3782a2 | ||
|
|
ed0a39790e | ||
|
|
2d11fcb2c1 | ||
|
|
a714a3589c | ||
|
|
59ca521371 | ||
|
|
f3bcaebff5 | ||
|
|
10d8740fc2 | ||
|
|
f731690a1d | ||
|
|
77c28f02b3 | ||
|
|
00c695b84c | ||
|
|
2422c84f47 | ||
|
|
680950fd0f | ||
|
|
c9aa747934 | ||
|
|
97dc6041e9 | ||
|
|
c11f8674f8 | ||
|
|
023eb7875f | ||
|
|
315da29189 | ||
|
|
4cda7d7332 | ||
|
|
8114e5e81b | ||
|
|
7ee921e18a | ||
|
|
8c3a35e468 | ||
|
|
abac0ce7b0 | ||
|
|
03e245b158 | ||
|
|
aeb46491c7 | ||
|
|
dbb680fbd2 | ||
|
|
8de9ba90a2 | ||
|
|
118bd876d2 | ||
|
|
adcf5c892e | ||
|
|
0c326cbd51 | ||
|
|
8205eab75b | ||
|
|
ce0062aac7 | ||
|
|
8e09161b4b | ||
|
|
bf2778f5d6 | ||
|
|
223591d242 | ||
|
|
79fb68ebfe | ||
|
|
9f1f1fece2 | ||
|
|
6343f7c79b | ||
|
|
bfea2a2a76 | ||
|
|
8d65000ec9 | ||
|
|
4456fa154a | ||
|
|
8af341e206 | ||
|
|
6beca84284 |
@@ -1,4 +0,0 @@
|
||||
dist/
|
||||
lib/
|
||||
node_modules/
|
||||
jest.config.js
|
||||
@@ -1,61 +0,0 @@
|
||||
{
|
||||
"plugins": ["jest", "@typescript-eslint"],
|
||||
"extends": ["plugin:github/recommended"],
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 9,
|
||||
"sourceType": "module",
|
||||
"project": "./tsconfig.json"
|
||||
},
|
||||
"rules": {
|
||||
"no-shadow": "off",
|
||||
"@typescript-eslint/no-shadow": ["error"],
|
||||
"i18n-text/no-en": "off",
|
||||
"eslint-comments/no-use": "off",
|
||||
"import/no-namespace": "off",
|
||||
"no-unused-vars": "off",
|
||||
"@typescript-eslint/no-unused-vars": "error",
|
||||
"@typescript-eslint/explicit-member-accessibility": [
|
||||
"error",
|
||||
{ "accessibility": "no-public" }
|
||||
],
|
||||
"@typescript-eslint/no-require-imports": "error",
|
||||
"@typescript-eslint/array-type": "error",
|
||||
"@typescript-eslint/await-thenable": "error",
|
||||
"@typescript-eslint/ban-ts-comment": "error",
|
||||
"camelcase": "off",
|
||||
"@typescript-eslint/consistent-type-assertions": "error",
|
||||
"@typescript-eslint/explicit-function-return-type": [
|
||||
"error",
|
||||
{ "allowExpressions": true }
|
||||
],
|
||||
"@typescript-eslint/func-call-spacing": ["error", "never"],
|
||||
"@typescript-eslint/no-array-constructor": "error",
|
||||
"@typescript-eslint/no-empty-interface": "error",
|
||||
"@typescript-eslint/no-explicit-any": "error",
|
||||
"@typescript-eslint/no-extraneous-class": "error",
|
||||
"@typescript-eslint/no-for-in-array": "error",
|
||||
"@typescript-eslint/no-inferrable-types": "error",
|
||||
"@typescript-eslint/no-misused-new": "error",
|
||||
"@typescript-eslint/no-namespace": "error",
|
||||
"@typescript-eslint/no-non-null-assertion": "warn",
|
||||
"@typescript-eslint/no-unnecessary-qualifier": "error",
|
||||
"@typescript-eslint/no-unnecessary-type-assertion": "error",
|
||||
"@typescript-eslint/no-useless-constructor": "error",
|
||||
"@typescript-eslint/no-var-requires": "error",
|
||||
"@typescript-eslint/prefer-for-of": "warn",
|
||||
"@typescript-eslint/prefer-function-type": "warn",
|
||||
"@typescript-eslint/prefer-includes": "error",
|
||||
"@typescript-eslint/prefer-string-starts-ends-with": "error",
|
||||
"@typescript-eslint/promise-function-async": "error",
|
||||
"@typescript-eslint/require-array-sort-compare": "error",
|
||||
"@typescript-eslint/restrict-plus-operands": "error",
|
||||
"@typescript-eslint/type-annotation-spacing": "error",
|
||||
"@typescript-eslint/unbound-method": "error"
|
||||
},
|
||||
"env": {
|
||||
"node": true,
|
||||
"es6": true,
|
||||
"jest/globals": true
|
||||
}
|
||||
}
|
||||
4
.github/workflows/test-cache.yml
vendored
4
.github/workflows/test-cache.yml
vendored
@@ -89,7 +89,7 @@ jobs:
|
||||
CACHE_HIT: ${{ steps.restore.outputs.cache-hit }}
|
||||
|
||||
test-setup-cache-local:
|
||||
runs-on: oracle-aarch64
|
||||
runs-on: selfhosted-ubuntu-arm64
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Setup with cache
|
||||
@@ -101,7 +101,7 @@ jobs:
|
||||
- run: uv sync
|
||||
working-directory: __tests__/fixtures/uv-project
|
||||
test-restore-cache-local:
|
||||
runs-on: oracle-aarch64
|
||||
runs-on: selfhosted-ubuntu-arm64
|
||||
needs: test-setup-cache-local
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
52
.github/workflows/test.yml
vendored
52
.github/workflows/test.yml
vendored
@@ -21,11 +21,14 @@ jobs:
|
||||
npm install
|
||||
- run: |
|
||||
npm run all
|
||||
- name: Make sure no changes from linters are detected
|
||||
run: |
|
||||
git diff --exit-code
|
||||
test-default-version:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest, macos-14, oracle-aarch64]
|
||||
os: [ubuntu-latest, macos-latest, macos-14, selfhosted-ubuntu-arm64]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install default version
|
||||
@@ -36,8 +39,8 @@ jobs:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest, macos-14, oracle-aarch64]
|
||||
uv-version: ["latest", "0.3.0", "0.3.2"]
|
||||
os: [ubuntu-latest, macos-latest, macos-14, selfhosted-ubuntu-arm64]
|
||||
uv-version: ["latest", "0.3.0", "0.3.2", "0.3", "0.3.x", ">=0.3.0"]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install version ${{ matrix.uv-version }}
|
||||
@@ -46,18 +49,37 @@ jobs:
|
||||
version: ${{ matrix.uv-version }}
|
||||
- run: uv sync
|
||||
working-directory: __tests__/fixtures/uv-project
|
||||
test-semver-range:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, selfhosted-ubuntu-arm64]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install version 0.3
|
||||
id: setup-uv
|
||||
uses: ./
|
||||
with:
|
||||
version: "0.3"
|
||||
- name: Correct version gets installed
|
||||
run: |
|
||||
if [ "$UV_VERSION" != "0.3.5" ]; then
|
||||
exit 1
|
||||
fi
|
||||
env:
|
||||
UV_VERSION: ${{ steps.setup-uv.outputs.uv-version }}
|
||||
test-checksum:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, oracle-aarch64]
|
||||
os: [ubuntu-latest, selfhosted-ubuntu-arm64]
|
||||
checksum:
|
||||
["4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd"]
|
||||
exclude:
|
||||
- os: oracle-aarch64
|
||||
- os: selfhosted-ubuntu-arm64
|
||||
checksum: "4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd"
|
||||
include:
|
||||
- os: oracle-aarch64
|
||||
- os: selfhosted-ubuntu-arm64
|
||||
checksum: "e11b01402ab645392c7ad6044db63d37e4fd1e745e015306993b07695ea5f9f8"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -83,3 +105,21 @@ jobs:
|
||||
- name: Install default version
|
||||
uses: ./
|
||||
- run: uvx ruff --version
|
||||
test-tool-install:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
[
|
||||
ubuntu-latest,
|
||||
macos-latest,
|
||||
macos-14,
|
||||
windows-latest,
|
||||
selfhosted-ubuntu-arm64,
|
||||
]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install default version
|
||||
uses: ./
|
||||
- run: uv tool install ruff
|
||||
- run: ruff --version
|
||||
|
||||
2
.github/workflows/update-known-checksums.yml
vendored
2
.github/workflows/update-known-checksums.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
||||
src/download/checksum/known-checksums.ts ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: npm install && npm run all
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@d121e62763d8cc35b5fb1710e887d6e69a52d3a4 # v7.0.2
|
||||
uses: peter-evans/create-pull-request@5e914681df9dc83aa4e4905692ca88beb2f9e91f # v7.0.5
|
||||
with:
|
||||
commit-message: "chore: update known checksums"
|
||||
title:
|
||||
|
||||
5
.gitignore
vendored
5
.gitignore
vendored
@@ -96,4 +96,7 @@ Thumbs.db
|
||||
|
||||
# Ignore built ts files
|
||||
__tests__/runner/*
|
||||
lib/**/*
|
||||
lib/**/*
|
||||
|
||||
# Idea IDEs (PyCharm, WebStorm, IntelliJ, etc)
|
||||
.idea/
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
dist/
|
||||
lib/
|
||||
node_modules/
|
||||
@@ -1,4 +0,0 @@
|
||||
{
|
||||
"trailingComma": "all",
|
||||
"proseWrap": "always"
|
||||
}
|
||||
168
README.md
168
README.md
@@ -11,13 +11,16 @@ Set up your GitHub Actions workflow with a specific version of [uv](https://docs
|
||||
## Contents
|
||||
|
||||
- [Usage](#usage)
|
||||
- [Install specific version](#install-specific-version)
|
||||
- [Install latest version](#install-latest-version)
|
||||
- [Install the latest version (default)](#install-the-latest-version-default)
|
||||
- [Install a specific version](#install-a-specific-version)
|
||||
- [Install a version by supplying a semver range](#install-a-version-by-supplying-a-semver-range)
|
||||
- [Validate checksum](#validate-checksum)
|
||||
- [Enable Caching](#enable-caching)
|
||||
- [Local cache path](#local-cache-path)
|
||||
- [Cache dependency glob](#cache-dependency-glob)
|
||||
- [Local cache path](#local-cache-path)
|
||||
- [GitHub authentication token](#github-authentication-token)
|
||||
- [UV_TOOL_DIR](#uv_tool_dir)
|
||||
- [UV_TOOL_BIN_DIR](#uv_tool_bin_dir)
|
||||
- [How it works](#how-it-works)
|
||||
- [FAQ](#faq)
|
||||
|
||||
@@ -27,7 +30,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@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
version: "latest"
|
||||
```
|
||||
@@ -45,20 +48,39 @@ For an example workflow, see
|
||||
|
||||
```yaml
|
||||
- name: Install a specific version of uv
|
||||
uses: astral-sh/setup-uv@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
version: "0.4.4"
|
||||
```
|
||||
|
||||
### Install a version by supplying a semver range
|
||||
|
||||
You can also specify a [semver range](https://github.com/npm/node-semver?tab=readme-ov-file#ranges)
|
||||
to install the latest version that satisfies the range.
|
||||
|
||||
```yaml
|
||||
- name: Install a semver range of uv
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
version: ">=0.4.0"
|
||||
```
|
||||
|
||||
```yaml
|
||||
- name: Pinning a minor version of uv
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
version: "0.4.x"
|
||||
```
|
||||
|
||||
### Validate checksum
|
||||
|
||||
You can also specify a checksum to validate the downloaded file. Checksums up to the default version
|
||||
are automatically verified by this action. The sha265 hashes can be found on the
|
||||
are automatically verified by this action. The sha256 hashes can 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@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
version: "0.3.1"
|
||||
checksum: "e11b01402ab645392c7ad6044db63d37e4fd1e745e015306993b07695ea5f9f8"
|
||||
@@ -67,15 +89,19 @@ are automatically verified by this action. The sha265 hashes can be found on the
|
||||
### Enable caching
|
||||
|
||||
If you enable caching, the [uv cache](https://docs.astral.sh/uv/concepts/cache/) will be cached to
|
||||
the GitHub Actions Cache. This can speed up runs that reuse the cache by several minutes. The cache
|
||||
will always be reused on self-hosted runners.
|
||||
the GitHub Actions Cache. This can speed up runs that reuse the cache by several minutes.
|
||||
|
||||
> [!TIP]
|
||||
>
|
||||
> On self-hosted runners this is usually not needed since the cache generated by uv on the runner's
|
||||
> filesystem is not removed after a run. For more details see [Local cache path](#local-cache-path).
|
||||
|
||||
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@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-suffix: "optional-suffix"
|
||||
@@ -90,54 +116,79 @@ use it in subsequent steps. For example, to use the cache in the above case:
|
||||
run: echo "Cache was restored"
|
||||
```
|
||||
|
||||
#### Local cache path
|
||||
|
||||
If you want to save the cache to a local path other than the default path (`/tmp/setup-uv-cache`),
|
||||
specify the path with the `cache-local-path` input.
|
||||
|
||||
```yaml
|
||||
- name: Define a custom uv cache path
|
||||
uses: astral-sh/setup-uv@v2
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-local-path: "/path/to/cache"
|
||||
```
|
||||
|
||||
#### Cache dependency glob
|
||||
|
||||
If you want to control when the cache is invalidated, specify a glob pattern with the
|
||||
`cache-dependency-glob` input. The cache will be invalidated if any file matching the glob pattern
|
||||
changes. The glob matches files relative to the repository root.
|
||||
|
||||
```yaml
|
||||
- name: Define a cache dependency glob
|
||||
uses: astral-sh/setup-uv@v2
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-dependency-glob: "uv.lock"
|
||||
```
|
||||
> [!NOTE]
|
||||
>
|
||||
> The default is `**/uv.lock`.
|
||||
|
||||
```yaml
|
||||
- name: Define a cache dependency glob
|
||||
uses: astral-sh/setup-uv@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-dependency-glob: "**requirements*.txt"
|
||||
cache-dependency-glob: "**/requirements*.txt"
|
||||
```
|
||||
|
||||
```yaml
|
||||
- name: Define a list of cache dependency globs
|
||||
uses: astral-sh/setup-uv@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-dependency-glob: |
|
||||
**requirements*.txt
|
||||
**pyproject.toml
|
||||
**/requirements*.txt
|
||||
**/pyproject.toml
|
||||
```
|
||||
|
||||
```yaml
|
||||
- name: Never invalidate the cache
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-dependency-glob: ""
|
||||
```
|
||||
|
||||
### Local cache path
|
||||
|
||||
This action controls where uv stores its cache on the runner's filesystem by setting `UV_CACHE_DIR`.
|
||||
It defaults to `setup-uv-cache` in the `TMP` dir, `D:\a\_temp\uv-tool-dir` on Windows and
|
||||
`/tmp/setup-uv-cache` on Linux/macOS. You can change the default by specifying the path with the
|
||||
`cache-local-path` input.
|
||||
|
||||
```yaml
|
||||
- name: Define a custom uv cache path
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
cache-local-path: "/path/to/cache"
|
||||
```
|
||||
|
||||
### Disable cache pruning
|
||||
|
||||
By default, the uv cache is pruned after every run, removing pre-built wheels, but retaining any
|
||||
wheels that were built from source. On GitHub-hosted runners, it's typically faster to omit those
|
||||
pre-built wheels from the cache (and instead re-download them from the registry on each run).
|
||||
However, on self-hosted or local runners, preserving the cache may be more efficient. See
|
||||
the[documentation](https://docs.astral.sh/uv/concepts/cache/#caching-in-continuous-integration) for
|
||||
more.
|
||||
|
||||
If you want to persist the entire cache across runs, disable cache pruning with the `prune-cache`
|
||||
input.
|
||||
|
||||
```yaml
|
||||
- name: Don't prune the cache before saving it
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
prune-cache: false
|
||||
```
|
||||
|
||||
### GitHub authentication token
|
||||
|
||||
This action uses the GitHub API to fetch the `uv` release artifacts. To avoid hitting the GitHub API
|
||||
This action uses the GitHub API to fetch the uv release artifacts. To avoid hitting the GitHub API
|
||||
rate limit too quickly, an authentication token can be provided via the `github-token` input. By
|
||||
default, the `GITHUB_TOKEN` secret is used, which is automatically provided by GitHub Actions.
|
||||
|
||||
@@ -147,11 +198,48 @@ 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@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
github-token: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
|
||||
```
|
||||
|
||||
### UV_TOOL_DIR
|
||||
|
||||
On Windows `UV_TOOL_DIR` is set to `uv-tool-dir` in the `TMP` dir (e.g. `D:\a\_temp\uv-tool-dir`).
|
||||
On GitHub hosted runners this is on the much faster `D:` drive.
|
||||
|
||||
On all other platforms the tool environments are placed in the
|
||||
[default location](https://docs.astral.sh/uv/concepts/tools/#tools-directory).
|
||||
|
||||
If you want to change this behaviour (especially on self-hosted runners) you can use the `tool-dir`
|
||||
input:
|
||||
|
||||
```yaml
|
||||
- name: Install the latest version of uv with a custom tool dir
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
tool-dir: "/path/to/tool/dir"
|
||||
```
|
||||
|
||||
### UV_TOOL_BIN_DIR
|
||||
|
||||
On Windows `UV_TOOL_BIN_DIR` is set to `uv-tool-bin-dir` in the `TMP` dir (e.g.
|
||||
`D:\a\_temp\uv-tool-bin-dir`). On GitHub hosted runners this is on the much faster `D:` drive. This
|
||||
path is also automatically added to the PATH.
|
||||
|
||||
On all other platforms the tool binaries get installed to the
|
||||
[default location](https://docs.astral.sh/uv/concepts/tools/#the-bin-directory).
|
||||
|
||||
If you want to change this behaviour (especially on self-hosted runners) you can use the
|
||||
`tool-bin-dir` input:
|
||||
|
||||
```yaml
|
||||
- name: Install the latest version of uv with a custom tool bin dir
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
tool-bin-dir: "/path/to/tool-bin/dir"
|
||||
```
|
||||
|
||||
## How it works
|
||||
|
||||
This action downloads uv from the uv repo's official
|
||||
@@ -176,7 +264,7 @@ For example:
|
||||
- name: Checkout the repository
|
||||
uses: actions/checkout@main
|
||||
- name: Install the latest version of uv
|
||||
uses: astral-sh/setup-uv@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
- name: Test
|
||||
@@ -188,7 +276,7 @@ To install a specific version of Python, use
|
||||
|
||||
```yaml
|
||||
- name: Install the latest version of uv
|
||||
uses: astral-sh/setup-uv@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
- name: Install Python 3.12
|
||||
@@ -207,7 +295,7 @@ output:
|
||||
uses: actions/checkout@main
|
||||
- name: Install the default version of uv
|
||||
id: setup-uv
|
||||
uses: astral-sh/setup-uv@v2
|
||||
uses: astral-sh/setup-uv@v3
|
||||
- name: Print the installed version
|
||||
run: echo "Installed uv version is ${{ steps.setup-uv.outputs.uv-version }}"
|
||||
```
|
||||
|
||||
24
action.yml
24
action.yml
@@ -1,6 +1,7 @@
|
||||
name: "Python setup uv"
|
||||
description: "Set up your GitHub Actions workflow with a specific version of uv"
|
||||
author: "eifinger"
|
||||
name: "astral-sh/setup-uv"
|
||||
description:
|
||||
"Set up your GitHub Actions workflow with a specific version of uv."
|
||||
author: "astral-sh"
|
||||
inputs:
|
||||
version:
|
||||
description: "The version of uv to install"
|
||||
@@ -19,15 +20,24 @@ inputs:
|
||||
default: "false"
|
||||
cache-dependency-glob:
|
||||
description:
|
||||
'Glob pattern to match files relative to the repository root to control
|
||||
the cache. e.g. "uv.lock"'
|
||||
required: false
|
||||
"Glob pattern to match files relative to the repository root to control
|
||||
the cache."
|
||||
default: "**/uv.lock"
|
||||
cache-suffix:
|
||||
description: "Suffix for the cache key"
|
||||
required: false
|
||||
cache-local-path:
|
||||
description: "Local path to store the cache."
|
||||
default: ""
|
||||
prune-cache:
|
||||
description: "Prune cache before saving."
|
||||
default: true
|
||||
tool-dir:
|
||||
description: "Custom path to set UV_TOOL_DIR to."
|
||||
required: false
|
||||
tool-bin-dir:
|
||||
description: "Custom path to set UV_TOOL_BIN_DIR to."
|
||||
required: false
|
||||
outputs:
|
||||
uv-version:
|
||||
description: "The installed uv version. Useful when using latest."
|
||||
@@ -40,4 +50,4 @@ runs:
|
||||
post-if: success()
|
||||
branding:
|
||||
icon: "package"
|
||||
color: "blue"
|
||||
color: "black"
|
||||
|
||||
31
biome.json
Normal file
31
biome.json
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"$schema": "https://biomejs.dev/schemas/1.9.2/schema.json",
|
||||
"vcs": {
|
||||
"enabled": true,
|
||||
"clientKind": "git",
|
||||
"useIgnoreFile": false
|
||||
},
|
||||
"files": {
|
||||
"ignoreUnknown": false,
|
||||
"ignore": ["dist", "lib", "node_modules"]
|
||||
},
|
||||
"formatter": {
|
||||
"enabled": true,
|
||||
"indentStyle": "space"
|
||||
},
|
||||
"organizeImports": {
|
||||
"enabled": true
|
||||
},
|
||||
"linter": {
|
||||
"enabled": true,
|
||||
"rules": {
|
||||
"recommended": true
|
||||
}
|
||||
},
|
||||
"javascript": {
|
||||
"formatter": {
|
||||
"quoteStyle": "double",
|
||||
"trailingCommas": "all"
|
||||
}
|
||||
}
|
||||
}
|
||||
3642
dist/save-cache/index.js
generated
vendored
3642
dist/save-cache/index.js
generated
vendored
File diff suppressed because one or more lines are too long
8235
dist/setup/index.js
generated
vendored
8235
dist/setup/index.js
generated
vendored
File diff suppressed because one or more lines are too long
2518
dist/update-known-checksums/index.js
generated
vendored
2518
dist/update-known-checksums/index.js
generated
vendored
File diff suppressed because one or more lines are too long
5965
package-lock.json
generated
5965
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
30
package.json
30
package.json
@@ -6,9 +6,9 @@
|
||||
"main": "dist/index.js",
|
||||
"scripts": {
|
||||
"build": "tsc",
|
||||
"format": "prettier --write .",
|
||||
"format-check": "prettier --check .",
|
||||
"lint": "eslint src/**/*.ts --fix",
|
||||
"format": "biome format --fix",
|
||||
"format-check": "biome format",
|
||||
"lint": "biome lint --fix",
|
||||
"package": "ncc build -o dist/setup src/setup-uv.ts && ncc build -o dist/save-cache src/save-cache.ts && ncc build -o dist/update-known-checksums src/update-known-checksums.ts",
|
||||
"test": "jest",
|
||||
"act": "act pull_request -W .github/workflows/test.yml --container-architecture linux/amd64 -s GITHUB_TOKEN=\"$(gh auth token)\"",
|
||||
@@ -19,17 +19,12 @@
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/astral-sh/setup-uv.git"
|
||||
},
|
||||
"keywords": [
|
||||
"actions",
|
||||
"python",
|
||||
"setup",
|
||||
"uv"
|
||||
],
|
||||
"keywords": ["actions", "python", "setup", "uv"],
|
||||
"author": "@eifinger",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@actions/cache": "^3.2.4",
|
||||
"@actions/core": "^1.10.1",
|
||||
"@actions/core": "^1.11.1",
|
||||
"@actions/exec": "^1.1.1",
|
||||
"@actions/github": "^6.0.0",
|
||||
"@actions/glob": "^0.5.0",
|
||||
@@ -38,20 +33,13 @@
|
||||
"@octokit/rest": "^21.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.5.4",
|
||||
"@biomejs/biome": "1.9.4",
|
||||
"@types/node": "^22.7.9",
|
||||
"@types/semver": "^7.5.8",
|
||||
"@typescript-eslint/eslint-plugin": "^7.15.0",
|
||||
"@typescript-eslint/parser": "^7.18.0",
|
||||
"@vercel/ncc": "^0.38.1",
|
||||
"eslint": "^8.57.0",
|
||||
"eslint-plugin-github": "^5.0.1",
|
||||
"eslint-plugin-import": "^2.30.0",
|
||||
"eslint-plugin-jest": "^28.8.3",
|
||||
"eslint-plugin-prettier": "^5.2.1",
|
||||
"@vercel/ncc": "^0.38.2",
|
||||
"jest": "^29.7.0",
|
||||
"js-yaml": "^4.1.0",
|
||||
"prettier": "^3.3.3",
|
||||
"ts-jest": "^29.2.5",
|
||||
"typescript": "^5.5.4"
|
||||
"typescript": "^5.6.3"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import * as fs from "fs";
|
||||
import * as crypto from "crypto";
|
||||
import * as fs from "node:fs";
|
||||
import * as crypto from "node:crypto";
|
||||
|
||||
import * as core from "@actions/core";
|
||||
import { KNOWN_CHECKSUMS } from "./known-checksums";
|
||||
import { Architecture, Platform } from "../../utils/platforms";
|
||||
import type { Architecture, Platform } from "../../utils/platforms";
|
||||
|
||||
export async function validateChecksum(
|
||||
checkSum: string | undefined,
|
||||
@@ -12,11 +12,11 @@ export async function validateChecksum(
|
||||
platform: Platform,
|
||||
version: string,
|
||||
): Promise<void> {
|
||||
let isValid = true;
|
||||
let isValid: boolean | undefined = undefined;
|
||||
if (checkSum !== undefined && checkSum !== "") {
|
||||
isValid = await validateFileCheckSum(downloadPath, checkSum);
|
||||
} else {
|
||||
core.debug(`Checksum not provided. Checking known checksums.`);
|
||||
core.debug("Checksum not provided. Checking known checksums.");
|
||||
const key = `${arch}-${platform}-${version}`;
|
||||
if (key in KNOWN_CHECKSUMS) {
|
||||
const knownChecksum = KNOWN_CHECKSUMS[`${arch}-${platform}-${version}`];
|
||||
@@ -27,10 +27,12 @@ export async function validateChecksum(
|
||||
}
|
||||
}
|
||||
|
||||
if (!isValid) {
|
||||
if (isValid === false) {
|
||||
throw new Error(`Checksum for ${downloadPath} did not match ${checkSum}.`);
|
||||
}
|
||||
core.debug(`Checksum for ${downloadPath} is valid.`);
|
||||
if (isValid === true) {
|
||||
core.debug(`Checksum for ${downloadPath} is valid.`);
|
||||
}
|
||||
}
|
||||
|
||||
async function validateFileCheckSum(
|
||||
|
||||
@@ -1,5 +1,581 @@
|
||||
// AUTOGENERATED_DO_NOT_EDIT
|
||||
export const KNOWN_CHECKSUMS: { [key: string]: string } = {
|
||||
"undefined-0.4.26":
|
||||
"5b36575a355193cb3dd3461e477ad7bfddf12d67d941f805caa4aaff52157491",
|
||||
"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",
|
||||
"undefined-0.4.25":
|
||||
"b3c707e3b7a21acb8e949dd7a0db524623df8beae7bca86708ecd5799f01a28c",
|
||||
"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",
|
||||
"undefined-0.4.24":
|
||||
"917be4e4e96ef555e2c739e3b91eac21b7df6f1b45d80e25fe4e50d1249d6846",
|
||||
"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",
|
||||
"undefined-0.4.23":
|
||||
"f9ed8ea5f138e98a8c018112ca59ab82a2983a17738c9d3df577d975f22382a9",
|
||||
"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",
|
||||
"undefined-0.4.22":
|
||||
"1d72ea82b337c767e2ba5c3ffa11cfccdca99321ab1dca3d4c035f8d52d7ad47",
|
||||
"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",
|
||||
"undefined-0.4.21":
|
||||
"045d90f82f97e136d29439b20cb0bc910e312e77a2e674350a321fe7a0474ccb",
|
||||
"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",
|
||||
"undefined-0.4.20":
|
||||
"68d0b5dc0295baf93c2539a04f3aede44e4a7230d3c470430561ecb119ca5353",
|
||||
"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",
|
||||
"undefined-0.4.19":
|
||||
"79adb36dc4233272f863d7cbc861907ee3b91685cde6c9cac3d40ec9307de202",
|
||||
"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",
|
||||
"undefined-0.4.18":
|
||||
"9b2ae8c5a8db7b0106f636510b76cf21273ead5cb1162c19c7b2a5d1b1b6782e",
|
||||
"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",
|
||||
"undefined-0.4.17":
|
||||
"68ad7bf18029bcc9f0c8556e5fb96814fa30d8f67b3ccbc5db19e38b487c9326",
|
||||
"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",
|
||||
"undefined-0.4.16":
|
||||
"942296098d4738db464ea170c654d61281f35cd98fc1ecc6c6df784ba9373bb3",
|
||||
"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",
|
||||
"undefined-0.4.15":
|
||||
"22b605c86cfcb8db9922387151fd8e79d3d2a1caf6f2a03a238ca7ebe058853f",
|
||||
"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",
|
||||
"undefined-0.4.14":
|
||||
"d73771243ecb8f38a925f16894126644aec95da7557eef22d7c161d9b8af69e9",
|
||||
"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",
|
||||
"undefined-0.4.13":
|
||||
"1164572b6a4700821bd3cb72594f7421aafa414c8d1a94e9570e530ca7a5c635",
|
||||
"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",
|
||||
"undefined-0.4.12":
|
||||
"335861d17540501e2c5f82f5b8955b07034c450edb292fd2d628a837f52e0054",
|
||||
"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",
|
||||
"undefined-0.4.11":
|
||||
"e6e38118aaa7436d31d3aed0f4b0beb188c273c137bd3185e8b4ebdb301682aa",
|
||||
"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",
|
||||
"undefined-0.4.10":
|
||||
"53751ecdbad6aa09b13986e73e1ba1990b348b1793f313fdecaf3bd464311d28",
|
||||
"aarch64-apple-darwin-0.4.10":
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { promises as fs } from "fs";
|
||||
import { promises as fs } from "node:fs";
|
||||
import * as tc from "@actions/tool-cache";
|
||||
export async function updateChecksums(
|
||||
filePath: string,
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import * as core from "@actions/core";
|
||||
import * as tc from "@actions/tool-cache";
|
||||
import * as exec from "@actions/exec";
|
||||
import * as path from "path";
|
||||
import { Architecture, Platform } from "../utils/platforms";
|
||||
import * as path from "node:path";
|
||||
import type { Architecture, Platform } from "../utils/platforms";
|
||||
import { validateChecksum } from "./checksum/checksum";
|
||||
import { OWNER, REPO, TOOL_CACHE_NAME } from "../utils/constants";
|
||||
|
||||
@@ -67,5 +67,5 @@ async function getVersion(uvExecutablePath: string): Promise<string> {
|
||||
};
|
||||
await exec.exec(uvExecutablePath, execArgs, options);
|
||||
const parts = output.split(" ");
|
||||
return parts[1];
|
||||
return parts[1].trim();
|
||||
}
|
||||
|
||||
@@ -1,18 +1,24 @@
|
||||
import * as core from "@actions/core";
|
||||
import * as tc from "@actions/tool-cache";
|
||||
import * as path from "path";
|
||||
import * as path from "node:path";
|
||||
import { OWNER, REPO, TOOL_CACHE_NAME } from "../utils/constants";
|
||||
import { Architecture, Platform } from "../utils/platforms";
|
||||
import type { Architecture, Platform } from "../utils/platforms";
|
||||
import { validateChecksum } from "./checksum/checksum";
|
||||
import * as github from "@actions/github";
|
||||
|
||||
export function tryGetFromToolCache(
|
||||
arch: Architecture,
|
||||
version: string,
|
||||
): string | undefined {
|
||||
): { version: string; installedPath: string | undefined } {
|
||||
core.debug(`Trying to get uv from tool cache for ${version}...`);
|
||||
const cachedVersions = tc.findAllVersions(TOOL_CACHE_NAME, arch);
|
||||
core.debug(`Cached versions: ${cachedVersions}`);
|
||||
return tc.find(TOOL_CACHE_NAME, version, arch);
|
||||
let resolvedVersion = tc.evaluateVersions(cachedVersions, version);
|
||||
if (resolvedVersion === "") {
|
||||
resolvedVersion = version;
|
||||
}
|
||||
const installedPath = tc.find(TOOL_CACHE_NAME, resolvedVersion, arch);
|
||||
return { version: resolvedVersion, installedPath };
|
||||
}
|
||||
|
||||
export async function downloadVersion(
|
||||
@@ -20,10 +26,11 @@ export async function downloadVersion(
|
||||
arch: Architecture,
|
||||
version: string,
|
||||
checkSum: string | undefined,
|
||||
githubToken: string | undefined,
|
||||
): Promise<string> {
|
||||
githubToken: string,
|
||||
): Promise<{ version: string; cachedToolDir: string }> {
|
||||
const resolvedVersion = await resolveVersion(version, githubToken);
|
||||
const artifact = `uv-${arch}-${platform}`;
|
||||
let downloadUrl = `https://github.com/${OWNER}/${REPO}/releases/download/${version}/${artifact}`;
|
||||
let downloadUrl = `https://github.com/${OWNER}/${REPO}/releases/download/${resolvedVersion}/${artifact}`;
|
||||
if (platform === "pc-windows-msvc") {
|
||||
downloadUrl += ".zip";
|
||||
} else {
|
||||
@@ -36,7 +43,13 @@ export async function downloadVersion(
|
||||
undefined,
|
||||
githubToken,
|
||||
);
|
||||
await validateChecksum(checkSum, downloadPath, arch, platform, version);
|
||||
await validateChecksum(
|
||||
checkSum,
|
||||
downloadPath,
|
||||
arch,
|
||||
platform,
|
||||
resolvedVersion,
|
||||
);
|
||||
|
||||
let uvDir: string;
|
||||
if (platform === "pc-windows-msvc") {
|
||||
@@ -46,6 +59,37 @@ export async function downloadVersion(
|
||||
const extractedDir = await tc.extractTar(downloadPath);
|
||||
uvDir = path.join(extractedDir, artifact);
|
||||
}
|
||||
|
||||
return await tc.cacheDir(uvDir, TOOL_CACHE_NAME, version, arch);
|
||||
const cachedToolDir = await tc.cacheDir(
|
||||
uvDir,
|
||||
TOOL_CACHE_NAME,
|
||||
resolvedVersion,
|
||||
arch,
|
||||
);
|
||||
return { version: resolvedVersion, cachedToolDir };
|
||||
}
|
||||
|
||||
async function resolveVersion(
|
||||
version: string,
|
||||
githubToken: string,
|
||||
): Promise<string> {
|
||||
if (tc.isExplicitVersion(version)) {
|
||||
core.debug(`Version ${version} is an explicit version.`);
|
||||
return version;
|
||||
}
|
||||
const availableVersions = await getAvailableVersions(githubToken);
|
||||
const resolvedVersion = tc.evaluateVersions(availableVersions, version);
|
||||
if (resolvedVersion === "") {
|
||||
throw new Error(`No version found for ${version}`);
|
||||
}
|
||||
return resolvedVersion;
|
||||
}
|
||||
|
||||
async function getAvailableVersions(githubToken: string): Promise<string[]> {
|
||||
const octokit = github.getOctokit(githubToken);
|
||||
|
||||
const response = await octokit.paginate(octokit.rest.repos.listReleases, {
|
||||
owner: OWNER,
|
||||
repo: REPO,
|
||||
});
|
||||
return response.map((release) => release.tag_name);
|
||||
}
|
||||
|
||||
@@ -5,7 +5,11 @@ import {
|
||||
STATE_CACHE_MATCHED_KEY,
|
||||
STATE_CACHE_KEY,
|
||||
} from "./cache/restore-cache";
|
||||
import { cacheLocalPath, enableCache } from "./utils/inputs";
|
||||
import {
|
||||
cacheLocalPath,
|
||||
enableCache,
|
||||
pruneCache as shouldPruneCache,
|
||||
} from "./utils/inputs";
|
||||
|
||||
export async function run(): Promise<void> {
|
||||
try {
|
||||
@@ -26,12 +30,15 @@ async function saveCache(): Promise<void> {
|
||||
if (!cacheKey) {
|
||||
core.warning("Error retrieving cache key from state.");
|
||||
return;
|
||||
} else if (matchedKey === cacheKey) {
|
||||
}
|
||||
if (matchedKey === cacheKey) {
|
||||
core.info(`Cache hit occurred on key ${cacheKey}, not saving cache.`);
|
||||
return;
|
||||
}
|
||||
|
||||
await pruneCache();
|
||||
if (shouldPruneCache) {
|
||||
await pruneCache();
|
||||
}
|
||||
|
||||
core.info(`Saving cache path: ${cacheLocalPath}`);
|
||||
await cache.saveCache([cacheLocalPath], cacheKey);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import * as core from "@actions/core";
|
||||
import * as path from "path";
|
||||
import * as path from "node:path";
|
||||
import {
|
||||
downloadVersion,
|
||||
tryGetFromToolCache,
|
||||
@@ -8,16 +8,18 @@ import { restoreCache } from "./cache/restore-cache";
|
||||
|
||||
import { downloadLatest } from "./download/download-latest";
|
||||
import {
|
||||
Architecture,
|
||||
type Architecture,
|
||||
getArch,
|
||||
getPlatform,
|
||||
Platform,
|
||||
type Platform,
|
||||
} from "./utils/platforms";
|
||||
import {
|
||||
cacheLocalPath,
|
||||
checkSum,
|
||||
enableCache,
|
||||
githubToken,
|
||||
toolBinDir,
|
||||
toolDir,
|
||||
version,
|
||||
} from "./utils/inputs";
|
||||
|
||||
@@ -41,8 +43,10 @@ async function run(): Promise<void> {
|
||||
);
|
||||
|
||||
addUvToPath(setupResult.uvDir);
|
||||
core.setOutput("uv-version", version);
|
||||
core.info(`Successfully installed uv version ${version}`);
|
||||
addToolBinToPath();
|
||||
setToolDir();
|
||||
core.setOutput("uv-version", setupResult.version);
|
||||
core.info(`Successfully installed uv version ${setupResult.version}`);
|
||||
|
||||
addMatchers();
|
||||
setCacheDir(cacheLocalPath);
|
||||
@@ -50,10 +54,10 @@ async function run(): Promise<void> {
|
||||
if (enableCache) {
|
||||
await restoreCache(setupResult.version);
|
||||
}
|
||||
process.exit(0);
|
||||
} catch (err) {
|
||||
core.setFailed((err as Error).message);
|
||||
}
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
async function setupUv(
|
||||
@@ -61,29 +65,37 @@ async function setupUv(
|
||||
arch: Architecture,
|
||||
versionInput: string,
|
||||
checkSum: string | undefined,
|
||||
githubToken: string | undefined,
|
||||
githubToken: string,
|
||||
): Promise<{ uvDir: string; version: string }> {
|
||||
let installedPath: string | undefined;
|
||||
let cachedToolDir: string;
|
||||
let version: string;
|
||||
if (versionInput === "latest") {
|
||||
const result = await downloadLatest(platform, arch, checkSum, githubToken);
|
||||
version = result.version;
|
||||
cachedToolDir = result.cachedToolDir;
|
||||
const latestResult = await downloadLatest(
|
||||
platform,
|
||||
arch,
|
||||
checkSum,
|
||||
githubToken,
|
||||
);
|
||||
version = latestResult.version;
|
||||
cachedToolDir = latestResult.cachedToolDir;
|
||||
} else {
|
||||
version = versionInput;
|
||||
installedPath = tryGetFromToolCache(arch, versionInput);
|
||||
const toolCacheResult = tryGetFromToolCache(arch, versionInput);
|
||||
version = toolCacheResult.version;
|
||||
installedPath = toolCacheResult.installedPath;
|
||||
if (installedPath) {
|
||||
core.info(`Found uv in tool-cache for ${versionInput}`);
|
||||
return { uvDir: installedPath, version };
|
||||
}
|
||||
cachedToolDir = await downloadVersion(
|
||||
const versionResult = await downloadVersion(
|
||||
platform,
|
||||
arch,
|
||||
versionInput,
|
||||
checkSum,
|
||||
githubToken,
|
||||
);
|
||||
cachedToolDir = versionResult.cachedToolDir;
|
||||
version = versionResult.version;
|
||||
}
|
||||
|
||||
return { uvDir: cachedToolDir, version };
|
||||
@@ -94,6 +106,33 @@ function addUvToPath(cachedPath: string): void {
|
||||
core.info(`Added ${cachedPath} to the path`);
|
||||
}
|
||||
|
||||
function addToolBinToPath(): void {
|
||||
if (toolBinDir !== undefined) {
|
||||
core.exportVariable("UV_TOOL_BIN_DIR", toolBinDir);
|
||||
core.info(`Set UV_TOOL_BIN_DIR to ${toolBinDir}`);
|
||||
core.addPath(toolBinDir);
|
||||
core.info(`Added ${toolBinDir} to the path`);
|
||||
} else {
|
||||
if (process.env.XDG_BIN_HOME !== undefined) {
|
||||
core.addPath(process.env.XDG_BIN_HOME);
|
||||
core.info(`Added ${process.env.XDG_BIN_HOME} to the path`);
|
||||
} else if (process.env.XDG_DATA_HOME !== undefined) {
|
||||
core.addPath(`${process.env.XDG_DATA_HOME}/../bin`);
|
||||
core.info(`Added ${process.env.XDG_DATA_HOME}/../bin to the path`);
|
||||
} else {
|
||||
core.addPath(`${process.env.HOME}/.local/bin`);
|
||||
core.info(`Added ${process.env.HOME}/.local/bin to the path`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function setToolDir(): void {
|
||||
if (toolDir !== undefined) {
|
||||
core.exportVariable("UV_TOOL_DIR", toolDir);
|
||||
core.info(`Set UV_TOOL_DIR to ${toolDir}`);
|
||||
}
|
||||
}
|
||||
|
||||
function setCacheDir(cacheLocalPath: string): void {
|
||||
core.exportVariable("UV_CACHE_DIR", cacheLocalPath);
|
||||
core.info(`Set UV_CACHE_DIR to ${cacheLocalPath}`);
|
||||
|
||||
@@ -1,13 +1,48 @@
|
||||
import * as core from "@actions/core";
|
||||
import path from "path";
|
||||
import path from "node:path";
|
||||
|
||||
export const version = core.getInput("version");
|
||||
export const checkSum = core.getInput("checksum");
|
||||
export const enableCache = core.getInput("enable-cache") === "true";
|
||||
export const cacheSuffix = core.getInput("cache-suffix") || "";
|
||||
export const cacheLocalPath = getCacheLocalPath();
|
||||
export const githubToken = core.getInput("github-token");
|
||||
export const cacheDependencyGlob = core.getInput("cache-dependency-glob");
|
||||
export const pruneCache = core.getInput("prune-cache") === "true";
|
||||
export const toolBinDir = getToolBinDir();
|
||||
export const toolDir = getToolDir();
|
||||
export const githubToken = core.getInput("github-token");
|
||||
|
||||
function getToolBinDir(): string | undefined {
|
||||
const toolBinDirInput = core.getInput("tool-bin-dir");
|
||||
if (toolBinDirInput !== "") {
|
||||
return toolBinDirInput;
|
||||
}
|
||||
if (process.platform === "win32") {
|
||||
if (process.env.RUNNER_TEMP !== undefined) {
|
||||
return `${process.env.RUNNER_TEMP}${path.sep}uv-tool-bin-dir`;
|
||||
}
|
||||
throw Error(
|
||||
"Could not determine UV_TOOL_BIN_DIR. Please make sure RUNNER_TEMP is set or provide the tool-bin-dir input",
|
||||
);
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function getToolDir(): string | undefined {
|
||||
const toolDirInput = core.getInput("tool-dir");
|
||||
if (toolDirInput !== "") {
|
||||
return toolDirInput;
|
||||
}
|
||||
if (process.platform === "win32") {
|
||||
if (process.env.RUNNER_TEMP !== undefined) {
|
||||
return `${process.env.RUNNER_TEMP}${path.sep}uv-tool-dir`;
|
||||
}
|
||||
throw Error(
|
||||
"Could not determine UV_TOOL_DIR. Please make sure RUNNER_TEMP is set or provide the tool-dir input",
|
||||
);
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function getCacheLocalPath(): string {
|
||||
const cacheLocalPathInput = core.getInput("cache-local-path");
|
||||
@@ -17,8 +52,7 @@ function getCacheLocalPath(): string {
|
||||
if (process.env.RUNNER_TEMP !== undefined) {
|
||||
return `${process.env.RUNNER_TEMP}${path.sep}setup-uv-cache`;
|
||||
}
|
||||
if (process.platform === "win32") {
|
||||
return "D:\\a\\_temp\\setup-uv-cache";
|
||||
}
|
||||
return "/tmp/setup-uv-cache";
|
||||
throw Error(
|
||||
"Could not determine UV_CACHE_DIR. Please make sure RUNNER_TEMP is set or provide the cache-local-path input",
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user