NeoOffice 3.0.2 Early Access Release Tasks

From NeoWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 03:28, 14 November 2009 (edit)
( | contribs)
(Create initial task list from the NeoOffice 3.0.1 Early Access Release Tasks article)
← Previous diff
Current revision (02:39, 19 January 2010) (edit) (undo)
( | contribs)
(Builds - Revert back to cvs command for local development build)
 
(25 intermediate revisions not shown.)
Line 24: Line 24:
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
- <p>Verify that Novell's patched odf-converter does not have a newer version than 2.5-2 of their [http://download.novell.com/ OpenXML Translator]. If they do, attempt to build and run their newer version and test for any obvious regressions.</p>+ <p>Commit and test updated icon files and copyright date range changes in your workspace's NeoOffice 3.0.2 <tt>etc/package</tt> directory.</p>
- <p>Note: newer version 3.0-6 found and it builds but it drops images on Writer documents so continue to use version 2.5-2 for this release.</p>+ <ul>
 + <li>Change the copyright date range from <tt>2003-2009</tt> to <tt>2003-2010</tt> in the svx/source/intro/ooo.src file and commit the change</li>
 + <li><tt>cd etc/package</tt></li>
 + <li>Execute the following shell script:
 +<pre>
 +#!/bin/csh
 +#
 +# execute within etc/package directory
 + 
 +setenv PKGDIR `pwd`
 + 
 +pushd ~
 +curl -C - -O http://www.pimley.net/projects/downloads/NeoOfficeAquaElements.zip
 +popd
 + 
 +unzip ~/NeoOfficeAquaElements.zip
 +pushd "NeoOffice Aqua Elements 3"
 +find . -type f -name \.\* -print0 | xargs -0 -n 1 rm -f
 +popd
 + 
 +if ( -e NeoOfficeAquaElements.zip ) then
 + rm NeoOfficeAquaElements.zip
 +endif
 +zip -r NeoOfficeAquaElements.zip "NeoOffice Aqua Elements 3"
 +rm -rf "NeoOffice Aqua Elements 3"
 +</pre>
 + </li>
 + <li>Rebuild NeoOffice installers with new icon zip files and verify proper build.</li>
 + <li>Reinstall both builds, check that updated icons are available, and verify that the splash screen and the "About NeoOffice" dialog shows <tt>2003-2010</tt> as the copyright date range.</li>
 + </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>11/13/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Commit and test updated icon files in your workspace's NeoOffice 3.0.2 <tt>etc/package</tt> directory.</p> <p>Commit and test updated icon files in your workspace's NeoOffice 3.0.2 <tt>etc/package</tt> directory.</p>
Line 46: Line 75:
pushd ~ pushd ~
-curl -C - -O http://homepage.mac.com/punto_mac/projects/neo/downloads/Akua_2009Q2_Release.dmg+curl -C - -O http://homepage.mac.com/punto_mac/projects/neo/downloads/Akua_2009Q4_Release.dmg
popd popd
-setenv VOL `hdiutil mount ~/Akua_2009Q2_Release.dmg | perl -ne 'if ( /(\/Volumes.*)$/ ) { print $1; }'`+setenv VOL `hdiutil mount ~/Akua_2009Q4_Release.dmg | perl -ne 'if ( /(\/Volumes.*)$/ ) { print $1; }'`
if ( "$VOL" != "" ) then if ( "$VOL" != "" ) then
- mkdir "Akua_2009Q2_Release"+ mkdir "Akua_2009Q4_Release"
pushd "$VOL" pushd "$VOL"
- cp -rf * "$PKGDIR/Akua_2009Q2_Release"+ cp -rf * "$PKGDIR/Akua_2009Q4_Release"
popd popd
- pushd "Akua_2009Q2_Release"+ pushd "Akua_2009Q4_Release"
find . -type f -name \.\* -print0 | xargs -0 -n 1 rm -f find . -type f -name \.\* -print0 | xargs -0 -n 1 rm -f
popd popd
Line 62: Line 91:
rm AkuaIcons.zip rm AkuaIcons.zip
endif endif
- zip -r AkuaIcons.zip "Akua_2009Q2_Release"+ zip -r AkuaIcons.zip "Akua_2009Q4_Release"
hdiutil unmount "$VOL" hdiutil unmount "$VOL"
- rm -rf "Akua_2009Q2_Release"+ rm -rf "Akua_2009Q4_Release"
endif endif
</pre> </pre>
Line 72: Line 101:
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/7/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td><p>Since NeoOffice 3.0.2 Early Access has code changes in the Go-oo portion of the build, perform a clean build by doing a complete checkout of the HEAD branch in a new, empty directory and building the entire NeoOffice product from scratch.</p>+ <td><p>Rebuild all custom NeoOffice code using the existing NeoOffice 3.0.1 development builds. Perform a confirming checkout of the HEAD branch and set build to build with a new version and the NeoOffice trademarked product names.</p>
<p>This includes the following steps:</p> <p>This includes the following steps:</p>
<ul> <ul>
- <li>Do a <tt>cvs update -Ad</tt> in a new, empty directory to ensure that you have the a clean checkout of the code.</li>+ <li>Do a <tt>cvs update -Ad</tt> to ensure that you have the latest code in your workspace, verify that none of the files are marked as updated, patched, modified, or have conflicts, and verify that the latest code actually builds through the installer.</li>
<li>Copy <tt>custom.neo.mk</tt> file to <tt>custom.mk</tt> so that the clean checkout will build with the trademarked product names.</li> <li>Copy <tt>custom.neo.mk</tt> file to <tt>custom.mk</tt> so that the clean checkout will build with the trademarked product names.</li>
<li> <li>
Line 92: Line 121:
</pre> </pre>
</li> </li>
 + <li>Delete all <tt>build.neo_*</tt> files so that all custom NeoOffice and RetroOffice code will be rebuilt.</li></li>
