github astral-sh/setup-uv v5.0.0
v5.0.0 🎄 Merry Christmas - Help fastly and users by default

latest releases: v5.0, v5, v5.0.1...
one day ago

Changes

This christmans 🎄 release is a bit early bit still full of presents 🎁
Since we are changing some of the defaults this can lead to breaking changes, thus the major version increase.

Here are the highlights:

Default to enable-cache: true on GitHub hosted runners

Did you know that that Fastly, the company hosting PyPI, theoretically has to pay $12.5 million per month and so far have served more than 2.41 exabytes of data?
image

This is why they asked us to turn on caching by default. After weighting the pros and cons we decided to automatically upload the cache to the GitHub Actions cache when running on GitHub hosted runners. You can still disable that with enable-cache: false.

I remember when I first got into actions and didn't understand all the magic. I was baffled that some actions did something behind the scenes to make everything faster. I hope with this change we help a lot of users who are don't want to or are afraid to understand what enable-cache does.

Add **/requirements*.txt to default cache-dependency-glob

If caching is enabled we automatically searched for a uv.lock file and when this changed we knew we had to refresh the cache. A lot of projects don't use this but rather the good old requirements.txt. We now automatically search for both uv.lockand requirements*.txt (this means also requirements-test.txt, requirements-dev.txt, ...) files.
You can change this with cache-dependency-glob

Auto activate venv when python-version is set

Some workflows install packages on the fly. This automatically works when using a python version that is already present on the runner. But if uv installs the version, e.g. because it is a free-threaded version or an old one, it is a standalone-build and installing packages "into the system" is not possible.

We now automatically create a new virtual environment with uv venv and activate it for the rest of the workflow if python-version is used. This means you can now do

- name: Install uv
  uses: astral-sh/setup-uv@auto-environment
  with:
    python-version: 3.13t
- run: uv pip install -i https://pypi.anaconda.org/scientific-python-nightly-wheels/simple cython

🚨 Breaking changes

  • Default to enable-cache: true on GitHub hosted runners @eifinger (#193)
  • Add **/requirements*.txt to default cache-dependency-glob @eifinger (#185)

🐛 Bug fixes

🚀 Enhancements

🧰 Maintenance

  • chore: update known checksums for 0.5.11 @github-actions (#198)
  • chore: update known checksums for 0.5.10 @github-actions (#196)
  • chore: update known checksums for 0.5.9 @github-actions (#195)
  • chore: update known checksums for 0.5.8 @github-actions (#190)
  • chore: update known checksums for 0.5.7 @github-actions (#183)
  • chore: update known checksums for 0.5.6 @github-actions (#179)

📚 Documentation

⬆️ Dependency updates

Don't miss a new setup-uv release

NewReleases is sending notifications on new releases.