5
0
mirror of https://github.com/astral-sh/setup-uv.git synced 2025-12-15 11:07:14 +00:00

Compare commits

..

3 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
f94e1fdb8a Fix detectEmptyWorkdir to use working-directory input
Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-10-15 19:00:08 +00:00
copilot-swe-agent[bot]
9f2a67fea1 Initial plan for fixing detectEmptyWorkdir to use working-directory input
Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-10-15 18:55:21 +00:00
copilot-swe-agent[bot]
65bae315f3 Initial plan 2025-10-15 18:52:36 +00:00
29 changed files with 107323 additions and 43356 deletions

View File

@@ -59,7 +59,7 @@ src/
#### 1. Install Dependencies
```bash
npm ci --ignore-scripts
npm install
```
**Timing**: ~20-30 seconds
@@ -236,7 +236,7 @@ This file is the authoritative source for understanding available action paramet
### Build Failures
- **"Module not found"**: Run `npm ci --ignore-scripts` to ensure dependencies are installed
- **"Module not found"**: Run `npm install` to ensure dependencies are installed
- **TypeScript errors**: Check `tsconfig.json` and ensure all imports are valid
- **Test failures**: Check if test fixtures have been modified or if logic changes broke assumptions

View File

@@ -4,12 +4,8 @@ updates:
directory: /
schedule:
interval: daily
cooldown:
default-days: 7
- package-ecosystem: npm
directory: /
schedule:
interval: daily
cooldown:
default-days: 7

View File

@@ -41,13 +41,13 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
uses: github/codeql-action/init@f443b600d91635bebf5b0d9ebc620189c0d6fba5 # v4.30.8
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@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
uses: github/codeql-action/autobuild@f443b600d91635bebf5b0d9ebc620189c0d6fba5 # v4.30.8
# 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@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
uses: github/codeql-action/analyze@f443b600d91635bebf5b0d9ebc620189c0d6fba5 # v4.30.8

View File

@@ -21,19 +21,18 @@ jobs:
permissions:
security-events: write # for zizmor
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Actionlint
uses: eifinger/actionlint-action@213860089b7cf97d640aa67567898fabeb132746 # v1.9.3
uses: eifinger/actionlint-action@03ff1f78c0670b71017616a37170f327df932030 # v1.9.2
- name: Run zizmor
uses: zizmorcore/zizmor-action@e639db99335bc9038abc0e066dfcd72e23d26fb4 # v0.3.0
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
uses: zizmorcore/zizmor-action@e673c3917a1aef3c65c972347ed84ccd013ecda4 # v0.2.0
- uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version-file: .nvmrc
cache: npm
node-version: "24"
- run: |
npm ci --ignore-scripts
npm install
- run: |
npm run all
- name: Check all jobs are in all-tests-passed.needs
@@ -51,7 +50,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-latest]
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install latest version
@@ -76,7 +75,7 @@ jobs:
test-uv-no-modify-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install with UV_NO_MODIFY_PATH set
@@ -115,9 +114,6 @@ jobs:
- version-input: ">=0.4.25,<0.5"
expected-version: "0.4.25"
resolution-strategy: "lowest"
- version-input: ">=0.4.25"
expected-version: "0.4.25"
resolution-strategy: "lowest"
- version-input: ">=0.1,<0.2"
expected-version: "0.1.45"
resolution-strategy: "highest"
@@ -125,7 +121,7 @@ jobs:
expected-version: "0.1.0"
resolution-strategy: "lowest"
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install version ${{ matrix.input.version-input }} with strategy ${{ matrix.input.resolution-strategy || 'highest' }}
@@ -154,7 +150,7 @@ jobs:
matrix:
version-input: ["latest", ">=0.8"]
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install version ${{ matrix.version-input }}
@@ -182,7 +178,7 @@ jobs:
- working-directory: "__tests__/fixtures/uv-toml-project"
expected-version: "0.5.15"
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install version from ${{ matrix.input.working-directory }}
@@ -208,7 +204,7 @@ jobs:
- version-file: "__tests__/fixtures/.tool-versions"
expected-version: "0.5.15"
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install version from ${{ matrix.input.version-file }}
@@ -225,7 +221,7 @@ jobs:
test-malformed-pyproject-file-fallback:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install using malformed pyproject.toml
@@ -245,7 +241,7 @@ jobs:
- os: macos-latest
checksum: "a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218"
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Checksum matches expected
@@ -259,7 +255,7 @@ jobs:
test-with-explicit-token:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install default version
@@ -272,7 +268,7 @@ jobs:
test-uvx:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install default version
@@ -285,7 +281,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-latest]
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install default version
@@ -296,7 +292,7 @@ jobs:
test-tilde-expansion-tool-dirs:
runs-on: selfhosted-ubuntu-arm64
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -321,7 +317,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install latest version
@@ -344,7 +340,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install latest version
@@ -381,64 +377,14 @@ jobs:
runs-on: ubuntu-latest
container: alpine
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install latest version
id: setup-uv
uses: ./
with:
enable-cache: true
- name: Verify cache key contains alpine
run: |
echo "Cache key: $CACHE_KEY"
if echo "$CACHE_KEY" | grep -qv "alpine"; then
echo "Cache key does not contain 'alpine'"
exit 1
fi
shell: sh
env:
CACHE_KEY: ${{ steps.setup-uv.outputs.cache-key }}
- run: uv sync
working-directory: __tests__/fixtures/uv-project
test-cache-key-os-version:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-22.04
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
expected-os: "windows-2022"
- os: windows-2025
expected-os: "windows-2025"
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
- name: Setup uv
id: setup-uv
uses: ./
with:
enable-cache: true
- name: Verify cache key contains OS version
run: |
echo "Cache key: $CACHE_KEY"
if [[ "$CACHE_KEY" != *"${{ matrix.expected-os }}"* ]]; then
echo "Cache key does not contain expected OS version: ${{ matrix.expected-os }}"
exit 1
fi
shell: bash
env:
CACHE_KEY: ${{ steps.setup-uv.outputs.cache-key }}
test-setup-cache:
runs-on: ${{ matrix.os }}
strategy:
@@ -446,7 +392,7 @@ jobs:
enable-cache: ["true", "false", "auto"]
os: ["ubuntu-latest", "selfhosted-ubuntu-arm64", "windows-latest"]
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -465,7 +411,7 @@ jobs:
os: ["ubuntu-latest", "selfhosted-ubuntu-arm64", "windows-latest"]
needs: test-setup-cache
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Restore with cache
@@ -499,7 +445,7 @@ jobs:
test-setup-cache-requirements-txt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -515,7 +461,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-requirements-txt
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Restore with cache
@@ -539,7 +485,7 @@ jobs:
test-setup-cache-dependency-glob:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -556,7 +502,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-dependency-glob
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Change pyproject.toml
@@ -584,7 +530,7 @@ jobs:
test-setup-cache-save-cache-false:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -600,7 +546,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-save-cache-false
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Restore with cache
@@ -620,7 +566,7 @@ jobs:
test-setup-cache-restore-cache-false:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -635,7 +581,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-setup-cache-restore-cache-false
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Restore with cache
@@ -665,7 +611,7 @@ jobs:
expected-cache-dir: "/home/ubuntu/.cache/uv"
runs-on: ${{ matrix.inputs.os }}
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -683,7 +629,7 @@ jobs:
test-cache-local-cache-disabled:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup without cache
@@ -699,30 +645,10 @@ jobs:
fi
shell: bash
test-cache-local-cache-disabled-but-explicit-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
- name: Setup without cache
uses: ./
with:
enable-cache: false
cache-local-path: /tmp/uv-cache-disabled
- name: Check UV_CACHE_DIR is set
run: |
if [ "$UV_CACHE_DIR" != "/tmp/uv-cache-disabled" ]; then
echo "UV_CACHE_DIR should be set when cache is disabled but explicit path is provided"
exit 1
fi
shell: bash
test-setup-cache-local:
runs-on: selfhosted-ubuntu-arm64
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup with cache
@@ -737,7 +663,7 @@ jobs:
runs-on: selfhosted-ubuntu-arm64
needs: test-setup-cache-local
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Restore with cache
@@ -760,7 +686,7 @@ jobs:
test-tilde-expansion-cache-local-path:
runs-on: selfhosted-ubuntu-arm64
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Create cache directory
@@ -776,7 +702,7 @@ jobs:
test-tilde-expansion-cache-dependency-glob:
runs-on: selfhosted-ubuntu-arm64
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Create cache directory
@@ -811,7 +737,7 @@ jobs:
test-no-python-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Fake pyproject.toml at root
@@ -826,7 +752,7 @@ jobs:
test-custom-manifest-file:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install from custom manifest file
@@ -845,7 +771,7 @@ jobs:
test-absolute-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Create requirements.txt
@@ -865,7 +791,7 @@ jobs:
test-relative-path:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: mkdir
@@ -889,7 +815,7 @@ jobs:
test-cache-prune-force:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Setup uv
@@ -906,7 +832,7 @@ jobs:
test-cache-dir-from-file:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Verify uv cache dir is not populated
@@ -931,7 +857,7 @@ jobs:
test-cache-python-installs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Verify Python install dir is not populated
@@ -958,7 +884,7 @@ jobs:
runs-on: ubuntu-latest
needs: test-cache-python-installs
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Verify Python install dir does not exist
@@ -1002,7 +928,7 @@ jobs:
expected-python-dir: "/home/ubuntu/.local/share/uv/python"
runs-on: ${{ matrix.inputs.os }}
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: Install latest version
@@ -1018,21 +944,6 @@ jobs:
- name: Install python works
run: uv python install
test-act:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.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
env:
GH_TOKEN: ${{ github.token }}
all-tests-passed:
runs-on: ubuntu-latest
needs:
@@ -1052,10 +963,8 @@ jobs:
- test-python-version
- test-activate-environment
- test-musl
- test-cache-key-os-version
- test-cache-local
- test-cache-local-cache-disabled
- test-cache-local-cache-disabled-but-explicit-path
- test-setup-cache
- test-restore-cache
- test-setup-cache-requirements-txt
@@ -1080,7 +989,6 @@ jobs:
- test-cache-python-installs
- test-restore-python-installs
- test-python-install-dir
- test-act
if: always()
steps:
- name: All tests passed

View File

@@ -15,10 +15,10 @@ jobs:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: true
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
- uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version: "20"
- name: Update known versions
@@ -39,7 +39,7 @@ jobs:
fi
- name: Compile changes
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
run: npm ci --ignore-scripts && npm run all
run: npm ci && npm run all
- name: Commit and push changes
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' }}
id: commit-and-push
@@ -55,7 +55,7 @@ jobs:
- name: Create Pull Request
if: ${{ steps.changes-exist.outputs.changes-exist == 'true' && steps.commit-and-push.outcome != 'success' }}
uses: peter-evans/create-pull-request@84ae59a2cdc2258d6fa0732dd66352dddae2a412 # v7.0.9
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
with:
commit-message: "chore: update known checksums"
title:

View File

@@ -17,7 +17,7 @@ jobs:
permissions:
contents: write
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: true # needed for git push below
- name: Update Major Minor Tags

1
.nvmrc
View File

@@ -1 +0,0 @@
24

View File

@@ -26,7 +26,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@v7
uses: astral-sh/setup-uv@v6
```
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,7 +42,7 @@ Have a look under [Advanced Configuration](#advanced-configuration) for detailed
```yaml
- name: Install uv with all available options
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
# The version of uv to install (default: searches for version in config files, then latest)
version: ""
@@ -134,7 +134,7 @@ This will override any python version specifications in `pyproject.toml` and `.p
```yaml
- name: Install the latest version of uv and set the python version to 3.13t
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
python-version: 3.13t
- run: uv pip install --python=3.13t pip
@@ -152,7 +152,7 @@ jobs:
steps:
- uses: actions/checkout@v5
- name: Install the latest version of uv and set the python version
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
- name: Test with python ${{ matrix.python-version }}
@@ -169,7 +169,7 @@ It also controls where [the venv gets created](#activate-environment).
```yaml
- name: Install uv based on the config files in the working-directory
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
working-directory: my/subproject/dir
```
@@ -208,7 +208,7 @@ For example:
- name: Checkout the repository
uses: actions/checkout@main
- name: Install the latest version of uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
- name: Test
@@ -220,7 +220,7 @@ To install a specific version of Python, use
```yaml
- name: Install the latest version of uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
- name: Install Python 3.12
@@ -239,7 +239,7 @@ output:
uses: actions/checkout@main
- name: Install the default version of uv
id: setup-uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
- name: Print the installed version
run: echo "Installed uv version is ${{ steps.setup-uv.outputs.uv-version }}"
```

View File

@@ -29,9 +29,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);
},
);

View File

