Differences between revisions 6 and 7
Revision 6 as of 2007-06-16 21:21:50
Size: 3027
Revision 7 as of 2007-07-06 14:38:34
Size: 3143
Deletions are marked like this. Additions are marked like this.
Line 34: Line 34:
   Depending on the size of the reports to handle, you may need to set ANT_OPTS, for instance to -Xms100m -Xmx200m

Table of Contents TableOfContents(3)

Writing a Release Note

Good release notes are essential for users as they upgrade from one release to the next. Here's the procedure the Derby team uses to maintain useful release notes:

  • For JIRAs which need a release note, you should turn on the "Release Note Needed" flag and attach a file called "releaseNote.html".
  • The template for releaseNote.html lives in tools/release/templates/releaseNote.html.
  • Before attaching your release note, make sure that the release processes can digest it. Run the lint tool, ReleaseNoteReader, on your note as follows: "java org.apache.derbyBuild.ReleaseNoteReader RELEASE_NOTE_FILE" where RELEASE_NOTE_FILE is the name of the file which holds your release note.

  • As you improve the wording of your release note, you simply attach a new version of releaseNote.html. The release documentation will include the last version of the release note.

Some additional discussion regarding this process can be found in DERBY-2570.

Generating the Release Documentation

As part of producing a Derby release, the Release Manager creates RELEASE-NOTES.html, a web page which lives in the top directory of the branch codeline, next to the STATUS and CHANGES files. This file ships with the release distributions and is also incorporated into the release download page on the Apache website. RELEASE-NOTES.html describes Derby's key capabilities and it summarizes the delta between the new release and some previous release--usually the last release produced by the community. The Issues section of RELEASE-NOTES.html includes the releaseNotes.html files which were attached to significant JIRAs.

To generate RELEASE-NOTES.html, the Release Manager first prepares the environment:

  • Build - Builds the branch codeline in order to compile the ReleaseNotesGenerator program.

  • Summarize - Fills in a summary of the release. This involves filling in the top level releaseSummary.xml file, based on the instructions in its template file tools/release/templates/releaseSummaryTemplate.xml.

  • Report - Generates two xml JIRA reports:

    • fixedBugsList.xml - This is the list of issues addressed by the release
    • releaseNotesList.xml - This is the list of issues bearing detailed releaseNotes.html explanations.

Then the Release Manager builds RELEASE-NOTES.html:

  • relnotes.src.reports - In ant.properties, this variable should point at the directory which holds the two xml JIRA reports.

  • cd - Change directory to tools/release.

  • ant - Run ant like so: "ant genrelnotes"

    • Depending on the size of the reports to handle, you may need to set ANT_OPTS, for instance to -Xms100m -Xmx200m

Please note that the Release Manager should run the JIRA reports freshly just before typing "ant genrelnotes". This is because, during the release period, new issues may be fixed and included in the release and the text for individual release notes may be improved. Stale reports overlook the new issues and improved notes.

ReleaseNoteProcess (last edited 2018-03-24 22:43:44 by RichardHillegas)