Skip to main content

Aleph - 0.40.0

๐Ÿš€ Highlightsโ€‹

  • Aleph editor support now provides better assistance for function and method calls, including hover details, signature information and clearer call-related warnings.
  • Sparse eigensolver bindings now expose a cleaner options and status API through EigsOptions, EigsStatus and the shared EigsBase binding.

โœจ New Featuresโ€‹

  • Sparse eigensolver bindings now expose EigsOptions as a first-class Aleph type.
  • Iterative solver objects now provide grouped get_options() and get_status() accessors through a shared EigsBase binding.
  • Sparse eigensolver option validation now treats krylov_dimension = 0 as "use the solver default" while still rejecting negative values.
  • Aleph operator_function(...) now defaults to an implicit Krylov dimension based on the input operator dimension when no explicit krylov_dimension is provided.
  • Aleph editor support now warns about unknown function or method calls and calls with the wrong number of arguments.
  • Hovering over a function or method call now shows its signature and documentation when available.
  • Note: method checks are not type-aware yet, so some method warnings or hover results may still be broader than expected.

๐Ÿ› Fixesโ€‹

  • Improved Aleph formatting for multiline list and map literals, block argument commas, reference bindings, include module paths, numeric suffixes and unary operator spacing.
  • Fixed Aleph to_throw_message expectations so they correctly match messages from Aleph-thrown exceptions such as RuntimeError.
  • Failed to_throw_message expectations now report the actual thrown message.
  • Fixed Aleph LSP semantic highlighting for indented nested test_section declarations.

โš ๏ธ Breaking Changesโ€‹

  • Sparse eigensolver status inspection in Aleph has been simplified: EigsStatus.status now returns a readable string such as "successful" instead of the previous enum-style helper surface.
  • The sparse eigensolver base binding is now the non-generic EigsBase type.
  • EigsBase now exposes grouped EigsOptions and EigsStatus objects instead of many per-field getters and setters.

๐Ÿงช Migration Notesโ€‹

  • If you were comparing eigensolver status values against the old enum helper objects, switch those checks to string comparisons using EigsStatus.status.
  • If you were reading solver metadata through the old EigsBase<...> field-style accessors, migrate to get_options() and get_status() and inspect the returned EigsOptions and EigsStatus objects.