Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-imagecodecs for openSUSE:Factory checked in at 2021-03-30 21:02:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-imagecodecs (Old) and /work/SRC/openSUSE:Factory/.python-imagecodecs.new.2401 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-imagecodecs" Tue Mar 30 21:02:40 2021 rev:6 rq:878358 version:2021.2.26 Changes: -------- --- /work/SRC/openSUSE:Factory/python-imagecodecs/python-imagecodecs.changes 2020-09-04 11:02:03.754718202 +0200 +++ /work/SRC/openSUSE:Factory/.python-imagecodecs.new.2401/python-imagecodecs.changes 2021-03-30 21:02:44.800872604 +0200 @@ -1,0 +2,48 @@ +Wed Mar 10 10:42:55 UTC 2021 - Ben Greiner <[email protected]> + +- Update to version 2021.2.26 + Pass 4915 tests. Support X2 and X4 floating point predictors + (found in DNG). +- enable additional codecs through imagecodecs_distributor_setup.py +- Add imagecodecs-pr15-test_jpegls.patch + gh#cgohlke/imagecodecs#15 +- disable builds for big-endian platforms as per upstream README + +------------------------------------------------------------------- +Mon Feb 1 19:40:15 UTC 2021 - Ben Greiner <[email protected]> + +- Update to version 2021.1.28 + * Add option to return JPEG XR fixed point pixel types as + integers + * Add LJPEG codec via liblj92 (alternative to JPEGSOF3 codec) + * Change zopfli header location. +- refresh always-cythonize.patch +- drop zopfli-headers.patch fixed upstream +- Add more testing requirements to test backends +- Add skip reporting to pytest to see what is still missing + +------------------------------------------------------------------- +Tue Jan 12 21:54:10 UTC 2021 - andy great <[email protected]> + +- Update to version 2021.1.11. + * Fix build issues (#7, #8). + * Return bytearray instead of bytes on PyPy. + * Raise TypeError if output provided is bytes (breaking). +- Updates for version 2021.1.8 + * Add float24 codec. + * Update copyrights. +- Updates for version 2020.12.24 + * Update dependencies and build scripts. +- Updates for version 2020.12.22 + * Add AVIF codec via libavif (WIP). + * Add DEFLATE/Zlib and GZIP codecs via libdeflate. + * Add LZ4F codec. + * Add high compression mode option to lz4_encode. + * Convert JPEG XR 16 and 32-bit fixed point pixel types to float32. + * Fix JPEG 2000 lossy encoding. + * Fix GIF disposal handling. + * Remove support for Python 3.6 (NEP 29). +- Rebase always-cythonize.patch +- Rebase zopfli-headers.patch + +------------------------------------------------------------------- Old: ---- imagecodecs-2020.5.30.tar.gz zopfli-headers.patch New: ---- imagecodecs-2021.2.26.tar.gz imagecodecs-pr15-test_jpegls.patch imagecodecs_distributor_setup.py ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-imagecodecs.spec ++++++ --- /var/tmp/diff_new_pack.X3xBcv/_old 2021-03-30 21:02:45.616873500 +0200 +++ /var/tmp/diff_new_pack.X3xBcv/_new 2021-03-30 21:02:45.620873506 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-imagecodecs # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -26,20 +26,24 @@ %bcond_with test %endif %define skip_python2 1 +%define skip_python36 1 Name: python-imagecodecs%{psuffix} -Version: 2020.5.30 +Version: 2021.2.26 Release: 0 Summary: Image transformation, compression, and decompression codecs License: BSD-3-Clause -URL: https://www.lfd.uci.edu/~gohlke/ +URL: https://github.com/cgohlke/imagecodecs/ Source: https://files.pythonhosted.org/packages/source/i/imagecodecs/imagecodecs-%{version}.tar.gz +Source1: imagecodecs_distributor_setup.py Patch0: always-cythonize.patch -Patch1: zopfli-headers.patch +# PATCH-FIX-UPSTREAM imagecodecs-pr15-test_jpegls.patch -- gh#cgohlke/imagecodecs#15 +Patch1: https://github.com/cgohlke/imagecodecs/pull/15.patch#/imagecodecs-pr15-test_jpegls.patch BuildRequires: %{python_module Cython >= 0.29.19} BuildRequires: %{python_module numpy-devel >= 1.15.1} BuildRequires: %{python_module setuptools >= 18.0} BuildRequires: dos2unix BuildRequires: fdupes +BuildRequires: python-rpm-macros Requires: python-numpy >= 1.15.1 Requires(post): update-alternatives Requires(postun): update-alternatives @@ -50,27 +54,40 @@ Recommends: python-tifffile >= 2020.5.25 Recommends: python-zstd %if %{with test} +BuildRequires: %{python_module Brotli} BuildRequires: %{python_module Pillow} BuildRequires: %{python_module blosc} +BuildRequires: %{python_module czifile} BuildRequires: %{python_module imagecodecs >= %{version}} BuildRequires: %{python_module lz4} BuildRequires: %{python_module matplotlib >= 3.1} BuildRequires: %{python_module pytest} +BuildRequires: %{python_module python-snappy} BuildRequires: %{python_module scikit-image} BuildRequires: %{python_module tifffile >= 2020.5.25} BuildRequires: %{python_module zstd} +# libraries and python modules not (yet) available: +#BuildRequires: %%{python_module bitshuffle} +#BuildRequires: %%{python_module lzf} +# The zopfli library is linked. User can pip install zopflipy, if needed. +#BuildRequires: %%{python_module zopflipy} %else +BuildRequires: CharLS-devel +BuildRequires: dav1d-devel BuildRequires: gcc-c++ BuildRequires: giflib-devel BuildRequires: jxrlib-devel BuildRequires: libaec-devel +BuildRequires: libaom-devel +BuildRequires: libdeflate-devel BuildRequires: libzopfli-devel BuildRequires: pkgconfig -BuildRequires: python-rpm-macros +BuildRequires: rav1e-devel BuildRequires: snappy-devel BuildRequires: pkgconfig(blosc) BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(lcms2) +BuildRequires: pkgconfig(libavif) BuildRequires: pkgconfig(libbrotlicommon) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(liblz4) @@ -81,7 +98,13 @@ BuildRequires: pkgconfig(libwebp) BuildRequires: pkgconfig(libzstd) BuildRequires: pkgconfig(zlib) +%ifnarch %ix86 %arm +# zfp is 64 bit only. Note that upstream deprecated 32-bit as a whole +BuildRequires: zfp-devel %endif +%endif +# Upstream: big endian is not supported +ExcludeArch: s390x ppc64 %python_subpackages %description @@ -89,20 +112,27 @@ transformation, compression, and decompression functions for use in the tifffile, czifile, and other scientific imaging modules. -Decode and/or encode functions are currently implemented for Zlib DEFLATE, -ZStandard, Blosc, LZMA, BZ2, LZ4, LZW, LZF, ZFP, NPY, PNG, WebP, JPEG 8-bit, -JPEG 12-bit, JPEG SOF3, JPEG LS, JPEG 2000, JPEG XR, PackBits, Packed Integers, -Delta, XOR Delta, Floating Point Predictor, and Bitorder reversal. +Decode and/or encode functions are implemented for Zlib (DEFLATE), GZIP, +ZStandard (ZSTD), Blosc, Brotli, Snappy, LZMA, BZ2, LZ4, LZ4F, LZ4HC, LZW, LZF, +ZFP, AEC, LERC, NPY, PNG, GIF, TIFF, WebP, JPEG 8-bit, JPEG 12-bit, Lossless +JPEG (LJPEG, SOF3), JPEG 2000, JPEG LS, JPEG XR, JPEG XL, AVIF, PackBits, Packed +Integers, Delta, XOR Delta, Floating Point Predictor, Bitorder reversal, +Bitshuffle, and Float24 (24-bit floating point). %prep %setup -q -n imagecodecs-%{version} +# the patch from github requires unix line endings to apply +dos2unix tests/test_imagecodecs.py %autopatch -p1 - +cp %SOURCE1 ./ dos2unix README.rst +# https://github.com/cgohlke/imagecodecs/pull/15#issuecomment-795744838 +ldd %{_libdir}/libblosc.so.1 | grep -q libsnappy && sed -i "s/if not IS_CG and compressor == 'snappy'/if False/" tests/test_imagecodecs.py %build %if !%{with test} export CFLAGS="%{optflags}" +export INCDIR="%{_includedir}" %python_build %endif @@ -117,11 +147,9 @@ %check %if %{with test} -mv imagecodecs __imagecodecs # Should add --doctest-modules %%{buildroot}%%{$python_sitearch}/imagecodecs/imagecodecs.py # however doctests are currently broken -%pytest_arch tests -mv __imagecodecs imagecodecs +%pytest_arch tests -rs --import-mode append %endif %if !%{with test} @@ -135,7 +163,8 @@ %license LICENSE imagecodecs/licenses/* %doc README.rst %python_alternative %{_bindir}/imagecodecs -%{python_sitearch}/* +%{python_sitearch}/imagecodecs-%{version}*-info +%{python_sitearch}/imagecodecs %endif %changelog ++++++ always-cythonize.patch ++++++ --- /var/tmp/diff_new_pack.X3xBcv/_old 2021-03-30 21:02:45.660873549 +0200 +++ /var/tmp/diff_new_pack.X3xBcv/_new 2021-03-30 21:02:45.660873549 +0200 @@ -1,12 +1,12 @@ -Index: imagecodecs-2020.5.30/setup.py +Index: imagecodecs-2021.1.28/setup.py =================================================================== ---- imagecodecs-2020.5.30.orig/setup.py -+++ imagecodecs-2020.5.30/setup.py -@@ -71,7 +71,7 @@ if 'sdist' in sys.argv: +--- imagecodecs-2021.1.28.orig/setup.py ++++ imagecodecs-2021.1.28/setup.py +@@ -105,7 +105,7 @@ def ext(**kwargs): OPTIONS = { -- 'cythonize': sys.version_info >= (3, 10), +- 'cythonize': sys.version_info >= (3, 10) or 'PyPy' in sys.version, + 'cythonize': True, 'include_dirs': ['imagecodecs'], 'library_dirs': [], ++++++ imagecodecs-2020.5.30.tar.gz -> imagecodecs-2021.2.26.tar.gz ++++++ /work/SRC/openSUSE:Factory/python-imagecodecs/imagecodecs-2020.5.30.tar.gz /work/SRC/openSUSE:Factory/.python-imagecodecs.new.2401/imagecodecs-2021.2.26.tar.gz differ: char 5, line 1 ++++++ imagecodecs-pr15-test_jpegls.patch ++++++ >From b14af25da949b88fb09339fd84ac97e67aa9109f Mon Sep 17 00:00:00 2001 From: Ben Greiner <[email protected]> Date: Wed, 10 Mar 2021 13:22:50 +0100 Subject: [PATCH] Check if JPEGLS is present when testing that codec --- tests/test_imagecodecs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_imagecodecs.py b/tests/test_imagecodecs.py index a057e15..c70a155 100644 --- a/tests/test_imagecodecs.py +++ b/tests/test_imagecodecs.py @@ -1535,7 +1535,7 @@ def test_jpeg2k_ycbc(): assert tuple(decoded[-1, -1]) == (0, 0, 0) [email protected](not imagecodecs.JPEGXL, reason='jpegls missing') [email protected](not imagecodecs.JPEGLS, reason='jpegls missing') @pytest.mark.parametrize('output', ['new', 'out', 'bytearray']) def test_jpegls_decode(output): """Test JPEG LS decoder with RGBA32 image.""" @@ -1889,7 +1889,7 @@ def encode(data, *args, **kwargs): ) elif codec == 'jpegls': - if not imagecodecs.JPEGXL: + if not imagecodecs.JPEGLS: pytest.skip(f'{codec} missing') if itype in ('view', 'graya') or deout == 'view': pytest.xfail('jpegls does not support this case') ++++++ imagecodecs_distributor_setup.py ++++++ # openSUSE extension setup to build python-imagecodecs import os import subprocess import sys def customize_build(EXTENSIONS, OPTIONS): includedir = os.getenv("INCDIR",'') + '/' del EXTENSIONS['jpeg12'] # jpeg12 requires custom build del EXTENSIONS['lerc'] # LERC library not available del EXTENSIONS['lz4f'] # requires static linking del EXTENSIONS['jpegxl'] # Brunsli library not available EXTENSIONS['avif']['libraries'] = [ 'avif', 'aom', 'dav1d', 'rav1e', ] # no zfp on 32-bit platforms if sys.maxsize < 2**63 - 1: del EXTENSIONS['zfp'] openjpeg_inc = subprocess.check_output( ['pkgconf', '--variable=includedir', 'libopenjp2'], text=True, ).strip() EXTENSIONS['jpeg2k']['include_dirs'].append(openjpeg_inc) EXTENSIONS['jpegxr']['include_dirs'].append(includedir + 'jxrlib') EXTENSIONS['zopfli']['include_dirs'].append(includedir + 'zopfli')
