Sun Jan 29 12:46:45 2017 UTC ()
Changes 4.0.0:
- Refactor out postprocessing hack to load_end in PcdImageFile
- Add center and translate option to Image.rotate. 2328
- Test: Relax WMF test condition, fixes 2323
- Allow 0 size images, Fixes 2259, Reverts to pre-3.4 behavior.
- SGI: Save uncompressed SGI/BW/RGB/RGBA files 2325
- Depends: Updated pngquant to 2.8.2 2319
- Test: Added correctness tests for opening SGI images 2324
- Allow passing a list or tuple of individual frame durations when saving a GIF 2298
- Unified different GIF optimize conditions 2196
- Build: Refactor dependency installation 2305
- Test: Add python 3.6 to travis, tox 2304
- Test: Fix coveralls coverage for Python+C 2300
- Remove executable bit and shebang from OleFileIO.py 2308
- PyPy: Buffer interface workaround 2294
- Test: Switch to Ubuntu Trusty 14.04 on Travis CI 2294
- Remove vendored version of olefile Python package in favor of upstream 2199
- Updated comments to use print as a function 2234
- Set executable flag on selftest.py, setup.py and added shebang line 2282, 2277
- Test: Increase epsilon for FreeType 2.7 as rendering is slightly different. 2286
- Test: Faster assert_image_similar 2279
- Removed depreciated internal "stretch" method 2276
- Removed the handles_eof flag in decode.c 2223
- Tiff: Fix for writing Tiff to BytesIO using libtiff 2263
- Doc: Design docs 2269
- Test: Move tests requiring libtiff to test_file_libtiff 2273
- Update Maxblock heuristic 2275
- Fix for 2-bit palette corruption 2274
- Tiff: Update info.icc_profile when using libtiff reader. 2193
- Test: Fix bug in test_ifd_rational_save when libtiff is not available 2270
- ICO: Only save relevant sizes 2267
- ICO: Allow saving .ico files of 256x256 instead of 255x255 2265
- Fix TIFFImagePlugin ICC color profile saving. 2087
- Doc: Improved description of ImageOps.deform resample parameter 2256
- EMF: support negative bounding box coordinates 2249
- Close file if opened in WalImageFile 2216
- Use Image._new() instead of _makeself() 2248
- SunImagePlugin fixes 2241
- Use minimal scale for jpeg drafts 2240
- Updated dependency scripts to use FreeType 2.7, OpenJpeg 2.1.2, WebP 0.5.2 and Tcl/Tk 8.6.6 2235, 2236, 2237, 2290, 2302
- Fix "invalid escape sequence" bytestring warnings in Python 3.6 2186
- Removed support for Python 2.6 and Python 3.2 2192
- Setup: Raise custom exceptions when required/requested dependencies are not found 2213
- Use a context manager in FontFile.save() to ensure file is always closed 2226
- Fixed bug in saving to fp-objects in Python >= 3.4 2227
- Use a context manager in ImageFont._load_pilfont() to ensure file is always closed 2232
- Use generator expressions instead of list comprehension 2225
- Close file after reading in ImagePalette.load() 2215
- Changed behaviour of default box argument for paste method to match docs 2211
- Add support for another BMP bitfield 2221
- Added missing top-level test __main__ 2222
- Replaced range(len()) 2197
- Fix for ImageQt Segfault, fixes 1370 2182
- Setup: Close file in setup.py after finished reading 2208
- Setup: optionally use pkg-config (when present) to detect dependencies 2074
- Search for tkinter first in builtins 2210
- Tests: Replace try/except/fail pattern with TestCase.assertRaises() 2200
- Tests: Remove unused, open files at top level of tests 2188
- Replace type() equality checks with isinstance 2184
- Doc: Move ICO out of the list of read-only file formats 2180
- Doc: Fix formatting, too-short title underlines and malformed table 2175
- Fix BytesWarnings 2172
- Use Integer division to eliminate deprecation warning. 2168
- Doc: Update compatibility matrix


