たごもりすメモ

コードとかその他の話とか。

#shibuyarb にいってきた

なんとなくこれまで参加したことのないあたりに遊びに行きたい気分だったので、Ruby関連のコミュニティにぜんぜん参加してないし行ってきたいなー、ということでふらふら参加してきた。

渋谷.rb[:20120620] on Zusaar

いやじつは(も何もZusaarを見れば明らかだが)補欠のままだったんだけど、gemの作り方についてなんか話すので入れてください、ということで半ば無理矢理参加してきました。入れてくださってありがとうございました。
で、話の内容のgemの作り方はこちら。

たいへんかんたんですね!
まあ実際には関連するプロダクトとモジュールの名前空間をどう合わせるかとかドキュメントをどう書くかとかテストをどのように含めるべきかみたいな話はあるんだけど、「gemを作る」というところだけに絞るならこの程度かな、と思いました。当日その場でとりあえず作ってみた人もいたみたいなんで、期待された内容にはなってたのかなーと思います。よかったよかった。

rubygemsとテストの話

最近困っているのは、他のgemの一部の機能だけを改変/オーバーライド/模倣して動くようなライブラリを作ったとき、元のgemのテストをどのように参照すべきか、みたいな話。そういうのについて後半に @KitaitiMakoto さんと話してた。コピペは楽だけど追従がきついし、git submodule でテストディレクトリだけ引っ張ってこられないかな、無理か、深いところにあるテストディレクトリに symlink は? うーん微妙、あとgem自体にテストファイル実体が含まれなくて悲しい、hardlinkはたぶんgit自体にコピーとして見られちゃうから追従性ないよ、みたいな。
どなたかいい方法知りませんかね。

あとは rubygems-test というのがある(このあたりの話かな)んだけどいまいち根付かない、CPANモジュールはインストール時にテストが走るのがいいですよねえ、という話を聞いて、いやまあアレも個人的には微妙な気がするっつーか、cpanm -n オプション大活躍しててすいませんみたいな話がたぶんいろんなところにあって、うーんうーん、みたいな。

まとめ

たいへんたのしかったのでまた行きたい。今のところ自宅も職場も渋谷に近くありませんが、あとすこしで職場が渋谷に引っ越す予定なのでゆるしてください。