Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot]
f464a6ab61 Bump @octokit/plugin-rest-endpoint-methods from 16.1.1 to 17.0.0
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 16.1.1 to 17.0.0.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v16.1.1...v17.0.0)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-version: 17.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 18:49:42 +00:00
27 changed files with 685 additions and 4437 deletions

View File

@@ -59,7 +59,7 @@ src/
#### 1. Install Dependencies #### 1. Install Dependencies
```bash ```bash
npm ci --ignore-scripts npm install
``` ```
**Timing**: ~20-30 seconds **Timing**: ~20-30 seconds
@@ -236,7 +236,7 @@ This file is the authoritative source for understanding available action paramet
### Build Failures ### 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 - **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 - **Test failures**: Check if test fixtures have been modified or if logic changes broke assumptions

View File

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

View File

@@ -41,13 +41,13 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9 uses: github/codeql-action/init@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
with: with:
languages: ${{ matrix.language }} languages: ${{ matrix.language }}
source-root: src source-root: src
@@ -59,7 +59,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # 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) # If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild - name: Autobuild
uses: github/codeql-action/autobuild@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9 uses: github/codeql-action/autobuild@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
# Command-line programs to run using the OS shell. # Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl # 📚 https://git.io/JvXDl
@@ -73,4 +73,4 @@ jobs:
# make release # make release
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9 uses: github/codeql-action/analyze@16140ae1a102900babc80a33c44059580f687047 # v4.30.9

View File

@@ -21,19 +21,19 @@ jobs:
permissions: permissions:
security-events: write # for zizmor security-events: write # for zizmor
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Actionlint - name: Actionlint
uses: eifinger/actionlint-action@213860089b7cf97d640aa67567898fabeb132746 # v1.9.3 uses: eifinger/actionlint-action@03ff1f78c0670b71017616a37170f327df932030 # v1.9.2
- name: Run zizmor - name: Run zizmor
uses: zizmorcore/zizmor-action@e639db99335bc9038abc0e066dfcd72e23d26fb4 # v0.3.0 uses: zizmorcore/zizmor-action@e673c3917a1aef3c65c972347ed84ccd013ecda4 # v0.2.0
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0 - uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with: with:
node-version-file: .nvmrc node-version-file: .nvmrc
cache: npm cache: npm
- run: | - run: |
npm ci --ignore-scripts npm install
- run: | - run: |
npm run all npm run all
- name: Check all jobs are in all-tests-passed.needs - name: Check all jobs are in all-tests-passed.needs
@@ -51,7 +51,7 @@ jobs:
matrix: matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-latest] os: [ubuntu-latest, macos-latest, macos-14, windows-latest]
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install latest version - name: Install latest version
@@ -76,7 +76,7 @@ jobs:
test-uv-no-modify-path: test-uv-no-modify-path:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install with UV_NO_MODIFY_PATH set - name: Install with UV_NO_MODIFY_PATH set
@@ -125,7 +125,7 @@ jobs:
expected-version: "0.1.0" expected-version: "0.1.0"
resolution-strategy: "lowest" resolution-strategy: "lowest"
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install version ${{ matrix.input.version-input }} with strategy ${{ matrix.input.resolution-strategy || 'highest' }} - name: Install version ${{ matrix.input.version-input }} with strategy ${{ matrix.input.resolution-strategy || 'highest' }}
@@ -154,7 +154,7 @@ jobs:
matrix: matrix:
version-input: ["latest", ">=0.8"] version-input: ["latest", ">=0.8"]
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install version ${{ matrix.version-input }} - name: Install version ${{ matrix.version-input }}
@@ -182,7 +182,7 @@ jobs:
- working-directory: "__tests__/fixtures/uv-toml-project" - working-directory: "__tests__/fixtures/uv-toml-project"
expected-version: "0.5.15" expected-version: "0.5.15"
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install version from ${{ matrix.input.working-directory }} - name: Install version from ${{ matrix.input.working-directory }}
@@ -208,7 +208,7 @@ jobs:
- version-file: "__tests__/fixtures/.tool-versions" - version-file: "__tests__/fixtures/.tool-versions"
expected-version: "0.5.15" expected-version: "0.5.15"
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install version from ${{ matrix.input.version-file }} - name: Install version from ${{ matrix.input.version-file }}
@@ -225,7 +225,7 @@ jobs:
test-malformed-pyproject-file-fallback: test-malformed-pyproject-file-fallback:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install using malformed pyproject.toml - name: Install using malformed pyproject.toml
@@ -245,7 +245,7 @@ jobs:
- os: macos-latest - os: macos-latest
checksum: "a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218" checksum: "a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218"
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Checksum matches expected - name: Checksum matches expected
@@ -259,7 +259,7 @@ jobs:
test-with-explicit-token: test-with-explicit-token:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install default version - name: Install default version
@@ -272,7 +272,7 @@ jobs:
test-uvx: test-uvx:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install default version - name: Install default version
@@ -285,7 +285,7 @@ jobs:
matrix: matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-latest] os: [ubuntu-latest, macos-latest, macos-14, windows-latest]
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install default version - name: Install default version
@@ -296,7 +296,7 @@ jobs:
test-tilde-expansion-tool-dirs: test-tilde-expansion-tool-dirs:
runs-on: selfhosted-ubuntu-arm64 runs-on: selfhosted-ubuntu-arm64
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -321,11 +321,10 @@ jobs:
matrix: matrix:
os: [ubuntu-latest, macos-latest, windows-latest] os: [ubuntu-latest, macos-latest, windows-latest]
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install latest version - name: Install latest version
id: setup-uv
uses: ./ uses: ./
with: with:
python-version: 3.13.1t python-version: 3.13.1t
@@ -336,14 +335,6 @@ jobs:
exit 1 exit 1
fi fi
shell: bash shell: bash
- name: Verify output python-version is correct
run: |
if [ "$PYTHON_VERSION" != "3.13.1t" ]; then
exit 1
fi
shell: bash
env:
PYTHON_VERSION: ${{ steps.setup-uv.outputs.python-version }}
- run: uv sync - run: uv sync
working-directory: __tests__/fixtures/uv-project working-directory: __tests__/fixtures/uv-project
@@ -353,7 +344,7 @@ jobs:
matrix: matrix:
os: [ubuntu-latest, macos-latest, windows-latest] os: [ubuntu-latest, macos-latest, windows-latest]
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install latest version - name: Install latest version
@@ -390,64 +381,14 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: alpine container: alpine
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install latest version - name: Install latest version
id: setup-uv
uses: ./ 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 - run: uv sync
working-directory: __tests__/fixtures/uv-project 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: test-setup-cache:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
strategy: strategy:
@@ -455,7 +396,7 @@ jobs:
enable-cache: ["true", "false", "auto"] enable-cache: ["true", "false", "auto"]
os: ["ubuntu-latest", "selfhosted-ubuntu-arm64", "windows-latest"] os: ["ubuntu-latest", "selfhosted-ubuntu-arm64", "windows-latest"]
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -474,7 +415,7 @@ jobs:
os: ["ubuntu-latest", "selfhosted-ubuntu-arm64", "windows-latest"] os: ["ubuntu-latest", "selfhosted-ubuntu-arm64", "windows-latest"]
needs: test-setup-cache needs: test-setup-cache
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Restore with cache - name: Restore with cache
@@ -508,7 +449,7 @@ jobs:
test-setup-cache-requirements-txt: test-setup-cache-requirements-txt:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -524,7 +465,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: test-setup-cache-requirements-txt needs: test-setup-cache-requirements-txt
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Restore with cache - name: Restore with cache
@@ -548,7 +489,7 @@ jobs:
test-setup-cache-dependency-glob: test-setup-cache-dependency-glob:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -565,7 +506,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: test-setup-cache-dependency-glob needs: test-setup-cache-dependency-glob
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Change pyproject.toml - name: Change pyproject.toml
@@ -593,7 +534,7 @@ jobs:
test-setup-cache-save-cache-false: test-setup-cache-save-cache-false:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -609,7 +550,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: test-setup-cache-save-cache-false needs: test-setup-cache-save-cache-false
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Restore with cache - name: Restore with cache
@@ -629,7 +570,7 @@ jobs:
test-setup-cache-restore-cache-false: test-setup-cache-restore-cache-false:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -644,7 +585,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: test-setup-cache-restore-cache-false needs: test-setup-cache-restore-cache-false
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Restore with cache - name: Restore with cache
@@ -674,7 +615,7 @@ jobs:
expected-cache-dir: "/home/ubuntu/.cache/uv" expected-cache-dir: "/home/ubuntu/.cache/uv"
runs-on: ${{ matrix.inputs.os }} runs-on: ${{ matrix.inputs.os }}
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -692,7 +633,7 @@ jobs:
test-cache-local-cache-disabled: test-cache-local-cache-disabled:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup without cache - name: Setup without cache
@@ -708,30 +649,10 @@ jobs:
fi fi
shell: bash 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: test-setup-cache-local:
runs-on: selfhosted-ubuntu-arm64 runs-on: selfhosted-ubuntu-arm64
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup with cache - name: Setup with cache
@@ -746,7 +667,7 @@ jobs:
runs-on: selfhosted-ubuntu-arm64 runs-on: selfhosted-ubuntu-arm64
needs: test-setup-cache-local needs: test-setup-cache-local
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Restore with cache - name: Restore with cache
@@ -769,7 +690,7 @@ jobs:
test-tilde-expansion-cache-local-path: test-tilde-expansion-cache-local-path:
runs-on: selfhosted-ubuntu-arm64 runs-on: selfhosted-ubuntu-arm64
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Create cache directory - name: Create cache directory
@@ -785,7 +706,7 @@ jobs:
test-tilde-expansion-cache-dependency-glob: test-tilde-expansion-cache-dependency-glob:
runs-on: selfhosted-ubuntu-arm64 runs-on: selfhosted-ubuntu-arm64
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Create cache directory - name: Create cache directory
@@ -820,7 +741,7 @@ jobs:
test-no-python-version: test-no-python-version:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Fake pyproject.toml at root - name: Fake pyproject.toml at root
@@ -835,7 +756,7 @@ jobs:
test-custom-manifest-file: test-custom-manifest-file:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install from custom manifest file - name: Install from custom manifest file
@@ -854,7 +775,7 @@ jobs:
test-absolute-path: test-absolute-path:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Create requirements.txt - name: Create requirements.txt
@@ -874,7 +795,7 @@ jobs:
test-relative-path: test-relative-path:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: mkdir - name: mkdir
@@ -898,7 +819,7 @@ jobs:
test-cache-prune-force: test-cache-prune-force:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Setup uv - name: Setup uv
@@ -915,7 +836,7 @@ jobs:
test-cache-dir-from-file: test-cache-dir-from-file:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Verify uv cache dir is not populated - name: Verify uv cache dir is not populated
@@ -940,7 +861,7 @@ jobs:
test-cache-python-installs: test-cache-python-installs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Verify Python install dir is not populated - name: Verify Python install dir is not populated
@@ -967,7 +888,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: test-cache-python-installs needs: test-cache-python-installs
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Verify Python install dir does not exist - name: Verify Python install dir does not exist
@@ -995,7 +916,7 @@ jobs:
exit 1 exit 1
fi fi
env: env:
CACHE_HIT: ${{ steps.restore.outputs.python-cache-hit }} CACHE_HIT: ${{ steps.restore.outputs.cache-hit }}
- run: uv sync --managed-python - run: uv sync --managed-python
working-directory: __tests__/fixtures/uv-project working-directory: __tests__/fixtures/uv-project
@@ -1011,7 +932,7 @@ jobs:
expected-python-dir: "/home/ubuntu/.local/share/uv/python" expected-python-dir: "/home/ubuntu/.local/share/uv/python"
runs-on: ${{ matrix.inputs.os }} runs-on: ${{ matrix.inputs.os }}
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install latest version - name: Install latest version
@@ -1030,7 +951,7 @@ jobs:
test-act: test-act:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
persist-credentials: false persist-credentials: false
- name: Install act - name: Install act
@@ -1042,15 +963,6 @@ jobs:
env: env:
GH_TOKEN: ${{ github.token }} GH_TOKEN: ${{ github.token }}
validate-typings:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
- name: Validate typings
uses: typesafegithub/github-actions-typing@184d97003b1300f6a10e286eb98c191e416ff02b # v2.2.1
all-tests-passed: all-tests-passed:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: needs:
@@ -1070,10 +982,8 @@ jobs:
- test-python-version - test-python-version
- test-activate-environment - test-activate-environment
- test-musl - test-musl
- test-cache-key-os-version
- test-cache-local - test-cache-local
- test-cache-local-cache-disabled - test-cache-local-cache-disabled
- test-cache-local-cache-disabled-but-explicit-path
- test-setup-cache - test-setup-cache
- test-restore-cache - test-restore-cache
- test-setup-cache-requirements-txt - test-setup-cache-requirements-txt
@@ -1099,7 +1009,6 @@ jobs:
- test-restore-python-installs - test-restore-python-installs
- test-python-install-dir - test-python-install-dir
- test-act - test-act
- validate-typings
if: always() if: always()
steps: steps:
- name: All tests passed - name: All tests passed

View File

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

View File

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

View File

@@ -1 +0,0 @@
.github/copilot-instructions.md

View File

@@ -125,8 +125,6 @@ Have a look under [Advanced Configuration](#advanced-configuration) for detailed
- `uvx-path`: The path to the installed uvx binary. - `uvx-path`: The path to the installed uvx binary.
- `cache-hit`: A boolean value to indicate a cache entry was found. - `cache-hit`: A boolean value to indicate a cache entry was found.
- `venv`: Path to the activated venv if activate-environment is true. - `venv`: Path to the activated venv if activate-environment is true.
- `python-version`: The Python version that was set.
- `python-cache-hit`: A boolean value to indicate the Python cache entry was found.
### Python version ### Python version
@@ -202,8 +200,7 @@ by name (`uv`).
With `setup-uv`, you can install a specific version of Python using `uv python install` rather than With `setup-uv`, you can install a specific version of Python using `uv python install` rather than
relying on `actions/setup-python`. relying on `actions/setup-python`.
Using `actions/setup-python` can be faster (~1s), because GitHub includes several Python versions in the runner image Using `actions/setup-python` can be faster, because GitHub caches the Python versions alongside the runner.
which are available to get activated by `actions/setup-python` without having to download them.
For example: For example:

View File

@@ -29,9 +29,9 @@ it.each<KnownVersionFixture>([
known: false, known: false,
version: "0.0.15", version: "0.0.15",
}, },
])("isknownVersion should return $known for version $version", ({ ])(
version, "isknownVersion should return $known for version $version",
known, ({ version, known }) => {
}) => { expect(isknownVersion(version)).toBe(known);
expect(isknownVersion(version)).toBe(known); },
}); );

View File

@@ -9,5 +9,5 @@ dependencies = [
] ]
[build-system] [build-system]
requires = ["uv_build>=0.9.22,<0.10.0"] requires = ["hatchling"]
build-backend = "uv_build" build-backend = "hatchling.build"

View File

@@ -1,9 +1,33 @@
version = 1 version = 1
revision = 3 requires-python = ">=3.12"
requires-python = ">=3.8, <=3.9"
[[package]] [[package]]
name = "old-python-constraint-project" name = "ruff"
version = "0.6.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/23/f4/279d044f66b79261fd37df76bf72b64471afab5d3b7906a01499c4451910/ruff-0.6.2.tar.gz", hash = "sha256:239ee6beb9e91feb8e0ec384204a763f36cb53fb895a1a364618c6abb076b3be", size = 2460281 }
wheels = [
{ url = "https://files.pythonhosted.org/packages/72/4b/47dd7a69287afb4069fa42c198e899463605460a58120196711bfcf0446b/ruff-0.6.2-py3-none-linux_armv6l.whl", hash = "sha256:5c8cbc6252deb3ea840ad6a20b0f8583caab0c5ef4f9cca21adc5a92b8f79f3c", size = 9695871 },
{ url = "https://files.pythonhosted.org/packages/ae/c3/8aac62ac4638c14a740ee76a755a925f2d0d04580ab790a9887accb729f6/ruff-0.6.2-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:17002fe241e76544448a8e1e6118abecbe8cd10cf68fde635dad480dba594570", size = 9459354 },
{ url = "https://files.pythonhosted.org/packages/2f/cf/77fbd8d4617b9b9c503f9bffb8552c4e3ea1a58dc36975e7a9104ffb0f85/ruff-0.6.2-py3-none-macosx_11_0_arm64.whl", hash = "sha256:3dbeac76ed13456f8158b8f4fe087bf87882e645c8e8b606dd17b0b66c2c1158", size = 9163871 },
{ url = "https://files.pythonhosted.org/packages/05/1c/765192bab32b79efbb498b06f0b9dcb3629112b53b8777ae1d19b8209e09/ruff-0.6.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:094600ee88cda325988d3f54e3588c46de5c18dae09d683ace278b11f9d4d534", size = 10096250 },
{ url = "https://files.pythonhosted.org/packages/08/d0/86f3cb0f6934c99f759c232984a5204d67a26745cad2d9edff6248adf7d2/ruff-0.6.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:316d418fe258c036ba05fbf7dfc1f7d3d4096db63431546163b472285668132b", size = 9475376 },
{ url = "https://files.pythonhosted.org/packages/cd/cc/4c8d0e225b559a3fae6092ec310d7150d3b02b4669e9223f783ef64d82c0/ruff-0.6.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d72b8b3abf8a2d51b7b9944a41307d2f442558ccb3859bbd87e6ae9be1694a5d", size = 10295634 },
{ url = "https://files.pythonhosted.org/packages/db/96/d2699cfb1bb5a01c68122af43454c76c31331e1c8a9bd97d653d7c82524b/ruff-0.6.2-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:2aed7e243be68487aa8982e91c6e260982d00da3f38955873aecd5a9204b1d66", size = 11024941 },
{ url = "https://files.pythonhosted.org/packages/8b/a9/6ecd66af8929e0f2a1ed308a4137f3521789f28f0eb97d32c2ca3aa7000c/ruff-0.6.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d371f7fc9cec83497fe7cf5eaf5b76e22a8efce463de5f775a1826197feb9df8", size = 10606894 },
{ url = "https://files.pythonhosted.org/packages/e4/73/2ee4cd19f44992fedac1cc6db9e3d825966072f6dcbd4032f21cbd063170/ruff-0.6.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8f310d63af08f583363dfb844ba8f9417b558199c58a5999215082036d795a1", size = 11552886 },
{ url = "https://files.pythonhosted.org/packages/60/4c/c0f1cd35ce4a93c54a6bb1ee6934a3a205fa02198dd076678193853ceea1/ruff-0.6.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7db6880c53c56addb8638fe444818183385ec85eeada1d48fc5abe045301b2f1", size = 10264945 },
{ url = "https://files.pythonhosted.org/packages/c4/89/e45c9359b9cdd4245512ea2b9f2bb128a997feaa5f726fc9e8c7a66afadf/ruff-0.6.2-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:1175d39faadd9a50718f478d23bfc1d4da5743f1ab56af81a2b6caf0a2394f23", size = 10100007 },
{ url = "https://files.pythonhosted.org/packages/06/74/0bd4e0a7ed5f6908df87892f9bf60a2356c0fd74102d8097298bd9b4f346/ruff-0.6.2-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:5b939f9c86d51635fe486585389f54582f0d65b8238e08c327c1534844b3bb9a", size = 9559267 },
{ url = "https://files.pythonhosted.org/packages/54/03/3dc6dc9419f276f05805bf888c279e3e0b631284abd548d9e87cebb93aec/ruff-0.6.2-py3-none-musllinux_1_2_i686.whl", hash = "sha256:d0d62ca91219f906caf9b187dea50d17353f15ec9bb15aae4a606cd697b49b4c", size = 9905304 },
{ url = "https://files.pythonhosted.org/packages/5c/5b/d6a72a6a6bbf097c09de468326ef5fa1c9e7aa5e6e45979bc0d984b0dbe7/ruff-0.6.2-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:7438a7288f9d67ed3c8ce4d059e67f7ed65e9fe3aa2ab6f5b4b3610e57e3cb56", size = 10341480 },
{ url = "https://files.pythonhosted.org/packages/79/a9/0f2f21fe15ba537c46598f96aa9ae4a3d4b9ec64926664617ca6a8c772f4/ruff-0.6.2-py3-none-win32.whl", hash = "sha256:279d5f7d86696df5f9549b56b9b6a7f6c72961b619022b5b7999b15db392a4da", size = 7961901 },
{ url = "https://files.pythonhosted.org/packages/b0/80/fff12ffe11853d9f4ea3e5221e6dd2e93640a161c05c9579833e09ad40a7/ruff-0.6.2-py3-none-win_amd64.whl", hash = "sha256:d9f3469c7dd43cd22eb1c3fc16926fb8258d50cb1b216658a07be95dd117b0f2", size = 8783320 },
{ url = "https://files.pythonhosted.org/packages/56/91/577cdd64cce5e74d3f8b5ecb93f29566def569c741eb008aed4f331ef821/ruff-0.6.2-py3-none-win_arm64.whl", hash = "sha256:f28fcd2cd0e02bdf739297516d5643a945cc7caf09bd9bcb4d932540a5ea4fa9", size = 8225886 },
]
[[package]]
name = "uv-project"
version = "0.1.0" version = "0.1.0"
source = { editable = "." } source = { editable = "." }
dependencies = [ dependencies = [
@@ -11,30 +35,4 @@ dependencies = [
] ]
[package.metadata] [package.metadata]
requires-dist = [{ name = "ruff", specifier = ">=0.6.2" }] requires-dist = [{ name = "ruff" }]
[[package]]
name = "ruff"
version = "0.14.10"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/57/08/52232a877978dd8f9cf2aeddce3e611b40a63287dfca29b6b8da791f5e8d/ruff-0.14.10.tar.gz", hash = "sha256:9a2e830f075d1a42cd28420d7809ace390832a490ed0966fe373ba288e77aaf4", size = 5859763, upload-time = "2025-12-18T19:28:57.98Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/60/01/933704d69f3f05ee16ef11406b78881733c186fe14b6a46b05cfcaf6d3b2/ruff-0.14.10-py3-none-linux_armv6l.whl", hash = "sha256:7a3ce585f2ade3e1f29ec1b92df13e3da262178df8c8bdf876f48fa0e8316c49", size = 13527080, upload-time = "2025-12-18T19:29:25.642Z" },
{ url = "https://files.pythonhosted.org/packages/df/58/a0349197a7dfa603ffb7f5b0470391efa79ddc327c1e29c4851e85b09cc5/ruff-0.14.10-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:674f9be9372907f7257c51f1d4fc902cb7cf014b9980152b802794317941f08f", size = 13797320, upload-time = "2025-12-18T19:29:02.571Z" },
{ url = "https://files.pythonhosted.org/packages/7b/82/36be59f00a6082e38c23536df4e71cdbc6af8d7c707eade97fcad5c98235/ruff-0.14.10-py3-none-macosx_11_0_arm64.whl", hash = "sha256:d85713d522348837ef9df8efca33ccb8bd6fcfc86a2cde3ccb4bc9d28a18003d", size = 12918434, upload-time = "2025-12-18T19:28:51.202Z" },
{ url = "https://files.pythonhosted.org/packages/a6/00/45c62a7f7e34da92a25804f813ebe05c88aa9e0c25e5cb5a7d23dd7450e3/ruff-0.14.10-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6987ebe0501ae4f4308d7d24e2d0fe3d7a98430f5adfd0f1fead050a740a3a77", size = 13371961, upload-time = "2025-12-18T19:29:04.991Z" },
{ url = "https://files.pythonhosted.org/packages/40/31/a5906d60f0405f7e57045a70f2d57084a93ca7425f22e1d66904769d1628/ruff-0.14.10-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:16a01dfb7b9e4eee556fbfd5392806b1b8550c9b4a9f6acd3dbe6812b193c70a", size = 13275629, upload-time = "2025-12-18T19:29:21.381Z" },
{ url = "https://files.pythonhosted.org/packages/3e/60/61c0087df21894cf9d928dc04bcd4fb10e8b2e8dca7b1a276ba2155b2002/ruff-0.14.10-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7165d31a925b7a294465fa81be8c12a0e9b60fb02bf177e79067c867e71f8b1f", size = 14029234, upload-time = "2025-12-18T19:29:00.132Z" },
{ url = "https://files.pythonhosted.org/packages/44/84/77d911bee3b92348b6e5dab5a0c898d87084ea03ac5dc708f46d88407def/ruff-0.14.10-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:c561695675b972effb0c0a45db233f2c816ff3da8dcfbe7dfc7eed625f218935", size = 15449890, upload-time = "2025-12-18T19:28:53.573Z" },
{ url = "https://files.pythonhosted.org/packages/e9/36/480206eaefa24a7ec321582dda580443a8f0671fdbf6b1c80e9c3e93a16a/ruff-0.14.10-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4bb98fcbbc61725968893682fd4df8966a34611239c9fd07a1f6a07e7103d08e", size = 15123172, upload-time = "2025-12-18T19:29:23.453Z" },
{ url = "https://files.pythonhosted.org/packages/5c/38/68e414156015ba80cef5473d57919d27dfb62ec804b96180bafdeaf0e090/ruff-0.14.10-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f24b47993a9d8cb858429e97bdf8544c78029f09b520af615c1d261bf827001d", size = 14460260, upload-time = "2025-12-18T19:29:27.808Z" },
{ url = "https://files.pythonhosted.org/packages/b3/19/9e050c0dca8aba824d67cc0db69fb459c28d8cd3f6855b1405b3f29cc91d/ruff-0.14.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59aabd2e2c4fd614d2862e7939c34a532c04f1084476d6833dddef4afab87e9f", size = 14229978, upload-time = "2025-12-18T19:29:11.32Z" },
{ url = "https://files.pythonhosted.org/packages/51/eb/e8dd1dd6e05b9e695aa9dd420f4577debdd0f87a5ff2fedda33c09e9be8c/ruff-0.14.10-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:213db2b2e44be8625002dbea33bb9c60c66ea2c07c084a00d55732689d697a7f", size = 14338036, upload-time = "2025-12-18T19:29:09.184Z" },
{ url = "https://files.pythonhosted.org/packages/6a/12/f3e3a505db7c19303b70af370d137795fcfec136d670d5de5391e295c134/ruff-0.14.10-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:b914c40ab64865a17a9a5b67911d14df72346a634527240039eb3bd650e5979d", size = 13264051, upload-time = "2025-12-18T19:29:13.431Z" },
{ url = "https://files.pythonhosted.org/packages/08/64/8c3a47eaccfef8ac20e0484e68e0772013eb85802f8a9f7603ca751eb166/ruff-0.14.10-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:1484983559f026788e3a5c07c81ef7d1e97c1c78ed03041a18f75df104c45405", size = 13283998, upload-time = "2025-12-18T19:29:06.994Z" },
{ url = "https://files.pythonhosted.org/packages/12/84/534a5506f4074e5cc0529e5cd96cfc01bb480e460c7edf5af70d2bcae55e/ruff-0.14.10-py3-none-musllinux_1_2_i686.whl", hash = "sha256:c70427132db492d25f982fffc8d6c7535cc2fd2c83fc8888f05caaa248521e60", size = 13601891, upload-time = "2025-12-18T19:28:55.811Z" },
{ url = "https://files.pythonhosted.org/packages/0d/1e/14c916087d8598917dbad9b2921d340f7884824ad6e9c55de948a93b106d/ruff-0.14.10-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5bcf45b681e9f1ee6445d317ce1fa9d6cba9a6049542d1c3d5b5958986be8830", size = 14336660, upload-time = "2025-12-18T19:29:16.531Z" },
{ url = "https://files.pythonhosted.org/packages/f2/1c/d7b67ab43f30013b47c12b42d1acd354c195351a3f7a1d67f59e54227ede/ruff-0.14.10-py3-none-win32.whl", hash = "sha256:104c49fc7ab73f3f3a758039adea978869a918f31b73280db175b43a2d9b51d6", size = 13196187, upload-time = "2025-12-18T19:29:19.006Z" },
{ url = "https://files.pythonhosted.org/packages/fb/9c/896c862e13886fae2af961bef3e6312db9ebc6adc2b156fe95e615dee8c1/ruff-0.14.10-py3-none-win_amd64.whl", hash = "sha256:466297bd73638c6bdf06485683e812db1c00c7ac96d4ddd0294a338c62fdc154", size = 14661283, upload-time = "2025-12-18T19:29:30.16Z" },
{ url = "https://files.pythonhosted.org/packages/74/31/b0e29d572670dca3674eeee78e418f20bdf97fa8aa9ea71380885e175ca0/ruff-0.14.10-py3-none-win_arm64.whl", hash = "sha256:e51d046cf6dda98a4633b8a8a771451107413b0f07183b2bef03f075599e44e6", size = 13729839, upload-time = "2025-12-18T19:28:48.636Z" },
]

