Published September 3, 2025
| Version v1.2.0
Software
Open
foamlib: A modern Python package for working with OpenFOAM
Authors/Creators
Description
🚀 foamlib v1.2.0
This release brings improved parsing, better progress tracking, and a modernized codebase.
Highlights
- Log file monitoring to track OpenFOAM case progress even when run scripts are used.
- Smarter parsing with clearer errors (foamlib now raises
ValueErroron parsing failures). - Support for files with multiple equivalent directives at the same level (e.g.
#includes) viamulticollections. - Dropped support for Python 3.7 (Python 3.8+ required).
What's Changed
- Add log file monitoring for progress tracking in OpenFOAM cases by @Copilot in https://github.com/gerlero/foamlib/pull/440
- Add MultiMapping and MutableMultiMapping ABCs by @gerlero in https://github.com/gerlero/foamlib/pull/442
- Add multidict dependency by @gerlero in https://github.com/gerlero/foamlib/pull/443
- Add comprehensive tests for MultiMapping/MutableMultiMapping classes to verify multidict compatibility by @Copilot in https://github.com/gerlero/foamlib/pull/448
- Drop multidict requirement and remove unused MultiMapping utility classes by @Copilot in https://github.com/gerlero/foamlib/pull/451
- Use MultiDicts where necessary to allow multiple equivalent keywords by @gerlero in https://github.com/gerlero/foamlib/pull/455
- Remove unneeded typing ignores by @gerlero in https://github.com/gerlero/foamlib/pull/456
- Reduce code duplication in _parsing.Parsed class by extracting helper methods by @Copilot in https://github.com/gerlero/foamlib/pull/458
- Reduce code duplication in FoamFile: setitem and add methods by @Copilot in https://github.com/gerlero/foamlib/pull/457
- Refactor Parsed.delitem to use MutableMultiMapping default and centralize removal logic by @Copilot in https://github.com/gerlero/foamlib/pull/459
- Drop support for Python 3.7 by @gerlero in https://github.com/gerlero/foamlib/pull/460
- Remove ignore for Ruff rule UP007 and fix all occurrences by @Copilot in https://github.com/gerlero/foamlib/pull/461
- Require mypy 1.16 by @gerlero in https://github.com/gerlero/foamlib/pull/464
- Introduce Python 3.8+ constructs throughout codebase by @Copilot in https://github.com/gerlero/foamlib/pull/462
- Re-enable extra Ruff rules by @gerlero in https://github.com/gerlero/foamlib/pull/465
- Re-enable unused-ignore mypy error code by @gerlero in https://github.com/gerlero/foamlib/pull/466
- Add @override decorators to resolve mypy errors by @Copilot in https://github.com/gerlero/foamlib/pull/468
- Enable mypy explicit-override optional check by @gerlero in https://github.com/gerlero/foamlib/pull/467
- Add pragma: no cover to TYPE_CHECKING-gated imports by @gerlero in https://github.com/gerlero/foamlib/pull/469
- Update pyproject.toml by @gerlero in https://github.com/gerlero/foamlib/pull/470
- Switch to uv build backend by @gerlero in https://github.com/gerlero/foamlib/pull/471
- Bump multicollections to 0.3 by @gerlero in https://github.com/gerlero/foamlib/pull/473
- Bump multicollections to 0.4 by @gerlero in https://github.com/gerlero/foamlib/pull/474
- Improve parsing by @gerlero in https://github.com/gerlero/foamlib/pull/475
- Add license and license-files to pyproject.toml by @gerlero in https://github.com/gerlero/foamlib/pull/476
- Update Parsed.as_dict implementation to return MultiDicts where needed by @gerlero in https://github.com/gerlero/foamlib/pull/480
- Simplify parsing logic by @gerlero in https://github.com/gerlero/foamlib/pull/481
- Refactor Parsed object creation by @gerlero in https://github.com/gerlero/foamlib/pull/482
- Remove unused function by @gerlero in https://github.com/gerlero/foamlib/pull/483
- Update parsing by @gerlero in https://github.com/gerlero/foamlib/pull/484
- Rearrange documentation pages by @gerlero in https://github.com/gerlero/foamlib/pull/486
- Raise ValueError on parsing failures by @gerlero in https://github.com/gerlero/foamlib/pull/485
- Add tests for ValueError-raising parsing errors by @Copilot in https://github.com/gerlero/foamlib/pull/487
- Bump multicollections requirement by @gerlero in https://github.com/gerlero/foamlib/pull/488
Full Changelog: https://github.com/gerlero/foamlib/compare/v1.1.6...v1.2.0
Notes
Files
gerlero/foamlib-v1.2.0.zip
Files
(903.9 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:a9b05b3fb42cce4e96051aced23913ad
|
903.9 kB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/gerlero/foamlib/tree/v1.2.0 (URL)
Software
- Repository URL
- https://github.com/gerlero/foamlib