2020-12-25 03:31:48 -05:00
|
|
|
# NEWS for Ruby 3.1.0
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-02-16 15:00:34 -05:00
|
|
|
This document is a list of user visible feature changes
|
2020-12-25 03:31:48 -05:00
|
|
|
since the **3.0.0** release, except for bug fixes.
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-12-22 14:27:38 -05:00
|
|
|
Note that each entry is kept to a minimum, see links for details.
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-01-18 03:46:52 -05:00
|
|
|
## Language changes
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-01-18 03:46:52 -05:00
|
|
|
## Command line options
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-03-03 03:37:51 -05:00
|
|
|
## Core classes updates
|
|
|
|
|
|
|
|
Outstanding ones only.
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2021-01-02 02:42:45 -05:00
|
|
|
* Enumerable
|
|
|
|
|
|
|
|
* Enumerable#compact is added. [[Feature #17312]]
|
|
|
|
|
|
|
|
* Enumerator::Lazy
|
|
|
|
|
|
|
|
* Enumerator::Lazy#compact is added. [[Feature #17312]]
|
|
|
|
|
2021-01-14 14:59:25 -05:00
|
|
|
* Module
|
|
|
|
|
|
|
|
* 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]]
|
|
|
|
|
2021-01-17 04:35:54 -05:00
|
|
|
* Struct
|
|
|
|
|
|
|
|
* Passing only keyword arguments to Struct#initialize is warned.
|
|
|
|
You need to use a Hash literal to set a Hash to a first member.
|
|
|
|
[[Feature #16806]]
|
|
|
|
|
2021-02-11 05:14:18 -05:00
|
|
|
* Queue
|
|
|
|
|
|
|
|
* Queue#initialize now accepts an Enumerable of initial values.
|
|
|
|
[[Feature #17327]]
|
|
|
|
|
2021-02-15 02:06:43 -05:00
|
|
|
* Thread::Backtrace
|
|
|
|
|
|
|
|
* Thread::Backtrace.limit, which returns the value to limit backtrace
|
|
|
|
length set by `--backtracse-limit` command line option, is added.
|
|
|
|
[[Feature #17479]]
|
|
|
|
|
2021-02-16 04:12:47 -05:00
|
|
|
* $LOAD_PATH
|
|
|
|
|
|
|
|
* $LOAD_PATH.resolve_feature_path does not raise. [[Feature #16043]]
|
|
|
|
|
2020-03-03 03:37:51 -05:00
|
|
|
## Stdlib updates
|
|
|
|
|
|
|
|
Outstanding ones only.
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-03-03 03:37:51 -05:00
|
|
|
## Compatibility issues
|
|
|
|
|
|
|
|
Excluding feature bug fixes.
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-08-24 02:38:03 -04:00
|
|
|
## Stdlib compatibility issues
|
2020-06-18 08:11:19 -04:00
|
|
|
|
2021-01-21 01:02:24 -05:00
|
|
|
* `ERB#initialize` warns `safe_level` and later arguments even without -w.
|
|
|
|
[[Feature #14256]]
|
|
|
|
|
2020-01-18 03:46:52 -05:00
|
|
|
## C API updates
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-01-18 03:46:52 -05:00
|
|
|
## Implementation improvements
|
2020-01-14 22:42:47 -05:00
|
|
|
|
2020-06-26 03:54:05 -04:00
|
|
|
### JIT
|
|
|
|
|
2021-01-14 01:36:45 -05:00
|
|
|
* `RubyVM::MJIT` is renamed to `RubyVM::JIT`.
|
|
|
|
|
2020-11-10 12:15:57 -05:00
|
|
|
## Static analysis
|
2020-10-20 00:16:19 -04:00
|
|
|
|
|
|
|
### RBS
|
2020-09-25 04:08:39 -04:00
|
|
|
|
2020-10-20 00:16:19 -04:00
|
|
|
### TypeProf
|
|
|
|
|
2020-01-18 03:46:52 -05:00
|
|
|
## Miscellaneous changes
|
2021-01-02 02:42:45 -05:00
|
|
|
|
|
|
|
|
2021-01-21 01:02:24 -05:00
|
|
|
[Feature #14256]: https://bugs.ruby-lang.org/issues/14256
|
2021-02-16 04:12:47 -05:00
|
|
|
[Feature #16043]: https://bugs.ruby-lang.org/issues/16043
|
2021-01-17 04:35:54 -05:00
|
|
|
[Feature #16806]: https://bugs.ruby-lang.org/issues/16806
|
2021-01-02 02:42:45 -05:00
|
|
|
[Feature #17312]: https://bugs.ruby-lang.org/issues/17312
|
2021-02-11 05:14:18 -05:00
|
|
|
[Feature #17327]: https://bugs.ruby-lang.org/issues/17327
|
2021-01-14 14:59:25 -05:00
|
|
|
[Bug #17423]: https://bugs.ruby-lang.org/issues/17423
|
2021-02-15 02:06:43 -05:00
|
|
|
[Feature #17479]: https://bugs.ruby-lang.org/issues/17479
|