2010-11-29 6 views
2

little gem of mineを維持するためにJewelerを使用しています。バージョン番号を管理するための便利なセットを提供しています(rake version:*)。 Jewelerはバージョン番号をVERSIONというファイルに格納しています.VERSIONはrake gemspecにあります。唯一の問題は、ライブラリの実際のRubyコードでもにバージョンが含まれていることです。ライブラリーによって作成されたHTTPリクエストヘッダで送信:Jewelerのgemバージョンとプログラムのバージョン文字列を同期させる

module MediaWiki 
    class << self 
    def version 
     "0.1.6" 
    end 
    ... 

自動的に同期してこれらの2を維持するための任意のアイデアを?代わりに、MediaWikiライブラリが独自のバージョンを見つけるために変えられた宝石に何らかの方法で問い合わせることができますか?

答えて

4

バージョンメソッドで定数を返さないのはなぜですか?

# lib/media_wiki/version.rb 
module MediaWiki 
    VERSION = "1.0.6" 
end 

# lib/media_wiki.rb (or wherever) 
module MediaWiki 
    class << self 
    def version 
     MediaWiki::VERSION 
    end 
    end 
end 

EDIT(応答でコメントするには):

また、あなたは定数を使用するようにRakefileを更新する必要があります。

# Rakefile 
Jeweler::Tasks.new do |gemspec| 
    ... 
    gemspec.version  = MediaWiki::VERSION 
    ... 
end 

ピア

+0

私ができるが、どのようにその一定のだろうJewelerのバージョンと同期しておく必要がありますか? – jpatokal

+0

投稿を編集して回答しました。 –

+0

Brilliant! (そして一歩一歩はっきりとしています...)私はレーキバージョンを使用することはできません。バンプ:*タスクはもうなくなりましたが、これは2つの悪のうちの小さいものです。 – jpatokal

関連する問題