1 Here are people who have contributed to the development of Jackson JSON processor 2 databind core component, version 2.x 3 (version numbers in brackets indicate release in which the problem was fixed) 4 5 (note: for older credits, check out release notes for 1.x versions) 6 7 Tatu Saloranta, tatu.saloranta@iki.fi: author 8 9 Pascal Glinas: 10 * Contributed fixes to 'MappingIterator' handling (Pull#58 and Pull#59) 11 (2.1.0) 12 * Reported #220: ContainerNode missing 'createNumber(BigInteger)' 13 (2.2.2) 14 15 Joern Huxhorn: (huxi@github) 16 * Suggested [JACKSON-636]: Add 'SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS' to allow 17 forced sorting of Maps during serialization 18 (2.0.0) 19 * Reported #479: NPE on trying to deserialize a `String[]` that contains null 20 (2.4.1) 21 * Reported #1411: MapSerializer._orderEntries should check for null keys 22 (2.7.9) 23 24 James Roper: 25 * Requested [JACKSON-732]: Allow 'AnnotationIntrospector.findContentDeserializer()' 26 (and similar) to return instance, not just Class<?> for instance 27 (2.0.0) 28 * Suggested [JACKSON-800]: Adding a method for letting modules register 29 DeserializationProblemHandlers 30 (2.0.0) 31 32 Casey Lucas: 33 * Reported [JACKSON-798]: Problem with external type id, creators 34 (2.0.0) 35 36 Tammo van Lessen: 37 * Reported [JACKSON-811]: Problems with @JsonIdentityInfo, abstract types 38 (2.0.0) 39 * Reported [JACKSON-814]: Parsing RFC822/RFC1123 dates failes on non-US locales 40 (2.0.0) 41 42 Raymond Myers: 43 * Suggested [JACKSON-810]: Deserialization Feature: Allow unknown Enum values via 44 'DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL' 45 (2.0.0) 46 47 Ryan Gardner: 48 * Contributed #5 -- Add support for maps with java.util.Locale keys 49 to the set of StdKeyDeserializers 50 (2.0.1) 51 52 Razvan Dragut: 53 * Suggested [JACKSON-850]: Allow use of zero-arg factory methods as "default creator" 54 (2.1.0) 55 56 Duncan Atkinson: 57 * Reported [JACKSON-851]: State corruption with ObjectWriter, DefaultPrettyPrinter 58 (2.1.0) 59 60 Mark Wolfe: 61 * Suggested #45: Add `@JsonNaming()` for per-class naming strategy overrides 62 (2.1.0) 63 64 Dmitry Katsubo: 65 * Contributed patch for #65: Add getters to `ObjectMapper`, DeserializationContext, 66 DeserializationFactory. 67 (2.1.0) 68 69 Francis Galiegue: 70 * Reported #93 (and suggested fix): bug in `ObjectMapper.setAll(...)' 71 implementation 72 (2.1.1) 73 * Reported #433: `ObjectMapper`'s `.valueToTree()` wraps `JsonSerializable` objects 74 into a POJONode 75 (2.3.3) 76 * Contributed #434: Ensure that DecimalNodes with mathematically equal values are equal 77 (2.4.0) 78 79 kelaneren@github: 80 * Reported #157, contributed unit test: NPE when registering same module twice. 81 (2.1.4) 82 83 Eric Tschetter (cheddar@github): 84 * Reported issues #166, #167, #170 (regressions from 1.9.x to 2.x) 85 (2.1.4) 86 87 Thierry D (thierryd@github) 88 * Reported #214: Problem with LICENSE, NOTICE, Android packaging 89 (2.2.2) 90 91 Luke G-H (lukegh@github) 92 * Reported #223: Duplicated nulls with @JsonFormat(shape=Shape.ARRAY) 93 (2.2.2) 94 95 Karl Moore (karldmoore@github) 96 * Reported #217: JsonProcessingExceptions not all wrapped as expected 97 (2.2.2) 98 99 David Phillips: 100 * Requested #308: Improve serialization and deserialization speed of `java.util.UUID` 101 (2.3.0) 102 103 Seth Pellegrino (jivesoft): 104 * Contributed #317: Fix `JsonNode` support for nulls bound to `ObjectNode`, `ArrayNode` 105 (2.3.0) 106 107 Florian Schoppmann (fschopp@github) 108 * Reported #357: StackOverflowError with contentConverter that returns array type 109 (2.7.0) 110 * Reported #358: `IterableSerializer` ignoring annotated content serializer 111 (2.3.1) 112 * Reported #359: Converted object not using explicitly annotated serializer 113 (2.4.0) 114 115 Martin Traverso: 116 * Reported #406: Cannot use external type id + @JsonTypeIdResolver 117 (2.3.2) 118 119 Matthew Morrissette: 120 * Contributed #381: Allow inlining/unwrapping of value from single-component JSON array 121 (2.4.0) 122 123 Will Palmeri: (wpalmeri@github) 124 * Contributed #407: Make array and Collection serializers use configured value null handler 125 (2.4.0) 126 127 Cemalettin Koc: (cemo@github) 128 * Reported #353: Problems with polymorphic types, `JsonNode` (related to #88) 129 (2.4.0) 130 131 Ben Fagin: (UnquietCode@github) 132 * Suggested #442: Make `@JsonUnwrapped` indicate property inclusion 133 (2.4.0) 134 * Contributed #81/#455: Allow use of @JsonUnwrapped with typed (@JsonTypeInfo) classes, 135 provided that (new) feature `SerializationFeature.FAIL_ON_UNWRAPPED_TYPE_IDENTIFIERS` 136 is disabled 137 (2.4.0) 138 139 Chris Cleveland: 140 * Suggested #463: Add 'JsonNode.asText(String defaultValue)` 141 (2.4.0) 142 143 Benson Margulies: 144 * Reported #467: Unwanted POJO's embedded in tree via serialization to tree 145 (2.4.0) 146 * Reported #601: ClassCastException for a custom serializer for enum key in `EnumMap` 147 (2.4.4) 148 * Contributed 944: Failure to use custom deserializer for key deserializer 149 (2.6.3) 150 * Reported #1120: String value omitted from weirdStringException 151 (2.6.6) 152 * Reported, fixed #1235: `java.nio.file.Path` support incomplete 153 (2.8.0) 154 * Reported #1270: Generic type returned from type id resolver seems to be ignored 155 (2.8.0) 156 157 Steve Sanbeg: (sanbeg@github) 158 * Contributed #482: Make date parsing error behavior consistent with JDK 159 (2.4.1) 160 161 Ian Barfield: (tea-dragon@github) 162 * Reported #580: delegate deserializers choke on a (single) abstract/polymorphic parameter 163 (2.4.4) 164 * Reported #844: Using JsonCreator still causes invalid path references in JsonMappingException 165 (2.5.5) 166 167 Eugene Lukash 168 * Reported #592: Wrong `TokenBuffer` delegate deserialization using `@JsonCreator` 169 (2.4.4) 170 171 Fernando Otero (zeitos@github) 172 * Contributed fix for #610: Problem with forward reference in hierarchies 173 (2.4.4) 174 175 Lovro Pandžić (lpandzic@github) 176 * Reported #421: @JsonCreator not used in case of multiple creators with parameter names 177 (2.5.0) 178 179 Adam Stroud (adstro@github) 180 * Contributed #576: Add fluent API for adding mixins 181 (2.5.0) 182 183 David Fleeman (fleebytes@github) 184 * Contributed #528 implementation: Add support for `JsonType.As.EXISTING_PROPERTY` 185 (2.5.0) 186 187 Aurélien Leboulanger (herau@github) 188 * Contributed improvement for #597: Improve error messaging for cases where JSON Creator 189 returns null (which is illegal) 190 (2.5.0) 191 192 Michael Spiegel (mspiegel@githib) 193 * Contributed #636: `ClassNotFoundException` for classes not (yet) needed during serialization 194 (2.5.0) 195 196 Michael Ressler (mressler@github) 197 * Contributed #566: Add support for case-insensitive deserialization 198 (`MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES`) 199 (2.5.0) 200 201 Konstantin Labun (kulabun@github) 202 * Reported #647: Deserialization fails when @JsonUnwrapped property contains an object with same property name 203 (2.5.0) 204 205 Christopher Smith (chrylis@github) 206 * Reported #594: `@JsonValue` on enum not used when enum value is a Map key 207 (2.5.0) 208 209 Alexandre Santana Campelo (alexqi200@github): 210 * Contributed #671: Adding `java.util.Currency` deserialization support for maps 211 (2.5.1) 212 213 Zoltan Farkas (zolyfarkas@github) 214 * Reported #674: Spring CGLIB proxies not handled as intended 215 (2.5.1) 216 217 Ludevik@github: 218 * Reported #682: Class<?>-valued Map keys not serialized properly 219 (2.5.1) 220 221 Antibrumm@github: 222 * Reported #691: Jackson 2.5.0. NullSerializer for MapProperty failing 223 (2.5.2) 224 * Reported #984: JsonStreamContexts are not build the same way for write.. and convert methods 225 (2.6.4) 226 227 Shumpei Akai (flexfrank@github) 228 * Reported #703: Multiple calls to ObjectMapper#canSerialize(Object.class) returns different values 229 (2.5.2) 230 231 Francisco A. Lozano (flozano@github) 232 * Contributed fix for #703 (see above) 233 (2.5.2) 234 235 Dylan Scott (dylanscott@github) 236 * Reported #738: #738: @JsonTypeInfo non-deterministically ignored in 2.5.1 (concurrency 237 issue) 238 (2.5.2) 239 240 Alain Gilbert (agilbert314@github) 241 * Reporter, contributed #766: Fix Infinite recursion (StackOverflowError) when 242 serializing a SOAP object 243 (2.5.3) 244 245 Alexey Gavrilov (Alexey1Gavrilov@github) 246 * Reported, contributed fix for #761: Builder deserializer: in-compatible type exception 247 when return type is super type 248 (2.5.3) 249 250 Dmitry Spikhalskiy (Spikhalskiy@github) 251 * Reported #731, suggested the way to fix it: XmlAdapter result marshaling error in 252 case of ValueType=Object 253 (2.5.3) 254 * Reported #1456: `TypeFactory` type resolution broken in 2.7 for generic types 255 when using `constructType` with context 256 (2.7.9 / 2.8.6) 257 258 John Meyer (jpmeyer@github) 259 * Reported, contributed fix for #745: EnumDeserializer.deserializerForCreator() fails 260 when used to deserialize a Map key 261 (2.5.3) 262 263 Andrew Duckett (andrewduckett@github) 264 * Reported #771: Annotation bundles ignored when added to Mixin 265 (2.5.4) 266 267 Charles Allen: 268 * Contributed #785: Add handlings for classes which are available in 269 `Thread.currentThread().getContextClassLoader()` 270 (2.5.4) 271 272 Andrew Goodale (newyankeecodeshop@github) 273 * Contributed #816: Allow date-only ISO strings to have no time zone 274 (2.5.4) 275 276 Kamil Benedykciński (Kamil-Benedykcinski@github) 277 * Contributed #801: Using `@JsonCreator` cause generating invalid path reference 278 in `JsonMappingException` 279 (2.5.4) 280 281 Chi Kim (chikim79@github) 282 * Reported #878: serializeWithType on BeanSerializer does not setCurrentValue 283 (2.5.5 / 2.6.1) 284 285 Charles Allen (drcrallen@github): 286 * Reported #696: Copy constructor does not preserve `_injectableValues` 287 (2.6.0) 288 289 Chris Pimlott (pimlottc@github): 290 * Suggested #348: ObjectMapper.valueToTree does not work with @JsonRawValue 291 (2.6.0) 292 293 Laird Nelson (ljnelson@github) 294 * Suggested #688: Provide a means for an ObjectMapper to discover mixin annotation 295 classes on demand 296 (2.6.0) 297 * Reported #1088: NPE possibility in SimpleMixinResolver 298 (2.6.6) 299 300 Derk Norton (derknorton@github) 301 * Suggested #689: Add `ObjectMapper.setDefaultPrettyPrinter(PrettyPrinter)` 302 (2.6.0) 303 304 Michal Letynski (mletynski@github) 305 * Suggested #296: Serialization of transient fields with public getters (add 306 MapperFeature.PROPAGATE_TRANSIENT_MARKER) 307 (2.6.0) 308 309 Jeff Schnitzer (stickfigure@github) 310 * Suggested #504: Add `DeserializationFeature.USE_LONG_FOR_INTS` 311 (2.6.0) 312 313 Jerry Yang (islanderman@github) 314 * Contributed #820: Add new method for `ObjectReader`, to bind from JSON Pointer position 315 (2.6.0) 316 317 Lars Pfannenschmidt (larsp@github) 318 * Contributed #826: Replaced synchronized HashMap with ConcurrentHashMap in 319 TypeDeserializerBase._findDeserializer 320 (2.6.0) 321 322 Stephen A. Goss (thezerobit@github) 323 * Contributed #828: Respect DeserializationFeatures.WRAP_EXCEPTIONS in CollectionDeserializer 324 (2.6.0) 325 326 Andy Wilkinson (wilkinsona@github) 327 * Reported #889: Configuring an ObjectMapper's DateFormat changes time zone 328 (2.6.1) 329 330 lufe66@github: 331 * Reported 894: When using withFactory on ObjectMapper, the created Factory has a TypeParser 332 which still has the original Factory 333 (2.6.2) 334 335 Daniel Walker (dsw2127@github) 336 * Reported, contributed fix for #913: `ObjectMapper.copy()` does not preserve 337 `MappingJsonFactory` features 338 (2.6.2) 339 340 Sadayuki Furuhashi (frsyuki@github) 341 * Reported #941: Deserialization from "{}" to ObjectNode field causes 342 "out of END_OBJECT token" error 343 (2.6.3) 344 * Reported #2077: `JsonTypeInfo` with a subtype having `JsonFormat.Shape.ARRAY` 345 and no fields generates `{}` not `[]` 346 (2.10.0) 347 348 David Haraburda (dharaburda@github) 349 * Contributed #918: Add `MapperFeature.ALLOW_EXPLICIT_PROPERTY_RENAMING` 350 (2.7.0) 351 352 Sergio Mira (Sergio-Mira@github) 353 * Contributed #940: Add missing `hashCode()` implementations for `JsonNode` types that did not have them 354 (2.6.3) 355 356 Andreas Pieber (anpieber@github) 357 * Reported #939: Regression: DateConversionError in 2.6.x 358 (2.6.3) 359 360 Jesse Wilson (swankjesse@github) 361 * Contributed #948: Support leap seconds, any number of millisecond digits for ISO-8601 Dates. 362 (2.6.3) 363 * Contributed #949: Report the offending substring when number parsing fails 364 (2.6.3) 365 366 Warren Bloomer (stormboy@github) 367 * Reported #942: Handle null type id for polymorphic values that use external type id 368 (2.6.3) 369 370 Ievgen Pianov (pyanoveugen@github) 371 * Reported #989: Deserialization from "{}" to java.lang.Object causes "out of END_OBJECT token" error 372 (2.6.3) 373 374 Jayson Minard (apatrida@github) 375 * Reported #1005: Synthetic constructors confusing Jackson data binding 376 (2.6.4) 377 * Reported #1438: `ACCEPT_CASE_INSENSITIVE_PROPERTIES` is not respected for creator properties 378 (2.8.5) 379 380 David Bakin (david-bakin@github) 381 * Reported #1013: `@JsonUnwrapped` is not treated as assuming `@JsonProperty("")` 382 (2.6.4) 383 * Suggested #1011: Change ObjectWriter::withAttributes() to take a Map with some kind of wildcard types 384 (2.7.0) 385 * Reported #962: `@JsonInject` fails on trying to find deserializer even if inject-only 386 (2.11.0) 387 388 Dmitry Romantsov (DmRomantsov@github) 389 * Reported #1036: Problem with case-insensitive deserialization 390 (2.6.4) 391 392 Daniel Norberg (danielnorberg@github) 393 * Contributed #1099: Fix custom comparator container node traversal 394 (2.6.6) 395 396 Miles Kaufmann (milesk-amzn@github) 397 * Reported #432: `StdValueInstantiator` unwraps exceptions, losing context 398 (2.7.0) 399 400 Thomas Mortagne (tmortagne@github) 401 * Suggested #857: Add support for java.beans.Transient 402 (2.7.0) 403 404 Jonas Konrad (yawkat@github) 405 * Suggested #905: Add support for `@ConstructorProperties` 406 (2.7.0) 407 408 Jirka Kremser (Jiri-Kremser@github) 409 * Suggested #924: SequenceWriter.writeAll() could accept Iterable 410 (2.7.0) 411 412 Daniel Mischler (danielmischler@github) 413 * Requested #963: Add PropertyNameStrategy `KEBAB_CASE` 414 (2.7.0) 415 416 Shumpei Akai (flexfrank@github) 417 * Reported #978: ObjectMapper#canSerialize(Object.class) returns false even though 418 FAIL_ON_EMPTY_BEANS is disabled 419 (2.7.0) 420 421 Hugo Wood (hgwood@github) 422 * Contributed #1010: Support for array delegator 423 (2.7.0) 424 425 Julian Hyde (julianhyde@github) 426 * Reported #1083: Field in base class is not recognized, when using `@JsonType.defaultImpl` 427 (2.7.1) 428 429 Thibault Kruse (tkruse@github) 430 * Reported #1102: Handling of deprecated `SimpleType.construct()` too minimalistic 431 (2.7.1) 432 433 Aleks Seovic (aseovic@github) 434 * Reported #1109: @JsonFormat is ignored by the DateSerializer unless either a custom pattern 435 or a timezone are specified 436 (2.7.1) 437 438 Timur Shakurov (saladinkzn@github) 439 * Reported #1134: Jackson 2.7 doesn't work with jdk6 due to use of `Collections.emptyIterator()` 440 (2.7.2) 441 442 Jiri Mikulasek (pirkogdc@github) 443 * Reported #1124: JsonAnyGetter ignores JsonSerialize(contentUsing=...) 444 (2.7.2) 445 446 Xavi Torrens (xavitorrens@github) 447 * Reported #1150: Problem with Object id handling, explicit `null` token 448 (2.7.3) 449 450 Yoann Rodière (fenrhil@github) 451 * Reported #1154: @JsonFormat.pattern on dates is now ignored if shape is not 452 explicitely provided 453 (2.7.3) 454 455 Mark Woon (markwoon@github) 456 * Reported #1178: `@JsonSerialize(contentAs=superType)` behavior disallowed in 2.7 457 (2.7.4) 458 * Reported #1231: `@JsonSerialize(as=superType)` behavior disallowed in 2.7.4 459 (2.7.5) 460 * Suggested #507: Support for default `@JsonView` for a class 461 (2.9.0) 462 463 Tom Mack (tommack@github) 464 * Reported #1208: treeToValue doesn't handle POJONodes that contain exactly 465 the requested value type 466 (2.7.4) 467 468 William Headrick (headw01@github) 469 * Reported#1223: `BasicClassIntrospector.forSerialization(...).findProperties` should 470 respect MapperFeature.AUTO_DETECT_GETTERS/SETTERS? 471 (2.7.5) 472 473 Nick Babcock (nickbabcock) 474 * Reported #1225: `JsonMappingException` should override getProcessor() 475 (2.7.5) 476 * Suggested #1356: Differentiate between input and code exceptions on deserialization 477 (2.9.0) 478 479 Andrew Joseph (apjoseph@github) 480 * Reported #1248: `Annotated` returns raw type in place of Generic Type in 2.7.x 481 (2.7.5) 482 483 Erich Schubert (kno10@github) 484 * Reported #1260: `NullPointerException` in `JsonNodeDeserializer`, provided fix 485 (2.7.5) 486 487 Brian Pontarelli (voidmain@github) 488 * Reported #1301: Problem with `JavaType.toString()` for recursive (self-referential) types 489 (2.7.6) 490 491 Max Drobotov (fizmax@github) 492 * Reported, contributed fix for #1332: `ArrayIndexOutOfBoundException` for enum by index deser 493 (2.7.7) 494 495 Stuart Douglas (stuartwdouglas@github) 496 * Reported #1363: The static field ClassUtil.sCached can cause a class loader leak 497 (2.7.8) 498 499 Josh Caplan (jecaplan@github) 500 * Reported, suggested fix for #1368: Problem serializing `JsonMappingException` due to addition 501 of non-ignored `processor` property (added in 2.7) 502 (2.7.8) 503 504 Diego de Estrada (diegode@github) 505 * Contributed fix for #1367: No Object Id found for an instance when using `@ConstructorProperties` 506 (2.7.9) 507 508 Kevin Hogeland (khogeland@github) 509 * Reported #1501: `ArrayIndexOutOfBoundsException` on non-static inner class constructor 510 (2.7.9) 511 512 xiexq ([email protected]) 513 * Reported #2389: Block one more gadget type (CVE-2019-14361) 514 (2.7.9.6) 515 516 Artur Jonkisz (ajonkisz@github) 517 * Reported #960: `@JsonCreator` not working on a factory with no arguments for ae enum type 518 (2.8.0) 519 520 Mikhail Kokho (mkokho@github) 521 * Contributed impl for #990: Allow failing on `null` values for creator (add 522 `DeserializationFeature.FAIL_ON_NULL_CREATOR_PROPERTIES`) 523 (2.8.0) 524 525 Aleksandr Oksenenko (oleksandr-oksenenko@github) 526 * Reported #999: External property is not deserialized 527 (2.8.0) 528 529 Lokesh Kumar (LokeshN@github) 530 * Contributed impl for #1082: Can not use static Creator factory methods for `Enum`s, 531 with JsonCreator.Mode.PROPERTIES 532 (2.8.0) 533 * Reported #1217: `@JsonIgnoreProperties` on Pojo fields not working for deserialization 534 (2.8.0) 535 536 Ross Goldberg 537 * Reported #1165, provided fix for: `CoreXMLDeserializers` does not handle 538 time-only `XMLGregorianCalendar`s 539 (2.8.0) 540 541 Maarten Billemont (lhunath@github) 542 * Suggested #1184: Allow overriding of `transient` with explicit inclusion with `@JsonProperty` 543 (2.8.0) 544 545 Vladimir Kulev (lightoze@github) 546 * Reported #1028: Ignore USE_BIG_DECIMAL_FOR_FLOATS for NaN/Infinity 547 (2.8.0) 548 549 Ari Fogel (arifogel@github) 550 * Reported #1261, contributed fix for: `@JsonIdentityInfo` deserialization fails with 551 combination of forward references, `@JsonCreator` 552 (2.8.0) 553 554 Andriy Plokhotnyuk (plokhotnyuk@github) 555 * Requested #1277: Add caching of resolved generic types for `TypeFactory` 556 (2.8.0) 557 558 Arek Gabiga (arekgabiga@github) 559 * Reported #1297: Deserialization of generic type with Map.class 560 (2.8.1) 561 562 Chris Jester-Young (cky@github) 563 * Contributed #1335: Unconditionally call `TypeIdResolver.getDescForKnownTypeIds` 564 (2.8.2) 565 566 Andrew Snare (asnare@github) 567 * Reported #1315: Binding numeric values can BigDecimal lose precision 568 (2.8.2) 569 570 Gili Tzabari (cowwoc@github) 571 * Reported #1351: `@JsonInclude(NON_DEFAULT)` doesn't omit null fields 572 (2.8.3) 573 574 Oleg Zhukov (OlegZhukov@github) 575 * Reported #1384: `@JsonDeserialize(keyUsing = ...)` does not work correctly 576 together with `DefaultTyping.NON_FINAL` 577 (2.8.4) 578 579 Pavel Popov (tolkonepiu@github) 580 * Contributed fix #1389: Problem with handling of multi-argument creator with Enums 581 (2.8.4) 582 583 Josh Gruenberg (joshng@github) 584 * Reported #1403: Reference-chain hints use incorrect class-name for inner classes 585 (2.8.4) 586 587 Kevin Donnelly (kpdonn@github) 588 * Reported #1432: Off by 1 bug in PropertyValueBuffer 589 (2.8.5) 590 591 Nathanial Ofiesh (ofiesh@github) 592 * Reported #1441: Failure with custom Enum key deserializer, polymorphic types 593 (2.8.5) 594 595 Frédéric Camblor (fcamblor@github) 596 * Reported #1451: Type parameter not passed by `ObjectWriter` if serializer pre-fetch disabled 597 (2.8.6) 598 599 Stephan Schroevers (Stephan202@github) 600 * Reported #1505: @JsonEnumDefaultValue should take precedence over FAIL_ON_NUMBERS_FOR_ENUMS 601 (2.8.7) 602 603 Alex Panchenko (panchenko@github) 604 * Reported #1543: JsonFormat.Shape.NUMBER_INT does not work when defined on enum type in 2.8 605 (2.8.8) 606 607 Joshua Jones 608 * Reported #1573, contributed fix: Missing properties when deserializing using a builder class 609 with a non-default constructor and a mutator annotated with `@JsonUnwrapped` 610 (2.8.8) 611 612 Ivo Studens (istudens@redhat.com) 613 * Contributed #1585: Invoke ServiceLoader.load() inside of a privileged block 614 when loading modules using `ObjectMapper.findModules()` 615 (2.8.9) 616 * Contributed fix for #2482: `JSONMappingException` `Location` column number 617 is one line Behind the actual location 618 (2.10.3) 619 620 Javy Luo (AnywnYu@github) 621 * Reported #1595: `JsonIgnoreProperties.allowSetters` is not working in Jackson 2.8 622 (2.8.9) 623 624 Marco Catania (catanm@github.com) 625 * Contributed #1597: Escape JSONP breaking characters 626 (2.8.9) 627 628 Andrew Joseph (apjoseph@github) 629 * Reported #1629 `FromStringDeserializer` ignores registered `DeserializationProblemHandler` 630 for `java.util.UUID` 631 (2.8.9) 632 633 Joe Littlejohn (joelittlejohn@github) 634 * Contributed #1642: Support `READ_UNKNOWN_ENUM_VALUES_AS_NULL` with `@JsonCreator` 635 (2.8.9) 636 637 Slobodan Pejic (slobo-showbie@github) 638 * Reported #1647, contributed fix: Missing properties from base class when recursive 639 types are involved 640 (2.8.9) 641 642 Bertrand Renuart (brenuart@github) 643 * Reported #1648: `DateTimeSerializerBase` ignores configured date format when creating contextual 644 (2.8.9) 645 * Reported #1651: `StdDateFormat` fails to parse 'zulu' date when TimeZone other than UTC 646 (2.8.9) 647 * Suggested #1745: StdDateFormat: accept and truncate millis larger than 3 digits 648 (2.9.1) 649 * Contributed #1749: StdDateFormat: performance improvement of '_format(..)' method 650 (2.9.1) 651 * Contributed #1759: Reuse `Calendar` instance during parsing by `StdDateFormat` 652 (2.9.1) 653 654 Kevin Gallardo (newkek@github) 655 * Reported #1658: Infinite recursion when deserializing a class extending a Map, 656 with a recursive value type 657 (2.8.10) 658 * Reported #1729: Integer bounds verification when calling `TokenBuffer.getIntValue()` 659 (2.9.4) 660 661 Lukas Euler 662 * Reported #1735: Missing type checks when using polymorphic type ids 663 664 Guixiong Wu (吴桂雄) 665 * Reported #2032: Blacklist another serialization gadget (ibatis) 666 (2.8.11.2) 667 668 svarzee@github 669 * Reported #2109, suggested fix: Canonical string for reference type is built incorrectly 670 (2.8.11.3 / 2.9.7) 671 672 Connor Kuhn (ckuhn@github) 673 * Contributed #1341: FAIL_ON_MISSING_EXTERNAL_TYPE_ID_PROPERTY 674 (2.9.0) 675 676 Jan Lolling (jlolling@github) 677 * Contributed #1319: Add `ObjectNode.put(String, BigInteger)` 678 (2.9.0) 679 680 Michael R Fairhurst (MichaelRFairhurst@github) 681 * Reported #1035: `@JsonAnySetter` assumes key of `String`, does not consider declared type. 682 (2.9.0) 683 684 Fabrizio Cucci (fabriziocucci@github) 685 * Reported #1406: `ObjectMapper.readTree()` methods do not return `null` on end-of-input 686 (2.9.0) 687 688 Emiliano Clariá (emilianogc@github) 689 * Contributed #1434: Explicitly pass null on invoke calls with no arguments 690 (2.9.0) 691 692 Ana Eliza Barbosa (AnaEliza@github) 693 * Contributed #1520: Case insensitive enum deserialization feature. 694 (2.9.0) 695 696 Lyor Goldstein (lgoldstein@github) 697 * Reported #1544: `EnumMapDeserializer` assumes a pure `EnumMap` and does not support 698 derived classes 699 (2.9.0) 700 701 Harleen Sahni (harleensahni@github) 702 * Reported #403: Make FAIL_ON_NULL_FOR_PRIMITIVES apply to primitive arrays and other 703 types that wrap primitives 704 (2.9.0) 705 706 Jared Jacobs (2is10@github) 707 * Requested #1605: Allow serialization of `InetAddress` as simple numeric host address 708 (2.9.0) 709 710 Patrick Gunia (pgunia@github) 711 * Reported #1440: Wrong `JsonStreamContext` in `DeserializationProblemHandler` when reading 712 `TokenBuffer` content 713 (2.9.0) 714 715 Carsten Wickner (CarstenWickner@github) 716 * Contributed #1522: Global `@JsonInclude(Include.NON_NULL)` for all properties with a specific type 717 (2.9.0) 718 719 Chris Plummer (strmer15@github) 720 * Reported #1637: `ObjectReader.at()` with `JsonPointer` stops after first collection 721 (2.9.0) 722 723 Christian Basler (Dissem@github) 724 * Reported #1688: Deserialization fails for `java.nio.file.Path` implementations when 725 default typing enabled 726 (2.9.0) 727 728 Tim Bartley (tbartley@github) 729 * Reported, suggested fix for #1705: Non-generic interface method hides type resolution info 730 from generic base class 731 (2.9.1) 732 733 Luís Cleto (luiscleto@github) 734 * Suggested 1768: Improve `TypeFactory.constructFromCanonical()` to work with 735 `java.lang.reflect.Type.getTypeName()` format 736 (2.9.2) 737 738 Vincent Demay (vdemay@github) 739 * Reported #1793: `java.lang.NullPointerException` in `ObjectArraySerializer.acceptJsonFormatVisitor()` 740 for array value with `@JsonValue` 741 (2.9.2) 742 743 Peter Jurkovic (peterjurkovic@github) 744 * Reported #1823: ClassNameIdResolver doesn't handle resolve Collections$SingletonMap, 745 Collections$SingletonSet 746 (2.9.3) 747 748 alinakovalenko@github: 749 * Reported #1844: Map "deep" merge only adds new items, but not override existing values 750 (2.9.3) 751 752 Pier-Luc Whissell (pwhissell@github): 753 * Reported #1673: Serialising generic value classes via Reference Types (like Optional) fails 754 to include type information 755 (2.9.4) 756 757 Alexander Skvortcov (askvortcov@github) 758 * Reported #1853: Deserialise from Object (using Creator methods) returns field name 759 instead of value 760 (2.9.4) 761 762 Joe Schafer (jschaf@github) 763 * Reported #1906: Add string format specifier for error message in `PropertyValueBuffer` 764 (2.9.4) 765 * Reported #1907: Remove `getClass()` from `_valueType` argument for error reporting 766 (2.9.4) 767 768 Deblock Thomas (deblockt@github) 769 * Reported, contributed fix for #1912: `BeanDeserializerModifier.updateBuilder()` does not 770 work to set custom deserializer on a property (since 2.9.0) 771 (2.9.5) 772 * Reported, suggested fix for #2280: JsonMerge not work with constructor args 773 (2.10.0) 774 775 [email protected]: 776 * Reported #1931: Two more `c3p0` gadgets to exploit default typing issue 777 (2.9.5) 778 779 Aniruddha Maru (maroux@github) 780 * Reported #1940: `Float` values with integer value beyond `int` lose precision if 781 bound to `long` 782 (2.9.5) 783 784 Timur Shakurov (saladinkzn@github) 785 * Reported #1947: `MapperFeature.AUTO_DETECT_XXX` do not work if all disabled 786 (2.9.5) 787 788 roeltje25@github 789 * Reported #1978: Using @JsonUnwrapped annotation in builderdeserializer hangs in 790 infinite loop 791 (2.9.5) 792 793 Freddy Boucher (freddyboucher@github) 794 * Reported #1990: MixIn `@JsonProperty` for `Object.hashCode()` is ignored 795 (2.9.6) 796 797 Ondrej Zizka (OndraZizk@github) 798 * Reported #1999: "Duplicate property" issue should mention which class it complains about 799 (2.9.6) 800 801 Jakub Skierbiszewski (jskierbi@github) 802 * Reported, contributed fix for #2001: Deserialization issue with `@JsonIgnore` and 803 `@JsonCreator` + `@JsonProperty` for same property name 804 (2.9.6) 805 806 Carter Kozak (cakofony@github) 807 * Reported #2016: Delegating JsonCreator disregards JsonDeserialize info 808 (2.9.6) 809 810 Reinhard Prechtl (dnno@github) 811 * Reported #2034: Serialization problem with type specialization of nested generic types 812 (2.9.6) 813 814 Chetan Narsude (243826@github) 815 * Reported #2038: JDK Serializing and using Deserialized `ObjectMapper` loses linkage 816 back from `JsonParser.getCodec()` 817 (2.9.6) 818 819 Petar Tahchiev (ptahchiev@github) 820 * Reported #2060: `UnwrappingBeanPropertyWriter` incorrectly assumes the found 821 serializer is of type `UnwrappingBeanSerializer` 822 (2.9.6) 823 824 Brandon Krieger (bkrieger@github) 825 * Reported #2064: Cannot set custom format for `SqlDateSerializer` globally 826 (2.9.7) 827 828 Thibaut Robert (trobert@github) 829 * Requested #2059: Remove `final` modifier for `TypeFactory` 830 (2.10.0) 831 832 Christopher Smith (chrylis@github) 833 * Suggested #2115: Support naive deserialization of `Serializable` values as "untyped", 834 same as `java.lang.Object` 835 (2.10.0) 836 837 Édouard Mercier (edouardmercier@github) 838 * Requested #2116: Make NumberSerializers.Base public and its inherited classes not final 839 (2.9.6) 840 841 Semyon Levin (remal@github) 842 * Contributed #2120: `NioPathDeserializer` improvement 843 (2.9.7) 844 * Contributed #2133: Improve `DeserializationProblemHandler.handleUnexpectedToken()` 845 to allow handling of Collection problems 846 (2.10.0) 847 848 Pavel Nikitin (morj@github) 849 * Requested #2181: Don't re-use dynamic serializers for property-updating copy constructors 850 (2.9.8) 851 852 Thomas Krieger (ThomasKrieger@github) 853 * Reported #1408: Call to `TypeVariable.getBounds()` without synchronization unsafe on 854 some platforms 855 (2.9.9) 856 857 René Kschamer (flawi@github) 858 * Reported #2197: Illegal reflective access operation warning when using `java.lang.Void` 859 as value type 860 (2.9.8) 861 862 Joffrey Bion (joffrey-bion@github) 863 * Reported #2265: Inconsistent handling of Collections$UnmodifiableList vs 864 Collections$UnmodifiableRandomAccessList 865 (2.9.9) 866 867 Christoph Fiehe (cfiehe@github.com) 868 * Contributed #2299: Fix for using jackson-databind in an OSGi environment under Android 869 (2.9.9) 870 871 Cyril Martin (mcoolive@github.com) 872 * Reported #2303: Deserialize null, when java type is "TypeRef of TypeRef of T", 873 does not provide "Type(Type(null))" 874 (2.9.9) 875 876 Daniil Barvitsky (dbarvitsky@github) 877 * Reported #2324: `StringCollectionDeserializer` fails with custom collection 878 (2.9.9) 879 880 Edgar Asatryan (nstdio@github) 881 * Reported #2374: `ObjectMapper. getRegisteredModuleIds()` throws NPE if no modules registered 882 (2.9.9.1) 883 884 Michael Simons (michael-simons@github) 885 * Reported #2395: `NullPointerException` from `ResolvedRecursiveType` (regression due to 886 fix for #2331) 887 (2.9.9.3) 888 889 Joe Barnett (josephlbarnett@github) 890 * Reported, contributed fix for #2404: FAIL_ON_MISSING_EXTERNAL_TYPE_ID_PROPERTY setting 891 ignored when creator properties are buffered 892 (2.9.10) 893 894 Kaki King (kingkk9279@g) 895 * Reported #2449: Block one more gadget type (cve CVE-2019-14540) 896 (2.9.10) 897 898 Jon Anderson (Jon901@github) 899 * Reported #2544: java.lang.NoClassDefFoundError Thrown for compact profile1 900 (2.9.10.2) 901 902 Zihui Ren (renzihui@github) 903 * Suggested #2129: Add `SerializationFeature.WRITE_ENUM_KEYS_USING_INDEX`, separate from value setting 904 (2.10.0) 905 906 Yiqiu Huang (huangyq23@github 907 * Reported #2164: `FactoryBasedEnumDeserializer` does not respect 908 `DeserializationFeature.WRAP_EXCEPTIONS` 909 (2.10.0) 910 911 Alexander Saites (saites@github) 912 * Reported #2189: `TreeTraversingParser` does not check int bounds 913 (2.10.0) 914 915 Christoph Breitkopf (bokesan@github) 916 * Reported #2217: Suboptimal memory allocation in `TextNode.getBinaryValue()` 917 (2.10.0) 918 919 Pavel Chervakov (pacher@github) 920 * Reported #2230: `WRITE_BIGDECIMAL_AS_PLAIN` is ignored if `@JsonFormat` is used 921 (2.10.0) 922 923 Ben Anderson (andersonbd1@github) 924 * Reported, suggested fix for #2309: READ_ENUMS_USING_TO_STRING doesn't support null values 925 (2.10.0) 926 927 Manuel Hegner (manuel-hegner@github) 928 * Suggested #2311: Unnecessary MultiView creation for property writers 929 (2.10.0) 930 931 Chris Mercer (cmercer@github) 932 * Reported #2331: `JsonMappingException` through nested getter with generic wildcard return type 933 (2.10.0) 934 935 Robert Greig (rgreig@github) 936 * Reported #2336: `MapDeserializer` can not merge `Map`s with polymorphic values 937 (2.10.0) 938 939 Victor Noël (victornoel@github) 940 * Reported #2338: Suboptimal return type for `JsonNode.withArray()` 941 (2.10.0) 942 * Reported #2339: Suboptimal return type for `ObjectNode.set()` 943 (2.10.0) 944 945 David Harris (toadzky@github) 946 * Reported #2378: `@JsonAlias` doesn't work with AutoValue 947 (2.10.0) 948 949 Sam Smith (Oracle Security Researcher) 950 * Suggested #2398: Replace recursion in `TokenBuffer.copyCurrentStructure()` with iteration 951 952 Vladimir Tsanev (tsachev@github) 953 * Contributed #2415: Builder-based POJO deserializer should pass builder instance, not type, 954 to `handleUnknownVanilla()` to fix earlier #822 955 (2.10.0) 956 957 Marcos Passos (marcospassos@github( 958 * Contributed #2432: Add support for module bundles 959 (2.10.0) 960 961 David Becker (dsbecker@github) 962 * Suggested #2433: Improve `NullNode.equals()` 963 (2.10.0) 964 965 Hesham Massoud (heshamMassoud@github) 966 * Reported, contributed fix for #2442: `ArrayNode.addAll()` adds raw `null` values 967 which cause NPE on `deepCopy()` 968 (2.10.0) 969 970 David Connelly (dconnelly@github) 971 * Reported #2446: Java 11: Unable to load JDK7 types (annotations, java.nio.file.Path): 972 no Java7 support added 973 (2.10.0) 974 975 Wahey (KevynBct@github) 976 * Reported #2466: Didn't find class "java.nio.file.Path" below Android api 26 977 (2.10.0) 978 979 Martín Coll (colltoaction@github) 980 * Contributed #2467: Accept `JsonTypeInfo.As.WRAPPER_ARRAY` with no second argument to 981 deserialize as "null value" 982 (2.10.0) 983 984 Andrey Kulikov (ankulikov@github) 985 * Reported #2457: Extended enum values are not handled as enums when used as Map keys 986 (2.10.1) 987 988 João Guerra (joca-bt@github) 989 * Reported #2473: Array index missing in path of `JsonMappingException` for `Collection<String>`, 990 with custom deserializer 991 (2.10.1) 992 * Reported #2567: Incorrect target type for arrays when providing nulls and nulls are disabled 993 (2.10.2) 994 * Reported #2635: JsonParser cannot getText() for input stream on MismatchedInputException 995 (2.11.0) 996 * Reported #2770: JsonParser from MismatchedInputException cannot getText() for 997 floating-point value 998 (2.11.1) 999 1000 Ryan Bohn (bohnman@github) 1001 * Reported #2475: `StringCollectionSerializer` calls `JsonGenerator.setCurrentValue(value)`, 1002 which messes up current value for sibling properties 1003 (2.10.1) 1004 1005 Johan Haleby (johanhaleby@github) 1006 * Reported #2513: BigDecimalAsStringSerializer in NumberSerializer throws IllegalStateException 1007 in 2.10 1008 (2.10.1) 1009 1010 Richard Wise (Woodz@github) 1011 * Reported #2519: Serializing `BigDecimal` values inside containers ignores shape override 1012 (2.10.1) 1013 1014 Mark Schäfer (mark--@github) 1015 * Reported #2520: Sub-optimal exception message when failing to deserialize non-static inner classes 1016 (2.10.1) 1017 1018 Ruud Welling (WellingR@github) 1019 * Contributed fix for #2102: `FAIL_ON_NULL_FOR_PRIMITIVES` failure does not indicate 1020 field name in exception message 1021 (2.10.2) 1022 1023 Fabian Lange (CodingFabian@github) 1024 * Reported #2556: Contention in `TypeNameIdResolver.idFromClass()` 1025 (2.10.2) 1026 1027 Stefan Wendt (stewe@github) 1028 * Reported #2560: Check `WRAP_EXCEPTIONS` in `CollectionDeserializer.handleNonArray()` 1029 (2.10.2) 1030 1031 Greg Arakelian (arakelian@github) 1032 * Reported #2566: `MissingNode.toString()` returns `null` (4 character token) instead 1033 of empty string 1034 (2.10.2) 1035 1036 Kamal Aslam (aslamkam@github) 1037 * Reported #2482: `JSONMappingException` `Location` column number is one line 1038 Behind the actual location 1039 (2.10.3) 1040 1041 Tobias Preuss (johnjohndoe@github) 1042 * Reported #2599: NoClassDefFoundError at DeserializationContext.<init> on Android 4.1.2 1043 and Jackson 2.10.0 1044 (2.10.3) 1045 1046 Eduard Tudenhöfner (nastra@github) 1047 * Reported #2602, contributed fix for: ByteBufferSerializer produces unexpected results with 1048 a duplicated ByteBuffer and a position > 0 1049 (2.10.3) 1050 1051 Alexander Shilov (ashlanderr@github) 1052 * Reported, suggested fix for #2610: `EXTERNAL_PROPERTY` doesn't work with `@JsonIgnoreProperties` 1053 (2.10.3) 1054 1055 Endre Stølsvik (stolsvik@github) 1056 * Reported #2679: `ObjectMapper.readValue("123", Void.TYPE)` throws "should never occur" 1057 (2.10.4) 1058 1059 Denis Kostousov (kostousov-ds@github) 1060 * Reported #2787 (partial fix): NPE after add mixin for enum 1061 (2.10.5) 1062 1063 Máté Rédecsi (rmatesz@github) 1064 * Reported #953: i-I case convertion problem in Turkish locale with case-insensitive deserialization 1065 (2.11.0) 1066 1067 Ville Koskela (vjkoskela@github) 1068 * Contributed #2487: BeanDeserializerBuilder Protected Factory Method for Extension 1069 (2.11.0) 1070 * Reported #2486: Builder Deserialization with JsonCreator Value vs Array 1071 (2.11.1) 1072 * Contributed fix for #792: Deserialization Not Working Right with Generic Types and Builders 1073 (2.12.0) 1074 1075 Fitz (Joongsoo.Park) (joongsoo@github) 1076 * Contributed #2511: Add `SerializationFeature.WRITE_SELF_REFERENCES_AS_NULL` 1077 (2.11.0) 1078 1079 Antonio Petrelli (apetrelli@github) 1080 * Reported #2049: TreeTraversingParser and UTF8StreamJsonParser create contexts differently 1081 (2.11.0) 1082 1083 Robert Diebels (RobertDiebels@github) 1084 * Contributed #2352: Support use of `@JsonAlias` for enum values 1085 (2.11.0) 1086 1087 Joseph Koshakow (jkosh44@github) 1088 * Contributed fix for #2515: `ObjectMapper.registerSubtypes(NamedType...)` doesn't allow registering 1089 the same POJO for two different type ids 1090 (2.11.0) 1091 1092 Haowei Wen (yushijinhun@github) 1093 * Reported #2565: Java 8 `Optional` not working with `@JsonUnwrapped` on unwrappable type 1094 (2.11.0) 1095 1096 Bartosz Baranowski (baranowb@github) 1097 * Reported #2589: `DOMDeserializer`: setExpandEntityReferences(false) may not prevent 1098 external entity expansion in all cases 1099 (2.11.0) 1100 1101 Oleksii Khomchenko (gagoman@github) 1102 * Reported, contributed fix for #2592: `ObjectMapper.setSerializationInclusion()` is 1103 ignored for `JsonAnyGetter` 1104 (2.11.0) 1105 1106 Oleksandr Poslavskyi (alevskyi@github) 1107 * Contributed fix for #1983: Polymorphic deserialization should handle case-insensitive Type Id 1108 property name if `MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES` is enabled 1109 (2.11.0) 1110 1111 Simone D'Avico (simonedavico@github) 1112 * Reported #2632: Failure to resolve generic type parameters on serialization 1113 (2.11.0) 1114 1115 Robin Roos (robinroos@github) 1116 * Contributed #2636: ObjectReader readValue lacks Class<T> argument 1117 (2.11.0) 1118 1119 Michael Cramer (BigMichi1@github) 1120 * Reported #2725: JsonCreator on static method in Enum and Enum used as key in map 1121 fails randomly 1122 (2.11.1) 1123 1124 Frank Schmager (fschmager@github) 1125 * Reported #2757: "Conflicting setter definitions for property" exception for `Map` 1126 subtype during deserialization 1127 (2.11.1) 1128 1129 Johannes Kuhn (DasBrain@github) 1130 * Reported #2758: Fail to deserialize local Records 1131 (2.11.1) 1132 * Reported #2760: Jackson doesn't respect `CAN_OVERRIDE_ACCESS_MODIFIERS=false` for 1133 deserializer properties 1134 (2.11.1) 1135 1136 Oleg Chtchoukine (oshatrk@github) 1137 * Reported #2759: Rearranging of props when property-based generator is in use leads 1138 to incorrect output 1139 (2.11.1) 1140 1141 Joshua Shannon (retrodaredevil@github) 1142 * Reported, contributed fix for #2785: Polymorphic subtypes not registering on copied 1143 ObjectMapper (2.11.1) 1144 (2.11.2) 1145 1146 Daniel Hrabovcak (TheSpiritXIII@github) 1147 * Reported #2796: `TypeFactory.constructType()` does not take `TypeBindings` correctly 1148 (2.11.2) 1149 1150 Mike Gilbode (gilbode@github) 1151 * Reported #792: Deserialization Not Working Right with Generic Types and Builders 1152 (2.12.0) 1153 1154 Baptiste Pernet (sp4ce@github) 1155 * Contributed #1296 implementation: Add `@JsonIncludeProperties(propertyNames)` (reverse 1156 of `@JsonIgnoreProperties`) 1157 (2.12.0) 1158 1159 Patrick Jungermann (pjungermann@github) 1160 * Requested #1852: Allow case insensitive deserialization of String value into 1161 `boolean`/`Boolean` (esp for Excel) 1162 (2.12.0) 1163 1164 Nate Bauernfeind (nbauernfeind@github) 1165 * Reported #2091: `ReferenceType` does not expose valid containedType 1166 (2.12.0) 1167 1168 Xiang Zhang (zhangyangyu@github) 1169 * Reported #2118: `JsonProperty.Access.READ_ONLY` does not work with "getter-as-setter" 1170 Collections 1171 (2.12.0) 1172 1173 David Nelson (eatdrinksleepcode@github) 1174 * Requested #2215: Support `BigInteger` and `BigDecimal` creators in `StdValueInstantiator` 1175 (2.12.0) 1176 1177 Tiago Martins (upsidedownsmile@github) 1178 * Contributed #2215: Support `BigInteger` and `BigDecimal` creators in `StdValueInstantiator` 1179 (2.12.0) 1180 1181 Yona Appletree (Yona-Appletree@github) 1182 * Reported #2283: `JsonProperty.Access.READ_ONLY` fails with collections when a 1183 property name is specified 1184 (2.12.0) 1185 1186 David Bidorff (bidorffOL@github) 1187 * Reported, contributed fix for #2719: `FAIL_ON_IGNORED_PROPERTIES` does not throw 1188 on `READONLY` properties with an explicit name 1189 (2.12.0) 1190 1191 Jendrik Johannes (jjohannes@github) 1192 * Contributed #2726: Add Gradle Module Metadata for version alignment with Gradle 6 1193 (2.12.0) 1194 1195 Swayam Raina (swayamraina@github) 1196 * Contributed #2761: Support multiple names in `JsonSubType.Type` 1197 (2.12.0) 1198