Version restriction of AWS SDK to migrate to Encryption V2 client

When I was reading the changelog of v3.3.0, I noticed that AWS’s official document on the migration plan from Encryption V1 to V2 suggested to upgrade AWS SDK V3 before the migration.

According to the document, the version of aws-sdk-s3 seems to be required higher than 1.76.0 to make V1 client compatible with V2 format for reading. But in current Shrine’s gemspec, the version for aws-sdk-s3 is “~> 1.69”, which uses AWS SDK V2 and is lower than required version specified in the document.

I am wondering if the difference of the versions affects the behavior of v3.3.0 when developers use AWS SDK V2 based gems.

Note that a development dependency specified in the gemspec doesn’t affect application code. So, the version specifier used here for aws-sdk-s3 doesn’t affect which versions of aws-sdk-s3 a Shrine user can use.

Also, the aws-sdk-s3 gem is part of AWS SDK V3, in AWS SDK V2 everything was in the aws-sdk gem. Shrine requires aws-sdk-s3 (and thus AWS SDK V3) since version 3.0.

1 Like