Uploaded image for project: 'XWiki Commons'
  1. XWiki Commons
  2. XCOMMONS-833

Upgrade to Jackson 2.6.0



    • N/A


      Jackson Core: https://github.com/FasterXML/jackson-core/blob/jackson-core-2.6.0/release-notes/VERSION

      #137: Allow filtering content read via `JsonParser` by specifying `JsonPointer`;
        uses new class `com.fasterxml.jackson.core.filter.FilteringParserDelegate`
        (and related, `TokenFilter`)
      #177: Add a check so `JsonGenerator.writeString()` won't work if `writeFieldName()` expected.
      #182: Inconsistent TextBuffer#getTextBuffer behavior
       (contributed by Masaru H)
      #185: Allow filtering content written via `JsonGenerator` by specifying `JsonPointer`;
        uses new class `com.fasterxml.jackson.core.filter.FilteringGeneratorDelegate`
        (and related, `TokenFilter`)
      #188: `JsonParser.getValueAsString()` should return field name for `JsonToken.FIELD_NAME`, not `null`
      #189: Add `JsonFactory.Feature.USE_THREAD_LOCAL_FOR_BUFFER_RECYCLING` (default: true), which may
        be disabled to prevent use of ThreadLocal-based buffer recyling.
       (suggested by soldierkam@github)
      #195: Add `JsonGenerator.getOutputBuffered()` to find out amount of content buffered,
        not yet flushed.
       (requested by Ruediger M)
      #196: Add support for `FormatFeature` extension, for format-specifc Enum-backed
        parser/generator options
      - Minor improvement to construction of "default PrettyPrinter": now overridable by data format
      - Implement a new yet more optimized symbol table for byte-backed parsers
      - Add `JsonParser.Feature.IGNORE_UNDEFINED`, useful for data formats like protobuf
      - Optimize writing of String names (remove intermediate copy; with JDK7 no speed benefit)

      Jackson Databind: https://github.com/FasterXML/jackson-databind/blob/jackson-databind-2.6.0/release-notes/VERSION

      #77: Allow injection of 'transient' fields
      #95: Allow read-only properties with `@JsonIgnoreProperties(allowGetters=true)`
      #222: EXTERNAL_PROPERTY adds property multiple times and in multiple places
       (reported by Rob E, thatsnotright@github)
      #296: Serialization of transient fields with public getters (add
       (suggested by Michal L)
      #312: Support Type Id mappings where two ids map to same Class
      #348: ObjectMapper.valueToTree does not work with @JsonRawValue
       (reported by Chris P, pimlottc@github)
      #504: Add `DeserializationFeature.USE_LONG_FOR_INTS`
       (suggested by Jeff S)
      #624: Allow setting external `ClassLoader` to use, via `TypeFactory`
      #649: Make `BeanDeserializer` use new `parser.nextFieldName()` and `.hasTokenId()` methods
      #664: Add `DeserializationFeature.ACCEPT_FLOAT_AS_INT` to prevent coercion of floating point
       numbers int `int`/`long`/`Integer`/`Long`
       (requested by wenzis@github)
      #677: Specifying `Enum` value serialization using `@JsonProperty`
       (requested by Allen C, allenchen1154@github)
      #679: Add `isEmpty()` implementation for `JsonNode` serializers
      #688: Provide a means for an ObjectMapper to discover mixin annotation classes on demand
       (requested by Laird N)
      #689: Add `ObjectMapper.setDefaultPrettyPrinter(PrettyPrinter)`
       (requested by derknorton@github)
      #696: Copy constructor does not preserve `_injectableValues`
       (reported by Charles A)
      #698: Add support for referential types (ReferenceType)
      #700: Cannot Change Default Abstract Type Mapper from LinkedHashMap
       (reported by wealdtech@github)
      #725: Auto-detect multi-argument constructor with implicit names if it is the only visible creator
      #727: Improve `ObjectWriter.forType()` to avoid forcing base type for container types
      #734: Add basic error-recovery for `ObjectReader.readValues()`
      #737: Add support for writing raw values in TokenBuffer
       (suggested by Guillaume S, gsmet@github)
      #740: Ensure proper `null` (as empty) handling for `AtomicReference`
      #741: Pass `DeserializationContext' argument for `JsonDeserializer` methods "getNullValue()"
       and "getEmptyValue()"
      #743: Add `RawValue` helper type, for piping raw values through `TokenBuffer`
      #756: Disabling SerializationFeature.FAIL_ON_EMPTY_BEANS does not affect `canSerialize()`
       (reported by nickwongdev@github)
      #762: Add `ObjectWriter.withoutRootName()`, `ObjectReader.withoutRootName()`
      #765: `SimpleType.withStaticTyping()` impl incorrect
      #769: Fix `JacksonAnnotationIntrospector.findDeserializer` to return `Object` (as per
        `AnnotationIntrospector`); similarly for other `findXxx(De)Serializer(...)` methods
      #777: Allow missing build method if its name is empty ("")
       (suggested by galdosd@github)
      #781: Support handling of `@JsonProperty.required` for Creator methods
      #787: Add `ObjectMapper setFilterProvider(FilterProvider)` to allow chaining
       (suggested by rgoldberg@githin)
      #790: Add `JsonNode.equals(Comparator<JsonNode>, JsonNode)` to support
        configurable/external equality comparison
      #794: Add `SerializationFeature.WRITE_DATES_WITH_ZONE_ID` to allow inclusion/exclusion of
        timezone id for date/time values (as opposed to timezone offset)
      #795: Converter annotation not honored for abstract types
       (reported by myrosia@github)
      #797: `JsonNodeFactory` method `numberNode(long)` produces `IntNode` for small numbers
      #810: Force value coercion for `java.util.Properties`, so that values are `String`s
      #811: Add new option, `JsonInclude.Include.NON_ABSENT` (to support exclusion of
        JDK8/Guava Optionals)
      #812: Java 8 breaks Class-value annotation properties, wrt generics: need to work around
      #813: Add support for new property of `@JsonProperty.access` to support
        read-only/write-only use cases
      #820: Add new method for `ObjectReader`, to bind from JSON Pointer position
       (contributed by Jerry Y, islanderman@github)
      #824: Contextual `TimeZone` changes don't take effect wrt `java.util.Date`,
        `java.util.Calendar` serialization
      #826: Replaced synchronized HashMap with ConcurrentHashMap in TypeDeserializerBase._findDeserializer
       (contributed by Lars P)
      #827: Fix for polymorphic custom map key serializer
       (reported by mjr6140@gitgub)
      #828: Respect DeserializationFeatures.WRAP_EXCEPTIONS in CollectionDeserializer
       (contributed by Steve G, thezerobit@github)
      #840: Change semantics of `@JsonPropertyOrder(alphabetic)` to only count `true` value
      #848: Custom serializer not used if POJO has `@JsonValue`
      #849: Possible problem with `NON_EMPTY` exclusion, `int`s, `Strings`
      #868: Annotations are lost in the case of duplicate methods
      - Remove old cglib compatibility tests; cause problems in Eclipse
      - Add `withFilterId()` method in `JsonSerializer` (demote from `BeanSerializer`)




            tmortagne Thomas Mortagne
            tmortagne Thomas Mortagne
            0 Vote for this issue
            1 Start watching this issue