100 Commits
Author SHA1 Message Date
68559e99cc Use Astral mirror for version manifests with GitHub fallback (#1119)
Amp-Thread-ID:
https://ampcode.com/threads/T-01a1822a-68da-7125-9e7d-16e038ab0840

Closes: #1118

Co-authored-by: Amp <amp@ampcode.com>
2026-10-28 15:09:55 +01:00
2f29784424 docs: use JSDoc for compatible release specifier comment (#1113)
Amp-Thread-ID:
https://ampcode.com/threads/T-01a17443-b5b9-703c-8877-780650eae403

Co-authored-by: Amp <amp@ampcode.com>
2026-10-26 08:49:11 +01:00
Kevin StillhammerandGitHub 18d369b23d chore(deps): roll up Dependabot updates (#1101)
## Summary

Roll up the remaining dependency changes from eight open Dependabot PRs
against current `main`, without reverting newer workflow settings:

- CodeQL init, analyze, and autobuild: 4.37.7 → 4.38.1 (#1097, #1096,
#1095)
- zizmor-action: 0.6.3 → 0.6.4 (#1085)
- @biomejs/biome: 2.5.9 → 2.5.11, including its schema URL (#1075)
- @types/node: 26.2.0 → 26.4.0 (#1074)
- Jest: 30.4.2 → 30.5.0 (#1073)
- js-yaml: 5.3.0 → 5.4.1 (#1072)

All nine open Dependabot PRs had remaining dependency changes; none was
a no-op. TypeScript 7.0.2 (#1029) is intentionally deferred with
maintainer approval: ts-jest 29.4.11 requires TypeScript <7, and
applying the update caused all 15 test suites to fail before running
with `Cannot read properties of undefined (reading 'readFile')`.

The lockfile was regenerated using npm install with scripts disabled. No
runtime dependency entries changed, and repackaging produced no `dist/`
changes.

## Validation

Using Node 24.19.0 and npm 11.10.0:

- `npm ci --ignore-scripts`
- `npm run all` — passed; 15 test suites, 159 tests; Biome applied no
fixes
- `npm audit signatures` — all 353 audited packages have verified
registry signatures; 38 have verified attestations
- `actionlint .github/workflows/codeql-analysis.yml
.github/workflows/test.yml` — passed
- `uvx zizmor --no-progress --offline
.github/workflows/codeql-analysis.yml .github/workflows/test.yml` — no
findings
- `git diff --check` — passed

Refs: pi-session 01a15ec2-de1a-7557-a0bb-00369b0a4a10
2026-10-21 16:17:16 +02:00
c18668ad3c chore(deps): roll up Dependabot updates (#1059)
Co-authored-by: Amp <amp@ampcode.com>
2026-09-21 08:40:50 +02:00
a761a4e9af Disable automatic cache saves for merge queues (#1056)
Amp-Thread-ID:
https://ampcode.com/threads/T-01a0af68-f950-77dc-b9ae-9402987584c8

Closes: #1052

Co-authored-by: Amp <amp@ampcode.com>
2026-09-17 15:56:38 +02:00
Kevin StillhammerandGitHub bec219d24c chore(deps-dev): roll up Dependabot updates (#1043)
## Summary

- bump `@biomejs/biome` from 2.5.7 to 2.5.8 (#1042)
- bump `@types/node` from 26.1.2 to 26.2.0 (#1039)
- bump `esbuild` from 0.28.1 to 0.28.2 (#1040)
- update the Biome schema URL to 2.5.8

The TypeScript 7.0.2 update from #1029 is intentionally excluded:
`ts-jest` currently declares TypeScript `<7`, and the update causes all
unit suites to fail during ts-jest configuration.

## Validation

- `npm run all` (npm 11.10.0)

Refs: pi-session 01a08ca1-d3b3-7190-a02e-9a955e1b58b0
2026-09-10 21:10:42 +02:00
William WoodruffandGitHub 92a7c9ffa6 Use self-repo syntax for all in-repo actions/reusable workflows (#1024)
With the self-repo syntax, we also shouldn't need any of these
`actions/checkout` calls.

Signed-off-by: William Woodruff <william@yossarian.net>

---------

Signed-off-by: William Woodruff <william@yossarian.net>
2026-08-16 22:14:36 +02:00
William WoodruffandGitHub 51a7fe0131 Pin one-shot tools (#1022)
This just adds some pins to the action tests; these tests don't rely on
the packages under test being unpinned.

---

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
2026-08-16 21:44:17 +02:00
William WoodruffandGitHub 42bafdadf9 Add dependency cooldowns (#1021)
This does two things:

- Bumps our Dependabot-side cooldowns to 30d
- Adds an NPM-side 7d cooldown

The idea is to give automated cooldowns a longer period, whereas humans
doing maintenance/manual bumps can opt into a newer package as needed.

---

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
2026-08-16 21:41:43 +02:00
Kevin StillhammerandGitHub b555614122 ci: remove obsolete direct push attempts (#1019)
## Summary
- remove direct pushes to `main` from the docs update workflow
- remove the same dead push path from the known-checksums workflow
- create update pull requests directly when changes exist

Direct pushes cannot satisfy the repository rule requiring changes
through pull requests.

## Validation
- `npm ci --ignore-scripts`
- `npm run all`
- `actionlint .github/workflows/update-docs.yml
.github/workflows/update-known-checksums.yml`
- `uvx zizmor .github/workflows/update-docs.yml
.github/workflows/update-known-checksums.yml`

Refs: pi-session 019fff9d-7357-783c-8529-65bc5bf562c2
2026-08-14 11:40:50 +02:00
Kevin StillhammerandGitHub ae62891fec chore(deps): roll up Dependabot updates (#1013)
## Summary

Roll up the remaining dependency changes from:

- #1008 (`@actions/glob` 0.7.0)
- #1009 (`@types/node` 26.1.2)
- #1010 (`js-yaml` 5.2.3)
- #1011 (`@biomejs/biome` 2.5.7)
- #1012 (`@types/semver` 7.8.0)

The Biome schema URL and committed action bundles are updated
accordingly.

## Validation

- `npm run all`

Refs: pi-session 019ff5b2-b439-7431-9595-b965f7fe6119
2026-08-12 13:23:43 +02:00
Kevin StillhammerandGitHub f9cdb47d48 Reject paths in .tool-versions (#1007)
## Summary
- reject path-like uv versions from `.tool-versions`
- reject path-like Python versions from `.tool-versions`
- document the restriction and cover Unix and Windows paths in tests

## Testing
- `npm ci --ignore-scripts`
- `npm run all`

Refs: pi-session 019ff4bb-8b7c-7c4b-8bdf-7c188dfa2e3f
2026-08-12 13:18:20 +02:00
Kevin StillhammerandGitHub 4f6036f71c Require pull requests for Dependabot rollups (#1005)
## Summary

- require the Dependabot rollup skill to commit and push validated
changes
- always create a pull request with the `dependencies` label
- report the created PR and label confirmation

## Testing

- `git diff --check`

Refs: pi-session 019ff0f1-1aee-7691-8a2c-7c708812f7b0
2026-08-11 15:18:43 +02:00
Kevin StillhammerandGitHub 8d6402c9b7 chore(deps): roll up Dependabot updates (#1004)
## Summary

Roll up the remaining dependency changes from Dependabot PRs #997, #998,
#999, #1000, #1001, #1002, and #1003:

- update `github/codeql-action` to 4.37.6
- update `zizmorcore/zizmor-action` to 0.6.2
- update `undici` to 8.10.0
- update `smol-toml` to 1.7.1
- update `@biomejs/biome` and its schema to 2.5.6
- regenerate the published bundles

PRs #905 and #907 were excluded because their requested Jest and pep440
versions are already present on `main`.

## Validation

- `npm run all`
- `actionlint .github/workflows/codeql-analysis.yml
.github/workflows/test.yml`
- `uvx zizmor .github/workflows/codeql-analysis.yml
.github/workflows/test.yml`
- `git diff --check`

Refs: pi-session 019ff0c9-8e00-72d3-99ad-d4383a4c57d4
2026-08-11 15:08:35 +02:00
Kevin StillhammerandGitHub 46f427bd47 Read Python version from .tool-versions (#996)
## Summary
- read the Python version from an explicitly selected `.tool-versions`
file
- preserve `python-version` and existing `UV_PYTHON` precedence
- add parser, input, and workflow coverage and update documentation and
bundled action artifacts

## Validation
- `npm run all`
- `actionlint .github/workflows/test.yml`
- `uvx zizmor .github/workflows/test.yml`

Closes #983

Refs: pi-session 019ff01a-544c-79f3-8f73-a00132af39f5
2026-08-11 14:26:03 +02:00
Kevin StillhammerandGitHub 8ed89c5114 ci: pin Alpine container image (#995)
## Summary

- pin the Alpine test container to the current multi-platform digest for
Alpine 3.24.1
- resolve zizmor's `unpinned-images` finding

## Validation

- `actionlint .github/workflows/test.yml`
- `uvx zizmor .github/workflows/test.yml`
- `docker buildx imagetools inspect
alpine@sha256:28bd5fe8b56d1bd048e5babf5b10710ebe0bae67db86916198a6eec434943f8b`

Refs: pi-session 019ff01a-544c-79f3-8f73-a00132af39f5
2026-08-11 11:47:08 +02:00
Kevin StillhammerandGitHub 8473c7fea4 chore(deps): roll up Dependabot updates (#994)
## Summary

Roll up the remaining net changes from the open Dependabot updates:

- release-drafter/release-drafter 7.7.0 (#990)
- github/codeql-action 4.37.4 (#987, #988, #989)
- zizmorcore/zizmor-action 0.6.1 (#986)
- @actions/cache 6.2.0 (#975)
- @biomejs/biome 2.5.4 (#974)
- undici 8.7.0 (#973)

The Jest 30.4.2 (#905) and @renovatebot/pep440 5.0.0 (#907) updates are
already present on main and require no additional changes.

This also updates the Biome schema, applies the formatter changes from
Biome 2.5.4, and regenerates the published bundles.

## Testing

- `npm run all`
- `actionlint`
- `git diff --check`

Refs: pi-session 019ff01b-f917-73c1-950e-2966956f263c
2026-08-11 11:27:16 +02:00
Kevin StillhammerandGitHub 18d451d679 Add latest-known version selector (#993)
## Summary

- add `latest-known` as an explicit version selector
- resolve it locally to the newest version in the bundled checksum table
- preserve existing default and `latest` behavior
- document custom-manifest checksum semantics and update published
bundles

## Testing

- `npm ci --ignore-scripts`
- `npm run all` (99 tests passed)

Closes #919

Refs: pi-session 019fed0e-6019-7504-911b-bd9955cbbd49
2026-08-11 11:15:59 +02:00
Kevin StillhammerandGitHub f45168497b Disable automatic caching for sensitive events (#992)
## Summary

- disable `enable-cache: auto` for `pull_request_target`,
`workflow_run`, and `release` events
- disable automatic caching for tag pushes while leaving branch pushes
unchanged
- preserve explicit `enable-cache: true` as an override
- run a `workflow_run` integration fixture with `act` in pull request CI
and verify caching is disabled
- document the behavior and update the published bundles

## Testing

- `npm run all`
- `actionlint .github/workflows/test.yml
__tests__/workflows/workflow-run.yml`
- `uvx zizmor __tests__/workflows/workflow-run.yml`

Closes #984

Refs: pi-session 019fec42-9b26-714e-a359-830ac4401ecd
2026-08-10 18:12:08 +02:00
Kevin StillhammerandGitHub c771a70e62 chore(deps): roll up Dependabot updates (#970)
## Summary

Roll up the remaining dependency changes from Dependabot PRs:

- #966: update `actions/setup-node` from 6.4.0 to 7.0.0
- #965: update `js-yaml` from 4.1.1 to 5.2.1
- #964: update `@types/node` from 26.0.1 to 26.1.1
- #963: update `esbuild` from 0.28.0 to 0.28.1

PRs #907 and #905 require no net changes because `@renovatebot/pep440`
5.0.0 and Jest 30.4.2 are already on `main`.

## Validation

- `npm run all`

Refs: pi-session 019f854e-4714-73ad-8de2-e79900f41b4d
2026-07-21 17:36:40 +02:00
Kevin StillhammerandGitHub 2269552d54 Speed up version client by partial response reads (#807) 2026-07-21 17:26:32 +02:00
Kevin StillhammerandGitHub 71966eff34 chore(deps): roll up Dependabot updates (#962)
## Summary

- update all CodeQL actions from 4.36.2 to 4.37.0
- update `smol-toml` from 1.6.1 to 1.7.0
- update `@types/node` from 25.5.0 to 26.0.1
- update `@vercel/ncc` from 0.44.0 to 0.44.1
- regenerate bundled action artifacts

Supersedes #950, #951, #952, #957, #958, and #959. The updates from #905
and #907 are already present on `main`.

Refs: pi-session 019f796d-a374-7a76-a8e4-1699b89ec8e6
2026-07-19 10:28:45 +02:00
Kevin StillhammerandGitHub 11f9893b08 chore: roll up Dependabot updates (#948)
## Summary
- roll up remaining open Dependabot updates for zizmor-action,
@actions/cache, @biomejs/biome, and @vercel/ncc
- update Biome schema and migrate recommended rules to the new preset
field
- regenerate dist bundles

## Validation
- npm run check
- npm run all

Refs: pi-session 019f4055-b39c-778f-9d9f-092115939c33
2026-07-08 11:05:26 +02:00
Kevin StillhammerandGitHub f98e069381 Change update-docs PR labels from 'update-docs' to 'documentation' (#945) 2026-07-07 10:10:29 +02:00
Kevin StillhammerandGitHub d31148d669 Strip environment markers from detected uv dependency pins (#938)
## Summary
- strip PEP 508 environment markers before extracting uv versions from
dependency entries
- cover dependency-group pins with and without whitespace before the
marker
- cover requirements-style pins with markers

Fixes #920

## Validation
- npm ci --ignore-scripts
- npm run all

Refs: pi-session 019f316a-4108-7975-892f-ee5bf8abc7c3
2026-07-05 10:47:17 +02:00
Kevin StillhammerandGitHub 17c398959b Fix cache keys for Python version ranges (#937)
## Summary
- URL-encode the Python version component before adding it to the cache
key
- URL-encode the user-provided cache suffix for the same reason
- Add cache key tests for Python ranges, comma-containing suffixes, and
unchanged simple inputs

Fixes #914

Refs: pi-session 019f3164-85e7-7817-bffd-501d89b3a1fd

## Tests
- npm run all
2026-07-05 10:46:44 +02:00
Kevin StillhammerandGitHub 3cc3c11fdf chore(deps): roll up Dependabot updates (#936)
## Summary
- Roll up open Dependabot npm and GitHub Actions updates
- Update Biome schema to 2.4.16
- Regenerate bundled dist artifacts

## Validation
- npm run all

Refs: pi-session 019f3160-c4af-7606-b4be-648e0abff131
2026-07-05 10:34:07 +02:00
Kevin StillhammerandGitHub a1a7345c8e ci: call docs update workflow from release (#933)
- replace the docs update tag-push trigger with manual and reusable
workflow entrypoints
- call the docs update reusable workflow after publishing a release
- keep manual docs updates available by selecting the latest semver tag

Refs: pi-session 019f2352-565c-7f60-b96b-f2546fb1690f
2026-07-02 17:48:02 +02:00
Kevin StillhammerandGitHub fac544c07d chore(deps): roll up dependabot updates (#903)
Rolls up the current open Dependabot npm updates:

- #848 esbuild from 0.27.5 to 0.28.0
- #847 undici from 8.0.0 to 8.3.0
- #846 ts-jest from 29.4.9 to 29.4.11
- #841 @biomejs/biome from 2.4.10 to 2.4.15, including the matching
biome.json schema URL update

Validation:

- npm run all
2026-06-03 10:21:55 +02:00
Kevin StillhammerandGitHub 7390f777b0 docs: update dependabot rollup biome guidance (#902)
Updates the dependabot-pr-rollup skill to document that @biomejs/biome
dependency updates must also update the matching schema URL version in
biome.json.
2026-06-03 09:50:08 +02:00
Kevin StillhammerandGitHub 363c64a728 chore(deps): roll up dependabot updates (#901)
Rolls up the current open Dependabot npm updates:

- #848 esbuild from 0.27.4 to 0.27.5
- #847 undici from 7.24.2 to 8.0.0
- #846 ts-jest from 29.4.6 to 29.4.9
- #841 @biomejs/biome from 2.4.7 to 2.4.10, including the matching
biome.json schema URL update
- #834 smol-toml from 1.6.0 to 1.6.1

Validation:

- npm run all
2026-06-03 09:49:40 +02:00
Kevin StillhammerandGitHub a92cb43098 Add quiet input to suppress info-level log output (#898)
## Summary

Adds a new `quiet` input (default: `false`) that suppresses `info`-level
log output when set to `true`. Only warnings and errors are shown.

Contributes to: #868
2026-05-31 21:13:30 +02:00
Kevin StillhammerandGitHub b9c8c4c7ba feat: add download-from-astral-mirror input (#897)
## Summary

Add a new boolean input `download-from-astral-mirror` (default: `true`)
that controls whether uv is downloaded from the Astral mirror or
directly from GitHub Releases.

When set to `false`, the mirror rewrite is skipped entirely and the
download goes straight to GitHub Releases.

Closes: #870
2026-05-31 11:47:01 +02:00
Kevin StillhammerandGitHub 818affc359 fix: report unexpected cache save failures (#896)
## Summary
- add top-level uncaughtException and unhandledRejection handlers for
the save-cache entrypoint
- report unexpected post-action failures through core.setFailed with
stack/context
- regenerate the committed save-cache bundle
2026-05-31 11:25:35 +02:00
Kevin StillhammerandGitHub feda7fc6a9 fix: report unexpected setup failures (#895)
## Summary
- add top-level uncaughtException and unhandledRejection handlers for
the setup entrypoint
- report unexpected failures through core.setFailed with stack/context
- regenerate the committed setup bundle
2026-05-31 11:17:46 +02:00
Kevin StillhammerandGitHub 7568f55a9a increase libuv-workaround timeout to 100ms (#880)
This should fix
https://github.com/astral-sh/setup-uv/issues/686#issuecomment-4389301919
2026-05-13 08:28:39 +02:00
Kevin StillhammerandGitHub c0b7f63f92 Bump setup-uv references to v8.1.0 SHA in docs (#862)
Update all `astral-sh/setup-uv@` references in documentation from
`cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0` to
`08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0`.

Files updated:
- `README.md`
- `docs/caching.md`
- `docs/customization.md`
- `docs/environment-and-tools.md`
- `docs/advanced-version-configuration.md`
2026-04-17 09:25:20 +02:00
Kevin StillhammerandGitHub d854a6dce4 Add update-docs.yml workflow (#861) 2026-04-17 09:10:53 +02:00
Kevin StillhammerandGitHub 08807647e7 fix: grant contents:write to validate-release job (#860)
## Problem

The release workflow fails at the `validate-release` job because `gh
release view` cannot find draft releases. This is because the job only
has `contents: read` permission, but GitHub requires `contents: write`
to view draft releases.

See failed run:
https://github.com/astral-sh/setup-uv/actions/runs/24528604608

## Fix

Bump `validate-release` job permissions from `contents: read` to
`contents: write`, matching the `release` job which already has this
permission.
2026-04-16 21:58:54 +02:00
Kevin StillhammerandGitHub 5a911eb3a3 Draft commitish releases (#858) 2026-04-16 20:26:15 +02:00
Kevin StillhammerandGitHub 080c31e04c Add action-types.yml to instructions (#857) 2026-04-16 20:19:09 +02:00
Kevin StillhammerandGitHub b3e97d2ba1 Add input no-project in combination with activate-environment (#856)
Closes: #854
2026-04-16 15:48:02 +02:00
Kevin StillhammerandGitHub cdfb2ee6dd Refactor version resolving (#852) 2026-04-11 11:38:41 +02:00
Kevin StillhammerandGitHub d7fe1a5a18 Update ignore-nothing-to-cache documentation (#833)
Add the error message so it can be found when searching for it

Helps issues like #831
2026-03-31 09:27:10 +02:00
Kevin StillhammerandGitHub 16592cddee Pin setup-uv docs to v8 (#829)
Update all README and docs examples to use the pinned v8 release SHA for
astral-sh/setup-uv, with a comment showing the release version for
clarity and best practices.
2026-03-29 19:36:34 +02:00
Kevin StillhammerandGitHub cec208311d Shortcircuit latest version from manifest (#828)
The first version is guaranteed to be the latest
2026-03-28 17:43:22 +01:00
Kevin StillhammerandGitHub 4dd8ab4520 Simplify inputs.ts (#827)
Do not pass around inputs.
Its okay to freely work with core.getInput in this file
2026-03-28 17:38:30 +01:00
Kevin StillhammerandGitHub 7fdbe7cf0c Remove update-major-minor-tags workflow (#826) 2026-03-28 16:29:52 +01:00
Kevin StillhammerandGitHub 485abd05e5 Bump release-drafter to v7.1.1 (#825) 2026-03-28 16:25:54 +01:00
Kevin StillhammerandGitHub f82eb19c06 Refactor inputs (#823)
Don't load at import time and make it easier to test
2026-03-28 16:23:26 +01:00
Kevin StillhammerandGitHub 868d1f74d9 Replace inline compile args with tsconfig (#824) 2026-03-28 16:19:09 +01:00
Kevin StillhammerandGitHub 89709315bb Remove deprecrated custom manifest (#813) 2026-03-23 09:15:51 +01:00
Kevin StillhammerandGitHub 8cc8d1cbfc Fix latest-version workflow check (#812)
## Summary
- make the latest-version workflow test use the action output for the
exact installed version
- allow `uv --version` to include additional platform/build metadata
- keep validating that the reported version matches the latest GitHub
release

## Testing
- npm ci --ignore-scripts
- npm run all
- actionlint .github/workflows/test.yml

Fixes the failure in
https://github.com/astral-sh/setup-uv/actions/runs/23332230171/job/67866051063
2026-03-20 10:51:55 +01:00
Kevin StillhammerandGitHub fd8f376b22 Switch to ESM for source and test, use CommonJS for dist (#806) 2026-03-14 17:43:49 +01:00
Kevin StillhammerandGitHub f9070de1ea Bump deps (#805) 2026-03-14 12:54:28 +01:00
Kevin StillhammerandGitHub e06108dd0a Use astral-sh/versions as primary version provider (#802)
Closes: #777
Closes: #325
2026-03-12 22:03:21 +01:00
Kevin StillhammerandGitHub 0f6ec07aaf docs: replace copilot instructions with AGENTS.md (#794)
## Summary
- replace the root `AGENTS.md` symlink with a real file
- move the agent instructions out of `.github/copilot-instructions.md`
into `AGENTS.md`
- trim the content down to concise, repo-specific guidance and add a
short repository orientation

## Testing
- not run (docs-only change)
2026-03-10 18:32:16 +01:00
Kevin StillhammerandGitHub 821e5c9815 docs: add cross-client dependabot rollup skill (#793)
## Summary
- add a reusable skill for the Dependabot PR rollup workflow
- place it under `.agents/skills/` for cross-client discovery
- keep the skill aligned with the Agent Skills standard and
client-agnostic

## Details
- adds `.agents/skills/dependabot-pr-rollup/SKILL.md`
- documents the workflow for:
  - finding open Dependabot PRs
  - comparing PR heads to their base branch
  - replaying only net dependency changes in a fresh worktree
  - running `npm run all`
  - optionally committing, pushing, and opening a PR

## Notes
- `.agents/skills/` is the shared interoperability location used across
multiple coding agents
- no code changes
- tests not run (documentation-only skill)
2026-03-10 18:16:24 +01:00
Kevin StillhammerandGitHub 6ee6290f1c chore(deps): bump versions (#792)
## Summary
- replicate the currently open Dependabot dependency updates in a single
branch
- update `smol-toml` to `^1.6.0`
- update `@biomejs/biome` to `2.3.8`
- regenerate `package-lock.json` and bundled `dist` output

## Notes
- `main` already includes the open Octokit Dependabot bumps, so those
PRs required no additional net changes here
- the open `smol-toml` Dependabot PR currently resolves to `^1.6.0`,
which is what this branch mirrors

## Validation
- `npm run all`
2026-03-10 17:49:45 +01:00
Kevin StillhammerandGitHub fe3617d6e9 Delete .github/workflows/dependabot-build.yml (#789)
Too many security issues and complex setup. Using a Skill instead
2026-03-07 12:12:14 +01:00
Kevin StillhammerandGitHub 2ff70eebcc Harden Dependabot build workflow (#788)
## Summary
- keep the Dependabot build workflow single-job, but harden it a bit
- replace `git-auto-commit-action` with explicit `git` commands and
step-scoped push auth
- add concurrency, a timeout, stricter Dependabot gating, and a guard
for moved PR heads

## Why
The workflow currently fails in the commit step because
`actions/checkout` uses `persist-credentials: false`, but
`git-auto-commit-action` later tries to push via `origin` without any
credentials:

```
fatal: could not read Username for 'https://github.com': No such device or address
```

This change fixes that failure while keeping credentials scoped to the
push step instead of persisting them for the whole job.

## Details
- require `github.event.pull_request.user.login == 'dependabot[bot]'`
- also require the PR head repo to match `github.repository`
- also require the head ref to start with `dependabot/`
- check out the exact PR head SHA
- run `npm ci --ignore-scripts`
- disable git hooks before commit
- skip the dist commit if the PR head moved during the run

## Validation
- `actionlint .github/workflows/dependabot-build.yml`
2026-03-07 12:05:51 +01:00
Kevin StillhammerandGitHub 02182fa02a fix: warn instead of error when no python to cache (#762)
Fixes: #754
2026-02-06 16:00:33 +01:00
Kevin StillhammerandGitHub 78cebeceac fix: use --clear to create venv (#761)
Fixes: https://github.com/astral-sh/setup-uv/issues/758
2026-02-06 10:48:26 +01:00
Kevin StillhammerandGitHub b6b8e2cd6a refactor: tilde-expansion tests as unittests and no self-hosted tests (#760) 2026-02-06 10:37:43 +01:00
Kevin StillhammerandGitHub 3511ff7054 feat: add venv-path input for activate-environment (#746)
Allow customizing the venv location while preserving working-directory
semantics via --directory.

Supersedes: #736
2026-02-04 08:40:32 +01:00
Kevin StillhammerandGitHub 8512ad0289 Clarify impact of using actions/setup-python (#732)
Closes: #724
2026-01-12 18:00:39 +01:00
Kevin StillhammerandGitHub 61cb8a9741 add outputs python-version and python-cache-hit (#728)
This commit splits up the "normal" cache containing the dependencies and
the "python" cache containing the python binaries. This will lead to a
one-time invalidation of caches.

Closes: #713
2026-01-06 18:06:29 +01:00
Kevin StillhammerandGitHub 11050edb83 fix: use uv_build backend for old-python-constraint-project (#729)
The test-no-python-version test was failing because hatchling's
dependency on pathspec was incompatible with Python 3.9,
causing a TypeError during the build process.

Fixed by switching from hatchling to uv_build backend
(0.9.22-0.10.0 range) which is fully compatible with
Python 3.9. The uv.lock file is updated to reflect the
new build backend and latest compatible versions of dependencies.
2026-01-06 17:41:21 +01:00
Kevin StillhammerandGitHub 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 StillhammerandGitHub 93202d8fbe bump dependencies (#709) 2025-12-07 18:56:35 +01:00
Kevin StillhammerandGitHub 5ce090076d set biome files.maxSize to 2MiB (#708)
Account for large known checksums
2025-12-07 17:54:20 +01:00
Kevin StillhammerandGitHub 4180991cd9 allow cache-local-path w/o enable-cache (#707)
Fixes: #705
2025-12-07 17:52:54 +01:00
Kevin StillhammerandGitHub 1e862dfacb Wait 50ms before exit to fix libuv bug (#689)
Fixes: #686
2025-11-21 09:00:37 +01:00
Kevin StillhammerandGitHub 5a7eac68fb use old undici and ES2022 target for act support (#678) 2025-11-10 19:48:23 +01:00
Kevin StillhammerandGitHub 85856786d1 Bump dependencies (#664) 2025-10-26 15:59:34 +01:00
Kevin StillhammerandGitHub cb6c0a53d9 Change version in docs to v7 (#647) 2025-10-16 08:23:23 +02:00
Kevin StillhammerandGitHub dffc6292f2 Use working-directory to detect empty workdir (#645)
Fixes: #642
2025-10-16 08:21:58 +02:00
Kevin StillhammerandGitHub b1daf91f4e Update lockfile with latest npm (#636) 2025-10-13 13:15:28 +02:00
Kevin StillhammerandGitHub 3259c6206f Bump deps (#633) 2025-10-12 20:47:54 +02:00
Kevin StillhammerandGitHub bf8e8ed895 Split up documentation (#632)
Closes: #558
2025-10-12 20:27:08 +02:00
Kevin StillhammerandGitHub a5129e99f4 Add copilot-instructions.md (#630) 2025-10-11 19:18:50 +02:00
Kevin StillhammerandGitHub d18bcc753a Add value of UV_PYTHON_INSTALL_DIR to path (#628)
Closes: #610
2025-10-11 18:42:06 +02:00
Kevin StillhammerandGitHub bd1f875aba Set output venv when activate-environment is used (#627)
Closes: #622
2025-10-11 15:17:25 +02:00
Kevin StillhammerandGitHub e0249f1599 Fall back to PR for updating known versions (#623) 2025-10-10 17:23:48 +02:00
Kevin StillhammerandGitHub eb1897b8dc Bump dependencies (#613) 2025-10-07 21:44:39 +02:00
Kevin StillhammerandGitHub 535dc2664c Respect UV_CACHE_DIR and cache-dir (#612)
Fixes: #583
2025-10-07 16:08:30 +02:00
Kevin StillhammerandGitHub f610be5ff9 Use --force when pruning cache (#611)
To prevent waiting forever on other running uv processes
2025-10-07 09:42:14 +02:00
Kevin StillhammerandGitHub 3deccc0075 Use node24 instead of node20 (#608) 2025-10-07 08:44:57 +02:00
Kevin StillhammerandGitHub d9ee7e2f26 Remove deprecated input server-url (#607) 2025-10-03 19:48:56 +02:00
Kevin StillhammerandGitHub 51c3328db2 Fix test-uv-no-modify-path (#604) 2025-10-02 20:52:56 +02:00
Kevin StillhammerandGitHub f2859da213 Respect UV_NO_MODIFY_PATH (#603)
Fixes: #519
2025-10-02 17:54:15 +02:00
Kevin StillhammerandGitHub 82f21a54fe Don't assume all test passed if cancelled (#599) 2025-09-30 20:05:38 +02:00
Kevin StillhammerandGitHub d8a37f6566 Shortcut to latest version for minimum version specifier (#598)
This is faster than downloading all available versions from GitHub to
determine the highest matching version.

Fixes: #585
2025-09-30 19:55:27 +02:00
Kevin StillhammerandGitHub d0cc045d04 Always show prune cache output (#597) 2025-09-30 17:05:27 +02:00
Kevin StillhammerandGitHub 07f2cb5db9 persist credentials for version update (#584) 2025-09-23 08:28:27 +02:00
Kevin StillhammerandGitHub b75a909f75 bump deps (#569) 2025-09-14 13:04:41 +00:00
Kevin StillhammerandGitHub dc724a12b6 Add inputs restore-cache and save-cache (#568)
Closes: #555
2025-09-14 14:55:08 +02:00
Kevin StillhammerandGitHub 7edac99f96 Ignore deps starting with uv when finding uv version (#492)
Fixes: #489
2025-07-18 06:10:43 +00:00
Kevin StillhammerandGitHub de545d4421 Bump dependencies (#487) 2025-07-17 18:30:31 +00:00
Kevin StillhammerandGitHub b75ff7d7b8 Add input version-file (#486)
Closes: #411
2025-07-17 20:22:18 +02:00