Developing Guidelines
These guidelines are for the developers of this toolbox.
Guidelines
We should follow the following development guidelines:
Follow Semantic Versioning for version numbers
We don’t use MATLAB’s documentation system for publishing the toolbox documentation but host a versioned website generated with Sphinx online
Work on
dev
branch, merge tomain
only on release
Releasing a new toolbox version
Follow the following steps to release a new version:
Update the
ToolboxVersion
inproject.m
Add an entry for the new version in
CHANGELOG.rst
In MATLAB, run
make_release
to package the.mltbx
file in therelease
folderCommit your changes to the
dev
branch (although it is a derived file, we will commit the.mltbx
file so that it can be picked up as release artifact) and pushdev
to GitLabMerge branch
dev
intomain
Push
main
to GitLab, it will trigger rebuild of documentation and if the version number is new it will create a tag and a releaseFetch tags with
git fetch origin --tags
Push
main
and tags to GitHub with:git push github main git push github --tags
It will trigger creating the release on GitHub. This new release will automatically create a new version on Matlab File Exchange.[not yet implemented, instead do these steps manually]Check if the Documentation has the new version, check Releases if the release is there, check File Exchange if the version was published