2017年に作ったGem

1月

gtm_rails という Gem を作った。

https://github.com/koic/gtm_rails

もともと google-tag-manager-rails という Gem を使っていたが、Google Tag Manager のドキュメントと異なる JavaScript の埋め込み方をしたり、画面の役割に応じて container ID を設定できなかったりと不便な点が出たので作った。

4月

Vanish という Gem を作った。

https://github.com/koic/vanish

新卒が仮配属されるシーズンで、例年のように POSIX におけるテキストファイルの定義に合わせてファイルの最後に改行を入れるようにする点を話したり修正を伝えたりした際に一括で変更できるようなものとして切り出したもの。

Ruby に限って言えば RuboCop の Layout/TrailingBlankLines cop で対応できるけれど、もう少し汎用性を持たせた作りにしているのが相違点。

5月

これは作ったというよりは、Oracle enhanced adapter で本来 Rails 5 向けにスキーマ変更が必要なところ Rails 4.2 の日時型のスキーマのまま Rails 5 で扱える対象に Rails 5.1 を加えた。Rails 5.2 にはおそらく対応しないと思うので例えば後述の Screamers などを検討されたしという気持ち。

https://github.com/koic/oracle-enhanced-monky_patch_755

6月

この月は2つ作っていた。ひとつは Screamers という Gem を作った。

https://github.com/koic/screamers

データベースのメタ情報を元にスキーマの型を一括変換するマイグレーションファイルを生成するタスクを追加する Gem となる。

もうひとつは Everlasting という Gem を作った。

https://github.com/koic/everlasting

こちらは Rails 4.2 から Rails 5.0 への変更で、AC::ParametersHash を継承しなくなったのにも関わらず、アップグレード後にテストケースをすり抜けて Hash としてのメソッドを呼び出してエラーという問題を回避するワークアラウンド Gem となる。


GitHub 調べによる Gem 開発の記録はここで途切れていて、2017年後半は新たな Gem を作ってはいなかったらしい。