-
Notifications
You must be signed in to change notification settings - Fork 169
Generating a new MSL release
When creating a new release then these are the normal steps one should take. The guidelines below take v4.0.0
as an example version.
-
Checkout the
master
branch and make sure it is in sync with the officialupstream
repository https://github.com/modelica/ModelicaStandardLibrary$ git checkout master $ git pull upstream
-
Tag the release and also annotate the tag at the same time with some meaningful message. Do not push the tag yet.
$ git tag -a -m "Final release 4.0.0 of the Modelica Standard Library" v4.0.0
-
Generate a zip archive of the tagged version. Thanks to the settings in the
.gitattributes
file this will- fill in place holders like
revisionId
automatically
$ git archive --format=zip -o /tmp/ModelicaStandardLibrary_v4.0.0.zip v4.0.0
- fill in place holders like
-
Double check the created zip file and if satisfied push the tag to upstream
$ git push origin v4.0.0
-
The directories inside the zip archive need to be renamed:
-
Modelica
→Modelica 4.0.0
-
ModelicaServices
→ModelicaServices 4.0.0
-
ModelicaReference
→ModelicaReference 4.0.0
-
-
Some test-only libraries should not be shipped with the release and need to be removed from the zip file:
ModelicaTest
ModelicaTestConversion4.mo
ModelicaTestOverdetermined.mo
-
For final releases also the HTML help needs to be created and added. For now we used OpenModelica for this and placed it under
Modelica 4.0.0/Resources/helpOM/
. -
In order that the
README.md
works also in the zipped up version links to file paths need to be updated. E.g.,
- ![ModelicaLibraries](Modelica/Resources/Images/UsersGuide/ModelicaLibraries.png)
+ ![ModelicaLibraries](Modelica 4.0.0/Resources/Images/UsersGuide/ModelicaLibraries.png)
- Go to the Releases page and edit the pushed tag and add the created zip file as an asset.
All the steps above can be automated using scripts provided in https://github.com/modelica-tools/msl-release.