VersionManagementVersion Management |
This information is part of the Modelica Standard Library maintained by the Modelica Association.
Further development and maintenance of the Modelica Standard Library is performed with two branches on the public GitHub repository of the Modelica Association.
Since version 4.0.0 the Modelica Standard Library uses semantic versioning following the convention:
MAJOR.MINOR.BUGFIX
This provides a mechanism for maintaining releases and bug-fixes in a well defined way and is inspired by (but not identical to) https://semver.org.
Name: "master"
This branch contains the actual development version, i.e., all bug-fixes and new features. New features must have been tested before including them. However, the exhaustive tests for a new version are (usually) not performed. This version is usually only be used by the developers of the Modelica Standard Library and is not utilized by Modelica users.
Name: "maint/4.0.x"
This branch contains the released Modelica Standard Library version (e.g., v4.0.0)
where all bug-fixes since this release date are included
(also consecutive BUGFIX
versions 4.0.1, 4.0.2, etc.,
up to when a new MINOR
or MAJOR
release becomes available;
i.e., there will not be any further BUGFIX
versions (i.e., 4.0.x) of a previous release).
These bug-fixes might not yet be tested with all test cases or with
other Modelica libraries. The goal is that a vendor may take this version at
any time for a new release of its software, in order to incorporate the latest
bug fixes.
The general contribution workflow is usually as follows:
There are some special guidelines for changes to the maintenance branch.
BUGFIX
release is due the annotations
"version" and "versionDate" need to be updated.The "dateModfied" is optional but might help identify the exact creation time of a release. The "revisionId" field is a special annotation to identify the exact commit that the released version represents.annotation(version = "4.0.1", versionDate = "2020-09-29", dateModified = "2020-09-29 07:40:19Z", revisionId = "$Format:%h %ci$")
Running the export command "git archive -o msl.zip v4.0.0
" will expand the above "revisionId" place holder to something like:revisionId = "c04e23a0d 2020-04-01 12:00:00 +0200$"
As a recommendation, a valid bug-fix to the maintenance branch may contain one or more of the following changes.