NEWS for Ruby 3.1.0¶ ↑
This document is a list of user visible feature changes since the 3.0.0 release, except for bug fixes.
Note that each entry is kept to a minimum, see links for details.
Language changes¶ ↑
Command line options¶ ↑
Core classes updates¶ ↑
Outstanding ones only.
-
-
Enumerable#compact
is added. [Feature #17312]
-
-
-
Enumerator::Lazy#compact
is added. [Feature #17312]
-
-
-
Module#prepend
now modifies the ancestor chain if the receiver already includes the argument.Module#prepend
still does not modify the ancestor chain if the receiver has already prepended the argument. [Bug #17423]
-
-
-
Passing only keyword arguments to Struct#initialize is warned. You need to use a
Hash
literal to set aHash
to a first member. [Feature #16806]
-
Stdlib updates¶ ↑
Outstanding ones only.
Compatibility issues¶ ↑
Excluding feature bug fixes.
Stdlib compatibility issues¶ ↑
-
ERB#initialize
warnssafe_level
and later arguments even without -w. [Feature #14256]
C API updates¶ ↑
Implementation improvements¶ ↑
JIT¶ ↑
-
RubyVM::MJIT
is renamed toRubyVM::JIT
.