Changelog

4.3.0 (2026-06-02)

Bugfixes

  • Fix test_run_workflow test

Miscellaneous

  • Move Snakemake workflow integration test to correct location

Testing and CI/CD

  • Add integration test for failure of mpytest

Features

  • Allow in-place (re-)rendering for mpycopy for quick iterative development of template setups

4.2.0 (2026-06-01)

Bugfixes

  • Correct categories for changelog generation

  • Remove default config path and simplify config file option

Features

  • Add a live plotting object for mean and maximum Courant number as a gauge plot

  • Add target_dir and rule options to CLI of mpyworkflow junit-report utility

4.1.0 (2026-05-29)

Bugfixes

  • Simplify CLI for copyright hook and fix bugs in pre-commit integration

  • Ensure correct data types for mpyidentify and enhance debug log

  • Make sure default fallback version of versioningit passed minimum version check

  • Pass labels to dependabot as list rather than string

  • Make default fallback version PEP 440 konform

Features

  • Create test images for visualization objects

  • Create a color module and add Helmholtz corporate colors

  • Add utility to create GitLab-compatible JUnit test reports from finished workflows

  • Improve robustness of ifndef hook to detect real header files and ignore code includes

  • Replace watchdog in mpywatch with scheduler to be more robust

  • Enable validation of case-level case.yml files via fastjsonschema

  • Enable file list filtering for mpyrpdiff and improve CLI interface

  • Remove depreciated copyrightyear and copyrightheader hooks

  • Store source file path for DictContainer

Documentation

  • Add information on errors raised by jinja template evaluation

  • Remove duplicated line for documentation of mpyrpdiff

  • Improve documentation for pre-commit hooks

Miscellaneous

  • Enable Git LFS for the repository and store png there

  • Skip creation of README during rendering of workflow if it exists

  • Temporarily deactivate validation of keyword section in case.yml files to…

  • Bump snakemake from 9.20.0 to 9.21.0

  • Bump snakemake from 9.5.0 to 9.20.0

  • Extend list of labels for dependabot

4.0.0 (2026-04-22)

Features

  • Extend mpyvisualize slice functionality

Documentation

  • Adjust documents to install package from pypi.org in future

Testing and CI/CD

  • Add integration test for Snakemake workflow requiring an Apptainer and Slurm environment

3.1.3 (2026-04-16)

Documentation

  • Shorten README.md of workflow copier template

  • Eliminate reference to copier for mpycopy and workflow initialization

  • Remove some left-overs for reuse configuration

Miscellaneous

  • Use identify to check if file is binary when updating shell script headers in a workflow

  • Simplify template case detection during initialization of cases in the workflow

3.1.2 (2026-04-07)

Bugfixes

  • Fix Snakemake workflow report creation for non-templated case setups

3.1.1 (2026-04-07)

Bugfixes

  • Fix detection of templated cases in workflow and exclude binary files in case…

3.1.0 (2026-04-02)

Bugfixes

  • Add a fallback version for versioningit

  • Correct slice tool documentation

Features

  • Change default Slurm options in workflow copier template to improve…

  • Simplify copier_template/workflow/scripts/init.py by calling a new…

  • Enable slice tool to process multiple fields based on file name pattern

  • Bump pygments from 2.19.2 to 2.20.0

3.0.6 (2026-03-31)

Documentation

  • Adjust links and metadata for readthedocs and pypi

  • Fix installation instruction in readthedocs configuration

  • Add readthedocs configuration

3.0.5 (2026-03-25)

Bugfixes

  • Several small corrections to workflow copier template and mpyworkflow

3.0.4 (2026-03-24)

Bugfixes

  • Fix bug with mandatory logfile for mpypost for ci pipelines

3.0.3 (2026-03-23)

Documentation

  • Fix some links and metadata based on test publishing in test pypi

3.0.2 (2026-03-23)

Bugfixes

  • Fix epilog display for commands and sub-commands

