BioCocoa
Main | Edit Page | Page History | Wiki Help | Search | Print

Release Checklist

Main.ReleaseChecklist History

Hide minor edits - Show changes to markup

October 14, 2010, at 04:22 PM by 128.135.5.19 -
Changed lines 58-59 from:

svn+ssh://user@bioinformatics.org/svnroot/BioCocoa/branches/X.Y-release biococoa-X.Y.Z

to:

svn+ssh://user@bioinformatics.org/svnroot/BioCocoa/BioCocoa /branches/X.Y-release biococoa-X.Y.Z

October 03, 2008, at 08:09 PM by 128.200.174.48 -
Changed lines 111-124 from:
to:
  • tar up and sftp the built Documentation directory to bioinformatics.org
  • Create a X.Y.Z directory under /memberroot/peterschols/public_html/biococoa/Documentation
  • Untar the documentation into the directory.

  1. Should also copy the source release to the BioCocoa project page on bioinformatics.org.
    http://www.bioinformatics.org/project/?group_id=318
    

  2. Login with your account, goto the BioCocoa project, select File Release under the Group Admin options and follow the directions. Cut/paste the release information from Readme.txt as the release notes; check the box so that its displayed as text instead of HTML.

  3. Unfortunately, bioinformatics.org doesn't recognize the dmg extension, so you need to compress it which will give it a zip extension.
Changed lines 127-128 from:
  1. Update wiki to point to new release as current.
to:
  1. Update BioCocoa to point to new release as current.
October 03, 2008, at 03:16 PM by 128.200.174.48 -
Added lines 100-109:
  1. Transfer biococoa-X.Y.Z-src.tgz and BioCocoa-X.Y.Z.dmg to your account on bioinformatics.org using sftp.

  2. ssh into bioinformatics.org

  3. Change to the biococoa group (newgrp biococoa).

  4. Change your permission mask to group write (umask 0002).

  5. Copy biococoa-X.Y.Z-src.tgz and BioCocoa-X.Y.Z.dmg to /memberroot/peterschols/public_html/biococoa/downloads
October 03, 2008, at 02:48 PM by 128.200.174.48 -
Changed line 65 from:

tar zcvf biococoa-X.Y.Z.tgz biococoa-X.Y.Z

to:

tar zcvf biococoa-X.Y.Z-src.tgz biococoa-X.Y.Z

October 03, 2008, at 02:38 PM by 128.200.174.48 -
Added lines 27-28:
  1. Update the Readme.txt with the new version number, add some bullet items about what the new release.
Changed lines 76-87 from:
  1. Create a temporary directory called BioCocoa. This will become the name of the disk image device when mounted.

  2. Copy the BioCocoa.framework from the Release build directory to the temporary directory.

  3. Copy the Documentation directory to the temporary directory.

  4. Copy the release image to the temporary directory.

  5. Copy the "About BioCocoa" file to the temporary directory.

  6. Use Disk Utility to create a disk image of the temporary directory. Name the image BioCocoa-X.Y.Z.dmg
to:
  1. Create a temporary directory. We are going to gather all of the release files together.

  2. Using the Finder, copy the following to the temporary directory
    • BioCocoa.framework from the Release build directory.
    • Documentation directory.
    • license.txt file.
    • Readme.txt file.

  3. Use Get Info from the Finder on the temporary directory to calculate the total size of the release.

  4. Open Disk Utility and create a read/write disk image with a size large enough to hold all the release files. Use Mac OS Extended file system with journaling, journaling uses up space that isn't needed. Change the Volume Name from Disk Image to BioCocoa, do this now because it cannot be changed later.

  5. Open the disk image in Finder, we will construct the release image.
    • Switch the disk image folder to Icon view.
    • Use Show View Options and set the background image to Documentation/images/BCBanner.jpg also select "Always open in icon view".
    • Click the upper right window button to eliminate the left tree view panel and resize the window so it exactly fits the background image.
    • Copy all the release files to the disk image, rearrange so that they are nicely placed under the BioCocoa image. Look at an existing release disk image for an example.

  6. Now use Disk Utility to convert the disk image to a compressed disk image. Name the image BioCocoa-X.Y.Z.
Changed lines 114-115 from:

BioCocoa sticks to the standard versioning scheme used by many GNU/Linux software packages, the X.Y.Z scheme where X, Y and Z are integers. X is the major version and increments with a significant change in the API, possibly breaking backward compatibility. Y is the minor version and increments with each release that introduces new functionality. Z is the bug version and increments with bug fix releases.

to:

BioCocoa sticks to the standard versioning scheme used by many GNU/Linux software packages, the X.Y.Z scheme where X, Y and Z are integers. X is the major version and increments with a significant change in the API, possibly breaking backward compatibility. Y is the minor version and increments with each release that introduces new functionality. Z is the bug version and increments with bug fix releases.

October 01, 2008, at 04:01 PM by 128.200.174.48 -
Changed lines 74-75 from:
  1. Create a temporary directory.
to:
  1. Create a temporary directory called BioCocoa. This will become the name of the disk image device when mounted.
September 30, 2008, at 09:43 PM by 128.200.174.48 -
Added lines 50-51:

Create the source code release

Added lines 60-91:
  1. Archive the exported code directory, that's the source code release!
    tar zcvf biococoa-X.Y.Z.tgz biococoa-X.Y.Z
    

  2. Test the source code release by extracting the files into a new directory, preferably on a clean machine, and verify that you compile it.

