# What changed in jax

> 135 changes in jax 0.11 to 0.12 from its official release notes, upgrade guides and advisories: 30 breaking, 4 deprecations, 2 security, 30 new APIs and options. Each one cited. Sources checked 2026-10-30. HTML: https://unstale.sh/pypi/jax/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## jax 0.12

### Breaking changes

- Removed; use jax.custom_vjp.defremat instead. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Under jax.vmap, shared primal outputs that do not depend on batched inputs now raise an error instead of potentially counting their cotangent once per example; generic_batching can resolve the case. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now clears the caller's concrete and abstract mesh when invoking host callbacks, matching jax.debug.callback. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now returns tuples of arrays rather than lists, matching NumPy 2.0+. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now returns tuples of arrays rather than lists, matching NumPy 2.0+. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now returns tuples of arrays rather than lists, matching NumPy 2.0+. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Scalar constructors now have proper type annotations instead of Any, potentially producing typecheck errors where they were misused. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now bit-exact for normal floating-point numbers using bitwise operations; subnormal inputs and underflowing outputs are flushed to signed zero. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Improved numerical accuracy and derivatives using power-of-two scaling and a custom JVP rule; the derivative at (0, 0) now returns NaN instead of ±0.5. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Scalar constructors now have proper type annotations instead of Any, potentially producing typecheck errors where they were misused. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now bit-exact for normal floating-point numbers using bitwise operations; subnormal inputs and underflowing outputs are flushed to signed zero. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now raises AttributeError when unknown attributes are assigned. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- The shape argument now means batch shape, and results have shape (*shape, p.shape[-1]); callers passing the full output shape should drop its last entry. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Updated the minimum pinned libtpu version to 0.0.50. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Dropped support for NumPy 2.1; JAX now requires NumPy 2.2 or newer. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- jax.checkpoint, jax.custom_vjp, and jax.shard_map now error if the same Ref is passed more than once or both closed over and passed as an argument. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- JAX and jaxlib now require an Intel Haswell or newer CPU with AVX2 and FMA; older AVX-only CPUs are unsupported, though source builds remain possible. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### Security

- Now defaults to hostname localhost, avoiding inadvertently opening a port to the world. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### Deprecations

- Deprecated. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Deprecated. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### New APIs and options

- The new strategy argument chooses whether the operation lowers to gather, dynamic_slice, or slice. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Set this environment variable to the address of the IFRT Proxy server when using the proxy backend. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Set in jax.distributed.initialize for oneAPI GPU support. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Set to proxy to use the newly registered backend that connects to an IFRT Proxy server. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Implemented reverse iteration using chunked slicing, matching __iter__ for faster eager-mode reverse iteration. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added a remat option for writing jax.custom_vjp.defremat rules with closures. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Customize how a custom VJP function is rematerialized when differentiated under jax.remat; it requires the jax_custom_vjp3 and jax_remat3 implementations. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added an option for batching under jax.vmap when a primal output is shared across the batch. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added a way to query the default device layout for an array. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added an argument to place optimization barriers on the first input and/or last output of the scope. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added tools to author, inspect, splice, and execute XLA:GPU ThunkExecutor programs directly from Python. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added support for accuracy=jax.lax.AccuracyMode.HIGHEST, with improved worst-case accuracy and accurate first- and higher-order derivatives. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added polynomial evaluation with a primitive that is faster and uses less memory when computing gradients. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Accepts mxfp4, using E2M1 elements with one E8M0 scale per block of 32; quantization runs natively on AMD gfx950 GPUs and uses a dequantize-and-dot fallback elsewhere. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added batch_size, defaulting to 16, to control the batched approach now used by default for many-key sorts and avoid long compile times. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added profile data export for session- and context-manager-based profiling. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added session-based profiling. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Introduced as an Array type alias; starting in JAX 0.13.0, it will be the return type for key, split, and fold_in. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added the inverse complementary error function. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Added a context manager that raises an error at trace time in explicit sharding mode if an operation or reshard introduces a collective across a specified mesh axis. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### Performance