Documentation

  • Fix several documentation issues obtained from test publishing in test pypi

3.0.1 (2026-03-20)

Bugfixes

  • Read version string either from command line or from metadata

Features

  • Replacing setuptools build backend by more flexible hatchling

  • Fix remote launch, replace jupyter option by config, replace runcmd by cmd and…

  • Convert mpycopy from argparse to Click and tidy up left-overs

Documentation

  • Fix broken category headline

  • Align naming of OpenFOAM Foundation software

  • Shift metadata from CITATION.cff to pyproject.toml and revise README

Testing and CI/CD

  • Reset broken infrastucture branch to main

  • Use versioningit to manage version number dynamically based on git tags

2.12.0 (2026-03-04)

Bugfixes

  • Modify plot style of mpywatch to show mean and deviation

  • Fix config file function for mpydocker and allow YAML and JSON format

  • Fix pyproject.toml for mpywatch command

Features

  • New utility for creating, updating and managing Snakemake workflows for simulation batch processing

  • Convert mpypublish, mpyshrun and mpyrpcmp from argparse to Click CLI interface

  • Convert mpyhooks and mpyrpdiff from argparse to Click CLI interface

2.11.0 (2026-02-23)

Features

  • New tool mpyvisualize to create slices for a field from a VTK file

  • Convert mpypost from argparse to Click CLI interface

  • Convert mpytest from argparse to Click CLI interface

Documentation

  • Adjust include for cli information on landing page

Testing and CI/CD

  • Move test for mpypost into cli test module

  • Correct changelog categories in merge request template

  • Fix copyright year for ruff linter

2.10.1 (2026-02-16)

Bugfixes

  • mpytest: Fix argument types for CLI

  • Use get_current_context instead of context decorator in mpyfuzzy

  • Add mpywatch to toctree for listing in navbar

  • Fix categories in changelog

2.10.0 (2026-02-09)

Bugfixes

  • Increase loglevel for mpydocker integration tests

  • Increase shared memory for docker images for inter-process communication

Features

  • Allow loading of incomplete data files, e.g., produced by volFieldValues functionObject

  • Add function for retrieving project urls from project metadata

  • Change API for mpyfuzzy utility from argparse to click

Documentation

  • mpydocker: Improve documentation w.r.t. mounting volumes

  • Improve information on how to run integration tests with pytest and tox

2.9.0 (2026-01-23)

Bugfixes

  • Allow removing sandboxed apptainer images without root privileges and improve build error message.

  • Fix --quiet for mpycopy and stop using Worker which is marked as deprecated by copier

Features

  • New utility to monitor progress and real-time plotting for simulations

Documentation

  • Fix documentation on customize apptainer container

2.8.0 (2026-01-21)

Bugfixes

  • Fix wrong argument passed to keywords hook

  • Fix package version determination for Click

Features

  • Add new zigzag detection post-processing functionality

Documentation

  • Add documentation for zigzag (oscillation) calculation with mpypost

  • Add a hint how to determine the name of a running container for mpydocker

2.7.0 (2026-01-15)

Features

  • Add apptainer runtime, integration tests, and Click CLI interface for mpydocker

2.6.2 (2026-01-13)

Bugfixes

  • Dirty fix of order of positional arguments for depreciated ‘copyright-header’ hook.

2.6.1 (2026-01-13)

Bugfixes

  • Fix wrong argument name in copyright-header hook interface

2.6.0 (2026-01-09)

Bugfixes

  • Catch exception for build error of custom image

  • Allow launching of existing base image in case of –no-build

  • Remove wrong show_default for click.argument

  • Add missing help text to input option for mpyidentify command

Features

  • Implement decorator for logging and input/output and adopt mpyidentify to click

  • Update numpy requirement from <2.4.0,>=1.21.5 to >=1.21.5,<2.5.0

Testing and CI/CD

  • Add new integration test environments for tox

