| 10 | | * Obtain co-maintenance permissions for all of the namespaces in the Padre distribution. Talk to Gábor Szabó (szabgab), Adam Kennedy (Alias), or Steffen Müller (tsee) about this. Make sure you get Wx::Perl::Dialog, Wx::Perl::Dialog::Frame, Wx::Perl::Dialog::Simple, and Wx::Perl::Dialog::SingleChoice too. |
| 11 | | * cd to trunk/Padre |
| 12 | | * Make sure the Changes file is up to date and manually update if necessary, add the vX.XX Date string at the top (commit) |
| 13 | | * run {{{ perl ../tools/tidy_project.pl }}} that will apply blessed padre style in every module. (commit) |
| | 10 | As the Release Manager you will be uploading the Padre tarball to pause, to ensure you have the |
| | 11 | right permissions to do this you must obtain co-maintenance permissions for all of the namespaces in the Padre distribution. Talk to Gábor Szabó (szabgab), Adam Kennedy (Alias), or Steffen Müller (tsee) about this. Make sure you get Wx::Perl::Dialog, Wx::Perl::Dialog::Frame, Wx::Perl::Dialog::Simple, and Wx::Perl::Dialog::SingleChoice too. |
| 20 | | * Note that once a stable release is done, run {{{ perl ../tools/update_version_number.pl VERSION }}} to set the next development cycle. |
| | 18 | A few (2 or 3) days before the planned release date the release manager creates an svn copy of trunk to branches/release-n.nn. |
| | 19 | |
| | 20 | == The high level steps are as follows: == |
| | 21 | |
| | 22 | * Make sure all tests pass, |
| | 23 | * Set the release version, commit, |
| | 24 | * Tidy and update Changes file, commit, |
| | 25 | * Rebuild the messages.pot, commit, |
| | 26 | * Branch |
| | 27 | * Announce branch and URL to dev list, |
| | 28 | * Allow a few days for translators, |
| | 29 | * Build Tar Ball, |
| | 30 | * Test where you can. |
| | 31 | * Upload to PAUSE. |
| | 32 | * Prior to merge back, set version to current dev version ( should be +1 ), commit, |
| | 33 | * Merge changes on Branch back to Trunk, this should only be the translations if all went well. |
| | 34 | |
| | 35 | |
| | 36 | == Detailed Steps for a Release == |
| | 37 | |
| | 38 | Note: All commands are taken as relative to your Padre directory ( the one with Makefile.PL in it ) |
| | 39 | * run perltidy on the trunk {{{ ../tools/tidy_project.pl }}} |
| | 40 | * commit |
| | 41 | * Update the Changes file, noting the date of the release being the date you start the branch |
| | 42 | * commit |
| | 43 | * set the version from the current development version number to the release version number ( should be even numbered for released odd numbers for development ) |
| | 44 | * Note: there is a script in tools that will update the $VERSION string, however PPI::PowerToys has an awesome ppi_version, use this when you can: ppi_version change old new, ie ppi_version change 0.81 0.82 |
| | 45 | * commit |
| | 46 | * rebuild the "messages.pot" file, run {{{ ../tools/update_pot_file.pl }}} |
| | 47 | * commit |
| | 48 | |
| | 49 | At this point trunk is ready for you to make the branch: |
| | 50 | * {{{ svn cp http://svn.perlide.org/padre/trunk/Padre http://svn.perlide.org/padre/branches/release-X.XX }}} (replace X.XX with the future version number) |
| | 51 | |
| | 52 | You have now created the release branch for Padre. |
| | 53 | |
| | 54 | To complete the final tasks on trunk, update the Changes file by "opening" the next version. |
| | 55 | * Modify Changes, set the next development version number, this should be odd and the next release version number should be even, ie if you have just branched release-0.82, then changes gets updated with: |
| | 56 | |
| | 57 | 0.84 TBA |
| | 58 | |
| | 59 | 0.83 Dev - not released. |
| | 60 | |
| | 61 | From this point onwards you switch your working copy between the branch and trunk as needed. To switch between trunk and the branch: |
| | 62 | |
| | 63 | * {{{ svn switch http://svn.perlide.org/padre/branches/release-X.XX }}} . |
| | 64 | * then every commit will go to the branch while the plugins are still from trunk |
| | 65 | * the release can be done here but probably it is better NOT to run the perl tidy on the branch as it will make merging very difficult |
| | 66 | |
| | 67 | |
| | 68 | == Do the regular release process == |
| 64 | | == Release of Padre using a branch == |
| 65 | | |
| 66 | | In order to allow a few days of stabilization of Padre and to allow the translators to catch up while |
| 67 | | allowing everyone else to freely work on the main trunk we can start releasing from a branch. |
| 68 | | |
| 69 | | A few (2 or 3) days before the planned release date the release manager creates an svn copy of trunk to branches/release-n.nn. |
| 70 | | |
| 71 | | Prior to creating the copy the following steps are taken: |
| 72 | | |
| 73 | | * run perltidy on the trunk |
| 74 | | * commit |
| 75 | | * Update the Changes file, noting the date of the release being the date you start the branch |
| 76 | | * commit |
| 77 | | * set the version from the current development version number to the release version number ( should be even numbered for released odd numbers for development ) |
| 78 | | * Note: there is a script in tools that will update the $VERSION string, however PPI::PowerToys has an awesome ppi_version, use this when you can: ppi_version change old new, ie ppi_version change 0.81 0.82 |
| 79 | | * commit |
| 80 | | * rebuild the "messages.pot" file, run ../tools/update_pot_file.pl |
| 81 | | * commit |
| 82 | | |
| 83 | | At this point trunk is ready for you to make the branch: |
| 84 | | * svn cp http://svn.perlide.org/padre/trunk/Padre http://svn.perlide.org/padre/branches/release-X.XX (replace X.XX with the future version number) |
| 85 | | |
| 86 | | You have now created the release branch for Padre. |
| 87 | | |
| 88 | | To complete the final tasks on trunk, update the Changes file by "opening" the next version. |
| 89 | | * Modify Changes, set the next development version number, should be odd and the next release version number, should be even, ie if you have just branched release-0.82, then changes gets updated with: |
| 90 | | |
| 91 | | 0.84 TBA |
| 92 | | |
| 93 | | 0.83 Dev - not released. |
| 94 | | |
| 95 | | From this point onwards you switch your working copy between the branch and trunk as needed. To switch between trunk and the branch: |
| 96 | | * cd trunk/Padre |
| 97 | | * svn switch http://svn.perlide.org/padre/branches/release-X.XX . |
| 98 | | * then every commit will go to the branch while the plugins are still from trunk |
| 99 | | * the release can be done here but probably it is better NOT to run the perl tidy on the branch as it will make merging very difficult |
| 100 | | * do the regular release process as above |