-
Info
-
main changes
- refactor file structure (#257) - split code into separate files using init.py only to provide the package interface
- consistently use of the logging package; remove all usage of print() (#253, #269)
- Split functions for specific OMC commands as separate class OMCSessionCMD (#282) - to be removed in a later version!
- allow to run OMCsession in Docker / WSL (#319, #295, #302, #306)
-
interface changes
- allow to modify default command line options (#349) - ModelicaSystem/commandLineOptions now as list (was a string)
- Make ModelicaSystem.linearize() return all values (#266)
- ModelicaSystem can only be run local using OMCProcessLocal (#309)
- Getter functions of ModelicaSystem now take also a list as input and raise KeyError if a value does not exists (#299)
- Setter functions of ModelicaSystem now take also a dict as input (#314)
- Simulation flags to be provided as dicts (use simargs; simflags is depreciated) (#279)
-
internal details / for developers
- setup pre-commit (#289) - enforce code quality by using codespell, flake8 and mypy
- improve unittest coverage and code quality (#246, #249, ...)
- use specific exceptions for OMCsession* and ModelicaSystem* (#228, #272)
- add / improve docstrings (#257, #337, ...)
- use '_' for private variables and functions (#304)
- use pathlib.Path() for any path handling, preparing for OMCPath (#247, #280, #303, #303, #329)
- definition of class ModelicaSystemCmd to handle simulations (#279)
- Define OMCProcess* classes to handle different definitions (by Port/LOcal/Docker/WSL) (#295, #302, #306)
- lots of rewrites for internal functions (ModelicaSystem/OMCSession) (#265, #271, #270, #281, #287, #295, #301, #316, #311, #314, #340, #341, ...)
-
important bugfixes
-
removed features
New Contributors
- @syntron made their first contribution in #226
- @dependabot[bot] made their first contribution in #222
- @AxelMatstoms made their first contribution in #239
- @ondras12345 made their first contribution in #242
- @Nmichele29 made their first contribution in #285
Full Changelog: v3.6.0...v4.0.0