mirror of
https://github.com/eclipse-aspectj/aspectj.git
synced 2024-07-30 20:20:12 +02:00
b50545ddf3
listed test in release-testing.txt using spaces to avoid tab differences in release-testing.txt
305 lines
12 KiB
Plaintext
305 lines
12 KiB
Plaintext
================================================================================
|
|
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 three 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).
|
|
|
|
* When running ant, use the version in modules/lib/ant,
|
|
i.e., modules/lib/ant/bin/ant [ ]
|
|
|
|
* Run ant on build/build.xml :
|
|
|
|
$ cd build
|
|
$ ant clean [ ]
|
|
$ ant fail-unless-boot-libraries-uptodate [ ]
|
|
$ ant [ ]
|
|
|
|
* Save the build output (console log) as build-<version>.log.txt [ ]
|
|
(e.g. build-1.1rc1.log.txt)
|
|
|
|
* Save the built jar to the releases directory [ ]
|
|
(releases/aspectj-<version>)
|
|
|
|
* Verify name is aspectj-<version>.jar [ ]
|
|
|
|
|
|
Pre-installation tests:
|
|
================================================================================
|
|
|
|
* run junitModules.xml tests
|
|
|
|
- go to modules/tests/ and run
|
|
|
|
$ ant -f junitModules.xml {target} \
|
|
-Daspectjrt.path=../aj-build/dist/tools/lib/aspectjrt.jar
|
|
|
|
for each target:
|
|
|
|
-- 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):
|
|
|
|
Where {harness} is
|
|
|
|
$ cd tests
|
|
$ {java-1.3} -jar ../aj-build/jars/testing-drivers-all.jar
|
|
|
|
Do:
|
|
|
|
$ {harness} -release -logFail ajcTests.xml [ ]
|
|
|
|
-- save results in ajcTests-result-<version>-JDK13.txt [ ]
|
|
(e.g. ajcTests-result-1.1rc1-JDK13.txt)
|
|
|
|
-- record any failures (should be none) inline here.
|
|
|
|
$ {harness} -release -logFail -emacssym ajcTests.xml [ ]
|
|
|
|
-- save results in ajcTests-result-<version>-emacssym-JDK13.txt [ ]
|
|
(e.g. ajcTests-result-1.1rc1-emacssym-JDK13.txt)
|
|
|
|
-- record any failures (should be none) inline here.
|
|
|
|
* run Harness tests on the 1.4 vm:
|
|
|
|
Where {harness} is
|
|
|
|
$ cd tests
|
|
$ {java-1.4} -jar ../aj-build/jars/testing-drivers-all.jar
|
|
|
|
Do:
|
|
|
|
$ {harness} -release -logFail ajcTests.xml [ ]
|
|
|
|
-- save results in ajcTests-result-<version>-JDK14.txt [ ]
|
|
(e.g. ajcTests-result-1.1rc1-JDK14.txt)
|
|
|
|
-- record any failures (should be none) inline here.
|
|
|
|
$ {harness} -release -logFail -emacssym ajcTests.xml [ ]
|
|
|
|
-- save results in ajcTests-result-<version>-emacssym-JDK14.txt [ ]
|
|
(e.g. ajcTests-result-1.1rc1-emacssym-JDK14.txt)
|
|
|
|
-- record any failures (should be none) inline here.
|
|
|
|
* run Harness on ajcTestsFailing.xml
|
|
|
|
Where {harness} is
|
|
|
|
$ cd tests
|
|
$ {java-1.3} -jar ../aj-build/jars/testing-drivers-all.jar
|
|
|
|
Do:
|
|
|
|
$ {harness} -release -logFail ajcTestsFailing.xml [ ]
|
|
|
|
-- save results in ajcTestsFailing-result-<version>-JDK13.txt [ ]
|
|
(e.g. ajcTestsFailing-result-1.1rc1-JDK13.txt)
|
|
|
|
-- record any failures inline here (should be none. 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 (file not required) [ ]
|
|
|
|
* 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 [ ]
|
|
|
|
* With aspectjtools.jar in the ant/lib directory, also build
|
|
- tracing-adapter [ ]
|
|
- tracing-adapter-ajc [ ]
|
|
|
|
|
|
* 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 manual dates correct in docs [ ]
|
|
|
|
* verify api docs present and correct [ ]
|
|
|
|
Product Testing
|
|
================================================================================
|
|
|
|
These tests are a bit more rigorous and time-consuming.
|
|
Run at your discretion
|
|
|
|
* Compile AspectJ sources using AspectJ [ ]
|
|
|
|
cd tests/product/build-aspectj
|
|
ant
|
|
|
|
* Perform steps specified in the Development Guide on AJBrowser [ ]
|
|
|
|
* Perform steps specified in tests/ajdt/script.html [ ]
|
|
|
|
* Build/run tests/test-other-systems.xml (PARC has other sources) [ ]
|
|
|
|
|
|
Cross-Platform Testing
|
|
================================================================================
|
|
|
|
(Assuming prior tests were done under windows)
|
|
|
|
* Install, build and run spacewar on Linux using AJBrowser [ ]
|
|
|
|
* Install, build and run spacewar on Mac OS X using AJBrowser [ ]
|
|
|
|
* Download from IE, Netscape, and Mozilla, new and old [ ]
|
|
if they have not been validated with the current HTML.
|
|
|
|
Bug database
|
|
================================================================================
|
|
|
|
* No P1 or P2 bugs, and no lower bugs that should be P1/P2 [ ]
|
|
|
|
* All fixed bugs verified (at least by fixing developer, [ ]
|
|
though preferably with a test case)
|
|
|
|
* Please comment if there are compiler fixes without test cases [ ]
|
|
|
|
|
|
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 [ ]
|