Commit Graph

9 Commits

Author SHA1 Message Date
Hans Gaiser ed73b5df24 fix: use BUILD_ID as backup for determining os version (#912)
Release Drafter / ✏️ Draft release (push) Waiting to run
test / test-tool-install (macos-14) (push) Waiting to run
test / test-tool-install (macos-latest) (push) Waiting to run
test / test-default-version (macos-latest) (push) Waiting to run
test / test-default-version (windows-latest) (push) Waiting to run
test / test-tool-install (windows-latest) (push) Waiting to run
test / test-default-version (macos-14) (push) Waiting to run
test / test-checksum (map[checksum:a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218 os:macos-latest]) (push) Waiting to run
test / test-python-version (macos-latest) (push) Waiting to run
test / test-python-version (windows-latest) (push) Waiting to run
test / test-activate-environment (macos-latest) (push) Waiting to run
test / test-activate-environment (windows-latest) (push) Waiting to run
test / test-activate-environment-custom-path (macos-latest) (push) Waiting to run
test / test-activate-environment-custom-path (windows-latest) (push) Waiting to run
test / test-cache-key-os-version (macos-14, macos-14) (push) Waiting to run
test / test-cache-key-os-version (macos-15, macos-15) (push) Waiting to run
test / test-cache-key-os-version (ubuntu-24.04, ubuntu-24.04) (push) Waiting to run
test / test-cache-key-os-version (windows-2022, windows-2022) (push) Waiting to run
test / test-cache-key-os-version (windows-2025, windows-2025) (push) Waiting to run
test / test-setup-cache (auto, windows-latest) (push) Waiting to run
test / test-setup-cache (false, windows-latest) (push) Waiting to run
test / test-setup-cache (true, windows-latest) (push) Waiting to run
test / test-restore-cache (auto, ubuntu-latest) (push) Blocked by required conditions
test / test-restore-cache (auto, windows-latest) (push) Blocked by required conditions
test / test-restore-cache (false, ubuntu-latest) (push) Blocked by required conditions
test / test-restore-cache (false, windows-latest) (push) Blocked by required conditions
test / test-restore-cache (true, ubuntu-latest) (push) Blocked by required conditions
test / test-restore-cache (true, windows-latest) (push) Blocked by required conditions
test / test-cache-local (map[expected-cache-dir:D:\a\_temp\setup-uv-cache os:windows-latest]) (push) Waiting to run
test / test-python-install-dir (map[expected-python-dir:D:\a\_temp\uv-python-dir os:windows-latest]) (push) Waiting to run
test / all-tests-passed (push) Blocked by required conditions
test / test-specific-version (map[expected-version:0.3.0 version-input:0.3.0]) (push) Failing after 1m7s
test / test-specific-version (map[expected-version:0.1.45 resolution-strategy:highest version-input:>=0.1,<0.2]) (push) Failing after 1m8s
test / test-uv-no-modify-path (push) Failing after 1m10s
test / test-specific-version (map[expected-version:0.1.0 resolution-strategy:lowest version-input:>=0.1.0,<0.2]) (push) Failing after 1m13s
test / test-default-version (ubuntu-latest) (push) Failing after 1m18s
test / test-specific-version (map[expected-version:0.3.2 version-input:0.3.2]) (push) Failing after 1m19s
test / test-specific-version (map[expected-version:0.3.5 version-input:0.3.x]) (push) Failing after 1m19s
test / test-malformed-pyproject-file-fallback (push) Failing after 1m16s
test / test-specific-version (map[expected-version:0.4.25 resolution-strategy:lowest version-input:>=0.4.25,<0.5]) (push) Failing after 1m20s
test / test-specific-version (map[expected-version:0.3.5 version-input:0.3]) (push) Failing after 1m20s
test / test-specific-version (map[expected-version:0.4.30 version-input:>=0.4.25,<0.5]) (push) Failing after 1m22s
test / test-specific-version (map[expected-version:0.4.25 resolution-strategy:lowest version-input:>=0.4.25]) (push) Failing after 1m23s
test / test-latest-version (>=0.8) (push) Failing after 1m18s
test / test-latest-version (latest) (push) Failing after 1m23s
test / test-from-working-directory-version (map[expected-version:0.5.14 working-directory:__tests__/fixtures/pyproject-toml-project]) (push) Failing after 1m23s
test / test-from-working-directory-version (map[expected-version:0.5.15 working-directory:__tests__/fixtures/uv-toml-project]) (push) Failing after 1m20s
test / test-version-file-version (map[expected-version:0.5.15 version-file:__tests__/fixtures/.tool-versions]) (push) Failing after 1m17s
test / test-with-explicit-token (push) Failing after 1m13s
test / test-debian-unstable (push) Failing after 3s
test / test-version-file-version (map[expected-version:0.8.3 version-file:__tests__/fixtures/uv-in-requirements-hash-txt-project/requirements.txt]) (push) Failing after 1m19s
test / test-uvx (push) Failing after 1m15s
test / test-checksum (map[checksum:4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd os:ubuntu-latest]) (push) Failing after 1m20s
test / test-musl (push) Failing after 6s
test / test-version-file-version (map[expected-version:0.6.17 version-file:__tests__/fixtures/uv-in-requirements-txt-project/requirements.txt]) (push) Failing after 1m21s
test / test-tool-install (ubuntu-latest) (push) Failing after 35s
test / test-python-version (ubuntu-latest) (push) Failing after 20s
test / test-activate-environment-custom-path (ubuntu-latest) (push) Failing after 17s
test / test-activate-environment (ubuntu-latest) (push) Failing after 18s
test / test-activate-environment-no-project (push) Failing after 50s
CodeQL / Analyze (TypeScript) (push) Failing after 3m28s
test / test-setup-cache (auto, ubuntu-latest) (push) Failing after 53s
test / test-setup-cache (false, ubuntu-latest) (push) Failing after 53s
test / test-setup-cache (true, ubuntu-latest) (push) Failing after 53s
test / test-restore-cache-restore-cache-false (push) Has been skipped
test / test-setup-cache-restore-cache-false (push) Failing after 50s
test / test-setup-cache-requirements-txt (push) Failing after 54s
test / test-restore-cache-requirements-txt (push) Has been skipped
test / test-setup-cache-dependency-glob (push) Failing after 54s
test / test-restore-cache-dependency-glob (push) Has been skipped
test / test-setup-cache-save-cache-false (push) Failing after 54s
test / test-restore-cache-save-cache-false (push) Has been skipped
test / test-cache-local (map[expected-cache-dir:/home/runner/work/_temp/setup-uv-cache os:ubuntu-latest]) (push) Failing after 54s
test / test-cache-local-cache-disabled (push) Failing after 52s
test / test-cache-local-cache-disabled-but-explicit-path (push) Failing after 49s
test / test-cache-key-os-version (ubuntu-22.04, ubuntu-22.04) (push) Failing after 1m3s
test / test-no-python-version (push) Failing after 56s
test / test-custom-manifest-file (push) Failing after 22s
test / test-download-from-astral-mirror-false (push) Failing after 23s
test / test-absolute-path (push) Failing after 27s
test / test-cache-python-missing-managed-install-dir (push) Failing after 40s
test / test-cache-prune-force (push) Failing after 43s
test / test-python-install-dir (map[expected-python-dir:/home/runner/work/_temp/uv-python-dir os:ubuntu-latest]) (push) Failing after 42s
test / test-act (push) Failing after 42s
test / test-cache-dir-from-file (push) Failing after 48s
test / test-cache-python-installs (push) Failing after 47s
test / test-restore-python-installs (push) Has been skipped
test / test-relative-path (push) Failing after 52s
test / validate-typings (push) Failing after 3m37s
test / lint (push) Failing after 30m3s
On Arch Linux based runners, the setup fails with because
`/etc/os-release` does not contain `VERSION_ID` or `VERSION_CODENAME`.
It does contain a `BUILD_ID` which is set to `rolling`:

```sh
$ cat /etc/os-release
NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo
```

This PR makes `getLinuxOSNameVersion` return `arch-rolling`.

There is no update from arch that would change the returned value, so
the same cache will always be used. Is this an issue? I'm not sure. At
least it's better than crashing because `os-release` does not contain
the expected values :).
2026-06-09 13:12:37 +02:00
Ludovic Henry 9f332a133a Add riscv64 architecture support to platform detection (#791)
Add `riscv64gc` as a recognized architecture in the `Architecture` type
union and map Node.js's `riscv64` process.arch value to the `riscv64gc`
uv platform identifier.

This allows the action to correctly detect and download the appropriate
uv binary on RISC-V 64-bit systems (e.g., linux/riscv64 runners).
2026-03-10 15:38:42 +01:00
eifinger-bot b12532f27f fix: fall back to VERSION_CODENAME when VERSION_ID is not available (#774)
Debian unstable and testing don't have VERSION_ID in /etc/os-release.
This change falls back to VERSION_CODENAME when VERSION_ID is missing,
producing cache keys like 'debian-sid' for unstable.

Fixes #773
2026-02-27 19:13:59 +01:00
Kevin Stillhammer 58b6d7b303 fix: add OS version to cache key to prevent binary incompatibility (#716)
## Summary

- Adds OS name and version (e.g., `ubuntu-22.04`, `macos-14`,
`windows-2022`) to cache keys to prevent binary incompatibility when
GitHub updates runner images
- Fixes issue where cached uv binaries compiled against older
glibc/library versions fail on newer runner OS versions

## Changes

- Added `getOSNameVersion()` function to `src/utils/platforms.ts` with
OS-specific detection for Linux (via `/etc/os-release`), macOS (Darwin
kernel version mapping), and Windows
- Updated cache key format to include OS version, bumped `CACHE_VERSION`
to `"2"`
- Added `cache-key` output to expose the generated cache key for
debugging
- Added `test-cache-key-os-version` job testing across multiple OS
versions
- Updated `docs/caching.md` with cache key documentation

Closes #703
2025-12-13 17:25:42 +01:00
Kevin Stillhammer 4109b4033f Bump biome to v2 (#515) 2025-08-12 20:12:10 +00:00
Kevin Stillhammer e2e9087257 Support OS using musl (#284)
test-cache-windows / test-setup-cache (push) Waiting to run
test-cache-windows / test-restore-cache (push) Blocked by required conditions
Release Drafter / ✏️ Draft release (push) Failing after 12s
test-windows / test-default-version (push) Waiting to run
test-cache / test-setup-cache (auto, ubuntu-latest) (push) Successful in 29s
test-cache / test-setup-cache (false, ubuntu-latest) (push) Failing after 31s
test-cache / test-setup-cache (true, ubuntu-latest) (push) Successful in 41s
test-cache / test-setup-cache-requirements-txt (push) Failing after 31s
Check dist/ / check-dist (push) Successful in 1m36s
test-cache / test-no-python-version (push) Failing after 30s
test-cache / test-setup-cache-dependency-glob (push) Successful in 51s
test / test-default-version (ubuntu-latest) (push) Failing after 31s
test / test-specific-version (0.3) (push) Successful in 49s
test / test-specific-version (0.3.0) (push) Failing after 30s
test / build (push) Successful in 1m29s
test / test-specific-version (0.3.2) (push) Failing after 30s
test / test-semver-range (push) Failing after 4s
test / test-specific-version (>=0.3.0) (push) Successful in 39s
test / test-specific-version (0.3.x) (push) Successful in 44s
test / test-pyproject-file-version (push) Failing after 4s
test / test-with-explicit-token (push) Failing after 3s
test / test-uvx (push) Failing after 3s
test / test-tool-install (ubuntu-latest) (push) Failing after 4s
test / test-python-version (macos-latest) (push) Failing after 5s
test / test-uv-file-version (push) Successful in 30s
test / test-python-version (ubuntu-latest) (push) Failing after 5s
test / test-malformed-pyproject-file-fallback (push) Failing after 4s
test / test-checksum (4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd, ubuntu-latest) (push) Successful in 48s
test / test-musl (push) Failing after 0s
test-cache / test-restore-cache-dependency-glob (push) Failing after 5s
test / test-python-version (windows-latest) (push) Successful in 1m17s
CodeQL / Analyze (TypeScript) (push) Failing after 5m54s
Update known checksums / build (push) Failing after 21s
test-cache / test-setup-cache (auto, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-setup-cache (false, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-setup-cache (true, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-setup-cache-local (push) Has been cancelled
test-cache / test-tilde-expansion-cache-local-path (push) Has been cancelled
test-cache / test-tilde-expansion-cache-dependency-glob (push) Has been cancelled
test / test-default-version (macos-14) (push) Has been cancelled
test / test-default-version (macos-latest) (push) Has been cancelled
test / test-checksum (a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218, macos-latest) (push) Has been cancelled
test / test-tool-install (macos-14) (push) Has been cancelled
test / test-tool-install (macos-latest) (push) Has been cancelled
test / test-tool-install (windows-latest) (push) Has been cancelled
test / test-tilde-expansion-tool-dirs (push) Has been cancelled
test-cache / test-restore-cache (auto, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-restore-cache (auto, ubuntu-latest) (push) Has been cancelled
test-cache / test-restore-cache (false, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-restore-cache (false, ubuntu-latest) (push) Has been cancelled
test-cache / test-restore-cache (true, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-restore-cache (true, ubuntu-latest) (push) Has been cancelled
test-cache / test-restore-cache-requirements-txt (push) Has been cancelled
test-cache / test-restore-cache-local (push) Has been cancelled
test-cache / cleanup-tilde-expansion-tests (push) Has been cancelled
Fixes: #278
2025-02-17 10:32:34 +01:00
Zxilly bb8d247e1a feat: support s390x and powerpc (#289)
test-cache / test-setup-cache (auto, ubuntu-latest) (push) Failing after 11s
test-cache / test-setup-cache (false, ubuntu-latest) (push) Failing after 11s
Release Drafter / ✏️ Draft release (push) Failing after 34s
Check dist/ / check-dist (push) Successful in 52s
test-cache / test-setup-cache (true, ubuntu-latest) (push) Failing after 31s
test-cache / test-setup-cache-requirements-txt (push) Successful in 38s
test-cache / test-setup-cache-dependency-glob (push) Successful in 44s
test-cache / test-no-python-version (push) Failing after 31s
test / test-default-version (ubuntu-latest) (push) Successful in 25s
test / test-specific-version (0.3) (push) Failing after 32s
test / test-specific-version (0.3.0) (push) Successful in 36s
test / test-specific-version (0.3.2) (push) Failing after 32s
test / build (push) Successful in 1m51s
test / test-specific-version (>=0.3.0) (push) Failing after 31s
test / test-specific-version (0.3.x) (push) Successful in 38s
test / test-checksum (4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd, ubuntu-latest) (push) Failing after 4s
test / test-with-explicit-token (push) Failing after 4s
test / test-uvx (push) Failing after 4s
test / test-semver-range (push) Successful in 43s
test / test-tool-install (ubuntu-latest) (push) Failing after 4s
test / test-pyproject-file-version (push) Failing after 31s
test / test-uv-file-version (push) Successful in 30s
test / test-python-version (ubuntu-latest) (push) Failing after 4s
test / test-python-version (windows-latest) (push) Failing after 4s
test-cache / test-restore-cache-dependency-glob (push) Failing after 4s
test / test-malformed-pyproject-file-fallback (push) Successful in 38s
test / test-python-version (macos-latest) (push) Successful in 1m11s
CodeQL / Analyze (TypeScript) (push) Failing after 14m55s
test-cache-windows / test-setup-cache (push) Has been cancelled
test-cache / test-setup-cache (auto, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-setup-cache (false, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-setup-cache (true, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-setup-cache-local (push) Has been cancelled
test-cache / test-tilde-expansion-cache-local-path (push) Has been cancelled
test-cache / test-tilde-expansion-cache-dependency-glob (push) Has been cancelled
test-windows / test-default-version (push) Has been cancelled
test / test-default-version (macos-14) (push) Has been cancelled
test / test-default-version (macos-latest) (push) Has been cancelled
test / test-checksum (a70cbfbf3bb5c08b2f84963b4f12c94e08fbb2468ba418a3bfe1066fbe9e7218, macos-latest) (push) Has been cancelled
test / test-tool-install (macos-14) (push) Has been cancelled
test / test-tool-install (macos-latest) (push) Has been cancelled
test / test-tool-install (windows-latest) (push) Has been cancelled
test / test-tilde-expansion-tool-dirs (push) Has been cancelled
test-cache-windows / test-restore-cache (push) Has been cancelled
test-cache / test-restore-cache (auto, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-restore-cache (auto, ubuntu-latest) (push) Has been cancelled
test-cache / test-restore-cache (false, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-restore-cache (false, ubuntu-latest) (push) Has been cancelled
test-cache / test-restore-cache (true, selfhosted-ubuntu-arm64) (push) Has been cancelled
test-cache / test-restore-cache (true, ubuntu-latest) (push) Has been cancelled
test-cache / test-restore-cache-requirements-txt (push) Has been cancelled
test-cache / test-restore-cache-local (push) Has been cancelled
test-cache / cleanup-tilde-expansion-tests (push) Has been cancelled
Update known checksums / build (push) Failing after 17s
This patch adds support for `s390x` and `powerpc`.

According
https://github.com/nodejs/node/blob/main/BUILDING.md#platform-list ,
only `powerpcle` available on Linux. So we always use
`uv-powerpc64le-unknown-linux-gnu`
2025-02-15 22:30:44 +01:00
Charlie Marsh 182c9c7e92 Change Prettier settings (#36)
## Summary

I know this is a little tedious but I'd prefer to use the same settings
as in Ruff.
2024-09-05 08:06:45 -04:00
Kevin Stillhammer 18498fc78f Initial commit 2024-08-23 23:58:26 +02:00