Propel Release Process
This is a description of the steps to make an official Propel release.
Step 1: Update Trac
- Using the Trac Admin interface add a milestone for the next version
- Review open tickets for the targeted release milestone (report:3). (High priority / critical problems probably should be fixed pre-release.)
- Open tickets should be moved to the new milestone -- either the next patch release or next minor release depending on severity. This essentially "releases" the version in Trac.
Step 2: Run Unit Tests
- To make sure everything is ready for release, run the unit test suite. I try to do this on at least mysql and postgresql just to confirm that no recent commits messed anything up. See wiki:Development/Guidelines/WritingUnitTests for the overview on running tests.
Step 3: Tag in SVN
Next it's time to tag in SVN. This can be done using a graphical tool, or of course, on the commandline.
# svn copy http://svn.propelorm.org/branches/1.4 http://svn.propelorm.org/tags/1.4.0
It's also important to update the version in the default.properties file and the state in the in pear build directories in the tag. I you have a full propel source tree checkout, just run svn update, or you can also check out and then recommit just the tag:
# svn co http://svn.propelorm.org/tags/1.4.0 propel-1.4.0
1. Change the version in generator/default.properties
# ... propel.version = 1.4.0
2. Change the version in runtime/Propel.php
/** * The Propel version. */ const VERSION = '1.4.0';
3. Change the state in generator/pear/build-pear-package.xml to appropriate state ('alpha', 'beta', 'stable')
<property name="state" value="stable" />
4. Change the state in runtime/pear/build-pear-package.xml to appropriate state ('alpha', 'beta', 'stable')
<property name="state" value="stable" />
5. Commit the changes
# svn commit -m "Updating version and state for release"
Step 4: Export the Tag for Package
# svn export http://svn.propelorm.org/tags/1.4.0 propel-1.4.0
Step 5: Create the "Full" Packages
# tar zcvf propel-1.4.0.tar.gz propel-1.4.0 # tar jcvf propel-1.4.0.tar.bz2 propel-1.4.0 # zip -r propel-1.4.0.zip propel-1.3.0
Step 6: Create the PEAR Packages
# cd propel-1.4.0 # phing -f generator/pear/build-pear-package.xml -Dversion=1.4.0 # phing -f runtime/pear/build-pear-package.xml -Dversion=1.4.0
The generated PEAR packages are now located here:
- generator/pear/build/propel_generator-1.4.0.tgz
- generator/pear/build/propel_runtime-1.4.0.tgz
Step 7: Upload PEAR Packages
- Navigate to the PEAR channel admin page.
- For both the runtime and the generator packages, click the "Upload new Release" button to upload the built release package.
Verify the PEAR packages by installing form the channel.