Jackson: on with the show, 0.9.4 is here!
In honor of all the fallen tasty turkeys, the Jackson Project team is proud to present release 0.9.4 of Jackson json processor. While not as much to be thankful about as the forthcoming 1.0 release candidate, this is nonetheless a significant upgrade (I call it a "mop-up version"), and upgrading is strongly recommended for all users.
This new version has following things going for it:
- Simple yet elegant way of adding support for new on/off features (using enums JsonParser.Feature and JsonGenerator.Feature)
- Optional support for non-standard Json comments (c and c++ style), requested by many users.
- Clear definitions of if and when parsers/generators close the underlying streams/readers/writers, as well as matching feature (JsonParser.Feature.AUTO_CLOSE_SOURCE and JsonGenerator.Feature.AUTO_CLOSE_TARGET) to further force specific behavior
- Copy-through methods added to JsonGenerator, which allow for single-call copying of single source events, as well as full sub-trees (Object/Array with all the contents)
- Efficient and versatile Base64 content write support for JsonGenerator (versatile meaning that couple of non-standard variants, such "MODIFIED-FOR-URL" are also supported, easy to add more
- Jars now double as OSGi bundles, full metadata added to run on OSGi containers (briefly tested with Felix CLI)
- Vastly improved (professional strength) unit test suite (code coverage at around 70% and going up)
- A few bug fixes, many resulting from extensive testing: found problems mostly related to UTF-8 decoding issues
As usual, check out the release notes for details.
And then on to the forward-looking statements. This release was specifically focused on clearing up the most pressing feature requests and bug fixes, so that the last significant thing to add for 1.0 -- data binding for Java beans -- can be added. So the next thing to rewrite will be "java type" mapping, so that it will support mapping data to and from regular Java beans, similar to XStream or JAXB (although with much more limited feature set and configurability). As usual past performance is no guarantee of future etc etc, hold your breath at your own risk.