aws と aws-sdk の conflict 問題
SimpleDB を ActiveRecord の model で簡単に扱うことを検討するために、以下の simple_record を試そうとしたのですが
https://github.com/appoxy/simple_record
establish_connection でいきなり以下のような NameError が出て「なんじゃこりゃ」状態。
NameError: uninitialized constant SimpleRecord::ActiveSdb::ActiveSdbConnect::Aws from /Users/k-sera/test/gems/simple_record-2.2.0/lib/simple_record/active_sdb.rb:121:in `establish_connection' from /Users/k-sera/test/gems/simple_record-2.2.0/lib/simple_record.rb:132:in `establish_connection'
原因はこの gem の開発元 AppProxy が自分たちで AWS をラップしている「aws」という gem と AWS 公式の「aws-sdk」が conflict するから、ということみたい。
aws-sdk を外したところ、ちゃんと動作しました。厳しいですね。
ということで aws & simple_record は避けようと思っているところなのですが、aws と aws-sdk の問題って Ruby で AWS を触ってる人の中では割とよく知られた暗黙知なんでしょうか。