Released quarterly on the first day of January, April, July, October.
master
branch.master
branch.src/PIL/_version.py
CHANGES.rst
.make release-test
in a freshly cloned repo.[ ] Create branch and tag for release e.g.:
git branch 5.2.x
git tag 5.2.0
git push --all
git push --tags
[ ] Create source distributions e.g.:
make sdist
[ ] Create binary distributions
[ ] Upload all binaries and source distributions e.g. twine upload dist/Pillow-5.2.0*
[ ] Create a new release on GitHub
[ ] In compliance with PEP 440, increment and append .dev0
to version identifier in src/PIL/_version.py
Released as needed for security, installation or critical bug fixes.
master
branch.CHANGES.rst
.[ ] Check out release branch e.g.:
git checkout -t remotes/origin/5.2.x
[ ] Cherry pick individual commits from master
branch to release branch e.g. 5.2.x
.
[ ] Check Travis CI to confirm passing tests in release branch e.g. 5.2.x
.
[ ] In compliance with PEP 440, update version identifier in src/PIL/_version.py
[ ] Run pre-release check via make release-test
.
[ ] Create tag for release e.g.:
git tag 5.2.1
git push --tags
[ ] Create source distributions e.g.:
make sdist
[ ] Create binary distributions
[ ] Create a new release on GitHub
Released as needed privately to individual vendors for critical security-related bug fixes.
make release-test
[ ] On release date, tag and push to GitHub.
git checkout 2.5.x
git tag 2.5.3
git push origin 2.5.x
git push origin --tags
[ ] Create source distributions e.g.:
make sdist
[ ] Create binary distributions
[ ] Create a new release on GitHub
@cgohlke
for Windows binaries via release ticket e.g. https://github.com/python-pillow/Pillow/issues/1174.@cgohlke
and twine upload *
.[ ] Use the Pillow Wheel Builder:
git clone https://github.com/python-pillow/pillow-wheels
cd pillow-wheels
./update-pillow-tag.sh [[release tag]]
[ ] Download distributions from the Pillow Wheel Builder container.
wget -m -A 'Pillow-<VERSION>*' \
http://a365fff413fe338398b6-1c8a9b3114517dc5fe17b7c3f8c63a43.r19.cf2.rackcdn.com