博多電光

技術ブログ

2016年1月のコミットまとめ

https://github.com/hakatashi?tab=contributions&from=2016-01-01&to=2016-01-31

f:id:hakatashi:20160203231502p:plain

主な成果

npmモジュール“chars”の2.0.0をリリース

JavaScriptの文字列を““““正しく””””文字に分割するnpmモジュール、charsの2.0.0をリリースした。

詳しくはまた別エントリで。

npmモジュール“general-category”の1.0.0をリリース

与えられた文字からUnicodeのGeneral_Categoryプロパティを判別する簡単なnpmモジュール、general-categoryの1.0.0をリリースした。

こういうしょうもないモジュールを小出しにしていきたい。

greenkeeperを導入し、各種JavaScriptライブラリの依存関係を最新に更新

上のリンクを詳しく精査してもらうとわかるが、実は1月のコミットのうちほとんどがマージコミットである。これはgreenkeeperというサービスを導入してみたことによるもので、依存しているnpmモジュールのバージョンを常に最新に保ってくれるというユニークなサービスである。

下のQiitaの記事で知った。説明もここに解りやすく書いてある。

qiita.com

一ヶ月近く使ってみての感想だが、なかなか良い。依存ライブラリのアップデートがあるたびにPRを送ってくれるので通知で気付けるし、CIと連携してpatchバージョンのアップデートでも試しにコミットしてビルドを実行してくれるので、依存ライブラリのアップデートがビルドを壊したことにも気付けるようになっている。これでよりカジュアルにdependencyを追加してatomicityの高いモジュールを作りやすくなると思われる。

難点が一つ。このgreenkeeperのbotはnpmのサーバーと密につながっていて、アップデートがあれば即座にプルリクを送ってくれるのだが、どうもnpmのサーバーとの間にラグがあるらしく、CI側でライブラリのアップデートに失敗して「ビルドを壊した」と誤判定されることが多々ある。Travis-CIであればビルドを再実行すればよいのだが、この部分の精度はもう少し上がってほしい。