| Version: 2.1.0 |
| |
| Release date: |
| xx-Jun-2012 |
| |
| Description: |
| New minor version for 2.x. |
| |
| Fixes: |
| |
| * [JACKSON-830]/[Issue-19]: Change OSGi bundle name to be fully-qualified |
| * [JACKSON-851]: State corruption with ObjectWriter, DefaultPrettyPrinter |
| (reported by Duncan A) |
| * Minor fix wrt [Issue-11], coercion needed extra checks |
| |
| Improvements: |
| |
| * [JACKSON-758]: Remove 'IOException' from throws clauses of "writeValueAsString" |
| and "writeValueAsBytes" of ObjectMapper/ObjectWriter |
| (suggested by G-T Chen) |
| * [JACKSON-839]: Allow "upgrade" of integer number types for |
| UntypedObjectDeserializer, even with default typing enabled. |
| * [JACKSON-850]: Allow use of zero-arg factory methods as "default creator" |
| (suggested by Razvan D) |
| * [Issue#9]: Implement 'required' JSON Schema attribute for bean properties |
| * [Issue#20]: Add new exception type, InvalidFormatException (sub-type of |
| JsonMappingException) to indicate data format problems |
| (suggested by HolySamosa@github) |
| * [Issue#30] ObjectReader and ObjectWriter now try to pre-fetch root |
| (de)serializer if possible; minor performance improvement (2% for small POJOs). |
| * [Issue#33] Simplified/clarified definition of 'ObjectReader.readValues()'; |
| minor change in behavior for JSON Array "wrapped" sequences |
| |
| New features: |
| |
| * [Issue#21]: Add 'ObjectNode.set(...)' method (and related) to improve |
| chaining, semantic consistency of Tree Model API |
| (suggested by fge@Github) |
| * [Issue#22]: Add 'ObjectMapper.setAnnotationIntrospectors()' which allows |
| defining different introspectors for serialization, deserialization |
| * [Issue#24]: Allow serialization of Enums as JSON Objects |
| (suggested by rveloso@github) |
| * [Issue#28]: Add 'ObjectMapper.copy()', to create non-linked copy of |
| mapper, with same configuration settings |
| * [Issue#29]: Allow serializing, deserializing POJOs as JSON Arrays |
| by using `@JsonFormat(shape=Shape.ARRAY)` |
| * [Issue#40]: Allow serialization of Collections as JSON Objects |
| (and deserialization from) |
| (suggested by rveloso@github) |
| * [Issue#45]: Add '@JsonNaming' annotation to define per-class PropertyNamingStrategy |
| (suggested by Mark W) |
| * (issue #4 of jackson-annotations): Add `@JsonIdentityInfo(firstAsId=true)` |
| to force ALL references to an object written as Object Id, even the first one. |
| * Added 'ObjectReader#withHandler' to allow for reconfiguring deserialization |
| problem handler |
| (suggested by 'electricmonk') |
| |
| Other changes: |
| |
| * New variant of AnnotationIntrospector.getFormat(), to support class |
| annotations |
| * It is now possible to serialize instances of plain old Object, iff |
| 'FAIL_ON_EMPTY_BEANS' is disabled. |
| |
| INCOMPATIBILITIES: (rats!) |
| |
| * Note that [Issue#33] (see above) is, technically speaking, backwards |
| imcompatible change. It is estimated that it should NOT affect most |
| users, as changes are to edge cases (and undocumented ones at that). |
| However, it can potentially cause problems with upgrade. |
| |
| ------------------------------------------------------------------------ |
| === History: === |
| ------------------------------------------------------------------------ |
| |
| 2.0.4 (26-Jun-2012) |
| |
| * [Issue#6]: element count for PrettyPrinter, endObject wrong |
| (reported by "thebluemountain") |
| * [JACKSON-838]: Utf8StreamParser._reportInvalidToken() skips letters |
| from reported token name |
| (reported by Lóránt Pintér) |
| * [JACKSON-841] Data is doubled in SegmentedStringWriter output |
| (reported by Scott S) |
| * [JACKSON-842] ArrayIndexOutOfBoundsException when skipping C-style comments |
| (reported by Sebastien R) |
| |
| 2.0.3: no version 2.0.3 released -- only used for extension modules |
| |
| 2.0.2 [14-May-2012] |
| |
| Fixes: |
| |
| * [Issue#14]: Annotations were not included from parent classes of |
| mix-in classes |
| (reported by @guillaup) |
| * [JACKSON-824]: Combination of JSON Views, ObjectMapper.readerForUpdating() |
| was not working |
| (reported by Nir S) |
| (and all fixes from 1.9.7) |
| |
| Improvements: |
| |
| * [Issue#11]: Improve ObjectMapper.convertValue()/.treeToValue() to use |
| cast if possible |
| |
| 2.0.1 [23-Apr-2012] |
| |
| Fixes: |
| |
| * [JACKSON-827] Ensure core packages work on JDK 1.5 |
| (reported by Pascal g) |
| * [JACKSON-829] Custom serializers not working for List<String> properties, |
| @JsonSerialize(contentUsing) |
| (reported by James R) |
| |
| Improvements: |
| |
| * [Issue#5]: Add support for maps with java.util.Locale keys to the set of |
| StdKeyDeserializers |
| (contributed by Ryan G) |
| |
| 2.0.0 [25-Mar-2012] |
| |
| Fixes: |
| |
| * [JACKSON-368]: Problems with managed references, abstract types |
| * [JACKSON-711]: Delegating @JsonCreator did not work with Injectable values |
| * [JACKSON-798]: Problem with external type id, creators |
| (reported by Casey L) |
| (and all fixes up until and including 1.9.6) |
| |
| Improvements: |
| |
| * [JACKSON-546]: Indicate end-of-input with JsonMappingException instead |
| of EOFException, when there is no parsing exception |
| * [JACKSON-664]: Reduce overhead of type resolution by adding caching |
| in TypeFactory |
| * [JACKSON-690]: Pass DeserializationContext through ValueInstantiator |
| * [JACKSON-695]: Add 'isEmpty(value)' in JsonSerializer to allow |
| customizing handling of serialization of empty values |
| * [JACKSON-710]: 'ObjectMapper.convertValue()' should ignore root value |
| wrapping/unwrapping settings |
| * [JACKSON-730] Split various features (JsonParser, JsonGenerator, |
| SerializationConfig, DeserializationConfig) into per-factory |
| features (MapperFeature, JsonFactory.Feature) an per |
| instance features (existing ones) |
| * [JACKSON-732]: Allow 'AnnotationIntrospector.findContentDeserializer()' |
| (and similar) to return instance, not just Class<?> for instance |
| (requested by James R) |
| * [JACKSON-736]: Add (more) access to array, container and map serializers |
| * [JACKSON-737]: Allow accessing of "creator properties" for BeanDeserializer |
| * [JACKSON-748]: Add 'registerSubtypes' to 'Module.setupContext' (and SimpleModule) |
| * [JACKSON-749]: Make @JsonValue work for Enum deserialization |
| * [JACKSON-769]: ObjectNode/ArrayNode: change 'put', 'insert', 'add' to return |
| 'this node' (unless already returning something) |
| * [JACKSON-770]: Simplify method naming for JsonNode, drop unnecessary 'get' prefix |
| from methods like 'getTextValue()' (becomes 'textValue()') |
| * [JACKSON-777]: Rename 'SerializationConfig.Feature' as 'SerializationFeature', |
| 'DeserializationConfig.Feature' as 'DeserializationFeature' |
| * [JACKSON-780]: MissingNode, NullNode should return 'defaultValue' from 'asXxx' methods, |
| (not 0 for numbers), as they are not numeric types |
| * [JACKSON-787]: Allow use of @JsonIgnoreProperties for properties (fields, getters, setters) |
| * [JACKSON-795]: @JsonValue was not working for Maps, Collections |
| * [JACKSON-800]: Add 'Module.SetupContext#addDeserializationProblemHandler' |
| (suggested by James R) |
| |
| New features: |
| |
| * [JACKSON-107]: Add support for Object Identity (to handled cycles, shared refs), |
| with @JsonIdentityInfo |
| * [JACKSON-435]: Allow per-property Date formatting using @JsonFormat. |
| * [JACKSON-437]: Allow injecting of type id as POJO property, by setting |
| new '@JsonTypeInfo.visible' property to true. |
| * [JACKSON-469]: Support "Builder pattern" for deserialiation; that is, allow |
| use of separate Builder object for data binding, creating actual value |
| * [JACKSON-608]: Allow use of JSON Views for deserialization |
| * [JACKSON-636]: Add 'SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS' to allow |
| forced sorting of Maps during serialization |
| (suggested by Joern H) |
| * [JACKSON-669]: Allow prefix/suffix for @JsonUnwrapped properties |
| (requested by Aner P) |
| * [JACKSON-707]: Add 'JsonNode.deepCopy()', to create safe deep copies |
| of ObjectNodes, ArrayNodes. |
| * [JACKSON-714]: Add general-purpose @JsonFormat annotation |
| * [JACKSON-718]: Added 'JsonNode.canConvertToInt()', 'JsonNode.canConvertToLong()' |
| * [JACKSON-747]: Allow changing of 'SerializationFeature' for ObjectWriter, |
| 'DeserializationFeature' for ObjectReader. |
| * [JACKSON-752]: Add @JsonInclude (replacement of @JsonSerialize.include) |
| * [JACKSON-754]: Add @JacksonAnnotationsInside for creating "annotation |
| bundles" (also: AnnotationIntrospector.isAnnotationBundle()) |
| * [JACKSON-762]: Allow using @JsonTypeId to specify property to use as |
| type id, instead of using separate type id resolver. |
| * [JACKSON-764]: Allow specifying "root name" to use for root wrapping |
| via ObjectReader, ObjectWriter. |
| * [JACKSON-772]: Add 'JsonNode.withArray()' to use for traversing Array nodes. |
| * [JACKSON-793]: Add support for configurable Locale, TimeZone to use |
| (via SerializationConfig, DeserializationConfig) |
| * [JACKSON-805]: Add 'SerializationFeature.WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED' |
| to improve interoperability with BadgerFish/Jettison |
| * [JACKSON-810]: Deserialization Feature: Allow unknown Enum values via |
| 'DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL' |
| (suggested by Raymond R) |
| * [JACKSON-813]: Add '@JsonSerializableSchema.id' attribute, to indicate |
| 'id' value to add to generated JSON Schemas. |
| |
| [entries for versions 1.x and earlier not retained; refer to earlier releases) |