﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
6274	Handling MSL 3.2.3 and MSL 4.0.0 in OpenModelica 1.17.0	Francesco Casella	Adeel Asghar	"The Modelica Standard Library 4.0.0 was released in June 2020. Other Modelica tools are starting to support it, and so should OpenModelica. In fact, OpenModelica can already run the majority of test cases in the MSL 4.0.0 library successfully, see [https://libraries.openmodelica.org/branches/newInst/Modelica_4.0.0/Modelica_4.0.0.html report].

However, full support of MSL 4.0.0 requires the ability to upgrade existing models and libraries using MSL 3.2.3 to use it, as well as to upgrade existing models and libraries to use updated versions of other libraries that switched to MSL 4.0.0. This in turn requires full support of conversion scripts (#5297) and integration of the package manager in OMEdit (#6020). This is planned for [https://trac.openmodelica.org/OpenModelica/admin/ticket/milestones/1.18.0 v. 1.18.0], due July 2021.

However, in 1.17.0 we should already make it possible to:
- Develop new libraries that use MSL 4.0.0 from the beginning
- Work with libraries and models that were converted to MSL 4.0.0 or started in MSL 4.0.0 with other Modelica tools

This will actually possible by using the Tools | Options | Library settings. If you are mostly or exclusively using MSL 4.0.0 for your work, you will set Modelica 4.0.0 as a system library. If you are using both 4.0.0 and 3.2.3 for different projects, then you can remove the default loaded Modelica library, and rely on the {{{uses}}} annotations to load the appropriate version of the MSL when you open the project-specific libraries. Of course that requires to manually open one of the two MSL versions when you start a new project, based on your needs.

This requires some adjustments to the Windows installer, basically 
- shipping the core libraries only with the installer
- making sure that the package manager can be used with minimal effort (absent a proper, full-fledged GUI) to install libraries other than the core ones

This functionality is planned for 1.17.0"	enhancement	closed	blocker	1.17.0	Installation program	v1.17.0-dev	fixed		
