github awspring/spring-cloud-aws v4.0.0
4.0.0

11 hours ago

Reference documentation

📗 https://docs.awspring.io/spring-cloud-aws/docs/4.0.0/reference/html/index.html

What's changed

🚀 Highlights

Spring Cloud AWS 4.0.0 is a major release aligned with the next generation of the Spring ecosystem. It delivers full compatibility with Spring Boot 4.x and Spring Framework 7.x.

A key milestone in this release is the integration of the Spring Integration AWS project directly into Spring Cloud AWS.

New Spring Integration modules include support for:

  • SQS
  • SNS
  • S3
  • DynamoDB
  • Kinesis (including KCL, Producer Library, and Spring Cloud Stream Binder)

Modernized testing support with ServiceConnection migration to Testcontainers 2.

SQS

  • Support of handling multiple different objects by same @SqsListener is now possible by using @SqsHandler annotation by @joseiedo in #1377
  • Support for SNS message payload and metadata is now possible with SnsNotification @chomatdam in #1419
  • Add Error Handler Exponential and Linear Strategies by @brun0-4ugusto in #1422
  • Support for toggling SqsListener starting up on context startup with spring.cloud.aws.sqs.listener.auto-startup by @techadri in #1435
  • Add SemaphoreBackPressureHandler as an optional fallback by @tomazfernandes in #1524
  • Dynamically configure SemaphoreBackPressureHandler with BackPressureLimiter (#1251) by @loicrouchon in #1308
  • Refine BackPressureHandlerFactories API; clarify backpressure by @tomazfernandes in #1469
  • Consolidate ExponentialErrorHandlers by @tomazfernandes in #1474
  • Introduce automatic SQS request batching support component: sqs by @khc41 in #1438
  • fix: Visibility Timeout Extension for Fifo message Batches by @marcotesche in #1432
  • fix: future is cleaned now on exception failure by @dzmitry-dulko in #1455
  • Fix maxMessagesPerPoll validation message in AbstractContainerOptions by @richardfearn in #1480
  • Fix: remove failed queue attributes from cache by @LeeHyungGeol in #1491
  • Resolve listener payload type during container setup by @tomazfernandes in #1548

SQS Integration

DynamoDb Integration

SNS Integration

DynamoDb

  • Enhance DefaultDynamoDbTableNameResolver with caching and improved table name resolution by @marcusvoltolim in #1464
  • Implement DynamoTemplate update partial using UpdateItemEnhancedRequest by @marcusvoltolim in #1448
  • Introduce conditional save, update and delete operation support for DynamoDB entities. Fixes #gh-1147 by @vyomrastogi in #1371
  • Enhance DefaultDynamoDbTableSchemaResolver to resolve DynamoDbBean and DynamoDbImmutable by @marcusvoltolim in #1450

S3

  • Introduce listAllObjects method to S3Template by @Tooa in #1443
  • S3 vector client autoconfiguration by @MatejNedic in #1425
  • Custom exceptions are now logged by Spring Cloud AWS instead of Spring Core by @MatejNedic in #1541

Secrets Manager

  • Custom exceptions are now logged by Spring Cloud AWS instead of Spring Core by @MatejNedic in #1540

S3 Integration

Kinesis Integration

STS

  • Configure STS Credentials provider only if either spring.cloud.aws.sts properties, system property or environment variable is set. by @maciejwalkowiak in #1444

SES

  • Align sending message with multiple MimeMessagePreparators with default implementation in JavaMailSender by @maciejwalkowiak #1503

Parameter Store

  • Custom exceptions are now logged by Spring Cloud AWS instead of Spring Core by @MatejNedic #1309
  • Introduce loading parameters as key value store by @MatejNedic in #1495

CloudWatch

  • Add cost warning and filtering example to CloudWatch documentation by @hong-kyungsik in #1557

Core

Dependency Upgrades

Documentation

Tests

  • fix: Non-determinism in S3PropertySourceTest by @yonghanlin in #1538
  • fix: Fix three nondeterministic tests caused by shard processing and JSON key ordering by @yonghanlin in #1537
  • Fix: Nondeterminism behavior in SqsListenerAnnotationBeanPostProcessorTests by @yonghanlin in #1536

Big thanks to all contributors! 💚

New Contributors

Full Changelog: https://github.com/awspring/spring-cloud-aws/compare/v3.4.2..v4.0.0

Don't miss a new spring-cloud-aws release

NewReleases is sending notifications on new releases.