You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Added maintained FFTPACK and MINPACK examples built from the upstream
fortran-lang projects. Their build scripts, user guides, and numerical tests
cover all 31 FFTPACK and 22 MINPACK public procedures.
Added Python-owned, read-only NumPy snapshots for supported public Fortran
parameter arrays, including MINPACK's dpmpar constants.
Added declaration-expression support for richer arithmetic, comparisons,
conditionals, array inquiries, and local, imported, or standalone
specification functions, including native-dependent result extents.
Added exact NumPy Boolean-array conversion for compiler-measured 8-, 16-,
32-, and 64-bit Fortran logical kinds, with canonical writeback.
Added WrapperBuildResult.import_module() to load a generated extension
explicitly without changing sys.path.
Changed
Moved documentation and maintainer-tool tests to tests/docs/ and tests/tools/, removed the generic tests/shared/ bucket, and mirrored
internal tests by production package with narrower support helpers; removed
recursive layout-policing tests that froze maintainer organization, retaining
exceptional release safety under tests/workflows/. The maintainer-tool and
workflow-safety suites, blocking static analysis, and focused documentation
smoke checks now also run through the repository's tracked pre-push hook,
together with one compiled scalar-wrapper smoke test, for earlier local
feedback while remaining enforced by GitHub Actions.
Simplified the documented DGESV validation and the LAPACK test suite to use
explicit NumPy Fortran-order copies, with documented numerical-test helper
conventions.
Aligned the documented MINPACK hybrd1 callback example with its runnable
test, made it verify callback invocation, and made its test problems
self-contained; FFTPACK workspace initializer tests now validate a paired
transform against NumPy or SciPy.
Renamed the developer-facing wrapper generation package from prik.wrapper_codegen to prik.codegen; the old import path was removed.
Expanded public interface resolution so implemented unnamed interfaces and
public generics can be wrapped without exposing private implementation
procedures.
Expanded the Real Libraries CI lane to build and test BLAS, LAPACK, FFTPACK,
and MINPACK, with cached native BLAS and LAPACK builds where available.
Made performance comparisons faster and less order-sensitive with balanced
A/B/B/A runtime measurements, merged samples, smaller worker budgets, and
four measured clean builds after warm-up.
Refreshed the README and website around the canonical PRIK — Python Runtime Interop Kit identity, with a concise FAQ, a fair
PRIK-versus-f2py guide, clearer array guidance, and searchable real-library
examples, including a four-library capability and validation summary, a
concise statement of current limitations, and a derived-type inheritance
walkthrough.
Hardened preprocessing, compiler-derived type probes, semantic policy
completion, and multi-source build reporting so unsupported contracts fail
earlier with clearer diagnostics.
Fixed
Preserved authoritative public interface signatures when linked legacy
implementations use different internal storage declarations, including
FFTPACK's zfftf complex-array interface.
Corrected SciPy reference inputs for the LAPACK dstemr and dstebz tests
and strengthened BLAS and LAPACK routine validation with independent
mathematical expectations.