From 3c1648a0749c1d66b300d857e6b417c1162890da Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 27 May 2024 00:07:23 +0100 Subject: gentoo auto-resync : 27:05:2024 - 00:07:23 --- dev-python/numpy/Manifest | 7 +- dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch | 23 +++ dev-python/numpy/numpy-1.26.4.ebuild | 10 +- dev-python/numpy/numpy-2.0.0_rc1.ebuild | 167 ------------------- dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild | 124 +++++++++++++++ dev-python/numpy/numpy-2.0.0_rc2.ebuild | 176 --------------------- 6 files changed, 159 insertions(+), 348 deletions(-) create mode 100644 dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch delete mode 100644 dev-python/numpy/numpy-2.0.0_rc1.ebuild create mode 100644 dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild delete mode 100644 dev-python/numpy/numpy-2.0.0_rc2.ebuild (limited to 'dev-python/numpy') diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest index a682fb7b3595..34cc9e479c7f 100644 --- a/dev-python/numpy/Manifest +++ b/dev-python/numpy/Manifest @@ -1,14 +1,13 @@ AUX numpy-1.26.1-more-arches.patch 683 BLAKE2B dcf9cd87747981a010be254a49569108ddca41c9ccfebaa04694e832aced6f717bd5edd7a9e5853d6c89eea02fb46c48a534a13d9021d655fc82cc2bda40e7be SHA512 4ca8fafbe15d8f68090283ca1e60d23ccdc3a4ba6f607d9f83533dff44a229a8c92ef9acf886673a57438c6bb6b0e0e21b86de8ae9eba31be5599a9807ab24be +AUX numpy-2.0.0_rc2-gcc14.patch 892 BLAKE2B 32e2faa0c5979960a7293d9d709ee75d57b7ee182a043ecb942b93b3b0c4e49837b3302ff2dbfafbfa01ac6a1578aa74a0f0d16222218326efc7d8dc96328bd2 SHA512 d2d184e94140652ce42a53d3b1c146dd2ae0844a3f2607238403450690b2023029ff243343b6f5fb2a05e12ed220961002681cedba526be44858285934db328b DIST numpy-1.26.1.tar.gz 15651806 BLAKE2B 2b7fe13675b6f11b8f19c2dc671c84418fa959f403ff32c15ae6da37ae8137d062bb47db0180031c90f54451d69d640ec4ebfad0a4eefb32afc55df45c6824ab SHA512 abe5919029fc66961e8f44fdd503b54c291ce75b0d95e3f8bb61ee39a25d62142fbece5734fd7e9cbf65511f9d746fa61796f0d68e6dc2816c0e7747e286e505 DIST numpy-1.26.2.tar.gz 15664248 BLAKE2B 006e511e27c009f27bf4bf6c8c30c84a4bf0e8b1ff53f4e031089f28c1cfd168ec0d037952fe8f377f9a1d6e1ab642a84c095edeee5696b18053fd5cb7550586 SHA512 9986cd34dda921fbc152c3be0e39f003035787ea1e055452b9259d02c423d413080a0c7e4e19fd38d9e28f66d428719d6ebe784c24ae17249ff56494950daf4b DIST numpy-1.26.3.tar.gz 15679696 BLAKE2B 4c063e1a495b187049b5604686c0411b056fd03a69b5044cff10693694a7f055c87a017334cf8d05aa4a4cb87896fdf9203f51742d3cf83dbaf611b0e6e4091a SHA512 25556b41e2db9cfc52c1dfa61b05e4fc1b7b6df3b169f365375575d1146857fdb5ff91ca1508b968c296b7a06e5c6d95e82c41cdc3561587a46d3aa178f6305d DIST numpy-1.26.4.tar.gz 15786129 BLAKE2B ee759d3a857111bc494d5e989a7b005375d942b2a89cda69be4a3bd7c6cb195003fd2a8a0535f1858d8977ff688b0ec36360dcba9c3160206eedce5e28f191ef SHA512 f7121ab4099fa0686f9c095d456baa4a5869d651d7b7a06385f885f329cf08f11024b5df5e7b4ee705970062a8102ec4f709512eabbfd5c9fccce4ef83b9c208 -DIST numpy-2.0.0rc1.tar.gz 18314779 BLAKE2B 5f304986330356418302d755d2a94edabbb62b7d88f4637b9f3fa633925174a8d5044f686635ff97dc81a5b464f2a66246ef4c3ede12a2c0441778acd2380927 SHA512 1f3bef3fd51f074b137099921ab0bc0f1af46c9e27993f315b8a7af2cab948de9f91af341a6976d54fae099ba1aa9e0e917eecd520c3721c1ba8e17c28d40be8 DIST numpy-2.0.0rc2.tar.gz 18323588 BLAKE2B e2d5d03594d0cba360d4e85207818d15a0761f37cc3fb366f8f9f8bdd97743fe0cf0d09a34319c8b6af29b2bc1fc32a7f5be30a5fa2bdebffe455baff05caf7e SHA512 f86b27264c5274823aa11cbedf17c08f81f9acd05430bf40cccbbe8dcff523410629795ca5927d7f8e6c152272b274d777b64f547d23f50d11ae9fd656fd773d EBUILD numpy-1.26.1.ebuild 4493 BLAKE2B 7f588777822396538c2004ce566575508aa65dae01afde32bfd40ac74955fbba98758d2cdaafbd51070b073bf216a528cc2c930970ed7de018b2def0e2b15722 SHA512 2e55c6c7e80864b031a834cbbe5862f608d9d77ddcfb6f868504951889e639f4d39bc1097c1d5a34a145d44511450de0fe38a3299de69d4f059c65b0456a9720 EBUILD numpy-1.26.2.ebuild 4769 BLAKE2B 0185c924c3348ab96eb83c2ec6d766994c0ea325c5d7287caa5a8e1cc3be6401b35eaf0bc5d6703e74f4ee8a4de6ef4e1514deae3ea904cf9b083aea7ed8da9a SHA512 d18013696e917b2a7841fc2bf6a122cf6ba400f1d109878ada6abee0640fd06fd91ab2480eb6b429e014891fa96cfab3c090964d149a6e3d1dd0859fc36aa041 EBUILD numpy-1.26.3.ebuild 4787 BLAKE2B 22d76498a5fe1340594347ec1780140b8d5e20a33fc74c04defe02365e16d3c82ecc2de8f3a9ed205aee754865ee7109003ad62eebac5d7c99f662729bef2c4f SHA512 829d0fa1472cfc0e509e091c5889d2eb1c0cdb132f329774d088d6ee4cbd4d44b209eb304fbb8e3716a7e284773b52a0247ca0187979fad38b6287d5b4c206f8 -EBUILD numpy-1.26.4.ebuild 4789 BLAKE2B 61b429d317f69ad02e9abb6aa79ea0f5704115fa5d0771ea723f723fff7d0d807c9248ae54864bfbc2efb81ba9b92233e15f903641606d60c1a85f13d619abbf SHA512 19c54b7a33cbb0f7cc97de623424de4ece26b86337a7826fabee84615f9ceb2618b00463f7998c35ada16f9a9fe1e79d5fc61caa4ecd6293085d3a4d62d19697 -EBUILD numpy-2.0.0_rc1.ebuild 4757 BLAKE2B 10d5c245fdb63a95bc076692b3c38f280f45b998257474bf7bfc66cfc485748fe8f1f205da8bd9eb34ece469b13dc42d97805a18331953ac5c9ac4880cd217ed SHA512 5a73ffd2c0e173b512ad9c32a19410d98315ceb3b967c7c4d268c212476e5799824013644d955c4d3b18088ad27dc9453a2c5023591065ce8a287a3560654400 -EBUILD numpy-2.0.0_rc2.ebuild 4937 BLAKE2B 221b3e9338e8a81028c4aae23d6902ddc39f10c1bee3c22a88a8f7f04d6753abc7f6ecb96c9b707ea744291c8cc79ca983a73203d19984b45e26301ed0b8a7f4 SHA512 5741b5dd65137f94dda774755047bbce91b03a4d6dbca77ef5404c701240ad1c5f8663c8558fbb993263d073993de7c000498cb5f31ee6e51e91ace2a6aa6d52 +EBUILD numpy-1.26.4.ebuild 5018 BLAKE2B f1bada06db35ed3df250171892ae378811dc6c52e85c5c5484160c92d5bd222dca93affed01e5b18c0daa105e97a42741b8f512451c0dcbeb3d0780ef08ef19b SHA512 cb1cb571d9bf6dbc9f0fb987ffb10887af79a6e16ff57d2e0b922a48e999f730a4741a09e2e1f99aec57406dbf5912087b5d1876fafe640b15fbed1d659fcb4d +EBUILD numpy-2.0.0_rc2-r1.ebuild 3055 BLAKE2B 6775c0f4269ee6012dd603c1cc1c71951422609a7e99e5cc0ddad41a6832de0cd4000e266b5a9c9bace1a81e54e66fcfb591c94722b38c97f84c1c14796b32de SHA512 9f02c462f8d2878739dbab11e3a1f8d6a7a7b45151a0a9852a35bdcbb7f4ef44513e041c5d9d10f1abecea369fd9dff088e6fe691d4e2ed530cec1d5d6191405 MISC metadata.xml 932 BLAKE2B 7a4af31f613bab05ff542da48bf6ff1484d9df2459f559516e71329451dd739d3df0fead507c8033d94ab9ed516b68efe7f21819a8cd6ca303643d8c8bc34e86 SHA512 32cb8c1ab61521a02cbec38f6ea383f074e50d46aa3462ddcb85710f9d348e8e628cf2a5725e3cd921cc32f02885a1b5f02125639f0ec885384eeeff7f468a06 diff --git a/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch b/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch new file mode 100644 index 000000000000..f3ed3727520d --- /dev/null +++ b/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch @@ -0,0 +1,23 @@ +From f3bc38235bf39a630035920e29f2f883cae5fffe Mon Sep 17 00:00:00 2001 +From: Matti Picus +Date: Sun, 26 May 2024 11:25:43 +0300 +Subject: [PATCH 1/3] BUG: cast missing in PyPy-specific f2py code + +--- + numpy/f2py/cb_rules.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/numpy/f2py/cb_rules.py b/numpy/f2py/cb_rules.py +index 721e075b6c73..faf8dd401301 100644 +--- a/numpy/f2py/cb_rules.py ++++ b/numpy/f2py/cb_rules.py +@@ -122,7 +122,7 @@ + #setdims# + #ifdef PYPY_VERSION + #define CAPI_ARGLIST_SETITEM(idx, value) PyList_SetItem((PyObject *)capi_arglist_list, idx, value) +- capi_arglist_list = PySequence_List(capi_arglist); ++ capi_arglist_list = PySequence_List((PyObject *)capi_arglist); + if (capi_arglist_list == NULL) goto capi_fail; + #else + #define CAPI_ARGLIST_SETITEM(idx, value) PyTuple_SetItem((PyObject *)capi_arglist, idx, value) + diff --git a/dev-python/numpy/numpy-1.26.4.ebuild b/dev-python/numpy/numpy-1.26.4.ebuild index 113fbc6526eb..5d2c12a8438a 100644 --- a/dev-python/numpy/numpy-1.26.4.ebuild +++ b/dev-python/numpy/numpy-1.26.4.ebuild @@ -24,7 +24,7 @@ SLOT="0" # is barely supported anyway, see bug #914358. IUSE="+lapack" if [[ ${PV} != *_[rab]* ]] ; then - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" fi RDEPEND=" @@ -113,6 +113,14 @@ python_test() { random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto # more precision problems core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16 + # https://github.com/numpy/numpy/issues/24548 + f2py/tests/test_kind.py::TestKind::test_int + ) + fi + + if use ppc64 ; then + EPYTEST_DESELECT+=( + core/tests/test_cpu_features.py::TestEnvPrivation::test_impossible_feature_enable ) fi diff --git a/dev-python/numpy/numpy-2.0.0_rc1.ebuild b/dev-python/numpy/numpy-2.0.0_rc1.ebuild deleted file mode 100644 index 9b86ed057d7a..000000000000 --- a/dev-python/numpy/numpy-2.0.0_rc1.ebuild +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=meson-python -PYTHON_COMPAT=( python3_{10..12} pypy3 ) -PYTHON_REQ_USE="threads(+)" -FORTRAN_NEEDED=lapack - -inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs - -DESCRIPTION="Fast array and numerical python library" -HOMEPAGE=" - https://numpy.org/ - https://github.com/numpy/numpy/ - https://pypi.org/project/numpy/ -" - -LICENSE="BSD" -SLOT="0/2" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -# +lapack because the internal fallbacks are pretty slow. Building without blas -# is barely supported anyway, see bug #914358. -IUSE="+lapack" - -RDEPEND=" - lapack? ( - >=virtual/cblas-3.8 - >=virtual/lapack-3.8 - ) -" -BDEPEND=" - ${RDEPEND} - >=dev-build/meson-1.1.0 - >=dev-python/cython-3.0.6[${PYTHON_USEDEP}] - lapack? ( - virtual/pkgconfig - ) - test? ( - $(python_gen_cond_dep ' - >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] - ' 'python*') - dev-python/charset-normalizer[${PYTHON_USEDEP}] - >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] - >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] - ) -" - -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -python_prepare_all() { - append-flags -fno-strict-aliasing - - distutils-r1_python_prepare_all -} - -python_configure_all() { - DISTUTILS_ARGS=( - -Dallow-noblas=$(usex !lapack true false) - -Dblas=$(usev lapack cblas) - -Dlapack=$(usev lapack lapack) - # TODO: cpu-* options - ) -} - -python_test() { - local EPYTEST_DESELECT=( - # Very disk-and-memory-hungry - lib/tests/test_io.py::TestSaveTxt::test_large_zip - lib/tests/test_io.py::TestSavezLoad::test_closing_fid - lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load - - # Precision problems - _core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals - - # Runs the whole test suite recursively, that's just crazy - core/tests/test_mem_policy.py::test_new_policy - - typing/tests/test_typing.py - # Uses huge amount of memory - core/tests/test_mem_overlap.py - 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' - - # TODO: crashes - lib/tests/test_histograms.py::TestHistogram::test_big_arrays - - # likely a test problem - # https://github.com/numpy/numpy/issues/25135 - core/tests/test_cython.py::test_conv_intp - - # flaky - f2py/tests/test_crackfortran.py - f2py/tests/test_data.py::TestData{,F77}::test_crackedlines - ) - - if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then - # Degenerate case of arm32 chroot on arm64, bug #774108 - EPYTEST_DESELECT+=( - core/tests/test_cpu_features.py::Test_ARM_Features::test_features - ) - fi - - if use x86 ; then - EPYTEST_DESELECT+=( - # https://github.com/numpy/numpy/issues/18388 - core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow - # https://github.com/numpy/numpy/issues/18387 - random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto - # more precision problems - core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16 - ) - fi - - if use hppa ; then - EPYTEST_DESELECT+=( - # TODO: Get selectedrealkind updated! - # bug #907228 - # https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029) - # https://github.com/numpy/numpy/pull/21785 - f2py/tests/test_kind.py::TestKind::test_real - f2py/tests/test_kind.py::TestKind::test_quad_precision - ) - fi - - if [[ $(tc-endian) == "big" ]] ; then - # https://github.com/numpy/numpy/issues/11831 and bug #707116 - EPYTEST_DESELECT+=( - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]' - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]' - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]' - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]' - f2py/tests/test_kind.py::TestKind::test_int - ) - fi - - case "${ABI}" in - alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) - EPYTEST_DESELECT+=( - # too large for 32-bit platforms - core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array - 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]' - 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' - ) - ;; - *) - ;; - esac - - if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then - # depends on importing numpy.random from system namespace - EPYTEST_DESELECT+=( - 'random/tests/test_extending.py::test_cython' - ) - fi - - rm -rf numpy || die - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest --pyargs numpy -} - -python_install_all() { - local DOCS=( LICENSE.txt README.md THANKS.txt ) - distutils-r1_python_install_all -} diff --git a/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild b/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild new file mode 100644 index 000000000000..7d3724a3aaa3 --- /dev/null +++ b/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=meson-python +PYTHON_COMPAT=( python3_{10..13} pypy3 ) +PYTHON_REQ_USE="threads(+)" +FORTRAN_NEEDED=lapack + +inherit distutils-r1 flag-o-matic fortran-2 pypi + +DESCRIPTION="Fast array and numerical python library" +HOMEPAGE=" + https://numpy.org/ + https://github.com/numpy/numpy/ + https://pypi.org/project/numpy/ +" + +LICENSE="BSD" +SLOT="0/2" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +# +lapack because the internal fallbacks are pretty slow. Building without blas +# is barely supported anyway, see bug #914358. +IUSE="+lapack" + +RDEPEND=" + lapack? ( + >=virtual/cblas-3.8 + >=virtual/lapack-3.8 + ) +" +BDEPEND=" + ${RDEPEND} + >=dev-build/meson-1.1.0 + >=dev-python/cython-3.0.6[${PYTHON_USEDEP}] + lapack? ( + virtual/pkgconfig + ) + test? ( + $(python_gen_cond_dep ' + >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] + ' 'python*') + dev-python/charset-normalizer[${PYTHON_USEDEP}] + >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] + >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + local PATCHES=( + # https://github.com/numpy/numpy/pull/26534 + "${FILESDIR}/${P}-gcc14.patch" + ) + + append-flags -fno-strict-aliasing + + distutils-r1_python_prepare_all +} + +python_configure_all() { + DISTUTILS_ARGS=( + -Dallow-noblas=$(usex !lapack true false) + -Dblas=$(usev lapack cblas) + -Dlapack=$(usev lapack lapack) + # TODO: cpu-* options + ) +} + +python_test() { + local EPYTEST_DESELECT=( + # Very disk-and-memory-hungry + lib/tests/test_io.py::TestSaveTxt::test_large_zip + lib/tests/test_io.py::TestSavezLoad::test_closing_fid + lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load + + # Precision problems + _core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals + + # Runs the whole test suite recursively, that's just crazy + core/tests/test_mem_policy.py::test_new_policy + + typing/tests/test_typing.py + # Uses huge amount of memory + core/tests/test_mem_overlap.py + 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' + ) + + if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then + # Degenerate case of arm32 chroot on arm64, bug #774108 + EPYTEST_DESELECT+=( + core/tests/test_cpu_features.py::Test_ARM_Features::test_features + ) + fi + + case ${EPYTHON} in + python3.13) + EPYTEST_DESELECT+=( + _core/tests/test_nditer.py::test_iter_refcount + _core/tests/test_limited_api.py::test_limited_api + ) + ;; + esac + + if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then + # depends on importing numpy.random from system namespace + EPYTEST_DESELECT+=( + 'random/tests/test_extending.py::test_cython' + ) + fi + + rm -rf numpy || die + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest --pyargs numpy +} + +python_install_all() { + local DOCS=( LICENSE.txt README.md THANKS.txt ) + distutils-r1_python_install_all +} diff --git a/dev-python/numpy/numpy-2.0.0_rc2.ebuild b/dev-python/numpy/numpy-2.0.0_rc2.ebuild deleted file mode 100644 index 0d97ca09f939..000000000000 --- a/dev-python/numpy/numpy-2.0.0_rc2.ebuild +++ /dev/null @@ -1,176 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=meson-python -PYTHON_COMPAT=( python3_{10..13} pypy3 ) -PYTHON_REQ_USE="threads(+)" -FORTRAN_NEEDED=lapack - -inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs - -DESCRIPTION="Fast array and numerical python library" -HOMEPAGE=" - https://numpy.org/ - https://github.com/numpy/numpy/ - https://pypi.org/project/numpy/ -" - -LICENSE="BSD" -SLOT="0/2" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -# +lapack because the internal fallbacks are pretty slow. Building without blas -# is barely supported anyway, see bug #914358. -IUSE="+lapack" - -RDEPEND=" - lapack? ( - >=virtual/cblas-3.8 - >=virtual/lapack-3.8 - ) -" -BDEPEND=" - ${RDEPEND} - >=dev-build/meson-1.1.0 - >=dev-python/cython-3.0.6[${PYTHON_USEDEP}] - lapack? ( - virtual/pkgconfig - ) - test? ( - $(python_gen_cond_dep ' - >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] - ' 'python*') - dev-python/charset-normalizer[${PYTHON_USEDEP}] - >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] - >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] - ) -" - -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -python_prepare_all() { - append-flags -fno-strict-aliasing - - distutils-r1_python_prepare_all -} - -python_configure_all() { - DISTUTILS_ARGS=( - -Dallow-noblas=$(usex !lapack true false) - -Dblas=$(usev lapack cblas) - -Dlapack=$(usev lapack lapack) - # TODO: cpu-* options - ) -} - -python_test() { - local EPYTEST_DESELECT=( - # Very disk-and-memory-hungry - lib/tests/test_io.py::TestSaveTxt::test_large_zip - lib/tests/test_io.py::TestSavezLoad::test_closing_fid - lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load - - # Precision problems - _core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals - - # Runs the whole test suite recursively, that's just crazy - core/tests/test_mem_policy.py::test_new_policy - - typing/tests/test_typing.py - # Uses huge amount of memory - core/tests/test_mem_overlap.py - 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' - - # TODO: crashes - lib/tests/test_histograms.py::TestHistogram::test_big_arrays - - # likely a test problem - # https://github.com/numpy/numpy/issues/25135 - core/tests/test_cython.py::test_conv_intp - - # flaky - f2py/tests/test_crackfortran.py - f2py/tests/test_data.py::TestData{,F77}::test_crackedlines - ) - - if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then - # Degenerate case of arm32 chroot on arm64, bug #774108 - EPYTEST_DESELECT+=( - core/tests/test_cpu_features.py::Test_ARM_Features::test_features - ) - fi - - if use x86 ; then - EPYTEST_DESELECT+=( - # https://github.com/numpy/numpy/issues/18388 - core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow - # https://github.com/numpy/numpy/issues/18387 - random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto - # more precision problems - core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16 - ) - fi - - if use hppa ; then - EPYTEST_DESELECT+=( - # TODO: Get selectedrealkind updated! - # bug #907228 - # https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029) - # https://github.com/numpy/numpy/pull/21785 - f2py/tests/test_kind.py::TestKind::test_real - f2py/tests/test_kind.py::TestKind::test_quad_precision - ) - fi - - if [[ $(tc-endian) == "big" ]] ; then - # https://github.com/numpy/numpy/issues/11831 and bug #707116 - EPYTEST_DESELECT+=( - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]' - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]' - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]' - 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]' - f2py/tests/test_kind.py::TestKind::test_int - ) - fi - - case "${ABI}" in - alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) - EPYTEST_DESELECT+=( - # too large for 32-bit platforms - core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array - 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]' - 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' - ) - ;; - *) - ;; - esac - - case ${EPYTHON} in - python3.13) - EPYTEST_DESELECT+=( - _core/tests/test_nditer.py::test_iter_refcount - _core/tests/test_limited_api.py::test_limited_api - ) - ;; - esac - - if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then - # depends on importing numpy.random from system namespace - EPYTEST_DESELECT+=( - 'random/tests/test_extending.py::test_cython' - ) - fi - - rm -rf numpy || die - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest --pyargs numpy -} - -python_install_all() { - local DOCS=( LICENSE.txt README.md THANKS.txt ) - distutils-r1_python_install_all -} -- cgit v1.2.3