@@ -31,7 +31,7 @@ inputs:
default: "auto"
cache-dependency-glob:
description:
"Glob pattern to match files relative to the working directory to control
"Glob pattern to match files relative to the repository root to control
the cache."
default: |
**/*requirements*.txt
@@ -89,8 +89,6 @@ outputs:
description: "The path to the installed uvx binary."
cache-hit:
description: "A boolean value to indicate a cache entry was found"
cache-key:
description: "The cache key used for storing/restoring the cache"
venv:
description: "Path to the activated venv if activate-environment is true"
runs:

View File

@@ -1,5 +1,5 @@
{
"$schema": "https://biomejs.dev/schemas/2.3.7/schema.json",
"$schema": "https://biomejs.dev/schemas/2.2.4/schema.json",
"assist": {
"actions": {
"source": {
@@ -18,8 +18,7 @@
"!**/node_modules",
"!**/package*.json",
"!**/known-checksums.*"
],
"maxSize": 2097152
]
},
"formatter": {
"enabled": true,

44527
dist/save-cache/index.js generated vendored

File diff suppressed because one or more lines are too long

60940
dist/setup/index.js generated vendored

File diff suppressed because one or more lines are too long

41757
dist/update-known-versions/index.js generated vendored

File diff suppressed because one or more lines are too long

View File

@@ -6,7 +6,7 @@ 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@v7
uses: astral-sh/setup-uv@v6
with:
version: "latest"
```
@@ -15,7 +15,7 @@ This document covers advanced options for configuring which version of uv to ins
```yaml
- name: Install a specific version of uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
version: "0.4.4"
```
@@ -28,21 +28,21 @@ to install the latest version that satisfies the range.
```yaml
- name: Install a semver range of uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
version: ">=0.4.0"
```
```yaml
- name: Pinning a minor version of uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
version: "0.4.x"
```
```yaml
- name: Install a pep440-specifier-satisfying version of uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
version: ">=0.4.25,<0.5"
```
@@ -54,7 +54,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@v7
uses: astral-sh/setup-uv@v6
with:
version: ">=0.4.0"
resolution-strategy: "lowest"
@@ -76,7 +76,7 @@ uv defined as a dependency in `pyproject.toml` or `requirements.txt`.
```yaml
- name: Install uv based on the version defined in pyproject.toml
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
version-file: "pyproject.toml"
```

View File

@@ -2,34 +2,6 @@
This document covers all caching-related configuration options for setup-uv.
## Cache key
The cache key is automatically generated based on:
- **Architecture**: CPU architecture (e.g., `x86_64`, `aarch64`)
- **Platform**: OS platform type (e.g., `unknown-linux-gnu`, `unknown-linux-musl`, `apple-darwin`,
`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
- **Cache options**: Whether pruning and Python caching are enabled
- **Dependency hash**: Hash of files matching `cache-dependency-glob`
- **Suffix**: Optional `cache-suffix` if provided
Including the OS version ensures that caches are not shared between different OS versions,
preventing binary incompatibility issues when runner images change.
The computed cache key is available as the `cache-key` output:
```yaml
- name: Setup uv
id: setup-uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
- name: Print cache key
run: echo "Cache key: ${{ steps.setup-uv.outputs.cache-key }}"
```
## Enable caching
> [!NOTE]
@@ -50,7 +22,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@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-suffix: "optional-suffix"
@@ -69,7 +41,7 @@ use it in subsequent steps. For example, to use the cache in the above case:
If you want to control when the GitHub Actions cache is invalidated, specify a glob pattern with the
`cache-dependency-glob` input. The GitHub Actions cache will be invalidated if any file matching the glob pattern
changes. If you use relative paths, they are relative to the working directory.
changes. If you use relative paths, they are relative to the repository root.
> [!NOTE]
>
@@ -89,7 +61,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@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-dependency-glob: "**/pyproject.toml"
@@ -97,7 +69,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@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-dependency-glob: |
@@ -107,7 +79,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@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-dependency-glob: "/tmp/my-folder/requirements*.txt"
@@ -115,7 +87,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@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-dependency-glob: ""
@@ -128,7 +100,7 @@ By default, the cache will be restored.
```yaml
- name: Don't restore an existing cache
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
restore-cache: false
@@ -142,7 +114,7 @@ By default, the cache will be saved.
```yaml
- name: Don't save the cache after the run
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
save-cache: false
@@ -162,13 +134,9 @@ It defaults to `setup-uv-cache` in the `TMP` dir, `D:\a\_temp\setup-uv-cache` on
> If you configured [cache-dir](https://docs.astral.sh/uv/reference/settings/#cache-dir) in your
> config file then it is also respected and this action will not set `UV_CACHE_DIR`.
> [!NOTE]
> If caching is disabled, you can still use `cache-local-path` so this action sets `UV_CACHE_DIR`
> to your desired path.
```yaml
- name: Define a custom uv cache path
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
cache-local-path: "/path/to/cache"
```
@@ -187,7 +155,7 @@ input.
```yaml
- name: Don't prune the cache before saving it
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
prune-cache: false
@@ -201,7 +169,7 @@ If you want to cache Python installs along with your dependencies, set the `cach
```yaml
- name: Cache Python installs
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-python: true
@@ -214,7 +182,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@v7
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
ignore-nothing-to-cache: true

View File

@@ -10,7 +10,7 @@ are automatically verified by this action. The sha256 hashes can be found on the
```yaml
- name: Install a specific version and validate the checksum
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
version: "0.3.1"
checksum: "e11b01402ab645392c7ad6044db63d37e4fd1e745e015306993b07695ea5f9f8"
@@ -44,7 +44,7 @@ This is useful if you maintain your own uv builds or want to override the defaul
```yaml
- name: Use a custom manifest file
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
manifest-file: "https://example.com/my-custom-manifest.json"
```
@@ -64,7 +64,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@v7
uses: astral-sh/setup-uv@v6
with:
add-problem-matchers: false
```

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@v7
uses: astral-sh/setup-uv@v6
with:
activate-environment: true
- run: uv pip install pip
@@ -37,7 +37,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@v7
uses: astral-sh/setup-uv@v6
with:
github-token: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
```
@@ -55,7 +55,7 @@ input:
```yaml
- name: Install the latest version of uv with a custom tool dir
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
tool-dir: "/path/to/tool/dir"
```
@@ -74,7 +74,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@v7
uses: astral-sh/setup-uv@v6
with:
tool-bin-dir: "/path/to/tool-bin/dir"
```
@@ -91,7 +91,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@v7
uses: astral-sh/setup-uv@v6
with:
cache-local-path: "~/path/to/cache"
tool-dir: "~/path/to/tool/dir"
@@ -108,7 +108,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@v7
uses: astral-sh/setup-uv@v6
with:
ignore-empty-workdir: true
```
@@ -131,7 +131,7 @@ This action sets several environment variables that influence uv's behavior and
```yaml
- name: Example using environment variables
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v6
with:
python-version: "3.12"
tool-dir: "/custom/tool/dir"

465
package-lock.json generated
View File

@@ -15,22 +15,22 @@
"@actions/glob": "^0.5.0",
"@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.2",
"@octokit/core": "^7.0.6",
"@octokit/plugin-paginate-rest": "^14.0.0",
"@octokit/plugin-rest-endpoint-methods": "^17.0.0",
"@octokit/core": "^7.0.5",
"@octokit/plugin-paginate-rest": "^13.2.0",
"@octokit/plugin-rest-endpoint-methods": "^16.1.0",
"@renovatebot/pep440": "^4.2.1",
"smol-toml": "^1.4.2",
"undici": "5.28.5"
"undici": "^7.16.0"
},
"devDependencies": {
"@biomejs/biome": "2.3.7",
"@biomejs/biome": "2.2.5",
"@types/js-yaml": "^4.0.9",
"@types/node": "^24.10.1",
"@types/node": "^24.7.0",
"@types/semver": "^7.7.1",
"@vercel/ncc": "^0.38.4",
"jest": "^30.2.0",
"js-yaml": "^4.1.0",
"ts-jest": "^29.4.5",
"ts-jest": "^29.4.4",
"typescript": "^5.9.3"
}
},
@@ -96,6 +96,18 @@
"undici": "^5.25.4"
}
},
"node_modules/@actions/http-client/node_modules/undici": {
"version": "5.29.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
"integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
},
"engines": {
"node": ">=14.0"
}
},
"node_modules/@actions/io": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.3.tgz",
@@ -412,7 +424,6 @@
"integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.27.1",
@@ -890,9 +901,9 @@
"license": "MIT"
},
"node_modules/@biomejs/biome": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.7.tgz",
"integrity": "sha512-CTbAS/jNAiUc6rcq94BrTB8z83O9+BsgWj2sBCQg9rD6Wkh2gjfR87usjx0Ncx0zGXP1NKgT7JNglay5Zfs9jw==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.2.5.tgz",
"integrity": "sha512-zcIi+163Rc3HtyHbEO7CjeHq8DjQRs40HsGbW6vx2WI0tg8mYQOPouhvHSyEnCBAorfYNnKdR64/IxO7xQ5faw==",
"dev": true,
"license": "MIT OR Apache-2.0",
"bin": {
@@ -906,20 +917,20 @@
"url": "https://opencollective.com/biome"
},
"optionalDependencies": {
"@biomejs/cli-darwin-arm64": "2.3.7",
"@biomejs/cli-darwin-x64": "2.3.7",
"@biomejs/cli-linux-arm64": "2.3.7",
"@biomejs/cli-linux-arm64-musl": "2.3.7",
"@biomejs/cli-linux-x64": "2.3.7",
"@biomejs/cli-linux-x64-musl": "2.3.7",
"@biomejs/cli-win32-arm64": "2.3.7",
"@biomejs/cli-win32-x64": "2.3.7"
"@biomejs/cli-darwin-arm64": "2.2.5",
"@biomejs/cli-darwin-x64": "2.2.5",
"@biomejs/cli-linux-arm64": "2.2.5",
"@biomejs/cli-linux-arm64-musl": "2.2.5",
"@biomejs/cli-linux-x64": "2.2.5",
"@biomejs/cli-linux-x64-musl": "2.2.5",
"@biomejs/cli-win32-arm64": "2.2.5",
"@biomejs/cli-win32-x64": "2.2.5"
}
},
"node_modules/@biomejs/cli-darwin-arm64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.7.tgz",
"integrity": "sha512-LirkamEwzIUULhXcf2D5b+NatXKeqhOwilM+5eRkbrnr6daKz9rsBL0kNZ16Hcy4b8RFq22SG4tcLwM+yx/wFA==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.2.5.tgz",
"integrity": "sha512-MYT+nZ38wEIWVcL5xLyOhYQQ7nlWD0b/4mgATW2c8dvq7R4OQjt/XGXFkXrmtWmQofaIM14L7V8qIz/M+bx5QQ==",
"cpu": [
"arm64"
],
@@ -934,9 +945,9 @@
}
},
"node_modules/@biomejs/cli-darwin-x64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.7.tgz",
"integrity": "sha512-Q4TO633kvrMQkKIV7wmf8HXwF0dhdTD9S458LGE24TYgBjSRbuhvio4D5eOQzirEYg6eqxfs53ga/rbdd8nBKg==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.2.5.tgz",
"integrity": "sha512-FLIEl73fv0R7dI10EnEiZLw+IMz3mWLnF95ASDI0kbx6DDLJjWxE5JxxBfmG+udz1hIDd3fr5wsuP7nwuTRdAg==",
"cpu": [
"x64"
],
@@ -951,9 +962,9 @@
}
},
"node_modules/@biomejs/cli-linux-arm64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.7.tgz",
"integrity": "sha512-inHOTdlstUBzgjDcx0ge71U4SVTbwAljmkfi3MC5WzsYCRhancqfeL+sa4Ke6v2ND53WIwCFD5hGsYExoI3EZQ==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.2.5.tgz",
"integrity": "sha512-5DjiiDfHqGgR2MS9D+AZ8kOfrzTGqLKywn8hoXpXXlJXIECGQ32t+gt/uiS2XyGBM2XQhR6ztUvbjZWeccFMoQ==",
"cpu": [
"arm64"
],
@@ -968,9 +979,9 @@
}
},
"node_modules/@biomejs/cli-linux-arm64-musl": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.7.tgz",
"integrity": "sha512-/afy8lto4CB8scWfMdt+NoCZtatBUF62Tk3ilWH2w8ENd5spLhM77zKlFZEvsKJv9AFNHknMl03zO67CiklL2Q==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.2.5.tgz",
"integrity": "sha512-5Ov2wgAFwqDvQiESnu7b9ufD1faRa+40uwrohgBopeY84El2TnBDoMNXx6iuQdreoFGjwW8vH6k68G21EpNERw==",
"cpu": [
"arm64"
],
@@ -985,9 +996,9 @@
}
},
"node_modules/@biomejs/cli-linux-x64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.7.tgz",
"integrity": "sha512-fJMc3ZEuo/NaMYo5rvoWjdSS5/uVSW+HPRQujucpZqm2ZCq71b8MKJ9U4th9yrv2L5+5NjPF0nqqILCl8HY/fg==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.2.5.tgz",
"integrity": "sha512-fq9meKm1AEXeAWan3uCg6XSP5ObA6F/Ovm89TwaMiy1DNIwdgxPkNwxlXJX8iM6oRbFysYeGnT0OG8diCWb9ew==",
"cpu": [
"x64"
],
@@ -1002,9 +1013,9 @@
}
},
"node_modules/@biomejs/cli-linux-x64-musl": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.7.tgz",
"integrity": "sha512-CQUtgH1tIN6e5wiYSJqzSwJumHYolNtaj1dwZGCnZXm2PZU1jOJof9TsyiP3bXNDb+VOR7oo7ZvY01If0W3iFQ==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.2.5.tgz",
"integrity": "sha512-AVqLCDb/6K7aPNIcxHaTQj01sl1m989CJIQFQEaiQkGr2EQwyOpaATJ473h+nXDUuAcREhccfRpe/tu+0wu0eQ==",
"cpu": [
"x64"
],
@@ -1019,9 +1030,9 @@
}
},
"node_modules/@biomejs/cli-win32-arm64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.7.tgz",
"integrity": "sha512-aJAE8eCNyRpcfx2JJAtsPtISnELJ0H4xVVSwnxm13bzI8RwbXMyVtxy2r5DV1xT3WiSP+7LxORcApWw0LM8HiA==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.2.5.tgz",
"integrity": "sha512-xaOIad4wBambwJa6mdp1FigYSIF9i7PCqRbvBqtIi9y29QtPVQ13sDGtUnsRoe6SjL10auMzQ6YAe+B3RpZXVg==",
"cpu": [
"arm64"
],
@@ -1036,9 +1047,9 @@
}
},
"node_modules/@biomejs/cli-win32-x64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.7.tgz",
"integrity": "sha512-pulzUshqv9Ed//MiE8MOUeeEkbkSHVDVY5Cz5wVAnH1DUqliCQG3j6s1POaITTFqFfo7AVIx2sWdKpx/GS+Nqw==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.2.5.tgz",
"integrity": "sha512-F/jhuXCssPFAuciMhHKk00xnCAxJRS/pUzVfXYmOMUp//XW7mO6QeCjsjvnm8L4AO/dG2VOB0O+fJPiJ2uXtIw==",
"cpu": [
"x64"
],
@@ -1164,9 +1175,9 @@
}
},
"node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": {
"version": "3.14.2",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz",
"integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1600,17 +1611,16 @@
}
},
"node_modules/@octokit/core": {
"version": "7.0.6",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.6.tgz",
"integrity": "sha512-DhGl4xMVFGVIyMwswXeyzdL4uXD5OGILGX5N8Y+f6W7LhC1Ze2poSNrkF/fedpVDHEEZ+PHFW0vL14I+mm8K3Q==",
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.5.tgz",
"integrity": "sha512-t54CUOsFMappY1Jbzb7fetWeO0n6K0k/4+/ZpkS+3Joz8I4VcvY9OiEBFRYISqaI2fq5sCiPtAjRDOzVYG8m+Q==",
"license": "MIT",
"peer": true,
"dependencies": {
"@octokit/auth-token": "^6.0.0",
"@octokit/graphql": "^9.0.3",
"@octokit/request": "^10.0.6",
"@octokit/request-error": "^7.0.2",
"@octokit/types": "^16.0.0",
"@octokit/graphql": "^9.0.2",
"@octokit/request": "^10.0.4",
"@octokit/request-error": "^7.0.1",
"@octokit/types": "^15.0.0",
"before-after-hook": "^4.0.0",
"universal-user-agent": "^7.0.0"
},
@@ -1619,12 +1629,12 @@
}
},
"node_modules/@octokit/endpoint": {
"version": "11.0.2",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.2.tgz",
"integrity": "sha512-4zCpzP1fWc7QlqunZ5bSEjxc6yLAlRTnDwKtgXfcI/FxxGoqedDG8V2+xJ60bV2kODqcGB+nATdtap/XYq2NZQ==",
"version": "11.0.1",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.1.tgz",
"integrity": "sha512-7P1dRAZxuWAOPI7kXfio88trNi/MegQ0IJD3vfgC3b+LZo1Qe6gRJc2v0mz2USWWJOKrB2h5spXCzGbw+fAdqA==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^16.0.0",
"@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.2"
},
"engines": {
@@ -1632,13 +1642,13 @@
}
},
"node_modules/@octokit/graphql": {
"version": "9.0.3",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.3.tgz",
"integrity": "sha512-grAEuupr/C1rALFnXTv6ZQhFuL1D8G5y8CN04RgrO4FIPMrtm+mcZzFG7dcBm+nq+1ppNixu+Jd78aeJOYxlGA==",
"version": "9.0.2",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.2.tgz",
"integrity": "sha512-iz6KzZ7u95Fzy9Nt2L8cG88lGRMr/qy1Q36ih/XVzMIlPDMYwaNLE/ENhqmIzgPrlNWiYJkwmveEetvxAgFBJw==",
"license": "MIT",
"dependencies": {
"@octokit/request": "^10.0.6",
"@octokit/types": "^16.0.0",
"@octokit/request": "^10.0.4",
"@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.0"
},
"engines": {
@@ -1646,18 +1656,18 @@
}
},
"node_modules/@octokit/openapi-types": {
"version": "27.0.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-27.0.0.tgz",
"integrity": "sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA==",
"version": "26.0.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-26.0.0.tgz",
"integrity": "sha512-7AtcfKtpo77j7Ts73b4OWhOZHTKo/gGY8bB3bNBQz4H+GRSWqx2yvj8TXRsbdTE0eRmYmXOEY66jM7mJ7LzfsA==",
"license": "MIT"
},
"node_modules/@octokit/plugin-paginate-rest": {
"version": "14.0.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-14.0.0.tgz",
"integrity": "sha512-fNVRE7ufJiAA3XUrha2omTA39M6IXIc6GIZLvlbsm8QOQCYvpq/LkMNGyFlB1d8hTDzsAXa3OKtybdMAYsV/fw==",
"version": "13.2.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-13.2.0.tgz",
"integrity": "sha512-YuAlyjR8o5QoRSOvMHxSJzPtogkNMgeMv2mpccrvdUGeC3MKyfi/hS+KiFwyH/iRKIKyx+eIMsDjbt3p9r2GYA==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^16.0.0"
"@octokit/types": "^15.0.0"
},
"engines": {
"node": ">= 20"
@@ -1667,12 +1677,12 @@
}
},
"node_modules/@octokit/plugin-rest-endpoint-methods": {
"version": "17.0.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-17.0.0.tgz",
"integrity": "sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw==",
"version": "16.1.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-16.1.0.tgz",
"integrity": "sha512-nCsyiKoGRnhH5LkH8hJEZb9swpqOcsW+VXv1QoyUNQXJeVODG4+xM6UICEqyqe9XFr6LkL8BIiFCPev8zMDXPw==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^16.0.0"
"@octokit/types": "^15.0.0"
},
"engines": {
"node": ">= 20"
@@ -1682,14 +1692,14 @@
}
},
"node_modules/@octokit/request": {
"version": "10.0.7",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.7.tgz",
"integrity": "sha512-v93h0i1yu4idj8qFPZwjehoJx4j3Ntn+JhXsdJrG9pYaX6j/XRz2RmasMUHtNgQD39nrv/VwTWSqK0RNXR8upA==",
"version": "10.0.5",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.5.tgz",
"integrity": "sha512-TXnouHIYLtgDhKo+N6mXATnDBkV05VwbR0TtMWpgTHIoQdRQfCSzmy/LGqR1AbRMbijq/EckC/E3/ZNcU92NaQ==",
"license": "MIT",
"dependencies": {
"@octokit/endpoint": "^11.0.2",
"@octokit/request-error": "^7.0.2",
"@octokit/types": "^16.0.0",
"@octokit/endpoint": "^11.0.1",
"@octokit/request-error": "^7.0.1",
"@octokit/types": "^15.0.0",
"fast-content-type-parse": "^3.0.0",
"universal-user-agent": "^7.0.2"
},
@@ -1698,24 +1708,24 @@
}
},
"node_modules/@octokit/request-error": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.1.0.tgz",
"integrity": "sha512-KMQIfq5sOPpkQYajXHwnhjCC0slzCNScLHs9JafXc4RAJI+9f+jNDlBNaIMTvazOPLgb4BnlhGJOTbnN0wIjPw==",
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.0.1.tgz",
"integrity": "sha512-CZpFwV4+1uBrxu7Cw8E5NCXDWFNf18MSY23TdxCBgjw1tXXHvTrZVsXlW8hgFTOLw8RQR1BBrMvYRtuyaijHMA==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^16.0.0"
"@octokit/types": "^15.0.0"
},
"engines": {
"node": ">= 20"
}
},
"node_modules/@octokit/types": {
"version": "16.0.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-16.0.0.tgz",
"integrity": "sha512-sKq+9r1Mm4efXW1FCk7hFSeJo4QKreL/tTbR0rz/qx/r1Oa2VV83LTA/H/MuCOX7uCIJmQVRKBcbmWoySjAnSg==",
"version": "15.0.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-15.0.0.tgz",
"integrity": "sha512-8o6yDfmoGJUIeR9OfYU0/TUJTnMPG2r68+1yEdUeG2Fdqpj8Qetg0ziKIgcBm0RW/j29H41WP37CYCEhp6GoHQ==",
"license": "MIT",
"dependencies": {
"@octokit/openapi-types": "^27.0.0"
"@octokit/openapi-types": "^26.0.0"
}
},
"node_modules/@opentelemetry/api": {
@@ -1900,12 +1910,12 @@
"license": "MIT"
},
"node_modules/@types/node": {
"version": "24.10.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
"integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"version": "24.7.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz",
"integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==",
"license": "MIT",
"dependencies": {
"undici-types": "~7.16.0"
"undici-types": "~7.14.0"
}
},
"node_modules/@types/node-fetch": {
@@ -2502,7 +2512,6 @@
}
],
"license": "MIT",
"peer": true,
"dependencies": {
"caniuse-lite": "^1.0.30001733",
"electron-to-chromium": "^1.5.199",
@@ -3270,9 +3279,9 @@
}
},
"node_modules/glob": {
"version": "10.5.0",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz",
"integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==",
"version": "10.4.5",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
"integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"dev": true,
"license": "ISC",
"dependencies": {
@@ -3630,7 +3639,6 @@
"integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@jest/core": "30.2.0",
"@jest/types": "30.2.0",
@@ -4239,11 +4247,10 @@
"license": "MIT"
},
"node_modules/js-yaml": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
"integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true,
"license": "MIT",
"dependencies": {
"argparse": "^2.0.1"
},
@@ -5222,9 +5229,9 @@
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
},
"node_modules/ts-jest": {
"version": "29.4.5",
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.5.tgz",
"integrity": "sha512-HO3GyiWn2qvTQA4kTgjDcXiMwYQt68a1Y8+JuLRVpdIzm+UOLSHgl/XqR4c6nzJkq5rOkjc02O2I7P7l/Yof0Q==",
"version": "29.4.4",
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.4.tgz",
"integrity": "sha512-ccVcRABct5ZELCT5U0+DZwkXMCcOCLi2doHRrKy1nK/s7J7bch6TzJMsrY09WxgUUIP/ITfmcDS8D2yl63rnXw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -5234,7 +5241,7 @@
"json5": "^2.2.3",
"lodash.memoize": "^4.1.2",
"make-error": "^1.3.6",
"semver": "^7.7.3",
"semver": "^7.7.2",
"type-fest": "^4.41.0",
"yargs-parser": "^21.1.1"
},
@@ -5275,9 +5282,9 @@
}
},
"node_modules/ts-jest/node_modules/semver": {
"version": "7.7.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
"integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
"version": "7.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
"integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
"dev": true,
"license": "ISC",
"bin": {
@@ -5329,7 +5336,6 @@
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"dev": true,
"license": "Apache-2.0",
"peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -5353,21 +5359,18 @@
}
},
"node_modules/undici": {
"version": "5.28.5",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
"integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
"version": "7.16.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-7.16.0.tgz",
"integrity": "sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
},
"engines": {
"node": ">=14.0"
"node": ">=20.18.1"
}
},
"node_modules/undici-types": {
"version": "7.16.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
"integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==",
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz",
"integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==",
"license": "MIT"
},
"node_modules/universal-user-agent": {
@@ -5805,6 +5808,16 @@
"requires": {
"tunnel": "^0.0.6",
"undici": "^5.25.4"
},
"dependencies": {
"undici": {
"version": "5.29.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
"integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"requires": {
"@fastify/busboy": "^2.0.0"
}
}
}
},
"@actions/io": {
@@ -6072,7 +6085,6 @@
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz",
"integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==",
"dev": true,
"peer": true,
"requires": {
"@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.27.1",
@@ -6395,74 +6407,74 @@
"dev": true
},
"@biomejs/biome": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.7.tgz",
"integrity": "sha512-CTbAS/jNAiUc6rcq94BrTB8z83O9+BsgWj2sBCQg9rD6Wkh2gjfR87usjx0Ncx0zGXP1NKgT7JNglay5Zfs9jw==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.2.5.tgz",
"integrity": "sha512-zcIi+163Rc3HtyHbEO7CjeHq8DjQRs40HsGbW6vx2WI0tg8mYQOPouhvHSyEnCBAorfYNnKdR64/IxO7xQ5faw==",
"dev": true,
"requires": {
"@biomejs/cli-darwin-arm64": "2.3.7",
"@biomejs/cli-darwin-x64": "2.3.7",
"@biomejs/cli-linux-arm64": "2.3.7",
"@biomejs/cli-linux-arm64-musl": "2.3.7",
"@biomejs/cli-linux-x64": "2.3.7",
"@biomejs/cli-linux-x64-musl": "2.3.7",
"@biomejs/cli-win32-arm64": "2.3.7",
"@biomejs/cli-win32-x64": "2.3.7"
"@biomejs/cli-darwin-arm64": "2.2.5",
"@biomejs/cli-darwin-x64": "2.2.5",
"@biomejs/cli-linux-arm64": "2.2.5",
"@biomejs/cli-linux-arm64-musl": "2.2.5",
"@biomejs/cli-linux-x64": "2.2.5",
"@biomejs/cli-linux-x64-musl": "2.2.5",
"@biomejs/cli-win32-arm64": "2.2.5",
"@biomejs/cli-win32-x64": "2.2.5"
}
},
"@biomejs/cli-darwin-arm64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.7.tgz",
"integrity": "sha512-LirkamEwzIUULhXcf2D5b+NatXKeqhOwilM+5eRkbrnr6daKz9rsBL0kNZ16Hcy4b8RFq22SG4tcLwM+yx/wFA==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.2.5.tgz",
"integrity": "sha512-MYT+nZ38wEIWVcL5xLyOhYQQ7nlWD0b/4mgATW2c8dvq7R4OQjt/XGXFkXrmtWmQofaIM14L7V8qIz/M+bx5QQ==",
"dev": true,
"optional": true
},
"@biomejs/cli-darwin-x64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.7.tgz",
"integrity": "sha512-Q4TO633kvrMQkKIV7wmf8HXwF0dhdTD9S458LGE24TYgBjSRbuhvio4D5eOQzirEYg6eqxfs53ga/rbdd8nBKg==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.2.5.tgz",
"integrity": "sha512-FLIEl73fv0R7dI10EnEiZLw+IMz3mWLnF95ASDI0kbx6DDLJjWxE5JxxBfmG+udz1hIDd3fr5wsuP7nwuTRdAg==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-arm64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.7.tgz",
"integrity": "sha512-inHOTdlstUBzgjDcx0ge71U4SVTbwAljmkfi3MC5WzsYCRhancqfeL+sa4Ke6v2ND53WIwCFD5hGsYExoI3EZQ==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.2.5.tgz",
"integrity": "sha512-5DjiiDfHqGgR2MS9D+AZ8kOfrzTGqLKywn8hoXpXXlJXIECGQ32t+gt/uiS2XyGBM2XQhR6ztUvbjZWeccFMoQ==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-arm64-musl": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.7.tgz",
"integrity": "sha512-/afy8lto4CB8scWfMdt+NoCZtatBUF62Tk3ilWH2w8ENd5spLhM77zKlFZEvsKJv9AFNHknMl03zO67CiklL2Q==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.2.5.tgz",
"integrity": "sha512-5Ov2wgAFwqDvQiESnu7b9ufD1faRa+40uwrohgBopeY84El2TnBDoMNXx6iuQdreoFGjwW8vH6k68G21EpNERw==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-x64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.7.tgz",
"integrity": "sha512-fJMc3ZEuo/NaMYo5rvoWjdSS5/uVSW+HPRQujucpZqm2ZCq71b8MKJ9U4th9yrv2L5+5NjPF0nqqILCl8HY/fg==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.2.5.tgz",
"integrity": "sha512-fq9meKm1AEXeAWan3uCg6XSP5ObA6F/Ovm89TwaMiy1DNIwdgxPkNwxlXJX8iM6oRbFysYeGnT0OG8diCWb9ew==",
"dev": true,
"optional": true
},
"@biomejs/cli-linux-x64-musl": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.7.tgz",
"integrity": "sha512-CQUtgH1tIN6e5wiYSJqzSwJumHYolNtaj1dwZGCnZXm2PZU1jOJof9TsyiP3bXNDb+VOR7oo7ZvY01If0W3iFQ==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.2.5.tgz",
"integrity": "sha512-AVqLCDb/6K7aPNIcxHaTQj01sl1m989CJIQFQEaiQkGr2EQwyOpaATJ473h+nXDUuAcREhccfRpe/tu+0wu0eQ==",
"dev": true,
"optional": true
},
"@biomejs/cli-win32-arm64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.7.tgz",
"integrity": "sha512-aJAE8eCNyRpcfx2JJAtsPtISnELJ0H4xVVSwnxm13bzI8RwbXMyVtxy2r5DV1xT3WiSP+7LxORcApWw0LM8HiA==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.2.5.tgz",
"integrity": "sha512-xaOIad4wBambwJa6mdp1FigYSIF9i7PCqRbvBqtIi9y29QtPVQ13sDGtUnsRoe6SjL10auMzQ6YAe+B3RpZXVg==",
"dev": true,
"optional": true
},
"@biomejs/cli-win32-x64": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.7.tgz",
"integrity": "sha512-pulzUshqv9Ed//MiE8MOUeeEkbkSHVDVY5Cz5wVAnH1DUqliCQG3j6s1POaITTFqFfo7AVIx2sWdKpx/GS+Nqw==",
"version": "2.2.5",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.2.5.tgz",
"integrity": "sha512-F/jhuXCssPFAuciMhHKk00xnCAxJRS/pUzVfXYmOMUp//XW7mO6QeCjsjvnm8L4AO/dG2VOB0O+fJPiJ2uXtIw==",
"dev": true,
"optional": true
},
@@ -6566,9 +6578,9 @@
}
},
"js-yaml": {
"version": "3.14.2",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz",
"integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"dev": true,
"requires": {
"argparse": "^1.0.7",
@@ -6893,86 +6905,85 @@
"integrity": "sha512-P4YJBPdPSpWTQ1NU4XYdvHvXJJDxM6YwpS0FZHRgP7YFkdVxsWcpWGy/NVqlAA7PcPCnMacXlRm1y2PFZRWL/w=="
},
"@octokit/core": {
"version": "7.0.6",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.6.tgz",
"integrity": "sha512-DhGl4xMVFGVIyMwswXeyzdL4uXD5OGILGX5N8Y+f6W7LhC1Ze2poSNrkF/fedpVDHEEZ+PHFW0vL14I+mm8K3Q==",
"peer": true,
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.5.tgz",
"integrity": "sha512-t54CUOsFMappY1Jbzb7fetWeO0n6K0k/4+/ZpkS+3Joz8I4VcvY9OiEBFRYISqaI2fq5sCiPtAjRDOzVYG8m+Q==",
"requires": {
"@octokit/auth-token": "^6.0.0",
"@octokit/graphql": "^9.0.3",
"@octokit/request": "^10.0.6",
"@octokit/request-error": "^7.0.2",
"@octokit/types": "^16.0.0",
"@octokit/graphql": "^9.0.2",
"@octokit/request": "^10.0.4",
"@octokit/request-error": "^7.0.1",
"@octokit/types": "^15.0.0",
"before-after-hook": "^4.0.0",
"universal-user-agent": "^7.0.0"
}
},
"@octokit/endpoint": {
"version": "11.0.2",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.2.tgz",
"integrity": "sha512-4zCpzP1fWc7QlqunZ5bSEjxc6yLAlRTnDwKtgXfcI/FxxGoqedDG8V2+xJ60bV2kODqcGB+nATdtap/XYq2NZQ==",
"version": "11.0.1",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.1.tgz",
"integrity": "sha512-7P1dRAZxuWAOPI7kXfio88trNi/MegQ0IJD3vfgC3b+LZo1Qe6gRJc2v0mz2USWWJOKrB2h5spXCzGbw+fAdqA==",
"requires": {
"@octokit/types": "^16.0.0",
"@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.2"
}
},
"@octokit/graphql": {
"version": "9.0.3",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.3.tgz",
"integrity": "sha512-grAEuupr/C1rALFnXTv6ZQhFuL1D8G5y8CN04RgrO4FIPMrtm+mcZzFG7dcBm+nq+1ppNixu+Jd78aeJOYxlGA==",
"version": "9.0.2",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.2.tgz",
"integrity": "sha512-iz6KzZ7u95Fzy9Nt2L8cG88lGRMr/qy1Q36ih/XVzMIlPDMYwaNLE/ENhqmIzgPrlNWiYJkwmveEetvxAgFBJw==",
"requires": {
"@octokit/request": "^10.0.6",
"@octokit/types": "^16.0.0",
"@octokit/request": "^10.0.4",
"@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.0"
}
},
"@octokit/openapi-types": {
"version": "27.0.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-27.0.0.tgz",
"integrity": "sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA=="
"version": "26.0.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-26.0.0.tgz",
"integrity": "sha512-7AtcfKtpo77j7Ts73b4OWhOZHTKo/gGY8bB3bNBQz4H+GRSWqx2yvj8TXRsbdTE0eRmYmXOEY66jM7mJ7LzfsA=="
},
"@octokit/plugin-paginate-rest": {
"version": "14.0.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-14.0.0.tgz",
"integrity": "sha512-fNVRE7ufJiAA3XUrha2omTA39M6IXIc6GIZLvlbsm8QOQCYvpq/LkMNGyFlB1d8hTDzsAXa3OKtybdMAYsV/fw==",
"version": "13.2.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-13.2.0.tgz",
"integrity": "sha512-YuAlyjR8o5QoRSOvMHxSJzPtogkNMgeMv2mpccrvdUGeC3MKyfi/hS+KiFwyH/iRKIKyx+eIMsDjbt3p9r2GYA==",
"requires": {
"@octokit/types": "^16.0.0"
"@octokit/types": "^15.0.0"
}
},
"@octokit/plugin-rest-endpoint-methods": {
"version": "17.0.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-17.0.0.tgz",
"integrity": "sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw==",
"version": "16.1.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-16.1.0.tgz",
"integrity": "sha512-nCsyiKoGRnhH5LkH8hJEZb9swpqOcsW+VXv1QoyUNQXJeVODG4+xM6UICEqyqe9XFr6LkL8BIiFCPev8zMDXPw==",
"requires": {
"@octokit/types": "^16.0.0"
"@octokit/types": "^15.0.0"
}
},
"@octokit/request": {
"version": "10.0.7",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.7.tgz",
"integrity": "sha512-v93h0i1yu4idj8qFPZwjehoJx4j3Ntn+JhXsdJrG9pYaX6j/XRz2RmasMUHtNgQD39nrv/VwTWSqK0RNXR8upA==",
"version": "10.0.5",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.5.tgz",
"integrity": "sha512-TXnouHIYLtgDhKo+N6mXATnDBkV05VwbR0TtMWpgTHIoQdRQfCSzmy/LGqR1AbRMbijq/EckC/E3/ZNcU92NaQ==",
"requires": {
"@octokit/endpoint": "^11.0.2",
"@octokit/request-error": "^7.0.2",
"@octokit/types": "^16.0.0",
"@octokit/endpoint": "^11.0.1",
"@octokit/request-error": "^7.0.1",
"@octokit/types": "^15.0.0",
"fast-content-type-parse": "^3.0.0",
"universal-user-agent": "^7.0.2"
}
},
"@octokit/request-error": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.1.0.tgz",
"integrity": "sha512-KMQIfq5sOPpkQYajXHwnhjCC0slzCNScLHs9JafXc4RAJI+9f+jNDlBNaIMTvazOPLgb4BnlhGJOTbnN0wIjPw==",
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.0.1.tgz",
"integrity": "sha512-CZpFwV4+1uBrxu7Cw8E5NCXDWFNf18MSY23TdxCBgjw1tXXHvTrZVsXlW8hgFTOLw8RQR1BBrMvYRtuyaijHMA==",
"requires": {
"@octokit/types": "^16.0.0"
"@octokit/types": "^15.0.0"
}
},
"@octokit/types": {
"version": "16.0.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-16.0.0.tgz",
"integrity": "sha512-sKq+9r1Mm4efXW1FCk7hFSeJo4QKreL/tTbR0rz/qx/r1Oa2VV83LTA/H/MuCOX7uCIJmQVRKBcbmWoySjAnSg==",
"version": "15.0.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-15.0.0.tgz",
"integrity": "sha512-8o6yDfmoGJUIeR9OfYU0/TUJTnMPG2r68+1yEdUeG2Fdqpj8Qetg0ziKIgcBm0RW/j29H41WP37CYCEhp6GoHQ==",
"requires": {
"@octokit/openapi-types": "^27.0.0"
"@octokit/openapi-types": "^26.0.0"
}
},
"@opentelemetry/api": {
@@ -7126,11 +7137,11 @@
"dev": true
},
"@types/node": {
"version": "24.10.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
"integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"version": "24.7.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz",
"integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==",
"requires": {
"undici-types": "~7.16.0"
"undici-types": "~7.14.0"
}
},
"@types/node-fetch": {
@@ -7503,7 +7514,6 @@
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.2.tgz",
"integrity": "sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==",
"dev": true,
"peer": true,
"requires": {
"caniuse-lite": "^1.0.30001733",
"electron-to-chromium": "^1.5.199",
@@ -8012,9 +8022,9 @@
"dev": true
},
"glob": {
"version": "10.5.0",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz",
"integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==",
"version": "10.4.5",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
"integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"dev": true,
"requires": {
"foreground-child": "^3.1.0",
@@ -8250,7 +8260,6 @@
"resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz",
"integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==",
"dev": true,
"peer": true,
"requires": {
"@jest/core": "30.2.0",
"@jest/types": "30.2.0",
@@ -8692,9 +8701,9 @@
"dev": true
},
"js-yaml": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
"integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true,
"requires": {
"argparse": "^2.0.1"
@@ -9348,9 +9357,9 @@
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
},
"ts-jest": {
"version": "29.4.5",
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.5.tgz",
"integrity": "sha512-HO3GyiWn2qvTQA4kTgjDcXiMwYQt68a1Y8+JuLRVpdIzm+UOLSHgl/XqR4c6nzJkq5rOkjc02O2I7P7l/Yof0Q==",
"version": "29.4.4",
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.4.tgz",
"integrity": "sha512-ccVcRABct5ZELCT5U0+DZwkXMCcOCLi2doHRrKy1nK/s7J7bch6TzJMsrY09WxgUUIP/ITfmcDS8D2yl63rnXw==",
"dev": true,
"requires": {
"bs-logger": "^0.2.6",
@@ -9359,15 +9368,15 @@
"json5": "^2.2.3",
"lodash.memoize": "^4.1.2",
"make-error": "^1.3.6",
"semver": "^7.7.3",
"semver": "^7.7.2",
"type-fest": "^4.41.0",
"yargs-parser": "^21.1.1"
},
"dependencies": {
"semver": {
"version": "7.7.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
"integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
"version": "7.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
"integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
"dev": true
}
}
@@ -9398,8 +9407,7 @@
"version": "5.9.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"dev": true,
"peer": true
"dev": true
},
"uglify-js": {
"version": "3.19.3",
@@ -9409,17 +9417,14 @@
"optional": true
},
"undici": {
"version": "5.28.5",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
"integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
"requires": {
"@fastify/busboy": "^2.0.0"
}
"version": "7.16.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-7.16.0.tgz",
"integrity": "sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g=="
},
"undici-types": {
"version": "7.16.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
"integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw=="
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz",
"integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA=="
},
"universal-user-agent": {
"version": "7.0.3",

View File

@@ -17,12 +17,7 @@
"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": {
@@ -32,22 +27,22 @@
"@actions/glob": "^0.5.0",
"@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.2",
"@octokit/core": "^7.0.6",
"@octokit/plugin-paginate-rest": "^14.0.0",
"@octokit/plugin-rest-endpoint-methods": "^17.0.0",
"@octokit/core": "^7.0.5",
"@octokit/plugin-paginate-rest": "^13.2.0",
"@octokit/plugin-rest-endpoint-methods": "^16.1.0",
"@renovatebot/pep440": "^4.2.1",
"smol-toml": "^1.4.2",
"undici": "5.28.5"
"undici": "^7.16.0"
},
"devDependencies": {
"@biomejs/biome": "2.3.7",
"@biomejs/biome": "2.2.5",
"@types/js-yaml": "^4.0.9",
"@types/node": "^24.10.1",
"@types/node": "^24.7.0",
"@types/semver": "^7.7.1",
"@vercel/ncc": "^0.38.4",
"jest": "^30.2.0",
"js-yaml": "^4.1.0",
"ts-jest": "^29.4.5",
"ts-jest": "^29.4.4",
"typescript": "^5.9.3"
}
}

View File

@@ -13,16 +13,15 @@ import {
restoreCache as shouldRestoreCache,
workingDirectory,
} from "../utils/inputs";
import { getArch, getOSNameVersion, getPlatform } from "../utils/platforms";
import { getArch, getPlatform } from "../utils/platforms";
export const STATE_CACHE_KEY = "cache-key";
export const STATE_CACHE_MATCHED_KEY = "cache-matched-key";
const CACHE_VERSION = "2";
const CACHE_VERSION = "1";
export async function restoreCache(): Promise<void> {
const cacheKey = await computeKeys();
core.saveState(STATE_CACHE_KEY, cacheKey);
core.setOutput("cache-key", cacheKey);
if (!shouldRestoreCache) {
core.info("restore-cache is false. Skipping restore cache step.");
@@ -33,12 +32,7 @@ export async function restoreCache(): Promise<void> {
core.info(
`Trying to restore uv cache from GitHub Actions cache with key: ${cacheKey}`,
);
if (cacheLocalPath === undefined) {
throw new Error(
"cache-local-path is not set. Cannot restore cache without a valid cache path.",
);
}
const cachePaths = [cacheLocalPath.path];
const cachePaths = [cacheLocalPath];
if (cachePython) {
cachePaths.push(pythonDir);
}
@@ -73,10 +67,9 @@ async function computeKeys(): Promise<string> {
const suffix = cacheSuffix ? `-${cacheSuffix}` : "";
const pythonVersion = await getPythonVersion();
const platform = await getPlatform();
const osNameVersion = getOSNameVersion();
const pruned = pruneCache ? "-pruned" : "";
const python = cachePython ? "-py" : "";
return `setup-uv-${CACHE_VERSION}-${getArch()}-${platform}-${osNameVersion}-${pythonVersion}${pruned}${python}${cacheDependencyPathHash}${suffix}`;
return `setup-uv-${CACHE_VERSION}-${getArch()}-${platform}-${pythonVersion}${pruned}${python}${cacheDependencyPathHash}${suffix}`;
}
async function getPythonVersion(): Promise<string> {

View File

@@ -1,545 +1,5 @@
// AUTOGENERATED_DO_NOT_EDIT
export const KNOWN_CHECKSUMS: { [key: string]: string } = {
"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":

View File

@@ -108,21 +108,12 @@ async function downloadVersion(
await validateChecksum(checkSum, downloadPath, arch, platform, version);
let uvDir: string;
const extension = getExtension(platform);
if (platform === "pc-windows-msvc") {
const fullPathWithExtension = `${downloadPath}${extension}`;
await fs.copyFile(downloadPath, fullPathWithExtension);
uvDir = await tc.extractZip(fullPathWithExtension);
// On windows extracting the zip does not create an intermediate directory
try {
// Try tar first as it's much faster, but only bsdtar supports zip files,
// so this my fail if another tar, like gnu tar, ends up being used.
uvDir = await tc.extractTar(downloadPath, undefined, "x");
} catch (err) {
core.info(
`Extracting with tar failed, falling back to zip extraction: ${(err as Error).message}`,
);
const extension = getExtension(platform);
const fullPathWithExtension = `${downloadPath}${extension}`;
await fs.copyFile(downloadPath, fullPathWithExtension);
uvDir = await tc.extractZip(fullPathWithExtension);
}
} else {
const extractedDir = await tc.extractTar(downloadPath);
uvDir = path.join(extractedDir, artifactName);
@@ -150,25 +141,23 @@ export async function resolveVersion(
let version: string;
const isSimpleMinimumVersionSpecifier =
versionInput.includes(">") && !versionInput.includes(",");
const resolveVersionSpecifierToLatest =
isSimpleMinimumVersionSpecifier && resolutionStrategy === "highest";
if (resolveVersionSpecifierToLatest) {
if (isSimpleMinimumVersionSpecifier) {
core.info("Found minimum version specifier, using latest version");
}
if (manifestFile) {
version =
versionInput === "latest" || resolveVersionSpecifierToLatest
versionInput === "latest" || isSimpleMinimumVersionSpecifier
? await getLatestVersionInManifest(manifestFile)
: versionInput;
} else {
version =
versionInput === "latest" || resolveVersionSpecifierToLatest
versionInput === "latest" || isSimpleMinimumVersionSpecifier
? await getLatestVersion(githubToken)
: versionInput;
}
if (tc.isExplicitVersion(version)) {
core.debug(`Version ${version} is an explicit version.`);
if (resolveVersionSpecifierToLatest) {
if (isSimpleMinimumVersionSpecifier) {
if (!pep440.satisfies(version, versionInput)) {
throw new Error(`No version found for ${versionInput}`);
}

View File

@@ -26,9 +26,6 @@ export async function run(): Promise<void> {
} else {
core.info("save-cache is false. Skipping save cache step.");
}
// https://github.com/nodejs/node/issues/56645#issuecomment-3077594952
await new Promise((resolve) => setTimeout(resolve, 50));
// node will stay alive if any promises are not resolved,
// which is a possibility if HTTP requests are dangling
// due to retries or timeouts. We know that if we got here
@@ -59,18 +56,10 @@ async function saveCache(): Promise<void> {
await pruneCache();
}
if (cacheLocalPath === undefined) {
throw new Error(
"cache-local-path is not set. Cannot save cache without a valid cache path.",
);
}
let actualCachePath = cacheLocalPath.path;
if (
process.env.UV_CACHE_DIR &&
process.env.UV_CACHE_DIR !== cacheLocalPath.path
) {
let actualCachePath = cacheLocalPath;
if (process.env.UV_CACHE_DIR && process.env.UV_CACHE_DIR !== cacheLocalPath) {
core.warning(
`The environment variable UV_CACHE_DIR has been changed to "${process.env.UV_CACHE_DIR}", by an action or step running after astral-sh/setup-uv. This can lead to unexpected behavior. If you expected this to happen set the cache-local-path input to "${process.env.UV_CACHE_DIR}" instead of "${cacheLocalPath.path}".`,
`The environment variable UV_CACHE_DIR has been changed to "${process.env.UV_CACHE_DIR}", by an action or step running after astral-sh/setup-uv. This can lead to unexpected behavior. If you expected this to happen set the cache-local-path input to "${process.env.UV_CACHE_DIR}" instead of "${cacheLocalPath}".`,
);
actualCachePath = process.env.UV_CACHE_DIR;
}

View File

@@ -8,11 +8,11 @@ import {
resolveVersion,
tryGetFromToolCache,
} from "./download/download-version";
import { getConfigValueFromTomlFile } from "./utils/config-file";
import { STATE_UV_PATH, STATE_UV_VERSION } from "./utils/constants";
import {
activateEnvironment as activateEnvironmentInput,
addProblemMatchers,
CacheLocalSource,
cacheLocalPath,
checkSum,
enableCache,
@@ -66,8 +66,6 @@ async function run(): Promise<void> {
if (enableCache) {
await restoreCache();
}
// https://github.com/nodejs/node/issues/56645#issuecomment-3077594952
await new Promise((resolve) => setTimeout(resolve, 50));
process.exit(0);
} catch (err) {
core.setFailed((err as Error).message);
@@ -75,7 +73,8 @@ async function run(): Promise<void> {
}
function detectEmptyWorkdir(): void {
if (fs.readdirSync(workingDirectory).length === 0) {
const dirToCheck = workingDirectory || ".";
if (fs.readdirSync(dirToCheck).length === 0) {
if (ignoreEmptyWorkdir) {
core.info(
"Empty workdir detected. Ignoring because ignore-empty-workdir is enabled",
@@ -252,15 +251,16 @@ async function activateEnvironment(): Promise<void> {
}
function setCacheDir(): void {
if (cacheLocalPath !== undefined) {
if (cacheLocalPath.source === CacheLocalSource.Config) {
if (enableCache) {
const cacheDirFromConfig = getConfigValueFromTomlFile("", "cache-dir");
if (cacheDirFromConfig !== undefined) {
core.info(
"Using cache-dir from uv config file, not modifying UV_CACHE_DIR",
);
return;
}
core.exportVariable("UV_CACHE_DIR", cacheLocalPath.path);
core.info(`Set UV_CACHE_DIR to ${cacheLocalPath.path}`);
core.exportVariable("UV_CACHE_DIR", cacheLocalPath);
core.info(`Set UV_CACHE_DIR to ${cacheLocalPath}`);
}
}

View File

@@ -2,13 +2,6 @@ import path from "node:path";
import * as core from "@actions/core";
import { getConfigValueFromTomlFile } from "./config-file";
export enum CacheLocalSource {
Input,
Config,
Env,
Default,
}
export const workingDirectory = core.getInput("working-directory");
export const version = core.getInput("version");
export const versionFile = getVersionFile();
@@ -87,51 +80,32 @@ function getToolDir(): string | undefined {
return undefined;
}
function getCacheLocalPath():
| {
path: string;
source: CacheLocalSource;
}
| undefined {
function getCacheLocalPath(): string {
const cacheLocalPathInput = core.getInput("cache-local-path");
if (cacheLocalPathInput !== "") {
const tildeExpanded = expandTilde(cacheLocalPathInput);
return {
path: resolveRelativePath(tildeExpanded),
source: CacheLocalSource.Input,
};
return resolveRelativePath(tildeExpanded);
}
const cacheDirFromConfig = getCacheDirFromConfig();
if (cacheDirFromConfig !== undefined) {
return { path: cacheDirFromConfig, source: CacheLocalSource.Config };
return cacheDirFromConfig;
}
if (process.env.UV_CACHE_DIR !== undefined) {
core.info(`UV_CACHE_DIR is already set to ${process.env.UV_CACHE_DIR}`);
return { path: process.env.UV_CACHE_DIR, source: CacheLocalSource.Env };
return process.env.UV_CACHE_DIR;
}
if (getEnableCache()) {
if (process.env.RUNNER_ENVIRONMENT === "github-hosted") {
if (process.env.RUNNER_TEMP !== undefined) {
return {
path: `${process.env.RUNNER_TEMP}${path.sep}setup-uv-cache`,
source: CacheLocalSource.Default,
};
}
throw Error(
"Could not determine UV_CACHE_DIR. Please make sure RUNNER_TEMP is set or provide the cache-local-path input",
);
if (process.env.RUNNER_ENVIRONMENT === "github-hosted") {
if (process.env.RUNNER_TEMP !== undefined) {
return `${process.env.RUNNER_TEMP}${path.sep}setup-uv-cache`;
}
if (process.platform === "win32") {
return {
path: `${process.env.APPDATA}${path.sep}uv${path.sep}cache`,
source: CacheLocalSource.Default,
};
}
return {
path: `${process.env.HOME}${path.sep}.cache${path.sep}uv`,
source: CacheLocalSource.Default,
};
throw Error(
"Could not determine UV_CACHE_DIR. Please make sure RUNNER_TEMP is set or provide the cache-local-path input",
);
}
if (process.platform === "win32") {
return `${process.env.APPDATA}${path.sep}uv${path.sep}cache`;
}
return `${process.env.HOME}${path.sep}.cache${path.sep}uv`;
}
function getCacheDirFromConfig(): string | undefined {

View File

@@ -1,5 +1,3 @@
import fs from "node:fs";
import os from "node:os";
import * as core from "@actions/core";
import * as exec from "@actions/exec";
export type Platform =
@@ -76,71 +74,3 @@ async function isMuslOs(): Promise<boolean> {
return false;
}
}
/**
* Returns OS name and version for cache key differentiation.
* Examples: "ubuntu-22.04", "macos-14", "windows-2022"
* Throws if OS detection fails.
*/
export function getOSNameVersion(): string {
const platform = process.platform;
if (platform === "linux") {
return getLinuxOSNameVersion();
}
if (platform === "darwin") {
return getMacOSNameVersion();
}
if (platform === "win32") {
return getWindowsNameVersion();
}
throw new Error(`Unsupported platform: ${platform}`);
}
function getLinuxOSNameVersion(): string {
const files = ["/etc/os-release", "/usr/lib/os-release"];
for (const file of files) {
try {
const content = fs.readFileSync(file, "utf8");
const id = parseOsReleaseValue(content, "ID");
const versionId = parseOsReleaseValue(content, "VERSION_ID");
if (id && versionId) {
return `${id}-${versionId}`;
}
} catch {
// Try next file
}
}
throw new Error(
"Failed to determine Linux distribution. " +
"Could not read /etc/os-release or /usr/lib/os-release",
);
}
function parseOsReleaseValue(content: string, key: string): string | undefined {
const regex = new RegExp(`^${key}=["']?([^"'\\n]*)["']?$`, "m");
const match = content.match(regex);
return match?.[1];
}
function getMacOSNameVersion(): string {
const darwinVersion = Number.parseInt(os.release().split(".")[0], 10);
if (Number.isNaN(darwinVersion)) {
throw new Error(`Failed to parse macOS version from: ${os.release()}`);
}
const macosVersion = darwinVersion - 9;
return `macos-${macosVersion}`;
}
function getWindowsNameVersion(): string {
const version = os.version();
const match = version.match(/Windows(?: Server)? (\d+)/);
if (!match) {
throw new Error(`Failed to parse Windows version from: ${version}`);
}
return `windows-${match[1]}`;
}

View File

@@ -6,7 +6,7 @@
"outDir": "./lib" /* Redirect output structure to the directory. */,
"rootDir": "./src" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */,
"strict": true /* Enable all strict type-checking options. */,
"target": "ES2022" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
"target": "ES2024" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
},
"exclude": ["node_modules", "**/*.test.ts"]
}

File diff suppressed because it is too large Load Diff