[jdom-interest] JDOM2 Update.

Rolf jdom at tuis.net
Sun Oct 2 21:15:39 PDT 2011

Hi All.

And there it is ... short-term goal 1:


The page with the JDOM2 metrics. You can browse the jUnit and Cobertura 
reports, and see what's happening.

The page is really 'spartan' right now and colours and style are 
'lacking', but, it has the base details.


On 02/10/2011 9:36 PM, Rolf wrote:
> Hi All
> Another update.
> This has been a busy spell since the last update.
> JDOM 1.1.2
> ==========
> This is ready to go, and has been going through the final stages of
> publishing it. You can see the change-log by either inspecting the
> Changes file or the issues list:
> https://github.com/hunterhacker/jdom/blob/jdom-1.1.2/core/CHANGES.txt
> https://github.com/hunterhacker/jdom/issues?labels=backport+1.1.2+done&sort=created&direction=desc&state=closed&page=1
> In summary, there have been 14 bug fixes, and the Jar will be available
> on maven-central.
> The JDOM 1.x branch will remain open for bug-fixes only.
> If you want a sneak-peak of the 1.1.2 code you can download the source
> at: https://github.com/hunterhacker/jdom/zipball/jdom-1.1.2
> JDOM 2
> ======
> There are two major news items here, and an anticipated plan:
> 1. the jUnit testing has close to complete coverage, with only some
> unreachable code, and some quirky exception cases being missed;
> 2. Basic Generics changes have been made.
> 3. Putting together a JDOM2 plan
> Unit Tests:
> -----------
> There are some failing tests, and some ignored tests. The failing tests
> relate two one of two things:
> - there is a bug in JDOM where multiple consecutive Text content
> instances are not processed correctly... see
> https://github.com/hunterhacker/jdom/issues/31 I have ignored some
> tests, and left one failing until this gets resolved.
> - The Jaxen code has a bug with respect to the ordering of Attribute and
> Namespace nodes, see http://jira.codehaus.org/browse/JAXEN-215 It means
> that for Attributes and Namespaces the XPath node set is not returned in
> Document order, and the Test cases expect that, so currently they fail.
> (I have a 'patched' version of Jaxen in my environment and the tests pass).
> Generics:
> ---------
> I have done a first pass at Generics for the code. The intention for
> this was was to do a cleanup of warnings and to get a baseline of a
> 'simple' JDOM that's 'neat'. See the conclusion for how to get the code.
> I have made only one significant API change which is to substantially
> extend the 'Filter' interface, and implementing classes. This has
> allowed for a completely 'clean' JDOM2 code base. The Filter API change
> is backward-compatible (unless you happen to have your own
> implementation of the Filter interface), and as a result, you should be
> able to do a drop-in replacement of the current JDOM2 code with your
> existing code (except you will have to change all the org.jdom.* imports
> to org.jdom2.*
> At this point the code is as close as possible to being a 'minimum'
> JDOM2: it is JDOM with Generics, plus a minimum amount of spice on the
> Filter API to make the getContent(Filter) stuff work. See the
> 'Conclusion' for how to get the code.
> Planning:
> ---------
> At this point The code is 'ripe' for ideas. The regression test harness
> is comprehensive, the code is close to 'clean', and yet it is all still
> very familiar to anyone familiar with JDOM.
> There is one concern I have with the code in it's current state, and
> that is the serialization code, which is haphazard, incomplete, and
> inconsistent. I am not an expert on serialization, so I have left it
> unchanged.
> If you ignore serialization issues in eclipse, there are no longer any
> warnings at all. Running 'FindBugs' identifies only two issue types,
> Serialization, and some 'inefficient new Integer() calls)'
> So, given the current state of the code, what comes next?
> In the short term I intend to get some builds up on to the web-site so
> that people can play with the code. In addition, there will be some
> statistics related to code coverage, and unit tests. This will give
> people an easy way to track progress, and to play with the code.
> Then I intend to fix some of the more 'trivial' bugs that are still
> outstanding, like the TRIM_FULL_WHITE bugs, some Iterator problems, List
> problems, etc.
> At the same time I plan on updating the wiki documentation for a bunch
> of things.
> So, at the end of this week I expect to have a better idea of what the
> final result should look like.
> Conclusion
> ----------
> If you want to have a look at the code, get a feel for what it looks
> like, you can get it very easily. I have tagged the current code state
> with the tag 'jdom2-epoch'. Thus, you can reference that in github, and
> get a zipped package of the code base for that tag. Clicking on this
> link should start a download for you:
> https://github.com/hunterhacker/jdom/zipball/jdom2-epoch
> If you have suggestions or ideas for what you think the results should
> look like now is the time to speak up.
> Rolf
> _______________________________________________
> To control your jdom-interest membership:
> http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com

More information about the jdom-interest mailing list