<li>Commit <tt>makefile</tt> changes and invoke <tt>make all</tt> to rebuild all applicable code and installers.</li> <li>Commit <tt>makefile</tt> changes and invoke <tt>make all</tt> to rebuild all applicable code and installers.</li>
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/12/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Verify that none of the NeoOffice 3.0.2 Early Access Intel build's executables or libraries link to any X11 libraries.</p> <p>Verify that none of the NeoOffice 3.0.2 Early Access Intel build's executables or libraries link to any X11 libraries.</p>
Line 112: Line 142:
</pre> </pre>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/14/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Verify that none of the NeoOffice 3.0.2 Early Access PowerPC build's executables or libraries link to any X11 libraries.</p> <p>Verify that none of the NeoOffice 3.0.2 Early Access PowerPC build's executables or libraries link to any X11 libraries.</p>
<p>Note: Use the same steps as used for the matching Intel task.</p> <p>Note: Use the same steps as used for the matching Intel task.</p>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/14/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
Line 135: Line 165:
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Create releasable NeoOffice 3.0.2 Early Access build for Intel.</p> <p>Create releasable NeoOffice 3.0.2 Early Access build for Intel.</p>
Line 146: Line 176:
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Create releasable NeoOffice 3.0.2 Early Access build for PowerPC.</p> <p>Create releasable NeoOffice 3.0.2 Early Access build for PowerPC.</p>
<p>Note: Use the same steps as used for the matching Intel task.</p> <p>Note: Use the same steps as used for the matching Intel task.</p>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Create backup copy of the NeoOffice 3.0.2 Early Access releasable Intel binaries and upload them to staging server.</p> <p>Create backup copy of the NeoOffice 3.0.2 Early Access releasable Intel binaries and upload them to staging server.</p>
Line 171: Line 201:
</pre> </pre>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Create backup copy of the NeoOffice 3.0.2 Early Access releasable PowerPC binaries and upload them to staging server.</p> <p>Create backup copy of the NeoOffice 3.0.2 Early Access releasable PowerPC binaries and upload them to staging server.</p>
<p>Note: Use the same steps as used for the matching Intel task.</p> <p>Note: Use the same steps as used for the matching Intel task.</p>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Verify that the releasable NeoOffice 3.0.2 Early Access installers and one or more language packs install and run on Intel for the following Mac OS X versions:</p> <p>Verify that the releasable NeoOffice 3.0.2 Early Access installers and one or more language packs install and run on Intel for the following Mac OS X versions:</p>
Line 188: Line 218:
<li>10.4.11</li> <li>10.4.11</li>
<li>10.5.8</li> <li>10.5.8</li>
- <li>10.6 developer seed build 10A432</li>+ <li>10.6.2</li>
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Verify that the releasable NeoOffice 3.0.2 Early Access installers and one or more language packs install and run on PowerPC for the following Mac OS X versions:</p> <p>Verify that the releasable NeoOffice 3.0.2 Early Access installers and one or more language packs install and run on PowerPC for the following Mac OS X versions:</p>
Line 202: Line 232:
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
Line 224: Line 254:
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td>Copy the 2 NeoOffice main installer <tt>NeoOffice-3.0.2_Early_Access-*.dmg</tt> files from the <tt>joe.neooffice.org</tt> server's <tt>/neojava/earlyaccessdownloads</tt> directory to the <tt>/neojava/earlyaccessdownloads</tt> directory on all of the mirrors listed in the <tt>joe.neooffice.org</tt> server's <tt>/neojava/includes/earlyaccessmirrors.php</tt> file.</td> <td>Copy the 2 NeoOffice main installer <tt>NeoOffice-3.0.2_Early_Access-*.dmg</tt> files from the <tt>joe.neooffice.org</tt> server's <tt>/neojava/earlyaccessdownloads</tt> directory to the <tt>/neojava/earlyaccessdownloads</tt> directory on all of the mirrors listed in the <tt>joe.neooffice.org</tt> server's <tt>/neojava/includes/earlyaccessmirrors.php</tt> file.</td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td>Upload the 116 NeoOffice language pack installer <tt>NeoOffice-3.0.2_Early_Access-Language_Pack_*.dmg</tt> files to the <tt>joe.neooffice.org</tt> server's <tt>/neojava/downloads</tt> directory.</td> <td>Upload the 116 NeoOffice language pack installer <tt>NeoOffice-3.0.2_Early_Access-Language_Pack_*.dmg</tt> files to the <tt>joe.neooffice.org</tt> server's <tt>/neojava/downloads</tt> directory.</td>
- <td></td><td>pluby</td><td></td>+ <td>12/14/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
Line 244: Line 274:
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td>Tag the <tt>www.neooffice.org</tt> website to avoid modifying production web pages while we modify the web pages in the test website by logging into the <tt>www.neooffice.org</tt> server, <tt>cd</tt> to the its webroot directory, and set the tag by invoking the following commands: <tt>sudo chmod -Rf ug+rw . ; cvs tag NeoOffice-3_0_1 ; cvs update -d -rNeoOffice-3_0_1 ; sudo chmod -Rf g-w,o-rwx .</tt>+
- </td>+
- <td></td><td>pluby</td><td></td>+
- </tr>+
- +
- <tr bgcolor="lightgreen">+
<td> <td>
- <p>Update all NeoOffice and version names, file URLs, and patch version names in all of the files in the <tt>www-test-primary.neooffice.org</tt> server's <tt>neojava</tt> directory.</p>+ <p>Set the start and end dates and new features for the upcoming Early Access Program on the <tt>www-test-primary.neooffice.org</tt> server's <tt>neojava</tt> directory.</p>
<p>Note: I used the following steps to do this:</p> <p>Note: I used the following steps to do this:</p>
<ul> <ul>
- <li>Manually edit the <tt>/neojava/includes/globals.php</tt> page and set the following variables to the following values and delete all but the zero'th element:</li>+ <li>Manually edit the <tt>/neojava/includes/globals.php</tt> page and set the following variables to the following values:</li>
<pre> <pre>
-$earlyaccessdownloadenabled = true;+$earlyaccessdownloadenabled = false;
$earlyaccessredirectenabled = false; $earlyaccessredirectenabled = false;
$earlyaccessfreeproduct = 'NeoOffice 3.0.2'; $earlyaccessfreeproduct = 'NeoOffice 3.0.2';
Line 263: Line 287:
$earlyaccessproductfamily[0] = ''; $earlyaccessproductfamily[0] = '';
$earlyaccesspatch = 'Patch 0'; $earlyaccesspatch = 'Patch 0';
 +$oldearlyaccessproductversion = '';
 +$oldearlyaccessproductfamily[0] = '';
