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.
  • Performance for performance improvements.

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

Unreleased

Added

Changed

Deprecated

Removed

Fixed

0.6.1 - 2025-12-28

Added

  • Support for null-space computation via Householder QR in the GenericLinearAlgebra extension (#132).
  • New truncated-eigensolver variants: eig_trunc_no_error and eigh_trunc_no_error (#117).
  • New truncated-singular value variant: svd_trunc_no_error to improve GPU synchronization and AD support (#116).
  • AD: ChainRules support for svd_vals, eig_vals, eigh_vals, and diagonal (#107).

Changed

  • Improved GPU compatibility for some wrapper arrays (#100).
  • Test infrastructure migrated to a common TestSuite to reduce duplication (#119, #130, #131, #127, #125, #123, #124).

Deprecated

Removed

Fixed

  • ishermitian now correctly handles all-zero matrices (#121).

0.6.0 - 2025-11-14

Added

  • New project_isometric function for projecting matrices onto isometric manifold (#67)
  • New PolarNewton algorithm for polar decomposition (#67)
  • New matrix property functions: ishermitian, isantihermitian, hermitianpart!, hermitianpart, antihermitianpart!, and antihermitianpart (#64)
  • Support for BigFloat via new GenericLinearAlgebra extension (#87)
  • Mooncake reverse-mode AD rules (#85)
  • GPU support for image and null space computations (#82)
  • GPU support for polar decomposition (#83)
  • GPU support for new projection operations (#81)
  • Output truncation error for truncated decompositions (#75)
  • Documentation for truncated decomposition keyword arguments (#71)
  • Default algorithm implementations for GPU wrapper array types (#49)

Changed

  • Made gaugefix! optional (#95)
  • Renamed isisometry to isisometric for consistency with project_isometric (#73)
  • Refactored left_orth, right_orth, left_null and right_null interface (#79)
  • Improved GPU support for SVD operations (#80)
  • Loosened strictness on hermitian checks (#78)
  • Updated pullback tolerances (#92)

Removed

Fixed