Skip to content

Steps To Create An Official Manuskript Release

Curtis Gedak edited this page Apr 11, 2018 · 27 revisions

Following is a DRAFT proposal for the steps to follow when creating an official manuskript release.

These steps are intended to be a work in progress and to be updated as more experience is gained.

Assumptions

  • N-1 (0.6.0) is the current production release
  • N (0.7.0) is about to be released
  • N+1 (0.8.0) is a release in the future

Steps

  1. FINISH DEVELOPMENT AND TESTING

    • Complete development, documentation, and testing for upcoming release.
  2. CREATE RELEASE AREA AND CLEANUP MILESTONES FOR ISSUES AND PULL REQUESTS

    • Create new draft release area for N.

    • Close current project release milestone N-1.

    • Ensure all issues and PRs are completed for milestone N, or move to a different milestone.

    • Create future release milestone N+1.

  3. NOTIFY TRANSLATION TEAMS OF UPCOMING RELEASE

    Need input from @olivierkes as I am unfamiliar with translation process.

    • Contact translation members about upcoming release in 1 week?
    • Incorporate translation updates
  4. ADD DEVELOPMENT CHANGES TO MASTER BRANCH

    • Merge develop branch into master branch.

       git checkout master
       git merge develop
      
  5. PREPARE CHANGELOG

    • Generate changelog.

      github_changelog_generator -u olivierkes -p manuskript \
        --token {MyChangelogGithubToken}
      
    • Edit CHANGELOG.md to adjust for release number.

  6. PREPARE SOURCE CODE FOR PRODUCTION RELEASE

    • Update manuskript/version.py version number for production release

    • Test that manuskript can start and open a project

    • Commit manuskript/version.py and CHANGELOG.md

      git status
      git add manuskript/version.py CHANGELOG.md
      git commit -m "==========   manuskript-x.y.z   =========="
      
    • Stamp production version label on git repository

      git tag -a X.Y.Z -m "manuskript-x.y.z release"
      
    • Check git tree

      gitk --all
      
    • Push updates to the git repository

      git push
      git push --tags
      
  7. PREPARE RELEASE PACKAGES

  8. UPLOAD RELEASE PACKAGES

    • Ensure all packages are uploaded to release area whether automatically or manually created.
  9. UPDATE PROJECT WEB SITE

Clone this wiki locally