Releases: aws-powertools/powertools-lambda-java
v1.10.2
Changes
Tracing
Ability to override object mapper used for serializing method response as trace metadata when enabled. This provides users ability to customize how and what you want to capture as metadata from method response object. You might
want to supply custom object mapper in order to control how serialization is done, for example, when you want to serialize only
specific fields from received response due to security.
- feat(tracing): ability to override object mapper (#698) by @pankajagrawal16
- chore(docs): Add FAQs section to docs with information about Lombok support. (#680) by @kozub
This release was made possible by the following contributors:
v1.10.1
Changes
Security
Upgrading Log4j to version 2.17.1 for CVE-2021-44832
This release was made possible by the following contributors:
@dependabot, @dependabot[bot], @pankajagrawal16 and @poprahul
v1.10.0
Changes
Logging
With 1.10.0 we have deprecated configuring log4j using < LambdaJsonLayout \> plugin since underlying JsonLayout is deprecated too. New configuration is based on the recommended JSON Template Layout.
While utility still supports the old configuration, we strongly recommend upgrading the log4j2.xml configuration to JsonTemplateLayout instead. Switching to JsonTemplateLayout is straight forward. Please refer docs to upgrade to JsonTemplateLayout from deprecated LambdaJsonLayout configuration in log4j2.xml.
JsonTemplateLayout is a customizable, efficient, and garbage-free JSON generating layout. It encodes LogEvents according to the structure described by the JSON template provided.
🐛 Bug
- SQS Batch: Support batch size greater than 10. #667
- feat: Json layout modern implementation (#670) by @pankajagrawal16
- fix: support batch size greater than 10 processing (#667) by @pankajagrawal16
This release was made possible by the following contributors:
v1.9.0
Changes
Tracing
Tracing now automatically adds a Service annotation if either namespace parameter or POWERTOOLS_SERVICE_NAME is set - This makes it easier to slice and dice all of your traces by the exact service you have deployed.
Logging
Upgrade Log4j to version 2.17.0 for CVE-2021-45105
- chore: localise abstract json layout implementation (#664) by @pankajagrawal16
- build(deps): bump log4j-api from 2.16.0 to 2.17.0 in /example/HelloWorldFunction (#659) by @dependabot
- build(deps): bump log4j-core from 2.16.0 to 2.17.0 in /example/HelloWorldFunction (#661) by @dependabot
- build(deps): bump log4j-api from 2.16.0 to 2.17.0 (#660) by @dependabot
- chore: Update docs to reflect latest gradle plugin fix (#656) by @pankajagrawal16
- feat(tracing): add service annotation (#655) by @pankajagrawal16
This release was made possible by the following contributors:
v1.8.2
Changes
Security
Upgrading Log4j to version 2.16.0 for CVE-2021-45046
This release was made possible by the following contributors:
@dependabot, @dependabot[bot] and @msailes
v1.8.1
Changes
Security
Upgrade Log4j to v2.15.0 in response to CVE-2021-44228
Maintenance
deps: Bump third party dependencies to the latest versions.
This release was made possible by the following contributors:
@dependabot, @dependabot[bot], @msailes and @pankajagrawal16
v1.8.0
Changes
Powertools Cloudformation module (NEW)
New module simplifying AWS Lambda-backed custom resources written in Java. #560
SQS Large message processing
Utility now adds ability to override the default S3Client use to fetch payload from S3. #602
- chore: prep release 1.8.0 (#608) by @pankajagrawal16
- feat(sqs:large-message): Expose SDK v2 s3 client (#602) by @pankajagrawal16
- feat: create Java cfn-response equivalent (#558) (#560) by @bdkosher
- ci: Build with Java 17 (#590) by @pankajagrawal16
- fix: LoggingAspect precedence to be last for accepting mutated args (#567) by @pankajagrawal16
- chore: spotbug check (#565) by @pankajagrawal16
This release was made possible by the following contributors:
v1.7.3
Changes
With this release, If you want certain exceptions to be treated as permanent failures during batch processing, i.e. exceptions where the result of retrying will always be a failure and want these can be immediately moved to the dead letter queue associated to the source SQS queue, you can use SqsBatch#nonRetryableExceptions() to configure such exceptions.
- docs(batch-processing): Support for moving non retryable msg to DLQ (#531) by @pankajagrawal16
- feat(batch-processing): move non retry-able message to DLQ (#500) by @pankajagrawal16
- fix: reset cold start only when placed on handler (#508) by @pankajagrawal16
This release was made possible by the following contributors:
v1.7.2
Changes
-
Powertools All Modules: Upgrade to the latest(1.14.0) aspectj-maven-plugin which also supports Java 9 and newer versions.
Users no longer need to depend on com.nickwongdev as a workaround. #489 -
Logging: Performance optimisation to improve cold start. #484
-
SQS Batch processing/Large message: Module now lazy loads default SQS client. #484
- chore: Logging and SQS utility Optimisations (#484) by @pankajagrawal16
- Fix imports @logging after upgrade (#479) by @drissamri
This release was made possible by the following contributors:
v1.7.1
Changes
This release fixes static code analysis violations identified using spotbugs. For future, these checks are now part of our build workflows as well, making sure none of these issues slips through in any of the future releases.
- Static analysis spotbugs (#458) by @pankajagrawal16