2.5.0 (2025-12-18)

Features

  • Add possibility to specify a license model for simulation software

  • Add a new lexer for OpenFOAM Foundation software dictionaries

  • Bump matplotlib from 3.10.7 to 3.10.8

Testing and CI/CD

  • Simplify merge request default template

2.4.0 (2025-12-08)

Documentation

  • Enhance documentation for each script and use readthedocs template

2.3.0 (2025-12-02)

Bugfixes

  • Make sure that extra_args for mpydocker are splitted correctly when added to docker command

Features

  • Create a class structure for mpydocker and allow running environment checks on a remote machine

2.2.0 (2025-11-27)

Bugfixes

  • Fixing function annotations and pass all logging arguments to configure function.

Features

  • Use run_serial_on_files function for all hooks

  • Add new option –types and –print to identify files in a repository and use with xargs

  • Add new PostParser for subparsers in cli/post.py module

  • New hook to automatically generate copyright headers for source code and configuration files

  • New function to filter file list by tags (required mainly for hooks)

  • Add a new tool to generate a diff report between two repositories based on git diff.

2.1.3 (2025-11-04)

Bugfixes

  • Remove dublicated license file from repository root (see Licenses folder instead)

  • Remove left-over print statement

  • Improve error message for YAML and JSON reading in multiphasepy.io

Features

  • Restructure hooks and add two functions to sort lists and dictionaries

Documentation

  • mpydocker: Fix warning about deprecated --site option

  • Use SPDX conformal license headers in source files

Testing and CI/CD

  • Enable sorting of imports using ruff in the pre-commit configuration.

2.1.2 (2025-10-17)

Bugfixes

  • Fix issue with new –image-suffix argument instead of –suffix

  • Remove jsonargparse dependency

2.1.1 (2025-10-17)

Bugfixes

  • Adjust setuptools to detect sub-modules

2.1.0 (2025-10-17)

Features

  • Add a new auxiliary module for general purpose functions

  • Remove jsonargparse for a more consistent command line interface

  • Implement a detection of most of the files in OpenFOAM Foundation software based on identify

  • Bump matplotlib from 3.10.6 to 3.10.7

  • Separate scripts into individual files and put them in cli directory.

  • Bump pyyaml from 6.0.2 to 6.0.3

2.0.0 (2025-09-19)

Features

  • Remove FoamExtCase class in favor of extending the BaseCase class

  • Bump matplotlib from 3.10.3 to 3.10.6

1.10.0 (2025-08-12)

Bugfixes

  • Strip points from log file name in case no prefix is given

Miscellaneous

  • Minimum version of Snakemake set to 9.5.0

1.9.0 (2025-07-08)

Bugfixes

  • Define pre-commit as development dependency

Features

  • Added function for checking whether the installed version of multiphasepy…

  • Use identify to detect file types and extend identify to detect OpenFOAM Foundation files

  • Generalize logging options and use logging module for mpyshrun and mpytest

  • Create a package specific logger and add logfile option

1.8.1 (2025-07-01)

Bugfixes

  • Fix wrong detection of positional arguments for mpyshrun

  • Allow more flexibility for ifndef and define statements according to OpenFOAM release

Features

  • Introduce shorthand command line arguments for mpyshrun to match runApplication

  • Update numpy requirement from <2.3.0,>=1.21.5 to >=1.21.5,<2.4.0

  • Bump pyyaml from 6.0.1 to 6.0.2

1.8.0 (2025-05-27)

Features

  • mpycollect: Add --test option for generating a workflow.yml that only…

1.7.3 (2025-05-26)

Bugfixes

  • Make sure that goodness from fuzzy logic can reach 1 for perfect agreement

1.7.2 (2025-05-22)

Documentation

  • Add hints on how-to install additional packages for jupyter notebooks in the container

Features

  • Eliminate need for Allclean script for a simulation case to be considered valid

  • Create a own module for exeptions for better structure

