ridgepole v0.6.0: support AR 4.2.1

プロダクションで使ってみて一応問題なさそうなので、ridgepole v0.6.0をリリースしました。

https://github.com/winebarrel/ridgepole

betaにフィードバックいただいた方々、ありがとうございましたm(_ _)m

大きな変更点としてはRails 4.2に対応しました。 それに付随したりしなかったりで以下のような変更点があります。

  • migration-comments/foreigner/mysql-unsignedのサポートがなくなりました
  • わりと弊社ドメインに特化したいくつかのオプションを削りました
  • PostgreSQLのテストを追加しましました

Rails 4.2対応

  • 外部参照制約が使えるようになりました
  • それに伴い、create_tableの書き方が以下のようになりました。今までの書き方だと適用時に「テーブルオプションが変更されてます」ってアラートが出ると思います(実害は特にないです)
create_table "articles", force: :cascade do |t|
  • timestampなくなりました
    • テーブル定義上のtimestampdatetimeとして認識されます
  • なんとなーくですが、limitを明示するようになった気がします。各型のデフォルトのlimit(stringlimit:255など)は書かなくても適当に補完しますが、一回exportし直すのが無難かも知れないです

PostgreSQLのテスト追加

  • 一応追加したのですが業務ではまだ使ってないので、なにかありましたらフィードバックいただければと m(_ _)m
  • MySQL/PostgreSQLのカラム削除時のインデックス変更の差異については一応吸収しているつもりなのですが、なんかあればお知らせください

その他

  • SQLiteは実装が特殊すぎるので、v0.6.0以降では基本的にサポートしないつもりです
  • 何かありましたらIssueあげていただければ極力対応しますー

どうぞご利用ください