>>> py3-img2pdf: Building community/py3-img2pdf 0.6.1-r0 (using abuild 3.16.0_rc4-r0) started Tue, 18 Nov 2025 12:15:05 +0000 >>> py3-img2pdf: Validating /home/buildozer/aports/community/py3-img2pdf/APKBUILD... >>> py3-img2pdf: Analyzing dependencies... >>> py3-img2pdf: Installing for build: build-base python3 py3-pillow py3-pikepdf py3-gpep517 py3-setuptools qpdf-dev libxml2-dev libxslt-dev py3-wheel coreutils exiftool ghostscript imagemagick mupdf-tools netpbm poppler-utils tiff-tools py3-lxml py3-numpy py3-scipy py3-pytest python3-dev ( 1/165) Installing libbz2 (1.0.8-r6) ( 2/165) Installing libffi (3.5.2-r0) ( 3/165) Installing gdbm (1.26-r0) ( 4/165) Installing xz-libs (5.8.1-r0) ( 5/165) Installing mpdecimal (4.0.1-r0) ( 6/165) Installing libpanelw (6.5_p20251115-r0) ( 7/165) Installing sqlite-libs (3.51.0-r0) ( 8/165) Installing python3 (3.12.12-r0) ( 9/165) Installing python3-pycache-pyc0 (3.12.12-r0) ( 10/165) Installing pyc (3.12.12-r0) ( 11/165) Installing python3-pyc (3.12.12-r0) ( 12/165) Installing libpng (1.6.49-r0) ( 13/165) Installing freetype (2.13.3-r0) ( 14/165) Installing libimagequant (4.2.2-r0) ( 15/165) Installing libjpeg-turbo (3.1.2-r0) ( 16/165) Installing lcms2 (2.17-r0) ( 17/165) Installing openjpeg (2.5.4-r1) ( 18/165) Installing libsharpyuv (1.6.0-r0) ( 19/165) Installing libwebp (1.6.0-r0) ( 20/165) Installing tiff (4.7.1-r0) ( 21/165) Installing libwebpdemux (1.6.0-r0) ( 22/165) Installing libwebpmux (1.6.0-r0) ( 23/165) Installing libxau (1.0.12-r0) ( 24/165) Installing libmd (1.1.0-r0) ( 25/165) Installing libbsd (0.12.2-r0) ( 26/165) Installing libxdmcp (1.1.5-r1) ( 27/165) Installing libxcb (1.17.0-r0) ( 28/165) Installing py3-pillow (11.3.0-r1) ( 29/165) Installing py3-pillow-pyc (11.3.0-r1) ( 30/165) Installing py3-wrapt (1.17.2-r0) ( 31/165) Installing py3-wrapt-pyc (1.17.2-r0) ( 32/165) Installing py3-deprecated (1.3.1-r0) ( 33/165) Installing py3-deprecated-pyc (1.3.1-r0) ( 34/165) Installing libxml2 (2.13.9-r0) ( 35/165) Installing libxslt (1.1.43-r3) ( 36/165) Installing py3-lxml (6.0.2-r1) ( 37/165) Installing py3-lxml-pyc (6.0.2-r1) ( 38/165) Installing py3-parsing (3.2.3-r0) ( 39/165) Installing py3-parsing-pyc (3.2.3-r0) ( 40/165) Installing py3-packaging (25.0-r0) ( 41/165) Installing py3-packaging-pyc (25.0-r0) ( 42/165) Installing nettle (3.10.2-r0) ( 43/165) Installing libtasn1 (4.20.0-r0) ( 44/165) Installing p11-kit (0.25.5-r2) ( 45/165) Installing gnutls (3.8.8-r0) ( 46/165) Installing qpdf-libs (12.2.0-r0) ( 47/165) Installing py3-pikepdf (9.9.0-r0) ( 48/165) Installing py3-pikepdf-pyc (9.9.0-r0) ( 49/165) Installing py3-installer (0.7.0-r2) ( 50/165) Installing py3-installer-pyc (0.7.0-r2) ( 51/165) Installing py3-gpep517 (19-r1) ( 52/165) Installing py3-gpep517-pyc (19-r1) ( 53/165) Installing py3-setuptools (80.9.0-r2) ( 54/165) Installing py3-setuptools-pyc (80.9.0-r2) ( 55/165) Installing gnutls-c++ (3.8.8-r0) ( 56/165) Installing libgmpxx (6.3.0-r4) ( 57/165) Installing gmp-dev (6.3.0-r4) ( 58/165) Installing nettle-dev (3.10.2-r0) ( 59/165) Installing libidn2-dev (2.3.8-r0) ( 60/165) Installing libtasn1-progs (4.20.0-r0) ( 61/165) Installing libtasn1-dev (4.20.0-r0) ( 62/165) Installing p11-kit-dev (0.25.5-r2) ( 63/165) Installing zlib-dev (1.3.1-r2) ( 64/165) Installing gnutls-dev (3.8.8-r0) ( 65/165) Installing libturbojpeg (3.1.2-r0) ( 66/165) Installing libjpeg-turbo-dev (3.1.2-r0) ( 67/165) Installing openssl-dev (3.5.4-r0) ( 68/165) Installing qpdf-dev (12.2.0-r0) ( 69/165) Installing xz (5.8.1-r0) ( 70/165) Installing xz-dev (5.8.1-r0) ( 71/165) Installing libxml2-utils (2.13.9-r0) ( 72/165) Installing libxml2-dev (2.13.9-r0) ( 73/165) Installing libxslt-dev (1.1.43-r3) ( 74/165) Installing py3-wheel (0.46.1-r0) ( 75/165) Installing py3-wheel-pyc (0.46.1-r0) ( 76/165) Installing coreutils-env (9.8-r1) ( 77/165) Installing coreutils-fmt (9.8-r1) ( 78/165) Installing coreutils-sha512sum (9.8-r1) ( 79/165) Installing libattr (2.5.2-r2) ( 80/165) Installing skalibs-libs (2.14.4.0-r0) ( 81/165) Installing utmps-libs (0.1.3.1-r0) ( 82/165) Installing coreutils (9.8-r1) ( 83/165) Installing perl (5.42.0-r0) ( 84/165) Installing perl-image-exiftool (13.36-r0) ( 85/165) Installing exiftool (13.36-r0) ( 86/165) Installing libx11 (1.8.12-r1) ( 87/165) Installing libice (1.1.2-r0) ( 88/165) Installing libuuid (2.41.2-r0) ( 89/165) Installing libsm (1.2.6-r0) ( 90/165) Installing libxt (1.3.1-r0) ( 91/165) Installing dbus-libs (1.16.2-r1) ( 92/165) Installing libintl (0.24.1-r1) ( 93/165) Installing avahi-libs (0.8-r22) ( 94/165) Installing cups-libs (2.4.13-r0) ( 95/165) Installing fontconfig (2.17.1-r0) ( 96/165) Installing jbig2dec (0.20-r0) ( 97/165) Installing ghostscript (10.05.1-r1) ( 98/165) Installing libxext (1.3.6-r2) ( 99/165) Installing fftw-double-libs (3.3.10-r7) (100/165) Installing libltdl (2.5.4-r1) (101/165) Installing fribidi (1.0.16-r2) (102/165) Installing libeconf (0.8.0-r0) (103/165) Installing libblkid (2.41.2-r0) (104/165) Installing libmount (2.41.2-r0) (105/165) Installing glib (2.86.1-r0) (106/165) Installing graphite2 (1.3.14-r6) (107/165) Installing harfbuzz (11.3.2-r0) (108/165) Installing libraqm (0.10.2-r0) (109/165) Installing imagemagick-libs (7.1.2.8-r0) (110/165) Installing imagemagick (7.1.2.8-r0) (111/165) Installing imagemagick-jpeg (7.1.2.8-r0) (112/165) Installing imagemagick-pdf (7.1.2.8-r0) (113/165) Installing imagemagick-jp2 (7.1.2.8-r0) (114/165) Installing imagemagick-tiff (7.1.2.8-r0) (115/165) Installing imagemagick-webp (7.1.2.8-r0) (116/165) Installing mujs-libs (1.3.6-r0) (117/165) Installing gumbo-parser (0.13.2-r0) (118/165) Installing mupdf-libs (1.26.11-r0) (119/165) Installing mupdf-tools (1.26.11-r0) (120/165) Installing netpbm (11.12.0-r0) (121/165) Installing libxrender (0.9.12-r0) (122/165) Installing pixman (0.46.4-r0) (123/165) Installing cairo (1.18.4-r0) (124/165) Installing nspr (4.36-r0) (125/165) Installing nss (3.117-r0) (126/165) Installing poppler (25.11.0-r0) (127/165) Installing poppler-utils (25.11.0-r0) (128/165) Installing tiff-tools (4.7.1-r0) (129/165) Installing libquadmath (15.2.0-r2) (130/165) Installing libgfortran (15.2.0-r2) (131/165) Installing openblas (0.3.30-r0) (132/165) Installing py3-numpy (2.3.4-r0) (133/165) Installing py3-numpy-tests (2.3.4-r0) (134/165) Installing py3-numpy-pyc (2.3.4-r0) (135/165) Installing py3-platformdirs (4.5.0-r0) (136/165) Installing py3-platformdirs-pyc (4.5.0-r0) (137/165) Installing py3-certifi (2025.10.5-r0) (138/165) Installing py3-certifi-pyc (2025.10.5-r0) (139/165) Installing py3-charset-normalizer (3.4.4-r0) (140/165) Installing py3-charset-normalizer-pyc (3.4.4-r0) (141/165) Installing py3-idna (3.10-r0) (142/165) Installing py3-idna-pyc (3.10-r0) (143/165) Installing py3-urllib3 (1.26.20-r0) (144/165) Installing py3-urllib3-pyc (1.26.20-r0) (145/165) Installing py3-requests (2.32.5-r0) (146/165) Installing py3-requests-pyc (2.32.5-r0) (147/165) Installing py3-pooch (1.8.2-r1) (148/165) Installing py3-pooch-pyc (1.8.2-r1) (149/165) Installing py3-scipy (1.16.3-r0) (150/165) Installing py3-scipy-pyc (1.16.3-r0) (151/165) Installing py3-iniconfig (2.3.0-r0) (152/165) Installing py3-iniconfig-pyc (2.3.0-r0) (153/165) Installing py3-pluggy (1.6.0-r0) (154/165) Installing py3-pluggy-pyc (1.6.0-r0) (155/165) Installing py3-py (1.11.0-r4) (156/165) Installing py3-py-pyc (1.11.0-r4) (157/165) Installing py3-pygments (2.19.2-r0) (158/165) Installing py3-pygments-pyc (2.19.2-r0) (159/165) Installing py3-pytest (8.4.2-r1) (160/165) Installing py3-pytest-pyc (8.4.2-r1) (161/165) Installing python3-dev (3.12.12-r0) (162/165) Installing .makedepends-py3-img2pdf (20251118.121517) (163/165) Installing perl-error (0.17030-r0) (164/165) Installing perl-git (2.51.2-r0) (165/165) Installing git-perl (2.51.2-r0) busybox-1.37.0-r25.trigger: Executing script... fontconfig-2.17.1-r0.trigger: Executing script... glib-2.86.1-r0.trigger: Executing script... OK: 882 MiB in 270 packages >>> py3-img2pdf: Cleaning up srcdir >>> py3-img2pdf: Cleaning up pkgdir >>> py3-img2pdf: Cleaning up tmpdir >>> py3-img2pdf: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/img2pdf-0.6.1.tar.gz /var/cache/distfiles/v3.23/img2pdf-0.6.1.tar.gz: OK >>> py3-img2pdf: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/img2pdf-0.6.1.tar.gz /var/cache/distfiles/v3.23/img2pdf-0.6.1.tar.gz: OK >>> py3-img2pdf: Unpacking /var/cache/distfiles/v3.23/img2pdf-0.6.1.tar.gz... 2025-11-18 12:15:22,093 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__ /usr/lib/python3.12/site-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3) See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() 2025-11-18 12:15:22,127 root INFO running bdist_wheel 2025-11-18 12:15:22,158 root INFO running build 2025-11-18 12:15:22,158 root INFO running build_py 2025-11-18 12:15:22,165 root INFO creating build/lib 2025-11-18 12:15:22,165 root INFO copying src/img2pdf.py -> build/lib 2025-11-18 12:15:22,166 root INFO copying src/jp2.py -> build/lib 2025-11-18 12:15:22,166 root INFO running egg_info 2025-11-18 12:15:22,171 root INFO writing src/img2pdf.egg-info/PKG-INFO 2025-11-18 12:15:22,180 root INFO writing dependency_links to src/img2pdf.egg-info/dependency_links.txt 2025-11-18 12:15:22,180 root INFO writing entry points to src/img2pdf.egg-info/entry_points.txt 2025-11-18 12:15:22,180 root INFO writing requirements to src/img2pdf.egg-info/requires.txt 2025-11-18 12:15:22,181 root INFO writing top-level names to src/img2pdf.egg-info/top_level.txt 2025-11-18 12:15:22,187 root INFO reading manifest file 'src/img2pdf.egg-info/SOURCES.txt' 2025-11-18 12:15:22,188 root INFO reading manifest template 'MANIFEST.in' 2025-11-18 12:15:22,188 root WARNING warning: no files found matching 'test.sh' 2025-11-18 12:15:22,188 root WARNING warning: no files found matching 'magick.py' 2025-11-18 12:15:22,193 root INFO adding license file 'LICENSE' 2025-11-18 12:15:22,195 root INFO writing manifest file 'src/img2pdf.egg-info/SOURCES.txt' 2025-11-18 12:15:22,209 root INFO installing to build/bdist.linux-i686/wheel 2025-11-18 12:15:22,209 root INFO running install 2025-11-18 12:15:22,221 root INFO running install_lib 2025-11-18 12:15:22,229 root INFO creating build/bdist.linux-i686/wheel 2025-11-18 12:15:22,229 root INFO copying build/lib/jp2.py -> build/bdist.linux-i686/wheel/. 2025-11-18 12:15:22,229 root INFO copying build/lib/img2pdf.py -> build/bdist.linux-i686/wheel/. 2025-11-18 12:15:22,230 root INFO running install_egg_info 2025-11-18 12:15:22,237 root INFO Copying src/img2pdf.egg-info to build/bdist.linux-i686/wheel/./img2pdf-0.6.1-py3.12.egg-info 2025-11-18 12:15:22,239 root INFO running install_scripts 2025-11-18 12:15:22,241 root INFO creating build/bdist.linux-i686/wheel/img2pdf-0.6.1.dist-info/WHEEL 2025-11-18 12:15:22,241 wheel INFO creating '/home/buildozer/aports/community/py3-img2pdf/src/img2pdf-0.6.1/.dist/.tmp-oks_s7wx/img2pdf-0.6.1-py3-none-any.whl' and adding 'build/bdist.linux-i686/wheel' to it 2025-11-18 12:15:22,242 wheel INFO adding 'img2pdf.py' 2025-11-18 12:15:22,243 wheel INFO adding 'jp2.py' 2025-11-18 12:15:22,243 wheel INFO adding 'img2pdf-0.6.1.dist-info/licenses/LICENSE' 2025-11-18 12:15:22,244 wheel INFO adding 'img2pdf-0.6.1.dist-info/METADATA' 2025-11-18 12:15:22,244 wheel INFO adding 'img2pdf-0.6.1.dist-info/WHEEL' 2025-11-18 12:15:22,244 wheel INFO adding 'img2pdf-0.6.1.dist-info/entry_points.txt' 2025-11-18 12:15:22,244 wheel INFO adding 'img2pdf-0.6.1.dist-info/top_level.txt' 2025-11-18 12:15:22,244 wheel INFO adding 'img2pdf-0.6.1.dist-info/zip-safe' 2025-11-18 12:15:22,245 wheel INFO adding 'img2pdf-0.6.1.dist-info/RECORD' 2025-11-18 12:15:22,245 root INFO removing build/bdist.linux-i686/wheel 2025-11-18 12:15:22,246 gpep517 INFO The backend produced .dist/img2pdf-0.6.1-py3-none-any.whl img2pdf-0.6.1-py3-none-any.whl ============================= test session starts ============================== platform linux -- Python 3.12.12, pytest-8.4.2, pluggy-1.6.0 rootdir: /home/buildozer/aports/community/py3-img2pdf/src/img2pdf-0.6.1 collected 352 items / 42 deselected / 310 selected src/img2pdf_test.py EE.................................................. [ 16%] ............................ssssss........ss....FF...................... [ 40%] ........................................................................ [ 63%] ........................................................................ [ 86%] .................ssssssss................. [100%] ==================================== ERRORS ==================================== _____________________ ERROR at setup of test_jpg[internal] _____________________ tmp_path_factory = TempPathFactory(_given_basetemp=None, _trace=, _basetemp=PosixPath('/tmp/pytest-of-buildozer/pytest-788'), _retention_count=3, _retention_policy='all') tmp_normal_png = PosixPath('/tmp/pytest-of-buildozer/pytest-788/normal_png0/normal.png') @pytest.fixture(scope="session") def jpg_img(tmp_path_factory, tmp_normal_png): in_img = tmp_path_factory.mktemp("jpg") / "in.jpg" subprocess.check_call(CONVERT + [str(tmp_normal_png), str(in_img)]) identify = json.loads(subprocess.check_output(CONVERT + [str(in_img), "json:"])) assert len(identify) == 1 # somewhere between imagemagick 6.9.7.4 and 6.9.9.34, the json output was # put into an array, here we cater for the older version containing just # the bare dictionary if "image" in identify: identify = [identify] assert "image" in identify[0] assert identify[0]["image"].get("format") == "JPEG", str(identify) assert identify[0]["image"].get("mimeType") == "image/jpeg", str(identify) assert identify[0]["image"].get("geometry") == { "width": 60, "height": 60, "x": 0, "y": 0, }, str(identify) > assert "resolution" not in identify[0]["image"] E AssertionError: assert 'resolution' not in {'backgroundColor': '#FFFFFFFFFFFF', 'baseDepth': 8, 'baseName': 'in.jpg', 'baseType': 'Undefined', ...} src/img2pdf_test.py:1064: AssertionError ---------------------------- Captured stderr setup ----------------------------- WARNING: The convert command is deprecated in IMv7, use "magick" instead of "convert" or "magick convert" WARNING: The convert command is deprecated in IMv7, use "magick" instead of "convert" or "magick convert" _____________________ ERROR at setup of test_jpg[pikepdf] ______________________ tmp_path_factory = TempPathFactory(_given_basetemp=None, _trace=, _basetemp=PosixPath('/tmp/pytest-of-buildozer/pytest-788'), _retention_count=3, _retention_policy='all') tmp_normal_png = PosixPath('/tmp/pytest-of-buildozer/pytest-788/normal_png0/normal.png') @pytest.fixture(scope="session") def jpg_img(tmp_path_factory, tmp_normal_png): in_img = tmp_path_factory.mktemp("jpg") / "in.jpg" subprocess.check_call(CONVERT + [str(tmp_normal_png), str(in_img)]) identify = json.loads(subprocess.check_output(CONVERT + [str(in_img), "json:"])) assert len(identify) == 1 # somewhere between imagemagick 6.9.7.4 and 6.9.9.34, the json output was # put into an array, here we cater for the older version containing just # the bare dictionary if "image" in identify: identify = [identify] assert "image" in identify[0] assert identify[0]["image"].get("format") == "JPEG", str(identify) assert identify[0]["image"].get("mimeType") == "image/jpeg", str(identify) assert identify[0]["image"].get("geometry") == { "width": 60, "height": 60, "x": 0, "y": 0, }, str(identify) > assert "resolution" not in identify[0]["image"] E AssertionError: assert 'resolution' not in {'backgroundColor': '#FFFFFFFFFFFF', 'baseDepth': 8, 'baseName': 'in.jpg', 'baseType': 'Undefined', ...} src/img2pdf_test.py:1064: AssertionError =================================== FAILURES =================================== __________________________ test_miff_cmyk16[internal] __________________________ tmp_path_factory = TempPathFactory(_given_basetemp=None, _trace=, _basetemp=PosixPath('/tmp/pytest-of-buildozer/pytest-788'), _retention_count=3, _retention_policy='all') miff_cmyk16_img = PosixPath('/tmp/pytest-of-buildozer/pytest-788/miff_cmyk160/in.miff') tiff_cmyk16_img = PosixPath('/tmp/pytest-of-buildozer/pytest-788/tiff_cmyk160/in.tiff') miff_cmyk16_pdf = PosixPath('/tmp/pytest-of-buildozer/pytest-788/miff_cmyk16_pdf0/out.pdf') @pytest.mark.skipif( sys.platform in ["win32"], reason="test utilities not available on Windows and MacOS", ) @pytest.mark.skipif( platform.machine() == "s390x", reason="https://github.com/ImageMagick/ImageMagick/issues/8055", ) def test_miff_cmyk16( tmp_path_factory, miff_cmyk16_img, tiff_cmyk16_img, miff_cmyk16_pdf ): tmpdir = tmp_path_factory.mktemp("miff_cmyk16") > compare_ghostscript( tmpdir, tiff_cmyk16_img, miff_cmyk16_pdf, gsdevice="tiff32nc", exact=False ) src/img2pdf_test.py:6348: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ src/img2pdf_test.py:419: in compare_ghostscript compare(str(img), str(tmpdir / "gs-1.") + ext, exact, icc, False) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ im1 = '/tmp/pytest-of-buildozer/pytest-788/tiff_cmyk160/in.tiff' im2 = '/tmp/pytest-of-buildozer/pytest-788/miff_cmyk161/gs-1.tiff' exact = False, icc = False, cmyk = False def compare(im1, im2, exact, icc, cmyk): if exact: if cmyk and not HAVE_EXACT_CMYK8: raise Exception("cmyk cannot be exact before ImageMagick 7.1.0-48") elif icc: raise Exception("icc cannot be exact") else: subprocess.check_call( COMPARE + [ "-metric", "AE", "-alpha", "off", im1, im2, "null:", ] ) else: iccargs = [] if icc: if ICC_PROFILE is None: pytest.skip("Could not locate an ICC profile") iccargs = ["-profile", ICC_PROFILE] psnr = subprocess.run( COMPARE + iccargs + [ "-metric", "PSNR", im1, im2, "null:", ], check=False, stderr=subprocess.PIPE, ).stderr assert psnr != b"0" assert psnr != b"0 (0)" assert psnr_re.fullmatch(psnr) is not None, psnr psnr = psnr_re.fullmatch(psnr).group(1) psnr = float(psnr) assert psnr != 0 # or otherwise we would use the exact variant > assert psnr > 50 E assert 6.35075 > 50 src/img2pdf_test.py:397: AssertionError ---------------------------- Captured stderr setup ----------------------------- WARNING: The convert command is deprecated in IMv7, use "magick" instead of "convert" or "magick convert" WARNING: The convert command is deprecated in IMv7, use "magick" instead of "convert" or "magick convert" __________________________ test_miff_cmyk16[pikepdf] ___________________________ tmp_path_factory = TempPathFactory(_given_basetemp=None, _trace=, _basetemp=PosixPath('/tmp/pytest-of-buildozer/pytest-788'), _retention_count=3, _retention_policy='all') miff_cmyk16_img = PosixPath('/tmp/pytest-of-buildozer/pytest-788/miff_cmyk160/in.miff') tiff_cmyk16_img = PosixPath('/tmp/pytest-of-buildozer/pytest-788/tiff_cmyk160/in.tiff') miff_cmyk16_pdf = PosixPath('/tmp/pytest-of-buildozer/pytest-788/miff_cmyk16_pdf1/out.pdf') @pytest.mark.skipif( sys.platform in ["win32"], reason="test utilities not available on Windows and MacOS", ) @pytest.mark.skipif( platform.machine() == "s390x", reason="https://github.com/ImageMagick/ImageMagick/issues/8055", ) def test_miff_cmyk16( tmp_path_factory, miff_cmyk16_img, tiff_cmyk16_img, miff_cmyk16_pdf ): tmpdir = tmp_path_factory.mktemp("miff_cmyk16") > compare_ghostscript( tmpdir, tiff_cmyk16_img, miff_cmyk16_pdf, gsdevice="tiff32nc", exact=False ) src/img2pdf_test.py:6348: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ src/img2pdf_test.py:419: in compare_ghostscript compare(str(img), str(tmpdir / "gs-1.") + ext, exact, icc, False) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ im1 = '/tmp/pytest-of-buildozer/pytest-788/tiff_cmyk160/in.tiff' im2 = '/tmp/pytest-of-buildozer/pytest-788/miff_cmyk162/gs-1.tiff' exact = False, icc = False, cmyk = False def compare(im1, im2, exact, icc, cmyk): if exact: if cmyk and not HAVE_EXACT_CMYK8: raise Exception("cmyk cannot be exact before ImageMagick 7.1.0-48") elif icc: raise Exception("icc cannot be exact") else: subprocess.check_call( COMPARE + [ "-metric", "AE", "-alpha", "off", im1, im2, "null:", ] ) else: iccargs = [] if icc: if ICC_PROFILE is None: pytest.skip("Could not locate an ICC profile") iccargs = ["-profile", ICC_PROFILE] psnr = subprocess.run( COMPARE + iccargs + [ "-metric", "PSNR", im1, im2, "null:", ], check=False, stderr=subprocess.PIPE, ).stderr assert psnr != b"0" assert psnr != b"0 (0)" assert psnr_re.fullmatch(psnr) is not None, psnr psnr = psnr_re.fullmatch(psnr).group(1) psnr = float(psnr) assert psnr != 0 # or otherwise we would use the exact variant > assert psnr > 50 E assert 6.35075 > 50 src/img2pdf_test.py:397: AssertionError =============================== warnings summary =============================== src/img2pdf_test.py:111 /home/buildozer/aports/community/py3-img2pdf/src/img2pdf-0.6.1/src/img2pdf_test.py:111: UserWarning: imagemagick >= 6.9.10-12 not available, skipping certain checks... warnings.warn("imagemagick >= 6.9.10-12 not available, skipping certain checks...") -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED src/img2pdf_test.py::test_miff_cmyk16[internal] - assert 6.35075 > 50 FAILED src/img2pdf_test.py::test_miff_cmyk16[pikepdf] - assert 6.35075 > 50 ERROR src/img2pdf_test.py::test_jpg[internal] - AssertionError: assert 'resol... ERROR src/img2pdf_test.py::test_jpg[pikepdf] - AssertionError: assert 'resolu... = 2 failed, 290 passed, 16 skipped, 42 deselected, 1 warning, 2 errors in 48.67s = >>> ERROR: py3-img2pdf: check failed >>> py3-img2pdf: Uninstalling dependencies... ( 1/165) Purging .makedepends-py3-img2pdf (20251118.121517) ( 2/165) Purging py3-pikepdf-pyc (9.9.0-r0) ( 3/165) Purging py3-pikepdf (9.9.0-r0) ( 4/165) Purging py3-deprecated-pyc (1.3.1-r0) ( 5/165) Purging py3-deprecated (1.3.1-r0) ( 6/165) Purging py3-wrapt-pyc (1.17.2-r0) ( 7/165) Purging py3-wrapt (1.17.2-r0) ( 8/165) Purging py3-pillow-pyc (11.3.0-r1) ( 9/165) Purging py3-pillow (11.3.0-r1) ( 10/165) Purging py3-gpep517-pyc (19-r1) ( 11/165) Purging py3-gpep517 (19-r1) ( 12/165) Purging py3-installer-pyc (0.7.0-r2) ( 13/165) Purging py3-installer (0.7.0-r2) ( 14/165) Purging py3-setuptools-pyc (80.9.0-r2) ( 15/165) Purging py3-setuptools (80.9.0-r2) ( 16/165) Purging qpdf-dev (12.2.0-r0) ( 17/165) Purging qpdf-libs (12.2.0-r0) ( 18/165) Purging py3-wheel-pyc (0.46.1-r0) ( 19/165) Purging py3-wheel (0.46.1-r0) ( 20/165) Purging coreutils (9.8-r1) coreutils-9.8-r1.post-deinstall: Executing script... ( 21/165) Purging coreutils-env (9.8-r1) ( 22/165) Purging coreutils-fmt (9.8-r1) ( 23/165) Purging coreutils-sha512sum (9.8-r1) ( 24/165) Purging exiftool (13.36-r0) ( 25/165) Purging perl-image-exiftool (13.36-r0) ( 26/165) Purging imagemagick-jpeg (7.1.2.8-r0) ( 27/165) Purging imagemagick-pdf (7.1.2.8-r0) ( 28/165) Purging imagemagick-jp2 (7.1.2.8-r0) ( 29/165) Purging imagemagick-tiff (7.1.2.8-r0) ( 30/165) Purging imagemagick-webp (7.1.2.8-r0) ( 31/165) Purging imagemagick (7.1.2.8-r0) ( 32/165) Purging mupdf-tools (1.26.11-r0) ( 33/165) Purging netpbm (11.12.0-r0) ( 34/165) Purging poppler-utils (25.11.0-r0) ( 35/165) Purging tiff-tools (4.7.1-r0) ( 36/165) Purging py3-lxml-pyc (6.0.2-r1) ( 37/165) Purging py3-lxml (6.0.2-r1) ( 38/165) Purging py3-scipy-pyc (1.16.3-r0) ( 39/165) Purging py3-scipy (1.16.3-r0) ( 40/165) Purging py3-pooch-pyc (1.8.2-r1) ( 41/165) Purging py3-pooch (1.8.2-r1) ( 42/165) Purging py3-platformdirs-pyc (4.5.0-r0) ( 43/165) Purging py3-platformdirs (4.5.0-r0) ( 44/165) Purging py3-requests-pyc (2.32.5-r0) ( 45/165) Purging py3-requests (2.32.5-r0) ( 46/165) Purging py3-certifi-pyc (2025.10.5-r0) ( 47/165) Purging py3-certifi (2025.10.5-r0) ( 48/165) Purging py3-charset-normalizer-pyc (3.4.4-r0) ( 49/165) Purging py3-charset-normalizer (3.4.4-r0) ( 50/165) Purging py3-idna-pyc (3.10-r0) ( 51/165) Purging py3-idna (3.10-r0) ( 52/165) Purging py3-urllib3-pyc (1.26.20-r0) ( 53/165) Purging py3-urllib3 (1.26.20-r0) ( 54/165) Purging py3-numpy-tests (2.3.4-r0) ( 55/165) Purging py3-numpy-pyc (2.3.4-r0) ( 56/165) Purging py3-numpy (2.3.4-r0) ( 57/165) Purging openblas (0.3.30-r0) ( 58/165) Purging py3-pytest-pyc (8.4.2-r1) ( 59/165) Purging py3-pytest (8.4.2-r1) ( 60/165) Purging py3-iniconfig-pyc (2.3.0-r0) ( 61/165) Purging py3-iniconfig (2.3.0-r0) ( 62/165) Purging py3-packaging-pyc (25.0-r0) ( 63/165) Purging py3-packaging (25.0-r0) ( 64/165) Purging py3-parsing-pyc (3.2.3-r0) ( 65/165) Purging py3-parsing (3.2.3-r0) ( 66/165) Purging py3-pluggy-pyc (1.6.0-r0) ( 67/165) Purging py3-pluggy (1.6.0-r0) ( 68/165) Purging py3-py-pyc (1.11.0-r4) ( 69/165) Purging py3-py (1.11.0-r4) ( 70/165) Purging py3-pygments-pyc (2.19.2-r0) ( 71/165) Purging py3-pygments (2.19.2-r0) ( 72/165) Purging python3-dev (3.12.12-r0) ( 73/165) Purging python3-pyc (3.12.12-r0) ( 74/165) Purging python3-pycache-pyc0 (3.12.12-r0) ( 75/165) Purging pyc (3.12.12-r0) ( 76/165) Purging python3 (3.12.12-r0) ( 77/165) Purging cairo (1.18.4-r0) ( 78/165) Purging gdbm (1.26-r0) ( 79/165) Purging ghostscript (10.05.1-r1) ( 80/165) Purging git-perl (2.51.2-r0) ( 81/165) Purging perl-git (2.51.2-r0) ( 82/165) Purging perl-error (0.17030-r0) ( 83/165) Purging perl (5.42.0-r0) ( 84/165) Purging gnutls-dev (3.8.8-r0) ( 85/165) Purging gnutls-c++ (3.8.8-r0) ( 86/165) Purging imagemagick-libs (7.1.2.8-r0) ( 87/165) Purging libattr (2.5.2-r2) ( 88/165) Purging libgfortran (15.2.0-r2) ( 89/165) Purging libidn2-dev (2.3.8-r0) ( 90/165) Purging libimagequant (4.2.2-r0) ( 91/165) Purging libjpeg-turbo-dev (3.1.2-r0) ( 92/165) Purging libturbojpeg (3.1.2-r0) ( 93/165) Purging libltdl (2.5.4-r1) ( 94/165) Purging libpanelw (6.5_p20251115-r0) ( 95/165) Purging libquadmath (15.2.0-r2) ( 96/165) Purging libraqm (0.10.2-r0) ( 97/165) Purging libtasn1-dev (4.20.0-r0) ( 98/165) Purging libtasn1-progs (4.20.0-r0) ( 99/165) Purging libwebpdemux (1.6.0-r0) (100/165) Purging libwebpmux (1.6.0-r0) (101/165) Purging libxext (1.3.6-r2) (102/165) Purging libxrender (0.9.12-r0) (103/165) Purging libxt (1.3.1-r0) (104/165) Purging mpdecimal (4.0.1-r0) (105/165) Purging mupdf-libs (1.26.11-r0) (106/165) Purging p11-kit-dev (0.25.5-r2) (107/165) Purging pixman (0.46.4-r0) (108/165) Purging poppler (25.11.0-r0) (109/165) Purging tiff (4.7.1-r0) (110/165) Purging utmps-libs (0.1.3.1-r0) (111/165) Purging cups-libs (2.4.13-r0) (112/165) Purging avahi-libs (0.8-r22) (113/165) Purging dbus-libs (1.16.2-r1) (114/165) Purging fftw-double-libs (3.3.10-r7) (115/165) Purging fontconfig (2.17.1-r0) (116/165) Purging harfbuzz (11.3.2-r0) (117/165) Purging freetype (2.13.3-r0) (118/165) Purging fribidi (1.0.16-r2) (119/165) Purging glib (2.86.1-r0) (120/165) Purging nettle-dev (3.10.2-r0) (121/165) Purging gmp-dev (6.3.0-r4) (122/165) Purging libgmpxx (6.3.0-r4) (123/165) Purging gnutls (3.8.8-r0) (124/165) Purging graphite2 (1.3.14-r6) (125/165) Purging gumbo-parser (0.13.2-r0) (126/165) Purging jbig2dec (0.20-r0) (127/165) Purging lcms2 (2.17-r0) (128/165) Purging libmount (2.41.2-r0) (129/165) Purging libblkid (2.41.2-r0) (130/165) Purging libx11 (1.8.12-r1) (131/165) Purging libxcb (1.17.0-r0) (132/165) Purging libxdmcp (1.1.5-r1) (133/165) Purging libbsd (0.12.2-r0) (134/165) Purging libbz2 (1.0.8-r6) (135/165) Purging libeconf (0.8.0-r0) (136/165) Purging p11-kit (0.25.5-r2) (137/165) Purging libffi (3.5.2-r0) (138/165) Purging libsm (1.2.6-r0) (139/165) Purging libice (1.1.2-r0) (140/165) Purging libintl (0.24.1-r1) (141/165) Purging libjpeg-turbo (3.1.2-r0) (142/165) Purging libmd (1.1.0-r0) (143/165) Purging libpng (1.6.49-r0) (144/165) Purging libwebp (1.6.0-r0) (145/165) Purging libsharpyuv (1.6.0-r0) (146/165) Purging libtasn1 (4.20.0-r0) (147/165) Purging libuuid (2.41.2-r0) (148/165) Purging libxau (1.0.12-r0) (149/165) Purging libxslt-dev (1.1.43-r3) (150/165) Purging libxslt (1.1.43-r3) (151/165) Purging libxml2-dev (2.13.9-r0) (152/165) Purging libxml2-utils (2.13.9-r0) (153/165) Purging libxml2 (2.13.9-r0) (154/165) Purging mujs-libs (1.3.6-r0) (155/165) Purging nettle (3.10.2-r0) (156/165) Purging nss (3.117-r0) (157/165) Purging nspr (4.36-r0) (158/165) Purging openjpeg (2.5.4-r1) (159/165) Purging openssl-dev (3.5.4-r0) (160/165) Purging skalibs-libs (2.14.4.0-r0) (161/165) Purging sqlite-libs (3.51.0-r0) (162/165) Purging xz-dev (5.8.1-r0) (163/165) Purging xz (5.8.1-r0) (164/165) Purging xz-libs (5.8.1-r0) (165/165) Purging zlib-dev (1.3.1-r2) busybox-1.37.0-r25.trigger: Executing script... OK: 426 MiB in 105 packages