[ 
https://issues.apache.org/jira/browse/DERBY-4593?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rick Hillegas updated DERBY-4593:
---------------------------------

    Attachment: derby-4593-05-aa-reportParser.diff

Attaching derby-4593-05-aa-reportParser.diff. This patch significantly revamps 
the ReleaseNotesGenerator. Committed at subversion revision 936472.

I have come to the conclusion that I don't know how to write a general tool for 
building the release notes. That is, a tool which does not need to be tweaked 
between releases. The best job I can do is write a tool which clearly states 
what tweaks need to be made for each release.

This patch makes several significant changes to the ReleaseNotesGenerator:

1) Gives up on trying to parse the JIRA reports as valid markup. The xml 
reports produced by JIRA have to be hand-editted to remove references to 
missing namespaces and to add entity definitions. The html reports produced by 
JIRA, although digestible by tolerant browsers, are not well-formed markup--I 
don't know how to parse them without extensively transforming them first. I 
have introduced a simple document reader which makes no assumptions about how 
the document is structured: TagReader.

2) Moves all of the release-specific parsing into a new class called 
ReportParser.

3) Gives up trying to parse the attachment ids for detailed release notes. 
Actually, a previous submission threw in the towel here. This information used 
to be available in the xml reports produced by JIRA. But this information has 
disappeared from the current JIRA reports. Now, lamely, we ask that the release 
manager hard-code those attachment ids. As a consequence of this decision, we 
no longer need two JIRA reports, one listing all of the fixed bugs and the 
second one listing the issues which have detailed release notes attached to 
them.

This is what the release manager has to do to produce release notes now:

1) As before, edit releaseSummary.xml.

2) As before, create a filter modelled on the "10.6.1 Fixed Bugs List" filter. 
Run the filter, reformat it by selecting the "Full Content" option, then save 
the result as a file named fixedBugsList.xml. See the header comment on 
ReportParser$April_2010 for a list of the fields which we expected would be 
present in the 10.6.1 filter results.

3) Edit ReportParser as follows:

a) Implement a new inner subclass which knows how to parse the current format 
of the JIRA report and which lists the attachment ids for the issues which have 
detailed release notes.

b) Change ReportParser.makeReportParser() to return an instance of this new 
inner subclass.

Then generate the release notes as before.


> Track tasks needed to release Derby 10.6.1
> ------------------------------------------
>
>                 Key: DERBY-4593
>                 URL: https://issues.apache.org/jira/browse/DERBY-4593
>             Project: Derby
>          Issue Type: Task
>    Affects Versions: 10.6.0.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>         Attachments: derby-4593-01-ab-initialReleaseNotes.diff, 
> derby-4593-02-aa-secondReleaseNotes.diff, 
> derby-4593-03-aa-firstReleaseNotesForReview.diff, 
> derby-4593-04-aa-tweakReleaseNotes, derby-4593-05-aa-reportParser.diff
>
>
> This is an issue which tracks the work needed to produce the 10.6.1 release.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to