| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This PR replaces the import of platform and a call to platform.python_implementation() with a check using sys.implementation.name to improve the numpy import time. The improvement is about 5-10 ms (system dependent).
Also see #22061
Co-authored-by: Matti Picus <matti.picus@gmail.com>
|
|\
| |
| | |
ENH: Ensure that assertion of unsigned dtypes does not return results
|
| |
| |
| |
| | |
that wrapped around.
|
|\ \
| | |
| | | |
API: Introduce optional (and partial) NEP 50 weak scalar logic
|
| | |
| | |
| | |
| | | |
Unfortunately, this shows that the rational tests are still broken a bit.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This ensures that the precision is not downcast, which could make
a small value zero (for float16 mostly).
This lets tests pass that check whether `np.float16(0)` is almost
equal to 0, which otherwise fail (because `float16(0.00000001)`
will evaluate to 0 exactly.
|
| | | |
|
| |/
| |
| |
| |
| | |
Even the new promotion has to use the min-scalar logic to avoid
picking up a float16 loop for `np.int8(3) * 3.`.
|
|/
|
|
|
|
| |
Fixes #9542
Co-authored-by: Bas van Beek <43369155+BvB93@users.noreply.github.com>
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* TST: Test suppression of asset_array_equal RuntimeWarning See #18992
* ENH: Suppress over-/underflow warnings on asset_array_equal - Closes #18992
* MAINT: Resolve linting issues of prior commit
* MAINT: Simplified ignore and test case of asset_array_equal
* MAINT: Removed unused import in test_utils.py
|
| |
|
|
|
|
|
|
|
| |
`load_module` is deprecated since python 3.4 and will be removed in python 3.12.
Use `exec_module` instead. Provide a convenience function in `distutils.misc_utils`
instead of `npy_load_module` from `compat.py3k`.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead of `import numpy.testing as npt`.
- all of NumPy's own tests themselves use the from-import variant
- There's `import numpy.typing as npt` around in some places so
we should not abbreviate another module import with `npt`.
Optional further enhancement: If this is a convention we also want
users to adopt, this should be mentioned in the module docstring of
`numpy.testing`.
|
|\
| |
| | |
ENH: Use new argument parsing for array creation functions
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The array creation functions have the most to gain:
1. np.asarray is 4 times faster and commonly used.
2. Other functions are wrapped using __array_function__ in Python
making it more difficult
This commit (unfortunatly) has to do a few things:
* Modify __array_function__ C-side dispatching to accomodate
the fastcall argument convention.
* Move asarray, etc. to C after removing all "fast paths" from
np.array (simplifying the code)
* Fixup imports, since asarray was imported directly in a few places
* Replace some places where `np.array` was probably used for speed
instead of np.asarray or similar. (or by accident in 1 or 2 places)
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This update a coupe of references (single backticks) that actually are not to
verbatim/code (double backticks); and a couple of verbatim to reference
when they do actually exists and can be resolved in context.
I probably missed other; and stayed simple but spoted a few other
inconsistencies that I did not fix:
- some ``...`` could actually be :math:`...` but not always clear if
it would be better.
- some intervals are [``...``], other are ``[...]``
I guess they could be discussed individually; it was mostly the failing
references that bothered me.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ENH: Add traceback-skip to `assert_array_compare`
* TST: Add tests for arraycoercion
These tests have many xfails (some technically maybe not correct),
which describe in detail what will change when merging the
array-coercion changes; since all of those xfails are going
to be removed.
* TST: Add test for empty sequences
* TST: Add tests for bad self-mutating sequence inputs to np.array
These should never happen and rightly should lead to undefined
behaviour (and preferably errors), but they excercise some more
tricky code branches and should probably not crash.
* Simplify the "all scalars" logic (hardcode) and fix complex cases
* MAINT: Some cleanup, and xfail pypy
PyPy seems to have issues with int(numpy_complex), maybe because
it gives a warning during conversion (python does not define it).
So simply mark it as xfail, it should work in my branch.
Also some smaller cleanups.
* TST: Add some further test, re-add missing rational
* MAINT: Make rationals optional, because they fail some tests currently
The failures will go away, since this must again be related to
implemetning int() and float().
* Update numpy/conftest.py
* MAINT: Fix strings and use pytest.param to clean things up
* TST: Add tests for 0-D array-like input to np.array() corner-cases
* TST: Improve parameterization IDs to get better printing at -vv
|
| |
|
| |
|
|
|
| |
Add missing closing brackets, script to generate the list in the PR gh-16051.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* PEP 8: "Imports should usually be on separate lines"
* Where modified, sort imported modules alphabetically
* Clean-up unused imports from these expanded lines
|
| |
|
| |
|
| |
|
|
|
|
| |
Now that 2.7 is gone, there is no need to pop manually from kwarg dictionaries.
|
|
|
|
|
|
|
| |
Inheriting from object was necessary for Python 2 compatibility to use
new-style classes. In Python 3, this is unnecessary as there are no
old-style classes.
Dropping the object is more idiomatic Python.
|
|
|
|
|
| |
As numpy is Python 3 only, these import statements are now unnecessary
and don't alter runtime behavior.
|
|\
| |
| | |
TST: improve assert message of assert_array_max_ulp
|