Rails introduces ErrorReporter#unexpected for reporting precondition violations
The new method will report in production but raise in other environments, making it easier to debug.Rails 7.1 Introduces Option To Disable All Methods That ActiveRecord.enum Generates
Disable auto generated methods of ActiveRecord.enum with instance_methods by passing false to it.Upsert no longer ignores on_duplicate if unique_by is specified
Upsert would previously not execute the on_duplicate clause if the unique_by constraint found a match. This has been fixed.Performance Gains in Ruby 3.3- String.dup vs. String#+
Ruby 3.3 optimizes String.dup to match the speed of String#+, allowing developers to choose based on preference without sacrificing performance.ActiveStorage now pre-processes PDFs and videos
Rails now pre-processes previewable files such as PDFs and videos. Previously it only pre-processed images.Rubygems introduced a file option to specify Ruby version in Gemfile
Rubygems introduced a :file option so that we can read the Ruby version from a file.Rails 7.1 Adds path_params Option For url_for Helper Method
path_params allows specified params to be used exclusively for named segments under scoped routing without unnecessarily appending parameters to every URL.ECMAScript - Grouping arrays using Object.groupBy and Map.groupBy
This blog explains the features of the latest ECMAScript proposal Object.groupBy and Map.groupBy that reached stage 4.Ruby 3.3 Implements Range#reverse_each Method For Very Large or Beginless Ranges And Error Handling For Endless Ranges
Range#reverse_each can now process beginless ranges with an Integer endpoint and raises TypeError for endless ranges.Tailwind vs Bootstrap
This blog explores the differences between Tailwind CSS and Bootstrap, assisting developers in selecting the optimal framework for their projects.