AWS SDK for Ruby V2 Enters Maintenance Mode and Support Timeline Announced

AWS SDK for Ruby V2 Enters Maintenance Mode and Support Timeline AnnouncedMore Info

We are announcing that version 2 of the AWS SDK for Ruby will transition to maintenance mode starting on November 20, 2020. Support for this version will officially conclude on November 21, 2021. Throughout the maintenance phase, we will continue to address bugs and security vulnerabilities until support ends, after which no further updates for version 2 will be issued. We strongly encourage users to upgrade to version 3 to ensure they receive ongoing updates.

Version 3 of the AWS SDK for Ruby was launched in August 2017 and maintains compatibility with version 2, making the upgrade process seamless.

Advantages of Upgrading to V3

Version 3 introduces numerous enhancements over version 2, particularly in terms of modularization. Key benefits of this modular approach include:

  • Per-service semantic versioning and change logs. Unlike version 2, where updates weren’t clearly communicated, version 3 provides clear visibility into which services have been modified.
  • Statically typed and generated code enhances performance, improves load times, facilitates better stack traces, and results in more readable source code. Conversely, version 2 generated clients and types dynamically at runtime.
  • Users can focus on individual services, leading to smaller package sizes upon deployment.

For a more comprehensive look at the benefits, please refer to this initial V3 Modularization blog post.

Migrating from V2 to V3

The easiest way to upgrade is to transition from version 2 to version 3 of the aws-sdk gem.

# Gemfile
gem 'aws-sdk', '~> 3'

The V3 aws-sdk gem serves as an umbrella package for over 220 service gems. To minimize the number of gems your application downloads, we recommend switching your dependencies to the specific service gems. This change will decrease installation and update times, as well as reduce disk space usage. For instance, if your application uses Amazon S3 and Amazon DynamoDB, you might configure your Gemfile like this:

# Gemfile
# Replace the aws-sdk umbrella gem with service gems
gem 'aws-sdk-s3', '~> 1'
gem 'aws-sdk-dynamodb', '~> 1'
# replace require 'aws-sdk' with service specific gems
require 'aws-sdk-s3'
require 'aws-sdk-dynamodb'

s3 = Aws::S3::Client.new
ddb = Aws::DynamoDB::Client.new 

For more detailed guidance on upgrading, check out our V3 upgrading guide on GitHub or this blog post from experts in the field. The client APIs for V3 are designed to be backwards compatible with V2, making the transition smooth. Should you encounter any issues during the upgrade, please feel free to open an issue on GitHub!

Questions?

We welcome your questions, comments, and feedback on Gitter and GitHub. Also, for additional insights on onboarding new hires during challenging times, visit this excellent resource.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *