commit: a0809fc6c528672ee4eb88221bdf38d5cc3def16 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Wed Sep 8 05:58:23 2021 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Wed Sep 8 05:58:23 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0809fc6
dev-python/numpy: Remove old Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> dev-python/numpy/Manifest | 12 -- .../files/numpy-1.20.1-no-hardcode-blasv2.patch | 50 ------- .../files/numpy-1.20.2-fix-ccompiler-tests.patch | 36 ------ .../files/numpy-1.20.2-fix-popcnt-detection.patch | 103 --------------- .../files/numpy-1.20.3-float-hashing-py310.patch | 129 ------------------ dev-python/numpy/numpy-1.20.2-r1.ebuild | 144 --------------------- dev-python/numpy/numpy-1.20.3-r1.ebuild | 142 -------------------- dev-python/numpy/numpy-1.21.0.ebuild | 139 -------------------- 8 files changed, 755 deletions(-) diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest index 0c0ed744521..fbe95681182 100644 --- a/dev-python/numpy/Manifest +++ b/dev-python/numpy/Manifest @@ -1,20 +1,8 @@ -DIST numpy-1.20.2.zip 7756879 BLAKE2B 8b76942e04701e164029b145fed1747de72142ea4f5a8aa7472a01caeeed5e0b5b6d9e543106f9786e231df5a8afe3b7ad9256e69873e4f8876c659114bc494e SHA512 337a66d68c965da06f757a89b58d30b83ec0b2f3c7a3bb39496e5031e50fee6c4f2ec090202c3da9a20613864ea46d032ae75af1de5c33eebe515133ef37d40c -DIST numpy-1.20.3.zip 7761912 BLAKE2B a4da49f7c1aadca299acb1b6d92deb4f50b1881c4b131cd389524a88ffc70179b2acdc88235dccd1ffd09879893db45b16bf2f54ced9b9639b806e85f7346285 SHA512 897be1cd6f3880711149dcedd838357e2d937a3c5f36b2a0db6ceed341654acf96b8b775610e1b43bdb6eacb987bbc51aaa8906244ca02cc8c2eae359ccef405 -DIST numpy-1.21.0.zip 10252686 BLAKE2B 98f69855fae35f53a3bd467ca9bc0c06438519e6dc84808de829a4b1e41402b764c35ac4f94edba72496693241f85f488d6f91c81e7e5c3e33fdac264ce9ba56 SHA512 b4653ed78030d3c411fcafc08c6656072480704379810b7e3a4d907b55c255c27dcef6d519cdc0bb2dc79324c475baf0263248fb456be18a9ce80e3a2c5c7120 DIST numpy-1.21.1.zip 10259878 BLAKE2B ba5d8eb2d294e199c86d8e96026d148098f5716398e730e0fdfee3b710fd01cb6e877973471d7751a2e558c2eaeb626fe9ce5ea4b03a7e4f8e5dc42b852d5b7c SHA512 694100915f4e2917d70a83e7fcdad30c85ffad8f5ad8d164c89287846c1b746c2b577233bacf53e8d8ca5147391f46065a2cabf100957bb8841dee4a042bc1f5 DIST numpy-1.21.2.zip 10264801 BLAKE2B 2d88506faa5bc767a16c000f201559917d800fd205c75f30c1e61d4b34e214b376da9876e96186914f9fe23bf033a305bf9212f593841407e3bf4e516b5982a6 SHA512 ad08110d9a73a73ef1a546de5fcd6dfe600c17b396f629c3a19ade7b3f226688cf7524fed78c035fd4ddda135e2bcf9facb5e061fb59640b424da2ed070c4184 -DIST numpy-html-1.16.4.zip 12097069 BLAKE2B db1f897342fbc80a761fbaee7b0eee3761dbfa04ef6c46a137bb2392caaec8256580467ce06498cceeada2639151a1ec75dafab484d64cb897c008727d6d32a5 SHA512 c44c5e1e0cb22f9dd46fe9e302030292d85e567456178fee296746a414271634e906509fb6665ac63fbfebdd13c5383574f0aa47b4fbc639063da31addc3316a -DIST numpy-html-1.20.3.zip 22936526 BLAKE2B 9c0bf4edea0c34640a2f2d84f117aa383f8690f5c99eb9c504aa27c07195c1e5a4219efc798398d8de709803b67d4a41a2739b1319b6dd7aeba3e70e817c2488 SHA512 181ff49fcde40f2d260e480d4a90bd8b439aecafef4ea581749b5a432c7e8c163b1714a97fd447c512b550d5bf3d9b104c575b4939eb5c8b7b70bbce1153982a -DIST numpy-html-1.21.0.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc DIST numpy-html-1.21.1.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc DIST numpy-html-1.21.2.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc -DIST numpy-ref-1.16.4.pdf 5176571 BLAKE2B 9a875ebd1473b241d463d810a6d191581aef961158f2f82959671b554ace3ad482795e4f3e1cb7dd4632cff926c1e864c675a7624fb0f4e4f297948bf50f0564 SHA512 983ba0f34a70c011886bdbc9fd8f3f75a3a967ca29217acc76fa46e7da391296a5628c9a557ac76efb393271abfb8ee4f376d401c1cc1e5c30622e54b9325d09 -DIST numpy-ref-1.20.3.pdf 7362241 BLAKE2B bf17564d7aea0db25ca9ef6b24dbbd25093c09e2a93bb60b69220d4e666024c50f3373fdb65aac510c06420dc415102d552fb0435e1986330ffdc41e9e356098 SHA512 316e645402125ca41d1e8b4da33374703f4379c31cf572c8ad429e0e89b6968776f480f9159bce53b9fdec918f03b82e5bb6446f127f43f138d6c0990191af5a -DIST numpy-ref-1.21.0.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f DIST numpy-ref-1.21.1.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f DIST numpy-ref-1.21.2.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f -DIST numpy-user-1.16.4.pdf 596203 BLAKE2B da3ad1f0ec1c965d20656f73a970911cbb58efa73a5df89e2e6485e0dd763f483e35eea1395ac919bf35d496fb216cee954fc5d31edebc1796a24a2a7a2d12b9 SHA512 3083008547213bfa98ffa5cd8e2cea13f6947f42d83aef61502a2a852b0d5f27d727c76b42d281d7a2f4f76c78e88b12ee3d9b164b39fe1f0213ace7097357d6 -DIST numpy-user-1.20.3.pdf 4977046 BLAKE2B 3548463cc878645bb169255d3332681685d0f05e02abf4cfcdd03773826d34f5a25c020240652839867a76258b25ca601ed292462f80bdf18b92ecfb46710487 SHA512 f6c37152228eac1fb69ddfc3a37454066ed678d57f12a587e0edcfe0adb390cc0b470384c2751033f7407bac44df9f69b0da4f3da1c300e6fc02231035ff634c -DIST numpy-user-1.21.0.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace DIST numpy-user-1.21.1.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace DIST numpy-user-1.21.2.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace diff --git a/dev-python/numpy/files/numpy-1.20.1-no-hardcode-blasv2.patch b/dev-python/numpy/files/numpy-1.20.1-no-hardcode-blasv2.patch deleted file mode 100644 index e24e0edb926..00000000000 --- a/dev-python/numpy/files/numpy-1.20.1-no-hardcode-blasv2.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py -index 13f9da0..b696ef5 100644 ---- a/numpy/distutils/system_info.py -+++ b/numpy/distutils/system_info.py -@@ -505,32 +505,7 @@ def get_info(name, notfound_action=0): - 1 - display warning message - 2 - raise error - """ -- cl = {'atlas': atlas_info, # use lapack_opt or blas_opt instead -- 'atlas_threads': atlas_threads_info, # ditto -- 'atlas_blas': atlas_blas_info, -- 'atlas_blas_threads': atlas_blas_threads_info, -- 'lapack_atlas': lapack_atlas_info, # use lapack_opt instead -- 'lapack_atlas_threads': lapack_atlas_threads_info, # ditto -- 'atlas_3_10': atlas_3_10_info, # use lapack_opt or blas_opt instead -- 'atlas_3_10_threads': atlas_3_10_threads_info, # ditto -- 'atlas_3_10_blas': atlas_3_10_blas_info, -- 'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info, -- 'lapack_atlas_3_10': lapack_atlas_3_10_info, # use lapack_opt instead -- 'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info, # ditto -- 'flame': flame_info, # use lapack_opt instead -- 'mkl': mkl_info, -- # openblas which may or may not have embedded lapack -- 'openblas': openblas_info, # use blas_opt instead -- # openblas with embedded lapack -- 'openblas_lapack': openblas_lapack_info, # use blas_opt instead -- 'openblas_clapack': openblas_clapack_info, # use blas_opt instead -- 'blis': blis_info, # use blas_opt instead -- 'lapack_mkl': lapack_mkl_info, # use lapack_opt instead -- 'blas_mkl': blas_mkl_info, # use blas_opt instead -- 'openblas64_': openblas64__info, -- 'openblas64__lapack': openblas64__lapack_info, -- 'openblas_ilp64': openblas_ilp64_info, -- 'openblas_ilp64_lapack': openblas_ilp64_lapack_info, -+ cl = {'flame': flame_info, # use lapack_opt instead - 'x11': x11_info, - 'fft_opt': fft_opt_info, - 'fftw': fftw_info, -@@ -950,10 +925,7 @@ class system_info: - return [b for b in [a.strip() for a in libs.split(',')] if b] - - def get_libraries(self, key='libraries'): -- if hasattr(self, '_lib_names'): -- return self.get_libs(key, default=self._lib_names) -- else: -- return self.get_libs(key, '') -+ return self.get_libs(key, '') - - def library_extensions(self): - c = customized_ccompiler() diff --git a/dev-python/numpy/files/numpy-1.20.2-fix-ccompiler-tests.patch b/dev-python/numpy/files/numpy-1.20.2-fix-ccompiler-tests.patch deleted file mode 100644 index 2312dd89a9b..00000000000 --- a/dev-python/numpy/files/numpy-1.20.2-fix-ccompiler-tests.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 6f2f26e08c6e0d476593c82ad31d13847f30cbf4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgo...@gentoo.org> -Date: Sun, 28 Mar 2021 10:00:14 +0200 -Subject: [PATCH] BUG: Fix test_ccompiler_opt when path contains dots - -Fix test_ccompiler_opt not to be confused by dots occurring on the path -to the temporary directory, by using only the source file's basename -when grabbing options. Otherwise, the test can fail with mismatches -such as: - - E AssertionError: 'sources_status' returns different targets than the compiled targets - E ['AVX512F', 'AVX2'] != ['(20 2/TEMP/TMPB0YHSCAI/TEST_TARGETS AVX512F)', '(20 2/TEMP/TMPB0YHSCAI/TEST_TARGETS AVX2)'] - -This is because our TMPDIR value includes numpy version, i.e. 1.20.2. -The splitting happens on the first dot that is part of the directory -path rather than test filename. ---- - numpy/distutils/tests/test_ccompiler_opt.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/numpy/distutils/tests/test_ccompiler_opt.py b/numpy/distutils/tests/test_ccompiler_opt.py -index 287a683c8..d2b0a4c58 100644 ---- a/numpy/distutils/tests/test_ccompiler_opt.py -+++ b/numpy/distutils/tests/test_ccompiler_opt.py -@@ -112,7 +112,7 @@ class _Test_CCompilerOpt(object): - gflags = {} - fake_objects = opt.try_dispatch([file]) - for source, flags in fake_objects: -- gtar = source.split('.')[1:-1] -+ gtar = path.basename(source).split('.')[1:-1] - glen = len(gtar) - if glen == 0: - gtar = "baseline" --- -2.31.1 - diff --git a/dev-python/numpy/files/numpy-1.20.2-fix-popcnt-detection.patch b/dev-python/numpy/files/numpy-1.20.2-fix-popcnt-detection.patch deleted file mode 100644 index 85f4bb11b76..00000000000 --- a/dev-python/numpy/files/numpy-1.20.2-fix-popcnt-detection.patch +++ /dev/null @@ -1,103 +0,0 @@ -https://github.com/numpy/numpy/pull/19074 -https://bugs.gentoo.org/788184 - -From 8dc768964b5578a8aa9db1ef2c55134a00731e10 Mon Sep 17 00:00:00 2001 -From: Carl Michal <mic...@physics.ubc.ca> -Date: Sat, 22 May 2021 20:43:10 -0700 -Subject: [PATCH 1/2] Fix compile-time test of POPCNT - -The compile-time test of POPCNT, cpu_popcnt.c produced code that would -execute without error even if the machine didn't support the popcnt -instruction. This patch attempts to use popcnt on random numbers so the -compiler can't substitute the answer at compile time. ---- - numpy/distutils/checks/cpu_popcnt.c | 14 ++++++++++---- - 1 file changed, 10 insertions(+), 4 deletions(-) - -diff --git a/numpy/distutils/checks/cpu_popcnt.c b/numpy/distutils/checks/cpu_popcnt.c -index e6a80fb40be4..f6c785dd2a97 100644 ---- a/numpy/distutils/checks/cpu_popcnt.c -+++ b/numpy/distutils/checks/cpu_popcnt.c -@@ -4,20 +4,26 @@ - #include <popcntintrin.h> - #endif - -+#include <stdlib.h> -+ - int main(void) - { - long long a = 0; - int b; -+ -+ a = random(); -+ b = random(); -+ - #ifdef _MSC_VER - #ifdef _M_X64 -- a = _mm_popcnt_u64(1); -+ a = _mm_popcnt_u64(a); - #endif -- b = _mm_popcnt_u32(1); -+ b = _mm_popcnt_u32(b); - #else - #ifdef __x86_64__ -- a = __builtin_popcountll(1); -+ a = __builtin_popcountll(a); - #endif -- b = __builtin_popcount(1); -+ b = __builtin_popcount(b); - #endif - return (int)a + b; - } - -From 52d5fe1ede45083d0783c3e2bbaee5c44df9d553 Mon Sep 17 00:00:00 2001 -From: Carl Michal <mic...@physics.ubc.ca> -Date: Sun, 23 May 2021 08:24:52 -0700 -Subject: [PATCH 2/2] Change fix of cpu_popcnt.c to use - _mm_popcnt_u64/_mm_popcnt_u32 on GCC - -_builtin_popcount is always available, so the compile-time check always -succeeds. ---- - numpy/distutils/checks/cpu_popcnt.c | 26 ++++++++------------------ - 1 file changed, 8 insertions(+), 18 deletions(-) - -diff --git a/numpy/distutils/checks/cpu_popcnt.c b/numpy/distutils/checks/cpu_popcnt.c -index f6c785dd2a97..540c98dab05d 100644 ---- a/numpy/distutils/checks/cpu_popcnt.c -+++ b/numpy/distutils/checks/cpu_popcnt.c -@@ -4,26 +4,16 @@ - #include <popcntintrin.h> - #endif - --#include <stdlib.h> -- --int main(void) -+int main(int argc, char **argv) - { -- long long a = 0; -- int b; -- -- a = random(); -- b = random(); -- --#ifdef _MSC_VER -- #ifdef _M_X64 -+ // To make sure popcnt instructions are generated -+ // and been tested against the assembler -+ unsigned long long a = *((unsigned long long*)argv[argc-1]); -+ unsigned int b = *((unsigned int*)argv[argc-2]); -+ -+#if defined(_M_X64) || defined(__x86_64__) - a = _mm_popcnt_u64(a); -- #endif -- b = _mm_popcnt_u32(b); --#else -- #ifdef __x86_64__ -- a = __builtin_popcountll(a); -- #endif -- b = __builtin_popcount(b); - #endif -+ b = _mm_popcnt_u32(b); - return (int)a + b; - } diff --git a/dev-python/numpy/files/numpy-1.20.3-float-hashing-py310.patch b/dev-python/numpy/files/numpy-1.20.3-float-hashing-py310.patch deleted file mode 100644 index f3b2ea3ef0c..00000000000 --- a/dev-python/numpy/files/numpy-1.20.3-float-hashing-py310.patch +++ /dev/null @@ -1,129 +0,0 @@ -From ad2a73c18dcff95d844c382c94ab7f73b5571cf3 Mon Sep 17 00:00:00 2001 -From: Sebastian Berg <sebast...@sipsolutions.net> -Date: Tue, 4 May 2021 17:43:26 -0500 -Subject: [PATCH] MAINT: Adjust NumPy float hashing to Python's slightly - changed hash - -This is necessary, since we use the Python double hash and the -semi-private function to calculate it in Python has a new signature -to return the identity-hash when the value is NaN. - -closes gh-18833, gh-18907 ---- - numpy/core/src/common/npy_pycompat.h | 16 ++++++++++ - numpy/core/src/multiarray/scalartypes.c.src | 13 ++++---- - numpy/core/tests/test_scalarmath.py | 34 +++++++++++++++++++++ - 3 files changed, 57 insertions(+), 6 deletions(-) - -diff --git a/numpy/core/src/common/npy_pycompat.h b/numpy/core/src/common/npy_pycompat.h -index aa0b5c1224d..9e94a971090 100644 ---- a/numpy/core/src/common/npy_pycompat.h -+++ b/numpy/core/src/common/npy_pycompat.h -@@ -3,4 +3,20 @@ - - #include "numpy/npy_3kcompat.h" - -+ -+/* -+ * In Python 3.10a7 (or b1), python started using the identity for the hash -+ * when a value is NaN. See https://bugs.python.org/issue43475 -+ */ -+#if PY_VERSION_HEX > 0x030a00a6 -+#define Npy_HashDouble _Py_HashDouble -+#else -+static NPY_INLINE Py_hash_t -+Npy_HashDouble(PyObject *NPY_UNUSED(identity), double val) -+{ -+ return _Py_HashDouble(val); -+} -+#endif -+ -+ - #endif /* _NPY_COMPAT_H_ */ -diff --git a/numpy/core/src/multiarray/scalartypes.c.src b/numpy/core/src/multiarray/scalartypes.c.src -index a001500b0a9..9930f7791d6 100644 ---- a/numpy/core/src/multiarray/scalartypes.c.src -+++ b/numpy/core/src/multiarray/scalartypes.c.src -@@ -3172,7 +3172,7 @@ static npy_hash_t - static npy_hash_t - @lname@_arrtype_hash(PyObject *obj) - { -- return _Py_HashDouble((double) PyArrayScalar_VAL(obj, @name@)); -+ return Npy_HashDouble(obj, (double)PyArrayScalar_VAL(obj, @name@)); - } - - /* borrowed from complex_hash */ -@@ -3180,14 +3180,14 @@ static npy_hash_t - c@lname@_arrtype_hash(PyObject *obj) - { - npy_hash_t hashreal, hashimag, combined; -- hashreal = _Py_HashDouble((double) -- PyArrayScalar_VAL(obj, C@name@).real); -+ hashreal = Npy_HashDouble( -+ obj, (double)PyArrayScalar_VAL(obj, C@name@).real); - - if (hashreal == -1) { - return -1; - } -- hashimag = _Py_HashDouble((double) -- PyArrayScalar_VAL(obj, C@name@).imag); -+ hashimag = Npy_HashDouble( -+ obj, (double)PyArrayScalar_VAL(obj, C@name@).imag); - if (hashimag == -1) { - return -1; - } -@@ -3202,7 +3202,8 @@ c@lname@_arrtype_hash(PyObject *obj) - static npy_hash_t - half_arrtype_hash(PyObject *obj) - { -- return _Py_HashDouble(npy_half_to_double(PyArrayScalar_VAL(obj, Half))); -+ return Npy_HashDouble( -+ obj, npy_half_to_double(PyArrayScalar_VAL(obj, Half))); - } - - static npy_hash_t -diff --git a/numpy/core/tests/test_scalarmath.py b/numpy/core/tests/test_scalarmath.py -index d91b4a39146..09a734284a7 100644 ---- a/numpy/core/tests/test_scalarmath.py -+++ b/numpy/core/tests/test_scalarmath.py -@@ -712,6 +712,40 @@ def test_shift_all_bits(self, type_code, op): - assert_equal(res_arr, res_scl) - - -+class TestHash: -+ @pytest.mark.parametrize("type_code", np.typecodes['AllInteger']) -+ def test_integer_hashes(self, type_code): -+ scalar = np.dtype(type_code).type -+ for i in range(128): -+ assert hash(i) == hash(scalar(i)) -+ -+ @pytest.mark.parametrize("type_code", np.typecodes['AllFloat']) -+ def test_float_and_complex_hashes(self, type_code): -+ scalar = np.dtype(type_code).type -+ for val in [np.pi, np.inf, 3, 6.]: -+ numpy_val = scalar(val) -+ # Cast back to Python, in case the NumPy scalar has less precision -+ if numpy_val.dtype.kind == 'c': -+ val = complex(numpy_val) -+ else: -+ val = float(numpy_val) -+ assert val == numpy_val -+ print(repr(numpy_val), repr(val)) -+ assert hash(val) == hash(numpy_val) -+ -+ if hash(float(np.nan)) != hash(float(np.nan)): -+ # If Python distinguises different NaNs we do so too (gh-18833) -+ assert hash(scalar(np.nan)) != hash(scalar(np.nan)) -+ -+ @pytest.mark.parametrize("type_code", np.typecodes['Complex']) -+ def test_complex_hashes(self, type_code): -+ # Test some complex valued hashes specifically: -+ scalar = np.dtype(type_code).type -+ for val in [np.pi+1j, np.inf-3j, 3j, 6.+1j]: -+ numpy_val = scalar(val) -+ assert hash(complex(numpy_val)) == hash(numpy_val) -+ -+ - @contextlib.contextmanager - def recursionlimit(n): - o = sys.getrecursionlimit() diff --git a/dev-python/numpy/numpy-1.20.2-r1.ebuild b/dev-python/numpy/numpy-1.20.2-r1.ebuild deleted file mode 100644 index 2e16936ea19..00000000000 --- a/dev-python/numpy/numpy-1.20.2-r1.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="threads(+)" - -FORTRAN_NEEDED=lapack - -DISTUTILS_USE_SETUPTOOLS=rdepend - -inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs - -DOC_PV="1.16.4" -DESCRIPTION="Fast array and numerical python library" -HOMEPAGE="https://numpy.org/" -SRC_URI=" - mirror://pypi/${PN:0:1}/${PN}/${P}.zip - doc? ( - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf - )" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" -IUSE="doc lapack" - -RDEPEND=" - lapack? ( - >=virtual/cblas-3.8 - >=virtual/lapack-3.8 - ) -" -BDEPEND=" - ${RDEPEND} - app-arch/unzip - >=dev-python/cython-0.29.21[${PYTHON_USEDEP}] - lapack? ( virtual/pkgconfig ) - test? ( - >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] - >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] - >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] - ) -" - -PATCHES=( - "${FILESDIR}"/numpy-1.20.1-no-hardcode-blasv2.patch - "${FILESDIR}"/numpy-1.20.2-fix-ccompiler-tests.patch - "${FILESDIR}"/numpy-1.20.2-fix-popcnt-detection.patch -) - -distutils_enable_tests pytest - -src_unpack() { - default - if use doc; then - unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die - fi -} - -python_prepare_all() { - if use lapack; then - local incdir="${EPREFIX}"/usr/include - local libdir="${EPREFIX}"/usr/$(get_libdir) - cat >> site.cfg <<-EOF || die - [blas] - include_dirs = ${incdir} - library_dirs = ${libdir} - blas_libs = cblas,blas - [lapack] - library_dirs = ${libdir} - lapack_libs = lapack - EOF - else - export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None - fi - - export CC="$(tc-getCC) ${CFLAGS}" - - append-flags -fno-strict-aliasing - - # See progress in http://projects.scipy.org/scipy/numpy/ticket/573 - # with the subtle difference that we don't want to break Darwin where - # -shared is not a valid linker argument - if [[ ${CHOST} != *-darwin* ]]; then - append-ldflags -shared - fi - - # only one fortran to link with: - # linking with cblas and lapack library will force - # autodetecting and linking to all available fortran compilers - append-fflags -fPIC - if use lapack; then - NUMPY_FCONFIG="config_fc --noopt --noarch" - # workaround bug 335908 - [[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95" - fi - - # don't version f2py, we will handle it. - sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die - - # disable fuzzed tests - find numpy/*/tests -name '*.py' -exec sed -i \ - -e 's:def \(.*_fuzz\):def _\1:' {} + || die - # very memory- and disk-hungry - sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die - - distutils-r1_python_prepare_all -} - -python_compile() { - export MAKEOPTS=-j1 #660754 - - distutils-r1_python_compile ${NUMPY_FCONFIG} -} - -python_test() { - distutils_install_for_testing --single-version-externally-managed \ - --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG} - - cd "${TEST_DIR}/lib" || die - epytest \ - --deselect 'numpy/typing/tests/test_typing.py::test_fail[array_constructors.py]' -} - -python_install() { - # https://github.com/numpy/numpy/issues/16005 - local mydistutilsargs=( build_src ) - distutils-r1_python_install ${NUMPY_FCONFIG} - python_optimize -} - -python_install_all() { - local DOCS=( LICENSE.txt README.md THANKS.txt ) - - if use doc; then - local HTML_DOCS=( "${WORKDIR}"/html/. ) - DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf ) - fi - - distutils-r1_python_install_all -} diff --git a/dev-python/numpy/numpy-1.20.3-r1.ebuild b/dev-python/numpy/numpy-1.20.3-r1.ebuild deleted file mode 100644 index 1b40d1b3d7d..00000000000 --- a/dev-python/numpy/numpy-1.20.3-r1.ebuild +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..10} ) -PYTHON_REQ_USE="threads(+)" - -FORTRAN_NEEDED=lapack - -inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs - -DOC_PV=${PV} -DESCRIPTION="Fast array and numerical python library" -HOMEPAGE="https://numpy.org/" -SRC_URI=" - mirror://pypi/${PN:0:1}/${PN}/${P}.zip - doc? ( - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf - )" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" -IUSE="doc lapack" - -RDEPEND=" - lapack? ( - >=virtual/cblas-3.8 - >=virtual/lapack-3.8 - ) -" -BDEPEND=" - ${RDEPEND} - app-arch/unzip - >=dev-python/cython-0.29.21[${PYTHON_USEDEP}] - lapack? ( virtual/pkgconfig ) - test? ( - >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] - >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] - >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] - ) -" - -PATCHES=( - "${FILESDIR}"/numpy-1.20.1-no-hardcode-blasv2.patch - "${FILESDIR}"/numpy-1.20.2-fix-ccompiler-tests.patch - "${FILESDIR}"/numpy-1.20.2-fix-popcnt-detection.patch - "${FILESDIR}"/numpy-1.20.3-float-hashing-py310.patch -) - -distutils_enable_tests pytest - -src_unpack() { - default - if use doc; then - unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die - fi -} - -python_prepare_all() { - if use lapack; then - local incdir="${EPREFIX}"/usr/include - local libdir="${EPREFIX}"/usr/$(get_libdir) - cat >> site.cfg <<-EOF || die - [blas] - include_dirs = ${incdir} - library_dirs = ${libdir} - blas_libs = cblas,blas - [lapack] - library_dirs = ${libdir} - lapack_libs = lapack - EOF - else - export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None - fi - - export CC="$(tc-getCC) ${CFLAGS}" - - append-flags -fno-strict-aliasing - - # See progress in http://projects.scipy.org/scipy/numpy/ticket/573 - # with the subtle difference that we don't want to break Darwin where - # -shared is not a valid linker argument - if [[ ${CHOST} != *-darwin* ]]; then - append-ldflags -shared - fi - - # only one fortran to link with: - # linking with cblas and lapack library will force - # autodetecting and linking to all available fortran compilers - append-fflags -fPIC - if use lapack; then - NUMPY_FCONFIG="config_fc --noopt --noarch" - # workaround bug 335908 - [[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95" - fi - - # don't version f2py, we will handle it. - sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die - - # disable fuzzed tests - find numpy/*/tests -name '*.py' -exec sed -i \ - -e 's:def \(.*_fuzz\):def _\1:' {} + || die - # very memory- and disk-hungry - sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die - - distutils-r1_python_prepare_all -} - -python_compile() { - export MAKEOPTS=-j1 #660754 - - distutils-r1_python_compile ${NUMPY_FCONFIG} -} - -python_test() { - distutils_install_for_testing --single-version-externally-managed \ - --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG} - - cd "${TEST_DIR}/lib" || die - epytest -} - -python_install() { - # https://github.com/numpy/numpy/issues/16005 - local mydistutilsargs=( build_src ) - distutils-r1_python_install ${NUMPY_FCONFIG} - python_optimize -} - -python_install_all() { - local DOCS=( LICENSE.txt README.md THANKS.txt ) - - if use doc; then - local HTML_DOCS=( "${WORKDIR}"/html/. ) - DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf ) - fi - - distutils-r1_python_install_all -} diff --git a/dev-python/numpy/numpy-1.21.0.ebuild b/dev-python/numpy/numpy-1.21.0.ebuild deleted file mode 100644 index d6940ebdf3a..00000000000 --- a/dev-python/numpy/numpy-1.21.0.ebuild +++ /dev/null @@ -1,139 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..10} ) -PYTHON_REQ_USE="threads(+)" - -FORTRAN_NEEDED=lapack - -inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs - -DOC_PV=${PV} -DESCRIPTION="Fast array and numerical python library" -HOMEPAGE="https://numpy.org/" -SRC_URI=" - mirror://pypi/${PN:0:1}/${PN}/${P}.zip - doc? ( - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf - https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf - )" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris" -IUSE="doc lapack" - -RDEPEND=" - lapack? ( - >=virtual/cblas-3.8 - >=virtual/lapack-3.8 - ) -" -BDEPEND=" - ${RDEPEND} - app-arch/unzip - >=dev-python/cython-0.29.21[${PYTHON_USEDEP}] - lapack? ( virtual/pkgconfig ) - test? ( - >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] - >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] - >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] - ) -" - -PATCHES=( - "${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch -) - -distutils_enable_tests pytest - -src_unpack() { - default - if use doc; then - unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die - fi -} - -python_prepare_all() { - if use lapack; then - local incdir="${EPREFIX}"/usr/include - local libdir="${EPREFIX}"/usr/$(get_libdir) - cat >> site.cfg <<-EOF || die - [blas] - include_dirs = ${incdir} - library_dirs = ${libdir} - blas_libs = cblas,blas - [lapack] - library_dirs = ${libdir} - lapack_libs = lapack - EOF - else - export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None - fi - - export CC="$(tc-getCC) ${CFLAGS}" - - append-flags -fno-strict-aliasing - - # See progress in http://projects.scipy.org/scipy/numpy/ticket/573 - # with the subtle difference that we don't want to break Darwin where - # -shared is not a valid linker argument - if [[ ${CHOST} != *-darwin* ]]; then - append-ldflags -shared - fi - - # only one fortran to link with: - # linking with cblas and lapack library will force - # autodetecting and linking to all available fortran compilers - append-fflags -fPIC - if use lapack; then - NUMPY_FCONFIG="config_fc --noopt --noarch" - # workaround bug 335908 - [[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95" - fi - - # don't version f2py, we will handle it. - sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die - - # disable fuzzed tests - find numpy/*/tests -name '*.py' -exec sed -i \ - -e 's:def \(.*_fuzz\):def _\1:' {} + || die - # very memory- and disk-hungry - sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die - - distutils-r1_python_prepare_all -} - -python_compile() { - export MAKEOPTS=-j1 #660754 - - distutils-r1_python_compile ${NUMPY_FCONFIG} -} - -python_test() { - distutils_install_for_testing --single-version-externally-managed \ - --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG} - - cd "${TEST_DIR}/lib" || die - epytest -} - -python_install() { - # https://github.com/numpy/numpy/issues/16005 - local mydistutilsargs=( build_src ) - distutils-r1_python_install ${NUMPY_FCONFIG} - python_optimize -} - -python_install_all() { - local DOCS=( LICENSE.txt README.md THANKS.txt ) - - if use doc; then - local HTML_DOCS=( "${WORKDIR}"/html/. ) - DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf ) - fi - - distutils-r1_python_install_all -}