Supported versions¶
pybFoam is tested in CI against the following combinations. Versions outside this matrix may work but are not exercised on every push.
OpenFOAM × Python¶
OpenFOAM |
Python |
Notes |
|---|---|---|
2312 |
3.11 |
Minimum supported OpenFOAM API. |
2406 |
3.11 |
|
2412 |
3.11 |
|
2506 |
3.11 |
Also used for the pre-commit and |
2512 |
3.11 |
Latest tested. |
Source: .github/workflows/ci.yaml (matrix.openfoam-version).
Python¶
The pyproject.toml declares requires-python = ">=3.9" and ships
classifiers for 3.9, 3.10, 3.11, and 3.12. CI currently
exercises only 3.11 — other Python versions in that range should work but
are untested.
Build-time requirements¶
CMake 3.18 or higher
C++17 compiler (GCC ≥ 9 or Clang ≥ 9)
nanobind ≥ 1.8.0 (fetched via scikit-build-core)
scikit-build-core ≥ 0.4.3
Runtime dependencies¶
From pyproject.toml:
dependencies = [
"numpy>=1.20",
"nanobind>=1.8.0",
"pydantic",
"pyyaml",
]
Optional dependency groups: dev, docs, benchmark, all.