Evaluating Media queries in a Range Context

Media Queries Level 4 specification has introduced a new syntax for writing media queries that have a range type. We can now use common mathematical comparison operators like <, >,<=, >= instead of min/max prefixes.

Rails serializes store data as a regular hash instead of using HWIA

Serializing store objects with ActiveSupport::HashWithIndifferentAccess is both a wasteful and an insecure option. Instead Rails now encodes store as a regular hash and casts it back to HWIA before accessing.

Learn about tree shaking in Webpack 5

Tree shaking is a technique used by webpack to optimize the builds for production and reducing the build size by shaking off the dead code from its branches (modules).

Rails adds include_seconds option to datetime_field.

Rails now allows to omit seconds part in the input field by adding the include_seconds option to datetime_field

Pending migrations now show path instead of filename

Rails warns users of pending migrations now by showing the path of the migration file, instead of just the name. This is useful in multi-db applications.

Ruby adds a new core class called Data to represent simple immutable value objects

The Data class helps define simple classes for value-alike objects that can be extended with custom methods.

Rails 7 fixes timezone awareness for tsrange and tstzrange columns

Earlier the tsrange/tstzrange column would throw a TypeError if a timezone was set in the application config. This column now stores time with the correct timezone.

Rails adds the --parent option to the job generator

Similar to the working of the model generator, the job generator now accepts the --parent option. This allows one to generate a job that inherits from the specified parent class.

Rails adds :strict option to the default SQLite database.yml file

SQLite can be configured to be strict to circumvent some of its quirks. Rails can now specify this in the default database.yml file.

Two new properties in CSS - overflow:clip and overflow-clip-margin

overflow: clip and overflow: hidden both do the same job of hiding content that overflows. However, overflow: clip also disables programmatic scrolling. Another property overflow-clip-margin controls how far from the element's edge the clipping begins.