| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Allow casting in the array API asarray()
* Restrict multidimensional indexing in the array API namespace
The spec has recently been updated to only require multiaxis (i.e., tuple)
indices in the case where every axis is indexed, meaning there are either as
many indices as axes or the index has an ellipsis.
* Fix type promotion for numpy.array_api.where
where does value-based promotion for 0-dimensional arrays, so we use the same
trick as in the Array operators to avoid this.
* Print empty array_api arrays using empty()
Printing behavior isn't required by the spec. This is just to make things
easier to understand, especially with the array API test suite.
* Fix an incorrect slice bounds guard in the array API
* Disallow multiple different dtypes in the input to np.array_api.meshgrid
* Remove DLPack support from numpy.array_api.asarray()
from_dlpack() should be used to create arrays using DLPack.
* Remove __len__ from the array API array object
* Add astype() to numpy.array_api
* Update the unique_* functions in numpy.array_api
unique() in the array API was replaced with three separate functions,
unique_all(), unique_inverse(), and unique_values(), in order to avoid
polymorphic return types.
Additionally, it should be noted that these functions to not currently conform
to the spec with respect to NaN behavior. The spec requires multiple NaNs to
be returned, but np.unique() returns a single NaN. Since this is currently an
open issue in NumPy to possibly revert, I have not yet worked around this. See
https://github.com/numpy/numpy/issues/20326.
* Add the stream argument to the array API to_device method
This does nothing in NumPy, and is just present so that the signature is valid
according to the spec.
* Use the NamedTuple classes for the type signatures
* Add unique_counts to the array API namespace
* Remove some unused imports
* Update the array_api indexing restrictions
The "multiaxis indexing must index every axis explicitly or use an ellipsis"
was supposed to include any type of index, not just tuple indices.
* Use a simpler type annotation for the array API to_device method
* Fix a test failure in the array_api submodule
The array_api cannot use the NumPy testing functions because array_api arrays
do not mix with NumPy arrays, and also NumPy testing functions may use APIs
that aren't supported in the array API.
* Add dlpack support to the array_api submodule
|
|\ \ \
| | | |
| | | | |
ENH: Implement the DLPack Array API protocols for ndarray.
|
| | |/
| |/| |
|
|/ / |
|
|\ \
| | |
| | | |
MAINT: Remove unused imports and remove duplicated tests
|
| | | |
|
| | |
| | |
| | |
| | | |
Replace `object` as it cannot be used for expressing the objects in the array namespace.
|
| | | |
|
|/ / |
|
| | |
|
| |
| |
| |
| | |
Changed as `Array` does not live in the main `np.array_api` namespace
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Add __index__ to array_api and update __int__, __bool__, and __float__
The spec specifies that they should only work on arrays with corresponding
dtypes. __index__ is new in the spec since the initial PR, and works
identically to np.array.__index__.
* Add the to_device method to the array_api
This method is new since #18585. It does nothing in NumPy since NumPy does not
support non-CPU devices.
* Update transpose methods in the array_api
transpose() was renamed to matrix_transpose() and now operates on stacks of
matrices. A function to permute dimensions will be added once it is finalized
in the spec. The attribute mT was added and the T attribute was updated to
only operate on 2-dimensional arrays as per the spec.
* Restrict input dtypes in the array API statistical functions
* Add the dtype parameter to the array API sum() and prod()
* Add the function permute_dims() to the array_api namespace
permute_dims() is the replacement for transpose(), which was split into
permute_dims() and matrix_transpose().
* Add tril and triu to the array API namespace
* Fix the array_api Array.__repr__ to indent the array properly
* Make the Device type in the array_api just accept the string "cpu"
|
| | |
|
|/ |
|
| |
|
|
|
|
|
| |
NumPy has dropped Python 3.7, so these are no longer necessary (and they
didn't completely work anyway).
|
|
|
|
| |
This was blocked on #18536, which has been merged.
|
| |
|
|
|
|
|
|
| |
I've omitted a few changes from black that messed up the readability of some
complicated if statements that were organized logically line-by-line, and some
changes that use unnecessary operator spacing.
|
| |
|
| |
|
|
|
|
| |
See data-apis/array-api#100.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Some of the imports in the array API module have to be inside functions to
avoid circular imports, but these ones did not.
|
|
|
|
|
| |
They are not an official part of the spec but are useful for various parts of
the implementation.
|
| |
|
|
|
|
| |
asarray() is already called in Array._new.
|
| |
|
| |
|
|
Instead of the leading underscore, the experimentalness of the module will be
indicated by omitting a warning on import. That we, we do not have to change
the API from underscore to no underscore when the module is no longer
experimental.
|