{{{#!div style="float: right; margin: 0 1em" ← [../1.16.5] | [../1.18.0] → }}} = Release Notes for OpenModelica [milestone:1.17.0] = [[PageOutline(2-3)]] == 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. 21 [https://trac.openmodelica.org/OpenModelica/query?status=closed&component=New+Instantiation&resolution=fixed&milestone=1.17.0&group=resolution&col=id&col=summary&col=component&col=owner&col=type&col=priority&col=version&order=priority tickets] were fixed since the previous 1.16.5 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 == The user experience with OMEdit is significantly improved in version 1.17.0, in particular for the Windows version, where the compilation time was drastically reduced by using clang instead of gcc and by dynamic linking instead of static linking of the simulation executable. 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. Please note that the Modelica.Clocked package in MSL 4.0.0 is still not handled in a completely reliable way, while most other models work equally well in the two versions. When starting the program for the first time after installation, one can choose among three options: load MSL 3.2.3 automatically, which however prevents using libraries that need MSL 4.0.0; load MSL 4.0.0 automatically, which prevents using libraries that need MSL 3.2.3; not loading any version of the library upon starting OMEdit, leaving it to the tool to load the right one when a model or library is opened, thanks to the uses() annotation. The latter option allow to handle different projects that use either version of the MSL without problems, of course one at a time. This choice can be later modified by going to the Tools | Options | Libraries menu and by adding or removing the Modelica library from the automatically loaded system libraries, and/or by modifying the specific version that gets loaded. 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. 16 [https://trac.openmodelica.org/OpenModelica/query?status=closed&component=OMEdit&resolution=fixed&milestone=1.17.0&group=resolution&col=id&col=summary&col=component&col=owner&col=type&col=priority&col=version&order=priority 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 [https://www.macports.org/ 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 stop providing builds of OpenModelica for macOS. It is still possible to run OpenModelica on the Mac by running a virtual machine with a Linux installation of OpenModelica, see the instructions on the [https://openmodelica.org/download/download-mac Mac download page]. We are still trying to make it possible to build OpenModelica from sources on macOS, please check ticket [https://trac.openmodelica.org/OpenModelica/ticket/6306 #6306] for the latest updates and if you want to contribute to the effort. However, we do not guarantee this will be always possible in the future. == 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 [https://openmodelica.org/doc/OpenModelicaUsersGuide/latest/packagemanager.html Modelica package manager] is still only available from the command line in this release. 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: [[TicketQuery(milestone=1.17.0,status=closed,severity!=trivial,resolution=fixed|-, count)]] [[TicketQuery(milestone=1.17.0,status=closed,severity!=trivial,resolution=fixed|-,col=changelog,group=component,format=table)]] {{{#!comment === Wiki === === Ticket System === ==== Roadmap and Milestone ==== ==== Custom Queries ==== ==== Reports ==== === Repository Browser === === User Preferences === === Timeline === === Admin === === Others === }}}