Bug 226573 - graphics/py-pillow: Update to 5.0.0
Summary: graphics/py-pillow: Update to 5.0.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Kubilay Kocak
URL: https://github.com/python-pillow/Pill...
Keywords:
Depends on:
Blocks: 226560
  Show dependency treegraph
 
Reported: 2018-03-13 11:12 UTC by Kevin Golding
Modified: 2018-03-17 05:24 UTC (History)
0 users

See Also:
koobs: maintainer-feedback+


Attachments
Update graphics/py-pillow to 5.0.0 (1.07 KB, patch)
2018-03-13 11:13 UTC, Kevin Golding
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Kevin Golding 2018-03-13 11:12:29 UTC
Update graphics/py-pillow to 5.0.0

Changes: https://github.com/python-pillow/Pillow/blob/e5bd7eb6235cc24b9c8d3e7ce51ed48a780c7c70/CHANGES.rst

Basic version bump update. Changelog shows no new dependencies.

Poudriere testport ok - py27 FBSD11.1
Comment 1 Kevin Golding 2018-03-13 11:13:16 UTC
Created attachment 191465 [details]
Update graphics/py-pillow to 5.0.0

This time remembering the patch
Comment 2 Kubilay Kocak freebsd_committer freebsd_triage 2018-03-16 04:01:10 UTC
Thank you Kevin.

Does the test suite (make test) pass, and what if any backward incompatibility considerations have you come across (or noticed) for this major version update?
Comment 3 Kevin Golding 2018-03-16 11:39:26 UTC
(In reply to Kubilay Kocak from comment #2)

No, the test suite doesn't pass as is. I get a failure with:

Traceback (most recent call last):
  File "selftest.py", line 8, in <module>
    from PIL import Image, ImageDraw, ImageFilter, ImageMath
ImportError: No module named PIL
*** Error code 1

Which would suggest the module isn't available at all. However, if I make install clean I have a functioning PIL module. Certainly a number of basic scripts I can use for testing the actual functionality work fine (basic functions such as crop, draw, convert, rotate). Given the test suite failed on importing the module I felt happy that specific error wasn't an issue in real-world usage.

Unfortunately, I only use Pillow as a dependency for another set of tools that I use so I don't have much direct experience of Pillow and can't really comment on advanced functionality that the test suite presumably looks at, however once installed it seems to operate without error in my use case.

There are backwards incompatible changes which seem well documented to assist user upgrades:
https://pillow.readthedocs.io/en/latest/releasenotes/4.1.0.html#removed-deprecated-items
https://pillow.readthedocs.io/en/latest/releasenotes/4.2.0.html#removed-deprecated-items
https://pillow.readthedocs.io/en/latest/releasenotes/5.0.0.html#backwards-incompatible-changes
Comment 4 Kevin Golding 2018-03-16 11:45:52 UTC
Actually, I take that back. Installing devel/py-nose makes the test suite run without errors.

Oddly the current port fails make test citing nose was missing, so after installing that I tried 5.0.0 again and it passed:

Ran 1104 tests in 18.777s

OK (SKIP=169)
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2018-03-17 02:14:30 UTC
(In reply to Kevin Golding from comment #4)

Thanks Kevin,

I noticed after my original question that TEST_DEPENDS were missing from the port, which is what ensures test dependencies are installed for (and prior to running) the ports framework test target.

Having said that, it also appears upstream have deprecated nose (in favour of pytest), so I've updated the test target accordingly.

Still, very useful to have independent confirmation of it passing the test suite at your end too.
Comment 6 commit-hook freebsd_committer freebsd_triage 2018-03-17 05:22:07 UTC
A commit references this bug:

Author: koobs
Date: Sat Mar 17 05:21:36 UTC 2018
New revision: 464756
URL: https://svnweb.freebsd.org/changeset/ports/464756

Log:
  graphics/py-pillow: Update to 5.0.0

  - Update to 5.0.0
  - Add TEST_DEPENDS, which was missing in previous port versions where
    test target was defined.
  - Switch to using pytest, per upstream.
  - Add comment to track actual (precise) supported Python versions.

  Release Notes:

   * https://pillow.readthedocs.io/en/latest/releasenotes/index.html

  Backward Incompatible Changes (5.0.0):

   * https://pillow.readthedocs.io/en/latest/releasenotes/5.0.0.html#backwards-incompatible-changes

  Detailed Changelog:

   * https://github.com/python-pillow/Pillow/blob/5.0.0/CHANGES.rst

  PR:		226573 [1]
  Submitted by:	Kevin Golding <ports caomhin org> [1]

Changes:
  head/graphics/py-pillow/Makefile
  head/graphics/py-pillow/distinfo
Comment 7 Kubilay Kocak freebsd_committer freebsd_triage 2018-03-17 05:24:34 UTC
Committed with ports compliance / framework changes.

Thanks Kevin!