Skip to content

Latest commit

 

History

History
63 lines (50 loc) · 1.97 KB

RELEASING.md

File metadata and controls

63 lines (50 loc) · 1.97 KB

Versioning

Version = MAJOR (>=1 year), MINOR (>= 1 month), PATCH

Version Status = Develop / Release

Git

Branches develop: active development branch master: latest release vMAJOR.MINOR: release branch

Tags vMAJOR.MINOR.PATCH: tag for each release

Release Process

  • 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)
    • Update the version of all the templates so their version corresponds to the release
    • 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 majorFeature 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
    • 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

Upgrade a Release with a PATCH version

  • 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