CHANGELOG.md 5.1 KB
Newer Older
1 2 3 4 5
## Rails 6.0.2.2 (March 19, 2020) ##

*   No changes.


6 7 8 9 10
## Rails 6.0.2.1 (December 18, 2019) ##

*   No changes.


11
## Rails 6.0.2 (December 13, 2019) ##
12 13 14 15

*   No changes.


G
v6.0.1  
George Claghorn 已提交
16
## Rails 6.0.1 (November 5, 2019) ##
G
George Claghorn 已提交
17 18 19 20

*   No changes.


21 22 23 24 25
## Rails 6.0.0 (August 16, 2019) ##

*   No changes.


26 27 28 29 30
## Rails 6.0.0.rc2 (July 22, 2019) ##

*   No changes.


31 32
## Rails 6.0.0.rc1 (April 24, 2019) ##

33 34 35 36 37 38
*   Type cast falsy boolean symbols on boolean attribute as false.

    Fixes #35676.

    *Ryuta Kamizono*

39
*   Change how validation error translation strings are fetched: The new behavior
40 41
    will first try the more specific keys, including doing locale fallback, then try
    the less specific ones.
E
eileencodes 已提交
42

43 44
    For example, this is the order in which keys will now be tried for a `blank`
    error on a `product`'s `title` attribute with current locale set to `en-US`:
E
eileencodes 已提交
45

46 47 48
        en-US.activerecord.errors.models.product.attributes.title.blank
        en-US.activerecord.errors.models.product.blank
        en-US.activerecord.errors.messages.blank
E
eileencodes 已提交
49

50 51 52
        en.activerecord.errors.models.product.attributes.title.blank
        en.activerecord.errors.models.product.blank
        en.activerecord.errors.messages.blank
E
eileencodes 已提交
53

54 55
        en-US.errors.attributes.title.blank
        en-US.errors.messages.blank
E
eileencodes 已提交
56

57 58
        en.errors.attributes.title.blank
        en.errors.messages.blank
E
eileencodes 已提交
59

60 61
    *Hugo Vacher*

E
eileencodes 已提交
62

E
eileencodes 已提交
63 64 65 66 67
## Rails 6.0.0.beta3 (March 11, 2019) ##

*   No changes.


68 69
## Rails 6.0.0.beta2 (February 25, 2019) ##

70 71
*   Fix date value when casting a multiparameter date hash to not convert
    from Gregorian date to Julian date.
72 73 74 75

    Before:

        Day.new({"day(1i)"=>"1", "day(2i)"=>"1", "day(3i)"=>"1"})
76
        # => #<Day id: nil, day: "0001-01-03", created_at: nil, updated_at: nil>
77 78 79 80

    After:

        Day.new({"day(1i)"=>"1", "day(2i)"=>"1", "day(3i)"=>"1"})
81
        # => #<Day id: nil, day: "0001-01-01", created_at: nil, updated_at: nil>
82

83
    Fixes #28521.
84 85

    *Sayan Chakraborty*
86

87
*   Fix year value when casting a multiparameter time hash.
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

    When assigning a hash to a time attribute that's missing a year component
    (e.g. a `time_select` with `:ignore_date` set to `true`) then the year
    defaults to 1970 instead of the expected 2000. This results in the attribute
    changing as a result of the save.

    Before:
    ```
    event = Event.new(start_time: { 4 => 20, 5 => 30 })
    event.start_time # => 1970-01-01 20:30:00 UTC
    event.save
    event.reload
    event.start_time # => 2000-01-01 20:30:00 UTC
    ```

    After:
    ```
    event = Event.new(start_time: { 4 => 20, 5 => 30 })
    event.start_time # => 2000-01-01 20:30:00 UTC
    event.save
    event.reload
    event.start_time # => 2000-01-01 20:30:00 UTC
    ```

    *Andrew White*


115 116
## Rails 6.0.0.beta1 (January 18, 2019) ##

117 118 119 120 121 122 123 124 125 126
*   Internal calls to `human_attribute_name` on an `Active Model` now pass attributes as strings instead of symbols
    in some cases.

    This is in line with examples in Rails docs and puts the code in line with the intention -
    the potential use of strings or symbols.

    It is recommended to cast the attribute input to your desired type as if you you are overriding that methid.

    *Martin Larochelle*

B
bogdanvlviv 已提交
127 128 129 130
*   Add `ActiveModel::Errors#of_kind?`.

    *bogdanvlviv*, *Rafael Mendonça França*

131 132 133 134 135
*   Fix numericality equality validation of `BigDecimal` and `Float`
    by casting to `BigDecimal` on both ends of the validation.

    *Gannon McGibbon*

136 137 138 139
*   Add `#slice!` method to `ActiveModel::Errors`.

    *Daniel López Prat*

140 141 142 143 144 145
*   Fix numericality validator to still use value before type cast except Active Record.

    Fixes #33651, #33686.

    *Ryuta Kamizono*

146 147
*   Fix `ActiveModel::Serializers::JSON#as_json` method for timestamps.

R
Ryuta Kamizono 已提交
148 149 150 151 152 153 154 155 156 157 158
    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"
    ```
159 160 161

    *Bogdan Gusiev*

162 163
*   Allows configurable attribute name for `#has_secure_password`. This
    still defaults to an attribute named 'password', causing no breaking
164
    change. There is a new method `#authenticate_XXX` where XXX is the
165
    configured attribute name, making the existing `#authenticate` now an
166
    alias for this when the attribute is the default 'password'.
R
Ryuta Kamizono 已提交
167

168
    Example:
169

170
        class User < ActiveRecord::Base
171
          has_secure_password :recovery_password, validations: false
172
        end
173

174
        user = User.new()
175 176 177
        user.recovery_password = "42password"
        user.recovery_password_digest # => "$2a$04$iOfhwahFymCs5weB3BNH/uX..."
        user.authenticate_recovery_password('42password') # => user
178

R
Ryuta Kamizono 已提交
179
    *Unathi Chonco*
180

181
*   Add `config.active_model.i18n_customize_full_message` in order to control whether
B
bogdanvlviv 已提交
182 183 184 185 186
    the `full_message` error format can be overridden at the attribute or model
    level in the locale files. This is `false` by default.

    *Martin Larochelle*

K
Kasper Timm Hansen 已提交
187
*   Rails 6 requires Ruby 2.5.0 or newer.
J
Jeremy Daer 已提交
188

K
Kasper Timm Hansen 已提交
189
    *Jeremy Daer*, *Kasper Timm Hansen*
190 191


192
Please check [5-2-stable](https://github.com/rails/rails/blob/5-2-stable/activemodel/CHANGELOG.md) for previous changes.