py-Pillow: updated to 10.2.0 10.2.0 (2024-01-02) - Add ``keep_rgb`` option when saving JPEG to prevent conversion of RGB colorspace - Trim glyph size in ImageFont.getmask() - Deprecate IptcImagePlugin helpers - Allow uncompressed TIFF images to be saved in chunks - Concatenate multiple JPEG EXIF markers - Changed IPTC tile tuple to match other plugins - Do not assign new fp attribute when exiting context manager - Support arbitrary masks for uncompressed RGB DDS images - Support setting ROWSPERSTRIP tag - Apply ImageFont.MAX_STRING_LENGTH to ImageFont.getmask() - Optimise ``ImageColor`` using ``functools.lru_cache`` - Restricted environment keys for ImageMath.eval() - Optimise ``ImageMode.getmode`` using ``functools.lru_cache`` - Fix incorrect color blending for overlapping glyphs - Attempt memory mapping when tile args is a string - Fill identical pixels with transparency in subsequent frames when saving GIF - Corrected duration when combining multiple GIF frames into single frame - Handle disposing GIF background from outside palette - Seek past the data when skipping a PSD layer - Import plugins relative to the module - Translate encoder error codes to strings; deprecate ``ImageFile.raise_oserror()`` - Support reading BC4U and DX10 BC1 images - Optimize ImageStat.Stat.extrema - Handle pathlib.Path in FreeTypeFont - Added support for reading DX10 BC4 DDS images - Optimized ImageStat.Stat.count - Correct PDF palette size when saving - Fixed closing file pointer with olefile 0.47 - Raise ValueError when TrueType font size is not greater than zero - If absent, do not try to close fp when closing image - Allow configuring JPEG restart marker interval on save - Decrement reference count for PyObject - Implement ``streamtype=1`` option for tables-only JPEG encoding - If save_all PNG only has one frame, do not create animated image - Fixed frombytes() for images with a zero dimensiondiff -r1.77 -r1.78 pkgsrc/graphics/py-Pillow/Makefile
(adam)
@@ -1,41 +1,37 @@ | @@ -1,41 +1,37 @@ | |||
1 | # $NetBSD: Makefile,v 1.77 2023/11/12 13:22:12 wiz Exp $ | 1 | # $NetBSD: Makefile,v 1.78 2024/01/05 23:47:53 adam Exp $ | |
2 | 2 | |||
3 | DISTNAME= Pillow-10.1.0 | 3 | DISTNAME= pillow-10.2.0 | |
4 | PKGNAME= ${PYPKGPREFIX}-${DISTNAME} | 4 | PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/^p/P/} | |
5 | PKGREVISION= 2 | |||
6 | CATEGORIES= graphics python | 5 | CATEGORIES= graphics python | |
7 | MASTER_SITES= ${MASTER_SITE_PYPI:=P/Pillow/} | 6 | MASTER_SITES= ${MASTER_SITE_PYPI:=p/pillow/} | |
8 | 7 | |||
9 | MAINTAINER= pkgsrc-users@NetBSD.org | 8 | MAINTAINER= pkgsrc-users@NetBSD.org | |
10 | HOMEPAGE= https://python-pillow.org/ | 9 | HOMEPAGE= https://python-pillow.org/ | |
11 | COMMENT= Python Imaging Library (Fork) | 10 | COMMENT= Python Imaging Library (Fork) | |
12 | LICENSE= hpnd | 11 | LICENSE= hpnd | |
13 | 12 | |||
14 | USE_TOOLS+= pkg-config | 13 | USE_TOOLS+= pkg-config | |
15 | 14 | |||
16 | CONFLICTS+= ${PYPKGPREFIX}-imaging-[0-9]* | 15 | CONFLICTS+= ${PYPKGPREFIX}-imaging-[0-9]* | |
17 | 16 | |||
17 | TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=67.8:../../devel/py-setuptools | |||
18 | TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel | |||
18 | DEPENDS+= ${PYPKGPREFIX}-olefile-[0-9]*:../../devel/py-olefile | 19 | DEPENDS+= ${PYPKGPREFIX}-olefile-[0-9]*:../../devel/py-olefile | |
19 | TOOL_DEPENDS+= ${PYPKGPREFIX}-test-runner-[0-9]*:../../devel/py-test-runner | |||
20 | TEST_DEPENDS+= netpbm-[0-9]*:../../graphics/netpbm | 20 | TEST_DEPENDS+= netpbm-[0-9]*:../../graphics/netpbm | |
21 | TEST_DEPENDS+= ${PYPKGPREFIX}-test-cov-[0-9]*:../../devel/py-test-cov | |||
22 | TEST_DEPENDS+= ${PYPKGPREFIX}-test-timeout-[0-9]*:../../devel/py-test-timeout | |||
21 | 23 | |||
22 | PYTHON_VERSIONS_INCOMPATIBLE= 27 | 24 | PYTHON_VERSIONS_INCOMPATIBLE= 27 | |
23 | 25 | |||
24 | PYSETUPBUILDTARGET= build_ext | |||
25 | PYSETUPBUILDARGS+= --disable-xcb | |||
26 | ||||
27 | DISTUTILS_BUILDDIR_IN_TEST_ENV= yes | 26 | DISTUTILS_BUILDDIR_IN_TEST_ENV= yes | |
28 | 27 | |||
29 | do-test: | |||
30 | cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHONBIN} selftest.py | |||
31 | ||||
32 | .include "../../devel/zlib/buildlink3.mk" | 28 | .include "../../devel/zlib/buildlink3.mk" | |
33 | .include "../../graphics/freetype2/buildlink3.mk" | 29 | .include "../../graphics/freetype2/buildlink3.mk" | |
34 | .include "../../graphics/lcms2/buildlink3.mk" | 30 | .include "../../graphics/lcms2/buildlink3.mk" | |
35 | .include "../../graphics/libimagequant/buildlink3.mk" | 31 | .include "../../graphics/libimagequant/buildlink3.mk" | |
36 | .include "../../graphics/libwebp/buildlink3.mk" | 32 | .include "../../graphics/libwebp/buildlink3.mk" | |
37 | .include "../../graphics/openjpeg/buildlink3.mk" | 33 | .include "../../graphics/openjpeg/buildlink3.mk" | |
38 | .include "../../graphics/tiff/buildlink3.mk" | 34 | .include "../../graphics/tiff/buildlink3.mk" | |
39 | .include "../../lang/python/egg.mk" | 35 | .include "../../lang/python/wheel.mk" | |
40 | .include "../../mk/jpeg.buildlink3.mk" | 36 | .include "../../mk/jpeg.buildlink3.mk" | |
41 | .include "../../mk/bsd.pkg.mk" | 37 | .include "../../mk/bsd.pkg.mk" |
@@ -1,14 +1,20 @@ | @@ -1,14 +1,20 @@ | |||
1 | @comment $NetBSD: PLIST,v 1.21 2023/07/05 20:10:14 wiz Exp $ | 1 | @comment $NetBSD: PLIST,v 1.22 2024/01/05 23:47:53 adam Exp $ | |
2 | ${PYSITELIB}/${WHEEL_INFODIR}/LICENSE | |||
3 | ${PYSITELIB}/${WHEEL_INFODIR}/METADATA | |||
4 | ${PYSITELIB}/${WHEEL_INFODIR}/RECORD | |||
5 | ${PYSITELIB}/${WHEEL_INFODIR}/WHEEL | |||
6 | ${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt | |||
7 | ${PYSITELIB}/${WHEEL_INFODIR}/zip-safe | |||
2 | ${PYSITELIB}/PIL/BdfFontFile.py | 8 | ${PYSITELIB}/PIL/BdfFontFile.py | |
3 | ${PYSITELIB}/PIL/BdfFontFile.pyc | 9 | ${PYSITELIB}/PIL/BdfFontFile.pyc | |
4 | ${PYSITELIB}/PIL/BdfFontFile.pyo | 10 | ${PYSITELIB}/PIL/BdfFontFile.pyo | |
5 | ${PYSITELIB}/PIL/BlpImagePlugin.py | 11 | ${PYSITELIB}/PIL/BlpImagePlugin.py | |
6 | ${PYSITELIB}/PIL/BlpImagePlugin.pyc | 12 | ${PYSITELIB}/PIL/BlpImagePlugin.pyc | |
7 | ${PYSITELIB}/PIL/BlpImagePlugin.pyo | 13 | ${PYSITELIB}/PIL/BlpImagePlugin.pyo | |
8 | ${PYSITELIB}/PIL/BmpImagePlugin.py | 14 | ${PYSITELIB}/PIL/BmpImagePlugin.py | |
9 | ${PYSITELIB}/PIL/BmpImagePlugin.pyc | 15 | ${PYSITELIB}/PIL/BmpImagePlugin.pyc | |
10 | ${PYSITELIB}/PIL/BmpImagePlugin.pyo | 16 | ${PYSITELIB}/PIL/BmpImagePlugin.pyo | |
11 | ${PYSITELIB}/PIL/BufrStubImagePlugin.py | 17 | ${PYSITELIB}/PIL/BufrStubImagePlugin.py | |
12 | ${PYSITELIB}/PIL/BufrStubImagePlugin.pyc | 18 | ${PYSITELIB}/PIL/BufrStubImagePlugin.pyc | |
13 | ${PYSITELIB}/PIL/BufrStubImagePlugin.pyo | 19 | ${PYSITELIB}/PIL/BufrStubImagePlugin.pyo | |
14 | ${PYSITELIB}/PIL/ContainerIO.py | 20 | ${PYSITELIB}/PIL/ContainerIO.py | |
@@ -260,37 +266,36 @@ ${PYSITELIB}/PIL/XpmImagePlugin.pyo | @@ -260,37 +266,36 @@ ${PYSITELIB}/PIL/XpmImagePlugin.pyo | |||
260 | ${PYSITELIB}/PIL/__init__.py | 266 | ${PYSITELIB}/PIL/__init__.py | |
261 | ${PYSITELIB}/PIL/__init__.pyc | 267 | ${PYSITELIB}/PIL/__init__.pyc | |
262 | ${PYSITELIB}/PIL/__init__.pyo | 268 | ${PYSITELIB}/PIL/__init__.pyo | |
263 | ${PYSITELIB}/PIL/__main__.py | 269 | ${PYSITELIB}/PIL/__main__.py | |
264 | ${PYSITELIB}/PIL/__main__.pyc | 270 | ${PYSITELIB}/PIL/__main__.pyc | |
265 | ${PYSITELIB}/PIL/__main__.pyo | 271 | ${PYSITELIB}/PIL/__main__.pyo | |
266 | ${PYSITELIB}/PIL/_binary.py | 272 | ${PYSITELIB}/PIL/_binary.py | |
267 | ${PYSITELIB}/PIL/_binary.pyc | 273 | ${PYSITELIB}/PIL/_binary.pyc | |
268 | ${PYSITELIB}/PIL/_binary.pyo | 274 | ${PYSITELIB}/PIL/_binary.pyo | |
269 | ${PYSITELIB}/PIL/_deprecate.py | 275 | ${PYSITELIB}/PIL/_deprecate.py | |
270 | ${PYSITELIB}/PIL/_deprecate.pyc | 276 | ${PYSITELIB}/PIL/_deprecate.pyc | |
271 | ${PYSITELIB}/PIL/_deprecate.pyo | 277 | ${PYSITELIB}/PIL/_deprecate.pyo | |
272 | ${PYSITELIB}/PIL/_imaging.so | 278 | ${PYSITELIB}/PIL/_imaging.so | |
279 | ${PYSITELIB}/PIL/_imagingcms.pyi | |||
273 | ${PYSITELIB}/PIL/_imagingcms.so | 280 | ${PYSITELIB}/PIL/_imagingcms.so | |
281 | ${PYSITELIB}/PIL/_imagingft.pyi | |||
274 | ${PYSITELIB}/PIL/_imagingft.so | 282 | ${PYSITELIB}/PIL/_imagingft.so | |
275 | ${PYSITELIB}/PIL/_imagingmath.so | 283 | ${PYSITELIB}/PIL/_imagingmath.so | |
276 | ${PYSITELIB}/PIL/_imagingmorph.so | 284 | ${PYSITELIB}/PIL/_imagingmorph.so | |
277 | ${PYSITELIB}/PIL/_imagingtk.so | 285 | ${PYSITELIB}/PIL/_imagingtk.so | |
278 | ${PYSITELIB}/PIL/_tkinter_finder.py | 286 | ${PYSITELIB}/PIL/_tkinter_finder.py | |
279 | ${PYSITELIB}/PIL/_tkinter_finder.pyc | 287 | ${PYSITELIB}/PIL/_tkinter_finder.pyc | |
280 | ${PYSITELIB}/PIL/_tkinter_finder.pyo | 288 | ${PYSITELIB}/PIL/_tkinter_finder.pyo | |
289 | ${PYSITELIB}/PIL/_typing.py | |||
290 | ${PYSITELIB}/PIL/_typing.pyc | |||
291 | ${PYSITELIB}/PIL/_typing.pyo | |||
281 | ${PYSITELIB}/PIL/_util.py | 292 | ${PYSITELIB}/PIL/_util.py | |
282 | ${PYSITELIB}/PIL/_util.pyc | 293 | ${PYSITELIB}/PIL/_util.pyc | |
283 | ${PYSITELIB}/PIL/_util.pyo | 294 | ${PYSITELIB}/PIL/_util.pyo | |
284 | ${PYSITELIB}/PIL/_version.py | 295 | ${PYSITELIB}/PIL/_version.py | |
285 | ${PYSITELIB}/PIL/_version.pyc | 296 | ${PYSITELIB}/PIL/_version.pyc | |
286 | ${PYSITELIB}/PIL/_version.pyo | 297 | ${PYSITELIB}/PIL/_version.pyo | |
287 | ${PYSITELIB}/PIL/_webp.so | 298 | ${PYSITELIB}/PIL/_webp.so | |
288 | ${PYSITELIB}/PIL/features.py | 299 | ${PYSITELIB}/PIL/features.py | |
289 | ${PYSITELIB}/PIL/features.pyc | 300 | ${PYSITELIB}/PIL/features.pyc | |
290 | ${PYSITELIB}/PIL/features.pyo | 301 | ${PYSITELIB}/PIL/features.pyo | |
291 | ${PYSITELIB}/${EGG_INFODIR}/PKG-INFO | |||
292 | ${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt | |||
293 | ${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt | |||
294 | ${PYSITELIB}/${EGG_INFODIR}/requires.txt | |||
295 | ${PYSITELIB}/${EGG_INFODIR}/top_level.txt | |||
296 | ${PYSITELIB}/${EGG_INFODIR}/zip-safe |
@@ -1,6 +1,6 @@ | @@ -1,6 +1,6 @@ | |||
1 | $NetBSD: distinfo,v 1.60 2023/10/16 19:26:49 adam Exp $ | 1 | $NetBSD: distinfo,v 1.61 2024/01/05 23:47:53 adam Exp $ | |
2 | 2 | |||
3 | BLAKE2s (Pillow-10.1.0.tar.gz) = f56f286d7d2fea81e4a8692357425a812eff011bbe49415f483da0d842bec6d3 | 3 | BLAKE2s (pillow-10.2.0.tar.gz) = 14a9e9655b2623c4d0928df7446eea99a0b5617414802e4f7531d520bc79318c | |
4 | SHA512 (Pillow-10.1.0.tar.gz) = 77eeaee6f2b8b77b33438d6a5f3a2c79ff1154e39bc225f279f066d6471b6991aad4390756575fa53448062f7bf8763462e95a5b2cc8af1414c1d52f27529736 | 4 | SHA512 (pillow-10.2.0.tar.gz) = 9fac2cdc9539f947629cee428d55cf60a8d44c91cee8d8205907a79a9d0334062a46e3eb316069069d2f1298a8c0bbcc8f55b24122695d19e72728e093df63e5 | |
5 | Size (Pillow-10.1.0.tar.gz) = 50781360 bytes | 5 | Size (pillow-10.2.0.tar.gz) = 46212712 bytes | |
6 | SHA1 (patch-setup.py) = 9e95214579d45b1a3230ea342ae8be82ed2d61c9 | 6 | SHA1 (patch-setup.py) = 80ee74a110e21e7c4071ab9ba0a7c1f3ede64355 |
@@ -1,17 +1,30 @@ | @@ -1,17 +1,30 @@ | |||
1 | $NetBSD: patch-setup.py,v 1.24 2022/08/01 14:51:15 wiz Exp $ | 1 | $NetBSD: patch-setup.py,v 1.25 2024/01/05 23:47:53 adam Exp $ | |
2 | 2 | |||
3 | Fix finding zlib.h. | 3 | Fix finding zlib.h. | |
4 | Do not look for xcb. | |||
4 | 5 | |||
5 | --- setup.py.orig 2022-07-01 13:14:51.000000000 +0000 | 6 | --- setup.py.orig 2024-01-02 08:28:43.000000000 +0000 | |
6 | +++ setup.py | 7 | +++ setup.py | |
7 | @@ -636,7 +636,9 @@ class pil_build_ext(build_ext): | 8 | @@ -642,7 +642,9 @@ class pil_build_ext(build_ext): | |
8 | 9 | |||
9 | if feature.want("zlib"): | 10 | if feature.want("zlib"): | |
10 | _dbg("Looking for zlib") | 11 | _dbg("Looking for zlib") | |
11 | - if _find_include_file(self, "zlib.h"): | 12 | - if _find_include_file(self, "zlib.h"): | |
12 | + if True: | 13 | + if True: | |
13 | + feature.zlib = "z" | 14 | + feature.zlib = "z" | |
14 | + elif _find_include_file(self, "zlib.h"): | 15 | + elif _find_include_file(self, "zlib.h"): | |
15 | if _find_library_file(self, "z"): | 16 | if _find_library_file(self, "z"): | |
16 | feature.zlib = "z" | 17 | feature.zlib = "z" | |
17 | elif sys.platform == "win32" and _find_library_file(self, "zlib"): | 18 | elif sys.platform == "win32" and _find_library_file(self, "zlib"): | |
19 | @@ -800,11 +802,6 @@ class pil_build_ext(build_ext): | |||
20 | ): | |||
21 | feature.webpmux = "libwebpmux" | |||
22 | ||||
23 | - if feature.want("xcb"): | |||
24 | - _dbg("Looking for xcb") | |||
25 | - if _find_include_file(self, "xcb/xcb.h"): | |||
26 | - if _find_library_file(self, "xcb"): | |||
27 | - feature.xcb = "xcb" | |||
28 | ||||
29 | for f in feature: | |||
30 | if not getattr(feature, f) and feature.require(f): |