This is a tracking issue for tasks related to the 2023 revision of the array API specification. The issue is comprised of 3 parts: general todos, new APIs, and issues needing triage.
TODO
New APIs
Triage
Specification maintenance tasks
LU factorization
Anything more to say regarding libraries negotiating that they understand NumPy arrays?
Anything more to discuss for run-time version of API (static typing)?
Make dtypes obey Python hashing rules?
Specify that __getitem__ and __setitem__ accepts SupportsIndex
Special cases for +/-0 around branch cuts
Add batch support to linalg.outer
Support for closeness comparison
Enforcing shape to accommodate data-dependent (unknown) dimensionality
Adding spec guidance regarding exceptions to positional-only arguments
This is a tracking issue for tasks related to the 2023 revision of the array API specification. The issue is comprised of 3 parts: general todos, new APIs, and issues needing triage.
TODO
Add page discussing delayed evaluation
Clarify out-of-bounds behavior in
taketake,take_along_axis, etc) #177 (comment)take#701Clarify minimum rank upper bound
Clarify sum description when
dtype=Nonedtype=Nonein sum, prod and trace #666Resolve choice of conjugation in complex inner product
vecdot#723Clarify broadcasting in linalg functions that accept an axis
Fix descriptions for constants in rendered specification
Clarify index array in
unique_allunique_*APIs #700valuesand order ofcountsinuniqueAPIs #752[ ] Add note clarifying__imatmul__broadcast behavior__imatmul__really be enforced? #509[ ] Add section indicating it's okay to duck type objects (finfo, constants)DLPack related
New APIs
copysign
copysignfunction to the standard #593copysignto the specification #693[ ] cbrtcbrt#590cbrtAPI. We can revisit in 2024.[ ] exp2exp2function to the standard #591hypot
hypot#544hypotspecification for computing the square root of the sum of squares #703[ ] copy (for copying data)copy#495moveaxis
moveaxis&swapaxes#483searchsorted
searchsortedto the specification #688searchsortedto the specification #699[ ] angleanglefor computing the argument of a complex number #595[ ] Hermitian transposeInspection API namespace
clip
clip#482clipto the specification #715cumulative sum
[ ] cumulative prod[ ] topkklargest elements #722repeat/tile
repeatto the specification #690[ ] nan-reductionsnan*reductions #621[ ] logsumexplogsumexp#596Triage
Specification maintenance tasks
LU factorization
Anything more to say regarding libraries negotiating that they understand NumPy arrays?
Anything more to discuss for run-time version of API (static typing)?
Make dtypes obey Python hashing rules?
Specify that
__getitem__and__setitem__acceptsSupportsIndexSupportsIndex#383Special cases for +/-0 around branch cuts
Add batch support to
linalg.outerlinalg.outersupport batches of vectors #242Support for closeness comparison
Enforcing shape to accommodate data-dependent (unknown) dimensionality
Adding spec guidance regarding exceptions to positional-only arguments