- Now lowers via a single-pass jax.lax.reduce. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Uses an unstable sort when weights=None, avoiding a companion index sort. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Uses an unstable sort when weights=None, avoiding a companion index sort. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### Behavior and default changes

- Sets jax_oneapi_visible_devices in oneAPI GPU support. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### Tooling

- Now annotated as returning Iterator[Self] rather than Any. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now annotated as returning Iterator[Self] rather than Any. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

### Fixes and other changes

- Fixed a regression where cached host-transfer CPU buffers prevented buffer donation. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed indexing and iteration over fully replicated multi-device arrays. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- A failing ordered io_callback no longer permanently poisons effect tokens. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Complex absolute value has improved numerical accuracy by lowering through power-of-two scaled hypot. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Improved precision of fallback expansions near zero under flush-to-zero mode. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed numerical overflow in gradients for large inputs. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Improved CPU accuracy for float32 and float64 and tightened float32 accuracy on specified TPU generations. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Tightened float32 accuracy on TPU v5p, v6e, and 7x with libtpu >= 0.0.50. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed incorrect results for signed integer minimum values such as INT_MIN. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Preserves FP8/FP4 quantization when XLA expands scaled matmul into dequantize-and-dot and computes MX block scales in float32 regardless of input dtype. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Complex absolute value has improved numerical accuracy by lowering through power-of-two scaled hypot. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed incorrect results for signed integer minimum values such as INT_MIN. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed the gradient at x = 0.0, which previously returned 1.0 instead of 2**n. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed incorrect results for signed integer minimum values such as INT_MIN. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Improved numerical accuracy across floating-point types. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now clears the caller's concrete and abstract mesh when invoking host callbacks, matching jax.debug.callback. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed parameter broadcasting. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Now accepts batched inputs of shape (..., M, N), as documented. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed the Hessian when a == b. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Reimplemented erfcx, improving accuracy and derivatives as part of the special-function accuracy changes. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Numerical accuracy of ndtri and its derivatives improved using minimax polynomial approximations and a custom JVP rule. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed vmap of jax.lax.scan closing over a Ref batched on a non-leading axis. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)
- Fixed out-of-bounds slice validation when start = 0. (0.12.0) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.12.0)

## jax 0.11

### Breaking changes

- JAX Bazel builds now use Bzlmod instead of WORKSPACE. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- The minimum CuDNN version required for CUDA 12 is now v9.10.2. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Removed the deprecated API; use explicit sharding mode instead. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- inline=True now corresponds to jax.Inline.JAX_LATE instead of jax.Inline.JAX_EARLY. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- An input empty along the reduction axis now raises ValueError instead of an internal gather error. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- When dtype is unspecified, the returned array now uses the default float dtype rather than always float32. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- The flag has been removed in favor of the `EffortLevel` enum. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Deserialization of Exported modules from before January 15th, 2026 is no longer supported; NamedSharding is now the only supported sharding serialization. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Now returns a tuple rather than a list, aligning with NumPy>2.0 and the Array API specification. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Now returns a tuple rather than a list, aligning with NumPy>2.0 and the Array API specification. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Now returns a tuple rather than a list, aligning with NumPy>2.0 and the Array API specification. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- The default is now always `True`; `None` is no longer a valid value. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- The flag has been removed in favor of the `EffortLevel` enum. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)

### Security

- Added mutual TLS coordination-service configuration arguments and corresponding environment variables. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)

### Deprecations

- Accessing this field now raises a warning; use `in_shardings_jax` instead. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Accessing this field now raises a warning; use `out_shardings_jax` instead. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)

### New APIs and options

- jaxlib wheels now include C++ FFI extension headers to support out-of-tree plugins. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Added the exclude_argnames argument. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Added an API for querying conservative bounds on symbolic dimension expressions. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Added log2 as a first-class primitive; jax.numpy.log2 now lowers through it. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Added the out_sharding parameter. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Added an API that returns both the minimum and maximum of an array, matching NumPy 2.3+. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Added oneMKL LAPACK kernels for QR, LU, symmetric/Hermitian eigenvalue, SVD, and hybrid solvers on oneAPI GPUs. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- JAX now reads this environment variable in GKE TPU clusters. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Temporarily bypasses the error check when deserializing JAX exports older than the backwards compatibility window. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Adds `jax.numpy.top_k`, implementing `numpy.top_k`. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)

