-
Notifications
You must be signed in to change notification settings - Fork 2
Development
Chad Trabant edited this page Feb 13, 2024
·
11 revisions
ROVER follows the Semantic Versioning schema: https://semver.org/
ROVER development follows a Gitflow workflow. At the highest level, these are the guidelines:
- The HEAD of the
mainbranch is always the last release of the latest major version. - New release changes are only merged (without squashing) from a
developbranch. - Bug fixes and feature development are done in branches off of the
developbranch, which are squashed when they are merged back intodevelop. - All release tags are on
mainor release branches frommain. - If bug fixes or feature back ports are needed for an older major version release, a release branch will be created at the release tag, e.g. HEAD of
mainis at version 2.0.0, a fix for version 1.2.0 will be done in a1.xrelease branch frommain. New minor releases to that branch are tagged on that branch.
- Changes are created in a branch from
develop(for committers) or a pull request (for external contributors) againstdevelop, or an older major release branch. - Changes are reviewed by a committer, with explicit approval noted in the PR comments.
- The PR is merged by any committer to
develop, with all commits squashed and a concise message.
See the development.txt file in the repo for instructions on setting up a development environment and creating new releases, including an upload to PyPI.