Ruby
Non‑Blocking IO.select in Ruby: Introduction to Fiber::Scheduler#io_select
Fiber::Scheduler#io_select, a dedicated hook that brings scheduler awareness to IO.selectWhat Is New In Ruby 3.4
Ruby 3.4 boasts performance boosts, with advancements in the Garbage Collection, YJIT, default parser (Prism), frozen_string_literal, block parameters, and multiple bug fixes.Ruby 3.4 Throws SyntaxError As Keyword Arguments Are No Longer Allowed In Index.
Passing keyword arguments in index to an array set methods throws SyntaxError.Ruby 3.4 Throws SyntaxError While Passing Block As Argument In Index.
Passing a block as an argument in index to an array throws SyntaxError in Ruby 3.4 as it is no longer allowed.Ruby 3.4, Range#size Now Raises TypeError If The Range Is Not Iterable
Range#size raises TypeError if the begin value of Range is a Float or Rational or Beginless.Ruby 3.4, No More TypeError With **nil As It Is Treated As An Empty Hash.
When double splat ** operator used with nil, it is treated similarly to **{}, which passes no keywords and does not call any conversion methods.A Quick Guide to Ruby's Time and DateTime Classes
Let's examine when to use the Time class and when to use the DateTime classWhat is new in Ruby 3.3
Ruby 3.3 boasts performance boosts (faster YJIT, M:N threads), a pure-Ruby JIT compiler (RJIT), a new parser (Prism), developer-friendly features in IRB, and multiple bug fixes.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.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.
Newer
