Padrino 0.9.15 と ActiveRecord 3.0.0 の組み合わせで、migration の add_index でエラーが発生しました。
% padrino rake ar:migrate:reset ...(略) undefined method `key?' for nil:NilClass /usr/local/lib/ruby/gems/1.8/gems/padrino-core-0.9.15/lib/padrino-core/cli/rake.rb:9:in `init' (See full trace by running task with --trace)
調べてみると、add_index の第3引数を書かないと padrino は options に nil を渡すのですが、ActiveRecord 側で nil を渡されると動かないようになっていました。 ひとまず、以下のコードを lib/ar_add_index_fix.rb に置いて対処しました。
module ActiveRecord::ConnectionAdapters::SchemaStatements alias orig_add_index add_index def add_index(table_name, column_name, options = {}) orig_add_index(table_name, column_name, options || {}) end end