Tatu Saloranta | 688cbc1 | 2013-04-23 22:58:26 -0700 | [diff] [blame] | 1 | Project: jackson-databind |
Tatu Saloranta | affd0c7 | 2018-01-23 19:15:10 -0800 | [diff] [blame] | 2 | |
| 3 | ------------------------------------------------------------------------ |
| 4 | === Releases === |
Cowtowncoder | bfbb661 | 2014-10-14 11:26:53 -0700 | [diff] [blame] | 5 | ------------------------------------------------------------------------ |
Tatu Saloranta | eb7cf73 | 2018-01-22 19:47:04 -0800 | [diff] [blame] | 6 | |
Tatu Saloranta | f3f77d9 | 2018-06-19 11:52:30 -0700 | [diff] [blame] | 7 | 2.10.0 (not yet released) |
| 8 | |
Tatu Saloranta | 38a61e0 | 2019-02-04 15:04:32 -0800 | [diff] [blame] | 9 | #1675: Remove "impossible" `IOException` in `readTree()` and `readValue()` `ObjectMapper` |
| 10 | methods which accept Strings |
| 11 | (requested by matthew-pwnieexpress@github) |
Tatu Saloranta | f3f77d9 | 2018-06-19 11:52:30 -0700 | [diff] [blame] | 12 | #2059: Remove `final` modifier for `TypeFactory` |
| 13 | (requested by Thibaut R) |
Tatu Saloranta | dd7258a | 2018-08-28 21:40:00 -0700 | [diff] [blame] | 14 | #2115: Support naive deserialization of `Serializable` values as "untyped", same |
| 15 | as `java.lang.Object` |
| 16 | (requested by Christopher S) |
Tatu Saloranta | 8261614 | 2018-08-27 21:47:33 -0700 | [diff] [blame] | 17 | #2116: Make NumberSerializers.Base public and its inherited classes not final |
| 18 | (requested by Édouard M) |
Tatu Saloranta | 39294f9 | 2018-09-04 22:25:50 -0700 | [diff] [blame] | 19 | #2126: `DeserializationContext.instantiationException()` throws `InvalidDefinitionException` |
Tatu Saloranta | 89a2025 | 2018-10-09 19:19:33 -0700 | [diff] [blame] | 20 | #2153: Add `JsonMapper` to replace generic `ObjectMapper` usage |
Tatu Saloranta | 8ec1e5e | 2018-12-10 20:14:05 -0800 | [diff] [blame] | 21 | #2187: Make `JsonNode.toString()` use shared `ObjectMapper` to produce valid json |
Tatu Saloranta | 6ef8665 | 2019-01-16 22:20:38 -0800 | [diff] [blame] | 22 | #2189: `TreeTraversingParser` does not check int bounds |
| 23 | (reported by Alexander S) |
Tatu Saloranta | e8d07ea | 2019-01-10 22:33:41 -0800 | [diff] [blame] | 24 | #2196: Type safety for `readValue()` with `TypeReference` |
| 25 | (suggested by nguyenfilip@github) |
Tatu Saloranta | 644b5ce | 2018-12-10 20:46:10 -0800 | [diff] [blame] | 26 | #2204: Add `JsonNode.isEmpty()` as convenience alias |
Tatu Saloranta | e797b22 | 2019-01-23 22:46:03 -0800 | [diff] [blame] | 27 | #2211: Change of behavior (2.8 -> 2.9) with `ObjectMapper.readTree(input)` with no content |
Tatu Saloranta | 0ca6c28 | 2019-01-11 19:43:30 -0800 | [diff] [blame] | 28 | #2217: Suboptimal memory allocation in `TextNode.getBinaryValue()` |
| 29 | (reported by Christoph B) |
Tatu Saloranta | e3f005b | 2019-01-25 20:23:13 -0800 | [diff] [blame] | 30 | #2220: Force serialization always for `convertValue()`; avoid short-cuts |
Tatu Saloranta | 8d846ae | 2019-01-11 19:58:51 -0800 | [diff] [blame] | 31 | #2223: Add `missingNode()` method in `JsonNodeFactory` |
Tatu Saloranta | 94c56eb | 2019-01-18 20:45:25 -0800 | [diff] [blame] | 32 | #2227: Minor cleanup of exception message for `Enum` binding failure |
| 33 | (reported by RightHandedMonkey@github) |
Tatu Saloranta | e287a62 | 2019-02-04 17:51:04 -0800 | [diff] [blame^] | 34 | #2230: `WRITE_BIGDECIMAL_AS_PLAIN` is ignored if `@JsonFormat` is used |
| 35 | (reported by Pavel C) |
Tatu Saloranta | 6814284 | 2019-02-04 11:32:45 -0800 | [diff] [blame] | 36 | #2241: Add `JsonPropertyNamingStrategy.LOWER_DOT_CASE` for dot-delimited names |
| 37 | (contributed by zenglian@github.com) |
Tatu Saloranta | f3f77d9 | 2018-06-19 11:52:30 -0700 | [diff] [blame] | 38 | |
Tatu Saloranta | ceed2dc | 2019-01-15 20:24:01 -0800 | [diff] [blame] | 39 | 2.9.9 (not yet released) |
| 40 | |
| 41 | #1408: Call to `TypeVariable.getBounds()` without synchronization unsafe on some platforms |
| 42 | (reported by Thomas K) |
Tatu Saloranta | f3a1798 | 2019-01-17 22:38:33 -0800 | [diff] [blame] | 43 | #2221: `DeserializationProblemHandler.handleUnknownTypeId()` returning `Void.class`, |
| 44 | enableDefaultTyping causing NPE |
| 45 | (repoted by MeyerNils@github) |
Tatu Saloranta | ceed2dc | 2019-01-15 20:24:01 -0800 | [diff] [blame] | 46 | |
Tatu Saloranta | e42c66c | 2018-12-15 14:02:48 -0800 | [diff] [blame] | 47 | 2.9.8 (15-Dec-2018) |
Tatu Saloranta | 08dfdde | 2018-10-22 20:03:40 -0700 | [diff] [blame] | 48 | |
| 49 | #1662: `ByteBuffer` serialization is broken if offset is not 0 |
| 50 | (reported by j-baker@github) |
Tatu Saloranta | 54c744c | 2018-11-21 18:19:53 -0800 | [diff] [blame] | 51 | #2155: Type parameters are checked for equality while isAssignableFrom expected |
Tatu Saloranta | dd6d460 | 2018-11-19 22:18:43 -0800 | [diff] [blame] | 52 | (reported by frankfiedler@github) |
Tatu Saloranta | 7f94bb3 | 2018-11-22 17:45:03 -0800 | [diff] [blame] | 53 | #2167: Large ISO-8601 Dates are formatted/serialized incorrectly |
Tatu Saloranta | 3f45bb9 | 2018-11-22 18:05:49 -0800 | [diff] [blame] | 54 | #2181: Don't re-use dynamic serializers for property-updating copy constructors |
| 55 | (suggested by Pavel N) |
Tatu Saloranta | 54c744c | 2018-11-21 18:19:53 -0800 | [diff] [blame] | 56 | #2183: Base64 JsonMappingException: Unexpected end-of-input |
| 57 | (reported by ViToni@github) |
Tatu Saloranta | 72cd402 | 2018-11-19 20:02:58 -0800 | [diff] [blame] | 58 | #2186: Block more classes from polymorphic deserialization (CVE-2018-19360, |
| 59 | CVE-2018-19361, CVE-2018-19362) |
| 60 | (reported by Guixiong Wu) |
Tatu Saloranta | 69903ae | 2018-12-06 21:35:10 -0800 | [diff] [blame] | 61 | #2197: Illegal reflective access operation warning when using `java.lang.Void` |
| 62 | as value type |
| 63 | (reported by René K) |
Tatu Saloranta | 3946967 | 2018-12-11 22:27:15 -0800 | [diff] [blame] | 64 | #2202: StdKeyDeserializer Class method _getToStringResolver is slow causing Thread Block |
| 65 | (reported by sushobhitrajan@github) |
Tatu Saloranta | 08dfdde | 2018-10-22 20:03:40 -0700 | [diff] [blame] | 66 | |
Tatu Saloranta | 16aac9d | 2018-09-18 19:42:24 -0700 | [diff] [blame] | 67 | 2.9.7 (19-Sep-2018) |
Tatu Saloranta | d3a715a | 2018-06-19 11:32:15 -0700 | [diff] [blame] | 68 | |
| 69 | #2060: `UnwrappingBeanPropertyWriter` incorrectly assumes the found serializer is |
| 70 | of type `UnwrappingBeanSerializer` |
| 71 | (reported by Petar T) |
Tatu Saloranta | 323cd0b | 2018-08-30 19:43:43 -0700 | [diff] [blame] | 72 | #2064: Cannot set custom format for `SqlDateSerializer` globally |
| 73 | (reported by Brandon K) |
Tatu Saloranta | 4651b40 | 2018-08-16 14:19:15 -0700 | [diff] [blame] | 74 | #2079: NPE when visiting StaticListSerializerBase |
| 75 | (reported by WorldSEnder@github) |
Tatu Saloranta | 2a5d022 | 2018-07-06 17:00:22 -0700 | [diff] [blame] | 76 | #2082: `FactoryBasedEnumDeserializer` should be cachable |
Tatu Saloranta | 555cbeb | 2018-08-28 22:19:01 -0700 | [diff] [blame] | 77 | #2088: `@JsonUnwrapped` fields are skipped when using `PropertyBasedCreator` if |
| 78 | they appear after the last creator property |
| 79 | (reported, fix contributed by 6bangs@github) |
Tatu Saloranta | d98ae77 | 2018-08-15 16:56:18 -0700 | [diff] [blame] | 80 | #2096: `TreeTraversingParser` does not take base64 variant into account |
| 81 | (reported by tangiel@github) |
Tatu Saloranta | 87d29af | 2018-08-16 14:42:57 -0700 | [diff] [blame] | 82 | #2097: Block more classes from polymorphic deserialization (CVE-2018-14718 |
| 83 | - CVE-2018-14721) |
Tatu Saloranta | bc91126 | 2018-08-15 07:13:38 -0700 | [diff] [blame] | 84 | #2109: Canonical string for reference type is built incorrectly |
| 85 | (reported by svarzee@github) |
Tatu Saloranta | 9ee894c | 2018-09-06 22:55:49 -0700 | [diff] [blame] | 86 | #2120: `NioPathDeserializer` improvement |
| 87 | (contributed by Semyon L) |
Tatu Saloranta | f6cf181 | 2018-09-05 23:17:05 -0700 | [diff] [blame] | 88 | #2128: Location information included twice for some `JsonMappingException`s |
Tatu Saloranta | d3a715a | 2018-06-19 11:32:15 -0700 | [diff] [blame] | 89 | |
Tatu Saloranta | e6c6774 | 2018-06-11 18:03:23 -0700 | [diff] [blame] | 90 | 2.9.6 (12-Jun-2018) |
Tatu Saloranta | 09e5ba1 | 2018-04-05 20:14:35 -0700 | [diff] [blame] | 91 | |
Tatu Saloranta | 2e2f4e1 | 2018-05-17 13:22:21 -0700 | [diff] [blame] | 92 | #955: Add `MapperFeature.USE_BASE_TYPE_AS_DEFAULT_IMPL` to use declared base type |
| 93 | as `defaultImpl` for polymorphic deserialization |
| 94 | (contributed by mikeldpl@github) |
Tatu Saloranta | 12f82c6 | 2018-05-31 23:15:31 -0700 | [diff] [blame] | 95 | #1328: External property polymorphic deserialization does not work with enums |
Tatu Saloranta | 09e5ba1 | 2018-04-05 20:14:35 -0700 | [diff] [blame] | 96 | #1565: Deserialization failure with Polymorphism using JsonTypeInfo `defaultImpl`, |
| 97 | subtype as target |
Tatu Saloranta | de6ca25 | 2018-04-19 15:01:51 -0700 | [diff] [blame] | 98 | #1964: Failed to specialize `Map` type during serialization where key type |
| 99 | incompatibility overidden via "raw" types |
| 100 | (reported by ptirador@github) |
Tatu Saloranta | 11808cc | 2018-04-19 20:39:30 -0700 | [diff] [blame] | 101 | #1990: MixIn `@JsonProperty` for `Object.hashCode()` is ignored |
| 102 | (reported by Freddy B) |
Tatu Saloranta | 0e06d15 | 2018-05-25 16:25:23 -0700 | [diff] [blame] | 103 | #1991: Context attributes are not passed/available to custom serializer if object is in POJO |
| 104 | (reported by dletin@github) |
Tatu Saloranta | 10f2ce3 | 2018-04-18 21:53:35 -0700 | [diff] [blame] | 105 | #1998: Removing "type" attribute with Mixin not taken in account if |
| 106 | using ObjectMapper.copy() |
| 107 | (reported by SBKila@github) |
Tatu Saloranta | 69f6f52 | 2018-04-19 15:38:12 -0700 | [diff] [blame] | 108 | #1999: "Duplicate property" issue should mention which class it complains about |
| 109 | (reported by Ondrej Z) |
Tatu Saloranta | ba45be2 | 2018-05-01 19:20:50 -0700 | [diff] [blame] | 110 | #2001: Deserialization issue with `@JsonIgnore` and `@JsonCreator` + `@JsonProperty` |
| 111 | for same property name |
| 112 | (reported, fix contributed by Jakub S) |
Tatu Saloranta | eea460b | 2018-05-05 12:43:02 -0700 | [diff] [blame] | 113 | #2015: `@Jsonsetter with Nulls.SKIP` collides with |
| 114 | `DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL` when parsing enum |
| 115 | (reported by ndori@github) |
Tatu Saloranta | fbe64a2 | 2018-05-03 20:40:56 -0700 | [diff] [blame] | 116 | #2016: Delegating JsonCreator disregards JsonDeserialize info |
| 117 | (reported by Carter K) |
Tatu Saloranta | f2d2c31 | 2018-05-01 17:09:24 -0700 | [diff] [blame] | 118 | #2019: Abstract Type mapping in 2.9 fails when multiple modules are registered |
| 119 | (reported by asger82@github) |
Tatu Saloranta | ac82499 | 2018-05-04 16:04:21 -0700 | [diff] [blame] | 120 | #2021: Delegating JsonCreator disregards `JsonDeserialize.using` annotation |
Tatu Saloranta | 9dee833 | 2018-05-04 13:33:17 -0700 | [diff] [blame] | 121 | #2023: `JsonFormat.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT` not working |
| 122 | with `null` coercion with `@JsonSetter` |
Tatu Saloranta | ba0df20 | 2018-05-08 19:33:50 -0700 | [diff] [blame] | 123 | #2027: Concurrency error causes `IllegalStateException` on `BeanPropertyMap` |
| 124 | (reported by franboragina@github) |
Tatu Saloranta | 150a49f | 2018-06-07 23:10:16 -0700 | [diff] [blame] | 125 | #2032: CVE-2018-11307: Potential information exfiltration with default typing, serialization gadget from MyBatis |
Tatu Saloranta | 78e7873 | 2018-05-10 18:28:42 -0700 | [diff] [blame] | 126 | (reported by Guixiong Wu) |
Tatu Saloranta | bfeb1fa | 2018-05-14 16:37:35 -0700 | [diff] [blame] | 127 | #2034: Serialization problem with type specialization of nested generic types |
| 128 | (reported by Reinhard P) |
Tatu Saloranta | 324b2d7 | 2018-05-16 10:15:58 -0700 | [diff] [blame] | 129 | #2038: JDK Serializing and using Deserialized `ObjectMapper` loses linkage |
| 130 | back from `JsonParser.getCodec()` |
| 131 | (reported by Chetan N) |
Tatu Saloranta | dd57a2d | 2018-05-25 15:46:15 -0700 | [diff] [blame] | 132 | #2051: Implicit constructor property names are not renamed properly with |
| 133 | `PropertyNamingStrategy` |
Tatu Saloranta | 150a49f | 2018-06-07 23:10:16 -0700 | [diff] [blame] | 134 | #2052: CVE-2018-12022: Block polymorphic deserialization of types from Jodd-db library |
| 135 | (reported by Guixiong Wu) |
| 136 | #2058: CVE-2018-12023: Block polymorphic deserialization of types from Oracle JDBC driver |
| 137 | (reported by Guixiong Wu) |
Tatu Saloranta | 09e5ba1 | 2018-04-05 20:14:35 -0700 | [diff] [blame] | 138 | |
Tatu Saloranta | afe2422 | 2018-03-26 08:04:28 -0700 | [diff] [blame] | 139 | 2.9.5 (26-Mar-2018) |
cowtowncoder | b30fa09 | 2018-01-26 16:01:20 -0800 | [diff] [blame] | 140 | |
| 141 | #1911: Allow serialization of `BigDecimal` as String, using |
| 142 | `@JsonFormat(shape=Shape.String)`, config overrides |
| 143 | (suggested by cen1@github) |
Tatu Saloranta | 4a2d8f4 | 2018-02-04 18:28:32 -0800 | [diff] [blame] | 144 | #1912: `BeanDeserializerModifier.updateBuilder()` not work to set custom |
| 145 | deserializer on a property (since 2.9.0) |
| 146 | (contributed by Deblock T) |
Tatu Saloranta | e66c0a9 | 2018-02-10 19:34:43 -0800 | [diff] [blame] | 147 | #1931: Two more `c3p0` gadgets to exploit default typing issue |
Tatu Saloranta | bc22f90 | 2018-02-12 09:28:15 -0800 | [diff] [blame] | 148 | (reported by lilei@venusgroup.com.cn) |
Tatu Saloranta | bfb2f99 | 2018-03-05 20:56:39 -0800 | [diff] [blame] | 149 | #1932: `EnumMap` cannot deserialize with type inclusion as property |
Tatu Saloranta | 9b1b35d | 2018-02-22 20:38:04 -0800 | [diff] [blame] | 150 | #1940: `Float` values with integer value beyond `int` lose precision if |
| 151 | bound to `long` |
| 152 | (reported by Aniruddha M) |
Tatu Saloranta | 18dc249 | 2018-03-01 14:28:31 -0800 | [diff] [blame] | 153 | #1941: `TypeFactory.constructFromCanonical()` throws NPE for Unparameterized |
| 154 | generic canonical strings |
| 155 | (reported by ayushgp@github) |
Tatu Saloranta | 13a7490 | 2018-03-05 19:09:54 -0800 | [diff] [blame] | 156 | #1947: `MapperFeature.AUTO_DETECT_XXX` do not work if all disabled |
| 157 | (reported by Timur S) |
Tatu Saloranta | ba35c17 | 2018-03-19 19:49:50 -0700 | [diff] [blame] | 158 | #1977: Serializing an Iterator with multiple sub-types fails after upgrading to 2.9.x |
| 159 | (reported by ssivanand@github) |
Tatu Saloranta | 277151d | 2018-03-22 15:38:42 -0700 | [diff] [blame] | 160 | #1978: Using @JsonUnwrapped annotation in builderdeserializer hangs in infinite loop |
| 161 | (reported by roeltje25@github) |
cowtowncoder | b30fa09 | 2018-01-26 16:01:20 -0800 | [diff] [blame] | 162 | |
Tatu Saloranta | affd0c7 | 2018-01-23 19:15:10 -0800 | [diff] [blame] | 163 | 2.9.4 (24-Jan-2018) |
Tatu Saloranta | eb217dd | 2017-12-12 17:34:55 -0800 | [diff] [blame] | 164 | |
cowtowncoder | c612c1e | 2018-01-23 16:07:33 -0800 | [diff] [blame] | 165 | #1382: `@JsonProperty(access=READ_ONLY)` unxepected behaviour with `Collections` |
| 166 | (reported by hexfaker@github) |
Tatu Saloranta | 2da6113 | 2018-01-15 13:19:55 -0800 | [diff] [blame] | 167 | #1673: Serialising generic value classes via Reference Types (like Optional) fails |
| 168 | to include type information |
| 169 | (reported by Pier-Luc W) |
Tatu Saloranta | 6a1152c | 2018-01-02 17:23:16 -0800 | [diff] [blame] | 170 | #1729: Integer bounds verification when calling `TokenBuffer.getIntValue()` |
| 171 | (reported by Kevin G) |
Tatu Saloranta | 5939b1a | 2018-01-17 16:37:43 -0800 | [diff] [blame] | 172 | #1853: Deserialise from Object (using Creator methods) returns field name instead of value |
| 173 | (reported by Alexander S) |
Tatu Saloranta | b40d5c4 | 2017-12-17 23:23:21 -0800 | [diff] [blame] | 174 | #1854: NPE deserializing collection with `@JsonCreator` and `ACCEPT_CASE_INSENSITIVE_PROPERTIES` |
Tatu Saloranta | 62e4132 | 2017-12-17 23:12:31 -0800 | [diff] [blame] | 175 | (reported by rue-jw@github) |
Tatu Saloranta | 6eee8f1 | 2017-12-18 21:48:41 -0800 | [diff] [blame] | 176 | #1855: Blacklist for more serialization gadgets (dbcp/tomcat, spring) |
Tatu Saloranta | 2dff214 | 2018-01-04 22:19:31 -0800 | [diff] [blame] | 177 | #1859: Issue handling unknown/unmapped Enum keys |
| 178 | (reported by remya11@github) |
Tatu Saloranta | 9a8cb97 | 2018-01-04 15:25:57 -0800 | [diff] [blame] | 179 | #1868: Class name handling for JDK unmodifiable Collection types changed |
| 180 | (reported by Rob W) |
Tatu Saloranta | 5b233ed | 2018-01-04 15:29:14 -0800 | [diff] [blame] | 181 | #1870: Remove `final` on inherited methods in `BuilderBasedDeserializer` to allow |
| 182 | overriding by subclasses |
| 183 | (requested by Ville K) |
Tatu Saloranta | 4e71662 | 2018-01-16 21:43:14 -0800 | [diff] [blame] | 184 | #1878: `@JsonBackReference` property is always ignored when deserializing since 2.9.0 |
| 185 | (reported by reda-alaoui@github) |
Tatu Saloranta | 4c448ee | 2018-01-16 22:14:40 -0800 | [diff] [blame] | 186 | #1895: Per-type config override "JsonFormat.Shape.OBJECT" for Map.Entry not working |
| 187 | (reported by mcortella@github) |
Tatu Saloranta | 90ee9f5 | 2018-01-21 21:04:02 -0800 | [diff] [blame] | 188 | #1899: Another two gadgets to exploit default typing issue in jackson-databind |
| 189 | (reported by OneSourceCat@github) |
Tatu Saloranta | eb7cf73 | 2018-01-22 19:47:04 -0800 | [diff] [blame] | 190 | #1906: Add string format specifier for error message in `PropertyValueBuffer` |
| 191 | (reported by Joe S) |
Tatu Saloranta | 1ce6a0a | 2018-01-22 18:20:50 -0800 | [diff] [blame] | 192 | #1907: Remove `getClass()` from `_valueType` argument for error reporting |
| 193 | (reported by Joe S) |
Tatu Saloranta | eb217dd | 2017-12-12 17:34:55 -0800 | [diff] [blame] | 194 | |
Tatu Saloranta | f90f8f4 | 2017-12-08 19:02:04 -0800 | [diff] [blame] | 195 | 2.9.3 (09-Dec-2017) |
Tatu Saloranta | e467b7e | 2017-10-23 20:06:49 -0700 | [diff] [blame] | 196 | |
| 197 | #1604: Nested type arguments doesn't work with polymorphic types |
Tatu Saloranta | 985a3f9 | 2017-11-01 14:40:37 -0700 | [diff] [blame] | 198 | #1794: `StackTraceElementDeserializer` not working if field visibility changed |
| 199 | (reported by dsingley@github) |
Tatu Saloranta | a43d23d | 2017-11-01 14:07:32 -0700 | [diff] [blame] | 200 | #1799: Allow creation of custom sub-types of `NullNode`, `BooleanNode`, `MissingNode` |
Tatu Saloranta | e467b7e | 2017-10-23 20:06:49 -0700 | [diff] [blame] | 201 | #1804: `ValueInstantiator.canInstantiate()` ignores `canCreateUsingArrayDelegate()` |
| 202 | (reported byb henryptung@github) |
Tatu Saloranta | 4387090 | 2017-11-01 15:39:40 -0700 | [diff] [blame] | 203 | #1807: Jackson-databind caches plain map deserializer and use it even map has `@JsonDeserializer` |
| 204 | (reported by lexas2509@github) |
Tatu Saloranta | 4e208e1 | 2017-12-03 17:13:49 -0800 | [diff] [blame] | 205 | #1823: ClassNameIdResolver doesn't handle resolve Collections$SingletonMap & Collections$SingletonSet |
| 206 | (reported by Peter J) |
Tatu Saloranta | 8d2ccf3 | 2017-12-05 21:36:09 -0800 | [diff] [blame] | 207 | #1831: `ObjectReader.readValue(JsonNode)` does not work correctly with polymorphic types, |
| 208 | value to update |
| 209 | (reported by basmastr@github) |
Tatu Saloranta | fd6854c | 2017-12-05 18:41:48 -0800 | [diff] [blame] | 210 | #1835: ValueInjector break from 2.8.x to 2.9.x |
| 211 | (repoted by kinigitbyday@github) |
Tatu Saloranta | fb2d03c | 2017-11-29 22:01:35 -0800 | [diff] [blame] | 212 | #1842: `null` String for `Exception`s deserialized as String "null" instead of `null` |
| 213 | (reported by ZeleniJure@github) |
Tatu Saloranta | 0ee3f5c | 2017-11-28 10:10:26 -0800 | [diff] [blame] | 214 | #1843: Include name of unsettable property in exception from `SetterlessProperty.set()` |
| 215 | (suggested by andreh7@github) |
Tatu Saloranta | 77fd035 | 2017-12-03 22:59:03 -0800 | [diff] [blame] | 216 | #1844: Map "deep" merge only adds new items, but not override existing values |
| 217 | (reported by alinakovalenko@github) |
Tatu Saloranta | e467b7e | 2017-10-23 20:06:49 -0700 | [diff] [blame] | 218 | |
Tatu Saloranta | b5fe1d5 | 2017-10-13 20:24:51 -0700 | [diff] [blame] | 219 | 2.9.2 (14-Oct-2017) |
Tatu Saloranta | 8d0b850 | 2017-09-18 20:48:01 -0700 | [diff] [blame] | 220 | |
Tatu Saloranta | 0635104 | 2017-09-26 15:28:25 -0700 | [diff] [blame] | 221 | (possibly) #1756: Deserialization error with custom `AnnotationIntrospector` |
| 222 | (reported by Daniel N) |
Tatu Saloranta | 4998754 | 2017-09-28 19:30:39 -0700 | [diff] [blame] | 223 | #1705: Non-generic interface method hides type resolution info from generic base class |
| 224 | (reported by Tim B) |
| 225 | NOTE: was originally reported fixed in 2.9.1 -- turns out it wasn't. |
Tatu Saloranta | dcfb0cc | 2017-09-18 21:56:07 -0700 | [diff] [blame] | 226 | #1767: Allow `DeserializationProblemHandler` to respond to primitive types |
| 227 | (reported by nhtzr@github) |
Tatu Saloranta | 8d0b850 | 2017-09-18 20:48:01 -0700 | [diff] [blame] | 228 | #1768: Improve `TypeFactory.constructFromCanonical()` to work with |
| 229 | `java.lang.reflect.Type.getTypeName()' format |
| 230 | (suggested by LuĂs C) |
Tatu Saloranta | 5ed8707 | 2017-09-21 13:07:43 -0700 | [diff] [blame] | 231 | #1771: Pass missing argument for string formatting in `ObjectMapper` |
| 232 | (reported by Nils B) |
Tatu Saloranta | b06bec8 | 2017-10-10 13:43:36 -0700 | [diff] [blame] | 233 | #1788: `StdDateFormat._parseAsISO8601()` does not parse "fractional" timezone correctly |
Tatu Saloranta | dcd40a1 | 2017-10-13 13:10:45 -0700 | [diff] [blame] | 234 | #1793: `java.lang.NullPointerException` in `ObjectArraySerializer.acceptJsonFormatVisitor()` |
| 235 | for array value with `@JsonValue` |
| 236 | (reported by Vincent D) |
Tatu Saloranta | 8d0b850 | 2017-09-18 20:48:01 -0700 | [diff] [blame] | 237 | |
Tatu Saloranta | 45d4408 | 2017-09-07 17:48:17 -0700 | [diff] [blame] | 238 | 2.9.1 (07-Sep-2017) |
Tatu Saloranta | 8761bcb | 2017-08-03 14:19:39 -0700 | [diff] [blame] | 239 | |
Tatu Saloranta | 9d2cb51 | 2017-08-05 20:50:12 -0700 | [diff] [blame] | 240 | #1725: `NPE` In `TypeFactory. constructParametricType(...)` |
| 241 | (reported by ctytgat@github) |
Tatu Saloranta | 424f56c | 2017-08-26 21:17:32 -0700 | [diff] [blame] | 242 | #1730: InvalidFormatException` for `JsonToken.VALUE_EMBEDDED_OBJECT` |
| 243 | (reported by zigzago@github) |
Tatu Saloranta | 8fda858 | 2017-08-31 14:24:45 -0700 | [diff] [blame] | 244 | #1744: StdDateFormat: add option to serialize timezone offset with a colon |
| 245 | (contributed by Bertrand R) |
Tatu Saloranta | f71ba6f | 2017-08-25 22:16:55 -0700 | [diff] [blame] | 246 | #1745: StdDateFormat: accept and truncate millis larger than 3 digits |
| 247 | (suggested by Bertrand R) |
Tatu Saloranta | 97134ae | 2017-08-25 21:53:42 -0700 | [diff] [blame] | 248 | #1749: StdDateFormat: performance improvement of '_format(..)' method |
| 249 | (contributed by Bertrand R) |
Tatu Saloranta | e54e9e0 | 2017-09-06 19:15:58 -0700 | [diff] [blame] | 250 | #1759: Reuse `Calendar` instance during parsing by `StdDateFormat` |
| 251 | (contributed by Bertrand R) |
Tatu Saloranta | 8761bcb | 2017-08-03 14:19:39 -0700 | [diff] [blame] | 252 | - Fix `DelegatingDeserializer` constructor to pass `handledType()` (and |
| 253 | not type of deserializer being delegated to!) |
Tatu Saloranta | 3ac8ccc | 2017-09-07 10:08:39 -0700 | [diff] [blame] | 254 | - Add `Automatic-Module-Name` ("com.fasterxml.jackson.databind") for JDK 9 module system |
Tatu Saloranta | 8761bcb | 2017-08-03 14:19:39 -0700 | [diff] [blame] | 255 | |
Tatu Saloranta | 06b8779 | 2017-07-29 21:11:31 -0700 | [diff] [blame] | 256 | 2.9.0 (30-Jul-2017) |
Tatu Saloranta | 9598db5 | 2016-08-24 22:14:58 -0700 | [diff] [blame] | 257 | |
Tatu Saloranta | b65bd7a | 2016-10-11 17:08:58 -0700 | [diff] [blame] | 258 | #219: SqlDateSerializer does not obey SerializationConfig.Feature.WRITE_DATES_AS_TIMESTAMPS |
| 259 | (reported by BrentDouglas@github) |
Tatu Saloranta | 2e7f74f | 2016-12-01 19:12:09 -0800 | [diff] [blame] | 260 | #265: Add descriptive exception for attempts to use `@JsonWrapped` via Creator parameter |
Tatu Saloranta | b73eb5a | 2016-11-28 23:14:55 -0800 | [diff] [blame] | 261 | #291: @JsonTypeInfo with As.EXTERNAL_PROPERTY doesn't work if external type property |
| 262 | is referenced more than once |
| 263 | (reported by Starkom@github) |
Tatu Saloranta | 9434f51 | 2016-12-09 16:31:38 -0800 | [diff] [blame] | 264 | #357: StackOverflowError with contentConverter that returns array type |
| 265 | (reported by Florian S) |
Tatu Saloranta | 0e373fa | 2017-03-25 21:03:43 -0700 | [diff] [blame] | 266 | #383: Recursive `@JsonUnwrapped` (`child` with same type) fail: "No _valueDeserializer assigned" |
| 267 | (reported by tdavis@github) |
Tatu Saloranta | 9446514 | 2017-03-07 22:15:00 -0800 | [diff] [blame] | 268 | #403: Make FAIL_ON_NULL_FOR_PRIMITIVES apply to primitive arrays and other types that wrap primitives |
| 269 | (reported by Harleen S) |
Tatu Saloranta | e1375b0 | 2016-11-18 15:48:08 -0800 | [diff] [blame] | 270 | #476: Allow "Serialize as POJO" using `@JsonFormat(shape=Shape.OBJECT)` class annotation |
Tatu Saloranta | f97a53f | 2016-10-10 22:29:18 -0700 | [diff] [blame] | 271 | #507: Support for default `@JsonView` for a class |
| 272 | (suggested by Mark W) |
Tatu Saloranta | a2bc7f6 | 2017-03-16 08:35:54 -0700 | [diff] [blame] | 273 | #687: Exception deserializing a collection @JsonIdentityInfo and a property based creator |
Tatu Saloranta | b6d330f | 2016-10-16 22:09:33 -0700 | [diff] [blame] | 274 | #865: `JsonFormat.Shape.OBJECT` ignored when class implements `Map.Entry` |
Tatu Saloranta | aa4089f | 2016-09-30 22:04:40 -0700 | [diff] [blame] | 275 | #888: Allow specifying custom exclusion comparator via `@JsonInclude`, |
| 276 | using `JsonInclude.Include.CUSTOM` |
Tatu Saloranta | 60ae600 | 2017-03-23 20:20:55 -0700 | [diff] [blame] | 277 | #994: `DeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS` only works for POJOs, Maps |
Tatu Saloranta | 71430dd | 2017-02-26 19:27:02 -0800 | [diff] [blame] | 278 | #1029: Add a way to define property name aliases |
Tatu Saloranta | d068a40 | 2016-10-05 23:21:57 -0700 | [diff] [blame] | 279 | #1035: `@JsonAnySetter` assumes key of `String`, does not consider declared type. |
| 280 | (reported by Michael F) |
Tatu Saloranta | 383ca82 | 2018-04-24 11:31:11 -0700 | [diff] [blame] | 281 | #1060: Allow use of `@JsonIgnoreProperties` for POJO-valued arrays, `Collection`s |
Tatu Saloranta | cbe4541 | 2017-04-10 12:39:21 -0700 | [diff] [blame] | 282 | #1106: Add `MapperFeature.ALLOW_COERCION_OF_SCALARS` for enabling/disabling coercions |
Tatu Saloranta | 398a5c5 | 2016-11-18 16:07:26 -0800 | [diff] [blame] | 283 | #1284: Make `StdKeySerializers` use new `JsonGenerator.writeFieldId()` for `int`/`long` keys |
Tatu Saloranta | 6e8b942 | 2016-10-05 10:42:50 -0700 | [diff] [blame] | 284 | #1320: Add `ObjectNode.put(String, BigInteger)` |
Tatu Saloranta | a0dab04 | 2016-10-05 08:18:34 -0700 | [diff] [blame] | 285 | (proposed by Jan L) |
Tatu Saloranta | f77e77d | 2016-09-30 08:41:55 -0700 | [diff] [blame] | 286 | #1341: `DeserializationFeature.FAIL_ON_MISSING_EXTERNAL_TYPE_ID_PROPERTY` |
Tatu Saloranta | 9598db5 | 2016-08-24 22:14:58 -0700 | [diff] [blame] | 287 | (contributed by Connor K) |
Tatu Saloranta | d121d96 | 2016-11-28 08:01:09 -0800 | [diff] [blame] | 288 | #1347: Extend `ObjectMapper.configOverrides()` to allow changing visibility rules |
Tatu Saloranta | c1478ac | 2016-09-29 08:17:03 -0700 | [diff] [blame] | 289 | #1356: Differentiate between input and code exceptions on deserialization |
| 290 | (suggested by Nick B) |
Tatu Saloranta | b88ce67 | 2016-09-13 23:07:54 -0700 | [diff] [blame] | 291 | #1369: Improve `@JsonCreator` detection via `AnnotationIntrospector` |
| 292 | by passing `MappingConfig` |
Tatu Saloranta | 0cce1ca | 2016-09-15 14:47:55 -0700 | [diff] [blame] | 293 | #1371: Add `MapperFeature.INFER_CREATOR_FROM_CONSTRUCTOR_PROPERTIES` to allow |
| 294 | disabling use of `@CreatorProperties` as explicit `@JsonCreator` equivalent |
Tatu Saloranta | 89662b1 | 2016-11-21 18:50:02 -0800 | [diff] [blame] | 295 | #1376: Add ability to disable JsonAnySetter/JsonAnyGetter via mixin |
| 296 | (suggested by brentryan@github) |
Tatu Saloranta | 2f8eded | 2017-01-31 21:38:33 -0800 | [diff] [blame] | 297 | #1399: Add support for `@JsonMerge` to allow "deep update" |
Tatu Saloranta | dec8570 | 2017-03-08 20:43:50 -0800 | [diff] [blame] | 298 | #1402: Use `@JsonSetter(nulls=...)` to specify handling of `null` values during deserialization |
Tatu Saloranta | b8b0e72 | 2016-10-27 22:05:29 -0700 | [diff] [blame] | 299 | #1406: `ObjectMapper.readTree()` methods do not return `null` on end-of-input |
| 300 | (reported by Fabrizio C) |
Tatu Saloranta | 1850fab | 2017-01-13 14:23:14 -0800 | [diff] [blame] | 301 | #1407: `@JsonFormat.pattern` is ignored for `java.sql.Date` valued properties |
| 302 | (reported by sangpire@github) |
Tatu Saloranta | 55050bc | 2017-05-17 20:54:34 -0700 | [diff] [blame] | 303 | #1415: Creating CollectionType for non generic collection class broken |
Tatu Saloranta | d0daf23 | 2016-11-20 23:13:33 -0800 | [diff] [blame] | 304 | #1428: Allow `@JsonValue` on a field, not just getter |
Tatu Saloranta | d0c4c90 | 2016-10-28 21:12:34 -0700 | [diff] [blame] | 305 | #1434: Explicitly pass null on invoke calls with no arguments |
| 306 | (contributed by Emiliano C) |
Tatu Saloranta | db5aea3 | 2016-11-07 19:21:06 -0800 | [diff] [blame] | 307 | #1433: `ObjectMapper.convertValue()` with null does not consider null conversions |
| 308 | (`JsonDeserializer.getNullValue()`) |
| 309 | (contributed by jdmichal@github) |
Tatu Saloranta | 715f262 | 2017-04-30 20:16:26 -0700 | [diff] [blame] | 310 | #1440: Wrong `JsonStreamContext` in `DeserializationProblemHandler` when reading |
| 311 | `TokenBuffer` content |
| 312 | (reported by Patrick G) |
Tatu Saloranta | bd36ce4 | 2016-11-07 18:31:12 -0800 | [diff] [blame] | 313 | #1444: Change `ObjectMapper.setSerializationInclusion()` to apply to content inclusion too |
Tatu Saloranta | ebeb315 | 2016-12-02 15:33:23 -0800 | [diff] [blame] | 314 | #1450: `SimpleModule.addKeyDeserializer()' should throw `IllegalArgumentException` if `null` |
| 315 | reference of `KeyDeserializer` passed |
| 316 | (suggested by PawelJagus@github) |
Tatu Saloranta | cf88e7b | 2016-11-25 16:52:47 -0800 | [diff] [blame] | 317 | #1454: Support `@JsonFormat.lenient` for `java.util.Date`, `java.util.Calendar` |
Tatu Saloranta | 48902b1 | 2017-01-07 16:43:58 -0800 | [diff] [blame] | 318 | #1474: Replace use of `Class.newInstance()` (deprecated in Java 9) with call via Constructor |
Tatu Saloranta | 3749d7c | 2017-03-27 20:45:18 -0700 | [diff] [blame] | 319 | #1480: Add support for serializing `boolean`/`Boolean` as number (0 or 1) |
| 320 | (suggested by jwilmoth@github) |
Tatu Saloranta | 3711a1c | 2017-03-29 23:02:53 -0700 | [diff] [blame] | 321 | #1520: Case insensitive enum deserialization with `MapperFeature.ACCEPT_CASE_INSENSITIVE_ENUMS` |
Tatu Saloranta | 5285e4a | 2017-02-23 11:34:04 -0800 | [diff] [blame] | 322 | (contributed by Ana-Eliza B) |
Tatu Saloranta | bffdab5 | 2017-05-01 15:53:36 -0700 | [diff] [blame] | 323 | #1522: Global `@JsonInclude(Include.NON_NULL)` for all properties with a specific type |
| 324 | (contributed by Carsten W) |
Tatu Saloranta | 32886a8 | 2017-03-06 22:15:19 -0800 | [diff] [blame] | 325 | #1544: EnumMapDeserializer assumes a pure EnumMap and does not support EnumMap derived classes |
| 326 | (reported by Lyor G) |
Tatu Saloranta | 4debd67 | 2017-03-09 14:54:45 -0800 | [diff] [blame] | 327 | #1550: Unexpected behavior with `@JsonInclude(JsonInclude.Include.NON_EMPTY)` and |
| 328 | `java.util.Date` serialization |
Tatu Saloranta | efb024e | 2017-05-02 20:07:09 -0700 | [diff] [blame] | 329 | #1551: `JsonMappingException` with polymorphic type and `JsonIdentityInfo` when basic type is abstract |
| 330 | (reported by acm073@github) |
Tatu Saloranta | 3e89294 | 2017-03-12 18:12:57 -0700 | [diff] [blame] | 331 | #1552: Map key converted to byte array is not serialized as base64 string |
| 332 | (reported by nmatt@github) |
Tatu Saloranta | fadb5f0 | 2017-03-11 18:03:34 -0800 | [diff] [blame] | 333 | #1554: Support deserialization of `Shape.OBJECT` ("as POJO") for `Map`s (and map-like types) |
Tatu Saloranta | bd645b1 | 2017-03-20 23:08:31 -0700 | [diff] [blame] | 334 | #1556: Add `ObjectMapper.updateValue()` method to update instance with given overrides |
| 335 | (suggested by syncer@github) |
Tatu Saloranta | 5136650 | 2017-07-18 21:51:46 -0700 | [diff] [blame] | 336 | #1583: Add a `DeserializationFeature.FAIL_ON_TRAILING_TOKENS` to force reading of the |
| 337 | whole input as single value |
Tatu Saloranta | 029413a | 2017-04-27 21:10:46 -0700 | [diff] [blame] | 338 | #1592: Add support for handling primitive/discrepancy problem with type refinements |
Tatu Saloranta | 534abb1 | 2017-04-24 22:25:16 -0700 | [diff] [blame] | 339 | #1605: Allow serialization of `InetAddress` as simple numeric host address |
| 340 | (requested by Jared J) |
Tatu Saloranta | 974ccdd | 2017-04-27 20:32:14 -0700 | [diff] [blame] | 341 | #1616: Extraneous type id mapping added for base type itself |
Tatu Saloranta | 581de93 | 2017-05-02 22:15:30 -0700 | [diff] [blame] | 342 | #1619: By-pass annotation introspection for array types |
Tatu Saloranta | 3d1cb22 | 2017-06-02 18:42:33 -0700 | [diff] [blame] | 343 | #1637: `ObjectReader.at()` with `JsonPointer` stops after first collection |
| 344 | (reported by Chris P) |
Tatu Saloranta | e353aa0 | 2017-06-12 19:25:09 -0700 | [diff] [blame] | 345 | #1653: Convenience overload(s) for ObjectMapper#registerSubtypes |
Tatu Saloranta | a2c667b | 2017-06-12 22:09:04 -0700 | [diff] [blame] | 346 | #1655: `@JsonAnyGetter` uses different `bean` parameter in `SimpleBeanPropertyFilter` |
| 347 | (reported by georgeflugq@github) |
Tatu Saloranta | 37b780b | 2017-06-24 20:22:33 -0700 | [diff] [blame] | 348 | #1678: Rewrite `StdDateFormat` ISO-8601 handling functionality |
Tatu Saloranta | 0385824 | 2017-06-30 13:03:51 -0700 | [diff] [blame] | 349 | #1684: Rewrite handling of type ids to let `JsonGenerator` handle (more of) details |
Tatu Saloranta | 16d3618 | 2017-07-12 15:50:43 -0700 | [diff] [blame] | 350 | #1688: Deserialization fails for `java.nio.file.Path` implementations when default typing |
| 351 | enabled |
| 352 | (reported by Christian B) |
Tatu Saloranta | 445bd44 | 2017-07-18 22:31:32 -0700 | [diff] [blame] | 353 | #1690: Prevent use of quoted number (index) for Enum deserialization via |
| 354 | `MapperFeature.ALLOW_COERCION_OF_SCALARS` |
| 355 | (requested by magdel@github) |
Tatu Saloranta | 9598db5 | 2016-08-24 22:14:58 -0700 | [diff] [blame] | 356 | |
Tatu Saloranta | 78ab9ca | 2018-06-07 22:47:05 -0700 | [diff] [blame] | 357 | 2.8.11.2 (08-Jun-2018) |
Tatu Saloranta | 18dc249 | 2018-03-01 14:28:31 -0800 | [diff] [blame] | 358 | |
| 359 | #1941: `TypeFactory.constructFromCanonical()` throws NPE for Unparameterized |
| 360 | generic canonical strings |
| 361 | (reported by ayushgp@github) |
Tatu Saloranta | 726cbf9 | 2018-06-07 22:42:20 -0700 | [diff] [blame] | 362 | #2032: CVE-2018-11307: Potential information exfiltration with default typing, serialization gadget from MyBatis |
Tatu Saloranta | 19cd7ae | 2018-06-07 22:45:52 -0700 | [diff] [blame] | 363 | (reported by Guixiong Wu) |
Tatu Saloranta | 28badf7 | 2018-06-07 22:35:42 -0700 | [diff] [blame] | 364 | #2052: CVE-2018-12022: Block polymorphic deserialization of types from Jodd-db library |
Tatu Saloranta | 19cd7ae | 2018-06-07 22:45:52 -0700 | [diff] [blame] | 365 | (reported by Guixiong Wu) |
Tatu Saloranta | 28badf7 | 2018-06-07 22:35:42 -0700 | [diff] [blame] | 366 | #2058: CVE-2018-12023: Block polymorphic deserialization of types from Oracle JDBC driver |
Tatu Saloranta | 051bd5e | 2018-05-10 18:26:07 -0700 | [diff] [blame] | 367 | (reported by Guixiong Wu) |
Tatu Saloranta | 18dc249 | 2018-03-01 14:28:31 -0800 | [diff] [blame] | 368 | |
Tatu Saloranta | 2b35879 | 2018-02-10 19:42:16 -0800 | [diff] [blame] | 369 | 2.8.11.1 (11-Feb-2018) |
Tatu Saloranta | 755e3bc | 2018-01-05 12:45:14 -0800 | [diff] [blame] | 370 | |
Tatu Saloranta | 038b471 | 2018-01-21 21:01:07 -0800 | [diff] [blame] | 371 | #1872: `NullPointerException` in `SubTypeValidator.validateSubType` when |
Tatu Saloranta | 755e3bc | 2018-01-05 12:45:14 -0800 | [diff] [blame] | 372 | validating Spring interface |
| 373 | (reported by Rob W) |
Tatu Saloranta | 038b471 | 2018-01-21 21:01:07 -0800 | [diff] [blame] | 374 | #1899: Another two gadgets to exploit default typing issue in jackson-databind |
| 375 | (reported by OneSourceCat@github) |
Tatu Saloranta | 6799f8f | 2018-02-10 19:22:01 -0800 | [diff] [blame] | 376 | #1931: Two more `c3p0` gadgets to exploit default typing issue |
Tatu Saloranta | 755e3bc | 2018-01-05 12:45:14 -0800 | [diff] [blame] | 377 | |
Tatu Saloranta | 581cc3b | 2017-12-23 18:16:16 -0800 | [diff] [blame] | 378 | 2.8.11 (24-Dec-2017) |
Tatu Saloranta | 29bdca2 | 2017-12-18 21:56:34 -0800 | [diff] [blame] | 379 | |
| 380 | #1604: Nested type arguments doesn't work with polymorphic types |
| 381 | #1680: Blacklist couple more types for deserialization |
| 382 | #1767: Allow `DeserializationProblemHandler` to respond to primitive types |
| 383 | (reported by nhtzr@github) |
| 384 | #1768: Improve `TypeFactory.constructFromCanonical()` to work with |
| 385 | `java.lang.reflect.Type.getTypeName()` format |
| 386 | #1804: `ValueInstantiator.canInstantiate()` ignores `canCreateUsingArrayDelegate()` |
| 387 | (reported by henryptung@github) |
| 388 | #1807: Jackson-databind caches plain map deserializer and use it even map has `@JsonDeserializer` |
| 389 | (reported by lexas2509@github) |
| 390 | #1855: Blacklist for more serialization gadgets (dbcp/tomcat, spring) |
| 391 | |
Tatu Saloranta | 46452bd | 2017-08-23 21:23:57 -0700 | [diff] [blame] | 392 | 2.8.10 (24-Aug-2017) |
Tatu Saloranta | 5a0ce57 | 2017-06-13 21:25:31 -0700 | [diff] [blame] | 393 | |
| 394 | #1657: `StdDateFormat` deserializes dates with no tz/offset as UTC instead of |
| 395 | configured timezone |
| 396 | (reported by Bertrand R) |
Tatu Saloranta | 9bd1829 | 2017-12-11 22:22:54 -0800 | [diff] [blame] | 397 | #1680: Blacklist couple more types for deserialization |
Tatu Saloranta | 075319d | 2017-06-16 16:14:37 -0700 | [diff] [blame] | 398 | #1658: Infinite recursion when deserializing a class extending a Map, |
| 399 | with a recursive value type |
| 400 | (reported by Kevin G) |
Tatu Saloranta | e20bcc8 | 2017-06-27 13:01:02 -0700 | [diff] [blame] | 401 | #1679: `StackOverflowError` in Dynamic `StdKeySerializer` |
Tatu Saloranta | ce7d1c9 | 2017-07-26 16:10:35 -0700 | [diff] [blame] | 402 | #1711: Delegating creator fails to work for binary data (`byte[]`) with |
| 403 | binary formats (CBOR, Smile) |
Tatu Saloranta | 6cd5be9 | 2017-08-17 13:44:18 -0700 | [diff] [blame] | 404 | #1735: Missing type checks when using polymorphic type ids |
Tatu Saloranta | 50047c2 | 2017-09-11 10:34:47 -0700 | [diff] [blame] | 405 | (reported by Lukas Euler) |
Tatu Saloranta | ddfddfb | 2017-08-17 15:12:47 -0700 | [diff] [blame] | 406 | #1737: Block more JDK types from polymorphic deserialization |
Tatu Saloranta | 5a0ce57 | 2017-06-13 21:25:31 -0700 | [diff] [blame] | 407 | |
Tatu Saloranta | 15f8efe | 2017-06-11 17:50:25 -0700 | [diff] [blame] | 408 | 2.8.9 (12-Jun-2017) |
Tatu Saloranta | 262961a | 2017-04-12 08:20:32 -0700 | [diff] [blame] | 409 | |
Tatu Saloranta | 4a2b1ae | 2017-05-04 12:48:52 -0700 | [diff] [blame] | 410 | #1595: `JsonIgnoreProperties.allowSetters` is not working in Jackson 2.8 |
| 411 | (reported by Javy L) |
Tatu Saloranta | 513ab6e | 2017-04-22 10:53:01 -0700 | [diff] [blame] | 412 | #1597: Escape JSONP breaking characters |
| 413 | (contributed by Marco C) |
Tatu Saloranta | 9a083ad | 2017-05-19 13:07:44 -0700 | [diff] [blame] | 414 | #1629: `FromStringDeserializer` ignores registered `DeserializationProblemHandler` |
| 415 | for `java.util.UUID` |
| 416 | (reported by Andrew J) |
Tatu Saloranta | e2476e0 | 2017-06-06 08:31:04 -0700 | [diff] [blame] | 417 | #1642: Support `READ_UNKNOWN_ENUM_VALUES_AS_NULL` with `@JsonCreator` |
| 418 | (contributed by Joe L) |
Tatu Saloranta | 247122f | 2017-06-08 22:46:26 -0700 | [diff] [blame] | 419 | #1647: Missing properties from base class when recursive types are involved |
| 420 | (reported by Slobodan P) |
Tatu Saloranta | 93f7e14 | 2017-06-08 22:20:50 -0700 | [diff] [blame] | 421 | #1648: `DateTimeSerializerBase` ignores configured date format when creating contextual |
| 422 | (reported by Bertrand R) |
Tatu Saloranta | 3978538 | 2017-06-10 20:48:03 -0700 | [diff] [blame] | 423 | #1651: `StdDateFormat` fails to parse 'zulu' date when TimeZone other than UTC |
| 424 | (reported by Bertrand R) |
Tatu Saloranta | 513ab6e | 2017-04-22 10:53:01 -0700 | [diff] [blame] | 425 | |
Tatu Saloranta | 04fb144 | 2017-04-19 08:29:22 -0700 | [diff] [blame] | 426 | 2.8.8.1 (19-Apr-2017) |
Tatu Saloranta | 262961a | 2017-04-12 08:20:32 -0700 | [diff] [blame] | 427 | |
| 428 | #1585: Invoke ServiceLoader.load() inside of a privileged block when loading |
| 429 | modules using `ObjectMapper.findModules()` |
| 430 | (contributed by Ivo S) |
Tatu Saloranta | 6ce32ff | 2017-04-13 15:08:10 -0700 | [diff] [blame] | 431 | #1599: Jackson Deserializer security vulnerability |
| 432 | (reported by ayound@github) |
Tatu Saloranta | ec859af | 2017-04-18 12:46:33 -0700 | [diff] [blame] | 433 | #1607: @JsonIdentityReference not used when setup on class only |
| 434 | (reported by vboulaye@github) |
Tatu Saloranta | 262961a | 2017-04-12 08:20:32 -0700 | [diff] [blame] | 435 | |
Tatu Saloranta | 13ce5ed | 2017-04-04 20:25:56 -0700 | [diff] [blame] | 436 | 2.8.8 (05-Apr-2017) |
Tatu Saloranta | 5bd7605 | 2017-02-23 10:07:56 -0800 | [diff] [blame] | 437 | |
Tatu Saloranta | 23d49e3 | 2017-03-23 19:12:17 -0700 | [diff] [blame] | 438 | (partial) #994: `DeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS` only works for POJOs, Maps |
Tatu Saloranta | 04c33a5 | 2017-03-30 16:58:23 -0700 | [diff] [blame] | 439 | #1345: `@JsonProperty(access = READ_ONLY)` together with generated constructor (Lombok) causes |
| 440 | exception: "Could not find creator property with name ..." |
| 441 | (reported by Raniz85@github) |
Tatu Saloranta | 5bd7605 | 2017-02-23 10:07:56 -0800 | [diff] [blame] | 442 | #1533: `AsPropertyTypeDeserializer` ignores `DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT` |
Tatu Saloranta | ce11473 | 2017-03-07 19:52:29 -0800 | [diff] [blame] | 443 | #1543: JsonFormat.Shape.NUMBER_INT does not work when defined on enum type in 2.8 |
| 444 | (reported by Alex P) |
Tatu Saloranta | 934f485 | 2017-03-25 17:33:25 -0700 | [diff] [blame] | 445 | #1570: `Enum` key for `Map` ignores `SerializationFeature.WRITE_ENUMS_USING_INDEX` |
| 446 | (reported by SolaKun@github) |
Tatu Saloranta | 9919f9d | 2017-03-27 22:09:46 -0700 | [diff] [blame] | 447 | #1573: Missing properties when deserializing using a builder class with a non-default |
| 448 | constructor and a mutator annotated with `@JsonUnwrapped` |
| 449 | (reported by Joshua J) |
Tatu Saloranta | 8de9cef | 2017-03-25 11:37:12 -0700 | [diff] [blame] | 450 | #1575: Problem with `@JsonIgnoreProperties` on recursive property (regression in 2.8) |
| 451 | (reported by anujkumar04@github) |
Tatu Saloranta | 0ee6a6d | 2017-02-28 15:59:32 -0800 | [diff] [blame] | 452 | - Minor fix to creation of `PropertyMetadata`, had one path that could lead to NPE |
Tatu Saloranta | 5bd7605 | 2017-02-23 10:07:56 -0800 | [diff] [blame] | 453 | |
Tatu Saloranta | df7e794 | 2017-02-20 16:57:01 -0800 | [diff] [blame] | 454 | 2.8.7 (21-Feb-2017) |
Tatu Saloranta | 9972618 | 2017-01-16 22:34:14 -0800 | [diff] [blame] | 455 | |
Tatu Saloranta | 4d34006 | 2017-01-26 19:12:29 -0800 | [diff] [blame] | 456 | #935: `@JsonProperty(access = Access.READ_ONLY)` - unexpected behaviour |
Tatu Saloranta | 9972618 | 2017-01-16 22:34:14 -0800 | [diff] [blame] | 457 | #1317: '@JsonIgnore' annotation not working with creator properties, serialization |
| 458 | |
Tatu Saloranta | f18a260 | 2017-01-11 20:38:00 -0800 | [diff] [blame] | 459 | 2.8.6 (12-Jan-2017) |
Tatu Saloranta | 88b2086 | 2016-11-15 16:23:47 -0800 | [diff] [blame] | 460 | |
Tatu Saloranta | d338aa5 | 2016-11-29 20:18:36 -0800 | [diff] [blame] | 461 | #349: @JsonAnySetter with @JsonUnwrapped: deserialization fails with arrays |
| 462 | (reported by hdave@github) |
Tatu Saloranta | f609683 | 2016-11-29 15:04:42 -0800 | [diff] [blame] | 463 | #1388: `@JsonIdentityInfo`: id has to be the first key in deserialization when |
| 464 | deserializing with `@JsonCreator` |
| 465 | (reported by moodysalem@github) |
Tatu Saloranta | fa6f247 | 2016-11-25 18:43:10 -0800 | [diff] [blame] | 466 | #1425: `JsonNode.binaryValue()` ignores illegal character if it's the last one |
| 467 | (reported by binoternary@github) |
Tatu Saloranta | 88b2086 | 2016-11-15 16:23:47 -0800 | [diff] [blame] | 468 | #1453: `UntypedObjectDeserializer` does not retain `float` type (over `double`) |
Tatu Saloranta | ab9fcac | 2016-11-16 21:51:14 -0800 | [diff] [blame] | 469 | #1456: `TypeFactory` type resolution broken in 2.7 for generic types |
| 470 | when using `constructType` with context |
Tatu Saloranta | 522f2ba | 2016-12-12 20:49:09 -0800 | [diff] [blame] | 471 | #1473: Add explicit deserializer for `StringBuilder` due to Java 9 changes |
Tatu Saloranta | d7155de | 2017-01-09 21:38:36 -0800 | [diff] [blame] | 472 | #1493: `ACCEPT_CASE_INSENSITIVE_PROPERTIES` fails with `@JsonUnwrapped` |
Tatu Saloranta | 88b2086 | 2016-11-15 16:23:47 -0800 | [diff] [blame] | 473 | |
Tatu Saloranta | 91fca55 | 2016-11-13 22:08:30 -0800 | [diff] [blame] | 474 | 2.8.5 (14-Nov-2016) |
Tatu Saloranta | ea30c7b | 2016-10-16 10:54:38 -0700 | [diff] [blame] | 475 | |
| 476 | #1417: Further issues with `@JsonInclude` with `NON_DEFAULT` |
Tatu Saloranta | d0cfb64 | 2016-11-11 19:28:53 -0800 | [diff] [blame] | 477 | #1421: ACCEPT_SINGLE_VALUE_AS_ARRAY partially broken in 2.7.x, 2.8.x |
Tatu Saloranta | 9a66688 | 2016-10-24 17:03:01 -0700 | [diff] [blame] | 478 | #1429: `StdKeyDeserializer` can erroneously use a static factory method |
| 479 | with more than one argument |
Tatu Saloranta | 494ebce | 2016-10-27 19:45:10 -0700 | [diff] [blame] | 480 | #1432: Off by 1 bug in PropertyValueBuffer |
| 481 | (reported by Kevin D) |
Tatu Saloranta | 2dbd816 | 2016-11-13 18:05:33 -0800 | [diff] [blame] | 482 | #1438: `ACCEPT_CASE_INSENSITIVE_PROPERTIES` is not respected for creator properties |
| 483 | (reported by Jayson M) |
Tatu Saloranta | 31ceee7 | 2016-11-01 20:54:35 -0700 | [diff] [blame] | 484 | #1439: NPE when using with filter id, serializing `java.util.Map` types |
Tatu Saloranta | cd5430a | 2016-11-02 22:17:18 -0700 | [diff] [blame] | 485 | #1441: Failure with custom Enum key deserializer, polymorphic types |
| 486 | (reported by Nathanial O) |
Tatu Saloranta | d906a34 | 2016-11-09 20:39:22 -0800 | [diff] [blame] | 487 | #1445: Map key deserializerModifiers ignored |
| 488 | (reported by alfonsobonso@github) |
Tatu Saloranta | 6362e24 | 2016-10-16 22:59:16 -0700 | [diff] [blame] | 489 | - Improvements to #1411 fix to ensure consistent `null` key handling |
Tatu Saloranta | ea30c7b | 2016-10-16 10:54:38 -0700 | [diff] [blame] | 490 | |
Tatu Saloranta | a9ba94c | 2016-10-13 20:50:04 -0700 | [diff] [blame] | 491 | 2.8.4 (14-Oct-2016) |
Tatu Saloranta | e59194a | 2016-09-25 23:10:58 -0700 | [diff] [blame] | 492 | |
Tatu Saloranta | a1a8793 | 2016-10-04 17:17:43 -0700 | [diff] [blame] | 493 | #466: Jackson ignores Type information when raw return type is BigDecimal or BigInteger |
Tatu Saloranta | d7d13a2 | 2016-10-04 17:23:09 -0700 | [diff] [blame] | 494 | #1001: Parameter names module gets confused with delegate creator which is a static method |
Tatu Saloranta | 0511894 | 2016-10-13 20:31:37 -0700 | [diff] [blame] | 495 | #1324: Boolean parsing with `StdDeserializer` is too slow with huge integer value |
| 496 | (reported by pavankumar-parankusam@github) |
Tatu Saloranta | d7d13a2 | 2016-10-04 17:23:09 -0700 | [diff] [blame] | 497 | #1383: Problem with `@JsonCreator` with 1-arg factory-method, implicit param names |
Tatu Saloranta | e59194a | 2016-09-25 23:10:58 -0700 | [diff] [blame] | 498 | #1384: `@JsonDeserialize(keyUsing = ...)` does not work correctly together with |
| 499 | DefaultTyping.NON_FINAL |
| 500 | (reported by Oleg Z) |
Tatu Saloranta | be114a9 | 2016-09-28 15:49:01 -0700 | [diff] [blame] | 501 | #1385: Polymorphic type lost when using `@JsonValue` |
| 502 | (reported by TomMarkuske@github) |
Tatu Saloranta | 8a5b111 | 2016-09-27 20:30:09 -0700 | [diff] [blame] | 503 | #1389 Problem with handling of multi-argument creator with Enums |
| 504 | (fix contributed by Pavel P) |
Tatu Saloranta | 4e94c0e | 2016-10-04 16:07:13 -0700 | [diff] [blame] | 505 | #1392: Custom UnmodifiableSetMixin Fails in Jackson 2.7+ but works in Jackson 2.6 |
| 506 | (reported by Rob W) |
Tatu Saloranta | 82c346a | 2016-10-03 19:37:23 -0700 | [diff] [blame] | 507 | #1395: Problems deserializing primitive `long` field while using `TypeResolverBuilder` |
| 508 | (reported by UghZan3@github) |
Tatu Saloranta | ab4f17f | 2016-10-06 19:27:32 -0700 | [diff] [blame] | 509 | #1403: Reference-chain hints use incorrect class-name for inner classes |
| 510 | (reported by Josh G) |
Tatu Saloranta | a1d0251 | 2016-10-12 23:02:32 -0700 | [diff] [blame] | 511 | #1411: MapSerializer._orderEntries should check for null keys |
| 512 | (reported by Jörn H) |
Tatu Saloranta | e59194a | 2016-09-25 23:10:58 -0700 | [diff] [blame] | 513 | |
Tatu Saloranta | 89366fe | 2016-09-17 18:26:25 -0700 | [diff] [blame] | 514 | 2.8.3 (17-Sep-2016) |
Tatu Saloranta | 1ca7576 | 2016-08-30 23:36:37 -0700 | [diff] [blame] | 515 | |
Tatu Saloranta | 75098b7 | 2016-09-08 20:37:41 -0700 | [diff] [blame] | 516 | #1351: `@JsonInclude(NON_DEFAULT)` doesn't omit null fields |
| 517 | (reported by Gili T) |
Tatu Saloranta | 1ca7576 | 2016-08-30 23:36:37 -0700 | [diff] [blame] | 518 | #1353: Improve error-handling for `java.net.URL` deserialization |
Tatu Saloranta | 8fa9cb7 | 2016-09-01 17:39:07 -0700 | [diff] [blame] | 519 | #1361: Change `TokenBuffer` to use new `writeEmbeddedObject()` if possible |
Tatu Saloranta | 1ca7576 | 2016-08-30 23:36:37 -0700 | [diff] [blame] | 520 | |
Tatu Saloranta | 650a3ca | 2016-08-29 17:42:03 -0700 | [diff] [blame] | 521 | 2.8.2 (30-Aug-2016) |
Tatu Saloranta | 20a1b7c | 2016-08-13 09:47:31 -0700 | [diff] [blame] | 522 | |
Tatu Saloranta | d4a2092 | 2016-08-21 21:16:02 -0700 | [diff] [blame] | 523 | #1315: Binding numeric values can BigDecimal lose precision |
| 524 | (reported by Andrew S) |
| 525 | #1327: Class level `@JsonInclude(JsonInclude.Include.NON_EMPTY)` is ignored |
| 526 | (reported by elruwen@github) |
Tatu Saloranta | 20a1b7c | 2016-08-13 09:47:31 -0700 | [diff] [blame] | 527 | #1335: Unconditionally call `TypeIdResolver.getDescForKnownTypeIds` |
| 528 | (contributed by Chris J-Y) |
| 529 | |
Tatu Saloranta | 45565cd | 2016-07-19 16:20:48 -0700 | [diff] [blame] | 530 | 2.8.1 (20-Jul-2016) |
Tatu Saloranta | c4ecc55 | 2016-07-11 18:35:35 -0700 | [diff] [blame] | 531 | |
Tatu Saloranta | f7e476e | 2016-07-12 22:37:47 -0700 | [diff] [blame] | 532 | #1256: `Optional.empty()` not excluded if property declared with type `Object` |
Tatu Saloranta | c4ecc55 | 2016-07-11 18:35:35 -0700 | [diff] [blame] | 533 | #1288: Type id not exposed for `JsonTypeInfo.As.EXTERNAL_PROPERTY` even when `visible` set to `true` |
| 534 | (reported by libetl@github) |
| 535 | #1289: Optimize construction of `ArrayList`, `LinkedHashMap` instances |
Tatu Saloranta | b3f623f | 2016-07-13 19:36:07 -0700 | [diff] [blame] | 536 | #1291: Backward-incompatible behaviour of 2.8: deserializing enum types |
| 537 | with two static factory methods fail by default |
Tatu Saloranta | db0eadb | 2016-07-14 19:16:02 -0700 | [diff] [blame] | 538 | #1297: Deserialization of generic type with Map.class |
| 539 | (reported by Arek G) |
Tatu Saloranta | 11b1323 | 2016-07-16 16:57:34 -0700 | [diff] [blame] | 540 | #1302: NPE for `ResolvedRecursiveType` in 2.8.0 due to caching |
Tatu Saloranta | c4ecc55 | 2016-07-11 18:35:35 -0700 | [diff] [blame] | 541 | |
Tatu Saloranta | 0d12389 | 2016-07-03 22:40:57 -0700 | [diff] [blame] | 542 | 2.8.0 (04-Jul-2016) |
Tatu Saloranta | 575cf32 | 2016-02-22 20:22:26 -0800 | [diff] [blame] | 543 | |
Tatu Saloranta | 8e8d2e5 | 2016-04-21 22:16:28 -0700 | [diff] [blame] | 544 | #621: Allow definition of "ignorable types" without annotation (using |
| 545 | `Mapper.configOverride(type).setIsIgnoredType(true)` |
Tatu Saloranta | 82404c4 | 2016-06-01 21:26:17 -0700 | [diff] [blame] | 546 | #867: Support `SerializationFeature.WRITE_EMPTY_JSON_ARRAYS ` for `JsonNode` |
Tatu Saloranta | 6ed7caa | 2016-05-03 23:03:34 -0700 | [diff] [blame] | 547 | #903: Add `JsonGenerator` reference to `SerializerProvider` |
Tatu Saloranta | 8ed7127 | 2016-05-03 19:45:32 -0700 | [diff] [blame] | 548 | #931: Add new method in `Deserializers.Base` to support `ReferenceType` |
Tatu Saloranta | 1c263f7 | 2016-06-01 21:09:56 -0700 | [diff] [blame] | 549 | #960: `@JsonCreator` not working on a factory with no arguments for an enum type |
Tatu Saloranta | 77b11b1 | 2016-05-05 11:52:17 -0700 | [diff] [blame] | 550 | (reported by Artur J) |
Tatu Saloranta | 4d99b8a | 2016-04-14 17:31:29 -0700 | [diff] [blame] | 551 | #990: Allow failing on `null` values for creator (add |
| 552 | `DeserializationFeature.FAIL_ON_NULL_CREATOR_PROPERTIES`) |
| 553 | (contributed by mkokho@github) |
Tatu Saloranta | ab8a20f | 2016-06-21 22:58:47 -0700 | [diff] [blame] | 554 | #999: External property is not deserialized |
| 555 | (reported by Aleksandr O) |
Tatu Saloranta | 1ecc6b5 | 2016-05-10 22:18:53 -0700 | [diff] [blame] | 556 | #1017: Add new mapping exception type ('InvalidTypeIdException') for subtype resolution errors |
| 557 | (suggested by natnan@github) |
Tatu Saloranta | c809c0c | 2016-05-20 15:11:49 -0700 | [diff] [blame] | 558 | #1028: Ignore USE_BIG_DECIMAL_FOR_FLOATS for NaN/Infinity |
| 559 | (reported by Vladimir K, lightoze@github) |
Tatu Saloranta | 1c263f7 | 2016-06-01 21:09:56 -0700 | [diff] [blame] | 560 | #1047: Allow use of `@JsonAnySetter` on a Map-valued field, no need for setter |
Tatu Saloranta | f68be3c | 2016-04-21 12:51:57 -0700 | [diff] [blame] | 561 | #1082: Can not use static Creator factory methods for `Enum`s, with JsonCreator.Mode.PROPERTIES |
| 562 | (contributed by Lokesh K) |
Tatu Saloranta | 596c6dd | 2016-03-20 18:24:04 -0700 | [diff] [blame] | 563 | #1084: Change `TypeDeserializerBase` to take `JavaType` for `defaultImpl`, NOT `Class` |
Tatu Saloranta | 1b890dc | 2016-02-22 22:30:57 -0800 | [diff] [blame] | 564 | #1126: Allow deserialization of unknown Enums using a predefined value |
| 565 | (contributed by Alejandro R) |
Tatu Saloranta | 575cf32 | 2016-02-22 20:22:26 -0800 | [diff] [blame] | 566 | #1136: Implement `TokenBuffer.writeEmbeddedObject(Object)` |
| 567 | (suggested by Gregoire C, gcxRun@github) |
Tatu Saloranta | 5a7a53a | 2016-04-03 16:43:50 -0700 | [diff] [blame] | 568 | #1165: CoreXMLDeserializers does not handle time-only XMLGregorianCalendars |
| 569 | (reported, contributed fix by Ross G) |
Tatu Saloranta | b29965b | 2016-04-21 12:36:00 -0700 | [diff] [blame] | 570 | #1181: Add the ability to specify the initial capacity of the ArrayNode |
Tatu Saloranta | f36c54e | 2016-04-21 11:04:46 -0700 | [diff] [blame] | 571 | (suggested by Matt V, mveitas@github) |
Tatu Saloranta | 073fc19 | 2016-05-20 13:46:08 -0700 | [diff] [blame] | 572 | #1184: Allow overriding of `transient` with explicit inclusion with `@JsonProperty` |
| 573 | (suggested by Maarten B) |
Tatu Saloranta | aca1b9a | 2016-04-12 21:45:40 -0700 | [diff] [blame] | 574 | #1187: Refactor `AtomicReferenceDeserializer` into `ReferenceTypeDeserializer` |
Tatu Saloranta | e20b3fa | 2016-05-03 23:16:22 -0700 | [diff] [blame] | 575 | #1204: Add a convenience accessor `JavaType.hasContentType()` (true for container or reference type) |
Tatu Saloranta | fad7638 | 2016-05-05 22:44:34 -0700 | [diff] [blame] | 576 | #1206: Add "anchor type" member for `ReferenceType` |
Tatu Saloranta | e9df815 | 2016-04-21 12:28:28 -0700 | [diff] [blame] | 577 | #1211: Change `JsonValueSerializer` to get `AnnotatedMethod`, not "raw" method |
Tatu Saloranta | c9021f7 | 2016-05-01 22:28:11 -0700 | [diff] [blame] | 578 | #1217: `@JsonIgnoreProperties` on Pojo fields not working for deserialization |
| 579 | (reported by Lokesh K) |
Tatu Saloranta | e1b2626 | 2016-05-03 19:34:57 -0700 | [diff] [blame] | 580 | #1221: Use `Throwable.addSuppressed()` directly and/or via try-with-resources |
Tatu Saloranta | e75731b | 2016-05-16 23:07:23 -0700 | [diff] [blame] | 581 | #1232: Add support for `JsonFormat.Feature.ACCEPT_CASE_INSENSITIVE_PROPERTIES` |
Tatu Saloranta | 1c263f7 | 2016-06-01 21:09:56 -0700 | [diff] [blame] | 582 | #1233: Add support for `JsonFormat.Feature.WRITE_SORTED_MAP_ENTRIES` |
Tatu Saloranta | d01e3ab | 2016-05-19 09:31:38 -0700 | [diff] [blame] | 583 | #1235: `java.nio.file.Path` support incomplete |
| 584 | (reported by, fix contributed by Benson M) |
Tatu Saloranta | 567d6c0 | 2016-06-14 22:14:57 -0700 | [diff] [blame] | 585 | #1261: JsonIdentityInfo broken deserialization involving forward references and/or cycles |
| 586 | (reported by, fix contributed by Ari F) |
Tatu Saloranta | 36631a9 | 2016-06-19 22:49:28 -0700 | [diff] [blame] | 587 | #1270: Generic type returned from type id resolver seems to be ignored |
| 588 | (reported by Benson M) |
Tatu Saloranta | cdc404d | 2016-06-30 23:31:48 -0700 | [diff] [blame] | 589 | #1277: Add caching of resolved generic types for `TypeFactory` |
| 590 | (requested by Andriy P) |
Tatu Saloranta | 575cf32 | 2016-02-22 20:22:26 -0800 | [diff] [blame] | 591 | |
Tatu Saloranta | 752bb8a | 2017-06-02 19:20:22 -0700 | [diff] [blame] | 592 | 2.7.10 (not yet released) |
| 593 | |
| 594 | #1628: Don't print to error stream about failure to load JDK 7 types |
| 595 | (reported by Villane@github) |
Tatu Saloranta | 6b9782b | 2017-04-07 20:02:59 -0700 | [diff] [blame] | 596 | |
Tatu Saloranta | fbc7670 | 2017-02-04 11:19:12 -0800 | [diff] [blame] | 597 | 2.7.9 (04-Feb-2017) |
Tatu Saloranta | ab9fcac | 2016-11-16 21:51:14 -0800 | [diff] [blame] | 598 | |
Tatu Saloranta | 04cb1a2 | 2017-02-04 10:52:58 -0800 | [diff] [blame] | 599 | #1367: No Object Id found for an instance when using `@ConstructorProperties` |
Tatu Saloranta | 32001a6 | 2017-04-07 20:04:33 -0700 | [diff] [blame] | 600 | #1505: @JsonEnumDefaultValue should take precedence over FAIL_ON_NUMBERS_FOR_ENUMS |
| 601 | (suggested by Stephan S) |
Tatu Saloranta | 23a7332 | 2017-01-24 18:58:19 -0800 | [diff] [blame] | 602 | #1506: Missing `KeyDeserializer` for `CharSequence` |
Tatu Saloranta | 32001a6 | 2017-04-07 20:04:33 -0700 | [diff] [blame] | 603 | #1513: `MapSerializer._orderEntries()` throws NPE when operating on `ConcurrentHashMap` |
| 604 | (reported by Sovietaced@github) |
| 605 | - Simplified processing of class annotations (for `AnnotatedClass`) to try to |
| 606 | solve rare concurrency problems with "root name" annotations. |
Tatu Saloranta | 4e94c0e | 2016-10-04 16:07:13 -0700 | [diff] [blame] | 607 | |
Tatu Saloranta | d091229 | 2016-09-26 07:48:54 -0700 | [diff] [blame] | 608 | 2.7.8 (26-Sep-2016) |
Tatu Saloranta | 1d930db | 2016-08-31 20:19:36 -0700 | [diff] [blame] | 609 | |
Tatu Saloranta | b2ccdee | 2016-09-07 21:11:38 -0700 | [diff] [blame] | 610 | #877: @JsonIgnoreProperties`: ignoring the "cause" property of `Throwable` on GAE |
Tatu Saloranta | 1d930db | 2016-08-31 20:19:36 -0700 | [diff] [blame] | 611 | #1359: Improve `JsonNode` deserializer to create `FloatNode` if parser supports |
Tatu Saloranta | bbd8190 | 2016-09-01 18:36:27 -0700 | [diff] [blame] | 612 | #1362: ObjectReader.readValues()` ignores offset and length when reading an array |
| 613 | (reported by wastevenson@github) |
Tatu Saloranta | ec327bd | 2016-09-14 22:28:59 -0700 | [diff] [blame] | 614 | #1363: The static field ClassUtil.sCached can cause a class loader leak |
| 615 | (reported by Stuart D) |
Tatu Saloranta | 1904839 | 2016-09-12 22:50:00 -0700 | [diff] [blame] | 616 | #1368: Problem serializing `JsonMappingException` due to addition of non-ignored |
| 617 | `processor` property (added in 2.7) |
| 618 | (reported, suggesed fix by Josh C) |
Tatu Saloranta | bcd616d | 2016-09-23 21:26:37 -0700 | [diff] [blame] | 619 | #1383: Problem with `@JsonCreator` with 1-arg factory-method, implicit param names |
Tatu Saloranta | 1d930db | 2016-08-31 20:19:36 -0700 | [diff] [blame] | 620 | |
Tatu Saloranta | 507ed93 | 2016-08-26 14:51:42 -0700 | [diff] [blame] | 621 | 2.7.7 (27-Aug-2016) |
Tatu Saloranta | 2936ba5 | 2016-08-15 22:19:04 -0700 | [diff] [blame] | 622 | |
| 623 | #1322: EnumMap keys not using enum's `@JsonProperty` values unlike Enum values |
| 624 | (reported by MichaelChambers@github) |
Tatu Saloranta | 0aa6486 | 2016-08-15 22:29:32 -0700 | [diff] [blame] | 625 | #1332: Fixed ArrayIndexOutOfBoundException for enum by index deser |
| 626 | (reported by Max D) |
Tatu Saloranta | 07b6d66 | 2016-08-24 21:34:28 -0700 | [diff] [blame] | 627 | #1344: Deserializing locale assumes JDK separator (underscore), does not |
| 628 | accept RFC specified (hyphen) |
| 629 | (reported by Jim M) |
Tatu Saloranta | 2936ba5 | 2016-08-15 22:19:04 -0700 | [diff] [blame] | 630 | |
Tatu Saloranta | 174c78f | 2016-07-22 19:33:45 -0700 | [diff] [blame] | 631 | 2.7.6 (23-Jul-2016) |
Tatu Saloranta | 4929735 | 2016-06-28 15:44:37 -0700 | [diff] [blame] | 632 | |
Tatu Saloranta | 75a0953 | 2016-06-29 21:43:40 -0700 | [diff] [blame] | 633 | #1215: Problem with type specialization for Maps with `@JsonDeserialize(as=subtype)` |
| 634 | (reported by brentryan@github) |
Tatu Saloranta | 4929735 | 2016-06-28 15:44:37 -0700 | [diff] [blame] | 635 | #1279: Ensure DOM parsing defaults to not expanding external entities |
Tatu Saloranta | f6fbed5 | 2016-07-11 18:57:19 -0700 | [diff] [blame] | 636 | #1288: Type id not exposed for `JsonTypeInfo.As.EXTERNAL_PROPERTY` even when `visible` set to `true` |
Tatu Saloranta | a73a89c | 2016-07-21 20:25:53 -0700 | [diff] [blame] | 637 | #1299: Timestamp deserialization error |
| 638 | (reported by liyuj@github) |
Tatu Saloranta | c62d8c7 | 2016-07-17 17:31:17 -0700 | [diff] [blame] | 639 | #1301: Problem with `JavaType.toString()` for recursive (self-referential) types |
| 640 | (reported by Brian P) |
Tatu Saloranta | 24166ac | 2016-07-21 20:00:56 -0700 | [diff] [blame] | 641 | #1307: `TypeWrappedDeserializer` doesn't delegate the `getNullValue()` method to `_deserializer` |
| 642 | (reported by vfries@github) |
Tatu Saloranta | 4929735 | 2016-06-28 15:44:37 -0700 | [diff] [blame] | 643 | |
Tatu Saloranta | 0ccf255 | 2016-06-10 19:11:30 -0700 | [diff] [blame] | 644 | 2.7.5 (11-Jun-2016) |
Tatu Saloranta | b65b3cb | 2016-05-10 20:39:13 -0700 | [diff] [blame] | 645 | |
Tatu Saloranta | cc53828 | 2016-05-24 22:55:11 -0700 | [diff] [blame] | 646 | #1098: DeserializationFeature.FAIL_ON_INVALID_SUBTYPE does not work with |
| 647 | `JsonTypeInfo.Id.CLASS` |
| 648 | (reported by szaccaria@github) |
Tatu Saloranta | fe32b96 | 2016-05-24 22:15:03 -0700 | [diff] [blame] | 649 | #1223: `BasicClassIntrospector.forSerialization(...).findProperties` should |
| 650 | respect MapperFeature.AUTO_DETECT_GETTERS/SETTERS? |
| 651 | (reported by William H) |
Tatu Saloranta | b65b3cb | 2016-05-10 20:39:13 -0700 | [diff] [blame] | 652 | #1225: `JsonMappingException` should override getProcessor() |
| 653 | (reported by Nick B) |
Tatu Saloranta | 28ec8a4 | 2017-04-13 11:00:31 -0700 | [diff] [blame] | 654 | |
Tatu Saloranta | fa87c1d | 2017-07-10 21:05:36 -0700 | [diff] [blame] | 655 | 2.6.7.1 (11-Jul-2017) |
Tatu Saloranta | 6d5887d | 2016-09-23 21:25:33 -0700 | [diff] [blame] | 656 | |
| 657 | #1383: Problem with `@JsonCreator` with 1-arg factory-method, implicit param names |
Tatu Saloranta | fa87c1d | 2017-07-10 21:05:36 -0700 | [diff] [blame] | 658 | #1599: Backport the extra safety checks for polymorphic deserialization |
Tatu Saloranta | 6d5887d | 2016-09-23 21:25:33 -0700 | [diff] [blame] | 659 | |
Tatu Saloranta | 5620111 | 2016-06-05 14:05:25 -0700 | [diff] [blame] | 660 | 2.6.7 (05-Jun-2016) |
Tatu Saloranta | cb67177 | 2016-04-11 21:01:14 -0700 | [diff] [blame] | 661 | |
| 662 | #1194: Incorrect signature for generic type via `JavaType.getGenericSignature |
Tatu Saloranta | 27d83ee | 2016-05-12 19:47:06 -0700 | [diff] [blame] | 663 | #1228: @JsonAnySetter does not deserialize null to Deserializer's NullValue |
| 664 | (contributed by Eric S) |
Tatu Saloranta | ebadfd2 | 2016-05-19 15:36:04 -0700 | [diff] [blame] | 665 | #1231: `@JsonSerialize(as=superType)` behavior disallowed in 2.7.4 |
| 666 | (reported by Mark W) |
Tatu Saloranta | 67813ca | 2016-05-22 18:44:53 -0700 | [diff] [blame] | 667 | #1248: `Annotated` returns raw type in place of Generic Type in 2.7.x |
| 668 | (reported by Andrew J, apjoseph@github) |
Tatu Saloranta | 8daddc0 | 2016-05-27 12:19:57 -0700 | [diff] [blame] | 669 | #1253: Problem with context handling for `TokenBuffer`, field name |
Tatu Saloranta | 7bc0fc4 | 2016-06-06 08:33:25 -0700 | [diff] [blame] | 670 | #1260: `NullPointerException` in `JsonNodeDeserializer` |
| 671 | (reported by Eric S) |
Tatu Saloranta | b65b3cb | 2016-05-10 20:39:13 -0700 | [diff] [blame] | 672 | |
Tatu Saloranta | 6e50c7b | 2016-04-29 08:43:55 -0700 | [diff] [blame] | 673 | 2.7.4 (29-Apr-2016) |
Tatu Saloranta | aca1b9a | 2016-04-12 21:45:40 -0700 | [diff] [blame] | 674 | |
Tatu Saloranta | 7dd671d | 2016-04-19 23:21:00 -0700 | [diff] [blame] | 675 | #1122: Jackson 2.7 and Lombok: 'Conflicting/ambiguous property name definitions' |
Tatu Saloranta | 157650a | 2016-04-03 21:33:22 -0700 | [diff] [blame] | 676 | #1178: `@JsonSerialize(contentAs=superType)` behavior disallowed in 2.7 |
Tatu Saloranta | 9e2f76e | 2016-04-14 11:07:13 -0700 | [diff] [blame] | 677 | #1186: SimpleAbstractTypeResolver breaks generic parameters |
| 678 | (reported by tobiash@github) |
Tatu Saloranta | a4ae368 | 2016-04-12 19:53:27 -0700 | [diff] [blame] | 679 | #1189: Converter called twice results in ClassCastException |
| 680 | (reported by carrino@github) |
Tatu Saloranta | c732f82 | 2016-04-11 22:19:15 -0700 | [diff] [blame] | 681 | #1191: Non-matching quotes used in error message for date parsing |
Tatu Saloranta | cb67177 | 2016-04-11 21:01:14 -0700 | [diff] [blame] | 682 | #1194: Incorrect signature for generic type via `JavaType.getGenericSignature |
Tatu Saloranta | eae6759 | 2016-04-14 15:14:49 -0700 | [diff] [blame] | 683 | #1195: `JsonMappingException` not Serializable due to 2.7 reference to source (parser) |
| 684 | (reported by mjustin@github) |
Tatu Saloranta | 7dd671d | 2016-04-19 23:21:00 -0700 | [diff] [blame] | 685 | #1197: `SNAKE_CASE` doesn't work when using Lombok's `@AllArgsConstructor` |
Tatu Saloranta | f2bb0df | 2016-04-14 10:46:32 -0700 | [diff] [blame] | 686 | #1198: Problem with `@JsonTypeInfo.As.EXTERNAL_PROPERTY`, `defaultImpl`, missing type id, NPE |
Tatu Saloranta | b254aff | 2016-04-17 20:47:48 -0700 | [diff] [blame] | 687 | #1203: `@JsonTypeInfo` does not work correctly for ReferenceTypes like `AtomicReference` |
Tatu Saloranta | f40e6c1 | 2016-04-20 22:07:40 -0700 | [diff] [blame] | 688 | #1208: treeToValue doesn't handle POJONodes that contain exactly the requested value type |
| 689 | (reported by Tom M) |
Tatu Saloranta | 08c4453 | 2016-03-22 21:24:31 -0700 | [diff] [blame] | 690 | - Improve handling of custom content (de)serializers for `AtomicReference` |
| 691 | |
Tatu Saloranta | b7a797f | 2016-03-15 18:23:05 -0700 | [diff] [blame] | 692 | 2.7.3 (16-Mar-2016) |
Tatu Saloranta | 781d6f0 | 2016-02-21 15:24:41 -0800 | [diff] [blame] | 693 | |
Tatu Saloranta | 700617a | 2016-03-09 15:30:34 -0800 | [diff] [blame] | 694 | #1125: Problem with polymorphic types, losing properties from base type(s) |
Tatu Saloranta | a290f09 | 2016-03-09 11:20:58 -0800 | [diff] [blame] | 695 | #1150: Problem with Object id handling, explicit `null` token |
| 696 | (reported by Xavi T) |
Tatu Saloranta | bacb37f | 2016-03-12 14:24:47 -0800 | [diff] [blame] | 697 | #1154: @JsonFormat.pattern on dates is now ignored if shape is not explicitely provided |
| 698 | (reported by Yoann R) |
Tatu Saloranta | 493ba8d | 2016-03-14 23:22:51 -0700 | [diff] [blame] | 699 | #1161: `DeserializationFeature.READ_ENUMS_USING_TO_STRING` not dynamically |
| 700 | changeable with 2.7 |
| 701 | (reported by asa-git@github) |
Tatu Saloranta | d178168 | 2016-03-12 19:54:55 -0800 | [diff] [blame] | 702 | - Minor fixes to `AnnotationIntrospector.findEnumValues()` to correct problems with |
| 703 | merging of explicit enum value names. |
Tatu Saloranta | a290f09 | 2016-03-09 11:20:58 -0800 | [diff] [blame] | 704 | |
| 705 | 2.7.2 (26-Feb-2016) |
Tatu Saloranta | 781d6f0 | 2016-02-21 15:24:41 -0800 | [diff] [blame] | 706 | |
Tatu Saloranta | 4eba399 | 2016-02-26 20:33:13 -0800 | [diff] [blame] | 707 | #1124: JsonAnyGetter ignores JsonSerialize(contentUsing=...) |
| 708 | (reported by Jiri M) |
Tatu Saloranta | 6ec5136 | 2016-02-26 19:10:19 -0800 | [diff] [blame] | 709 | #1128: UnrecognizedPropertyException in 2.7.1 for properties that work with version 2.6.5 |
| 710 | (reported by Roleek@github) |
Tatu Saloranta | 781d6f0 | 2016-02-21 15:24:41 -0800 | [diff] [blame] | 711 | #1129: When applying type modifiers, don't ignore container types. |
Tatu Saloranta | 77efe80 | 2016-02-22 20:31:38 -0800 | [diff] [blame] | 712 | #1130: NPE in `StdDateFormat` hashCode and equals |
| 713 | (reported by Kazuki S, kazuki43zoo@github) |
Tatu Saloranta | d64199a | 2016-02-21 19:44:55 -0800 | [diff] [blame] | 714 | #1134: Jackson 2.7 doesn't work with jdk6 due to use of `Collections.emptyIterator()` |
| 715 | (reported by Timur S, saladinkzn@github) |
Tatu Saloranta | 781d6f0 | 2016-02-21 15:24:41 -0800 | [diff] [blame] | 716 | |
Tatu Saloranta | ab088bd | 2016-02-03 16:29:27 -0800 | [diff] [blame] | 717 | 2.7.1-1 (03-Feb-2016) |
| 718 | |
| 719 | Special one-off "micro patch" for: |
Tatu Saloranta | 729c0fe | 2016-02-03 09:39:33 -0800 | [diff] [blame] | 720 | |
| 721 | #1115: Problems with deprecated `TypeFactory.constructType(type, ctxt)` methods if `ctxt` is `null` |
| 722 | |
Tatu Saloranta | 4a05d3e | 2016-02-01 22:13:37 -0800 | [diff] [blame] | 723 | 2.7.1 (02-Feb-2016) |
Tatu Saloranta | a2f4308 | 2016-01-12 16:37:01 -0800 | [diff] [blame] | 724 | |
| 725 | #1079: Add back `TypeFactory.constructType(Type, Class)` as "deprecated" in 2.7.1 |
Tatu Saloranta | dbf0c6f | 2016-01-15 21:02:56 -0800 | [diff] [blame] | 726 | #1083: Field in base class is not recognized, when using `@JsonType.defaultImpl` |
| 727 | (reported by Julian H) |
Tatu Saloranta | 21ca921 | 2016-01-29 23:01:19 -0800 | [diff] [blame] | 728 | #1095: Prevent coercion of `int` from empty String to `null` if |
| 729 | `DeserializationFeature .FAIL_ON_NULL_FOR_PRIMITIVES` is `true` |
| 730 | (reported by yzmyyff@github) |
Tatu Saloranta | 21a2e4b | 2016-01-28 17:39:14 -0800 | [diff] [blame] | 731 | #1102: Handling of deprecated `SimpleType.construct()` too minimalistic |
| 732 | (reported by Thibault K) |
Tatu Saloranta | cc82b65 | 2016-01-31 21:53:05 -0800 | [diff] [blame] | 733 | #1109: @JsonFormat is ignored by the DateSerializer unless either a custom pattern |
| 734 | or a timezone are specified |
| 735 | (contributed by Aleks S) |
Tatu Saloranta | a2f4308 | 2016-01-12 16:37:01 -0800 | [diff] [blame] | 736 | |
| 737 | 2.7.0 (10-Jan-2016) |
Cowtowncoder | e5b8ff1 | 2015-09-10 14:37:37 -0700 | [diff] [blame] | 738 | |
Cowtowncoder | 07d946c | 2015-10-19 17:02:27 -0700 | [diff] [blame] | 739 | #76: Problem handling datatypes Recursive type parameters |
| 740 | (reported by Aram K) |
Tatu Saloranta | 5ada97c | 2015-11-05 09:19:16 -0800 | [diff] [blame] | 741 | #357: StackOverflowError with contentConverter that returns array type |
| 742 | (reported by Florian S) |
Tatu Saloranta | 77d1b25 | 2015-11-05 10:01:48 -0800 | [diff] [blame] | 743 | #432: `StdValueInstantiator` unwraps exceptions, losing context |
| 744 | (reported by Miles K) |
Tatu Saloranta | 3a392d2 | 2015-11-05 15:11:51 -0800 | [diff] [blame] | 745 | #497: Add new JsonInclude.Include feature to exclude maps after exclusion removes all elements |
Tatu Saloranta | c48e992 | 2015-12-23 00:12:59 -0800 | [diff] [blame] | 746 | #803: Allow use of `StdDateFormat.setLenient()` |
| 747 | (suggested by raj-ghodke@github) |
Tatu Saloranta | 3e14f2c | 2015-09-23 21:57:11 -0700 | [diff] [blame] | 748 | #819: Add support for setting `FormatFeature` via `ObjectReader`, `ObjectWriter` |
Tatu Saloranta | cc8b4a5 | 2015-11-15 20:24:58 -0800 | [diff] [blame] | 749 | #857: Add support for java.beans.Transient (requires Java 7) |
Tatu Saloranta | 563470e | 2015-11-07 21:17:37 -0800 | [diff] [blame] | 750 | (suggested by Thomas M) |
Tatu Saloranta | 2ec3ad2 | 2015-11-05 22:13:28 -0800 | [diff] [blame] | 751 | #898: Add `ObjectMapper.getSerializerProviderInstance()` |
Tatu Saloranta | cc8b4a5 | 2015-11-15 20:24:58 -0800 | [diff] [blame] | 752 | #905: Add support for `@ConstructorProperties` (requires Java 7) |
Tatu Saloranta | 51a02d0 | 2015-11-08 15:07:35 -0800 | [diff] [blame] | 753 | (requested by Jonas K) |
Tatu Saloranta | cebfddb | 2015-11-09 19:41:02 -0800 | [diff] [blame] | 754 | #909: Rename PropertyNamingStrategy CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES as SNAKE_CASE, |
| 755 | PASCAL_CASE_TO_CAMEL_CASE as UPPER_CAMEL_CASE |
| 756 | (suggested by marcottedan@github) |
Tatu Saloranta | 06da5d4 | 2015-11-05 20:49:16 -0800 | [diff] [blame] | 757 | #915: ObjectMapper default timezone is GMT, should be UTC |
| 758 | (suggested by Infrag@github) |
Cowtowncoder | e5b8ff1 | 2015-09-10 14:37:37 -0700 | [diff] [blame] | 759 | #918: Add `MapperFeature.ALLOW_EXPLICIT_PROPERTY_RENAMING` |
| 760 | (contributed by David H) |
Tatu Saloranta | 03a3b55 | 2015-11-05 20:24:25 -0800 | [diff] [blame] | 761 | #924: `SequenceWriter.writeAll()` could accept `Iterable` |
| 762 | (suggested by Jiri-Kremser@github( |
Cowtowncoder | 38386bd | 2015-10-21 16:50:32 -0700 | [diff] [blame] | 763 | #932: Rewrite ser/deser for `AtomicReference`, based on "optional" ser/desers |
| 764 | #933: Close some gaps to allow using the `tryToResolveUnresolved` flows |
Tatu Saloranta | f73cd92 | 2015-10-20 22:23:01 -0700 | [diff] [blame] | 765 | #936: Deserialization into List subtype with JsonCreator no longer works |
| 766 | (reported by adamjoeldavis@github) |
Tatu Saloranta | bfd254d | 2015-09-29 20:21:38 -0700 | [diff] [blame] | 767 | #948: Support leap seconds, any number of millisecond digits for ISO-8601 Dates. |
| 768 | (contributed by Jesse W) |
Tatu Saloranta | df7f407 | 2015-11-11 22:59:03 -0800 | [diff] [blame] | 769 | #952: Revert non-empty handling of primitive numbers wrt `NON_EMPTY`; make |
| 770 | `NON_DEFAULT` use extended criteria |
Cowtowncoder | 37b4ad5 | 2015-10-02 17:09:37 -0700 | [diff] [blame] | 771 | #957: Merge `datatype-jdk7` stuff in (java.nio.file.Path handling) |
Tatu Saloranta | c8de5aa | 2015-10-07 22:57:37 -0700 | [diff] [blame] | 772 | #959: Schema generation: consider active view, discard non-included properties |
Tatu Saloranta | f807c8c | 2015-11-09 20:56:28 -0800 | [diff] [blame] | 773 | #963: Add PropertyNameStrategy `KEBAB_CASE` |
| 774 | (requested by Daniel M) |
Tatu Saloranta | f89737c | 2015-11-07 21:34:38 -0800 | [diff] [blame] | 775 | #978: ObjectMapper#canSerialize(Object.class) returns false even though FAIL_ON_EMPTY_BEANS is disabled |
| 776 | (reported by Shumpei A) |
Tatu Saloranta | 52ae85f | 2015-11-05 07:58:55 -0800 | [diff] [blame] | 777 | #997: Add `MapperFeature.OVERRIDE_PUBLIC_ACCESS_MODIFIERS` |
Tatu Saloranta | 4950f44 | 2015-11-06 18:25:42 -0800 | [diff] [blame] | 778 | #998: Allow use of `NON_DEFAULT` for POJOs without default constructor |
Tatu Saloranta | 20a67f7 | 2015-11-21 14:17:45 -0800 | [diff] [blame] | 779 | #1000: Add new mapping exception type for enums and UUIDs |
| 780 | (suggesed by natnan@github) |
Tatu Saloranta | a5301ba | 2015-12-11 09:47:09 -0800 | [diff] [blame] | 781 | #1010: Support for array delegator |
| 782 | (contributed by Hugo W) |
Tatu Saloranta | da2f2c9 | 2015-11-20 14:18:48 -0800 | [diff] [blame] | 783 | #1011: Change ObjectWriter::withAttributes() to take a Map with some kind of wildcard types |
| 784 | (suggested by David B) |
Tatu Saloranta | 1addb1c | 2015-12-11 11:09:35 -0800 | [diff] [blame] | 785 | #1043: @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY) does not work on fields |
| 786 | (reported by fabiolaa@github) |
Tatu Saloranta | 5df1a6c | 2015-12-11 17:13:59 -0800 | [diff] [blame] | 787 | #1044: Add `AnnotationIntrospector.resolveSetterConflict(...)` to allow custom setter conflict resolution |
| 788 | (suggested by clydebarrow@github) |
Cowtowncoder | bdf6054 | 2015-10-07 11:02:40 -0700 | [diff] [blame] | 789 | - Make `JsonValueFormat` (self-)serializable, deserializable, to/from valid external |
| 790 | value (as per JSON Schema spec) |
Cowtowncoder | e5b8ff1 | 2015-09-10 14:37:37 -0700 | [diff] [blame] | 791 | |
Tatu Saloranta | 358b094 | 2015-10-07 22:59:33 -0700 | [diff] [blame] | 792 | INCOMPATIBILITIES: |
| 793 | |
| 794 | - While unlikely to be problematic, #959 above required an addition of `SerializerProvider` |
| 795 | argument for `depositSchemaProperty()` method `BeanProperty` and `PropertyWriter` interfaces |
Tatu Saloranta | cc8b4a5 | 2015-11-15 20:24:58 -0800 | [diff] [blame] | 796 | - JDK baseline now Java 7 (JDK 1.7), from Java 6/JDK 1.6 |
Tatu Saloranta | 358b094 | 2015-10-07 22:59:33 -0700 | [diff] [blame] | 797 | |
Tatu Saloranta | eb3c664 | 2016-04-04 18:19:46 -0700 | [diff] [blame] | 798 | 2.6.6 (05-Apr-2016) |
Tatu Saloranta | e741034 | 2016-01-28 22:09:32 -0800 | [diff] [blame] | 799 | |
| 800 | #1088: NPE possibility in SimpleMixinResolver |
| 801 | (reported by Laird N) |
Tatu Saloranta | 89559a2 | 2016-02-01 21:57:16 -0800 | [diff] [blame] | 802 | #1099: Fix custom comparator container node traversal |
| 803 | (contributed by Daniel N) |
Tatu Saloranta | 308ed4e | 2016-01-29 22:29:46 -0800 | [diff] [blame] | 804 | #1108: Jackson not continue to parse after DeserializationFeature.FAIL_ON_INVALID_SUBTYPE error |
| 805 | (reported by jefferyyuan@github) |
Tatu Saloranta | ccdb9fc | 2016-01-31 10:31:51 -0800 | [diff] [blame] | 806 | #1112: Detailed error message from custom key deserializer is discarded |
| 807 | (contributed by Benson M) |
Tatu Saloranta | 7a3b0b1 | 2016-02-09 16:52:28 -0800 | [diff] [blame] | 808 | #1120: String value omitted from weirdStringException |
| 809 | (reported by Benson M) |
Tatu Saloranta | 2d90441 | 2016-02-09 16:43:49 -0800 | [diff] [blame] | 810 | #1123: Serializing and Deserializing Locale.ROOT |
| 811 | (reported by hookumsnivy@github) |
Tatu Saloranta | e741034 | 2016-01-28 22:09:32 -0800 | [diff] [blame] | 812 | |
Tatu Saloranta | 9d23218 | 2016-01-18 20:52:19 -0800 | [diff] [blame] | 813 | 2.6.5 (19-Jan-2016) |
Tatu Saloranta | cecd409 | 2015-12-17 21:49:10 -0800 | [diff] [blame] | 814 | |
Tatu Saloranta | 3aee590 | 2015-12-19 16:35:53 -0800 | [diff] [blame] | 815 | #1052: Don't generate a spurious NullNode after parsing an embedded object |
| 816 | (reported by philipa@github) |
Tatu Saloranta | 7ed2d00 | 2015-12-17 21:52:43 -0800 | [diff] [blame] | 817 | #1061: Problem with Object Id and Type Id as Wrapper Object (regression in 2.5.1) |
Tatu Saloranta | 70d961b | 2016-01-09 14:18:23 -0800 | [diff] [blame] | 818 | #1073: Add try-catch around `java.sql` type serializers |
| 819 | (suggested by claudemt@github) |
Tatu Saloranta | 034f3c0 | 2016-01-12 16:42:35 -0800 | [diff] [blame] | 820 | #1078: ObjectMapper.copy() still does not preserve _registeredModuleTypes |
| 821 | (reported by ajonkisz@github) |
Tatu Saloranta | 7ed2d00 | 2015-12-17 21:52:43 -0800 | [diff] [blame] | 822 | |
Tatu Saloranta | 0597c4c | 2015-12-07 18:30:25 -0800 | [diff] [blame] | 823 | 2.6.4 (07-Dec-2015) |
Cowtowncoder | fe25f7e | 2015-10-28 16:32:31 -0700 | [diff] [blame] | 824 | |
| 825 | #984: JsonStreamContexts are not build the same way for write.. and convert methods |
| 826 | (reported by Antibrumm@github) |
Cowtowncoder | d5a25f4 | 2015-10-28 17:22:05 -0700 | [diff] [blame] | 827 | #989: Deserialization from "{}" to java.lang.Object causes "out of END_OBJECT token" error |
| 828 | (reported by Ievgen P) |
Tatu Saloranta | 1ce6508 | 2015-11-24 21:45:26 -0800 | [diff] [blame] | 829 | #1003: JsonTypeInfo.As.EXTERNAL_PROPERTY does not work with a Delegate |
| 830 | (reported by alexwen@github) |
Tatu Saloranta | 1ed7f38 | 2015-11-20 13:41:09 -0800 | [diff] [blame] | 831 | #1005: Synthetic constructors confusing Jackson data binding |
| 832 | (reported by Jayson M) |
Tatu Saloranta | 660ec8f | 2015-11-20 14:02:01 -0800 | [diff] [blame] | 833 | #1013: `@JsonUnwrapped` is not treated as assuming `@JsonProperty("")` |
| 834 | (reported by David B) |
Tatu Saloranta | 5aece76 | 2015-12-06 22:50:43 -0800 | [diff] [blame] | 835 | #1036: Problem with case-insensitive deserialization |
| 836 | (repoted by Dmitry R) |
Tatu Saloranta | 6aaa38b | 2015-11-09 19:09:36 -0800 | [diff] [blame] | 837 | - Fix a minor problem with `@JsonNaming` not recognizing default value |
Cowtowncoder | fe25f7e | 2015-10-28 16:32:31 -0700 | [diff] [blame] | 838 | |
Cowtowncoder | 2689ec8 | 2015-10-12 11:28:16 -0700 | [diff] [blame] | 839 | 2.6.3 (12-Oct-2015) |
Cowtowncoder | b4eac54 | 2015-09-23 15:27:53 -0700 | [diff] [blame] | 840 | |
Cowtowncoder | ed7d416 | 2015-09-24 22:04:41 -0700 | [diff] [blame] | 841 | #749: `EnumMap` serialization ignores `SerializationFeature.WRITE_ENUMS_USING_TO_STRING` |
| 842 | (reported by scubasau@github) |
Cowtowncoder | 1eb498e | 2015-09-23 15:29:32 -0700 | [diff] [blame] | 843 | #938: Regression: `StackOverflowError` with recursive types that contain `Map.Entry` |
Cowtowncoder | b4eac54 | 2015-09-23 15:27:53 -0700 | [diff] [blame] | 844 | (reported by jloisel@github) |
Tatu Saloranta | 2a9808c | 2015-09-26 16:25:31 -0700 | [diff] [blame] | 845 | #939: Regression: DateConversionError in 2.6.x |
| 846 | (reported by Andreas P, anpieber@github) |
Cowtowncoder | d21210b | 2015-09-24 16:00:14 -0700 | [diff] [blame] | 847 | #940: Add missing `hashCode()` implementations for `JsonNode` types that did not have them |
| 848 | (contributed by Sergio M) |
Cowtowncoder | 801317e | 2015-09-24 16:47:11 -0700 | [diff] [blame] | 849 | #941: Deserialization from "{}" to ObjectNode field causes "out of END_OBJECT token" error |
| 850 | (reported by Sadayuki F) |
Tatu Saloranta | 30b5469 | 2015-09-29 21:10:19 -0700 | [diff] [blame] | 851 | #942: Handle null type id for polymorphic values that use external type id |
| 852 | (reported by Warren B, stormboy@github) |
Tatu Saloranta | 9566ea8 | 2015-09-27 22:52:06 -0700 | [diff] [blame] | 853 | #943: Incorrect serialization of enum map key |
| 854 | (reported by Benson M) |
Cowtowncoder | e2736f1 | 2015-09-24 17:03:40 -0700 | [diff] [blame] | 855 | #944: Failure to use custom deserializer for key deserializer |
| 856 | (contributed by Benson M) |
Tatu Saloranta | 795dd01 | 2015-09-27 21:37:17 -0700 | [diff] [blame] | 857 | #949: Report the offending substring when number parsing fails |
| 858 | (contributed by Jesse W) |
Tatu Saloranta | ca6c3fc | 2015-10-10 16:41:58 -0700 | [diff] [blame] | 859 | #965: BigDecimal values via @JsonTypeInfo/@JsonSubTypes get rounded |
| 860 | (reported by gmjabs@github) |
Cowtowncoder | b4eac54 | 2015-09-23 15:27:53 -0700 | [diff] [blame] | 861 | |
Tatu Saloranta | cf78871 | 2015-09-14 21:15:04 -0700 | [diff] [blame] | 862 | 2.6.2 (14-Sep-2015) |
Cowtowncoder | 2ea6e40 | 2015-08-14 15:44:02 -0700 | [diff] [blame] | 863 | |
Cowtowncoder | a7b26eb | 2015-08-14 16:34:04 -0700 | [diff] [blame] | 864 | #894: When using withFactory on ObjectMapper, the created Factory has a TypeParser |
| 865 | which still has the original Factory |
| 866 | (reported by lufe66@github) |
Cowtowncoder | 2ea6e40 | 2015-08-14 15:44:02 -0700 | [diff] [blame] | 867 | #899: Problem serializing `ObjectReader` (and possibly `ObjectMapper`) |
Cowtowncoder | 5183922 | 2015-09-10 14:44:27 -0700 | [diff] [blame] | 868 | #913: ObjectMapper.copy does not preserve MappingJsonFactory features |
| 869 | (reported, fixed by Daniel W) |
Cowtowncoder | af2241c | 2015-09-10 14:50:53 -0700 | [diff] [blame] | 870 | #922: ObjectMapper.copy() does not preserve _registeredModuleTypes |
Cowtowncoder | f2f611e | 2015-09-11 17:29:17 -0700 | [diff] [blame] | 871 | #928: Problem deserializing External Type Id if type id comes before POJO |
Cowtowncoder | 2ea6e40 | 2015-08-14 15:44:02 -0700 | [diff] [blame] | 872 | |
Tatu Saloranta | 9e3387c | 2015-08-09 22:24:58 -0700 | [diff] [blame] | 873 | 2.6.1 (09-Aug-2015) |
Cowtowncoder | 63216c9 | 2015-07-29 15:57:27 -0700 | [diff] [blame] | 874 | |
Cowtowncoder | ce04486 | 2015-07-29 16:24:52 -0700 | [diff] [blame] | 875 | #873: Add missing OSGi import |
Cowtowncoder | 63216c9 | 2015-07-29 15:57:27 -0700 | [diff] [blame] | 876 | #881: BeanDeserializerBase having issues with non-CreatorProperty properties. |
| 877 | (reported by dharaburda@github) |
Tatu Saloranta | e77e941 | 2015-08-05 23:41:04 -0700 | [diff] [blame] | 878 | #884: ArrayIndexOutOfBoundException for `BeanPropertyMap` (with ObjectId) |
Tatu Saloranta | 6e71001 | 2015-08-05 23:36:53 -0700 | [diff] [blame] | 879 | (reported by alterGauner@github) |
Tatu Saloranta | b4ef0a6 | 2015-08-06 22:12:59 -0700 | [diff] [blame] | 880 | #889: Configuring an ObjectMapper's DateFormat changes time zone |
| 881 | (reported by Andy W, wilkinsona@github) |
Tatu Saloranta | 9917c94 | 2015-08-09 14:19:48 -0700 | [diff] [blame] | 882 | #890: Exception deserializing a byte[] when the target type comes from an annotation |
| 883 | (reported by gmjabs@github) |
Cowtowncoder | 63216c9 | 2015-07-29 15:57:27 -0700 | [diff] [blame] | 884 | |
Tatu Saloranta | 62549b9 | 2015-07-19 21:22:46 -0700 | [diff] [blame] | 885 | 2.6.0 (19-Jul-2015) |
Cowtowncoder | 8aa1ca3 | 2015-01-22 15:56:02 -0800 | [diff] [blame] | 886 | |
Tatu Saloranta | ad513ee | 2015-05-14 21:26:23 -0700 | [diff] [blame] | 887 | #77: Allow injection of 'transient' fields |
Tatu Saloranta | dbe68f6 | 2015-05-13 22:38:40 -0700 | [diff] [blame] | 888 | #95: Allow read-only properties with `@JsonIgnoreProperties(allowGetters=true)` |
Cowtowncoder | aae4082 | 2015-06-10 16:26:59 -0700 | [diff] [blame] | 889 | #222: EXTERNAL_PROPERTY adds property multiple times and in multiple places |
| 890 | (reported by Rob E, thatsnotright@github) |
Tatu Saloranta | cb6dddd | 2015-05-13 23:20:43 -0700 | [diff] [blame] | 891 | #296: Serialization of transient fields with public getters (add |
| 892 | MapperFeature.PROPAGATE_TRANSIENT_MARKER) |
| 893 | (suggested by Michal L) |
Tatu Saloranta | 37879ab | 2015-02-25 22:44:38 -0800 | [diff] [blame] | 894 | #312: Support Type Id mappings where two ids map to same Class |
Tatu Saloranta | 7785dff | 2015-04-01 20:57:14 -0700 | [diff] [blame] | 895 | #348: ObjectMapper.valueToTree does not work with @JsonRawValue |
| 896 | (reported by Chris P, pimlottc@github) |
Cowtowncoder | 23e52ab | 2015-05-19 17:53:26 -0700 | [diff] [blame] | 897 | #504: Add `DeserializationFeature.USE_LONG_FOR_INTS` |
| 898 | (suggested by Jeff S) |
Cowtowncoder | bb9d198 | 2015-06-30 14:51:30 -0700 | [diff] [blame] | 899 | #624: Allow setting external `ClassLoader` to use, via `TypeFactory` |
Cowtowncoder | 8aa1ca3 | 2015-01-22 15:56:02 -0800 | [diff] [blame] | 900 | #649: Make `BeanDeserializer` use new `parser.nextFieldName()` and `.hasTokenId()` methods |
Tatu Saloranta | 8e9d4b2 | 2015-05-01 21:26:32 -0700 | [diff] [blame] | 901 | #664: Add `DeserializationFeature.ACCEPT_FLOAT_AS_INT` to prevent coercion of floating point |
| 902 | numbers int `int`/`long`/`Integer`/`Long` |
| 903 | (requested by wenzis@github) |
Cowtowncoder | 707db7a | 2015-06-11 14:10:54 -0700 | [diff] [blame] | 904 | #677: Specifying `Enum` value serialization using `@JsonProperty` |
| 905 | (requested by Allen C, allenchen1154@github) |
Cowtowncoder | 759aef0 | 2015-04-02 14:54:39 -0700 | [diff] [blame] | 906 | #679: Add `isEmpty()` implementation for `JsonNode` serializers |
Tatu Saloranta | 62129d8 | 2015-04-02 20:13:54 -0700 | [diff] [blame] | 907 | #688: Provide a means for an ObjectMapper to discover mixin annotation classes on demand |
| 908 | (requested by Laird N) |
Tatu Saloranta | c0b9552 | 2015-05-12 23:14:22 -0700 | [diff] [blame] | 909 | #689: Add `ObjectMapper.setDefaultPrettyPrinter(PrettyPrinter)` |
| 910 | (requested by derknorton@github) |
Cowtowncoder | 7e507d1 | 2015-02-06 15:22:29 -0800 | [diff] [blame] | 911 | #696: Copy constructor does not preserve `_injectableValues` |
| 912 | (reported by Charles A) |
Tatu Saloranta | 9776f5f | 2015-04-28 22:41:16 -0700 | [diff] [blame] | 913 | #698: Add support for referential types (ReferenceType) |
Cowtowncoder | 7fee92e | 2015-02-11 16:15:08 -0800 | [diff] [blame] | 914 | #700: Cannot Change Default Abstract Type Mapper from LinkedHashMap |
| 915 | (reported by wealdtech@github) |
Cowtowncoder | fad4726 | 2015-03-16 15:15:31 -0700 | [diff] [blame] | 916 | #725: Auto-detect multi-argument constructor with implicit names if it is the only visible creator |
Cowtowncoder | 468eba8 | 2015-03-19 15:34:20 -0700 | [diff] [blame] | 917 | #727: Improve `ObjectWriter.forType()` to avoid forcing base type for container types |
Cowtowncoder | 2abf5a3 | 2015-05-21 15:28:03 -0700 | [diff] [blame] | 918 | #734: Add basic error-recovery for `ObjectReader.readValues()` |
Tatu Saloranta | de1acae | 2015-04-01 20:42:11 -0700 | [diff] [blame] | 919 | #737: Add support for writing raw values in TokenBuffer |
| 920 | (suggested by Guillaume S, gsmet@github) |
Tatu Saloranta | a1ade3a | 2015-04-28 23:04:23 -0700 | [diff] [blame] | 921 | #740: Ensure proper `null` (as empty) handling for `AtomicReference` |
Tatu Saloranta | 984fda3 | 2015-05-04 21:10:43 -0700 | [diff] [blame] | 922 | #741: Pass `DeserializationContext' argument for `JsonDeserializer` methods "getNullValue()" |
| 923 | and "getEmptyValue()" |
Tatu Saloranta | 4670d4b | 2015-04-01 20:15:24 -0700 | [diff] [blame] | 924 | #743: Add `RawValue` helper type, for piping raw values through `TokenBuffer` |
Tatu Saloranta | 914f643 | 2015-04-23 22:06:54 -0700 | [diff] [blame] | 925 | #756: Disabling SerializationFeature.FAIL_ON_EMPTY_BEANS does not affect `canSerialize()` |
| 926 | (reported by nickwongdev@github) |
Tatu Saloranta | 3455cd6 | 2015-04-21 22:01:43 -0700 | [diff] [blame] | 927 | #762: Add `ObjectWriter.withoutRootName()`, `ObjectReader.withoutRootName()` |
Tatu Saloranta | e1e0c0b | 2015-04-21 21:49:10 -0700 | [diff] [blame] | 928 | #765: `SimpleType.withStaticTyping()` impl incorrect |
Tatu Saloranta | 07d0e79 | 2015-04-30 22:15:01 -0700 | [diff] [blame] | 929 | #769: Fix `JacksonAnnotationIntrospector.findDeserializer` to return `Object` (as per |
| 930 | `AnnotationIntrospector`); similarly for other `findXxx(De)Serializer(...)` methods |
Cowtowncoder | ad598aa | 2015-06-12 15:56:19 -0700 | [diff] [blame] | 931 | #777: Allow missing build method if its name is empty ("") |
| 932 | (suggested by galdosd@github) |
Tatu Saloranta | 41f8ca1 | 2015-05-06 23:39:24 -0700 | [diff] [blame] | 933 | #781: Support handling of `@JsonProperty.required` for Creator methods |
Cowtowncoder | a936f43 | 2015-05-12 12:33:46 -0700 | [diff] [blame] | 934 | #787: Add `ObjectMapper setFilterProvider(FilterProvider)` to allow chaining |
| 935 | (suggested by rgoldberg@githin) |
Tatu Saloranta | cd2a819 | 2015-05-12 21:22:37 -0700 | [diff] [blame] | 936 | #790: Add `JsonNode.equals(Comparator<JsonNode>, JsonNode)` to support |
| 937 | configurable/external equality comparison |
Tatu Saloranta | 6709f72 | 2015-05-17 19:46:00 -0700 | [diff] [blame] | 938 | #794: Add `SerializationFeature.WRITE_DATES_WITH_ZONE_ID` to allow inclusion/exclusion of |
| 939 | timezone id for date/time values (as opposed to timezone offset) |
Cowtowncoder | ee1c51a | 2015-05-18 16:13:23 -0700 | [diff] [blame] | 940 | #795: Converter annotation not honored for abstract types |
| 941 | (reported by myrosia@github) |
Cowtowncoder | 23e52ab | 2015-05-19 17:53:26 -0700 | [diff] [blame] | 942 | #797: `JsonNodeFactory` method `numberNode(long)` produces `IntNode` for small numbers |
Tatu Saloranta | d314615 | 2015-06-04 21:21:14 -0700 | [diff] [blame] | 943 | #810: Force value coercion for `java.util.Properties`, so that values are `String`s |
| 944 | #811: Add new option, `JsonInclude.Include.NON_ABSENT` (to support exclusion of |
| 945 | JDK8/Guava Optionals) |
Cowtowncoder | 158e116 | 2015-05-29 15:05:14 -0700 | [diff] [blame] | 946 | #812: Java 8 breaks Class-value annotation properties, wrt generics: need to work around |
Cowtowncoder | 0787666 | 2015-06-09 11:34:00 -0700 | [diff] [blame] | 947 | #813: Add support for new property of `@JsonProperty.access` to support |
| 948 | read-only/write-only use cases |
Tatu Saloranta | c52fb0b | 2015-07-16 19:08:03 -0700 | [diff] [blame] | 949 | #820: Add new method for `ObjectReader`, to bind from JSON Pointer position |
| 950 | (contributed by Jerry Y, islanderman@github) |
Tatu Saloranta | c89a98a | 2015-06-11 23:37:31 -0700 | [diff] [blame] | 951 | #824: Contextual `TimeZone` changes don't take effect wrt `java.util.Date`, |
| 952 | `java.util.Calendar` serialization |
Cowtowncoder | 3ef01e0 | 2015-06-12 15:37:48 -0700 | [diff] [blame] | 953 | #826: Replaced synchronized HashMap with ConcurrentHashMap in TypeDeserializerBase._findDeserializer |
| 954 | (contributed by Lars P) |
Cowtowncoder | 429f70f | 2015-06-12 18:23:35 -0700 | [diff] [blame] | 955 | #827: Fix for polymorphic custom map key serializer |
| 956 | (reported by mjr6140@gitgub) |
Cowtowncoder | c3d426e | 2015-06-16 16:25:10 -0700 | [diff] [blame] | 957 | #828: Respect DeserializationFeatures.WRAP_EXCEPTIONS in CollectionDeserializer |
Cowtowncoder | 0de486d | 2015-06-16 12:05:50 -0700 | [diff] [blame] | 958 | (contributed by Steve G, thezerobit@github) |
Tatu Saloranta | 51c3f7c | 2015-06-23 22:54:34 -0700 | [diff] [blame] | 959 | #840: Change semantics of `@JsonPropertyOrder(alphabetic)` to only count `true` value |
Cowtowncoder | a92e2be | 2015-06-25 15:08:36 -0700 | [diff] [blame] | 960 | #848: Custom serializer not used if POJO has `@JsonValue` |
Cowtowncoder | 6172d75 | 2015-07-01 12:29:21 -0700 | [diff] [blame] | 961 | #849: Possible problem with `NON_EMPTY` exclusion, `int`s, `Strings` |
Cowtowncoder | a23ff9f | 2015-07-17 11:53:06 -0700 | [diff] [blame] | 962 | #868: Annotations are lost in the case of duplicate methods |
Tatu Saloranta | d9fdb7f | 2015-03-03 20:20:40 -0800 | [diff] [blame] | 963 | - Remove old cglib compatibility tests; cause problems in Eclipse |
Cowtowncoder | 08345f4 | 2015-07-09 12:27:21 -0700 | [diff] [blame] | 964 | - Add `withFilterId()` method in `JsonSerializer` (demote from `BeanSerializer`) |
Cowtowncoder | 8aa1ca3 | 2015-01-22 15:56:02 -0800 | [diff] [blame] | 965 | |
Tatu Saloranta | a582875 | 2015-12-07 18:38:05 -0800 | [diff] [blame] | 966 | 2.5.5 (07-Dec-2015) |
Cowtowncoder | 9317e54 | 2015-06-30 14:18:41 -0700 | [diff] [blame] | 967 | |
Cowtowncoder | 726b6e0 | 2015-07-01 12:49:45 -0700 | [diff] [blame] | 968 | #844: Using JsonCreator still causes invalid path references in JsonMappingException |
| 969 | (reported by Ian B) |
Cowtowncoder | 9317e54 | 2015-06-30 14:18:41 -0700 | [diff] [blame] | 970 | #852: Accept scientific number notation for quoted numbers too |
Cowtowncoder | 4312a24 | 2015-07-28 17:14:33 -0700 | [diff] [blame] | 971 | #878: serializeWithType on BeanSerializer does not setCurrentValue |
| 972 | (reported by Chi K, chikim79@github) |
Cowtowncoder | 9317e54 | 2015-06-30 14:18:41 -0700 | [diff] [blame] | 973 | |
Tatu Saloranta | 37ea55e | 2015-06-09 18:28:15 -0700 | [diff] [blame] | 974 | 2.5.4 (09-Jun-2015) |
Tatu Saloranta | 7d5c50b | 2015-04-24 22:11:45 -0700 | [diff] [blame] | 975 | |
Tatu Saloranta | f4ef389 | 2015-05-07 20:12:45 -0700 | [diff] [blame] | 976 | #676: Deserialization of class with generic collection inside depends on |
| 977 | how is was deserialized first time |
| 978 | (reported by lunaticare@github) |
Tatu Saloranta | db612bb | 2015-04-26 22:42:17 -0700 | [diff] [blame] | 979 | #771: Annotation bundles ignored when added to Mixin |
| 980 | (reported by Andrew D) |
Cowtowncoder | b02bf06 | 2015-04-29 15:32:19 -0700 | [diff] [blame] | 981 | #774: NPE from SqlDateSerializer as _useTimestamp is not checked for being null |
| 982 | (reported by mrowkow@github) |
Cowtowncoder | 7db1f44 | 2015-05-08 15:20:18 -0700 | [diff] [blame] | 983 | #785: Add handlings for classes which are available in `Thread.currentThread().getContextClassLoader()` |
| 984 | (contributed by Charles A) |
Tatu Saloranta | 4b9e191 | 2015-05-13 21:51:38 -0700 | [diff] [blame] | 985 | #792: Ensure Constructor Parameter annotations are linked with those of Field, Getter, or Setter |
Tatu Saloranta | 3da7c45 | 2015-05-14 20:54:26 -0700 | [diff] [blame] | 986 | #793: `ObjectMapper.readTree()` does not work with defaultTyping enabled |
| 987 | (reported by gracefulgopher@github) |
Cowtowncoder | ea2c9a4 | 2015-05-22 12:07:16 -0700 | [diff] [blame] | 988 | #801: Using `@JsonCreator` cause generating invalid path reference in `JsonMappingException` |
| 989 | (contributed by Kamil B) |
Tatu Saloranta | d4923ea | 2015-06-04 21:17:51 -0700 | [diff] [blame] | 990 | #815: Presence of PropertyNamingStrategy Makes Deserialization fail |
Tatu Saloranta | e9fa042 | 2015-06-04 21:58:09 -0700 | [diff] [blame] | 991 | #816: Allow date-only ISO strings to have no time zone |
| 992 | (contributed by Andrew G) |
Tatu Saloranta | 7d5c50b | 2015-04-24 22:11:45 -0700 | [diff] [blame] | 993 | - Fix handling of Enums wrt JSON Schema, when 'toString()' used for serialization |
| 994 | |
Cowtowncoder | 13968e6 | 2015-04-24 10:21:37 -0700 | [diff] [blame] | 995 | 2.5.3 (24-Apr-2015) |
Cowtowncoder | 50ea083 | 2015-03-31 17:38:17 -0700 | [diff] [blame] | 996 | |
Cowtowncoder | 119ddc9 | 2015-04-02 14:32:26 -0700 | [diff] [blame] | 997 | #731: XmlAdapter result marshaling error in case of ValueType=Object |
| 998 | (reported, debugged by Dmitry S) |
Cowtowncoder | 0ec81c0 | 2015-04-02 11:49:36 -0700 | [diff] [blame] | 999 | #742: Allow deserialization of `null` Object Id (missing already allowed) |
Cowtowncoder | 817a45a | 2015-04-02 12:53:18 -0700 | [diff] [blame] | 1000 | #744: Custom deserializer with parent object update failing |
| 1001 | (reported by migel@github) |
Cowtowncoder | 50ea083 | 2015-03-31 17:38:17 -0700 | [diff] [blame] | 1002 | #745: EnumDeserializer.deserializerForCreator fails when used to deserialize a Map key |
| 1003 | (contributed by John M) |
Cowtowncoder | 3470803 | 2015-04-21 13:34:54 -0700 | [diff] [blame] | 1004 | #761: Builder deserializer: in-compatible type exception when return type is super type |
| 1005 | (contributed by Alexey G) |
Cowtowncoder | cb7342b | 2015-04-22 14:21:56 -0700 | [diff] [blame] | 1006 | #766: Fix Infinite recursion (StackOverflowError) when serializing a SOAP object |
| 1007 | (contributed by Alain G) |
Cowtowncoder | 50ea083 | 2015-03-31 17:38:17 -0700 | [diff] [blame] | 1008 | |
Tatu Saloranta | fd54177 | 2015-03-29 16:48:53 -0700 | [diff] [blame] | 1009 | 2.5.2 (29-Mar-2015) |
Tatu Saloranta | 6290eef | 2015-02-07 12:52:36 -0800 | [diff] [blame] | 1010 | |
Tatu Saloranta | 66bfe66 | 2015-03-19 20:20:44 -0700 | [diff] [blame] | 1011 | #609: Problem resolving locally declared generic type |
| 1012 | (repoted by Hal H) |
Tatu Saloranta | f24064c | 2015-02-07 14:07:03 -0800 | [diff] [blame] | 1013 | #691: NullSerializer for MapProperty failing when using polymorphic handling |
Tatu Saloranta | 6290eef | 2015-02-07 12:52:36 -0800 | [diff] [blame] | 1014 | (reported by Antibrumm@github) |
Cowtowncoder | 195e9b5 | 2015-02-13 11:05:19 -0800 | [diff] [blame] | 1015 | #703: Multiple calls to ObjectMapper#canSerialize(Object.class) returns different values |
| 1016 | (reported by flexfrank@github) |
Cowtowncoder | 466f706 | 2015-02-23 16:53:56 -0800 | [diff] [blame] | 1017 | #705: JsonAnyGetter doesn't work with JsonSerialize (except with keyUsing) |
| 1018 | (reported by natnan@github) |
Tatu Saloranta | 66bfe66 | 2015-03-19 20:20:44 -0700 | [diff] [blame] | 1019 | #728: TypeFactory#_fromVariable returns unknownType() even though it has enough information |
| 1020 | to provide a more specific type |
| 1021 | (reported by jkochaniak@github) |
Tatu Saloranta | 436c309 | 2015-03-24 21:36:43 -0700 | [diff] [blame] | 1022 | #733: MappingIterator should move past errors or not return hasNext() == true |
| 1023 | (reported by Lorrin N, lorrin@github) |
Cowtowncoder | ec1820d | 2015-03-27 16:55:52 -0700 | [diff] [blame] | 1024 | #738: @JsonTypeInfo non-deterministically ignored in 2.5.1 (concurrency issue) |
| 1025 | (reported by Dylan S, dylanscott@github) |
Cowtowncoder | d7d31ca | 2015-02-26 14:42:57 -0800 | [diff] [blame] | 1026 | - Improvement to handling of custom `ValueInstantiator` for delegating mode; no more NPE |
| 1027 | if `getDelegateCreator()` returns null |
Tatu Saloranta | f26c676 | 2015-03-16 19:04:03 -0700 | [diff] [blame] | 1028 | - Refactor `TypedKey` into separate util class |
Tatu Saloranta | 6290eef | 2015-02-07 12:52:36 -0800 | [diff] [blame] | 1029 | |
Tatu Saloranta | 2b464d7 | 2015-02-06 16:05:34 -0800 | [diff] [blame] | 1030 | 2.5.1 (06-Feb-2015) |
Tatu Saloranta | 3b041e3 | 2015-01-02 15:38:56 -0800 | [diff] [blame] | 1031 | |
| 1032 | #667: Problem with bogus conflict between single-arg-String vs `CharSequence` constructor |
Cowtowncoder | b15abb7 | 2015-01-08 13:34:14 -0800 | [diff] [blame] | 1033 | #669: JSOG usage of @JsonTypeInfo and @JsonIdentityInfo(generator=JSOGGenerator.class) fails |
Cowtowncoder | 4dfccd5 | 2015-01-08 13:33:26 -0800 | [diff] [blame] | 1034 | (reported by ericali78@github) |
Cowtowncoder | 74c8f97 | 2015-01-07 15:40:06 -0800 | [diff] [blame] | 1035 | #671: Adding `java.util.Currency` deserialization support for maps |
| 1036 | (contributed by Alexandre S-C) |
Tatu Saloranta | 44df4d2 | 2015-01-10 20:24:19 -0800 | [diff] [blame] | 1037 | #674: Spring CGLIB proxies not handled as intended |
| 1038 | (reported by Zoltan F) |
Tatu Saloranta | 00bb11e | 2015-01-19 22:14:14 -0800 | [diff] [blame] | 1039 | #682: Class<?>-valued Map keys not serialized properly |
| 1040 | (reported by Ludevik@github) |
Cowtowncoder | ae3f01b | 2015-01-22 15:37:41 -0800 | [diff] [blame] | 1041 | #684: FAIL_ON_NUMBERS_FOR_ENUMS does not fail when integer value is quoted |
| 1042 | (reported by kllp@github) |
Cowtowncoder | e4ece74 | 2015-02-06 15:24:35 -0800 | [diff] [blame] | 1043 | #696: Copy constructor does not preserve `_injectableValues` |
| 1044 | (reported by Charles A) |
Cowtowncoder | 16c5dd7 | 2015-01-22 11:16:42 -0800 | [diff] [blame] | 1045 | - Add a work-around in `ISO8601DateFormat` to allow omission of ':' from timezone |
Tatu Saloranta | 102abfb | 2015-01-28 19:03:14 -0800 | [diff] [blame] | 1046 | - Bit more work to complete #633 |
Tatu Saloranta | 3b041e3 | 2015-01-02 15:38:56 -0800 | [diff] [blame] | 1047 | |
Tatu Saloranta | 2d64bed | 2015-01-01 15:34:30 -0800 | [diff] [blame] | 1048 | 2.5.0 (01-Jan-2015) |
Tatu Saloranta | f4e9657 | 2014-06-18 15:26:43 -0700 | [diff] [blame] | 1049 | |
Tatu Saloranta | ead4e32 | 2014-12-12 20:02:16 -0800 | [diff] [blame] | 1050 | #47: Support `@JsonValue` for (Map) key serialization |
Tatu Saloranta | d0cc247 | 2014-09-25 22:47:57 -0700 | [diff] [blame] | 1051 | #113: Problem deserializing polymorphic types with @JsonCreator |
Tatu Saloranta | c4b6c61 | 2014-12-26 22:07:54 -0800 | [diff] [blame] | 1052 | #165: Add `DeserializationContext.getContextualType()` to let deserializer |
| 1053 | known the expected type. |
Cowtowncoder | dfa1b44 | 2014-12-29 15:55:05 -0800 | [diff] [blame] | 1054 | #299: Add `DeserializationFeature.FAIL_ON_UNRESOLVED_OBJECT_IDS` to allow missing |
| 1055 | Object Ids (as global default) |
Tatu Saloranta | add3cc3 | 2014-10-06 22:25:44 -0700 | [diff] [blame] | 1056 | #408: External type id does not allow use of 'visible=true' |
Tatu Saloranta | 09ad682 | 2014-09-23 22:11:12 -0700 | [diff] [blame] | 1057 | #421: @JsonCreator not used in case of multiple creators with parameter names |
| 1058 | (reported by Lovro P, lpandzic@github) |
Tatu Saloranta | 8f5a129 | 2014-11-18 20:55:55 -0800 | [diff] [blame] | 1059 | #427: Make array and Collection serializers call `JsonGenerator.writeStartArray(int)` |
Tatu Saloranta | b5dd785 | 2014-10-15 19:26:24 -0700 | [diff] [blame] | 1060 | #521: Keep bundle annotations, prevent problems with recursive annotation types |
Cowtowncoder | 18186be | 2014-09-23 09:57:25 -0700 | [diff] [blame] | 1061 | (reported by tea-dragon@github) |
Tatu Saloranta | f1cb79b | 2014-12-03 23:03:52 -0800 | [diff] [blame] | 1062 | #527: Add support for `@JsonInclude(content=Include.NON_NULL)` (and others) for Maps |
Tatu Saloranta | b5dd785 | 2014-10-15 19:26:24 -0700 | [diff] [blame] | 1063 | #528: Add support for `JsonType.As.EXISTING_PROPERTY` |
| 1064 | (reported by heapifyman@github; implemented by fleebytes@github) |
Cowtowncoder | 152aabb | 2014-09-18 15:16:10 -0700 | [diff] [blame] | 1065 | #539: Problem with post-procesing of "empty bean" serializer; was not calling |
| 1066 | 'BeanSerializerModifier.modifySerializer()` for empty beans |
| 1067 | (reported by Fabien R, fabienrenaud@github) |
Tatu Saloranta | 6651339 | 2015-03-19 19:21:13 -0700 | [diff] [blame] | 1068 | #540: Support deserializing `[]` as null or empty collection when the java type |
| 1069 | is a not an object, `DeserializationFeature.ACCEPT_EMPTY_ARRAY_AS_NULL_OBJECT` |
Tatu Saloranta | ca99065 | 2014-09-25 22:15:09 -0700 | [diff] [blame] | 1070 | (requested by Fabien R, fabienrenaud@github) |
Cowtowncoder | 6cf6585 | 2014-09-15 15:51:27 -0700 | [diff] [blame] | 1071 | #543: Problem resolving self-referential recursive types |
Cowtowncoder | 18186be | 2014-09-23 09:57:25 -0700 | [diff] [blame] | 1072 | (reported by ahgittin@github) |
Cowtowncoder | 3eb74af | 2014-09-23 14:04:57 -0700 | [diff] [blame] | 1073 | #550: Minor optimization: prune introspection of "well-known" JDK types |
Cowtowncoder | 18186be | 2014-09-23 09:57:25 -0700 | [diff] [blame] | 1074 | #552: Improved handling for ISO-8601 (date) format |
| 1075 | (contributed by Jerome G, geronimo-iia@github) |
Tatu Saloranta | 30239f9 | 2014-09-29 21:56:39 -0700 | [diff] [blame] | 1076 | #559: Add `getDateFormat()`, `getPropertyNamingStrategy()` in `ObjectMapper` |
Tatu Saloranta | 3afaa74 | 2014-10-12 20:10:02 -0700 | [diff] [blame] | 1077 | #560: @JsonCreator to deserialize BigInteger to Enum |
| 1078 | (requested by gisupp@github) |
Cowtowncoder | 10f4422 | 2014-09-29 18:20:17 -0700 | [diff] [blame] | 1079 | #565: Add support for handling `Map.Entry` |
Tatu Saloranta | 761c9ae | 2014-12-11 19:29:49 -0800 | [diff] [blame] | 1080 | #566: Add support for case-insensitive deserialization (`MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES`) |
| 1081 | (contributed by Michael R) |
Tatu Saloranta | d8be8ad | 2014-10-15 19:23:36 -0700 | [diff] [blame] | 1082 | #571: Add support in ObjectMapper for custom `ObjectReader`, `ObjectWriter` (sub-classes) |
Tatu Saloranta | 2e9defe | 2014-10-12 15:24:39 -0700 | [diff] [blame] | 1083 | #572: Override default serialization of Enums |
| 1084 | (requested by herau@github) |
Tatu Saloranta | 3261453 | 2014-10-07 20:48:01 -0700 | [diff] [blame] | 1085 | #576: Add fluent API for adding mixins |
| 1086 | (contributed by Adam S, adstro@github) |
Tatu Saloranta | 28c4ada | 2015-01-01 17:22:42 -0800 | [diff] [blame] | 1087 | #594: `@JsonValue` on enum not used when enum value is a Map key |
| 1088 | (reported by chrylis@github) |
Tatu Saloranta | 2b917fc | 2014-12-23 21:45:43 -0800 | [diff] [blame] | 1089 | #596: Add support for `@JsonProperty.defaultValue`, exposed via `BeanProperty.getMetadata().getDefaultValue()` |
Cowtowncoder | 1b0e53d | 2014-11-04 09:37:32 -0800 | [diff] [blame] | 1090 | #597: Improve error messaging for cases where JSON Creator returns null (which |
| 1091 | is illegal) |
| 1092 | (contributed by Aurelien L) |
Tatu Saloranta | d672b18 | 2014-11-18 22:36:20 -0800 | [diff] [blame] | 1093 | #599: Add a simple mechanism for avoiding multiple registrations of the same module |
Tatu Saloranta | 4fc7cb0 | 2014-11-08 15:47:44 -0800 | [diff] [blame] | 1094 | #607: Allow (re)config of `JsonParser.Feature`s via `ObjectReader` |
| 1095 | #608: Allow (re)config of `JsonGenerator.Feature`s via `ObjectWriter` |
Tatu Saloranta | a56270a | 2014-11-16 23:05:18 -0800 | [diff] [blame] | 1096 | #614: Add a mechanism for using `@JsonCreator.mode` for resolving possible ambiguity between |
| 1097 | delegating- and property-based creators |
Tatu Saloranta | e4edb6e | 2014-11-17 19:52:11 -0800 | [diff] [blame] | 1098 | #616: Add `SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS` |
Tatu Saloranta | 839bbd6 | 2014-12-09 22:30:40 -0800 | [diff] [blame] | 1099 | #622: Support for non-scalar ObjectId Reference deserialiazation (like JSOG) |
Cowtowncoder | 46ab7a1 | 2014-11-19 14:57:23 -0800 | [diff] [blame] | 1100 | #623: Add `StdNodeBasedDeserializer` |
Tatu Saloranta | 04db8f7 | 2014-11-25 20:02:31 -0800 | [diff] [blame] | 1101 | #630: Add `KeyDeserializer` for `Class` |
Cowtowncoder | 9b8220b | 2014-12-08 17:12:43 -0800 | [diff] [blame] | 1102 | #631: Update `current value` of `JsonParser`, `JsonGenerator` from standard serializers, |
| 1103 | deserializers |
| 1104 | (suggested by Antibrumm@github) |
Tatu Saloranta | 04db8f7 | 2014-11-25 20:02:31 -0800 | [diff] [blame] | 1105 | #633: Allow returning null value from IdResolver to make type information optional |
| 1106 | (requested by Antibrumm@github) |
Cowtowncoder | 72de08e | 2014-11-25 14:58:53 -0800 | [diff] [blame] | 1107 | #634: Add `typeFromId(DatabindContext,String)` in `TypeIdDeserializer` |
Cowtowncoder | 531fac6 | 2014-12-01 09:56:32 -0800 | [diff] [blame] | 1108 | #636: `ClassNotFoundException` for classes not (yet) needed during serialization |
| 1109 | (contributed by mspiegel@github) |
Cowtowncoder | 73a87db | 2014-12-08 17:03:28 -0800 | [diff] [blame] | 1110 | #638: Add annotation-based method(s) for injecting properties during serialization |
Cowtowncoder | 63b33fb | 2014-12-12 14:19:29 -0800 | [diff] [blame] | 1111 | (using @JsonAppend, VirtualBeanPropertyWriter) |
| 1112 | #647: Deserialization fails when @JsonUnwrapped property contains an object with same property name |
| 1113 | (reported by Konstantin L) |
Tatu Saloranta | 42ef5bb | 2014-12-18 20:45:10 -0800 | [diff] [blame] | 1114 | #653: Jackson doesn't follow JavaBean naming convention (added `MapperFeature.USE_STD_BEAN_NAMING`) |
Tatu Saloranta | 499a7b6 | 2014-12-17 20:02:22 -0800 | [diff] [blame] | 1115 | #654: Add support for (re)configuring `JsonGenerator.setRootValueSeparator()` via `ObjectWriter` |
Tatu Saloranta | 5ee6591 | 2014-12-16 22:44:58 -0800 | [diff] [blame] | 1116 | #655: Add `ObjectWriter.writeValues()` for writing value sequences |
Cowtowncoder | 257ae1c | 2014-12-23 15:05:46 -0800 | [diff] [blame] | 1117 | #660: `@JsonCreator`-annotated factory method is ignored if constructor exists |
Cowtowncoder | 02f5f42 | 2014-10-01 11:57:46 -0700 | [diff] [blame] | 1118 | - Allow use of `Shape.ARRAY` for Enums, as an alias to 'use index' |
Tatu Saloranta | 64fd181 | 2014-10-11 18:48:34 -0700 | [diff] [blame] | 1119 | - Start using `JsonGenerator.writeStartArray(int)` to help data formats |
| 1120 | that benefit from knowing number of elements in arrays (and would otherwise |
| 1121 | need to buffer values to know length) |
Tatu Saloranta | 83f1be0 | 2014-12-14 17:30:53 -0800 | [diff] [blame] | 1122 | - Added new overload for `JsonSerializer.isEmpty()`, to eventually solve #588 |
Tatu Saloranta | 7fc3238 | 2014-12-26 17:19:09 -0800 | [diff] [blame] | 1123 | - Improve error messaging (related to [jaxb-annotations#38]) to include known subtype ids. |
Tatu | ebfb648 | 2014-08-25 14:46:03 -0700 | [diff] [blame] | 1124 | |
Tatu Saloranta | e92e450 | 2015-04-23 18:39:50 -0700 | [diff] [blame] | 1125 | 2.4.6 (23-Apr-2015) |
Cowtowncoder | 7ff745c | 2015-03-27 13:09:30 -0700 | [diff] [blame] | 1126 | |
| 1127 | #735: (complete fix) @JsonDeserialize on Map with contentUsing custom deserializer overwrites default behavior |
| 1128 | (reported by blackfyre512@github) (regression due to #604) |
Cowtowncoder | 58f4c95 | 2015-04-02 12:56:15 -0700 | [diff] [blame] | 1129 | $744: Custom deserializer with parent object update fails |
Cowtowncoder | 7ff745c | 2015-03-27 13:09:30 -0700 | [diff] [blame] | 1130 | |
Cowtowncoder | 1d57c20 | 2015-03-26 12:49:58 -0700 | [diff] [blame] | 1131 | 2.4.5.1 (26-Mar-2015) |
Cowtowncoder | cc05493 | 2015-02-16 14:10:21 -0800 | [diff] [blame] | 1132 | |
Cowtowncoder | 1d57c20 | 2015-03-26 12:49:58 -0700 | [diff] [blame] | 1133 | Special one-off "micro patch" for: |
| 1134 | |
| 1135 | #706: Add support for `@JsonUnwrapped` via JSON Schema module |
Cowtowncoder | cc05493 | 2015-02-16 14:10:21 -0800 | [diff] [blame] | 1136 | #707: Error in getting string representation of an ObjectNode with a float number value |
| 1137 | (reported by @navidqar) |
Cowtowncoder | 7ff745c | 2015-03-27 13:09:30 -0700 | [diff] [blame] | 1138 | #735: (partial) @JsonDeserialize on Map with contentUsing custom deserializer overwrites default behavior |
Cowtowncoder | cc05493 | 2015-02-16 14:10:21 -0800 | [diff] [blame] | 1139 | |
Tatu Saloranta | c8e44bb | 2015-01-13 20:21:32 -0800 | [diff] [blame] | 1140 | 2.4.5 (13-Jan-2015) |
Cowtowncoder | 87e4661 | 2014-11-25 14:24:36 -0800 | [diff] [blame] | 1141 | |
| 1142 | #635: Reduce cachability of `Map` deserializers, to avoid problems with per-property config changes |
| 1143 | (regression due to #604) |
Cowtowncoder | 7ec59e4 | 2014-12-17 11:13:40 -0800 | [diff] [blame] | 1144 | #656: `defaultImpl` configuration is ignored for `WRAPPER_OBJECT` |
Cowtowncoder | 7d4201c | 2014-11-26 10:31:40 -0800 | [diff] [blame] | 1145 | - Solve potential cyclic-resolution problem for `UntypedObjectDeserializer` |
Cowtowncoder | 87e4661 | 2014-11-25 14:24:36 -0800 | [diff] [blame] | 1146 | |
Tatu Saloranta | 1425658 | 2014-11-24 18:20:03 -0800 | [diff] [blame] | 1147 | 2.4.4 (24-Nov-2014) |
Tatu Saloranta | f4e9657 | 2014-06-18 15:26:43 -0700 | [diff] [blame] | 1148 | |
Cowtowncoder | bfbb661 | 2014-10-14 11:26:53 -0700 | [diff] [blame] | 1149 | (jackson-core)#158: Setter confusion on assignable types |
| 1150 | (reported by tsquared2763@github) |
Tatu Saloranta | 23328aa | 2014-10-28 22:38:15 -0700 | [diff] [blame] | 1151 | #245: Calls to ObjectMapper.addMixInAnnotations() on an instance returned by ObjectMapper.copy() |
| 1152 | don't work |
| 1153 | (reported by Erik D) |
Cowtowncoder | c28f74c | 2014-10-14 17:21:28 -0700 | [diff] [blame] | 1154 | #580: delegate deserializers choke on a (single) abstract/polymorphic parameter |
| 1155 | (reported by Ian B, tea-dragon@github) |
Tatu Saloranta | 2fd20c5 | 2014-10-21 10:33:13 -0700 | [diff] [blame] | 1156 | #590: Binding invalid Currency gives nonsense at end of the message |
| 1157 | (reported by Jerbell@github) |
Tatu Saloranta | bcccd3e | 2014-10-28 20:32:47 -0700 | [diff] [blame] | 1158 | #592: Wrong `TokenBuffer` delegate deserialization using `@JsonCreator` |
| 1159 | (reported by Eugene L) |
Tatu Saloranta | fd4eb1b | 2014-11-08 20:08:34 -0800 | [diff] [blame] | 1160 | #601: ClassCastException for a custom serializer for enum key in `EnumMap` |
| 1161 | (reported by Benson M) |
Cowtowncoder | 6b9d2c5 | 2014-11-07 16:13:53 -0800 | [diff] [blame] | 1162 | #604: `Map` deserializers not being cached, causing performance problems |
Cowtowncoder | d7a94ed | 2014-11-12 10:00:11 -0800 | [diff] [blame] | 1163 | #610: Fix forward reference in hierarchies |
| 1164 | (contributed by zeito@github) |
Cowtowncoder | 6005b02 | 2014-11-18 13:02:04 -0800 | [diff] [blame] | 1165 | #619: Off by one error in AnnotatedWithParams |
| 1166 | (reported by stevetodd@github) |
Cowtowncoder | edf8674 | 2014-10-31 13:09:07 -0700 | [diff] [blame] | 1167 | - Minor fix to `EnumSerializer` regarding detection "serialize using index" |
Cowtowncoder | 95267b0 | 2014-11-07 15:36:22 -0800 | [diff] [blame] | 1168 | - Minor fix to number serializers, to call proper callback for schema generation |
Cowtowncoder | bfbb661 | 2014-10-14 11:26:53 -0700 | [diff] [blame] | 1169 | |
| 1170 | 2.4.3 (02-Oct-2014) |
Tatu Saloranta | 372598e | 2014-08-19 21:12:39 -0700 | [diff] [blame] | 1171 | |
Cowtowncoder | 0e03ef1 | 2014-09-23 15:31:51 -0700 | [diff] [blame] | 1172 | #496: Wrong result with `new TextNode("false").asBoolean(true)` |
| 1173 | (reported by Ivar R, ivarru@github) |
Cowtowncoder | b126e8e | 2014-09-23 15:46:44 -0700 | [diff] [blame] | 1174 | #511: DeserializationFeature.FAIL_ON_INVALID_SUBTYPE does not work |
| 1175 | (reported by sbelikov@github) |
Tatu Saloranta | 3a1cff2 | 2014-08-19 22:23:00 -0700 | [diff] [blame] | 1176 | #523: MapDeserializer and friends do not report the field/key name for mapping exceptions |
| 1177 | (reported by Ian B, tea-dragon@github) |
Tatu Saloranta | 372598e | 2014-08-19 21:12:39 -0700 | [diff] [blame] | 1178 | #524: @JsonIdentityReference(alwaysAsId = true) Custom resolver is reset to SimpleObjectIdResolver |
| 1179 | (reported by pkokorev@github) |
Cowtowncoder | 9a11fb9 | 2014-09-16 16:45:00 -0700 | [diff] [blame] | 1180 | #541: @JsonProperty in @JsonCreator is conflicting with POJOs getters/attributes |
| 1181 | (reported by fabienrenaud@github) |
Cowtowncoder | 9c2dc36 | 2014-09-15 15:52:31 -0700 | [diff] [blame] | 1182 | #543: Problem resolving self-referential generic types |
Tatu Saloranta | 5e799a2 | 2014-10-02 23:16:26 -0700 | [diff] [blame] | 1183 | #570: Add Support for Parsing All Compliant ISO-8601 Date Formats |
| 1184 | (requested by pfconrey@github) |
Tatu Saloranta | d34aab5 | 2014-09-01 22:39:35 -0700 | [diff] [blame] | 1185 | - Fixed a problem with `acceptJsonFormatVisitor` with Collection/array types that |
| 1186 | are marked with `@JsonValue`; could cause NPE in JSON Schema generator module. |
Tatu Saloranta | 372598e | 2014-08-19 21:12:39 -0700 | [diff] [blame] | 1187 | |
Tatu Saloranta | 4e935cb | 2014-09-20 16:24:53 -0700 | [diff] [blame] | 1188 | 2.4.2 (14-Aug-2014) |
Tatu Saloranta | 585f309 | 2014-07-11 15:56:05 -0700 | [diff] [blame] | 1189 | |
Tatu | 341debd | 2014-08-13 16:06:27 -0700 | [diff] [blame] | 1190 | #515: Mixin annotations lost when using a mixin class hierarchy with non-mixin interfaces |
| 1191 | (reported by 'stevebread@github') |
Tatu Saloranta | f4e9657 | 2014-06-18 15:26:43 -0700 | [diff] [blame] | 1192 | - Fixed a problem related to [jackson-dataformat-smile#19]. |
| 1193 | |
Tatu Saloranta | f4e9657 | 2014-06-18 15:26:43 -0700 | [diff] [blame] | 1194 | 2.4.1.2 (12-Jul-2014) |
| 1195 | |
Tatu Saloranta | 585f309 | 2014-07-11 15:56:05 -0700 | [diff] [blame] | 1196 | Special one-off "micro patch" for: |
| 1197 | |
| 1198 | #503: Concurrency issue inside com.fasterxml.jackson.databind.util.LRUMap.get(Object) |
| 1199 | (reported by fjtc@github) |
| 1200 | |
| 1201 | 2.4.1.1 (18-Jun-2014) |
| 1202 | |
Tatu Saloranta | f4e9657 | 2014-06-18 15:26:43 -0700 | [diff] [blame] | 1203 | Special one-off "micro patch" for: |
Tatu Saloranta | af53189 | 2014-06-04 18:29:07 -0700 | [diff] [blame] | 1204 | |
| 1205 | #491: Temporary work-around for issue #490 (full fix for 2.5 needs to be |
| 1206 | in `jackson-annotations`) |
Tatu | cc9623e | 2014-08-13 12:38:09 -0700 | [diff] [blame] | 1207 | #506: Index is never set for Collection and Array in InvalidFormatException.Reference |
| 1208 | (reported by Fabrice D, fabdouglas@github) |
| 1209 | - Fixed a problem related to [jackson-dataformat-smile#19]. |
Tatu Saloranta | 9ae3610 | 2014-06-09 16:55:57 -0700 | [diff] [blame] | 1210 | |
| 1211 | 2.4.1 (17-Jun-2014) |
Tatu Saloranta | 54fd6d6 | 2014-06-15 15:43:07 -0700 | [diff] [blame] | 1212 | |
| 1213 | #479: NPE on trying to deserialize a `String[]` that contains null |
Tatu Saloranta | af53189 | 2014-06-04 18:29:07 -0700 | [diff] [blame] | 1214 | (reported by huxi@github) |
Tatu | 8705212 | 2014-06-10 11:45:43 -0700 | [diff] [blame] | 1215 | #482: Make date parsing error behavior consistent with JDK |
| 1216 | (suggested by Steve S, sanbeg@github) |
Tatu Saloranta | 9c8022e | 2014-05-16 16:03:44 -0700 | [diff] [blame] | 1217 | #489 (partial): TypeFactory cache prevents garbage collection of custom ClassLoader |
| 1218 | (reported by sftwrengnr@github) |
| 1219 | |
| 1220 | 2.4.0 (02-Jun-2014) |
Tatu Saloranta | 0e1e878 | 2014-01-11 19:51:21 -0800 | [diff] [blame] | 1221 | |
| 1222 | #81: Allow use of @JsonUnwrapped with typed (@JsonTypeInfo) classes, provided |
Tatu Saloranta | 1847015 | 2014-03-16 22:56:04 -0700 | [diff] [blame] | 1223 | that (new) feature `SerializationFeature.FAIL_ON_UNWRAPPED_TYPE_IDENTIFIERS` |
| 1224 | is disabled |
Tatu Saloranta | 77f4497 | 2014-03-16 23:00:04 -0700 | [diff] [blame] | 1225 | (constributed by Ben F, UnquietCode@github) |
| 1226 | #88: Prevent use of type information for `JsonNode` via default typing |
Tatu Saloranta | 6809c86 | 2014-04-14 20:10:15 -0700 | [diff] [blame] | 1227 | (reported by electricmonk@github) |
| 1228 | #149: Allow use of "stringified" indexes for Enum values |
Tatu Saloranta | 85841c9 | 2014-05-05 21:00:59 -0700 | [diff] [blame] | 1229 | (requested by chenboxiang@github) |
| 1230 | #176: Allow use external Object Id resolver (to use with @JsonIdentityInfo etc) |
Tatu Saloranta | 4e387c2 | 2014-05-07 22:51:56 -0700 | [diff] [blame] | 1231 | (implemented by Pascal G) |
Tatu Saloranta | bad574a | 2014-04-12 14:03:07 -0700 | [diff] [blame] | 1232 | #193: Conflicting property name definitions |
Tatu Saloranta | ff56edf | 2014-04-12 14:39:01 -0700 | [diff] [blame] | 1233 | (reported by Stuart J, sgjohnston@github) |
Tatu Saloranta | 5df4c4e | 2014-03-14 12:54:09 -0700 | [diff] [blame] | 1234 | #323: Serialization of the field with deserialization config |
| 1235 | (reported by metanet@github) |
Tatu Saloranta | 8d6fa48 | 2014-03-17 21:06:11 -0700 | [diff] [blame] | 1236 | #327: Should not consider explicitly differing renames a fail, as long as all are explicit |
Tatu Saloranta | 6da83fc | 2014-03-17 21:07:28 -0700 | [diff] [blame] | 1237 | #335: Allow use of `@JsonPropertyOrder(alphabetic=true)` for Map properties |
Tatu Saloranta | 4c55625 | 2016-06-07 19:35:14 -0700 | [diff] [blame] | 1238 | #351: ObjectId does not properly handle forward references during deserialization |
| 1239 | (contributed by pgelinas) |
Tatu Saloranta | 0f7358f | 2014-01-10 09:59:14 -0800 | [diff] [blame] | 1240 | #352 Add `ObjectMapper.setConfig()` for overriding `SerializationConfig`/`DeserializationConfig` |
| 1241 | #353: Problems with polymorphic types, `JsonNode` (related to #88) |
Tatu Saloranta | 11f7811 | 2014-03-14 20:55:09 -0700 | [diff] [blame] | 1242 | (reported by cemo@github) |
Tatu Saloranta | 8d6fa48 | 2014-03-17 21:06:11 -0700 | [diff] [blame] | 1243 | #359: Converted object not using explicitly annotated serializer |
| 1244 | (reported by Florian S [fschopp@github]) |
Tatu Saloranta | 0f7358f | 2014-01-10 09:59:14 -0800 | [diff] [blame] | 1245 | #369: Incorrect comparison for renaming in `POJOPropertyBuilder` |
Tatu Saloranta | 478d4a4 | 2014-03-16 21:53:33 -0700 | [diff] [blame] | 1246 | #375: Add `readValue()`/`readPropertyValue()` methods in `DeserializationContext` |
Tatu | bc43fb4 | 2014-05-21 16:07:20 -0700 | [diff] [blame] | 1247 | #376: Add support for `@JsonFormat(shape=STRING)` for number serializers |
Tatu Saloranta | 0f7358f | 2014-01-10 09:59:14 -0800 | [diff] [blame] | 1248 | #381: Allow inlining/unwrapping of value from single-component JSON array |
| 1249 | (contributed by yinzara@github) |
Tatu Saloranta | 02a6394 | 2014-03-14 18:53:45 -0700 | [diff] [blame] | 1250 | #390: Change order in which managed/back references are resolved (now back-ref |
| 1251 | first, then forward) |
| 1252 | (requested by zAlbee@github) |
Tatu Saloranta | 3ca881e | 2014-02-25 22:06:04 -0800 | [diff] [blame] | 1253 | #407: Properly use null handlers for value types when serializer Collection |
| 1254 | and array types |
| 1255 | (contributed by Will P) |
Tatu Saloranta | 97a0dea | 2014-05-19 23:55:15 -0700 | [diff] [blame] | 1256 | #425: Add support for using `Void.class` as "no class", instead of `NoClass.class` |
Tatu | 3118fa0 | 2014-03-28 16:12:56 -0700 | [diff] [blame] | 1257 | #428: `PropertyNamingStrategy` will rename even explicit name from `@JsonProperty` |
Tatu | 054467f | 2014-03-28 16:09:51 -0700 | [diff] [blame] | 1258 | (reported by turskip@github) |
Tatu Saloranta | dceaec5 | 2014-05-05 21:03:37 -0700 | [diff] [blame] | 1259 | #435: Performance bottleneck in TypeFactory._fromClass |
| 1260 | (reported by Sean D, sdonovanuk@github) |
Tatu | e2f9ea5 | 2014-04-07 09:58:56 -0700 | [diff] [blame] | 1261 | #434: Ensure that DecimalNodes with mathematically equal values are equal |
| 1262 | (contributed by Francis G) |
Tatu Saloranta | 2f58c93 | 2014-04-09 18:46:22 -0700 | [diff] [blame] | 1263 | #435: Performance bottleneck in TypeFactory._fromClass |
| 1264 | (reported by sdonovanuk@github) |
Tatu Saloranta | ab53ab4 | 2014-04-12 12:57:43 -0700 | [diff] [blame] | 1265 | #438: Add support for accessing `@JsonProperty(index=N)` annotations |
Tatu Saloranta | d0b0273 | 2014-04-22 19:17:57 -0700 | [diff] [blame] | 1266 | #442: Make `@JsonUnwrapped` indicate property inclusion |
| 1267 | (suggested by Ben F) |
Tatu Saloranta | f249d9e | 2014-05-19 23:14:51 -0700 | [diff] [blame] | 1268 | #447: ArrayNode#addAll should accept Collection<? extends JsonNode> |
| 1269 | (suggested by alias@github) |
Tatu Saloranta | f339b5c | 2014-05-18 21:12:27 -0700 | [diff] [blame] | 1270 | #461: Add new standard naming strategy, `PropertyNamingStrategy.LowerCaseStrategy` |
Tatu | 7003462 | 2014-05-21 14:41:45 -0700 | [diff] [blame] | 1271 | #463: Add 'JsonNode.asText(String defaultValue)` |
| 1272 | (suggested by Chris C) |
Tatu | 4bc7a73 | 2014-05-27 16:20:01 -0700 | [diff] [blame] | 1273 | #464: Include `JsonLocation` in more mapping exceptions |
| 1274 | (contributed by Andy C (q3aiml@github)) |
Tatu | 5087367 | 2014-05-21 15:20:08 -0700 | [diff] [blame] | 1275 | #465: Make it easier to support serialization of custom subtypes of `Number` |
Tatu Saloranta | 9c5fec2 | 2014-05-28 21:53:45 -0700 | [diff] [blame] | 1276 | #467: Unwanted POJO's embedded in tree via serialization to tree |
| 1277 | (reported by Benson M) |
Tatu Saloranta | bad574a | 2014-04-12 14:03:07 -0700 | [diff] [blame] | 1278 | - Slightly improve `SqlDateSerializer` to support `@JsonFormat` |
Tatu Saloranta | b6da866 | 2014-05-04 18:49:20 -0700 | [diff] [blame] | 1279 | - Improve handling of native type ids (YAML, CBOR) to use non-native type ids |
| 1280 | as fallback |
Tatu Saloranta | 0f7358f | 2014-01-10 09:59:14 -0800 | [diff] [blame] | 1281 | |
Cowtowncoder | 32a52b2 | 2015-09-11 10:11:59 -0700 | [diff] [blame] | 1282 | 2.3.5 (13-Jan-2015) |
| 1283 | |
| 1284 | #496: Wrong result for TextNode("false").asBoolean(true) |
| 1285 | (reported by Ivar R, ivarru@github) |
| 1286 | #543: Problems resolving self-referential generic types. |
| 1287 | #656: defaultImpl configuration is ignored for WRAPPER_OBJECT |
| 1288 | |
Tatu Saloranta | 6822f33 | 2014-11-21 20:37:18 -0800 | [diff] [blame] | 1289 | 2.3.4 (17-Jul-2014) |
| 1290 | |
| 1291 | #459: BeanDeserializerBuilder copy constructor not copying `_injectables` |
| 1292 | #462: Annotation-provided Deserializers are not contextualized inside CreatorProperties |
| 1293 | (reported by aarondav@github) |
| 1294 | |
Tatu Saloranta | 1c4a7b1 | 2014-04-14 20:24:48 -0700 | [diff] [blame] | 1295 | 2.3.3 (10-Apr-2014) |
| 1296 | |
| 1297 | #420: Remove 'final' modifier from `BeanDeserializerBase.deserializeWithType` |
| 1298 | (requested by Ghoughpteighbteau@github) |
| 1299 | #422: Allow use of "True" and "False" as aliases for booleans when coercing from |
| 1300 | JSON String |
| 1301 | #423: Fix `CalendarSerializer` to work with custom format |
| 1302 | (reported by sergeymetallic@github) |
| 1303 | #433: `ObjectMapper`'s `.valueToTree()` wraps `JsonSerializable` objects into a POJONode |
| 1304 | (reported by Francis G) |
| 1305 | - Fix null-handling for `CollectionSerializer` |
| 1306 | |
Tatu Saloranta | 397e457 | 2014-03-06 20:24:47 -0800 | [diff] [blame] | 1307 | 2.3.2 (01-Mar-2014) |
| 1308 | |
| 1309 | #378: Fix a problem with custom enum deserializer construction |
| 1310 | (reported by BokoEnos@github) |
| 1311 | #379: Fix a problem with (re)naming of Creator properties; needed to make |
| 1312 | Paranamer module work with NamingStrategy. |
| 1313 | (reported by Chris P, cpilsworth@github) |
| 1314 | #398: Should deserialize empty (not null) URI from empty String |
| 1315 | (reported by pgieser@github) |
| 1316 | #406: @JsonTypeIdResolver not working with external type ids |
| 1317 | (reported by Martin T) |
| 1318 | #411: NumberDeserializers throws exception with NaN and +/- Infinity |
| 1319 | (reported by clarkbreyman@github) |
| 1320 | #412: ObjectMapper.writerWithType() does not change root name being used |
| 1321 | (repoted by jhalterman@github) |
| 1322 | - Added `BeanSerializerBase._serializeObjectId()` needed by modules that |
| 1323 | override standard BeanSerializer; specifically, XML module. |
| 1324 | |
Tatu Saloranta | c29e06e | 2013-12-27 19:00:17 -0800 | [diff] [blame] | 1325 | 2.3.1 (28-Dec-2013) |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1326 | |
Tatu Saloranta | 37cf6f2 | 2013-11-15 19:31:46 -0800 | [diff] [blame] | 1327 | #346: Fix problem deserializing `ObjectNode`, with @JsonCreator, empty |
| 1328 | JSON Object |
| 1329 | (reported by gaff78@github) |
Tatu Saloranta | ce457af | 2013-12-03 22:27:20 -0800 | [diff] [blame] | 1330 | #358: `IterableSerializer` ignoring annotated content serializer |
| 1331 | (reported by Florian S) |
Tatu | a5810c2 | 2014-02-28 14:15:02 -0800 | [diff] [blame] | 1332 | #361: Reduce sync overhead for SerializerCache by using volatile, double-locking |
Tatu Saloranta | ee7b6d8 | 2013-12-10 19:46:46 -0800 | [diff] [blame] | 1333 | (contributed by stuartwdouglas@github) |
Tatu Saloranta | 9077a58 | 2013-12-07 20:58:58 -0800 | [diff] [blame] | 1334 | #362: UUID output as Base64 String with ObjectMapper.convertValue() |
| 1335 | (reported by jknack@github) |
Tatu Saloranta | df4f7f2 | 2013-12-13 19:55:00 -0800 | [diff] [blame] | 1336 | #367: Make `TypeNameIdResolver` call `TypeResolver` for resolving base type |
| 1337 | (suggested by Ben F) |
Tatu Saloranta | 69b8487 | 2013-12-18 20:17:24 -0800 | [diff] [blame] | 1338 | #370: Fail to add Object Id for POJO with no properties |
| 1339 | (reported by jh3141@github) |
Tatu Saloranta | 00255f2 | 2013-12-10 20:07:07 -0800 | [diff] [blame] | 1340 | - Fix for [jackson-module-afterburner#38]: need to remove @JacksonStdImpl from |
| 1341 | `RawSerializer`, to avoid accidental removal of proper handling. |
Tatu Saloranta | 37cf6f2 | 2013-11-15 19:31:46 -0800 | [diff] [blame] | 1342 | |
Tatu Saloranta | 414b884 | 2013-11-15 08:08:02 -0800 | [diff] [blame] | 1343 | 2.3.0 (13-Nov-2013) |
Tatu Saloranta | df7fb3d | 2013-06-06 14:29:52 -0700 | [diff] [blame] | 1344 | |
Tatu Saloranta | a9f447a | 2013-07-05 10:10:47 -0700 | [diff] [blame] | 1345 | #48: Add support for `InetSocketAddress` |
| 1346 | (contributed by Nick T) |
Tatu | 14722dc | 2013-09-24 11:52:48 -0700 | [diff] [blame] | 1347 | #152: Add support for traversing `JsonNode` with (new!) `JsonPointer` implementation |
| 1348 | (suggested by fge@github) |
Tatu Saloranta | efdc0d4 | 2013-07-10 19:48:39 -0700 | [diff] [blame] | 1349 | #208: Accept "fromString()" as an implicit Creator (factory) method (alias for "valueOf()") |
| 1350 | (requested by David P) |
Tatu Saloranta | 21a81e1 | 2013-06-06 17:31:07 -0700 | [diff] [blame] | 1351 | #215: Allow registering custom `CharacterEscapes` to use for serialization, |
| 1352 | via `ObjectWriter.with(CharacterEscapes)` (and `ObjectMapper.writer(CharacterEscapes)`) |
Tatu Saloranta | e4708eb | 2013-06-06 17:07:10 -0700 | [diff] [blame] | 1353 | #227: Allow "generic" Enum serializers, deserializers, via `SimpleModule` |
Tatu Saloranta | 6f4306b | 2013-08-12 20:25:37 -0700 | [diff] [blame] | 1354 | #234: Incorrect type information for deeply nested Maps |
| 1355 | (reported by Andrei P) |
Tatu Saloranta | 3955abb | 2013-06-06 15:29:58 -0700 | [diff] [blame] | 1356 | #237: Add `DeserializationFeature.FAIL_ON_READING_DUP_TREE_KEY` to optionally |
| 1357 | throw `JsonMappingException` on duplicate keys, tree model (`JsonNode`) |
Tatu Saloranta | 833680a | 2013-07-10 19:37:14 -0700 | [diff] [blame] | 1358 | #238: Allow existence of overlapping getter, is-getter (choose 'regular' getter) |
Tatu Saloranta | f0af8c1 | 2013-07-11 10:20:22 -0700 | [diff] [blame] | 1359 | #239: Support `ByteBuffer` |
| 1360 | (suggested by mckamey@github) |
Tatu Saloranta | 0a42b40 | 2013-08-06 20:39:12 -0700 | [diff] [blame] | 1361 | #240: Make sure `@JsonSerialize.include` does not accidentally override |
| 1362 | class inclusion settings |
| 1363 | (requested by thierryhenrio@github) |
Tatu Saloranta | c6eaf4b | 2013-07-04 20:25:17 -0700 | [diff] [blame] | 1364 | #253: `DelegatingDeserializer` causes problems for Managed/BackReferences |
| 1365 | (reported by bfelaco@github) |
Tatu Saloranta | ae242d7 | 2013-09-20 20:37:21 -0700 | [diff] [blame] | 1366 | #257: Make `UntypedObjectDeserializer` support overides for `List`, `Map` etc |
Tatu Saloranta | 4ec01ea | 2013-11-15 14:25:01 -0800 | [diff] [blame] | 1367 | #268: Add new variant of `ObjectMapper.canSerialize()` that can return `Throwable` |
Tatu Saloranta | af263c3 | 2013-10-24 16:18:50 -0700 | [diff] [blame] | 1368 | that caused false to be returned (if any) |
Tatu Saloranta | 105c58a | 2013-07-26 16:33:43 -0700 | [diff] [blame] | 1369 | #269: Add support for new `@JsonPropertyDescription` via `AnnotationIntrospector` |
| 1370 | as well as `BeanProperty.getMedata().getDescription()` |
Tatu Saloranta | cded3a2 | 2013-08-06 20:29:18 -0700 | [diff] [blame] | 1371 | #270: Add `SerializationFeature.USE_EQUALITY_FOR_OBJECT_ID` to allow use of equality |
| 1372 | (instead of identity) for figuring out when to use Object Id |
| 1373 | (requested by beku8@github) |
Tatu Saloranta | aa321ee | 2013-09-19 19:53:28 -0700 | [diff] [blame] | 1374 | #271: Support handling of `@JsonUnwrapped` for in-built JSON Schema generation |
Tatu Saloranta | bb0e2b5 | 2013-09-12 21:07:31 -0700 | [diff] [blame] | 1375 | #277: Make `TokenBuffer` support new native type and object ids |
Tatu Saloranta | 545e35e | 2013-09-18 14:18:53 -0700 | [diff] [blame] | 1376 | #302: Add `setNamingStrategy` in `Module.SetupContext` |
| 1377 | (suggested by Miguel C) |
Tatu Saloranta | 8caf1b4 | 2013-09-28 16:49:50 -0700 | [diff] [blame] | 1378 | #305: Add support for accessing `TypeFactory` via `TypeIdResolverBase` |
| 1379 | (not yet via `TypeIdResolver` interface), other configuration |
Tatu Saloranta | bb0e2b5 | 2013-09-12 21:07:31 -0700 | [diff] [blame] | 1380 | #306: Allow use of `@JsonFilter` for properties, not just classes |
Tatu Saloranta | cc7524c | 2013-10-19 16:46:17 -0700 | [diff] [blame] | 1381 | #307: Allow use of `@JsonFilter` for Maps in addition to POJOs |
Tatu Saloranta | fae643b | 2013-09-13 23:34:31 -0700 | [diff] [blame] | 1382 | #308: Improve serialization and deserialization speed of `java.util.UUID` by 4x |
| 1383 | (suggested by David P) |
Tatu Saloranta | 616d3e5 | 2013-09-18 14:11:36 -0700 | [diff] [blame] | 1384 | #310: Improve `java.util.UUID` serialization with binary codecs, to use "raw" form. |
Tatu Saloranta | daab1d9 | 2013-09-18 14:07:44 -0700 | [diff] [blame] | 1385 | #311: Make sure that "creator properties" are alphabetically ordered too, if |
| 1386 | so requested. |
Tatu Saloranta | b69857b | 2013-10-14 20:57:31 -0700 | [diff] [blame] | 1387 | #315: Allow per-property definition of null serializer to use, using |
| 1388 | new `@JsonSerialize(nullsUsing=xxx)` annotation property |
Tatu Saloranta | 7012c75 | 2013-10-03 15:27:16 -0700 | [diff] [blame] | 1389 | #317: Fix `JsonNode` support for nulls bound to `ObjectNode`, `ArrayNode` |
| 1390 | (contributed by Seth P) |
Tatu Saloranta | b009194 | 2013-10-18 23:52:30 -0700 | [diff] [blame] | 1391 | #318: Problems with `ObjectMapper.updateValue()`, creator property-backed accessors |
Tatu Saloranta | 09ebacb | 2013-10-07 20:58:53 -0700 | [diff] [blame] | 1392 | #319: Add support for per-call ("contextual") attributes, with defaulting, |
| 1393 | to allow keeping track of state during (de)serialization |
Tatu Saloranta | e4670a7 | 2013-10-14 19:31:39 -0700 | [diff] [blame] | 1394 | #324: Make sure to throw `JsonMappingException` from `EnumDeserializer` creator, |
| 1395 | not `IllegalArgumentException` |
| 1396 | (reported by beverku@github) |
Tatu Saloranta | 34a2e5b | 2013-10-17 22:37:10 -0700 | [diff] [blame] | 1397 | #326: Support `@JsonFilter` for "any getter" properties |
Tatu Saloranta | 2322ce6 | 2013-10-23 22:18:32 -0700 | [diff] [blame] | 1398 | #334: Make `ArrayNode`, `ObjectNode` non-final again |
Tatu Saloranta | 2f04491 | 2013-11-02 20:05:23 -0700 | [diff] [blame] | 1399 | #337: `AnySetter` does not support polymorphic types |
| 1400 | (reported by askvortsov@github) |
Tatu Saloranta | 11f7304 | 2013-11-07 22:25:55 -0800 | [diff] [blame] | 1401 | #340: AtomicReference not working with polymorphic types |
| 1402 | #342: Add `DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES` to make `ObjectMapper` |
| 1403 | throw exception when encountering explicitly ignored properties |
| 1404 | (requested by Ruslan M) |
Tatu Saloranta | b4b5903 | 2013-07-16 14:34:53 -0700 | [diff] [blame] | 1405 | [JACKSON-890]: Support managed/back-references for polymorphic (abstract) types |
Tatu Saloranta | eb68099 | 2013-06-24 19:58:32 -0700 | [diff] [blame] | 1406 | - Add 'BeanPropertyWriter.isUnwrapping()' for future needs (by Afterburner) |
Tatu Saloranta | 955d1f9 | 2013-08-10 19:41:47 -0700 | [diff] [blame] | 1407 | - Add coercions from String "null" (as if null token was parsed) for primitives/Wrappers. |
Tatu Saloranta | 47ac6bd | 2013-09-05 20:55:00 -0700 | [diff] [blame] | 1408 | - Add `JsonDeserializer.handledType()` |
Tatu Saloranta | 3955abb | 2013-06-06 15:29:58 -0700 | [diff] [blame] | 1409 | |
Tatu Saloranta | 252d37c | 2014-08-09 11:47:17 -0700 | [diff] [blame] | 1410 | 2.2.4 (10-Jun-2014) |
| 1411 | |
| 1412 | #292: Problems with abstract `Map`s, `Collection`s, polymorphic deserialization |
| 1413 | #324: EnumDeserializer should throw JsonMappingException, not IllegalArgumentException |
| 1414 | #346: Problems deserializing `ObjectNode` from empty JSON Object, with @JsonCreator |
| 1415 | |
| 1416 | 2.2.3 (22-Aug-2013) |
| 1417 | |
| 1418 | #234: Problems with serializing types for deeply nested generic Maps, default typing |
| 1419 | #251: SerializationFeature.WRITE_BIGDECIMAL_AS_PLAIN ignored with JsonNode |
| 1420 | serialization |
| 1421 | (reported by fge@github) |
| 1422 | #259: Fix a problem with JSON Schema generation for `@JsonValue` |
| 1423 | (reported by Lior L) |
| 1424 | #267: Handle negative, stringified timestamps |
| 1425 | (reported by Drecth@github) |
| 1426 | #281: Make `NullNode` use configured null-value serializer |
| 1427 | #287: Fix problems with converters, Maps with Object values |
| 1428 | (reported by antubis@github) |
| 1429 | #288: Fix problem with serialization converters assigned with annotations |
| 1430 | (reported by cemo@github) |
| 1431 | |
Tatu Saloranta | df7fb3d | 2013-06-06 14:29:52 -0700 | [diff] [blame] | 1432 | 2.2.2 (26-May-2013) |
Tatu Saloranta | 688cbc1 | 2013-04-23 22:58:26 -0700 | [diff] [blame] | 1433 | |
Tatu Saloranta | b7d896f | 2013-05-17 21:54:11 -0700 | [diff] [blame] | 1434 | #216: Problems with Android, 1.6-only types |
Tatu Saloranta | ded6b8a | 2013-05-17 21:07:40 -0700 | [diff] [blame] | 1435 | #217: JsonProcessingExceptions not all wrapped as expected |
| 1436 | (reported by karldmoore@github) |
Tatu Saloranta | 29552ca | 2013-05-17 20:36:07 -0700 | [diff] [blame] | 1437 | #220: ContainerNode missing 'createNumber(BigInteger)' |
| 1438 | (reported by Pascal G) |
Tatu Saloranta | 88f44d8 | 2013-05-17 20:05:18 -0700 | [diff] [blame] | 1439 | #223: Duplicated nulls with @JsonFormat(shape=Shape.ARRAY) |
| 1440 | (reported by lukegh@github) |
Tatu Saloranta | d12a42f | 2013-05-25 21:04:52 -0700 | [diff] [blame] | 1441 | #226: Field mapping fail on deserialization to common referenced object when |
| 1442 | @JsonUnwrapped is used |
| 1443 | (reported by ikvia@github) |
Tatu Saloranta | d2ec7c3 | 2013-05-25 17:02:32 -0700 | [diff] [blame] | 1444 | #232: Converting bound BigDecimal value to tree fails with WRITE_BIGDECIMAL_AS_PLAIN |
| 1445 | (reported by celkings@github) |
Tatu Saloranta | 688cbc1 | 2013-04-23 22:58:26 -0700 | [diff] [blame] | 1446 | - Minor fix to handle primitive types for key deserializer lookups |
Tatu Saloranta | 580b85f | 2013-05-01 21:37:09 -0700 | [diff] [blame] | 1447 | - Add convenience method `MappingIterator.getCurrentLocation()` |
| 1448 | (suggested by Tomdz@github) |
Tatu Saloranta | 688cbc1 | 2013-04-23 22:58:26 -0700 | [diff] [blame] | 1449 | |
Tatu Saloranta | ef9e64f | 2013-05-26 22:18:44 -0700 | [diff] [blame] | 1450 | 2.2.1 (03-May-2013) |
| 1451 | |
| 1452 | #214: Problem with LICENSE, NOTICE, Android packaging |
| 1453 | (reported by thierryd@github) |
| 1454 | |
Tatu Saloranta | 688cbc1 | 2013-04-23 22:58:26 -0700 | [diff] [blame] | 1455 | 2.2.0 (22-Apr-2013) |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1456 | |
Tatu Saloranta | 6426e04 | 2012-11-12 14:31:50 -0800 | [diff] [blame] | 1457 | Fixes: |
| 1458 | |
Tatu Saloranta | 43307b4 | 2013-03-15 15:37:45 -0700 | [diff] [blame] | 1459 | #23: Fixing typing of root-level collections |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1460 | #118: JsonTypeInfo.as.EXTERNAL_PROPERTY not working correctly |
Tatu Saloranta | a795fa2 | 2013-01-18 20:05:11 -0800 | [diff] [blame] | 1461 | with missing type id, scalar types |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1462 | #130: TimeZone not set for GregorianCalendar, even if configured |
| 1463 | #144: MissingNode.isValueNode() should return 'false' |
Tatu Saloranta | 99d9d18 | 2013-01-11 11:47:38 -0800 | [diff] [blame] | 1464 | (reported by 'fge@github') |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1465 | #146: Creator properties were not being renamed as expected |
Tatu Saloranta | f6ce07d | 2013-01-12 11:29:46 -0800 | [diff] [blame] | 1466 | (contributed by Christoper C) |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1467 | #188: Problem with ObjectId serialization, 'alwaysAsId' references |
Tatu Saloranta | 99d9d18 | 2013-01-11 11:47:38 -0800 | [diff] [blame] | 1468 | |
Tatu Saloranta | d8b4071 | 2012-11-20 19:01:14 -0800 | [diff] [blame] | 1469 | Improvements: |
| 1470 | |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1471 | #116: JavaType implements `java.lang.reflect.Type` (as does `TypeReference`) |
| 1472 | #147: Defer reporting of problems with missing creator parameters |
Tatu Saloranta | 6f93156 | 2013-01-12 14:13:42 -0800 | [diff] [blame] | 1473 | (contributed by Christoper C) |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1474 | #155: Make `ObjectNode` and `ArrayNode` final (other node types already were) |
Tatu Saloranta | 8640b59 | 2013-02-08 11:04:22 -0800 | [diff] [blame] | 1475 | (requested by fge@github) |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1476 | #161: Add deserializer for java.util.concurrent.ArrayBlockingQueue |
| 1477 | #173: Add 'JsonNode.traverse(ObjectCodec)' for convenience |
Tatu Saloranta | 1e0a766 | 2013-04-08 15:34:02 -0700 | [diff] [blame] | 1478 | #181: Improve error reporting for missing '_valueDeserializer' |
Tatu Saloranta | dfb697a | 2013-03-28 15:11:48 -0700 | [diff] [blame] | 1479 | #194: Add `FloatNode` type in tree model (JsonNode) |
| 1480 | (requested by msteiger@github) |
Tatu Saloranta | 10dc5c9 | 2013-04-07 16:11:10 -0700 | [diff] [blame] | 1481 | #199: Allow deserializing `Iterable` instances (as basic `Collection`s) |
| 1482 | (requested by electrum@github) |
Tatu Saloranta | 9adb08e | 2013-04-11 16:29:59 -0700 | [diff] [blame] | 1483 | #206: Make 'ObjectMapper.createDeserializationContext()' overridable |
| 1484 | (requested by noter@github) |
Tatu Saloranta | 0a4a031 | 2013-04-16 20:02:37 -0700 | [diff] [blame] | 1485 | #207: Add explicit support for `short` datatypes, for tree model |
| 1486 | (contributed by msteiger@github) |
Tatu Saloranta | d8b4071 | 2012-11-20 19:01:14 -0800 | [diff] [blame] | 1487 | |
Tatu Saloranta | 6426e04 | 2012-11-12 14:31:50 -0800 | [diff] [blame] | 1488 | New features: |
| 1489 | |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1490 | #120: Extend BeanDeserializerModifier to work with non-POJO deserializers |
| 1491 | #121: Extend BeanSerializerModifier to work with non-POJO serializers |
| 1492 | #124: Add support for serialization converters (@JsonSerializer(converter=...)) |
| 1493 | #124: Add support for deserialization converters (@JsonDeserializer(converter=...)) |
| 1494 | #140: Add 'SerializationFeature.WRITE_BIGDECIMAL_AS_PLAIN' to allow forcing |
Tatu Saloranta | ac5edb8 | 2013-01-06 08:27:50 -0800 | [diff] [blame] | 1495 | of non-scientific notation when serializing BigDecimals. |
| 1496 | (suggested by phedny@github) |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1497 | #148: Add 'DeserializationFeature.FAIL_ON_INVALID_SUBTYPE`, which allows mapping |
Tatu Saloranta | 192c1dc | 2013-02-06 22:28:58 -0800 | [diff] [blame] | 1498 | entries with missing or invalid type id into null references (instead of failing). |
| 1499 | Also allows use of '@JsonTypeInfo.defaultImpl = NoClass.class' as alternative. |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1500 | #159: Add more accessors in 'MappingIterator': getParser(), getParserSchema(), |
Tatu Saloranta | de7e924 | 2013-02-04 16:24:40 -0800 | [diff] [blame] | 1501 | readAll() |
| 1502 | (suggested by Tom D) |
Tatu Saloranta | 8f2ea6c | 2013-03-28 15:46:06 -0700 | [diff] [blame] | 1503 | #190: Add 'MapperFeature.ALLOW_FINAL_FIELDS_AS_MUTATORS' (default: true) for |
| 1504 | pruning out final fields (to avoid using as mutators) |
| 1505 | (requested by Eric T) |
Tatu Saloranta | 21d8357 | 2013-03-28 14:18:48 -0700 | [diff] [blame] | 1506 | #195: Add 'MapperFeature.INFER_PROPERTY_MUTATORS' (default: enabled) for finer |
| 1507 | control of what mutators are auto-detected. |
| 1508 | (requested by Dain S) |
Tatu Saloranta | 4208653 | 2013-04-11 16:42:08 -0700 | [diff] [blame] | 1509 | #198: Add SPI metadata, handling in ObjectMapper (findModules()), for |
| 1510 | automatic registration of auto-detected extension modules |
| 1511 | (suggested by 'beamerblvd@github') |
Tatu Saloranta | c7112ff | 2013-04-09 15:47:23 -0700 | [diff] [blame] | 1512 | #203: Added new features to support advanced date/time handling: |
| 1513 | - SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS |
| 1514 | - DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS |
| 1515 | - DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE |
Tatu Saloranta | d8b4071 | 2012-11-20 19:01:14 -0800 | [diff] [blame] | 1516 | |
Tatu Saloranta | 4f62fed | 2013-01-11 19:43:26 -0800 | [diff] [blame] | 1517 | Other: |
| 1518 | |
Tatu Saloranta | 20d53b0 | 2013-03-10 22:56:23 -0700 | [diff] [blame] | 1519 | #126: Update JDK baseline to 1.6 |
Tatu Saloranta | a795fa2 | 2013-01-18 20:05:11 -0800 | [diff] [blame] | 1520 | * API under 'com.fasterxml.jackson.databind.jsonFormatVisitors' changed significantly |
| 1521 | based on experiences with external JSON Schema generator. |
| 1522 | * Version information accessed via code-generated access class, instead of reading |
| 1523 | VERSION.txt |
Tatu Saloranta | cc73752 | 2013-03-03 13:11:25 -0800 | [diff] [blame] | 1524 | * Added 2 methods in Converter interface: getInputType(), getOutputType(), |
| 1525 | to allow programmatic overrides (needed by JAXB annotation module) |
Tatu Saloranta | 4f62fed | 2013-01-11 19:43:26 -0800 | [diff] [blame] | 1526 | |
Tatu Saloranta | 7126f55 | 2013-03-10 20:14:41 -0700 | [diff] [blame] | 1527 | 2.1.4 (26-Feb-2013) |
| 1528 | |
| 1529 | * [JACKSON-887]: StackOverflow with parameterized sub-class field |
| 1530 | (reported by Alexander M) |
| 1531 | * [#130]: TimeZone not set for GregorianCalendar, when deserializing |
| 1532 | * [#157]: NPE when registering module twice |
| 1533 | * [#162]: JsonNodeFactory: work around an old bug with BigDecimal and zero |
| 1534 | (submitted by fge@github) |
| 1535 | * [#166]: Incorrect optimization for `ObjectMapper.convertValue(Class)` |
| 1536 | (reported by Eric T) |
| 1537 | * [#167]: Problems with @JsonValue, polymorphic types (regression from 1.x) |
| 1538 | (reported by Eric T) |
| 1539 | * [#170]: Problems deserializing `java.io.File` if creator auto-discovery disabled |
| 1540 | (reported by Eric T) |
| 1541 | * [#175]: NPE for JsonMappingException, if no path is specified |
| 1542 | (reported by bramp@github) |
| 1543 | |
| 1544 | 2.1.3 (19-Jan-2013) |
| 1545 | |
| 1546 | * [Issue#141]: ACCEPT_EMPTY_STRING_AS_NULL_OBJECT not working for enums |
| 1547 | * [Issue#142]: Serialization of class containing EnumMap with polymorphic enum |
| 1548 | fails to generate class type data |
| 1549 | (reported by kidavis4@github) |
| 1550 | |
| 1551 | 2.1.2 (04-Dec-2012) |
| 1552 | |
| 1553 | * [Issue#106]: NPE in ObjectArraySerializer.createContextual(...) |
| 1554 | * [Issue#117]: HandlerInstantiator defaulting not working |
| 1555 | (reported by Alexander B) |
| 1556 | * [Issue#118]: Problems with JsonTypeInfo.As.EXTERNAL_PROPERTY, scalar values |
| 1557 | (reported by Adva11@github) |
| 1558 | * [Issue#119]: Problems with @JsonValue, JsonTypeInfo.As.EXTERNAL_PROPERTY |
| 1559 | (reported by Adva11@github) |
| 1560 | * [Issue#122]: ObjectMapper.copy() was not copying underlying mix-in map |
| 1561 | (reported by rzlo@github) |
| 1562 | |
Tatu Saloranta | 6426e04 | 2012-11-12 14:31:50 -0800 | [diff] [blame] | 1563 | 2.1.1 (11-Nov-2012) |
Tatu Saloranta | 41a152a | 2012-10-20 11:18:03 -0700 | [diff] [blame] | 1564 | |
| 1565 | Fixes: |
| 1566 | |
Tatu Saloranta | 002b54f | 2012-11-08 13:21:50 -0800 | [diff] [blame] | 1567 | * [JACKSON-875]: Enum values not found if Feature.USE_ANNOTATIONS disabled |
| 1568 | (reported by Laurent P) |
Tatu Saloranta | 41a152a | 2012-10-20 11:18:03 -0700 | [diff] [blame] | 1569 | * [Issue#93]: ObjectNode.setAll() broken; would not add anything for |
| 1570 | empty ObjectNodes. |
| 1571 | (reported by Francis G) |
Tatu Saloranta | a50e76b | 2012-11-01 19:34:49 -0700 | [diff] [blame] | 1572 | * Making things implement java.io.Serializable: |
Tatu Saloranta | 9252171 | 2012-11-06 16:59:51 -0800 | [diff] [blame] | 1573 | - Issues: #94, #99, #100, #102 |
| 1574 | (reported by Sean B) |
Tatu Saloranta | 231be53 | 2012-10-26 18:19:42 -0700 | [diff] [blame] | 1575 | * [Issue#96]: Problem with JsonTypeInfo.As.EXTERNAL_PROPERTY, defaultImpl |
| 1576 | (reported by Adva11@github) |
Tatu Saloranta | 41a152a | 2012-10-20 11:18:03 -0700 | [diff] [blame] | 1577 | |
Tatu Saloranta | a50e76b | 2012-11-01 19:34:49 -0700 | [diff] [blame] | 1578 | 2.1.0 (08-Oct-2012) |
Tatu Saloranta | 41a152a | 2012-10-20 11:18:03 -0700 | [diff] [blame] | 1579 | |
Tatu Saloranta | 3e96cf6 | 2012-10-05 21:38:16 -0700 | [diff] [blame] | 1580 | New minor version for 2.x series. Major improvements in multiple areas, |
| 1581 | including: |
| 1582 | |
| 1583 | - Dataformat auto-detection |
| 1584 | - More `@JsonFormat.shape` variant to serialize Collections as |
| 1585 | JSON Objects, POJOs as JSON Arrays (csv-like). |
| 1586 | - Much more configuration accessible via ObjectReader, ObjectWriter |
| 1587 | - New mechanism for JSON Schema generation, other uses (in future) |
Tatu Saloranta | c277641 | 2012-05-14 19:40:57 -0700 | [diff] [blame] | 1588 | |
| 1589 | Fixes: |
| 1590 | |
Tatu Saloranta | 01006e3 | 2012-08-24 14:35:55 -0700 | [diff] [blame] | 1591 | * [JACKSON-830]/[Issue#19]: Change OSGi bundle name to be fully-qualified |
Tatu Saloranta | e8c1b53 | 2012-08-29 11:49:21 -0700 | [diff] [blame] | 1592 | * ]JACKSON-847]: Make @JsonIdentityInfo work with property-based creator |
Tatu Saloranta | bc483d1 | 2012-08-01 23:35:59 -0700 | [diff] [blame] | 1593 | * [JACKSON-851]: State corruption with ObjectWriter, DefaultPrettyPrinter |
| 1594 | (reported by Duncan A) |
Tatu Saloranta | 8075bfa | 2012-09-29 22:55:20 -0700 | [diff] [blame] | 1595 | * [Issue#75]: Too aggressive KeySerializer caching |
Tatu Saloranta | 01006e3 | 2012-08-24 14:35:55 -0700 | [diff] [blame] | 1596 | * Minor fix wrt [Issue#11], coercion needed extra checks |
Tatu Saloranta | fcbce11 | 2012-06-28 14:43:43 -0700 | [diff] [blame] | 1597 | |
Tatu Saloranta | ce7398c | 2012-05-30 20:45:03 -0700 | [diff] [blame] | 1598 | Improvements: |
| 1599 | |
Tatu Saloranta | ac1f2ab | 2012-08-01 19:49:20 -0700 | [diff] [blame] | 1600 | * [JACKSON-758]: Remove 'IOException' from throws clauses of "writeValueAsString" |
| 1601 | and "writeValueAsBytes" of ObjectMapper/ObjectWriter |
| 1602 | (suggested by G-T Chen) |
Tatu Saloranta | ce7398c | 2012-05-30 20:45:03 -0700 | [diff] [blame] | 1603 | * [JACKSON-839]: Allow "upgrade" of integer number types for |
| 1604 | UntypedObjectDeserializer, even with default typing enabled. |
Tatu Saloranta | 11cec4d | 2012-07-22 22:33:20 -0700 | [diff] [blame] | 1605 | * [JACKSON-850]: Allow use of zero-arg factory methods as "default creator" |
| 1606 | (suggested by Razvan D) |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1607 | * [Issue#9]: Implement 'required' JSON Schema attribute for bean properties |
| 1608 | * [Issue#20]: Add new exception type, InvalidFormatException (sub-type of |
Tatu Saloranta | dd34856 | 2012-07-18 17:25:02 -0700 | [diff] [blame] | 1609 | JsonMappingException) to indicate data format problems |
| 1610 | (suggested by HolySamosa@github) |
Tatu Saloranta | 2aa6dc8 | 2012-08-29 23:06:06 -0700 | [diff] [blame] | 1611 | * [Issue#30]: ObjectReader and ObjectWriter now try to pre-fetch root |
Tatu Saloranta | 15d6ea2 | 2012-08-03 18:29:23 -0700 | [diff] [blame] | 1612 | (de)serializer if possible; minor performance improvement (2% for small POJOs). |
Tatu Saloranta | 2aa6dc8 | 2012-08-29 23:06:06 -0700 | [diff] [blame] | 1613 | * [Issue#33]: Simplified/clarified definition of 'ObjectReader.readValues()'; |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1614 | minor change in behavior for JSON Array "wrapped" sequences |
Tatu Saloranta | 2aa6dc8 | 2012-08-29 23:06:06 -0700 | [diff] [blame] | 1615 | * [Issue#60]: Add 'JsonNode.hasNonNull(...)' method(s) |
| 1616 | (suggested by Jeff S on mailing list) |
Tatu Saloranta | eb4e6b1 | 2012-08-30 19:02:17 -0700 | [diff] [blame] | 1617 | * [Issue#64]: Add new "standard" PropertyNamingStrategy, PascalCaseStrategy |
| 1618 | (PropertyNamingStrategy.PASCAL_CASE_TO_CAMEL_CASE) |
| 1619 | (contributed by Sean B) |
Tatu Saloranta | 0dc8dec | 2012-09-06 17:08:29 -0700 | [diff] [blame] | 1620 | * [Issue#65]: Add getters to `ObjectMapper`, DeserializationContext/-Factory. |
| 1621 | (contributed by Dmitry K) |
Tatu Saloranta | ab374c7 | 2012-09-04 22:10:52 -0700 | [diff] [blame] | 1622 | * [Issue#69]: Add `PropertyName` abstraction, new methods in AnnotationIntrospector |
Tatu Saloranta | 4984d59 | 2012-09-30 18:04:39 -0700 | [diff] [blame] | 1623 | * [Issue#80]: Make `DecimalNode` normalize input, to make "1.0" and "1.00"equal |
| 1624 | (reported by fge@github) |
Tatu Saloranta | ce7398c | 2012-05-30 20:45:03 -0700 | [diff] [blame] | 1625 | |
Tatu Saloranta | 6cada0a | 2012-07-31 22:24:03 -0700 | [diff] [blame] | 1626 | New features: |
| 1627 | |
Tatu Saloranta | d163f5e | 2012-08-20 16:49:15 -0700 | [diff] [blame] | 1628 | * [Issue#15]: Support data format auto-detection via ObjectReader (added |
| 1629 | 'withFormatDetection(...)' fluent factories) |
Tatu Saloranta | 767cead | 2012-08-13 16:27:45 -0700 | [diff] [blame] | 1630 | * [Issue#21]: Add 'ObjectNode.set(...)' method (and related) to improve |
| 1631 | chaining, semantic consistency of Tree Model API |
| 1632 | (suggested by fge@Github) |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1633 | * [Issue#22]: Add 'ObjectMapper.setAnnotationIntrospectors()' which allows |
Tatu Saloranta | 15d6ea2 | 2012-08-03 18:29:23 -0700 | [diff] [blame] | 1634 | defining different introspectors for serialization, deserialization |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1635 | * [Issue#24]: Allow serialization of Enums as JSON Objects |
Tatu Saloranta | 15d6ea2 | 2012-08-03 18:29:23 -0700 | [diff] [blame] | 1636 | (suggested by rveloso@github) |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1637 | * [Issue#28]: Add 'ObjectMapper.copy()', to create non-linked copy of |
| 1638 | mapper, with same configuration settings |
| 1639 | * [Issue#29]: Allow serializing, deserializing POJOs as JSON Arrays |
Tatu Saloranta | 6cada0a | 2012-07-31 22:24:03 -0700 | [diff] [blame] | 1640 | by using `@JsonFormat(shape=Shape.ARRAY)` |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1641 | * [Issue#40]: Allow serialization of Collections as JSON Objects |
Tatu Saloranta | 15d6ea2 | 2012-08-03 18:29:23 -0700 | [diff] [blame] | 1642 | (and deserialization from) |
Tatu Saloranta | 8d2cdd7 | 2012-08-13 23:10:51 -0700 | [diff] [blame] | 1643 | (suggested by 'rveloso@github') |
| 1644 | * [Issue#42]: Allow specifying Base64 variant to use for Base64-encoded data |
| 1645 | using ObjectReader.with(Base64Variant), ObjectWriter.with(Base64Variant). |
| 1646 | (suggested by 'mpfau@github') |
Tatu Saloranta | 023d8bd | 2012-08-13 22:17:28 -0700 | [diff] [blame] | 1647 | * [Issue#45]: Add '@JsonNaming' annotation to define per-class PropertyNamingStrategy |
| 1648 | (suggested by Mark W) |
Tatu Saloranta | 4526796 | 2012-08-28 10:10:43 -0700 | [diff] [blame] | 1649 | * [Pull#58]: Make 'MappingIterator' implement 'Closable' |
| 1650 | (contributed by Pascal G) |
Tatu Saloranta | f412e85 | 2012-09-11 22:05:51 -0700 | [diff] [blame] | 1651 | * [Issue#72]: Add 'MapperFeature.USE_WRAPPER_NAME_AS_PROPERTY_NAME' to use |
| 1652 | wrapper name annotations for renaming properties |
Tatu Saloranta | 06a23ce | 2012-10-03 17:18:47 -0700 | [diff] [blame] | 1653 | * [Issue#87]: Add 'StdDelegatingSerializer', 'StdDelegatingDeserializer' to |
| 1654 | simplify writing of two-step handlers |
Tatu Saloranta | 88040e2 | 2012-08-24 13:33:00 -0700 | [diff] [blame] | 1655 | * (issue #4 of jackson-annotations): Add `@JsonIdentityReference(alwaysAsId=true)` |
Tatu Saloranta | 6cada0a | 2012-07-31 22:24:03 -0700 | [diff] [blame] | 1656 | to force ALL references to an object written as Object Id, even the first one. |
Tatu Saloranta | 15d6ea2 | 2012-08-03 18:29:23 -0700 | [diff] [blame] | 1657 | * Added 'ObjectReader#withHandler' to allow for reconfiguring deserialization |
| 1658 | problem handler |
| 1659 | (suggested by 'electricmonk') |
Tatu Saloranta | 6cada0a | 2012-07-31 22:24:03 -0700 | [diff] [blame] | 1660 | |
Tatu Saloranta | 2b4086a | 2012-06-29 20:27:24 -0700 | [diff] [blame] | 1661 | Other changes: |
| 1662 | |
| 1663 | * New variant of AnnotationIntrospector.getFormat(), to support class |
| 1664 | annotations |
Tatu Saloranta | 134d356 | 2012-07-05 21:38:46 -0700 | [diff] [blame] | 1665 | * It is now possible to serialize instances of plain old Object, iff |
| 1666 | 'FAIL_ON_EMPTY_BEANS' is disabled. |
Tatu Saloranta | 9b84796 | 2012-09-11 15:16:41 -0700 | [diff] [blame] | 1667 | * Trying to remove reference to "JSON" in datatype conversion errors |
| 1668 | (since databinding is format-agnostic) |
Tatu Saloranta | 2b4086a | 2012-06-29 20:27:24 -0700 | [diff] [blame] | 1669 | |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1670 | INCOMPATIBILITIES: (rats!) |
| 1671 | |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1672 | * Note that [Issue#33] (see above) is, technically speaking, backwards |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1673 | imcompatible change. It is estimated that it should NOT affect most |
| 1674 | users, as changes are to edge cases (and undocumented ones at that). |
| 1675 | However, it can potentially cause problems with upgrade. |
Tatu Saloranta | 45c7f24 | 2012-10-03 22:36:17 -0700 | [diff] [blame] | 1676 | * Implementation of `JsonFormatVisitable` resulting in 2 new methods |
| 1677 | being added in `BeanPropertyFilter` interface -- this is unfortunate, |
| 1678 | but was required to support full traversability. |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1679 | |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1680 | 2.0.4 (26-Jun-2012) |
| 1681 | |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1682 | * [Issue#6]: element count for PrettyPrinter, endObject wrong |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1683 | (reported by "thebluemountain") |
| 1684 | * [JACKSON-838]: Utf8StreamParser._reportInvalidToken() skips letters |
| 1685 | from reported token name |
Tatu Saloranta | 023d8bd | 2012-08-13 22:17:28 -0700 | [diff] [blame] | 1686 | (reported by LĂ³rĂ¡nt PintĂ©r) |
Tatu Saloranta | a12061f | 2012-07-20 21:42:26 -0700 | [diff] [blame] | 1687 | * [JACKSON-841] Data is doubled in SegmentedStringWriter output |
| 1688 | (reported by Scott S) |
| 1689 | * [JACKSON-842] ArrayIndexOutOfBoundsException when skipping C-style comments |
| 1690 | (reported by Sebastien R) |
| 1691 | |
| 1692 | 2.0.3: no version 2.0.3 released -- only used for extension modules |
| 1693 | |
Tatu Saloranta | c277641 | 2012-05-14 19:40:57 -0700 | [diff] [blame] | 1694 | 2.0.2 [14-May-2012] |
Tatu Saloranta | 23e267c | 2012-04-23 19:22:04 -0700 | [diff] [blame] | 1695 | |
| 1696 | Fixes: |
| 1697 | |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1698 | * [Issue#14]: Annotations were not included from parent classes of |
Tatu Saloranta | 1b30b1a | 2012-04-28 00:43:34 -0700 | [diff] [blame] | 1699 | mix-in classes |
| 1700 | (reported by @guillaup) |
Tatu Saloranta | e16034e | 2012-04-30 22:51:36 -0700 | [diff] [blame] | 1701 | * [JACKSON-824]: Combination of JSON Views, ObjectMapper.readerForUpdating() |
| 1702 | was not working |
| 1703 | (reported by Nir S) |
Tatu Saloranta | b8f79ed | 2012-05-14 19:04:53 -0700 | [diff] [blame] | 1704 | (and all fixes from 1.9.7) |
Tatu Saloranta | 1b30b1a | 2012-04-28 00:43:34 -0700 | [diff] [blame] | 1705 | |
Tatu Saloranta | cfa2fc1 | 2012-04-27 19:31:28 -0700 | [diff] [blame] | 1706 | Improvements: |
| 1707 | |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1708 | * [Issue#11]: Improve ObjectMapper.convertValue()/.treeToValue() to use |
Tatu Saloranta | cfa2fc1 | 2012-04-27 19:31:28 -0700 | [diff] [blame] | 1709 | cast if possible |
| 1710 | |
Tatu Saloranta | 23e267c | 2012-04-23 19:22:04 -0700 | [diff] [blame] | 1711 | 2.0.1 [23-Apr-2012] |
Tatu Saloranta | 737ad05 | 2012-04-02 21:04:47 -0700 | [diff] [blame] | 1712 | |
| 1713 | Fixes: |
| 1714 | |
Tatu Saloranta | fc3db39 | 2012-04-23 18:49:08 -0700 | [diff] [blame] | 1715 | * [JACKSON-827] Ensure core packages work on JDK 1.5 |
| 1716 | (reported by Pascal g) |
Tatu Saloranta | ae4ea6e | 2012-04-19 19:47:53 -0700 | [diff] [blame] | 1717 | * [JACKSON-829] Custom serializers not working for List<String> properties, |
| 1718 | @JsonSerialize(contentUsing) |
| 1719 | (reported by James R) |
| 1720 | |
Tatu Saloranta | 737ad05 | 2012-04-02 21:04:47 -0700 | [diff] [blame] | 1721 | Improvements: |
| 1722 | |
Tatu Saloranta | 7ccce01 | 2012-08-04 16:17:54 -0700 | [diff] [blame] | 1723 | * [Issue#5]: Add support for maps with java.util.Locale keys to the set of |
Tatu Saloranta | 737ad05 | 2012-04-02 21:04:47 -0700 | [diff] [blame] | 1724 | StdKeyDeserializers |
| 1725 | (contributed by Ryan G) |
| 1726 | |
Tatu Saloranta | fc3db39 | 2012-04-23 18:49:08 -0700 | [diff] [blame] | 1727 | 2.0.0 [25-Mar-2012] |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1728 | |
| 1729 | Fixes: |
| 1730 | |
Tatu Saloranta | 337feca | 2012-03-19 19:11:21 -0700 | [diff] [blame] | 1731 | * [JACKSON-368]: Problems with managed references, abstract types |
Tatu | 3af61ff | 2012-01-19 15:58:41 -0800 | [diff] [blame] | 1732 | * [JACKSON-711]: Delegating @JsonCreator did not work with Injectable values |
Tatu Saloranta | e1ceccd | 2012-03-04 19:52:36 -0800 | [diff] [blame] | 1733 | * [JACKSON-798]: Problem with external type id, creators |
| 1734 | (reported by Casey L) |
Tatu Saloranta | deaee9c | 2012-03-25 12:01:34 -0700 | [diff] [blame] | 1735 | (and all fixes up until and including 1.9.6) |
Tatu | 9e6c28f | 2012-01-19 15:58:08 -0800 | [diff] [blame] | 1736 | |
Tatu Saloranta | e1ceccd | 2012-03-04 19:52:36 -0800 | [diff] [blame] | 1737 | Improvements: |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1738 | |
Tatu Saloranta | 28ff1a9 | 2012-01-17 17:54:51 -0800 | [diff] [blame] | 1739 | * [JACKSON-546]: Indicate end-of-input with JsonMappingException instead |
| 1740 | of EOFException, when there is no parsing exception |
Tatu Saloranta | ee6e3d1 | 2012-01-17 17:28:39 -0800 | [diff] [blame] | 1741 | * [JACKSON-664]: Reduce overhead of type resolution by adding caching |
| 1742 | in TypeFactory |
Tatu Saloranta | 7555fa2 | 2012-01-14 23:03:04 -0800 | [diff] [blame] | 1743 | * [JACKSON-690]: Pass DeserializationContext through ValueInstantiator |
Tatu | 418a239 | 2012-01-12 21:52:07 -0800 | [diff] [blame] | 1744 | * [JACKSON-695]: Add 'isEmpty(value)' in JsonSerializer to allow |
| 1745 | customizing handling of serialization of empty values |
Tatu Saloranta | 15fb6ff | 2012-01-14 10:31:35 -0800 | [diff] [blame] | 1746 | * [JACKSON-710]: 'ObjectMapper.convertValue()' should ignore root value |
| 1747 | wrapping/unwrapping settings |
Tatu | 6066826 | 2012-01-19 14:21:12 -0800 | [diff] [blame] | 1748 | * [JACKSON-730] Split various features (JsonParser, JsonGenerator, |
| 1749 | SerializationConfig, DeserializationConfig) into per-factory |
Tatu Saloranta | 048832d | 2012-03-09 21:48:40 -0800 | [diff] [blame] | 1750 | features (MapperFeature, JsonFactory.Feature) an per |
Tatu | 6066826 | 2012-01-19 14:21:12 -0800 | [diff] [blame] | 1751 | instance features (existing ones) |
Tatu Saloranta | a03e0eb | 2012-01-14 14:01:39 -0800 | [diff] [blame] | 1752 | * [JACKSON-732]: Allow 'AnnotationIntrospector.findContentDeserializer()' |
| 1753 | (and similar) to return instance, not just Class<?> for instance |
| 1754 | (requested by James R) |
Tatu Saloranta | 4b02e9e | 2012-02-03 18:41:29 -0800 | [diff] [blame] | 1755 | * [JACKSON-736]: Add (more) access to array, container and map serializers |
Tatu Saloranta | c166fa3 | 2012-02-03 19:42:41 -0800 | [diff] [blame] | 1756 | * [JACKSON-737]: Allow accessing of "creator properties" for BeanDeserializer |
Tatu | cbbfbd3 | 2012-01-20 16:07:51 -0800 | [diff] [blame] | 1757 | * [JACKSON-748]: Add 'registerSubtypes' to 'Module.setupContext' (and SimpleModule) |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1758 | * [JACKSON-749]: Make @JsonValue work for Enum deserialization |
Tatu | b471a04 | 2012-01-27 11:51:39 -0800 | [diff] [blame] | 1759 | * [JACKSON-769]: ObjectNode/ArrayNode: change 'put', 'insert', 'add' to return |
| 1760 | 'this node' (unless already returning something) |
Tatu Saloranta | e5d7769 | 2012-01-29 11:20:26 -0800 | [diff] [blame] | 1761 | * [JACKSON-770]: Simplify method naming for JsonNode, drop unnecessary 'get' prefix |
| 1762 | from methods like 'getTextValue()' (becomes 'textValue()') |
Tatu | 9610aff | 2012-02-02 11:30:08 -0800 | [diff] [blame] | 1763 | * [JACKSON-777]: Rename 'SerializationConfig.Feature' as 'SerializationFeature', |
Tatu Saloranta | 2880872 | 2012-02-24 18:35:50 -0800 | [diff] [blame] | 1764 | 'DeserializationConfig.Feature' as 'DeserializationFeature' |
Tatu Saloranta | dfc4c88 | 2012-02-11 13:54:27 -0800 | [diff] [blame] | 1765 | * [JACKSON-780]: MissingNode, NullNode should return 'defaultValue' from 'asXxx' methods, |
Tatu Saloranta | 2880872 | 2012-02-24 18:35:50 -0800 | [diff] [blame] | 1766 | (not 0 for numbers), as they are not numeric types |
Tatu Saloranta | 3ae9c39 | 2012-05-18 16:45:47 -0700 | [diff] [blame] | 1767 | * [JACKSON-787]: Allow use of @JsonIgnoreProperties for properties (fields, getters, setters) |
Tatu Saloranta | 2880872 | 2012-02-24 18:35:50 -0800 | [diff] [blame] | 1768 | * [JACKSON-795]: @JsonValue was not working for Maps, Collections |
Tatu Saloranta | cf5d547 | 2012-03-03 11:47:51 -0800 | [diff] [blame] | 1769 | * [JACKSON-800]: Add 'Module.SetupContext#addDeserializationProblemHandler' |
| 1770 | (suggested by James R) |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1771 | |
| 1772 | New features: |
| 1773 | |
Tatu Saloranta | c99a784 | 2012-02-22 18:09:00 -0800 | [diff] [blame] | 1774 | * [JACKSON-107]: Add support for Object Identity (to handled cycles, shared refs), |
Tatu Saloranta | deaee9c | 2012-03-25 12:01:34 -0700 | [diff] [blame] | 1775 | with @JsonIdentityInfo |
Tatu Saloranta | 26b2e1b | 2012-02-22 22:50:21 -0800 | [diff] [blame] | 1776 | * [JACKSON-435]: Allow per-property Date formatting using @JsonFormat. |
Tatu Saloranta | 8958048 | 2012-01-20 22:08:56 -0800 | [diff] [blame] | 1777 | * [JACKSON-437]: Allow injecting of type id as POJO property, by setting |
| 1778 | new '@JsonTypeInfo.visible' property to true. |
Tatu Saloranta | 17ad21f | 2012-02-19 10:01:31 -0800 | [diff] [blame] | 1779 | * [JACKSON-469]: Support "Builder pattern" for deserialiation; that is, allow |
| 1780 | use of separate Builder object for data binding, creating actual value |
Tatu Saloranta | 7324b9b | 2012-02-02 21:51:16 -0800 | [diff] [blame] | 1781 | * [JACKSON-608]: Allow use of JSON Views for deserialization |
Tatu Saloranta | 49117e0 | 2012-03-03 16:01:12 -0800 | [diff] [blame] | 1782 | * [JACKSON-636]: Add 'SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS' to allow |
| 1783 | forced sorting of Maps during serialization |
| 1784 | (suggested by Joern H) |
Tatu Saloranta | 2aa6484 | 2012-01-14 22:25:08 -0800 | [diff] [blame] | 1785 | * [JACKSON-669]: Allow prefix/suffix for @JsonUnwrapped properties |
| 1786 | (requested by Aner P) |
Tatu Saloranta | f0e232d | 2012-01-29 16:44:28 -0800 | [diff] [blame] | 1787 | * [JACKSON-707]: Add 'JsonNode.deepCopy()', to create safe deep copies |
| 1788 | of ObjectNodes, ArrayNodes. |
Tatu Saloranta | ff8c08c | 2012-02-21 22:21:21 -0800 | [diff] [blame] | 1789 | * [JACKSON-714]: Add general-purpose @JsonFormat annotation |
Tatu | bc4153e | 2012-01-18 15:05:44 -0800 | [diff] [blame] | 1790 | * [JACKSON-718]: Added 'JsonNode.canConvertToInt()', 'JsonNode.canConvertToLong()' |
Tatu Saloranta | 048832d | 2012-03-09 21:48:40 -0800 | [diff] [blame] | 1791 | * [JACKSON-747]: Allow changing of 'SerializationFeature' for ObjectWriter, |
| 1792 | 'DeserializationFeature' for ObjectReader. |
Tatu Saloranta | 2aa6484 | 2012-01-14 22:25:08 -0800 | [diff] [blame] | 1793 | * [JACKSON-752]: Add @JsonInclude (replacement of @JsonSerialize.include) |
Tatu Saloranta | f7c45bf | 2012-01-16 18:26:47 -0800 | [diff] [blame] | 1794 | * [JACKSON-754]: Add @JacksonAnnotationsInside for creating "annotation |
| 1795 | bundles" (also: AnnotationIntrospector.isAnnotationBundle()) |
Tatu | bbebf46 | 2012-02-03 17:44:31 -0800 | [diff] [blame] | 1796 | * [JACKSON-762]: Allow using @JsonTypeId to specify property to use as |
| 1797 | type id, instead of using separate type id resolver. |
Tatu Saloranta | e196174 | 2012-01-22 16:03:47 -0800 | [diff] [blame] | 1798 | * [JACKSON-764]: Allow specifying "root name" to use for root wrapping |
| 1799 | via ObjectReader, ObjectWriter. |
Tatu Saloranta | 361c0a8 | 2012-02-24 18:16:29 -0800 | [diff] [blame] | 1800 | * [JACKSON-772]: Add 'JsonNode.withArray()' to use for traversing Array nodes. |
| 1801 | * [JACKSON-793]: Add support for configurable Locale, TimeZone to use |
| 1802 | (via SerializationConfig, DeserializationConfig) |
Tatu Saloranta | 048832d | 2012-03-09 21:48:40 -0800 | [diff] [blame] | 1803 | * [JACKSON-805]: Add 'SerializationFeature.WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED' |
| 1804 | to improve interoperability with BadgerFish/Jettison |
Tatu Saloranta | f293cc4 | 2012-03-24 21:10:18 -0700 | [diff] [blame] | 1805 | * [JACKSON-810]: Deserialization Feature: Allow unknown Enum values via |
| 1806 | 'DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL' |
| 1807 | (suggested by Raymond R) |
Tatu Saloranta | 33a9a93 | 2012-03-21 18:12:14 -0700 | [diff] [blame] | 1808 | * [JACKSON-813]: Add '@JsonSerializableSchema.id' attribute, to indicate |
| 1809 | 'id' value to add to generated JSON Schemas. |
Tatu Saloranta | 2aa6484 | 2012-01-14 22:25:08 -0800 | [diff] [blame] | 1810 | |
Tatu Saloranta | 703bf4a | 2012-01-11 22:14:37 -0800 | [diff] [blame] | 1811 | [entries for versions 1.x and earlier not retained; refer to earlier releases) |