(adam)
diff -r1.29 -r1.30 pkgsrc/graphics/py-Pillow/Makefile
diff -r1.10 -r1.11 pkgsrc/graphics/py-Pillow/PLIST
diff -r1.22 -r1.23 pkgsrc/graphics/py-Pillow/distinfo
diff -r1.9 -r1.10 pkgsrc/graphics/py-Pillow/patches/patch-setup.py

cvs diff -r1.29 -r1.30 pkgsrc/graphics/py-Pillow/Makefile (expand / switch to unified diff)

--- pkgsrc/graphics/py-Pillow/Makefile 2016/11/06 15:05:30 1.29
+++ pkgsrc/graphics/py-Pillow/Makefile 2017/01/29 12:46:45 1.30
@@ -1,42 +1,44 @@ @@ -1,42 +1,44 @@
1# $NetBSD: Makefile,v 1.29 2016/11/06 15:05:30 adam Exp $ 1# $NetBSD: Makefile,v 1.30 2017/01/29 12:46:45 adam Exp $
2 2
3DISTNAME= Pillow-3.4.2 3DISTNAME= Pillow-4.0.0
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5CATEGORIES= graphics python 5CATEGORIES= graphics python
6MASTER_SITES= ${MASTER_SITE_PYPI:=P/Pillow/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=P/Pillow/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= http://python-pillow.github.io/ 9HOMEPAGE= http://python-pillow.org/
10COMMENT= Python Imaging Library (Fork) 10COMMENT= Python Imaging Library (Fork)
11LICENSE= hpnd 11LICENSE= hpnd
12 12
13CONFLICTS+= ${PYPKGPREFIX}-imaging-[0-9]* 13CONFLICTS+= ${PYPKGPREFIX}-imaging-[0-9]*
14 14
15SUBST_CLASSES+= fix-path 15SUBST_CLASSES+= fix-path
16SUBST_MESSAGE.fix-path= Fixing paths. 16SUBST_MESSAGE.fix-path= Fixing paths.
17SUBST_STAGE.fix-path= pre-configure 17SUBST_STAGE.fix-path= pre-configure
18SUBST_FILES.fix-path= setup.py 18SUBST_FILES.fix-path= setup.py
19SUBST_SED.fix-path= -e 's,/usr/pkg,${PREFIX},' 19SUBST_SED.fix-path= -e 's,/usr/pkg,${PREFIX},'
20SUBST_SED.fix-path+= -e 's,JPEG_ROOT = None,JPEG_ROOT = _lib_include("${BUILDLINK_PREFIX.jpeg}"),' 20SUBST_SED.fix-path+= -e 's,JPEG_ROOT = None,JPEG_ROOT = _lib_include("${BUILDLINK_PREFIX.jpeg}"),'
21SUBST_SED.fix-path+= -e 's,JPEG2K_ROOT = None,JPEG2K_ROOT = _lib_include("${BUILDLINK_PREFIX.openjpeg}"),' 21SUBST_SED.fix-path+= -e 's,JPEG2K_ROOT = None,JPEG2K_ROOT = _lib_include("${BUILDLINK_PREFIX.openjpeg}"),'
22SUBST_SED.fix-path+= -e 's,ZLIB_ROOT = None,ZLIB_ROOT = _lib_include("${BUILDLINK_PREFIX.zlib}"),' 22SUBST_SED.fix-path+= -e 's,ZLIB_ROOT = None,ZLIB_ROOT = _lib_include("${BUILDLINK_PREFIX.zlib}"),'
 23SUBST_SED.fix-path+= -e 's,IMAGEQUANT_ROOT = None,IMAGEQUANT_ROOT = _lib_include("${BUILDLINK_PREFIX.libimagequant}"),'
23SUBST_SED.fix-path+= -e 's,TIFF_ROOT = None,TIFF_ROOT = _lib_include("${BUILDLINK_PREFIX.tiff}"),' 24SUBST_SED.fix-path+= -e 's,TIFF_ROOT = None,TIFF_ROOT = _lib_include("${BUILDLINK_PREFIX.tiff}"),'
24SUBST_SED.fix-path+= -e 's,FREETYPE_ROOT = None,FREETYPE_ROOT = _lib_include("${BUILDLINK_PREFIX.freetype2}"),' 25SUBST_SED.fix-path+= -e 's,FREETYPE_ROOT = None,FREETYPE_ROOT = _lib_include("${BUILDLINK_PREFIX.freetype2}"),'
25SUBST_SED.fix-path+= -e 's,LCMS_ROOT = None,LCMS_ROOT = _lib_include("${BUILDLINK_PREFIX.lcms2}"),' 26SUBST_SED.fix-path+= -e 's,LCMS_ROOT = None,LCMS_ROOT = _lib_include("${BUILDLINK_PREFIX.lcms2}"),'
26 27
27# XXX: (automatically) testing Pillow fails because it is builded on a 28# XXX: (automatically) testing Pillow fails because it is builded on a
28# separate directory (build/lib.*/PIL/). Manually cp(1) all the files to PIL/ 29# separate directory (build/lib.*/PIL/). Manually cp(1) all the files to PIL/
29# fixes that (but implementing a similar distutils.cmd logic here can easily 30# fixes that (but implementing a similar distutils.cmd logic here can easily
30# leads to a buggy one). Disable the test for now. 31# leads to a buggy one). Disable the test for now.
31#do-test: 32#do-test:
32# ${RUN}cd ${WRKSRC};${PKGSRC_SETENV} ${TEST_ENV} ${PYTHONBIN} selftest.py 33# ${RUN}cd ${WRKSRC};${PKGSRC_SETENV} ${TEST_ENV} ${PYTHONBIN} selftest.py
33 34
34.include "../../devel/zlib/buildlink3.mk" 35.include "../../devel/zlib/buildlink3.mk"
35.include "../../graphics/freetype2/buildlink3.mk" 36.include "../../graphics/freetype2/buildlink3.mk"
36.include "../../graphics/lcms2/buildlink3.mk" 37.include "../../graphics/lcms2/buildlink3.mk"
 38.include "../../graphics/libimagequant/buildlink3.mk"
37.include "../../graphics/libwebp/buildlink3.mk" 39.include "../../graphics/libwebp/buildlink3.mk"
38.include "../../graphics/openjpeg/buildlink3.mk" 40.include "../../graphics/openjpeg/buildlink3.mk"
39.include "../../graphics/tiff/buildlink3.mk" 41.include "../../graphics/tiff/buildlink3.mk"
40.include "../../lang/python/egg.mk" 42.include "../../lang/python/egg.mk"
41.include "../../mk/jpeg.buildlink3.mk" 43.include "../../mk/jpeg.buildlink3.mk"
42.include "../../mk/bsd.pkg.mk" 44.include "../../mk/bsd.pkg.mk"

cvs diff -r1.10 -r1.11 pkgsrc/graphics/py-Pillow/PLIST (expand / switch to unified diff)

--- pkgsrc/graphics/py-Pillow/PLIST 2016/08/13 08:07:22 1.10
+++ pkgsrc/graphics/py-Pillow/PLIST 2017/01/29 12:46:45 1.11
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.10 2016/08/13 08:07:22 wen Exp $ 1@comment $NetBSD: PLIST,v 1.11 2017/01/29 12:46:45 adam Exp $
2${PYSITELIB}/PIL/BdfFontFile.py 2${PYSITELIB}/PIL/BdfFontFile.py
3${PYSITELIB}/PIL/BdfFontFile.pyc 3${PYSITELIB}/PIL/BdfFontFile.pyc
4${PYSITELIB}/PIL/BdfFontFile.pyo 4${PYSITELIB}/PIL/BdfFontFile.pyo
5${PYSITELIB}/PIL/BmpImagePlugin.py 5${PYSITELIB}/PIL/BmpImagePlugin.py
6${PYSITELIB}/PIL/BmpImagePlugin.pyc 6${PYSITELIB}/PIL/BmpImagePlugin.pyc
7${PYSITELIB}/PIL/BmpImagePlugin.pyo 7${PYSITELIB}/PIL/BmpImagePlugin.pyo
8${PYSITELIB}/PIL/BufrStubImagePlugin.py 8${PYSITELIB}/PIL/BufrStubImagePlugin.py
9${PYSITELIB}/PIL/BufrStubImagePlugin.pyc 9${PYSITELIB}/PIL/BufrStubImagePlugin.pyc
10${PYSITELIB}/PIL/BufrStubImagePlugin.pyo 10${PYSITELIB}/PIL/BufrStubImagePlugin.pyo
11${PYSITELIB}/PIL/ContainerIO.py 11${PYSITELIB}/PIL/ContainerIO.py
12${PYSITELIB}/PIL/ContainerIO.pyc 12${PYSITELIB}/PIL/ContainerIO.pyc
13${PYSITELIB}/PIL/ContainerIO.pyo 13${PYSITELIB}/PIL/ContainerIO.pyo
14${PYSITELIB}/PIL/CurImagePlugin.py 14${PYSITELIB}/PIL/CurImagePlugin.py
@@ -163,27 +163,26 @@ ${PYSITELIB}/PIL/McIdasImagePlugin.pyc @@ -163,27 +163,26 @@ ${PYSITELIB}/PIL/McIdasImagePlugin.pyc
163${PYSITELIB}/PIL/McIdasImagePlugin.pyo 163${PYSITELIB}/PIL/McIdasImagePlugin.pyo
164${PYSITELIB}/PIL/MicImagePlugin.py 164${PYSITELIB}/PIL/MicImagePlugin.py
165${PYSITELIB}/PIL/MicImagePlugin.pyc 165${PYSITELIB}/PIL/MicImagePlugin.pyc
166${PYSITELIB}/PIL/MicImagePlugin.pyo 166${PYSITELIB}/PIL/MicImagePlugin.pyo
167${PYSITELIB}/PIL/MpegImagePlugin.py 167${PYSITELIB}/PIL/MpegImagePlugin.py
168${PYSITELIB}/PIL/MpegImagePlugin.pyc 168${PYSITELIB}/PIL/MpegImagePlugin.pyc
169${PYSITELIB}/PIL/MpegImagePlugin.pyo 169${PYSITELIB}/PIL/MpegImagePlugin.pyo
170${PYSITELIB}/PIL/MpoImagePlugin.py 170${PYSITELIB}/PIL/MpoImagePlugin.py
171${PYSITELIB}/PIL/MpoImagePlugin.pyc 171${PYSITELIB}/PIL/MpoImagePlugin.pyc
172${PYSITELIB}/PIL/MpoImagePlugin.pyo 172${PYSITELIB}/PIL/MpoImagePlugin.pyo
173${PYSITELIB}/PIL/MspImagePlugin.py 173${PYSITELIB}/PIL/MspImagePlugin.py
174${PYSITELIB}/PIL/MspImagePlugin.pyc 174${PYSITELIB}/PIL/MspImagePlugin.pyc
175${PYSITELIB}/PIL/MspImagePlugin.pyo 175${PYSITELIB}/PIL/MspImagePlugin.pyo
176${PYSITELIB}/PIL/OleFileIO-README.md 
177${PYSITELIB}/PIL/OleFileIO.py 176${PYSITELIB}/PIL/OleFileIO.py
178${PYSITELIB}/PIL/OleFileIO.pyc 177${PYSITELIB}/PIL/OleFileIO.pyc
179${PYSITELIB}/PIL/OleFileIO.pyo 178${PYSITELIB}/PIL/OleFileIO.pyo
180${PYSITELIB}/PIL/PSDraw.py 179${PYSITELIB}/PIL/PSDraw.py
181${PYSITELIB}/PIL/PSDraw.pyc 180${PYSITELIB}/PIL/PSDraw.pyc
182${PYSITELIB}/PIL/PSDraw.pyo 181${PYSITELIB}/PIL/PSDraw.pyo
183${PYSITELIB}/PIL/PaletteFile.py 182${PYSITELIB}/PIL/PaletteFile.py
184${PYSITELIB}/PIL/PaletteFile.pyc 183${PYSITELIB}/PIL/PaletteFile.pyc
185${PYSITELIB}/PIL/PaletteFile.pyo 184${PYSITELIB}/PIL/PaletteFile.pyo
186${PYSITELIB}/PIL/PalmImagePlugin.py 185${PYSITELIB}/PIL/PalmImagePlugin.py
187${PYSITELIB}/PIL/PalmImagePlugin.pyc 186${PYSITELIB}/PIL/PalmImagePlugin.pyc
188${PYSITELIB}/PIL/PalmImagePlugin.pyo 187${PYSITELIB}/PIL/PalmImagePlugin.pyo
189${PYSITELIB}/PIL/PcdImagePlugin.py 188${PYSITELIB}/PIL/PcdImagePlugin.py
@@ -267,15 +266,16 @@ ${PYSITELIB}/PIL/_imagingtk.so @@ -267,15 +266,16 @@ ${PYSITELIB}/PIL/_imagingtk.so
267${PYSITELIB}/PIL/_tkinter_finder.py 266${PYSITELIB}/PIL/_tkinter_finder.py
268${PYSITELIB}/PIL/_tkinter_finder.pyc 267${PYSITELIB}/PIL/_tkinter_finder.pyc
269${PYSITELIB}/PIL/_tkinter_finder.pyo 268${PYSITELIB}/PIL/_tkinter_finder.pyo
270${PYSITELIB}/PIL/_util.py 269${PYSITELIB}/PIL/_util.py
271${PYSITELIB}/PIL/_util.pyc 270${PYSITELIB}/PIL/_util.pyc
272${PYSITELIB}/PIL/_util.pyo 271${PYSITELIB}/PIL/_util.pyo
273${PYSITELIB}/PIL/_webp.so 272${PYSITELIB}/PIL/_webp.so
274${PYSITELIB}/PIL/features.py 273${PYSITELIB}/PIL/features.py
275${PYSITELIB}/PIL/features.pyc 274${PYSITELIB}/PIL/features.pyc
276${PYSITELIB}/PIL/features.pyo 275${PYSITELIB}/PIL/features.pyo
277${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 276${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
278${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 277${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
279${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 278${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
 279${PYSITELIB}/${EGG_INFODIR}/requires.txt
280${PYSITELIB}/${EGG_INFODIR}/top_level.txt 280${PYSITELIB}/${EGG_INFODIR}/top_level.txt
281${PYSITELIB}/${EGG_INFODIR}/zip-safe 281${PYSITELIB}/${EGG_INFODIR}/zip-safe

cvs diff -r1.22 -r1.23 pkgsrc/graphics/py-Pillow/distinfo (expand / switch to unified diff)

--- pkgsrc/graphics/py-Pillow/distinfo 2016/11/06 15:05:30 1.22
+++ pkgsrc/graphics/py-Pillow/distinfo 2017/01/29 12:46:45 1.23
@@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
1$NetBSD: distinfo,v 1.22 2016/11/06 15:05:30 adam Exp $ 1$NetBSD: distinfo,v 1.23 2017/01/29 12:46:45 adam Exp $
2 2
3SHA1 (Pillow-3.4.2.tar.gz) = 0915c36e3607b3caafcd387e0bb6da63a6bc7d5a 3SHA1 (Pillow-4.0.0.tar.gz) = ad2e2faac93f4ff1a17f4bca602bfc87f77c793d
4RMD160 (Pillow-3.4.2.tar.gz) = 40f983f9a57844c8338c1649b3473a8339dd85cf 4RMD160 (Pillow-4.0.0.tar.gz) = 018edb6030851a4ae17eba1ec9e0b03933b4922b
5SHA512 (Pillow-3.4.2.tar.gz) = a8b6711d28ad94f568e836f3eca313cf5c4277a5c9dd6accdb1cc2b0abdc47cd79bd850baf96e33a24a251e8011b67e80d2bea0395105a8c03e198d4caa70e47 5SHA512 (Pillow-4.0.0.tar.gz) = 61d4f5d0264289074b073ba2f531a9d94d5de4cbec1bfe12606454076dacd50c926934d364d6fb2336ab74d59a09a37b88a47620d7b76db565b3637db09a5b04
6Size (Pillow-3.4.2.tar.gz) = 10814666 bytes 6Size (Pillow-4.0.0.tar.gz) = 11077480 bytes
7SHA1 (patch-setup.py) = 329a628cef8ec752d7829e3a317379a6577e4b3a 7SHA1 (patch-setup.py) = 585f78d03e4f0cc658d3752fa80bfc245b32f8a6

cvs diff -r1.9 -r1.10 pkgsrc/graphics/py-Pillow/patches/patch-setup.py (expand / switch to unified diff)

--- pkgsrc/graphics/py-Pillow/patches/patch-setup.py 2016/11/06 15:05:30 1.9
+++ pkgsrc/graphics/py-Pillow/patches/patch-setup.py 2017/01/29 12:46:45 1.10
@@ -1,28 +1,28 @@ @@ -1,28 +1,28 @@
1$NetBSD: patch-setup.py,v 1.9 2016/11/06 15:05:30 adam Exp $ 1$NetBSD: patch-setup.py,v 1.10 2017/01/29 12:46:45 adam Exp $
2 2
3* Prevent to detect optional tkinter. 3* Prevent to detect optional tkinter.
4* Disable demo programs. 4* Disable demo programs.
5 5
6--- setup.py.orig 2016-10-18 19:12:54.000000000 +0000 6--- setup.py.orig 2017-01-02 11:47:11.000000000 +0000
7+++ setup.py 7+++ setup.py
8@@ -103,11 +103,7 @@ def _read(file): 8@@ -99,11 +99,7 @@ def _read(file):
9 return open(file, 'rb').read() 9 return fp.read()
10  10
11  11
12-try: 12-try:
13- import _tkinter 13- import _tkinter
14-except (ImportError, OSError): 14-except (ImportError, OSError):
15- # pypy emits an oserror 15- # pypy emits an oserror
16- _tkinter = None 16- _tkinter = None
17+_tkinter = None 17+_tkinter = None
18  18
19 NAME = 'Pillow' 19 NAME = 'Pillow'
20 PILLOW_VERSION = '3.4.2' 20 PILLOW_VERSION = '4.0.0'
21@@ -746,7 +742,6 @@ setup(name=NAME, 21@@ -771,7 +767,6 @@ try:
22 ext_modules=[Extension("PIL._imaging", ["_imaging.c"])], 22 ext_modules=[Extension("PIL._imaging", ["_imaging.c"])],
23 include_package_data=True, 23 include_package_data=True,
24 packages=find_packages(), 24 packages=find_packages(),
25- scripts=glob.glob("Scripts/*.py"), 25- scripts=glob.glob("Scripts/*.py"),
26 test_suite='nose.collector', 26 install_requires=['olefile'],
27 keywords=["Imaging", ], 27 test_suite='nose.collector',
28 license='Standard PIL License', 28 keywords=["Imaging", ],