Active Support
-
MemCacheStore: convert any underlying value (including
false
) to anEntry
.See #42559.
Alex Ghiculescu
-
Fix bug in
number_with_precision
when using largeBigDecimal
values.Fixes #42302.
Federico Aldunate, Zachary Scott
-
Check byte size instead of length on
secure_compare
.Tietew
-
Fix
Time.at
to not lose:in
option.Ryuta Kamizono
-
Require a path for
config.cache_store = :file_store
.Alex Ghiculescu
-
Avoid having to store complex object in the default translation file.
Rafael Mendonça França
Active Model
-
Fix
to_json
forActiveModel::Dirty
object.Exclude +mutations_from_database+ attribute from json as it lead to recursion.
Anil Maurya
Active Record
-
Do not try to rollback transactions that failed due to a
ActiveRecord::TransactionRollbackError
.Jamie McCarthy
-
Raise an error if
pool_config
isnil
inset_pool_config
.Eileen M. Uchitelle
-
Fix compatibility with
psych >= 4
.Starting in Psych 4.0.0
YAML.load
behaves likeYAML.safe_load
. To preserve compatibility
Active Record's schema cache loader andYAMLColumn
now usesYAML.unsafe_load
if available.Jean Boussier
-
Support using replicas when using
rails dbconsole
.Christopher Thornton
-
Restore connection pools after transactional tests.
Eugene Kenny
-
Change
upsert_all
to fails cleanly for MySQL when:unique_by
is used.Bastian Bartmann
-
Fix user-defined
self.default_scope
to respect table alias.Ryuta Kamizono
-
Clear
@cache_keys
cache afterupdate_all
,delete_all
,destroy_all
.Ryuta Kamizono
-
Changed Arel predications
contains
andoverlaps
to use
quoted_node
so that PostgreSQL arrays are quoted properly.Bradley Priest
-
Fix
merge
when thewhere
clauses have string contents.Ryuta Kamizono
-
Fix rollback of parent destruction with nested
dependent: :destroy
.Jacopo Beschi
-
Fix binds logging for
"WHERE ... IN ..."
statements.Ricardo Díaz
-
Handle
false
in relation strict loading checks.Previously when a model had strict loading set to true and then had a
relation setstrict_loading
to false the false wasn't considered when
deciding whether to raise/warn about strict loading.class Dog < ActiveRecord::Base self.strict_loading_by_default = true has_many :treats, strict_loading: false end
In the example,
dog.treats
would still raise even though
strict_loading
was set to false. This is a bug effecting more than
Active Storage which is why I made this PR superceeding #41461. We need
to fix this for all applications since the behavior is a little
surprising. I took the test from ##41461 and the code suggestion from #41453
with some additions.Eileen M. Uchitelle, Radamés Roriz
-
Fix numericality validator without precision.
Ryuta Kamizono
-
Fix aggregate attribute on Enum types.
Ryuta Kamizono
-
Fix
CREATE INDEX
statement generation for PostgreSQL.eltongo
-
Fix where clause on enum attribute when providing array of strings.
Ryuta Kamizono
-
Fix
unprepared_statement
to work it when nesting.Ryuta Kamizono
Action View
-
The
translate
helper now passesdefault
values that aren't
translation keys throughI18n.translate
for interpolation.Jonathan Hefner
-
Don't attach UJS form submission handlers to Turbo forms.
David Heinemeier Hansson
-
Allow both
current_page?(url_hash)
andcurrent_page?(**url_hash)
on Ruby 2.7.Ryuta Kamizono
Action Pack
-
Ignore file fixtures on
db:fixtures:load
Kevin Sjöberg
-
Fix ActionController::Live controller test deadlocks by removing the body buffer size limit for tests.
Dylan Thacker-Smith
-
Correctly place optional path parameter booleans.
Previously, if you specify a url parameter that is part of the path as false it would include that part
of the path as parameter for example:get "(/optional/:optional_id)/things" => "foo#foo", as: :things things_path(optional_id: false) # => /things?optional_id=false
After this change, true and false will be treated the same when used as optional path parameters. Meaning now:
get '(this/:my_bool)/that' as: :that that_path(my_bool: true) # => `/this/true/that` that_path(my_bool: false) # => `/this/false/that`
Adam Hess
-
Add support for 'private, no-store' Cache-Control headers.
Previously, 'no-store' was exclusive; no other directives could be specified.
Alex Smith
Active Job
- No changes.
Action Mailer
- No changes.
Action Cable
-
Fix
ArgumentError
with ruby 3.0 onRemoteConnection#disconnect
.Vladislav
Active Storage
-
The parameters sent to
ffmpeg
for generating a video preview image are now
configurable underconfig.active_storage.video_preview_arguments
.Brendon Muir
-
Fix Active Storage update task when running in an engine.
Justin Malčić*
-
Don't raise an error if the mime type is not recognized.
Fixes #41777.
Alex Ghiculescu
-
ActiveStorage::PreviewError
is raised when a previewer is unable to generate a preview image.Alex Robbin
-
respond with 404 given invalid variation key when asking for representations.
George Claghorn
-
Blob
creation shouldn't crash if no service selected.Alex Ghiculescu
Action Mailbox
- No changes.
Action Text
-
Always render attachment partials as HTML with
:html
format inside trix editor.James Brooks
Railties
-
Fix compatibility with
psych >= 4
.Starting in Psych 4.0.0
YAML.load
behaves likeYAML.safe_load
. To preserve compatibility
Rails.application.config_for
now usesYAML.unsafe_load
if available.Jean Boussier
-
Ensure
Rails.application.config_for
always cast hashes toActiveSupport::OrderedOptions
.Jean Boussier
-
Fix create migration generator with
--pretend
option.euxx