summaryrefslogtreecommitdiff
path: root/numpy/lib
diff options
context:
space:
mode:
authorRalf Gommers <ralf.gommers@gmail.com>2023-03-12 22:01:22 +0000
committerRalf Gommers <ralf.gommers@gmail.com>2023-03-12 22:31:28 +0000
commit1da1663196c95b3811ca84d9e335f32cfeb05e32 (patch)
treee6d432a66dd5c16051a4e1a400567b100200639a /numpy/lib
parentac6233b03df6562453ebda984f565f603e726710 (diff)
downloadnumpy-1da1663196c95b3811ca84d9e335f32cfeb05e32.tar.gz
MAINT: remove `NUMPY_EXPERIMENTAL_ARRAY_FUNCTION` env var
As discussed in https://mail.python.org/archives/list/numpy-discussion@python.org/thread/UKZJACAP5FUG7KP2AQDPE4P5ADNWLOHZ/ This flag was always meant to be temporary, and cleaning it up is long overdue.
Diffstat (limited to 'numpy/lib')
-rw-r--r--numpy/lib/function_base.py33
-rw-r--r--numpy/lib/shape_base.py8
-rw-r--r--numpy/lib/tests/test_twodim_base.py11
3 files changed, 18 insertions, 34 deletions
diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
index 405790025..f0f374f97 100644
--- a/numpy/lib/function_base.py
+++ b/numpy/lib/function_base.py
@@ -4910,23 +4910,22 @@ def trapz(y, x=None, dx=1.0, axis=-1):
return ret
-if overrides.ARRAY_FUNCTION_ENABLED:
- # If array-function is enabled (normal), we wrap everything into a C
- # callable, which has no __code__ or other attributes normal Python funcs
- # have. SciPy however, tries to "clone" `trapz` into a new Python function
- # which requires `__code__` and a few other attributes.
- # So we create a dummy clone and copy over its attributes allowing
- # SciPy <= 1.10 to work: https://github.com/scipy/scipy/issues/17811
- assert not hasattr(trapz, "__code__")
-
- def _fake_trapz(y, x=None, dx=1.0, axis=-1):
- return trapz(y, x=x, dx=dx, axis=axis)
-
- trapz.__code__ = _fake_trapz.__code__
- trapz.__globals__ = _fake_trapz.__globals__
- trapz.__defaults__ = _fake_trapz.__defaults__
- trapz.__closure__ = _fake_trapz.__closure__
- trapz.__kwdefaults__ = _fake_trapz.__kwdefaults__
+# __array_function__ has no __code__ or other attributes normal Python funcs we
+# wrap everything into a C callable. SciPy however, tries to "clone" `trapz`
+# into a new Python function which requires `__code__` and a few other
+# attributes. So we create a dummy clone and copy over its attributes allowing
+# SciPy <= 1.10 to work: https://github.com/scipy/scipy/issues/17811
+assert not hasattr(trapz, "__code__")
+
+def _fake_trapz(y, x=None, dx=1.0, axis=-1):
+ return trapz(y, x=x, dx=dx, axis=axis)
+
+
+trapz.__code__ = _fake_trapz.__code__
+trapz.__globals__ = _fake_trapz.__globals__
+trapz.__defaults__ = _fake_trapz.__defaults__
+trapz.__closure__ = _fake_trapz.__closure__
+trapz.__kwdefaults__ = _fake_trapz.__kwdefaults__
def _meshgrid_dispatcher(*xi, copy=None, sparse=None, indexing=None):
diff --git a/numpy/lib/shape_base.py b/numpy/lib/shape_base.py
index 154faa1dd..5d8a41bfe 100644
--- a/numpy/lib/shape_base.py
+++ b/numpy/lib/shape_base.py
@@ -643,10 +643,6 @@ def column_stack(tup):
[3, 4]])
"""
- if not overrides.ARRAY_FUNCTION_ENABLED:
- # reject non-sequences (and make tuple)
- tup = _arrays_for_stack_dispatcher(tup)
-
arrays = []
for v in tup:
arr = asanyarray(v)
@@ -713,10 +709,6 @@ def dstack(tup):
[[3, 4]]])
"""
- if not overrides.ARRAY_FUNCTION_ENABLED:
- # reject non-sequences (and make tuple)
- tup = _arrays_for_stack_dispatcher(tup)
-
arrs = atleast_3d(*tup)
if not isinstance(arrs, list):
arrs = [arrs]
diff --git a/numpy/lib/tests/test_twodim_base.py b/numpy/lib/tests/test_twodim_base.py
index 141f508fd..eb008c600 100644
--- a/numpy/lib/tests/test_twodim_base.py
+++ b/numpy/lib/tests/test_twodim_base.py
@@ -4,20 +4,14 @@
from numpy.testing import (
assert_equal, assert_array_equal, assert_array_max_ulp,
assert_array_almost_equal, assert_raises, assert_
- )
-
+)
from numpy import (
arange, add, fliplr, flipud, zeros, ones, eye, array, diag, histogram2d,
tri, mask_indices, triu_indices, triu_indices_from, tril_indices,
tril_indices_from, vander,
- )
-
+)
import numpy as np
-
-from numpy.core.tests.test_overrides import requires_array_function
-
-
import pytest
@@ -283,7 +277,6 @@ class TestHistogram2d:
assert_array_equal(H, answer)
assert_array_equal(xe, array([0., 0.25, 0.5, 0.75, 1]))
- @requires_array_function
def test_dispatch(self):
class ShouldDispatch:
def __array_function__(self, function, types, args, kwargs):