Rails has deprecated using return, break and throw to exit a transactionRails havs disallowed using return, break and throw for exiting early from a transaction and having it committed.
Running a Rails Consultancy- a year inHighlights from running our small Rails Consultancy for the first year
Rails ActiveRecord::Relation#pick now uses already loaded resultsRails ActiveRecord::Relation#pick now uses already loaded results instead of making a new query everytime.
Rails [attribute_name]_previously_changed? accepts :from and :to argumentsRails Active Model Dirty method [attribute_name]_previously_changed? now accepts :from and :to arguments just like [attribute_name]_changed?
Rails - Allows to specify schema cache path in database configuration fileRails now exposes a new configuration for specifying the location of the schema cache file. This can be done in database.yml using schema_cache_path key.
Rails has added support in Action Cable to unsubscribe from specific streamRails adds ActionCable::Channel#stop_stream_from and ActionCable::Channel#stop_stream_for methods to allow user to unsubscribe from specific stream
Rails adds round_mode parameter support to number helpersRails has added :round_mode parameter support to number helpers
Ruby 2.7 - Setting $ special variables to non-nil value is now warnedIn Ruby 2.7, setting special variable $, $; $/ $\ to non-nil values will now show a deprecated warning
Eager loading Active Storage models to avoid N+1 issuesRemoving N+1 queries when we access the Active Storage attachments associated with an ActiveRecord model.
Rails adds jitter to ActiveJob::Exceptions.retry_onRails adds jitter to ActiveJob::Exceptions.retry_on to cater to thundering herd effect