AWS Developer Tools Blog
AWS SDK Core v2.0.0.rc12 Updates
We recently published v2.0.0.rc12 of the aws-sdk-core
gem (https://github.com/aws/aws-sdk-core-ruby). This release merges the long-running normalized branch onto master.
Upgrading Notes
Please note, when updating to rc12, you may need to make some minor code changes. These are summarized below:
-
Service modules now have a Client class, these should be used to construct API clients:
# deprecated, will be removed for 2.0.0 final s3 = Aws::S3.new # preferred s3 = Aws::S3::Client.new
Looking forward to the resources update, this will ensure we have a suitable namespace for the new resource classes. Look for more information in a follow up blog post.
-
The Amazon SimpleDB client class has been renamed from
Aws::SDB
toAws::SimpleDB
. This also affects the short name used in configuration:# old configuration key Aws.config[:sdb] = { ... } # new key Aws.config[:simpledb] = { ... }
-
The
:raw_json
configuration option has been renamed to :simple_json. This is used for services that use the JSON protocol.
Less Visible Changes
If you have written plugins for the aws-sdk-core
gem, there are a few other changes to the internals you need to be aware of.
-
Seahorse::Model
has received significant updates, especially the API model format. This new format is much more flexible than the denormalized format used previously. Additionally, the AWS API models are now consumed as-is without translation. See the API reference for more information. -
Seahorse::Client::Http::Request#endpoint
is nowURI::HTTPS
orURI::HTTP
object. The custom Endpoint class has been removed in favor of these objects provided by the Ruby standard library. -
Seahorse::Client::HandlerList#add
no longer accepts instance objects and requires a handler class that can be constructed.