Skip to content

Releases: google-deepmind/penzai

Penzai 0.1.2

28 May 20:09
Compare
Choose a tag to compare

New features:

  • Penzai's pretty printer Treescope can now be more easily extended to work with custom types, by defining the special method __penzai_repr__, which will be detected during pretty-printing. Renderings of these custom types can be built using penzai.treescope.repr_lib, a stable extension API that can be used to implement __penzai_repr__ in a forwards-compatible way. (Note that the exact internal representation of Treescope renderings is still unstable and may change in the future; see the documentation for penzai.treescope for details.)
  • Added pz.ts.basic_interactive_setup(), which simplifies setting up the pretty-printer in an IPython notebook.

Bug fixes and improvements:

  • Improved detection of mutable vs immutable objects during pretty-printing.
  • Fixed detection of special methods _repr_html_ and __penzai_repr__ to avoid objects that generate arbitrary attributes dynamically.
  • Copy-path buttons are no longer shown for the root node.

Documentation changes:

  • Documentation has been added for how to extend penzai.treescope to render custom types in a stable way.
  • The right-hand sidebar now shows more detail in tutorial notebooks.

Penzai 0.1.1

03 May 22:19
Compare
Choose a tag to compare

Penzai 0.1.1 fixes a number of bugs and adds a few convenience features.

New features:

  • NamedArray can now be converted automatically to a JAX array without unwrapping it if it has no more named axes (e.g. after calling untag).
  • Lifting JAX functions to operate over NamedArrays can be accomplished with less boilerplate using penzai.toolshed.auto_nmap: if you set njnp = auto_nmap.wrap_module(jnp), you can use njnp.{method} instead of pz.nx.nmap(jnp.{method}).

Bug fixes and improvements:

  • Bugfix: Array data in array visualization tooltips now correctly accounts for slider offsets.
  • Improvements to compatibility of penzai.treescope renderings:
    • Copy-path buttons no longer require internet access.
    • Pretty-printed outputs should now appear in the correct location in JupyterLab.
    • Perfomance improvements for non-Chrome browsers.

Documentation changes:

  • Fixed typos and formatting issues.
  • Fixed notebook output display bug in Firefox.
  • Source links in ReadTheDocs now link to a specific commit.
  • Cross-page links in ReadTheDocs now support hover tooltip previews.

Initial release - Penzai 0.1.0

18 Apr 15:39
Compare
Choose a tag to compare

Initial release of Penzai.

Read the documentation at https://penzai.readthedocs.io/en/v0.1.0/.