Skip to content

Releases: google/etils

v1.12.0

08 Feb 22:43
Compare
Choose a tag to compare
  • epy:
    • Add experimental util for ml_python + multi-process compatibility
      for adhoc-imports (when using PyGrain).
    • epy.lazy_api_imports: Make lazy importing thread safe.
    • epy.StrEnum: Fix != operator.
  • epath:
    • Supports hf:// urls.
  • ecolab:
    • Make mediapy lazy

v1.11.0

27 Nov 16:01
Compare
Choose a tag to compare
  • enp:
    • Make enp.testing.parametrize_xnp() import only requested xnp modules.
    • Fix orbax error when inspecting specs of an orbax checkpoint.
  • ecolab:
    • ecolab.inspect: Proto are better displayed (hide attributes
      DESCRIPTOR, Extensions in sub-section)
  • epy:
    • epy.lazy_api_imports: Fix infinite recursion when importing sub-module
  • exm:
    • Add dummy implementation of the API to simplify open-sourcing.

v1.10.0

17 Oct 08:34
Compare
Choose a tag to compare
  • epy:
    • Add frozen dataclass support for epy.ContextManager
    • Make epy.StrEnum truly case-insensitive
    • Support adhoc import of proto files with hyphen.
    • Add fiddle supports to epy.pretty_repr
  • enp: Add ArraySpec support for grain.python.SharedMemoryArrays.

v1.9.4

03 Sep 08:05
Compare
Choose a tag to compare
  • Return Python 3.10 support.

v1.9.3

30 Aug 14:25
Compare
Choose a tag to compare
  • eapp:
    • Allow extra kwargs in eapp.make_flags_parser()
  • epath:
    • Fix epath.Path pydantic deserialization for URI-style paths
  • epy:
    • Add epy.is_test to check whether we're running in a test environment.
    • Add epy.typing.Json.
    • Add epy.ExitStack which allows setting the contextmanagers during init.
    • Add proto support for epy.binary_adhoc
    • Hide reraise from the traceback for cleaner error messages
  • exm:
    • Add exm.url_to_python_only_logs() and exm.curr_job_name() to add
      artifact to Python only logs (without all the verbose C++ junk ).
    • Fix a bug which makes exm.current_experiment crash

v1.9.2

12 Jun 10:22
Compare
Choose a tag to compare
  • epath:
    • Support pydantic serialization of epath.Path

v1.9.1

04 Jun 14:42
Compare
Choose a tag to compare
  • epath:
    • Fix an infinite recursion on is_relative_to for Python>=3.12.

v1.9.0

31 May 14:31
Compare
Choose a tag to compare
  • epy:
    • Add epy.lazy_api_imports to lazy-import __init__.py symbols.
    • Removed: epy.cached_property
    • epy.lazy_imports: Error callback accept a str to auto-re-raise
      with additional info.
    • Fix mixing epy.lazy_imports() with epy.binary_adhoc().
  • ecolab:
    • Added reload_workspace=True to adhoc to auto-reload from workspace
    • Add ecolab.get_permalink()
    • Fix ecolab.inspect not finding static files when the kernel contain
      partial etils deps.
  • epath:
    • Fix error when importlib.resources.files return MultiplexedPath
    • Fix gs:// URI for 3.12
    • Fix .walk 3.12 error (topdown -> top_down rename)
  • Full compatibility with Python 3.12 (unit tests run on both 3.11 and 3.12).

v1.8.0

19 Mar 15:36
Compare
Choose a tag to compare
  • Drop Python 3.10 support.
  • epy:
    • epy.pretty_repr: Add support for namedtuple
  • ecolab:
    • Add ecolab.disp(obj)
    • Add ;h for syntax highlighting with auto-display
    • Fix proto error on import

v1.7.0

15 Feb 22:24
Compare
Choose a tag to compare
  • epath:
    • Add mode to epath.Path.stat output. Does not work for Windows nor
      when tf.io.gfile is used.
    • Add .walk to epath.Path. Similar usage than pathlib.Path.walk
  • epy:
    • Added: epy.reverse_fstring: Reverse fstring parsing
    • Added: reload= for epy.binary_adhoc(), fixed behavior for
      consistency with ecolab.adhoc
    • Added: epy.pprint: Pretty print an object (including dataclass).
    • Added: epy.pretty_repr_top_level
    • Added: epy.wraps_cls equivalent of functools.wraps but for classes.
    • Breaking: epy.lazy_imports(error_callback=) has now signature
      (Exception) -> None (instead of (str) -> None)
    • Fixed: epy.pretty_repr missing trailing , for tuple with single
      element.
  • ecolab:
    • Changed: ecolab.auto_display: Better representation when line is
      displayed
    • Fix adhoc that delete sub-module when invalidate=False
    • adhoc with reload_mode=UPDATE_INPLACE now supports enums, so old
      versions compare equal to new versions. Enums compared as a is FOO
      might still fail.
    • adhoc with reload_mode=UPDATE_INPLACE is now much faster.
    • When using cell_autoreload=True the default reload_mode is
      now UPDATE_INPLACE.
    • Better error message for adhoc reload
  • exm:
    • Added: exm.set_citc_source() to specify which workspace to use when
      using XManager on Colab
  • etree:
    • Added is_leaf kwarg to .map and .parallel_map
  • enp:
    • Add ArraySpec support for flax.linen.summary.