Repository navigation
Jackson Release 3.1.8
Tatu Saloranta edited this page Oct 17, 2026
·
49 revisions
Patch version of 3.1, released on October 17, 2026.
Following fixes will be included in this patch release.
-
#1683: JSON
\uXXXXescape accepts lone surrogates in field names forReaderBasedJsonParser -
#1724:
InvocationTargetExceptioncause may produce misleading messages inwrapWithPath() - #1728: Error message drops high bits from supplementary code points
-
#1730: Make
FilteringGeneratorDelegatehandle embedded objects, typed arrays and raw/binary values consistently -
#1742: Non-blocking parser returns
NOT_AVAILABLEwithneedMoreInput()false when a feed ends inside an escaped surrogate pair in a property name -
#1744:
UTF8DataInputJsonParserfails on JSON-escaped surrogate pairs in property names -
#1746: Non-blocking parser rejects leading-decimal-point numbers after
,or:withALLOW_LEADING_DECIMAL_POINT_FOR_NUMBERS -
#1748: Unquoted non-ASCII property names fail in UTF-8 byte parsers with
ALLOW_UNQUOTED_FIELD_NAMES -
#1750:
ALLOW_UNESCAPED_CONTROL_CHARSignored for single-quoted string values in UTF-8 byte parsers - #1756: Non-blocking parser does not decode multi-byte UTF-8 character after backslash escape
-
#6206: Report cycle through
@JsonValueaccessor asDatabindException -
#6227:
BeanDescription.findProperties()is not thread-safe when called concurrently on the same (shared/cached) instance -
#6232: Validate number length when coercing
StringNodeto number -
#6236:
withFormat()ofMonth,MonthDay,Year,YearMonthserializers dropsJsonFormat.Shape -
#6240:
@JsonValueignored on getter also annotated with@JsonKey -
#6246: Retain case-insensitivity of Creator properties in
PropertyBasedCreator.renameAll() -
#6249: Avoid NPE when parser reports
VALUE_STRINGwithnulltext -
#6252:
@JsonIgnoreProperties/@JsonIncludePropertiesnot applied toEnumMap(andMap<Enum,V>) properties -
#6261: Support
@JsonViewon properties-based Creator parameters ofEnum,MapandEnumMaptypes - #6287: Validate type parameters and array element types of type ids [CVE-2026-110879]
-
#797: Apache decoder fails with
UnsupportedOperationExceptionwhenAvroParser.Feature.AVRO_BUFFERINGdisabled -
#816: Validate union index in
UnionReader.nextToken() -
#819: Avro
bytesvalue allocated to declared length before checking available content [CVE-2026-104015] -
#845: Avro parsers'
getText(Writer)write wrong text for numeric tokens, NPE for binary;ApacheAvroParserImpl.getText()returns stale text for non-String scalars -
#852:
skipMap()/skipArray()onDecoderpassed to@AvroEncodeCustomEncodingmisreads data -
#855:
arrayNext()/mapNext()onDecoderpassed to@AvroEncodeCustomEncodinglose elements and the following field
-
#821:
CBORParser.TagListshould grow its backing array geometrically [CVE-2026-106554] -
#842:
CBORGeneratorwrites wrong exponent forBigDecimalwith scaleInteger.MIN_VALUE -
#844:
CBORParser.getText(Writer)writes stale text for numeric tokens, NPE for binary
- #818: Report corrupt Ion content for String/Symbol value without text
-
#817: Improve length validation for length-prefixed values in
ProtobufParser[CVE-2026-104016][CVE-2026-104017][CVE-2026-110747] -
#846:
ProtobufParser.getText(Writer)writes stale text for numeric tokens, NPE for binary
- #825: Non-blocking Smile parser should validate raw binary length and not pre-allocate full buffer [CVE-2026-104895]
- #830: Non-blocking Smile parser silently drops truncated root-level value at end-of-input
-
#831: Non-blocking Smile parser reports wrong
currentLocation()/currentTokenLocation()byte offsets -
#833: Non-blocking
_decodeShortUnicodeText()reads past declared String length on truncated UTF-8 sequence -
#834:
SmileGeneratorsilently writes wrongBigDecimalscale outside [-2^30, 2^30-1] -
#835:
SmileParser.getText(Writer)writes stale text for numeric tokens - #838: Non-blocking Smile parser requires a header after a root-level scalar value (rejects end marker, following root values)
-
#726: Fix
TomlGenerator.writeString(char[],int,int)index bug when escaping needed -
#746: Fix remaining
TomlGeneratorString write issues
-
#190: Reject out-of-range int in
PeriodDeserializerobject form
-
#76: Widen
jakarta.ws.rsimport range for Jakarta EE 11