Rails 7 adds better support for custom enum types in PostgreSQL

With Rails 7, use create_enum to add a new enum type and t.enum to add a column.

Use the combined jsbundling-rails gem instead of individual js bundler gems

JSBundling provides a flexible way of using different Javascript bundlers

Rails 7 adds the ability to delete and update queries using GROUP_BY and HAVING

With Rails 7, we can now combine GROUP_BY and HAVING clauses with a more complex update and delete queries.

Rails 7 adds `config.action_text.attachment_tag_name`

Rails 7 adds support for setting `config.action_text.attachment_tag_name` to replace the actiontext's default attachment HTML tag name to a custom string.

Rails 7 adds caching? and uncachable! helper

Starting with Rails 7, we can add caching? helper to check whether the current code path is being cached and uncacheable! helper to avoid fragment caching.

Rails 7 adds :day_format option to date_select

Now format how the day looks in a date select dropdown using `day_format`.

Rails 7: Pass default values to I18n's `translate` method

Provide fallback values to the translate method apart from those parts of the translation string.

Rails 7 adds the ability to check if a location is safe before redirecting

Now determine if a URL is an internal one before redirecting.

Rails 7 added --css app generator

Rails 7 added --css app generator for configuring CSS processors.

Rails 7 replaces Webpacker with importmapped Hotwire as default JavaScript setup

A new Rails skeleton will not have to require the full JavaScript toolchain with Webpack by default as Rails 7 embraces the future of Javascript.