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

Compare commits

..

15 Commits

Author SHA1 Message Date
Kevin Stillhammer
cd4ccfa557 Add FAQ on changed cache and cache upload behavior 2025-07-05 11:51:29 +02:00
Kevin Stillhammer
8021b967f0 Do not warn when version not in manifest-file
This will spam the GitHub summary with warnings as soon as a new version is released and no new setup-uv version containing this version in the distributed manifest-file is released
2025-06-25 09:21:00 +02:00
github-actions[bot]
c6a5ebaafe chore: update known versions for 0.7.14 (#459)
chore: update known versions for 0.7.14

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-06-24 09:53:39 +00:00
Kevin Stillhammer
790df8f465 Revert "Set expected cache dir drive to C: on windows (#451)" (#460)
This reverts commit 60ecb381b4.
2025-06-24 11:16:40 +02:00
Kevin Stillhammer
445689ea25 Use latest version from manifest-file (#458)
If a manifest-file is supplied the default value of the version input
(latest) will get the latest version available in the manifest. That
might not be the actual latest version available in the official uv
repo.
2025-06-19 21:23:43 +02:00
Kevin Stillhammer
a02a550bdd Look for version-manifest.json relative to action path (#456)
Fixes: #455
2025-06-18 23:09:13 +02:00
Kevin Stillhammer
60cc2b4585 Add input manifest-file (#454)
Adds capability to maintain custom uv builds or to override the default
sources
2025-06-18 20:33:20 +00:00
github-actions[bot]
7bbb36f434 chore: update known versions for 0.7.13 and 0.7.12 (#444)
chore: update known versions for 0.7.13

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-06-17 07:48:33 +00:00
Kevin Stillhammer
60ecb381b4 Set expected cache dir drive to C: on windows (#451)
Seems like the temp folder got moved to the C: drive
2025-06-17 09:40:23 +02:00
github-actions[bot]
252c995424 chore: update known versions for 0.7.11 (#442)
chore: update known versions for 0.7.11

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-06-05 06:15:21 +00:00
github-actions[bot]
477a814f2d chore: update known versions for 0.7.10 (#440)
chore: update known versions for 0.7.10

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-06-04 06:19:09 +00:00
Zanie Blue
9b19f8f4b1 Add warning about shadowed uv binaries to activate-environment (#439)
Closes https://github.com/astral-sh/uv/issues/13785
2025-06-03 19:44:51 +02:00
github-actions[bot]
d44461ea9f chore: update known versions for 0.7.9 (#437)
chore: update known versions for 0.7.9

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-05-31 20:07:33 +00:00
Kevin Stillhammer
c19c1b1ffd Check that all jobs are in all-tests-passed.needs (#432) 2025-05-27 18:25:00 +02:00
github-actions[bot]
f3121ef80e chore: update known versions for 0.7.8 (#428)
chore: update known versions for 0.7.8

Co-authored-by: eifinger <1481961+eifinger@users.noreply.github.com>
2025-05-24 06:07:37 +00:00
19 changed files with 1969 additions and 141 deletions

View File

@@ -0,0 +1,35 @@
import * as fs from "node:fs";
import * as yaml from "js-yaml";
interface WorkflowJob {
needs?: string[];
[key: string]: unknown;
}
interface Workflow {
jobs: Record<string, WorkflowJob>;
[key: string]: unknown;
}
const workflow = yaml.load(
fs.readFileSync("../workflows/test.yml", "utf8"),
) as Workflow;
const jobs = Object.keys(workflow.jobs);
const allTestsPassed = workflow.jobs["all-tests-passed"];
const needs: string[] = allTestsPassed.needs || [];
const expectedNeeds = jobs.filter((j) => j !== "all-tests-passed");
const missing = expectedNeeds.filter((j) => !needs.includes(j));
if (missing.length > 0) {
console.error(
`Missing jobs in all-tests-passed needs: ${missing.join(", ")}`,
);
console.info(
"Please add the missing jobs to the needs section of all-tests-passed in test.yml.",
);
process.exit(1);
}
console.log(
"All jobs in test.yml are in the needs section of all-tests-passed.",
);

View File

@@ -29,6 +29,11 @@ jobs:
npm install
- run: |
npm run all
- name: Check all jobs are in all-tests-passed.needs
run: |
tsc check-all-tests-passed-needs.ts
node check-all-tests-passed-needs.js
working-directory: .github/scripts
- name: Make sure no changes from linters are detected
run: |
git diff --exit-code || (echo "::error::Please run 'npm run all' to fix the issues" && exit 1)
@@ -528,6 +533,23 @@ jobs:
- run: uv sync
working-directory: __tests__/fixtures/old-python-constraint-project
test-custom-manifest-file:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install from custom manifest file
uses: ./
with:
manifest-file: "https://raw.githubusercontent.com/astral-sh/setup-uv/${{ github.ref }}/__tests__/download/custom-manifest.json"
- run: uv sync
working-directory: __tests__/fixtures/uv-project
- name: Correct version gets installed
run: |
if [ "$(uv --version)" != "uv 0.7.12-alpha.1" ]; then
echo "Wrong uv version: $(uv --version)"
exit 1
fi
all-tests-passed:
runs-on: ubuntu-latest
needs:
@@ -548,14 +570,19 @@ jobs:
- test-activate-environment
- test-musl
- test-cache-local
- test-setup-cache
- test-restore-cache
- test-setup-cache-requirements-txt
- test-restore-cache-requirements-txt
- test-setup-cache-dependency-glob
- test-restore-cache-dependency-glob
- test-setup-cache-local
- test-restore-cache-local
- test-tilde-expansion-cache-local-path
- test-tilde-expansion-cache-dependency-glob
- cleanup-tilde-expansion-tests
- test-no-python-version
- test-custom-manifest-file
if: always()
steps:
- name: All tests passed

View File

@@ -28,6 +28,7 @@ Set up your GitHub Actions workflow with a specific version of [uv](https://docs
- [UV_TOOL_DIR](#uv_tool_dir)
- [UV_TOOL_BIN_DIR](#uv_tool_bin_dir)
- [Tilde Expansion](#tilde-expansion)
- [Manifest file](#manifest-file)
- [How it works](#how-it-works)
- [FAQ](#faq)
@@ -137,6 +138,16 @@ This allows directly using it in later steps:
- run: uv pip install pip
```
> [!WARNING]
>
> Activating the environment adds your dependencies to the `PATH`, which could break some workflows.
> For example, if you have a dependency which requires uv, e.g., `hatch`, activating the
> environment will shadow the `uv` binary installed by this action and may result in a different uv
> version being used.
>
> We do not recommend using this setting for most use-cases. Instead, use `uv run` to execute
> commands in the environment.
### Working directory
You can set the working directory with the `working-directory` input.
@@ -386,6 +397,44 @@ This action supports expanding the `~` character to the user's home directory fo
cache-dependency-glob: "~/my-cache-buster"
```
### Manifest file
The `manifest-file` input allows you to specify a JSON manifest that lists available uv versions,
architectures, and their download URLs. By default, this action uses the manifest file contained
in this repository, which is automatically updated with each release of uv.
The manifest file contains an array of objects, each describing a version,
architecture, platform, and the corresponding download URL. For example:
```json
[
{
"version": "0.7.13",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-aarch64-apple-darwin.tar.gz"
},
...
]
```
You can supply a custom manifest file URL to define additional versions,
architectures, or different download URLs.
This is useful if you maintain your own uv builds or want to override the default sources.
```yaml
- name: Use a custom manifest file
uses: astral-sh/setup-uv@v6
with:
manifest-file: "https://example.com/my-custom-manifest.json"
```
> [!NOTE]
> When you use a custom manifest file and do not set the `version` input, its default value is `latest`.
> This means the action will install the latest version available in the custom manifest file.
> This is different from the default behavior of installing the latest version from the official uv releases.
## How it works
This action downloads uv from the uv repo's official
@@ -490,9 +539,26 @@ Running `actions/checkout` after `setup-uv` **is not supported**.
### Does `setup-uv` also install my project or its dependencies automatically?
No, `setup-uv` alone wont install any libraries from your `pyproject.toml` or `requirements.txt`, it only sets up `uv`.
No, `setup-uv` alone wont install any libraries from your `pyproject.toml` or `requirements.txt`, it only sets up `uv`.
You should run `uv sync` or `uv pip install .` separately, or use `uv run ...` to ensure necessary dependencies are installed.
### Why is a changed cache not detected and not the full cache uploaded?
When `setup-uv` starts it has to know whether it is better to download an existing cache
or start fresh and download every dependency again.
It does this by using a combination of hashes calculated on the contents of e.g. `uv.lock`.
By calculating these hashes and combining them in a key `setup-uv` can check
if an uploaded cache exists for this key.
If yes (e.g. contents of `uv.lock` did not change since last run) the dependencies in the cache
are up to date and the cache will be downloaded and used.
Details on determining which files will lead to different caches can be read under
[cache-dependency-glob](#cache-dependency-glob)
Some dependencies will never be uploaded to the cache and will be downloaded again on each run
as described in [disable-cache-pruning](#disable-cache-pruning)
## Acknowledgements
`setup-uv` was initially written and published by [Kevin Stillhammer](https://github.com/eifinger)

View File

@@ -0,0 +1,9 @@
[
{
"version": "0.7.12-alpha.1",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://release.pyx.dev/0.7.12-alpha.1/uv-x86_64-unknown-linux-gnu.tar.gz"
}
]

View File

@@ -19,7 +19,7 @@ inputs:
description: "The checksum of the uv version to install"
required: false
server-url:
description: "The server url to use when downloading uv"
description: "(Deprecated) The server url to use when downloading uv"
required: false
default: "https://github.com"
github-token:
@@ -62,6 +62,9 @@ inputs:
tool-bin-dir:
description: "Custom path to set UV_TOOL_BIN_DIR to."
required: false
manifest-file:
description: "URL to the manifest file containing available versions and download URLs."
required: false
outputs:
uv-version:
description: "The installed uv version. Useful when using latest."

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

@@ -88998,7 +88998,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.githubToken = exports.serverUrl = exports.toolDir = exports.toolBinDir = exports.ignoreEmptyWorkdir = exports.ignoreNothingToCache = exports.pruneCache = exports.cacheDependencyGlob = exports.cacheLocalPath = exports.cacheSuffix = exports.enableCache = exports.checkSum = exports.workingDirectory = exports.activateEnvironment = exports.pythonVersion = exports.version = void 0;
exports.manifestFile = exports.githubToken = exports.serverUrl = exports.toolDir = exports.toolBinDir = exports.ignoreEmptyWorkdir = exports.ignoreNothingToCache = exports.pruneCache = exports.cacheDependencyGlob = exports.cacheLocalPath = exports.cacheSuffix = exports.enableCache = exports.checkSum = exports.workingDirectory = exports.activateEnvironment = exports.pythonVersion = exports.version = void 0;
const core = __importStar(__nccwpck_require__(7484));
const node_path_1 = __importDefault(__nccwpck_require__(6760));
exports.version = core.getInput("version");
@@ -89017,6 +89017,7 @@ exports.toolBinDir = getToolBinDir();
exports.toolDir = getToolDir();
exports.serverUrl = core.getInput("server-url");
exports.githubToken = core.getInput("github-token");
exports.manifestFile = getManifestFile();
function getEnableCache() {
const enableCacheInput = core.getInput("enable-cache");
if (enableCacheInput === "auto") {
@@ -89072,6 +89073,13 @@ function expandTilde(input) {
}
return input;
}
function getManifestFile() {
const manifestFileInput = core.getInput("manifest-file");
if (manifestFileInput !== "") {
return manifestFileInput;
}
return undefined;
}
/***/ }),

357
dist/setup/index.js generated vendored
View File

@@ -121563,6 +121563,127 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.KNOWN_CHECKSUMS = void 0;
// AUTOGENERATED_DO_NOT_EDIT
exports.KNOWN_CHECKSUMS = {
"aarch64-apple-darwin-0.7.14": "7cb9cb6b3005a16356493887d7e7e297237b754b5753b91e826ada98ab2da172",
"aarch64-pc-windows-msvc-0.7.14": "f28f27e529e30e96e7b289b724c8229cfc5ca25312c23bdae089d6998ffd0aae",
"aarch64-unknown-linux-gnu-0.7.14": "c0932f428d24d87aaad6a6b7ad48aa09f260d2da5c69e877acd87c3ac90fbbad",
"aarch64-unknown-linux-musl-0.7.14": "30e41b1f68b3e57c1375c0b2e7fe932a9eb5487fbcef7c4c7d03def3e05b9f7e",
"arm-unknown-linux-musleabihf-0.7.14": "3b494d3d6a892d9c03d1fa6dcec8ac6077653939a6645570ab6f1f40adbd0b3c",
"armv7-unknown-linux-gnueabihf-0.7.14": "d5d1f6c49559914678267ce9f3a57528ab45e26e907a816736306b4f10a7b4b8",
"armv7-unknown-linux-musleabihf-0.7.14": "0016d3138edc52de9f2f4b0587afb6b579dc3bb3abfe2df151f97cc43a4ab421",
"i686-pc-windows-msvc-0.7.14": "42391f3a71229342b17d944e956d116aabc5147b0ed28a26c59601feac1f24cd",
"i686-unknown-linux-gnu-0.7.14": "71c358c315da7ddd2de334fe52a54719f9bdac8d6970e7966e2d080ae73ad028",
"i686-unknown-linux-musl-0.7.14": "d02de9391fe7b7d7e97dc2fa63a539201a31eb51d2c6a87b7570cf8a5ac22398",
"powerpc64-unknown-linux-gnu-0.7.14": "a2a43332f860520f7cd3d32f5a4ed5e0d938cc59e025372f8f1bfe47ea64355a",
"powerpc64le-unknown-linux-gnu-0.7.14": "3c545528b601a75baad5e1cc93cbf973123e9e6df6d905b432d91ba9ca769c0b",
"riscv64gc-unknown-linux-gnu-0.7.14": "4085fd8d4acb0a50a012fa63ae37e50472bf8742d58f4943529b5b5bda95a1a9",
"s390x-unknown-linux-gnu-0.7.14": "b20a69092f3171dd99445fe0d71e3ed3e67ff85346cb0723a43a1b8d55ce0f33",
"x86_64-apple-darwin-0.7.14": "352a56bb3823040f19f936dd5e277340cd304da03e5b00c0959800a72a9f55ac",
"x86_64-pc-windows-msvc-0.7.14": "f9ac952c69d32b2263ba19ba93d18d9e708dcb9bddb8124555bbda96d6d5168f",
"x86_64-unknown-linux-gnu-0.7.14": "2b38641d02bf107c5099f09778fda93bbaa4a4a2ee44ba303a4097102254e5e5",
"x86_64-unknown-linux-musl-0.7.14": "8c62a823744630e6cf3fdf0bf38c4fe4558bfcbe082b076a76446a3aab2af5f5",
"aarch64-apple-darwin-0.7.13": "721f532b73171586574298d4311a91d5ea2c802ef4db3ebafc434239330090c6",
"aarch64-pc-windows-msvc-0.7.13": "bb40708ad549ad6a12209cb139dd751bf0ede41deb679ce7513ce197bd9ef234",
"aarch64-unknown-linux-gnu-0.7.13": "0b2ad9fe4295881615295add8cc5daa02549d29cc9a61f0578e397efcf12f08f",
"aarch64-unknown-linux-musl-0.7.13": "52baba71881c978d32b7c32216ad0cde4546a4dc62e606c9834ec4616c1610eb",
"arm-unknown-linux-musleabihf-0.7.13": "ff2b11fff489301f9d55c851b9ebce7ca5530d743d2c0a3861cc45896715ea9b",
"armv7-unknown-linux-gnueabihf-0.7.13": "903350811ee31b2b758c8afb853490c27a34382a535b236739705b104bc13894",
"armv7-unknown-linux-musleabihf-0.7.13": "7e3b2aa966c54ced0fcd9febea6b913ee7ea12ee85246513895f199ab13296a8",
"i686-pc-windows-msvc-0.7.13": "5cf71014fde208ee0833026b3828007f8eaf514ec003784dc1ae92633877179b",
"i686-unknown-linux-gnu-0.7.13": "ff031258ff08b3aca46648398e21fe9679744501e3c9a928c8e42d596a708bbc",
"i686-unknown-linux-musl-0.7.13": "41851d695bb5401bce5af81a156d63215087cf8e8e1275e69dd96de4bfa30c26",
"powerpc64-unknown-linux-gnu-0.7.13": "02a80ce1436bf673b0d7276bb24dea0bbc70958dc91e5fb04ad37ac515be7424",
"powerpc64le-unknown-linux-gnu-0.7.13": "60c8907cce089de97dcce732ae363eda0620f7196c25e8bd539f168b93f9e34c",
"riscv64gc-unknown-linux-gnu-0.7.13": "521a5235bc5a053dd7f0221c363544cef6d033064cc9d92dbb4ef19771000052",
"s390x-unknown-linux-gnu-0.7.13": "41e4b6093dd408b41dffb4c9e08c4aa31424ee4573ce9c95566c2617f7f2d0c6",
"x86_64-apple-darwin-0.7.13": "d785753ac092e25316180626aa691c5dfe1fb075290457ba4fdb72c7c5661321",
"x86_64-pc-windows-msvc-0.7.13": "e199b10bef1a7cc540014483e7f60f825a174988f41020e9d2a6b01bd60f0669",
"x86_64-unknown-linux-gnu-0.7.13": "909278eb197c5ed0e9b5f16317d1255270d1f9ea4196e7179ce934d48c4c2545",
"x86_64-unknown-linux-musl-0.7.13": "560bb64e060354e45138d7dd47c8dd48a4f7a349af5520d29cd3c704e79f286c",
"aarch64-apple-darwin-0.7.12": "189108cd026c25d40fb086eaaf320aac52c3f7aab63e185bac51305a1576fc7e",
"aarch64-pc-windows-msvc-0.7.12": "fbedfb71356d0e63c86b507cf1434a58406afe6eac77aee9d37b8282d4006e14",
"aarch64-unknown-linux-gnu-0.7.12": "23233d2e950ed8187858350da5c6803b14cbbeaef780382093bb2f2bc4ba1200",
"aarch64-unknown-linux-musl-0.7.12": "0589f6d27bbbe2e205aa6fc25e4cd28ab97e984cdba20842de8d3a00714e13e9",
"arm-unknown-linux-musleabihf-0.7.12": "6996e32ac1c37af33a4c6e40ab0126a82d62ccb94edb164b7dae554be4dd8336",
"armv7-unknown-linux-gnueabihf-0.7.12": "aee2dc202deed7e15984d71eb59803111052fbe8c0fb3ffad27ae0a6d290d74f",
"armv7-unknown-linux-musleabihf-0.7.12": "87bd7676d31858d9e1937ab69d13e30cc93ebb09fb246dde6a8f183e9570a82c",
"i686-pc-windows-msvc-0.7.12": "c7ec71ba64d01ef3cdb89553445de94ab4fd7375c8f2a7068353aec7a3a06342",
"i686-unknown-linux-gnu-0.7.12": "d1def68ff10b30327a5cacab497664aaf8338e192ba277b76f45dad63208f2e2",
"i686-unknown-linux-musl-0.7.12": "f56a0a9c84b35b7e910c4d628c667b843fb3fa1d9dddb0bbf4bf3f21eeaee07f",
"powerpc64-unknown-linux-gnu-0.7.12": "6eafb546d1b8642a5c27e4dfda213659fee41b0fd150b4c33ef96c917e595344",
"powerpc64le-unknown-linux-gnu-0.7.12": "0d550348d7a0f54352824cd751dc7baea0c23b17d744a5a7784b6b825e5fc909",
"s390x-unknown-linux-gnu-0.7.12": "76f5a2c1c13446233312d140136f3f55fa7c162176327830eb109ccaae6c9cea",
"x86_64-apple-darwin-0.7.12": "a338354420dba089218c05d4d585e4bcf174a65fe53260592b2af19ceec85835",
"x86_64-pc-windows-msvc-0.7.12": "2cf29c8ffaa2549aa0f86927b2510008e8ca3dcd2100277d86faf437382a371b",
"x86_64-unknown-linux-gnu-0.7.12": "735891fb553d0be129f3aa39dc8e9c4c49aaa76ec17f7dfb6a732e79a714873a",
"x86_64-unknown-linux-musl-0.7.12": "bb493f1e6ae426c06b5a103cb71aa60c678976d2377f0590644538658656c2a7",
"aarch64-apple-darwin-0.7.11": "b5f4cb27a3002d6590c3681377c6d826db0b52e2a9529c7144fcd53fec89ba79",
"aarch64-pc-windows-msvc-0.7.11": "856bac93344a6980b2703a4143f26fc042c941b02f11ed21f55ec6be3fdfde87",
"aarch64-unknown-linux-gnu-0.7.11": "80cf695c4e10b532e9db3c7fbbcfb0f8356f2e70e7a4a5040e005f0fae70923d",
"aarch64-unknown-linux-musl-0.7.11": "2ad20d143c74d7f63d1c99db3999f239f045b7be041e23f6ac8b269c99fa54fe",
"arm-unknown-linux-musleabihf-0.7.11": "21fec46f09d96cd9f51378fe01ed050dd2032c1fef823f8bd81fa50a2337bbcc",
"armv7-unknown-linux-gnueabihf-0.7.11": "1a75aaff4695c07151d5b9abb50232ea9fb6f5ccc82d4b319abd8796605d9db8",
"armv7-unknown-linux-musleabihf-0.7.11": "431b3115ab8fb5e2210d01f29b7901e6eb1174ff65545ec49318d6d4adf4c802",
"i686-pc-windows-msvc-0.7.11": "985f5eabf42b8ad0166ae6b9f799564220fa932938a8401c890d5e07321ce7c0",
"i686-unknown-linux-gnu-0.7.11": "619e205d56594fc530dbde6c6a543dd094c796791a5e2cfcd3bb70fa5767bf9d",
"i686-unknown-linux-musl-0.7.11": "838c6336ba8e88818459b10c3520e83601b9c0a9850a209accef9782c050faad",
"powerpc64-unknown-linux-gnu-0.7.11": "769c7f32cbc2ad918ccf9ae661d99a6c0d0fd3a0056691832b4a79049a9d06ec",
"powerpc64le-unknown-linux-gnu-0.7.11": "c9bbbcc2d4f11c83e0edbff5868d95f07f81455adb6f2f909cdb9b992928101b",
"s390x-unknown-linux-gnu-0.7.11": "0e7b9b27e9fef1b42aa052173a2a47a2ec33bad82425237dfac402b7f69bd073",
"x86_64-apple-darwin-0.7.11": "97980b067dc3fea16534371b030eaf38554d701de5058004edcfd542a88a2e84",
"x86_64-pc-windows-msvc-0.7.11": "0f4ef69fde75bb8bcfba7ecf0a4134d8875578cd2e98c9fcfc21573e746c70ac",
"x86_64-unknown-linux-gnu-0.7.11": "df54b274e99b7ef26030dc21d105ce115bc21a644fc6a321bde9222cb1616de6",
"x86_64-unknown-linux-musl-0.7.11": "e4e8948645ebea1950a3c77574ce079dfe1c71547ba5a8a141d6e362fa036684",
"aarch64-apple-darwin-0.7.10": "316b80c19832ff4085748c3a20a3e05f36e1d19234e8b9399a6fd1c971241bce",
"aarch64-pc-windows-msvc-0.7.10": "1eed0f11bca79403648195f8ce257763d956e861cb73de98c480dae15358bb26",
"aarch64-unknown-linux-gnu-0.7.10": "8746acb754807050124c6dbcb05fcad2665a3f0cdb2a0fe9de528bd37b092656",
"aarch64-unknown-linux-musl-0.7.10": "f9000f08850a5c575d5fe1ddc2ec928ecc9f287ecdcd9fa1ea4e3f405b23d4a3",
"arm-unknown-linux-musleabihf-0.7.10": "657b1b8a534f7fe78e63aff56aac5bbcb21f6254df79825fe204d5c7c1219653",
"armv7-unknown-linux-gnueabihf-0.7.10": "1cf4a8f40abbd802a7b44fe9695da356701100d267eb3567c17db27e0a24cf69",
"armv7-unknown-linux-musleabihf-0.7.10": "5282b825f469295dc2b88c94eccd375a93135a279b0711cb10e615e7a71a0617",
"i686-pc-windows-msvc-0.7.10": "f3c62ff935685d9d4312b82d01ed386493b97c3d22bd434d943fc99ce9aef83a",
"i686-unknown-linux-gnu-0.7.10": "24a2a3eb0e89b74de6aac492516303747519439775d22254e838d33410ac27b2",
"i686-unknown-linux-musl-0.7.10": "e317d35af60b38ad32935390a83d12adc3ed7ffdbc2ccccd3039bf6cef650eb3",
"powerpc64-unknown-linux-gnu-0.7.10": "c1ab41ec53cd720179f3351b61b4ded73ec520804413b75051736829a125e4fe",
"powerpc64le-unknown-linux-gnu-0.7.10": "ce2c3fdf177facf6c77c5316bb54b9deaf498bee9f664e01a4030ecf27063ab1",
"s390x-unknown-linux-gnu-0.7.10": "b7603e3f4494e9093a86ace1103e3fcfa172a952989f0c7dca6eeac7f77be81f",
"x86_64-apple-darwin-0.7.10": "9123e8aa944654404787f80731ec08850c4e9b9129c0d0445c9e41438828b8b8",
"x86_64-pc-windows-msvc-0.7.10": "1568a71af55e9d9bc4a050ec79134a342a8a3765a73f6b7ec26490c2814f8797",
"x86_64-unknown-linux-gnu-0.7.10": "ff2ef46298963fee8104ccb3c0a4ecbc97c057ac6a0bc5fec7636c855384252e",
"x86_64-unknown-linux-musl-0.7.10": "b2cf1f63e83a873652ffef032681bbbe1469e3bab617f7e715e09529c30f5689",
"aarch64-apple-darwin-0.7.9": "7a8b716a2b5905fb89512371ce6c6dbc0dd0344185bd1cd93a3fe27516eef7ec",
"aarch64-pc-windows-msvc-0.7.9": "63c0990b9c49dc9f9a92aaaa27ba627cbf9cf6b2e42766588ef6f880208893de",
"aarch64-unknown-linux-gnu-0.7.9": "23242a8051e2191ed8d61f71a6792f2fc069ef18e6cdf07dedac3d3f648643c5",
"aarch64-unknown-linux-musl-0.7.9": "60f30508c9002b2b7af55d70db2741cf7ea24c066ced710ad09681a6d2d19b3a",
"arm-unknown-linux-musleabihf-0.7.9": "57d8e43e257f0ccd9df2b8581338c5145b9937aba53e9c9bb81b31044b720c61",
"armv7-unknown-linux-gnueabihf-0.7.9": "83353ee7e1724083ea94d7f488fa34c9159995a3996f87017fdf72e422c93242",
"armv7-unknown-linux-musleabihf-0.7.9": "b2d8d81bc2abbdd857bad7cd3bf0d36c5155c0681aae8ac9fb8f49d54b95b3f2",
"i686-pc-windows-msvc-0.7.9": "b5dc0dc10d9dd0dcf5729a94e98538418760d13877d4d4b1bc4efa9926280e78",
"i686-unknown-linux-gnu-0.7.9": "fb8f1a7cb593c819c0fff71afa2dc480237ca80a3f5d8d433c8b51d2ae90ffdf",
"i686-unknown-linux-musl-0.7.9": "a77592be13fea81ca42b2b7815784e769e1fd9ff476cfab69f2652823f99c55e",
"powerpc64-unknown-linux-gnu-0.7.9": "26fee4867c158c04dd3a51ff9a23b4220a9ba69fae2e71be618d2cfa48164d96",
"powerpc64le-unknown-linux-gnu-0.7.9": "d588fbb01cacccb7fd6e0f101d34282ebb0569381f967d332f8072055e39840e",
"s390x-unknown-linux-gnu-0.7.9": "d823d68ff662b7e59c6791281427bf1019dae791a964ffae31ae1d2d723dfc08",
"x86_64-apple-darwin-0.7.9": "a4c084568850588b77e4a34c21b7df5c8cf9e2160b4d614307ed92fa12411742",
"x86_64-pc-windows-msvc-0.7.9": "f91d8a3322a10caf257fd416807bd8d2801285b80b46ee37f2d0c6e426b8822c",
"x86_64-unknown-linux-gnu-0.7.9": "b8450a419c0bcc85841bbed8511eb59e2a5683ddd3f813f2b98b97babf6b1b8b",
"x86_64-unknown-linux-musl-0.7.9": "95918a1e1faf851a39cad402f1a77318e8fc90b7f829833ebaff27de9722d60e",
"aarch64-apple-darwin-0.7.8": "ad6b3825ba277de70b9d0a37055f7d828f3f37416aee1cde65000f330efd4587",
"aarch64-pc-windows-msvc-0.7.8": "e43448e5e3267dffb6bbdc30ffa291f8db664d1da9d084c44f99dc568f459e0a",
"aarch64-unknown-linux-gnu-0.7.8": "da9e1c97f1452b25c8955127c92da7b68be228ad0b43bf50bba4dadb25c8b337",
"aarch64-unknown-linux-musl-0.7.8": "4d18efb46f93fa942dc4c212dea3b6b07e3db62fe57d0c3d08de6bf5d9f9bb51",
"arm-unknown-linux-musleabihf-0.7.8": "133b1c3fb850ec496bfb4ef84379bfaeff1d2c322114a0984d8a5c2e10e63028",
"armv7-unknown-linux-gnueabihf-0.7.8": "7d61c6e18e81447482dc80c090c65a6615a1232512899943566baf2808ca37bb",
"armv7-unknown-linux-musleabihf-0.7.8": "0b6d6afcdb7c78e5df42cb2ab0929d2bec2654a350a8efacc6f95e830a31eb6e",
"i686-pc-windows-msvc-0.7.8": "0d4b01372ca972543cd40366bb5480bb457e79dcf45b5f662721d709d6932dbd",
"i686-unknown-linux-gnu-0.7.8": "db1c60961aea7a7f8c64a098801e0138e761b7556d1c1691fc4f3f771f0e47ae",
"i686-unknown-linux-musl-0.7.8": "b765eb1817bc1d545f4860eff0adeb0c7907ea66be14536653192e588386b308",
"powerpc64-unknown-linux-gnu-0.7.8": "2c894b104195ab194af05c6ad756ce8746a349a8620c83888207db5fccf29a8f",
"powerpc64le-unknown-linux-gnu-0.7.8": "4b0d93385685f756068f76af1871dcb7cc8f427ab6d650afc07493d06dca71db",
"s390x-unknown-linux-gnu-0.7.8": "e58fc9f6d846ccbf50d9bcf27920ff4bc061541df8a6a3aa6f13be24981e0772",
"x86_64-apple-darwin-0.7.8": "f046249639014eb70b43cbaf83eb6f56aac724ada354f9b9aad65f9960737920",
"x86_64-pc-windows-msvc-0.7.8": "355736ddf9a01ab9da918b35470027c12128d7ed1d7f54f54771507d79529679",
"x86_64-unknown-linux-gnu-0.7.8": "285981409c746508c1fd125f66a1ea654e487bf1e4d9f45371a062338f788adb",
"x86_64-unknown-linux-musl-0.7.8": "8a707e45e0d1a8bdbc5bd1af0ae7d19ffab55f3722c5e73471039561900e3d48",
"aarch64-apple-darwin-0.7.7": "6a06eaa8165d5abd89c3dc37ffbe1db60fcf49a87d7c612bfca7e87a1514695d",
"aarch64-pc-windows-msvc-0.7.7": "e86cd59f2569f4bf475e5ad944910142c0ab107ad12613429ad8873a6f41087f",
"aarch64-unknown-linux-gnu-0.7.7": "013061d4d33385e9a3fc52df18d22334f20f12616970b0d81583d5125ce8d6fa",
@@ -124573,7 +124694,8 @@ var __importStar = (this && this.__importStar) || (function () {
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.tryGetFromToolCache = tryGetFromToolCache;
exports.downloadVersion = downloadVersion;
exports.downloadVersionFromGithub = downloadVersionFromGithub;
exports.downloadVersionFromManifest = downloadVersionFromManifest;
exports.resolveVersion = resolveVersion;
const core = __importStar(__nccwpck_require__(37484));
const tc = __importStar(__nccwpck_require__(33472));
@@ -124583,6 +124705,7 @@ const node_fs_1 = __nccwpck_require__(73024);
const constants_1 = __nccwpck_require__(56156);
const checksum_1 = __nccwpck_require__(95391);
const octokit_1 = __nccwpck_require__(73352);
const version_manifest_1 = __nccwpck_require__(54000);
function tryGetFromToolCache(arch, version) {
core.debug(`Trying to get uv from tool cache for ${version}...`);
const cachedVersions = tc.findAllVersions(constants_1.TOOL_CACHE_NAME, arch);
@@ -124594,18 +124717,26 @@ function tryGetFromToolCache(arch, version) {
const installedPath = tc.find(constants_1.TOOL_CACHE_NAME, resolvedVersion, arch);
return { version: resolvedVersion, installedPath };
}
async function downloadVersion(serverUrl, platform, arch, version, checkSum, githubToken) {
const resolvedVersion = await resolveVersion(version, githubToken);
async function downloadVersionFromGithub(serverUrl, platform, arch, version, checkSum, githubToken) {
const artifact = `uv-${arch}-${platform}`;
let extension = ".tar.gz";
if (platform === "pc-windows-msvc") {
extension = ".zip";
const extension = getExtension(platform);
const downloadUrl = `${serverUrl}/${constants_1.OWNER}/${constants_1.REPO}/releases/download/${version}/${artifact}${extension}`;
return await downloadVersion(downloadUrl, artifact, platform, arch, version, checkSum, githubToken);
}
async function downloadVersionFromManifest(manifestUrl, platform, arch, version, checkSum, githubToken) {
const downloadUrl = await (0, version_manifest_1.getDownloadUrl)(manifestUrl, version, arch, platform);
if (!downloadUrl) {
core.info(`manifest-file does not contain version ${version}, arch ${arch}, platform ${platform}. Falling back to GitHub releases.`);
return await downloadVersionFromGithub("https://github.com", platform, arch, version, checkSum, githubToken);
}
const downloadUrl = `${serverUrl}/${constants_1.OWNER}/${constants_1.REPO}/releases/download/${resolvedVersion}/${artifact}${extension}`;
return await downloadVersion(downloadUrl, `uv-${arch}-${platform}`, platform, arch, version, checkSum, githubToken);
}
async function downloadVersion(downloadUrl, artifactName, platform, arch, version, checkSum, githubToken) {
core.info(`Downloading uv from "${downloadUrl}" ...`);
const downloadPath = await tc.downloadTool(downloadUrl, undefined, githubToken);
await (0, checksum_1.validateChecksum)(checkSum, downloadPath, arch, platform, resolvedVersion);
await (0, checksum_1.validateChecksum)(checkSum, downloadPath, arch, platform, version);
let uvDir;
const extension = getExtension(platform);
if (platform === "pc-windows-msvc") {
const fullPathWithExtension = `${downloadPath}${extension}`;
await node_fs_1.promises.copyFile(downloadPath, fullPathWithExtension);
@@ -124614,16 +124745,29 @@ async function downloadVersion(serverUrl, platform, arch, version, checkSum, git
}
else {
const extractedDir = await tc.extractTar(downloadPath);
uvDir = path.join(extractedDir, artifact);
uvDir = path.join(extractedDir, artifactName);
}
const cachedToolDir = await tc.cacheDir(uvDir, constants_1.TOOL_CACHE_NAME, resolvedVersion, arch);
return { version: resolvedVersion, cachedToolDir };
const cachedToolDir = await tc.cacheDir(uvDir, constants_1.TOOL_CACHE_NAME, version, arch);
return { version: version, cachedToolDir };
}
async function resolveVersion(versionInput, githubToken) {
function getExtension(platform) {
return platform === "pc-windows-msvc" ? ".zip" : ".tar.gz";
}
async function resolveVersion(versionInput, manifestFile, githubToken) {
core.debug(`Resolving version: ${versionInput}`);
const version = versionInput === "latest"
? await getLatestVersion(githubToken)
: versionInput;
let version;
if (manifestFile) {
version =
versionInput === "latest"
? await (0, version_manifest_1.getLatestKnownVersion)(manifestFile)
: versionInput;
}
else {
version =
versionInput === "latest"
? await getLatestVersion(githubToken)
: versionInput;
}
if (tc.isExplicitVersion(version)) {
core.debug(`Version ${version} is an explicit version.`);
return version;
@@ -124704,6 +124848,110 @@ function maxSatisfying(versions, version) {
}
/***/ }),
/***/ 54000:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getLatestKnownVersion = getLatestKnownVersion;
exports.getDownloadUrl = getDownloadUrl;
exports.updateVersionManifest = updateVersionManifest;
const node_fs_1 = __nccwpck_require__(73024);
const core = __importStar(__nccwpck_require__(37484));
const semver = __importStar(__nccwpck_require__(39318));
const fetch_1 = __nccwpck_require__(3385);
const node_path_1 = __nccwpck_require__(76760);
const localManifestFile = (0, node_path_1.join)(__dirname, "..", "..", "version-manifest.json");
async function getLatestKnownVersion(manifestUrl) {
const manifestEntries = await getManifestEntries(manifestUrl);
return manifestEntries.reduce((a, b) => semver.gt(a.version, b.version) ? a : b).version;
}
async function getDownloadUrl(manifestUrl, version, arch, platform) {
const manifestEntries = await getManifestEntries(manifestUrl);
const entry = manifestEntries.find((entry) => entry.version === version &&
entry.arch === arch &&
entry.platform === platform);
return entry ? entry.downloadUrl : undefined;
}
async function getManifestEntries(manifestUrl) {
let data;
if (manifestUrl !== undefined) {
core.info(`Fetching manifest-file from: ${manifestUrl}`);
const response = await (0, fetch_1.fetch)(manifestUrl, {});
if (!response.ok) {
throw new Error(`Failed to fetch manifest-file: ${response.status} ${response.statusText}`);
}
data = await response.text();
}
else {
core.info("manifest-file not provided, reading from local file.");
const fileContent = await node_fs_1.promises.readFile(localManifestFile);
data = fileContent.toString();
}
return JSON.parse(data);
}
async function updateVersionManifest(manifestUrl, downloadUrls) {
const manifest = [];
for (const downloadUrl of downloadUrls) {
const urlParts = downloadUrl.split("/");
const version = urlParts[urlParts.length - 2];
const artifactName = urlParts[urlParts.length - 1];
if (!artifactName.startsWith("uv-")) {
continue;
}
if (artifactName.startsWith("uv-installer")) {
continue;
}
const artifactParts = artifactName.split(".")[0].split("-");
manifest.push({
version: version,
artifactName: artifactName,
arch: artifactParts[1],
platform: artifactName.split(`uv-${artifactParts[1]}-`)[1].split(".")[0],
downloadUrl: downloadUrl,
});
}
core.debug(`Updating manifest-file: ${JSON.stringify(manifest)}`);
await node_fs_1.promises.writeFile(manifestUrl, JSON.stringify(manifest));
}
/***/ }),
/***/ 99660:
@@ -124885,7 +125133,7 @@ function detectEmptyWorkdir() {
}
}
async function setupUv(platform, arch, checkSum, githubToken) {
const resolvedVersion = await determineVersion();
const resolvedVersion = await determineVersion(inputs_1.manifestFile);
const toolCacheResult = (0, download_version_1.tryGetFromToolCache)(arch, resolvedVersion);
if (toolCacheResult.installedPath) {
core.info(`Found uv in tool-cache for ${toolCacheResult.version}`);
@@ -124894,22 +125142,29 @@ async function setupUv(platform, arch, checkSum, githubToken) {
version: toolCacheResult.version,
};
}
const downloadVersionResult = await (0, download_version_1.downloadVersion)(inputs_1.serverUrl, platform, arch, resolvedVersion, checkSum, githubToken);
let downloadVersionResult;
if (inputs_1.serverUrl !== "https://github.com") {
core.warning("The input server-url is deprecated. Please use manifest-file instead.");
downloadVersionResult = await (0, download_version_1.downloadVersionFromGithub)(inputs_1.serverUrl, platform, arch, resolvedVersion, checkSum, githubToken);
}
else {
downloadVersionResult = await (0, download_version_1.downloadVersionFromManifest)(inputs_1.manifestFile, platform, arch, resolvedVersion, checkSum, githubToken);
}
return {
uvDir: downloadVersionResult.cachedToolDir,
version: downloadVersionResult.version,
};
}
async function determineVersion() {
async function determineVersion(manifestFile) {
if (inputs_1.version !== "") {
return await (0, download_version_1.resolveVersion)(inputs_1.version, inputs_1.githubToken);
return await (0, download_version_1.resolveVersion)(inputs_1.version, manifestFile, inputs_1.githubToken);
}
const versionFromUvToml = (0, config_file_1.getUvVersionFromConfigFile)(`${inputs_1.workingDirectory}${path.sep}uv.toml`);
const versionFromPyproject = (0, config_file_1.getUvVersionFromConfigFile)(`${inputs_1.workingDirectory}${path.sep}pyproject.toml`);
if (versionFromUvToml === undefined && versionFromPyproject === undefined) {
core.info("Could not determine uv version from uv.toml or pyproject.toml. Falling back to latest.");
}
return await (0, download_version_1.resolveVersion)(versionFromUvToml || versionFromPyproject || "latest", inputs_1.githubToken);
return await (0, download_version_1.resolveVersion)(versionFromUvToml || versionFromPyproject || "latest", manifestFile, inputs_1.githubToken);
}
function addUvToPathAndOutput(cachedPath) {
core.setOutput("uv-path", `${cachedPath}${path.sep}uv`);
@@ -125071,6 +125326,35 @@ exports.OWNER = "astral-sh";
exports.TOOL_CACHE_NAME = "uv";
/***/ }),
/***/ 3385:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.fetch = void 0;
exports.getProxyAgent = getProxyAgent;
const undici_1 = __nccwpck_require__(46752);
function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_proxy;
if (httpProxy) {
return new undici_1.ProxyAgent(httpProxy);
}
const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
if (httpsProxy) {
return new undici_1.ProxyAgent(httpsProxy);
}
return undefined;
}
const fetch = async (url, opts) => await (0, undici_1.fetch)(url, {
dispatcher: getProxyAgent(),
...opts,
});
exports.fetch = fetch;
/***/ }),
/***/ 9612:
@@ -125115,7 +125399,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.githubToken = exports.serverUrl = exports.toolDir = exports.toolBinDir = exports.ignoreEmptyWorkdir = exports.ignoreNothingToCache = exports.pruneCache = exports.cacheDependencyGlob = exports.cacheLocalPath = exports.cacheSuffix = exports.enableCache = exports.checkSum = exports.workingDirectory = exports.activateEnvironment = exports.pythonVersion = exports.version = void 0;
exports.manifestFile = exports.githubToken = exports.serverUrl = exports.toolDir = exports.toolBinDir = exports.ignoreEmptyWorkdir = exports.ignoreNothingToCache = exports.pruneCache = exports.cacheDependencyGlob = exports.cacheLocalPath = exports.cacheSuffix = exports.enableCache = exports.checkSum = exports.workingDirectory = exports.activateEnvironment = exports.pythonVersion = exports.version = void 0;
const core = __importStar(__nccwpck_require__(37484));
const node_path_1 = __importDefault(__nccwpck_require__(76760));
exports.version = core.getInput("version");
@@ -125134,6 +125418,7 @@ exports.toolBinDir = getToolBinDir();
exports.toolDir = getToolDir();
exports.serverUrl = core.getInput("server-url");
exports.githubToken = core.getInput("github-token");
exports.manifestFile = getManifestFile();
function getEnableCache() {
const enableCacheInput = core.getInput("enable-cache");
if (enableCacheInput === "auto") {
@@ -125189,6 +125474,13 @@ function expandTilde(input) {
}
return input;
}
function getManifestFile() {
const manifestFileInput = core.getInput("manifest-file");
if (manifestFileInput !== "") {
return manifestFileInput;
}
return undefined;
}
/***/ }),
@@ -125199,38 +125491,21 @@ function expandTilde(input) {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Octokit = exports.customFetch = void 0;
exports.getProxyAgent = getProxyAgent;
exports.Octokit = void 0;
const core_1 = __nccwpck_require__(60767);
const plugin_paginate_rest_1 = __nccwpck_require__(93779);
const plugin_rest_endpoint_methods_1 = __nccwpck_require__(49210);
const undici_1 = __nccwpck_require__(46752);
const fetch_1 = __nccwpck_require__(3385);
const DEFAULTS = {
baseUrl: "https://api.github.com",
userAgent: "setup-uv",
};
function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_prox;
if (httpProxy) {
return new undici_1.ProxyAgent(httpProxy);
}
const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
if (httpsProxy) {
return new undici_1.ProxyAgent(httpsProxy);
}
return undefined;
}
const customFetch = async (url, opts) => await (0, undici_1.fetch)(url, {
dispatcher: getProxyAgent(),
...opts,
});
exports.customFetch = customFetch;
exports.Octokit = core_1.Octokit.plugin(plugin_paginate_rest_1.paginateRest, plugin_rest_endpoint_methods_1.legacyRestEndpointMethods).defaults(function buildDefaults(options) {
return {
...DEFAULTS,
...options,
request: {
fetch: exports.customFetch,
fetch: fetch_1.fetch,
...options.request,
},
};

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

@@ -59221,6 +59221,127 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.KNOWN_CHECKSUMS = void 0;
// AUTOGENERATED_DO_NOT_EDIT
exports.KNOWN_CHECKSUMS = {
"aarch64-apple-darwin-0.7.14": "7cb9cb6b3005a16356493887d7e7e297237b754b5753b91e826ada98ab2da172",
"aarch64-pc-windows-msvc-0.7.14": "f28f27e529e30e96e7b289b724c8229cfc5ca25312c23bdae089d6998ffd0aae",
"aarch64-unknown-linux-gnu-0.7.14": "c0932f428d24d87aaad6a6b7ad48aa09f260d2da5c69e877acd87c3ac90fbbad",
"aarch64-unknown-linux-musl-0.7.14": "30e41b1f68b3e57c1375c0b2e7fe932a9eb5487fbcef7c4c7d03def3e05b9f7e",
"arm-unknown-linux-musleabihf-0.7.14": "3b494d3d6a892d9c03d1fa6dcec8ac6077653939a6645570ab6f1f40adbd0b3c",
"armv7-unknown-linux-gnueabihf-0.7.14": "d5d1f6c49559914678267ce9f3a57528ab45e26e907a816736306b4f10a7b4b8",
"armv7-unknown-linux-musleabihf-0.7.14": "0016d3138edc52de9f2f4b0587afb6b579dc3bb3abfe2df151f97cc43a4ab421",
"i686-pc-windows-msvc-0.7.14": "42391f3a71229342b17d944e956d116aabc5147b0ed28a26c59601feac1f24cd",
"i686-unknown-linux-gnu-0.7.14": "71c358c315da7ddd2de334fe52a54719f9bdac8d6970e7966e2d080ae73ad028",
"i686-unknown-linux-musl-0.7.14": "d02de9391fe7b7d7e97dc2fa63a539201a31eb51d2c6a87b7570cf8a5ac22398",
"powerpc64-unknown-linux-gnu-0.7.14": "a2a43332f860520f7cd3d32f5a4ed5e0d938cc59e025372f8f1bfe47ea64355a",
"powerpc64le-unknown-linux-gnu-0.7.14": "3c545528b601a75baad5e1cc93cbf973123e9e6df6d905b432d91ba9ca769c0b",
"riscv64gc-unknown-linux-gnu-0.7.14": "4085fd8d4acb0a50a012fa63ae37e50472bf8742d58f4943529b5b5bda95a1a9",
"s390x-unknown-linux-gnu-0.7.14": "b20a69092f3171dd99445fe0d71e3ed3e67ff85346cb0723a43a1b8d55ce0f33",
"x86_64-apple-darwin-0.7.14": "352a56bb3823040f19f936dd5e277340cd304da03e5b00c0959800a72a9f55ac",
"x86_64-pc-windows-msvc-0.7.14": "f9ac952c69d32b2263ba19ba93d18d9e708dcb9bddb8124555bbda96d6d5168f",
"x86_64-unknown-linux-gnu-0.7.14": "2b38641d02bf107c5099f09778fda93bbaa4a4a2ee44ba303a4097102254e5e5",
"x86_64-unknown-linux-musl-0.7.14": "8c62a823744630e6cf3fdf0bf38c4fe4558bfcbe082b076a76446a3aab2af5f5",
"aarch64-apple-darwin-0.7.13": "721f532b73171586574298d4311a91d5ea2c802ef4db3ebafc434239330090c6",
"aarch64-pc-windows-msvc-0.7.13": "bb40708ad549ad6a12209cb139dd751bf0ede41deb679ce7513ce197bd9ef234",
"aarch64-unknown-linux-gnu-0.7.13": "0b2ad9fe4295881615295add8cc5daa02549d29cc9a61f0578e397efcf12f08f",
"aarch64-unknown-linux-musl-0.7.13": "52baba71881c978d32b7c32216ad0cde4546a4dc62e606c9834ec4616c1610eb",
"arm-unknown-linux-musleabihf-0.7.13": "ff2b11fff489301f9d55c851b9ebce7ca5530d743d2c0a3861cc45896715ea9b",
"armv7-unknown-linux-gnueabihf-0.7.13": "903350811ee31b2b758c8afb853490c27a34382a535b236739705b104bc13894",
"armv7-unknown-linux-musleabihf-0.7.13": "7e3b2aa966c54ced0fcd9febea6b913ee7ea12ee85246513895f199ab13296a8",
"i686-pc-windows-msvc-0.7.13": "5cf71014fde208ee0833026b3828007f8eaf514ec003784dc1ae92633877179b",
"i686-unknown-linux-gnu-0.7.13": "ff031258ff08b3aca46648398e21fe9679744501e3c9a928c8e42d596a708bbc",
"i686-unknown-linux-musl-0.7.13": "41851d695bb5401bce5af81a156d63215087cf8e8e1275e69dd96de4bfa30c26",
"powerpc64-unknown-linux-gnu-0.7.13": "02a80ce1436bf673b0d7276bb24dea0bbc70958dc91e5fb04ad37ac515be7424",
"powerpc64le-unknown-linux-gnu-0.7.13": "60c8907cce089de97dcce732ae363eda0620f7196c25e8bd539f168b93f9e34c",
"riscv64gc-unknown-linux-gnu-0.7.13": "521a5235bc5a053dd7f0221c363544cef6d033064cc9d92dbb4ef19771000052",
"s390x-unknown-linux-gnu-0.7.13": "41e4b6093dd408b41dffb4c9e08c4aa31424ee4573ce9c95566c2617f7f2d0c6",
"x86_64-apple-darwin-0.7.13": "d785753ac092e25316180626aa691c5dfe1fb075290457ba4fdb72c7c5661321",
"x86_64-pc-windows-msvc-0.7.13": "e199b10bef1a7cc540014483e7f60f825a174988f41020e9d2a6b01bd60f0669",
"x86_64-unknown-linux-gnu-0.7.13": "909278eb197c5ed0e9b5f16317d1255270d1f9ea4196e7179ce934d48c4c2545",
"x86_64-unknown-linux-musl-0.7.13": "560bb64e060354e45138d7dd47c8dd48a4f7a349af5520d29cd3c704e79f286c",
"aarch64-apple-darwin-0.7.12": "189108cd026c25d40fb086eaaf320aac52c3f7aab63e185bac51305a1576fc7e",
"aarch64-pc-windows-msvc-0.7.12": "fbedfb71356d0e63c86b507cf1434a58406afe6eac77aee9d37b8282d4006e14",
"aarch64-unknown-linux-gnu-0.7.12": "23233d2e950ed8187858350da5c6803b14cbbeaef780382093bb2f2bc4ba1200",
"aarch64-unknown-linux-musl-0.7.12": "0589f6d27bbbe2e205aa6fc25e4cd28ab97e984cdba20842de8d3a00714e13e9",
"arm-unknown-linux-musleabihf-0.7.12": "6996e32ac1c37af33a4c6e40ab0126a82d62ccb94edb164b7dae554be4dd8336",
"armv7-unknown-linux-gnueabihf-0.7.12": "aee2dc202deed7e15984d71eb59803111052fbe8c0fb3ffad27ae0a6d290d74f",
"armv7-unknown-linux-musleabihf-0.7.12": "87bd7676d31858d9e1937ab69d13e30cc93ebb09fb246dde6a8f183e9570a82c",
"i686-pc-windows-msvc-0.7.12": "c7ec71ba64d01ef3cdb89553445de94ab4fd7375c8f2a7068353aec7a3a06342",
"i686-unknown-linux-gnu-0.7.12": "d1def68ff10b30327a5cacab497664aaf8338e192ba277b76f45dad63208f2e2",
"i686-unknown-linux-musl-0.7.12": "f56a0a9c84b35b7e910c4d628c667b843fb3fa1d9dddb0bbf4bf3f21eeaee07f",
"powerpc64-unknown-linux-gnu-0.7.12": "6eafb546d1b8642a5c27e4dfda213659fee41b0fd150b4c33ef96c917e595344",
"powerpc64le-unknown-linux-gnu-0.7.12": "0d550348d7a0f54352824cd751dc7baea0c23b17d744a5a7784b6b825e5fc909",
"s390x-unknown-linux-gnu-0.7.12": "76f5a2c1c13446233312d140136f3f55fa7c162176327830eb109ccaae6c9cea",
"x86_64-apple-darwin-0.7.12": "a338354420dba089218c05d4d585e4bcf174a65fe53260592b2af19ceec85835",
"x86_64-pc-windows-msvc-0.7.12": "2cf29c8ffaa2549aa0f86927b2510008e8ca3dcd2100277d86faf437382a371b",
"x86_64-unknown-linux-gnu-0.7.12": "735891fb553d0be129f3aa39dc8e9c4c49aaa76ec17f7dfb6a732e79a714873a",
"x86_64-unknown-linux-musl-0.7.12": "bb493f1e6ae426c06b5a103cb71aa60c678976d2377f0590644538658656c2a7",
"aarch64-apple-darwin-0.7.11": "b5f4cb27a3002d6590c3681377c6d826db0b52e2a9529c7144fcd53fec89ba79",
"aarch64-pc-windows-msvc-0.7.11": "856bac93344a6980b2703a4143f26fc042c941b02f11ed21f55ec6be3fdfde87",
"aarch64-unknown-linux-gnu-0.7.11": "80cf695c4e10b532e9db3c7fbbcfb0f8356f2e70e7a4a5040e005f0fae70923d",
"aarch64-unknown-linux-musl-0.7.11": "2ad20d143c74d7f63d1c99db3999f239f045b7be041e23f6ac8b269c99fa54fe",
"arm-unknown-linux-musleabihf-0.7.11": "21fec46f09d96cd9f51378fe01ed050dd2032c1fef823f8bd81fa50a2337bbcc",
"armv7-unknown-linux-gnueabihf-0.7.11": "1a75aaff4695c07151d5b9abb50232ea9fb6f5ccc82d4b319abd8796605d9db8",
"armv7-unknown-linux-musleabihf-0.7.11": "431b3115ab8fb5e2210d01f29b7901e6eb1174ff65545ec49318d6d4adf4c802",
"i686-pc-windows-msvc-0.7.11": "985f5eabf42b8ad0166ae6b9f799564220fa932938a8401c890d5e07321ce7c0",
"i686-unknown-linux-gnu-0.7.11": "619e205d56594fc530dbde6c6a543dd094c796791a5e2cfcd3bb70fa5767bf9d",
"i686-unknown-linux-musl-0.7.11": "838c6336ba8e88818459b10c3520e83601b9c0a9850a209accef9782c050faad",
"powerpc64-unknown-linux-gnu-0.7.11": "769c7f32cbc2ad918ccf9ae661d99a6c0d0fd3a0056691832b4a79049a9d06ec",
"powerpc64le-unknown-linux-gnu-0.7.11": "c9bbbcc2d4f11c83e0edbff5868d95f07f81455adb6f2f909cdb9b992928101b",
"s390x-unknown-linux-gnu-0.7.11": "0e7b9b27e9fef1b42aa052173a2a47a2ec33bad82425237dfac402b7f69bd073",
"x86_64-apple-darwin-0.7.11": "97980b067dc3fea16534371b030eaf38554d701de5058004edcfd542a88a2e84",
"x86_64-pc-windows-msvc-0.7.11": "0f4ef69fde75bb8bcfba7ecf0a4134d8875578cd2e98c9fcfc21573e746c70ac",
"x86_64-unknown-linux-gnu-0.7.11": "df54b274e99b7ef26030dc21d105ce115bc21a644fc6a321bde9222cb1616de6",
"x86_64-unknown-linux-musl-0.7.11": "e4e8948645ebea1950a3c77574ce079dfe1c71547ba5a8a141d6e362fa036684",
"aarch64-apple-darwin-0.7.10": "316b80c19832ff4085748c3a20a3e05f36e1d19234e8b9399a6fd1c971241bce",
"aarch64-pc-windows-msvc-0.7.10": "1eed0f11bca79403648195f8ce257763d956e861cb73de98c480dae15358bb26",
"aarch64-unknown-linux-gnu-0.7.10": "8746acb754807050124c6dbcb05fcad2665a3f0cdb2a0fe9de528bd37b092656",
"aarch64-unknown-linux-musl-0.7.10": "f9000f08850a5c575d5fe1ddc2ec928ecc9f287ecdcd9fa1ea4e3f405b23d4a3",
"arm-unknown-linux-musleabihf-0.7.10": "657b1b8a534f7fe78e63aff56aac5bbcb21f6254df79825fe204d5c7c1219653",
"armv7-unknown-linux-gnueabihf-0.7.10": "1cf4a8f40abbd802a7b44fe9695da356701100d267eb3567c17db27e0a24cf69",
"armv7-unknown-linux-musleabihf-0.7.10": "5282b825f469295dc2b88c94eccd375a93135a279b0711cb10e615e7a71a0617",
"i686-pc-windows-msvc-0.7.10": "f3c62ff935685d9d4312b82d01ed386493b97c3d22bd434d943fc99ce9aef83a",
"i686-unknown-linux-gnu-0.7.10": "24a2a3eb0e89b74de6aac492516303747519439775d22254e838d33410ac27b2",
"i686-unknown-linux-musl-0.7.10": "e317d35af60b38ad32935390a83d12adc3ed7ffdbc2ccccd3039bf6cef650eb3",
"powerpc64-unknown-linux-gnu-0.7.10": "c1ab41ec53cd720179f3351b61b4ded73ec520804413b75051736829a125e4fe",
"powerpc64le-unknown-linux-gnu-0.7.10": "ce2c3fdf177facf6c77c5316bb54b9deaf498bee9f664e01a4030ecf27063ab1",
"s390x-unknown-linux-gnu-0.7.10": "b7603e3f4494e9093a86ace1103e3fcfa172a952989f0c7dca6eeac7f77be81f",
"x86_64-apple-darwin-0.7.10": "9123e8aa944654404787f80731ec08850c4e9b9129c0d0445c9e41438828b8b8",
"x86_64-pc-windows-msvc-0.7.10": "1568a71af55e9d9bc4a050ec79134a342a8a3765a73f6b7ec26490c2814f8797",
"x86_64-unknown-linux-gnu-0.7.10": "ff2ef46298963fee8104ccb3c0a4ecbc97c057ac6a0bc5fec7636c855384252e",
"x86_64-unknown-linux-musl-0.7.10": "b2cf1f63e83a873652ffef032681bbbe1469e3bab617f7e715e09529c30f5689",
"aarch64-apple-darwin-0.7.9": "7a8b716a2b5905fb89512371ce6c6dbc0dd0344185bd1cd93a3fe27516eef7ec",
"aarch64-pc-windows-msvc-0.7.9": "63c0990b9c49dc9f9a92aaaa27ba627cbf9cf6b2e42766588ef6f880208893de",
"aarch64-unknown-linux-gnu-0.7.9": "23242a8051e2191ed8d61f71a6792f2fc069ef18e6cdf07dedac3d3f648643c5",
"aarch64-unknown-linux-musl-0.7.9": "60f30508c9002b2b7af55d70db2741cf7ea24c066ced710ad09681a6d2d19b3a",
"arm-unknown-linux-musleabihf-0.7.9": "57d8e43e257f0ccd9df2b8581338c5145b9937aba53e9c9bb81b31044b720c61",
"armv7-unknown-linux-gnueabihf-0.7.9": "83353ee7e1724083ea94d7f488fa34c9159995a3996f87017fdf72e422c93242",
"armv7-unknown-linux-musleabihf-0.7.9": "b2d8d81bc2abbdd857bad7cd3bf0d36c5155c0681aae8ac9fb8f49d54b95b3f2",
"i686-pc-windows-msvc-0.7.9": "b5dc0dc10d9dd0dcf5729a94e98538418760d13877d4d4b1bc4efa9926280e78",
"i686-unknown-linux-gnu-0.7.9": "fb8f1a7cb593c819c0fff71afa2dc480237ca80a3f5d8d433c8b51d2ae90ffdf",
"i686-unknown-linux-musl-0.7.9": "a77592be13fea81ca42b2b7815784e769e1fd9ff476cfab69f2652823f99c55e",
"powerpc64-unknown-linux-gnu-0.7.9": "26fee4867c158c04dd3a51ff9a23b4220a9ba69fae2e71be618d2cfa48164d96",
"powerpc64le-unknown-linux-gnu-0.7.9": "d588fbb01cacccb7fd6e0f101d34282ebb0569381f967d332f8072055e39840e",
"s390x-unknown-linux-gnu-0.7.9": "d823d68ff662b7e59c6791281427bf1019dae791a964ffae31ae1d2d723dfc08",
"x86_64-apple-darwin-0.7.9": "a4c084568850588b77e4a34c21b7df5c8cf9e2160b4d614307ed92fa12411742",
"x86_64-pc-windows-msvc-0.7.9": "f91d8a3322a10caf257fd416807bd8d2801285b80b46ee37f2d0c6e426b8822c",
"x86_64-unknown-linux-gnu-0.7.9": "b8450a419c0bcc85841bbed8511eb59e2a5683ddd3f813f2b98b97babf6b1b8b",
"x86_64-unknown-linux-musl-0.7.9": "95918a1e1faf851a39cad402f1a77318e8fc90b7f829833ebaff27de9722d60e",
"aarch64-apple-darwin-0.7.8": "ad6b3825ba277de70b9d0a37055f7d828f3f37416aee1cde65000f330efd4587",
"aarch64-pc-windows-msvc-0.7.8": "e43448e5e3267dffb6bbdc30ffa291f8db664d1da9d084c44f99dc568f459e0a",
"aarch64-unknown-linux-gnu-0.7.8": "da9e1c97f1452b25c8955127c92da7b68be228ad0b43bf50bba4dadb25c8b337",
"aarch64-unknown-linux-musl-0.7.8": "4d18efb46f93fa942dc4c212dea3b6b07e3db62fe57d0c3d08de6bf5d9f9bb51",
"arm-unknown-linux-musleabihf-0.7.8": "133b1c3fb850ec496bfb4ef84379bfaeff1d2c322114a0984d8a5c2e10e63028",
"armv7-unknown-linux-gnueabihf-0.7.8": "7d61c6e18e81447482dc80c090c65a6615a1232512899943566baf2808ca37bb",
"armv7-unknown-linux-musleabihf-0.7.8": "0b6d6afcdb7c78e5df42cb2ab0929d2bec2654a350a8efacc6f95e830a31eb6e",
"i686-pc-windows-msvc-0.7.8": "0d4b01372ca972543cd40366bb5480bb457e79dcf45b5f662721d709d6932dbd",
"i686-unknown-linux-gnu-0.7.8": "db1c60961aea7a7f8c64a098801e0138e761b7556d1c1691fc4f3f771f0e47ae",
"i686-unknown-linux-musl-0.7.8": "b765eb1817bc1d545f4860eff0adeb0c7907ea66be14536653192e588386b308",
"powerpc64-unknown-linux-gnu-0.7.8": "2c894b104195ab194af05c6ad756ce8746a349a8620c83888207db5fccf29a8f",
"powerpc64le-unknown-linux-gnu-0.7.8": "4b0d93385685f756068f76af1871dcb7cc8f427ab6d650afc07493d06dca71db",
"s390x-unknown-linux-gnu-0.7.8": "e58fc9f6d846ccbf50d9bcf27920ff4bc061541df8a6a3aa6f13be24981e0772",
"x86_64-apple-darwin-0.7.8": "f046249639014eb70b43cbaf83eb6f56aac724ada354f9b9aad65f9960737920",
"x86_64-pc-windows-msvc-0.7.8": "355736ddf9a01ab9da918b35470027c12128d7ed1d7f54f54771507d79529679",
"x86_64-unknown-linux-gnu-0.7.8": "285981409c746508c1fd125f66a1ea654e487bf1e4d9f45371a062338f788adb",
"x86_64-unknown-linux-musl-0.7.8": "8a707e45e0d1a8bdbc5bd1af0ae7d19ffab55f3722c5e73471039561900e3d48",
"aarch64-apple-darwin-0.7.7": "6a06eaa8165d5abd89c3dc37ffbe1db60fcf49a87d7c612bfca7e87a1514695d",
"aarch64-pc-windows-msvc-0.7.7": "e86cd59f2569f4bf475e5ad944910142c0ab107ad12613429ad8873a6f41087f",
"aarch64-unknown-linux-gnu-0.7.7": "013061d4d33385e9a3fc52df18d22334f20f12616970b0d81583d5125ce8d6fa",
@@ -62323,17 +62444,44 @@ var __importStar = (this && this.__importStar) || (function () {
})();
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getLatestKnownVersion = getLatestKnownVersion;
exports.getDownloadUrl = getDownloadUrl;
exports.updateVersionManifest = updateVersionManifest;
const node_fs_1 = __nccwpck_require__(3024);
const core = __importStar(__nccwpck_require__(7484));
const semver = __importStar(__nccwpck_require__(9318));
async function getLatestKnownVersion(versionManifestFile) {
const data = await node_fs_1.promises.readFile(versionManifestFile);
const versionManifestEntries = JSON.parse(data.toString());
return versionManifestEntries.reduce((a, b) => semver.gt(a.version, b.version) ? a : b).version;
const fetch_1 = __nccwpck_require__(3385);
const node_path_1 = __nccwpck_require__(6760);
const localManifestFile = (0, node_path_1.join)(__dirname, "..", "..", "version-manifest.json");
async function getLatestKnownVersion(manifestUrl) {
const manifestEntries = await getManifestEntries(manifestUrl);
return manifestEntries.reduce((a, b) => semver.gt(a.version, b.version) ? a : b).version;
}
async function updateVersionManifest(versionManifestFile, downloadUrls) {
const versionManifest = [];
async function getDownloadUrl(manifestUrl, version, arch, platform) {
const manifestEntries = await getManifestEntries(manifestUrl);
const entry = manifestEntries.find((entry) => entry.version === version &&
entry.arch === arch &&
entry.platform === platform);
return entry ? entry.downloadUrl : undefined;
}
async function getManifestEntries(manifestUrl) {
let data;
if (manifestUrl !== undefined) {
core.info(`Fetching manifest-file from: ${manifestUrl}`);
const response = await (0, fetch_1.fetch)(manifestUrl, {});
if (!response.ok) {
throw new Error(`Failed to fetch manifest-file: ${response.status} ${response.statusText}`);
}
data = await response.text();
}
else {
core.info("manifest-file not provided, reading from local file.");
const fileContent = await node_fs_1.promises.readFile(localManifestFile);
data = fileContent.toString();
}
return JSON.parse(data);
}
async function updateVersionManifest(manifestUrl, downloadUrls) {
const manifest = [];
for (const downloadUrl of downloadUrls) {
const urlParts = downloadUrl.split("/");
const version = urlParts[urlParts.length - 2];
@@ -62345,7 +62493,7 @@ async function updateVersionManifest(versionManifestFile, downloadUrls) {
continue;
}
const artifactParts = artifactName.split(".")[0].split("-");
versionManifest.push({
manifest.push({
version: version,
artifactName: artifactName,
arch: artifactParts[1],
@@ -62353,8 +62501,8 @@ async function updateVersionManifest(versionManifestFile, downloadUrls) {
downloadUrl: downloadUrl,
});
}
core.debug(`Updating version manifest: ${JSON.stringify(versionManifest)}`);
await node_fs_1.promises.writeFile(versionManifestFile, JSON.stringify(versionManifest));
core.debug(`Updating manifest-file: ${JSON.stringify(manifest)}`);
await node_fs_1.promises.writeFile(manifestUrl, JSON.stringify(manifest));
}
@@ -62407,7 +62555,7 @@ const update_known_checksums_1 = __nccwpck_require__(6182);
const version_manifest_1 = __nccwpck_require__(4000);
async function run() {
const checksumFilePath = process.argv.slice(2)[0];
const versionsManifestFilePath = process.argv.slice(2)[1];
const versionsManifestFile = process.argv.slice(2)[1];
const githubToken = process.argv.slice(2)[2];
const octokit = new octokit_1.Octokit({
auth: githubToken,
@@ -62416,7 +62564,7 @@ async function run() {
owner: constants_1.OWNER,
repo: constants_1.REPO,
});
const latestKnownVersion = await (0, version_manifest_1.getLatestKnownVersion)(versionsManifestFilePath);
const latestKnownVersion = await (0, version_manifest_1.getLatestKnownVersion)(undefined);
if (semver.lte(latestRelease.tag_name, latestKnownVersion)) {
core.info(`Latest release (${latestRelease.tag_name}) is not newer than the latest known version (${latestKnownVersion}). Skipping update.`);
return;
@@ -62432,7 +62580,7 @@ async function run() {
const artifactDownloadUrls = releases.flatMap((release) => release.assets
.filter((asset) => !asset.name.endsWith(".sha256"))
.map((asset) => asset.browser_download_url));
await (0, version_manifest_1.updateVersionManifest)(versionsManifestFilePath, artifactDownloadUrls);
await (0, version_manifest_1.updateVersionManifest)(versionsManifestFile, artifactDownloadUrls);
core.setOutput("latest-version", latestRelease.tag_name);
}
run();
@@ -62454,24 +62602,17 @@ exports.TOOL_CACHE_NAME = "uv";
/***/ }),
/***/ 3352:
/***/ 3385:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Octokit = exports.customFetch = void 0;
exports.fetch = void 0;
exports.getProxyAgent = getProxyAgent;
const core_1 = __nccwpck_require__(767);
const plugin_paginate_rest_1 = __nccwpck_require__(3779);
const plugin_rest_endpoint_methods_1 = __nccwpck_require__(9210);
const undici_1 = __nccwpck_require__(6752);
const DEFAULTS = {
baseUrl: "https://api.github.com",
userAgent: "setup-uv",
};
function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_prox;
const httpProxy = process.env.HTTP_PROXY || process.env.http_proxy;
if (httpProxy) {
return new undici_1.ProxyAgent(httpProxy);
}
@@ -62481,17 +62622,36 @@ function getProxyAgent() {
}
return undefined;
}
const customFetch = async (url, opts) => await (0, undici_1.fetch)(url, {
const fetch = async (url, opts) => await (0, undici_1.fetch)(url, {
dispatcher: getProxyAgent(),
...opts,
});
exports.customFetch = customFetch;
exports.fetch = fetch;
/***/ }),
/***/ 3352:
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Octokit = void 0;
const core_1 = __nccwpck_require__(767);
const plugin_paginate_rest_1 = __nccwpck_require__(3779);
const plugin_rest_endpoint_methods_1 = __nccwpck_require__(9210);
const fetch_1 = __nccwpck_require__(3385);
const DEFAULTS = {
baseUrl: "https://api.github.com",
userAgent: "setup-uv",
};
exports.Octokit = core_1.Octokit.plugin(plugin_paginate_rest_1.paginateRest, plugin_rest_endpoint_methods_1.legacyRestEndpointMethods).defaults(function buildDefaults(options) {
return {
...DEFAULTS,
...options,
request: {
fetch: exports.customFetch,
fetch: fetch_1.fetch,
...options.request,
},
};
@@ -62700,6 +62860,14 @@ module.exports = require("node:net");
/***/ }),
/***/ 6760:
/***/ ((module) => {
"use strict";
module.exports = require("node:path");
/***/ }),
/***/ 643:
/***/ ((module) => {

14
package-lock.json generated
View File

@@ -24,6 +24,7 @@
},
"devDependencies": {
"@biomejs/biome": "1.9.4",
"@types/js-yaml": "^4.0.9",
"@types/node": "^22.15.21",
"@types/semver": "^7.7.0",
"@vercel/ncc": "^0.38.3",
@@ -1825,6 +1826,13 @@
"@types/istanbul-lib-report": "*"
}
},
"node_modules/@types/js-yaml": {
"version": "4.0.9",
"resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz",
"integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==",
"dev": true,
"license": "MIT"
},
"node_modules/@types/node": {
"version": "22.15.21",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.21.tgz",
@@ -6082,6 +6090,12 @@
"@types/istanbul-lib-report": "*"
}
},
"@types/js-yaml": {
"version": "4.0.9",
"resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz",
"integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==",
"dev": true
},
"@types/node": {
"version": "22.15.21",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.21.tgz",

View File

@@ -38,6 +38,7 @@
},
"devDependencies": {
"@biomejs/biome": "1.9.4",
"@types/js-yaml": "^4.0.9",
"@types/node": "^22.15.21",
"@types/semver": "^7.7.0",
"@vercel/ncc": "^0.38.3",

View File

@@ -1,5 +1,247 @@
// AUTOGENERATED_DO_NOT_EDIT
export const KNOWN_CHECKSUMS: { [key: string]: string } = {
"aarch64-apple-darwin-0.7.14":
"7cb9cb6b3005a16356493887d7e7e297237b754b5753b91e826ada98ab2da172",
"aarch64-pc-windows-msvc-0.7.14":
"f28f27e529e30e96e7b289b724c8229cfc5ca25312c23bdae089d6998ffd0aae",
"aarch64-unknown-linux-gnu-0.7.14":
"c0932f428d24d87aaad6a6b7ad48aa09f260d2da5c69e877acd87c3ac90fbbad",
"aarch64-unknown-linux-musl-0.7.14":
"30e41b1f68b3e57c1375c0b2e7fe932a9eb5487fbcef7c4c7d03def3e05b9f7e",
"arm-unknown-linux-musleabihf-0.7.14":
"3b494d3d6a892d9c03d1fa6dcec8ac6077653939a6645570ab6f1f40adbd0b3c",
"armv7-unknown-linux-gnueabihf-0.7.14":
"d5d1f6c49559914678267ce9f3a57528ab45e26e907a816736306b4f10a7b4b8",
"armv7-unknown-linux-musleabihf-0.7.14":
"0016d3138edc52de9f2f4b0587afb6b579dc3bb3abfe2df151f97cc43a4ab421",
"i686-pc-windows-msvc-0.7.14":
"42391f3a71229342b17d944e956d116aabc5147b0ed28a26c59601feac1f24cd",
"i686-unknown-linux-gnu-0.7.14":
"71c358c315da7ddd2de334fe52a54719f9bdac8d6970e7966e2d080ae73ad028",
"i686-unknown-linux-musl-0.7.14":
"d02de9391fe7b7d7e97dc2fa63a539201a31eb51d2c6a87b7570cf8a5ac22398",
"powerpc64-unknown-linux-gnu-0.7.14":
"a2a43332f860520f7cd3d32f5a4ed5e0d938cc59e025372f8f1bfe47ea64355a",
"powerpc64le-unknown-linux-gnu-0.7.14":
"3c545528b601a75baad5e1cc93cbf973123e9e6df6d905b432d91ba9ca769c0b",
"riscv64gc-unknown-linux-gnu-0.7.14":
"4085fd8d4acb0a50a012fa63ae37e50472bf8742d58f4943529b5b5bda95a1a9",
"s390x-unknown-linux-gnu-0.7.14":
"b20a69092f3171dd99445fe0d71e3ed3e67ff85346cb0723a43a1b8d55ce0f33",
"x86_64-apple-darwin-0.7.14":
"352a56bb3823040f19f936dd5e277340cd304da03e5b00c0959800a72a9f55ac",
"x86_64-pc-windows-msvc-0.7.14":
"f9ac952c69d32b2263ba19ba93d18d9e708dcb9bddb8124555bbda96d6d5168f",
"x86_64-unknown-linux-gnu-0.7.14":
"2b38641d02bf107c5099f09778fda93bbaa4a4a2ee44ba303a4097102254e5e5",
"x86_64-unknown-linux-musl-0.7.14":
"8c62a823744630e6cf3fdf0bf38c4fe4558bfcbe082b076a76446a3aab2af5f5",
"aarch64-apple-darwin-0.7.13":
"721f532b73171586574298d4311a91d5ea2c802ef4db3ebafc434239330090c6",
"aarch64-pc-windows-msvc-0.7.13":
"bb40708ad549ad6a12209cb139dd751bf0ede41deb679ce7513ce197bd9ef234",
"aarch64-unknown-linux-gnu-0.7.13":
"0b2ad9fe4295881615295add8cc5daa02549d29cc9a61f0578e397efcf12f08f",
"aarch64-unknown-linux-musl-0.7.13":
"52baba71881c978d32b7c32216ad0cde4546a4dc62e606c9834ec4616c1610eb",
"arm-unknown-linux-musleabihf-0.7.13":
"ff2b11fff489301f9d55c851b9ebce7ca5530d743d2c0a3861cc45896715ea9b",
"armv7-unknown-linux-gnueabihf-0.7.13":
"903350811ee31b2b758c8afb853490c27a34382a535b236739705b104bc13894",
"armv7-unknown-linux-musleabihf-0.7.13":
"7e3b2aa966c54ced0fcd9febea6b913ee7ea12ee85246513895f199ab13296a8",
"i686-pc-windows-msvc-0.7.13":
"5cf71014fde208ee0833026b3828007f8eaf514ec003784dc1ae92633877179b",
"i686-unknown-linux-gnu-0.7.13":
"ff031258ff08b3aca46648398e21fe9679744501e3c9a928c8e42d596a708bbc",
"i686-unknown-linux-musl-0.7.13":
"41851d695bb5401bce5af81a156d63215087cf8e8e1275e69dd96de4bfa30c26",
"powerpc64-unknown-linux-gnu-0.7.13":
"02a80ce1436bf673b0d7276bb24dea0bbc70958dc91e5fb04ad37ac515be7424",
"powerpc64le-unknown-linux-gnu-0.7.13":
"60c8907cce089de97dcce732ae363eda0620f7196c25e8bd539f168b93f9e34c",
"riscv64gc-unknown-linux-gnu-0.7.13":
"521a5235bc5a053dd7f0221c363544cef6d033064cc9d92dbb4ef19771000052",
"s390x-unknown-linux-gnu-0.7.13":
"41e4b6093dd408b41dffb4c9e08c4aa31424ee4573ce9c95566c2617f7f2d0c6",
"x86_64-apple-darwin-0.7.13":
"d785753ac092e25316180626aa691c5dfe1fb075290457ba4fdb72c7c5661321",
"x86_64-pc-windows-msvc-0.7.13":
"e199b10bef1a7cc540014483e7f60f825a174988f41020e9d2a6b01bd60f0669",
"x86_64-unknown-linux-gnu-0.7.13":
"909278eb197c5ed0e9b5f16317d1255270d1f9ea4196e7179ce934d48c4c2545",
"x86_64-unknown-linux-musl-0.7.13":
"560bb64e060354e45138d7dd47c8dd48a4f7a349af5520d29cd3c704e79f286c",
"aarch64-apple-darwin-0.7.12":
"189108cd026c25d40fb086eaaf320aac52c3f7aab63e185bac51305a1576fc7e",
"aarch64-pc-windows-msvc-0.7.12":
"fbedfb71356d0e63c86b507cf1434a58406afe6eac77aee9d37b8282d4006e14",
"aarch64-unknown-linux-gnu-0.7.12":
"23233d2e950ed8187858350da5c6803b14cbbeaef780382093bb2f2bc4ba1200",
"aarch64-unknown-linux-musl-0.7.12":
"0589f6d27bbbe2e205aa6fc25e4cd28ab97e984cdba20842de8d3a00714e13e9",
"arm-unknown-linux-musleabihf-0.7.12":
"6996e32ac1c37af33a4c6e40ab0126a82d62ccb94edb164b7dae554be4dd8336",
"armv7-unknown-linux-gnueabihf-0.7.12":
"aee2dc202deed7e15984d71eb59803111052fbe8c0fb3ffad27ae0a6d290d74f",
"armv7-unknown-linux-musleabihf-0.7.12":
"87bd7676d31858d9e1937ab69d13e30cc93ebb09fb246dde6a8f183e9570a82c",
"i686-pc-windows-msvc-0.7.12":
"c7ec71ba64d01ef3cdb89553445de94ab4fd7375c8f2a7068353aec7a3a06342",
"i686-unknown-linux-gnu-0.7.12":
"d1def68ff10b30327a5cacab497664aaf8338e192ba277b76f45dad63208f2e2",
"i686-unknown-linux-musl-0.7.12":
"f56a0a9c84b35b7e910c4d628c667b843fb3fa1d9dddb0bbf4bf3f21eeaee07f",
"powerpc64-unknown-linux-gnu-0.7.12":
"6eafb546d1b8642a5c27e4dfda213659fee41b0fd150b4c33ef96c917e595344",
"powerpc64le-unknown-linux-gnu-0.7.12":
"0d550348d7a0f54352824cd751dc7baea0c23b17d744a5a7784b6b825e5fc909",
"s390x-unknown-linux-gnu-0.7.12":
"76f5a2c1c13446233312d140136f3f55fa7c162176327830eb109ccaae6c9cea",
"x86_64-apple-darwin-0.7.12":
"a338354420dba089218c05d4d585e4bcf174a65fe53260592b2af19ceec85835",
"x86_64-pc-windows-msvc-0.7.12":
"2cf29c8ffaa2549aa0f86927b2510008e8ca3dcd2100277d86faf437382a371b",
"x86_64-unknown-linux-gnu-0.7.12":
"735891fb553d0be129f3aa39dc8e9c4c49aaa76ec17f7dfb6a732e79a714873a",
"x86_64-unknown-linux-musl-0.7.12":
"bb493f1e6ae426c06b5a103cb71aa60c678976d2377f0590644538658656c2a7",
"aarch64-apple-darwin-0.7.11":
"b5f4cb27a3002d6590c3681377c6d826db0b52e2a9529c7144fcd53fec89ba79",
"aarch64-pc-windows-msvc-0.7.11":
"856bac93344a6980b2703a4143f26fc042c941b02f11ed21f55ec6be3fdfde87",
"aarch64-unknown-linux-gnu-0.7.11":
"80cf695c4e10b532e9db3c7fbbcfb0f8356f2e70e7a4a5040e005f0fae70923d",
"aarch64-unknown-linux-musl-0.7.11":
"2ad20d143c74d7f63d1c99db3999f239f045b7be041e23f6ac8b269c99fa54fe",
"arm-unknown-linux-musleabihf-0.7.11":
"21fec46f09d96cd9f51378fe01ed050dd2032c1fef823f8bd81fa50a2337bbcc",
"armv7-unknown-linux-gnueabihf-0.7.11":
"1a75aaff4695c07151d5b9abb50232ea9fb6f5ccc82d4b319abd8796605d9db8",
"armv7-unknown-linux-musleabihf-0.7.11":
"431b3115ab8fb5e2210d01f29b7901e6eb1174ff65545ec49318d6d4adf4c802",
"i686-pc-windows-msvc-0.7.11":
"985f5eabf42b8ad0166ae6b9f799564220fa932938a8401c890d5e07321ce7c0",
"i686-unknown-linux-gnu-0.7.11":
"619e205d56594fc530dbde6c6a543dd094c796791a5e2cfcd3bb70fa5767bf9d",
"i686-unknown-linux-musl-0.7.11":
"838c6336ba8e88818459b10c3520e83601b9c0a9850a209accef9782c050faad",
"powerpc64-unknown-linux-gnu-0.7.11":
"769c7f32cbc2ad918ccf9ae661d99a6c0d0fd3a0056691832b4a79049a9d06ec",
"powerpc64le-unknown-linux-gnu-0.7.11":
"c9bbbcc2d4f11c83e0edbff5868d95f07f81455adb6f2f909cdb9b992928101b",
"s390x-unknown-linux-gnu-0.7.11":
"0e7b9b27e9fef1b42aa052173a2a47a2ec33bad82425237dfac402b7f69bd073",
"x86_64-apple-darwin-0.7.11":
"97980b067dc3fea16534371b030eaf38554d701de5058004edcfd542a88a2e84",
"x86_64-pc-windows-msvc-0.7.11":
"0f4ef69fde75bb8bcfba7ecf0a4134d8875578cd2e98c9fcfc21573e746c70ac",
"x86_64-unknown-linux-gnu-0.7.11":
"df54b274e99b7ef26030dc21d105ce115bc21a644fc6a321bde9222cb1616de6",
"x86_64-unknown-linux-musl-0.7.11":
"e4e8948645ebea1950a3c77574ce079dfe1c71547ba5a8a141d6e362fa036684",
"aarch64-apple-darwin-0.7.10":
"316b80c19832ff4085748c3a20a3e05f36e1d19234e8b9399a6fd1c971241bce",
"aarch64-pc-windows-msvc-0.7.10":
"1eed0f11bca79403648195f8ce257763d956e861cb73de98c480dae15358bb26",
"aarch64-unknown-linux-gnu-0.7.10":
"8746acb754807050124c6dbcb05fcad2665a3f0cdb2a0fe9de528bd37b092656",
"aarch64-unknown-linux-musl-0.7.10":
"f9000f08850a5c575d5fe1ddc2ec928ecc9f287ecdcd9fa1ea4e3f405b23d4a3",
"arm-unknown-linux-musleabihf-0.7.10":
"657b1b8a534f7fe78e63aff56aac5bbcb21f6254df79825fe204d5c7c1219653",
"armv7-unknown-linux-gnueabihf-0.7.10":
"1cf4a8f40abbd802a7b44fe9695da356701100d267eb3567c17db27e0a24cf69",
"armv7-unknown-linux-musleabihf-0.7.10":
"5282b825f469295dc2b88c94eccd375a93135a279b0711cb10e615e7a71a0617",
"i686-pc-windows-msvc-0.7.10":
"f3c62ff935685d9d4312b82d01ed386493b97c3d22bd434d943fc99ce9aef83a",
"i686-unknown-linux-gnu-0.7.10":
"24a2a3eb0e89b74de6aac492516303747519439775d22254e838d33410ac27b2",
"i686-unknown-linux-musl-0.7.10":
"e317d35af60b38ad32935390a83d12adc3ed7ffdbc2ccccd3039bf6cef650eb3",
"powerpc64-unknown-linux-gnu-0.7.10":
"c1ab41ec53cd720179f3351b61b4ded73ec520804413b75051736829a125e4fe",
"powerpc64le-unknown-linux-gnu-0.7.10":
"ce2c3fdf177facf6c77c5316bb54b9deaf498bee9f664e01a4030ecf27063ab1",
"s390x-unknown-linux-gnu-0.7.10":
"b7603e3f4494e9093a86ace1103e3fcfa172a952989f0c7dca6eeac7f77be81f",
"x86_64-apple-darwin-0.7.10":
"9123e8aa944654404787f80731ec08850c4e9b9129c0d0445c9e41438828b8b8",
"x86_64-pc-windows-msvc-0.7.10":
"1568a71af55e9d9bc4a050ec79134a342a8a3765a73f6b7ec26490c2814f8797",
"x86_64-unknown-linux-gnu-0.7.10":
"ff2ef46298963fee8104ccb3c0a4ecbc97c057ac6a0bc5fec7636c855384252e",
"x86_64-unknown-linux-musl-0.7.10":
"b2cf1f63e83a873652ffef032681bbbe1469e3bab617f7e715e09529c30f5689",
"aarch64-apple-darwin-0.7.9":
"7a8b716a2b5905fb89512371ce6c6dbc0dd0344185bd1cd93a3fe27516eef7ec",
"aarch64-pc-windows-msvc-0.7.9":
"63c0990b9c49dc9f9a92aaaa27ba627cbf9cf6b2e42766588ef6f880208893de",
"aarch64-unknown-linux-gnu-0.7.9":
"23242a8051e2191ed8d61f71a6792f2fc069ef18e6cdf07dedac3d3f648643c5",
"aarch64-unknown-linux-musl-0.7.9":
"60f30508c9002b2b7af55d70db2741cf7ea24c066ced710ad09681a6d2d19b3a",
"arm-unknown-linux-musleabihf-0.7.9":
"57d8e43e257f0ccd9df2b8581338c5145b9937aba53e9c9bb81b31044b720c61",
"armv7-unknown-linux-gnueabihf-0.7.9":
"83353ee7e1724083ea94d7f488fa34c9159995a3996f87017fdf72e422c93242",
"armv7-unknown-linux-musleabihf-0.7.9":
"b2d8d81bc2abbdd857bad7cd3bf0d36c5155c0681aae8ac9fb8f49d54b95b3f2",
"i686-pc-windows-msvc-0.7.9":
"b5dc0dc10d9dd0dcf5729a94e98538418760d13877d4d4b1bc4efa9926280e78",
"i686-unknown-linux-gnu-0.7.9":
"fb8f1a7cb593c819c0fff71afa2dc480237ca80a3f5d8d433c8b51d2ae90ffdf",
"i686-unknown-linux-musl-0.7.9":
"a77592be13fea81ca42b2b7815784e769e1fd9ff476cfab69f2652823f99c55e",
"powerpc64-unknown-linux-gnu-0.7.9":
"26fee4867c158c04dd3a51ff9a23b4220a9ba69fae2e71be618d2cfa48164d96",
"powerpc64le-unknown-linux-gnu-0.7.9":
"d588fbb01cacccb7fd6e0f101d34282ebb0569381f967d332f8072055e39840e",
"s390x-unknown-linux-gnu-0.7.9":
"d823d68ff662b7e59c6791281427bf1019dae791a964ffae31ae1d2d723dfc08",
"x86_64-apple-darwin-0.7.9":
"a4c084568850588b77e4a34c21b7df5c8cf9e2160b4d614307ed92fa12411742",
"x86_64-pc-windows-msvc-0.7.9":
"f91d8a3322a10caf257fd416807bd8d2801285b80b46ee37f2d0c6e426b8822c",
"x86_64-unknown-linux-gnu-0.7.9":
"b8450a419c0bcc85841bbed8511eb59e2a5683ddd3f813f2b98b97babf6b1b8b",
"x86_64-unknown-linux-musl-0.7.9":
"95918a1e1faf851a39cad402f1a77318e8fc90b7f829833ebaff27de9722d60e",
"aarch64-apple-darwin-0.7.8":
"ad6b3825ba277de70b9d0a37055f7d828f3f37416aee1cde65000f330efd4587",
"aarch64-pc-windows-msvc-0.7.8":
"e43448e5e3267dffb6bbdc30ffa291f8db664d1da9d084c44f99dc568f459e0a",
"aarch64-unknown-linux-gnu-0.7.8":
"da9e1c97f1452b25c8955127c92da7b68be228ad0b43bf50bba4dadb25c8b337",
"aarch64-unknown-linux-musl-0.7.8":
"4d18efb46f93fa942dc4c212dea3b6b07e3db62fe57d0c3d08de6bf5d9f9bb51",
"arm-unknown-linux-musleabihf-0.7.8":
"133b1c3fb850ec496bfb4ef84379bfaeff1d2c322114a0984d8a5c2e10e63028",
"armv7-unknown-linux-gnueabihf-0.7.8":
"7d61c6e18e81447482dc80c090c65a6615a1232512899943566baf2808ca37bb",
"armv7-unknown-linux-musleabihf-0.7.8":
"0b6d6afcdb7c78e5df42cb2ab0929d2bec2654a350a8efacc6f95e830a31eb6e",
"i686-pc-windows-msvc-0.7.8":
"0d4b01372ca972543cd40366bb5480bb457e79dcf45b5f662721d709d6932dbd",
"i686-unknown-linux-gnu-0.7.8":
"db1c60961aea7a7f8c64a098801e0138e761b7556d1c1691fc4f3f771f0e47ae",
"i686-unknown-linux-musl-0.7.8":
"b765eb1817bc1d545f4860eff0adeb0c7907ea66be14536653192e588386b308",
"powerpc64-unknown-linux-gnu-0.7.8":
"2c894b104195ab194af05c6ad756ce8746a349a8620c83888207db5fccf29a8f",
"powerpc64le-unknown-linux-gnu-0.7.8":
"4b0d93385685f756068f76af1871dcb7cc8f427ab6d650afc07493d06dca71db",
"s390x-unknown-linux-gnu-0.7.8":
"e58fc9f6d846ccbf50d9bcf27920ff4bc061541df8a6a3aa6f13be24981e0772",
"x86_64-apple-darwin-0.7.8":
"f046249639014eb70b43cbaf83eb6f56aac724ada354f9b9aad65f9960737920",
"x86_64-pc-windows-msvc-0.7.8":
"355736ddf9a01ab9da918b35470027c12128d7ed1d7f54f54771507d79529679",
"x86_64-unknown-linux-gnu-0.7.8":
"285981409c746508c1fd125f66a1ea654e487bf1e4d9f45371a062338f788adb",
"x86_64-unknown-linux-musl-0.7.8":
"8a707e45e0d1a8bdbc5bd1af0ae7d19ffab55f3722c5e73471039561900e3d48",
"aarch64-apple-darwin-0.7.7":
"6a06eaa8165d5abd89c3dc37ffbe1db60fcf49a87d7c612bfca7e87a1514695d",
"aarch64-pc-windows-msvc-0.7.7":

View File

@@ -7,6 +7,10 @@ import { OWNER, REPO, TOOL_CACHE_NAME } from "../utils/constants";
import type { Architecture, Platform } from "../utils/platforms";
import { validateChecksum } from "./checksum/checksum";
import { Octokit } from "../utils/octokit";
import {
getDownloadUrl,
getLatestKnownVersion as getLatestVersionInManifest,
} from "./version-manifest";
export function tryGetFromToolCache(
arch: Architecture,
@@ -23,7 +27,7 @@ export function tryGetFromToolCache(
return { version: resolvedVersion, installedPath };
}
export async function downloadVersion(
export async function downloadVersionFromGithub(
serverUrl: string,
platform: Platform,
arch: Architecture,
@@ -31,29 +35,77 @@ export async function downloadVersion(
checkSum: string | undefined,
githubToken: string,
): Promise<{ version: string; cachedToolDir: string }> {
const resolvedVersion = await resolveVersion(version, githubToken);
const artifact = `uv-${arch}-${platform}`;
let extension = ".tar.gz";
if (platform === "pc-windows-msvc") {
extension = ".zip";
}
const downloadUrl = `${serverUrl}/${OWNER}/${REPO}/releases/download/${resolvedVersion}/${artifact}${extension}`;
core.info(`Downloading uv from "${downloadUrl}" ...`);
const extension = getExtension(platform);
const downloadUrl = `${serverUrl}/${OWNER}/${REPO}/releases/download/${version}/${artifact}${extension}`;
return await downloadVersion(
downloadUrl,
artifact,
platform,
arch,
version,
checkSum,
githubToken,
);
}
export async function downloadVersionFromManifest(
manifestUrl: string | undefined,
platform: Platform,
arch: Architecture,
version: string,
checkSum: string | undefined,
githubToken: string,
): Promise<{ version: string; cachedToolDir: string }> {
const downloadUrl = await getDownloadUrl(
manifestUrl,
version,
arch,
platform,
);
if (!downloadUrl) {
core.info(
`manifest-file does not contain version ${version}, arch ${arch}, platform ${platform}. Falling back to GitHub releases.`,
);
return await downloadVersionFromGithub(
"https://github.com",
platform,
arch,
version,
checkSum,
githubToken,
);
}
return await downloadVersion(
downloadUrl,
`uv-${arch}-${platform}`,
platform,
arch,
version,
checkSum,
githubToken,
);
}
async function downloadVersion(
downloadUrl: string,
artifactName: string,
platform: Platform,
arch: Architecture,
version: string,
checkSum: string | undefined,
githubToken: string,
): Promise<{ version: string; cachedToolDir: string }> {
core.info(`Downloading uv from "${downloadUrl}" ...`);
const downloadPath = await tc.downloadTool(
downloadUrl,
undefined,
githubToken,
);
await validateChecksum(
checkSum,
downloadPath,
arch,
platform,
resolvedVersion,
);
await validateChecksum(checkSum, downloadPath, arch, platform, version);
let uvDir: string;
const extension = getExtension(platform);
if (platform === "pc-windows-msvc") {
const fullPathWithExtension = `${downloadPath}${extension}`;
await fs.copyFile(downloadPath, fullPathWithExtension);
@@ -61,26 +113,39 @@ export async function downloadVersion(
// On windows extracting the zip does not create an intermediate directory
} else {
const extractedDir = await tc.extractTar(downloadPath);
uvDir = path.join(extractedDir, artifact);
uvDir = path.join(extractedDir, artifactName);
}
const cachedToolDir = await tc.cacheDir(
uvDir,
TOOL_CACHE_NAME,
resolvedVersion,
version,
arch,
);
return { version: resolvedVersion, cachedToolDir };
return { version: version, cachedToolDir };
}
function getExtension(platform: Platform): string {
return platform === "pc-windows-msvc" ? ".zip" : ".tar.gz";
}
export async function resolveVersion(
versionInput: string,
manifestFile: string | undefined,
githubToken: string,
): Promise<string> {
core.debug(`Resolving version: ${versionInput}`);
const version =
versionInput === "latest"
? await getLatestVersion(githubToken)
: versionInput;
let version: string;
if (manifestFile) {
version =
versionInput === "latest"
? await getLatestVersionInManifest(manifestFile)
: versionInput;
} else {
version =
versionInput === "latest"
? await getLatestVersion(githubToken)
: versionInput;
}
if (tc.isExplicitVersion(version)) {
core.debug(`Version ${version} is an explicit version.`);
return version;

View File

@@ -1,8 +1,12 @@
import { promises as fs } from "node:fs";
import * as core from "@actions/core";
import * as semver from "semver";
import { fetch } from "../utils/fetch";
import { join } from "node:path";
interface VersionManifestEntry {
const localManifestFile = join(__dirname, "..", "..", "version-manifest.json");
interface ManifestEntry {
version: string;
artifactName: string;
arch: string;
@@ -11,22 +15,57 @@ interface VersionManifestEntry {
}
export async function getLatestKnownVersion(
versionManifestFile: string,
manifestUrl: string | undefined,
): Promise<string> {
const data = await fs.readFile(versionManifestFile);
const versionManifestEntries: VersionManifestEntry[] = JSON.parse(
data.toString(),
);
return versionManifestEntries.reduce((a, b) =>
const manifestEntries = await getManifestEntries(manifestUrl);
return manifestEntries.reduce((a, b) =>
semver.gt(a.version, b.version) ? a : b,
).version;
}
export async function getDownloadUrl(
manifestUrl: string | undefined,
version: string,
arch: string,
platform: string,
): Promise<string | undefined> {
const manifestEntries = await getManifestEntries(manifestUrl);
const entry = manifestEntries.find(
(entry) =>
entry.version === version &&
entry.arch === arch &&
entry.platform === platform,
);
return entry ? entry.downloadUrl : undefined;
}
async function getManifestEntries(
manifestUrl: string | undefined,
): Promise<ManifestEntry[]> {
let data: string;
if (manifestUrl !== undefined) {
core.info(`Fetching manifest-file from: ${manifestUrl}`);
const response = await fetch(manifestUrl, {});
if (!response.ok) {
throw new Error(
`Failed to fetch manifest-file: ${response.status} ${response.statusText}`,
);
}
data = await response.text();
} else {
core.info("manifest-file not provided, reading from local file.");
const fileContent = await fs.readFile(localManifestFile);
data = fileContent.toString();
}
return JSON.parse(data);
}
export async function updateVersionManifest(
versionManifestFile: string,
manifestUrl: string,
downloadUrls: string[],
): Promise<void> {
const versionManifest: VersionManifestEntry[] = [];
const manifest: ManifestEntry[] = [];
for (const downloadUrl of downloadUrls) {
const urlParts = downloadUrl.split("/");
@@ -39,7 +78,7 @@ export async function updateVersionManifest(
continue;
}
const artifactParts = artifactName.split(".")[0].split("-");
versionManifest.push({
manifest.push({
version: version,
artifactName: artifactName,
arch: artifactParts[1],
@@ -47,6 +86,6 @@ export async function updateVersionManifest(
downloadUrl: downloadUrl,
});
}
core.debug(`Updating version manifest: ${JSON.stringify(versionManifest)}`);
await fs.writeFile(versionManifestFile, JSON.stringify(versionManifest));
core.debug(`Updating manifest-file: ${JSON.stringify(manifest)}`);
await fs.writeFile(manifestUrl, JSON.stringify(manifest));
}

View File

@@ -1,9 +1,10 @@
import * as core from "@actions/core";
import * as path from "node:path";
import {
downloadVersion,
tryGetFromToolCache,
resolveVersion,
downloadVersionFromGithub,
downloadVersionFromManifest,
} from "./download/download-version";
import { restoreCache } from "./cache/restore-cache";
@@ -26,6 +27,7 @@ import {
version as versionInput,
workingDirectory,
serverUrl,
manifestFile,
} from "./utils/inputs";
import * as exec from "@actions/exec";
import fs from "node:fs";
@@ -85,7 +87,7 @@ async function setupUv(
checkSum: string | undefined,
githubToken: string,
): Promise<{ uvDir: string; version: string }> {
const resolvedVersion = await determineVersion();
const resolvedVersion = await determineVersion(manifestFile);
const toolCacheResult = tryGetFromToolCache(arch, resolvedVersion);
if (toolCacheResult.installedPath) {
core.info(`Found uv in tool-cache for ${toolCacheResult.version}`);
@@ -95,14 +97,29 @@ async function setupUv(
};
}
const downloadVersionResult = await downloadVersion(
serverUrl,
platform,
arch,
resolvedVersion,
checkSum,
githubToken,
);
let downloadVersionResult: { version: string; cachedToolDir: string };
if (serverUrl !== "https://github.com") {
core.warning(
"The input server-url is deprecated. Please use manifest-file instead.",
);
downloadVersionResult = await downloadVersionFromGithub(
serverUrl,
platform,
arch,
resolvedVersion,
checkSum,
githubToken,
);
} else {
downloadVersionResult = await downloadVersionFromManifest(
manifestFile,
platform,
arch,
resolvedVersion,
checkSum,
githubToken,
);
}
return {
uvDir: downloadVersionResult.cachedToolDir,
@@ -110,9 +127,11 @@ async function setupUv(
};
}
async function determineVersion(): Promise<string> {
async function determineVersion(
manifestFile: string | undefined,
): Promise<string> {
if (versionInput !== "") {
return await resolveVersion(versionInput, githubToken);
return await resolveVersion(versionInput, manifestFile, githubToken);
}
const versionFromUvToml = getUvVersionFromConfigFile(
`${workingDirectory}${path.sep}uv.toml`,
@@ -127,6 +146,7 @@ async function determineVersion(): Promise<string> {
}
return await resolveVersion(
versionFromUvToml || versionFromPyproject || "latest",
manifestFile,
githubToken,
);
}

View File

@@ -12,7 +12,7 @@ import {
async function run(): Promise<void> {
const checksumFilePath = process.argv.slice(2)[0];
const versionsManifestFilePath = process.argv.slice(2)[1];
const versionsManifestFile = process.argv.slice(2)[1];
const githubToken = process.argv.slice(2)[2];
const octokit = new Octokit({
@@ -24,9 +24,7 @@ async function run(): Promise<void> {
repo: REPO,
});
const latestKnownVersion = await getLatestKnownVersion(
versionsManifestFilePath,
);
const latestKnownVersion = await getLatestKnownVersion(undefined);
if (semver.lte(latestRelease.tag_name, latestKnownVersion)) {
core.info(
@@ -52,7 +50,7 @@ async function run(): Promise<void> {
.map((asset) => asset.browser_download_url),
);
await updateVersionManifest(versionsManifestFilePath, artifactDownloadUrls);
await updateVersionManifest(versionsManifestFile, artifactDownloadUrls);
core.setOutput("latest-version", latestRelease.tag_name);
}

21
src/utils/fetch.ts Normal file
View File

@@ -0,0 +1,21 @@
import { fetch as undiciFetch, ProxyAgent, type RequestInit } from "undici";
export function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_proxy;
if (httpProxy) {
return new ProxyAgent(httpProxy);
}
const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
if (httpsProxy) {
return new ProxyAgent(httpsProxy);
}
return undefined;
}
export const fetch = async (url: string, opts: RequestInit) =>
await undiciFetch(url, {
dispatcher: getProxyAgent(),
...opts,
});

View File

@@ -1,5 +1,6 @@
import * as core from "@actions/core";
import path from "node:path";
import { getManifestFromRepo } from "@actions/tool-cache";
export const version = core.getInput("version");
export const pythonVersion = core.getInput("python-version");
@@ -19,6 +20,7 @@ export const toolBinDir = getToolBinDir();
export const toolDir = getToolDir();
export const serverUrl = core.getInput("server-url");
export const githubToken = core.getInput("github-token");
export const manifestFile = getManifestFile();
function getEnableCache(): boolean {
const enableCacheInput = core.getInput("enable-cache");
@@ -85,3 +87,11 @@ function expandTilde(input: string): string {
}
return input;
}
function getManifestFile(): string | undefined {
const manifestFileInput = core.getInput("manifest-file");
if (manifestFileInput !== "") {
return manifestFileInput;
}
return undefined;
}

View File

@@ -8,7 +8,7 @@ import {
type PaginateInterface,
} from "@octokit/plugin-paginate-rest";
import { legacyRestEndpointMethods } from "@octokit/plugin-rest-endpoint-methods";
import { fetch as undiciFetch, ProxyAgent, type RequestInit } from "undici";
import { fetch as customFetch } from "./fetch";
export type { RestEndpointMethodTypes } from "@octokit/plugin-rest-endpoint-methods";
@@ -17,26 +17,6 @@ const DEFAULTS = {
userAgent: "setup-uv",
};
export function getProxyAgent() {
const httpProxy = process.env.HTTP_PROXY || process.env.http_prox;
if (httpProxy) {
return new ProxyAgent(httpProxy);
}
const httpsProxy = process.env.HTTPS_PROXY || process.env.https_proxy;
if (httpsProxy) {
return new ProxyAgent(httpsProxy);
}
return undefined;
}
export const customFetch = async (url: string, opts: RequestInit) =>
await undiciFetch(url, {
dispatcher: getProxyAgent(),
...opts,
});
export const Octokit: typeof Core &
Constructor<
{

View File

@@ -1,4 +1,851 @@
[
{
"version": "0.7.14",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.14",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.14",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-riscv64gc-unknown-linux-gnu.tar.gz",
"arch": "riscv64gc",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-riscv64gc-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.14",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.14",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.14/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.13",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.13",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-riscv64gc-unknown-linux-gnu.tar.gz",
"arch": "riscv64gc",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-riscv64gc-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.13",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.13",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.13/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.12",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.12",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.12",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.12",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.12/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.11",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.11",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.11",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.11",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.11/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.10",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.10",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.10",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.10",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.10/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.9",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.9",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.9",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.9",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.9/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",
"arch": "aarch64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-aarch64-apple-darwin.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-aarch64-pc-windows-msvc.zip",
"arch": "aarch64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-aarch64-pc-windows-msvc.zip"
},
{
"version": "0.7.8",
"artifactName": "uv-aarch64-unknown-linux-gnu.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-aarch64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-aarch64-unknown-linux-musl.tar.gz",
"arch": "aarch64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-aarch64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-arm-unknown-linux-musleabihf.tar.gz",
"arch": "arm",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-arm-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-armv7-unknown-linux-gnueabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-gnueabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-armv7-unknown-linux-gnueabihf.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-armv7-unknown-linux-musleabihf.tar.gz",
"arch": "armv7",
"platform": "unknown-linux-musleabihf",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-armv7-unknown-linux-musleabihf.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-i686-pc-windows-msvc.zip",
"arch": "i686",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-i686-pc-windows-msvc.zip"
},
{
"version": "0.7.8",
"artifactName": "uv-i686-unknown-linux-gnu.tar.gz",
"arch": "i686",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-i686-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-i686-unknown-linux-musl.tar.gz",
"arch": "i686",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-i686-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-powerpc64-unknown-linux-gnu.tar.gz",
"arch": "powerpc64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-powerpc64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-powerpc64le-unknown-linux-gnu.tar.gz",
"arch": "powerpc64le",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-powerpc64le-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-s390x-unknown-linux-gnu.tar.gz",
"arch": "s390x",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-s390x-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-x86_64-apple-darwin.tar.gz",
"arch": "x86_64",
"platform": "apple-darwin",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-x86_64-apple-darwin.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-x86_64-pc-windows-msvc.zip",
"arch": "x86_64",
"platform": "pc-windows-msvc",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-x86_64-pc-windows-msvc.zip"
},
{
"version": "0.7.8",
"artifactName": "uv-x86_64-unknown-linux-gnu.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-gnu",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-x86_64-unknown-linux-gnu.tar.gz"
},
{
"version": "0.7.8",
"artifactName": "uv-x86_64-unknown-linux-musl.tar.gz",
"arch": "x86_64",
"platform": "unknown-linux-musl",
"downloadUrl": "https://github.com/astral-sh/uv/releases/download/0.7.8/uv-x86_64-unknown-linux-musl.tar.gz"
},
{
"version": "0.7.7",
"artifactName": "uv-aarch64-apple-darwin.tar.gz",