-
Branch of from develop
- Prefer prefix your branch with feature/ or bugfix/ depending on content
-
Develop a code on your branch
- Do not change version in following files:
- setup.py
- python_template/init.py
- docs/source/conf.py
- If you add new module/subpackage/method please add header for documentation purposes. Workflow automatically generates API documentation.
- Try to create small changes
- Create as many commits as you want
- Do not change version in following files:
-
Create a pull request
- Development branch is **develop, **all regular pull requests should be merged to develop.
- Get an approval
- Make sure develop workflow passes
- Squash and merge your pull request and add meaningful message to your commit
**[Manual] **indicates manual action
- **[Manual] **Create a pull request from develop to master.
- **[Manual] **Merge pull request to master with appropriate message (see below)
- Do not use rebase as workflow needs to know what kind of release it is (major/minor/patch)
- Do not use squash because it will create a conflict between master and develop, and lose all contribution info
- In message add one the hashtags
- #minor → Minor release
- #major → Major release
- #patch → Patch release
- missing hashtag → Minor release
- Workflow will create a new commit on master branch and tag it with new version
- Workflow will update documentation and push new docker image with latest and new version tags
- Workflow will create a draft of a release in github
- **[Manual] **Edit release draft if needed and publish
- Current release is 0.0.0 (no release)
- During development library has dev version.