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::SDBtoAws::SimpleDB. This also affects the short name used in configuration:# old configuration key Aws.config[:sdb] = { ... } # new key Aws.config[:simpledb] = { ... } -
The
:raw_jsonconfiguration 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::Modelhas 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#endpointis nowURI::HTTPSorURI::HTTPobject. The custom Endpoint class has been removed in favor of these objects provided by the Ruby standard library. -
Seahorse::Client::HandlerList#addno longer accepts instance objects and requires a handler class that can be constructed.