View File

@@ -1,75 +0,0 @@
# See https://github.com/typesafegithub/github-actions-typing
inputs:
version:
type: string
version-file:
type: string
python-version:
type: string
activate-environment:
type: boolean
working-directory:
type: string
checksum:
type: string
github-token:
type: string
enable-cache:
type: enum
allowed-values:
- "true"
- "false"
- auto
cache-dependency-glob:
type: list
separator: "\n"
list-item:
type: string
restore-cache:
type: boolean
save-cache:
type: boolean
cache-suffix:
type: string
cache-local-path:
type: string
prune-cache:
type: boolean
cache-python:
type: boolean
ignore-nothing-to-cache:
type: boolean
ignore-empty-workdir:
type: boolean
tool-dir:
type: string
tool-bin-dir:
type: string
manifest-file:
type: string
add-problem-matchers:
type: boolean
resolution-strategy:
type: enum
allowed-values:
- highest
- lowest
outputs:
uv-version:
type: string
uv-path:
type: string
uvx-path:
type: string
cache-hit:
type: boolean
cache-key:
type: string
venv:
type: string
python-version:
type: string
python-cache-hit:
type: boolean

View File

@@ -89,14 +89,8 @@ outputs:
description: "The path to the installed uvx binary." description: "The path to the installed uvx binary."
cache-hit: cache-hit:
description: "A boolean value to indicate a cache entry was found" description: "A boolean value to indicate a cache entry was found"
cache-key:
description: "The cache key used for storing/restoring the cache"
venv: venv:
description: "Path to the activated venv if activate-environment is true" description: "Path to the activated venv if activate-environment is true"
python-version:
description: "The Python version that was set."
python-cache-hit:
description: "A boolean value to indicate the Python cache entry was found"
runs: runs:
using: "node24" using: "node24"
main: "dist/setup/index.js" main: "dist/setup/index.js"

View File

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

278
dist/save-cache/index.js generated vendored
View File