</pre> </pre>
- <li>Manually edit all of the <tt>header.html</tt> pages in the <tt>/neojava</tt> directory and put the NeoOffice 3.0.2 Early Access announcement within the new banner's "if ($earlyaccessdownloadenabled)" section.</li>+ <li>Manually edit all of the <tt>header.html</tt> pages in the <tt>/neojava</tt> directory and put the NeoOffice 3.0.2 Early Access announcement within the news banner's "else" block of its "if ($earlyaccessdownloadenabled)" section.</li>
<li>Manually edit all of the <tt>earlyaccess.php</tt> pages in the <tt>/neojava</tt> directory and add the previous Early Access Program to the list past Early Access Programs wherever they are listed.</li> <li>Manually edit all of the <tt>earlyaccess.php</tt> pages in the <tt>/neojava</tt> directory and add the previous Early Access Program to the list past Early Access Programs wherever they are listed.</li>
- <li>Manually edit all of the <tt>earlyaccess.php</tt> pages in the <tt>/neojava</tt> directory and update the Early Access Program start and end dates wherever they are listed.</li>+ <li>Manually edit all of the <tt>strings_*.php</tt> pages in the <tt>/includes</tt> directory and set the <tt>$eapDonationStartDate</tt>, <tt>$eapEndDate</tt>, and <tt>$eapStartDate</tt> values to the Early Access Program start and end dates wherever they are listed.</li>
<li>Manually edit all of the <tt>earlyaccessfeatures.php</tt> pages in the <tt>/neojava</tt> directory and add any new or missing features compared to the matching OpenOffice.org version.</li> <li>Manually edit all of the <tt>earlyaccessfeatures.php</tt> pages in the <tt>/neojava</tt> directory and add any new or missing features compared to the matching OpenOffice.org version.</li>
 + <li>After you verify that the changes look correct, invoke the following command to commit your changes: <tt>bin/cvsplusperms.sh commit</tt></li>
 + </ul>
 + </td>
 + <td>12/2/2009</td><td>pluby</td><td>Done</td>
 + </tr>
 +
 + <tr>
 + <td>Tag the <tt>www.neooffice.org</tt> website to avoid modifying production web pages while we modify the web pages in the test website by logging into the <tt>www.neooffice.org</tt> server, <tt>cd</tt> to the its webroot directory, and set the tag by invoking the following commands: <tt>bin/cvsplusperms.sh tag NeoOffice-3_0_2_Early_Access ; bin/cvsplusperms.sh update -d -rNeoOffice-3_0_2_Early_Access</tt>
 + </td>
 + <td>12/14/2009</td><td>pluby</td><td>Done</td>
 + </tr>
 +
 + <tr>
 + <td>
 + <p>Update all NeoOffice and version names, file URLs, and patch version names in all of the files in the <tt>www-test-primary.neooffice.org</tt> server's <tt>neojava</tt> directory.</p>
 + <p>Note: I used the following steps to do this:</p>
 + <ul>
 + <li>Manually edit the <tt>/neojava/includes/globals.php</tt> page and set the following variables to the following values:</li>
 +<pre>
 +$earlyaccessdownloadenabled = true;
 +</pre>
 + <li>Manually edit all of the <tt>header.html</tt> pages in the <tt>/neojava</tt> directory and put the NeoOffice 3.0.2 Early Access announcement within the news banner's "if ($earlyaccessdownloadenabled)" section.</li>
