wiki:Dev_ReleaseManagement

Version 1 (modified by till, 4 years ago) (diff)

initial RM page

How do we release?

Create a branch

version

version legend:

  • x.y.z
  • x = major
  • y = minor
  • z = fix (0 can be omitted)

creating a new release branch

svn cp trunk/ branches/release-x.y
svn cp trunk/ tags/release-x.y
svn ci -m "new x.y release"

The differences between branches and tags is the following:

  • a tag may not be "patched" or "hotfixed"
  • branch maybe "patched" or "hotfixed"
  • in case you apply a fix to a branch, please create a new tag as well

creating a tag after a fix

svn ci -m " * important security fix in x.y release" branches/release-x.y
svn cp branches/release-x.y tags/release-x.y.z

create download

major relase

svn export http://trac.roundcube.net/branches/release-x.y ./roundcubemail
tar -cf roundcubemail-x.y.tar ./roundcubemail
gzip roundcubemail-x.y.tar
rm -rf ./roundcubemail
  • distribute release on SourceForge?
  • adjust naming in case of a "hotfix" / "patch"

minor release / hotfix

  • repeat entire process
  • supply a patch in addition:
svn diff branches/release-x.y tags/x.y.z > ./roundcubemail-patch-x.y.z.patch
gzip ./roundcubemail-patch-x.y.z.patch

announcements

  • write news entry on SourceForge?
  • post on Twitter (Till)
  • email announce@, dev@ and users@

TBD

  • encourage maintainers to subscribe to announce@
  • seperately ping distros