What's Changed
New Features
- Results handler implementation: @jtwhite79 (#570)
- Runstor implementation for offline run manager: @jtwhite79 (#635)
- Introduced PyPestWorker class: @jtwhite79 (#593), @rhugman (#614)
- Emulators module added: @rhugman (#603)
Changes and improvements
- Supporting duplicates in
add_observations()calls: @briochh (#590) - Supporting '\s+' in mfile_sep option in
add_parameters(): @briochh (#596) - Vertex grid pilotpoint par setup improves for vertex grids: @rhugman, @briochh (#594, #623)
- More flexibility in
add_py_function(): @nicohiggs (#585) - Added ensemble draw from existing method
draw_new_ensemble(): @jtwhite79, (props @aymanalz; #630) - Method to add pars as
obs add_pars_as_obs(): @jtwhite79 (#607) - Defaulting to dense ensemble write for large dimensions: @briochh (#584)
- Tolerance for pestpp_options with spaces (v2): @p-ortega (#608)
- Fixing issues with inconsistent ensemble draws: @jtwhite79 (#618)
- Improvements in
prep_for_gpr()methods: @kmarkovich (#598)
General maintenance, improves and testing:
- Fix typos by @mwtoews in #562
- passing mfile_skip through to format eval by @briochh in #565
- Propagating headers in array files to model input files by @briochh in #566
- casting get_xy arg to tuple regardless -- think it is safe by @briochh in #588
- hacking a fix for pstfrom tests in class for py3.13 by @briochh in #599
- quick fix for pyshp 3.0 changes by @briochh in #610
- allow bindir to be a Path for get_pestpp(.run_main) function by @martinvonk in #613
- Hotfix testexe by @briochh in #619
- Change the default behavior of the _try_copy_dir function in os_utils regarding symlinks by @smagne-brgm in #625
- Feat easiertesting by @rhugman in #626
Additional info
- tested against python versions 3.10 -> 3.14, xplatform (windows, ubuntu, macOS)
- Now testing against bleeding edge pestpp in nightly builds (#637)
- OpenBLAS currently pinned pre 0.3.30 due to issues within LinAlg execution on some systems (incl. deadlock on linux)
Full Changelog: 1.3.8...1.4.0