Active Support
-
Fix inflections to better handle overlapping acronyms.
ActiveSupport::Inflector.inflections(:en) do |inflect| inflect.acronym "USD" inflect.acronym "USDC" end "USDC".underscore # => "usdc"
Said Kaldybaev
-
Silence Dalli 4.0+ warning when using
ActiveSupport::Cache::MemCacheStore.zzak
-
Make
delegateanddelegate_missing_towork in BasicObject subclasses.Rafael Mendonça França
-
Fix
ActiveSupport::Inflector.humanizewith international characters.ActiveSupport::Inflector.humanize("áÉÍÓÚ") # => "Áéíóú" ActiveSupport::Inflector.humanize("аБВГДЕ") # => "Абвгде"
Jose Luis Duran
Active Model
- No changes.
Active Record
-
Fix
insert_allandupsert_alllog message when called on anonymous classes.Gabriel Sobrinho
-
Respect
ActiveRecord::SchemaDumper.ignore_tableswhen dumping SQLite virtual tables.Hans Schnedlitz
-
Restore previous instrumenter after
execute_or_skipFutureResult#execute_or_skipreplaces the thread's instrumenter with an
EventBufferto collect events published during async query execution.
If the global async executor is saturated and thecaller_runsfallback
executes the task on the calling thread, we need to make sure the previous
instrumenter is restored or the staleEventBufferwould stay in place and
permanently swallow all subsequentsql.active_recordnotifications on
that thread.Rosa Gutierrez
-
Fix Ruby 4.0 delegator warning when calling inspect on ActiveRecord::Type::Serialized.
Hammad Khan
-
Fix support for table names containing hyphens.
Evgeniy Demin
-
Fix column deduplication for SQLite3 and PostgreSQL virtual (generated) columns.
Column#==andColumn#hashnow account forvirtual?so that the
Deduplicableregistry does not treat a generated column and a regular
column with the same name and type as identical. Previously, if a
generated column was registered first, a regular column on a different
table could be deduplicated to the generated instance, silently
excluding it from INSERT/UPDATE statements.Jay Huber
-
Fix merging relations with arel equality predicates with null relations.
fatkodima
-
Fix SQLite3 schema dump for non-autoincrement integer primary keys.
Previously,
schema.rbshould incorrectly restore that table with an auto incrementing
primary key.Chris Hasiński
-
Fix PostgreSQL
schema_search_pathnot being reapplied afterreset!orreconnect!.The
schema_search_pathconfigured indatabase.ymlis now correctly
reapplied instead of falling back to PostgreSQL defaults.Tobias Egli
-
Ensure batched preloaded associations accounts for klass when grouping to avoid issues with STI.
zzak, Stjepan Hadjic
-
Fix
ActiveRecord::SoleRecordExceeded#recordto return the relation.This was the case until Rails 7.2, but starting from 8.0 it
started mistakenly returning the model class.Jean Boussier
-
Improve PostgreSQLAdapter resilience to Timeout.timeout.
Better handle asynchronous exceptions being thrown inside
thereconnect!method.This may fixes some deep errors such as:
undefined method `key?' for nil:NilClass (NoMethodError) if !type_map.key?(oid)Jean Boussier
-
Fix
eager_loadwhen loadinghas_manyassocations with composite primary keys.This would result in some records being loaded multiple times.
Martin-Alexander
Action View
-
Fix encoding errors for string locals containing non-ASCII characters.
Kataoka Katsuki
-
Fix collection caching to only forward
expires_inargument if explicitly set.Pieter Visser
-
Fix
file_fieldto join mime types with a comma when provided as Arrayfile_field(:article, :image, accept: ['image/png', 'image/gif', 'image/jpeg'])
Now behaves likes:
file_field(:article, :image, accept: 'image/png,image/gif,image/jpeg')Bogdan Gusiev
-
Fix strict locals parsing to handle multiline definitions.
Said Kaldybaev
Action Pack
-
Add
config.action_controller.live_streaming_excluded_keysto control execution state sharing in ActionController::Live.When using ActionController::Live, actions are executed in a separate thread that shares
state from the parent thread. This new configuration allows applications to opt-out specific
state keys that should not be shared.This is useful when streaming inside a
connected_toblock, where you may want
the streaming thread to use its own database connection context.# config/application.rb config.action_controller.live_streaming_excluded_keys = [:active_record_connected_to_stack]
By default, all keys are shared.
Eileen M. Uchitelle
Active Job
- No changes.
Action Mailer
- No changes.
Action Cable
- No changes.
Active Storage
-
Fix
ActiveStorage::Blobcontent type predicate methods to handlenil.Daichi KUDO
Action Mailbox
- No changes.
Action Text
- No changes.
Railties
-
Fixed the
rails notescommand to properly extract notes in CSS files.David White
-
Fixed the default Dockerfile to properly include the
vendor/directory duringbundle install.Zhong Sheng
Guides
- No changes.