Releases: awspring/spring-cloud-aws
3.3.0 M1
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.3.0-M1/reference/html/index.html
What's Changed
Spring Cloud AWS 3.3.0 brings compatibility with Spring Boot 3.4 and Spring Cloud 2024.0. Highlights of the M1 release:
- auto-configuration of amazon-s3-encryption-client-java for effortless encryption objects on the client side before they get sent to S3 by @MatejNedic (docs)
- auto-configuration of aws-s3-accessgrants-plugin-java-v2 by @MatejNedic (docs)
- populating Spring property source from EC2 instance metadata by @kennyk65 (docs)
- reworked and simplified customizing AWS client beans by @maciejwalkowiak (docs)
Full list of changes:
Core
- Automatically populate
PropertySource
with instance metadata when running within an EC2-based environment by @kennyk65 in #962 - Add client customizer interface for each supported integration by @maciejwalkowiak in #1229
S3
- Fine grained access control of S3 files via S3 Access Grant is now supported out of the box via S3AccessPlugin by @MatejNedic in #1247
- Add KMS, RSA or AES ClientSide file encryption support through
S3EncrpytionClient
by @MatejNedic in #1033 S3OutputStream
can now be canceled at any time during upload by @zhemaituk in #1221- Remove throws IOException that is never thrown in S3Resource methods by @alexisgra in #1222
- Add
S3Operations#createResource
. by @maciejwalkowiak in #1223 - Fix: Do not apply ObjectMetadata#contentLength for UploadPartRequest by @Mobe91 in #1249
SNS
SnsTemplate
provides functionality to validate topic existence (#1137) by @hardikSinghBehl in #1142
SecretsManager
- Fix
AutoConfigureAfter
forSecretsManagerAutoConfiguration
by @marcindabrowski in #1235
Parameter Store
Dependencies
- Upgrade Spring Cloud to 4.2.0 M2 by @MatejNedic in #1267
- Upgrade Spring Cloud Dependencies to 4.1.3 and Spring Modulith to 1.2.3 by @maciejwalkowiak in #1215
- Upgrade AWS SDKv2 to 2.29.6 by @MatejNedic in #1266
- Manage Testcontainers version through Spring Boot dependency management by @maciejwalkowiak in #1218
- Upgrade LocalStack to 3.8.1 by @maciejwalkowiak in #1217
Github pipeline
- Update labeler action to v5 by @marcindabrowski in #1236
- Update checkout action to v4 by @marcindabrowski in #1237
- Update cache action to v4 by @marcindabrowski in #1238
- Add "type: maintenance" label for GitHub files by @marcindabrowski in #1240
- Update setup-java action to v4 by @marcindabrowski in #1241
- Update github-script action to v7 by @marcindabrowski in #1242
- Enable Dependabot for GitHub Actions by @marcindabrowski in #1243
New Contributors
- @hardikSinghBehl made their first contribution in #1142
- @kennyk65 made their first contribution in #962
- @zhemaituk made their first contribution in #1221
- @Forfend made their first contribution in #1233
- @marcindabrowski made their first contribution in #1236
- @Mobe91 made their first contribution in #1249
Full Changelog: v3.2.0...v3.3.0-M1
3.2.1
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.2.1/reference/html/index.html
What's Changed
- Fix for
InMemoryBufferingS3OutputStream
wrongly appliescontentLength
toUploadPartRequest
causing timeout by @Mobe91 in #1249 - Update Spring Modulith by @maciejwalkowiak in #1260
Full Changelog: v3.2.0...v3.2.1
3.0.5
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.0.5/reference/html/index.html
What's Changed
S3
- Make
getUrl
return location of bucket if object is empty ornull
by @MatejNedic in #1226
3.2.0
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.2.0/reference/html/index.html
What's Changed
Spring Cloud AWS 3.2.0 brings compatibility with Spring Boot 3.3.x and contains all changes introduced in version 3.2.0-M1.
Highlights
Simplified integration testing with LocalStack through new modules:
spring-cloud-aws-testcontainers
- adds support for@ServiceConnection
&LocalStackContainer
spring-cloud-aws-docker-compose
- support for LocalStack via Docker Compose integration by @dominik-kovacs in #1123
Integration with Spring Modulith:
- SQS and SNS integration for Spring Modulith's Externalized Events has been migrated to Spring Cloud AWS by @maciejwalkowiak in #1068
SQS
SqsMessageListenerContainer
fails fast if queue names are not all FIFO or Standard by @internetstaff in #1001- Add default behaviour for queue not found strategy by @tomazfernandes in #1190
- Batch now supports
@SnsNotification
payload by @tomazfernandes in #1191 - Enable receiving messages from different message groups in the same batch for FIFO queues by @tomazfernandes in #1192
- Add
BatchVisibility
listener method parameter by @tomazfernandes in #1193 - Auto-configure default
MessageConverter
by @tomazfernandes in #1194 - Enable
SqsMessagingMessageConverter
to handle JSON Strings with JSON Mime Type by @tomazfernandes in #1195
DynamoDb
- Delete operation now returns entity which was deleted @MatejNedic in #1185
S3
- Make
getUrl
return location of bucket if object is empty ornull
by @MatejNedic in #1158
SES
- Fix: when sending emails field 'to' is not taking into consideration when sending CC and BCC types @buckett in #1174
Docker Compose
- Add LocalStack docker compose support by @dominik-kovacs in #1123
Dependencies
- Upgrade AWS SDK to 2.25.70 by @maciejwalkowiak in #1207
New Contributors
- @elkkhan made their first contribution in #1128
- @lawseff made their first contribution in #1139
- @internetstaff made their first contribution in #1001
- @manakbisht made their first contribution in #1151
- @buckett made their first contribution in #1174
- @dominik-kovacs made their first contribution in #1123
Full Changelog: v3.2.0-M1...v3.2.0
3.2.0 M1
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.2.0-M1/reference/html/index.html
What's Changed
Testcontainers
Added a module spring-cloud-aws-testcontainers
that simplifies testing Spring Cloud AWS against LocalStack:
- Add
@ServiceConnection
support. by @maciejwalkowiak in #1075 - Add
LocalstackAwsClientFactory
to simplify creating AWS clients pointing to LocalStack by @maciejwalkowiak in #1106
Spring Modulith
SQS and SNS integration for Spring Modulith's Externalized Events has been migrated to Spring Cloud AWS:
- Add Spring Modulith integration with SQS and SNS by @maciejwalkowiak in #1068
SQS
- Document behavior change when sending / receiving List of messages. by @alexisgra in #1101
- Polished Javadocs examples in
SqsMessageListenerContainer
andSqsMessageListenerContainerFactory
by @sefabal in #1102
S3
- Remove Cross Region S3 client. by @maciejwalkowiak in #1103
Core
- Add
@NestedConfigurationProperty
to display profile name and path when configuring application properties by @kcsurapaneni in #1109 - Upgrade AWS SDK to 2.25.21 by @edelauna in #1115
Secrets Manager
- Auto-configure
SecretsManagerClient
even if config import is not used. by @maciejwalkowiak in #1114
SNS
New Contributors
- @sefabal made their first contribution in #1102
- @kcsurapaneni made their first contribution in #1109
- @edelauna made their first contribution in #1115
- @sondemar made their first contribution in #1105
Full Changelog: v3.1.1...v3.2.0-M1
3.1.1
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.1.1/reference/html/index.html
What's Changed
SQS
- Fix:
QueueAttributesResolver
throws when creating Fifo queue (#995) by @tomazfernandes in #1002 - Fix: Permits are not released when Conversion Error happens. by @tomazfernandes in #1090
- Fix: Acknowledgement Graceful Shutdown. @tomazfernandes in #1082
- Fix: Add Missing Synchronization in Ack Buffer Access by @tomazfernandes in #1038
- Fix: time unit in log message for slow acknowledgements by @PatrickGotthard in #1030
- Deserialize SNS messages posted to SQS queue with
@SnsNotificationMessage
by @msosa in #898 - Simplify not adding type header when sending a message with
SqsTemplate
. (#659) by @levys17 in #1066 - Add support for Spring Retry
BackOffPolicy
when SQS Polling thread throws an exception. by @tomazfernandes in #1008 - Document default value for Acknowledgement Shutdown Timeout and Listener Shutdown Timeout by @mt-ocado in #1034
- Document changes in sending & receiving list of messages between 2.x and 3.x (#1101) by @alexisgra
- Fixed legacy Javadoc examples in
SqsMessageListenerContainer
andSqsMessageListenerContainerFactory
(#1102) by @sefabal
Simple Email Service`
- Add
configurationSetName
configuration property by @thomas-burko in #1007 - Add
fromArn
configuration property @thomas-burko in #1026
Parameter Store and Secrets Manager
- Secrets Manager integration can be disabled by setting
enable
field to false. by @maciejwalkowiak in #1009 - Parameter Store integration can be disabled by setting
enable
field to false. @MatejNedic in #1039 - Update documentation on reload feature in Parameter Store and Secrets Manager by @maciejwalkowiak in #1088
- Added trailing slash to parameter store examples by @thelateperseus in #1086
- Parameter Store 2.x.x -> to 3.x.x migration documentation @rratliff in #1032
DynamoDb
- DynamoDb integration now supports global suffix automatically assigned to table names via global property. @vldr-ivakhnenko in #1081
Core
AnonymousCredentialsProvider
is used now with by default when STS integration is enabled @MatejNedic in #1089- Fixed property name
StsProperties#asyncCredentialsUpdate
by @MatejNedic in #1011
Dependency Upgrades
- Upgrade AWS SDK to 2.21.46 by @maciejwalkowiak in #1085
New Contributors
- @thomas-burko made their first contribution in #1007
- @PatrickGotthard made their first contribution in #1030
- @rratliff made their first contribution in #1032
- @thelateperseus made their first contribution in #1086
- @vldr-ivakhnenko made their first contribution in #1081
- @msosa made their first contribution in #898
- @levys17 made their first contribution in #1066
Big thanks to all contributors! 🙂
Full Changelog: v3.1.0...v3.1.1
3.1.0
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.1.0/reference/html/index.html
What's Changed
Spring Cloud AWS 3.1.0 brings compatibility with Spring Boot 3.2.x and contains all changes introduced in version 3.0.4.
Secrets Manager
Dependencies
- Upgrade to Spring Cloud 4.1.0 by @maciejwalkowiak in #981
New Contributors
3.0.4
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.0.4/reference/html/index.html
What's Changed
DynamoDB
- Configure DynamoDb TableSchema as a bean by @maciejwalkowiak in #957
S3
- fix: correct conditional for S3CrtAsyncClientAutoConfiguration by @iuliiasobolevska in #970
- Add support for SDK's cross-region S3 client. by @maciejwalkowiak in #960
- Fix S3Template.createSignedPutURL not applying given ObjectMetadata by @LucasJC in #974
- Add S3Client objectExists support in S3Template by @Ziemowit in #978
- apply path-style-access-enabled config to CRT client by @chrisrhut in #872
Core
- Fix startup when only base starter is included in classpath. by @maciejwalkowiak in #955
SQS
- Add ContentBasedDeduplication option when sending SQS messages (#938) by @tomazfernandes in #987
Maintenance
New Contributors
- @iuliiasobolevska made their first contribution in #970
- @LucasJC made their first contribution in #974
- @Ziemowit made their first contribution in #978
- @chrisrhut made their first contribution in #872
Big thanks to all contributors! 🙂
Full Changelog: v3.0.3...v3.0.4
3.0.3
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.0.3/reference/html/index.html
What's Changed
SQS
- Add manual container instantiation sample by @mcruzdev in #788
- Add Validator setter in
EndpointRegistrar
by @maksym-telepchuk-ocado in #893 - Enhance
SqsAutoConfiguration
to use an availableObjectMapper
by @postalservice14 in #906 - Add acknowledgement mode on
@SqsListener
annotation by @jvcalassio in #870
S3
- Fix S3 file listing if the prefix resolves to slash by @klopfdreh in #912
- Add a method to check if bucket exists in
S3Template
by @straurob in #915 - Fix
S3Presigner
region resolution by @anappi-vc in #937
Parameter Store
- Adds array properties support to Parameter Store by @deki in #894
- Add option to set property prefix on Parameter Store property sources by @beccagaspard in #927
Secrets Manager
- Log reason why retrieving secrets failed. by @maciejwalkowiak in #928
SNS
- Set more detailed data type on
timestamp
attribute in SNS message. by @maciejwalkowiak in #932
Core
- Fixed
AwsClientCustomizer
to handleasyncHttpClientBuilder
properly by @mokamoto12 in #875
Documentation
- Update docs and labels to use correct casing for LocalStack by @tinyg210 in #895
- Fix link to index page from appendix. by @maciejwalkowiak in #930
Dependency Updates
- Upgrade Spring Cloud Commons to 4.0.4 by @straurob in #916
- Upgrade AWS SDK v2 to 2.21.12
- Upgrade Amazon DAX Client to 2.0.4
- Upgrade AWS CRT to 0.28.3
New Contributors
- @maksym-telepchuk-ocado made their first contribution in #893
- @postalservice14 made their first contribution in #906
- @tinyg210 made their first contribution in #895
- @straurob made their first contribution in #916
- @deki made their first contribution in #894
- @anappi-vc made their first contribution in #937
- @beccagaspard made their first contribution in #927
- @jvcalassio made their first contribution in #870
Full Changelog: v3.0.2...v3.0.3
3.0.2
Reference documentation
📗 https://docs.awspring.io/spring-cloud-aws/docs/3.0.2/reference/html/index.html
What's Changed
SQS
- Fix
corePoolSize
so that maximum number of messages (maxConcurrentMessages
* number of queues) are processed simultaneously. by @mokamoto12 in #833 - Add support for autoStartup by @marcinmilewski93 in #827
- Ability to set SmartLifecycle.phase to SqsMessageListenerContainer/DefaultListenerContainerRegistry by @estigma88 in #821
- Fix the position of log parameters by @tw-kang-namas in #853
S3
- Add S3Client listObjects support in S3Template by @alexisgra in #831
New Contributors
- @mokamoto12 made their first contribution in #833
- @marcinmilewski93 made their first contribution in #827
- @estigma88 made their first contribution in #821
- @tw-kang-namas made their first contribution in #853
- @alexisgra made their first contribution in #831
Full Changelog: v3.0.1...v3.0.2