1.7.1 (2025-05-16)

Bugfixes

  • Add missing paramiko package for docker-py and improve error management

  • Fix a wrong argument type for progress bar in mpydocker

  • Add new function to read literals (str with whitespaces) from OpenFOAM dictionaries

1.7.0 (2025-05-12)

Features

  • Add new utility mpycollect to obtain all cases from a directory for Snakemake workflow

  • Bump matplotlib from 3.10.1 to 3.10.3

Miscellaneous

  • Reduce number of categories for changelog generation

Testing and CI/CD

  • Remove tests folder from coverage report

1.6.4 (2025-04-22)

Bugfixes

  • Downgrade to last Snakemake version that worked w.r.t. IncompleteFilesException

1.6.3 (2025-04-22)

Bugfixes

  • Make ORCID for authors in CITATION.cff optional

  • Define a default logger named ‘multiphasepy’ to avoid conflicts

  • Remove obsolete print statement from pull function

Testing and CI/CD

  • Disable spellchecking for CHANGELOG.md

1.6.2 (2025-04-17)

Bugfixes

  • Fix the missing message for ImageNotFound error in mpydocker

1.6.1 (2025-04-17)

Bugfixes

  • Bumping jsonargparse due to a bug

1.6.0 (2025-04-17)

Bugfixes

  • Remove prefix from commit message for dependabot

  • Entry for ignored versions for dependabot should be lists

Documentation

  • Fix order of authors to alphabetical

Features

  • New case parameter container and faster keyword check

  • Update numpy requirement from <2.1.0,>=1.21.5 to >=1.21.5,<2.3.0

  • Bump pygments from 2.18.0 to 2.19.1

  • Bump matplotlib from 3.9.1 to 3.10.1

  • Update docker python sdk dependency to 7.1.0

  • Prefer to use pathlib and Path objects instead of os.path

  • Create a generic BaseCase class and add specific case classes for StarCCM+ and Fluent

1.5.0 (2025-03-19)

Bugfixes

  • Optional repository name for mpyrpcmp as additional command line argument

Documentation

  • Improve description of mpycopy script

Features

  • Post: add function for standard deviation, min and max

  • Add FFT function for Fourier transforming of signals

1.4.8 (2025-02-13)

Bugfixes

  • Only fix copyright date if hook fails

1.4.7 (2025-02-12)

Bugfixes

  • Allow for newer Snakemake versions again after upstream fix…

1.4.6 (2025-02-05)

Features

  • Add auto-fixing for copyright year issues to hook

Testing and CI/CD

  • Add script for testing CFD code functionality

1.4.5 (2025-01-15)

Bugfixes

  • Catch exception that case template features a caseParamaterTable.ecsv but not case.yml(.jinja)

Features

  • Simplify code for reading metadata for a extended OpenFOAM case

1.4.4 (2025-01-10)

Features

  • Refactored handling of template cases

1.4.3 (2024-12-10)

Bugfixes

  • Fix formating of debug message for uid and gid

  • Remove backslash from repository for docker pull in case no namespace is given

  • Skip list comprehension for mounted volumes in case no volumes are specified

  • mpydocker: Password free sudo access for user in docker image and pass…

  • mpydocker: If host uid and gid are lower than 1000 use default user in ubuntu…

Deployment

  • Remove cloning of scikit-fuzzy library, and replace by pypi package

1.4.2 (2024-11-29)

Bugfixes

  • Allow optional keys for referencePublication in codemeta.json for Rodare publishing

1.4.1 (2024-11-05)

Bugfixes

  • Enforce utf-8 encoding for reading data files into data container

Testing and CI/CD

  • Drop slow megalinter for static code analysis and replace by fast pre-commit hooks

1.4.0 (2024-10-23)

Testing and CI/CD

  • Use tox framework to execute unit tests for various python versions

Documentation

  • Correct installation instructions

Features

  • Replace internal data handling with data containers from Astropy package

