Rails-7

Rails now provides pattern matching support for ActiveModel

Rails now provides pattern matching support for ActiveModel (and transitively ActiveRecord)

Rails allows using aliased attributes with insert_all and upsert_all

Rails is continuously adding convenience to make active record queries more flexible. Now, Rails has added support to use aliased attributes with insert/upsert_all.

Rails 7 Arel adds support for FILTER clause

Rails 7 Arel adds support for FILTER clause

Rails 7 now lazy loads schema cache

Use a config option to now switch between eager and lazy schema cache loading.

Rails does not require role when to be passed to connected_to

The connected_to block no longer throws an ArgumentError when called without a role parameter so as to pave the way for a more simplified and buildable syntax.

Rails 7 adds support for deferrable foreign key constraints in PostgreSQL

By default, foreign key constraints in PostgreSQL are checked after each statement. This works for most use cases but becomes a major limitation when creating related records before the parent record is inserted into the database.

Rails 7 adds optional transaction arguments to with_lock

With Rails 7 we can pass transaction arguments like isolation, joinable, etc directly to with_lock

Rails 7: Action Text: forward form: option to hidden input

Add support for accessing the form as a property of the element.

Rails 7 adds support for setting the schema dump filepath in the database config

Schema dumps can now be toggled and dump filepaths can be set for individual database shards.

Rails 7 allows permitting numeric params

Rails 7 eliminates the issue of permitting nested hash. Now required attributes can be permitted by calling the permit method directly on the parent hash.