Rails

Rails 6 adds ActiveJob::TestCase#perform_enqueued_jobs without a block

With Rails 6, we can use ActiveJob::TestCase#perform_enqueued_jobs without a block to perform jobs in tests

Rails 6.1 adds rescue_from to ActionCable::Connection::Base

The `rescue_from` on ActionCable::Connection::Base allows us to intercept unhandled exceptions

Rails adds support for annotating HTML output with template file names.

Rails 6.1 has added support for adding HTML comments to the rendered output indicating where each template begins and ends.

Rails 6.1 supports `if_not_exists` option for adding index

Rails 6.1 added support for if_not_exists option to add_index. The if_not_exists provided to create_table also gets propagated to all indexes getting created in the create_table block.

Using Interactors in Rails

Interactors provide a common interface for performing complex user interactions.

Ways for reducing Heroku slug size

Techniques for reducing Heroku slug size for Rails applications

Rails adds support for descending order in find_each, find_in_batches and in_batches

Rails 6.1 has added support for providing order(ASC/DESC) to batch processing methods like find_each, find_in_batches and in_batches instead of processing records in ascending order always.

Rails - Added sub seconds to Time inspect

Rails has added sub seconds to ActiveSupport::TimeWithZone#inspect method.

Rails adds support for db:rollback:name for multiple database applications

Rails has added support for name option while rollbacking migration for multiple database application

Rails 6.1 add Enumerable#pick to complement Relation#pick

Adding pick to enumerable will enable us to call pick on loaded relations, unloaded relations, and plain enumerables interchangeably.