Rails 6.1 adds support for destroying dependent associations in the background

Destroying multiple layered hierarchy of associated objects can be time consuming and might result in a server timeout error. With Rails adding support for dependent associations to be deleted in the background, this issue is addressed.

Rails 6.1 allows attribute's default to be configured but keeping its type

With Rails 6.1, we can set attribute's default value by keeping the type same

Ruby 3.0 adds `Hash#except` and `ENV.except`

Ruby 3.0 adds `Hash#except` to return a new hash that includes everything from the original hash except the given keys. `ENV` also gets support for `except`.

Rails deprecates `db:structure:load` and `db:structure:dump` tasks

Running `db:structure:load` and `db:structure:dump` tasks will run `db:schema:{load/dump}` based on the value of `config.active_record.schema_format`, and they will be removed in Rails 6.2.

Rails allows a module with extend ActiveSupport::Concern to be prepended

This blog post discusses the concept of prepending in Ruby and prepending concerns with the help of Active Support in Rails.

Ruby adds support for forwarding arguments to a method, along with the leading arguments

... operator was limited to forwarding arguments. With Ruby 3.0, it can forward the arguments along with the leading arguments.

Rails adds support for adding a default value to the rich text area

Rails has added support for adding a default value to the form field of type rich text area.

Ruby adds `Symbol#name` to return frozen string corresponding to the symbol name

Ruby has added `Symbol#name`, which returns the name of the symbol if it is named. The returned string can not be modified.

Changes to behavior in rails db:migrate:name command

Rails has made changes to dump the schema(or structure) of the database when executing the command rails db:migrate:name. The command will also reset the `ActiveRecord::Base` connection after its execution.

Rails adds a minimal flag to generate a new application

Rails used to come with a lot of frameworks by default, when we generate a new application. Now Rails introduced minimal flag to generate an application with only bare minimum frameworks