Skip to content

PRIK 0.5.0

Choose a tag to compare

@saidctb saidctb released this 13 Sep 14:50
· 13 commits to main since this release

PRIK 0.5.0 adds first-class CMake integration and significantly expands native array interoperability.

Highlights

  • Added UsePRIK.cmake and prik_add_module() for integrating PRIK directly into existing CMake projects.
  • Added find_package(PRIK CONFIG REQUIRED) support, including automatic discovery through scikit-build-core's cmake.root entry point.
  • Added prik generate --cmake for generating standalone CMake projects.
  • Added prik doctor cmake to diagnose Python/CMake discovery and conflicting PRIK installations.
  • CMake configuration now uses a lightweight structural plan; full PRIK parsing and code generation happen only during the build when outputs are stale.
  • Added dependency-file tracking for transitive Fortran/C inputs and stable generated-source graphs for incremental builds.
  • Expanded native array handles to support allocatable and pointer arguments, results, module variables, derived-type fields, optional arguments, character arrays, and supported Fortran sections.
  • Improved generated-wrapper build time and contiguous-array call overhead.

Breaking change

The native array-handle ABI is now prik.native_array_backend.v2.

Extensions that exchange PRIK native array handles must be rebuilt.

See the full changelog for all changes and implementation details.