2011年02月22日(Tue) 久々山頂 [長年日記]
● [Ruby] Momonga 7でgemsを作る
@jugyoさんがRuby-ANSI.SYSを 1.9で動くようにしてださった のだけれど、今までリリースできずにいた。 問題は手元の環境(Momonga 7)でgems関係のプログラムがうまく動かなかったことで、 やっと解決できた。ポイントは、
で、newgemには新しすぎるMomonga 7のactivesupportの代わりに古い activesupportを野良インストールしたことでした。 下記の記事では、32ビット環境からのログと64ビット環境からのログとが混ざってます。 部分的に矛盾してます。すみません。
まず、Ruby 1.8でもRuby 1.9でも基本的な動作を確かめようと、 簡単なテストユニットを作りました。しかしRuby 1.9ではsetup.rbから起動できない。 Ruby1.8でも1.9でも動くTest::Unit用テストランナーを作る (ser1zw::diary) を参考にさせていただきました。
Test::Unitのテストランナーは
- Ruby1.8 … Test::Unit::AutoRunner.run
- Ruby1.9 … Test::Unit.setup_argv
を使用するようになっています。
なるほど。setup.rbを下記のように書き換えました。
さて、リリース。どうするんだっけ…? 前の日誌に何か書いてある。
してから~/.rubyforge/user-config.ymlを編集した。
パスワード書いてあるし chmod og-r ~/.rubyforge/user-config.ymlもしておいた。 ~/.rubyforgeもog -rになっているようだが。
次にプロジェクトの情報を得る。
何ができるんだっけ?
Ruby 1.9.2からはロードパスにカレントディレクトリを含まなくなったんだね。
進んだ。てかnewgem入ってるよー。
そか。
これが新しすぎるということなのだろう。野良で入れちまおう。
/usr/lib64/ruby/gems/1.9.1/gems/activesupport-2.3.11/ に入ったようだ。 このあたりにはRPMの管理しているパスもありそう。おもしろいな。
他に、Rakefile、spec/ansi-sys_spec.rb、spec/ansi-sys_spec.rbの、 requireの引数を、
から
に変更しました。
rake動くかな。
ちゃんと走った!
website/index.htmlはできた。website/rdocはどうやって作ったんだっけ?
だいぶ落ちてる…。
最小限のテストも通る。
いろいろガタガタしているが、とりあえずリリースしよう。
というわけでとりあえずリリースはできるようになりましたとさ。
最近のツッコまれどころ