Skip to content

chore(deps): update astral-sh/setup-uv action to v6 #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 24, 2025

This PR contains the following updates:

Package Type Update Change
astral-sh/setup-uv action major v5.4.2 -> v6.3.1

Release Notes

astral-sh/setup-uv (astral-sh/setup-uv)

v6.3.1: 🌈 Do not warn when version not in manifest-file

Compare Source

Changes

This is a hotfix to change the warning messages that a version could not be found in the local manifest-file to info level.

A setup-uv release contains a version-manifest.json file with infos in all available uv releases. When a new uv version is released this is not contained in this file until the file gets updated and a new setup-uv release is made.
We will overhaul this process in the future but for now the spamming of warnings is removed.

🐛 Bug fixes

🧰 Maintenance

v6.3.0: 🌈 Use latest version from manifest-file

Compare Source

Changes

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.

🚀 Enhancements

v6.2.1: 🌈 Fix "No such file or directory version-manifest.json"

Compare Source

Changes

Release v6.2.0 contained a bug that slipped through the automated test. The action tried to look for the default version-manifest.json in the root of the repostory using this action instead of relative to the action itself.

🐛 Bug fixes

v6.2.0: 🌈 New input manifest-file

Compare Source

Changes

This release adds a new input 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.

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.

For example:

[
  {
    "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"
  },
  ...
]
- name: Use a custom manifest file
  uses: astral-sh/setup-uv@v6
  with:
    manifest-file: "https://example.com/my-custom-manifest.json"

[!WARNING]
If you have previously used server-url to use your self hosted uv binaries use this new way instead.
server-url is deprecated and will be removed in a future release

🚀 Enhancements
🧰 Maintenance

v6.1.0: 🌈

Compare Source

Changes

This release adds the input server-url which defaults to https://github.com. You can set this to a custom url to control where this action downloads the uv release from. This is useful for users of gitea and comparable solutions.

@​sebadevo pointed out that we don't invalidate the cache when the prune-cache input is changed. This leads to unnessecarily big caches. The input is now used to compute the cache key, properly invalidating the cache when it is changed.

[!NOTE]
For most users this release will invalidate the cache once.
You will see the known warning no-github-actions-cache-found-for-key
This is expected and will only appear once.

🐛 Bug fixes

🚀 Enhancements

🧰 Maintenance

📚 Documentation

  • Add section to README explaining if packages are installed by setup-uv @​pirate (#​398)

⬆️ Dependency updates

v6.0.1: 🌈 Fix default cache dependency glob

Compare Source

Changes

The new default in v6 used illegal patterns and therefore didn't match requirements files. This is now fixed.

🐛 Bug fixes

🧰 Maintenance

⬆️ Dependency updates

v6.0.0: 🌈 activate-environment and working-directory

Compare Source

Changes

This version contains some breaking changes which have been gathering up for a while. Lets dive into them:

Activate environment

In previous versions using the input python-version automatically activated a venv at the repository root.
This led to some unwanted side-effects, was sometimes unexpected and not flexible enough.

The venv activation is now explicitly controlled with the new input activate-environment (false by default):

- name: Install the latest version of uv and activate the environment
  uses: astral-sh/setup-uv@v6
  with:
    activate-environment: true
- run: uv pip install pip

The venv gets created by the uv venv command so the python version is controlled by the python-version input or the files pyproject.toml, uv.toml, .python-version in the working-directory.

Working Directory

The new input working-directory controls where we look for pyproject.toml, uv.toml and .python-version files
which are used to determine the version of uv and python to install.

It can also be used to control where the venv gets created.

- name: Install uv based on the config files in the working-directory
  uses: astral-sh/setup-uv@v6
  with:
    working-directory: my/subproject/dir

[!CAUTION]

The inputs pyproject-file and uv-file have been removed.

Default cache-dependency-glob

@​ssbarnea found out that the default cache-dependency-glob was not suitable for a lot of users.

The old default

cache-dependency-glob: |
  **/requirements*.txt
  **/uv.lock

is changed and should cover over 99.5% of use cases:

cache-dependency-glob: |
  **/*(requirements|constraints)*.(txt|in)
  **/pyproject.toml
  **/uv.lock

[!NOTE]

This shouldn't be a breaking change. The only thing you may notice is that your caches get invalidated once.

Use default cache dir on self hosted runners

The directory where uv stores its cache was always set to a directory in RUNNER_TEMP. For self-hosted runners this made no sense as this gets cleaned after every run and led to slower runs than necessary.

On self-hosted runners UV_CACHE_DIR is no longer set and the default cache directory is used instead.

🚨 Breaking changes

🧰 Maintenance

📚 Documentation


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) April 24, 2025 14:29
@renovate renovate bot force-pushed the renovate/astral-sh-setup-uv-6.x branch 3 times, most recently from e65cbce to 67934c8 Compare April 29, 2025 22:09
@renovate renovate bot force-pushed the renovate/astral-sh-setup-uv-6.x branch from 67934c8 to a2189e7 Compare May 23, 2025 11:34
@renovate renovate bot force-pushed the renovate/astral-sh-setup-uv-6.x branch 2 times, most recently from c53ec14 to a9cd5b3 Compare June 19, 2025 22:09
@renovate renovate bot force-pushed the renovate/astral-sh-setup-uv-6.x branch from a9cd5b3 to ebf1298 Compare June 25, 2025 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

0 participants