Aws-sdk-ruby: Latest version of service clients depends on latest version of core

Created on 6 Sep 2018  路  16Comments  路  Source: aws/aws-sdk-ruby

Since todays release we started getting errors in our builds..

"error 06-Sep-2018 02:01:40 LoadError: cannot load such file -- aws-sdk-core/plugins/client_metrics_plugin.rb"

I'm not entirely sure why our Gemfile.lock was not being respected by bundle install but it was upgrading some of the clients, but not core.

build   06-Sep-2018 02:01:39    Using rake 12.3.1
build   06-Sep-2018 02:01:39    Using aws-sdk-core 3.19.0
build   06-Sep-2018 02:01:39    Using aws-sdk-autoscaling 1.5.0
build   06-Sep-2018 02:01:39    Using aws-sdk-cloudformation 1.4.0
build   06-Sep-2018 02:01:39    Using aws-sdk-cloudwatchlogs 1.6.0 (was 1.3.0)
build   06-Sep-2018 02:01:39    Using aws-sdk-dynamodb 1.12.0 (was 1.5.0)

Clearly dynamodb.1.12.0 depends now on core 3.26.0 so that it can require the above file.
However, the gemspec for dynamodb says - spec.add_dependency('aws-sdk-core', '~> 3')

Should it be more specific?

Most helpful comment

Thanks, I was able to update my bundle. I had to upgrade my s3 which updated my core .... bundle update aws-sdk-s3 We had another dependency that was locked to an earlier version. The error is now gone. Much happier

All 16 comments

I am having the same issue, I had to roll back to an older version of the gem 馃槥

Yeah having the same issue as well. Can't upgrade to latest versions because of this.

@lwoggardner

Thanks for reporting this issue. We're looking at getting this resolved.

I deeply apologize for the mistake here, I'm going to fix this first thing today. A workaround is to hard upgrade aws-sdk-core but yes, NEEDING to do that isn't correct. I clearly made a mistake when updating the gemspec generation code.

I believe #1871 fixes this as planned, I need to look at the extent of this. Is dynamodb the only affected gem?

Okay, this was an oversight on my part. Here are the affected gems:

  • aws-sdk-appstream
  • aws-sdk-dynamodb
  • aws-sdk-elasticloadbalancing
  • aws-sdk-rds
  • aws-sdk-s3

We'll have new versions of all service gems out today, but I had added plugins to core, yet my update to the gemspec generation logic was put into a separate commit. That was a mistake on my part.

Here's a summary:

  • I'll post an update here when we push our next release, these gems will be usable with the latest updates after we get that out.
  • In the meantime, you can use the latest versions of the current gems by also upgrading aws-sdk-core to the latest version. That is essentially what this pull request will do.

Update: The release for this is going through our release process now. Expect to be able to update in about 30 minutes from this post.

This is fixed in the latest versions of each gem. Sorry about the churn here.

This, or something similar, also seems to be effecting aws-sdk-ssm

What version of aws-sdk-ssm are you using? Are you seeing the same client error?

1.24.0, yes, same client error. Rolling back to aws-sdk-ssm 1.22.0 fixed the problem

What happens if you upgrade to 1.25.0? It does look like 1.24.0 may have been impacted by this issue.

I had to update a bunch of other aws gems to use 1.25, but it also does work

Try a later version of sns

Thanks, I was able to update my bundle. I had to upgrade my s3 which updated my core .... bundle update aws-sdk-s3 We had another dependency that was locked to an earlier version. The error is now gone. Much happier

Was this page helpful?
0 / 5 - 0 ratings