Automate versioning, and add documentation
DominicDirkx opened this issue · comments
At the moment, updating the version of Tudat and TudatPy requires a number of manual steps, which can and should all be automated. The automation should be implemented, and the process (both how it works, and how to use it) should be documented.
Points that should be addressed by the automation, for both Tudat and TudatPy
- For a version number MAJOR.MINOR.PATCH, a developer should specify which of the version numbers is to be updated (input from developer)
- A version number bump should always be done by a merge from the develop branch
- The version number on the master branch should be updated, in both the relevant files (https://github.com/tudat-team/tudat/blob/master/.bumpversion.cfg, https://github.com/tudat-team/tudat/blob/master/version) and a tag should be created for this code
- The version number of the develop branch should be updated similarly. If the minor version is to be updated, and the original version is MAJOR.MINOR.PATCH.devX, this should be updated to MAJOR.(MINOR+1).PATCH.dev0. Since the the bumped master version comes from develop, tyically the code for MAJOR.MINOR.PATCH.devX and MAJOR.(MINOR+1).PATCH.dev0 will be identical
- For TudatPy only: a new stable version of the API documention should be built (perhaps already done automatically?)
- When applicable (for a TudatPy version number bump only?), the develop branch of tudat-space should be merged into master, tagged with a new version, and build (e.g. latest -> stable on the website)
Often, but not necesarilly(?), a version number bump of tudat will be accompanied by a version number bump in Tudatpy
At the moment, the tudat-space repo and website has its own version numbering. Since this webpage is very much Python focussed, and I don't see this changing anytime soon, I would be in favour of making the version number equivalent to the Tudatpy version number.
I may have forgotten points in the above, please feel free to suggest additions or removals