なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2016/01/10)

2016/01/10分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

activerecord/CHANGELOG.md


[ci skip] Clarify some Minitest origins.

railties/lib/rails/test_unit/line_filtering.rbのdocの修正です。

Rails::CompositeFilter#===メソッドRails::CompositeFilter#derive_regexpメソッドそれぞれにdocを追加しています。


Support :if and :unless in has_secure_token

activerecord/lib/active_record/secure_token.rbの修正です。

has_secure_tokenメソッド:if及び:unlessオプションを指定出来るよう対応しています。

docより。

# Schema: User(token:string, invited:boolean)
class User < ActiveRecord::Base
  has_secure_token if: :invited?
end

user = User.new(invited: true)
user.save
user.token # => "pX27zsMN2ViQKta1bGfLmVJE"

user = User.new(invited: false)
user.save
user.token # => nil

なるほど、出来たら出来たで便利そう。


[ci skip] fix typo

activerecord/lib/active_record/internal_metadata.rbのdocの修正です。

a internal -> an internalにグラマーの修正を行っています。


Add conditional_token to users.

activerecord/test/schema/schema.rbの修正です。

Support :if and :unless in has_secure_tokenのテストで使用しているカラムが、schemaに追加されていなかったのを対応しています。


Switch has_secure_token to before_save.

activerecord/lib/active_record/secure_token.rbの修正です。

#has_secure_tokenでtokenを生成するタイミングをbefore_createからbefore_saveに修正しています。

が、Support :if and :unless in has_secure_tokenで対応したかったユースケースbefore_saveで対応出来ないらしく、後ほどrevertされています。


Revert "Switch has_secure_token to before_save."

直前のコミットをrevertしています。


Split out token if tests to trigger before_create.

activerecord/test/cases/secure_token_test.rbの修正です。

#has_secure_tokenメソッドifオプションにtrue / falseをそれぞれ設定した場合のテストが一つのテスト内で行われていたのを、それぞれ別のテストに分けています。


Update postgresql version to 9.4 for travis.

.travis.ymlの修正です。

travis ciで使用するPostgreSQLのバージョンを9.3から9.4に変更しています。