How To Release Stratego XT

Stratego -- Strategies for Program Transformation
This is a to do list for creating a new release of StrategoXT.

Make sure trunk is ok

  • The trunk revision must build at all machines of the buildfarm, Cygwin and Mac OS X.

  • Write news in news-archive/NEWS-0.XX. Also add this file to EXTRA_DIST in Makefile.am
    • Collect news items from svnlog and JIRA issues.

Make a branch

  • Make a branch of the trunk

  • Comment the XT_PRE_RELEASE macro in configure.ac

Make distributions

  • Add a job for this branch to the configuration of the Nix buildfarm. This involves adding a build job in jobs.conf and creating a new attribute in the Nix expression strategoxt..nix.

  • Download tarballs, RPM, and SRPM from the Nix releases server to the ftp of Stratego.

  • Create binaries for Cygwin and Mac OS X, upload to ftp of Stratego.

  • Create a tag of the branch for this Stratego release.

Announce the release

  • Update the Stratego Wiki:
    • Create a topic StrategoRelease0XX with URLs and the news.
    • Create a topic StrategoRelease0XXIssues with the JIRA release notes.
    • Point to this new release in StrategoDownload
    • Update the WebLeftBar topic to the new release
    • Add a short news item to WebNews

  • Remove Wiki markup from the news file and send this to stratego-announce@cs.uu.nl

Continue with next release

  • Set the current version of StrategoXT 'released' in JIRA

  • Trunk: increase the version numbers in all configure.ac files.

  • After a major release: remove obsolete strategies from the Stratego library