xref: /aosp_15_r20/external/jackson-databind/release-notes/VERSION-2.x (revision 0ed15c778abdfe0f5f51f6133673e1619d6e56e4)
1*0ed15c77SAndroid Build Coastguard Worker Project: jackson-databind
2*0ed15c77SAndroid Build Coastguard Worker 
3*0ed15c77SAndroid Build Coastguard Worker ------------------------------------------------------------------------
4*0ed15c77SAndroid Build Coastguard Worker === Releases ===
5*0ed15c77SAndroid Build Coastguard Worker ------------------------------------------------------------------------
6*0ed15c77SAndroid Build Coastguard Worker 
7*0ed15c77SAndroid Build Coastguard Worker 2.12.0 (not yet released)
8*0ed15c77SAndroid Build Coastguard Worker 
9*0ed15c77SAndroid Build Coastguard Worker #426: `@JsonIgnoreProperties` does not prevent Exception Conflicting getter/setter
10*0ed15c77SAndroid Build Coastguard Worker   definitions for property
11*0ed15c77SAndroid Build Coastguard Worker  (reported by gmkll@github)
12*0ed15c77SAndroid Build Coastguard Worker #921: Deserialization Not Working Right with Generic Types and Builders
13*0ed15c77SAndroid Build Coastguard Worker  (reported by Mike G; fix contributed by Ville K)
14*0ed15c77SAndroid Build Coastguard Worker #1296: Add `@JsonIncludeProperties(propertyNames)` (reverse of `@JsonIgnoreProperties`)
15*0ed15c77SAndroid Build Coastguard Worker  (contributed Baptiste P)
16*0ed15c77SAndroid Build Coastguard Worker #1852: Allow case insensitive deserialization of String value into
17*0ed15c77SAndroid Build Coastguard Worker   `boolean`/`Boolean` (esp for Excel)
18*0ed15c77SAndroid Build Coastguard Worker  (requested by Patrick J)
19*0ed15c77SAndroid Build Coastguard Worker #1886: Allow use of `@JsonFormat(with=JsonFormat.Feature.ACCEPT_CASE_INSENSITIVE_PROPERTIES)`
20*0ed15c77SAndroid Build Coastguard Worker   on Class
21*0ed15c77SAndroid Build Coastguard Worker #1919: Abstract class included as part of known type ids for error message
22*0ed15c77SAndroid Build Coastguard Worker   when using JsonSubTypes
23*0ed15c77SAndroid Build Coastguard Worker  (reported by Incara@github)
24*0ed15c77SAndroid Build Coastguard Worker #2066: Distinguish null from empty string for UUID deserialization
25*0ed15c77SAndroid Build Coastguard Worker  (requested by leonshaw@github)
26*0ed15c77SAndroid Build Coastguard Worker #2091: `ReferenceType` does not expose valid containedType
27*0ed15c77SAndroid Build Coastguard Worker  (reported by Nate B)
28*0ed15c77SAndroid Build Coastguard Worker #2113: Add `CoercionConfig[s]` mechanism for configuring allowed coercions
29*0ed15c77SAndroid Build Coastguard Worker #2118: `JsonProperty.Access.READ_ONLY` does not work with "getter-as-setter" `Collection`s
30*0ed15c77SAndroid Build Coastguard Worker  (reported by Xiang Z)
31*0ed15c77SAndroid Build Coastguard Worker #2215: Support `BigInteger` and `BigDecimal` creators in `StdValueInstantiator`
32*0ed15c77SAndroid Build Coastguard Worker  (requested by David N, implementation contributed by Tiago M)
33*0ed15c77SAndroid Build Coastguard Worker #2283: `JsonProperty.Access.READ_ONLY` fails with collections when a property name is specified
34*0ed15c77SAndroid Build Coastguard Worker  (reported by Yona A)
35*0ed15c77SAndroid Build Coastguard Worker #2644: `BigDecimal` precision not retained for polymorphic deserialization
36*0ed15c77SAndroid Build Coastguard Worker  (reported by rost5000@github)
37*0ed15c77SAndroid Build Coastguard Worker #2675: Support use of `Void` valued properties (`MapperFeature.ALLOW_VOID_VALUED_PROPERTIES`)
38*0ed15c77SAndroid Build Coastguard Worker #2683: Explicitly fail (de)serialization of `java.time.*` types in absence of
39*0ed15c77SAndroid Build Coastguard Worker   registered custom (de)serializers
40*0ed15c77SAndroid Build Coastguard Worker #2707: Improve description included in by `DeserializationContext.handleUnexpectedToken()`
41*0ed15c77SAndroid Build Coastguard Worker #2719: `FAIL_ON_IGNORED_PROPERTIES` does not throw on `READONLY` properties with
42*0ed15c77SAndroid Build Coastguard Worker   an explicit name
43*0ed15c77SAndroid Build Coastguard Worker  (reported, fix contributed by David B)
44*0ed15c77SAndroid Build Coastguard Worker #2726: Add Gradle Module Metadata for version alignment with Gradle 6
45*0ed15c77SAndroid Build Coastguard Worker  (contributed by Jendrik J)
46*0ed15c77SAndroid Build Coastguard Worker #2732: Allow `JsonNode` auto-convert into `ArrayNode` if duplicates found (for XML)
47*0ed15c77SAndroid Build Coastguard Worker #2733: Allow values of "untyped" auto-convert into `List` if duplicates found (for XML)
48*0ed15c77SAndroid Build Coastguard Worker #2751: Add `ValueInstantiator.createContextual(...)
49*0ed15c77SAndroid Build Coastguard Worker #2761: Support multiple names in `JsonSubType.Type`
50*0ed15c77SAndroid Build Coastguard Worker  (contributed by Swayam R)
51*0ed15c77SAndroid Build Coastguard Worker #2776: Explicitly fail (de)serialization of `org.joda.time.*` types in absence of registered
52*0ed15c77SAndroid Build Coastguard Worker   custom (de)serializers
53*0ed15c77SAndroid Build Coastguard Worker #2784: Trailing zeros are stripped when deserializing BigDecimal values inside a
54*0ed15c77SAndroid Build Coastguard Worker   @JsonUnwrapped property
55*0ed15c77SAndroid Build Coastguard Worker  (reported by mjustin@github)
56*0ed15c77SAndroid Build Coastguard Worker #2805: Remove `JsonProcessingException` from `ObjectMapper.treeToValue()`
57*0ed15c77SAndroid Build Coastguard Worker - Add `BeanDeserializerBase.isCaseInsensitive()`
58*0ed15c77SAndroid Build Coastguard Worker - Some refactoring of `CollectionDeserializer` to solve CSV array handling issues
59*0ed15c77SAndroid Build Coastguard Worker 
60*0ed15c77SAndroid Build Coastguard Worker 2.11.2 (02-Aug-2020)
61*0ed15c77SAndroid Build Coastguard Worker 
62*0ed15c77SAndroid Build Coastguard Worker #2783: Parser/Generator features not set when using `ObjectMapper.createParser()`,
63*0ed15c77SAndroid Build Coastguard Worker   `createGenerator()`
64*0ed15c77SAndroid Build Coastguard Worker #2785: Polymorphic subtypes not registering on copied ObjectMapper (2.11.1)
65*0ed15c77SAndroid Build Coastguard Worker  (reported, fix contributed by Joshua S)
66*0ed15c77SAndroid Build Coastguard Worker #2789: Failure to read AnnotatedField value in Jackson 2.11
67*0ed15c77SAndroid Build Coastguard Worker  (reported by isaki@github)
68*0ed15c77SAndroid Build Coastguard Worker #2796: `TypeFactory.constructType()` does not take `TypeBindings` correctly
69*0ed15c77SAndroid Build Coastguard Worker  (reported by Daniel H)
70*0ed15c77SAndroid Build Coastguard Worker 
71*0ed15c77SAndroid Build Coastguard Worker 2.11.1 (25-Jun-2020)
72*0ed15c77SAndroid Build Coastguard Worker 
73*0ed15c77SAndroid Build Coastguard Worker #2486: Builder Deserialization with JsonCreator Value vs Array
74*0ed15c77SAndroid Build Coastguard Worker  (reported by Ville K)
75*0ed15c77SAndroid Build Coastguard Worker #2725: JsonCreator on static method in Enum and Enum used as key in map
76*0ed15c77SAndroid Build Coastguard Worker   fails randomly
77*0ed15c77SAndroid Build Coastguard Worker  (reported by Michael C)
78*0ed15c77SAndroid Build Coastguard Worker #2755: `StdSubtypeResolver` is not thread safe (possibly due to copy
79*0ed15c77SAndroid Build Coastguard Worker   not being made with `ObjectMapper.copy()`)
80*0ed15c77SAndroid Build Coastguard Worker  (reported by tjwilson90@github)
81*0ed15c77SAndroid Build Coastguard Worker #2757: "Conflicting setter definitions for property" exception for `Map`
82*0ed15c77SAndroid Build Coastguard Worker   subtype during deserialization
83*0ed15c77SAndroid Build Coastguard Worker  (reported by Frank S)
84*0ed15c77SAndroid Build Coastguard Worker #2758: Fail to deserialize local Records
85*0ed15c77SAndroid Build Coastguard Worker  (reported by Johannes K)
86*0ed15c77SAndroid Build Coastguard Worker #2759: Rearranging of props when property-based generator is in use leads
87*0ed15c77SAndroid Build Coastguard Worker   to incorrect output
88*0ed15c77SAndroid Build Coastguard Worker  (reported by Oleg C)
89*0ed15c77SAndroid Build Coastguard Worker #2760: Jackson doesn't respect `CAN_OVERRIDE_ACCESS_MODIFIERS=false` for
90*0ed15c77SAndroid Build Coastguard Worker   deserializer properties
91*0ed15c77SAndroid Build Coastguard Worker  (reported by Johannes K)
92*0ed15c77SAndroid Build Coastguard Worker #2767: `DeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS` don't support `Map`
93*0ed15c77SAndroid Build Coastguard Worker   type field
94*0ed15c77SAndroid Build Coastguard Worker  (reported by abomb4@github)
95*0ed15c77SAndroid Build Coastguard Worker #2770: JsonParser from MismatchedInputException cannot getText() for
96*0ed15c77SAndroid Build Coastguard Worker   floating-point value
97*0ed15c77SAndroid Build Coastguard Worker  (reported by João G)
98*0ed15c77SAndroid Build Coastguard Worker 
99*0ed15c77SAndroid Build Coastguard Worker 2.11.0 (26-Apr-2020)
100*0ed15c77SAndroid Build Coastguard Worker 
101*0ed15c77SAndroid Build Coastguard Worker #953: i-I case conversion problem in Turkish locale with case-insensitive deserialization
102*0ed15c77SAndroid Build Coastguard Worker  (reported by Máté R)
103*0ed15c77SAndroid Build Coastguard Worker #962: `@JsonInject` fails on trying to find deserializer even if inject-only
104*0ed15c77SAndroid Build Coastguard Worker  (reported by David B)
105*0ed15c77SAndroid Build Coastguard Worker #1983: Polymorphic deserialization should handle case-insensitive Type Id property name
106*0ed15c77SAndroid Build Coastguard Worker   if `MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES` is enabled
107*0ed15c77SAndroid Build Coastguard Worker  (reported by soundvibe@github, fix contributed by Oleksandr P)
108*0ed15c77SAndroid Build Coastguard Worker #2049: TreeTraversingParser and UTF8StreamJsonParser create contexts differently
109*0ed15c77SAndroid Build Coastguard Worker  (reported by Antonio P)
110*0ed15c77SAndroid Build Coastguard Worker #2352: Support use of `@JsonAlias` for enum values
111*0ed15c77SAndroid Build Coastguard Worker  (contributed by Robert D)
112*0ed15c77SAndroid Build Coastguard Worker #2365: `declaringClass` of "enum-as-POJO" not removed for `ObjectMapper` with
113*0ed15c77SAndroid Build Coastguard Worker   a naming strategy
114*0ed15c77SAndroid Build Coastguard Worker  (reported by Tynakuh@github)
115*0ed15c77SAndroid Build Coastguard Worker #2480: Fix `JavaType.isEnumType()` to support sub-classes
116*0ed15c77SAndroid Build Coastguard Worker #2487: BeanDeserializerBuilder Protected Factory Method for Extension
117*0ed15c77SAndroid Build Coastguard Worker  (contributed by Ville K)
118*0ed15c77SAndroid Build Coastguard Worker #2503: Support `@JsonSerialize(keyUsing)` and `@JsonDeserialize(keyUsing)` on Key class
119*0ed15c77SAndroid Build Coastguard Worker #2511: Add `SerializationFeature.WRITE_SELF_REFERENCES_AS_NULL`
120*0ed15c77SAndroid Build Coastguard Worker  (contributed by Joongsoo P)
121*0ed15c77SAndroid Build Coastguard Worker #2515: `ObjectMapper.registerSubtypes(NamedType...)` doesn't allow registering
122*0ed15c77SAndroid Build Coastguard Worker   same POJO for two different type ids
123*0ed15c77SAndroid Build Coastguard Worker  (contributed by Joseph K)
124*0ed15c77SAndroid Build Coastguard Worker #2522: `DeserializationContext.handleMissingInstantiator()` throws
125*0ed15c77SAndroid Build Coastguard Worker   `MismatchedInputException` for non-static inner classes
126*0ed15c77SAndroid Build Coastguard Worker #2525: Incorrect `JsonStreamContext` for `TokenBuffer` and `TreeTraversingParser`
127*0ed15c77SAndroid Build Coastguard Worker #2527: Add `AnnotationIntrospector.findRenameByField()` to support Kotlin's
128*0ed15c77SAndroid Build Coastguard Worker   "is-getter" naming convention
129*0ed15c77SAndroid Build Coastguard Worker #2555: Use `@JsonProperty(index)` for sorting properties on serialization
130*0ed15c77SAndroid Build Coastguard Worker #2565: Java 8 `Optional` not working with `@JsonUnwrapped` on unwrappable type
131*0ed15c77SAndroid Build Coastguard Worker  (reported by Haowei W)
132*0ed15c77SAndroid Build Coastguard Worker #2587: Add `MapperFeature.BLOCK_UNSAFE_POLYMORPHIC_BASE_TYPES` to allow blocking
133*0ed15c77SAndroid Build Coastguard Worker   use of unsafe base type for polymorphic deserialization
134*0ed15c77SAndroid Build Coastguard Worker #2589: `DOMDeserializer`: setExpandEntityReferences(false) may not prevent
135*0ed15c77SAndroid Build Coastguard Worker   external entity expansion in all cases
136*0ed15c77SAndroid Build Coastguard Worker  (reported by Bartosz B)
137*0ed15c77SAndroid Build Coastguard Worker #2592: `ObjectMapper.setSerializationInclusion()` is ignored for `JsonAnyGetter`
138*0ed15c77SAndroid Build Coastguard Worker  (reported by Oleksii K)
139*0ed15c77SAndroid Build Coastguard Worker #2608: `ValueInstantiationException` when deserializing using a builder and
140*0ed15c77SAndroid Build Coastguard Worker   `UNWRAP_SINGLE_VALUE_ARRAYS`
141*0ed15c77SAndroid Build Coastguard Worker  (reported by cadrake@github)
142*0ed15c77SAndroid Build Coastguard Worker #2627: JsonIgnoreProperties(ignoreUnknown = true) does not work on field and method level
143*0ed15c77SAndroid Build Coastguard Worker  (reported by robotmrv@github)
144*0ed15c77SAndroid Build Coastguard Worker #2632: Failure to resolve generic type parameters on serialization
145*0ed15c77SAndroid Build Coastguard Worker  (reported by Simone D)
146*0ed15c77SAndroid Build Coastguard Worker #2635: JsonParser cannot getText() for input stream on MismatchedInputException
147*0ed15c77SAndroid Build Coastguard Worker  (reported by João G)
148*0ed15c77SAndroid Build Coastguard Worker #2636: ObjectReader readValue lacks Class<T> argument
149*0ed15c77SAndroid Build Coastguard Worker  (contributed by Robin R)
150*0ed15c77SAndroid Build Coastguard Worker #2643: Change default textual serialization of `java.util.Date`/`Calendar`
151*0ed15c77SAndroid Build Coastguard Worker   to include colon in timezone offset
152*0ed15c77SAndroid Build Coastguard Worker #2647: Add `ObjectMapper.createParser()` and `createGenerator()` methods
153*0ed15c77SAndroid Build Coastguard Worker #2657: Allow serialization of `Properties` with non-String values
154*0ed15c77SAndroid Build Coastguard Worker #2663: Add new factory method for creating custom `EnumValues` to pass to `EnumDeserializer
155*0ed15c77SAndroid Build Coastguard Worker  (requested by Rafal K)
156*0ed15c77SAndroid Build Coastguard Worker #2668: `IllegalArgumentException` thrown for mismatched subclass deserialization
157*0ed15c77SAndroid Build Coastguard Worker  (reported by nbruno@github)
158*0ed15c77SAndroid Build Coastguard Worker #2693: Add convenience methods for creating `List`, `Map` valued `ObjectReader`s
159*0ed15c77SAndroid Build Coastguard Worker   (ObjectMapper.readerForListOf())
160*0ed15c77SAndroid Build Coastguard Worker - Add `SerializerProvider.findContentValueSerializer()` methods
161*0ed15c77SAndroid Build Coastguard Worker 
162*0ed15c77SAndroid Build Coastguard Worker 2.10.5 (21-Jul-2020)
163*0ed15c77SAndroid Build Coastguard Worker 
164*0ed15c77SAndroid Build Coastguard Worker #2787 (partial fix): NPE after add mixin for enum
165*0ed15c77SAndroid Build Coastguard Worker  (reported by Denis K)
166*0ed15c77SAndroid Build Coastguard Worker 
167*0ed15c77SAndroid Build Coastguard Worker 2.10.4 (03-May-2020)
168*0ed15c77SAndroid Build Coastguard Worker 
169*0ed15c77SAndroid Build Coastguard Worker #2679: `ObjectMapper.readValue("123", Void.TYPE)` throws "should never occur"
170*0ed15c77SAndroid Build Coastguard Worker  (reported by Endre S)
171*0ed15c77SAndroid Build Coastguard Worker 
172*0ed15c77SAndroid Build Coastguard Worker 2.10.3 (03-Mar-2020)
173*0ed15c77SAndroid Build Coastguard Worker 
174*0ed15c77SAndroid Build Coastguard Worker #2482: `JSONMappingException` `Location` column number is one line Behind the actual
175*0ed15c77SAndroid Build Coastguard Worker   location
176*0ed15c77SAndroid Build Coastguard Worker  (reported by Kamal A, fixed by Ivo S)
177*0ed15c77SAndroid Build Coastguard Worker #2599: NoClassDefFoundError at DeserializationContext.<init> on Android 4.1.2
178*0ed15c77SAndroid Build Coastguard Worker   and Jackson 2.10.0
179*0ed15c77SAndroid Build Coastguard Worker  (reported by Tobias P)
180*0ed15c77SAndroid Build Coastguard Worker #2602: ByteBufferSerializer produces unexpected results with a duplicated ByteBuffer
181*0ed15c77SAndroid Build Coastguard Worker   and a position > 0
182*0ed15c77SAndroid Build Coastguard Worker  (reported by Eduard T)
183*0ed15c77SAndroid Build Coastguard Worker #2605: Failure to deserializer polymorphic subtypes of base type `Enum`
184*0ed15c77SAndroid Build Coastguard Worker  (reported by uewle@github)
185*0ed15c77SAndroid Build Coastguard Worker #2610: `EXTERNAL_PROPERTY` doesn't work with `@JsonIgnoreProperties`
186*0ed15c77SAndroid Build Coastguard Worker  (reported, fix suggested by Alexander S)
187*0ed15c77SAndroid Build Coastguard Worker 
188*0ed15c77SAndroid Build Coastguard Worker 2.10.2 (05-Jan-2020)
189*0ed15c77SAndroid Build Coastguard Worker 
190*0ed15c77SAndroid Build Coastguard Worker #2101: `FAIL_ON_NULL_FOR_PRIMITIVES` failure does not indicate field name in exception message
191*0ed15c77SAndroid Build Coastguard Worker  (reported by raderio@github)
192*0ed15c77SAndroid Build Coastguard Worker 
193*0ed15c77SAndroid Build Coastguard Worker 2.10.1 (09-Nov-2019)
194*0ed15c77SAndroid Build Coastguard Worker 
195*0ed15c77SAndroid Build Coastguard Worker #2457: Extended enum values are not handled as enums when used as Map keys
196*0ed15c77SAndroid Build Coastguard Worker  (reported by Andrey K)
197*0ed15c77SAndroid Build Coastguard Worker #2473: Array index missing in path of `JsonMappingException` for `Collection<String>`,
198*0ed15c77SAndroid Build Coastguard Worker   with custom deserializer
199*0ed15c77SAndroid Build Coastguard Worker  (reported by João G)
200*0ed15c77SAndroid Build Coastguard Worker #2475: `StringCollectionSerializer` calls `JsonGenerator.setCurrentValue(value)`,
201*0ed15c77SAndroid Build Coastguard Worker   which messes up current value for sibling properties
202*0ed15c77SAndroid Build Coastguard Worker  (reported by Ryan B)
203*0ed15c77SAndroid Build Coastguard Worker #2485: Add `uses` for `Module` in module-info
204*0ed15c77SAndroid Build Coastguard Worker  (contributed by Marc M)
205*0ed15c77SAndroid Build Coastguard Worker #2513: BigDecimalAsStringSerializer in NumberSerializer throws IllegalStateException in 2.10
206*0ed15c77SAndroid Build Coastguard Worker  (reported by Johan H)
207*0ed15c77SAndroid Build Coastguard Worker #2519: Serializing `BigDecimal` values inside containers ignores shape override
208*0ed15c77SAndroid Build Coastguard Worker  (reported by Richard W)
209*0ed15c77SAndroid Build Coastguard Worker #2520: Sub-optimal exception message when failing to deserialize non-static inner classes
210*0ed15c77SAndroid Build Coastguard Worker  (reported by Mark S)
211*0ed15c77SAndroid Build Coastguard Worker #2529: Add tests to ensure `EnumSet` and `EnumMap` work correctly with "null-as-empty"
212*0ed15c77SAndroid Build Coastguard Worker #2534: Add `BasicPolymorphicTypeValidator.Builder.allowIfSubTypeIsArray()`
213*0ed15c77SAndroid Build Coastguard Worker #2535: Allow String-to-byte[] coercion for String-value collections
214*0ed15c77SAndroid Build Coastguard Worker 
215*0ed15c77SAndroid Build Coastguard Worker 2.10.0 (26-Sep-2019)
216*0ed15c77SAndroid Build Coastguard Worker 
217*0ed15c77SAndroid Build Coastguard Worker #18: Make `JsonNode` serializable
218*0ed15c77SAndroid Build Coastguard Worker #1093: Default typing does not work with `writerFor(Object.class)`
219*0ed15c77SAndroid Build Coastguard Worker  (reported by hoomanv@github)
220*0ed15c77SAndroid Build Coastguard Worker #1675: Remove "impossible" `IOException` in `readTree()` and `readValue()` `ObjectMapper`
221*0ed15c77SAndroid Build Coastguard Worker   methods which accept Strings
222*0ed15c77SAndroid Build Coastguard Worker  (requested by matthew-pwnieexpress@github)
223*0ed15c77SAndroid Build Coastguard Worker #1954: Add Builder pattern for creating configured `ObjectMapper` instances
224*0ed15c77SAndroid Build Coastguard Worker #1995: Limit size of `DeserializerCache`, auto-flush on exceeding
225*0ed15c77SAndroid Build Coastguard Worker #2059: Remove `final` modifier for `TypeFactory`
226*0ed15c77SAndroid Build Coastguard Worker  (requested by Thibaut R)
227*0ed15c77SAndroid Build Coastguard Worker #2077: `JsonTypeInfo` with a subtype having `JsonFormat.Shape.ARRAY` and
228*0ed15c77SAndroid Build Coastguard Worker   no fields generates `{}` not `[]`
229*0ed15c77SAndroid Build Coastguard Worker  (reported by Sadayuki F)
230*0ed15c77SAndroid Build Coastguard Worker #2115: Support naive deserialization of `Serializable` values as "untyped", same
231*0ed15c77SAndroid Build Coastguard Worker   as `java.lang.Object`
232*0ed15c77SAndroid Build Coastguard Worker  (requested by Christopher S)
233*0ed15c77SAndroid Build Coastguard Worker #2116: Make NumberSerializers.Base public and its inherited classes not final
234*0ed15c77SAndroid Build Coastguard Worker  (requested by Édouard M)
235*0ed15c77SAndroid Build Coastguard Worker #2126: `DeserializationContext.instantiationException()` throws `InvalidDefinitionException`
236*0ed15c77SAndroid Build Coastguard Worker #2129: Add `SerializationFeature.WRITE_ENUM_KEYS_USING_INDEX`, separate from value setting
237*0ed15c77SAndroid Build Coastguard Worker  (suggested by renzihui@github)
238*0ed15c77SAndroid Build Coastguard Worker #2133: Improve `DeserializationProblemHandler.handleUnexpectedToken()` to allow handling of
239*0ed15c77SAndroid Build Coastguard Worker   Collection problems
240*0ed15c77SAndroid Build Coastguard Worker  (contributed by Semyon L)
241*0ed15c77SAndroid Build Coastguard Worker #2149: Add `MapperFeature.ACCEPT_CASE_INSENSITIVE_VALUES`
242*0ed15c77SAndroid Build Coastguard Worker  (suggested by Craig P)
243*0ed15c77SAndroid Build Coastguard Worker #2153: Add `JsonMapper` to replace generic `ObjectMapper` usage
244*0ed15c77SAndroid Build Coastguard Worker #2164: `FactoryBasedEnumDeserializer` does not respect
245*0ed15c77SAndroid Build Coastguard Worker   `DeserializationFeature.WRAP_EXCEPTIONS`
246*0ed15c77SAndroid Build Coastguard Worker  (reported by Yiqiu H)
247*0ed15c77SAndroid Build Coastguard Worker #2187: Make `JsonNode.toString()` use shared `ObjectMapper` to produce valid json
248*0ed15c77SAndroid Build Coastguard Worker #2189: `TreeTraversingParser` does not check int bounds
249*0ed15c77SAndroid Build Coastguard Worker  (reported by Alexander S)
250*0ed15c77SAndroid Build Coastguard Worker #2195: Add abstraction `PolymorphicTypeValidator`, for limiting subtypes allowed by
251*0ed15c77SAndroid Build Coastguard Worker   default typing, `@JsonTypeInfo`
252*0ed15c77SAndroid Build Coastguard Worker #2196: Type safety for `readValue()` with `TypeReference`
253*0ed15c77SAndroid Build Coastguard Worker  (suggested by nguyenfilip@github)
254*0ed15c77SAndroid Build Coastguard Worker #2204: Add `JsonNode.isEmpty()` as convenience alias
255*0ed15c77SAndroid Build Coastguard Worker #2211: Change of behavior (2.8 -> 2.9) with `ObjectMapper.readTree(input)` with no content
256*0ed15c77SAndroid Build Coastguard Worker #2217: Suboptimal memory allocation in `TextNode.getBinaryValue()`
257*0ed15c77SAndroid Build Coastguard Worker  (reported by Christoph B)
258*0ed15c77SAndroid Build Coastguard Worker #2220: Force serialization always for `convertValue()`; avoid short-cuts
259*0ed15c77SAndroid Build Coastguard Worker #2223: Add `missingNode()` method in `JsonNodeFactory`
260*0ed15c77SAndroid Build Coastguard Worker #2227: Minor cleanup of exception message for `Enum` binding failure
261*0ed15c77SAndroid Build Coastguard Worker  (reported by RightHandedMonkey@github)
262*0ed15c77SAndroid Build Coastguard Worker #2230: `WRITE_BIGDECIMAL_AS_PLAIN` is ignored if `@JsonFormat` is used
263*0ed15c77SAndroid Build Coastguard Worker  (reported by Pavel C)
264*0ed15c77SAndroid Build Coastguard Worker #2236: Type id not provided on `Double.NaN`, `Infinity` with `@JsonTypeInfo`
265*0ed15c77SAndroid Build Coastguard Worker  (reported by C-B-B@github)
266*0ed15c77SAndroid Build Coastguard Worker #2237: Add "required" methods in `JsonNode`: `required(String | int)`,
267*0ed15c77SAndroid Build Coastguard Worker   `requiredAt(JsonPointer)`
268*0ed15c77SAndroid Build Coastguard Worker #2241: Add `PropertyNamingStrategy.LOWER_DOT_CASE` for dot-delimited names
269*0ed15c77SAndroid Build Coastguard Worker  (contributed by [email protected])
270*0ed15c77SAndroid Build Coastguard Worker #2251: Getter that returns an abstract collection breaks a delegating `@JsonCreator`
271*0ed15c77SAndroid Build Coastguard Worker #2265: Inconsistent handling of Collections$UnmodifiableList vs Collections$UnmodifiableRandomAccessList
272*0ed15c77SAndroid Build Coastguard Worker #2273: Add basic Java 9+ module info
273*0ed15c77SAndroid Build Coastguard Worker #2280: JsonMerge not work with constructor args
274*0ed15c77SAndroid Build Coastguard Worker  (reported by Deblock T)
275*0ed15c77SAndroid Build Coastguard Worker #2309: READ_ENUMS_USING_TO_STRING doesn't support null values
276*0ed15c77SAndroid Build Coastguard Worker  (reported, fix suggested by Ben A)
277*0ed15c77SAndroid Build Coastguard Worker #2311: Unnecessary MultiView creation for property writers
278*0ed15c77SAndroid Build Coastguard Worker  (suggested by Manuel H)
279*0ed15c77SAndroid Build Coastguard Worker #2331: `JsonMappingException` through nested getter with generic wildcard return type
280*0ed15c77SAndroid Build Coastguard Worker  (reported by sunchezz89@github)
281*0ed15c77SAndroid Build Coastguard Worker #2336: `MapDeserializer` can not merge `Map`s with polymorphic values
282*0ed15c77SAndroid Build Coastguard Worker  (reported by Robert G)
283*0ed15c77SAndroid Build Coastguard Worker #2338: Suboptimal return type for `JsonNode.withArray()`
284*0ed15c77SAndroid Build Coastguard Worker  (reported by Victor N)
285*0ed15c77SAndroid Build Coastguard Worker #2339: Suboptimal return type for `ObjectNode.set()`
286*0ed15c77SAndroid Build Coastguard Worker  (reported by Victor N)
287*0ed15c77SAndroid Build Coastguard Worker #2348: Add sanity checks for `ObjectMapper.readXXX()` methods
288*0ed15c77SAndroid Build Coastguard Worker  (requested by ebundy@github)
289*0ed15c77SAndroid Build Coastguard Worker #2349: Add option `DefaultTyping.EVERYTHING` to support Kotlin data classes
290*0ed15c77SAndroid Build Coastguard Worker #2357: Lack of path on MismatchedInputException
291*0ed15c77SAndroid Build Coastguard Worker  (suggested by TheEin@github)
292*0ed15c77SAndroid Build Coastguard Worker #2378: `@JsonAlias` doesn't work with AutoValue
293*0ed15c77SAndroid Build Coastguard Worker  (reported by David H)
294*0ed15c77SAndroid Build Coastguard Worker #2390: `Iterable` serialization breaks when adding `@JsonFilter` annotation
295*0ed15c77SAndroid Build Coastguard Worker  (reported by Chris M)
296*0ed15c77SAndroid Build Coastguard Worker #2392: `BeanDeserializerModifier.modifyDeserializer()` not applied to custom bean deserializers
297*0ed15c77SAndroid Build Coastguard Worker  (reported by andreasbaus@github)
298*0ed15c77SAndroid Build Coastguard Worker #2393: `TreeTraversingParser.getLongValue()` incorrectly checks `canConvertToInt()`
299*0ed15c77SAndroid Build Coastguard Worker  (reported by RabbidDog@github)
300*0ed15c77SAndroid Build Coastguard Worker #2398: Replace recursion in `TokenBuffer.copyCurrentStructure()` with iteration
301*0ed15c77SAndroid Build Coastguard Worker  (reported by Sam S)
302*0ed15c77SAndroid Build Coastguard Worker #2415: Builder-based POJO deserializer should pass builder instance, not type,
303*0ed15c77SAndroid Build Coastguard Worker   to `handleUnknownVanilla()`
304*0ed15c77SAndroid Build Coastguard Worker  (proposed by Vladimir T, follow up to #822)
305*0ed15c77SAndroid Build Coastguard Worker #2416: Optimize `ValueInstantiator` construction for default `Collection`, `Map` types
306*0ed15c77SAndroid Build Coastguard Worker #2422: `scala.collection.immutable.ListMap` fails to serialize since 2.9.3
307*0ed15c77SAndroid Build Coastguard Worker  (reported by dejanlokar1@github)
308*0ed15c77SAndroid Build Coastguard Worker #2424: Add global config override setting for `@JsonFormat.lenient()`
309*0ed15c77SAndroid Build Coastguard Worker #2428: Use "activateDefaultTyping" over "enableDefaultTyping" in 2.10 with new methods
310*0ed15c77SAndroid Build Coastguard Worker #2430: Change `ObjectMapper.valueToTree()` to convert `null` to `NullNode`
311*0ed15c77SAndroid Build Coastguard Worker #2432: Add support for module bundles
312*0ed15c77SAndroid Build Coastguard Worker  (contributed by Marcos P)
313*0ed15c77SAndroid Build Coastguard Worker #2433: Improve `NullNode.equals()`
314*0ed15c77SAndroid Build Coastguard Worker  (suggested by David B)
315*0ed15c77SAndroid Build Coastguard Worker #2442: `ArrayNode.addAll()` adds raw `null` values which cause NPE on `deepCopy()`
316*0ed15c77SAndroid Build Coastguard Worker   and `toString()`
317*0ed15c77SAndroid Build Coastguard Worker  (reported, fix contributed by Hesham M)
318*0ed15c77SAndroid Build Coastguard Worker #2446: Java 11: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added
319*0ed15c77SAndroid Build Coastguard Worker  (reported by David C)
320*0ed15c77SAndroid Build Coastguard Worker #2451: Add new `JsonValueFormat` value, `UUID`
321*0ed15c77SAndroid Build Coastguard Worker #2453: Add `DeserializationContext.readTree(JsonParser)` convenience method
322*0ed15c77SAndroid Build Coastguard Worker #2458: `Nulls` property metadata ignored for creators
323*0ed15c77SAndroid Build Coastguard Worker  (reported  by XakepSDK@github)
324*0ed15c77SAndroid Build Coastguard Worker #2466: Didn't find class "java.nio.file.Path" below Android api 26
325*0ed15c77SAndroid Build Coastguard Worker  (reported by KevynBct@github)
326*0ed15c77SAndroid Build Coastguard Worker #2467: Accept `JsonTypeInfo.As.WRAPPER_ARRAY` with no second argument to
327*0ed15c77SAndroid Build Coastguard Worker   deserialize as "null value"
328*0ed15c77SAndroid Build Coastguard Worker  (contributed by Martin C)
329*0ed15c77SAndroid Build Coastguard Worker 
330*0ed15c77SAndroid Build Coastguard Worker [2.9.10.x micro-patches omitted]
331*0ed15c77SAndroid Build Coastguard Worker 
332*0ed15c77SAndroid Build Coastguard Worker 2.9.10 (21-Sep-2019)
333*0ed15c77SAndroid Build Coastguard Worker 
334*0ed15c77SAndroid Build Coastguard Worker #2331: `JsonMappingException` through nested getter with generic wildcard return type
335*0ed15c77SAndroid Build Coastguard Worker #2334: Block one more gadget type (CVE-2019-12384)
336*0ed15c77SAndroid Build Coastguard Worker #2341: Block one more gadget type (CVE-2019-12814)
337*0ed15c77SAndroid Build Coastguard Worker #2374: `ObjectMapper. getRegisteredModuleIds()` throws NPE if no modules registered
338*0ed15c77SAndroid Build Coastguard Worker #2387: Block yet another deserialization gadget (CVE-2019-14379)
339*0ed15c77SAndroid Build Coastguard Worker #2389: Block yet another deserialization gadget (CVE-2019-14439)
340*0ed15c77SAndroid Build Coastguard Worker  (reported by xiexq)
341*0ed15c77SAndroid Build Coastguard Worker #2404: FAIL_ON_MISSING_EXTERNAL_TYPE_ID_PROPERTY setting ignored when
342*0ed15c77SAndroid Build Coastguard Worker   creator properties are buffered
343*0ed15c77SAndroid Build Coastguard Worker  (contributed by Joe B)
344*0ed15c77SAndroid Build Coastguard Worker #2410: Block one more gadget type (CVE-2019-14540)
345*0ed15c77SAndroid Build Coastguard Worker   (reported by iSafeBlue@github / blue@ixsec.org)
346*0ed15c77SAndroid Build Coastguard Worker #2420: Block one more gadget type (no CVE allocated yet)
347*0ed15c77SAndroid Build Coastguard Worker   (reported by crazylirui@gmail.com)
348*0ed15c77SAndroid Build Coastguard Worker #2449: Block one more gadget type (CVE-2019-14540)
349*0ed15c77SAndroid Build Coastguard Worker   (reported by kingkk)
350*0ed15c77SAndroid Build Coastguard Worker #2460: Block one more gadget type (ehcache, CVE-2019-17267)
351*0ed15c77SAndroid Build Coastguard Worker   (reported by Fei Lu)
352*0ed15c77SAndroid Build Coastguard Worker #2462: Block two more gadget types (commons-configuration)
353*0ed15c77SAndroid Build Coastguard Worker #2469: Block one more gadget type (xalan2)
354*0ed15c77SAndroid Build Coastguard Worker 
355*0ed15c77SAndroid Build Coastguard Worker 2.9.9 (16-May-2019)
356*0ed15c77SAndroid Build Coastguard Worker 
357*0ed15c77SAndroid Build Coastguard Worker #1408: Call to `TypeVariable.getBounds()` without synchronization unsafe on some platforms
358*0ed15c77SAndroid Build Coastguard Worker  (reported by Thomas K)
359*0ed15c77SAndroid Build Coastguard Worker #2221: `DeserializationProblemHandler.handleUnknownTypeId()` returning `Void.class`,
360*0ed15c77SAndroid Build Coastguard Worker   enableDefaultTyping causing NPE
361*0ed15c77SAndroid Build Coastguard Worker  (reported by MeyerNils@github)
362*0ed15c77SAndroid Build Coastguard Worker #2251: Getter that returns an abstract collection breaks a delegating `@JsonCreator`
363*0ed15c77SAndroid Build Coastguard Worker #2265: Inconsistent handling of Collections$UnmodifiableList vs Collections$UnmodifiableRandomAccessList
364*0ed15c77SAndroid Build Coastguard Worker  (reported by Joffrey B)
365*0ed15c77SAndroid Build Coastguard Worker #2299: Fix for using jackson-databind in an OSGi environment under Android
366*0ed15c77SAndroid Build Coastguard Worker  (contributed by Christoph F)
367*0ed15c77SAndroid Build Coastguard Worker #2303: Deserialize null, when java type is "TypeRef of TypeRef of T", does not provide "Type(Type(null))"
368*0ed15c77SAndroid Build Coastguard Worker  (reported by Cyril M)
369*0ed15c77SAndroid Build Coastguard Worker #2324: `StringCollectionDeserializer` fails with custom collection
370*0ed15c77SAndroid Build Coastguard Worker  (reported byb Daniil B)
371*0ed15c77SAndroid Build Coastguard Worker #2326: Block one more gadget type (CVE-2019-12086)
372*0ed15c77SAndroid Build Coastguard Worker - Prevent String coercion of `null` in `WritableObjectId` when calling `JsonGenerator.writeObjectId()`,
373*0ed15c77SAndroid Build Coastguard Worker   mostly relevant for formats like YAML that have native Object Ids
374*0ed15c77SAndroid Build Coastguard Worker 
375*0ed15c77SAndroid Build Coastguard Worker 2.9.8 (15-Dec-2018)
376*0ed15c77SAndroid Build Coastguard Worker 
377*0ed15c77SAndroid Build Coastguard Worker #1662: `ByteBuffer` serialization is broken if offset is not 0
378*0ed15c77SAndroid Build Coastguard Worker  (reported by j-baker@github)
379*0ed15c77SAndroid Build Coastguard Worker #2155: Type parameters are checked for equality while isAssignableFrom expected
380*0ed15c77SAndroid Build Coastguard Worker  (reported by frankfiedler@github)
381*0ed15c77SAndroid Build Coastguard Worker #2167: Large ISO-8601 Dates are formatted/serialized incorrectly
382*0ed15c77SAndroid Build Coastguard Worker #2181: Don't re-use dynamic serializers for property-updating copy constructors
383*0ed15c77SAndroid Build Coastguard Worker  (suggested by Pavel N)
384*0ed15c77SAndroid Build Coastguard Worker #2183: Base64 JsonMappingException: Unexpected end-of-input
385*0ed15c77SAndroid Build Coastguard Worker  (reported by ViToni@github)
386*0ed15c77SAndroid Build Coastguard Worker #2186: Block more classes from polymorphic deserialization (CVE-2018-19360,
387*0ed15c77SAndroid Build Coastguard Worker   CVE-2018-19361, CVE-2018-19362)
388*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
389*0ed15c77SAndroid Build Coastguard Worker #2197: Illegal reflective access operation warning when using `java.lang.Void`
390*0ed15c77SAndroid Build Coastguard Worker   as value type
391*0ed15c77SAndroid Build Coastguard Worker  (reported by René K)
392*0ed15c77SAndroid Build Coastguard Worker #2202: StdKeyDeserializer Class method _getToStringResolver is slow causing Thread Block
393*0ed15c77SAndroid Build Coastguard Worker  (reported by sushobhitrajan@github)
394*0ed15c77SAndroid Build Coastguard Worker 
395*0ed15c77SAndroid Build Coastguard Worker 2.9.7 (19-Sep-2018)
396*0ed15c77SAndroid Build Coastguard Worker 
397*0ed15c77SAndroid Build Coastguard Worker #2060: `UnwrappingBeanPropertyWriter` incorrectly assumes the found serializer is
398*0ed15c77SAndroid Build Coastguard Worker   of type `UnwrappingBeanSerializer`
399*0ed15c77SAndroid Build Coastguard Worker  (reported by Petar T)
400*0ed15c77SAndroid Build Coastguard Worker #2064: Cannot set custom format for `SqlDateSerializer` globally
401*0ed15c77SAndroid Build Coastguard Worker  (reported by Brandon K)
402*0ed15c77SAndroid Build Coastguard Worker #2079: NPE when visiting StaticListSerializerBase
403*0ed15c77SAndroid Build Coastguard Worker  (reported by WorldSEnder@github)
404*0ed15c77SAndroid Build Coastguard Worker #2082: `FactoryBasedEnumDeserializer` should be cachable
405*0ed15c77SAndroid Build Coastguard Worker #2088: `@JsonUnwrapped` fields are skipped when using `PropertyBasedCreator` if
406*0ed15c77SAndroid Build Coastguard Worker   they appear after the last creator property
407*0ed15c77SAndroid Build Coastguard Worker  (reported, fix contributed by 6bangs@github)
408*0ed15c77SAndroid Build Coastguard Worker #2096: `TreeTraversingParser` does not take base64 variant into account
409*0ed15c77SAndroid Build Coastguard Worker  (reported by tangiel@github)
410*0ed15c77SAndroid Build Coastguard Worker #2097: Block more classes from polymorphic deserialization (CVE-2018-14718
411*0ed15c77SAndroid Build Coastguard Worker   - CVE-2018-14721)
412*0ed15c77SAndroid Build Coastguard Worker #2109: Canonical string for reference type is built incorrectly
413*0ed15c77SAndroid Build Coastguard Worker  (reported by svarzee@github)
414*0ed15c77SAndroid Build Coastguard Worker #2120: `NioPathDeserializer` improvement
415*0ed15c77SAndroid Build Coastguard Worker  (contributed by Semyon L)
416*0ed15c77SAndroid Build Coastguard Worker #2128: Location information included twice for some `JsonMappingException`s
417*0ed15c77SAndroid Build Coastguard Worker 
418*0ed15c77SAndroid Build Coastguard Worker 2.9.6 (12-Jun-2018)
419*0ed15c77SAndroid Build Coastguard Worker 
420*0ed15c77SAndroid Build Coastguard Worker #955: Add `MapperFeature.USE_BASE_TYPE_AS_DEFAULT_IMPL` to use declared base type
421*0ed15c77SAndroid Build Coastguard Worker    as `defaultImpl` for polymorphic deserialization
422*0ed15c77SAndroid Build Coastguard Worker   (contributed by mikeldpl@github)
423*0ed15c77SAndroid Build Coastguard Worker #1328: External property polymorphic deserialization does not work with enums
424*0ed15c77SAndroid Build Coastguard Worker #1565: Deserialization failure with Polymorphism using JsonTypeInfo `defaultImpl`,
425*0ed15c77SAndroid Build Coastguard Worker   subtype as target
426*0ed15c77SAndroid Build Coastguard Worker #1964: Failed to specialize `Map` type during serialization where key type
427*0ed15c77SAndroid Build Coastguard Worker   incompatibility overidden via "raw" types
428*0ed15c77SAndroid Build Coastguard Worker  (reported by ptirador@github)
429*0ed15c77SAndroid Build Coastguard Worker #1990: MixIn `@JsonProperty` for `Object.hashCode()` is ignored
430*0ed15c77SAndroid Build Coastguard Worker  (reported by Freddy B)
431*0ed15c77SAndroid Build Coastguard Worker #1991: Context attributes are not passed/available to custom serializer if object is in POJO
432*0ed15c77SAndroid Build Coastguard Worker  (reported by dletin@github)
433*0ed15c77SAndroid Build Coastguard Worker #1998: Removing "type" attribute with Mixin not taken in account if
434*0ed15c77SAndroid Build Coastguard Worker   using ObjectMapper.copy()
435*0ed15c77SAndroid Build Coastguard Worker  (reported by SBKila@github)
436*0ed15c77SAndroid Build Coastguard Worker #1999: "Duplicate property" issue should mention which class it complains about
437*0ed15c77SAndroid Build Coastguard Worker  (reported by Ondrej Z)
438*0ed15c77SAndroid Build Coastguard Worker #2001: Deserialization issue with `@JsonIgnore` and `@JsonCreator` + `@JsonProperty`
439*0ed15c77SAndroid Build Coastguard Worker   for same property name
440*0ed15c77SAndroid Build Coastguard Worker  (reported, fix contributed by Jakub S)
441*0ed15c77SAndroid Build Coastguard Worker #2015: `@Jsonsetter with Nulls.SKIP` collides with
442*0ed15c77SAndroid Build Coastguard Worker   `DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL` when parsing enum
443*0ed15c77SAndroid Build Coastguard Worker  (reported by ndori@github)
444*0ed15c77SAndroid Build Coastguard Worker #2016: Delegating JsonCreator disregards JsonDeserialize info
445*0ed15c77SAndroid Build Coastguard Worker  (reported by Carter K)
446*0ed15c77SAndroid Build Coastguard Worker #2019: Abstract Type mapping in 2.9 fails when multiple modules are registered
447*0ed15c77SAndroid Build Coastguard Worker  (reported by asger82@github)
448*0ed15c77SAndroid Build Coastguard Worker #2021: Delegating JsonCreator disregards `JsonDeserialize.using` annotation
449*0ed15c77SAndroid Build Coastguard Worker #2023: `JsonFormat.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT` not working
450*0ed15c77SAndroid Build Coastguard Worker   with `null` coercion with `@JsonSetter`
451*0ed15c77SAndroid Build Coastguard Worker #2027: Concurrency error causes `IllegalStateException` on `BeanPropertyMap`
452*0ed15c77SAndroid Build Coastguard Worker  (reported by franboragina@github)
453*0ed15c77SAndroid Build Coastguard Worker #2032: CVE-2018-11307: Potential information exfiltration with default typing, serialization gadget from MyBatis
454*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
455*0ed15c77SAndroid Build Coastguard Worker #2034: Serialization problem with type specialization of nested generic types
456*0ed15c77SAndroid Build Coastguard Worker  (reported by Reinhard P)
457*0ed15c77SAndroid Build Coastguard Worker #2038: JDK Serializing and using Deserialized `ObjectMapper` loses linkage
458*0ed15c77SAndroid Build Coastguard Worker   back from `JsonParser.getCodec()`
459*0ed15c77SAndroid Build Coastguard Worker  (reported by Chetan N)
460*0ed15c77SAndroid Build Coastguard Worker #2051: Implicit constructor property names are not renamed properly with
461*0ed15c77SAndroid Build Coastguard Worker   `PropertyNamingStrategy`
462*0ed15c77SAndroid Build Coastguard Worker #2052: CVE-2018-12022: Block polymorphic deserialization of types from Jodd-db library
463*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
464*0ed15c77SAndroid Build Coastguard Worker #2058: CVE-2018-12023: Block polymorphic deserialization of types from Oracle JDBC driver
465*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
466*0ed15c77SAndroid Build Coastguard Worker 
467*0ed15c77SAndroid Build Coastguard Worker 2.9.5 (26-Mar-2018)
468*0ed15c77SAndroid Build Coastguard Worker 
469*0ed15c77SAndroid Build Coastguard Worker #1911: Allow serialization of `BigDecimal` as String, using
470*0ed15c77SAndroid Build Coastguard Worker   `@JsonFormat(shape=Shape.String)`, config overrides
471*0ed15c77SAndroid Build Coastguard Worker  (suggested by cen1@github)
472*0ed15c77SAndroid Build Coastguard Worker #1912: `BeanDeserializerModifier.updateBuilder()` not work to set custom
473*0ed15c77SAndroid Build Coastguard Worker   deserializer on a property (since 2.9.0)
474*0ed15c77SAndroid Build Coastguard Worker  (contributed by Deblock T)
475*0ed15c77SAndroid Build Coastguard Worker #1931: Two more `c3p0` gadgets to exploit default typing issue
476*0ed15c77SAndroid Build Coastguard Worker  (reported by [email protected])
477*0ed15c77SAndroid Build Coastguard Worker #1932: `EnumMap` cannot deserialize with type inclusion as property
478*0ed15c77SAndroid Build Coastguard Worker #1940: `Float` values with integer value beyond `int` lose precision if
479*0ed15c77SAndroid Build Coastguard Worker   bound to `long`
480*0ed15c77SAndroid Build Coastguard Worker  (reported by Aniruddha M)
481*0ed15c77SAndroid Build Coastguard Worker #1941: `TypeFactory.constructFromCanonical()` throws NPE for Unparameterized
482*0ed15c77SAndroid Build Coastguard Worker   generic canonical strings
483*0ed15c77SAndroid Build Coastguard Worker  (reported by ayushgp@github)
484*0ed15c77SAndroid Build Coastguard Worker #1947: `MapperFeature.AUTO_DETECT_XXX` do not work if all disabled
485*0ed15c77SAndroid Build Coastguard Worker  (reported by Timur S)
486*0ed15c77SAndroid Build Coastguard Worker #1977: Serializing an Iterator with multiple sub-types fails after upgrading to 2.9.x
487*0ed15c77SAndroid Build Coastguard Worker  (reported by ssivanand@github)
488*0ed15c77SAndroid Build Coastguard Worker #1978: Using @JsonUnwrapped annotation in builderdeserializer hangs in infinite loop
489*0ed15c77SAndroid Build Coastguard Worker  (reported by roeltje25@github)
490*0ed15c77SAndroid Build Coastguard Worker 
491*0ed15c77SAndroid Build Coastguard Worker 2.9.4 (24-Jan-2018)
492*0ed15c77SAndroid Build Coastguard Worker 
493*0ed15c77SAndroid Build Coastguard Worker #1382: `@JsonProperty(access=READ_ONLY)` unxepected behaviour with `Collections`
494*0ed15c77SAndroid Build Coastguard Worker  (reported by hexfaker@github)
495*0ed15c77SAndroid Build Coastguard Worker #1673: Serialising generic value classes via Reference Types (like Optional) fails
496*0ed15c77SAndroid Build Coastguard Worker   to include type information
497*0ed15c77SAndroid Build Coastguard Worker  (reported by Pier-Luc W)
498*0ed15c77SAndroid Build Coastguard Worker #1729: Integer bounds verification when calling `TokenBuffer.getIntValue()`
499*0ed15c77SAndroid Build Coastguard Worker  (reported by Kevin G)
500*0ed15c77SAndroid Build Coastguard Worker #1853: Deserialise from Object (using Creator methods) returns field name instead of value
501*0ed15c77SAndroid Build Coastguard Worker  (reported by Alexander S)
502*0ed15c77SAndroid Build Coastguard Worker #1854: NPE deserializing collection with `@JsonCreator` and `ACCEPT_CASE_INSENSITIVE_PROPERTIES`
503*0ed15c77SAndroid Build Coastguard Worker  (reported by rue-jw@github)
504*0ed15c77SAndroid Build Coastguard Worker #1855: Blacklist for more serialization gadgets (dbcp/tomcat, spring, CVE-2017-17485)
505*0ed15c77SAndroid Build Coastguard Worker #1859: Issue handling unknown/unmapped Enum keys
506*0ed15c77SAndroid Build Coastguard Worker  (reported by remya11@github)
507*0ed15c77SAndroid Build Coastguard Worker #1868: Class name handling for JDK unmodifiable Collection types changed
508*0ed15c77SAndroid Build Coastguard Worker   (reported by Rob W)
509*0ed15c77SAndroid Build Coastguard Worker #1870: Remove `final` on inherited methods in `BuilderBasedDeserializer` to allow
510*0ed15c77SAndroid Build Coastguard Worker   overriding by subclasses
511*0ed15c77SAndroid Build Coastguard Worker   (requested by Ville K)
512*0ed15c77SAndroid Build Coastguard Worker #1878: `@JsonBackReference` property is always ignored when deserializing since 2.9.0
513*0ed15c77SAndroid Build Coastguard Worker  (reported by reda-alaoui@github)
514*0ed15c77SAndroid Build Coastguard Worker #1895: Per-type config override "JsonFormat.Shape.OBJECT" for Map.Entry not working
515*0ed15c77SAndroid Build Coastguard Worker  (reported by mcortella@github)
516*0ed15c77SAndroid Build Coastguard Worker #1899: Another two gadgets to exploit default typing issue in jackson-databind
517*0ed15c77SAndroid Build Coastguard Worker  (reported by OneSourceCat@github)
518*0ed15c77SAndroid Build Coastguard Worker #1906: Add string format specifier for error message in `PropertyValueBuffer`
519*0ed15c77SAndroid Build Coastguard Worker  (reported by Joe S)
520*0ed15c77SAndroid Build Coastguard Worker #1907: Remove `getClass()` from `_valueType` argument for error reporting
521*0ed15c77SAndroid Build Coastguard Worker  (reported by Joe S)
522*0ed15c77SAndroid Build Coastguard Worker 
523*0ed15c77SAndroid Build Coastguard Worker 2.9.3 (09-Dec-2017)
524*0ed15c77SAndroid Build Coastguard Worker 
525*0ed15c77SAndroid Build Coastguard Worker #1604: Nested type arguments doesn't work with polymorphic types
526*0ed15c77SAndroid Build Coastguard Worker #1794: `StackTraceElementDeserializer` not working if field visibility changed
527*0ed15c77SAndroid Build Coastguard Worker  (reported by dsingley@github)
528*0ed15c77SAndroid Build Coastguard Worker #1799: Allow creation of custom sub-types of `NullNode`, `BooleanNode`, `MissingNode`
529*0ed15c77SAndroid Build Coastguard Worker #1804: `ValueInstantiator.canInstantiate()` ignores `canCreateUsingArrayDelegate()`
530*0ed15c77SAndroid Build Coastguard Worker  (reported byb henryptung@github)
531*0ed15c77SAndroid Build Coastguard Worker #1807: Jackson-databind caches plain map deserializer and use it even map has `@JsonDeserializer`
532*0ed15c77SAndroid Build Coastguard Worker  (reported by lexas2509@github)
533*0ed15c77SAndroid Build Coastguard Worker #1823: ClassNameIdResolver doesn't handle resolve Collections$SingletonMap & Collections$SingletonSet
534*0ed15c77SAndroid Build Coastguard Worker  (reported by Peter J)
535*0ed15c77SAndroid Build Coastguard Worker #1831: `ObjectReader.readValue(JsonNode)` does not work correctly with polymorphic types,
536*0ed15c77SAndroid Build Coastguard Worker   value to update
537*0ed15c77SAndroid Build Coastguard Worker  (reported by basmastr@github)
538*0ed15c77SAndroid Build Coastguard Worker #1835: ValueInjector break from 2.8.x to 2.9.x
539*0ed15c77SAndroid Build Coastguard Worker  (repoted by kinigitbyday@github)
540*0ed15c77SAndroid Build Coastguard Worker #1842: `null` String for `Exception`s deserialized as String "null" instead of `null`
541*0ed15c77SAndroid Build Coastguard Worker  (reported by ZeleniJure@github)
542*0ed15c77SAndroid Build Coastguard Worker #1843: Include name of unsettable property in exception from `SetterlessProperty.set()`
543*0ed15c77SAndroid Build Coastguard Worker  (suggested by andreh7@github)
544*0ed15c77SAndroid Build Coastguard Worker #1844: Map "deep" merge only adds new items, but not override existing values
545*0ed15c77SAndroid Build Coastguard Worker  (reported by alinakovalenko@github)
546*0ed15c77SAndroid Build Coastguard Worker 
547*0ed15c77SAndroid Build Coastguard Worker 2.9.2 (14-Oct-2017)
548*0ed15c77SAndroid Build Coastguard Worker 
549*0ed15c77SAndroid Build Coastguard Worker (possibly) #1756: Deserialization error with custom `AnnotationIntrospector`
550*0ed15c77SAndroid Build Coastguard Worker  (reported by Daniel N)
551*0ed15c77SAndroid Build Coastguard Worker #1705: Non-generic interface method hides type resolution info from generic base class
552*0ed15c77SAndroid Build Coastguard Worker   (reported by Tim B)
553*0ed15c77SAndroid Build Coastguard Worker  NOTE: was originally reported fixed in 2.9.1 -- turns out it wasn't.
554*0ed15c77SAndroid Build Coastguard Worker #1767: Allow `DeserializationProblemHandler` to respond to primitive types
555*0ed15c77SAndroid Build Coastguard Worker  (reported by nhtzr@github)
556*0ed15c77SAndroid Build Coastguard Worker #1768: Improve `TypeFactory.constructFromCanonical()` to work with
557*0ed15c77SAndroid Build Coastguard Worker   `java.lang.reflect.Type.getTypeName()' format
558*0ed15c77SAndroid Build Coastguard Worker  (suggested by Luís C)
559*0ed15c77SAndroid Build Coastguard Worker #1771: Pass missing argument for string formatting in `ObjectMapper`
560*0ed15c77SAndroid Build Coastguard Worker  (reported by Nils B)
561*0ed15c77SAndroid Build Coastguard Worker #1788: `StdDateFormat._parseAsISO8601()` does not parse "fractional" timezone correctly
562*0ed15c77SAndroid Build Coastguard Worker #1793: `java.lang.NullPointerException` in `ObjectArraySerializer.acceptJsonFormatVisitor()`
563*0ed15c77SAndroid Build Coastguard Worker   for array value with `@JsonValue`
564*0ed15c77SAndroid Build Coastguard Worker  (reported by Vincent D)
565*0ed15c77SAndroid Build Coastguard Worker 
566*0ed15c77SAndroid Build Coastguard Worker 2.9.1 (07-Sep-2017)
567*0ed15c77SAndroid Build Coastguard Worker 
568*0ed15c77SAndroid Build Coastguard Worker #1725: `NPE` In `TypeFactory. constructParametricType(...)`
569*0ed15c77SAndroid Build Coastguard Worker  (reported by ctytgat@github)
570*0ed15c77SAndroid Build Coastguard Worker #1730: InvalidFormatException` for `JsonToken.VALUE_EMBEDDED_OBJECT`
571*0ed15c77SAndroid Build Coastguard Worker  (reported by zigzago@github)
572*0ed15c77SAndroid Build Coastguard Worker #1744: StdDateFormat: add option to serialize timezone offset with a colon
573*0ed15c77SAndroid Build Coastguard Worker  (contributed by Bertrand R)
574*0ed15c77SAndroid Build Coastguard Worker #1745: StdDateFormat: accept and truncate millis larger than 3 digits
575*0ed15c77SAndroid Build Coastguard Worker  (suggested by Bertrand R)
576*0ed15c77SAndroid Build Coastguard Worker #1749: StdDateFormat: performance improvement of '_format(..)' method
577*0ed15c77SAndroid Build Coastguard Worker  (contributed by Bertrand R)
578*0ed15c77SAndroid Build Coastguard Worker #1759: Reuse `Calendar` instance during parsing by `StdDateFormat`
579*0ed15c77SAndroid Build Coastguard Worker  (contributed by Bertrand R)
580*0ed15c77SAndroid Build Coastguard Worker - Fix `DelegatingDeserializer` constructor to pass `handledType()` (and
581*0ed15c77SAndroid Build Coastguard Worker   not type of deserializer being delegated to!)
582*0ed15c77SAndroid Build Coastguard Worker - Add `Automatic-Module-Name` ("com.fasterxml.jackson.databind") for JDK 9 module system
583*0ed15c77SAndroid Build Coastguard Worker 
584*0ed15c77SAndroid Build Coastguard Worker 2.9.0 (30-Jul-2017)
585*0ed15c77SAndroid Build Coastguard Worker 
586*0ed15c77SAndroid Build Coastguard Worker #219: SqlDateSerializer does not obey SerializationConfig.Feature.WRITE_DATES_AS_TIMESTAMPS
587*0ed15c77SAndroid Build Coastguard Worker  (reported by BrentDouglas@github)
588*0ed15c77SAndroid Build Coastguard Worker #265: Add descriptive exception for attempts to use `@JsonWrapped` via Creator parameter
589*0ed15c77SAndroid Build Coastguard Worker #291: @JsonTypeInfo with As.EXTERNAL_PROPERTY doesn't work if external type property
590*0ed15c77SAndroid Build Coastguard Worker   is referenced more than once
591*0ed15c77SAndroid Build Coastguard Worker  (reported by Starkom@github)
592*0ed15c77SAndroid Build Coastguard Worker #357: StackOverflowError with contentConverter that returns array type
593*0ed15c77SAndroid Build Coastguard Worker  (reported by Florian S)
594*0ed15c77SAndroid Build Coastguard Worker #383: Recursive `@JsonUnwrapped` (`child` with same type) fail: "No _valueDeserializer assigned"
595*0ed15c77SAndroid Build Coastguard Worker  (reported by tdavis@github)
596*0ed15c77SAndroid Build Coastguard Worker #403: Make FAIL_ON_NULL_FOR_PRIMITIVES apply to primitive arrays and other types that wrap primitives
597*0ed15c77SAndroid Build Coastguard Worker  (reported by Harleen S)
598*0ed15c77SAndroid Build Coastguard Worker #476: Allow "Serialize as POJO" using `@JsonFormat(shape=Shape.OBJECT)` class annotation
599*0ed15c77SAndroid Build Coastguard Worker #507: Support for default `@JsonView` for a class
600*0ed15c77SAndroid Build Coastguard Worker  (suggested by Mark W)
601*0ed15c77SAndroid Build Coastguard Worker #687: Exception deserializing a collection @JsonIdentityInfo and a property based creator
602*0ed15c77SAndroid Build Coastguard Worker #865: `JsonFormat.Shape.OBJECT` ignored when class implements `Map.Entry`
603*0ed15c77SAndroid Build Coastguard Worker #888: Allow specifying custom exclusion comparator via `@JsonInclude`,
604*0ed15c77SAndroid Build Coastguard Worker   using `JsonInclude.Include.CUSTOM`
605*0ed15c77SAndroid Build Coastguard Worker #994: `DeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS` only works for POJOs, Maps
606*0ed15c77SAndroid Build Coastguard Worker #1029: Add a way to define property name aliases
607*0ed15c77SAndroid Build Coastguard Worker #1035: `@JsonAnySetter` assumes key of `String`, does not consider declared type.
608*0ed15c77SAndroid Build Coastguard Worker  (reported by Michael F)
609*0ed15c77SAndroid Build Coastguard Worker #1060: Allow use of `@JsonIgnoreProperties` for POJO-valued arrays, `Collection`s
610*0ed15c77SAndroid Build Coastguard Worker #1106: Add `MapperFeature.ALLOW_COERCION_OF_SCALARS` for enabling/disabling coercions
611*0ed15c77SAndroid Build Coastguard Worker #1284: Make `StdKeySerializers` use new `JsonGenerator.writeFieldId()` for `int`/`long` keys
612*0ed15c77SAndroid Build Coastguard Worker #1320: Add `ObjectNode.put(String, BigInteger)`
613*0ed15c77SAndroid Build Coastguard Worker  (proposed by Jan L)
614*0ed15c77SAndroid Build Coastguard Worker #1341: `DeserializationFeature.FAIL_ON_MISSING_EXTERNAL_TYPE_ID_PROPERTY`
615*0ed15c77SAndroid Build Coastguard Worker  (contributed by Connor K)
616*0ed15c77SAndroid Build Coastguard Worker #1347: Extend `ObjectMapper.configOverrides()` to allow changing visibility rules
617*0ed15c77SAndroid Build Coastguard Worker #1356: Differentiate between input and code exceptions on deserialization
618*0ed15c77SAndroid Build Coastguard Worker  (suggested by Nick B)
619*0ed15c77SAndroid Build Coastguard Worker #1369: Improve `@JsonCreator` detection via `AnnotationIntrospector`
620*0ed15c77SAndroid Build Coastguard Worker  by passing `MappingConfig`
621*0ed15c77SAndroid Build Coastguard Worker #1371: Add `MapperFeature.INFER_CREATOR_FROM_CONSTRUCTOR_PROPERTIES` to allow
622*0ed15c77SAndroid Build Coastguard Worker  disabling use of `@CreatorProperties` as explicit `@JsonCreator` equivalent
623*0ed15c77SAndroid Build Coastguard Worker #1376: Add ability to disable JsonAnySetter/JsonAnyGetter via mixin
624*0ed15c77SAndroid Build Coastguard Worker  (suggested by brentryan@github)
625*0ed15c77SAndroid Build Coastguard Worker #1399: Add support for `@JsonMerge` to allow "deep update"
626*0ed15c77SAndroid Build Coastguard Worker #1402: Use `@JsonSetter(nulls=...)` to specify handling of `null` values during deserialization
627*0ed15c77SAndroid Build Coastguard Worker #1406: `ObjectMapper.readTree()` methods do not return `null` on end-of-input
628*0ed15c77SAndroid Build Coastguard Worker  (reported by Fabrizio C)
629*0ed15c77SAndroid Build Coastguard Worker #1407: `@JsonFormat.pattern` is ignored for `java.sql.Date` valued properties
630*0ed15c77SAndroid Build Coastguard Worker  (reported by sangpire@github)
631*0ed15c77SAndroid Build Coastguard Worker #1415: Creating CollectionType for non generic collection class broken
632*0ed15c77SAndroid Build Coastguard Worker #1428: Allow `@JsonValue` on a field, not just getter
633*0ed15c77SAndroid Build Coastguard Worker #1434: Explicitly pass null on invoke calls with no arguments
634*0ed15c77SAndroid Build Coastguard Worker  (contributed by Emiliano C)
635*0ed15c77SAndroid Build Coastguard Worker #1433: `ObjectMapper.convertValue()` with null does not consider null conversions
636*0ed15c77SAndroid Build Coastguard Worker   (`JsonDeserializer.getNullValue()`)
637*0ed15c77SAndroid Build Coastguard Worker  (contributed by jdmichal@github)
638*0ed15c77SAndroid Build Coastguard Worker #1440: Wrong `JsonStreamContext` in `DeserializationProblemHandler` when reading
639*0ed15c77SAndroid Build Coastguard Worker   `TokenBuffer` content
640*0ed15c77SAndroid Build Coastguard Worker  (reported by Patrick G)
641*0ed15c77SAndroid Build Coastguard Worker #1444: Change `ObjectMapper.setSerializationInclusion()` to apply to content inclusion too
642*0ed15c77SAndroid Build Coastguard Worker #1450: `SimpleModule.addKeyDeserializer()' should throw `IllegalArgumentException` if `null`
643*0ed15c77SAndroid Build Coastguard Worker   reference of `KeyDeserializer` passed
644*0ed15c77SAndroid Build Coastguard Worker  (suggested by PawelJagus@github)
645*0ed15c77SAndroid Build Coastguard Worker #1454: Support `@JsonFormat.lenient` for `java.util.Date`, `java.util.Calendar`
646*0ed15c77SAndroid Build Coastguard Worker #1474: Replace use of `Class.newInstance()` (deprecated in Java 9) with call via Constructor
647*0ed15c77SAndroid Build Coastguard Worker #1480: Add support for serializing `boolean`/`Boolean` as number (0 or 1)
648*0ed15c77SAndroid Build Coastguard Worker  (suggested by jwilmoth@github)
649*0ed15c77SAndroid Build Coastguard Worker #1520: Case insensitive enum deserialization with `MapperFeature.ACCEPT_CASE_INSENSITIVE_ENUMS`
650*0ed15c77SAndroid Build Coastguard Worker  (contributed by Ana-Eliza B)
651*0ed15c77SAndroid Build Coastguard Worker #1522: Global `@JsonInclude(Include.NON_NULL)` for all properties with a specific type
652*0ed15c77SAndroid Build Coastguard Worker  (contributed by Carsten W)
653*0ed15c77SAndroid Build Coastguard Worker #1544: EnumMapDeserializer assumes a pure EnumMap and does not support EnumMap derived classes
654*0ed15c77SAndroid Build Coastguard Worker  (reported by Lyor G)
655*0ed15c77SAndroid Build Coastguard Worker #1550: Unexpected behavior with `@JsonInclude(JsonInclude.Include.NON_EMPTY)` and
656*0ed15c77SAndroid Build Coastguard Worker  `java.util.Date` serialization
657*0ed15c77SAndroid Build Coastguard Worker #1551: `JsonMappingException` with polymorphic type and `JsonIdentityInfo` when basic type is abstract
658*0ed15c77SAndroid Build Coastguard Worker  (reported by acm073@github)
659*0ed15c77SAndroid Build Coastguard Worker #1552: Map key converted to byte array is not serialized as base64 string
660*0ed15c77SAndroid Build Coastguard Worker  (reported by nmatt@github)
661*0ed15c77SAndroid Build Coastguard Worker #1554: Support deserialization of `Shape.OBJECT` ("as POJO") for `Map`s (and map-like types)
662*0ed15c77SAndroid Build Coastguard Worker #1556: Add `ObjectMapper.updateValue()` method to update instance with given overrides
663*0ed15c77SAndroid Build Coastguard Worker  (suggested by syncer@github)
664*0ed15c77SAndroid Build Coastguard Worker #1583: Add a `DeserializationFeature.FAIL_ON_TRAILING_TOKENS` to force reading of the
665*0ed15c77SAndroid Build Coastguard Worker   whole input as single value
666*0ed15c77SAndroid Build Coastguard Worker #1592: Add support for handling primitive/discrepancy problem with type refinements
667*0ed15c77SAndroid Build Coastguard Worker #1605: Allow serialization of `InetAddress` as simple numeric host address
668*0ed15c77SAndroid Build Coastguard Worker  (requested by Jared J)
669*0ed15c77SAndroid Build Coastguard Worker #1616: Extraneous type id mapping added for base type itself
670*0ed15c77SAndroid Build Coastguard Worker #1619: By-pass annotation introspection for array types
671*0ed15c77SAndroid Build Coastguard Worker #1637: `ObjectReader.at()` with `JsonPointer` stops after first collection
672*0ed15c77SAndroid Build Coastguard Worker  (reported by Chris P)
673*0ed15c77SAndroid Build Coastguard Worker #1653: Convenience overload(s) for ObjectMapper#registerSubtypes
674*0ed15c77SAndroid Build Coastguard Worker #1655: `@JsonAnyGetter` uses different `bean` parameter in `SimpleBeanPropertyFilter`
675*0ed15c77SAndroid Build Coastguard Worker  (reported by georgeflugq@github)
676*0ed15c77SAndroid Build Coastguard Worker #1678: Rewrite `StdDateFormat` ISO-8601 handling functionality
677*0ed15c77SAndroid Build Coastguard Worker #1684: Rewrite handling of type ids to let `JsonGenerator` handle (more of) details
678*0ed15c77SAndroid Build Coastguard Worker #1688: Deserialization fails for `java.nio.file.Path` implementations when default typing
679*0ed15c77SAndroid Build Coastguard Worker   enabled
680*0ed15c77SAndroid Build Coastguard Worker  (reported by Christian B)
681*0ed15c77SAndroid Build Coastguard Worker #1690: Prevent use of quoted number (index) for Enum deserialization via
682*0ed15c77SAndroid Build Coastguard Worker   `MapperFeature.ALLOW_COERCION_OF_SCALARS`
683*0ed15c77SAndroid Build Coastguard Worker  (requested by magdel@github)
684*0ed15c77SAndroid Build Coastguard Worker 
685*0ed15c77SAndroid Build Coastguard Worker 2.8.11.4 (25-Jul-2019)
686*0ed15c77SAndroid Build Coastguard Worker 
687*0ed15c77SAndroid Build Coastguard Worker #2334: Block one more gadget type (CVE-2019-12384)
688*0ed15c77SAndroid Build Coastguard Worker #2341: Block one more gadget type (CVE-2019-12814)
689*0ed15c77SAndroid Build Coastguard Worker #2387: Block one more gadget type (CVE-2019-14379)
690*0ed15c77SAndroid Build Coastguard Worker #2389: Block one more gadget type (CVE-2019-14439)
691*0ed15c77SAndroid Build Coastguard Worker  (reported by xiexq)
692*0ed15c77SAndroid Build Coastguard Worker 
693*0ed15c77SAndroid Build Coastguard Worker 2.8.11.3 (23-Nov-2018)
694*0ed15c77SAndroid Build Coastguard Worker 
695*0ed15c77SAndroid Build Coastguard Worker #2326: Block one more gadget type (CVE-2019-12086)
696*0ed15c77SAndroid Build Coastguard Worker  (contributed by MaximilianTews@github)
697*0ed15c77SAndroid Build Coastguard Worker 
698*0ed15c77SAndroid Build Coastguard Worker 2.8.11.2 (08-Jun-2018)
699*0ed15c77SAndroid Build Coastguard Worker 
700*0ed15c77SAndroid Build Coastguard Worker #1941: `TypeFactory.constructFromCanonical()` throws NPE for Unparameterized
701*0ed15c77SAndroid Build Coastguard Worker   generic canonical strings
702*0ed15c77SAndroid Build Coastguard Worker  (reported by ayushgp@github)
703*0ed15c77SAndroid Build Coastguard Worker #2032: CVE-2018-11307: Potential information exfiltration with default typing, serialization gadget from MyBatis
704*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
705*0ed15c77SAndroid Build Coastguard Worker #2052: CVE-2018-12022: Block polymorphic deserialization of types from Jodd-db library
706*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
707*0ed15c77SAndroid Build Coastguard Worker #2058: CVE-2018-12023: Block polymorphic deserialization of types from Oracle JDBC driver
708*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
709*0ed15c77SAndroid Build Coastguard Worker 
710*0ed15c77SAndroid Build Coastguard Worker 2.8.11.1 (11-Feb-2018)
711*0ed15c77SAndroid Build Coastguard Worker 
712*0ed15c77SAndroid Build Coastguard Worker #1872: `NullPointerException` in `SubTypeValidator.validateSubType` when
713*0ed15c77SAndroid Build Coastguard Worker   validating Spring interface
714*0ed15c77SAndroid Build Coastguard Worker  (reported by Rob W)
715*0ed15c77SAndroid Build Coastguard Worker #1899: Another two gadgets to exploit default typing issue (CVE-2018-5968)
716*0ed15c77SAndroid Build Coastguard Worker  (reported by OneSourceCat@github)
717*0ed15c77SAndroid Build Coastguard Worker #1931: Two more `c3p0` gadgets to exploit default typing issue (c3p0, CVE-2018-7489)
718*0ed15c77SAndroid Build Coastguard Worker 
719*0ed15c77SAndroid Build Coastguard Worker 2.8.11 (24-Dec-2017)
720*0ed15c77SAndroid Build Coastguard Worker 
721*0ed15c77SAndroid Build Coastguard Worker #1604: Nested type arguments doesn't work with polymorphic types
722*0ed15c77SAndroid Build Coastguard Worker #1680: Blacklist couple more types for deserialization
723*0ed15c77SAndroid Build Coastguard Worker #1767: Allow `DeserializationProblemHandler` to respond to primitive types
724*0ed15c77SAndroid Build Coastguard Worker  (reported by nhtzr@github)
725*0ed15c77SAndroid Build Coastguard Worker #1768: Improve `TypeFactory.constructFromCanonical()` to work with
726*0ed15c77SAndroid Build Coastguard Worker   `java.lang.reflect.Type.getTypeName()` format
727*0ed15c77SAndroid Build Coastguard Worker #1804: `ValueInstantiator.canInstantiate()` ignores `canCreateUsingArrayDelegate()`
728*0ed15c77SAndroid Build Coastguard Worker  (reported by henryptung@github)
729*0ed15c77SAndroid Build Coastguard Worker #1807: Jackson-databind caches plain map deserializer and use it even map has `@JsonDeserializer`
730*0ed15c77SAndroid Build Coastguard Worker  (reported by lexas2509@github)
731*0ed15c77SAndroid Build Coastguard Worker #1855: Blacklist for more serialization gadgets (dbcp/tomcat, spring / CVE-2017-17485)
732*0ed15c77SAndroid Build Coastguard Worker 
733*0ed15c77SAndroid Build Coastguard Worker 2.8.10 (24-Aug-2017)
734*0ed15c77SAndroid Build Coastguard Worker 
735*0ed15c77SAndroid Build Coastguard Worker #1657: `StdDateFormat` deserializes dates with no tz/offset as UTC instead of
736*0ed15c77SAndroid Build Coastguard Worker   configured timezone
737*0ed15c77SAndroid Build Coastguard Worker  (reported by Bertrand R)
738*0ed15c77SAndroid Build Coastguard Worker #1680: Blacklist couple more types for deserialization
739*0ed15c77SAndroid Build Coastguard Worker #1658: Infinite recursion when deserializing a class extending a Map,
740*0ed15c77SAndroid Build Coastguard Worker   with a recursive value type
741*0ed15c77SAndroid Build Coastguard Worker  (reported by Kevin G)
742*0ed15c77SAndroid Build Coastguard Worker #1679: `StackOverflowError` in Dynamic `StdKeySerializer`
743*0ed15c77SAndroid Build Coastguard Worker #1711: Delegating creator fails to work for binary data (`byte[]`) with
744*0ed15c77SAndroid Build Coastguard Worker  binary formats (CBOR, Smile)
745*0ed15c77SAndroid Build Coastguard Worker #1735: Missing type checks when using polymorphic type ids
746*0ed15c77SAndroid Build Coastguard Worker  (reported by Lukas Euler)
747*0ed15c77SAndroid Build Coastguard Worker #1737: Block more JDK types from polymorphic deserialization (CVE 2017-15095)
748*0ed15c77SAndroid Build Coastguard Worker 
749*0ed15c77SAndroid Build Coastguard Worker 2.8.9 (12-Jun-2017)
750*0ed15c77SAndroid Build Coastguard Worker 
751*0ed15c77SAndroid Build Coastguard Worker #1595: `JsonIgnoreProperties.allowSetters` is not working in Jackson 2.8
752*0ed15c77SAndroid Build Coastguard Worker  (reported by Javy L)
753*0ed15c77SAndroid Build Coastguard Worker #1597: Escape JSONP breaking characters
754*0ed15c77SAndroid Build Coastguard Worker  (contributed by Marco C)
755*0ed15c77SAndroid Build Coastguard Worker #1629: `FromStringDeserializer` ignores registered `DeserializationProblemHandler`
756*0ed15c77SAndroid Build Coastguard Worker   for `java.util.UUID`
757*0ed15c77SAndroid Build Coastguard Worker  (reported by Andrew J)
758*0ed15c77SAndroid Build Coastguard Worker #1642: Support `READ_UNKNOWN_ENUM_VALUES_AS_NULL` with `@JsonCreator`
759*0ed15c77SAndroid Build Coastguard Worker  (contributed by Joe L)
760*0ed15c77SAndroid Build Coastguard Worker #1647: Missing properties from base class when recursive types are involved
761*0ed15c77SAndroid Build Coastguard Worker  (reported by Slobodan P)
762*0ed15c77SAndroid Build Coastguard Worker #1648: `DateTimeSerializerBase` ignores configured date format when creating contextual
763*0ed15c77SAndroid Build Coastguard Worker  (reported by Bertrand R)
764*0ed15c77SAndroid Build Coastguard Worker #1651: `StdDateFormat` fails to parse 'zulu' date when TimeZone other than UTC
765*0ed15c77SAndroid Build Coastguard Worker  (reported by Bertrand R)
766*0ed15c77SAndroid Build Coastguard Worker 
767*0ed15c77SAndroid Build Coastguard Worker 2.8.8.1 (19-Apr-2017)
768*0ed15c77SAndroid Build Coastguard Worker 
769*0ed15c77SAndroid Build Coastguard Worker #1585: Invoke ServiceLoader.load() inside of a privileged block when loading
770*0ed15c77SAndroid Build Coastguard Worker   modules using `ObjectMapper.findModules()`
771*0ed15c77SAndroid Build Coastguard Worker  (contributed by Ivo S)
772*0ed15c77SAndroid Build Coastguard Worker #1599: Jackson Deserializer security vulnerability (CVE-2017-7525)
773*0ed15c77SAndroid Build Coastguard Worker  (reported by ayound@github)
774*0ed15c77SAndroid Build Coastguard Worker #1607: @JsonIdentityReference not used when setup on class only
775*0ed15c77SAndroid Build Coastguard Worker  (reported by vboulaye@github)
776*0ed15c77SAndroid Build Coastguard Worker 
777*0ed15c77SAndroid Build Coastguard Worker 2.8.8 (05-Apr-2017)
778*0ed15c77SAndroid Build Coastguard Worker 
779*0ed15c77SAndroid Build Coastguard Worker (partial) #994: `DeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS` only works for POJOs, Maps
780*0ed15c77SAndroid Build Coastguard Worker #1345: `@JsonProperty(access = READ_ONLY)` together with generated constructor (Lombok) causes
781*0ed15c77SAndroid Build Coastguard Worker  exception: "Could not find creator property with name ..."
782*0ed15c77SAndroid Build Coastguard Worker  (reported by Raniz85@github)
783*0ed15c77SAndroid Build Coastguard Worker #1533: `AsPropertyTypeDeserializer` ignores `DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT`
784*0ed15c77SAndroid Build Coastguard Worker #1543: JsonFormat.Shape.NUMBER_INT does not work when defined on enum type in 2.8
785*0ed15c77SAndroid Build Coastguard Worker  (reported by Alex P)
786*0ed15c77SAndroid Build Coastguard Worker #1570: `Enum` key for `Map` ignores `SerializationFeature.WRITE_ENUMS_USING_INDEX`
787*0ed15c77SAndroid Build Coastguard Worker  (reported by SolaKun@github)
788*0ed15c77SAndroid Build Coastguard Worker #1573: Missing properties when deserializing using a builder class with a non-default
789*0ed15c77SAndroid Build Coastguard Worker   constructor and a mutator annotated with `@JsonUnwrapped`
790*0ed15c77SAndroid Build Coastguard Worker  (reported by Joshua J)
791*0ed15c77SAndroid Build Coastguard Worker #1575: Problem with `@JsonIgnoreProperties` on recursive property (regression in 2.8)
792*0ed15c77SAndroid Build Coastguard Worker  (reported by anujkumar04@github)
793*0ed15c77SAndroid Build Coastguard Worker - Minor fix to creation of `PropertyMetadata`, had one path that could lead to NPE
794*0ed15c77SAndroid Build Coastguard Worker 
795*0ed15c77SAndroid Build Coastguard Worker 2.8.7 (21-Feb-2017)
796*0ed15c77SAndroid Build Coastguard Worker 
797*0ed15c77SAndroid Build Coastguard Worker #935: `@JsonProperty(access = Access.READ_ONLY)` - unexpected behaviour
798*0ed15c77SAndroid Build Coastguard Worker #1317: '@JsonIgnore' annotation not working with creator properties, serialization
799*0ed15c77SAndroid Build Coastguard Worker 
800*0ed15c77SAndroid Build Coastguard Worker 2.8.6 (12-Jan-2017)
801*0ed15c77SAndroid Build Coastguard Worker 
802*0ed15c77SAndroid Build Coastguard Worker #349: @JsonAnySetter with @JsonUnwrapped: deserialization fails with arrays
803*0ed15c77SAndroid Build Coastguard Worker  (reported by hdave@github)
804*0ed15c77SAndroid Build Coastguard Worker #1388: `@JsonIdentityInfo`: id has to be the first key in deserialization when
805*0ed15c77SAndroid Build Coastguard Worker   deserializing with `@JsonCreator`
806*0ed15c77SAndroid Build Coastguard Worker  (reported by moodysalem@github)
807*0ed15c77SAndroid Build Coastguard Worker #1425: `JsonNode.binaryValue()` ignores illegal character if it's the last one
808*0ed15c77SAndroid Build Coastguard Worker  (reported by binoternary@github)
809*0ed15c77SAndroid Build Coastguard Worker #1453: `UntypedObjectDeserializer` does not retain `float` type (over `double`)
810*0ed15c77SAndroid Build Coastguard Worker #1456: `TypeFactory` type resolution broken in 2.7 for generic types
811*0ed15c77SAndroid Build Coastguard Worker    when using `constructType` with context
812*0ed15c77SAndroid Build Coastguard Worker #1473: Add explicit deserializer for `StringBuilder` due to Java 9 changes
813*0ed15c77SAndroid Build Coastguard Worker #1493: `ACCEPT_CASE_INSENSITIVE_PROPERTIES` fails with `@JsonUnwrapped`
814*0ed15c77SAndroid Build Coastguard Worker 
815*0ed15c77SAndroid Build Coastguard Worker 2.8.5 (14-Nov-2016)
816*0ed15c77SAndroid Build Coastguard Worker 
817*0ed15c77SAndroid Build Coastguard Worker #1417: Further issues with `@JsonInclude` with `NON_DEFAULT`
818*0ed15c77SAndroid Build Coastguard Worker #1421: ACCEPT_SINGLE_VALUE_AS_ARRAY partially broken in 2.7.x, 2.8.x
819*0ed15c77SAndroid Build Coastguard Worker #1429: `StdKeyDeserializer` can erroneously use a static factory method
820*0ed15c77SAndroid Build Coastguard Worker   with more than one argument
821*0ed15c77SAndroid Build Coastguard Worker #1432: Off by 1 bug in PropertyValueBuffer
822*0ed15c77SAndroid Build Coastguard Worker  (reported by Kevin D)
823*0ed15c77SAndroid Build Coastguard Worker #1438: `ACCEPT_CASE_INSENSITIVE_PROPERTIES` is not respected for creator properties
824*0ed15c77SAndroid Build Coastguard Worker  (reported by Jayson M)
825*0ed15c77SAndroid Build Coastguard Worker #1439: NPE when using with filter id, serializing `java.util.Map` types
826*0ed15c77SAndroid Build Coastguard Worker #1441: Failure with custom Enum key deserializer, polymorphic types
827*0ed15c77SAndroid Build Coastguard Worker  (reported by Nathanial O)
828*0ed15c77SAndroid Build Coastguard Worker #1445: Map key deserializerModifiers ignored
829*0ed15c77SAndroid Build Coastguard Worker  (reported by alfonsobonso@github)
830*0ed15c77SAndroid Build Coastguard Worker - Improvements to #1411 fix to ensure consistent `null` key handling
831*0ed15c77SAndroid Build Coastguard Worker 
832*0ed15c77SAndroid Build Coastguard Worker 2.8.4 (14-Oct-2016)
833*0ed15c77SAndroid Build Coastguard Worker 
834*0ed15c77SAndroid Build Coastguard Worker #466: Jackson ignores Type information when raw return type is BigDecimal or BigInteger
835*0ed15c77SAndroid Build Coastguard Worker #1001: Parameter names module gets confused with delegate creator which is a static method
836*0ed15c77SAndroid Build Coastguard Worker #1324: Boolean parsing with `StdDeserializer` is too slow with huge integer value
837*0ed15c77SAndroid Build Coastguard Worker  (reported by pavankumar-parankusam@github)
838*0ed15c77SAndroid Build Coastguard Worker #1383: Problem with `@JsonCreator` with 1-arg factory-method, implicit param names
839*0ed15c77SAndroid Build Coastguard Worker #1384: `@JsonDeserialize(keyUsing = ...)` does not work correctly together with
840*0ed15c77SAndroid Build Coastguard Worker   DefaultTyping.NON_FINAL
841*0ed15c77SAndroid Build Coastguard Worker  (reported by Oleg Z)
842*0ed15c77SAndroid Build Coastguard Worker #1385: Polymorphic type lost when using `@JsonValue`
843*0ed15c77SAndroid Build Coastguard Worker  (reported by TomMarkuske@github)
844*0ed15c77SAndroid Build Coastguard Worker #1389 Problem with handling of multi-argument creator with Enums
845*0ed15c77SAndroid Build Coastguard Worker  (fix contributed by Pavel P)
846*0ed15c77SAndroid Build Coastguard Worker #1392: Custom UnmodifiableSetMixin Fails in Jackson 2.7+ but works in Jackson 2.6
847*0ed15c77SAndroid Build Coastguard Worker  (reported by Rob W)
848*0ed15c77SAndroid Build Coastguard Worker #1395: Problems deserializing primitive `long` field while using `TypeResolverBuilder`
849*0ed15c77SAndroid Build Coastguard Worker  (reported by UghZan3@github)
850*0ed15c77SAndroid Build Coastguard Worker #1403: Reference-chain hints use incorrect class-name for inner classes
851*0ed15c77SAndroid Build Coastguard Worker  (reported by Josh G)
852*0ed15c77SAndroid Build Coastguard Worker #1411: MapSerializer._orderEntries should check for null keys
853*0ed15c77SAndroid Build Coastguard Worker  (reported by Jörn H)
854*0ed15c77SAndroid Build Coastguard Worker 
855*0ed15c77SAndroid Build Coastguard Worker 2.8.3 (17-Sep-2016)
856*0ed15c77SAndroid Build Coastguard Worker 
857*0ed15c77SAndroid Build Coastguard Worker #1351: `@JsonInclude(NON_DEFAULT)` doesn't omit null fields
858*0ed15c77SAndroid Build Coastguard Worker  (reported by Gili T)
859*0ed15c77SAndroid Build Coastguard Worker #1353: Improve error-handling for `java.net.URL` deserialization
860*0ed15c77SAndroid Build Coastguard Worker #1361: Change `TokenBuffer` to use new `writeEmbeddedObject()` if possible
861*0ed15c77SAndroid Build Coastguard Worker 
862*0ed15c77SAndroid Build Coastguard Worker 2.8.2 (30-Aug-2016)
863*0ed15c77SAndroid Build Coastguard Worker 
864*0ed15c77SAndroid Build Coastguard Worker #1315: Binding numeric values can BigDecimal lose precision
865*0ed15c77SAndroid Build Coastguard Worker  (reported by Andrew S)
866*0ed15c77SAndroid Build Coastguard Worker #1327: Class level `@JsonInclude(JsonInclude.Include.NON_EMPTY)` is ignored
867*0ed15c77SAndroid Build Coastguard Worker  (reported by elruwen@github)
868*0ed15c77SAndroid Build Coastguard Worker #1335: Unconditionally call `TypeIdResolver.getDescForKnownTypeIds`
869*0ed15c77SAndroid Build Coastguard Worker  (contributed by Chris J-Y)
870*0ed15c77SAndroid Build Coastguard Worker 
871*0ed15c77SAndroid Build Coastguard Worker 2.8.1 (20-Jul-2016)
872*0ed15c77SAndroid Build Coastguard Worker 
873*0ed15c77SAndroid Build Coastguard Worker #1256: `Optional.empty()` not excluded if property declared with type `Object`
874*0ed15c77SAndroid Build Coastguard Worker #1288: Type id not exposed for `JsonTypeInfo.As.EXTERNAL_PROPERTY` even when `visible` set to `true`
875*0ed15c77SAndroid Build Coastguard Worker  (reported by libetl@github)
876*0ed15c77SAndroid Build Coastguard Worker #1289: Optimize construction of `ArrayList`, `LinkedHashMap` instances
877*0ed15c77SAndroid Build Coastguard Worker #1291: Backward-incompatible behaviour of 2.8: deserializing enum types
878*0ed15c77SAndroid Build Coastguard Worker    with two static factory methods fail by default
879*0ed15c77SAndroid Build Coastguard Worker #1297: Deserialization of generic type with Map.class
880*0ed15c77SAndroid Build Coastguard Worker  (reported by Arek G)
881*0ed15c77SAndroid Build Coastguard Worker #1302: NPE for `ResolvedRecursiveType` in 2.8.0 due to caching
882*0ed15c77SAndroid Build Coastguard Worker 
883*0ed15c77SAndroid Build Coastguard Worker 2.8.0 (04-Jul-2016)
884*0ed15c77SAndroid Build Coastguard Worker 
885*0ed15c77SAndroid Build Coastguard Worker #621: Allow definition of "ignorable types" without annotation (using
886*0ed15c77SAndroid Build Coastguard Worker   `Mapper.configOverride(type).setIsIgnoredType(true)`
887*0ed15c77SAndroid Build Coastguard Worker #867: Support `SerializationFeature.WRITE_EMPTY_JSON_ARRAYS ` for `JsonNode`
888*0ed15c77SAndroid Build Coastguard Worker #903: Add `JsonGenerator` reference to `SerializerProvider`
889*0ed15c77SAndroid Build Coastguard Worker #931: Add new method in `Deserializers.Base` to support `ReferenceType`
890*0ed15c77SAndroid Build Coastguard Worker #960: `@JsonCreator` not working on a factory with no arguments for an enum type
891*0ed15c77SAndroid Build Coastguard Worker  (reported by Artur J)
892*0ed15c77SAndroid Build Coastguard Worker #990: Allow failing on `null` values for creator (add
893*0ed15c77SAndroid Build Coastguard Worker   `DeserializationFeature.FAIL_ON_NULL_CREATOR_PROPERTIES`)
894*0ed15c77SAndroid Build Coastguard Worker  (contributed by mkokho@github)
895*0ed15c77SAndroid Build Coastguard Worker #999: External property is not deserialized
896*0ed15c77SAndroid Build Coastguard Worker  (reported by Aleksandr O)
897*0ed15c77SAndroid Build Coastguard Worker #1017: Add new mapping exception type ('InvalidTypeIdException') for subtype resolution errors
898*0ed15c77SAndroid Build Coastguard Worker  (suggested by natnan@github)
899*0ed15c77SAndroid Build Coastguard Worker #1028: Ignore USE_BIG_DECIMAL_FOR_FLOATS for NaN/Infinity
900*0ed15c77SAndroid Build Coastguard Worker  (reported by Vladimir K, lightoze@github)
901*0ed15c77SAndroid Build Coastguard Worker #1047: Allow use of `@JsonAnySetter` on a Map-valued field, no need for setter
902*0ed15c77SAndroid Build Coastguard Worker #1082: Can not use static Creator factory methods for `Enum`s, with JsonCreator.Mode.PROPERTIES
903*0ed15c77SAndroid Build Coastguard Worker  (contributed by Lokesh K)
904*0ed15c77SAndroid Build Coastguard Worker #1084: Change `TypeDeserializerBase` to take `JavaType` for `defaultImpl`, NOT `Class`
905*0ed15c77SAndroid Build Coastguard Worker #1126: Allow deserialization of unknown Enums using a predefined value
906*0ed15c77SAndroid Build Coastguard Worker  (contributed by Alejandro R)
907*0ed15c77SAndroid Build Coastguard Worker #1136: Implement `TokenBuffer.writeEmbeddedObject(Object)`
908*0ed15c77SAndroid Build Coastguard Worker  (suggested by Gregoire C, gcxRun@github)
909*0ed15c77SAndroid Build Coastguard Worker #1165: CoreXMLDeserializers does not handle time-only XMLGregorianCalendars
910*0ed15c77SAndroid Build Coastguard Worker  (reported, contributed fix by Ross G)
911*0ed15c77SAndroid Build Coastguard Worker #1181: Add the ability to specify the initial capacity of the ArrayNode
912*0ed15c77SAndroid Build Coastguard Worker  (suggested by Matt V, mveitas@github)
913*0ed15c77SAndroid Build Coastguard Worker #1184: Allow overriding of `transient` with explicit inclusion with `@JsonProperty`
914*0ed15c77SAndroid Build Coastguard Worker  (suggested by Maarten B)
915*0ed15c77SAndroid Build Coastguard Worker #1187: Refactor `AtomicReferenceDeserializer` into `ReferenceTypeDeserializer`
916*0ed15c77SAndroid Build Coastguard Worker #1204: Add a convenience accessor `JavaType.hasContentType()` (true for container or reference type)
917*0ed15c77SAndroid Build Coastguard Worker #1206: Add "anchor type" member for `ReferenceType`
918*0ed15c77SAndroid Build Coastguard Worker #1211: Change `JsonValueSerializer` to get `AnnotatedMethod`, not "raw" method
919*0ed15c77SAndroid Build Coastguard Worker #1217: `@JsonIgnoreProperties` on Pojo fields not working for deserialization
920*0ed15c77SAndroid Build Coastguard Worker  (reported by Lokesh K)
921*0ed15c77SAndroid Build Coastguard Worker #1221: Use `Throwable.addSuppressed()` directly and/or via try-with-resources
922*0ed15c77SAndroid Build Coastguard Worker #1232: Add support for `JsonFormat.Feature.ACCEPT_CASE_INSENSITIVE_PROPERTIES`
923*0ed15c77SAndroid Build Coastguard Worker #1233: Add support for `JsonFormat.Feature.WRITE_SORTED_MAP_ENTRIES`
924*0ed15c77SAndroid Build Coastguard Worker #1235: `java.nio.file.Path` support incomplete
925*0ed15c77SAndroid Build Coastguard Worker  (reported by, fix contributed by Benson M)
926*0ed15c77SAndroid Build Coastguard Worker #1261: JsonIdentityInfo broken deserialization involving forward references and/or cycles
927*0ed15c77SAndroid Build Coastguard Worker  (reported by, fix contributed by Ari F)
928*0ed15c77SAndroid Build Coastguard Worker #1270: Generic type returned from type id resolver seems to be ignored
929*0ed15c77SAndroid Build Coastguard Worker  (reported by Benson M)
930*0ed15c77SAndroid Build Coastguard Worker #1277: Add caching of resolved generic types for `TypeFactory`
931*0ed15c77SAndroid Build Coastguard Worker  (requested by Andriy P)
932*0ed15c77SAndroid Build Coastguard Worker 
933*0ed15c77SAndroid Build Coastguard Worker 2.7.9.5 (23-Nov-2018)
934*0ed15c77SAndroid Build Coastguard Worker 
935*0ed15c77SAndroid Build Coastguard Worker #2097: Block more classes from polymorphic deserialization (CVE-2018-14718
936*0ed15c77SAndroid Build Coastguard Worker   - CVE-2018-14721)
937*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
938*0ed15c77SAndroid Build Coastguard Worker #2109: Canonical string for reference type is built incorrectly
939*0ed15c77SAndroid Build Coastguard Worker  (reported by svarzee@github)
940*0ed15c77SAndroid Build Coastguard Worker #2186: Block more classes from polymorphic deserialization (CVE-2018-19360,
941*0ed15c77SAndroid Build Coastguard Worker   CVE-2018-19361, CVE-2018-19362)
942*0ed15c77SAndroid Build Coastguard Worker  (reported by Guixiong Wu)
943*0ed15c77SAndroid Build Coastguard Worker 
944*0ed15c77SAndroid Build Coastguard Worker 2.7.9 (04-Feb-2017)
945*0ed15c77SAndroid Build Coastguard Worker 
946*0ed15c77SAndroid Build Coastguard Worker #1367: No Object Id found for an instance when using `@ConstructorProperties`
947*0ed15c77SAndroid Build Coastguard Worker #1505: @JsonEnumDefaultValue should take precedence over FAIL_ON_NUMBERS_FOR_ENUMS
948*0ed15c77SAndroid Build Coastguard Worker  (suggested by Stephan S)
949*0ed15c77SAndroid Build Coastguard Worker #1506: Missing `KeyDeserializer` for `CharSequence`
950*0ed15c77SAndroid Build Coastguard Worker #1513: `MapSerializer._orderEntries()` throws NPE when operating on `ConcurrentHashMap`
951*0ed15c77SAndroid Build Coastguard Worker  (reported by Sovietaced@github)
952*0ed15c77SAndroid Build Coastguard Worker - Simplified processing of class annotations (for `AnnotatedClass`) to try to
953*0ed15c77SAndroid Build Coastguard Worker   solve rare concurrency problems with "root name" annotations.
954*0ed15c77SAndroid Build Coastguard Worker 
955*0ed15c77SAndroid Build Coastguard Worker 2.7.8 (26-Sep-2016)
956*0ed15c77SAndroid Build Coastguard Worker 
957*0ed15c77SAndroid Build Coastguard Worker #877: @JsonIgnoreProperties`: ignoring the "cause" property of `Throwable` on GAE
958*0ed15c77SAndroid Build Coastguard Worker #1359: Improve `JsonNode` deserializer to create `FloatNode` if parser supports
959*0ed15c77SAndroid Build Coastguard Worker #1362: ObjectReader.readValues()` ignores offset and length when reading an array
960*0ed15c77SAndroid Build Coastguard Worker  (reported by wastevenson@github)
961*0ed15c77SAndroid Build Coastguard Worker #1363: The static field ClassUtil.sCached can cause a class loader leak
962*0ed15c77SAndroid Build Coastguard Worker  (reported by Stuart D)
963*0ed15c77SAndroid Build Coastguard Worker #1368: Problem serializing `JsonMappingException` due to addition of non-ignored
964*0ed15c77SAndroid Build Coastguard Worker   `processor` property (added in 2.7)
965*0ed15c77SAndroid Build Coastguard Worker  (reported, suggesed fix by Josh C)
966*0ed15c77SAndroid Build Coastguard Worker #1383: Problem with `@JsonCreator` with 1-arg factory-method, implicit param names
967*0ed15c77SAndroid Build Coastguard Worker 
968*0ed15c77SAndroid Build Coastguard Worker 2.7.7 (27-Aug-2016)
969*0ed15c77SAndroid Build Coastguard Worker 
970*0ed15c77SAndroid Build Coastguard Worker #1322: EnumMap keys not using enum's `@JsonProperty` values unlike Enum values
971*0ed15c77SAndroid Build Coastguard Worker  (reported by MichaelChambers@github)
972*0ed15c77SAndroid Build Coastguard Worker #1332: Fixed ArrayIndexOutOfBoundException for enum by index deser
973*0ed15c77SAndroid Build Coastguard Worker  (reported by Max D)
974*0ed15c77SAndroid Build Coastguard Worker #1344: Deserializing locale assumes JDK separator (underscore), does not
975*0ed15c77SAndroid Build Coastguard Worker   accept RFC specified (hyphen)
976*0ed15c77SAndroid Build Coastguard Worker  (reported by Jim M)
977*0ed15c77SAndroid Build Coastguard Worker 
978*0ed15c77SAndroid Build Coastguard Worker 2.7.6 (23-Jul-2016)
979*0ed15c77SAndroid Build Coastguard Worker 
980*0ed15c77SAndroid Build Coastguard Worker #1215: Problem with type specialization for Maps with `@JsonDeserialize(as=subtype)`
981*0ed15c77SAndroid Build Coastguard Worker  (reported by brentryan@github)
982*0ed15c77SAndroid Build Coastguard Worker #1279: Ensure DOM parsing defaults to not expanding external entities
983*0ed15c77SAndroid Build Coastguard Worker #1288: Type id not exposed for `JsonTypeInfo.As.EXTERNAL_PROPERTY` even when `visible` set to `true`
984*0ed15c77SAndroid Build Coastguard Worker #1299: Timestamp deserialization error
985*0ed15c77SAndroid Build Coastguard Worker  (reported by liyuj@github)
986*0ed15c77SAndroid Build Coastguard Worker #1301: Problem with `JavaType.toString()` for recursive (self-referential) types
987*0ed15c77SAndroid Build Coastguard Worker  (reported by Brian P)
988*0ed15c77SAndroid Build Coastguard Worker #1307: `TypeWrappedDeserializer` doesn't delegate the `getNullValue()` method to `_deserializer`
989*0ed15c77SAndroid Build Coastguard Worker  (reported by vfries@github)
990*0ed15c77SAndroid Build Coastguard Worker 
991*0ed15c77SAndroid Build Coastguard Worker 2.7.5 (11-Jun-2016)
992*0ed15c77SAndroid Build Coastguard Worker 
993*0ed15c77SAndroid Build Coastguard Worker #1098: DeserializationFeature.FAIL_ON_INVALID_SUBTYPE does not work with
994*0ed15c77SAndroid Build Coastguard Worker   `JsonTypeInfo.Id.CLASS`
995*0ed15c77SAndroid Build Coastguard Worker  (reported by szaccaria@github)
996*0ed15c77SAndroid Build Coastguard Worker #1223: `BasicClassIntrospector.forSerialization(...).findProperties` should
997*0ed15c77SAndroid Build Coastguard Worker   respect MapperFeature.AUTO_DETECT_GETTERS/SETTERS?
998*0ed15c77SAndroid Build Coastguard Worker  (reported by William H)
999*0ed15c77SAndroid Build Coastguard Worker #1225: `JsonMappingException` should override getProcessor()
1000*0ed15c77SAndroid Build Coastguard Worker  (reported by Nick B)
1001*0ed15c77SAndroid Build Coastguard Worker 
1002*0ed15c77SAndroid Build Coastguard Worker 2.6.7.1 (11-Jul-2017)
1003*0ed15c77SAndroid Build Coastguard Worker 
1004*0ed15c77SAndroid Build Coastguard Worker #1383: Problem with `@JsonCreator` with 1-arg factory-method, implicit param names
1005*0ed15c77SAndroid Build Coastguard Worker #1599: Backport the extra safety checks for polymorphic deserialization
1006*0ed15c77SAndroid Build Coastguard Worker 
1007*0ed15c77SAndroid Build Coastguard Worker 2.6.7 (05-Jun-2016)
1008*0ed15c77SAndroid Build Coastguard Worker 
1009*0ed15c77SAndroid Build Coastguard Worker #1194: Incorrect signature for generic type via `JavaType.getGenericSignature
1010*0ed15c77SAndroid Build Coastguard Worker #1228: @JsonAnySetter does not deserialize null to Deserializer's NullValue
1011*0ed15c77SAndroid Build Coastguard Worker  (contributed by Eric S)
1012*0ed15c77SAndroid Build Coastguard Worker #1231: `@JsonSerialize(as=superType)` behavior disallowed in 2.7.4
1013*0ed15c77SAndroid Build Coastguard Worker  (reported by Mark W)
1014*0ed15c77SAndroid Build Coastguard Worker #1248: `Annotated` returns raw type in place of Generic Type in 2.7.x
1015*0ed15c77SAndroid Build Coastguard Worker  (reported by Andrew J, apjoseph@github)
1016*0ed15c77SAndroid Build Coastguard Worker #1253: Problem with context handling for `TokenBuffer`, field name
1017*0ed15c77SAndroid Build Coastguard Worker #1260: `NullPointerException` in `JsonNodeDeserializer`
1018*0ed15c77SAndroid Build Coastguard Worker  (reported by Eric S)
1019*0ed15c77SAndroid Build Coastguard Worker 
1020*0ed15c77SAndroid Build Coastguard Worker 2.7.4 (29-Apr-2016)
1021*0ed15c77SAndroid Build Coastguard Worker 
1022*0ed15c77SAndroid Build Coastguard Worker #1122: Jackson 2.7 and Lombok: 'Conflicting/ambiguous property name definitions'
1023*0ed15c77SAndroid Build Coastguard Worker #1178: `@JsonSerialize(contentAs=superType)` behavior disallowed in 2.7
1024*0ed15c77SAndroid Build Coastguard Worker #1186: SimpleAbstractTypeResolver breaks generic parameters
1025*0ed15c77SAndroid Build Coastguard Worker  (reported by tobiash@github)
1026*0ed15c77SAndroid Build Coastguard Worker #1189: Converter called twice results in ClassCastException
1027*0ed15c77SAndroid Build Coastguard Worker  (reported by carrino@github)
1028*0ed15c77SAndroid Build Coastguard Worker #1191: Non-matching quotes used in error message for date parsing
1029*0ed15c77SAndroid Build Coastguard Worker #1194: Incorrect signature for generic type via `JavaType.getGenericSignature
1030*0ed15c77SAndroid Build Coastguard Worker #1195: `JsonMappingException` not Serializable due to 2.7 reference to source (parser)
1031*0ed15c77SAndroid Build Coastguard Worker  (reported by mjustin@github)
1032*0ed15c77SAndroid Build Coastguard Worker #1197: `SNAKE_CASE` doesn't work when using Lombok's `@AllArgsConstructor`
1033*0ed15c77SAndroid Build Coastguard Worker #1198: Problem with `@JsonTypeInfo.As.EXTERNAL_PROPERTY`, `defaultImpl`, missing type id, NPE
1034*0ed15c77SAndroid Build Coastguard Worker #1203: `@JsonTypeInfo` does not work correctly for ReferenceTypes like `AtomicReference`
1035*0ed15c77SAndroid Build Coastguard Worker #1208: treeToValue doesn't handle POJONodes that contain exactly the requested value type
1036*0ed15c77SAndroid Build Coastguard Worker   (reported by Tom M)
1037*0ed15c77SAndroid Build Coastguard Worker - Improve handling of custom content (de)serializers for `AtomicReference`
1038*0ed15c77SAndroid Build Coastguard Worker 
1039*0ed15c77SAndroid Build Coastguard Worker 2.7.3 (16-Mar-2016)
1040*0ed15c77SAndroid Build Coastguard Worker 
1041*0ed15c77SAndroid Build Coastguard Worker #1125: Problem with polymorphic types, losing properties from base type(s)
1042*0ed15c77SAndroid Build Coastguard Worker #1150: Problem with Object id handling, explicit `null` token
1043*0ed15c77SAndroid Build Coastguard Worker  (reported by Xavi T)
1044*0ed15c77SAndroid Build Coastguard Worker #1154: @JsonFormat.pattern on dates is now ignored if shape is not explicitely provided
1045*0ed15c77SAndroid Build Coastguard Worker  (reported by Yoann R)
1046*0ed15c77SAndroid Build Coastguard Worker #1161: `DeserializationFeature.READ_ENUMS_USING_TO_STRING` not dynamically
1047*0ed15c77SAndroid Build Coastguard Worker   changeable with 2.7
1048*0ed15c77SAndroid Build Coastguard Worker  (reported by asa-git@github)
1049*0ed15c77SAndroid Build Coastguard Worker - Minor fixes to `AnnotationIntrospector.findEnumValues()` to correct problems with
1050*0ed15c77SAndroid Build Coastguard Worker   merging of explicit enum value names.
1051*0ed15c77SAndroid Build Coastguard Worker 
1052*0ed15c77SAndroid Build Coastguard Worker 2.7.2 (26-Feb-2016)
1053*0ed15c77SAndroid Build Coastguard Worker 
1054*0ed15c77SAndroid Build Coastguard Worker #1124: JsonAnyGetter ignores JsonSerialize(contentUsing=...)
1055*0ed15c77SAndroid Build Coastguard Worker  (reported by Jiri M)
1056*0ed15c77SAndroid Build Coastguard Worker #1128: UnrecognizedPropertyException in 2.7.1 for properties that work with version 2.6.5
1057*0ed15c77SAndroid Build Coastguard Worker  (reported by Roleek@github)
1058*0ed15c77SAndroid Build Coastguard Worker #1129: When applying type modifiers, don't ignore container types.
1059*0ed15c77SAndroid Build Coastguard Worker #1130: NPE in `StdDateFormat` hashCode and equals
1060*0ed15c77SAndroid Build Coastguard Worker  (reported by Kazuki S, kazuki43zoo@github)
1061*0ed15c77SAndroid Build Coastguard Worker #1134: Jackson 2.7 doesn't work with jdk6 due to use of `Collections.emptyIterator()`
1062*0ed15c77SAndroid Build Coastguard Worker  (reported by Timur S, saladinkzn@github)
1063*0ed15c77SAndroid Build Coastguard Worker 
1064*0ed15c77SAndroid Build Coastguard Worker 2.7.1-1 (03-Feb-2016)
1065*0ed15c77SAndroid Build Coastguard Worker 
1066*0ed15c77SAndroid Build Coastguard Worker Special one-off "micro patch" for:
1067*0ed15c77SAndroid Build Coastguard Worker 
1068*0ed15c77SAndroid Build Coastguard Worker #1115: Problems with deprecated `TypeFactory.constructType(type, ctxt)` methods if `ctxt` is `null`
1069*0ed15c77SAndroid Build Coastguard Worker 
1070*0ed15c77SAndroid Build Coastguard Worker 2.7.1 (02-Feb-2016)
1071*0ed15c77SAndroid Build Coastguard Worker 
1072*0ed15c77SAndroid Build Coastguard Worker #1079: Add back `TypeFactory.constructType(Type, Class)` as "deprecated" in 2.7.1
1073*0ed15c77SAndroid Build Coastguard Worker #1083: Field in base class is not recognized, when using `@JsonType.defaultImpl`
1074*0ed15c77SAndroid Build Coastguard Worker  (reported by Julian H)
1075*0ed15c77SAndroid Build Coastguard Worker #1095: Prevent coercion of `int` from empty String to `null` if
1076*0ed15c77SAndroid Build Coastguard Worker   `DeserializationFeature .FAIL_ON_NULL_FOR_PRIMITIVES` is `true`
1077*0ed15c77SAndroid Build Coastguard Worker  (reported by yzmyyff@github)
1078*0ed15c77SAndroid Build Coastguard Worker #1102: Handling of deprecated `SimpleType.construct()` too minimalistic
1079*0ed15c77SAndroid Build Coastguard Worker  (reported by Thibault K)
1080*0ed15c77SAndroid Build Coastguard Worker #1109: @JsonFormat is ignored by the DateSerializer unless either a custom pattern
1081*0ed15c77SAndroid Build Coastguard Worker   or a timezone are specified
1082*0ed15c77SAndroid Build Coastguard Worker  (contributed by Aleks S)
1083*0ed15c77SAndroid Build Coastguard Worker 
1084*0ed15c77SAndroid Build Coastguard Worker 2.7.0 (10-Jan-2016)
1085*0ed15c77SAndroid Build Coastguard Worker 
1086*0ed15c77SAndroid Build Coastguard Worker #76: Problem handling datatypes Recursive type parameters
1087*0ed15c77SAndroid Build Coastguard Worker  (reported by Aram K)
1088*0ed15c77SAndroid Build Coastguard Worker #357: StackOverflowError with contentConverter that returns array type
1089*0ed15c77SAndroid Build Coastguard Worker  (reported by Florian S)
1090*0ed15c77SAndroid Build Coastguard Worker #432: `StdValueInstantiator` unwraps exceptions, losing context
1091*0ed15c77SAndroid Build Coastguard Worker  (reported by Miles K)
1092*0ed15c77SAndroid Build Coastguard Worker #497: Add new JsonInclude.Include feature to exclude maps after exclusion removes all elements
1093*0ed15c77SAndroid Build Coastguard Worker #803: Allow use of `StdDateFormat.setLenient()`
1094*0ed15c77SAndroid Build Coastguard Worker  (suggested by raj-ghodke@github)
1095*0ed15c77SAndroid Build Coastguard Worker #819: Add support for setting `FormatFeature` via `ObjectReader`, `ObjectWriter`
1096*0ed15c77SAndroid Build Coastguard Worker #857: Add support for java.beans.Transient (requires Java 7)
1097*0ed15c77SAndroid Build Coastguard Worker  (suggested by Thomas M)
1098*0ed15c77SAndroid Build Coastguard Worker #898: Add `ObjectMapper.getSerializerProviderInstance()`
1099*0ed15c77SAndroid Build Coastguard Worker #905: Add support for `@ConstructorProperties` (requires Java 7)
1100*0ed15c77SAndroid Build Coastguard Worker  (requested by Jonas K)
1101*0ed15c77SAndroid Build Coastguard Worker #909: Rename PropertyNamingStrategy CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES as SNAKE_CASE,
1102*0ed15c77SAndroid Build Coastguard Worker    PASCAL_CASE_TO_CAMEL_CASE as UPPER_CAMEL_CASE
1103*0ed15c77SAndroid Build Coastguard Worker  (suggested by marcottedan@github)
1104*0ed15c77SAndroid Build Coastguard Worker #915: ObjectMapper default timezone is GMT, should be UTC
1105*0ed15c77SAndroid Build Coastguard Worker  (suggested by Infrag@github)
1106*0ed15c77SAndroid Build Coastguard Worker #918: Add `MapperFeature.ALLOW_EXPLICIT_PROPERTY_RENAMING`
1107*0ed15c77SAndroid Build Coastguard Worker  (contributed by David H)
1108*0ed15c77SAndroid Build Coastguard Worker #924: `SequenceWriter.writeAll()` could accept `Iterable`
1109*0ed15c77SAndroid Build Coastguard Worker  (suggested by Jiri-Kremser@github(
1110*0ed15c77SAndroid Build Coastguard Worker #932: Rewrite ser/deser for `AtomicReference`, based on "optional" ser/desers
1111*0ed15c77SAndroid Build Coastguard Worker #933: Close some gaps to allow using the `tryToResolveUnresolved` flows
1112*0ed15c77SAndroid Build Coastguard Worker #936: Deserialization into List subtype with JsonCreator no longer works
1113*0ed15c77SAndroid Build Coastguard Worker  (reported by adamjoeldavis@github)
1114*0ed15c77SAndroid Build Coastguard Worker #948: Support leap seconds, any number of millisecond digits for ISO-8601 Dates.
1115*0ed15c77SAndroid Build Coastguard Worker  (contributed by Jesse W)
1116*0ed15c77SAndroid Build Coastguard Worker #952: Revert non-empty handling of primitive numbers wrt `NON_EMPTY`; make
1117*0ed15c77SAndroid Build Coastguard Worker   `NON_DEFAULT` use extended criteria
1118*0ed15c77SAndroid Build Coastguard Worker #957: Merge `datatype-jdk7` stuff in (java.nio.file.Path handling)
1119*0ed15c77SAndroid Build Coastguard Worker #959: Schema generation: consider active view, discard non-included properties
1120*0ed15c77SAndroid Build Coastguard Worker #963: Add PropertyNameStrategy `KEBAB_CASE`
1121*0ed15c77SAndroid Build Coastguard Worker  (requested by Daniel M)
1122*0ed15c77SAndroid Build Coastguard Worker #978: ObjectMapper#canSerialize(Object.class) returns false even though FAIL_ON_EMPTY_BEANS is disabled
1123*0ed15c77SAndroid Build Coastguard Worker  (reported by Shumpei A)
1124*0ed15c77SAndroid Build Coastguard Worker #997: Add `MapperFeature.OVERRIDE_PUBLIC_ACCESS_MODIFIERS`
1125*0ed15c77SAndroid Build Coastguard Worker #998: Allow use of `NON_DEFAULT` for POJOs without default constructor
1126*0ed15c77SAndroid Build Coastguard Worker #1000: Add new mapping exception type for enums and UUIDs
1127*0ed15c77SAndroid Build Coastguard Worker  (suggesed by natnan@github)
1128*0ed15c77SAndroid Build Coastguard Worker #1010: Support for array delegator
1129*0ed15c77SAndroid Build Coastguard Worker  (contributed by Hugo W)
1130*0ed15c77SAndroid Build Coastguard Worker #1011: Change ObjectWriter::withAttributes() to take a Map with some kind of wildcard types
1131*0ed15c77SAndroid Build Coastguard Worker  (suggested by David B)
1132*0ed15c77SAndroid Build Coastguard Worker #1043: @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY) does not work on fields
1133*0ed15c77SAndroid Build Coastguard Worker  (reported by fabiolaa@github)
1134*0ed15c77SAndroid Build Coastguard Worker #1044: Add `AnnotationIntrospector.resolveSetterConflict(...)` to allow custom setter conflict resolution
1135*0ed15c77SAndroid Build Coastguard Worker  (suggested by clydebarrow@github)
1136*0ed15c77SAndroid Build Coastguard Worker - Make `JsonValueFormat` (self-)serializable, deserializable, to/from valid external
1137*0ed15c77SAndroid Build Coastguard Worker   value (as per JSON Schema spec)
1138*0ed15c77SAndroid Build Coastguard Worker 
1139*0ed15c77SAndroid Build Coastguard Worker INCOMPATIBILITIES:
1140*0ed15c77SAndroid Build Coastguard Worker 
1141*0ed15c77SAndroid Build Coastguard Worker - While unlikely to be problematic, #959 above required an addition of `SerializerProvider`
1142*0ed15c77SAndroid Build Coastguard Worker   argument for `depositSchemaProperty()` method `BeanProperty` and `PropertyWriter` interfaces
1143*0ed15c77SAndroid Build Coastguard Worker - JDK baseline now Java 7 (JDK 1.7), from Java 6/JDK 1.6
1144*0ed15c77SAndroid Build Coastguard Worker 
1145*0ed15c77SAndroid Build Coastguard Worker 2.6.6 (05-Apr-2016)
1146*0ed15c77SAndroid Build Coastguard Worker 
1147*0ed15c77SAndroid Build Coastguard Worker #1088: NPE possibility in SimpleMixinResolver
1148*0ed15c77SAndroid Build Coastguard Worker  (reported by Laird N)
1149*0ed15c77SAndroid Build Coastguard Worker #1099: Fix custom comparator container node traversal
1150*0ed15c77SAndroid Build Coastguard Worker  (contributed by Daniel N)
1151*0ed15c77SAndroid Build Coastguard Worker #1108: Jackson not continue to parse after DeserializationFeature.FAIL_ON_INVALID_SUBTYPE error
1152*0ed15c77SAndroid Build Coastguard Worker  (reported by jefferyyuan@github)
1153*0ed15c77SAndroid Build Coastguard Worker #1112: Detailed error message from custom key deserializer is discarded
1154*0ed15c77SAndroid Build Coastguard Worker  (contributed by Benson M)
1155*0ed15c77SAndroid Build Coastguard Worker #1120: String value omitted from weirdStringException
1156*0ed15c77SAndroid Build Coastguard Worker  (reported by Benson M)
1157*0ed15c77SAndroid Build Coastguard Worker #1123: Serializing and Deserializing Locale.ROOT
1158*0ed15c77SAndroid Build Coastguard Worker  (reported by hookumsnivy@github)
1159*0ed15c77SAndroid Build Coastguard Worker 
1160*0ed15c77SAndroid Build Coastguard Worker 2.6.5 (19-Jan-2016)
1161*0ed15c77SAndroid Build Coastguard Worker 
1162*0ed15c77SAndroid Build Coastguard Worker #1052: Don't generate a spurious NullNode after parsing an embedded object
1163*0ed15c77SAndroid Build Coastguard Worker  (reported by philipa@github)
1164*0ed15c77SAndroid Build Coastguard Worker #1061: Problem with Object Id and Type Id as Wrapper Object (regression in 2.5.1)
1165*0ed15c77SAndroid Build Coastguard Worker #1073: Add try-catch around `java.sql` type serializers
1166*0ed15c77SAndroid Build Coastguard Worker  (suggested by claudemt@github)
1167*0ed15c77SAndroid Build Coastguard Worker #1078: ObjectMapper.copy() still does not preserve _registeredModuleTypes
1168*0ed15c77SAndroid Build Coastguard Worker  (reported by ajonkisz@github)
1169*0ed15c77SAndroid Build Coastguard Worker 
1170*0ed15c77SAndroid Build Coastguard Worker 2.6.4 (07-Dec-2015)
1171*0ed15c77SAndroid Build Coastguard Worker 
1172*0ed15c77SAndroid Build Coastguard Worker #984: JsonStreamContexts are not build the same way for write.. and convert methods
1173*0ed15c77SAndroid Build Coastguard Worker  (reported by Antibrumm@github)
1174*0ed15c77SAndroid Build Coastguard Worker #989: Deserialization from "{}" to java.lang.Object causes "out of END_OBJECT token" error
1175*0ed15c77SAndroid Build Coastguard Worker  (reported by Ievgen P)
1176*0ed15c77SAndroid Build Coastguard Worker #1003: JsonTypeInfo.As.EXTERNAL_PROPERTY does not work with a Delegate
1177*0ed15c77SAndroid Build Coastguard Worker  (reported by alexwen@github)
1178*0ed15c77SAndroid Build Coastguard Worker #1005: Synthetic constructors confusing Jackson data binding
1179*0ed15c77SAndroid Build Coastguard Worker  (reported by Jayson M)
1180*0ed15c77SAndroid Build Coastguard Worker #1013: `@JsonUnwrapped` is not treated as assuming `@JsonProperty("")`
1181*0ed15c77SAndroid Build Coastguard Worker  (reported by David B)
1182*0ed15c77SAndroid Build Coastguard Worker #1036: Problem with case-insensitive deserialization
1183*0ed15c77SAndroid Build Coastguard Worker  (repoted by Dmitry R)
1184*0ed15c77SAndroid Build Coastguard Worker - Fix a minor problem with `@JsonNaming` not recognizing default value
1185*0ed15c77SAndroid Build Coastguard Worker 
1186*0ed15c77SAndroid Build Coastguard Worker 2.6.3 (12-Oct-2015)
1187*0ed15c77SAndroid Build Coastguard Worker 
1188*0ed15c77SAndroid Build Coastguard Worker #749: `EnumMap` serialization ignores `SerializationFeature.WRITE_ENUMS_USING_TO_STRING`
1189*0ed15c77SAndroid Build Coastguard Worker  (reported by scubasau@github)
1190*0ed15c77SAndroid Build Coastguard Worker #938: Regression: `StackOverflowError` with recursive types that contain `Map.Entry`
1191*0ed15c77SAndroid Build Coastguard Worker  (reported by jloisel@github)
1192*0ed15c77SAndroid Build Coastguard Worker #939: Regression: DateConversionError in 2.6.x
1193*0ed15c77SAndroid Build Coastguard Worker  (reported by Andreas P, anpieber@github)
1194*0ed15c77SAndroid Build Coastguard Worker #940: Add missing `hashCode()` implementations for `JsonNode` types that did not have them
1195*0ed15c77SAndroid Build Coastguard Worker  (contributed by Sergio M)
1196*0ed15c77SAndroid Build Coastguard Worker #941: Deserialization from "{}" to ObjectNode field causes "out of END_OBJECT token" error
1197*0ed15c77SAndroid Build Coastguard Worker  (reported by Sadayuki F)
1198*0ed15c77SAndroid Build Coastguard Worker #942: Handle null type id for polymorphic values that use external type id
1199*0ed15c77SAndroid Build Coastguard Worker  (reported by Warren B, stormboy@github)
1200*0ed15c77SAndroid Build Coastguard Worker #943: Incorrect serialization of enum map key
1201*0ed15c77SAndroid Build Coastguard Worker  (reported by Benson M)
1202*0ed15c77SAndroid Build Coastguard Worker #944: Failure to use custom deserializer for key deserializer
1203*0ed15c77SAndroid Build Coastguard Worker  (contributed by Benson M)
1204*0ed15c77SAndroid Build Coastguard Worker #949: Report the offending substring when number parsing fails
1205*0ed15c77SAndroid Build Coastguard Worker  (contributed by Jesse W)
1206*0ed15c77SAndroid Build Coastguard Worker #965: BigDecimal values via @JsonTypeInfo/@JsonSubTypes get rounded
1207*0ed15c77SAndroid Build Coastguard Worker  (reported by gmjabs@github)
1208*0ed15c77SAndroid Build Coastguard Worker 
1209*0ed15c77SAndroid Build Coastguard Worker 2.6.2 (14-Sep-2015)
1210*0ed15c77SAndroid Build Coastguard Worker 
1211*0ed15c77SAndroid Build Coastguard Worker #894: When using withFactory on ObjectMapper, the created Factory has a TypeParser
1212*0ed15c77SAndroid Build Coastguard Worker   which still has the original Factory
1213*0ed15c77SAndroid Build Coastguard Worker  (reported by lufe66@github)
1214*0ed15c77SAndroid Build Coastguard Worker #899: Problem serializing `ObjectReader` (and possibly `ObjectMapper`)
1215*0ed15c77SAndroid Build Coastguard Worker #913: ObjectMapper.copy does not preserve MappingJsonFactory features
1216*0ed15c77SAndroid Build Coastguard Worker  (reported, fixed by Daniel W)
1217*0ed15c77SAndroid Build Coastguard Worker #922: ObjectMapper.copy() does not preserve _registeredModuleTypes
1218*0ed15c77SAndroid Build Coastguard Worker #928: Problem deserializing External Type Id if type id comes before POJO
1219*0ed15c77SAndroid Build Coastguard Worker 
1220*0ed15c77SAndroid Build Coastguard Worker 2.6.1 (09-Aug-2015)
1221*0ed15c77SAndroid Build Coastguard Worker 
1222*0ed15c77SAndroid Build Coastguard Worker #873: Add missing OSGi import
1223*0ed15c77SAndroid Build Coastguard Worker #881: BeanDeserializerBase having issues with non-CreatorProperty properties.
1224*0ed15c77SAndroid Build Coastguard Worker  (reported by dharaburda@github)
1225*0ed15c77SAndroid Build Coastguard Worker #884: ArrayIndexOutOfBoundException for `BeanPropertyMap` (with ObjectId)
1226*0ed15c77SAndroid Build Coastguard Worker  (reported by alterGauner@github)
1227*0ed15c77SAndroid Build Coastguard Worker #889: Configuring an ObjectMapper's DateFormat changes time zone
1228*0ed15c77SAndroid Build Coastguard Worker  (reported by Andy W, wilkinsona@github)
1229*0ed15c77SAndroid Build Coastguard Worker #890: Exception deserializing a byte[] when the target type comes from an annotation
1230*0ed15c77SAndroid Build Coastguard Worker  (reported by gmjabs@github)
1231*0ed15c77SAndroid Build Coastguard Worker 
1232*0ed15c77SAndroid Build Coastguard Worker 2.6.0 (19-Jul-2015)
1233*0ed15c77SAndroid Build Coastguard Worker 
1234*0ed15c77SAndroid Build Coastguard Worker #77: Allow injection of 'transient' fields
1235*0ed15c77SAndroid Build Coastguard Worker #95: Allow read-only properties with `@JsonIgnoreProperties(allowGetters=true)`
1236*0ed15c77SAndroid Build Coastguard Worker #222: EXTERNAL_PROPERTY adds property multiple times and in multiple places
1237*0ed15c77SAndroid Build Coastguard Worker  (reported by Rob E, thatsnotright@github)
1238*0ed15c77SAndroid Build Coastguard Worker #296: Serialization of transient fields with public getters (add
1239*0ed15c77SAndroid Build Coastguard Worker     MapperFeature.PROPAGATE_TRANSIENT_MARKER)
1240*0ed15c77SAndroid Build Coastguard Worker  (suggested by Michal L)
1241*0ed15c77SAndroid Build Coastguard Worker #312: Support Type Id mappings where two ids map to same Class
1242*0ed15c77SAndroid Build Coastguard Worker #348: ObjectMapper.valueToTree does not work with @JsonRawValue
1243*0ed15c77SAndroid Build Coastguard Worker  (reported by Chris P, pimlottc@github)
1244*0ed15c77SAndroid Build Coastguard Worker #504: Add `DeserializationFeature.USE_LONG_FOR_INTS`
1245*0ed15c77SAndroid Build Coastguard Worker  (suggested by Jeff S)
1246*0ed15c77SAndroid Build Coastguard Worker #624: Allow setting external `ClassLoader` to use, via `TypeFactory`
1247*0ed15c77SAndroid Build Coastguard Worker #649: Make `BeanDeserializer` use new `parser.nextFieldName()` and `.hasTokenId()` methods
1248*0ed15c77SAndroid Build Coastguard Worker #664: Add `DeserializationFeature.ACCEPT_FLOAT_AS_INT` to prevent coercion of floating point
1249*0ed15c77SAndroid Build Coastguard Worker  numbers int `int`/`long`/`Integer`/`Long`
1250*0ed15c77SAndroid Build Coastguard Worker  (requested by wenzis@github)
1251*0ed15c77SAndroid Build Coastguard Worker #677: Specifying `Enum` value serialization using `@JsonProperty`
1252*0ed15c77SAndroid Build Coastguard Worker  (requested by Allen C, allenchen1154@github)
1253*0ed15c77SAndroid Build Coastguard Worker #679: Add `isEmpty()` implementation for `JsonNode` serializers
1254*0ed15c77SAndroid Build Coastguard Worker #688: Provide a means for an ObjectMapper to discover mixin annotation classes on demand
1255*0ed15c77SAndroid Build Coastguard Worker  (requested by Laird N)
1256*0ed15c77SAndroid Build Coastguard Worker #689: Add `ObjectMapper.setDefaultPrettyPrinter(PrettyPrinter)`
1257*0ed15c77SAndroid Build Coastguard Worker  (requested by derknorton@github)
1258*0ed15c77SAndroid Build Coastguard Worker #696: Copy constructor does not preserve `_injectableValues`
1259*0ed15c77SAndroid Build Coastguard Worker  (reported by Charles A)
1260*0ed15c77SAndroid Build Coastguard Worker #698: Add support for referential types (ReferenceType)
1261*0ed15c77SAndroid Build Coastguard Worker #700: Cannot Change Default Abstract Type Mapper from LinkedHashMap
1262*0ed15c77SAndroid Build Coastguard Worker  (reported by wealdtech@github)
1263*0ed15c77SAndroid Build Coastguard Worker #725: Auto-detect multi-argument constructor with implicit names if it is the only visible creator
1264*0ed15c77SAndroid Build Coastguard Worker #727: Improve `ObjectWriter.forType()` to avoid forcing base type for container types
1265*0ed15c77SAndroid Build Coastguard Worker #734: Add basic error-recovery for `ObjectReader.readValues()`
1266*0ed15c77SAndroid Build Coastguard Worker #737: Add support for writing raw values in TokenBuffer
1267*0ed15c77SAndroid Build Coastguard Worker  (suggested by Guillaume S, gsmet@github)
1268*0ed15c77SAndroid Build Coastguard Worker #740: Ensure proper `null` (as empty) handling for `AtomicReference`
1269*0ed15c77SAndroid Build Coastguard Worker #741: Pass `DeserializationContext' argument for `JsonDeserializer` methods "getNullValue()"
1270*0ed15c77SAndroid Build Coastguard Worker  and "getEmptyValue()"
1271*0ed15c77SAndroid Build Coastguard Worker #743: Add `RawValue` helper type, for piping raw values through `TokenBuffer`
1272*0ed15c77SAndroid Build Coastguard Worker #756: Disabling SerializationFeature.FAIL_ON_EMPTY_BEANS does not affect `canSerialize()`
1273*0ed15c77SAndroid Build Coastguard Worker  (reported by nickwongdev@github)
1274*0ed15c77SAndroid Build Coastguard Worker #762: Add `ObjectWriter.withoutRootName()`, `ObjectReader.withoutRootName()`
1275*0ed15c77SAndroid Build Coastguard Worker #765: `SimpleType.withStaticTyping()` impl incorrect
1276*0ed15c77SAndroid Build Coastguard Worker #769: Fix `JacksonAnnotationIntrospector.findDeserializer` to return `Object` (as per
1277*0ed15c77SAndroid Build Coastguard Worker   `AnnotationIntrospector`); similarly for other `findXxx(De)Serializer(...)` methods
1278*0ed15c77SAndroid Build Coastguard Worker #777: Allow missing build method if its name is empty ("")
1279*0ed15c77SAndroid Build Coastguard Worker  (suggested by galdosd@github)
1280*0ed15c77SAndroid Build Coastguard Worker #781: Support handling of `@JsonProperty.required` for Creator methods
1281*0ed15c77SAndroid Build Coastguard Worker #787: Add `ObjectMapper setFilterProvider(FilterProvider)` to allow chaining
1282*0ed15c77SAndroid Build Coastguard Worker  (suggested by rgoldberg@githin)
1283*0ed15c77SAndroid Build Coastguard Worker #790: Add `JsonNode.equals(Comparator<JsonNode>, JsonNode)` to support
1284*0ed15c77SAndroid Build Coastguard Worker   configurable/external equality comparison
1285*0ed15c77SAndroid Build Coastguard Worker #794: Add `SerializationFeature.WRITE_DATES_WITH_ZONE_ID` to allow inclusion/exclusion of
1286*0ed15c77SAndroid Build Coastguard Worker   timezone id for date/time values (as opposed to timezone offset)
1287*0ed15c77SAndroid Build Coastguard Worker #795: Converter annotation not honored for abstract types
1288*0ed15c77SAndroid Build Coastguard Worker  (reported by myrosia@github)
1289*0ed15c77SAndroid Build Coastguard Worker #797: `JsonNodeFactory` method `numberNode(long)` produces `IntNode` for small numbers
1290*0ed15c77SAndroid Build Coastguard Worker #810: Force value coercion for `java.util.Properties`, so that values are `String`s
1291*0ed15c77SAndroid Build Coastguard Worker #811: Add new option, `JsonInclude.Include.NON_ABSENT` (to support exclusion of
1292*0ed15c77SAndroid Build Coastguard Worker   JDK8/Guava Optionals)
1293*0ed15c77SAndroid Build Coastguard Worker #812: Java 8 breaks Class-value annotation properties, wrt generics: need to work around
1294*0ed15c77SAndroid Build Coastguard Worker #813: Add support for new property of `@JsonProperty.access` to support
1295*0ed15c77SAndroid Build Coastguard Worker   read-only/write-only use cases
1296*0ed15c77SAndroid Build Coastguard Worker #820: Add new method for `ObjectReader`, to bind from JSON Pointer position
1297*0ed15c77SAndroid Build Coastguard Worker  (contributed by Jerry Y, islanderman@github)
1298*0ed15c77SAndroid Build Coastguard Worker #824: Contextual `TimeZone` changes don't take effect wrt `java.util.Date`,
1299*0ed15c77SAndroid Build Coastguard Worker   `java.util.Calendar` serialization
1300*0ed15c77SAndroid Build Coastguard Worker #826: Replaced synchronized HashMap with ConcurrentHashMap in TypeDeserializerBase._findDeserializer
1301*0ed15c77SAndroid Build Coastguard Worker  (contributed by Lars P)
1302*0ed15c77SAndroid Build Coastguard Worker #827: Fix for polymorphic custom map key serializer
1303*0ed15c77SAndroid Build Coastguard Worker  (reported by mjr6140@gitgub)
1304*0ed15c77SAndroid Build Coastguard Worker #828: Respect DeserializationFeatures.WRAP_EXCEPTIONS in CollectionDeserializer
1305*0ed15c77SAndroid Build Coastguard Worker  (contributed by Steve G, thezerobit@github)
1306*0ed15c77SAndroid Build Coastguard Worker #840: Change semantics of `@JsonPropertyOrder(alphabetic)` to only count `true` value
1307*0ed15c77SAndroid Build Coastguard Worker #848: Custom serializer not used if POJO has `@JsonValue`
1308*0ed15c77SAndroid Build Coastguard Worker #849: Possible problem with `NON_EMPTY` exclusion, `int`s, `Strings`
1309*0ed15c77SAndroid Build Coastguard Worker #868: Annotations are lost in the case of duplicate methods
1310*0ed15c77SAndroid Build Coastguard Worker - Remove old cglib compatibility tests; cause problems in Eclipse
1311*0ed15c77SAndroid Build Coastguard Worker - Add `withFilterId()` method in `JsonSerializer` (demote from `BeanSerializer`)
1312*0ed15c77SAndroid Build Coastguard Worker 
1313*0ed15c77SAndroid Build Coastguard Worker 2.5.5 (07-Dec-2015)
1314*0ed15c77SAndroid Build Coastguard Worker 
1315*0ed15c77SAndroid Build Coastguard Worker #844: Using JsonCreator still causes invalid path references in JsonMappingException
1316*0ed15c77SAndroid Build Coastguard Worker  (reported by Ian B)
1317*0ed15c77SAndroid Build Coastguard Worker #852: Accept scientific number notation for quoted numbers too
1318*0ed15c77SAndroid Build Coastguard Worker #878: serializeWithType on BeanSerializer does not setCurrentValue
1319*0ed15c77SAndroid Build Coastguard Worker  (reported by Chi K, chikim79@github)
1320*0ed15c77SAndroid Build Coastguard Worker 
1321*0ed15c77SAndroid Build Coastguard Worker 2.5.4 (09-Jun-2015)
1322*0ed15c77SAndroid Build Coastguard Worker 
1323*0ed15c77SAndroid Build Coastguard Worker #676: Deserialization of class with generic collection inside depends on
1324*0ed15c77SAndroid Build Coastguard Worker   how is was deserialized first time
1325*0ed15c77SAndroid Build Coastguard Worker  (reported by lunaticare@github)
1326*0ed15c77SAndroid Build Coastguard Worker #771: Annotation bundles ignored when added to Mixin
1327*0ed15c77SAndroid Build Coastguard Worker  (reported by Andrew D)
1328*0ed15c77SAndroid Build Coastguard Worker #774: NPE from SqlDateSerializer as _useTimestamp is not checked for being null
1329*0ed15c77SAndroid Build Coastguard Worker  (reported by mrowkow@github)
1330*0ed15c77SAndroid Build Coastguard Worker #785: Add handlings for classes which are available in `Thread.currentThread().getContextClassLoader()`
1331*0ed15c77SAndroid Build Coastguard Worker  (contributed by Charles A)
1332*0ed15c77SAndroid Build Coastguard Worker #792: Ensure Constructor Parameter annotations are linked with those of Field, Getter, or Setter
1333*0ed15c77SAndroid Build Coastguard Worker #793: `ObjectMapper.readTree()` does not work with defaultTyping enabled
1334*0ed15c77SAndroid Build Coastguard Worker  (reported by gracefulgopher@github)
1335*0ed15c77SAndroid Build Coastguard Worker #801: Using `@JsonCreator` cause generating invalid path reference in `JsonMappingException`
1336*0ed15c77SAndroid Build Coastguard Worker  (contributed by Kamil B)
1337*0ed15c77SAndroid Build Coastguard Worker #815: Presence of PropertyNamingStrategy Makes Deserialization fail
1338*0ed15c77SAndroid Build Coastguard Worker #816: Allow date-only ISO strings to have no time zone
1339*0ed15c77SAndroid Build Coastguard Worker  (contributed by Andrew G)
1340*0ed15c77SAndroid Build Coastguard Worker - Fix handling of Enums wrt JSON Schema, when 'toString()' used for serialization
1341*0ed15c77SAndroid Build Coastguard Worker 
1342*0ed15c77SAndroid Build Coastguard Worker 2.5.3 (24-Apr-2015)
1343*0ed15c77SAndroid Build Coastguard Worker 
1344*0ed15c77SAndroid Build Coastguard Worker #731: XmlAdapter result marshaling error in case of ValueType=Object
1345*0ed15c77SAndroid Build Coastguard Worker  (reported, debugged by Dmitry S)
1346*0ed15c77SAndroid Build Coastguard Worker #742: Allow deserialization of `null` Object Id (missing already allowed)
1347*0ed15c77SAndroid Build Coastguard Worker #744: Custom deserializer with parent object update failing
1348*0ed15c77SAndroid Build Coastguard Worker  (reported by migel@github)
1349*0ed15c77SAndroid Build Coastguard Worker #745: EnumDeserializer.deserializerForCreator fails when used to deserialize a Map key
1350*0ed15c77SAndroid Build Coastguard Worker  (contributed by John M)
1351*0ed15c77SAndroid Build Coastguard Worker #761: Builder deserializer: in-compatible type exception when return type is super type
1352*0ed15c77SAndroid Build Coastguard Worker  (contributed by Alexey G)
1353*0ed15c77SAndroid Build Coastguard Worker #766: Fix Infinite recursion (StackOverflowError) when serializing a SOAP object
1354*0ed15c77SAndroid Build Coastguard Worker  (contributed by Alain G)
1355*0ed15c77SAndroid Build Coastguard Worker 
1356*0ed15c77SAndroid Build Coastguard Worker 2.5.2 (29-Mar-2015)
1357*0ed15c77SAndroid Build Coastguard Worker 
1358*0ed15c77SAndroid Build Coastguard Worker #609: Problem resolving locally declared generic type
1359*0ed15c77SAndroid Build Coastguard Worker  (repoted by Hal H)
1360*0ed15c77SAndroid Build Coastguard Worker #691: NullSerializer for MapProperty failing when using polymorphic handling
1361*0ed15c77SAndroid Build Coastguard Worker  (reported by Antibrumm@github)
1362*0ed15c77SAndroid Build Coastguard Worker #703: Multiple calls to ObjectMapper#canSerialize(Object.class) returns different values
1363*0ed15c77SAndroid Build Coastguard Worker  (reported by flexfrank@github)
1364*0ed15c77SAndroid Build Coastguard Worker #705: JsonAnyGetter doesn't work with JsonSerialize (except with keyUsing)
1365*0ed15c77SAndroid Build Coastguard Worker  (reported by natnan@github)
1366*0ed15c77SAndroid Build Coastguard Worker #728: TypeFactory#_fromVariable returns unknownType() even though it has enough information
1367*0ed15c77SAndroid Build Coastguard Worker   to provide a more specific type
1368*0ed15c77SAndroid Build Coastguard Worker  (reported by jkochaniak@github)
1369*0ed15c77SAndroid Build Coastguard Worker #733: MappingIterator should move past errors or not return hasNext() == true
1370*0ed15c77SAndroid Build Coastguard Worker  (reported by Lorrin N, lorrin@github)
1371*0ed15c77SAndroid Build Coastguard Worker #738: @JsonTypeInfo non-deterministically ignored in 2.5.1 (concurrency issue)
1372*0ed15c77SAndroid Build Coastguard Worker  (reported by Dylan S, dylanscott@github)
1373*0ed15c77SAndroid Build Coastguard Worker - Improvement to handling of custom `ValueInstantiator` for delegating mode; no more NPE
1374*0ed15c77SAndroid Build Coastguard Worker   if `getDelegateCreator()` returns null
1375*0ed15c77SAndroid Build Coastguard Worker - Refactor `TypedKey` into separate util class
1376*0ed15c77SAndroid Build Coastguard Worker 
1377*0ed15c77SAndroid Build Coastguard Worker 2.5.1 (06-Feb-2015)
1378*0ed15c77SAndroid Build Coastguard Worker 
1379*0ed15c77SAndroid Build Coastguard Worker #667: Problem with bogus conflict between single-arg-String vs `CharSequence` constructor
1380*0ed15c77SAndroid Build Coastguard Worker #669: JSOG usage of @JsonTypeInfo and @JsonIdentityInfo(generator=JSOGGenerator.class) fails
1381*0ed15c77SAndroid Build Coastguard Worker  (reported by ericali78@github)
1382*0ed15c77SAndroid Build Coastguard Worker #671: Adding `java.util.Currency` deserialization support for maps
1383*0ed15c77SAndroid Build Coastguard Worker  (contributed by Alexandre S-C)
1384*0ed15c77SAndroid Build Coastguard Worker #674: Spring CGLIB proxies not handled as intended
1385*0ed15c77SAndroid Build Coastguard Worker  (reported by Zoltan F)
1386*0ed15c77SAndroid Build Coastguard Worker #682: Class<?>-valued Map keys not serialized properly
1387*0ed15c77SAndroid Build Coastguard Worker  (reported by Ludevik@github)
1388*0ed15c77SAndroid Build Coastguard Worker #684: FAIL_ON_NUMBERS_FOR_ENUMS does not fail when integer value is quoted
1389*0ed15c77SAndroid Build Coastguard Worker  (reported by kllp@github)
1390*0ed15c77SAndroid Build Coastguard Worker #696: Copy constructor does not preserve `_injectableValues`
1391*0ed15c77SAndroid Build Coastguard Worker  (reported by Charles A)
1392*0ed15c77SAndroid Build Coastguard Worker - Add a work-around in `ISO8601DateFormat` to allow omission of ':' from timezone
1393*0ed15c77SAndroid Build Coastguard Worker - Bit more work to complete #633
1394*0ed15c77SAndroid Build Coastguard Worker 
1395*0ed15c77SAndroid Build Coastguard Worker 2.5.0 (01-Jan-2015)
1396*0ed15c77SAndroid Build Coastguard Worker 
1397*0ed15c77SAndroid Build Coastguard Worker #47: Support `@JsonValue` for (Map) key serialization
1398*0ed15c77SAndroid Build Coastguard Worker #113: Problem deserializing polymorphic types with @JsonCreator
1399*0ed15c77SAndroid Build Coastguard Worker #165: Add `DeserializationContext.getContextualType()` to let deserializer
1400*0ed15c77SAndroid Build Coastguard Worker   known the expected type.
1401*0ed15c77SAndroid Build Coastguard Worker #299: Add `DeserializationFeature.FAIL_ON_UNRESOLVED_OBJECT_IDS` to allow missing
1402*0ed15c77SAndroid Build Coastguard Worker   Object Ids (as global default)
1403*0ed15c77SAndroid Build Coastguard Worker #408: External type id does not allow use of 'visible=true'
1404*0ed15c77SAndroid Build Coastguard Worker #421: @JsonCreator not used in case of multiple creators with parameter names
1405*0ed15c77SAndroid Build Coastguard Worker  (reported by Lovro P, lpandzic@github)
1406*0ed15c77SAndroid Build Coastguard Worker #427: Make array and Collection serializers call `JsonGenerator.writeStartArray(int)`
1407*0ed15c77SAndroid Build Coastguard Worker #521: Keep bundle annotations, prevent problems with recursive annotation types
1408*0ed15c77SAndroid Build Coastguard Worker  (reported by tea-dragon@github)
1409*0ed15c77SAndroid Build Coastguard Worker #527: Add support for `@JsonInclude(content=Include.NON_NULL)` (and others) for Maps
1410*0ed15c77SAndroid Build Coastguard Worker #528: Add support for `JsonType.As.EXISTING_PROPERTY`
1411*0ed15c77SAndroid Build Coastguard Worker  (reported by heapifyman@github; implemented by fleebytes@github)
1412*0ed15c77SAndroid Build Coastguard Worker #539: Problem with post-procesing of "empty bean" serializer; was not calling
1413*0ed15c77SAndroid Build Coastguard Worker   'BeanSerializerModifier.modifySerializer()` for empty beans
1414*0ed15c77SAndroid Build Coastguard Worker  (reported by Fabien R, fabienrenaud@github)
1415*0ed15c77SAndroid Build Coastguard Worker #540: Support deserializing `[]` as null or empty collection when the java type
1416*0ed15c77SAndroid Build Coastguard Worker   is a not an object, `DeserializationFeature.ACCEPT_EMPTY_ARRAY_AS_NULL_OBJECT`
1417*0ed15c77SAndroid Build Coastguard Worker  (requested by Fabien R, fabienrenaud@github)
1418*0ed15c77SAndroid Build Coastguard Worker #543: Problem resolving self-referential recursive types
1419*0ed15c77SAndroid Build Coastguard Worker  (reported by ahgittin@github)
1420*0ed15c77SAndroid Build Coastguard Worker #550: Minor optimization: prune introspection of "well-known" JDK types
1421*0ed15c77SAndroid Build Coastguard Worker #552: Improved handling for ISO-8601 (date) format
1422*0ed15c77SAndroid Build Coastguard Worker  (contributed by Jerome G, geronimo-iia@github)
1423*0ed15c77SAndroid Build Coastguard Worker #559: Add `getDateFormat()`, `getPropertyNamingStrategy()` in `ObjectMapper`
1424*0ed15c77SAndroid Build Coastguard Worker #560: @JsonCreator to deserialize BigInteger to Enum
1425*0ed15c77SAndroid Build Coastguard Worker  (requested by gisupp@github)
1426*0ed15c77SAndroid Build Coastguard Worker #565: Add support for handling `Map.Entry`
1427*0ed15c77SAndroid Build Coastguard Worker #566: Add support for case-insensitive deserialization (`MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES`)
1428*0ed15c77SAndroid Build Coastguard Worker  (contributed by Michael R)
1429*0ed15c77SAndroid Build Coastguard Worker #571: Add support in ObjectMapper for custom `ObjectReader`, `ObjectWriter` (sub-classes)
1430*0ed15c77SAndroid Build Coastguard Worker #572: Override default serialization of Enums
1431*0ed15c77SAndroid Build Coastguard Worker  (requested by herau@github)
1432*0ed15c77SAndroid Build Coastguard Worker #576: Add fluent API for adding mixins
1433*0ed15c77SAndroid Build Coastguard Worker  (contributed by Adam S, adstro@github)
1434*0ed15c77SAndroid Build Coastguard Worker #594: `@JsonValue` on enum not used when enum value is a Map key
1435*0ed15c77SAndroid Build Coastguard Worker  (reported by chrylis@github)
1436*0ed15c77SAndroid Build Coastguard Worker #596: Add support for `@JsonProperty.defaultValue`, exposed via `BeanProperty.getMetadata().getDefaultValue()`
1437*0ed15c77SAndroid Build Coastguard Worker #597: Improve error messaging for cases where JSON Creator returns null (which
1438*0ed15c77SAndroid Build Coastguard Worker   is illegal)
1439*0ed15c77SAndroid Build Coastguard Worker  (contributed by Aurelien L)
1440*0ed15c77SAndroid Build Coastguard Worker #599: Add a simple mechanism for avoiding multiple registrations of the same module
1441*0ed15c77SAndroid Build Coastguard Worker #607: Allow (re)config of `JsonParser.Feature`s via `ObjectReader`
1442*0ed15c77SAndroid Build Coastguard Worker #608: Allow (re)config of `JsonGenerator.Feature`s via `ObjectWriter`
1443*0ed15c77SAndroid Build Coastguard Worker #614: Add a mechanism for using `@JsonCreator.mode` for resolving possible ambiguity between
1444*0ed15c77SAndroid Build Coastguard Worker   delegating- and property-based creators
1445*0ed15c77SAndroid Build Coastguard Worker #616: Add `SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS`
1446*0ed15c77SAndroid Build Coastguard Worker #622: Support for non-scalar ObjectId Reference deserialiazation (like JSOG)
1447*0ed15c77SAndroid Build Coastguard Worker #623: Add `StdNodeBasedDeserializer`
1448*0ed15c77SAndroid Build Coastguard Worker #630: Add `KeyDeserializer` for `Class`
1449*0ed15c77SAndroid Build Coastguard Worker #631: Update `current value` of `JsonParser`, `JsonGenerator` from standard serializers,
1450*0ed15c77SAndroid Build Coastguard Worker  deserializers
1451*0ed15c77SAndroid Build Coastguard Worker  (suggested by Antibrumm@github)
1452*0ed15c77SAndroid Build Coastguard Worker #633: Allow returning null value from IdResolver to make type information optional
1453*0ed15c77SAndroid Build Coastguard Worker  (requested by Antibrumm@github)
1454*0ed15c77SAndroid Build Coastguard Worker #634: Add `typeFromId(DatabindContext,String)` in `TypeIdDeserializer`
1455*0ed15c77SAndroid Build Coastguard Worker #636: `ClassNotFoundException` for classes not (yet) needed during serialization
1456*0ed15c77SAndroid Build Coastguard Worker  (contributed by mspiegel@github)
1457*0ed15c77SAndroid Build Coastguard Worker #638: Add annotation-based method(s) for injecting properties during serialization
1458*0ed15c77SAndroid Build Coastguard Worker  (using @JsonAppend, VirtualBeanPropertyWriter)
1459*0ed15c77SAndroid Build Coastguard Worker #647: Deserialization fails when @JsonUnwrapped property contains an object with same property name
1460*0ed15c77SAndroid Build Coastguard Worker  (reported by Konstantin L)
1461*0ed15c77SAndroid Build Coastguard Worker #653: Jackson doesn't follow JavaBean naming convention (added `MapperFeature.USE_STD_BEAN_NAMING`)
1462*0ed15c77SAndroid Build Coastguard Worker #654: Add support for (re)configuring `JsonGenerator.setRootValueSeparator()` via `ObjectWriter`
1463*0ed15c77SAndroid Build Coastguard Worker #655: Add `ObjectWriter.writeValues()` for writing value sequences
1464*0ed15c77SAndroid Build Coastguard Worker #660: `@JsonCreator`-annotated factory method is ignored if constructor exists
1465*0ed15c77SAndroid Build Coastguard Worker - Allow use of `Shape.ARRAY` for Enums, as an alias to 'use index'
1466*0ed15c77SAndroid Build Coastguard Worker - Start using `JsonGenerator.writeStartArray(int)` to help data formats
1467*0ed15c77SAndroid Build Coastguard Worker   that benefit from knowing number of elements in arrays (and would otherwise
1468*0ed15c77SAndroid Build Coastguard Worker   need to buffer values to know length)
1469*0ed15c77SAndroid Build Coastguard Worker - Added new overload for `JsonSerializer.isEmpty()`, to eventually solve #588
1470*0ed15c77SAndroid Build Coastguard Worker - Improve error messaging (related to [jaxb-annotations#38]) to include known subtype ids.
1471*0ed15c77SAndroid Build Coastguard Worker 
1472*0ed15c77SAndroid Build Coastguard Worker 2.4.6 (23-Apr-2015)
1473*0ed15c77SAndroid Build Coastguard Worker 
1474*0ed15c77SAndroid Build Coastguard Worker #735: (complete fix) @JsonDeserialize on Map with contentUsing custom deserializer overwrites default behavior
1475*0ed15c77SAndroid Build Coastguard Worker  (reported by blackfyre512@github) (regression due to #604)
1476*0ed15c77SAndroid Build Coastguard Worker $744: Custom deserializer with parent object update fails
1477*0ed15c77SAndroid Build Coastguard Worker 
1478*0ed15c77SAndroid Build Coastguard Worker 2.4.5.1 (26-Mar-2015)
1479*0ed15c77SAndroid Build Coastguard Worker 
1480*0ed15c77SAndroid Build Coastguard Worker Special one-off "micro patch" for:
1481*0ed15c77SAndroid Build Coastguard Worker 
1482*0ed15c77SAndroid Build Coastguard Worker #706: Add support for `@JsonUnwrapped` via JSON Schema module
1483*0ed15c77SAndroid Build Coastguard Worker #707: Error in getting string representation of an ObjectNode with a float number value
1484*0ed15c77SAndroid Build Coastguard Worker  (reported by @navidqar)
1485*0ed15c77SAndroid Build Coastguard Worker #735: (partial) @JsonDeserialize on Map with contentUsing custom deserializer overwrites default behavior
1486*0ed15c77SAndroid Build Coastguard Worker 
1487*0ed15c77SAndroid Build Coastguard Worker 2.4.5 (13-Jan-2015)
1488*0ed15c77SAndroid Build Coastguard Worker 
1489*0ed15c77SAndroid Build Coastguard Worker #635: Reduce cachability of `Map` deserializers, to avoid problems with per-property config changes
1490*0ed15c77SAndroid Build Coastguard Worker     (regression due to #604)
1491*0ed15c77SAndroid Build Coastguard Worker #656: `defaultImpl` configuration is ignored for `WRAPPER_OBJECT`
1492*0ed15c77SAndroid Build Coastguard Worker - Solve potential cyclic-resolution problem for `UntypedObjectDeserializer`
1493*0ed15c77SAndroid Build Coastguard Worker 
1494*0ed15c77SAndroid Build Coastguard Worker 2.4.4 (24-Nov-2014)
1495*0ed15c77SAndroid Build Coastguard Worker 
1496*0ed15c77SAndroid Build Coastguard Worker (jackson-core)#158: Setter confusion on assignable types
1497*0ed15c77SAndroid Build Coastguard Worker  (reported by tsquared2763@github)
1498*0ed15c77SAndroid Build Coastguard Worker #245: Calls to ObjectMapper.addMixInAnnotations() on an instance returned by ObjectMapper.copy()
1499*0ed15c77SAndroid Build Coastguard Worker  don't work
1500*0ed15c77SAndroid Build Coastguard Worker  (reported by Erik D)
1501*0ed15c77SAndroid Build Coastguard Worker #580: delegate deserializers choke on a (single) abstract/polymorphic parameter
1502*0ed15c77SAndroid Build Coastguard Worker  (reported by Ian B, tea-dragon@github)
1503*0ed15c77SAndroid Build Coastguard Worker #590: Binding invalid Currency gives nonsense at end of the message
1504*0ed15c77SAndroid Build Coastguard Worker  (reported by Jerbell@github)
1505*0ed15c77SAndroid Build Coastguard Worker #592: Wrong `TokenBuffer` delegate deserialization using `@JsonCreator`
1506*0ed15c77SAndroid Build Coastguard Worker  (reported by Eugene L)
1507*0ed15c77SAndroid Build Coastguard Worker #601: ClassCastException for a custom serializer for enum key in `EnumMap`
1508*0ed15c77SAndroid Build Coastguard Worker  (reported by Benson M)
1509*0ed15c77SAndroid Build Coastguard Worker #604: `Map` deserializers not being cached, causing performance problems
1510*0ed15c77SAndroid Build Coastguard Worker #610: Fix forward reference in hierarchies
1511*0ed15c77SAndroid Build Coastguard Worker  (contributed by zeito@github)
1512*0ed15c77SAndroid Build Coastguard Worker #619: Off by one error in AnnotatedWithParams
1513*0ed15c77SAndroid Build Coastguard Worker  (reported by stevetodd@github)
1514*0ed15c77SAndroid Build Coastguard Worker - Minor fix to `EnumSerializer` regarding detection "serialize using index"
1515*0ed15c77SAndroid Build Coastguard Worker - Minor fix to number serializers, to call proper callback for schema generation
1516*0ed15c77SAndroid Build Coastguard Worker 
1517*0ed15c77SAndroid Build Coastguard Worker 2.4.3 (02-Oct-2014)
1518*0ed15c77SAndroid Build Coastguard Worker 
1519*0ed15c77SAndroid Build Coastguard Worker #496: Wrong result with `new TextNode("false").asBoolean(true)`
1520*0ed15c77SAndroid Build Coastguard Worker  (reported by Ivar R, ivarru@github)
1521*0ed15c77SAndroid Build Coastguard Worker #511: DeserializationFeature.FAIL_ON_INVALID_SUBTYPE does not work
1522*0ed15c77SAndroid Build Coastguard Worker  (reported by sbelikov@github)
1523*0ed15c77SAndroid Build Coastguard Worker #523: MapDeserializer and friends do not report the field/key name for mapping exceptions
1524*0ed15c77SAndroid Build Coastguard Worker  (reported by Ian B, tea-dragon@github)
1525*0ed15c77SAndroid Build Coastguard Worker #524: @JsonIdentityReference(alwaysAsId = true) Custom resolver is reset to SimpleObjectIdResolver
1526*0ed15c77SAndroid Build Coastguard Worker  (reported by pkokorev@github)
1527*0ed15c77SAndroid Build Coastguard Worker #541: @JsonProperty in @JsonCreator is conflicting with POJOs getters/attributes
1528*0ed15c77SAndroid Build Coastguard Worker  (reported by fabienrenaud@github)
1529*0ed15c77SAndroid Build Coastguard Worker #543: Problem resolving self-referential generic types
1530*0ed15c77SAndroid Build Coastguard Worker #570: Add Support for Parsing All Compliant ISO-8601 Date Formats
1531*0ed15c77SAndroid Build Coastguard Worker  (requested by pfconrey@github)
1532*0ed15c77SAndroid Build Coastguard Worker - Fixed a problem with `acceptJsonFormatVisitor` with Collection/array types that
1533*0ed15c77SAndroid Build Coastguard Worker   are marked with `@JsonValue`; could cause NPE in JSON Schema generator module.
1534*0ed15c77SAndroid Build Coastguard Worker 
1535*0ed15c77SAndroid Build Coastguard Worker 2.4.2 (14-Aug-2014)
1536*0ed15c77SAndroid Build Coastguard Worker 
1537*0ed15c77SAndroid Build Coastguard Worker #515: Mixin annotations lost when using a mixin class hierarchy with non-mixin interfaces
1538*0ed15c77SAndroid Build Coastguard Worker  (reported by 'stevebread@github')
1539*0ed15c77SAndroid Build Coastguard Worker - Fixed a problem related to [jackson-dataformat-smile#19].
1540*0ed15c77SAndroid Build Coastguard Worker 
1541*0ed15c77SAndroid Build Coastguard Worker 2.4.1.2 (12-Jul-2014)
1542*0ed15c77SAndroid Build Coastguard Worker 
1543*0ed15c77SAndroid Build Coastguard Worker Special one-off "micro patch" for:
1544*0ed15c77SAndroid Build Coastguard Worker 
1545*0ed15c77SAndroid Build Coastguard Worker #503: Concurrency issue inside com.fasterxml.jackson.databind.util.LRUMap.get(Object)
1546*0ed15c77SAndroid Build Coastguard Worker  (reported by fjtc@github)
1547*0ed15c77SAndroid Build Coastguard Worker 
1548*0ed15c77SAndroid Build Coastguard Worker 2.4.1.1 (18-Jun-2014)
1549*0ed15c77SAndroid Build Coastguard Worker 
1550*0ed15c77SAndroid Build Coastguard Worker Special one-off "micro patch" for:
1551*0ed15c77SAndroid Build Coastguard Worker 
1552*0ed15c77SAndroid Build Coastguard Worker #491: Temporary work-around for issue #490 (full fix for 2.5 needs to be
1553*0ed15c77SAndroid Build Coastguard Worker   in `jackson-annotations`)
1554*0ed15c77SAndroid Build Coastguard Worker #506: Index is never set for Collection and Array in InvalidFormatException.Reference
1555*0ed15c77SAndroid Build Coastguard Worker  (reported by Fabrice D, fabdouglas@github)
1556*0ed15c77SAndroid Build Coastguard Worker - Fixed a problem related to [jackson-dataformat-smile#19].
1557*0ed15c77SAndroid Build Coastguard Worker 
1558*0ed15c77SAndroid Build Coastguard Worker 2.4.1 (17-Jun-2014)
1559*0ed15c77SAndroid Build Coastguard Worker 
1560*0ed15c77SAndroid Build Coastguard Worker #479: NPE on trying to deserialize a `String[]` that contains null
1561*0ed15c77SAndroid Build Coastguard Worker  (reported by huxi@github)
1562*0ed15c77SAndroid Build Coastguard Worker #482: Make date parsing error behavior consistent with JDK
1563*0ed15c77SAndroid Build Coastguard Worker  (suggested by Steve S, sanbeg@github)
1564*0ed15c77SAndroid Build Coastguard Worker #489 (partial): TypeFactory cache prevents garbage collection of custom ClassLoader
1565*0ed15c77SAndroid Build Coastguard Worker  (reported by sftwrengnr@github)
1566*0ed15c77SAndroid Build Coastguard Worker 
1567*0ed15c77SAndroid Build Coastguard Worker 2.4.0 (02-Jun-2014)
1568*0ed15c77SAndroid Build Coastguard Worker 
1569*0ed15c77SAndroid Build Coastguard Worker #81: Allow use of @JsonUnwrapped with typed (@JsonTypeInfo) classes, provided
1570*0ed15c77SAndroid Build Coastguard Worker   that (new) feature `SerializationFeature.FAIL_ON_UNWRAPPED_TYPE_IDENTIFIERS`
1571*0ed15c77SAndroid Build Coastguard Worker   is disabled
1572*0ed15c77SAndroid Build Coastguard Worker  (constributed by Ben F, UnquietCode@github)
1573*0ed15c77SAndroid Build Coastguard Worker #88: Prevent use of type information for `JsonNode` via default typing
1574*0ed15c77SAndroid Build Coastguard Worker  (reported by electricmonk@github)
1575*0ed15c77SAndroid Build Coastguard Worker #149: Allow use of "stringified" indexes for Enum values
1576*0ed15c77SAndroid Build Coastguard Worker  (requested by chenboxiang@github)
1577*0ed15c77SAndroid Build Coastguard Worker #176: Allow use external Object Id resolver (to use with @JsonIdentityInfo etc)
1578*0ed15c77SAndroid Build Coastguard Worker  (implemented by Pascal G)
1579*0ed15c77SAndroid Build Coastguard Worker #193: Conflicting property name definitions
1580*0ed15c77SAndroid Build Coastguard Worker  (reported by Stuart J, sgjohnston@github)
1581*0ed15c77SAndroid Build Coastguard Worker #323: Serialization of the field with deserialization config
1582*0ed15c77SAndroid Build Coastguard Worker  (reported by metanet@github)
1583*0ed15c77SAndroid Build Coastguard Worker #327: Should not consider explicitly differing renames a fail, as long as all are explicit
1584*0ed15c77SAndroid Build Coastguard Worker #335: Allow use of `@JsonPropertyOrder(alphabetic=true)` for Map properties
1585*0ed15c77SAndroid Build Coastguard Worker #351: ObjectId does not properly handle forward references during deserialization
1586*0ed15c77SAndroid Build Coastguard Worker  (contributed by pgelinas)
1587*0ed15c77SAndroid Build Coastguard Worker #352 Add `ObjectMapper.setConfig()` for overriding `SerializationConfig`/`DeserializationConfig`
1588*0ed15c77SAndroid Build Coastguard Worker #353: Problems with polymorphic types, `JsonNode` (related to #88)
1589*0ed15c77SAndroid Build Coastguard Worker  (reported by cemo@github)
1590*0ed15c77SAndroid Build Coastguard Worker #359: Converted object not using explicitly annotated serializer
1591*0ed15c77SAndroid Build Coastguard Worker  (reported by Florian S [fschopp@github])
1592*0ed15c77SAndroid Build Coastguard Worker #369: Incorrect comparison for renaming in `POJOPropertyBuilder`
1593*0ed15c77SAndroid Build Coastguard Worker #375: Add `readValue()`/`readPropertyValue()` methods in `DeserializationContext`
1594*0ed15c77SAndroid Build Coastguard Worker #376: Add support for `@JsonFormat(shape=STRING)` for number serializers
1595*0ed15c77SAndroid Build Coastguard Worker #381: Allow inlining/unwrapping of value from single-component JSON array
1596*0ed15c77SAndroid Build Coastguard Worker  (contributed by yinzara@github)
1597*0ed15c77SAndroid Build Coastguard Worker #390: Change order in which managed/back references are resolved (now back-ref
1598*0ed15c77SAndroid Build Coastguard Worker  first, then forward)
1599*0ed15c77SAndroid Build Coastguard Worker  (requested by zAlbee@github)
1600*0ed15c77SAndroid Build Coastguard Worker #407: Properly use null handlers for value types when serializer Collection
1601*0ed15c77SAndroid Build Coastguard Worker  and array types
1602*0ed15c77SAndroid Build Coastguard Worker  (contributed by Will P)
1603*0ed15c77SAndroid Build Coastguard Worker #425: Add support for using `Void.class` as "no class", instead of `NoClass.class`
1604*0ed15c77SAndroid Build Coastguard Worker #428: `PropertyNamingStrategy` will rename even explicit name from `@JsonProperty`
1605*0ed15c77SAndroid Build Coastguard Worker  (reported by turskip@github)
1606*0ed15c77SAndroid Build Coastguard Worker #435: Performance bottleneck in TypeFactory._fromClass
1607*0ed15c77SAndroid Build Coastguard Worker  (reported by Sean D, sdonovanuk@github)
1608*0ed15c77SAndroid Build Coastguard Worker #434: Ensure that DecimalNodes with mathematically equal values are equal
1609*0ed15c77SAndroid Build Coastguard Worker  (contributed by Francis G)
1610*0ed15c77SAndroid Build Coastguard Worker #435: Performance bottleneck in TypeFactory._fromClass
1611*0ed15c77SAndroid Build Coastguard Worker  (reported by sdonovanuk@github)
1612*0ed15c77SAndroid Build Coastguard Worker #438: Add support for accessing `@JsonProperty(index=N)` annotations
1613*0ed15c77SAndroid Build Coastguard Worker #442: Make `@JsonUnwrapped` indicate property inclusion
1614*0ed15c77SAndroid Build Coastguard Worker  (suggested by Ben F)
1615*0ed15c77SAndroid Build Coastguard Worker #447: ArrayNode#addAll should accept Collection<? extends JsonNode>
1616*0ed15c77SAndroid Build Coastguard Worker  (suggested by alias@github)
1617*0ed15c77SAndroid Build Coastguard Worker #461: Add new standard naming strategy, `PropertyNamingStrategy.LowerCaseStrategy`
1618*0ed15c77SAndroid Build Coastguard Worker #463: Add 'JsonNode.asText(String defaultValue)`
1619*0ed15c77SAndroid Build Coastguard Worker  (suggested by Chris C)
1620*0ed15c77SAndroid Build Coastguard Worker #464: Include `JsonLocation` in more mapping exceptions
1621*0ed15c77SAndroid Build Coastguard Worker  (contributed by Andy C (q3aiml@github))
1622*0ed15c77SAndroid Build Coastguard Worker #465: Make it easier to support serialization of custom subtypes of `Number`
1623*0ed15c77SAndroid Build Coastguard Worker #467: Unwanted POJO's embedded in tree via serialization to tree
1624*0ed15c77SAndroid Build Coastguard Worker  (reported by Benson M)
1625*0ed15c77SAndroid Build Coastguard Worker - Slightly improve `SqlDateSerializer` to support `@JsonFormat`
1626*0ed15c77SAndroid Build Coastguard Worker - Improve handling of native type ids (YAML, CBOR) to use non-native type ids
1627*0ed15c77SAndroid Build Coastguard Worker   as fallback
1628*0ed15c77SAndroid Build Coastguard Worker 
1629*0ed15c77SAndroid Build Coastguard Worker 2.3.5 (13-Jan-2015)
1630*0ed15c77SAndroid Build Coastguard Worker 
1631*0ed15c77SAndroid Build Coastguard Worker #496: Wrong result for TextNode("false").asBoolean(true)
1632*0ed15c77SAndroid Build Coastguard Worker  (reported by Ivar R, ivarru@github)
1633*0ed15c77SAndroid Build Coastguard Worker #543: Problems resolving self-referential generic types.
1634*0ed15c77SAndroid Build Coastguard Worker #656: defaultImpl configuration is ignored for WRAPPER_OBJECT
1635*0ed15c77SAndroid Build Coastguard Worker 
1636*0ed15c77SAndroid Build Coastguard Worker 2.3.4 (17-Jul-2014)
1637*0ed15c77SAndroid Build Coastguard Worker 
1638*0ed15c77SAndroid Build Coastguard Worker #459: BeanDeserializerBuilder copy constructor not copying `_injectables`
1639*0ed15c77SAndroid Build Coastguard Worker #462: Annotation-provided Deserializers are not contextualized inside CreatorProperties
1640*0ed15c77SAndroid Build Coastguard Worker  (reported by aarondav@github)
1641*0ed15c77SAndroid Build Coastguard Worker 
1642*0ed15c77SAndroid Build Coastguard Worker 2.3.3 (10-Apr-2014)
1643*0ed15c77SAndroid Build Coastguard Worker 
1644*0ed15c77SAndroid Build Coastguard Worker #420: Remove 'final' modifier from `BeanDeserializerBase.deserializeWithType`
1645*0ed15c77SAndroid Build Coastguard Worker  (requested by Ghoughpteighbteau@github)
1646*0ed15c77SAndroid Build Coastguard Worker #422: Allow use of "True" and "False" as aliases for booleans when coercing from
1647*0ed15c77SAndroid Build Coastguard Worker   JSON String
1648*0ed15c77SAndroid Build Coastguard Worker #423: Fix `CalendarSerializer` to work with custom format
1649*0ed15c77SAndroid Build Coastguard Worker  (reported by sergeymetallic@github)
1650*0ed15c77SAndroid Build Coastguard Worker #433: `ObjectMapper`'s `.valueToTree()` wraps `JsonSerializable` objects into a POJONode
1651*0ed15c77SAndroid Build Coastguard Worker  (reported by Francis G)
1652*0ed15c77SAndroid Build Coastguard Worker - Fix null-handling for `CollectionSerializer`
1653*0ed15c77SAndroid Build Coastguard Worker 
1654*0ed15c77SAndroid Build Coastguard Worker 2.3.2 (01-Mar-2014)
1655*0ed15c77SAndroid Build Coastguard Worker 
1656*0ed15c77SAndroid Build Coastguard Worker #378: Fix a problem with custom enum deserializer construction
1657*0ed15c77SAndroid Build Coastguard Worker  (reported by BokoEnos@github)
1658*0ed15c77SAndroid Build Coastguard Worker #379: Fix a problem with (re)naming of Creator properties; needed to make
1659*0ed15c77SAndroid Build Coastguard Worker  Paranamer module work with NamingStrategy.
1660*0ed15c77SAndroid Build Coastguard Worker  (reported by Chris P, cpilsworth@github)
1661*0ed15c77SAndroid Build Coastguard Worker #398: Should deserialize empty (not null) URI from empty String
1662*0ed15c77SAndroid Build Coastguard Worker  (reported by pgieser@github)
1663*0ed15c77SAndroid Build Coastguard Worker #406: @JsonTypeIdResolver not working with external type ids
1664*0ed15c77SAndroid Build Coastguard Worker  (reported by Martin T)
1665*0ed15c77SAndroid Build Coastguard Worker #411: NumberDeserializers throws exception with NaN and +/- Infinity
1666*0ed15c77SAndroid Build Coastguard Worker  (reported by clarkbreyman@github)
1667*0ed15c77SAndroid Build Coastguard Worker #412: ObjectMapper.writerWithType() does not change root name being used
1668*0ed15c77SAndroid Build Coastguard Worker  (repoted by jhalterman@github)
1669*0ed15c77SAndroid Build Coastguard Worker - Added `BeanSerializerBase._serializeObjectId()` needed by modules that
1670*0ed15c77SAndroid Build Coastguard Worker   override standard BeanSerializer; specifically, XML module.
1671*0ed15c77SAndroid Build Coastguard Worker 
1672*0ed15c77SAndroid Build Coastguard Worker 2.3.1 (28-Dec-2013)
1673*0ed15c77SAndroid Build Coastguard Worker 
1674*0ed15c77SAndroid Build Coastguard Worker #346: Fix problem deserializing `ObjectNode`, with @JsonCreator, empty
1675*0ed15c77SAndroid Build Coastguard Worker   JSON Object
1676*0ed15c77SAndroid Build Coastguard Worker  (reported by gaff78@github)
1677*0ed15c77SAndroid Build Coastguard Worker #358: `IterableSerializer` ignoring annotated content serializer
1678*0ed15c77SAndroid Build Coastguard Worker  (reported by Florian S)
1679*0ed15c77SAndroid Build Coastguard Worker #361: Reduce sync overhead for SerializerCache by using volatile, double-locking
1680*0ed15c77SAndroid Build Coastguard Worker  (contributed by stuartwdouglas@github)
1681*0ed15c77SAndroid Build Coastguard Worker #362: UUID output as Base64 String with ObjectMapper.convertValue()
1682*0ed15c77SAndroid Build Coastguard Worker  (reported by jknack@github)
1683*0ed15c77SAndroid Build Coastguard Worker #367: Make `TypeNameIdResolver` call `TypeResolver` for resolving base type
1684*0ed15c77SAndroid Build Coastguard Worker  (suggested by Ben F)
1685*0ed15c77SAndroid Build Coastguard Worker #370: Fail to add Object Id for POJO with no properties
1686*0ed15c77SAndroid Build Coastguard Worker  (reported by jh3141@github)
1687*0ed15c77SAndroid Build Coastguard Worker - Fix for [jackson-module-afterburner#38]: need to remove @JacksonStdImpl from
1688*0ed15c77SAndroid Build Coastguard Worker   `RawSerializer`, to avoid accidental removal of proper handling.
1689*0ed15c77SAndroid Build Coastguard Worker 
1690*0ed15c77SAndroid Build Coastguard Worker 2.3.0 (13-Nov-2013)
1691*0ed15c77SAndroid Build Coastguard Worker 
1692*0ed15c77SAndroid Build Coastguard Worker #48: Add support for `InetSocketAddress`
1693*0ed15c77SAndroid Build Coastguard Worker  (contributed by Nick T)
1694*0ed15c77SAndroid Build Coastguard Worker #152: Add support for traversing `JsonNode` with (new!) `JsonPointer` implementation
1695*0ed15c77SAndroid Build Coastguard Worker  (suggested by fge@github)
1696*0ed15c77SAndroid Build Coastguard Worker #208: Accept "fromString()" as an implicit Creator (factory) method (alias for "valueOf()")
1697*0ed15c77SAndroid Build Coastguard Worker  (requested by David P)
1698*0ed15c77SAndroid Build Coastguard Worker #215: Allow registering custom `CharacterEscapes` to use for serialization,
1699*0ed15c77SAndroid Build Coastguard Worker  via `ObjectWriter.with(CharacterEscapes)` (and `ObjectMapper.writer(CharacterEscapes)`)
1700*0ed15c77SAndroid Build Coastguard Worker #227: Allow "generic" Enum serializers, deserializers, via `SimpleModule`
1701*0ed15c77SAndroid Build Coastguard Worker #234: Incorrect type information for deeply nested Maps
1702*0ed15c77SAndroid Build Coastguard Worker  (reported by Andrei P)
1703*0ed15c77SAndroid Build Coastguard Worker #237: Add `DeserializationFeature.FAIL_ON_READING_DUP_TREE_KEY` to optionally
1704*0ed15c77SAndroid Build Coastguard Worker   throw `JsonMappingException` on duplicate keys, tree model (`JsonNode`)
1705*0ed15c77SAndroid Build Coastguard Worker #238: Allow existence of overlapping getter, is-getter (choose 'regular' getter)
1706*0ed15c77SAndroid Build Coastguard Worker #239: Support `ByteBuffer`
1707*0ed15c77SAndroid Build Coastguard Worker  (suggested by mckamey@github)
1708*0ed15c77SAndroid Build Coastguard Worker #240: Make sure `@JsonSerialize.include` does not accidentally override
1709*0ed15c77SAndroid Build Coastguard Worker   class inclusion settings
1710*0ed15c77SAndroid Build Coastguard Worker  (requested by thierryhenrio@github)
1711*0ed15c77SAndroid Build Coastguard Worker #253: `DelegatingDeserializer` causes problems for Managed/BackReferences
1712*0ed15c77SAndroid Build Coastguard Worker  (reported by bfelaco@github)
1713*0ed15c77SAndroid Build Coastguard Worker #257: Make `UntypedObjectDeserializer` support overides for `List`, `Map` etc
1714*0ed15c77SAndroid Build Coastguard Worker #268: Add new variant of `ObjectMapper.canSerialize()` that can return `Throwable`
1715*0ed15c77SAndroid Build Coastguard Worker  that caused false to be returned (if any)
1716*0ed15c77SAndroid Build Coastguard Worker #269: Add support for new `@JsonPropertyDescription` via `AnnotationIntrospector`
1717*0ed15c77SAndroid Build Coastguard Worker  as well as `BeanProperty.getMedata().getDescription()`
1718*0ed15c77SAndroid Build Coastguard Worker #270: Add `SerializationFeature.USE_EQUALITY_FOR_OBJECT_ID` to allow use of equality
1719*0ed15c77SAndroid Build Coastguard Worker  (instead of identity) for figuring out when to use Object Id
1720*0ed15c77SAndroid Build Coastguard Worker  (requested by beku8@github)
1721*0ed15c77SAndroid Build Coastguard Worker #271: Support handling of `@JsonUnwrapped` for in-built JSON Schema generation
1722*0ed15c77SAndroid Build Coastguard Worker #277: Make `TokenBuffer` support new native type and object ids
1723*0ed15c77SAndroid Build Coastguard Worker #302: Add `setNamingStrategy` in `Module.SetupContext`
1724*0ed15c77SAndroid Build Coastguard Worker  (suggested by Miguel C)
1725*0ed15c77SAndroid Build Coastguard Worker #305: Add support for accessing `TypeFactory` via `TypeIdResolverBase`
1726*0ed15c77SAndroid Build Coastguard Worker  (not yet via `TypeIdResolver` interface), other configuration
1727*0ed15c77SAndroid Build Coastguard Worker #306: Allow use of `@JsonFilter` for properties, not just classes
1728*0ed15c77SAndroid Build Coastguard Worker #307: Allow use of `@JsonFilter` for Maps in addition to POJOs
1729*0ed15c77SAndroid Build Coastguard Worker #308: Improve serialization and deserialization speed of `java.util.UUID` by 4x
1730*0ed15c77SAndroid Build Coastguard Worker  (suggested by David P)
1731*0ed15c77SAndroid Build Coastguard Worker #310: Improve `java.util.UUID` serialization with binary codecs, to use "raw" form.
1732*0ed15c77SAndroid Build Coastguard Worker #311: Make sure that "creator properties" are alphabetically ordered too, if
1733*0ed15c77SAndroid Build Coastguard Worker   so requested.
1734*0ed15c77SAndroid Build Coastguard Worker #315: Allow per-property definition of null serializer to use, using
1735*0ed15c77SAndroid Build Coastguard Worker  new `@JsonSerialize(nullsUsing=xxx)` annotation property
1736*0ed15c77SAndroid Build Coastguard Worker #317: Fix `JsonNode` support for nulls bound to `ObjectNode`, `ArrayNode`
1737*0ed15c77SAndroid Build Coastguard Worker  (contributed by Seth P)
1738*0ed15c77SAndroid Build Coastguard Worker #318: Problems with `ObjectMapper.updateValue()`, creator property-backed accessors
1739*0ed15c77SAndroid Build Coastguard Worker #319: Add support for per-call ("contextual") attributes, with defaulting,
1740*0ed15c77SAndroid Build Coastguard Worker  to allow keeping track of state during (de)serialization
1741*0ed15c77SAndroid Build Coastguard Worker #324: Make sure to throw `JsonMappingException` from `EnumDeserializer` creator,
1742*0ed15c77SAndroid Build Coastguard Worker   not `IllegalArgumentException`
1743*0ed15c77SAndroid Build Coastguard Worker  (reported by beverku@github)
1744*0ed15c77SAndroid Build Coastguard Worker #326: Support `@JsonFilter` for "any getter" properties
1745*0ed15c77SAndroid Build Coastguard Worker #334: Make `ArrayNode`, `ObjectNode` non-final again
1746*0ed15c77SAndroid Build Coastguard Worker #337: `AnySetter` does not support polymorphic types
1747*0ed15c77SAndroid Build Coastguard Worker  (reported by askvortsov@github)
1748*0ed15c77SAndroid Build Coastguard Worker #340: AtomicReference not working with polymorphic types
1749*0ed15c77SAndroid Build Coastguard Worker #342: Add `DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES` to make `ObjectMapper`
1750*0ed15c77SAndroid Build Coastguard Worker   throw exception when encountering explicitly ignored properties
1751*0ed15c77SAndroid Build Coastguard Worker  (requested by Ruslan M)
1752*0ed15c77SAndroid Build Coastguard Worker [JACKSON-890]: Support managed/back-references for polymorphic (abstract) types
1753*0ed15c77SAndroid Build Coastguard Worker - Add 'BeanPropertyWriter.isUnwrapping()' for future needs (by Afterburner)
1754*0ed15c77SAndroid Build Coastguard Worker - Add coercions from String "null" (as if null token was parsed) for primitives/Wrappers.
1755*0ed15c77SAndroid Build Coastguard Worker - Add `JsonDeserializer.handledType()`
1756*0ed15c77SAndroid Build Coastguard Worker 
1757*0ed15c77SAndroid Build Coastguard Worker 2.2.4 (10-Jun-2014)
1758*0ed15c77SAndroid Build Coastguard Worker 
1759*0ed15c77SAndroid Build Coastguard Worker #292: Problems with abstract `Map`s, `Collection`s, polymorphic deserialization
1760*0ed15c77SAndroid Build Coastguard Worker #324: EnumDeserializer should throw JsonMappingException, not IllegalArgumentException
1761*0ed15c77SAndroid Build Coastguard Worker #346: Problems deserializing `ObjectNode` from empty JSON Object, with @JsonCreator
1762*0ed15c77SAndroid Build Coastguard Worker 
1763*0ed15c77SAndroid Build Coastguard Worker 2.2.3 (22-Aug-2013)
1764*0ed15c77SAndroid Build Coastguard Worker 
1765*0ed15c77SAndroid Build Coastguard Worker #234: Problems with serializing types for deeply nested generic Maps, default typing
1766*0ed15c77SAndroid Build Coastguard Worker #251: SerializationFeature.WRITE_BIGDECIMAL_AS_PLAIN ignored with JsonNode
1767*0ed15c77SAndroid Build Coastguard Worker   serialization
1768*0ed15c77SAndroid Build Coastguard Worker  (reported by fge@github)
1769*0ed15c77SAndroid Build Coastguard Worker #259: Fix a problem with JSON Schema generation for `@JsonValue`
1770*0ed15c77SAndroid Build Coastguard Worker  (reported by Lior L)
1771*0ed15c77SAndroid Build Coastguard Worker #267: Handle negative, stringified timestamps
1772*0ed15c77SAndroid Build Coastguard Worker  (reported by Drecth@github)
1773*0ed15c77SAndroid Build Coastguard Worker #281: Make `NullNode` use configured null-value serializer
1774*0ed15c77SAndroid Build Coastguard Worker #287: Fix problems with converters, Maps with Object values
1775*0ed15c77SAndroid Build Coastguard Worker  (reported by antubis@github)
1776*0ed15c77SAndroid Build Coastguard Worker #288: Fix problem with serialization converters assigned with annotations
1777*0ed15c77SAndroid Build Coastguard Worker  (reported by cemo@github)
1778*0ed15c77SAndroid Build Coastguard Worker 
1779*0ed15c77SAndroid Build Coastguard Worker 2.2.2 (26-May-2013)
1780*0ed15c77SAndroid Build Coastguard Worker 
1781*0ed15c77SAndroid Build Coastguard Worker #216: Problems with Android, 1.6-only types
1782*0ed15c77SAndroid Build Coastguard Worker #217: JsonProcessingExceptions not all wrapped as expected
1783*0ed15c77SAndroid Build Coastguard Worker  (reported by karldmoore@github)
1784*0ed15c77SAndroid Build Coastguard Worker #220: ContainerNode missing 'createNumber(BigInteger)'
1785*0ed15c77SAndroid Build Coastguard Worker  (reported by Pascal G)
1786*0ed15c77SAndroid Build Coastguard Worker #223: Duplicated nulls with @JsonFormat(shape=Shape.ARRAY)
1787*0ed15c77SAndroid Build Coastguard Worker  (reported by lukegh@github)
1788*0ed15c77SAndroid Build Coastguard Worker #226: Field mapping fail on deserialization to common referenced object when
1789*0ed15c77SAndroid Build Coastguard Worker   @JsonUnwrapped is used
1790*0ed15c77SAndroid Build Coastguard Worker  (reported by ikvia@github)
1791*0ed15c77SAndroid Build Coastguard Worker #232: Converting bound BigDecimal value to tree fails with WRITE_BIGDECIMAL_AS_PLAIN
1792*0ed15c77SAndroid Build Coastguard Worker  (reported by celkings@github)
1793*0ed15c77SAndroid Build Coastguard Worker - Minor fix to handle primitive types for key deserializer lookups
1794*0ed15c77SAndroid Build Coastguard Worker - Add convenience method `MappingIterator.getCurrentLocation()`
1795*0ed15c77SAndroid Build Coastguard Worker  (suggested by Tomdz@github)
1796*0ed15c77SAndroid Build Coastguard Worker 
1797*0ed15c77SAndroid Build Coastguard Worker 2.2.1 (03-May-2013)
1798*0ed15c77SAndroid Build Coastguard Worker 
1799*0ed15c77SAndroid Build Coastguard Worker #214: Problem with LICENSE, NOTICE, Android packaging
1800*0ed15c77SAndroid Build Coastguard Worker  (reported by thierryd@github)
1801*0ed15c77SAndroid Build Coastguard Worker 
1802*0ed15c77SAndroid Build Coastguard Worker 2.2.0 (22-Apr-2013)
1803*0ed15c77SAndroid Build Coastguard Worker 
1804*0ed15c77SAndroid Build Coastguard Worker Fixes:
1805*0ed15c77SAndroid Build Coastguard Worker 
1806*0ed15c77SAndroid Build Coastguard Worker #23: Fixing typing of root-level collections
1807*0ed15c77SAndroid Build Coastguard Worker #118: JsonTypeInfo.as.EXTERNAL_PROPERTY not working correctly
1808*0ed15c77SAndroid Build Coastguard Worker  with missing type id, scalar types
1809*0ed15c77SAndroid Build Coastguard Worker #130: TimeZone not set for GregorianCalendar, even if configured
1810*0ed15c77SAndroid Build Coastguard Worker #144: MissingNode.isValueNode() should return 'false'
1811*0ed15c77SAndroid Build Coastguard Worker  (reported by 'fge@github')
1812*0ed15c77SAndroid Build Coastguard Worker #146: Creator properties were not being renamed as expected
1813*0ed15c77SAndroid Build Coastguard Worker  (contributed by Christoper C)
1814*0ed15c77SAndroid Build Coastguard Worker #188: Problem with ObjectId serialization, 'alwaysAsId' references
1815*0ed15c77SAndroid Build Coastguard Worker 
1816*0ed15c77SAndroid Build Coastguard Worker Improvements:
1817*0ed15c77SAndroid Build Coastguard Worker 
1818*0ed15c77SAndroid Build Coastguard Worker #116: JavaType implements `java.lang.reflect.Type` (as does `TypeReference`)
1819*0ed15c77SAndroid Build Coastguard Worker #147: Defer reporting of problems with missing creator parameters
1820*0ed15c77SAndroid Build Coastguard Worker  (contributed by Christoper C)
1821*0ed15c77SAndroid Build Coastguard Worker #155: Make `ObjectNode` and `ArrayNode` final (other node types already were)
1822*0ed15c77SAndroid Build Coastguard Worker  (requested by fge@github)
1823*0ed15c77SAndroid Build Coastguard Worker #161: Add deserializer for java.util.concurrent.ArrayBlockingQueue
1824*0ed15c77SAndroid Build Coastguard Worker #173: Add 'JsonNode.traverse(ObjectCodec)' for convenience
1825*0ed15c77SAndroid Build Coastguard Worker #181: Improve error reporting for missing '_valueDeserializer'
1826*0ed15c77SAndroid Build Coastguard Worker #194: Add `FloatNode` type in tree model (JsonNode)
1827*0ed15c77SAndroid Build Coastguard Worker  (requested by msteiger@github)
1828*0ed15c77SAndroid Build Coastguard Worker #199: Allow deserializing `Iterable` instances (as basic `Collection`s)
1829*0ed15c77SAndroid Build Coastguard Worker  (requested by electrum@github)
1830*0ed15c77SAndroid Build Coastguard Worker #206: Make 'ObjectMapper.createDeserializationContext()' overridable
1831*0ed15c77SAndroid Build Coastguard Worker  (requested by noter@github)
1832*0ed15c77SAndroid Build Coastguard Worker #207: Add explicit support for `short` datatypes, for tree model
1833*0ed15c77SAndroid Build Coastguard Worker  (contributed by msteiger@github)
1834*0ed15c77SAndroid Build Coastguard Worker 
1835*0ed15c77SAndroid Build Coastguard Worker New features:
1836*0ed15c77SAndroid Build Coastguard Worker 
1837*0ed15c77SAndroid Build Coastguard Worker #120: Extend BeanDeserializerModifier to work with non-POJO deserializers
1838*0ed15c77SAndroid Build Coastguard Worker #121: Extend BeanSerializerModifier to work with non-POJO serializers
1839*0ed15c77SAndroid Build Coastguard Worker #124: Add support for serialization converters (@JsonSerializer(converter=...))
1840*0ed15c77SAndroid Build Coastguard Worker #124: Add support for deserialization converters (@JsonDeserializer(converter=...))
1841*0ed15c77SAndroid Build Coastguard Worker #140: Add 'SerializationFeature.WRITE_BIGDECIMAL_AS_PLAIN' to allow forcing
1842*0ed15c77SAndroid Build Coastguard Worker   of non-scientific notation when serializing BigDecimals.
1843*0ed15c77SAndroid Build Coastguard Worker  (suggested by phedny@github)
1844*0ed15c77SAndroid Build Coastguard Worker #148: Add 'DeserializationFeature.FAIL_ON_INVALID_SUBTYPE`, which allows mapping
1845*0ed15c77SAndroid Build Coastguard Worker   entries with missing or invalid type id into null references (instead of failing).
1846*0ed15c77SAndroid Build Coastguard Worker   Also allows use of '@JsonTypeInfo.defaultImpl = NoClass.class' as alternative.
1847*0ed15c77SAndroid Build Coastguard Worker #159: Add more accessors in 'MappingIterator': getParser(), getParserSchema(),
1848*0ed15c77SAndroid Build Coastguard Worker   readAll()
1849*0ed15c77SAndroid Build Coastguard Worker  (suggested by Tom D)
1850*0ed15c77SAndroid Build Coastguard Worker #190: Add 'MapperFeature.ALLOW_FINAL_FIELDS_AS_MUTATORS' (default: true) for
1851*0ed15c77SAndroid Build Coastguard Worker  pruning out final fields (to avoid using as mutators)
1852*0ed15c77SAndroid Build Coastguard Worker  (requested by Eric T)
1853*0ed15c77SAndroid Build Coastguard Worker #195: Add 'MapperFeature.INFER_PROPERTY_MUTATORS' (default: enabled) for finer
1854*0ed15c77SAndroid Build Coastguard Worker   control of what mutators are auto-detected.
1855*0ed15c77SAndroid Build Coastguard Worker  (requested by Dain S)
1856*0ed15c77SAndroid Build Coastguard Worker #198: Add SPI metadata, handling in ObjectMapper (findModules()), for
1857*0ed15c77SAndroid Build Coastguard Worker   automatic registration of auto-detected extension modules
1858*0ed15c77SAndroid Build Coastguard Worker  (suggested by 'beamerblvd@github')
1859*0ed15c77SAndroid Build Coastguard Worker #203: Added new features to support advanced date/time handling:
1860*0ed15c77SAndroid Build Coastguard Worker   - SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS
1861*0ed15c77SAndroid Build Coastguard Worker   - DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS
1862*0ed15c77SAndroid Build Coastguard Worker   - DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE
1863*0ed15c77SAndroid Build Coastguard Worker 
1864*0ed15c77SAndroid Build Coastguard Worker Other:
1865*0ed15c77SAndroid Build Coastguard Worker 
1866*0ed15c77SAndroid Build Coastguard Worker #126: Update JDK baseline to 1.6
1867*0ed15c77SAndroid Build Coastguard Worker * API under 'com.fasterxml.jackson.databind.jsonFormatVisitors' changed significantly
1868*0ed15c77SAndroid Build Coastguard Worker   based on experiences with external JSON Schema generator.
1869*0ed15c77SAndroid Build Coastguard Worker * Version information accessed via code-generated access class, instead of reading
1870*0ed15c77SAndroid Build Coastguard Worker   VERSION.txt
1871*0ed15c77SAndroid Build Coastguard Worker * Added 2 methods in Converter interface: getInputType(), getOutputType(),
1872*0ed15c77SAndroid Build Coastguard Worker   to allow programmatic overrides (needed by JAXB annotation module)
1873*0ed15c77SAndroid Build Coastguard Worker 
1874*0ed15c77SAndroid Build Coastguard Worker 2.1.4 (26-Feb-2013)
1875*0ed15c77SAndroid Build Coastguard Worker 
1876*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-887]: StackOverflow with parameterized sub-class field
1877*0ed15c77SAndroid Build Coastguard Worker  (reported by Alexander M)
1878*0ed15c77SAndroid Build Coastguard Worker * [#130]: TimeZone not set for GregorianCalendar, when deserializing
1879*0ed15c77SAndroid Build Coastguard Worker * [#157]: NPE when registering module twice
1880*0ed15c77SAndroid Build Coastguard Worker * [#162]: JsonNodeFactory: work around an old bug with BigDecimal and zero
1881*0ed15c77SAndroid Build Coastguard Worker  (submitted by fge@github)
1882*0ed15c77SAndroid Build Coastguard Worker * [#166]: Incorrect optimization for `ObjectMapper.convertValue(Class)`
1883*0ed15c77SAndroid Build Coastguard Worker  (reported by Eric T)
1884*0ed15c77SAndroid Build Coastguard Worker * [#167]: Problems with @JsonValue, polymorphic types (regression from 1.x)
1885*0ed15c77SAndroid Build Coastguard Worker  (reported by Eric T)
1886*0ed15c77SAndroid Build Coastguard Worker * [#170]: Problems deserializing `java.io.File` if creator auto-discovery disabled
1887*0ed15c77SAndroid Build Coastguard Worker  (reported by Eric T)
1888*0ed15c77SAndroid Build Coastguard Worker * [#175]: NPE for JsonMappingException, if no path is specified
1889*0ed15c77SAndroid Build Coastguard Worker  (reported by bramp@github)
1890*0ed15c77SAndroid Build Coastguard Worker 
1891*0ed15c77SAndroid Build Coastguard Worker 2.1.3 (19-Jan-2013)
1892*0ed15c77SAndroid Build Coastguard Worker 
1893*0ed15c77SAndroid Build Coastguard Worker * [Issue#141]: ACCEPT_EMPTY_STRING_AS_NULL_OBJECT not working for enums
1894*0ed15c77SAndroid Build Coastguard Worker * [Issue#142]: Serialization of class containing EnumMap with polymorphic enum
1895*0ed15c77SAndroid Build Coastguard Worker   fails to generate class type data
1896*0ed15c77SAndroid Build Coastguard Worker  (reported by kidavis4@github)
1897*0ed15c77SAndroid Build Coastguard Worker 
1898*0ed15c77SAndroid Build Coastguard Worker 2.1.2 (04-Dec-2012)
1899*0ed15c77SAndroid Build Coastguard Worker 
1900*0ed15c77SAndroid Build Coastguard Worker * [Issue#106]: NPE in ObjectArraySerializer.createContextual(...)
1901*0ed15c77SAndroid Build Coastguard Worker * [Issue#117]: HandlerInstantiator defaulting not working
1902*0ed15c77SAndroid Build Coastguard Worker  (reported by Alexander B)
1903*0ed15c77SAndroid Build Coastguard Worker * [Issue#118]: Problems with JsonTypeInfo.As.EXTERNAL_PROPERTY, scalar values
1904*0ed15c77SAndroid Build Coastguard Worker  (reported by Adva11@github)
1905*0ed15c77SAndroid Build Coastguard Worker * [Issue#119]: Problems with @JsonValue, JsonTypeInfo.As.EXTERNAL_PROPERTY
1906*0ed15c77SAndroid Build Coastguard Worker  (reported by Adva11@github)
1907*0ed15c77SAndroid Build Coastguard Worker * [Issue#122]: ObjectMapper.copy() was not copying underlying mix-in map
1908*0ed15c77SAndroid Build Coastguard Worker  (reported by rzlo@github)
1909*0ed15c77SAndroid Build Coastguard Worker 
1910*0ed15c77SAndroid Build Coastguard Worker 2.1.1 (11-Nov-2012)
1911*0ed15c77SAndroid Build Coastguard Worker 
1912*0ed15c77SAndroid Build Coastguard Worker Fixes:
1913*0ed15c77SAndroid Build Coastguard Worker 
1914*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-875]: Enum values not found if Feature.USE_ANNOTATIONS disabled
1915*0ed15c77SAndroid Build Coastguard Worker  (reported by Laurent P)
1916*0ed15c77SAndroid Build Coastguard Worker * [Issue#93]: ObjectNode.setAll() broken; would not add anything for
1917*0ed15c77SAndroid Build Coastguard Worker   empty ObjectNodes.
1918*0ed15c77SAndroid Build Coastguard Worker  (reported by Francis G)
1919*0ed15c77SAndroid Build Coastguard Worker * Making things implement java.io.Serializable:
1920*0ed15c77SAndroid Build Coastguard Worker   - Issues: #94, #99, #100, #102
1921*0ed15c77SAndroid Build Coastguard Worker     (reported by Sean B)
1922*0ed15c77SAndroid Build Coastguard Worker * [Issue#96]: Problem with JsonTypeInfo.As.EXTERNAL_PROPERTY, defaultImpl
1923*0ed15c77SAndroid Build Coastguard Worker  (reported by Adva11@github)
1924*0ed15c77SAndroid Build Coastguard Worker 
1925*0ed15c77SAndroid Build Coastguard Worker 2.1.0 (08-Oct-2012)
1926*0ed15c77SAndroid Build Coastguard Worker 
1927*0ed15c77SAndroid Build Coastguard Worker   New minor version for 2.x series. Major improvements in multiple areas,
1928*0ed15c77SAndroid Build Coastguard Worker   including:
1929*0ed15c77SAndroid Build Coastguard Worker 
1930*0ed15c77SAndroid Build Coastguard Worker   - Dataformat auto-detection
1931*0ed15c77SAndroid Build Coastguard Worker   - More `@JsonFormat.shape` variant to serialize Collections as
1932*0ed15c77SAndroid Build Coastguard Worker     JSON Objects, POJOs as JSON Arrays (csv-like).
1933*0ed15c77SAndroid Build Coastguard Worker   - Much more configuration accessible via ObjectReader, ObjectWriter
1934*0ed15c77SAndroid Build Coastguard Worker   - New mechanism for JSON Schema generation, other uses (in future)
1935*0ed15c77SAndroid Build Coastguard Worker 
1936*0ed15c77SAndroid Build Coastguard Worker Fixes:
1937*0ed15c77SAndroid Build Coastguard Worker 
1938*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-830]/[Issue#19]: Change OSGi bundle name to be fully-qualified
1939*0ed15c77SAndroid Build Coastguard Worker * ]JACKSON-847]: Make @JsonIdentityInfo work with property-based creator
1940*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-851]: State corruption with ObjectWriter, DefaultPrettyPrinter
1941*0ed15c77SAndroid Build Coastguard Worker  (reported by Duncan A)
1942*0ed15c77SAndroid Build Coastguard Worker * [Issue#75]: Too aggressive KeySerializer caching
1943*0ed15c77SAndroid Build Coastguard Worker * Minor fix wrt [Issue#11], coercion needed extra checks
1944*0ed15c77SAndroid Build Coastguard Worker 
1945*0ed15c77SAndroid Build Coastguard Worker Improvements:
1946*0ed15c77SAndroid Build Coastguard Worker 
1947*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-758]: Remove 'IOException' from throws clauses of "writeValueAsString"
1948*0ed15c77SAndroid Build Coastguard Worker   and "writeValueAsBytes" of ObjectMapper/ObjectWriter
1949*0ed15c77SAndroid Build Coastguard Worker  (suggested by G-T Chen)
1950*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-839]: Allow "upgrade" of integer number types for
1951*0ed15c77SAndroid Build Coastguard Worker   UntypedObjectDeserializer, even with default typing enabled.
1952*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-850]: Allow use of zero-arg factory methods as "default creator"
1953*0ed15c77SAndroid Build Coastguard Worker   (suggested by Razvan D)
1954*0ed15c77SAndroid Build Coastguard Worker * [Issue#9]: Implement 'required' JSON Schema attribute for bean properties
1955*0ed15c77SAndroid Build Coastguard Worker * [Issue#20]: Add new exception type, InvalidFormatException (sub-type of
1956*0ed15c77SAndroid Build Coastguard Worker   JsonMappingException) to indicate data format problems
1957*0ed15c77SAndroid Build Coastguard Worker  (suggested by HolySamosa@github)
1958*0ed15c77SAndroid Build Coastguard Worker * [Issue#30]: ObjectReader and ObjectWriter now try to pre-fetch root
1959*0ed15c77SAndroid Build Coastguard Worker   (de)serializer if possible; minor performance improvement (2% for small POJOs).
1960*0ed15c77SAndroid Build Coastguard Worker * [Issue#33]: Simplified/clarified definition of 'ObjectReader.readValues()';
1961*0ed15c77SAndroid Build Coastguard Worker   minor change in behavior for JSON Array "wrapped" sequences
1962*0ed15c77SAndroid Build Coastguard Worker * [Issue#60]: Add 'JsonNode.hasNonNull(...)' method(s)
1963*0ed15c77SAndroid Build Coastguard Worker  (suggested by Jeff S on mailing list)
1964*0ed15c77SAndroid Build Coastguard Worker * [Issue#64]: Add new "standard" PropertyNamingStrategy, PascalCaseStrategy
1965*0ed15c77SAndroid Build Coastguard Worker   (PropertyNamingStrategy.PASCAL_CASE_TO_CAMEL_CASE)
1966*0ed15c77SAndroid Build Coastguard Worker  (contributed by Sean B)
1967*0ed15c77SAndroid Build Coastguard Worker * [Issue#65]: Add getters to `ObjectMapper`, DeserializationContext/-Factory.
1968*0ed15c77SAndroid Build Coastguard Worker  (contributed by Dmitry K)
1969*0ed15c77SAndroid Build Coastguard Worker * [Issue#69]: Add `PropertyName` abstraction, new methods in AnnotationIntrospector
1970*0ed15c77SAndroid Build Coastguard Worker * [Issue#80]: Make `DecimalNode` normalize input, to make "1.0" and "1.00"equal
1971*0ed15c77SAndroid Build Coastguard Worker  (reported by fge@github)
1972*0ed15c77SAndroid Build Coastguard Worker 
1973*0ed15c77SAndroid Build Coastguard Worker New features:
1974*0ed15c77SAndroid Build Coastguard Worker 
1975*0ed15c77SAndroid Build Coastguard Worker * [Issue#15]: Support data format auto-detection via ObjectReader (added
1976*0ed15c77SAndroid Build Coastguard Worker   'withFormatDetection(...)' fluent factories)
1977*0ed15c77SAndroid Build Coastguard Worker * [Issue#21]: Add 'ObjectNode.set(...)' method (and related) to improve
1978*0ed15c77SAndroid Build Coastguard Worker   chaining, semantic consistency of Tree Model API
1979*0ed15c77SAndroid Build Coastguard Worker  (suggested by fge@Github)
1980*0ed15c77SAndroid Build Coastguard Worker * [Issue#22]: Add 'ObjectMapper.setAnnotationIntrospectors()' which allows
1981*0ed15c77SAndroid Build Coastguard Worker   defining different introspectors for serialization, deserialization
1982*0ed15c77SAndroid Build Coastguard Worker * [Issue#24]: Allow serialization of Enums as JSON Objects
1983*0ed15c77SAndroid Build Coastguard Worker  (suggested by rveloso@github)
1984*0ed15c77SAndroid Build Coastguard Worker * [Issue#28]: Add 'ObjectMapper.copy()', to create non-linked copy of
1985*0ed15c77SAndroid Build Coastguard Worker   mapper, with same configuration settings
1986*0ed15c77SAndroid Build Coastguard Worker * [Issue#29]: Allow serializing, deserializing POJOs as JSON Arrays
1987*0ed15c77SAndroid Build Coastguard Worker   by using `@JsonFormat(shape=Shape.ARRAY)`
1988*0ed15c77SAndroid Build Coastguard Worker * [Issue#40]: Allow serialization of Collections as JSON Objects
1989*0ed15c77SAndroid Build Coastguard Worker   (and deserialization from)
1990*0ed15c77SAndroid Build Coastguard Worker  (suggested by 'rveloso@github')
1991*0ed15c77SAndroid Build Coastguard Worker * [Issue#42]: Allow specifying Base64 variant to use for Base64-encoded data
1992*0ed15c77SAndroid Build Coastguard Worker   using ObjectReader.with(Base64Variant), ObjectWriter.with(Base64Variant).
1993*0ed15c77SAndroid Build Coastguard Worker  (suggested by 'mpfau@github')
1994*0ed15c77SAndroid Build Coastguard Worker * [Issue#45]: Add '@JsonNaming' annotation to define per-class PropertyNamingStrategy
1995*0ed15c77SAndroid Build Coastguard Worker  (suggested by Mark W)
1996*0ed15c77SAndroid Build Coastguard Worker * [Pull#58]: Make 'MappingIterator' implement 'Closable'
1997*0ed15c77SAndroid Build Coastguard Worker  (contributed by Pascal G)
1998*0ed15c77SAndroid Build Coastguard Worker * [Issue#72]: Add 'MapperFeature.USE_WRAPPER_NAME_AS_PROPERTY_NAME' to use
1999*0ed15c77SAndroid Build Coastguard Worker   wrapper name annotations for renaming properties
2000*0ed15c77SAndroid Build Coastguard Worker * [Issue#87]: Add 'StdDelegatingSerializer', 'StdDelegatingDeserializer' to
2001*0ed15c77SAndroid Build Coastguard Worker   simplify writing of two-step handlers
2002*0ed15c77SAndroid Build Coastguard Worker * (issue #4 of jackson-annotations): Add `@JsonIdentityReference(alwaysAsId=true)`
2003*0ed15c77SAndroid Build Coastguard Worker   to force ALL references to an object written as Object Id, even the first one.
2004*0ed15c77SAndroid Build Coastguard Worker * Added 'ObjectReader#withHandler' to allow for reconfiguring deserialization
2005*0ed15c77SAndroid Build Coastguard Worker   problem handler
2006*0ed15c77SAndroid Build Coastguard Worker  (suggested by 'electricmonk')
2007*0ed15c77SAndroid Build Coastguard Worker 
2008*0ed15c77SAndroid Build Coastguard Worker Other changes:
2009*0ed15c77SAndroid Build Coastguard Worker 
2010*0ed15c77SAndroid Build Coastguard Worker * New variant of AnnotationIntrospector.getFormat(), to support class
2011*0ed15c77SAndroid Build Coastguard Worker   annotations
2012*0ed15c77SAndroid Build Coastguard Worker * It is now possible to serialize instances of plain old Object, iff
2013*0ed15c77SAndroid Build Coastguard Worker   'FAIL_ON_EMPTY_BEANS' is disabled.
2014*0ed15c77SAndroid Build Coastguard Worker * Trying to remove reference to "JSON" in datatype conversion errors
2015*0ed15c77SAndroid Build Coastguard Worker  (since databinding is format-agnostic)
2016*0ed15c77SAndroid Build Coastguard Worker 
2017*0ed15c77SAndroid Build Coastguard Worker INCOMPATIBILITIES: (rats!)
2018*0ed15c77SAndroid Build Coastguard Worker 
2019*0ed15c77SAndroid Build Coastguard Worker * Note that [Issue#33] (see above) is, technically speaking, backwards
2020*0ed15c77SAndroid Build Coastguard Worker   imcompatible change. It is estimated that it should NOT affect most
2021*0ed15c77SAndroid Build Coastguard Worker   users, as changes are to edge cases (and undocumented ones at that).
2022*0ed15c77SAndroid Build Coastguard Worker   However, it can potentially cause problems with upgrade.
2023*0ed15c77SAndroid Build Coastguard Worker * Implementation of `JsonFormatVisitable` resulting in 2 new methods
2024*0ed15c77SAndroid Build Coastguard Worker   being added in `BeanPropertyFilter` interface -- this is unfortunate,
2025*0ed15c77SAndroid Build Coastguard Worker   but was required to support full traversability.
2026*0ed15c77SAndroid Build Coastguard Worker 
2027*0ed15c77SAndroid Build Coastguard Worker 2.0.4 (26-Jun-2012)
2028*0ed15c77SAndroid Build Coastguard Worker 
2029*0ed15c77SAndroid Build Coastguard Worker * [Issue#6]: element count for PrettyPrinter, endObject wrong
2030*0ed15c77SAndroid Build Coastguard Worker    (reported by "thebluemountain")
2031*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-838]: Utf8StreamParser._reportInvalidToken() skips letters
2032*0ed15c77SAndroid Build Coastguard Worker     from reported token name
2033*0ed15c77SAndroid Build Coastguard Worker    (reported by Lóránt Pintér)
2034*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-841] Data is doubled in SegmentedStringWriter output
2035*0ed15c77SAndroid Build Coastguard Worker    (reported by Scott S)
2036*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-842] ArrayIndexOutOfBoundsException when skipping C-style comments
2037*0ed15c77SAndroid Build Coastguard Worker    (reported by Sebastien R)
2038*0ed15c77SAndroid Build Coastguard Worker 
2039*0ed15c77SAndroid Build Coastguard Worker 2.0.3: no version 2.0.3 released -- only used for extension modules
2040*0ed15c77SAndroid Build Coastguard Worker 
2041*0ed15c77SAndroid Build Coastguard Worker 2.0.2 [14-May-2012]
2042*0ed15c77SAndroid Build Coastguard Worker 
2043*0ed15c77SAndroid Build Coastguard Worker Fixes:
2044*0ed15c77SAndroid Build Coastguard Worker 
2045*0ed15c77SAndroid Build Coastguard Worker * [Issue#14]: Annotations were not included from parent classes of
2046*0ed15c77SAndroid Build Coastguard Worker   mix-in classes
2047*0ed15c77SAndroid Build Coastguard Worker  (reported by @guillaup)
2048*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-824]: Combination of JSON Views, ObjectMapper.readerForUpdating()
2049*0ed15c77SAndroid Build Coastguard Worker   was not working
2050*0ed15c77SAndroid Build Coastguard Worker  (reported by Nir S)
2051*0ed15c77SAndroid Build Coastguard Worker (and all fixes from 1.9.7)
2052*0ed15c77SAndroid Build Coastguard Worker 
2053*0ed15c77SAndroid Build Coastguard Worker Improvements:
2054*0ed15c77SAndroid Build Coastguard Worker 
2055*0ed15c77SAndroid Build Coastguard Worker * [Issue#11]: Improve ObjectMapper.convertValue()/.treeToValue() to use
2056*0ed15c77SAndroid Build Coastguard Worker   cast if possible
2057*0ed15c77SAndroid Build Coastguard Worker 
2058*0ed15c77SAndroid Build Coastguard Worker 2.0.1 [23-Apr-2012]
2059*0ed15c77SAndroid Build Coastguard Worker 
2060*0ed15c77SAndroid Build Coastguard Worker Fixes:
2061*0ed15c77SAndroid Build Coastguard Worker 
2062*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-827] Ensure core packages work on JDK 1.5
2063*0ed15c77SAndroid Build Coastguard Worker  (reported by Pascal g)
2064*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-829] Custom serializers not working for List<String> properties,
2065*0ed15c77SAndroid Build Coastguard Worker   @JsonSerialize(contentUsing)
2066*0ed15c77SAndroid Build Coastguard Worker  (reported by James R)
2067*0ed15c77SAndroid Build Coastguard Worker 
2068*0ed15c77SAndroid Build Coastguard Worker Improvements:
2069*0ed15c77SAndroid Build Coastguard Worker 
2070*0ed15c77SAndroid Build Coastguard Worker * [Issue#5]: Add support for maps with java.util.Locale keys to the set of
2071*0ed15c77SAndroid Build Coastguard Worker   StdKeyDeserializers
2072*0ed15c77SAndroid Build Coastguard Worker  (contributed by Ryan G)
2073*0ed15c77SAndroid Build Coastguard Worker 
2074*0ed15c77SAndroid Build Coastguard Worker 2.0.0 [25-Mar-2012]
2075*0ed15c77SAndroid Build Coastguard Worker 
2076*0ed15c77SAndroid Build Coastguard Worker Fixes:
2077*0ed15c77SAndroid Build Coastguard Worker 
2078*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-368]: Problems with managed references, abstract types
2079*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-711]: Delegating @JsonCreator did not work with Injectable values
2080*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-798]: Problem with external type id, creators
2081*0ed15c77SAndroid Build Coastguard Worker   (reported by Casey L)
2082*0ed15c77SAndroid Build Coastguard Worker (and all fixes up until and including 1.9.6)
2083*0ed15c77SAndroid Build Coastguard Worker 
2084*0ed15c77SAndroid Build Coastguard Worker Improvements:
2085*0ed15c77SAndroid Build Coastguard Worker 
2086*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-546]: Indicate end-of-input with JsonMappingException instead
2087*0ed15c77SAndroid Build Coastguard Worker   of EOFException, when there is no parsing exception
2088*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-664]: Reduce overhead of type resolution by adding caching
2089*0ed15c77SAndroid Build Coastguard Worker   in TypeFactory
2090*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-690]: Pass DeserializationContext through ValueInstantiator
2091*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-695]: Add 'isEmpty(value)' in JsonSerializer to allow
2092*0ed15c77SAndroid Build Coastguard Worker   customizing handling of serialization of empty values
2093*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-710]: 'ObjectMapper.convertValue()' should ignore root value
2094*0ed15c77SAndroid Build Coastguard Worker   wrapping/unwrapping settings
2095*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-730] Split various features (JsonParser, JsonGenerator,
2096*0ed15c77SAndroid Build Coastguard Worker   SerializationConfig, DeserializationConfig) into per-factory
2097*0ed15c77SAndroid Build Coastguard Worker   features (MapperFeature, JsonFactory.Feature) an per
2098*0ed15c77SAndroid Build Coastguard Worker   instance features (existing ones)
2099*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-732]: Allow 'AnnotationIntrospector.findContentDeserializer()'
2100*0ed15c77SAndroid Build Coastguard Worker   (and similar) to return instance, not just Class<?> for instance
2101*0ed15c77SAndroid Build Coastguard Worker  (requested by James R)
2102*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-736]: Add (more) access to array, container and map serializers
2103*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-737]: Allow accessing of "creator properties" for BeanDeserializer
2104*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-748]: Add 'registerSubtypes' to 'Module.setupContext' (and SimpleModule)
2105*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-749]: Make @JsonValue work for Enum deserialization
2106*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-769]: ObjectNode/ArrayNode: change 'put', 'insert', 'add' to return
2107*0ed15c77SAndroid Build Coastguard Worker   'this node' (unless already returning something)
2108*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-770]: Simplify method naming for JsonNode, drop unnecessary 'get' prefix
2109*0ed15c77SAndroid Build Coastguard Worker   from methods like 'getTextValue()' (becomes 'textValue()')
2110*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-777]: Rename 'SerializationConfig.Feature' as 'SerializationFeature',
2111*0ed15c77SAndroid Build Coastguard Worker   'DeserializationConfig.Feature' as 'DeserializationFeature'
2112*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-780]: MissingNode, NullNode should return 'defaultValue' from 'asXxx' methods,
2113*0ed15c77SAndroid Build Coastguard Worker   (not 0 for numbers), as they are not numeric types
2114*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-787]: Allow use of @JsonIgnoreProperties for properties (fields, getters, setters)
2115*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-795]: @JsonValue was not working for Maps, Collections
2116*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-800]: Add 'Module.SetupContext#addDeserializationProblemHandler'
2117*0ed15c77SAndroid Build Coastguard Worker  (suggested by James R)
2118*0ed15c77SAndroid Build Coastguard Worker 
2119*0ed15c77SAndroid Build Coastguard Worker New features:
2120*0ed15c77SAndroid Build Coastguard Worker 
2121*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-107]: Add support for Object Identity (to handled cycles, shared refs),
2122*0ed15c77SAndroid Build Coastguard Worker   with @JsonIdentityInfo
2123*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-435]: Allow per-property Date formatting using @JsonFormat.
2124*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-437]: Allow injecting of type id as POJO property, by setting
2125*0ed15c77SAndroid Build Coastguard Worker   new '@JsonTypeInfo.visible' property to true.
2126*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-469]: Support "Builder pattern" for deserialiation; that is, allow
2127*0ed15c77SAndroid Build Coastguard Worker   use of separate Builder object for data binding, creating actual value
2128*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-608]: Allow use of JSON Views for deserialization
2129*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-636]: Add 'SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS' to allow
2130*0ed15c77SAndroid Build Coastguard Worker   forced sorting of Maps during serialization
2131*0ed15c77SAndroid Build Coastguard Worker   (suggested by Joern H)
2132*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-669]: Allow prefix/suffix for @JsonUnwrapped properties
2133*0ed15c77SAndroid Build Coastguard Worker  (requested by Aner P)
2134*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-707]: Add 'JsonNode.deepCopy()', to create safe deep copies
2135*0ed15c77SAndroid Build Coastguard Worker   of ObjectNodes, ArrayNodes.
2136*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-714]: Add general-purpose @JsonFormat annotation
2137*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-718]: Added 'JsonNode.canConvertToInt()', 'JsonNode.canConvertToLong()'
2138*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-747]: Allow changing of 'SerializationFeature' for ObjectWriter,
2139*0ed15c77SAndroid Build Coastguard Worker   'DeserializationFeature' for ObjectReader.
2140*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-752]: Add @JsonInclude (replacement of @JsonSerialize.include)
2141*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-754]: Add @JacksonAnnotationsInside for creating "annotation
2142*0ed15c77SAndroid Build Coastguard Worker   bundles" (also: AnnotationIntrospector.isAnnotationBundle())
2143*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-762]: Allow using @JsonTypeId to specify property to use as
2144*0ed15c77SAndroid Build Coastguard Worker   type id, instead of using separate type id resolver.
2145*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-764]: Allow specifying "root name" to use for root wrapping
2146*0ed15c77SAndroid Build Coastguard Worker   via ObjectReader, ObjectWriter.
2147*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-772]: Add 'JsonNode.withArray()' to use for traversing Array nodes.
2148*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-793]: Add support for configurable Locale, TimeZone to use
2149*0ed15c77SAndroid Build Coastguard Worker   (via SerializationConfig, DeserializationConfig)
2150*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-805]: Add 'SerializationFeature.WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED'
2151*0ed15c77SAndroid Build Coastguard Worker   to improve interoperability with BadgerFish/Jettison
2152*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-810]: Deserialization Feature: Allow unknown Enum values via
2153*0ed15c77SAndroid Build Coastguard Worker   'DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL'
2154*0ed15c77SAndroid Build Coastguard Worker   (suggested by Raymond R)
2155*0ed15c77SAndroid Build Coastguard Worker * [JACKSON-813]: Add '@JsonSerializableSchema.id' attribute, to indicate
2156*0ed15c77SAndroid Build Coastguard Worker   'id' value to add to generated JSON Schemas.
2157*0ed15c77SAndroid Build Coastguard Worker 
2158*0ed15c77SAndroid Build Coastguard Worker [entries for versions 1.x and earlier not retained; refer to earlier releases)
2159