diff --git a/.gitignore b/.gitignore index 1adf36493..5eb5456a1 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,5 @@ experimental/aws-lambda-java-profiler/integration_tests/helloworld/bin !experimental/aws-lambda-java-profiler/extension/gradle/wrapper/*.jar /scratch/ .vscode +.kiro +build \ No newline at end of file diff --git a/aws-lambda-java-serialization/RELEASE.CHANGELOG.md b/aws-lambda-java-serialization/RELEASE.CHANGELOG.md index 2ce29d758..59ed3c8cb 100644 --- a/aws-lambda-java-serialization/RELEASE.CHANGELOG.md +++ b/aws-lambda-java-serialization/RELEASE.CHANGELOG.md @@ -1,3 +1,8 @@ +### March 11, 2026 +`1.3.0`: +- Update `jackson-databind` dependency from 2.15.4 to 2.18.6 +- Replace deprecated `PropertyNamingStrategy.PascalCaseStrategy` with `PropertyNamingStrategies.UpperCamelCaseStrategy` + ### December 16, 2025 `1.2.0`: - Update `jackson-databind` dependency from 2.14.2 to 2.15.4 diff --git a/aws-lambda-java-serialization/pom.xml b/aws-lambda-java-serialization/pom.xml index 7fa472118..93c27d879 100644 --- a/aws-lambda-java-serialization/pom.xml +++ b/aws-lambda-java-serialization/pom.xml @@ -4,7 +4,7 @@ com.amazonaws aws-lambda-java-serialization - 1.2.0 + 1.3.0 jar AWS Lambda Java Runtime Serialization @@ -32,7 +32,7 @@ 1.8 1.8 com.amazonaws.lambda.thirdparty - 2.15.4 + 2.18.6 2.10.1 20231013 7.3.2 diff --git a/aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/LambdaEventSerializers.java b/aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/LambdaEventSerializers.java index 3b10b198e..89401a91e 100644 --- a/aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/LambdaEventSerializers.java +++ b/aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/LambdaEventSerializers.java @@ -19,6 +19,7 @@ import com.amazonaws.services.lambda.runtime.serialization.PojoSerializer; import com.amazonaws.services.lambda.runtime.serialization.util.ReflectUtil; import com.amazonaws.services.lambda.runtime.serialization.util.SerializeUtil; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.PropertyNamingStrategy; import com.amazonaws.services.lambda.runtime.serialization.events.modules.DateModule; import com.amazonaws.services.lambda.runtime.serialization.events.modules.DateTimeModule; @@ -91,7 +92,7 @@ public class LambdaEventSerializers { new SimpleEntry<>("com.amazonaws.services.s3.event.S3EventNotification", new S3EventSerializer<>()), new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.models.s3.S3EventNotification", new S3EventSerializer<>()), new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.S3Event", new S3EventSerializer<>())) - .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + .collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue())); /** * Maps supported event classes to mixin classes with Jackson annotations. @@ -153,7 +154,7 @@ public class LambdaEventSerializers { SQSEventMixin.class), new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.SQSEvent$SQSMessage", SQSEventMixin.SQSMessageMixin.class)) - .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + .collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue())); /** * If mixins are required for inner classes of an event, then those nested classes must be specified here. @@ -208,7 +209,7 @@ public class LambdaEventSerializers { new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.SQSEvent", Arrays.asList( new NestedClass("com.amazonaws.services.lambda.runtime.events.SQSEvent$SQSMessage")))) - .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + .collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue())); /** * If event requires a naming strategy. For example, when someone names the getter method getSNS and the setter @@ -216,11 +217,11 @@ public class LambdaEventSerializers { */ private static final Map NAMING_STRATEGY_MAP = Stream.of( new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.SNSEvent", - new PropertyNamingStrategy.PascalCaseStrategy()), + new PropertyNamingStrategies.UpperCamelCaseStrategy()), new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.ConnectEvent$Queue", - new PropertyNamingStrategy.PascalCaseStrategy()) + new PropertyNamingStrategies.UpperCamelCaseStrategy()) ) - .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + .collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue())); /** * Returns whether the class name is a Lambda supported event model.