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
-}

Reply via email to