diff --git a/.github/workflows/publish_wheels.yml b/.github/workflows/publish_wheels.yml index f2476a0..ed9a3ac 100644 --- a/.github/workflows/publish_wheels.yml +++ b/.github/workflows/publish_wheels.yml @@ -67,13 +67,16 @@ jobs: - name: Build wheels env: - CIBW_BUILD: "cp311-* cp312-* cp313-*" + CIBW_BUILD: "cp311-* cp312-* cp313-* cp314-*" CIBW_BUILD_VERBOSITY: "1" CIBW_SKIP: "*-musllinux_*" CIBW_ARCHS_LINUX: "x86_64" CIBW_ARCHS_MACOS: ${{ matrix.os == 'macos-15-intel' && 'x86_64' || matrix.os == 'macos-14' && 'arm64' || 'x86_64 arm64' }} CIBW_ARCHS_WINDOWS: "AMD64" CIBW_BEFORE_ALL_LINUX: "yum -y install gcc-gfortran" + CIBW_TEST_REQUIRES: "pytest" + CIBW_TEST_COMMAND: "pytest {project}/source/bind/python/tests -m smoke" + CIBW_TEST_ENVIRONMENT: "CEA_DATA_DIR={project}/data" CIBW_ENVIRONMENT_MACOS: ${{ matrix.os == 'macos-14' && 'FC=gfortran-14 MACOSX_DEPLOYMENT_TARGET=14.0' || 'FC=gfortran-14 MACOSX_DEPLOYMENT_TARGET=15.0' }} CIBW_ENVIRONMENT_WINDOWS: "FC=ifx CC=icx CXX=icx" CMAKE_ARGS: "-DCEA_BUILD_TESTING=OFF" diff --git a/CHANGELOG.md b/CHANGELOG.md index a4d7440..f3153a6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,14 @@ All notable user-visible changes to this project are documented here. ## [Unreleased] +### Changed + +### Fixed + +### Added + +## [3.1.1] - 2026-03-18 + ### Changed - Python `Mixture` input validation now accepts `str` and `cea.Reactant` entries (including mixed lists) and no longer accepts raw `bytes` species names (`#53`). - Added SI-focused custom-reactant handling at the Python API layer: `Reactant.temperature` is specified in K and `Reactant.enthalpy` in J/kg (converted internally for core input) (`#53`). @@ -21,9 +29,7 @@ All notable user-visible changes to this project are documented here. ### Added - Added C and Python support for custom reactant data (including species not present in `thermo.lib`) in parity with the main interface workflow used by RP-1311 Example 5 (`#53`). -- Added new C-API constructors for generating product mixtures from input-reactant payloads: - - `cea_mixture_create_products_from_input_reactants` (`#53`). - - `cea_mixture_create_products_from_input_reactants_w_ions` (`#53`). +- Added new C-API constructors for generating product mixtures from input-reactant payloads: `cea_mixture_create_products_from_input_reactants` and `cea_mixture_create_products_from_input_reactants_w_ions` (`#53`). - Added a shared bindc parser path for `cea_reactant_input -> ReactantInput` conversion to reduce duplicated C-binding logic (`#53`). - Added Python `cea.Reactant` and mixed-input `Mixture(...)` support in the Cython binding (`#53`). - Added shock regression coverage for transport output population across equilibrium/frozen branches and for singular-recovery reflected-shock cases. diff --git a/CMakeLists.txt b/CMakeLists.txt index 570bb1e..e736458 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") set(CMAKE_DISABLE_SOURCE_CHANGES ON) set(CMAKE_DISABLE_IN_SOURCE_BUILD ON) project(CEA - VERSION 3.1.0 + VERSION 3.1.1 LANGUAGES Fortran ) diff --git a/docs/source/conf.py b/docs/source/conf.py index 25e6237..1d60b15 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -22,7 +22,7 @@ copyright = '' author = 'Mark Leader' version = '3.1' -release = '3.1.0' +release = '3.1.1' # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/source/bind/python/cea/__init__.py b/source/bind/python/cea/__init__.py index 7cee8fc..aca8492 100644 --- a/source/bind/python/cea/__init__.py +++ b/source/bind/python/cea/__init__.py @@ -1,4 +1,4 @@ -__version__ = "3.1.0" +__version__ = "3.1.1" # initialize libcea, loading in the default data files from cea.lib.libcea import init as libcea_init