summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-08-01 06:46:41 +0100
committerSam James <sam@gentoo.org>2023-08-01 06:46:41 +0100
commit5268356d552ed97c16db1e4e7d584ae812db8925 (patch)
tree92a1fd41c1891bbc81c1b2ce1e24e31631121c5b /dev-python
parentnet-nds/openldap: add 2.6.6 (diff)
downloadgentoo-5268356d552ed97c16db1e4e7d584ae812db8925.tar.gz
gentoo-5268356d552ed97c16db1e4e7d584ae812db8925.tar.bz2
gentoo-5268356d552ed97c16db1e4e7d584ae812db8925.zip
dev-python/numpy: add 1.25.2
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/numpy/Manifest2
-rw-r--r--dev-python/numpy/numpy-1.25.2.ebuild178
2 files changed, 180 insertions, 0 deletions
diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index e13da7f134ae..6166c42d838a 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -4,3 +4,5 @@ DIST numpy-1.24.3.tar.gz 10909904 BLAKE2B 3b14f8b6a7bd484de43c3b0e57f161388d6226
DIST numpy-1.24.4.tar.gz 10911229 BLAKE2B 2f054b4ede249653707c3df8ccf6df31b747c0625891ae6e01134f84b02d1300e1d7a88b5741e0e0f05218673d95374f263e5bfddbf17c9510aa93bac002eafc SHA512 89eb90548ad4f38cfe0a5077eef426058eed08ca17633024887e4d0ff5bdfe98736b1ad6850fe643bc0035d55ac4cd39b5971895eea9dcf247b5ff186654ed68
DIST numpy-1.25.0.tar.gz 10426700 BLAKE2B 9a6c9b7e1172a21ec7cc3b2a0b292308ed7a859072ba73cac3c472cd60f45acd66032f24df19bddef8aa0aee7a243e21d3fa04b68f1383efc6af834cdc04b589 SHA512 e464d82bba0487f520ec7a820492343af5172e807e0f746688bbaff636a31947da62704ef0f35c74a46fb42332f4644f3c497d544789d22e5c01ca0823f82909
DIST numpy-1.25.1.tar.gz 10428993 BLAKE2B ee3edaf5416ac858b995f0cb8df75962af01619969a2c70fa10b4e0d0a1c96a3b441ee470a463cdb7c60910d8823af1c41d37933f87bcaa0a724655d052ed20a SHA512 69cc5426f657a21a6a1fb3bb043b8acec90b87969f90177abb6d7294ca96d04f723ddf90fa40822704b16147a390abafbcda9702e40405ea6b6e22377aade71d
+DIST numpy-1.25.2-patches.tar.xz 7212 BLAKE2B 718331b2d9f8380df239bf2ad9c24d79924e08797825d7c8655124a55e059790f96641633cdb42c597646764ca9efcaf277d5f5b75f042f533c28f2a81d5a5a8 SHA512 bcc0c55710b8d874e1dd9a57fad5698e09e3c96254922db32a8beeae9a5a54532cb0660d3ce43ca68e70fa7227bca9e0d12a0298aa6972ad2cbcecfe4aee3e85
+DIST numpy-1.25.2.tar.gz 10805282 BLAKE2B f138eaf237f3e8052cafbe9fc98b4b62fb0748079df8599fc0950624c856294157410a2ec6fe381eaa8386b1530a39f7037ae1887c9fcfe2e77a3d7ad1ca0171 SHA512 6846d558c227329b6e700965ffa4c7886a7ca5f35234a56d734bc8201d19f7ac87d8ea081094bca13685130dce7bfb98ee4aa3a9dbd538288f10f1d9d82fb699
diff --git a/dev-python/numpy/numpy-1.25.2.ebuild b/dev-python/numpy/numpy-1.25.2.ebuild
new file mode 100644
index 000000000000..423366aad0e7
--- /dev/null
+++ b/dev-python/numpy/numpy-1.25.2.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2023 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 multiprocessing pypi toolchain-funcs
+
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="
+ https://numpy.org/
+ https://github.com/numpy/numpy/
+ https://pypi.org/project/numpy/
+"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-1.25.2-patches.tar.xz"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="lapack"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+RDEPEND="
+ lapack? (
+ >=virtual/cblas-3.8
+ >=virtual/lapack-3.8
+ )
+"
+BDEPEND="
+ ${RDEPEND}
+ >=dev-util/meson-1.1.0
+ >=dev-python/cython-0.29.30[${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/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${WORKDIR}"/${PN}-1.25.2-patches
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ append-flags -fno-strict-aliasing
+
+ distutils-r1_python_prepare_all
+
+ # TODO: Please drop once 1.25.0_rc1-meson-pyproject.toml.patch is gone
+ sed -i -e "s:version = \"2.0.0.dev0\":version = \"${PV}\":" pyproject.toml || die
+}
+
+python_configure_all() {
+ DISTUTILS_ARGS=(
+ -Dblas=$(usev lapack cblas)
+ -Dlapack=$(usev lapack lapack)
+ )
+}
+
+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
+
+ # XXX: I've no idea why this ends up being needed in deselect and not ignore
+ typing/tests/test_typing.py
+ # Uses huge amount of memory
+ core/tests/test_mem_overlap.py
+ )
+
+ if [[ ${EPYTHON} == python3.12 ]]; then
+ EPYTEST_DESELECT+=(
+ typing/tests/test_isfile.py::TestIsFile::test_isfile
+ tests/test_public_api.py::test_all_modules_are_expected_2
+ tests/test_public_api.py::test_api_importable
+
+ random/tests/test_extending.py
+ tests/test_ctypeslib.py
+ )
+
+ EPYTEST_IGNORE+=(
+ random/tests/test_extending.py
+ tests/test_ctypeslib.py
+ )
+ fi
+
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ EPYTEST_DESELECT+=(
+ # TODO: crashed
+ lib/tests/test_histograms.py::TestHistogram::test_big_arrays
+ )
+ fi
+
+ 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]'
+ lib/tests/test_histograms.py::TestHistogram::test_big_arrays
+ )
+ ;;
+ *)
+ ;;
+ esac
+
+ rm -rf numpy || die
+ epytest -n "$(makeopts_jobs)" --pyargs numpy
+}
+
+python_install_all() {
+ local DOCS=( LICENSE.txt README.md THANKS.txt )
+ distutils-r1_python_install_all
+}