2018/03/29分のコミットです。
CHANGELOGへの追加はありませんでした。
Merge pull request #30956 from CJStadler/with-lock-changed-deprecation
activerecord/lib/active_record/locking/pessimistic.rb
の修正です。
Locking::Pessimistic#lock!
メソッドでattributesが変更されかのチェックに5.1時点でdeprecateになっていたchanged?
メソッドを使っていたのを、has_changes_to_save?
メソッドを使用するよう修正しています。
Compare ruby version with correct way
railties/lib/rails/ruby_version_check.rb
の修正です。
Rubyのバージョンチェックをするのに文字列で比較していたのを、Gem::Version
を使用して比較するよう修正しています。
- if RUBY_VERSION < "2.4.1" && RUBY_ENGINE == "ruby" + if Gem::Version.new(RUBY_VERSION) < Gem::Version.new("2.4.1") && RUBY_ENGINE == "ruby"
元の比較方法だと、パッチバージョンが2桁になった場合に正しくチェック出来ない為。
"2.2.9" < "2.2.2" # => false "2.2.10" < "2.2.2" # => true
Ruby 2.2.10が出た事により実際に問題になりました。