Active Support
-
Fix
JSONGemCoderEncoderto correctly serialize custom object hash keys.When hash keys are custom objects whose
as_jsonreturns a Hash,
the encoder now callsto_son the original key object instead of
on theas_jsonresult.Before:
hash = {CustomKey.new(123) => "value"}
hash.to_json # => {"{:id=>123}":"value"}After:
hash.to_json # => {"custom_123":"value"}Dan Sharp
-
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
Active Model
-
Fix Ruby 4.0 delegator warning when calling inspect on attributes.
Hammad Khan
-
Fix
NoMethodErrorwhen deserialisingType::Integerobjects marshalled under Rails 8.0.The performance optimisation that replaced
@rangewith@max/@min
broke Marshal compatibility. Objects serialised under 8.0 (with@range)
and deserialised under 8.1 (expecting@max/@min) would crash with
undefined method '<=' for nilbecauseMarshal.loadrestores instance
variables without callinginitialize.Edward Woodcock
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
-
Bump the minimum PostgreSQL version to 9.5, due to usage of
array_positionfunction.Ivan Kuchin
-
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 PostgreSQL schema dumping to handle schema-qualified table names in foreign_key references that span different schemas.
# before add_foreign_key "hst.event_log_attributes", "hst.event_logs" # emits correctly because they're in the same schema (hst) add_foreign_key "hst.event_log_attributes", "hst.usr.user_profiles", column: "created_by_id" # emits hst.user.* when user.* is expected # after add_foreign_key "hst.event_log_attributes", "hst.event_logs" add_foreign_key "hst.event_log_attributes", "usr.user_profiles", column: "created_by_id"Chiperific
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
Action Pack
- No changes.
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
-
Add
libvipsto generatedci.ymlConditionally adds
libvipstoci.yml.Steve Polito
Guides
- No changes.