Browse Source

Release checklist

tags/V1_1_0_RC2
acolyer 21 years ago
parent
commit
5e4671ab83
1 changed files with 244 additions and 0 deletions
  1. 244
    0
      build/release-checklist.txt

+ 244
- 0
build/release-checklist.txt View File

@@ -0,0 +1,244 @@
================================================================================
Checklist for Preparing an AspectJ Release
================================================================================

Create a fresh copy of this file, and then record your progress in the file and
save it as part of the release notes on completion.

Before you begin... you will need:
================================================================================

* A JDK v1.4.x java -fullversion : [ ]
* A JDK v1.3.x java -fullversion : [ ]
* A 1.1.8 JRE version : [ ]
* A Windoze box OS version : [ ]
* A Linux box distribution : [ ]
* An iMac (nice-to-have) JDK 1.4.x : [ ]
* Eclipse version : [ ]

* A pair of scissors (get an adult to help you with these)
* Some sticky-backed plastic

OK, so the last two aren't strictly necessary, but they always seem to come in
useful on the telly.

Extraction:
================================================================================

* Full CVS extract of org.aspectj/modules [ ]
date and time of extract : [ ]

Preparation:
================================================================================

* Create a new directory under releases for this release [ ]
(e.g. releases/aspectj-1.1rc1)
* Save a copy of this file there as package-and-test-notes.txt [ ]
* Edit build/build-properties.xml and set the version properties for this
release [ ]
e.g.
<property name="build.version" value="1.1rc1"/>
<property name="build.version.base" value="1.1"/>
<property name="build.version.long" value="1.1 release candidate 1"/>
<property name="build.version.short" value="1.1rc1"/>
* Edit org.aspectj.ajdt.core/src/org.aspectj.ajdt.ajc/messages.properties and
set the version properties for this release [ ]
e.g.

### AspectJ-specific messages
configure.version = AspectJ Compiler 1.1rc1
configure.directoryNotExist = invalid option or directory does not exist: {0}
## 3456789012345678901234567890123456789012345678901234567890123456789012345
### miscellaneous
misc.usage = AspectJ Compiler 1.1 release candidate 1\n\
...
Build:
================================================================================

* Ensure JAVA_HOME is set to point to your 1.3 JDK [ ]
echo $JAVA_HOME [ ]
(even when you "Run Ant..." from eclipse, the value of JAVA_HOME is
used rather than the JRE specified in your Eclipse settings).
* Run ant on build/build.xml :

- ant clean [ ]
- ant [ ]
- ant clean [ ]
- ant [ ]

(we do this twice to ensure any changes to the build module itself made
in the first pass are used on the second pass).
* Save the build output (console log) as build<version>.log [ ]
(e.g. build1.1rc1.log)
* Save the built jar as aspectj-<version>.jar [ ]

Pre-installation tests:
================================================================================

* run junitModules.xml tests

- "Run Ant..." on tests/junitModules.xml, using the property tab to set
property "aspectjrt.path=
<eclipse-dir>/workspace/aj-build/dist/tools/lib/aspectjrt.jar"
-- target = clean [ ]
-- target = default [ ]
- Record any failures here (should be none)
- Save the test results as junitModules.report.zip [ ]
(zip of eclipse/workspace/tests/bin/junitXmlOutput/html)
* run Harness tests on the 1.3 vm (ajcTests.xml):

- run org.aspectj.testing.drivers.Harness with args -logFail -release
ajcTests.xml [ ]
-- save results in ajcTests-result-<version>.txt [ ]
(e.g. ajcTests-result-1.1rc1.txt)
-- record any failures (should be none) inline here.
- run org.aspectj.testing.drivers.Harness with args
-logFail -release -emacssym ajcTests.xml [ ]

-- save results in ajcTests-result-<version>-emacssym.txt [ ]
(e.g. ajcTests-result-1.1rc1.txt)
-- record any failures (should be none) inline here.
* run Harness tests on the 1.4 vm:

- run org.aspectj.testing.drivers.Harness with args -logFail -release
ajcTests.xml [ ]
-- save results in ajcTests-result-<version>-JDK14.txt [ ]
(e.g. ajcTests-result-1.1rc1.txt)
-- record any failures (should be none) inline here.
- run org.aspectj.testing.drivers.Harness with args
-logFail -release -emacssym ajcTests.xml [ ]

-- save results in ajcTests-result-<version>-emacssym-JDK14.txt [ ]
(e.g. ajcTests-result-1.1rc1.txt)
-- record any failures (should be none) inline here.
* run Harness on ajcTestsFailing.xml

- run org.aspectj.testing.drivers.Harness with args -logFail -release
ajcTestsFailing.xml [ ]
-- save results in ajcTestsFailing-result-<version>.txt [ ]
(e.g. ajcTestsFailing-result-1.1rc1.txt)
-- record any failures inline here (should be none -ie ajcTestsFailing
should be empty for a final release, known exceptions are
permissible for a non-final release).
Installation & Verification Tests
================================================================================

* install from aspectj-<version>.jar as built above

- verify version number and build date on splash screen [ ]
- save screenshot of splash screen (not essential) as [ ]
Installer-Splash-Screen.bmp (file format may vary)
* verify directory structure created ok [ ]

* check version in README-AspectJ.html [ ]

* check version in README-11.html [ ]

* check license present and correct version (currently CPLv1.0) [ ]

* run "ajc -version", verify version info [ ]

* run "ajc", verify version info [ ]

* from doc/examples, run "ant", verify spacewar builds and runs ok [ ]

* in doc/examples, build ant targets as follows:
- bean [ ]
- intro [ ]
- intro-clone [ ]
- intro-compare [ ]
- intro-hash [ ]
- observer [ ]
- spacewar [ ]
- spacewar-demo [ ]
- telecom [ ]
- telecom-billing [ ]
- telecom-timing [ ]
- tjp [ ]
- tracing-1 [ ]
- tracing-2 [ ]
- tracing-3 [ ]
- tracing-bc [ ]
- tracing-none [ ]
* run pre-compiled version of spacewar on a 1.1.8 vm [ ]

* verify debug info included in class files
- "javap -l org.aspectj.tools.ajc.Main" under jdk 1.4 or later [ ]
* verify ant-tasks.html has correct date and version info [ ]

* verify manual dates correct in docs [ ]

* verify api docs present and correct [ ]

Cross-Platform Testing
================================================================================

(Assuming prior tests were done under windows)

* Install, build and run spacewar on Linux [ ]

* Install, build and run spacewar on Mac OS X [ ]

Other Release Objectives
================================================================================

Record any other details or release specific objectives test results here.

Release
================================================================================

Once developer consensus is reached on the build:

* commit all releases/aspectj-<version>/*.* files created during
this process [ ]

* tag /home/technology/org.aspectj as vM_m_r_XX (e.g. v1_1_0_RC1) [ ]

* post aspectj-<version>.jar to
download.eclipse.org/technology/ajdt/aspectj-<version>.jar [ ]
* download from
http://download.eclipse.org/technology/ajdt/aspectj-<version>.jar
and install [ ]
* post news article on project home page [ ]

* post link on download page [ ]

* post announce message to aspectj-users, aspectj-announce,
aosd-discuss, aosd-announce [ ]
* buy beer [ ]

Loading…
Cancel
Save