### Performance

- Scan-based lowering was re-enabled on GPU, improving performance. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- GPU multidimensional inverse real FFTs again lower to a single C2R transform; results are unchanged and typical sizes are about 1.4x faster. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Large Mesh construction avoids redundant device array allocations and copies. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)

### Behavior and default changes

- Cluster detection now supports Open MPI 5. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- The p parameter now accepts RealArray rather than only float, allowing array-valued shape parameters. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- cuDNN fused attention batching rules now support operands without the vmap axis, including shared bias or `mask`. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)

### Tooling

- JAX now uses Bazel 8.7.0 to build from source. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)

### Fixes and other changes

- Improved thread safety across JAX and jaxlib for free-threaded Python 3.13t, 3.14t, and 3.15t. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- JAX pytrees now support frozendict on Python 3.15. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed tangents when auxiliary values are integer-typed. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed color cycling. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Error code assignment is now deterministic. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed symbolic product bounds when even-powered factor bounds cross zero or zero factors are paired with infinite bounds. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed first-, second-, and higher-order autodiff gradients at 0.0. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Adjusted the JVP rule so it does not depend on bitwise equivalence between forward- and backward-pass results. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed a potential division-by-zero error for zero-size inputs. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed numerical overflow in gradients for large inputs. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed a crash on empty arrays. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- With size=0, now returns an empty array of the natural result dtype instead of raising ValueError. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- For singular matrices with p=None or 2, now returns infinity instead of NaN, matching NumPy and the other norms. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed gradients that produced NaN or incorrect values for large eigenvalues. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Numerical accuracy improved by pre-computing the 1 / log(2) constant factor. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- With size=0 on non-empty inputs, now returns an empty array instead of raising IndexError. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Now uses a Taylor series near zero, giving accurate derivatives of all orders. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- With axis specified, empty-axis arrays now have NumPy's output shape instead of a fabricated phantom slice for fully empty inputs. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- The argument signature now accepts bool | Sequence[bool], matching jax.checkpoint. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed gradients leaking into the unused triangle when symmetrize_input=False. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Fixed state discharge accumulation on indexed ReshapeTransform views. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Worked around a rocFFT twiddle cache bug in multidimensional real FFTs. (0.11.2) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.2)
- Setting this to `False` adds `rematerialization` to disabled XLA passes instead of overwriting the set, preserving passes disabled through `XLA_FLAGS`. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Errors for non-scalar function outputs now suggest reducing the output to a scalar, using `jax.jacobian`, or reshaping size-1 outputs. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Errors for non-static or traced slice indices now suggest `jax.lax.dynamic_slice`, `jax.lax.dynamic_update_slice`, or `jax.ds`, and show tracer provenance. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Fixes propagation of singleton sharded dimensions when reshaping arrays with sharding constraints. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Abstract evaluation now checks `.mat` equivalency only when the abstract value is a `ShapedArray`. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- The cuDNN fused attention backward pass no longer computes a bias gradient when the only attention bias comes from a boolean `mask`; explicit bias and non-boolean mask gradients are unchanged. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Uses closed-form LU decomposition with row pivoting for 2x2 and 3x3 matrices instead of polynomial expansions to avoid numerical instability and catastrophic cancellation. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Uses closed-form LU decomposition with row pivoting for 2x2 and 3x3 matrices instead of polynomial expansions to avoid numerical instability and catastrophic cancellation. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Fixed for `namedtuple` instances. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Errors for non-scalar function outputs now suggest reducing the output to a scalar, using `jax.jacobian`, or reshaping size-1 outputs. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
- Vmapping fp8 cuDNN fused attention now works; amax outputs are whole-batch statistics without the vmap axis, while vmapping scale/descale operands raises `NotImplementedError`. (0.11.1) — [release notes](https://github.com/jax-ml/jax/releases/tag/jax-v0.11.1)
