# ChangeLog

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

## [Unreleased]

## [25.5.27] - 2025-05-27
### Added
- Add computing of eigenvectors for symmetric and Hermitian matrices with 2-stage algorithm
- Add invocation of code generator during CMake configuration
- Add support for BLAS implementation in BLIS
- Add comprehensive testing Python script
- Add repetition of individual tests for a single function
- Add style guide for code contributors
- Add CI scripts for testing pull requests and commits

### Fixed
- Fix release tar-ball generator to use proper PkgConfig file name
- Fix generation of Fortran wrappers from C constants
- Fix time stamp type to avoid changes from the code generator
- Fix source code formatting based on the style guide
- Fix robustness of some of testers
- Fix ignoring of intermediate files for Git

## [24.8.7] - 2024-08-07
### Added
- Add an attempt to generate missing precision files if Python present during configuration
- Add generation of pkg-config files during installation
- Add generation of CMake expored configuration during installation
- Add timeout to the basic testing script
- Add SOVERSION to the installed libraries to track API changes
- Add detection of CBLAS and LAPACKE headers and libraries based on CMake's FindBLAS() and FindLAPACK()
- Add description of the CMake installation process with system-level details

### Fixed
- Fix variable pointing to OpenBLAS installation
- Fix name of Python executable when launching code generation
- Fix download link for available releases in documentation
- Fix compatibility of basic testing script with Python 3 versions
- Fix error codes to be negative unlike numerical issues reported as positive integers
- Fix generation of Fortran wrappers

## [23.8.2] - 2023-08-02

### Added
- Add support for OpenBLAS and its exported CMake configuration
- Add PLASMA prefix to remaining config macros

### Removed
- Remove old build system files using Python script for configuration in Makefile

## [22.9.29] - 2022-09-29
### Added
- Add xGBMM() for band matrix multiply
- Add xGESDD() for symmetric/Hermitian divide-and-conquer eigensolver
- Add xSTEVX() for tridiagonal matrix eigensolver based on bisection

### Fixed
- Fix reporting of testers' program name
- Fix build issues without Fortran interface

## [21.8.29] - 2021-08-29
### Added
- Add transpose option to xGETRS() functions
- Add transpose option to xGELS() functions
- Add convenience scripts for C and Fortran examples
- Add Python script for quickly launching tests

### Removed
- Remove Fortran code and comments producing warnings

### Fixed
- Fix wrong pointer in tuning
- Fix division by zero for zero-matrix norm
- Fix error propagation in sequences
- Fix LU factorization for rectangular matrices

## [20.9.20] - 2020-09-20
### Added
- New detection of Apple's Accelerate Framework as BLAS and LAPACK implementations
- New GPU offload option detection of the MAGMA library
- Version reporting in tester

### Removed
- Remove POSIX threads code and now only OpenMP threading support

### Fixed
- Fix support for wider range of CMake versions
- Fix Fortran examples' syntax
