Mantis Release Process

Readiness

  • Review the issues in bugtracker to make sure there are no critical issues that need to be included in the release.
  • Check with the developers (via IRC) that there are no pending issues for the release.
  • Notify translators that the release is coming soon and specify time frame for accepting translations to be integrated into the release.

Testing

  • General testing.
  • Test the changes in the release, specially the latest one applied.
  • Test upgrading previous releases.

Localization

  • Update localizations as needed (i.e. commit any pending translations).
  • Run the localization synch/update scripts.
  • Run /admin/test_langs.php to detect any syntax errors in the localization files.
  • Commit the changes

File Cleanup

  • Run the linterm script on all the files to make sure the line terminations are UNIX style.
  • Commit the changes

Preparation

  • Remove references to any debug statements (eg. mark_time()).
  • Revise and complete the section of the ChangeLog that corresponds to the version to be released. The entries should be sorted as follows: sort by category, then by issue number within each category. The security category should be on the top of the list.
  • Update CREDITS file.
  • Update Copyright year/users, if needed.
  • Update README file, if needed.
  • Make sure enough testing is done for the main functionality and the admin section (see the “Testing” section).
  • Update the version number in core/constant_inc.php.
  • Commit the changes.

Repository

  • Apply a static tag on SVN, the tag should be format as “RELEASE_1_1_2_20080617” (ALL CAPS)
svn copy https://mantisbt.svn.sourceforge.net/svnroot/mantisbt/branches/BRANCH_1_1_0/mantisbt https://mantisbt.svn.sourceforge.net/svnroot/mantisbt/tags/RELEASE_1_1_2_20080617
  • in case we are starting a new stable branch, also create it using the format “BRANCH_1_1_0”. (ALL CAPS)
TODO: svn command

Packaging

./createpackage.sh RELEASE_1_1_2_20080617

Deploy

  • Upgrade the database if needed (admin/admin_upgrade.php).
  • Run admin/admin_check.php and resolve any issues.
  • Login and do simple testing.
  • In the mantisbt/ folder you need to grant group members permission to write to files that you made.
    • type chmod g+w -R *

Source Forge

  • Upload the release to Source Forge
    • FTP Server: upload.sourceforge.net
    • Folder: incoming
  • Release through the SF.net mechanism. The release name should be “1.0.0”. Put the release in the appropriate packaged based on whether it is a stable or a development release. Release candidates and alphas are “development” releases.
  • Download the release off SF.net and verify correctness.
  • Post news on Mantis SF project area.

Bugtracker

  • Close all resolved issues that are fixed in the release being released.
  • Change the status of the release to be “Released”.
  • Add the next release to the Mantis versions and mark it as NOT released.
  • Add news about the new release.

Website

  • Update FILES folder which includes the following:
  • Changelog
    • Latest development/stable versions.
    • Credits
    • etc.

Notification

  • Blog: Post an announcement
  • IRC: Change the title of #mantishelp to announce the new release and encourage people to use it.
  • Forums: Announce the release on the Announcements forum.
  • Mailing Lists: Send a message to mantisbt-announce / mantisbt-dev / mantisbt-help / mantisbt-lang to announce the new release and encourage users to upgrade. Include a copy of the change log (or a link to it) for the release in the message.
 
Logged in as: anonymous
mantisbt/release_process.txt · Last modified: 2008/06/17 04:44 by giallu
 
SourceForge Logo