Skip to content

Commit

Permalink
Merge pull request #18708 from jakevdp:array-equal-dep
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 586357829
  • Loading branch information
jax authors committed Nov 29, 2023
2 parents ef65ba8 + 13dd5e4 commit 0fce77a
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 2 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ Remember to align the itemized text with the first line of an item within a list
It currently is converted to NaN, and in the future will raise a {obj}`TypeError`.
* Passing the `condition`, `x`, and `y` parameters to `jax.numpy.where` by
keyword arguments has been deprecated, to match `numpy.where`.
* Passing arguments to {func}`jax.numpy.array_equal` and {func}`jax.numpy.array_equiv`
that cannot be converted to a JAX array is deprecated and now raises a
{obj}`DeprecationWaning`. Currently the functions return False, in the future this
will raise an exception.


## jaxlib 0.4.21
Expand Down
14 changes: 12 additions & 2 deletions jax/_src/numpy/lax_numpy.py
Original file line number Diff line number Diff line change
Expand Up @@ -2299,7 +2299,12 @@ def _check_forgot_shape_tuple(name, shape, dtype) -> str | None: # type: ignore
def array_equal(a1: ArrayLike, a2: ArrayLike, equal_nan: bool = False) -> Array:
try:
a1, a2 = asarray(a1), asarray(a2)
except Exception:
except Exception as err:
# TODO(jakevdp): Deprecated 2023-11-23; change to error.
warnings.warn("Inputs to array_equal() cannot be coerced to array. "
"Returning False; in the future this will raise an exception.\n"
f"{err!r}",
DeprecationWarning, stacklevel=2)
return bool_(False)
if shape(a1) != shape(a2):
return bool_(False)
Expand All @@ -2313,7 +2318,12 @@ def array_equal(a1: ArrayLike, a2: ArrayLike, equal_nan: bool = False) -> Array:
def array_equiv(a1: ArrayLike, a2: ArrayLike) -> Array:
try:
a1, a2 = asarray(a1), asarray(a2)
except Exception:
except Exception as err:
# TODO(jakevdp): Deprecated 2023-11-23; change to error.
warnings.warn("Inputs to array_equiv() cannot be coerced to array. "
"Returning False; in the future this will raise an exception.\n"
f"{err!r}",
DeprecationWarning, stacklevel=2)
return bool_(False)
try:
eq = ufuncs.equal(a1, a2)
Expand Down

0 comments on commit 0fce77a

Please sign in to comment.