Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
dev:release_process [2018/02/07 16:07]
127.0.0.1 external edit
dev:release_process [2018/02/17 03:40]
tedfelix [Create tarball]
Line 83: Line 83:
 Sanity test the tarball.  Build and run from it. Sanity test the tarball.  Build and run from it.
  
 +==== Tagging the Release ====
 +
 +The make-release-tarball script will attempt to tag the release for you.  In some cases, you will need to do this differently.  For a point release, the make-release-tarball script creates the tag from trunk rather than the stable branch.  You'll need to tag a point release manually like this:
 +
 +  svn copy svn+ssh://tedfelix@svn.code.sf.net/p/rosegarden/code/branches/stable-17.12 \
 +           svn+ssh://tedfelix@svn.code.sf.net/p/rosegarden/code/tags/rosegarden-17.12.1 \
 +           -m "Tag release 17.12.1"
 +
 +==== Tagging Errors ====
 +
 +An "Unexpected HTTP status 502 'Bad Gateway'" error indicates that the URL used to create the tag doesn't match the URL used to checkout the repo.  Use svn info to figure out what URL type to use:
 +
 +  $ svn info .
 +  ...
 +  URL: svn+ssh://tedfelix@svn.code.sf.net/p/rosegarden/code/branches/stable-17.12
 +  Relative URL: ^/branches/stable-17.12
 +  Repository Root: svn+ssh://tedfelix@svn.code.sf.net/p/rosegarden/code
 +  ...
 +
 +From the above we know that we need to use an "svn+ssh" style URL to create a tag.
  
 ===== Deliver ===== ===== Deliver =====
Line 132: Line 152:
   * twitter?   * twitter?
   * etc...?   * etc...?
 +
 +
 +===== Point Release Process =====
 +
 +//Discussion uses 17.12.1 as an example.//
 +
 +In svn a tag will move if you commit to it, so we will need to create a stable-17.12 branch from 17.12 so that we can make changes.  Then we can do the usual tagging process on that branch to tag it for release.
 +
 +  svn copy https://svn.code.sf.net/p/rosegarden/code/tags/rosegarden-17.12 \
 +           https://svn.code.sf.net/p/rosegarden/code/branches/stable-17.12 \
 +           -m "Create stable-17.12 branch."
 +
 +Checkout stable-17.12 someplace.  Replace "tedfelix" with your sf userid.
 +
 +  svn checkout --username=tedfelix \
 +      svn+ssh://tedfelix@svn.code.sf.net/p/rosegarden/code/branches/stable-17.12 \
 +      stable-17.12
 +
 +Cherrypick the various commits you need into the stable branch.  Use svn merge to cherrypick.  Cherrypicking a single commit:
 +
 +  svn merge -c 15189 ^/trunk/rosegarden
 +
 +You'll need to commit that.  Since svn doesn't bring in any information from the original commits, you'll want to include a list of revisions in the commit message.  Format them with square brackets to get hyperlinks in sf: [r15189].
 +
 +Finally, go back through the release process with the following changes:
 +
 +  - Start at [[dev:release_process#test_a_release_build|Test a Release Build]].
 +  - Update the release notes with a new point release fixes section at the top.  E.g. "Fixes for 17.12.1".
 +  - Version will need to be adjusted in CMakeLists.txt.
 +  - No need for a new version directory on sf.
 +  - No need to bump the version number after the tarball.
  
  
 
 
dev/release_process.txt ยท Last modified: 2023/12/06 12:58 by tedfelix
Recent changes RSS feed Creative Commons License Valid XHTML 1.0 Valid CSS Driven by DokuWiki