<li>Manually edit the <tt>/neojava/donations/config.php</tt> file and set the <tt>DONATIONSDOWNLOADCOOKIEKEY</tt> and <tt>DONATIONSDOWNLOADCOOKIEVALUE</tt> defines to values that have not been used in past Early Access Programs.</li> <li>Manually edit the <tt>/neojava/donations/config.php</tt> file and set the <tt>DONATIONSDOWNLOADCOOKIEKEY</tt> and <tt>DONATIONSDOWNLOADCOOKIEVALUE</tt> defines to values that have not been used in past Early Access Programs.</li>
- <li>After you verify that the changes look correct, invoke the following command to commit your changes: <tt>sudo chmod -Rf ug+rw . ; cvs commit ; sudo chmod -Rf g-w,o-rwx .</tt></li>+ <li>After you verify that the changes look correct, invoke the following command to commit your changes: <tt>bin/cvsplusperms.sh commit</tt></li>
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/15/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td>Manually edit the <tt>mirror_htdocs</tt> CVS module's <tt>/neojava/earlyaccessdownloads/.htaccess</tt>, update any lines to match the changes made in the <tt>www_htdocs</tt> CVS module's <tt>/neojava/donations/config.php</tt> file, and if the changes look correct, invoke the following command to commit your changes: <tt>sudo chmod -Rf ug+rw . ; cvs commit ; sudo chmod -Rf g-w,o-rwx .</tt>. Then, propagate the change by logging into each of the servers listed in the <tt>www_htdocs</tt> CVS module's <tt>/neojava/includes/earlyaccessmirrors.php</tt> file and invoking the following command: <tt>sudo chmod -Rf ug+rw . ; cvs commit ; sudo chmod -Rf g-w,o-rwx .</tt></td>+ <td>Manually edit the <tt>mirror_htdocs</tt> CVS module's <tt>/neojava/earlyaccessdownloads/.htaccess</tt>, update any lines to match the changes made in the <tt>www_htdocs</tt> CVS module's <tt>/neojava/donations/config.php</tt> file, and if the changes look correct, invoke the following command to commit your changes: <tt>bin/cvsplusperms.sh commit</tt>. Then, propagate the change by logging into each of the servers listed in the <tt>www_htdocs</tt> CVS module's <tt>/neojava/includes/earlyaccessmirrors.php</tt> file and invoking the following command: <tt>bin/cvsplusperms.sh update -Ad</tt></td>
- <td></td><td>pluby</td><td></td>+ <td>12/15/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
 + <td>Update the NeoOffice 3.0.2 Early Access main installer and language pack file sizes and set the 2 patch file sizes to <tt>0</tt> in the <tt>/neojava/includes/globals/earlyaccessfilesizes.php</tt> file and if the changes look correct, invoke the following command to commit your changes: <tt>bin/cvsplusperms.sh commit</tt></td>
 + <td>12/27/2009</td><td>pluby</td><td>Done</td>
 + </tr>
 + 
 + <tr>
