昨日Findyさんに寄稿した記事が公開されました。もしまだ読んでない方いたら読んで記事下部にある「応援」ボタンをポチッと押してください。Ruby Associationへ応援の数 * 100円寄付されます。
メンテされないgemとどう向き合うか。“普通のOSS開発者” willnetさんの取り組み
この記事内でseed-fuをforkしてseed-doを作ったぞ、という話をしていますが、OSS開発という話の流れの一部で書いているのでスルーしてしまう人もいるかなと思いこのブログ中でも書いておきます。
seed-fuってなに
seed-fuはRailsのシードデータ(本番、開発環境に関わらず)を作るためのgemです。Rails公式としてはdb/seeds.rb
がシードデータ用のファイルとして用意されていますが、db/seeds.rb
は空のファイルであり、具体的にどうやってデータを用意したら良いのかわかりづらいです。seed-fuを利用するとdb/fixtures/development/*.rb
に開発環境でだけ使うデータを用意する、のように一定のレールが敷かれています。このわかりやすさが良かったのか10年くらい前は使っている人が多かったように思います。
が、上記記事中にもあるようにメンテナンスが滞り、いまは作者にも連絡が取れないという状況なのでforkして、既知の不具合を修正したものをseed-doとしてリリースしています。
seed-doが解決した不具合
主な不具合は次の2つです。
後者はなにが不具合なのかよくわからん、という人もいるんじゃないかと思いますが、わざわざforkまでしたのはこれを直したかったからです。ながらRuby会議01でこの問題に関するプロポーザルを出したので通ればそこで詳細発表できるかと思います(プロポーザル通るといいな)。
僕はseed-doを直接は使ってない*1ので新規の機能開発に意欲はない*2のですが、今後も新しいRubyやRailsでちゃんと動くようにするモチベはあるのでもしseed-fuを使っている人がいたら乗り換えをオススメします。