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?
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.lock
and 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
- Auto activate venv when python-version is set @eifinger (#194)
- Add python version to cache key @eifinger (#187)
🧰 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
- Bump @types/node from 22.10.1 to 22.10.2 @dependabot (#189)
- Update dependencies @eifinger (#186)