@@ -90599,52 +90599,42 @@ var __importStar = (this && this.__importStar) || (function () {
}; };
})(); })();
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.STATE_PYTHON_CACHE_MATCHED_KEY = exports.STATE_CACHE_MATCHED_KEY = exports.STATE_CACHE_KEY = void 0; exports.STATE_CACHE_MATCHED_KEY = exports.STATE_CACHE_KEY = void 0;
exports.restoreCache = restoreCache; exports.restoreCache = restoreCache;
const cache = __importStar(__nccwpck_require__(5116)); const cache = __importStar(__nccwpck_require__(5116));
const core = __importStar(__nccwpck_require__(7484)); const core = __importStar(__nccwpck_require__(7484));
const exec = __importStar(__nccwpck_require__(5236));
const hash_files_1 = __nccwpck_require__(9660); const hash_files_1 = __nccwpck_require__(9660);
const inputs_1 = __nccwpck_require__(9612); const inputs_1 = __nccwpck_require__(9612);
const platforms_1 = __nccwpck_require__(8361); const platforms_1 = __nccwpck_require__(8361);
exports.STATE_CACHE_KEY = "cache-key"; exports.STATE_CACHE_KEY = "cache-key";
exports.STATE_CACHE_MATCHED_KEY = "cache-matched-key"; exports.STATE_CACHE_MATCHED_KEY = "cache-matched-key";
exports.STATE_PYTHON_CACHE_MATCHED_KEY = "python-cache-matched-key"; const CACHE_VERSION = "1";
const CACHE_VERSION = "2"; async function restoreCache() {
async function restoreCache(pythonVersion) { const cacheKey = await computeKeys();
const cacheKey = await computeKeys(pythonVersion);
core.saveState(exports.STATE_CACHE_KEY, cacheKey); core.saveState(exports.STATE_CACHE_KEY, cacheKey);
core.setOutput("cache-key", cacheKey);
if (!inputs_1.restoreCache) { if (!inputs_1.restoreCache) {
core.info("restore-cache is false. Skipping restore cache step."); core.info("restore-cache is false. Skipping restore cache step.");
core.setOutput("python-cache-hit", false);
return; return;
} }
if (inputs_1.cacheLocalPath === undefined) {
throw new Error("cache-local-path is not set. Cannot restore cache without a valid cache path.");
}
await restoreCacheFromKey(cacheKey, inputs_1.cacheLocalPath.path, exports.STATE_CACHE_MATCHED_KEY, "cache-hit");
if (inputs_1.cachePython) {
await restoreCacheFromKey(`${cacheKey}-python`, inputs_1.pythonDir, exports.STATE_PYTHON_CACHE_MATCHED_KEY, "python-cache-hit");
}
else {
core.setOutput("python-cache-hit", false);
}
}
async function restoreCacheFromKey(cacheKey, cachePath, stateKey, outputKey) {
core.info(`Trying to restore cache from GitHub Actions cache with key: ${cacheKey}`);
let matchedKey; let matchedKey;
core.info(`Trying to restore uv cache from GitHub Actions cache with key: ${cacheKey}`);
const cachePaths = [inputs_1.cacheLocalPath];
if (inputs_1.cachePython) {
cachePaths.push(inputs_1.pythonDir);
}
try { try {
matchedKey = await cache.restoreCache([cachePath], cacheKey); matchedKey = await cache.restoreCache(cachePaths, cacheKey);
} }
catch (err) { catch (err) {
const message = err.message; const message = err.message;
core.warning(message); core.warning(message);
core.setOutput(outputKey, false); core.setOutput("cache-hit", false);
return; return;
} }
handleMatchResult(matchedKey, cacheKey, stateKey, outputKey); handleMatchResult(matchedKey, cacheKey);
} }
async function computeKeys(pythonVersion) { async function computeKeys() {
let cacheDependencyPathHash = "-"; let cacheDependencyPathHash = "-";
if (inputs_1.cacheDependencyGlob !== "") { if (inputs_1.cacheDependencyGlob !== "") {
core.info(`Searching files using cache dependency glob: ${inputs_1.cacheDependencyGlob.split("\n").join(",")}`); core.info(`Searching files using cache dependency glob: ${inputs_1.cacheDependencyGlob.split("\n").join(",")}`);
@@ -90657,22 +90647,49 @@ async function computeKeys(pythonVersion) {
cacheDependencyPathHash = "-no-dependency-glob"; cacheDependencyPathHash = "-no-dependency-glob";
} }
const suffix = inputs_1.cacheSuffix ? `-${inputs_1.cacheSuffix}` : ""; const suffix = inputs_1.cacheSuffix ? `-${inputs_1.cacheSuffix}` : "";
const version = pythonVersion ?? "unknown"; const pythonVersion = await getPythonVersion();
const platform = await (0, platforms_1.getPlatform)(); const platform = await (0, platforms_1.getPlatform)();
const osNameVersion = (0, platforms_1.getOSNameVersion)();
const pruned = inputs_1.pruneCache ? "-pruned" : ""; const pruned = inputs_1.pruneCache ? "-pruned" : "";
const python = inputs_1.cachePython ? "-py" : ""; const python = inputs_1.cachePython ? "-py" : "";
return `setup-uv-${CACHE_VERSION}-${(0, platforms_1.getArch)()}-${platform}-${osNameVersion}-${version}${pruned}${python}${cacheDependencyPathHash}${suffix}`; return `setup-uv-${CACHE_VERSION}-${(0, platforms_1.getArch)()}-${platform}-${pythonVersion}${pruned}${python}${cacheDependencyPathHash}${suffix}`;
} }
function handleMatchResult(matchedKey, primaryKey, stateKey, outputKey) { async function getPythonVersion() {
if (inputs_1.pythonVersion !== "") {
return inputs_1.pythonVersion;
}
let output = "";
const options = {
listeners: {
stdout: (data) => {
output += data.toString();
},
},
silent: !core.isDebug(),
};
try {
const execArgs = ["python", "find", "--directory", inputs_1.workingDirectory];
await exec.exec("uv", execArgs, options);
const pythonPath = output.trim();
output = "";
await exec.exec(pythonPath, ["--version"], options);
// output is like "Python 3.8.10"
return output.split(" ")[1].trim();
}
catch (error) {
const err = error;
core.debug(`Failed to get python version from uv. Error: ${err.message}`);
return "unknown";
}
}
function handleMatchResult(matchedKey, primaryKey) {
if (!matchedKey) { if (!matchedKey) {
core.info(`No GitHub Actions cache found for key: ${primaryKey}`); core.info(`No GitHub Actions cache found for key: ${primaryKey}`);
core.setOutput(outputKey, false); core.setOutput("cache-hit", false);
return; return;
} }
core.saveState(stateKey, matchedKey); core.saveState(exports.STATE_CACHE_MATCHED_KEY, matchedKey);
core.info(`cache restored from GitHub Actions cache with key: ${matchedKey}`); core.info(`uv cache restored from GitHub Actions cache with key: ${matchedKey}`);
core.setOutput(outputKey, true); core.setOutput("cache-hit", true);
} }
@@ -90822,8 +90839,6 @@ async function run() {
else { else {
core.info("save-cache is false. Skipping save cache step."); 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, // node will stay alive if any promises are not resolved,
// which is a possibility if HTTP requests are dangling // which is a possibility if HTTP requests are dangling
// due to retries or timeouts. We know that if we got here // due to retries or timeouts. We know that if we got here
@@ -90846,17 +90861,42 @@ async function saveCache() {
} }
if (matchedKey === cacheKey) { if (matchedKey === cacheKey) {
core.info(`Cache hit occurred on key ${cacheKey}, not saving cache.`); core.info(`Cache hit occurred on key ${cacheKey}, not saving cache.`);
return;
} }
else { if (inputs_1.pruneCache) {
if (inputs_1.pruneCache) { await pruneCache();
await pruneCache();
}
const actualCachePath = getUvCachePath();
await saveCacheToKey(cacheKey, actualCachePath, restore_cache_1.STATE_CACHE_MATCHED_KEY, "uv cache", `Cache path ${actualCachePath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`);
} }
let actualCachePath = inputs_1.cacheLocalPath;
if (process.env.UV_CACHE_DIR && process.env.UV_CACHE_DIR !== inputs_1.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 "${inputs_1.cacheLocalPath}".`);
actualCachePath = process.env.UV_CACHE_DIR;
}
core.info(`Saving cache path: ${actualCachePath}`);
if (!fs.existsSync(actualCachePath) && !inputs_1.ignoreNothingToCache) {
throw new Error(`Cache path ${actualCachePath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`);
}
const cachePaths = [actualCachePath];
if (inputs_1.cachePython) { if (inputs_1.cachePython) {
const pythonCacheKey = `${cacheKey}-python`; core.info(`Including Python cache path: ${inputs_1.pythonDir}`);
await saveCacheToKey(pythonCacheKey, inputs_1.pythonDir, restore_cache_1.STATE_PYTHON_CACHE_MATCHED_KEY, "Python cache", `Python cache path ${inputs_1.pythonDir} does not exist on disk. This likely indicates that there are no Python installations to cache. Consider disabling the cache input if it is not needed.`); if (!fs.existsSync(inputs_1.pythonDir) && !inputs_1.ignoreNothingToCache) {
throw new Error(`Python cache path ${inputs_1.pythonDir} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`);
}
cachePaths.push(inputs_1.pythonDir);
}
core.info(`Final cache paths: ${cachePaths.join(", ")}`);
try {
await cache.saveCache(cachePaths, cacheKey);
core.info(`cache saved with the key: ${cacheKey}`);
}
catch (e) {
if (e instanceof Error &&
e.message ===
"Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.") {
core.info("No cacheable paths were found. Ignoring because ignore-nothing-to-save is enabled.");
}
else {
throw e;
}
} }
} }
async function pruneCache() { async function pruneCache() {
@@ -90872,42 +90912,6 @@ async function pruneCache() {
const uvPath = core.getState(constants_1.STATE_UV_PATH); const uvPath = core.getState(constants_1.STATE_UV_PATH);
await exec.exec(uvPath, execArgs, options); await exec.exec(uvPath, execArgs, options);
} }
function getUvCachePath() {
if (inputs_1.cacheLocalPath === undefined) {
throw new Error("cache-local-path is not set. Cannot save cache without a valid cache path.");
}
if (process.env.UV_CACHE_DIR &&
process.env.UV_CACHE_DIR !== inputs_1.cacheLocalPath.path) {
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 "${inputs_1.cacheLocalPath.path}".`);
return process.env.UV_CACHE_DIR;
}
return inputs_1.cacheLocalPath.path;
}
async function saveCacheToKey(cacheKey, cachePath, stateKey, cacheName, pathNotExistErrorMessage) {
const matchedKey = core.getState(stateKey);
if (matchedKey === cacheKey) {
core.info(`${cacheName} hit occurred on key ${cacheKey}, not saving cache.`);
return;
}
core.info(`Including ${cacheName} path: ${cachePath}`);
if (!fs.existsSync(cachePath) && !inputs_1.ignoreNothingToCache) {
throw new Error(pathNotExistErrorMessage);
}
try {
await cache.saveCache([cachePath], cacheKey);
core.info(`${cacheName} saved with key: ${cacheKey}`);
}
catch (e) {
if (e instanceof Error &&
e.message ===
"Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.") {
core.info(`No cacheable ${cacheName} paths were found. Ignoring because ignore-nothing-to-save is enabled.`);
}
else {
throw e;
}
}
}
run(); run();
@@ -91032,18 +91036,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod }; return (mod && mod.__esModule) ? mod : { "default": mod };
}; };
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.resolutionStrategy = exports.addProblemMatchers = exports.manifestFile = exports.githubToken = exports.pythonDir = exports.toolDir = exports.toolBinDir = exports.ignoreEmptyWorkdir = exports.ignoreNothingToCache = exports.cachePython = exports.pruneCache = exports.cacheDependencyGlob = exports.cacheLocalPath = exports.cacheSuffix = exports.saveCache = exports.restoreCache = exports.enableCache = exports.checkSum = exports.activateEnvironment = exports.pythonVersion = exports.versionFile = exports.version = exports.workingDirectory = exports.CacheLocalSource = void 0; exports.resolutionStrategy = exports.addProblemMatchers = exports.manifestFile = exports.githubToken = exports.pythonDir = exports.toolDir = exports.toolBinDir = exports.ignoreEmptyWorkdir = exports.ignoreNothingToCache = exports.cachePython = exports.pruneCache = exports.cacheDependencyGlob = exports.cacheLocalPath = exports.cacheSuffix = exports.saveCache = exports.restoreCache = exports.enableCache = exports.checkSum = exports.activateEnvironment = exports.pythonVersion = exports.versionFile = exports.version = exports.workingDirectory = void 0;
exports.getUvPythonDir = getUvPythonDir; exports.getUvPythonDir = getUvPythonDir;
const node_path_1 = __importDefault(__nccwpck_require__(6760)); const node_path_1 = __importDefault(__nccwpck_require__(6760));
const core = __importStar(__nccwpck_require__(7484)); const core = __importStar(__nccwpck_require__(7484));
const config_file_1 = __nccwpck_require__(7846); const config_file_1 = __nccwpck_require__(7846);
var CacheLocalSource;
(function (CacheLocalSource) {
CacheLocalSource[CacheLocalSource["Input"] = 0] = "Input";
CacheLocalSource[CacheLocalSource["Config"] = 1] = "Config";
CacheLocalSource[CacheLocalSource["Env"] = 2] = "Env";
CacheLocalSource[CacheLocalSource["Default"] = 3] = "Default";
})(CacheLocalSource || (exports.CacheLocalSource = CacheLocalSource = {}));
exports.workingDirectory = core.getInput("working-directory"); exports.workingDirectory = core.getInput("working-directory");
exports.version = core.getInput("version"); exports.version = core.getInput("version");
exports.versionFile = getVersionFile(); exports.versionFile = getVersionFile();
@@ -91114,40 +91111,26 @@ function getCacheLocalPath() {
const cacheLocalPathInput = core.getInput("cache-local-path"); const cacheLocalPathInput = core.getInput("cache-local-path");
if (cacheLocalPathInput !== "") { if (cacheLocalPathInput !== "") {
const tildeExpanded = expandTilde(cacheLocalPathInput); const tildeExpanded = expandTilde(cacheLocalPathInput);
return { return resolveRelativePath(tildeExpanded);
path: resolveRelativePath(tildeExpanded),
source: CacheLocalSource.Input,
};
} }
const cacheDirFromConfig = getCacheDirFromConfig(); const cacheDirFromConfig = getCacheDirFromConfig();
if (cacheDirFromConfig !== undefined) { if (cacheDirFromConfig !== undefined) {
return { path: cacheDirFromConfig, source: CacheLocalSource.Config }; return cacheDirFromConfig;
} }
if (process.env.UV_CACHE_DIR !== undefined) { if (process.env.UV_CACHE_DIR !== undefined) {
core.info(`UV_CACHE_DIR is already set to ${process.env.UV_CACHE_DIR}`); 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_ENVIRONMENT === "github-hosted") { if (process.env.RUNNER_TEMP !== undefined) {
if (process.env.RUNNER_TEMP !== undefined) { return `${process.env.RUNNER_TEMP}${node_path_1.default.sep}setup-uv-cache`;
return {
path: `${process.env.RUNNER_TEMP}${node_path_1.default.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.platform === "win32") { throw Error("Could not determine UV_CACHE_DIR. Please make sure RUNNER_TEMP is set or provide the cache-local-path input");
return {
path: `${process.env.APPDATA}${node_path_1.default.sep}uv${node_path_1.default.sep}cache`,
source: CacheLocalSource.Default,
};
}
return {
path: `${process.env.HOME}${node_path_1.default.sep}.cache${node_path_1.default.sep}uv`,
source: CacheLocalSource.Default,
};
} }
if (process.platform === "win32") {
return `${process.env.APPDATA}${node_path_1.default.sep}uv${node_path_1.default.sep}cache`;
}
return `${process.env.HOME}${node_path_1.default.sep}.cache${node_path_1.default.sep}uv`;
} }
function getCacheDirFromConfig() { function getCacheDirFromConfig() {
for (const filePath of [exports.versionFile, "uv.toml", "pyproject.toml"]) { for (const filePath of [exports.versionFile, "uv.toml", "pyproject.toml"]) {
@@ -91169,7 +91152,7 @@ function getCacheDirFromConfig() {
} }
function getUvPythonDir() { function getUvPythonDir() {
if (process.env.UV_PYTHON_INSTALL_DIR !== undefined) { if (process.env.UV_PYTHON_INSTALL_DIR !== undefined) {
core.info(`UV_PYTHON_INSTALL_DIR is already set to ${process.env.UV_PYTHON_INSTALL_DIR}`); core.info(`UV_PYTHON_INSTALL_DIR is already set to ${process.env.UV_PYTHON_INSTALL_DIR}`);
return process.env.UV_PYTHON_INSTALL_DIR; return process.env.UV_PYTHON_INSTALL_DIR;
} }
if (process.env.RUNNER_ENVIRONMENT !== "github-hosted") { if (process.env.RUNNER_ENVIRONMENT !== "github-hosted") {
@@ -91269,15 +91252,9 @@ var __importStar = (this && this.__importStar) || (function () {
return result; return result;
}; };
})(); })();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getArch = getArch; exports.getArch = getArch;
exports.getPlatform = getPlatform; exports.getPlatform = getPlatform;
exports.getOSNameVersion = getOSNameVersion;
const node_fs_1 = __importDefault(__nccwpck_require__(3024));
const node_os_1 = __importDefault(__nccwpck_require__(8161));
const core = __importStar(__nccwpck_require__(7484)); const core = __importStar(__nccwpck_require__(7484));
const exec = __importStar(__nccwpck_require__(5236)); const exec = __importStar(__nccwpck_require__(5236));
function getArch() { function getArch() {
@@ -91335,63 +91312,6 @@ async function isMuslOs() {
return false; return false;
} }
} }
/**
* Returns OS name and version for cache key differentiation.
* Examples: "ubuntu-22.04", "macos-14", "windows-2022"
* Throws if OS detection fails.
*/
function getOSNameVersion() {
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() {
const files = ["/etc/os-release", "/usr/lib/os-release"];
for (const file of files) {
try {
const content = node_fs_1.default.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, key) {
const regex = new RegExp(`^${key}=["']?([^"'\\n]*)["']?$`, "m");
const match = content.match(regex);
return match?.[1];
}
function getMacOSNameVersion() {
const darwinVersion = Number.parseInt(node_os_1.default.release().split(".")[0], 10);
if (Number.isNaN(darwinVersion)) {
throw new Error(`Failed to parse macOS version from: ${node_os_1.default.release()}`);
}
const macosVersion = darwinVersion - 9;
return `macos-${macosVersion}`;
}
function getWindowsNameVersion() {
const version = node_os_1.default.version();
const match = version.match(/Windows(?: Server)? (\d+)/);
if (!match) {
throw new Error(`Failed to parse Windows version from: ${version}`);
}
return `windows-${match[1]}`;
}
/***/ }), /***/ }),
@@ -91532,14 +91452,6 @@ module.exports = require("node:fs");
/***/ }), /***/ }),
/***/ 8161:
/***/ ((module) => {
"use strict";
module.exports = require("node:os");
/***/ }),
/***/ 6760: /***/ 6760:
/***/ ((module) => { /***/ ((module) => {

719
dist/setup/index.js generated vendored

File diff suppressed because it is too large Load Diff

476
dist/update-known-versions/index.js generated vendored
View File

@@ -28196,276 +28196,6 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.KNOWN_CHECKSUMS = void 0; exports.KNOWN_CHECKSUMS = void 0;
// AUTOGENERATED_DO_NOT_EDIT // AUTOGENERATED_DO_NOT_EDIT
exports.KNOWN_CHECKSUMS = { exports.KNOWN_CHECKSUMS = {
"aarch64-apple-darwin-0.9.24": "89661d9a16682197086df54bb43d0b03e58e23d4d9360fc8c6c0166f2828fd71",
"aarch64-pc-windows-msvc-0.9.24": "40ceb66af2667fc9b4d30a65ad8b8795d4effc39a44019b4218ad03f8f1d5a14",
"aarch64-unknown-linux-gnu-0.9.24": "9b291a1a4f2fefc430e4fc49c00cb93eb448d41c5c79edf45211ceffedde3334",
"aarch64-unknown-linux-musl-0.9.24": "b16359904ede857b90b68168f10b0f6bf500858df9bed4e7156dbc59fd3f0747",
"arm-unknown-linux-musleabihf-0.9.24": "b343d7f49ea5c0982c9696cbc5c7f96d7053cf8f9c7383a58d6c0c44fbeb6422",
"armv7-unknown-linux-gnueabihf-0.9.24": "8d05b55fe2108ecab3995c2b656679a72c543fd9dc72eeb3a525106a709cfdcb",
"armv7-unknown-linux-musleabihf-0.9.24": "788d2bee1dfdb57a462f2a5c4e3d6e8c68ee9f9f1a938bdcdc00fa9e5edeaeec",
"i686-pc-windows-msvc-0.9.24": "b49265a713cb3f874bcb373572095993d3098ab77cd2665483f53b24b788e5e9",
"i686-unknown-linux-gnu-0.9.24": "940b8985c4d464c7cc69e40b17bf09d840b980028e1d82a3fb8dd007a737f29e",
"i686-unknown-linux-musl-0.9.24": "4ffe6f377b7d68904d8d882af8adc85f2fa1bbccd26151785ff961adb67f2a99",
"powerpc64-unknown-linux-gnu-0.9.24": "1fbaff65544a2c36bbd8992e2abe6c50179401745dc00b5e12bded89794056a4",
"powerpc64le-unknown-linux-gnu-0.9.24": "57ea84430ccf49f97184d9ee21102b250214fc6e6af4a87eefaaf8bb7c9c2b9a",
"riscv64gc-unknown-linux-gnu-0.9.24": "81a884380f0ee954afd968140aaa55df19f2bee30d74f3c0c94a11d2265bb388",
"s390x-unknown-linux-gnu-0.9.24": "3da41f22f78f27a7764e303b07c68f5716f748128327c7d3d72f11c6b81b6c78",
"x86_64-apple-darwin-0.9.24": "fda9b3203cce6ec3a37177440c33c4c1963c4957fff17e2820c60ab6ccd625da",
"x86_64-pc-windows-msvc-0.9.24": "cf9d6fa12017199d19c6f9a8f7f55811c8c04d70681b8cb6d89ffb179f08cf1f",
"x86_64-unknown-linux-gnu-0.9.24": "fb13ad85106da6b21dd16613afca910994446fe94a78ee0b5bed9c75cd066078",
"x86_64-unknown-linux-musl-0.9.24": "cf307aa4271038daa334ca64e75aa40c0c085ce6fa0c0e6f21e41a2b62c7904d",
"aarch64-apple-darwin-0.9.23": "3aae069424778d13ef45ebd2ec906c66ab10e459e7b33341a64cd371a3d70998",
"aarch64-pc-windows-msvc-0.9.23": "dfdb23dbfa6c89847e4163f0b3b683de889df7d9bdf95a3909dfbc6430106304",
"aarch64-unknown-linux-gnu-0.9.23": "d60b0b2aee79f9d83897615fed427bee1ea4ebcb2f15b48dd522319ecdb3de91",
"aarch64-unknown-linux-musl-0.9.23": "ee987d943427ee24c1d3af79c7ad676950c9ad634e60a4d07e328d8a54fff92f",
"arm-unknown-linux-musleabihf-0.9.23": "1950c235e76e007f75d30903dc5da6747a344c72a1608123feff720c134ecbfe",
"armv7-unknown-linux-gnueabihf-0.9.23": "a7104ab491a0c2f0c58760bcb9a13cfb64c899e02a7b747c4d11da114b3f9114",
"armv7-unknown-linux-musleabihf-0.9.23": "c5d494337a5ca86ad83d6a887634fda3f8392560799e4236a44d76f8e27621b6",
"i686-pc-windows-msvc-0.9.23": "94292f02b7484616bb3cd7361411540a5a52e952d149eb6faeec610b6657015d",
"i686-unknown-linux-gnu-0.9.23": "627627174d31e6fa270e91c7b2988558e4b18b86cc31de9222b6cf3b7354e9b7",
"i686-unknown-linux-musl-0.9.23": "5f65a0eb1f9067a4f5149275faba3bcb3af94dd68fbce7cd9e93ba86b5bc59c3",
"powerpc64-unknown-linux-gnu-0.9.23": "69e2925397d0e781e8525ad0fd22896a114ffa02f5055e7a360e4dda3796c24e",
"powerpc64le-unknown-linux-gnu-0.9.23": "fb3ad2cb1a19f1bb4785580dc71837161147beab134fdc3eb4e8ccda577db1e0",
"riscv64gc-unknown-linux-gnu-0.9.23": "0d1d9300e2df3155b0d0b071c292fb27f8213d91854decdfb27c293397dc8e0e",
"s390x-unknown-linux-gnu-0.9.23": "7d0b411a365b0cd8fad2b336c259743e7381676654adfbdb4f887b4136820cb8",
"x86_64-apple-darwin-0.9.23": "b5bbfbd5d8c7effa24b505365ae306116fdac58880bc9b024ec4c89435d57728",
"x86_64-pc-windows-msvc-0.9.23": "bb6d2987906b27d3031640c4a909b6f7c134cd29674c41ef545c6e7d57dd6700",
"x86_64-unknown-linux-gnu-0.9.23": "b7bd7d9b9c9c34327f1118f99fe8c298252787ea35f7b345b8bf639377f63217",
"x86_64-unknown-linux-musl-0.9.23": "a824a0f5f7aa67b668f54756284d458a25dea332da6e558d303890d134cc06d1",
"aarch64-apple-darwin-0.9.22": "4bfc6dacc9bcc9e433a9214a658495ca082b94fd607949b6745a955f34ccbc3c",
"aarch64-pc-windows-msvc-0.9.22": "19b848523d5802279702f5df4ade6d45f17d111cf9e368883d4f6560f0426d49",
"aarch64-unknown-linux-gnu-0.9.22": "2f8716c407d5da21b8a3e8609ed358147216aaab28b96b1d6d7f48e9bcc6254e",
"aarch64-unknown-linux-musl-0.9.22": "a400eaede62557af86bed6c5252a101aa1efd596698bb10c9400334fcc2847ec",
"arm-unknown-linux-musleabihf-0.9.22": "23e0770034e31aaf47b0c84156b2e5ec7638ca0edc76a4cccb8bdc94bfd16159",
"armv7-unknown-linux-gnueabihf-0.9.22": "db3ac49b78b3ac57c0e6e9a0ea61237a235447338594ad8e398e8074448bd071",
"armv7-unknown-linux-musleabihf-0.9.22": "c153ac78c571dbbd9bab54c954b93b496645efbd4d3a0689b03e04d0de17c30f",
"i686-pc-windows-msvc-0.9.22": "f08889e9567feb1e802c9e588de60efef5a436630e4c211fbf4a2116928f69ab",
"i686-unknown-linux-gnu-0.9.22": "841e534a28285dcadfea2ca0f848a9669df287990f93d64c6bf87a9794c98ec9",
"i686-unknown-linux-musl-0.9.22": "b2c5322e188980afd4bc1afb19f4e8dee7000ad0e17ca754e97dab21c1d4d1f5",
"powerpc64-unknown-linux-gnu-0.9.22": "309c4a48d7f65cdf47aa7e1c5e02502556e04f486d46e9591f5b4196c92730a3",
"powerpc64le-unknown-linux-gnu-0.9.22": "1e829630f8317cf3e9818c3ad1f9927fdc9d087cd38abb05f9587c19872a8560",
"riscv64gc-unknown-linux-gnu-0.9.22": "d3036e36b330ad6caab68fa31c12c21f80c9b8cc7822416343a5100f09d6b640",
"s390x-unknown-linux-gnu-0.9.22": "aff367a5c6ffb87b9cebbda4372464ca6aff69a53c81a94f1d78541be9677b2d",
"x86_64-apple-darwin-0.9.22": "c0057ad78b475f343739b1bbe223361c1054524c9edf310ee1dc85a050207f86",
"x86_64-pc-windows-msvc-0.9.22": "93a0a244f26eec208d8ea8077e3de743d9687ad76c190342722f1f57fa629457",
"x86_64-unknown-linux-gnu-0.9.22": "e170aed70ac0225feee612e855d3a57ae73c61ffb22c7e52c3fd33b87c286508",
"x86_64-unknown-linux-musl-0.9.22": "84d087a8e77a223d80578919894f3103f46ca7c263250c3e0478ce7c38850349",
"aarch64-apple-darwin-0.9.21": "473977236ef8ac5937c80de08a3599cb6ed6021d0e015e10f88076767877a153",
"aarch64-pc-windows-msvc-0.9.21": "54f66a44108b1b68583c9da0a515195d011189874ec9547710c032801726e042",
"aarch64-unknown-linux-gnu-0.9.21": "416984484783a357170c43f98e7d2d203f1fb595d6b3b95131513c53e50986ef",
"aarch64-unknown-linux-musl-0.9.21": "03a49fb609888032dbc3be9fd114b50fc9bce8b73b3df319746ae08d1fbdea83",
"arm-unknown-linux-musleabihf-0.9.21": "5d84273d9e79aa1262e11d50b4b4e61c7b33bbbf47c7f7e271cb07f89ac479c1",
"armv7-unknown-linux-gnueabihf-0.9.21": "74b2a73b3569cbba8c73470eb45dfba393401c834dd432fc8bd2039b40b1dde6",
"armv7-unknown-linux-musleabihf-0.9.21": "fa3806603be42aad687bb97ff5939a32f5e1c21d565155299410ad445669ce11",
"i686-pc-windows-msvc-0.9.21": "941e2b656cf9c94eac4b751933b24e5820247d938958c3d62d9d95d0e2409956",
"i686-unknown-linux-gnu-0.9.21": "73fbd705cb4b5c071318afee896ba9984e3a14fcf7842435a93c43dc9ca0a12c",
"i686-unknown-linux-musl-0.9.21": "c38f823354fff387758f6288ad184b104f47520b3cee7d53e92f3666b3466f55",
"powerpc64-unknown-linux-gnu-0.9.21": "2cf68ea2ff75c4a627101bfe22064d6646a03cd7ddb939c933f3d8127b8d5982",
"powerpc64le-unknown-linux-gnu-0.9.21": "3ede0329f67f5db37914b5dfd6014c414d27e1bf0153dab8d5cc2e066da034dc",
"riscv64gc-unknown-linux-gnu-0.9.21": "3b7b070afd9c7be5a6364f081081cf9fec2160b53eba46cad27304b8b158e4ab",
"s390x-unknown-linux-gnu-0.9.21": "34bd75d67a5819c9f796a78b1ec9ebd48021d87d2391b4cf282249c4d026f145",
"x86_64-apple-darwin-0.9.21": "26390da48bd55e21ab62451a80ad240ef6df10d4c48ec199cbb34c18b4288983",
"x86_64-pc-windows-msvc-0.9.21": "d27952e73183ef8f6ee8c2a50cf8b3f2e08e01b6a9279a00a85cb261ea8d8337",
"x86_64-unknown-linux-gnu-0.9.21": "0a1ab27383c28ef1c041f85cbbc609d8e3752dfb4b238d2ad97b208a52232baf",
"x86_64-unknown-linux-musl-0.9.21": "7abc29b3a06a99fb23564400fe884f5798a1786dc2ca05b6e0f70c53de748ab2",
"aarch64-apple-darwin-0.9.20": "c3f4b03a5d526119d41fa8b8f255aa8053c49d787778df654895e3d174b1519a",
"aarch64-pc-windows-msvc-0.9.20": "ddba8b1ca82df9b49745c93855c670490d776027269cf7de404d951919c96ea7",
"aarch64-unknown-linux-gnu-0.9.20": "0451ecac1d0ed43d5870927df84c3d1dc93d72cf1933310acfadce5ad457c587",
"aarch64-unknown-linux-musl-0.9.20": "d1b645d63c70da3f6f2368ea4dbc9dd5534b54be74ae32dee8941531c6874b6d",
"arm-unknown-linux-musleabihf-0.9.20": "ddbaab7f1413f181bafc96c8b18af8e69372373798d2294d03d3935fd829c939",
"armv7-unknown-linux-gnueabihf-0.9.20": "e1b2f5e4298878e6ac1137f744ba38b59ce68abd6a43878e66a1cac4dd7efd0e",
"armv7-unknown-linux-musleabihf-0.9.20": "afc4a709ad83773bafa4ba83afa44bb101e44b817c5ad620cb9c54b62fe52e4e",
"i686-pc-windows-msvc-0.9.20": "d7e50a3bc433bbb08e7890206bec0623627e6a911a6c10322c98721bde1a9cb0",
"i686-unknown-linux-gnu-0.9.20": "aec778b1c44607416102139b6bb6a7f53a313fce8ad1033049b10ac90ed3c597",
"i686-unknown-linux-musl-0.9.20": "92dd40f272b65f8301f0f9559fe55ac99b340caba93fe1952172e3485494cbba",
"powerpc64-unknown-linux-gnu-0.9.20": "c2abda00a2b53cde9b6c8380ef9773749d341039771d7447df5647d935eb54c6",
"powerpc64le-unknown-linux-gnu-0.9.20": "f40409d551a30081ada78cca7a1a260c02a7d16c912d73988d8e212324dea758",
"riscv64gc-unknown-linux-gnu-0.9.20": "6dda223f877ff3eb3eba2fcf14abfd36280e5db1c0480addf5da5273ece087d6",
"s390x-unknown-linux-gnu-0.9.20": "8ca14c1a9fe47ad2293a321f061c7278b32d7bc200d2692662790ab6ccd395c1",
"x86_64-apple-darwin-0.9.20": "0059dc2986e7032c12b7039e1a66e570ab5c3a41598263c76e5a9c4e7da9f971",
"x86_64-pc-windows-msvc-0.9.20": "be51ed9fcba5be4ac9c41a46aaf8af5cef86624fe27e2c645771b174069e049d",
"x86_64-unknown-linux-gnu-0.9.20": "01ac5d872ab4cf6b11965c9df317f699882405f0319872fe3dbbb3adb045600b",
"x86_64-unknown-linux-musl-0.9.20": "0de686dcc02e0b045980779e7330f2deb98e6cd9ece40d3341bd45c6733e682d",
"aarch64-apple-darwin-0.9.18": "dc3bee4abbb3bac267a3985a23ea7617d19d41ff381dbaf560ba415ad65af68f",
"aarch64-pc-windows-msvc-0.9.18": "fadb43ba13091f44e1786fc3967e65c7786d86192aa205d718307c649927cfc2",
"aarch64-unknown-linux-gnu-0.9.18": "f8e23ec786b18660ade6b033b6191b7e9c283c872eeb8c4531d56a873decf160",
"aarch64-unknown-linux-musl-0.9.18": "b710ceb9889276cbd7ce04e2ca06b5bd3e288da465bd38f7dd17955c4e703a65",
"arm-unknown-linux-musleabihf-0.9.18": "2219049d28baaa0764e0315996e26c70ef548a0ba59add7f42358575ab04b410",
"armv7-unknown-linux-gnueabihf-0.9.18": "dddf55144884f5d83b9f5795f0b16d023abedf615505962a6ebcaaef2cb62815",
"armv7-unknown-linux-musleabihf-0.9.18": "265d49a8976a5956d3cab524e85e86df5397ab0daf6bd77f1494b0b9e1c00b9a",
"i686-pc-windows-msvc-0.9.18": "52bd6fedef821a2412de73c31fdcf41c31b0a5c5886a416c3ba1a3d282ff02b8",
"i686-unknown-linux-gnu-0.9.18": "6cc0437382adddd0439c874c41625539523725d551da9f9aecf7c0a3e86a1c77",
"i686-unknown-linux-musl-0.9.18": "a727b054337ce453e98b80d6eccaa913cf542c155f3252503aff3e613735c640",
"powerpc64-unknown-linux-gnu-0.9.18": "522154f752a90513cedcc621071893e46fb05d025ce8f0d4523514e8a87417d7",
"powerpc64le-unknown-linux-gnu-0.9.18": "0660534d548800b17d2fc1dcdaf0f284e48ca3e34fff2b8b5c1797610e18fc0e",
"riscv64gc-unknown-linux-gnu-0.9.18": "db6f5cbbc56a7212e61445a8cd1fcf880dc2906b4cac8f945320f0ab8eb9bf75",
"s390x-unknown-linux-gnu-0.9.18": "bfa789548a345189b70d9069d9d7ef8f9c2236f0d10e2ae47a13549ffded5b84",
"x86_64-apple-darwin-0.9.18": "f86836c637333c65bbc7902acc9c49888eef9fbd15dccbc1946b10e30b041073",
"x86_64-pc-windows-msvc-0.9.18": "28cbe5d30907a774bfe27a517a39b494ec6f7d3816bda8bbf6f9645490449182",
"x86_64-unknown-linux-gnu-0.9.18": "c2def3db178ade63933fa15ffc96e882c196ce53e06173dcee05b36c5f6f68f5",
"x86_64-unknown-linux-musl-0.9.18": "a55ae2d0d53c8f6541bb4d6afc95857ff33a97de8f1d23e9d09acdcb865c4a00",
"aarch64-apple-darwin-0.9.17": "a1e1464aa1d04d5e5fa700aa2f2e10397d1114e835dbd56be25ba65c9a31bd99",
"aarch64-pc-windows-msvc-0.9.17": "28423a27ad1d82347c00411a6792567119b3c1cfe775d3312c0e08a6b489be5b",
"aarch64-unknown-linux-gnu-0.9.17": "e9eba97b7169e47fd3c926e409f0b714820f0befc23b3ae062780586a793e4cc",
"aarch64-unknown-linux-musl-0.9.17": "f6f48a301f8e855765af42ef50257af0cebc9c5439dfdcbc188142941aea45ca",
"arm-unknown-linux-musleabihf-0.9.17": "4d80f3509b6351882a64c1dd08f72a80e2b27f055a996295ef1f935bc3efcdde",
"armv7-unknown-linux-gnueabihf-0.9.17": "30a6c041429e2176062573f33c5c44307cb756264224bcb005723a6e18cff34c",
"armv7-unknown-linux-musleabihf-0.9.17": "6b034dc63735c2a4541430cbece688e28bce51a09e2ad1ea2c1646a6b24cf1c3",
"i686-pc-windows-msvc-0.9.17": "6e93737710e31bf73fcc3b4b6da616bd341e9c6baf1162ddc1e7f65884063f50",
"i686-unknown-linux-gnu-0.9.17": "d2426a6d10bedd83524599bb0fbe0ba22e681ed45e892b4fd29086b424daf02a",
"i686-unknown-linux-musl-0.9.17": "988c7702a2e88092b30f16fb7f8c18284a8062044cf57e6abd1dfeae82aa6377",
"powerpc64-unknown-linux-gnu-0.9.17": "5ad301d9fa15e0791ef96abd83f0ed97e7ac1191b4b7578caaad3151633fb17c",
"powerpc64le-unknown-linux-gnu-0.9.17": "4958185c5febf22f1c4c84944334cb0d9262c2c2c93faf30c1e0abd26f9d94fa",
"riscv64gc-unknown-linux-gnu-0.9.17": "feed7cc7b5fc8a99e683ee1761cf99e3da12b60a2a413b7b87a0447726a66369",
"s390x-unknown-linux-gnu-0.9.17": "a297518913a0f0e4af1bce434440ca9d415728aaf828c7def0e913aa5c46da8f",
"x86_64-apple-darwin-0.9.17": "249e7fb18d45c06ba283c48f0a8e586ecc5fbb9e8dad0923c4169a7c4db815b2",
"x86_64-pc-windows-msvc-0.9.17": "ebc76197bf3e1a58f9dac6f70f49b0ebd3e6907ab35289ce228bce5ba8a3f201",
"x86_64-unknown-linux-gnu-0.9.17": "0114d54f9aafd07516cf1cadfe72afa970f5fd293fbe82dd924b8a7b42c984d8",
"x86_64-unknown-linux-musl-0.9.17": "ab616c1851e7b1ed377a9ff3997dcee184bea7eda0b20bc8607abba6c469cbad",
"aarch64-apple-darwin-0.9.16": "db6d7fb299c35dc9bbbeb89cfa9aa55a9584f637d370c0a4c62a50df9c9294a7",
"aarch64-pc-windows-msvc-0.9.16": "591c73f47dfec72f9d242eebcb36197f27ad652a59d70e70db5c52018684d78e",
"aarch64-unknown-linux-gnu-0.9.16": "a8e9e3f7e621e212d9663ea28827bd8fb9ec11c453ae88d520b48e969e9ff5db",
"aarch64-unknown-linux-musl-0.9.16": "cb6730e083f17b38aea88c2bdfc3d4c834a832444087d30d7914bd460ae15b79",
"arm-unknown-linux-musleabihf-0.9.16": "4c2447ff0aad62934605252eaf6372efb82fb38330b88785e162929491870186",
"armv7-unknown-linux-gnueabihf-0.9.16": "5a09476442563f6ee32d864d89a87490bf5a850c987898c648ef57608c5899cb",
"armv7-unknown-linux-musleabihf-0.9.16": "180846487d6baa1ca9d4cd90a0aaf38f7466d3c211c219bd4d7ffbbbc5077ef2",
"i686-pc-windows-msvc-0.9.16": "f6921ace765a2905c0cda8bf8185ecd60d83060da4b2904a28b5a8c23ffc7aa2",
"i686-unknown-linux-gnu-0.9.16": "1cdb9a2086a5d1ea37e219c45407730ef3e7711737b71fae49d1396918f4cdba",
"i686-unknown-linux-musl-0.9.16": "f8b0159c52bc43cbe598c52dd43ca911c22c6b9da992f3604434b23d21ac5ff6",
"powerpc64-unknown-linux-gnu-0.9.16": "40c39d344c92c6a877fdfe89db8a5f84990dbb7097e529122bd7d90d1975eb90",
"powerpc64le-unknown-linux-gnu-0.9.16": "982167ebae22efbda212ccbacc582b00486150695d83fca94d39c3422a0f8865",
"riscv64gc-unknown-linux-gnu-0.9.16": "b94ef3afa9bc94288e069162143ec20ed1d103d7631a17ca14c6ac28e8825baa",
"s390x-unknown-linux-gnu-0.9.16": "cd32014282b2d2de53eb0176004dffddec77f0afbe76713f57c245e08cdf2b21",
"x86_64-apple-darwin-0.9.16": "e1ba1992e163f8b9d54d1cd1501002f019f4b729dec2a197e79a56d354ec2773",
"x86_64-pc-windows-msvc-0.9.16": "e498a1d5983da7727af96b63ddfcd52ee883173552664ad0b629b3d4c7a46e91",
"x86_64-unknown-linux-gnu-0.9.16": "3adbf5322471b53a61483b4a5d091e70c32231ebc63fd327fae7b844cbcd3e01",
"x86_64-unknown-linux-musl-0.9.16": "35a26bea6aad2c8eb468cdf69baccc7ab79b3d0971a76a6741a687535a2acfad",
"aarch64-apple-darwin-0.9.15": "388029510fdf64771745e9fb85cd6ec042580678a9e61c90fe355301f1c42f1e",
"aarch64-pc-windows-msvc-0.9.15": "19422893deba37feb4b4191b43be89525ac48bd378f9fdbf2d5bca44319f8c19",
"aarch64-unknown-linux-gnu-0.9.15": "d89430e201f629b203975c605cd6bfe85afc2bc0781d95838e2b5177a03b1545",
"aarch64-unknown-linux-musl-0.9.15": "41f6ef4f86e9f8015bc31e9ca4fd44a6e2c80fc0b75d6eb74063f64ca15177c7",
"arm-unknown-linux-musleabihf-0.9.15": "c85740e8c22187f82e3dad042d412991076d5701c7e1a4eba9ae1166f08f769b",
"armv7-unknown-linux-gnueabihf-0.9.15": "d30d648e4c1c76110ee78953b43ecb8c356cda438a071a60c97308f9a7d2cf27",
"armv7-unknown-linux-musleabihf-0.9.15": "a1fa385da85131e071f9a6cbde89456945ea821609624e80f9b4d8877b8fbcdb",
"i686-pc-windows-msvc-0.9.15": "7dabeb4719dedc1f690e4d5e9641d92c6b17e04245015d64511d207dbb1792d8",
"i686-unknown-linux-gnu-0.9.15": "806e2e49c539a030336c83cc8dd9fe6250a70b1f8fb15ecb165837ff330f4ee8",
"i686-unknown-linux-musl-0.9.15": "7ab63f3549f3fc61bab32f9526a6a3ba750dedb7f609a345a4205e41fcd91e92",
"powerpc64-unknown-linux-gnu-0.9.15": "b5b72a9053e4ad1c5baa68c3c8ae728567d8d9847f8cc852e0c6fabea9307647",
"powerpc64le-unknown-linux-gnu-0.9.15": "880b977489a0a580df04cf9020968bf05553bccd8dd48375a0c7cb6dd8048f58",
"riscv64gc-unknown-linux-gnu-0.9.15": "cb993da480f90b226bca66a1f54c4a0419a245d07d3d0e30a3f8c9a5b1f8fd2a",
"s390x-unknown-linux-gnu-0.9.15": "e0cac629299a49336e92a13684671bbf50933749412f480e051a4071a619fcd8",
"x86_64-apple-darwin-0.9.15": "a7d9ae35ce2d192cb0356f07439cfc6768d4dff8e95ae69f821e8fbe7bcb0e09",
"x86_64-pc-windows-msvc-0.9.15": "a6887c93a54c46de7dcc0bc798f84a130d7f411124ad43252716f75d0c2c33e0",
"x86_64-unknown-linux-gnu-0.9.15": "2053df0089327569cddd6afea920c2285b482d9b123f5db9f658273e96ab792c",
"x86_64-unknown-linux-musl-0.9.15": "7037889adb182ce50379b3a789154ad6be00397b892fec9e93e11c457945aec0",
"aarch64-apple-darwin-0.9.14": "5267ecb62737b2ec0d61fd40e93c20d0a201eba96588582633f725792c778e00",
"aarch64-pc-windows-msvc-0.9.14": "966f4ddb5450ade2be0989bb3d4cc4ff66ec316ad714618f2391712ec3660908",
"aarch64-unknown-linux-gnu-0.9.14": "b19bac23c34490b46f024636f164889b14403ab262118e2f97224053fc17ed8c",
"aarch64-unknown-linux-musl-0.9.14": "631ac3b88a77ec1af35297fdecc0b60b3eef16482617e3a2a5805bd667166437",
"arm-unknown-linux-musleabihf-0.9.14": "a5e112d7ec880c2fe9bb95500d3e6f148e68ca7ff2dd88ab0f8d966e14ef3c9d",
"armv7-unknown-linux-gnueabihf-0.9.14": "09449988d71401c37e8a7db2eb381e4a931c6394b7c1c9db7e444c2948f16677",
"armv7-unknown-linux-musleabihf-0.9.14": "b7273fc488ac5ae624ab5f657410d44443f30643b77b0ac0d1fdec0f7dee7b95",
"i686-pc-windows-msvc-0.9.14": "b361e46aa3d9fa94850fbf006deff3c23f1aa1392ec78da598b5e3af0349ae23",
"i686-unknown-linux-gnu-0.9.14": "106d70d5a9034d06ad1c2c6b028e6b0b77816f5de34d42f4e5c88fd5d5a0a8b0",
"i686-unknown-linux-musl-0.9.14": "2b9685ea197030fbcd327f5a96012c0d8a468db35c36e84b683b944b696d853a",
"powerpc64-unknown-linux-gnu-0.9.14": "1cdb82fa8fc213149dd34bed755ba2ec8faef9d45a4206799256b2926c1495d9",
"powerpc64le-unknown-linux-gnu-0.9.14": "9ae475bb30150d12633283dd73707fc059bece75e2c42288bf35212b5e6f09ec",
"riscv64gc-unknown-linux-gnu-0.9.14": "96abad8a9324bd756905ab705ef853e036b3725242161682e7ceab2bf4081186",
"s390x-unknown-linux-gnu-0.9.14": "f5250473bd8a036b78f4ec19450eb3efe743232d688f770ea2a92f21da7fb417",
"x86_64-apple-darwin-0.9.14": "276fe2605a0ba8306a875101e3a11bc5b93e2bce0b6b3b6c49c9ad14507d9dba",
"x86_64-pc-windows-msvc-0.9.14": "7ca7a43da656d9c5fd4b40ce6e8de19bc46d51e026c9dfd4909c1bc8b25f88bc",
"x86_64-unknown-linux-gnu-0.9.14": "e72024e390fed178072e0c9b262c052d89ccff32a5522504f4991d6265aff411",
"x86_64-unknown-linux-musl-0.9.14": "2b9636963c700a595d476e387eb8041973d30c5add3193a8710a4306442ee74b",
"aarch64-apple-darwin-0.9.13": "9c594dce1c237e11680be2b6d1331448eeb6f8a1453fb851a66a40291bb624de",
"aarch64-pc-windows-msvc-0.9.13": "761e29d5a67ca61f1d19c20ce935a9fd1f0011efb0e00f1efb20b0801e06b3c4",
"aarch64-unknown-linux-gnu-0.9.13": "c221d04810f873a7aa8bae9aa6ed721e600e56534980df1363952386a4fcdcc5",
"aarch64-unknown-linux-musl-0.9.13": "5a81540af68e28df324d01d79900e7b86c659e8167cb236528b8e6050d74f94e",
"arm-unknown-linux-musleabihf-0.9.13": "35043814a4eff41141943834e70faa8de54a4a9f6635e0993382ac2ee06651bf",
"armv7-unknown-linux-gnueabihf-0.9.13": "a6c99ae8fdd21e58b8908ecf4f521d2045e297572d899fdd6b59e14d1095600c",
"armv7-unknown-linux-musleabihf-0.9.13": "8a7655f116f90380a9b9e5a11cf8dc37c5a898b01087d48a801a59165eb2e42c",
"i686-pc-windows-msvc-0.9.13": "be134c7576ba494db286a2ccc2ada117b4709e67090264d81891221ea366f2ef",
"i686-unknown-linux-gnu-0.9.13": "b0884051fdf28461db2f1d4f0968cfcc4ad51539195638beb2656cba863a9895",
"i686-unknown-linux-musl-0.9.13": "839215a614165993ee4daecb25857f17d81640ca88bb2874129a92451ac109f3",
"powerpc64-unknown-linux-gnu-0.9.13": "735fd044e22dbcda6d174d9dc7f007a2782610509be4bc9c0bdec18eb0f76684",
"powerpc64le-unknown-linux-gnu-0.9.13": "bac44db58d9e4fc9f1ebc6c03d4ef73d10ae871569a19099d348803e1b09a763",
"riscv64gc-unknown-linux-gnu-0.9.13": "189ce36262a01fc411e85dc6d2cb8dc262b9ba2ce5bc1e6f3ba2bb284a190b95",
"s390x-unknown-linux-gnu-0.9.13": "037fc4a382a2d591429a35078cce5ff44170e2d14fa5fa4625902f36b8aa892a",
"x86_64-apple-darwin-0.9.13": "571cb1623681c439af892335c729c272266e836a9ebcb627f34f8012c6459d9d",
"x86_64-pc-windows-msvc-0.9.13": "cdfb04512c9184939f16eea02644a7133b4e41233ead69122d49847d29a45538",
"x86_64-unknown-linux-gnu-0.9.13": "c45a44144bf23a2182e143227b4ad0bbe41a2bb7161a637c02e968906af53fd1",
"x86_64-unknown-linux-musl-0.9.13": "04cf326d2d742ce5c8890fdc0b9f71bd707be8640979bf6e53ddd52da74dfb41",
"aarch64-apple-darwin-0.9.12": "6bf1148aa48bc42853e8216982a89f6909e1932a51f4d8dce27815e8954e4664",
"aarch64-pc-windows-msvc-0.9.12": "0975aff9837edcd97f2f781ff78754929ee13386708b76a5f223ed41b5741fec",
"aarch64-unknown-linux-gnu-0.9.12": "3c4dd18c1db6bd1af3b84ea3b3cc34dd9d8b955d3e700d1e1e4a18249decbe69",
"aarch64-unknown-linux-musl-0.9.12": "e953307caacdcf8a5bbac510423b2e64840428244a542ae2d7a6ca79c2931c24",
"arm-unknown-linux-musleabihf-0.9.12": "3f8ede818c4a7d8f7f3069eb4034dcdea85342d7b952b269cf17bd2854a9e028",
"armv7-unknown-linux-gnueabihf-0.9.12": "2f06cb797ba7c4f5f1774331d4e15f912b1e8035e49c9ad5f510378fd2d129dc",
"armv7-unknown-linux-musleabihf-0.9.12": "d72ecd42c3657c1e6ca76adc0d98c0576751da8e115cbfbb2cbd36be3f8c8638",
"i686-pc-windows-msvc-0.9.12": "e140404f281a6427faac4d4d0fab467f3e305ae6ba6ecfab0d149ad6815a2c04",
"i686-unknown-linux-gnu-0.9.12": "a56311ec3dfa0fa0760e763dcd0879f5a5c21aa5342b9290d2650b014fec49c8",
"i686-unknown-linux-musl-0.9.12": "1ac8ad42c48eebdc0d62ae78707d4ca2727d0c88ec00fbdd07d0655f023e2ab9",
"powerpc64-unknown-linux-gnu-0.9.12": "89f4a9122dfd30dd51db572513e5db4a05e29abe752405d751b92fe6f30990e2",
"powerpc64le-unknown-linux-gnu-0.9.12": "2941ffdf84340c8416cec8beb15c35b92afb1185a08cae05b8637c26225473d5",
"riscv64gc-unknown-linux-gnu-0.9.12": "0f95884ded94f98d3b8a1f2f9f78f6da4eea5e20f718185a0da4778ab0798e9b",
"s390x-unknown-linux-gnu-0.9.12": "a73662924261b0c581b762040c27fb839aca9164b13e017ca5162ae3dbb51c50",
"x86_64-apple-darwin-0.9.12": "b91852ea80e1c137f6246c8b01bc52d1c7213bff8d82cccd532ce2272c56d482",
"x86_64-pc-windows-msvc-0.9.12": "ee09ed595c54ee70fb29b596c9a15aa71f5d7a1191417985a0684a1dd644a8da",
"x86_64-unknown-linux-gnu-0.9.12": "4e43dac0c82b12b66564d91d5649350377b771d1df84374d9be1b9e6c8dd8152",
"x86_64-unknown-linux-musl-0.9.12": "3621344419cedb7625f0c07c54e876d0a6bb5576b39879b118ed96a6d104fd11",
"aarch64-apple-darwin-0.9.11": "594d9f4cfbd21d5a2f34b0352bf423066a9dab1733c90b5d40e3e227506deb03",
"aarch64-pc-windows-msvc-0.9.11": "04964328f8e8a4e868153f65a29a927c5d3d8f16c343686bbab5147c72858903",
"aarch64-unknown-linux-gnu-0.9.11": "b695e1796449ea85f967b749f87283678ce284e2c042b4b6fa51fa36ec06f47c",
"aarch64-unknown-linux-musl-0.9.11": "26b33bb65714247dd865216e71c5528030c85c6de9ce06172152158ed7add70c",
"arm-unknown-linux-musleabihf-0.9.11": "6b64be48c461ec1b25d8695d407d6189c660ca2f25ab5978476ae2cff516ce32",
"armv7-unknown-linux-gnueabihf-0.9.11": "2212adfff866e062dcea7d1ef99935043a49e3d77a18c9258851b7d23c5c3f90",
"armv7-unknown-linux-musleabihf-0.9.11": "73729ebd29e2895f30c1a600adac56748b1afe18e9398e86ac4a293941fee3f7",
"i686-pc-windows-msvc-0.9.11": "d7a6e1d8f3d6bc2eea36311fe1b30ee44e8aac5de54189bbf17849a212a388a0",
"i686-unknown-linux-gnu-0.9.11": "19189d007a820ed37b08a54cc46efd2b697ed266e71bac6f38abf44e319a5067",
"i686-unknown-linux-musl-0.9.11": "d517ec84358c3ed55757bf8e28eba40072b7912626d96ef0df29fd115f875ad1",
"powerpc64-unknown-linux-gnu-0.9.11": "a30437a5ccbbcedcdd2e70e81404cfcf7a6b4f34d1a440c61e7df96702165869",
"powerpc64le-unknown-linux-gnu-0.9.11": "6340562f7aff862c6b15c55520ca81823fe446e595f96f4732ddf37544977a5d",
"riscv64gc-unknown-linux-gnu-0.9.11": "89ac4d89928dded2e1f300f5f6b184b9f370493c2e506ca272d77e39c6a1b68f",
"s390x-unknown-linux-gnu-0.9.11": "665208d604a63d8e934bd4f748e689283f507b20a083f6c027146d92eb3048c0",
"x86_64-apple-darwin-0.9.11": "14236594b4edbd90929d845766a41a1d4e51d530c9ebbedfb3d93688661f142c",
"x86_64-pc-windows-msvc-0.9.11": "45a3ff2a68c246ed9fd2d9df032496c1beebe480357f356ac25d2cb144884c30",
"x86_64-unknown-linux-gnu-0.9.11": "817c0722b437b4b45b9a7e0231616a09db76bab1b8d178ba7a9680c690db19f0",
"x86_64-unknown-linux-musl-0.9.11": "5cc06fe71374a8883aeb2c83a141a4b5fac8584ee894ba31c5792254508b4e9a",
"aarch64-apple-darwin-0.9.10": "af171d5a4eb1c502819de32740aa811ff71851b1f5ec2d8bd0dda302ed9554c2",
"aarch64-pc-windows-msvc-0.9.10": "6cca85b629d2944f839651e01070dc3de03d238c75a310f28914fcd63ddb9aa6",
"aarch64-unknown-linux-gnu-0.9.10": "39d80f85f604018281b3e7bf2e1515ab96e8eec5763a2cef9f87d821f66d1758",
"aarch64-unknown-linux-musl-0.9.10": "9dda17fe2261a16ce0d267617e5898b9678ba6c5f1c8528b7fe48d32d839f427",
"arm-unknown-linux-musleabihf-0.9.10": "8b71fe3fc0148bcf5a16fe397ad39260145e497f11c51c02293083e8674932f1",
"armv7-unknown-linux-gnueabihf-0.9.10": "cc2ecd5c5093de3d591f4b856ded66a73af3e18eca48eafb65bd3a0b650adcd4",
"armv7-unknown-linux-musleabihf-0.9.10": "52dd0c8479d1f2e9973d2cf84039005b93f63b8d9bcbce6779f73a48b23fff0c",
"i686-pc-windows-msvc-0.9.10": "3b3198c214294d5dc352a94dc7bb22f582d11e364780f70dbc3580602339de9a",
"i686-unknown-linux-gnu-0.9.10": "2896597201449656c0366c5ce657050f1be3fed77db7f3c40e70008719c8db8c",
"i686-unknown-linux-musl-0.9.10": "5fbd3f8857870a30c0dd8066439adf3a7a3999809088b42ca932e8d4ea458475",
"powerpc64-unknown-linux-gnu-0.9.10": "bbff176ee9a6f2b3dc3764bfe9e782f9f244403082bf774d23f0d1575fdfee16",
"powerpc64le-unknown-linux-gnu-0.9.10": "6136887ae446c05fb0c88bed01289a830b6ab5b2cd167b05f0c9add6674bfc00",
"riscv64gc-unknown-linux-gnu-0.9.10": "0572b985da8b546496dbcb087b57127c0d55a02778a7697e27e1314f8f6bccc8",
"s390x-unknown-linux-gnu-0.9.10": "12cefdeba209ffab42cfff6f9f5b24d1d6f561f22825ce545be04bbc20dd9810",
"x86_64-apple-darwin-0.9.10": "0e395aad905332bb106f8bb05575ed001de34e9627a4c455a2f6b9475957719e",
"x86_64-pc-windows-msvc-0.9.10": "bf5a9bb171e90bc612c7acebfb560693d04dba1d1009c297b83da23155218607",
"x86_64-unknown-linux-gnu-0.9.10": "440c4215b171e64061d65d16a23753dd25c29a7f7b1b0446c9e9aed0fa372f27",
"x86_64-unknown-linux-musl-0.9.10": "e614681a150d52446eb8f4cf34f90b5d42b609bd1f2615da049449d795bfe5b4",
"aarch64-apple-darwin-0.9.9": "737e1c2c4f97577aa7764141846e27de915eebb3b2a0f467451089a64824d2f7",
"aarch64-pc-windows-msvc-0.9.9": "517a34f4e609f1ae4920f3a31280427244927d713e0451e21ceb102eb59450d2",
"aarch64-unknown-linux-gnu-0.9.9": "35cbad89f226a06cd8b295f946e7083e15cd6fa058e09c2e02bb388be39a8fe4",
"aarch64-unknown-linux-musl-0.9.9": "84675e9f81c7ec45b11761db4e1f047c64e772d96a7d99201507a10279f7f835",
"arm-unknown-linux-musleabihf-0.9.9": "0ac0dc5e822e8acc9bcd53d3854ebbeef80c806d5722ee8666b8fa49582c8ff3",
"armv7-unknown-linux-gnueabihf-0.9.9": "0390a683afc68c10c3cef45d80678015c6d097260a612ab6bca006ec68f75918",
"armv7-unknown-linux-musleabihf-0.9.9": "9de2898662af656fb80bdbfae1958423ed572745f3c10272ff4c214f02c0cfe0",
"i686-pc-windows-msvc-0.9.9": "724c82034a49f7e859de83382d18b38ec830730446996ccc92ddf65d8d1073e7",
"i686-unknown-linux-gnu-0.9.9": "892e4fd9ee89a1e04ec3608a341e635f4ff5fc6278d0e0be817d1a8df2b29683",
"i686-unknown-linux-musl-0.9.9": "25d9277765bc8e854d5043aa6bad21ed41aca2d84c6f490e6872c5bbd21a8f03",
"powerpc64-unknown-linux-gnu-0.9.9": "2dd81137f5d033ec742e33cb1914a0113b798bb189cf0ba341c4ecda7e7a3a3f",
"powerpc64le-unknown-linux-gnu-0.9.9": "4b22b352bb953d8e050a6f7e72e5308e437e28f9ce2bd9a037b40d0c0aae9bfe",
"riscv64gc-unknown-linux-gnu-0.9.9": "527aa930b057c79712089c4529e35b53a0a7884947a3f4bab8d36d91d0011c70",
"s390x-unknown-linux-gnu-0.9.9": "9ff624746c1f6e6516a05461fb7d918a2f61e77d139d113784c91e932440244e",
"x86_64-apple-darwin-0.9.9": "8a755971dbf0b394cb61607c3d21e81affd62a22cfd306351eb518be7a3f0a89",
"x86_64-pc-windows-msvc-0.9.9": "b1c5d78c5cb6804e556e07eeafbcdea7378107c2bd5c342dea0cdc05a607d8e5",
"x86_64-unknown-linux-gnu-0.9.9": "9ec303873e00deed44d1b2b52b85ab7aa55d849588d7242298748390eaea07ef",
"x86_64-unknown-linux-musl-0.9.9": "b0e4530c1fed09720d7eb703703047f097fe23d6b266945a98422f0a0e5c74b4",
"aarch64-apple-darwin-0.9.8": "c021ce28988acbbfcb496e68cd9f2f6ba6401cc6d3292a5d25313873f825e002", "aarch64-apple-darwin-0.9.8": "c021ce28988acbbfcb496e68cd9f2f6ba6401cc6d3292a5d25313873f825e002",
"aarch64-pc-windows-msvc-0.9.8": "911f354690319ef93f434ecaccd6a893861d231a2af0466b495edee9313d5759", "aarch64-pc-windows-msvc-0.9.8": "911f354690319ef93f434ecaccd6a893861d231a2af0466b495edee9313d5759",
"aarch64-unknown-linux-gnu-0.9.8": "8dc203a27c99f721545adc531279f0486ea3deb77c951a051e6bb9ea1d588a71", "aarch64-unknown-linux-gnu-0.9.8": "8dc203a27c99f721545adc531279f0486ea3deb77c951a051e6bb9ea1d588a71",
@@ -35269,13 +34999,12 @@ class RequestError extends Error {
*/ */
response; response;
constructor(message, statusCode, options) { constructor(message, statusCode, options) {
super(message, { cause: options.cause }); super(message);
this.name = "HttpError"; this.name = "HttpError";
this.status = Number.parseInt(statusCode); this.status = Number.parseInt(statusCode);
if (Number.isNaN(this.status)) { if (Number.isNaN(this.status)) {
this.status = 0; this.status = 0;
} }
/* v8 ignore else -- @preserve -- Bug with vitest coverage where it sees an else branch that doesn't exist */
if ("response" in options) { if ("response" in options) {
this.response = options.response; this.response = options.response;
} }
@@ -35302,7 +35031,7 @@ class RequestError extends Error {
// pkg/dist-src/version.js // pkg/dist-src/version.js
var dist_bundle_VERSION = "10.0.7"; var dist_bundle_VERSION = "10.0.5";
// pkg/dist-src/defaults.js // pkg/dist-src/defaults.js
var defaults_default = { var defaults_default = {
@@ -35326,7 +35055,6 @@ function dist_bundle_isPlainObject(value) {
// pkg/dist-src/fetch-wrapper.js // pkg/dist-src/fetch-wrapper.js
var noop = () => "";
async function fetchWrapper(requestOptions) { async function fetchWrapper(requestOptions) {
const fetch = requestOptions.request?.fetch || globalThis.fetch; const fetch = requestOptions.request?.fetch || globalThis.fetch;
if (!fetch) { if (!fetch) {
@@ -35428,7 +35156,7 @@ async function fetchWrapper(requestOptions) {
async function getResponseData(response) { async function getResponseData(response) {
const contentType = response.headers.get("content-type"); const contentType = response.headers.get("content-type");
if (!contentType) { if (!contentType) {
return response.text().catch(noop); return response.text().catch(() => "");
} }
const mimetype = (0,fast_content_type_parse/* safeParse */.xL)(contentType); const mimetype = (0,fast_content_type_parse/* safeParse */.xL)(contentType);
if (isJSONResponse(mimetype)) { if (isJSONResponse(mimetype)) {
@@ -35440,12 +35168,9 @@ async function getResponseData(response) {
return text; return text;
} }
} else if (mimetype.type.startsWith("text/") || mimetype.parameters.charset?.toLowerCase() === "utf-8") { } else if (mimetype.type.startsWith("text/") || mimetype.parameters.charset?.toLowerCase() === "utf-8") {
return response.text().catch(noop); return response.text().catch(() => "");
} else { } else {
return response.arrayBuffer().catch( return response.arrayBuffer().catch(() => new ArrayBuffer(0));
/* v8 ignore next -- @preserve */
() => new ArrayBuffer(0)
);
} }
} }
function isJSONResponse(mimetype) { function isJSONResponse(mimetype) {
@@ -35493,8 +35218,6 @@ function dist_bundle_withDefaults(oldEndpoint, newDefaults) {
// pkg/dist-src/index.js // pkg/dist-src/index.js
var request = dist_bundle_withDefaults(endpoint, defaults_default); var request = dist_bundle_withDefaults(endpoint, defaults_default);
/* v8 ignore next -- @preserve */
/* v8 ignore else -- @preserve */
;// CONCATENATED MODULE: ./node_modules/@octokit/graphql/dist-bundle/index.js ;// CONCATENATED MODULE: ./node_modules/@octokit/graphql/dist-bundle/index.js
// pkg/dist-src/index.js // pkg/dist-src/index.js
@@ -35679,7 +35402,7 @@ var createTokenAuth = function createTokenAuth2(token) {
;// CONCATENATED MODULE: ./node_modules/@octokit/core/dist-src/version.js ;// CONCATENATED MODULE: ./node_modules/@octokit/core/dist-src/version.js
const version_VERSION = "7.0.6"; const version_VERSION = "7.0.5";
;// CONCATENATED MODULE: ./node_modules/@octokit/core/dist-src/index.js ;// CONCATENATED MODULE: ./node_modules/@octokit/core/dist-src/index.js
@@ -35689,16 +35412,16 @@ const version_VERSION = "7.0.6";
const dist_src_noop = () => { const noop = () => {
}; };
const consoleWarn = console.warn.bind(console); const consoleWarn = console.warn.bind(console);
const consoleError = console.error.bind(console); const consoleError = console.error.bind(console);
function createLogger(logger = {}) { function createLogger(logger = {}) {
if (typeof logger.debug !== "function") { if (typeof logger.debug !== "function") {
logger.debug = dist_src_noop; logger.debug = noop;
} }
if (typeof logger.info !== "function") { if (typeof logger.info !== "function") {
logger.info = dist_src_noop; logger.info = noop;
} }
if (typeof logger.warn !== "function") { if (typeof logger.warn !== "function") {
logger.warn = consoleWarn; logger.warn = consoleWarn;
@@ -35965,9 +35688,7 @@ var paginatingEndpoints = [
"GET /enterprises/{enterprise}/code-security/configurations", "GET /enterprises/{enterprise}/code-security/configurations",
"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories", "GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories",
"GET /enterprises/{enterprise}/dependabot/alerts", "GET /enterprises/{enterprise}/dependabot/alerts",
"GET /enterprises/{enterprise}/teams", "GET /enterprises/{enterprise}/secret-scanning/alerts",
"GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships",
"GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations",
"GET /events", "GET /events",
"GET /gists", "GET /gists",
"GET /gists/public", "GET /gists/public",
@@ -35999,7 +35720,6 @@ var paginatingEndpoints = [
"GET /orgs/{org}/actions/secrets/{secret_name}/repositories", "GET /orgs/{org}/actions/secrets/{secret_name}/repositories",
"GET /orgs/{org}/actions/variables", "GET /orgs/{org}/actions/variables",
"GET /orgs/{org}/actions/variables/{name}/repositories", "GET /orgs/{org}/actions/variables/{name}/repositories",
"GET /orgs/{org}/attestations/repositories",
"GET /orgs/{org}/attestations/{subject_digest}", "GET /orgs/{org}/attestations/{subject_digest}",
"GET /orgs/{org}/blocks", "GET /orgs/{org}/blocks",
"GET /orgs/{org}/campaigns", "GET /orgs/{org}/campaigns",
@@ -36051,7 +35771,6 @@ var paginatingEndpoints = [
"GET /orgs/{org}/rulesets/{ruleset_id}/history", "GET /orgs/{org}/rulesets/{ruleset_id}/history",
"GET /orgs/{org}/secret-scanning/alerts", "GET /orgs/{org}/secret-scanning/alerts",
"GET /orgs/{org}/security-advisories", "GET /orgs/{org}/security-advisories",
"GET /orgs/{org}/settings/immutable-releases/repositories",
"GET /orgs/{org}/settings/network-configurations", "GET /orgs/{org}/settings/network-configurations",
"GET /orgs/{org}/team/{team_slug}/copilot/metrics", "GET /orgs/{org}/team/{team_slug}/copilot/metrics",
"GET /orgs/{org}/teams", "GET /orgs/{org}/teams",
@@ -36065,6 +35784,7 @@ var paginatingEndpoints = [
"GET /orgs/{org}/teams/{team_slug}/repos", "GET /orgs/{org}/teams/{team_slug}/repos",
"GET /orgs/{org}/teams/{team_slug}/teams", "GET /orgs/{org}/teams/{team_slug}/teams",
"GET /projects/{project_id}/collaborators", "GET /projects/{project_id}/collaborators",
"GET /projects/{project_id}/columns",
"GET /repos/{owner}/{repo}/actions/artifacts", "GET /repos/{owner}/{repo}/actions/artifacts",
"GET /repos/{owner}/{repo}/actions/caches", "GET /repos/{owner}/{repo}/actions/caches",
"GET /repos/{owner}/{repo}/actions/organization-secrets", "GET /repos/{owner}/{repo}/actions/organization-secrets",
@@ -36204,6 +35924,8 @@ var paginatingEndpoints = [
"GET /user/subscriptions", "GET /user/subscriptions",
"GET /user/teams", "GET /user/teams",
"GET /users", "GET /users",
"GET /users/{user_id}/projectsV2/{project_number}/fields",
"GET /users/{user_id}/projectsV2/{project_number}/items",
"GET /users/{username}/attestations/{subject_digest}", "GET /users/{username}/attestations/{subject_digest}",
"GET /users/{username}/events", "GET /users/{username}/events",
"GET /users/{username}/events/orgs/{org}", "GET /users/{username}/events/orgs/{org}",
@@ -36217,8 +35939,6 @@ var paginatingEndpoints = [
"GET /users/{username}/packages", "GET /users/{username}/packages",
"GET /users/{username}/projects", "GET /users/{username}/projects",
"GET /users/{username}/projectsV2", "GET /users/{username}/projectsV2",
"GET /users/{username}/projectsV2/{project_number}/fields",
"GET /users/{username}/projectsV2/{project_number}/items",
"GET /users/{username}/received_events", "GET /users/{username}/received_events",
"GET /users/{username}/received_events/public", "GET /users/{username}/received_events/public",
"GET /users/{username}/repos", "GET /users/{username}/repos",
@@ -36265,7 +35985,7 @@ __nccwpck_require__.d(__webpack_exports__, {
}); });
;// CONCATENATED MODULE: ./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js ;// CONCATENATED MODULE: ./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js
const VERSION = "17.0.0"; const VERSION = "16.1.1";
//# sourceMappingURL=version.js.map //# sourceMappingURL=version.js.map
@@ -36328,12 +36048,6 @@ const Endpoints = {
deleteArtifact: [ deleteArtifact: [
"DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}" "DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"
], ],
deleteCustomImageFromOrg: [
"DELETE /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}"
],
deleteCustomImageVersionFromOrg: [
"DELETE /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions/{version}"
],
deleteEnvironmentSecret: [ deleteEnvironmentSecret: [
"DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}" "DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"
], ],
@@ -36407,12 +36121,6 @@ const Endpoints = {
"GET /repos/{owner}/{repo}/actions/permissions/selected-actions" "GET /repos/{owner}/{repo}/actions/permissions/selected-actions"
], ],
getArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"], getArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],
getCustomImageForOrg: [
"GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}"
],
getCustomImageVersionForOrg: [
"GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions/{version}"
],
getCustomOidcSubClaimForRepo: [ getCustomOidcSubClaimForRepo: [
"GET /repos/{owner}/{repo}/actions/oidc/customization/sub" "GET /repos/{owner}/{repo}/actions/oidc/customization/sub"
], ],
@@ -36492,12 +36200,6 @@ const Endpoints = {
"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing" "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"
], ],
listArtifactsForRepo: ["GET /repos/{owner}/{repo}/actions/artifacts"], listArtifactsForRepo: ["GET /repos/{owner}/{repo}/actions/artifacts"],
listCustomImageVersionsForOrg: [
"GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions"
],
listCustomImagesForOrg: [
"GET /orgs/{org}/actions/hosted-runners/images/custom"
],
listEnvironmentSecrets: [ listEnvironmentSecrets: [
"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets" "GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"
], ],
@@ -36756,12 +36458,6 @@ const Endpoints = {
getGithubActionsBillingUser: [ getGithubActionsBillingUser: [
"GET /users/{username}/settings/billing/actions" "GET /users/{username}/settings/billing/actions"
], ],
getGithubBillingPremiumRequestUsageReportOrg: [
"GET /organizations/{org}/settings/billing/premium_request/usage"
],
getGithubBillingPremiumRequestUsageReportUser: [
"GET /users/{username}/settings/billing/premium_request/usage"
],
getGithubBillingUsageReportOrg: [ getGithubBillingUsageReportOrg: [
"GET /organizations/{org}/settings/billing/usage" "GET /organizations/{org}/settings/billing/usage"
], ],
@@ -37129,51 +36825,6 @@ const Endpoints = {
exportSbom: ["GET /repos/{owner}/{repo}/dependency-graph/sbom"] exportSbom: ["GET /repos/{owner}/{repo}/dependency-graph/sbom"]
}, },
emojis: { get: ["GET /emojis"] }, emojis: { get: ["GET /emojis"] },
enterpriseTeamMemberships: {
add: [
"PUT /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"
],
bulkAdd: [
"POST /enterprises/{enterprise}/teams/{enterprise-team}/memberships/add"
],
bulkRemove: [
"POST /enterprises/{enterprise}/teams/{enterprise-team}/memberships/remove"
],
get: [
"GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"
],
list: ["GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships"],
remove: [
"DELETE /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"
]
},
enterpriseTeamOrganizations: {
add: [
"PUT /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"
],
bulkAdd: [
"POST /enterprises/{enterprise}/teams/{enterprise-team}/organizations/add"
],
bulkRemove: [
"POST /enterprises/{enterprise}/teams/{enterprise-team}/organizations/remove"
],
delete: [
"DELETE /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"
],
getAssignment: [
"GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"
],
getAssignments: [
"GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations"
]
},
enterpriseTeams: {
create: ["POST /enterprises/{enterprise}/teams"],
delete: ["DELETE /enterprises/{enterprise}/teams/{team_slug}"],
get: ["GET /enterprises/{enterprise}/teams/{team_slug}"],
list: ["GET /enterprises/{enterprise}/teams"],
update: ["PATCH /enterprises/{enterprise}/teams/{team_slug}"]
},
gists: { gists: {
checkIsStarred: ["GET /gists/{gist_id}/star"], checkIsStarred: ["GET /gists/{gist_id}/star"],
create: ["POST /gists"], create: ["POST /gists"],
@@ -37443,34 +37094,14 @@ const Endpoints = {
], ],
createInvitation: ["POST /orgs/{org}/invitations"], createInvitation: ["POST /orgs/{org}/invitations"],
createIssueType: ["POST /orgs/{org}/issue-types"], createIssueType: ["POST /orgs/{org}/issue-types"],
createWebhook: ["POST /orgs/{org}/hooks"], createOrUpdateCustomProperties: ["PATCH /orgs/{org}/properties/schema"],
customPropertiesForOrgsCreateOrUpdateOrganizationValues: [ createOrUpdateCustomPropertiesValuesForRepos: [
"PATCH /organizations/{org}/org-properties/values"
],
customPropertiesForOrgsGetOrganizationValues: [
"GET /organizations/{org}/org-properties/values"
],
customPropertiesForReposCreateOrUpdateOrganizationDefinition: [
"PUT /orgs/{org}/properties/schema/{custom_property_name}"
],
customPropertiesForReposCreateOrUpdateOrganizationDefinitions: [
"PATCH /orgs/{org}/properties/schema"
],
customPropertiesForReposCreateOrUpdateOrganizationValues: [
"PATCH /orgs/{org}/properties/values" "PATCH /orgs/{org}/properties/values"
], ],
customPropertiesForReposDeleteOrganizationDefinition: [ createOrUpdateCustomProperty: [
"DELETE /orgs/{org}/properties/schema/{custom_property_name}" "PUT /orgs/{org}/properties/schema/{custom_property_name}"
],
customPropertiesForReposGetOrganizationDefinition: [
"GET /orgs/{org}/properties/schema/{custom_property_name}"
],
customPropertiesForReposGetOrganizationDefinitions: [
"GET /orgs/{org}/properties/schema"
],
customPropertiesForReposGetOrganizationValues: [
"GET /orgs/{org}/properties/values"
], ],
createWebhook: ["POST /orgs/{org}/hooks"],
delete: ["DELETE /orgs/{org}"], delete: ["DELETE /orgs/{org}"],
deleteAttestationsBulk: ["POST /orgs/{org}/attestations/delete-request"], deleteAttestationsBulk: ["POST /orgs/{org}/attestations/delete-request"],
deleteAttestationsById: [ deleteAttestationsById: [
@@ -37481,18 +37112,10 @@ const Endpoints = {
], ],
deleteIssueType: ["DELETE /orgs/{org}/issue-types/{issue_type_id}"], deleteIssueType: ["DELETE /orgs/{org}/issue-types/{issue_type_id}"],
deleteWebhook: ["DELETE /orgs/{org}/hooks/{hook_id}"], deleteWebhook: ["DELETE /orgs/{org}/hooks/{hook_id}"],
disableSelectedRepositoryImmutableReleasesOrganization: [
"DELETE /orgs/{org}/settings/immutable-releases/repositories/{repository_id}"
],
enableSelectedRepositoryImmutableReleasesOrganization: [
"PUT /orgs/{org}/settings/immutable-releases/repositories/{repository_id}"
],
get: ["GET /orgs/{org}"], get: ["GET /orgs/{org}"],
getImmutableReleasesSettings: [ getAllCustomProperties: ["GET /orgs/{org}/properties/schema"],
"GET /orgs/{org}/settings/immutable-releases" getCustomProperty: [
], "GET /orgs/{org}/properties/schema/{custom_property_name}"
getImmutableReleasesSettingsRepositories: [
"GET /orgs/{org}/settings/immutable-releases/repositories"
], ],
getMembershipForAuthenticatedUser: ["GET /user/memberships/orgs/{org}"], getMembershipForAuthenticatedUser: ["GET /user/memberships/orgs/{org}"],
getMembershipForUser: ["GET /orgs/{org}/memberships/{username}"], getMembershipForUser: ["GET /orgs/{org}/memberships/{username}"],
@@ -37511,12 +37134,12 @@ const Endpoints = {
listArtifactStorageRecords: [ listArtifactStorageRecords: [
"GET /orgs/{org}/artifacts/{subject_digest}/metadata/storage-records" "GET /orgs/{org}/artifacts/{subject_digest}/metadata/storage-records"
], ],
listAttestationRepositories: ["GET /orgs/{org}/attestations/repositories"],
listAttestations: ["GET /orgs/{org}/attestations/{subject_digest}"], listAttestations: ["GET /orgs/{org}/attestations/{subject_digest}"],
listAttestationsBulk: [ listAttestationsBulk: [
"POST /orgs/{org}/attestations/bulk-list{?per_page,before,after}" "POST /orgs/{org}/attestations/bulk-list{?per_page,before,after}"
], ],
listBlockedUsers: ["GET /orgs/{org}/blocks"], listBlockedUsers: ["GET /orgs/{org}/blocks"],
listCustomPropertiesValuesForRepos: ["GET /orgs/{org}/properties/values"],
listFailedInvitations: ["GET /orgs/{org}/failed_invitations"], listFailedInvitations: ["GET /orgs/{org}/failed_invitations"],
listForAuthenticatedUser: ["GET /user/orgs"], listForAuthenticatedUser: ["GET /user/orgs"],
listForUser: ["GET /users/{username}/orgs"], listForUser: ["GET /users/{username}/orgs"],
@@ -37554,6 +37177,9 @@ const Endpoints = {
redeliverWebhookDelivery: [ redeliverWebhookDelivery: [
"POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts" "POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"
], ],
removeCustomProperty: [
"DELETE /orgs/{org}/properties/schema/{custom_property_name}"
],
removeMember: ["DELETE /orgs/{org}/members/{username}"], removeMember: ["DELETE /orgs/{org}/members/{username}"],
removeMembershipForUser: ["DELETE /orgs/{org}/memberships/{username}"], removeMembershipForUser: ["DELETE /orgs/{org}/memberships/{username}"],
removeOutsideCollaborator: [ removeOutsideCollaborator: [
@@ -37587,12 +37213,6 @@ const Endpoints = {
revokeOrgRoleUser: [ revokeOrgRoleUser: [
"DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}" "DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"
], ],
setImmutableReleasesSettings: [
"PUT /orgs/{org}/settings/immutable-releases"
],
setImmutableReleasesSettingsRepositories: [
"PUT /orgs/{org}/settings/immutable-releases/repositories"
],
setMembershipForUser: ["PUT /orgs/{org}/memberships/{username}"], setMembershipForUser: ["PUT /orgs/{org}/memberships/{username}"],
setPublicMembershipForAuthenticatedUser: [ setPublicMembershipForAuthenticatedUser: [
"PUT /orgs/{org}/public_members/{username}" "PUT /orgs/{org}/public_members/{username}"
@@ -37714,42 +37334,40 @@ const Endpoints = {
}, },
projects: { projects: {
addItemForOrg: ["POST /orgs/{org}/projectsV2/{project_number}/items"], addItemForOrg: ["POST /orgs/{org}/projectsV2/{project_number}/items"],
addItemForUser: [ addItemForUser: ["POST /users/{user_id}/projectsV2/{project_number}/items"],
"POST /users/{username}/projectsV2/{project_number}/items"
],
deleteItemForOrg: [ deleteItemForOrg: [
"DELETE /orgs/{org}/projectsV2/{project_number}/items/{item_id}" "DELETE /orgs/{org}/projectsV2/{project_number}/items/{item_id}"
], ],
deleteItemForUser: [ deleteItemForUser: [
"DELETE /users/{username}/projectsV2/{project_number}/items/{item_id}" "DELETE /users/{user_id}/projectsV2/{project_number}/items/{item_id}"
], ],
getFieldForOrg: [ getFieldForOrg: [
"GET /orgs/{org}/projectsV2/{project_number}/fields/{field_id}" "GET /orgs/{org}/projectsV2/{project_number}/fields/{field_id}"
], ],
getFieldForUser: [ getFieldForUser: [
"GET /users/{username}/projectsV2/{project_number}/fields/{field_id}" "GET /users/{user_id}/projectsV2/{project_number}/fields/{field_id}"
], ],
getForOrg: ["GET /orgs/{org}/projectsV2/{project_number}"], getForOrg: ["GET /orgs/{org}/projectsV2/{project_number}"],
getForUser: ["GET /users/{username}/projectsV2/{project_number}"], getForUser: ["GET /users/{user_id}/projectsV2/{project_number}"],
getOrgItem: ["GET /orgs/{org}/projectsV2/{project_number}/items/{item_id}"], getOrgItem: ["GET /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],
getUserItem: [ getUserItem: [
"GET /users/{username}/projectsV2/{project_number}/items/{item_id}" "GET /users/{user_id}/projectsV2/{project_number}/items/{item_id}"
], ],
listFieldsForOrg: ["GET /orgs/{org}/projectsV2/{project_number}/fields"], listFieldsForOrg: ["GET /orgs/{org}/projectsV2/{project_number}/fields"],
listFieldsForUser: [ listFieldsForUser: [
"GET /users/{username}/projectsV2/{project_number}/fields" "GET /users/{user_id}/projectsV2/{project_number}/fields"
], ],
listForOrg: ["GET /orgs/{org}/projectsV2"], listForOrg: ["GET /orgs/{org}/projectsV2"],
listForUser: ["GET /users/{username}/projectsV2"], listForUser: ["GET /users/{username}/projectsV2"],
listItemsForOrg: ["GET /orgs/{org}/projectsV2/{project_number}/items"], listItemsForOrg: ["GET /orgs/{org}/projectsV2/{project_number}/items"],
listItemsForUser: [ listItemsForUser: [
"GET /users/{username}/projectsV2/{project_number}/items" "GET /users/{user_id}/projectsV2/{project_number}/items"
], ],
updateItemForOrg: [ updateItemForOrg: [
"PATCH /orgs/{org}/projectsV2/{project_number}/items/{item_id}" "PATCH /orgs/{org}/projectsV2/{project_number}/items/{item_id}"
], ],
updateItemForUser: [ updateItemForUser: [
"PATCH /users/{username}/projectsV2/{project_number}/items/{item_id}" "PATCH /users/{user_id}/projectsV2/{project_number}/items/{item_id}"
] ]
}, },
pulls: { pulls: {
@@ -37912,7 +37530,6 @@ const Endpoints = {
"GET /repos/{owner}/{repo}/automated-security-fixes" "GET /repos/{owner}/{repo}/automated-security-fixes"
], ],
checkCollaborator: ["GET /repos/{owner}/{repo}/collaborators/{username}"], checkCollaborator: ["GET /repos/{owner}/{repo}/collaborators/{username}"],
checkImmutableReleases: ["GET /repos/{owner}/{repo}/immutable-releases"],
checkPrivateVulnerabilityReporting: [ checkPrivateVulnerabilityReporting: [
"GET /repos/{owner}/{repo}/private-vulnerability-reporting" "GET /repos/{owner}/{repo}/private-vulnerability-reporting"
], ],
@@ -37948,6 +37565,9 @@ const Endpoints = {
createForAuthenticatedUser: ["POST /user/repos"], createForAuthenticatedUser: ["POST /user/repos"],
createFork: ["POST /repos/{owner}/{repo}/forks"], createFork: ["POST /repos/{owner}/{repo}/forks"],
createInOrg: ["POST /orgs/{org}/repos"], createInOrg: ["POST /orgs/{org}/repos"],
createOrUpdateCustomPropertiesValues: [
"PATCH /repos/{owner}/{repo}/properties/values"
],
createOrUpdateEnvironment: [ createOrUpdateEnvironment: [
"PUT /repos/{owner}/{repo}/environments/{environment_name}" "PUT /repos/{owner}/{repo}/environments/{environment_name}"
], ],
@@ -37961,12 +37581,6 @@ const Endpoints = {
"POST /repos/{template_owner}/{template_repo}/generate" "POST /repos/{template_owner}/{template_repo}/generate"
], ],
createWebhook: ["POST /repos/{owner}/{repo}/hooks"], createWebhook: ["POST /repos/{owner}/{repo}/hooks"],
customPropertiesForReposCreateOrUpdateRepositoryValues: [
"PATCH /repos/{owner}/{repo}/properties/values"
],
customPropertiesForReposGetRepositoryValues: [
"GET /repos/{owner}/{repo}/properties/values"
],
declineInvitation: [ declineInvitation: [
"DELETE /user/repository_invitations/{invitation_id}", "DELETE /user/repository_invitations/{invitation_id}",
{}, {},
@@ -38021,9 +37635,6 @@ const Endpoints = {
disableDeploymentProtectionRule: [ disableDeploymentProtectionRule: [
"DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}" "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"
], ],
disableImmutableReleases: [
"DELETE /repos/{owner}/{repo}/immutable-releases"
],
disablePrivateVulnerabilityReporting: [ disablePrivateVulnerabilityReporting: [
"DELETE /repos/{owner}/{repo}/private-vulnerability-reporting" "DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"
], ],
@@ -38040,7 +37651,6 @@ const Endpoints = {
enableAutomatedSecurityFixes: [ enableAutomatedSecurityFixes: [
"PUT /repos/{owner}/{repo}/automated-security-fixes" "PUT /repos/{owner}/{repo}/automated-security-fixes"
], ],
enableImmutableReleases: ["PUT /repos/{owner}/{repo}/immutable-releases"],
enablePrivateVulnerabilityReporting: [ enablePrivateVulnerabilityReporting: [
"PUT /repos/{owner}/{repo}/private-vulnerability-reporting" "PUT /repos/{owner}/{repo}/private-vulnerability-reporting"
], ],
@@ -38092,6 +37702,7 @@ const Endpoints = {
getCustomDeploymentProtectionRule: [ getCustomDeploymentProtectionRule: [
"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}" "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"
], ],
getCustomPropertiesValues: ["GET /repos/{owner}/{repo}/properties/values"],
getDeployKey: ["GET /repos/{owner}/{repo}/keys/{key_id}"], getDeployKey: ["GET /repos/{owner}/{repo}/keys/{key_id}"],
getDeployment: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}"], getDeployment: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],
getDeploymentBranchPolicy: [ getDeploymentBranchPolicy: [
@@ -38309,7 +37920,13 @@ const Endpoints = {
search: { search: {
code: ["GET /search/code"], code: ["GET /search/code"],
commits: ["GET /search/commits"], commits: ["GET /search/commits"],
issuesAndPullRequests: ["GET /search/issues"], issuesAndPullRequests: [
"GET /search/issues",
{},
{
deprecated: "octokit.rest.search.issuesAndPullRequests() is deprecated, see https://docs.github.com/rest/search/search#search-issues-and-pull-requests"
}
],
labels: ["GET /search/labels"], labels: ["GET /search/labels"],
repos: ["GET /search/repositories"], repos: ["GET /search/repositories"],
topics: ["GET /search/topics"], topics: ["GET /search/topics"],
@@ -38323,6 +37940,9 @@ const Endpoints = {
"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}" "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"
], ],
getScanHistory: ["GET /repos/{owner}/{repo}/secret-scanning/scan-history"], getScanHistory: ["GET /repos/{owner}/{repo}/secret-scanning/scan-history"],
listAlertsForEnterprise: [
"GET /enterprises/{enterprise}/secret-scanning/alerts"
],
listAlertsForOrg: ["GET /orgs/{org}/secret-scanning/alerts"], listAlertsForOrg: ["GET /orgs/{org}/secret-scanning/alerts"],
listAlertsForRepo: ["GET /repos/{owner}/{repo}/secret-scanning/alerts"], listAlertsForRepo: ["GET /repos/{owner}/{repo}/secret-scanning/alerts"],
listLocationsForAlert: [ listLocationsForAlert: [

View File

@@ -2,34 +2,6 @@
This document covers all caching-related configuration options for setup-uv. 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 ## Enable caching
> [!NOTE] > [!NOTE]
@@ -162,10 +134,6 @@ 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 > 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`. > 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 ```yaml
- name: Define a custom uv cache path - name: Define a custom uv cache path
uses: astral-sh/setup-uv@v7 uses: astral-sh/setup-uv@v7

386
package-lock.json generated
View File

@@ -15,17 +15,17 @@
"@actions/glob": "^0.5.0", "@actions/glob": "^0.5.0",
"@actions/io": "^1.1.3", "@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.2", "@actions/tool-cache": "^2.0.2",
"@octokit/core": "^7.0.6", "@octokit/core": "^7.0.5",
"@octokit/plugin-paginate-rest": "^14.0.0", "@octokit/plugin-paginate-rest": "^13.2.1",
"@octokit/plugin-rest-endpoint-methods": "^17.0.0", "@octokit/plugin-rest-endpoint-methods": "^17.0.0",
"@renovatebot/pep440": "^4.2.1", "@renovatebot/pep440": "^4.2.1",
"smol-toml": "^1.4.2", "smol-toml": "^1.4.2",
"undici": "5.28.5" "undici": "5.28.5"
}, },
"devDependencies": { "devDependencies": {
"@biomejs/biome": "2.3.7", "@biomejs/biome": "2.3.0",
"@types/js-yaml": "^4.0.9", "@types/js-yaml": "^4.0.9",
"@types/node": "^24.10.1", "@types/node": "^24.9.1",
"@types/semver": "^7.7.1", "@types/semver": "^7.7.1",
"@vercel/ncc": "^0.38.4", "@vercel/ncc": "^0.38.4",
"jest": "^30.2.0", "jest": "^30.2.0",
@@ -412,7 +412,6 @@
"integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@ampproject/remapping": "^2.2.0", "@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.27.1", "@babel/code-frame": "^7.27.1",
@@ -890,9 +889,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/@biomejs/biome": { "node_modules/@biomejs/biome": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.0.tgz",
"integrity": "sha512-CTbAS/jNAiUc6rcq94BrTB8z83O9+BsgWj2sBCQg9rD6Wkh2gjfR87usjx0Ncx0zGXP1NKgT7JNglay5Zfs9jw==", "integrity": "sha512-shdUY5H3S3tJVUWoVWo5ua+GdPW5lRHf+b0IwZ4OC1o2zOKQECZ6l2KbU6t89FNhtd3Qx5eg5N7/UsQWGQbAFw==",
"dev": true, "dev": true,
"license": "MIT OR Apache-2.0", "license": "MIT OR Apache-2.0",
"bin": { "bin": {
@@ -906,20 +905,20 @@
"url": "https://opencollective.com/biome" "url": "https://opencollective.com/biome"
}, },
"optionalDependencies": { "optionalDependencies": {
"@biomejs/cli-darwin-arm64": "2.3.7", "@biomejs/cli-darwin-arm64": "2.3.0",
"@biomejs/cli-darwin-x64": "2.3.7", "@biomejs/cli-darwin-x64": "2.3.0",
"@biomejs/cli-linux-arm64": "2.3.7", "@biomejs/cli-linux-arm64": "2.3.0",
"@biomejs/cli-linux-arm64-musl": "2.3.7", "@biomejs/cli-linux-arm64-musl": "2.3.0",
"@biomejs/cli-linux-x64": "2.3.7", "@biomejs/cli-linux-x64": "2.3.0",
"@biomejs/cli-linux-x64-musl": "2.3.7", "@biomejs/cli-linux-x64-musl": "2.3.0",
"@biomejs/cli-win32-arm64": "2.3.7", "@biomejs/cli-win32-arm64": "2.3.0",
"@biomejs/cli-win32-x64": "2.3.7" "@biomejs/cli-win32-x64": "2.3.0"
} }
}, },
"node_modules/@biomejs/cli-darwin-arm64": { "node_modules/@biomejs/cli-darwin-arm64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.0.tgz",
"integrity": "sha512-LirkamEwzIUULhXcf2D5b+NatXKeqhOwilM+5eRkbrnr6daKz9rsBL0kNZ16Hcy4b8RFq22SG4tcLwM+yx/wFA==", "integrity": "sha512-3cJVT0Z5pbTkoBmbjmDZTDFYxIkRcrs9sYVJbIBHU8E6qQxgXAaBfSVjjCreG56rfDuQBr43GzwzmaHPcu4vlw==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -934,9 +933,9 @@
} }
}, },
"node_modules/@biomejs/cli-darwin-x64": { "node_modules/@biomejs/cli-darwin-x64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.0.tgz",
"integrity": "sha512-Q4TO633kvrMQkKIV7wmf8HXwF0dhdTD9S458LGE24TYgBjSRbuhvio4D5eOQzirEYg6eqxfs53ga/rbdd8nBKg==", "integrity": "sha512-6LIkhglh3UGjuDqJXsK42qCA0XkD1Ke4K/raFOii7QQPbM8Pia7Qj2Hji4XuF2/R78hRmEx7uKJH3t/Y9UahtQ==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -951,9 +950,9 @@
} }
}, },
"node_modules/@biomejs/cli-linux-arm64": { "node_modules/@biomejs/cli-linux-arm64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.0.tgz",
"integrity": "sha512-inHOTdlstUBzgjDcx0ge71U4SVTbwAljmkfi3MC5WzsYCRhancqfeL+sa4Ke6v2ND53WIwCFD5hGsYExoI3EZQ==", "integrity": "sha512-uhAsbXySX7xsXahegDg5h3CDgfMcRsJvWLFPG0pjkylgBb9lErbK2C0UINW52zhwg0cPISB09lxHPxCau4e2xA==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -968,9 +967,9 @@
} }
}, },
"node_modules/@biomejs/cli-linux-arm64-musl": { "node_modules/@biomejs/cli-linux-arm64-musl": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.0.tgz",
"integrity": "sha512-/afy8lto4CB8scWfMdt+NoCZtatBUF62Tk3ilWH2w8ENd5spLhM77zKlFZEvsKJv9AFNHknMl03zO67CiklL2Q==", "integrity": "sha512-nDksoFdwZ2YrE7NiYDhtMhL2UgFn8Kb7Y0bYvnTAakHnqEdb4lKindtBc1f+xg2Snz0JQhJUYO7r9CDBosRU5w==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -985,9 +984,9 @@
} }
}, },
"node_modules/@biomejs/cli-linux-x64": { "node_modules/@biomejs/cli-linux-x64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.0.tgz",
"integrity": "sha512-fJMc3ZEuo/NaMYo5rvoWjdSS5/uVSW+HPRQujucpZqm2ZCq71b8MKJ9U4th9yrv2L5+5NjPF0nqqILCl8HY/fg==", "integrity": "sha512-uxa8reA2s1VgoH8MhbGlCmMOt3JuSE1vJBifkh1ulaPiuk0SPx8cCdpnm9NWnTe2x/LfWInWx4sZ7muaXTPGGw==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -1002,9 +1001,9 @@
} }
}, },
"node_modules/@biomejs/cli-linux-x64-musl": { "node_modules/@biomejs/cli-linux-x64-musl": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.0.tgz",
"integrity": "sha512-CQUtgH1tIN6e5wiYSJqzSwJumHYolNtaj1dwZGCnZXm2PZU1jOJof9TsyiP3bXNDb+VOR7oo7ZvY01If0W3iFQ==", "integrity": "sha512-+i9UcJwl99uAhtRQDz9jUAh+Xkb097eekxs/D9j4deWDg5/yB/jPWzISe1nBHvlzTXsdUSj0VvB4Go2DSpKIMw==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -1019,9 +1018,9 @@
} }
}, },
"node_modules/@biomejs/cli-win32-arm64": { "node_modules/@biomejs/cli-win32-arm64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.0.tgz",
"integrity": "sha512-aJAE8eCNyRpcfx2JJAtsPtISnELJ0H4xVVSwnxm13bzI8RwbXMyVtxy2r5DV1xT3WiSP+7LxORcApWw0LM8HiA==", "integrity": "sha512-ynjmsJLIKrAjC3CCnKMMhzcnNy8dbQWjKfSU5YA0mIruTxBNMbkAJp+Pr2iV7/hFou+66ZSD/WV8hmLEmhUaXA==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -1036,9 +1035,9 @@
} }
}, },
"node_modules/@biomejs/cli-win32-x64": { "node_modules/@biomejs/cli-win32-x64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.0.tgz",
"integrity": "sha512-pulzUshqv9Ed//MiE8MOUeeEkbkSHVDVY5Cz5wVAnH1DUqliCQG3j6s1POaITTFqFfo7AVIx2sWdKpx/GS+Nqw==", "integrity": "sha512-zOCYmCRVkWXc9v8P7OLbLlGGMxQTKMvi+5IC4v7O8DkjLCOHRzRVK/Lno2pGZNo0lzKM60pcQOhH8HVkXMQdFg==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -1164,9 +1163,9 @@
} }
}, },
"node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": {
"version": "3.14.2", "version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@@ -1600,17 +1599,16 @@
} }
}, },
"node_modules/@octokit/core": { "node_modules/@octokit/core": {
"version": "7.0.6", "version": "7.0.5",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.6.tgz", "resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.5.tgz",
"integrity": "sha512-DhGl4xMVFGVIyMwswXeyzdL4uXD5OGILGX5N8Y+f6W7LhC1Ze2poSNrkF/fedpVDHEEZ+PHFW0vL14I+mm8K3Q==", "integrity": "sha512-t54CUOsFMappY1Jbzb7fetWeO0n6K0k/4+/ZpkS+3Joz8I4VcvY9OiEBFRYISqaI2fq5sCiPtAjRDOzVYG8m+Q==",
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@octokit/auth-token": "^6.0.0", "@octokit/auth-token": "^6.0.0",
"@octokit/graphql": "^9.0.3", "@octokit/graphql": "^9.0.2",
"@octokit/request": "^10.0.6", "@octokit/request": "^10.0.4",
"@octokit/request-error": "^7.0.2", "@octokit/request-error": "^7.0.1",
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"before-after-hook": "^4.0.0", "before-after-hook": "^4.0.0",
"universal-user-agent": "^7.0.0" "universal-user-agent": "^7.0.0"
}, },
@@ -1619,12 +1617,12 @@
} }
}, },
"node_modules/@octokit/endpoint": { "node_modules/@octokit/endpoint": {
"version": "11.0.2", "version": "11.0.1",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.2.tgz", "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.1.tgz",
"integrity": "sha512-4zCpzP1fWc7QlqunZ5bSEjxc6yLAlRTnDwKtgXfcI/FxxGoqedDG8V2+xJ60bV2kODqcGB+nATdtap/XYq2NZQ==", "integrity": "sha512-7P1dRAZxuWAOPI7kXfio88trNi/MegQ0IJD3vfgC3b+LZo1Qe6gRJc2v0mz2USWWJOKrB2h5spXCzGbw+fAdqA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.2" "universal-user-agent": "^7.0.2"
}, },
"engines": { "engines": {
@@ -1632,13 +1630,13 @@
} }
}, },
"node_modules/@octokit/graphql": { "node_modules/@octokit/graphql": {
"version": "9.0.3", "version": "9.0.2",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.3.tgz", "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.2.tgz",
"integrity": "sha512-grAEuupr/C1rALFnXTv6ZQhFuL1D8G5y8CN04RgrO4FIPMrtm+mcZzFG7dcBm+nq+1ppNixu+Jd78aeJOYxlGA==", "integrity": "sha512-iz6KzZ7u95Fzy9Nt2L8cG88lGRMr/qy1Q36ih/XVzMIlPDMYwaNLE/ENhqmIzgPrlNWiYJkwmveEetvxAgFBJw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@octokit/request": "^10.0.6", "@octokit/request": "^10.0.4",
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.0" "universal-user-agent": "^7.0.0"
}, },
"engines": { "engines": {
@@ -1646,18 +1644,18 @@
} }
}, },
"node_modules/@octokit/openapi-types": { "node_modules/@octokit/openapi-types": {
"version": "27.0.0", "version": "26.0.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-27.0.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-26.0.0.tgz",
"integrity": "sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA==", "integrity": "sha512-7AtcfKtpo77j7Ts73b4OWhOZHTKo/gGY8bB3bNBQz4H+GRSWqx2yvj8TXRsbdTE0eRmYmXOEY66jM7mJ7LzfsA==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/@octokit/plugin-paginate-rest": { "node_modules/@octokit/plugin-paginate-rest": {
"version": "14.0.0", "version": "13.2.1",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-14.0.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-13.2.1.tgz",
"integrity": "sha512-fNVRE7ufJiAA3XUrha2omTA39M6IXIc6GIZLvlbsm8QOQCYvpq/LkMNGyFlB1d8hTDzsAXa3OKtybdMAYsV/fw==", "integrity": "sha512-Tj4PkZyIL6eBMYcG/76QGsedF0+dWVeLhYprTmuFVVxzDW7PQh23tM0TP0z+1MvSkxB29YFZwnUX+cXfTiSdyw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@octokit/types": "^16.0.0" "@octokit/types": "^15.0.1"
}, },
"engines": { "engines": {
"node": ">= 20" "node": ">= 20"
@@ -1670,7 +1668,6 @@
"version": "17.0.0", "version": "17.0.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-17.0.0.tgz", "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==", "integrity": "sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw==",
"license": "MIT",
"dependencies": { "dependencies": {
"@octokit/types": "^16.0.0" "@octokit/types": "^16.0.0"
}, },
@@ -1681,15 +1678,28 @@
"@octokit/core": ">=6" "@octokit/core": ">=6"
} }
}, },
"node_modules/@octokit/plugin-rest-endpoint-methods/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=="
},
"node_modules/@octokit/plugin-rest-endpoint-methods/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==",
"dependencies": {
"@octokit/openapi-types": "^27.0.0"
}
},
"node_modules/@octokit/request": { "node_modules/@octokit/request": {
"version": "10.0.7", "version": "10.0.5",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.7.tgz", "resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.5.tgz",
"integrity": "sha512-v93h0i1yu4idj8qFPZwjehoJx4j3Ntn+JhXsdJrG9pYaX6j/XRz2RmasMUHtNgQD39nrv/VwTWSqK0RNXR8upA==", "integrity": "sha512-TXnouHIYLtgDhKo+N6mXATnDBkV05VwbR0TtMWpgTHIoQdRQfCSzmy/LGqR1AbRMbijq/EckC/E3/ZNcU92NaQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@octokit/endpoint": "^11.0.2", "@octokit/endpoint": "^11.0.1",
"@octokit/request-error": "^7.0.2", "@octokit/request-error": "^7.0.1",
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"fast-content-type-parse": "^3.0.0", "fast-content-type-parse": "^3.0.0",
"universal-user-agent": "^7.0.2" "universal-user-agent": "^7.0.2"
}, },
@@ -1698,24 +1708,24 @@
} }
}, },
"node_modules/@octokit/request-error": { "node_modules/@octokit/request-error": {
"version": "7.1.0", "version": "7.0.1",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.1.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.0.1.tgz",
"integrity": "sha512-KMQIfq5sOPpkQYajXHwnhjCC0slzCNScLHs9JafXc4RAJI+9f+jNDlBNaIMTvazOPLgb4BnlhGJOTbnN0wIjPw==", "integrity": "sha512-CZpFwV4+1uBrxu7Cw8E5NCXDWFNf18MSY23TdxCBgjw1tXXHvTrZVsXlW8hgFTOLw8RQR1BBrMvYRtuyaijHMA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@octokit/types": "^16.0.0" "@octokit/types": "^15.0.0"
}, },
"engines": { "engines": {
"node": ">= 20" "node": ">= 20"
} }
}, },
"node_modules/@octokit/types": { "node_modules/@octokit/types": {
"version": "16.0.0", "version": "15.0.1",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-16.0.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/types/-/types-15.0.1.tgz",
"integrity": "sha512-sKq+9r1Mm4efXW1FCk7hFSeJo4QKreL/tTbR0rz/qx/r1Oa2VV83LTA/H/MuCOX7uCIJmQVRKBcbmWoySjAnSg==", "integrity": "sha512-sdiirM93IYJ9ODDCBgmRPIboLbSkpLa5i+WLuXH8b8Atg+YMLAyLvDDhNWLV4OYd08tlvYfVm/dw88cqHWtw1Q==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@octokit/openapi-types": "^27.0.0" "@octokit/openapi-types": "^26.0.0"
} }
}, },
"node_modules/@opentelemetry/api": { "node_modules/@opentelemetry/api": {
@@ -1900,9 +1910,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/@types/node": { "node_modules/@types/node": {
"version": "24.10.1", "version": "24.9.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz",
"integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"undici-types": "~7.16.0" "undici-types": "~7.16.0"
@@ -2502,7 +2512,6 @@
} }
], ],
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"caniuse-lite": "^1.0.30001733", "caniuse-lite": "^1.0.30001733",
"electron-to-chromium": "^1.5.199", "electron-to-chromium": "^1.5.199",
@@ -3270,9 +3279,9 @@
} }
}, },
"node_modules/glob": { "node_modules/glob": {
"version": "10.5.0", "version": "10.4.5",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
"integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"dev": true, "dev": true,
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
@@ -3630,7 +3639,6 @@
"integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==", "integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@jest/core": "30.2.0", "@jest/core": "30.2.0",
"@jest/types": "30.2.0", "@jest/types": "30.2.0",
@@ -4239,11 +4247,10 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/js-yaml": { "node_modules/js-yaml": {
"version": "4.1.1", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true, "dev": true,
"license": "MIT",
"dependencies": { "dependencies": {
"argparse": "^2.0.1" "argparse": "^2.0.1"
}, },
@@ -5329,7 +5336,6 @@
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"dev": true, "dev": true,
"license": "Apache-2.0", "license": "Apache-2.0",
"peer": true,
"bin": { "bin": {
"tsc": "bin/tsc", "tsc": "bin/tsc",
"tsserver": "bin/tsserver" "tsserver": "bin/tsserver"
@@ -6072,7 +6078,6 @@
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz",
"integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==",
"dev": true, "dev": true,
"peer": true,
"requires": { "requires": {
"@ampproject/remapping": "^2.2.0", "@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.27.1", "@babel/code-frame": "^7.27.1",
@@ -6395,74 +6400,74 @@
"dev": true "dev": true
}, },
"@biomejs/biome": { "@biomejs/biome": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.0.tgz",
"integrity": "sha512-CTbAS/jNAiUc6rcq94BrTB8z83O9+BsgWj2sBCQg9rD6Wkh2gjfR87usjx0Ncx0zGXP1NKgT7JNglay5Zfs9jw==", "integrity": "sha512-shdUY5H3S3tJVUWoVWo5ua+GdPW5lRHf+b0IwZ4OC1o2zOKQECZ6l2KbU6t89FNhtd3Qx5eg5N7/UsQWGQbAFw==",
"dev": true, "dev": true,
"requires": { "requires": {
"@biomejs/cli-darwin-arm64": "2.3.7", "@biomejs/cli-darwin-arm64": "2.3.0",
"@biomejs/cli-darwin-x64": "2.3.7", "@biomejs/cli-darwin-x64": "2.3.0",
"@biomejs/cli-linux-arm64": "2.3.7", "@biomejs/cli-linux-arm64": "2.3.0",
"@biomejs/cli-linux-arm64-musl": "2.3.7", "@biomejs/cli-linux-arm64-musl": "2.3.0",
"@biomejs/cli-linux-x64": "2.3.7", "@biomejs/cli-linux-x64": "2.3.0",
"@biomejs/cli-linux-x64-musl": "2.3.7", "@biomejs/cli-linux-x64-musl": "2.3.0",
"@biomejs/cli-win32-arm64": "2.3.7", "@biomejs/cli-win32-arm64": "2.3.0",
"@biomejs/cli-win32-x64": "2.3.7" "@biomejs/cli-win32-x64": "2.3.0"
} }
}, },
"@biomejs/cli-darwin-arm64": { "@biomejs/cli-darwin-arm64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.0.tgz",
"integrity": "sha512-LirkamEwzIUULhXcf2D5b+NatXKeqhOwilM+5eRkbrnr6daKz9rsBL0kNZ16Hcy4b8RFq22SG4tcLwM+yx/wFA==", "integrity": "sha512-3cJVT0Z5pbTkoBmbjmDZTDFYxIkRcrs9sYVJbIBHU8E6qQxgXAaBfSVjjCreG56rfDuQBr43GzwzmaHPcu4vlw==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-darwin-x64": { "@biomejs/cli-darwin-x64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.0.tgz",
"integrity": "sha512-Q4TO633kvrMQkKIV7wmf8HXwF0dhdTD9S458LGE24TYgBjSRbuhvio4D5eOQzirEYg6eqxfs53ga/rbdd8nBKg==", "integrity": "sha512-6LIkhglh3UGjuDqJXsK42qCA0XkD1Ke4K/raFOii7QQPbM8Pia7Qj2Hji4XuF2/R78hRmEx7uKJH3t/Y9UahtQ==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-linux-arm64": { "@biomejs/cli-linux-arm64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.0.tgz",
"integrity": "sha512-inHOTdlstUBzgjDcx0ge71U4SVTbwAljmkfi3MC5WzsYCRhancqfeL+sa4Ke6v2ND53WIwCFD5hGsYExoI3EZQ==", "integrity": "sha512-uhAsbXySX7xsXahegDg5h3CDgfMcRsJvWLFPG0pjkylgBb9lErbK2C0UINW52zhwg0cPISB09lxHPxCau4e2xA==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-linux-arm64-musl": { "@biomejs/cli-linux-arm64-musl": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.0.tgz",
"integrity": "sha512-/afy8lto4CB8scWfMdt+NoCZtatBUF62Tk3ilWH2w8ENd5spLhM77zKlFZEvsKJv9AFNHknMl03zO67CiklL2Q==", "integrity": "sha512-nDksoFdwZ2YrE7NiYDhtMhL2UgFn8Kb7Y0bYvnTAakHnqEdb4lKindtBc1f+xg2Snz0JQhJUYO7r9CDBosRU5w==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-linux-x64": { "@biomejs/cli-linux-x64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.0.tgz",
"integrity": "sha512-fJMc3ZEuo/NaMYo5rvoWjdSS5/uVSW+HPRQujucpZqm2ZCq71b8MKJ9U4th9yrv2L5+5NjPF0nqqILCl8HY/fg==", "integrity": "sha512-uxa8reA2s1VgoH8MhbGlCmMOt3JuSE1vJBifkh1ulaPiuk0SPx8cCdpnm9NWnTe2x/LfWInWx4sZ7muaXTPGGw==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-linux-x64-musl": { "@biomejs/cli-linux-x64-musl": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.0.tgz",
"integrity": "sha512-CQUtgH1tIN6e5wiYSJqzSwJumHYolNtaj1dwZGCnZXm2PZU1jOJof9TsyiP3bXNDb+VOR7oo7ZvY01If0W3iFQ==", "integrity": "sha512-+i9UcJwl99uAhtRQDz9jUAh+Xkb097eekxs/D9j4deWDg5/yB/jPWzISe1nBHvlzTXsdUSj0VvB4Go2DSpKIMw==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-win32-arm64": { "@biomejs/cli-win32-arm64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.0.tgz",
"integrity": "sha512-aJAE8eCNyRpcfx2JJAtsPtISnELJ0H4xVVSwnxm13bzI8RwbXMyVtxy2r5DV1xT3WiSP+7LxORcApWw0LM8HiA==", "integrity": "sha512-ynjmsJLIKrAjC3CCnKMMhzcnNy8dbQWjKfSU5YA0mIruTxBNMbkAJp+Pr2iV7/hFou+66ZSD/WV8hmLEmhUaXA==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
"@biomejs/cli-win32-x64": { "@biomejs/cli-win32-x64": {
"version": "2.3.7", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.7.tgz", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.0.tgz",
"integrity": "sha512-pulzUshqv9Ed//MiE8MOUeeEkbkSHVDVY5Cz5wVAnH1DUqliCQG3j6s1POaITTFqFfo7AVIx2sWdKpx/GS+Nqw==", "integrity": "sha512-zOCYmCRVkWXc9v8P7OLbLlGGMxQTKMvi+5IC4v7O8DkjLCOHRzRVK/Lno2pGZNo0lzKM60pcQOhH8HVkXMQdFg==",
"dev": true, "dev": true,
"optional": true "optional": true
}, },
@@ -6566,9 +6571,9 @@
} }
}, },
"js-yaml": { "js-yaml": {
"version": "3.14.2", "version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"dev": true, "dev": true,
"requires": { "requires": {
"argparse": "^1.0.7", "argparse": "^1.0.7",
@@ -6893,50 +6898,49 @@
"integrity": "sha512-P4YJBPdPSpWTQ1NU4XYdvHvXJJDxM6YwpS0FZHRgP7YFkdVxsWcpWGy/NVqlAA7PcPCnMacXlRm1y2PFZRWL/w==" "integrity": "sha512-P4YJBPdPSpWTQ1NU4XYdvHvXJJDxM6YwpS0FZHRgP7YFkdVxsWcpWGy/NVqlAA7PcPCnMacXlRm1y2PFZRWL/w=="
}, },
"@octokit/core": { "@octokit/core": {
"version": "7.0.6", "version": "7.0.5",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.6.tgz", "resolved": "https://registry.npmjs.org/@octokit/core/-/core-7.0.5.tgz",
"integrity": "sha512-DhGl4xMVFGVIyMwswXeyzdL4uXD5OGILGX5N8Y+f6W7LhC1Ze2poSNrkF/fedpVDHEEZ+PHFW0vL14I+mm8K3Q==", "integrity": "sha512-t54CUOsFMappY1Jbzb7fetWeO0n6K0k/4+/ZpkS+3Joz8I4VcvY9OiEBFRYISqaI2fq5sCiPtAjRDOzVYG8m+Q==",
"peer": true,
"requires": { "requires": {
"@octokit/auth-token": "^6.0.0", "@octokit/auth-token": "^6.0.0",
"@octokit/graphql": "^9.0.3", "@octokit/graphql": "^9.0.2",
"@octokit/request": "^10.0.6", "@octokit/request": "^10.0.4",
"@octokit/request-error": "^7.0.2", "@octokit/request-error": "^7.0.1",
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"before-after-hook": "^4.0.0", "before-after-hook": "^4.0.0",
"universal-user-agent": "^7.0.0" "universal-user-agent": "^7.0.0"
} }
}, },
"@octokit/endpoint": { "@octokit/endpoint": {
"version": "11.0.2", "version": "11.0.1",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.2.tgz", "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.1.tgz",
"integrity": "sha512-4zCpzP1fWc7QlqunZ5bSEjxc6yLAlRTnDwKtgXfcI/FxxGoqedDG8V2+xJ60bV2kODqcGB+nATdtap/XYq2NZQ==", "integrity": "sha512-7P1dRAZxuWAOPI7kXfio88trNi/MegQ0IJD3vfgC3b+LZo1Qe6gRJc2v0mz2USWWJOKrB2h5spXCzGbw+fAdqA==",
"requires": { "requires": {
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.2" "universal-user-agent": "^7.0.2"
} }
}, },
"@octokit/graphql": { "@octokit/graphql": {
"version": "9.0.3", "version": "9.0.2",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.3.tgz", "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-9.0.2.tgz",
"integrity": "sha512-grAEuupr/C1rALFnXTv6ZQhFuL1D8G5y8CN04RgrO4FIPMrtm+mcZzFG7dcBm+nq+1ppNixu+Jd78aeJOYxlGA==", "integrity": "sha512-iz6KzZ7u95Fzy9Nt2L8cG88lGRMr/qy1Q36ih/XVzMIlPDMYwaNLE/ENhqmIzgPrlNWiYJkwmveEetvxAgFBJw==",
"requires": { "requires": {
"@octokit/request": "^10.0.6", "@octokit/request": "^10.0.4",
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"universal-user-agent": "^7.0.0" "universal-user-agent": "^7.0.0"
} }
}, },
"@octokit/openapi-types": { "@octokit/openapi-types": {
"version": "27.0.0", "version": "26.0.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-27.0.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-26.0.0.tgz",
"integrity": "sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA==" "integrity": "sha512-7AtcfKtpo77j7Ts73b4OWhOZHTKo/gGY8bB3bNBQz4H+GRSWqx2yvj8TXRsbdTE0eRmYmXOEY66jM7mJ7LzfsA=="
}, },
"@octokit/plugin-paginate-rest": { "@octokit/plugin-paginate-rest": {
"version": "14.0.0", "version": "13.2.1",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-14.0.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-13.2.1.tgz",
"integrity": "sha512-fNVRE7ufJiAA3XUrha2omTA39M6IXIc6GIZLvlbsm8QOQCYvpq/LkMNGyFlB1d8hTDzsAXa3OKtybdMAYsV/fw==", "integrity": "sha512-Tj4PkZyIL6eBMYcG/76QGsedF0+dWVeLhYprTmuFVVxzDW7PQh23tM0TP0z+1MvSkxB29YFZwnUX+cXfTiSdyw==",
"requires": { "requires": {
"@octokit/types": "^16.0.0" "@octokit/types": "^15.0.1"
} }
}, },
"@octokit/plugin-rest-endpoint-methods": { "@octokit/plugin-rest-endpoint-methods": {
@@ -6945,34 +6949,49 @@
"integrity": "sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw==", "integrity": "sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw==",
"requires": { "requires": {
"@octokit/types": "^16.0.0" "@octokit/types": "^16.0.0"
},
"dependencies": {
"@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=="
},
"@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==",
"requires": {
"@octokit/openapi-types": "^27.0.0"
}
}
} }
}, },
"@octokit/request": { "@octokit/request": {
"version": "10.0.7", "version": "10.0.5",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.7.tgz", "resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.5.tgz",
"integrity": "sha512-v93h0i1yu4idj8qFPZwjehoJx4j3Ntn+JhXsdJrG9pYaX6j/XRz2RmasMUHtNgQD39nrv/VwTWSqK0RNXR8upA==", "integrity": "sha512-TXnouHIYLtgDhKo+N6mXATnDBkV05VwbR0TtMWpgTHIoQdRQfCSzmy/LGqR1AbRMbijq/EckC/E3/ZNcU92NaQ==",
"requires": { "requires": {
"@octokit/endpoint": "^11.0.2", "@octokit/endpoint": "^11.0.1",
"@octokit/request-error": "^7.0.2", "@octokit/request-error": "^7.0.1",
"@octokit/types": "^16.0.0", "@octokit/types": "^15.0.0",
"fast-content-type-parse": "^3.0.0", "fast-content-type-parse": "^3.0.0",
"universal-user-agent": "^7.0.2" "universal-user-agent": "^7.0.2"
} }
}, },
"@octokit/request-error": { "@octokit/request-error": {
"version": "7.1.0", "version": "7.0.1",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.1.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-7.0.1.tgz",
"integrity": "sha512-KMQIfq5sOPpkQYajXHwnhjCC0slzCNScLHs9JafXc4RAJI+9f+jNDlBNaIMTvazOPLgb4BnlhGJOTbnN0wIjPw==", "integrity": "sha512-CZpFwV4+1uBrxu7Cw8E5NCXDWFNf18MSY23TdxCBgjw1tXXHvTrZVsXlW8hgFTOLw8RQR1BBrMvYRtuyaijHMA==",
"requires": { "requires": {
"@octokit/types": "^16.0.0" "@octokit/types": "^15.0.0"
} }
}, },
"@octokit/types": { "@octokit/types": {
"version": "16.0.0", "version": "15.0.1",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-16.0.0.tgz", "resolved": "https://registry.npmjs.org/@octokit/types/-/types-15.0.1.tgz",
"integrity": "sha512-sKq+9r1Mm4efXW1FCk7hFSeJo4QKreL/tTbR0rz/qx/r1Oa2VV83LTA/H/MuCOX7uCIJmQVRKBcbmWoySjAnSg==", "integrity": "sha512-sdiirM93IYJ9ODDCBgmRPIboLbSkpLa5i+WLuXH8b8Atg+YMLAyLvDDhNWLV4OYd08tlvYfVm/dw88cqHWtw1Q==",
"requires": { "requires": {
"@octokit/openapi-types": "^27.0.0" "@octokit/openapi-types": "^26.0.0"
} }
}, },
"@opentelemetry/api": { "@opentelemetry/api": {
@@ -7126,9 +7145,9 @@
"dev": true "dev": true
}, },
"@types/node": { "@types/node": {
"version": "24.10.1", "version": "24.9.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz",
"integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==",
"requires": { "requires": {
"undici-types": "~7.16.0" "undici-types": "~7.16.0"
} }
@@ -7503,7 +7522,6 @@
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.2.tgz", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.2.tgz",
"integrity": "sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==", "integrity": "sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==",
"dev": true, "dev": true,
"peer": true,
"requires": { "requires": {
"caniuse-lite": "^1.0.30001733", "caniuse-lite": "^1.0.30001733",
"electron-to-chromium": "^1.5.199", "electron-to-chromium": "^1.5.199",
@@ -8012,9 +8030,9 @@
"dev": true "dev": true
}, },
"glob": { "glob": {
"version": "10.5.0", "version": "10.4.5",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
"integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"dev": true, "dev": true,
"requires": { "requires": {
"foreground-child": "^3.1.0", "foreground-child": "^3.1.0",
@@ -8250,7 +8268,6 @@
"resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz", "resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz",
"integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==", "integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==",
"dev": true, "dev": true,
"peer": true,
"requires": { "requires": {
"@jest/core": "30.2.0", "@jest/core": "30.2.0",
"@jest/types": "30.2.0", "@jest/types": "30.2.0",
@@ -8692,9 +8709,9 @@
"dev": true "dev": true
}, },
"js-yaml": { "js-yaml": {
"version": "4.1.1", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true, "dev": true,
"requires": { "requires": {
"argparse": "^2.0.1" "argparse": "^2.0.1"
@@ -9398,8 +9415,7 @@
"version": "5.9.3", "version": "5.9.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"dev": true, "dev": true
"peer": true
}, },
"uglify-js": { "uglify-js": {
"version": "3.19.3", "version": "3.19.3",

View File

@@ -17,12 +17,7 @@
"type": "git", "type": "git",
"url": "git+https://github.com/astral-sh/setup-uv.git" "url": "git+https://github.com/astral-sh/setup-uv.git"
}, },
"keywords": [ "keywords": ["actions", "python", "setup", "uv"],
"actions",
"python",
"setup",
"uv"
],
"author": "@eifinger", "author": "@eifinger",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@@ -32,17 +27,17 @@
"@actions/glob": "^0.5.0", "@actions/glob": "^0.5.0",
"@actions/io": "^1.1.3", "@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.2", "@actions/tool-cache": "^2.0.2",
"@octokit/core": "^7.0.6", "@octokit/core": "^7.0.5",
"@octokit/plugin-paginate-rest": "^14.0.0", "@octokit/plugin-paginate-rest": "^13.2.1",
"@octokit/plugin-rest-endpoint-methods": "^17.0.0", "@octokit/plugin-rest-endpoint-methods": "^17.0.0",
"@renovatebot/pep440": "^4.2.1", "@renovatebot/pep440": "^4.2.1",
"smol-toml": "^1.4.2", "smol-toml": "^1.4.2",
"undici": "5.28.5" "undici": "5.28.5"
}, },
"devDependencies": { "devDependencies": {
"@biomejs/biome": "2.3.7", "@biomejs/biome": "2.3.0",
"@types/js-yaml": "^4.0.9", "@types/js-yaml": "^4.0.9",
"@types/node": "^24.10.1", "@types/node": "^24.9.1",
"@types/semver": "^7.7.1", "@types/semver": "^7.7.1",
"@vercel/ncc": "^0.38.4", "@vercel/ncc": "^0.38.4",
"jest": "^30.2.0", "jest": "^30.2.0",

View File

@@ -1,5 +1,6 @@
import * as cache from "@actions/cache"; import * as cache from "@actions/cache";
import * as core from "@actions/core"; import * as core from "@actions/core";
import * as exec from "@actions/exec";
import { hashFiles } from "../hash/hash-files"; import { hashFiles } from "../hash/hash-files";
import { import {
cacheDependencyGlob, cacheDependencyGlob,
@@ -8,75 +9,46 @@ import {
cacheSuffix, cacheSuffix,
pruneCache, pruneCache,
pythonDir, pythonDir,
pythonVersion as pythonVersionInput,
restoreCache as shouldRestoreCache, restoreCache as shouldRestoreCache,
workingDirectory,
} from "../utils/inputs"; } 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_KEY = "cache-key";
export const STATE_CACHE_MATCHED_KEY = "cache-matched-key"; export const STATE_CACHE_MATCHED_KEY = "cache-matched-key";
export const STATE_PYTHON_CACHE_MATCHED_KEY = "python-cache-matched-key"; const CACHE_VERSION = "1";
const CACHE_VERSION = "2"; export async function restoreCache(): Promise<void> {
const cacheKey = await computeKeys();
export async function restoreCache(pythonVersion?: string): Promise<void> {
const cacheKey = await computeKeys(pythonVersion);
core.saveState(STATE_CACHE_KEY, cacheKey); core.saveState(STATE_CACHE_KEY, cacheKey);
core.setOutput("cache-key", cacheKey);
if (!shouldRestoreCache) { if (!shouldRestoreCache) {
core.info("restore-cache is false. Skipping restore cache step."); core.info("restore-cache is false. Skipping restore cache step.");
core.setOutput("python-cache-hit", false);
return; return;
} }
if (cacheLocalPath === undefined) {
throw new Error(
"cache-local-path is not set. Cannot restore cache without a valid cache path.",
);
}
await restoreCacheFromKey(
cacheKey,
cacheLocalPath.path,
STATE_CACHE_MATCHED_KEY,
"cache-hit",
);
if (cachePython) {
await restoreCacheFromKey(
`${cacheKey}-python`,
pythonDir,
STATE_PYTHON_CACHE_MATCHED_KEY,
"python-cache-hit",
);
} else {
core.setOutput("python-cache-hit", false);
}
}
async function restoreCacheFromKey(
cacheKey: string,
cachePath: string,
stateKey: string,
outputKey: string,
): Promise<void> {
core.info(
`Trying to restore cache from GitHub Actions cache with key: ${cacheKey}`,
);
let matchedKey: string | undefined; let matchedKey: string | undefined;
core.info(
`Trying to restore uv cache from GitHub Actions cache with key: ${cacheKey}`,
);
const cachePaths = [cacheLocalPath];
if (cachePython) {
cachePaths.push(pythonDir);
}
try { try {
matchedKey = await cache.restoreCache([cachePath], cacheKey); matchedKey = await cache.restoreCache(cachePaths, cacheKey);
} catch (err) { } catch (err) {
const message = (err as Error).message; const message = (err as Error).message;
core.warning(message); core.warning(message);
core.setOutput(outputKey, false); core.setOutput("cache-hit", false);
return; return;
} }
handleMatchResult(matchedKey, cacheKey, stateKey, outputKey); handleMatchResult(matchedKey, cacheKey);
} }
async function computeKeys(pythonVersion?: string): Promise<string> { async function computeKeys(): Promise<string> {
let cacheDependencyPathHash = "-"; let cacheDependencyPathHash = "-";
if (cacheDependencyGlob !== "") { if (cacheDependencyGlob !== "") {
core.info( core.info(
@@ -93,27 +65,57 @@ async function computeKeys(pythonVersion?: string): Promise<string> {
cacheDependencyPathHash = "-no-dependency-glob"; cacheDependencyPathHash = "-no-dependency-glob";
} }
const suffix = cacheSuffix ? `-${cacheSuffix}` : ""; const suffix = cacheSuffix ? `-${cacheSuffix}` : "";
const version = pythonVersion ?? "unknown"; const pythonVersion = await getPythonVersion();
const platform = await getPlatform(); const platform = await getPlatform();
const osNameVersion = getOSNameVersion();
const pruned = pruneCache ? "-pruned" : ""; const pruned = pruneCache ? "-pruned" : "";
const python = cachePython ? "-py" : ""; const python = cachePython ? "-py" : "";
return `setup-uv-${CACHE_VERSION}-${getArch()}-${platform}-${osNameVersion}-${version}${pruned}${python}${cacheDependencyPathHash}${suffix}`; return `setup-uv-${CACHE_VERSION}-${getArch()}-${platform}-${pythonVersion}${pruned}${python}${cacheDependencyPathHash}${suffix}`;
}
async function getPythonVersion(): Promise<string> {
if (pythonVersionInput !== "") {
return pythonVersionInput;
}
let output = "";
const options: exec.ExecOptions = {
listeners: {
stdout: (data: Buffer) => {
output += data.toString();
},
},
silent: !core.isDebug(),
};
try {
const execArgs = ["python", "find", "--directory", workingDirectory];
await exec.exec("uv", execArgs, options);
const pythonPath = output.trim();
output = "";
await exec.exec(pythonPath, ["--version"], options);
// output is like "Python 3.8.10"
return output.split(" ")[1].trim();
} catch (error) {
const err = error as Error;
core.debug(`Failed to get python version from uv. Error: ${err.message}`);
return "unknown";
}
} }
function handleMatchResult( function handleMatchResult(
matchedKey: string | undefined, matchedKey: string | undefined,
primaryKey: string, primaryKey: string,
stateKey: string,
outputKey: string,
): void { ): void {
if (!matchedKey) { if (!matchedKey) {
core.info(`No GitHub Actions cache found for key: ${primaryKey}`); core.info(`No GitHub Actions cache found for key: ${primaryKey}`);
core.setOutput(outputKey, false); core.setOutput("cache-hit", false);
return; return;
} }
core.saveState(stateKey, matchedKey); core.saveState(STATE_CACHE_MATCHED_KEY, matchedKey);
core.info(`cache restored from GitHub Actions cache with key: ${matchedKey}`); core.info(
core.setOutput(outputKey, true); `uv cache restored from GitHub Actions cache with key: ${matchedKey}`,
);
core.setOutput("cache-hit", true);
} }

View File

@@ -1,545 +1,5 @@
// AUTOGENERATED_DO_NOT_EDIT // AUTOGENERATED_DO_NOT_EDIT
export const KNOWN_CHECKSUMS: { [key: string]: string } = { export const KNOWN_CHECKSUMS: { [key: string]: string } = {
"aarch64-apple-darwin-0.9.24":
"89661d9a16682197086df54bb43d0b03e58e23d4d9360fc8c6c0166f2828fd71",
"aarch64-pc-windows-msvc-0.9.24":
"40ceb66af2667fc9b4d30a65ad8b8795d4effc39a44019b4218ad03f8f1d5a14",
"aarch64-unknown-linux-gnu-0.9.24":
"9b291a1a4f2fefc430e4fc49c00cb93eb448d41c5c79edf45211ceffedde3334",
"aarch64-unknown-linux-musl-0.9.24":
"b16359904ede857b90b68168f10b0f6bf500858df9bed4e7156dbc59fd3f0747",
"arm-unknown-linux-musleabihf-0.9.24":
"b343d7f49ea5c0982c9696cbc5c7f96d7053cf8f9c7383a58d6c0c44fbeb6422",
"armv7-unknown-linux-gnueabihf-0.9.24":
"8d05b55fe2108ecab3995c2b656679a72c543fd9dc72eeb3a525106a709cfdcb",
"armv7-unknown-linux-musleabihf-0.9.24":
"788d2bee1dfdb57a462f2a5c4e3d6e8c68ee9f9f1a938bdcdc00fa9e5edeaeec",
"i686-pc-windows-msvc-0.9.24":
"b49265a713cb3f874bcb373572095993d3098ab77cd2665483f53b24b788e5e9",
"i686-unknown-linux-gnu-0.9.24":
"940b8985c4d464c7cc69e40b17bf09d840b980028e1d82a3fb8dd007a737f29e",
"i686-unknown-linux-musl-0.9.24":
"4ffe6f377b7d68904d8d882af8adc85f2fa1bbccd26151785ff961adb67f2a99",
"powerpc64-unknown-linux-gnu-0.9.24":
"1fbaff65544a2c36bbd8992e2abe6c50179401745dc00b5e12bded89794056a4",
"powerpc64le-unknown-linux-gnu-0.9.24":
"57ea84430ccf49f97184d9ee21102b250214fc6e6af4a87eefaaf8bb7c9c2b9a",
"riscv64gc-unknown-linux-gnu-0.9.24":
"81a884380f0ee954afd968140aaa55df19f2bee30d74f3c0c94a11d2265bb388",
"s390x-unknown-linux-gnu-0.9.24":
"3da41f22f78f27a7764e303b07c68f5716f748128327c7d3d72f11c6b81b6c78",
"x86_64-apple-darwin-0.9.24":
"fda9b3203cce6ec3a37177440c33c4c1963c4957fff17e2820c60ab6ccd625da",
"x86_64-pc-windows-msvc-0.9.24":
"cf9d6fa12017199d19c6f9a8f7f55811c8c04d70681b8cb6d89ffb179f08cf1f",
"x86_64-unknown-linux-gnu-0.9.24":
"fb13ad85106da6b21dd16613afca910994446fe94a78ee0b5bed9c75cd066078",
"x86_64-unknown-linux-musl-0.9.24":
"cf307aa4271038daa334ca64e75aa40c0c085ce6fa0c0e6f21e41a2b62c7904d",
"aarch64-apple-darwin-0.9.23":
"3aae069424778d13ef45ebd2ec906c66ab10e459e7b33341a64cd371a3d70998",
"aarch64-pc-windows-msvc-0.9.23":
"dfdb23dbfa6c89847e4163f0b3b683de889df7d9bdf95a3909dfbc6430106304",
"aarch64-unknown-linux-gnu-0.9.23":
"d60b0b2aee79f9d83897615fed427bee1ea4ebcb2f15b48dd522319ecdb3de91",
"aarch64-unknown-linux-musl-0.9.23":
"ee987d943427ee24c1d3af79c7ad676950c9ad634e60a4d07e328d8a54fff92f",
"arm-unknown-linux-musleabihf-0.9.23":
"1950c235e76e007f75d30903dc5da6747a344c72a1608123feff720c134ecbfe",
"armv7-unknown-linux-gnueabihf-0.9.23":
"a7104ab491a0c2f0c58760bcb9a13cfb64c899e02a7b747c4d11da114b3f9114",
"armv7-unknown-linux-musleabihf-0.9.23":
"c5d494337a5ca86ad83d6a887634fda3f8392560799e4236a44d76f8e27621b6",
"i686-pc-windows-msvc-0.9.23":
"94292f02b7484616bb3cd7361411540a5a52e952d149eb6faeec610b6657015d",
"i686-unknown-linux-gnu-0.9.23":
"627627174d31e6fa270e91c7b2988558e4b18b86cc31de9222b6cf3b7354e9b7",
"i686-unknown-linux-musl-0.9.23":
"5f65a0eb1f9067a4f5149275faba3bcb3af94dd68fbce7cd9e93ba86b5bc59c3",
"powerpc64-unknown-linux-gnu-0.9.23":
"69e2925397d0e781e8525ad0fd22896a114ffa02f5055e7a360e4dda3796c24e",
"powerpc64le-unknown-linux-gnu-0.9.23":
"fb3ad2cb1a19f1bb4785580dc71837161147beab134fdc3eb4e8ccda577db1e0",
"riscv64gc-unknown-linux-gnu-0.9.23":
"0d1d9300e2df3155b0d0b071c292fb27f8213d91854decdfb27c293397dc8e0e",
"s390x-unknown-linux-gnu-0.9.23":
"7d0b411a365b0cd8fad2b336c259743e7381676654adfbdb4f887b4136820cb8",
"x86_64-apple-darwin-0.9.23":
"b5bbfbd5d8c7effa24b505365ae306116fdac58880bc9b024ec4c89435d57728",
"x86_64-pc-windows-msvc-0.9.23":
"bb6d2987906b27d3031640c4a909b6f7c134cd29674c41ef545c6e7d57dd6700",
"x86_64-unknown-linux-gnu-0.9.23":
"b7bd7d9b9c9c34327f1118f99fe8c298252787ea35f7b345b8bf639377f63217",
"x86_64-unknown-linux-musl-0.9.23":
"a824a0f5f7aa67b668f54756284d458a25dea332da6e558d303890d134cc06d1",
"aarch64-apple-darwin-0.9.22":
"4bfc6dacc9bcc9e433a9214a658495ca082b94fd607949b6745a955f34ccbc3c",
"aarch64-pc-windows-msvc-0.9.22":
"19b848523d5802279702f5df4ade6d45f17d111cf9e368883d4f6560f0426d49",
"aarch64-unknown-linux-gnu-0.9.22":
"2f8716c407d5da21b8a3e8609ed358147216aaab28b96b1d6d7f48e9bcc6254e",
"aarch64-unknown-linux-musl-0.9.22":
"a400eaede62557af86bed6c5252a101aa1efd596698bb10c9400334fcc2847ec",
"arm-unknown-linux-musleabihf-0.9.22":
"23e0770034e31aaf47b0c84156b2e5ec7638ca0edc76a4cccb8bdc94bfd16159",
"armv7-unknown-linux-gnueabihf-0.9.22":
"db3ac49b78b3ac57c0e6e9a0ea61237a235447338594ad8e398e8074448bd071",
"armv7-unknown-linux-musleabihf-0.9.22":
"c153ac78c571dbbd9bab54c954b93b496645efbd4d3a0689b03e04d0de17c30f",
"i686-pc-windows-msvc-0.9.22":
"f08889e9567feb1e802c9e588de60efef5a436630e4c211fbf4a2116928f69ab",
"i686-unknown-linux-gnu-0.9.22":
"841e534a28285dcadfea2ca0f848a9669df287990f93d64c6bf87a9794c98ec9",
"i686-unknown-linux-musl-0.9.22":
"b2c5322e188980afd4bc1afb19f4e8dee7000ad0e17ca754e97dab21c1d4d1f5",
"powerpc64-unknown-linux-gnu-0.9.22":
"309c4a48d7f65cdf47aa7e1c5e02502556e04f486d46e9591f5b4196c92730a3",
"powerpc64le-unknown-linux-gnu-0.9.22":
"1e829630f8317cf3e9818c3ad1f9927fdc9d087cd38abb05f9587c19872a8560",
"riscv64gc-unknown-linux-gnu-0.9.22":
"d3036e36b330ad6caab68fa31c12c21f80c9b8cc7822416343a5100f09d6b640",
"s390x-unknown-linux-gnu-0.9.22":
"aff367a5c6ffb87b9cebbda4372464ca6aff69a53c81a94f1d78541be9677b2d",
"x86_64-apple-darwin-0.9.22":
"c0057ad78b475f343739b1bbe223361c1054524c9edf310ee1dc85a050207f86",
"x86_64-pc-windows-msvc-0.9.22":
"93a0a244f26eec208d8ea8077e3de743d9687ad76c190342722f1f57fa629457",
"x86_64-unknown-linux-gnu-0.9.22":
"e170aed70ac0225feee612e855d3a57ae73c61ffb22c7e52c3fd33b87c286508",
"x86_64-unknown-linux-musl-0.9.22":
"84d087a8e77a223d80578919894f3103f46ca7c263250c3e0478ce7c38850349",
"aarch64-apple-darwin-0.9.21":
"473977236ef8ac5937c80de08a3599cb6ed6021d0e015e10f88076767877a153",
"aarch64-pc-windows-msvc-0.9.21":
"54f66a44108b1b68583c9da0a515195d011189874ec9547710c032801726e042",
"aarch64-unknown-linux-gnu-0.9.21":
"416984484783a357170c43f98e7d2d203f1fb595d6b3b95131513c53e50986ef",
"aarch64-unknown-linux-musl-0.9.21":
"03a49fb609888032dbc3be9fd114b50fc9bce8b73b3df319746ae08d1fbdea83",
"arm-unknown-linux-musleabihf-0.9.21":
"5d84273d9e79aa1262e11d50b4b4e61c7b33bbbf47c7f7e271cb07f89ac479c1",
"armv7-unknown-linux-gnueabihf-0.9.21":
"74b2a73b3569cbba8c73470eb45dfba393401c834dd432fc8bd2039b40b1dde6",
"armv7-unknown-linux-musleabihf-0.9.21":
"fa3806603be42aad687bb97ff5939a32f5e1c21d565155299410ad445669ce11",
"i686-pc-windows-msvc-0.9.21":
"941e2b656cf9c94eac4b751933b24e5820247d938958c3d62d9d95d0e2409956",
"i686-unknown-linux-gnu-0.9.21":
"73fbd705cb4b5c071318afee896ba9984e3a14fcf7842435a93c43dc9ca0a12c",
"i686-unknown-linux-musl-0.9.21":
"c38f823354fff387758f6288ad184b104f47520b3cee7d53e92f3666b3466f55",
"powerpc64-unknown-linux-gnu-0.9.21":
"2cf68ea2ff75c4a627101bfe22064d6646a03cd7ddb939c933f3d8127b8d5982",
"powerpc64le-unknown-linux-gnu-0.9.21":
"3ede0329f67f5db37914b5dfd6014c414d27e1bf0153dab8d5cc2e066da034dc",
"riscv64gc-unknown-linux-gnu-0.9.21":
"3b7b070afd9c7be5a6364f081081cf9fec2160b53eba46cad27304b8b158e4ab",
"s390x-unknown-linux-gnu-0.9.21":
"34bd75d67a5819c9f796a78b1ec9ebd48021d87d2391b4cf282249c4d026f145",
"x86_64-apple-darwin-0.9.21":
"26390da48bd55e21ab62451a80ad240ef6df10d4c48ec199cbb34c18b4288983",
"x86_64-pc-windows-msvc-0.9.21":
"d27952e73183ef8f6ee8c2a50cf8b3f2e08e01b6a9279a00a85cb261ea8d8337",
"x86_64-unknown-linux-gnu-0.9.21":
"0a1ab27383c28ef1c041f85cbbc609d8e3752dfb4b238d2ad97b208a52232baf",
"x86_64-unknown-linux-musl-0.9.21":
"7abc29b3a06a99fb23564400fe884f5798a1786dc2ca05b6e0f70c53de748ab2",
"aarch64-apple-darwin-0.9.20":
"c3f4b03a5d526119d41fa8b8f255aa8053c49d787778df654895e3d174b1519a",
"aarch64-pc-windows-msvc-0.9.20":
"ddba8b1ca82df9b49745c93855c670490d776027269cf7de404d951919c96ea7",
"aarch64-unknown-linux-gnu-0.9.20":
"0451ecac1d0ed43d5870927df84c3d1dc93d72cf1933310acfadce5ad457c587",
"aarch64-unknown-linux-musl-0.9.20":
"d1b645d63c70da3f6f2368ea4dbc9dd5534b54be74ae32dee8941531c6874b6d",
"arm-unknown-linux-musleabihf-0.9.20":
"ddbaab7f1413f181bafc96c8b18af8e69372373798d2294d03d3935fd829c939",
"armv7-unknown-linux-gnueabihf-0.9.20":
"e1b2f5e4298878e6ac1137f744ba38b59ce68abd6a43878e66a1cac4dd7efd0e",
"armv7-unknown-linux-musleabihf-0.9.20":
"afc4a709ad83773bafa4ba83afa44bb101e44b817c5ad620cb9c54b62fe52e4e",
"i686-pc-windows-msvc-0.9.20":
"d7e50a3bc433bbb08e7890206bec0623627e6a911a6c10322c98721bde1a9cb0",
"i686-unknown-linux-gnu-0.9.20":
"aec778b1c44607416102139b6bb6a7f53a313fce8ad1033049b10ac90ed3c597",
"i686-unknown-linux-musl-0.9.20":
"92dd40f272b65f8301f0f9559fe55ac99b340caba93fe1952172e3485494cbba",
"powerpc64-unknown-linux-gnu-0.9.20":
"c2abda00a2b53cde9b6c8380ef9773749d341039771d7447df5647d935eb54c6",
"powerpc64le-unknown-linux-gnu-0.9.20":
"f40409d551a30081ada78cca7a1a260c02a7d16c912d73988d8e212324dea758",
"riscv64gc-unknown-linux-gnu-0.9.20":
"6dda223f877ff3eb3eba2fcf14abfd36280e5db1c0480addf5da5273ece087d6",
"s390x-unknown-linux-gnu-0.9.20":
"8ca14c1a9fe47ad2293a321f061c7278b32d7bc200d2692662790ab6ccd395c1",
"x86_64-apple-darwin-0.9.20":
"0059dc2986e7032c12b7039e1a66e570ab5c3a41598263c76e5a9c4e7da9f971",
"x86_64-pc-windows-msvc-0.9.20":
"be51ed9fcba5be4ac9c41a46aaf8af5cef86624fe27e2c645771b174069e049d",
"x86_64-unknown-linux-gnu-0.9.20":
"01ac5d872ab4cf6b11965c9df317f699882405f0319872fe3dbbb3adb045600b",
"x86_64-unknown-linux-musl-0.9.20":
"0de686dcc02e0b045980779e7330f2deb98e6cd9ece40d3341bd45c6733e682d",
"aarch64-apple-darwin-0.9.18":
"dc3bee4abbb3bac267a3985a23ea7617d19d41ff381dbaf560ba415ad65af68f",
"aarch64-pc-windows-msvc-0.9.18":
"fadb43ba13091f44e1786fc3967e65c7786d86192aa205d718307c649927cfc2",
"aarch64-unknown-linux-gnu-0.9.18":
"f8e23ec786b18660ade6b033b6191b7e9c283c872eeb8c4531d56a873decf160",
"aarch64-unknown-linux-musl-0.9.18":
"b710ceb9889276cbd7ce04e2ca06b5bd3e288da465bd38f7dd17955c4e703a65",
"arm-unknown-linux-musleabihf-0.9.18":
"2219049d28baaa0764e0315996e26c70ef548a0ba59add7f42358575ab04b410",
"armv7-unknown-linux-gnueabihf-0.9.18":
"dddf55144884f5d83b9f5795f0b16d023abedf615505962a6ebcaaef2cb62815",
"armv7-unknown-linux-musleabihf-0.9.18":
"265d49a8976a5956d3cab524e85e86df5397ab0daf6bd77f1494b0b9e1c00b9a",
"i686-pc-windows-msvc-0.9.18":
"52bd6fedef821a2412de73c31fdcf41c31b0a5c5886a416c3ba1a3d282ff02b8",
"i686-unknown-linux-gnu-0.9.18":
"6cc0437382adddd0439c874c41625539523725d551da9f9aecf7c0a3e86a1c77",
"i686-unknown-linux-musl-0.9.18":
"a727b054337ce453e98b80d6eccaa913cf542c155f3252503aff3e613735c640",
"powerpc64-unknown-linux-gnu-0.9.18":
"522154f752a90513cedcc621071893e46fb05d025ce8f0d4523514e8a87417d7",
"powerpc64le-unknown-linux-gnu-0.9.18":
"0660534d548800b17d2fc1dcdaf0f284e48ca3e34fff2b8b5c1797610e18fc0e",
"riscv64gc-unknown-linux-gnu-0.9.18":
"db6f5cbbc56a7212e61445a8cd1fcf880dc2906b4cac8f945320f0ab8eb9bf75",
"s390x-unknown-linux-gnu-0.9.18":
"bfa789548a345189b70d9069d9d7ef8f9c2236f0d10e2ae47a13549ffded5b84",
"x86_64-apple-darwin-0.9.18":
"f86836c637333c65bbc7902acc9c49888eef9fbd15dccbc1946b10e30b041073",
"x86_64-pc-windows-msvc-0.9.18":
"28cbe5d30907a774bfe27a517a39b494ec6f7d3816bda8bbf6f9645490449182",
"x86_64-unknown-linux-gnu-0.9.18":
"c2def3db178ade63933fa15ffc96e882c196ce53e06173dcee05b36c5f6f68f5",
"x86_64-unknown-linux-musl-0.9.18":
"a55ae2d0d53c8f6541bb4d6afc95857ff33a97de8f1d23e9d09acdcb865c4a00",
"aarch64-apple-darwin-0.9.17":
"a1e1464aa1d04d5e5fa700aa2f2e10397d1114e835dbd56be25ba65c9a31bd99",
"aarch64-pc-windows-msvc-0.9.17":
"28423a27ad1d82347c00411a6792567119b3c1cfe775d3312c0e08a6b489be5b",
"aarch64-unknown-linux-gnu-0.9.17":
"e9eba97b7169e47fd3c926e409f0b714820f0befc23b3ae062780586a793e4cc",
"aarch64-unknown-linux-musl-0.9.17":
"f6f48a301f8e855765af42ef50257af0cebc9c5439dfdcbc188142941aea45ca",
"arm-unknown-linux-musleabihf-0.9.17":
"4d80f3509b6351882a64c1dd08f72a80e2b27f055a996295ef1f935bc3efcdde",
"armv7-unknown-linux-gnueabihf-0.9.17":
"30a6c041429e2176062573f33c5c44307cb756264224bcb005723a6e18cff34c",
"armv7-unknown-linux-musleabihf-0.9.17":
"6b034dc63735c2a4541430cbece688e28bce51a09e2ad1ea2c1646a6b24cf1c3",
"i686-pc-windows-msvc-0.9.17":
"6e93737710e31bf73fcc3b4b6da616bd341e9c6baf1162ddc1e7f65884063f50",
"i686-unknown-linux-gnu-0.9.17":
"d2426a6d10bedd83524599bb0fbe0ba22e681ed45e892b4fd29086b424daf02a",
"i686-unknown-linux-musl-0.9.17":
"988c7702a2e88092b30f16fb7f8c18284a8062044cf57e6abd1dfeae82aa6377",
"powerpc64-unknown-linux-gnu-0.9.17":
"5ad301d9fa15e0791ef96abd83f0ed97e7ac1191b4b7578caaad3151633fb17c",
"powerpc64le-unknown-linux-gnu-0.9.17":
"4958185c5febf22f1c4c84944334cb0d9262c2c2c93faf30c1e0abd26f9d94fa",
"riscv64gc-unknown-linux-gnu-0.9.17":
"feed7cc7b5fc8a99e683ee1761cf99e3da12b60a2a413b7b87a0447726a66369",
"s390x-unknown-linux-gnu-0.9.17":
"a297518913a0f0e4af1bce434440ca9d415728aaf828c7def0e913aa5c46da8f",
"x86_64-apple-darwin-0.9.17":
"249e7fb18d45c06ba283c48f0a8e586ecc5fbb9e8dad0923c4169a7c4db815b2",
"x86_64-pc-windows-msvc-0.9.17":
"ebc76197bf3e1a58f9dac6f70f49b0ebd3e6907ab35289ce228bce5ba8a3f201",
"x86_64-unknown-linux-gnu-0.9.17":
"0114d54f9aafd07516cf1cadfe72afa970f5fd293fbe82dd924b8a7b42c984d8",
"x86_64-unknown-linux-musl-0.9.17":
"ab616c1851e7b1ed377a9ff3997dcee184bea7eda0b20bc8607abba6c469cbad",
"aarch64-apple-darwin-0.9.16":
"db6d7fb299c35dc9bbbeb89cfa9aa55a9584f637d370c0a4c62a50df9c9294a7",
"aarch64-pc-windows-msvc-0.9.16":
"591c73f47dfec72f9d242eebcb36197f27ad652a59d70e70db5c52018684d78e",
"aarch64-unknown-linux-gnu-0.9.16":
"a8e9e3f7e621e212d9663ea28827bd8fb9ec11c453ae88d520b48e969e9ff5db",
"aarch64-unknown-linux-musl-0.9.16":
"cb6730e083f17b38aea88c2bdfc3d4c834a832444087d30d7914bd460ae15b79",
"arm-unknown-linux-musleabihf-0.9.16":
"4c2447ff0aad62934605252eaf6372efb82fb38330b88785e162929491870186",
"armv7-unknown-linux-gnueabihf-0.9.16":
"5a09476442563f6ee32d864d89a87490bf5a850c987898c648ef57608c5899cb",
"armv7-unknown-linux-musleabihf-0.9.16":
"180846487d6baa1ca9d4cd90a0aaf38f7466d3c211c219bd4d7ffbbbc5077ef2",
"i686-pc-windows-msvc-0.9.16":
"f6921ace765a2905c0cda8bf8185ecd60d83060da4b2904a28b5a8c23ffc7aa2",
"i686-unknown-linux-gnu-0.9.16":
"1cdb9a2086a5d1ea37e219c45407730ef3e7711737b71fae49d1396918f4cdba",
"i686-unknown-linux-musl-0.9.16":
"f8b0159c52bc43cbe598c52dd43ca911c22c6b9da992f3604434b23d21ac5ff6",
"powerpc64-unknown-linux-gnu-0.9.16":
"40c39d344c92c6a877fdfe89db8a5f84990dbb7097e529122bd7d90d1975eb90",
"powerpc64le-unknown-linux-gnu-0.9.16":
"982167ebae22efbda212ccbacc582b00486150695d83fca94d39c3422a0f8865",
"riscv64gc-unknown-linux-gnu-0.9.16":
"b94ef3afa9bc94288e069162143ec20ed1d103d7631a17ca14c6ac28e8825baa",
"s390x-unknown-linux-gnu-0.9.16":
"cd32014282b2d2de53eb0176004dffddec77f0afbe76713f57c245e08cdf2b21",
"x86_64-apple-darwin-0.9.16":
"e1ba1992e163f8b9d54d1cd1501002f019f4b729dec2a197e79a56d354ec2773",
"x86_64-pc-windows-msvc-0.9.16":
"e498a1d5983da7727af96b63ddfcd52ee883173552664ad0b629b3d4c7a46e91",
"x86_64-unknown-linux-gnu-0.9.16":
"3adbf5322471b53a61483b4a5d091e70c32231ebc63fd327fae7b844cbcd3e01",
"x86_64-unknown-linux-musl-0.9.16":
"35a26bea6aad2c8eb468cdf69baccc7ab79b3d0971a76a6741a687535a2acfad",
"aarch64-apple-darwin-0.9.15":
"388029510fdf64771745e9fb85cd6ec042580678a9e61c90fe355301f1c42f1e",
"aarch64-pc-windows-msvc-0.9.15":
"19422893deba37feb4b4191b43be89525ac48bd378f9fdbf2d5bca44319f8c19",
"aarch64-unknown-linux-gnu-0.9.15":
"d89430e201f629b203975c605cd6bfe85afc2bc0781d95838e2b5177a03b1545",
"aarch64-unknown-linux-musl-0.9.15":
"41f6ef4f86e9f8015bc31e9ca4fd44a6e2c80fc0b75d6eb74063f64ca15177c7",
"arm-unknown-linux-musleabihf-0.9.15":
"c85740e8c22187f82e3dad042d412991076d5701c7e1a4eba9ae1166f08f769b",
"armv7-unknown-linux-gnueabihf-0.9.15":
"d30d648e4c1c76110ee78953b43ecb8c356cda438a071a60c97308f9a7d2cf27",
"armv7-unknown-linux-musleabihf-0.9.15":
"a1fa385da85131e071f9a6cbde89456945ea821609624e80f9b4d8877b8fbcdb",
"i686-pc-windows-msvc-0.9.15":
"7dabeb4719dedc1f690e4d5e9641d92c6b17e04245015d64511d207dbb1792d8",
"i686-unknown-linux-gnu-0.9.15":
"806e2e49c539a030336c83cc8dd9fe6250a70b1f8fb15ecb165837ff330f4ee8",
"i686-unknown-linux-musl-0.9.15":
"7ab63f3549f3fc61bab32f9526a6a3ba750dedb7f609a345a4205e41fcd91e92",
"powerpc64-unknown-linux-gnu-0.9.15":
"b5b72a9053e4ad1c5baa68c3c8ae728567d8d9847f8cc852e0c6fabea9307647",
"powerpc64le-unknown-linux-gnu-0.9.15":
"880b977489a0a580df04cf9020968bf05553bccd8dd48375a0c7cb6dd8048f58",
"riscv64gc-unknown-linux-gnu-0.9.15":
"cb993da480f90b226bca66a1f54c4a0419a245d07d3d0e30a3f8c9a5b1f8fd2a",
"s390x-unknown-linux-gnu-0.9.15":
"e0cac629299a49336e92a13684671bbf50933749412f480e051a4071a619fcd8",
"x86_64-apple-darwin-0.9.15":
"a7d9ae35ce2d192cb0356f07439cfc6768d4dff8e95ae69f821e8fbe7bcb0e09",
"x86_64-pc-windows-msvc-0.9.15":
"a6887c93a54c46de7dcc0bc798f84a130d7f411124ad43252716f75d0c2c33e0",
"x86_64-unknown-linux-gnu-0.9.15":
"2053df0089327569cddd6afea920c2285b482d9b123f5db9f658273e96ab792c",
"x86_64-unknown-linux-musl-0.9.15":
"7037889adb182ce50379b3a789154ad6be00397b892fec9e93e11c457945aec0",
"aarch64-apple-darwin-0.9.14":
"5267ecb62737b2ec0d61fd40e93c20d0a201eba96588582633f725792c778e00",
"aarch64-pc-windows-msvc-0.9.14":
"966f4ddb5450ade2be0989bb3d4cc4ff66ec316ad714618f2391712ec3660908",
"aarch64-unknown-linux-gnu-0.9.14":
"b19bac23c34490b46f024636f164889b14403ab262118e2f97224053fc17ed8c",
"aarch64-unknown-linux-musl-0.9.14":
"631ac3b88a77ec1af35297fdecc0b60b3eef16482617e3a2a5805bd667166437",
"arm-unknown-linux-musleabihf-0.9.14":
"a5e112d7ec880c2fe9bb95500d3e6f148e68ca7ff2dd88ab0f8d966e14ef3c9d",
"armv7-unknown-linux-gnueabihf-0.9.14":
"09449988d71401c37e8a7db2eb381e4a931c6394b7c1c9db7e444c2948f16677",
"armv7-unknown-linux-musleabihf-0.9.14":
"b7273fc488ac5ae624ab5f657410d44443f30643b77b0ac0d1fdec0f7dee7b95",
"i686-pc-windows-msvc-0.9.14":
"b361e46aa3d9fa94850fbf006deff3c23f1aa1392ec78da598b5e3af0349ae23",
"i686-unknown-linux-gnu-0.9.14":
"106d70d5a9034d06ad1c2c6b028e6b0b77816f5de34d42f4e5c88fd5d5a0a8b0",
"i686-unknown-linux-musl-0.9.14":
"2b9685ea197030fbcd327f5a96012c0d8a468db35c36e84b683b944b696d853a",
"powerpc64-unknown-linux-gnu-0.9.14":
"1cdb82fa8fc213149dd34bed755ba2ec8faef9d45a4206799256b2926c1495d9",
"powerpc64le-unknown-linux-gnu-0.9.14":
"9ae475bb30150d12633283dd73707fc059bece75e2c42288bf35212b5e6f09ec",
"riscv64gc-unknown-linux-gnu-0.9.14":
"96abad8a9324bd756905ab705ef853e036b3725242161682e7ceab2bf4081186",
"s390x-unknown-linux-gnu-0.9.14":
"f5250473bd8a036b78f4ec19450eb3efe743232d688f770ea2a92f21da7fb417",
"x86_64-apple-darwin-0.9.14":
"276fe2605a0ba8306a875101e3a11bc5b93e2bce0b6b3b6c49c9ad14507d9dba",
"x86_64-pc-windows-msvc-0.9.14":
"7ca7a43da656d9c5fd4b40ce6e8de19bc46d51e026c9dfd4909c1bc8b25f88bc",
"x86_64-unknown-linux-gnu-0.9.14":
"e72024e390fed178072e0c9b262c052d89ccff32a5522504f4991d6265aff411",
"x86_64-unknown-linux-musl-0.9.14":
"2b9636963c700a595d476e387eb8041973d30c5add3193a8710a4306442ee74b",
"aarch64-apple-darwin-0.9.13":
"9c594dce1c237e11680be2b6d1331448eeb6f8a1453fb851a66a40291bb624de",
"aarch64-pc-windows-msvc-0.9.13":
"761e29d5a67ca61f1d19c20ce935a9fd1f0011efb0e00f1efb20b0801e06b3c4",
"aarch64-unknown-linux-gnu-0.9.13":
"c221d04810f873a7aa8bae9aa6ed721e600e56534980df1363952386a4fcdcc5",
"aarch64-unknown-linux-musl-0.9.13":
"5a81540af68e28df324d01d79900e7b86c659e8167cb236528b8e6050d74f94e",
"arm-unknown-linux-musleabihf-0.9.13":
"35043814a4eff41141943834e70faa8de54a4a9f6635e0993382ac2ee06651bf",
"armv7-unknown-linux-gnueabihf-0.9.13":
"a6c99ae8fdd21e58b8908ecf4f521d2045e297572d899fdd6b59e14d1095600c",
"armv7-unknown-linux-musleabihf-0.9.13":
"8a7655f116f90380a9b9e5a11cf8dc37c5a898b01087d48a801a59165eb2e42c",
"i686-pc-windows-msvc-0.9.13":
"be134c7576ba494db286a2ccc2ada117b4709e67090264d81891221ea366f2ef",
"i686-unknown-linux-gnu-0.9.13":
"b0884051fdf28461db2f1d4f0968cfcc4ad51539195638beb2656cba863a9895",
"i686-unknown-linux-musl-0.9.13":
"839215a614165993ee4daecb25857f17d81640ca88bb2874129a92451ac109f3",
"powerpc64-unknown-linux-gnu-0.9.13":
"735fd044e22dbcda6d174d9dc7f007a2782610509be4bc9c0bdec18eb0f76684",
"powerpc64le-unknown-linux-gnu-0.9.13":
"bac44db58d9e4fc9f1ebc6c03d4ef73d10ae871569a19099d348803e1b09a763",
"riscv64gc-unknown-linux-gnu-0.9.13":
"189ce36262a01fc411e85dc6d2cb8dc262b9ba2ce5bc1e6f3ba2bb284a190b95",
"s390x-unknown-linux-gnu-0.9.13":
"037fc4a382a2d591429a35078cce5ff44170e2d14fa5fa4625902f36b8aa892a",
"x86_64-apple-darwin-0.9.13":
"571cb1623681c439af892335c729c272266e836a9ebcb627f34f8012c6459d9d",
"x86_64-pc-windows-msvc-0.9.13":
"cdfb04512c9184939f16eea02644a7133b4e41233ead69122d49847d29a45538",
"x86_64-unknown-linux-gnu-0.9.13":
"c45a44144bf23a2182e143227b4ad0bbe41a2bb7161a637c02e968906af53fd1",
"x86_64-unknown-linux-musl-0.9.13":
"04cf326d2d742ce5c8890fdc0b9f71bd707be8640979bf6e53ddd52da74dfb41",
"aarch64-apple-darwin-0.9.12":
"6bf1148aa48bc42853e8216982a89f6909e1932a51f4d8dce27815e8954e4664",
"aarch64-pc-windows-msvc-0.9.12":
"0975aff9837edcd97f2f781ff78754929ee13386708b76a5f223ed41b5741fec",
"aarch64-unknown-linux-gnu-0.9.12":
"3c4dd18c1db6bd1af3b84ea3b3cc34dd9d8b955d3e700d1e1e4a18249decbe69",
"aarch64-unknown-linux-musl-0.9.12":
"e953307caacdcf8a5bbac510423b2e64840428244a542ae2d7a6ca79c2931c24",
"arm-unknown-linux-musleabihf-0.9.12":
"3f8ede818c4a7d8f7f3069eb4034dcdea85342d7b952b269cf17bd2854a9e028",
"armv7-unknown-linux-gnueabihf-0.9.12":
"2f06cb797ba7c4f5f1774331d4e15f912b1e8035e49c9ad5f510378fd2d129dc",
"armv7-unknown-linux-musleabihf-0.9.12":
"d72ecd42c3657c1e6ca76adc0d98c0576751da8e115cbfbb2cbd36be3f8c8638",
"i686-pc-windows-msvc-0.9.12":
"e140404f281a6427faac4d4d0fab467f3e305ae6ba6ecfab0d149ad6815a2c04",
"i686-unknown-linux-gnu-0.9.12":
"a56311ec3dfa0fa0760e763dcd0879f5a5c21aa5342b9290d2650b014fec49c8",
"i686-unknown-linux-musl-0.9.12":
"1ac8ad42c48eebdc0d62ae78707d4ca2727d0c88ec00fbdd07d0655f023e2ab9",
"powerpc64-unknown-linux-gnu-0.9.12":
"89f4a9122dfd30dd51db572513e5db4a05e29abe752405d751b92fe6f30990e2",
"powerpc64le-unknown-linux-gnu-0.9.12":
"2941ffdf84340c8416cec8beb15c35b92afb1185a08cae05b8637c26225473d5",
"riscv64gc-unknown-linux-gnu-0.9.12":
"0f95884ded94f98d3b8a1f2f9f78f6da4eea5e20f718185a0da4778ab0798e9b",
"s390x-unknown-linux-gnu-0.9.12":
"a73662924261b0c581b762040c27fb839aca9164b13e017ca5162ae3dbb51c50",
"x86_64-apple-darwin-0.9.12":
"b91852ea80e1c137f6246c8b01bc52d1c7213bff8d82cccd532ce2272c56d482",
"x86_64-pc-windows-msvc-0.9.12":
"ee09ed595c54ee70fb29b596c9a15aa71f5d7a1191417985a0684a1dd644a8da",
"x86_64-unknown-linux-gnu-0.9.12":
"4e43dac0c82b12b66564d91d5649350377b771d1df84374d9be1b9e6c8dd8152",
"x86_64-unknown-linux-musl-0.9.12":
"3621344419cedb7625f0c07c54e876d0a6bb5576b39879b118ed96a6d104fd11",
"aarch64-apple-darwin-0.9.11":
"594d9f4cfbd21d5a2f34b0352bf423066a9dab1733c90b5d40e3e227506deb03",
"aarch64-pc-windows-msvc-0.9.11":
"04964328f8e8a4e868153f65a29a927c5d3d8f16c343686bbab5147c72858903",
"aarch64-unknown-linux-gnu-0.9.11":
"b695e1796449ea85f967b749f87283678ce284e2c042b4b6fa51fa36ec06f47c",
"aarch64-unknown-linux-musl-0.9.11":
"26b33bb65714247dd865216e71c5528030c85c6de9ce06172152158ed7add70c",
"arm-unknown-linux-musleabihf-0.9.11":
"6b64be48c461ec1b25d8695d407d6189c660ca2f25ab5978476ae2cff516ce32",
"armv7-unknown-linux-gnueabihf-0.9.11":
"2212adfff866e062dcea7d1ef99935043a49e3d77a18c9258851b7d23c5c3f90",
"armv7-unknown-linux-musleabihf-0.9.11":
"73729ebd29e2895f30c1a600adac56748b1afe18e9398e86ac4a293941fee3f7",
"i686-pc-windows-msvc-0.9.11":
"d7a6e1d8f3d6bc2eea36311fe1b30ee44e8aac5de54189bbf17849a212a388a0",
"i686-unknown-linux-gnu-0.9.11":
"19189d007a820ed37b08a54cc46efd2b697ed266e71bac6f38abf44e319a5067",
"i686-unknown-linux-musl-0.9.11":
"d517ec84358c3ed55757bf8e28eba40072b7912626d96ef0df29fd115f875ad1",
"powerpc64-unknown-linux-gnu-0.9.11":
"a30437a5ccbbcedcdd2e70e81404cfcf7a6b4f34d1a440c61e7df96702165869",
"powerpc64le-unknown-linux-gnu-0.9.11":
"6340562f7aff862c6b15c55520ca81823fe446e595f96f4732ddf37544977a5d",
"riscv64gc-unknown-linux-gnu-0.9.11":
"89ac4d89928dded2e1f300f5f6b184b9f370493c2e506ca272d77e39c6a1b68f",
"s390x-unknown-linux-gnu-0.9.11":
"665208d604a63d8e934bd4f748e689283f507b20a083f6c027146d92eb3048c0",
"x86_64-apple-darwin-0.9.11":
"14236594b4edbd90929d845766a41a1d4e51d530c9ebbedfb3d93688661f142c",
"x86_64-pc-windows-msvc-0.9.11":
"45a3ff2a68c246ed9fd2d9df032496c1beebe480357f356ac25d2cb144884c30",
"x86_64-unknown-linux-gnu-0.9.11":
"817c0722b437b4b45b9a7e0231616a09db76bab1b8d178ba7a9680c690db19f0",
"x86_64-unknown-linux-musl-0.9.11":
"5cc06fe71374a8883aeb2c83a141a4b5fac8584ee894ba31c5792254508b4e9a",
"aarch64-apple-darwin-0.9.10":
"af171d5a4eb1c502819de32740aa811ff71851b1f5ec2d8bd0dda302ed9554c2",
"aarch64-pc-windows-msvc-0.9.10":
"6cca85b629d2944f839651e01070dc3de03d238c75a310f28914fcd63ddb9aa6",
"aarch64-unknown-linux-gnu-0.9.10":
"39d80f85f604018281b3e7bf2e1515ab96e8eec5763a2cef9f87d821f66d1758",
"aarch64-unknown-linux-musl-0.9.10":
"9dda17fe2261a16ce0d267617e5898b9678ba6c5f1c8528b7fe48d32d839f427",
"arm-unknown-linux-musleabihf-0.9.10":
"8b71fe3fc0148bcf5a16fe397ad39260145e497f11c51c02293083e8674932f1",
"armv7-unknown-linux-gnueabihf-0.9.10":
"cc2ecd5c5093de3d591f4b856ded66a73af3e18eca48eafb65bd3a0b650adcd4",
"armv7-unknown-linux-musleabihf-0.9.10":
"52dd0c8479d1f2e9973d2cf84039005b93f63b8d9bcbce6779f73a48b23fff0c",
"i686-pc-windows-msvc-0.9.10":
"3b3198c214294d5dc352a94dc7bb22f582d11e364780f70dbc3580602339de9a",
"i686-unknown-linux-gnu-0.9.10":
"2896597201449656c0366c5ce657050f1be3fed77db7f3c40e70008719c8db8c",
"i686-unknown-linux-musl-0.9.10":
"5fbd3f8857870a30c0dd8066439adf3a7a3999809088b42ca932e8d4ea458475",
"powerpc64-unknown-linux-gnu-0.9.10":
"bbff176ee9a6f2b3dc3764bfe9e782f9f244403082bf774d23f0d1575fdfee16",
"powerpc64le-unknown-linux-gnu-0.9.10":
"6136887ae446c05fb0c88bed01289a830b6ab5b2cd167b05f0c9add6674bfc00",
"riscv64gc-unknown-linux-gnu-0.9.10":
"0572b985da8b546496dbcb087b57127c0d55a02778a7697e27e1314f8f6bccc8",
"s390x-unknown-linux-gnu-0.9.10":
"12cefdeba209ffab42cfff6f9f5b24d1d6f561f22825ce545be04bbc20dd9810",
"x86_64-apple-darwin-0.9.10":
"0e395aad905332bb106f8bb05575ed001de34e9627a4c455a2f6b9475957719e",
"x86_64-pc-windows-msvc-0.9.10":
"bf5a9bb171e90bc612c7acebfb560693d04dba1d1009c297b83da23155218607",
"x86_64-unknown-linux-gnu-0.9.10":
"440c4215b171e64061d65d16a23753dd25c29a7f7b1b0446c9e9aed0fa372f27",
"x86_64-unknown-linux-musl-0.9.10":
"e614681a150d52446eb8f4cf34f90b5d42b609bd1f2615da049449d795bfe5b4",
"aarch64-apple-darwin-0.9.9":
"737e1c2c4f97577aa7764141846e27de915eebb3b2a0f467451089a64824d2f7",
"aarch64-pc-windows-msvc-0.9.9":
"517a34f4e609f1ae4920f3a31280427244927d713e0451e21ceb102eb59450d2",
"aarch64-unknown-linux-gnu-0.9.9":
"35cbad89f226a06cd8b295f946e7083e15cd6fa058e09c2e02bb388be39a8fe4",
"aarch64-unknown-linux-musl-0.9.9":
"84675e9f81c7ec45b11761db4e1f047c64e772d96a7d99201507a10279f7f835",
"arm-unknown-linux-musleabihf-0.9.9":
"0ac0dc5e822e8acc9bcd53d3854ebbeef80c806d5722ee8666b8fa49582c8ff3",
"armv7-unknown-linux-gnueabihf-0.9.9":
"0390a683afc68c10c3cef45d80678015c6d097260a612ab6bca006ec68f75918",
"armv7-unknown-linux-musleabihf-0.9.9":
"9de2898662af656fb80bdbfae1958423ed572745f3c10272ff4c214f02c0cfe0",
"i686-pc-windows-msvc-0.9.9":
"724c82034a49f7e859de83382d18b38ec830730446996ccc92ddf65d8d1073e7",
"i686-unknown-linux-gnu-0.9.9":
"892e4fd9ee89a1e04ec3608a341e635f4ff5fc6278d0e0be817d1a8df2b29683",
"i686-unknown-linux-musl-0.9.9":
"25d9277765bc8e854d5043aa6bad21ed41aca2d84c6f490e6872c5bbd21a8f03",
"powerpc64-unknown-linux-gnu-0.9.9":
"2dd81137f5d033ec742e33cb1914a0113b798bb189cf0ba341c4ecda7e7a3a3f",
"powerpc64le-unknown-linux-gnu-0.9.9":
"4b22b352bb953d8e050a6f7e72e5308e437e28f9ce2bd9a037b40d0c0aae9bfe",
"riscv64gc-unknown-linux-gnu-0.9.9":
"527aa930b057c79712089c4529e35b53a0a7884947a3f4bab8d36d91d0011c70",
"s390x-unknown-linux-gnu-0.9.9":
"9ff624746c1f6e6516a05461fb7d918a2f61e77d139d113784c91e932440244e",
"x86_64-apple-darwin-0.9.9":
"8a755971dbf0b394cb61607c3d21e81affd62a22cfd306351eb518be7a3f0a89",
"x86_64-pc-windows-msvc-0.9.9":
"b1c5d78c5cb6804e556e07eeafbcdea7378107c2bd5c342dea0cdc05a607d8e5",
"x86_64-unknown-linux-gnu-0.9.9":
"9ec303873e00deed44d1b2b52b85ab7aa55d849588d7242298748390eaea07ef",
"x86_64-unknown-linux-musl-0.9.9":
"b0e4530c1fed09720d7eb703703047f097fe23d6b266945a98422f0a0e5c74b4",
"aarch64-apple-darwin-0.9.8": "aarch64-apple-darwin-0.9.8":
"c021ce28988acbbfcb496e68cd9f2f6ba6401cc6d3292a5d25313873f825e002", "c021ce28988acbbfcb496e68cd9f2f6ba6401cc6d3292a5d25313873f825e002",
"aarch64-pc-windows-msvc-0.9.8": "aarch64-pc-windows-msvc-0.9.8":

View File

@@ -6,7 +6,6 @@ import * as pep440 from "@renovatebot/pep440";
import { import {
STATE_CACHE_KEY, STATE_CACHE_KEY,
STATE_CACHE_MATCHED_KEY, STATE_CACHE_MATCHED_KEY,
STATE_PYTHON_CACHE_MATCHED_KEY,
} from "./cache/restore-cache"; } from "./cache/restore-cache";
import { STATE_UV_PATH, STATE_UV_VERSION } from "./utils/constants"; import { STATE_UV_PATH, STATE_UV_VERSION } from "./utils/constants";
import { import {
@@ -27,9 +26,6 @@ export async function run(): Promise<void> {
} else { } else {
core.info("save-cache is false. Skipping save cache step."); 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, // node will stay alive if any promises are not resolved,
// which is a possibility if HTTP requests are dangling // which is a possibility if HTTP requests are dangling
// due to retries or timeouts. We know that if we got here // due to retries or timeouts. We know that if we got here
@@ -53,30 +49,55 @@ async function saveCache(): Promise<void> {
} }
if (matchedKey === cacheKey) { if (matchedKey === cacheKey) {
core.info(`Cache hit occurred on key ${cacheKey}, not saving cache.`); core.info(`Cache hit occurred on key ${cacheKey}, not saving cache.`);
} else { return;
if (shouldPruneCache) { }
await pruneCache();
}
const actualCachePath = getUvCachePath(); if (shouldPruneCache) {
await saveCacheToKey( await pruneCache();
cacheKey, }
actualCachePath,
STATE_CACHE_MATCHED_KEY, let actualCachePath = cacheLocalPath;
"uv cache", 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}".`,
);
actualCachePath = process.env.UV_CACHE_DIR;
}
core.info(`Saving cache path: ${actualCachePath}`);
if (!fs.existsSync(actualCachePath) && !ignoreNothingToCache) {
throw new Error(
`Cache path ${actualCachePath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`, `Cache path ${actualCachePath} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`,
); );
} }
const cachePaths = [actualCachePath];
if (cachePython) { if (cachePython) {
const pythonCacheKey = `${cacheKey}-python`; core.info(`Including Python cache path: ${pythonDir}`);
await saveCacheToKey( if (!fs.existsSync(pythonDir) && !ignoreNothingToCache) {
pythonCacheKey, throw new Error(
pythonDir, `Python cache path ${pythonDir} does not exist on disk. This likely indicates that there are no dependencies to cache. Consider disabling the cache input if it is not needed.`,
STATE_PYTHON_CACHE_MATCHED_KEY, );
"Python cache", }
`Python cache path ${pythonDir} does not exist on disk. This likely indicates that there are no Python installations to cache. Consider disabling the cache input if it is not needed.`, cachePaths.push(pythonDir);
); }
core.info(`Final cache paths: ${cachePaths.join(", ")}`);
try {
await cache.saveCache(cachePaths, cacheKey);
core.info(`cache saved with the key: ${cacheKey}`);
} catch (e) {
if (
e instanceof Error &&
e.message ===
"Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved."
) {
core.info(
"No cacheable paths were found. Ignoring because ignore-nothing-to-save is enabled.",
);
} else {
throw e;
}
} }
} }
@@ -96,61 +117,4 @@ async function pruneCache(): Promise<void> {
await exec.exec(uvPath, execArgs, options); await exec.exec(uvPath, execArgs, options);
} }
function getUvCachePath(): string {
if (cacheLocalPath === undefined) {
throw new Error(
"cache-local-path is not set. Cannot save cache without a valid cache path.",
);
}
if (
process.env.UV_CACHE_DIR &&
process.env.UV_CACHE_DIR !== cacheLocalPath.path
) {
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}".`,
);
return process.env.UV_CACHE_DIR;
}
return cacheLocalPath.path;
}
async function saveCacheToKey(
cacheKey: string,
cachePath: string,
stateKey: string,
cacheName: string,
pathNotExistErrorMessage: string,
): Promise<void> {
const matchedKey = core.getState(stateKey);
if (matchedKey === cacheKey) {
core.info(
`${cacheName} hit occurred on key ${cacheKey}, not saving cache.`,
);
return;
}
core.info(`Including ${cacheName} path: ${cachePath}`);
if (!fs.existsSync(cachePath) && !ignoreNothingToCache) {
throw new Error(pathNotExistErrorMessage);
}
try {
await cache.saveCache([cachePath], cacheKey);
core.info(`${cacheName} saved with key: ${cacheKey}`);
} catch (e) {
if (
e instanceof Error &&
e.message ===
"Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved."
) {
core.info(
`No cacheable ${cacheName} paths were found. Ignoring because ignore-nothing-to-save is enabled.`,
);
} else {
throw e;
}
}
}
run(); run();