Create the binary release (Mac OSX)

  1. Extract the source code from the release file created above.

  2. Compile with Xcode using the Release target for BioCocoa.framework and BioCocoa Documentation.

  3. Create a temporary directory.

  4. Copy the BioCocoa.framework from the Release build directory to the temporary directory.

  5. Copy the Documentation directory to the temporary directory.

  6. Copy the release image to the temporary directory.

  7. Copy the "About BioCocoa" file to the temporary directory.

  8. Use Disk Utility to create a disk image of the temporary directory. Name the image BioCocoa-X.Y.Z.dmg

Move the release files to the download directory.

The distribution files now get put on bioinformatics.org.

  1. Copy documentation to web.
Added lines 94-97:
  1. Update wiki to point to new release as current.

  2. Email announcement file to mailing list.
September 30, 2008, at 09:24 PM by 128.200.174.48 -
Changed lines 46-47 from:

Distribution Files

to:

Distribution File Tasks

Changed lines 50-51 from:

Announcements

to:
  1. Export the source code from the release branch, make sure to use the correct Z value for the bug version number.
    svn export
    svn+ssh://user@bioinformatics.org/svnroot/BioCocoa/branches/X.Y-release
    biococoa-X.Y.Z
    

Announcement Tasks

September 30, 2008, at 09:18 PM by 128.200.174.48 -
Added lines 9-10:

To avoid cluttering up the main check list with extra details, look to the bottom of this page for issues, workarounds, FAQs, etc.

Deleted lines 14-17:

Versioning Scheme

BioCocoa sticks to the standard versioning scheme used by many GNU/Linux software packages, the X.Y.Z scheme where X, Y and Z are integers. X is the major version and increments with a significant change in the API, possibly breaking backward compatibility. Y is the minor version and increments with each release that introduces new functionality. Z is the bug version and increments with bug fix releases.

Changed lines 34-35 from:
  1. Now do all release work in the branch. Any modifications to scripts, etc. are done in the branch. Those changes can be merged back to the main development branch later.
to:
  1. Now do all release work in the branch. Any modifications to scripts, etc. are done in the branch. Those changes will be merged back to the main development branch later.

SVN Repository Tasks for Bug Fix Release

Currently bug fix releases should be rare as we don't have a large user and developer community. Consider whether waiting for the next new functionality release is sufficient.

Bug fix release do not involve creating a new branch. Instead work in the appropriate branch directory, code and test the bug fixes there.

  1. Update the version number in the VERSION file in trunk and commit to the repository, this should just be incrementing the bug version number.

  2. Now do all release work in the branch. Bug fixes and any other modifications will be merged back to the main development branch later.
Changed lines 48-49 from:

When creating distribution files, we want to eliminate all of the extra files and directories that exist

to:

When creating distribution files, we want to eliminate all of the extra files and directories that exist in a repository checkout; we do this by using the export command to get a local copy of the release files.

Added lines 54-59:

Here are a set of topics that elaborate on various details of making a release.

Versioning Scheme

BioCocoa sticks to the standard versioning scheme used by many GNU/Linux software packages, the X.Y.Z scheme where X, Y and Z are integers. X is the major version and increments with a significant change in the API, possibly breaking backward compatibility. Y is the minor version and increments with each release that introduces new functionality. Z is the bug version and increments with bug fix releases.

September 30, 2008, at 09:05 PM by 128.200.174.48 -
Deleted lines 0-1:

Release Checklist

September 30, 2008, at 09:05 PM by 128.200.174.48 -
Added lines 1-47:

Release Checklist

Here is information about the various steps required to produce a new release of BioCocoa; over time when the process has been worked out then these will get coded into distribution scripts to automate much of the process.

The overall release tasks include:

  • Create release branch/tags in the SVN repository.
  • Create source/binary distribution files.
  • Update web pages, post announcements.

SVN Repository Tasks

One of the primary features of using a source code repository is its ability to support software releases and maintain identity of a specific release. Branching allows the release to be worked on concurrently with development for the next release as well as bug fixing independent of the main development; while tagging allows historical access to the exact files in a release.

Versioning Scheme

BioCocoa sticks to the standard versioning scheme used by many GNU/Linux software packages, the X.Y.Z scheme where X, Y and Z are integers. X is the major version and increments with a significant change in the API, possibly breaking backward compatibility. Y is the minor version and increments with each release that introduces new functionality. Z is the bug version and increments with bug fix releases.

The repository tasks are slightly different for a bug fix release versus a release with new functionality.

SVN Repository Tasks for New Functionality Release

  1. Checkout BioCocoa from the repository. You can use an existing checkout but make sure you don't have any modified files, etc. Safer to just start from a clean checkout.
    svn checkout svn+ssh://user@bioinformatics.org/svnroot/BioCocoa
    

  2. Update the version number in the VERSION file in trunk and commit to the repository. If the major version is incrementing then the framework version in the Xcode project and makefiles also needs to increment.

  3. Make a branch for the release by copying trunk to a directory in the branches directory and commit the new branch.
    svn copy trunk branches/X.Y-release
    svn commit -m "X.Y-release branch"
    

  4. Now do all release work in the branch. Any modifications to scripts, etc. are done in the branch. Those changes can be merged back to the main development branch later.

Distribution Files

When creating distribution files, we want to eliminate all of the extra files and directories that exist

Announcements

Issues, Workarounds, Helpful Hints



Main | Edit Page | Page History | Recent Changes | (All) | Powered by PmWiki
Page last modified on October 14, 2010, at 04:22 PM