Skip to content

v1.0.1

Choose a tag to compare

@basnijholt basnijholt released this 04 Dec 22:35
· 13 commits to main since this release
a66205c

PFAPACK v1.0.1

(v1.0.0 wasn't properly tested and resulted in broken MacOS and Windows builds, this is fixed in version 1.0.1)

This is a major release that modernizes the build system and package structure while maintaining the same functionality. The main changes are focused on improving the build process, testing, and maintainability.

Major Changes

  • Switched to meson-python for building the C and Fortran code
  • Added support for Python 3.9-3.13
  • Included the original source code from Michael Wimmer's website for better transparency and reproducibility
  • Modernized the package structure to use pyproject.toml instead of setup.py

Build System Improvements

  • Added proper wheel building using pypa/cibuildwheel
  • Improved OpenBLAS detection and linking
  • Added support for different BLAS implementations:
    • OpenBLAS on Linux
    • Accelerate framework on macOS
    • OpenBLAS on Windows (via MSYS2)

CI/CD Improvements

  • Added comprehensive GitHub Actions workflows for:
    • Building wheels for all supported platforms
    • Running tests across multiple Python versions
    • Code quality checks using pre-commit
  • Added Mend Renovate bot for automated dependency updates
  • Improved test coverage reporting

Development Tools

  • Switched to Ruff for linting and formatting
  • Added pre-commit hooks for code quality
  • Improved development documentation

Requirements

  • Python >=3.9
  • C and Fortran compilers
  • BLAS/LAPACK implementation

Breaking Changes

  • Dropped support for Python 3.8 and below
  • Removed support for 32-bit builds

The package is now available on PyPI and can be installed with:

pip install pfapack