Rails
Rails 7 Adds disable_joins Option
In multiple database applications, associations can't join across databases. When set, Rails makes 2 or more queries rather than using join for associations.Rails 7 Constructors for has_one :through
Rails 7 allows build_association and create_association on has_one :through associations.Rails 7 Adds invert_where Method
Rails 7 adds invert_where method that will invert all scope conditions.Rails 7 Adds Enumerable#in_order_of
With the addition of the `in_order_of` method, we can order enumerable based on the provided series.Rails 7 ActiveJob Enqueue Failure Handling
Rails 7 lets perform_later accept a block to handle enqueue failures, with successfully_enqueued? and enqueue_error for better error handling.Rails 7 Scoping Applies to All Queries
Rails 7 allows passing all_queries option to the scoping method. This change allows the scoping method to work on all queries for a model in a block.Rails 7 Adds Async Query Support
Rails 7 adds the ability to push database queries to the background thread pool, effectively reducing load times by utilizing I/O waits.Rails 6.1 Adds if_exists to remove_index
Rails 6.1 adds the `if_exists` option in `remove_index` which when set to true won't raise an error if the index doesn't exist.Rails 7 Adds ActiveStorage Streaming
Rails 7 adds a method to stream directly from your own controllers.Rails 7 Adds Rich Text Eager Loading
Rails 7 adds `#with_all_rich_text` to ActionText for eager loading all rich text associations.