New features
-
Idf$set()andIdfObject$set()can now update field values from their current values using one-sided formulas or functions (#518). -
ParametricJobcan now combine one seed IDF with multiple EPW weather cases using$weathers().$cases(type = "run")reports the actual simulation cases while$cases()keeps the existing parameter-case behavior (#617). -
Store prepared job model snapshots instead of keeping
Idfobjects alive insideEplusJob,EplusGroupJob, andParametricJob, reducing memory use for large simulation sets.ParametricJob$seed(new = ...)can replace the seed model and invalidates existing generated models until they are regenerated (#615). -
Class name matching is now case-insensitive across
IddandIdfclass lookup,$add(), and class-wide$set()inputs (#152). -
save_job()andread_job()can now save and restoreEplusJob,EplusGroupJob, andParametricJobobjects using a JSON manifest validated by the bundled schemate standalone schema validator. Saved manifests include file metadata and checksums for EnergyPlus result files (#505). -
Add support for EnergyPlus v24.2.0 (#603).
Bug fixes
-
Fix macOS installation from mounted EnergyPlus DMG installers that provide a QtIFW
.appbundle instead of a.pkgfile (#620). -
Fix
uninstall_eplus()dispatch so native uninstallers are used when available and portable or manual installs fall back to direct directory removal (#622). -
Fix EnergyPlus IDD downloads from v23.2.0 and portable macOS tarball installation (#601).
-
Delay EnergyPlus installation discovery until needed and allow extra search roots via
locate_eplus(dirs = ...)andoptions(eplusr.eplus_dirs = ...)(#609).
Internal refactor
- Move the
unitspackage from Imports to Suggests and load it only when unit-aware features are used (#466).
Full changelog: v0.16.3...v0.17.0