mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-09-21 03:18:57 +03:00
2ca2ecb792
Also dir does not necessarily have to be clean since the manifest determines what is included.
3.0 KiB
3.0 KiB
Release Checklist
Main Release
Released quarterly on the first day of January, April, July, October.
- Open a release ticket e.g. https://github.com/python-pillow/Pillow/issues/1174
- Develop and prepare release in
master
branch. - Check Travis CI to confirm passing tests in
master
branch. - In compliance with https://www.python.org/dev/peps/pep-0440/, update version identifier in:
PIL/__init__.py setup.py _imaging.c
- Update
CHANGES.rst
. - Run pre-release check via
make pre
. - Create branch and tag for release e.g.:
$ git branch 2.9.x
$ git tag 2.9.0
$ git push --all
$ git push --tags
- Create and upload source distributions e.g.:
$ make sdistup
- Create and upload binary distributions
Point Release
Released as needed for security, installation or critical bug fixes.
- Make necessary changes in
master
branch. - Update
CHANGES.rst
. - Cherry pick individual commits from
master
branch to release branch e.g.2.9.x
. - Check Travis CI to confirm passing tests in release branch e.g.
2.9.x
. - Checkout release branch e.g.:
git checkout -t remotes/origin/2.9.x
- In compliance with https://www.python.org/dev/peps/pep-0440/, update version identifier in:
PIL/__init__.py setup.py _imaging.c
- Run pre-release check via
make pre
. - Create tag for release e.g.:
$ git tag 2.9.1
$ git push --tags
- Create and upload source distributions e.g.:
$ make sdistup
- Create and upload binary distributions
Embargoed Release
Released as needed privately to individual vendors for critical security-related bug fixes.
- Prepare patch for all versions that will get a fix. Test against local installations.
- Commit against master, cherry pick to affected release branches.
- Run local test matrix on each release & Python version.
- Privately send to distros.
- Run pre-release check via
make pre
- Amend any commits with the CVE #
- 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 and upload source distributions e.g.:
$ make sdistup
- Create and upload binary distributions
Binary Distributions
- Contact @cgohlke for Windows binaries.
(Debian requests a tarball, everyone else would just prefer that we choose one and stick to it. So both it is)
- Push a commit to https://github.com/python-pillow/pillow-wheels to build OSX versions (UNDONE latest tag or specific release???)
- Retrieve the OS X Wheels from Rackspace files, upload to PyPi (Twine?)
- Grab Windows binaries,
twine upload dist/*.[whl|egg]
. Manually upload .exe installers. - Announce release availability. Twitter, web.