Generally followed the pattern for https://github.com/rails/rails/pull/32034 * Removes needless CI configs for 2.4 * Targets 2.5 in rubocop * Updates existing CHANGELOG entries for fewer merge conflicts * Removes Hash#slice extension as that's inlined on Ruby 2.5. * Removes the need for send on define_method in MethodCallAssertions.
1.9 KiB
-
Fix numericality equality validation of
BigDecimal
andFloat
by casting toBigDecimal
on both ends of the validation.Gannon McGibbon
-
Add
#slice!
method toActiveModel::Errors
.Daniel López Prat
-
Fix numericality validator to still use value before type cast except Active Record.
Fixes #33651, #33686.
Ryuta Kamizono
-
Fix
ActiveModel::Serializers::JSON#as_json
method for timestamps.Before:
contact = Contact.new(created_at: Time.utc(2006, 8, 1)) contact.as_json["created_at"] # => 2006-08-01 00:00:00 UTC
After:
contact = Contact.new(created_at: Time.utc(2006, 8, 1)) contact.as_json["created_at"] # => "2006-08-01T00:00:00.000Z"
Bogdan Gusiev
-
Allows configurable attribute name for
#has_secure_password
. This still defaults to an attribute named 'password', causing no breaking change. There is a new method#authenticate_XXX
where XXX is the configured attribute name, making the existing#authenticate
now an alias for this when the attribute is the default 'password'.Example:
class User < ActiveRecord::Base has_secure_password :recovery_password, validations: false end user = User.new() user.recovery_password = "42password" user.recovery_password_digest # => "$2a$04$iOfhwahFymCs5weB3BNH/uX..." user.authenticate_recovery_password('42password') # => user
Unathi Chonco
-
Add
config.active_model.i18n_full_message
in order to control whether thefull_message
error format can be overridden at the attribute or model level in the locale files. This isfalse
by default.Martin Larochelle
-
Rails 6 requires Ruby 2.5.0 or newer.
Jeremy Daer, Kasper Timm Hansen
Please check 5-2-stable for previous changes.