1.3.1 (2024-10-10)

Bugfixes

  • Fix mpycopy script arguments

1.3.0 (2024-10-09)

Features

  • Added new FoamTemplateCase class

Bugfix

  • Clarify error message on invalid copyright headers

1.2.0 (2024-10-02)

Testing and CI/CD

  • Add pre-commit hook to sort cspell dictionary file

Features

  • Introduce git hooks and pre-commit configuration for code style checks

1.1.3 (2024-09-26)

Documentation

  • Suggest installation of multiphasepy in a Python virtual environment

1.1.2 (2024-09-24)

Bugfixes

  • Restrict configuration for logging to this package and avoid configuring root logger

Documentation

  • Remove dangerous hint for deadsnake repository for older python versions

Deployment

  • Remove some minor left-overs for Conda packaging

1.1.1 (2024-09-17)

Bugfixes

  • Raise required python version for Snakemake and mpydocker

Deployment

  • Add an argument to mpypublish to specify package version number directly,…

1.1.0 (2024-09-17)

Bugfixes

  • Fix regular expression for changelog generation

Testing and CI/CD

  • Fix remaining wrong path to ci include files in infrastructure project

  • Adjust path for ci includes due to renaming in infrastructure project

Miscellaneous

  • Update Snakemake version to >= 8.19.3

1.0.1 (2024-08-16)

Testing and CI/CD

  • Simplify tag pattern for release management

  • Check for too large files and tailing whitespaces in pre-commit hook

  • Ignore rules directory for static code checks

Features

  • Add script to update a code publication in Rodare

Deployment

  • Remove all conda related information and implementation due to unclear license

  • Automated release pipeline with deployment for Rodare

1.0.0 (2024-08-15)

Testing and CI/CD

  • Simplify tag pattern for release management

  • Check for too large files and tailing whitespaces in pre-commit hook

  • Ignore rules directory for static code checks

Features

  • Add script to update a code publication in Rodare

0.12.0 (2024-08-02)

Bugfixes

  • Move validation job for citation.cff to infrastructure

Documentation

  • Enhance documentation for mpyshrun to avoid ambiguous command line arguments

Features

  • Add function to calculate derivatives for data files to mpypost

  • Add configuration for git hooks to be enabled with pre-commit

  • Function to read and write dictionaries from OpenFOAM Foundation software

  • Add CITATION.cff for releases in Rodare

0.11.1 (2024-07-24)

Bugfixes

  • Add missing categories to changelog configuration

Miscellaneous

  • Use –foo and -f style for arguments of all scripts

0.11.0 (2024-07-19)

Testing and CI/CD

  • Add installation test for ubuntu 22.04 and 24.04

Features

  • New utility for post-processing of simulation data

Deployment

  • Adjust dockerfiles for installation test to install for user instead of global

0.10.3 (2024-07-16)

Bugfixes

  • The default suffix argument value has to be a empty list of strings

0.10.2 (2024-07-16)

Bugfixes

  • Calculate a defined value for Pearson coefficient in case of flat profile

0.10.1 (2024-07-16)

Bugfixes

  • Fix wrong argument type for suffix command line option

Documentation

  • Fix spelling mistakes and exclude changelog from static code checks

  • Add installation instructions for Ubuntu 24.04 and older Ubuntu systems

Miscellaneous

  • Re-factoring handling of arguments for scripts

0.10.0 (2024-07-13)

Documentation

  • Fix typo in script name

Miscellaneous

  • Add conda build dir to ignore list

Deployment

  • Update dependencies for conda

  • Install custom branch for scikit-fuzzy to make it compatible with python 3.12

  • Generate changelog and release notes

Testing and CI/CD

  • Use echo instead of ls to be more general for testing mpyshrun

Features

  • Implement reader for probe files produced by OpenFOAM Foundation software

  • New tool to run shell commands on an OpenFOAM case named mpyshrun