Skip to content

Releases: patrick-kidger/jaxtyping

jaxtyping v0.2.20

01 Jun 18:09
Compare
Choose a tag to compare
  • Added jaxtyping.PyTreeDef type.
  • Can now detect x = jaxtyping.PyTree[foo] via issubclass(x, jaxtyping.PyTree).
  • Fixed #89, in which __builtins__ was getting added as an extra key to the memo stack.
  • Renamed modules with a leading underscore to indicate that they're private.
  • Bump minimum Python version to 3.9.

Full Changelog: v0.2.19...v0.2.20

jaxtyping v0.2.19

11 May 16:11
Compare
Choose a tag to compare
  • Proper documentation! Not just markdown files on GitHub any more. Check out https://docs.kidger.site/jaxtyping.
  • Added jaxtyping.{PRNGKeyArray,Scalar,ScalarLike}
  • Can now nest, e.g.
    Image = Float[Array, "channels height width"]
    BatchImage = Float[Image, "batch"]
  • Now packaging in the modern way with pyproject.toml.
  • Dtypes can now match regexes (e.g. used in keys to match ^key<\w+>$),

Full Changelog: v0.2.15...v0.2.19

jaxtyping v0.2.18

11 May 00:20
Compare
Choose a tag to compare

(Yanked; broke the pytest hook. Prefer v0.2.19 instead.)

Full Changelog: v0.2.15...v0.2.18

jaxtyping v0.2.17

10 May 23:39
Compare
Choose a tag to compare

(Yanked; had incompatibility with non-JAX installations. Prefer v0.2.19 instead.)

Full Changelog: v0.2.15...v0.2.17

jaxtyping v0.2.16

10 May 22:32
Compare
Choose a tag to compare

(Yanked; had static typing issues. Prefer v0.2.19 instead.)

Full Changelog: v0.2.15...v0.2.16

Jaxtyping v0.2.15

13 Apr 18:21
c92b0d0
Compare
Choose a tag to compare
  • Added support for functions in symbolic dimensions, e.g. "min(foo,bar)", which were previously disallowed due to the presence of a comma. (#51)
  • Added support for adding ignored names to dimensions, e.g. "cols=4". (#76)
  • Added support for Python 3.10 A | B union types (#73)
  • Experimental (largely untested) compatibility with torch.compile. (#71)

Full Changelog: v0.2.14...v0.2.15

Jaxtyping v0.2.14

06 Mar 04:28
Compare
Choose a tag to compare

Highlights

Features

  • Tweaked install_import_hook(..., typechecker=...) argument to also accept a string. In particular this means it can be used with beartype's new full checking; this can be enabled by passing typechecker="beartype.beartype(conf=beartype.BeartypeConf(strategy=beartype.BeartypeStrategy.On))".
  • It is now the case that e.g. issubclass(Float[array_type, ...], array_type). (This is what brings compatibility with Plum v2.)
  • NumPy and PyTorch compatibility is now tested.

Bugfixes

  • Statements like Bool[int, "..."] should now raise an error.
  • Applying @jaxtyping fo functions with fn in their __dict__ should now work.
  • Subclassing dataclasses whilst using install_import_hook(..., typechecker="beartype.beartype") should no longer raise a spurious error.
  • Changing the value of install_import_hook(..., typechecker=...) will no longer wrongly hit the same __pycache__. (Before this the change in value was ignored.)
  • Can now serialise jaxtyping types using cloudpickle.

New Contributors

Full Changelog: v0.2.13...v0.2.14

Jaxtyping v0.2.13

26 Feb 01:04
Compare
Choose a tag to compare

Added support for jax.typing.ArrayLike.

Full Changelog: v0.2.12...v0.2.13

Jaxtyping v0.2.12

16 Feb 18:10
81c5605
Compare
Choose a tag to compare

Autogenerated release notes as follows:

What's Changed

Full Changelog: v0.2.11...v0.2.12

Jaxtyping v0.2.11

30 Dec 19:02
59e8fb0
Compare
Choose a tag to compare

Autogenerated release notes as follows:

What's Changed

Full Changelog: v0.2.10...v0.2.11