Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1 | Version: 2.0.0 |
| 2 | |
| 3 | Release date: |
| 4 | xx-Feb-2012 |
| 5 | |
| 6 | Description: |
| 7 | The son of Jackson! Behold... |
| 8 | |
| 9 | Fixes: |
| 10 | |
Tatu | 3af61ff | 2012-01-19 15:58:41 -0800 | [diff] [blame] | 11 | * [JACKSON-711]: Delegating @JsonCreator did not work with Injectable values |
Tatu Saloranta | e1ceccd | 2012-03-04 19:52:36 -0800 | [diff] [blame^] | 12 | * [JACKSON-798]: Problem with external type id, creators |
| 13 | (reported by Casey L) |
Tatu | 9e6c28f | 2012-01-19 15:58:08 -0800 | [diff] [blame] | 14 | |
Tatu Saloranta | e1ceccd | 2012-03-04 19:52:36 -0800 | [diff] [blame^] | 15 | Improvements: |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 16 | |
Tatu Saloranta | 28ff1a9 | 2012-01-17 17:54:51 -0800 | [diff] [blame] | 17 | * [JACKSON-546]: Indicate end-of-input with JsonMappingException instead |
| 18 | of EOFException, when there is no parsing exception |
Tatu Saloranta | ee6e3d1 | 2012-01-17 17:28:39 -0800 | [diff] [blame] | 19 | * [JACKSON-664]: Reduce overhead of type resolution by adding caching |
| 20 | in TypeFactory |
Tatu Saloranta | 7555fa2 | 2012-01-14 23:03:04 -0800 | [diff] [blame] | 21 | * [JACKSON-690]: Pass DeserializationContext through ValueInstantiator |
Tatu | 418a239 | 2012-01-12 21:52:07 -0800 | [diff] [blame] | 22 | * [JACKSON-695]: Add 'isEmpty(value)' in JsonSerializer to allow |
| 23 | customizing handling of serialization of empty values |
Tatu Saloranta | 15fb6ff | 2012-01-14 10:31:35 -0800 | [diff] [blame] | 24 | * [JACKSON-710]: 'ObjectMapper.convertValue()' should ignore root value |
| 25 | wrapping/unwrapping settings |
Tatu | 6066826 | 2012-01-19 14:21:12 -0800 | [diff] [blame] | 26 | * [JACKSON-730] Split various features (JsonParser, JsonGenerator, |
| 27 | SerializationConfig, DeserializationConfig) into per-factory |
| 28 | features (MapperConfig.Feature, JsonFactory.Feature) an per |
| 29 | instance features (existing ones) |
Tatu Saloranta | a03e0eb | 2012-01-14 14:01:39 -0800 | [diff] [blame] | 30 | * [JACKSON-732]: Allow 'AnnotationIntrospector.findContentDeserializer()' |
| 31 | (and similar) to return instance, not just Class<?> for instance |
| 32 | (requested by James R) |
Tatu Saloranta | 4b02e9e | 2012-02-03 18:41:29 -0800 | [diff] [blame] | 33 | * [JACKSON-736]: Add (more) access to array, container and map serializers |
Tatu Saloranta | c166fa3 | 2012-02-03 19:42:41 -0800 | [diff] [blame] | 34 | * [JACKSON-737]: Allow accessing of "creator properties" for BeanDeserializer |
Tatu | cbbfbd3 | 2012-01-20 16:07:51 -0800 | [diff] [blame] | 35 | * [JACKSON-748]: Add 'registerSubtypes' to 'Module.setupContext' (and SimpleModule) |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 36 | * [JACKSON-749]: Make @JsonValue work for Enum deserialization |
Tatu | b471a04 | 2012-01-27 11:51:39 -0800 | [diff] [blame] | 37 | * [JACKSON-769]: ObjectNode/ArrayNode: change 'put', 'insert', 'add' to return |
| 38 | 'this node' (unless already returning something) |
Tatu Saloranta | e5d7769 | 2012-01-29 11:20:26 -0800 | [diff] [blame] | 39 | * [JACKSON-770]: Simplify method naming for JsonNode, drop unnecessary 'get' prefix |
| 40 | from methods like 'getTextValue()' (becomes 'textValue()') |
Tatu | 9610aff | 2012-02-02 11:30:08 -0800 | [diff] [blame] | 41 | * [JACKSON-777]: Rename 'SerializationConfig.Feature' as 'SerializationFeature', |
Tatu Saloranta | 2880872 | 2012-02-24 18:35:50 -0800 | [diff] [blame] | 42 | 'DeserializationConfig.Feature' as 'DeserializationFeature' |
Tatu Saloranta | dfc4c88 | 2012-02-11 13:54:27 -0800 | [diff] [blame] | 43 | * [JACKSON-780]: MissingNode, NullNode should return 'defaultValue' from 'asXxx' methods, |
Tatu Saloranta | 2880872 | 2012-02-24 18:35:50 -0800 | [diff] [blame] | 44 | (not 0 for numbers), as they are not numeric types |
| 45 | * [JACKSON-787]: @JsonIgnoredProperties can be used on properties too |
| 46 | * [JACKSON-795]: @JsonValue was not working for Maps, Collections |
Tatu Saloranta | cf5d547 | 2012-03-03 11:47:51 -0800 | [diff] [blame] | 47 | * [JACKSON-800]: Add 'Module.SetupContext#addDeserializationProblemHandler' |
| 48 | (suggested by James R) |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 49 | |
| 50 | New features: |
| 51 | |
Tatu Saloranta | c99a784 | 2012-02-22 18:09:00 -0800 | [diff] [blame] | 52 | * [JACKSON-107]: Add support for Object Identity (to handled cycles, shared refs), |
| 53 | with @JsonIdentityInfo. |
Tatu Saloranta | 26b2e1b | 2012-02-22 22:50:21 -0800 | [diff] [blame] | 54 | * [JACKSON-435]: Allow per-property Date formatting using @JsonFormat. |
Tatu Saloranta | 8958048 | 2012-01-20 22:08:56 -0800 | [diff] [blame] | 55 | * [JACKSON-437]: Allow injecting of type id as POJO property, by setting |
| 56 | new '@JsonTypeInfo.visible' property to true. |
Tatu Saloranta | 17ad21f | 2012-02-19 10:01:31 -0800 | [diff] [blame] | 57 | * [JACKSON-469]: Support "Builder pattern" for deserialiation; that is, allow |
| 58 | use of separate Builder object for data binding, creating actual value |
Tatu Saloranta | 7324b9b | 2012-02-02 21:51:16 -0800 | [diff] [blame] | 59 | * [JACKSON-608]: Allow use of JSON Views for deserialization |
Tatu Saloranta | 49117e0 | 2012-03-03 16:01:12 -0800 | [diff] [blame] | 60 | * [JACKSON-636]: Add 'SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS' to allow |
| 61 | forced sorting of Maps during serialization |
| 62 | (suggested by Joern H) |
Tatu Saloranta | 2aa6484 | 2012-01-14 22:25:08 -0800 | [diff] [blame] | 63 | * [JACKSON-669]: Allow prefix/suffix for @JsonUnwrapped properties |
| 64 | (requested by Aner P) |
Tatu Saloranta | f0e232d | 2012-01-29 16:44:28 -0800 | [diff] [blame] | 65 | * [JACKSON-707]: Add 'JsonNode.deepCopy()', to create safe deep copies |
| 66 | of ObjectNodes, ArrayNodes. |
Tatu Saloranta | ff8c08c | 2012-02-21 22:21:21 -0800 | [diff] [blame] | 67 | * [JACKSON-714]: Add general-purpose @JsonFormat annotation |
Tatu | bc4153e | 2012-01-18 15:05:44 -0800 | [diff] [blame] | 68 | * [JACKSON-718]: Added 'JsonNode.canConvertToInt()', 'JsonNode.canConvertToLong()' |
Tatu | 2ebd69a | 2012-01-20 11:12:12 -0800 | [diff] [blame] | 69 | * [JACKSON-747]: Allow changing of 'SerializationConfig.Feature' for ObjectWriter, |
| 70 | 'DeserializationConfig.Feature' for ObjectReader. |
Tatu Saloranta | 2aa6484 | 2012-01-14 22:25:08 -0800 | [diff] [blame] | 71 | * [JACKSON-752]: Add @JsonInclude (replacement of @JsonSerialize.include) |
Tatu Saloranta | f7c45bf | 2012-01-16 18:26:47 -0800 | [diff] [blame] | 72 | * [JACKSON-754]: Add @JacksonAnnotationsInside for creating "annotation |
| 73 | bundles" (also: AnnotationIntrospector.isAnnotationBundle()) |
Tatu | bbebf46 | 2012-02-03 17:44:31 -0800 | [diff] [blame] | 74 | * [JACKSON-762]: Allow using @JsonTypeId to specify property to use as |
| 75 | type id, instead of using separate type id resolver. |
Tatu Saloranta | e196174 | 2012-01-22 16:03:47 -0800 | [diff] [blame] | 76 | * [JACKSON-764]: Allow specifying "root name" to use for root wrapping |
| 77 | via ObjectReader, ObjectWriter. |
Tatu Saloranta | 361c0a8 | 2012-02-24 18:16:29 -0800 | [diff] [blame] | 78 | * [JACKSON-772]: Add 'JsonNode.withArray()' to use for traversing Array nodes. |
| 79 | * [JACKSON-793]: Add support for configurable Locale, TimeZone to use |
| 80 | (via SerializationConfig, DeserializationConfig) |
Tatu Saloranta | 2aa6484 | 2012-01-14 22:25:08 -0800 | [diff] [blame] | 81 | |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 82 | ------------------------------------------------------------------------ |
| 83 | === History: === |
| 84 | ------------------------------------------------------------------------ |
| 85 | |
| 86 | [entries for versions 1.x and earlier not retained; refer to earlier releases) |