[Bug 243665] graphics/py-pillow: Update to 7.0.0

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Jan 28 09:41:09 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243665

Kai Knoblich <kai at FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|New                         |Open

--- Comment #1 from Kai Knoblich <kai at FreeBSD.org> ---
Results of "make test" for each Python flavor:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

With py37, py38:

> ==== 1298 passed, 129 skipped in 32.14 seconds ====
> ==== 1298 passed, 129 skipped in 31.40 seconds ====

With py35:

> ==== 1296 passed, 131 skipped in 40.62 seconds ====

With py36:

> ==== 1297 passed, 130 skipped in 33.41 seconds ====

Version requirements in setup.py, etc.:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Except two ports no consumer has pinned requirements for graphics/py-pillow.
The two exceptions are:

- net-mgmt/netbox: OK, patched out in Makefile
- www/py-wagtail: OK, defined in Makefile and setup.py as "<7.0".


More thorough QA results regarding the backwards incompatible changes that were
introduced in the 7.0.0 release (see also the release notes in the URL field
for further detail):


Removal of the PILLOW_VERSION constant:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- graphics/impressive: OK, still uses Python 2.7 only and already has
compatible code to cope with different Pillow versions.
- graphics/py-blockdiag: OK, still uses Python 2.7 only. No compatible code for
newer Pillow versions.
- graphics/py-mcomix: OK, still uses Python 2.7 only. No compatible code for
newer Pillow versions.
- graphics/sk1: OK, still uses Python 2.7 only. No compatible code for newer
Pillow versions.
- print/hplib: OK, already patched out in r503333 as preparation for the 6.0
release of graphics/py-pillow.
- x11/xpra: OK, still uses Python 2.7 only and already has compatible code to
cope with different Pillow versions.

Conclusion: OK, as all those consumers (except print/hplib maybe, as it already
runs with Python 3) will get graphics/py-pillow6 as a dependency and should
work as usual.

Removal of the *ImagePlugin.__version__ constants:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- OK, no port makes use of these constants.


Removal of PyQt4 and PySide code:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- OK, not relevant as Qt4 and PySide are already gone from the Ports tree.


Removal of setting the image size for TIFF images by "im.size(x, y):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- graphics/py-imageio: OK, uses "im.size = ( ... )" only in documentation
context in "imageio/plugins/pillow_info.py".
- graphics/py-imageio24: OK, uses "im.size = ( ... )" only in documentation
context in "imageio/plugins/pillow_info.py".
- net-p2p/deluge-cli: OK, uses Python 2.7 only and "im.size = ( ... )" is used
for ICO files. In this context using "im.size = ( ... )" is allowed as it
selects a subimage.


Changed return value of "Image.draft()":
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- graphics/py-mcomix: OK, uses Python 2.7 only.
- graphics/py-sane: OK, uses Python 2.7 only.

Conclusion: OK, as all those consumers will get graphics/py-pillow6 as a
dependency and should work as usual.


Default resampling filter:
~~~~~~~~~~~~~~~~~~~~~~~~~~
The default resampling filter was changed from "IMAGE.NEAREST" to
"IMAGE.BICUBIC" for the "fit()", "pad()", "resize()" and "scale()" functions.
Those functions are used by several consumers for image
processing/manipulation.

Conclusion: Should be OK, but we should keep in mind that the changes of the
above mentioned functions will have definitely a small impact on the Pillow
consumers. A bit more CPU cycles than usual are then required for image
processing but yields in better image results/quality. 

If there are problems once Pillow has been updated to 7.0.0 we can still assign
the problematic consumers (if any) to Pillow 6.2.2 and bump PORTREVISION.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the freebsd-python mailing list