Jackson Release: 2.1
Version 2.1 was released in October 2012. It is a "minor" relese following 2.0, meaning that it adds new functionality but be backwards compatible with earlier 2.0 release.
Here are links to patch updates made after initial release:
- Incremental/Streaming reading/writing of binary values:
and same for Smile
- note: not implemented for other data formats -- for XML, the issue is that streaming API is not fully usable outside of data-binding, so although technically access could be added, it would not be very useful.
Serialization "styles" via extended support for @JsonFormat.shape annotations:
Issue-24: Enum values can be serialized as JSON Object; or configure on per-field basis as number (index) or String (name)
Issue-29: POJOs may be serialized as @JsonFormat.format=ARRAY (and deserialized back): this can significantly reduce JSON size, reduce processing time (faster, smaller!)
Issue-40: java.util.Collections can be serialized to (and deserialized from) JSON Object.
Issue-45: Add @JsonNaming annotation to override naming strategy on per-POJO basis.
Issue-26 (core): Make it possible to suppress the "separating space" when writing multiple objects with the same json generator
- Common use case: separate root values by linefeed, not space.
Issue-87: New serializer/deserializer base classes -- StdDelegatingSerializer, StdDelegatingDeserializer -- to simplify creation of two-phase (or "delegating") handlers, in which a user-defined Converter is used to convert between main Java type and delegate type, and let Jackson use default handlers for "delegate" type.
In addition to changes in core modules, following add-on modules were significantly improved:
XML dataformat module: Support for "unwrapped" Lists, extensive testing with large(r) JAXB documents, associated fixes
JAXB annotations module: Improvements to handling of identity annotations, renaming, wrapping
New module JAX-RS Smile provider: to make use of Smile format easier, there is now specific provider for it along with JSON and XML.
Original plans were to included additional functionality in following areas:
Support for simple 'required' validation (as post-processing). Due to complexity of BeanDeserializer, this was postponed to a later release.
- Better support for overloaded methods
- Fixes to generic types for root value handling