Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package jackson-jaxrs-providers for
openSUSE:Factory checked in at 2024-05-21 18:35:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jackson-jaxrs-providers (Old)
and /work/SRC/openSUSE:Factory/.jackson-jaxrs-providers.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jackson-jaxrs-providers"
Tue May 21 18:35:31 2024 rev:7 rq:1175356 version:2.17.1
Changes:
--------
---
/work/SRC/openSUSE:Factory/jackson-jaxrs-providers/jackson-jaxrs-providers.changes
2024-03-11 15:41:55.800091086 +0100
+++
/work/SRC/openSUSE:Factory/.jackson-jaxrs-providers.new.1880/jackson-jaxrs-providers.changes
2024-05-21 18:35:57.837334988 +0200
@@ -1,0 +2,11 @@
+Mon May 20 10:06:31 UTC 2024 - Gus Kenion <[email protected]>
+
+- Upgrade to 2.17.1
+ * #184: Use `ReentrantLock`s instead of synchronized blocks
+ (contributed by @pjfanning)
+ * #187: Mark variables as volatile for safe concurrent access
+ (contributed by @pjfanning)
+- Includes changes from 2.17
+ * Woodstox dependency now 6.6.1
+
+-------------------------------------------------------------------
Old:
----
jackson-jaxrs-providers-2.16.1.tar.gz
New:
----
jackson-jaxrs-providers-2.17.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jackson-jaxrs-providers.spec ++++++
--- /var/tmp/diff_new_pack.tB4sLR/_old 2024-05-21 18:35:58.281351238 +0200
+++ /var/tmp/diff_new_pack.tB4sLR/_new 2024-05-21 18:35:58.285351385 +0200
@@ -17,7 +17,7 @@
Name: jackson-jaxrs-providers
-Version: 2.16.1
+Version: 2.17.1
Release: 0
Summary: Jackson JAX-RS providers
License: Apache-2.0
++++++ jackson-jaxrs-providers-2.16.1.tar.gz ->
jackson-jaxrs-providers-2.17.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/.github/workflows/main.yml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/.github/workflows/main.yml
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/.github/workflows/main.yml
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/.github/workflows/main.yml
2024-05-05 05:01:47.000000000 +0200
@@ -4,7 +4,7 @@
branches:
- master
- "3.0"
- - "2.16"
+ - "2.17"
paths-ignore:
- "README.md"
- "release-notes/*"
@@ -12,7 +12,7 @@
branches:
- master
- "3.0"
- - "2.16"
+ - "2.17"
paths-ignore:
- "README.md"
- "release-notes/*"
@@ -22,7 +22,7 @@
strategy:
fail-fast: false
matrix:
- java_version: ['8', '11', '17']
+ java_version: ['8', '11', '17', '21']
os: ['ubuntu-20.04']
env:
JAVA_OPTS: "-XX:+TieredCompilation -XX:TieredStopAtLevel=1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/base/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/base/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/base/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/base/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<artifactId>jackson-jaxrs-base</artifactId>
<name>Jackson-JAXRS: base</name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/base/src/main/java/com/fasterxml/jackson/jaxrs/base/ProviderBase.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/base/src/main/java/com/fasterxml/jackson/jaxrs/base/ProviderBase.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/base/src/main/java/com/fasterxml/jackson/jaxrs/base/ProviderBase.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/base/src/main/java/com/fasterxml/jackson/jaxrs/base/ProviderBase.java
2024-05-05 05:01:47.000000000 +0200
@@ -13,6 +13,7 @@
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.util.LRUMap;
+import com.fasterxml.jackson.databind.util.LookupCache;
import com.fasterxml.jackson.databind.type.TypeFactory;
import com.fasterxml.jackson.jaxrs.cfg.*;
@@ -158,14 +159,12 @@
/**
* Cache for resolved endpoint configurations when reading JSON data
*/
- protected final LRUMap<AnnotationBundleKey, EP_CONFIG> _readers
- = new LRUMap<AnnotationBundleKey, EP_CONFIG>(16, 120);
+ protected final LookupCache<AnnotationBundleKey, EP_CONFIG> _readers;
/**
* Cache for resolved endpoint configurations when writing JSON data
*/
- protected final LRUMap<AnnotationBundleKey, EP_CONFIG> _writers
- = new LRUMap<AnnotationBundleKey, EP_CONFIG>(16, 120);
+ protected final LookupCache<AnnotationBundleKey, EP_CONFIG> _writers;
/*
/**********************************************************
@@ -174,8 +173,9 @@
*/
protected ProviderBase(MAPPER_CONFIG mconfig) {
- _mapperConfig = mconfig;
- _jaxRSFeatures = JAXRS_FEATURE_DEFAULTS;
+ this(mconfig,
+ new LRUMap<>(16, 120),
+ new LRUMap<>(16, 120));
}
/**
@@ -186,10 +186,22 @@
*/
@Deprecated // just to denote it should NOT be directly called; will NOT
be removed
protected ProviderBase() {
- _mapperConfig = null;
+ this(null);
+ }
+
+ /**
+ * @since 2.17
+ */
+ protected ProviderBase(MAPPER_CONFIG mconfig,
+ LookupCache<AnnotationBundleKey, EP_CONFIG> readerCache,
+ LookupCache<AnnotationBundleKey, EP_CONFIG> writerCache)
+ {
+ _mapperConfig = mconfig;
_jaxRSFeatures = JAXRS_FEATURE_DEFAULTS;
+ _readers = readerCache;
+ _writers = writerCache;
}
-
+
/*
/**********************************************************
/* Configuring
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/base/src/main/java/com/fasterxml/jackson/jaxrs/cfg/MapperConfiguratorBase.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/base/src/main/java/com/fasterxml/jackson/jaxrs/cfg/MapperConfiguratorBase.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/base/src/main/java/com/fasterxml/jackson/jaxrs/cfg/MapperConfiguratorBase.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/base/src/main/java/com/fasterxml/jackson/jaxrs/cfg/MapperConfiguratorBase.java
2024-05-05 05:01:47.000000000 +0200
@@ -19,7 +19,7 @@
* If defined (explicitly or implicitly) it will be used, instead
* of using provider-based lookup.
*/
- protected MAPPER _mapper;
+ protected volatile MAPPER _mapper;
/**
* If no mapper was specified when constructed, and no configuration
@@ -27,13 +27,13 @@
* between default mapper and regular one is that default mapper
* is only used if no mapper is found via provider lookup.
*/
- protected MAPPER _defaultMapper;
+ protected volatile MAPPER _defaultMapper;
/**
* Annotations set to use by default; overridden by explicit call
- * to {@link #setAnnotationsToUse}
+ * to {@link #setAnnotationsToUse}. Marked final in v2.17.1.
*/
- protected Annotations[] _defaultAnnotationsToUse;
+ protected final Annotations[] _defaultAnnotationsToUse;
/**
* To support optional dependency to Jackson JAXB annotations module
@@ -81,27 +81,27 @@
/***********************************************************
*/
- public synchronized final void setMapper(MAPPER m) {
+ public final void setMapper(MAPPER m) {
_mapper = m;
}
- public synchronized final void setAnnotationsToUse(Annotations[]
annotationsToUse) {
+ public final void setAnnotationsToUse(Annotations[] annotationsToUse) {
_setAnnotations(mapper(), annotationsToUse);
}
- public synchronized final void configure(DeserializationFeature f, boolean
state) {
+ public final void configure(DeserializationFeature f, boolean state) {
mapper().configure(f, state);
}
- public synchronized final void configure(SerializationFeature f, boolean
state) {
+ public final void configure(SerializationFeature f, boolean state) {
mapper().configure(f, state);
}
- public synchronized final void configure(JsonParser.Feature f, boolean
state) {
+ public final void configure(JsonParser.Feature f, boolean state) {
mapper().configure(f, state);
}
- public synchronized final void configure(JsonGenerator.Feature f, boolean
state) {
+ public final void configure(JsonGenerator.Feature f, boolean state) {
mapper().configure(f, state);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/cbor/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/cbor/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/cbor/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/cbor/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<artifactId>jackson-jaxrs-cbor-provider</artifactId>
<name>Jackson-JAXRS: CBOR</name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/CBORMapperConfigurator.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/CBORMapperConfigurator.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/CBORMapperConfigurator.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/CBORMapperConfigurator.java
2024-05-05 05:01:47.000000000 +0200
@@ -1,6 +1,7 @@
package com.fasterxml.jackson.jaxrs.cbor;
import java.util.*;
+import java.util.concurrent.locks.ReentrantLock;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector;
@@ -17,6 +18,9 @@
public class CBORMapperConfigurator
extends MapperConfiguratorBase<CBORMapperConfigurator, ObjectMapper>
{
+ // @since 2.17.1
+ private final ReentrantLock _lock = new ReentrantLock();
+
/*
/**********************************************************
/* Construction
@@ -32,18 +36,24 @@
* Method that locates, configures and returns {@link ObjectMapper} to use
*/
@Override
- public synchronized ObjectMapper getConfiguredMapper() {
- /* important: should NOT call mapper(); needs to return null
- * if no instance has been passed or constructed
- */
+ public ObjectMapper getConfiguredMapper() {
+ // important: should NOT call mapper(); needs to return null
+ // if no instance has been passed or constructed
return _mapper;
}
@Override
- public synchronized ObjectMapper getDefaultMapper() {
+ public ObjectMapper getDefaultMapper() {
if (_defaultMapper == null) {
- _defaultMapper = new ObjectMapper(new CBORFactory());
- _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_defaultMapper == null) {
+ _defaultMapper = new ObjectMapper(new CBORFactory());
+ _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _defaultMapper;
}
@@ -63,8 +73,15 @@
protected ObjectMapper mapper()
{
if (_mapper == null) {
- _mapper = new ObjectMapper(new CBORFactory());
- _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_mapper == null) {
+ _mapper = new ObjectMapper(new CBORFactory());
+ _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _mapper;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/datatypes/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/datatypes/pom.xml
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/datatypes/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/datatypes/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<!-- note: different group id, it being datatype -->
<groupId>com.fasterxml.jackson.datatype</groupId>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/json/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/json/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/json/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/json/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<name>Jackson-JAXRS: JSON</name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/json/src/main/java/com/fasterxml/jackson/jaxrs/json/JsonMapperConfigurator.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/json/src/main/java/com/fasterxml/jackson/jaxrs/json/JsonMapperConfigurator.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/json/src/main/java/com/fasterxml/jackson/jaxrs/json/JsonMapperConfigurator.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/json/src/main/java/com/fasterxml/jackson/jaxrs/json/JsonMapperConfigurator.java
2024-05-05 05:01:47.000000000 +0200
@@ -1,6 +1,7 @@
package com.fasterxml.jackson.jaxrs.json;
import java.util.*;
+import java.util.concurrent.locks.ReentrantLock;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector;
@@ -16,6 +17,9 @@
public class JsonMapperConfigurator
extends MapperConfiguratorBase<JsonMapperConfigurator, ObjectMapper>
{
+ // @since 2.17.1
+ private final ReentrantLock _lock = new ReentrantLock();
+
/*
/**********************************************************
/* Construction
@@ -31,18 +35,24 @@
* Method that locates, configures and returns {@link ObjectMapper} to use
*/
@Override
- public synchronized ObjectMapper getConfiguredMapper() {
- /* important: should NOT call mapper(); needs to return null
- * if no instance has been passed or constructed
- */
+ public ObjectMapper getConfiguredMapper() {
+ // important: should NOT call mapper(); needs to return null
+ // if no instance has been passed or constructed
return _mapper;
}
@Override
- public synchronized ObjectMapper getDefaultMapper() {
+ public ObjectMapper getDefaultMapper() {
if (_defaultMapper == null) {
- _defaultMapper = new ObjectMapper();
- _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_defaultMapper == null) {
+ _defaultMapper = new ObjectMapper();
+ _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _defaultMapper;
}
@@ -62,8 +72,15 @@
protected ObjectMapper mapper()
{
if (_mapper == null) {
- _mapper = new ObjectMapper();
- _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_mapper == null) {
+ _mapper = new ObjectMapper();
+ _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _mapper;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -4,12 +4,12 @@
<parent>
<groupId>com.fasterxml.jackson</groupId>
<artifactId>jackson-base</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
<name>Jackson: JAX-RS (parent)</name>
- <version>2.16.1</version>
+ <version>2.17.1</version>
<packaging>pom</packaging>
<description>Parent for Jackson JAX-RS providers
</description>
@@ -37,7 +37,7 @@
<connection>scm:git:[email protected]:FasterXML/jackson-jaxrs-providers.git</connection>
<developerConnection>scm:git:[email protected]:FasterXML/jackson-jaxrs-providers.git</developerConnection>
<url>https://github.com/FasterXML/jackson-jaxrs-providers</url>
- <tag>jackson-jaxrs-providers-2.16.1</tag>
+ <tag>jackson-jaxrs-providers-2.17.1</tag>
</scm>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/release-notes/CREDITS-2.x
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/release-notes/CREDITS-2.x
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/release-notes/CREDITS-2.x
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/release-notes/CREDITS-2.x
2024-05-05 05:01:47.000000000 +0200
@@ -91,6 +91,10 @@
* Contributed #166: `ProviderBase` class shows contention on synchronized
block using `LRUMap` _writers instance
(2.14.2)
+* Contributed #184: Use `ReentrantLock`s instead of synchronized blocks
+ (2.17.1)
+* Contributed #187: Mark variables as volatile for safe concurrent access
+ (2.17.1)
Steven Schlansker (@stevenschlansker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/release-notes/VERSION-2.x
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/release-notes/VERSION-2.x
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/release-notes/VERSION-2.x
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/release-notes/VERSION-2.x
2024-05-05 05:01:47.000000000 +0200
@@ -10,6 +10,21 @@
=== Releases ===
------------------------------------------------------------------------
+2.17.1 (04-May-2024)
+
+#184: Use `ReentrantLock`s instead of synchronized blocks
+ (contributed by @pjfanning)
+#187: Mark variables as volatile for safe concurrent access
+ (contributed by @pjfanning)
+
+2.17.0 (12-Mar-2024)
+
+* Woodstox dependency now 6.6.1
+
+2.16.2 (09-Mar-2024)
+
+No changes since 2.16.1
+
2.16.1 (24-Dec-2023)
#178: Deprecate local `LRUMap`, use `jackson-databind` provided one instead
@@ -18,6 +33,7 @@
No changes since 2.15
+2.15.4 (15-Feb-2024)
2.15.3 (12-Oct-2023)
2.15.2 (30-May-2023)
2.15.1 (16-May-2023)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/smile/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/smile/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/smile/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/smile/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<artifactId>jackson-jaxrs-smile-provider</artifactId>
<name>Jackson-JAXRS: Smile</name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/SmileMapperConfigurator.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/SmileMapperConfigurator.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/SmileMapperConfigurator.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/SmileMapperConfigurator.java
2024-05-05 05:01:47.000000000 +0200
@@ -1,6 +1,7 @@
package com.fasterxml.jackson.jaxrs.smile;
import java.util.*;
+import java.util.concurrent.locks.ReentrantLock;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector;
@@ -18,6 +19,9 @@
public class SmileMapperConfigurator
extends MapperConfiguratorBase<SmileMapperConfigurator, ObjectMapper>
{
+ // @since 2.17.1
+ private final ReentrantLock _lock = new ReentrantLock();
+
/*
/**********************************************************
/* Construction
@@ -33,18 +37,24 @@
* Method that locates, configures and returns {@link ObjectMapper} to use
*/
@Override
- public synchronized ObjectMapper getConfiguredMapper() {
- /* important: should NOT call mapper(); needs to return null
- * if no instance has been passed or constructed
- */
+ public ObjectMapper getConfiguredMapper() {
+ // important: should NOT call mapper(); needs to return null
+ // if no instance has been passed or constructed
return _mapper;
}
@Override
- public synchronized ObjectMapper getDefaultMapper() {
+ public ObjectMapper getDefaultMapper() {
if (_defaultMapper == null) {
- _defaultMapper = new ObjectMapper(new SmileFactory());
- _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_defaultMapper == null) {
+ _defaultMapper = new ObjectMapper(new SmileFactory());
+ _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _defaultMapper;
}
@@ -64,8 +74,15 @@
protected ObjectMapper mapper()
{
if (_mapper == null) {
- _mapper = new ObjectMapper(new SmileFactory());
- _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_mapper == null) {
+ _mapper = new ObjectMapper(new SmileFactory());
+ _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _mapper;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/xml/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/xml/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/xml/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/xml/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<artifactId>jackson-jaxrs-xml-provider</artifactId>
<name>Jackson-JAXRS: XML</name>
@@ -62,9 +62,7 @@
<groupId>org.codehaus.woodstox</groupId>
<artifactId>stax2-api</artifactId>
<!-- Ideally we'd accept range of versions but won't really work with
Maven... -->
-
-<!-- <version>[4.0, 5.0)</version> -->
- <version>4.2.1</version>
+ <version>4.2.2</version>
</dependency>
<!-- Also: While JDK-included SJSXP almost works, there are some rough
edges;
@@ -73,7 +71,7 @@
<dependency>
<groupId>com.fasterxml.woodstox</groupId>
<artifactId>woodstox-core</artifactId>
- <version>6.5.1</version>
+ <version>6.6.1</version>
<exclusions>
<exclusion>
<groupId>javax.xml.stream</groupId>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/xml/src/main/java/com/fasterxml/jackson/jaxrs/xml/XMLMapperConfigurator.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/xml/src/main/java/com/fasterxml/jackson/jaxrs/xml/XMLMapperConfigurator.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/xml/src/main/java/com/fasterxml/jackson/jaxrs/xml/XMLMapperConfigurator.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/xml/src/main/java/com/fasterxml/jackson/jaxrs/xml/XMLMapperConfigurator.java
2024-05-05 05:01:47.000000000 +0200
@@ -1,6 +1,7 @@
package com.fasterxml.jackson.jaxrs.xml;
import java.util.*;
+import java.util.concurrent.locks.ReentrantLock;
import com.fasterxml.jackson.databind.*;
@@ -20,6 +21,9 @@
public class XMLMapperConfigurator
extends MapperConfiguratorBase<XMLMapperConfigurator, XmlMapper>
{
+ // @since 2.17.1
+ private final ReentrantLock _lock = new ReentrantLock();
+
/*
/**********************************************************
/* Construction
@@ -35,21 +39,27 @@
* Method that locates, configures and returns {@link XmlMapper} to use
*/
@Override
- public synchronized XmlMapper getConfiguredMapper() {
- /* important: should NOT call mapper(); needs to return null
- * if no instance has been passed or constructed
- */
+ public XmlMapper getConfiguredMapper() {
+ // important: should NOT call mapper(); needs to return null
+ // if no instance has been passed or constructed
return _mapper;
}
@Override
- public synchronized XmlMapper getDefaultMapper()
+ public XmlMapper getDefaultMapper()
{
if (_defaultMapper == null) {
- // 10-Oct-2012, tatu: Better do things explicitly...
- JacksonXmlModule module = getConfiguredModule();
- _defaultMapper = (module == null) ? new XmlMapper() : new
XmlMapper(module);
- _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_defaultMapper == null) {
+ // 10-Oct-2012, tatu: Better do things explicitly...
+ JacksonXmlModule module = getConfiguredModule();
+ _defaultMapper = (module == null) ? new XmlMapper() : new
XmlMapper(module);
+ _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _defaultMapper;
}
@@ -74,8 +84,15 @@
protected XmlMapper mapper()
{
if (_mapper == null) {
- _mapper = new XmlMapper();
- _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_mapper == null) {
+ _mapper = new XmlMapper();
+ _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _mapper;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/yaml/pom.xml
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/yaml/pom.xml
--- old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/yaml/pom.xml
2023-12-24 07:07:01.000000000 +0100
+++ new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/yaml/pom.xml
2024-05-05 05:01:47.000000000 +0200
@@ -9,7 +9,7 @@
<parent>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-providers</artifactId>
- <version>2.16.1</version>
+ <version>2.17.1</version>
</parent>
<artifactId>jackson-jaxrs-yaml-provider</artifactId>
<name>Jackson-JAXRS: YAML</name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/JacksonYAMLProvider.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/JacksonYAMLProvider.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/JacksonYAMLProvider.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/JacksonYAMLProvider.java
2024-05-05 05:01:47.000000000 +0200
@@ -29,7 +29,7 @@
* mapper to use can be configured in multiple ways:
* <ul>
* <li>By explicitly passing mapper to use in constructor
- * <li>By explcitly setting mapper to use by {@link #setMapper}
+ * <li>By explicitly setting mapper to use by {@link #setMapper}
* <li>By defining JAX-RS <code>Provider</code> that returns {@link
YAMLMapper}s.
* <li>By doing none of above, in which case a default mapper instance is
* constructed (and configured if configuration methods are called)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/YAMLMapperConfigurator.java
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/YAMLMapperConfigurator.java
---
old/jackson-jaxrs-providers-jackson-jaxrs-providers-2.16.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/YAMLMapperConfigurator.java
2023-12-24 07:07:01.000000000 +0100
+++
new/jackson-jaxrs-providers-jackson-jaxrs-providers-2.17.1/yaml/src/main/java/com/fasterxml/jackson/jaxrs/yaml/YAMLMapperConfigurator.java
2024-05-05 05:01:47.000000000 +0200
@@ -8,6 +8,7 @@
import com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector;
import java.util.ArrayList;
+import java.util.concurrent.locks.ReentrantLock;
/**
* Helper class used to encapsulate details of configuring an
@@ -15,7 +16,11 @@
* well as accessing it.
*/
public class YAMLMapperConfigurator
- extends MapperConfiguratorBase<YAMLMapperConfigurator, YAMLMapper> {
+ extends MapperConfiguratorBase<YAMLMapperConfigurator, YAMLMapper>
+{
+ // @since 2.17.1
+ private final ReentrantLock _lock = new ReentrantLock();
+
/*
/**********************************************************
/* Construction
@@ -30,18 +35,24 @@
* Method that locates, configures and returns {@link YAMLMapper} to use
*/
@Override
- public synchronized YAMLMapper getConfiguredMapper() {
- /* important: should NOT call mapper(); needs to return null
- * if no instance has been passed or constructed
- */
+ public YAMLMapper getConfiguredMapper() {
+ // important: should NOT call mapper(); needs to return null
+ // if no instance has been passed or constructed
return _mapper;
}
@Override
- public synchronized YAMLMapper getDefaultMapper() {
+ public YAMLMapper getDefaultMapper() {
if (_defaultMapper == null) {
- _defaultMapper = new YAMLMapper(); //tarik: maybe there is better
default config?
- _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_defaultMapper == null) {
+ _defaultMapper = new YAMLMapper(); //tarik: maybe there is
better default config?
+ _setAnnotations(_defaultMapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _defaultMapper;
}
@@ -60,8 +71,15 @@
@Override
protected YAMLMapper mapper() {
if (_mapper == null) {
- _mapper = new YAMLMapper();
- _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ _lock.lock();
+ try {
+ if (_mapper == null) {
+ _mapper = new YAMLMapper();
+ _setAnnotations(_mapper, _defaultAnnotationsToUse);
+ }
+ } finally {
+ _lock.unlock();
+ }
}
return _mapper;
}