<td>Update the name and start and end dates for the current Early Access Program membership and subscription categories in the Early Access Program database by logging into the the <tt>www.neooffice.org</tt> server and using the server's <tt>/neojava/donationsadmin/manage_categories.php</tt> program to update the names and start and end dates for the current Early Access Program membership and subscription categories. Note that the start date should overlap slightly with the end date of the last Early Access Program to ensure that no donations get missed.</td> <td>Update the name and start and end dates for the current Early Access Program membership and subscription categories in the Early Access Program database by logging into the the <tt>www.neooffice.org</tt> server and using the server's <tt>/neojava/donationsadmin/manage_categories.php</tt> program to update the names and start and end dates for the current Early Access Program membership and subscription categories. Note that the start date should overlap slightly with the end date of the last Early Access Program to ensure that no donations get missed.</td>
- <td></td><td>pluby</td><td></td>+ <td>12/15/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td>Prepare the <tt>NeoOffice_3.0.2_Early_Access.html</tt> press release file, save it in the <tt>www-test-primary.neooffice.org</tt> website's <tt>/press_releases</tt> directory using the following naming format, <tt>sudo chmod -Rf ug+rw . ; cvs add ; sudo chmod -Rf g-w,o-rwx .</tt> the file, and invoke the following command to commit the new file: <tt>sudo chmod -Rf ug+rw . ; cvs commit ; sudo chmod -Rf g-w,o-rwx .</tt></td>+ <td>Prepare the <tt>NeoOffice_3.0.2_Early_Access.html</tt> press release file, save it in the <tt>www-test-primary.neooffice.org</tt> website's <tt>/press_releases</tt> directory using the following naming format, <tt>bin/cvsplusperms.sh add</tt> the file, and invoke the following command to commit the new file: <tt>bin/cvsplusperms.sh commit</tt></td>
- <td></td><td>narf</td><td></td>+ <td>12/28/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
</table> </table>
Line 293: Line 346:
== Release == == Release ==
-Generally, we try to time the release when it is early morning of the release date in New Zealand which is the most populous country closest to the international date line. So for this release, XX December 2009 translates to in the afternoon on YY December 2009 in California.+Generally, we try to time the release when it is early morning of the release date in New Zealand which is the most populous country closest to the international date line. So for this release, 29 December 2009 translates to in the afternoon on 28 December 2009 in California.
<table width="100%" border="1"> <table width="100%" border="1">
Line 301: Line 354:
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td> <td>
<p>Synchronize the donation's database to PayPal's database to ensure that none of the donors' transactions are missing and to pick up any e-mail address changes made by donors during the Early Access period using the following steps:</p> <p>Synchronize the donation's database to PayPal's database to ensure that none of the donors' transactions are missing and to pick up any e-mail address changes made by donors during the Early Access period using the following steps:</p>
Line 316: Line 369:
</ul> </ul>
</td> </td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td>Verify that all mirrors listed for the NeoOffice 3.0.2 Early Access main installer and language pack links work in the <tt>www-test.neooffice.org</tt> website's Early Access Program download pages. If any do not work, comment them out in the <tt>/neojava/includes/earlyaccessmirrors.php</tt> file (for the main installer) and in the <tt>neojava/includes/mirror.php</tt> (for the language packs) and invoke the following command: <tt>sudo chmod -Rf ug+rw . ; cvs commit ; sudo chmod -Rf g-w,o-rwx .</tt></td>+ <td>Verify that all mirrors listed for the NeoOffice 3.0.2 Early Access main installer and language pack links work in the <tt>www-test.neooffice.org</tt> website's Early Access Program download pages. If any do not work, comment them out in the <tt>/neojava/includes/earlyaccessmirrors.php</tt> file (for the main installer) and in the <tt>neojava/includes/mirror.php</tt> (for the language packs) and invoke the following command: <tt>bin/cvsplusperms.sh commit</tt></td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td>Make the NeoOffice 3.0.2 Early Access binaries downloadable from the <tt>www.neooffice.org</tt> website's Early Access Program download pages by updating the <tt>www.neooffice.org</tt> website's pages to match what is in the <tt>www-test.neooffice.org</tt> website's pages. Login into the <tt>www.neooffice.org</tt> server, <tt>cd</tt> to the its webroot directory, and invoke the following command: <tt>sudo chmod -Rf ug+rw . ; cvs update -Ad ; sudo chmod -Rf g-w,o-rwx .</tt></td>+ <td>Make the NeoOffice 3.0.2 Early Access binaries downloadable from the <tt>www.neooffice.org</tt> website's Early Access Program download pages by updating the <tt>www.neooffice.org</tt> website's pages to match what is in the <tt>www-test.neooffice.org</tt> website's pages. Login into the <tt>www.neooffice.org</tt> server, <tt>cd</tt> to the its webroot directory, and invoke the following command: <tt>bin/cvsplusperms.sh update -Ad</tt></td>
- <td></td><td>pluby</td><td></td>+ <td>12/28/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td>Append the [http://neowiki.neooffice.org/index.php/NeoOffice_MD5_Checksums NeoOffice MD5 checksums] page with the NeoOffice 3.0.2 Early Access MD5 checksums.</td> <td>Append the [http://neowiki.neooffice.org/index.php/NeoOffice_MD5_Checksums NeoOffice MD5 checksums] page with the NeoOffice 3.0.2 Early Access MD5 checksums.</td>
- <td></td><td>pluby</td><td></td>+ <td>12/27/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td>Add "3.0.2 EA" as a version in [http://bugzilla.neooffice.org/ Bugzilla].</td> <td>Add "3.0.2 EA" as a version in [http://bugzilla.neooffice.org/ Bugzilla].</td>
- <td></td><td>pluby</td><td></td>+ <td>12/15/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td><p>Close all bugs with a status of "Resolved" by setting the following field values:</p> <td><p>Close all bugs with a status of "Resolved" by setting the following field values:</p>
<ul> <ul>
Line 348: Line 401:
</ul> </ul>
</td> </td>
- <td></td><td>narf</td><td></td>+ <td>12/29/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td><p>Close any bugs with a status of "Assigned" or "Reopened" and resolution of "Fixed" (bugs fixed in the release build after the final Early Access patch) by setting the following field values:</p> <td><p>Close any bugs with a status of "Assigned" or "Reopened" and resolution of "Fixed" (bugs fixed in the release build after the final Early Access patch) by setting the following field values:</p>
<ul> <ul>
Line 360: Line 413:
</ul> </ul>
</td> </td>
- <td></td><td>narf</td><td></td>+ <td>12/29/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
- <td>Update the text on the [http://neowiki.neooffice.org/index.php/NeoOffice_Mobile NeoOffice Mobile article] to reflect that the NeoOffice Mobile has been released.</td>+
- <td></td><td>pluby</td><td></td>+
- </tr>+
- +
- <tr bgcolor="lightgreen">+
<td>Post the press release as an article on [http://trinity.neooffice.org trinity.neooffice.org]. Note: be sure to change the language field from "English" to "All" in when submitting the article so that all Trinity users will see the article.</td> <td>Post the press release as an article on [http://trinity.neooffice.org trinity.neooffice.org]. Note: be sure to change the language field from "English" to "All" in when submitting the article so that all Trinity users will see the article.</td>
- <td></td><td>pluby</td><td></td>+ <td>12/28/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
- <tr bgcolor="lightgreen">+ <tr>
<td>Post a release announcement to [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=6844 this Trinity forum topic], [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=6844 this Trinity forum topic], and [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=7813 this Trinity forum topic] so that the news is included in the RSS feed.</td> <td>Post a release announcement to [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=6844 this Trinity forum topic], [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=6844 this Trinity forum topic], and [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=7813 this Trinity forum topic] so that the news is included in the RSS feed.</td>
- <td></td><td>pluby</td><td></td>+ <td>12/28/2009</td><td>pluby</td><td>Done</td>
</tr> </tr>
</table> </table>

Current revision

This page is an attempt to document all of the tasks required to release NeoOffice 3.0.2 Early Access. This page is by no means comprehensive, but hopefully as we work through the release process, we will leave behind enough details to make future releases simpler and less error prone.

Here is what the colors mean:

Not yet assigned
Assigned but not yet due

Contents

Builds

In this release, we are making changes to NeoOffice's underlying OpenOffice.org code. Also, new application and toolbar icons were added. Because of these changes, an upgrade patch would be excessive large so no upgrade patch will be released.

TaskDate CompletedAssignedStatus

Commit and test updated icon files and copyright date range changes in your workspace's NeoOffice 3.0.2 etc/package directory.

  • Change the copyright date range from 2003-2009 to 2003-2010 in the svx/source/intro/ooo.src file and commit the change
  • cd etc/package
  • Execute the following shell script:
    #!/bin/csh
    #
    # execute within etc/package directory
    
    setenv PKGDIR `pwd`
    
    pushd ~
    curl -C - -O http://www.pimley.net/projects/downloads/NeoOfficeAquaElements.zip
    popd
    
    unzip ~/NeoOfficeAquaElements.zip
    pushd "NeoOffice Aqua Elements 3"
    find . -type f -name \.\* -print0 | xargs -0 -n 1 rm -f
    popd
    
    if ( -e NeoOfficeAquaElements.zip ) then
            rm NeoOfficeAquaElements.zip
    endif
    zip -r NeoOfficeAquaElements.zip "NeoOffice Aqua Elements 3"
    rm -rf "NeoOffice Aqua Elements 3"
    
  • Rebuild NeoOffice installers with new icon zip files and verify proper build.
  • Reinstall both builds, check that updated icons are available, and verify that the splash screen and the "About NeoOffice" dialog shows 2003-2010 as the copyright date range.
11/13/2009plubyDone

Commit and test updated icon files in your workspace's NeoOffice 3.0.2 etc/package directory.

  • cd etc/package
  • Execute the following shell script:
    #!/bin/csh
    #
    # execute within etc/package directory
    
    setenv PKGDIR `pwd`
    
    pushd ~
    curl -C - -O http://homepage.mac.com/punto_mac/projects/neo/downloads/Akua_2009Q4_Release.dmg
    popd
    
    setenv VOL `hdiutil mount ~/Akua_2009Q4_Release.dmg | perl -ne 'if ( /(\/Volumes.*)$/ ) { print $1; }'`
    if ( "$VOL" != "" ) then
            mkdir "Akua_2009Q4_Release"
            pushd "$VOL"
            cp -rf * "$PKGDIR/Akua_2009Q4_Release"
            popd
            pushd "Akua_2009Q4_Release"
            find . -type f -name \.\* -print0 | xargs -0 -n 1 rm -f
            popd
    
            if ( -e AkuaIcons.zip ) then
                    rm AkuaIcons.zip
            endif
            zip -r AkuaIcons.zip "Akua_2009Q4_Release"
            hdiutil unmount "$VOL"
            rm -rf "Akua_2009Q4_Release"
    endif
    
  • Rebuild NeoOffice installers with new icon zip files and verify proper build.
  • Reinstall both builds and check that updated icons are available.
12/7/2009plubyDone

Rebuild all custom NeoOffice code using the existing NeoOffice 3.0.1 development builds. Perform a confirming checkout of the HEAD branch and set build to build with a new version and the NeoOffice trademarked product names.

This includes the following steps:

  • Do a cvs update -Ad to ensure that you have the latest code in your workspace, verify that none of the files are marked as updated, patched, modified, or have conflicts, and verify that the latest code actually builds through the installer.
  • Copy custom.neo.mk file to custom.mk so that the clean checkout will build with the trademarked product names.
  • In makefile, change the following macros to the respective values:

    PRODUCT_VERSION=3.0.2 Early Access
    PRODUCT_DIR_VERSION=3.0.2_Early_Access
    PREVIOUS_PRODUCT_VERSION=$(PRODUCT_VERSION)
    PRODUCT_PATCH_VERSION=Patch 0
    PRODUCT_DIR_PATCH_VERSION=Patch-0
    NEO_TAG:=-rNeoOffice-3_0_2_Early_Access
    
  • Delete all build.neo_* files so that all custom NeoOffice and RetroOffice code will be rebuilt.
  • Commit makefile changes and invoke make all to rebuild all applicable code and installers.
12/12/2009plubyDone

Verify that none of the NeoOffice 3.0.2 Early Access Intel build's executables or libraries link to any X11 libraries.

Note: to do this task, install your latest NeoOffice build and, in a terminal, execute the following commands:

sh
cd /Applications/NeoOffice.app/Contents
for i in `find . -type f`; do echo $i ; otool -L $i 2>&1 | grep X11; done

If none of the binaries link to any X11 libraries, the above commands will only print a list of files. However, if you see any lines that look similar to the following, the file listed just before this type of line is linked to an X11 library and this must be correct before the NeoOffice binaries can be released.

/usr/X11R6/lib/libX11.6.dylib (compatibility version 6.2.0, current version 6.2.0)
12/14/2009plubyDone

Verify that none of the NeoOffice 3.0.2 Early Access PowerPC build's executables or libraries link to any X11 libraries.

Note: Use the same steps as used for the matching Intel task.

12/14/2009plubyDone

Tag the code in the HEAD branch with the NeoOffice-3_0_2_Early_Access tag using the following:

  • Do a cvs update -Ad to ensure that you have the latest code in your workspace, verify that none of the files are marked as updated, patched, modified, or have conflicts, and verify that the latest code actually builds through the installer.
  • Tag all files in your workspace by invoking cvs tag NeoOffice-3_0_2_Early_Access.
  • If there are any build errors, fix and commit them, retag the changed files by invoking cvs tag -F NeoOffice-3_0_2_Early_Access, and repeating the step.
pluby

Create releasable NeoOffice 3.0.2 Early Access build for Intel.

Note: the following steps are overkill, but they ensure that all recent changes to the NeoOffice custom code has been built:

  • Do a cvs update -d -rNeoOffice-3_0_2_Early_Access and verify that none of the files are marked as updated, patched, modified, or have conflicts. If any such errors appear, the previous task (tagging of the workspace) has not been done properly and it needs to done properly before you can proceed with this task.
  • Do a cvs update -Ad so that you can do bug fixing and release patches after you create your releasable build
  • Delete all build.neo_* and build.odf-converter* files. This will force the installer to rebuild the odf-converter code and all of the NeoOffice custom code without causing any of the OpenOffice.org or ooo-build code to be rebuilt.
  • Invoke make all to create the releasable installer and language packs.
12/27/2009plubyDone

Create releasable NeoOffice 3.0.2 Early Access build for PowerPC.

Note: Use the same steps as used for the matching Intel task.

12/27/2009plubyDone

Create backup copy of the NeoOffice 3.0.2 Early Access releasable Intel binaries and upload them to staging server.

The following steps are the steps that I used to create my backup copy:

  • Create an empty NeoOffice-3.0.2_Early_Access directory outside of the workspace
  • Copy all 59 install/*.dmg files from your releasable build into the empty NeoOffice-3.0.2_Early_Access directory and chmod 444 *.dmg in that directory

Put the NeoOffice-3.0.2_Early_Access folder in a new empty directory and create a CD master NeoOffice-3.0.2_Early_Access.cdr file of the new directory using the following command:

hdiutil create -srcfolder /path/to/new/directory \
-format UDTO -ov -o /path/to/output/NeoOffice-3.0.2_Early_Access.cdr
12/27/2009plubyDone

Create backup copy of the NeoOffice 3.0.2 Early Access releasable PowerPC binaries and upload them to staging server.

Note: Use the same steps as used for the matching Intel task.

12/27/2009plubyDone

Verify that the releasable NeoOffice 3.0.2 Early Access installers and one or more language packs install and run on Intel for the following Mac OS X versions:

  • 10.4.11
  • 10.5.8
  • 10.6.2
12/27/2009plubyDone

Verify that the releasable NeoOffice 3.0.2 Early Access installers and one or more language packs install and run on PowerPC for the following Mac OS X versions:

  • 10.4.11
  • 10.5.8
12/27/2009plubyDone

Mirrors

NeoOffice's rsync server is hosted on rsync.neooffice.org and our volunteer mirrors obtain the NeoOffice binaries by nightly runs of the following command on their mirrors:

rsync --archive --delete rsync://rsync.neooffice.org/neojavadownloads/ \
/path/to/NeoOffice/mirror/directory

Note that the NeoOffice Early Access Program main installer binaries are only mirrored on neooffice.org servers so using the above command will only copy the language pack and patch binaries.

TaskDate CompletedAssignedStatus
Copy the 2 NeoOffice main installer NeoOffice-3.0.2_Early_Access-*.dmg files from the joe.neooffice.org server's /neojava/earlyaccessdownloads directory to the /neojava/earlyaccessdownloads directory on all of the mirrors listed in the joe.neooffice.org server's /neojava/includes/earlyaccessmirrors.php file. 12/27/2009plubyDone
Upload the 116 NeoOffice language pack installer NeoOffice-3.0.2_Early_Access-Language_Pack_*.dmg files to the joe.neooffice.org server's /neojava/downloads directory. 12/14/2009plubyDone

Website

TaskDate CompletedAssignedStatus

Set the start and end dates and new features for the upcoming Early Access Program on the www-test-primary.neooffice.org server's neojava directory.

Note: I used the following steps to do this:

  • Manually edit the /neojava/includes/globals.php page and set the following variables to the following values:
  • $earlyaccessdownloadenabled = false;
    $earlyaccessredirectenabled = false;
    $earlyaccessfreeproduct = 'NeoOffice 3.0.2';
    $earlyaccessproductversion = '3.0.2 Early Access';
    $earlyaccessproductfamily[0] = '';
    $earlyaccesspatch = 'Patch 0';
    $oldearlyaccessproductversion = '';
    $oldearlyaccessproductfamily[0] = '';
    
  • Manually edit all of the header.html pages in the /neojava directory and put the NeoOffice 3.0.2 Early Access announcement within the news banner's "else" block of its "if ($earlyaccessdownloadenabled)" section.
  • Manually edit all of the earlyaccess.php pages in the /neojava directory and add the previous Early Access Program to the list past Early Access Programs wherever they are listed.
  • Manually edit all of the strings_*.php pages in the /includes directory and set the $eapDonationStartDate, $eapEndDate, and $eapStartDate values to the Early Access Program start and end dates wherever they are listed.
  • Manually edit all of the earlyaccessfeatures.php pages in the /neojava directory and add any new or missing features compared to the matching OpenOffice.org version.
  • After you verify that the changes look correct, invoke the following command to commit your changes: bin/cvsplusperms.sh commit
12/2/2009plubyDone
Tag the www.neooffice.org website to avoid modifying production web pages while we modify the web pages in the test website by logging into the www.neooffice.org server, cd to the its webroot directory, and set the tag by invoking the following commands: bin/cvsplusperms.sh tag NeoOffice-3_0_2_Early_Access ; bin/cvsplusperms.sh update -d -rNeoOffice-3_0_2_Early_Access 12/14/2009plubyDone

Update all NeoOffice and version names, file URLs, and patch version names in all of the files in the www-test-primary.neooffice.org server's neojava directory.

Note: I used the following steps to do this:

  • Manually edit the /neojava/includes/globals.php page and set the following variables to the following values:
  • $earlyaccessdownloadenabled = true;
    
  • Manually edit all of the header.html pages in the /neojava directory and put the NeoOffice 3.0.2 Early Access announcement within the news banner's "if ($earlyaccessdownloadenabled)" section.
  • Manually edit the /neojava/donations/config.php file and set the DONATIONSDOWNLOADCOOKIEKEY and DONATIONSDOWNLOADCOOKIEVALUE defines to values that have not been used in past Early Access Programs.
  • After you verify that the changes look correct, invoke the following command to commit your changes: bin/cvsplusperms.sh commit
12/15/2009plubyDone
Manually edit the mirror_htdocs CVS module's /neojava/earlyaccessdownloads/.htaccess, update any lines to match the changes made in the www_htdocs CVS module's /neojava/donations/config.php file, and if the changes look correct, invoke the following command to commit your changes: bin/cvsplusperms.sh commit. Then, propagate the change by logging into each of the servers listed in the www_htdocs CVS module's /neojava/includes/earlyaccessmirrors.php file and invoking the following command: bin/cvsplusperms.sh update -Ad 12/15/2009plubyDone
Update the NeoOffice 3.0.2 Early Access main installer and language pack file sizes and set the 2 patch file sizes to 0 in the /neojava/includes/globals/earlyaccessfilesizes.php file and if the changes look correct, invoke the following command to commit your changes: bin/cvsplusperms.sh commit 12/27/2009plubyDone
Update the name and start and end dates for the current Early Access Program membership and subscription categories in the Early Access Program database by logging into the the www.neooffice.org server and using the server's /neojava/donationsadmin/manage_categories.php program to update the names and start and end dates for the current Early Access Program membership and subscription categories. Note that the start date should overlap slightly with the end date of the last Early Access Program to ensure that no donations get missed. 12/15/2009plubyDone
Prepare the NeoOffice_3.0.2_Early_Access.html press release file, save it in the www-test-primary.neooffice.org website's /press_releases directory using the following naming format, bin/cvsplusperms.sh add the file, and invoke the following command to commit the new file: bin/cvsplusperms.sh commit 12/28/2009plubyDone

Release

Generally, we try to time the release when it is early morning of the release date in New Zealand which is the most populous country closest to the international date line. So for this release, 29 December 2009 translates to in the afternoon on 28 December 2009 in California.

TaskDate CompletedAssignedStatus

Synchronize the donation's database to PayPal's database to ensure that none of the donors' transactions are missing and to pick up any e-mail address changes made by donors during the Early Access period using the following steps:

  • Login to PayPal, click on the History tab, click on Download My History link, select Custom Date Range, enter the day before the start of the Early Access period as the "From" date and the current date as the "To" date, and "Comma Delimited - All Activity" as the "File Types to Download".
  • It will take some time for PayPal to prepare the file. Once the file is ready, download it and use sftp to copy it to the www.neooffice.org server. Note: be sure to delete your local copy.
  • Once the history file is on the www.neooffice.org server, login to the server, cd to the /donationsadmin directory, and execute the following command to import the history file:
    sh
    ./import_paypal_transaction_history.php /path/to/history/file 2>/path/to/error/file
    
  • Inspect the entries in the error file created in the previous command and verify that none of the rejected lines from the file are donor transactions.
12/27/2009plubyDone
Verify that all mirrors listed for the NeoOffice 3.0.2 Early Access main installer and language pack links work in the www-test.neooffice.org website's Early Access Program download pages. If any do not work, comment them out in the /neojava/includes/earlyaccessmirrors.php file (for the main installer) and in the neojava/includes/mirror.php (for the language packs) and invoke the following command: bin/cvsplusperms.sh commit 12/27/2009plubyDone
Make the NeoOffice 3.0.2 Early Access binaries downloadable from the www.neooffice.org website's Early Access Program download pages by updating the www.neooffice.org website's pages to match what is in the www-test.neooffice.org website's pages. Login into the www.neooffice.org server, cd to the its webroot directory, and invoke the following command: bin/cvsplusperms.sh update -Ad 12/28/2009plubyDone
Append the NeoOffice MD5 checksums page with the NeoOffice 3.0.2 Early Access MD5 checksums. 12/27/2009plubyDone
Add "3.0.2 EA" as a version in Bugzilla. 12/15/2009plubyDone

Close all bugs with a status of "Resolved" by setting the following field values:

  • Set "Status" field to "Closed"
  • Set "Resolution" field to "Fixed"
  • Set "Target Version" field to "3.0.2 EA"
  • Set "Closed in Version" field to "3.0.2 EA"
12/29/2009plubyDone

Close any bugs with a status of "Assigned" or "Reopened" and resolution of "Fixed" (bugs fixed in the release build after the final Early Access patch) by setting the following field values:

  • Set "Status" field to "Closed"
  • Set "Resolution" field to "Fixed"
  • Set "Target Version" field to "3.0.2 EA"
  • Set "Closed in Version" field to "3.0.2 EA"
12/29/2009plubyDone
Post the press release as an article on trinity.neooffice.org. Note: be sure to change the language field from "English" to "All" in when submitting the article so that all Trinity users will see the article. 12/28/2009plubyDone
Post a release announcement to this Trinity forum topic, this Trinity forum topic, and this Trinity forum topic so that the news is included in the RSS feed. 12/28/2009plubyDone
Personal tools