Skip to content

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Guidelines for updating this changelog

When making changes to this project, please update the "Unreleased" section with your changes under the appropriate category:

  • Added for new features.

  • Changed for changes in existing functionality.

  • Deprecated for soon-to-be removed features.

  • Removed for now removed features.

  • Fixed for any bug fixes.

When releasing a new version, move the "Unreleased" changes to a new version section with the release date.

Unreleased

Added

Changed

  • environments now follows a single positional contract for every state and operator kind: environments(below, operator, above, alg), where alg is the environment algorithm (slot 4). The operator form requires an explicit above. Auxiliary inputs are keyword-only: leftstart/rightstart for finite and window environments, and lenvs/renvs for window and quasiparticle environments. The two-argument form environments(below, above) (with two states) is reserved for the operator-free overlap environments. There is no two-argument environments(below, operator) shorthand: a two-argument call is always the overlap, since the second argument cannot be disambiguated between a ket and an operator (undecidable for density matrices, where states and operators share a representation). (#436)

Deprecated

Removed

Fixed

Performance

0.13.11 - 2026-05-04

Added

  • MultilineMPO space getters (#407)

Changed

  • Refactored time-evolution MPO construction (#422)

  • Updated TensorKitManifolds compat to 0.8 (#421)

  • Updated MatrixAlgebraKit algorithm specification (#418)

  • Preparations for GPU / non-CPU array support (#375, #392)

  • Generalized calc_galerkin to AbstractMPS (#395)

  • Removed explicit call to InfiniteMPS in VUMPS (#396)

  • Generalized regauge! to AbstractVector (#393)

Fixed

  • Various fixes for compatibility with latest TensorKit versions (#416)

  • changebonds inconsistencies (#415)

  • Small fixes for density operators (#409)

  • Tolerance on positivity test (#398)

Performance

  • Benchmarks and AC/AC2 contraction improvements (#345)

0.13.10 - 2026-02-26

Added

  • expectation_value for local MPO tensors (#327)

  • Base.copy for MPS types now performs a deep copy (#387)

Changed

  • entropy can now also be called directly on a spectrum (singular value vector) (#377)

  • Updated compat bounds to remove broken package versions

Fixed

  • Fixed Adapt extension for GPU support (#389)

0.13.9 - 2026-02-03

Added

  • LocalPreferences.toml file to ensure TensorOperations properly precompiles on testing infrastructure

  • GeometryStyle and OperatorStyle traits for dispatching on finite/infinite geometry and operator types (#352, #354)

  • Base.isfinite methods for MPS types (#347)

  • Bose-Hubbard example (#342)

  • WindowMPS example update (#350)

  • Multifusion category compatibility (#297)

Fixed

  • Dynamic tolerances yielded NaN during the initialization stage due to 1 / sqrt(iter) where iter = 0 (#335)

  • InfiniteMPOHamiltonian environments with low bond dimension and high Krylov dimension now are properly clamped (#335)

  • Logical operator precedence in getproperty function (#346)

  • Typo in VUMPSSvdCut (#361)

  • Typo in time formatting for logs (#336)

  • Domain/codomain of MPODerivativeOperator (#370)

  • In-place operations handled more carefully (#337)

  • Orthogonalization algorithms now use correct methods (#373)

Changed

  • The changebonds(state, ::RandExpand) algorithm now no longer has to perform a truncated SVD to obtain the desired spaces, and instead sample the space directly and then generates a random isometry. This should be slightly more performant, but otherwise equivalent (#335)

  • IDMRG refactored to follow the IterativeSolver interface and share code between IDMRG and IDMRG2 (#348)

  • Bumped compatibility for TensorKit 0.16 and MatrixAlgebraKit 0.6 (#365)

  • Removed _left_orth and _right_orth workarounds in favor of new orthogonalization methods

  • Reduced allocation while computing Galerkin error (#366)

  • Updated show methods to reflect new TensorKit printing (#341)

  • More informative errors for finite MPS (#367)

  • Minor documentation and docstring improvements (#363, #372, #371)

Deprecated

Removed

0.13.8 - 2024-10-31

See full history and previous releases on GitHub.