Version = MAJOR (>=1 year), MINOR (>= 1 month), PATCH
Version Status = Develop / Release
Branches develop: active development branch master: latest release vMAJOR.MINOR: release branch
Tags vMAJOR.MINOR.PATCH: tag for each release
- Prepare the AliceVision release: https://github.com/alicevision/AliceVision
- Update INSTALL.md and requirements.txt if needed
- Source code
- Create branch from develop: "rcMAJOR.MINOR"
- Modify version in code, version status to RELEASE (meshroom/init.py)
- Create Release note (using https://github.com/cbentejac/github-generate-release-note)
-
./github-generate-release-note.py -o alicevision -r Meshroom -m "Meshroom MAJOR.MINOR.PATCH" --highlights major-feature --label-include bugfix,ci,scope:doc,scope:build -s updated-asc
-
- PR to develop: "Release MAJOR.MINOR"
- Build
- Build docker & push to dockerhub
- Build windows
- Git
- Merge "rcMAJOR.MINOR" into "develop"
- Push "develop" into "master"
- Create branch: vMAJOR.MINOR
- Create tag: vMAJOR.MINOR.PATCH on Meshroom, qtAliceVision, qmlAlembic
- Create branch from develop: "startMAJOR.MINOR"
- Upload binaries on fosshub
- Fill up Github release note
- Prepare "develop" for new developments
- Upgrade MINOR and reset version status to Develop
- PR to develop: "Start Development MAJOR.MINOR"
- Communication
- Email on mailing-list: alicevision@googlegroups.com
- Message on linkedin: https://www.linkedin.com/groups/13573776
- Message on twitter: https://twitter.com/alicevision_org
- Source code
- Create branch from rcMAJOR.MINOR: "rcMAJOR.MINOR.PATCH"
- Cherry-pick specific commits or rebase required PR
- Modify version in code
- Update release note
- Build step
- Uploads
- Github release note
- Email on mailing-list