Skip to content

Ruby versions changelog

Ruby 3.1

Ruby 3.1.2

Ruby 3.1.1

Ruby 3.1.0

  • Internals YJIT: New experimental in-process JIT compiler (experimental)
  • Added debug gem: A new debugger
  • Added error_highlight: Fine-grained error location in backtrace
  • Added IRB Autocomplete and Documentation Display
  • Updated Values in Hash literals and keyword arguments can be omitted.
  • Updated Updates in RBS / TypeProf

Ruby 3.0

Ruby 3.0.4

Ruby 3.0.3

Ruby 3.0.2

Ruby 3.0.1

Ruby 3.0.0

  • Internals MJIT improvements
  • Added Ractor - Actor-model like concurrent abstraction (experimental)
  • Added Fiber Scheduler for light-weight concurrency (experimental)
  • Added RBS - a language to describe the structure of Ruby classes
  • Added TypeProf - type analysis tool, generates RBS type signatures (experimental)
  • Added Hash#except
  • Updated Keyword arguments are separated from other arguments
  • Updated Rightward assignment statement
  • Updated Reversed (again) order of backtrace (experimental)
  • Updated Endless method definition def square(x) = x * x

Ruby 2.7

Ruby 2.7.6

Ruby 2.7.5

Ruby 2.7.4

Ruby 2.7.3

Ruby 2.7.2

Ruby 2.7.1

Ruby 2.7.0

  • Added Pattern Matching (experimental)
  • Updated REPL improvements
  • Updated Separation of positional and keyword arguments
  • Updated Argument forwarding
  • Internals Compaction GC

Ruby 2.6

Ruby 2.6.10

Ruby 2.6.9

Ruby 2.6.8

Ruby 2.6.7

Ruby 2.6.6

Ruby 2.6.5

Ruby 2.6.4

Ruby 2.6.3

Ruby 2.6.2

Ruby 2.6.1

Ruby 2.6.0

  • Added endless ranges (1..)
  • Added Enumerable#chain
  • Added function composition operators <<, >> to Proc
  • Updated #then alias for #yield_self
  • Internals JIT compiler --jit
  • Internals Bundler is installed as a default gem

Ruby 2.5

Ruby 2.5.9

Ruby 2.5.8

Ruby 2.5.7

Ruby 2.5.6

Ruby 2.5.5

Ruby 2.5.4

Ruby 2.5.3

Ruby 2.5.2

Ruby 2.5.1

Ruby 2.5.0

  • Added yield_self
  • Added rescue in blocks
  • Added Hash#slice and Hash#transform_keys
  • Added ERB#result_with_hash
  • Updated New Array aliases - #prepend (#unshift) and #append (#push)
  • Updated Pattern argument on Enumerable methods
  • Updated Keyword arguments on Struct.new
  • Updated Removed Top-level constant lookup
  • Updated Reverse order of backtrace (oldest call first) (experimental)

Ruby 2.4

Ruby 2.4.10

Ruby 2.4.9

Ruby 2.4.8

Ruby 2.4.7

Ruby 2.4.6

Ruby 2.4.5

Ruby 2.4.4

Ruby 2.4.3

Ruby 2.4.2

Ruby 2.4.1

Ruby 2.4.0

  • Added Enumerable#sum
  • Added Integer#digits
  • Added Regexp#match?, Regexp#named_captures
  • Updated New constructor Logger.new(STDOUT, level:, progname:)
  • Updated Float: #round, #ceil, #floor, and #truncate now accept a precision
  • Removed Removed Fixnum and Bignum classes (unified to Integer)

Ruby 2.3

Ruby 2.3.8

Ruby 2.3.7

Ruby 2.3.6

Ruby 2.3.5

Ruby 2.3.4

Ruby 2.3.3

Ruby 2.3.2

Ruby 2.3.1

Ruby 2.3.0

  • Added Safe navigation operator &.
  • Added Frozen string literals
  • Added Array#dig
  • Added Hash#fetch_values, Hash#to_proc, Hash#dig
  • Added 'Did you mean?'

Ruby 2.2


Ruby 2.1


Ruby 2.0


(Last updated on 2022-04-29 23:08:04 +0200)