Skip to content

Commit 181e851

Browse files
darklight3itDavide Melfi
andauthored
Update Jackson Version to 2.18.6 (#587)
* chore: update jackson.version to 2.18.6 * chore: add some gitignore * chore: update changelog and pom.xml --------- Co-authored-by: Davide Melfi <dmelfi@amazon.com>
1 parent 3588a35 commit 181e851

File tree

4 files changed

+16
-8
lines changed

4 files changed

+16
-8
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,5 @@ experimental/aws-lambda-java-profiler/integration_tests/helloworld/bin
3636
!experimental/aws-lambda-java-profiler/extension/gradle/wrapper/*.jar
3737
/scratch/
3838
.vscode
39+
.kiro
40+
build

aws-lambda-java-serialization/RELEASE.CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
### March 11, 2026
2+
`1.3.0`:
3+
- Update `jackson-databind` dependency from 2.15.4 to 2.18.6
4+
- Replace deprecated `PropertyNamingStrategy.PascalCaseStrategy` with `PropertyNamingStrategies.UpperCamelCaseStrategy`
5+
16
### December 16, 2025
27
`1.2.0`:
38
- Update `jackson-databind` dependency from 2.14.2 to 2.15.4

aws-lambda-java-serialization/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<groupId>com.amazonaws</groupId>
66
<artifactId>aws-lambda-java-serialization</artifactId>
7-
<version>1.2.0</version>
7+
<version>1.3.0</version>
88
<packaging>jar</packaging>
99

1010
<name>AWS Lambda Java Runtime Serialization</name>
@@ -32,7 +32,7 @@
3232
<maven.compiler.source>1.8</maven.compiler.source>
3333
<maven.compiler.target>1.8</maven.compiler.target>
3434
<relocation.prefix>com.amazonaws.lambda.thirdparty</relocation.prefix>
35-
<jackson.version>2.15.4</jackson.version>
35+
<jackson.version>2.18.6</jackson.version>
3636
<gson.version>2.10.1</gson.version>
3737
<json.version>20231013</json.version>
3838
<owasp.version>7.3.2</owasp.version>

aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/LambdaEventSerializers.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.amazonaws.services.lambda.runtime.serialization.PojoSerializer;
2020
import com.amazonaws.services.lambda.runtime.serialization.util.ReflectUtil;
2121
import com.amazonaws.services.lambda.runtime.serialization.util.SerializeUtil;
22+
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
2223
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
2324
import com.amazonaws.services.lambda.runtime.serialization.events.modules.DateModule;
2425
import com.amazonaws.services.lambda.runtime.serialization.events.modules.DateTimeModule;
@@ -91,7 +92,7 @@ public class LambdaEventSerializers {
9192
new SimpleEntry<>("com.amazonaws.services.s3.event.S3EventNotification", new S3EventSerializer<>()),
9293
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.models.s3.S3EventNotification", new S3EventSerializer<>()),
9394
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.S3Event", new S3EventSerializer<>()))
94-
.collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue));
95+
.collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue()));
9596

9697
/**
9798
* Maps supported event classes to mixin classes with Jackson annotations.
@@ -153,7 +154,7 @@ public class LambdaEventSerializers {
153154
SQSEventMixin.class),
154155
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.SQSEvent$SQSMessage",
155156
SQSEventMixin.SQSMessageMixin.class))
156-
.collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue));
157+
.collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue()));
157158

158159
/**
159160
* If mixins are required for inner classes of an event, then those nested classes must be specified here.
@@ -208,19 +209,19 @@ public class LambdaEventSerializers {
208209
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.SQSEvent",
209210
Arrays.asList(
210211
new NestedClass("com.amazonaws.services.lambda.runtime.events.SQSEvent$SQSMessage"))))
211-
.collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue));
212+
.collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue()));
212213

213214
/**
214215
* If event requires a naming strategy. For example, when someone names the getter method getSNS and the setter
215216
* method setSns, for some magical reasons, using both mixins and a naming strategy works
216217
*/
217218
private static final Map<String, PropertyNamingStrategy> NAMING_STRATEGY_MAP = Stream.of(
218219
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.SNSEvent",
219-
new PropertyNamingStrategy.PascalCaseStrategy()),
220+
new PropertyNamingStrategies.UpperCamelCaseStrategy()),
220221
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.ConnectEvent$Queue",
221-
new PropertyNamingStrategy.PascalCaseStrategy())
222+
new PropertyNamingStrategies.UpperCamelCaseStrategy())
222223
)
223-
.collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue));
224+
.collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue()));
224225

225226
/**
226227
* Returns whether the class name is a Lambda supported event model.

0 commit comments

Comments
 (0)