Skip to content

v3.4.0

Latest
Compare
Choose a tag to compare
@dgasmith dgasmith released this 26 Sep 13:40
· 1 commit to main since this release
c15aec2

3.4.0 / 2024-09-26

NumPy has been removed from opt_einsum as a dependency allowing for more flexible installs. Type hints have been added to the code base as well as an overhaul of the documentation to MkDocs here: https://dgasmith.github.io/opt_einsum/

New Features

  • #160 Migrates docs to MkDocs Material and GitHub pages hosting.
  • #161 Adds Python type annotations to the code base.
  • #204 Removes NumPy as a hard dependency.

Enhancements

  • #154 Prevents an infinite recursion error when the memory_limit was set very low for the dp algorithm.
  • #155 Adds flake8 spell check to the doc strings
  • #159 Migrates to GitHub actions for CI.
  • #174 Prevents double contracts of floats in dynamic paths.
  • #196 Allows backend=None which is equivalent to backend='auto'
  • #208 Switches to ConfigParser insetad of SafeConfigParser for Python 3.12 compatability.
  • #228 backend='jaxlib' is now an alias for the jax library
  • #237 Switches to ruff for formatting and linting.
  • #238 Removes numpy-specific keyword args from being explicitly defined in contract and uses **kwargs instead.

Bug Fixes

  • #195 Fixes a bug where dp would not work for scalar-only contractions.
  • #200 Fixes a bug where parse_einsum_input would not correctly respect shape-only contractions.
  • #222 Fixes an erorr in parse_einsum_input where an output subscript specified multiple times was not correctly caught.
  • #229 Fixes a bug where empty contraction lists in PathInfo would cause an error.