Pillow
Pillow copied to clipboard
Release Pillow 11.0.0 on October 15, 2024
Highlights:
- Adding support for Python 3.13: https://github.com/python-pillow/Pillow/pull/8181
- Dropping Python 3.8: https://github.com/python-pillow/Pillow/pull/8183
- Removing deprecations: https://github.com/python-pillow/Pillow/pull/8182
Main Release
Released quarterly on January 2nd, April 1st, July 1st and October 15th.
- [x] Open a release ticket e.g. https://github.com/python-pillow/Pillow/issues/3154
- [x] Develop and prepare release in
mainbranch. - [x] Check GitHub Actions and AppVeyor to confirm passing tests in
mainbranch. - [x] Check that all the wheel builds pass the tests in the GitHub Actions "Wheels" workflow jobs by manually triggering them.
- [x] In compliance with PEP 440, update version identifier in
src/PIL/_version.py - [x] Update
CHANGES.rst. - [x] Run pre-release check via
make release-testin a freshly cloned repo. - [x] Create branch and tag for release e.g.:
git branch 11.0.x git tag 11.0.0 git push --tags - [x] Check the GitHub Actions "Wheels" workflow has passed, including the "Upload release to PyPI" job. This will have been triggered by the new tag.
- [x] Publish the release on GitHub.
- [x] In compliance with PEP 440, increment and append
.dev0to version identifier insrc/PIL/_version.pyand then:git push --all
Publicize Release
- [x] Announce release availability via Mastodon e.g. https://fosstodon.org/@pillow/110639450470725321
Documentation
- [x] Make sure the default version for Read the Docs is up-to-date with the release changes
Docker Images
- [x] Update Pillow in the Docker Images repository
git clone https://github.com/python-pillow/docker-images cd docker-images ./update-pillow-tag.sh [[release tag]]
We're pretty much all set for Tuesday's release, pending any normal last-minute merges.
The final Python 3.13 release was delayed by 6 days but went out successfully on 2024-10-07. We don't need a checklist like https://github.com/python-pillow/Pillow/issues/6941 to add Python 3.13; there's less for us to update or wait for now, and everything that needs to be, should already be in place.
As it happens, I'm the next release manager for Python 3.14! And when I sat down with my calendar to plan the release schedule (PEP 745), I accidentally planned my very first CPython alpha release for the same day as this Pillow one! 😅 Not to worry, I'm very happy with our automation here, so I'll aim to kick this one off early. Very worst case, I'll delay this or the 3.14 alpha by a day, which should be fine for either project. But I doubt that will be necessary. And I've now added Pillow releases to my calendar :)
Release started, wheels building: https://github.com/python-pillow/Pillow/actions/runs/11340141751
The upload job failed because something didn't recognise the new licence (https://github.com/python-pillow/Pillow/pull/8460) yet:
WARNING Error during upload. Retry with the --verbose option for more details.
ERROR HTTPError: 400 Bad Request from https://upload.pypi.org/legacy/
'License :: OSI Approved :: CMU License (MIT-CMU)' is not a valid
classifier. See
https://packaging.python.org/specifications/core-metadata for more
information.
https://github.com/python-pillow/Pillow/actions/runs/11340141751/job/31543121169
Will dig further.
Looks like we need https://github.com/pypi/warehouse/pull/16884 merged and deployed to PyPI. I've left a comment there.
Looks like we need pypi/warehouse#16884 merged and deployed to PyPI. I've left a comment there.
Done, CI job restarted, and 75 files successfully uploaded!
- https://github.com/python-pillow/Pillow/actions/runs/11340141751/job/31560995946
- https://pypi.org/project/pillow/11.0.0/#files
Announcement to follow.
Thank you @radarhere @hugovk all!!! Cheers to Pillow 11 🥂 ✨ 🚀
This one goes to eleven!
:rocket: https://fosstodon.org/@pillow/113312110767354794