python-pillow / Pillow

Python Imaging Library (Fork)
https://python-pillow.org
Other
12.21k stars 2.22k forks source link

Release Pillow 8.3.2 on September 2, 2021 #5697

Closed hugovk closed 3 years ago

hugovk commented 3 years ago

Point release to include Python 3.10 wheels (https://github.com/python-pillow/Pillow/issues/5569) and some regressions (https://github.com/python-pillow/Pillow/issues/5569#issuecomment-907086699).

Point Release

Released as needed for security, installation or critical bug fixes.

Binary Distributions

Windows

Mac and Linux

Publicize Release

Documentation

Docker Images

radarhere commented 3 years ago

For the purposes of https://pillow.readthedocs.io/en/latest/installation.html#python-support, I presume that Pillow 8.3.2 doesn't support 3.10, right?

hugovk commented 3 years ago

Good question!

We'll have wheels and the 3.10 classifier and updated Windows exit warning from https://github.com/python-pillow/Pillow/pull/5570.

We could do: Python 3.10 isn't officially out yet, we don't support it until 3.10 final and Pillow 8.4.0.

I suggest we do: 3.10 is in RC, we support it in 8.3.2, in the rare case that 3.10 final isn't ABI compatible with the RC, we'll make an update for 8.4.0.

So update the table like this?

hugovk commented 3 years ago

Plan: I'm going to update the branches today (1st September) and tag and release tomorrow (2nd September).

hugovk commented 3 years ago

CIFuzz is failing on the 8.3.x branch, but is also failing on master, both pre- and post release changes, so I think this is unrelated to the release changes and will continue the release. Let's follow up later.

hugovk commented 3 years ago

@cgohlke Please could we have Windows binaries, including for Python 3.10 RC1?

cgohlke commented 3 years ago

could we have Windows binaries, including for Python 3.10 RC1?

The tests quit unexpectedly at 76% TestImageFont::test_variation_set_by_name. Need some time to investigate...

wiredfool commented 3 years ago

CI fuzz is failing, there's an issue in the oss-fuzz project. I can't reproduce locally, so I'm not sure what's up.

cgohlke commented 3 years ago

Has this release been tested with FreeType 2.11.0? I get a segfault in TestImageFont::test_variation_set_by_axes at https://github.com/python-pillow/Pillow/blob/8013f130a5077b238a4346b73e149432b180a8ea/src/_imagingft.c#L618

[0x0]   _imagingft_cp39_win_amd64!FT_Stream_Open + 0x7d07   
[0x1]   _imagingft_cp39_win_amd64!FT_Stream_Open + 0xd10   
[0x2]   _imagingft_cp39_win_amd64!FT_Load_Glyph + 0x30c   
[0x3]   _imagingft_cp39_win_amd64!font_getsize + 0x2dd
hugovk commented 3 years ago

We're currently testing against FreeType 2.10.4:

https://github.com/python-pillow/Pillow/blob/8013f130a5077b238a4346b73e149432b180a8ea/winbuild/build_prepare.py#L188

nulano commented 3 years ago

This is a known issue in FreeType 2.11.0 (found by @radarhere): https://gitlab.freedesktop.org/freetype/freetype/-/issues/1075

cgohlke commented 3 years ago

could we have Windows binaries, including for Python 3.10 RC1?

Here you go.

hugovk commented 3 years ago

Thanks!

And released!

$ python3.10 -m pip install -U pillow
Requirement already satisfied: pillow in /Users/hugo/.pyenv/versions/3.10-dev/lib/python3.10/site-packages (8.3.1)
Collecting pillow
  Downloading Pillow-8.3.2-cp310-cp310-macosx_10_10_universal2.whl (3.0 MB)
     |████████████████████████████████| 3.0 MB 5.1 MB/s
Installing collected packages: pillow
  Attempting uninstall: pillow
    Found existing installation: Pillow 8.3.1
    Uninstalling Pillow-8.3.1:
      Successfully uninstalled Pillow-8.3.1
Successfully installed pillow-8.3.2

Will tweet a bit later.

hugovk commented 3 years ago

🚀 https://twitter.com/PythonPillow/status/1433517261118185473

hugovk commented 3 years ago

I just spotted Pillow-8.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl failed to download yesterday from https://github.com/python-pillow/pillow-wheels/releases so didn't go to PyPI.

Now uploaded:

hugovk commented 3 years ago

For reference, noting we uploaded some manylinux1 and manylinux2010 wheels too: https://github.com/python-pillow/Pillow/issues/5701.