Rails

Rails 7.1 Adds Support for MessagePack as Message Serializer

MessagePack is now supported in Rails 7.1, this new serializer enables the generation of smaller payloads and significantly faster serialization and deserialization compared to other serializers.

Rails 7.1 Introduces ActiveRecord::Base::generates_token_for

Generate tokens for specific purposes and verify their authenticity.

Rails 7.1 Introduces ActiveRecord::Base::Normalization

Normalization allows us to define custom normalization rules for attributes in our model. This feature is particularly helpful for ensuring that specific attributes are consistently formatted or transformed before they are saved to the database.

Limiting Maximum Index Name Length in Ruby on Rails 7.1

Rails 7.1 defined maximum limit of 62 bytes for auto-generated index names.

Rails 7.1 Introduces Autoload Lib and Ignore Sub-Directories with config.autoload_lib(ignore:) Method

Autoloading lib directory isn't always straightforward. In this blog post, we'll delve into the autoloading of the lib directory using config.autoload_lib(ignore:).

Enhancing Security in Ruby on Rails - SSL Enforcement by Default

Rails 7.1 enables force_ssl=true in production by default.

Rails 7.1 Now Allows ErrorReporter To Handle Several Error Classes

Rails introduces handle method for ErrorReporter API

Set And Restore Public Attributes Around a Block Using Object#with

We can use Object#with method as shorthand for the common begin/ensure pattern to save the value of an attribute, setting a new value, and then restoring the previous value.

Open Ranges Are Now Supported By The Object#in? Method In Rails

We can use Object#in? method to check open date ranges i.e. beginless and endless ranges.

Introducing Line Range Filtering in Rails 7.1 Testing

Rails 7.1 introduces line range filtering for running specific tests within a test file based on line numbers.