|
NeoOffice 2.1 Release Tasks
From NeoWiki
This page is an attempt to document all of the tasks required to release NeoOffice 2.1. 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, there is no change in the OpenOffice.org tag that we are using so this build is far simpler than the NeoOffice 2.1 Early Access build. However, in order to fix a few ooo-build bugs found in NeoOffice 2.1 Early Access, we need to upgrade to a newer ooo-build tag. Also, we are going to bundle the latest Akua icon set. These two changes will mean that in this release, there will not be a patch that upgrades a NeoOffice 2.1 Early Access installation.
Task | Due Date | Assigned | Status |
Create NeoOffice-2_1_Early_Access_branch branch from the HEAD branch for NeoOffice 2.1 Early Access so that we can continue to do bug fixes and release Patches while we aer working on this release. Note: After creating the branch, I invoked the following command in my NeoOffice 2.1 Early Access workspace to ensure that I don't accidently pull NeoOffice 2.1 changes into my build: cvs update -r NeoOffice-2_1_Early_Access_branch |
03/13/07 | pluby | Done |
Perform a clean checkout of the HEAD branch and set build to build with a new version and NeoOffice trademarked product name. This includes the following steps:
|
03/14/07 | pluby | Done |
Upgrade the build to use ooo-build's newer OOO_BUILD_2_1_7 tag. TODO: Fill in detail steps that I performed |
03/14/07 | pluby | Done |
Perform a clean checkout and build of the HEAD branch on Mac OS X 10.4 Intel with gcc 4.0.1. Note: don't forget to copy custom.neo.mk file to custom.mk so that the clean checkout will build with the trademarked product name |
03/14/07 | pluby | Done |
Perform a clean checkout and build of the HEAD branch on Mac OS X 10.4 PowerPC with gcc 3.3. Note: don't forget to copy custom.neo.mk file to custom.mk so that the clean checkout will build with the trademarked product name |
03/16/07 | OPENSTEP | Done 3/17/07 |
Verify that none of the 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/MacOS 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) |
03/16/07 | pluby | Done |
Verify that none of the PowerPC build's executables or libraries link to any X11 libraries. Note: Use the same steps as used for the matching Intel task. |
03/16/07 | OPENSTEP | Done No X11 Dependencies 3/17/07 |
Modify and test bin/installutils* sripts to not treat NeoOffice 2.1 Early Access as a match. In this release, we do not want the installer to preserve the Early Access language pack resource files as some are incompatible with this build and will show as blank text. Also, we don't want the language pack or patch installer to upgrade an Early Access installation as it corrupt that installation. Note: I tested this code by building the installer, language packs, and patch installer and then doing the following steps:
|
03/15/07 | pluby | Done |
Change the order in the makefile in which icon files in etc/package are added to the installer's share/config/images*.zip files etc/package in the following sequence:
|
03/16/07 | pluby | Done |
Commit and test updated icon files in etc/package.
|
03/16/07 | OPENSTEP | Done |
Get latest version of DicOOo.sxw and FontOOo.sxw files, replace all references to the Control key with the Command key, and commit files in etc/share/dict/ooo. Note: to do this task, do the following steps:
sh for i in `find /path/to/first/directory -name content.xml -o -name "Translation*.xml"`; do ( cat $i ; echo ) | tr '\r' '\n' > $i.tmp mv -f $i.tmp $i done sh for i in `find /path/to/first/directory -name content.xml -o -name "Translation*.xml"`; do cat $i | \ sed 's#\[CTRL\]#[Command]#g' | \ sed 's#\[Ctrl\]#[Command]#g' | \ sed 's#\[ctrl\]#[Command]#g' | \ sed 's#\[Strg\]#[Command]#g' | \ sed 's# CTRL #[Command]#g' | \ sed 's#\(Ctrl\)#[Command]#g' | \ sed 's#«Ctrl»#[Command]#g' | \ sed 's#OpenOffice\.org#NeoOffice#g' | \ sed 's#OpenOffice#NeoOffice#g' | \ sed 's#/NeoOfffice/#/OpenOffice.org/#g' > $i.tmp mv -f $i.tmp $i done sh cd /path/to/first/directory zip -r /path/to/etc/share/dict/ooo/DicOOo.sxw . |
03/16/07 | pluby | Done |
Merge any NeoOffice 2.1 Early Access bug fixes committed to the NeoOffice-2_1_Early_Access_branch branch. Note: As of 03/15/2007, I have already merged the fixes included in NeoOffice 2.1 Early Access Patch 2 Test 1. On 03/17/2007 I refixed bug 1971 in vcl module. |
03/18/07 | pluby | Done |
Tag the code in the HEAD branch with the NeoOffice-2_1 tag. Note: Because the installer build checks out source code from the anoncvs.neooffice.org server, the following steps must be done to complete this task properly:
|
03/18/07 | OPENSTEP | Done 3/18/07 |
Create releasable NeoOffice 2.1 build for Intel. Note: the following steps are overkill, but they ensure that all recent changes to the NeoOffice custom code has been built:
|
03/19/07 | pluby | Done |
Create releasable NeoOffice 2.1 build for PowerPC. Note: Use the same steps as used for the matching Intel task. |
03/19/07 | OPENSTEP | Done |
Create backup copy of releasable Intel binaries and upload them to staging server. The following steps are the steps that I used to create my backup copy:
hdiutil create -srcfolder /path/to/NeoOffice-2.1/directory \ -format UDTO -ov -o /path/to/output/NeoOffice-2.1.cdr sftp all 58 files up to staging server and chmod 444 *.dmg all of the files on the staging server. diff the ls -l *Intel.dmg | awk '{print $9 " " $5} | sort' output of the files on the server and in local NeoOffice-2.1 directory. |
03/19/07 | pluby | Done |
Create backup copy of releasable PowerPC binaries and upload them to staging server. Note: Use the same steps as used for the matching Intel task (except diff using ls -l *PowerPC.dmg | awk '{print $9 " " $5} | sort'. |
03/19/07 | OPENSTEP | Done 3/19/07 |
Verify that the releasable installer and one or more language packs install and run on Intel for the following Mac OS X versions:
|
03/19/07 | pluby | Done |
Verify that the releasable installer and one or more language packs install and run on PowerPC for the following Mac OS X versions:
|
03/19/07 | pluby | Done |
Website
Task | Due Date | Assigned | Status |
Since we are dropping support of NeoOffice 1.2.2 and no longer doing CD sales, remove all pages and links to these in the download.neooffice.org website. Note: here are the overall changes that I made:
grep -r '<a href=".*cd.*">' * grep -r '<a href="old.*">' * |
03/14/07 | pluby | Done |
Create 2.1 Early Access Branch. This branches the existing website to avoid modifying existing website while it is live. Steps:
|
03/17/07 | OPENSTEP | Done |
Migrate mirror rotation cron job to independent user account on hanuman
|
03/26/2007 | OPENSTEP | |
Update all version names, file URLs, and patch version in all of the earlyaccess.*php files in the download.neooffice.org web pages. Note: I used the following steps to do this:
sh for i in `find . -name "earlyaccess*.php" -o -name "header.html" | grep -v "earlyaccess\.php"`; do sed 's#NeoOffice 2\.1 Early Access#NeoOffice 2.1#g' $i | \ sed 's#_Early_Access##g' > $i.tmp mv $i.tmp $i done sh for i in `find . -name "earlyaccesspatch.php" -o -name "header.html"`; do sed 's#Patch 2#Patch 0#g' $i | \ sed 's#Patch-2#Patch-0#g' > $i.tmp mv $i.tmp $i done |
03/19/2007 | pluby | Done |
Merge the updates made to the Early Access pages in the download.neooffice.org web pages to their matching regular pages. Note: use the following steps to complete this task:
sh for i in `find . -name "build.php" -o -name "download.php" -o -name "features.php" -o -name "patch.php"`; do cp `dirname $i`/earlyaccess`basename $i` $i done sh for i in `find . -name "build.php" -o -name "download.php" -o -name "features.php" -o -name "patch.php"`; do sed 's#href="earlyaccess#href="#g' $i > $i.tmp mv $i.tmp $i done |
03/23/2007 | OPENSTEP |
Mirrors
NeoOffice's rsync server is hosted by HeapSys and our volunteer mirrors obtain the NeoOffice binaries by nightly runs of the following command on their mirrors:
rsync -r --delete rsync://www.heapsys.com/ftp/ /path/to/NeoOffice/mirror/directory
Task | Due Date | Assigned | Status |
Notify the rsync server and mirror maintainers that we will be pushing new binaries out to them a few days before the 27 March 2007 release date so that they can prepare for the huge surge in bandwidth usage that their servers will get in the first month or so after reelease. | 03/12/07 | pluby | Done |
Remove NeoOffice 1.2.2 binaries from mirrors after completing the removal of the links NeoOffice 1.2.2 download pages from the download.neooffice.org website (see Website section on this page for that task). Note: the following steps were used to complete this task:
|
03/16/07 | pluby | Done |
Provide list of URLs of binaries and their respective file sizes to the rsync server maintainer so that the rsync server can copy them to the rsync server. | 03/21/07 | ||
Verify that the binaries are available from the rsync server and verify that each of the mirrors has synched them to their site. Try to contact any mirrors that have not synched to see if their is any problem or if the site can no longer be a mirror. | 03/23/07 |