From 9467a549ade8544ccdf2d1e88eecee9a5ae7cffd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Fri, 29 Nov 2024 04:37:34 +0100 Subject: [PATCH] dev-python/imageio: Bump to 2.36.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- dev-python/imageio/Manifest | 1 + dev-python/imageio/imageio-2.36.1.ebuild | 104 +++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 dev-python/imageio/imageio-2.36.1.ebuild diff --git a/dev-python/imageio/Manifest b/dev-python/imageio/Manifest index 32063c0ec732e..e43d48c4965c3 100644 --- a/dev-python/imageio/Manifest +++ b/dev-python/imageio/Manifest @@ -1,2 +1,3 @@ DIST imageio-2.36.0.gh.tar.gz 415793 BLAKE2B 2b382290ab41a8b265629695c484eac887f33900d2b1a2a1e35f5db9ebc776242f7325e4c50055ab500f98067f1a27d083cd6aee9c0cf65dfe3e18c1d62336c2 SHA512 8d59633d31211e0510e8790e0d052b0c0d8912cc49a187c7d846ab62c2210b8f1851b63c83a0daf6123fc905b351ea0b51883746f6dcb83939975f51b913f63c +DIST imageio-2.36.1.gh.tar.gz 415873 BLAKE2B d60fda8a0cdf6f677c9395ccd2abfa9a08cca73cedfc376335f12deee7206694d905079307546f716007d138f3b7da1e390b50715aede83e1ac94b300e80a439 SHA512 05695cb1530612ecbc002de3560fe6bafd11c6ad3fcff570b0309a4a9793820109163819fce4763052b8e442daec13ae09e0e2666b2deaea6c52ca76a9ae5386 DIST imageio-test_images-1121036015c70cdbb3015e5c5ba0aaaf7d3d6021.gh.tar.gz 195497374 BLAKE2B 0083212fd63c196dc2e721bff8f89c177b6741317b6b1c6ae9d00a8dd5fb6366efa3f01b9bffafafac7177cfdaa4d700077a2bad42ada735f5553e97f651c4ad SHA512 1bb1f36a069bfaa0d0ffe5258534e02e49237fc6ce85fe3d3648650130165abc9b3d5ff0e7e5861ee1d94add00d4258575f9c2f8556debecf597bdaa5499efe0 diff --git a/dev-python/imageio/imageio-2.36.1.ebuild b/dev-python/imageio/imageio-2.36.1.ebuild new file mode 100644 index 0000000000000..b87adefff3481 --- /dev/null +++ b/dev-python/imageio/imageio-2.36.1.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 + +# teh test suite always clones the newest version +TEST_IMAGES_COMMIT=1121036015c70cdbb3015e5c5ba0aaaf7d3d6021 +DESCRIPTION="Python library for reading and writing image data" +HOMEPAGE=" + https://imageio.readthedocs.io/en/stable/ + https://github.com/imageio/imageio/ + https://pypi.org/project/imageio/ +" +SRC_URI=" + https://github.com/imageio/imageio/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + test? ( + https://github.com/imageio/test_images/archive/${TEST_IMAGES_COMMIT}.tar.gz + -> imageio-test_images-${TEST_IMAGES_COMMIT}.gh.tar.gz + ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/numpy-1.20.0[${PYTHON_USEDEP}] + >=dev-python/pillow-8.3.2[${PYTHON_USEDEP}] + media-libs/freeimage +" +BDEPEND=" + test? ( + >=dev-python/imageio-ffmpeg-0.4.9-r1[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/tifffile[${PYTHON_USEDEP}] + || ( + media-video/ffmpeg[openh264] + media-video/ffmpeg[x264] + ) + ) +" + +distutils_enable_tests pytest + +src_prepare() { + local PATCHES=( + # block silently downloading vulnerable libraries from the Internet + "${FILESDIR}/imageio-2.22.0-block-download.patch" + ) + + if use test; then + mv "${WORKDIR}/test_images-${TEST_IMAGES_COMMIT}" .test_images || die + # upstream tries to update the image cache, and invalidates it + # if "git pull" fails + sed -i -e 's:git pull:true:' tests/conftest.py || die + # ffmpeg tests expect it there + mkdir -p "${HOME}/.imageio/images" || die + cp .test_images/cockatoo.mp4 "${HOME}/.imageio/images" || die + fi + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_IGNORE=( + # uses fsspec to grab prebuilt .so from GitHub, sigh + tests/test_freeimage.py + ) + + local EPYTEST_DESELECT=( + # Note: upstream has a needs_internet marker but it is also + # used to mark tests that require test_images checkout that we + # supply + + # Tries to download ffmpeg binary ?! + tests/test_ffmpeg.py::test_get_exe_installed + # blocked by our patch + tests/test_core.py::test_fetching + tests/test_core.py::test_request + # Internet + tests/test_bsdf.py::test_from_url + tests/test_core.py::test_mvolread_out_of_bytes + tests/test_core.py::test_request_read_sources + tests/test_pillow.py::test_gif_first_p_frame + tests/test_pillow.py::test_png_remote + tests/test_pillow.py::test_webp_remote + tests/test_pillow_legacy.py::test_png_remote + tests/test_swf.py::test_read_from_url + # requires pillow-heif, also possibly Internet + tests/test_pillow.py::test_avif_remote + tests/test_pillow.py::test_heif_remote + # not important, requires random system libs + tests/test_core.py::test_findlib2 + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +}