いけむランド

はてダからやってきました

AppVeyor で cygwin での chkbuild 環境をつくってみた

最近は cygwin 環境で新しい Ruby を動かす遊びをしてるのですが、どうにも CI 環境がないみたいので、AppVeyor につくってみることにしました。

And there is no CI for cygwin. Contribution is welcome.
Bug #15465: Tests failed on i386-cygwin - Ruby trunk - Ruby Issue Tracking System

続きを読む

表参道.rb #43 に行ってみた

omotesandorb.connpass.com

LT 枠が空いていたので飛び込みでやってみました。

スライドは用意してなかったので喋りたいことのベースとなる内容を表示したブラウザタブを何枚か用意して、切り替えながら発表しました。

続きを読む

Rupology というライブラリを書いてみた

Ruby の勉強の一環で簡単なライブラリを書いてみた。

github.com

Repology といういろんなディストリビューションのパッケージのバージョンを比較できるサイトがあって、これが API を提供しているので、それの client を書いてみることにした。

感想を言うと、認証がない & GET しかないので、実装はかなり楽だった。

Ruby で HTTP をしゃべる時は Faraday を使うのが良さそうということで乗っかることにした。

Faraday の使い方は qiita-rb を参考にした。(ちょっと古いみたいだけど。)

github.com

あとは spec をひととおり書いて、rubygems に upload するまでやった。

冬休みになにかしらのアウトプットが出せてよかったです。(小並感)

古い chrome をインストールする

CI で docker イメージをつくらずにスクリプトで常に最新の chrome をダウンロードしてたりすると、version up された時に CI がこけるようになったりするので、できれば version 指定しておきたい。(まあ、docker イメージをつくっておけよという話ではあるが。)

http://dl.google.com/linux/chrome/deb/dists/stable/main/binary-amd64/Packages を見ると、古いバージョンが置かれているかはわかるが、"deb pool main google-chrome-stable" とかでググると、ミラーが微妙に同期されていないせいか、かなり古い chrome も見つかったりするので、そちらからダウンロードしてみると良いかもしれない。

メーリングリストに登録するというハードルの高さ

あまりに GitHub を使った開発に慣れきってしまったため、バグレポートやパッチは「まずメーリングリストに登録して」みたいな文章を見るだけで、一気にハードルが高く感じてしまって、やる気がなくなってしまう。

そういうものに限って、世界的に使われているデファクトスタンダードだったりするため、対応してもらわないと、こちらの手間がものすごくかかったりする。

たまに GitHub への mirror や、repository 自体の公開をしてくれているものはあるけど、pr/issue が禁止されていたりするため、結局ソースコードビューワ的な効果しかない。それでも latest tarball しかリンクしてないものに比べれば、だいぶありがたい。

やっぱり歴史が古いものほど開発プラットフォーム移行の腰が重くなるのはわかるが、現代においては「気持ち的にはクローズドソース」だなあと感じてしまうことがある。