2016-09-30 5 views
0

私は現在google-api-client v 0.8xに依存している私が使用している宝石を持っています、私はgoogle-api-client v 0.9xをサポートするようにgemを更新したいと思います。依存関係の2つの互換性のない宝石のバージョンをサポートします

これらの2つの間の認証は完全に異なり、互換性がありません。

宝石依存のどのバージョンがインストールされているかを知り、それに従って動作する方法はありますか? これは、APIクライアントをアップグレードした理由が何であれ、古いバージョンのユーザーに引き続きAPIクライアントを使用できるようにするためのサポートを追加することができます。

答えて

1

Google::Apis::VERSIONからバージョンを取得できます。 "gemモジュール"(ネストされた残りのgemモジュール)の定数としてバージョンを宣言することは、宝石の中ではかなり標準的です。

rubygemsを使って、インストールされている宝石のgemspecからバージョンを抽出することができます。 VERSIONがどのようにネストされているか、gemがgemspecでバージョンを指定している場合でも、これは便利です。

require "rubygems" 

spec = Gem::Specification::load("google-api-client.gemspec") 
puts spec.version