Version 12 (modified by 4 years ago) ( diff ) | ,
---|
Release Notes for OpenModelica 1.17.0 (Draft)
OpenModelica Compiler (OMC)
The new frontend has been further improved, and is now the default choice for all the OpenModelica tools. The -d=newInst
flag no longer needs to be set in scripts. The old frontend is no longer maintained and will progressively be replaced also for the API interface used by OMEdit. 20 tickets were fixed since the previous 1.16.4 release.
Some issues were fixed in the backend, in particular regarding homotopy()
during initialization. Some improvements to code generation, in particular enhancing the support of the HelmholtzMedia library.
The MSYS environment used on Windows was updated to a more recent version, with several benefits:
- clang is now also available on Windows and used by default instead of gcc for the compilation of the generated C code, providing much faster C compile time on Windows;
- dynamic linking is used instead of static linking, further reducing the overall compilation time on Windows;
- a more recent version of the QT library is used, which solves some issues with the rendering of features in OMEdit.
The Sundials solvers and basic linear algebra library KLU were upgraded to the most recent available versions, with benefits in performance and roubustness at runtime.
Supported versions of Modelica Standard Library (MSL)
OpenModelica now supports both currently maintained versions of the Modelica Standard Library, MSL 3.2.3 and MSL 4.0.0. This means that you can use Modelica libraries that use either version of the MSL, or create new ones that do so. Automatic conversion of existing libraries from MSL 3.2.3 to MSL 4.0.0 is currently not yet available, it is planned for version 1.18.0.
Please note that the synchronous features in MSL 4.0.0 are still not fully supported, so we suggest not to rely on them in this version of the tool. Better support is planned for version 1.18.0.
Graphic Editor OMEdit
Thanks to the upgrade of the employed QT graphics libraries, several issues that plagued the graphical user interface are now resolved.
Replaceable classes continue to have graphical support in OMEdit, even though parameters in redeclared classes cannot yet be modified from the GUI, thus requiring to switch to text mode to do so.
The new front end can also be used for some of the API functions called by OMEdit to render the model diagrams, making the response of the GUI much faster. Please note that both these features are currently optional and needs to be activated by setting Tools | Options | General | Enable replaceable support and Enable new frontend use in the OMC API (faster GUI response). These settings are retained from the previous installation upon version upgrading.
Unsaved code was sometimes lost when switching among different windows in OMEdit, this is no longer happening in this release. Several issues that caused occasional crashes of the GUI were also fixed.
OMEdit now can use both currently maintained versions of the Modelica Standard Library, MSL 3.2.3 and MSL 4.0.0. Version 3.2.3 is loaded by default in the package browser as in previous versions, but it is possible to enable the automatic selection of MSL 3.2.3 and 4.0.0 by going to the Tools | Options | Libraries menu and removing the Modelica 3.2.3 library. In this way OMEdit starts with no Modelica library loaded by default, and then loads the appropriate one automatically when a model or package is loaded, based on its uses()
annotation.
Proper support of the package manager from the GUI, including conversion scripts to upgrade existing libraries from MSL 3.2.3 to MSL 4.0.0, is planned for version 1.18.0.
Overall, 20 bug fixes were made to OMEdit in version 1.17.0, to increase usability of the GUI.
Direct support of macOS discontinued from 1.17.0
Until version 1.16.x, OpenModelica was built on Windows, Linux, and macOS. The core functionality of the tool is implemented in Linux, and is ported to Windows using the MinGW environment, and on macOS using the macports environment.
Unfortunately, many libraries OpenModelica depends on are not regularly updated on macports, which caused the Mac build to break every other day. Given our limited resources, we can't take on the burden of the required macports maintenance, so we regret to inform you that we decided to discontinue the direct support of the macOS port. It is still possible to run OpenModelica on the Mac by running a virtual machine with a Linux installation of OpenModelica. You can find detailed instructions and a video tutorial on the Mac download page.
FMI Support
FMI 2.0 export and FMI simulation with OMSimulator was further improved.
Other things
OMSimulator is now integrated into pypi and installed via pip.
A prototype Flat Modelica code export feature is now available, a result of the Emphysis project and eFMI on-going standardization effort. It can be activated with the -f
compilation flag.
The Modelica package manager remains available from the command line. We plan to integrate it the OMEdit GUI for the 1.18.0 release, together with conversion scripts.
List of tickets closed in 1.17.0
Number of fixed tickets: 84