master branch.master branch.src/PIL/_version.pyCHANGES.rst.make release-test in a freshly cloned repo. $ git branch 2.9.x
$ git tag 2.9.0
$ git push --all
$ git push --tags
$ make sdist
twine upload dist/Pillow-4.1.0-*twine upload *. $ git checkout https://github.com/python-pillow/pillow-wheels
$ cd pillow-wheels
$ git submodule init
$ git submodule update
$ cd Pillow
$ git fetch --all
$ git checkout [[release tag]]
$ cd ..
$ git commit -m "Pillow -> 2.9.0" Pillow
$ git push
3.1.x rather than latest: https://readthedocs.org/projects/pillow/versions/@python-pillow/pillow-team How are we doing on this one folks?
@hugovk Any interest in driving this one? If so, let me know and I'll add you as a Maintainer to PyPI (which will allow you to upload).
Yes, can do. I'm hugovk on PyPI too.
It would be great to get the Python 3.7 wheels in:
Also, a PR would be good to update release notes if anyone would like to look at that.
@hugovk Done, thanks

I'll whip something up to pass as release notes shortly.
Done all the merging that's going to be merged for this one, will let the CIs settle then start on https://github.com/python-pillow/Pillow/blob/master/RELEASING.md.
Hi @cgohlke, please could we have Windows binaries for 5.2.0? Thank you!
Here you go.
However, the tests fail and quit:
Pillow 5.2.0 TEST SUMMARY
--------------------------------------------------------------------
Python modules loaded from X:\Python27-x64\lib\site-packages\PIL
Binary modules loaded from X:\Python27-x64\lib\site-packages\PIL
--------------------------------------------------------------------
--- PIL CORE support ok
--- TKINTER support ok
--- FREETYPE2 support ok
--- LITTLECMS2 support ok
--- WEBP support ok
--- WEBP Transparency support ok
--- WEBPMUX support ok
--- WEBP Animation support ok
--- JPEG support ok
--- OPENJPEG (JPEG2000) support ok
--- ZLIB (PNG/ZIP) support ok
--- LIBTIFF support ok
*** RAQM (Bidirectional Text) support not installed
--------------------------------------------------------------------
Running selftest:
--- 57 tests passed.
============================= test session starts =============================
platform win32 -- Python 2.7.15, pytest-3.6.2, py-1.5.4, pluggy-0.6.0 -- X:\Python27-x64\python.exe
cachedir: .pytest_cache
rootdir: D:\Build\Pillow\Pillow-5.2.0, inifile: setup.cfg
plugins: xdist-1.22.2, timeout-1.2.0, pep8-1.0.6, forked-0.2, faulthandler-1.5.0, cov-2.5.1, hypothesis-3.57.0, celery-4.1.1, backports.unittest-mock-1.3
collected 2356 items
<snip>
tests/test_file_wmf.py::TestFileWmf::test_load_raw <- Tests\test_file_wmf.py FAILED [ 73%]
================================== FAILURES ===================================
__________________________ TestFileWmf.test_load_raw __________________________
self = <test_file_wmf.TestFileWmf testMethod=test_load_raw>
def test_load_raw(self):
# Test basic EMF open and rendering
im = Image.open('Tests/images/drawing.emf')
if hasattr(Image.core, "drawwmf"):
# Currently, support for WMF/EMF is Windows-only
> im.load()
Tests\test_file_wmf.py:15:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <PIL.WmfImagePlugin.WmfStubImageFile image mode=RGB size=1625x1625 at 0xF872320>
def load(self):
loader = self._load()
if loader is None:
> raise IOError("cannot find loader for this %s file" % self.format)
E IOError: cannot find loader for this WMF file
X:\Python27-x64\lib\site-packages\PIL\ImageFile.py:306: IOError
============= 1 failed, 1642 passed, 82 skipped in 50.83 seconds ==============
Thanks @cgohlke, uploaded!
I wonder what's causing that failure, and why AppVeyor isn't also failing.
I can't reproduce this outside the tests.
Status:
Uploaded source tarball, Mac and Linux wheels, and Windows binaries.
- [ ] Manually hide old versions on PyPI such that only the latest major release is visible when viewing https://pypi.org/project/Pillow/ (https://pypi.org/manage/project/Pillow/releases/)
I think this step is no longer applicable for the new PyPI (aka Warehouse).
Finally, I've confirmed pip install -U pillow installs the latest 5.2.0 from wheel/binary on:
And from source on:
Mac / Linux wheels for 3.7:
https://github.com/python-pillow/pillow-wheels/pull/90 is now merged and Pillow-5.2.0-cp37-cp37m-*.whl are in the Pillow Wheel Builder container.
http://a365fff413fe338398b6-1c8a9b3114517dc5fe17b7c3f8c63a43.r19.cf2.rackcdn.com/
I can upload them to PyPI tomorrow, unless someone else can do it before then.
Done, I think: https://github.com/python-pillow/Pillow/issues/3074#issuecomment-401944922
๐ Confirmed wheel available for 3.7 on macOS:
โ653% [hugo:/tmp] 2s 130 % python --version
Python 3.7.0
โ653% [hugo:/tmp] % pip install pillow
Collecting pillow
Downloading https://files.pythonhosted.org/packages/8d/50/362dc2580ae2539331768c0c3295730c791d79216c9a271114022e8c9895/Pillow-5.2.0-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (3.6MB)
100% |โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ| 3.6MB 1.9MB/s
Installing collected packages: pillow
Successfully installed pillow-5.2.0
โ512% [hugo:/tmp] 5s %
I've made a new issue to track the Windows test fail: https://github.com/python-pillow/Pillow/issues/3228.
The checklist was very useful and had everything I needed. Here's a PR to update a few little things: https://github.com/python-pillow/Pillow/pull/3229.
I think we're all done here, closing this issue, thanks everyone!
Great!
@python-pillow/pillow-team While we are at it, let's cue up another Maintainer. @radarhere any interest in driving next release?
Okay, sure, it can be my turn to do it.
@radarhere Are you @radarhere on PyPI?
@aclark4life yes. I imagine I'll also need to be part of the pillow-wheels team here.
@radarhere Done and done, thanks.


Most helpful comment
Okay, sure, it can be my turn to do it.