Equinox v0.11.1
This is a minor bugfix release.
Bugfixes
- Checkpointed while loops (
eqx.internal.while_loop(..., kind="checkpointed")
) now perform a more careful analysis of which arguments need to be differentiated. (#548) This fix is the primary reason for this release -- it unlocks some efficiency improvements when solving SDEs in Diffrax: patrick-kidger/diffrax#320 - Fixed
Abstract{Class,}Var
misbehaving around multiple inheritance. (#544) - Better compatibility with the beartype library. In a few cases this was throwing some spurious errors to do with forward references. (#543)
Documentation
Other
- Static type checkers should now use Equinox's type hints correctly. (Specfically, we now have the
py.typed
marker file. Thanks @vidhanio! #547) - Added the
EQX_ON_ERROR_BREAKPOINT_FRAMES
environment variable, to work around JAX bug jax-ml/jax#16732 when usingEQX_ON_ERROR=breakpoint
. This new variable sets the number of stack frames you can access via theu
debugger command, when the on-error debugger is triggered. Set this to a small enough number, e.g.EQX_ON_ERROR_BREAKPOINT_FRAMES=1
, and it should fix unusual trace-time errors when usingEQX_ON_ERROR=breakpoint
.
New Contributors
Full Changelog: v0.11.0...v0.11.1