View File

@@ -8,11 +8,11 @@ import {
resolveVersion, resolveVersion,
tryGetFromToolCache, tryGetFromToolCache,
} from "./download/download-version"; } from "./download/download-version";
import { getConfigValueFromTomlFile } from "./utils/config-file";
import { STATE_UV_PATH, STATE_UV_VERSION } from "./utils/constants"; import { STATE_UV_PATH, STATE_UV_VERSION } from "./utils/constants";
import { import {
activateEnvironment as activateEnvironmentInput, activateEnvironment as activateEnvironmentInput,
addProblemMatchers, addProblemMatchers,
CacheLocalSource,
cacheLocalPath, cacheLocalPath,
checkSum, checkSum,
enableCache, enableCache,
@@ -36,37 +36,6 @@ import {
} from "./utils/platforms"; } from "./utils/platforms";
import { getUvVersionFromFile } from "./version/resolve"; import { getUvVersionFromFile } from "./version/resolve";
async function getPythonVersion(): Promise<string> {
if (pythonVersion !== "") {
return pythonVersion;
}
let output = "";
const options: exec.ExecOptions = {
listeners: {
stdout: (data: Buffer) => {
output += data.toString();
},
},
silent: !core.isDebug(),
};
try {
const execArgs = ["python", "find", "--directory", workingDirectory];
await exec.exec("uv", execArgs, options);
const pythonPath = output.trim();
output = "";
await exec.exec(pythonPath, ["--version"], options);
// output is like "Python 3.8.10"
return output.split(" ")[1].trim();
} catch (error) {
const err = error as Error;
core.debug(`Failed to get python version from uv. Error: ${err.message}`);
return "unknown";
}
}
async function run(): Promise<void> { async function run(): Promise<void> {
detectEmptyWorkdir(); detectEmptyWorkdir();
const platform = await getPlatform(); const platform = await getPlatform();
@@ -94,14 +63,9 @@ async function run(): Promise<void> {
core.saveState(STATE_UV_VERSION, setupResult.version); core.saveState(STATE_UV_VERSION, setupResult.version);
core.info(`Successfully installed uv version ${setupResult.version}`); core.info(`Successfully installed uv version ${setupResult.version}`);
const pythonVersion = await getPythonVersion();
core.setOutput("python-version", pythonVersion);
if (enableCache) { if (enableCache) {
await restoreCache(pythonVersion); await restoreCache();
} }
// https://github.com/nodejs/node/issues/56645#issuecomment-3077594952
await new Promise((resolve) => setTimeout(resolve, 50));
process.exit(0); process.exit(0);
} catch (err) { } catch (err) {
core.setFailed((err as Error).message); core.setFailed((err as Error).message);
@@ -286,15 +250,16 @@ async function activateEnvironment(): Promise<void> {
} }
function setCacheDir(): void { function setCacheDir(): void {
if (cacheLocalPath !== undefined) { if (enableCache) {
if (cacheLocalPath.source === CacheLocalSource.Config) { const cacheDirFromConfig = getConfigValueFromTomlFile("", "cache-dir");
if (cacheDirFromConfig !== undefined) {
core.info( core.info(
"Using cache-dir from uv config file, not modifying UV_CACHE_DIR", "Using cache-dir from uv config file, not modifying UV_CACHE_DIR",
); );
return; return;
} }
core.exportVariable("UV_CACHE_DIR", cacheLocalPath.path); core.exportVariable("UV_CACHE_DIR", cacheLocalPath);
core.info(`Set UV_CACHE_DIR to ${cacheLocalPath.path}`); 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 * as core from "@actions/core";
import { getConfigValueFromTomlFile } from "./config-file"; import { getConfigValueFromTomlFile } from "./config-file";
export enum CacheLocalSource {
Input,
Config,
Env,
Default,
}
export const workingDirectory = core.getInput("working-directory"); export const workingDirectory = core.getInput("working-directory");
export const version = core.getInput("version"); export const version = core.getInput("version");
export const versionFile = getVersionFile(); export const versionFile = getVersionFile();
@@ -87,51 +80,32 @@ function getToolDir(): string | undefined {
return undefined; return undefined;
} }
function getCacheLocalPath(): function getCacheLocalPath(): string {
| {
path: string;
source: CacheLocalSource;
}
| undefined {
const cacheLocalPathInput = core.getInput("cache-local-path"); const cacheLocalPathInput = core.getInput("cache-local-path");
if (cacheLocalPathInput !== "") { if (cacheLocalPathInput !== "") {
const tildeExpanded = expandTilde(cacheLocalPathInput); const tildeExpanded = expandTilde(cacheLocalPathInput);
return { return resolveRelativePath(tildeExpanded);
path: resolveRelativePath(tildeExpanded),
source: CacheLocalSource.Input,
};
} }
const cacheDirFromConfig = getCacheDirFromConfig(); const cacheDirFromConfig = getCacheDirFromConfig();
if (cacheDirFromConfig !== undefined) { if (cacheDirFromConfig !== undefined) {
return { path: cacheDirFromConfig, source: CacheLocalSource.Config }; return cacheDirFromConfig;
} }
if (process.env.UV_CACHE_DIR !== undefined) { if (process.env.UV_CACHE_DIR !== undefined) {
core.info(`UV_CACHE_DIR is already set to ${process.env.UV_CACHE_DIR}`); 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_ENVIRONMENT === "github-hosted") { if (process.env.RUNNER_TEMP !== undefined) {
if (process.env.RUNNER_TEMP !== undefined) { return `${process.env.RUNNER_TEMP}${path.sep}setup-uv-cache`;
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.platform === "win32") { throw Error(
return { "Could not determine UV_CACHE_DIR. Please make sure RUNNER_TEMP is set or provide the cache-local-path input",
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,
};
} }
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 { function getCacheDirFromConfig(): string | undefined {
@@ -155,7 +129,7 @@ function getCacheDirFromConfig(): string | undefined {
export function getUvPythonDir(): string { export function getUvPythonDir(): string {
if (process.env.UV_PYTHON_INSTALL_DIR !== undefined) { if (process.env.UV_PYTHON_INSTALL_DIR !== undefined) {
core.info( core.info(
`UV_PYTHON_INSTALL_DIR is already set to ${process.env.UV_PYTHON_INSTALL_DIR}`, `UV_PYTHON_INSTALL_DIR is already set to ${process.env.UV_PYTHON_INSTALL_DIR}`,
); );
return process.env.UV_PYTHON_INSTALL_DIR; return process.env.UV_PYTHON_INSTALL_DIR;
} }

View File

@@ -1,5 +1,3 @@
import fs from "node:fs";
import os from "node:os";
import * as core from "@actions/core"; import * as core from "@actions/core";
import * as exec from "@actions/exec"; import * as exec from "@actions/exec";
export type Platform = export type Platform =
@@ -76,71 +74,3 @@ async function isMuslOs(): Promise<boolean> {
return false; 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]}`;
}

File diff suppressed because it is too large Load Diff