@@ -64,6 +64,12 @@ Note: We're only listing outstanding class updates.
6464 Also, `Binding#local_variable_get` and `Binding#local_variable_set` reject
6565 to handle numbered parameters. [[Bug #21049]]
6666
67+ * File
68+
69+ * `File::Stat#birthtime` is now available on Linux via the statx
70+ system call when supported by the kernel and filesystem.
71+ [[Feature #21205]]
72+
6773* IO
6874
6975 * `IO.select` accepts `Float::INFINITY` as a timeout argument.
@@ -76,10 +82,20 @@ Note: We're only listing outstanding class updates.
7682
7783 * `Math.log1p` and `Math.expm1` are added. [[Feature #21527]]
7884
79- * Socket
85+ * Method
8086
81- * `Socket.tcp` & `TCPSocket.new` accepts `open_timeout` as a keyword argument to specify
82- the timeout for the initial connection. [[Feature #21347]]
87+ * `Method#source_location`, `Proc#source_location`, and
88+ `UnboundMethod#source_location` now return extended location
89+ information with 5 elements: `[path, start_line, start_column,
90+ end_line, end_column]`. The previous 2-element format `[path,
91+ line]` can still be obtained by calling `.take(2)` on the result.
92+ [[Feature #6012]]
93+
94+ * Proc
95+
96+ * `Proc#parameters` now shows anonymous optional parameters as `[:opt]`
97+ instead of `[:opt, nil]`, making the output consistent with when the
98+ anonymous parameter is required. [[Bug #20974]]
8399
84100* Ractor
85101
@@ -127,11 +143,41 @@ Note: We're only listing outstanding class updates.
127143 to make shareable Proc or lambda.
128144 [[Feature #21550]], [[Feature #21557]]
129145
146+ * Range
147+
148+ * `Range#to_set` and `Enumerator#to_set` now perform size checks to prevent
149+ issues with endless ranges. [[Bug #21654]]
150+
151+ * `Range#overlap?` now correctly handles infinite (unbounded) ranges.
152+ [[Bug #21185]]
153+
154+ * `Range#max` behavior on beginless integer ranges has been fixed.
155+ [[Bug #21174]] [[Bug #21175]]
156+
157+ * Ruby
158+
159+ * A new toplevel module `Ruby` has been defined, which contains
160+ Ruby-related constants. This module was reserved in Ruby 3.4
161+ and is now officially defined. [[Feature #20884]]
162+
130163* `Set`
131164
132165 * `Set` is now a core class, instead of an autoloaded stdlib class.
133166 [[Feature #21216]]
134167
168+ * `Set#inspect` now returns a string suitable for `eval`, using the
169+ `Set[]` syntax (e.g., `Set[1, 2, 3]` instead of
170+ `#<Set: {1, 2, 3}>`). This makes it consistent with other core
171+ collection classes like Array and Hash. [[Feature #21389]]
172+
173+ * Passing arguments to `Set#to_set` and `Enumerable#to_set` is now deprecated.
174+ [[Feature #21390]]
175+
176+ * Socket
177+
178+ * `Socket.tcp` & `TCPSocket.new` accepts an `open_timeout` keyword argument to specify
179+ the timeout for the initial connection. [[Feature #21347]]
180+
135181* String
136182
137183 * Update Unicode to Version 17.0.0 and Emoji Version 17.0.
@@ -240,6 +286,11 @@ The following bundled gems are updated.
240286
241287## Supported platforms
242288
289+ * Windows
290+
291+ * Dropped support for MSVC versions older than 14.0 (_MSC_VER 1900).
292+ This means Visual Studio 2015 or later is now required.
293+
243294## Compatibility issues
244295
245296* The following methods were removed from Ractor due to the addition of `Ractor::Port`:
@@ -253,6 +304,14 @@ The following bundled gems are updated.
253304
254305* `ObjectSpace._id2ref` is deprecated. [[Feature #15408]]
255306
307+ * `Process::Status#&` and `Process::Status#>>` have been removed.
308+ They were deprecated in Ruby 3.3. [[Bug #19868]]
309+
310+ * `rb_path_check` has been removed. This function was used for
311+ `$SAFE` path checking which was removed in Ruby 2.7,
312+ and was already deprecated,.
313+ [[Feature #20971]]
314+
256315## Stdlib compatibility issues
257316
258317* CGI library is removed from the default gems. Now we only provide `cgi/escape` for
@@ -320,17 +379,26 @@ A lot of work has gone into making Ractors more stable, performant, and usable.
320379 * `--rjit` is removed. We will move the implementation of the third-party JIT API
321380 to the [ruby/rjit](https://github.com/ruby/rjit) repository.
322381
382+ [Feature #6012]: https://bugs.ruby-lang.org/issues/6012
323383[Feature #15408]: https://bugs.ruby-lang.org/issues/15408
324384[Feature #17473]: https://bugs.ruby-lang.org/issues/17473
325385[Feature #18455]: https://bugs.ruby-lang.org/issues/18455
326386[Feature #19630]: https://bugs.ruby-lang.org/issues/19630
387+ [Bug #19868]: https://bugs.ruby-lang.org/issues/19868
327388[Feature #19908]: https://bugs.ruby-lang.org/issues/19908
328389[Feature #20610]: https://bugs.ruby-lang.org/issues/20610
329390[Feature #20724]: https://bugs.ruby-lang.org/issues/20724
391+ [Feature #20884]: https://bugs.ruby-lang.org/issues/20884
330392[Feature #20925]: https://bugs.ruby-lang.org/issues/20925
393+ [Feature #20971]: https://bugs.ruby-lang.org/issues/20971
394+ [Bug #20974]: https://bugs.ruby-lang.org/issues/20974
331395[Feature #21047]: https://bugs.ruby-lang.org/issues/21047
332396[Bug #21049]: https://bugs.ruby-lang.org/issues/21049
333397[Feature #21166]: https://bugs.ruby-lang.org/issues/21166
398+ [Bug #21174]: https://bugs.ruby-lang.org/issues/21174
399+ [Bug #21175]: https://bugs.ruby-lang.org/issues/21175
400+ [Bug #21185]: https://bugs.ruby-lang.org/issues/21185
401+ [Feature #21205]: https://bugs.ruby-lang.org/issues/21205
334402[Feature #21216]: https://bugs.ruby-lang.org/issues/21216
335403[Feature #21219]: https://bugs.ruby-lang.org/issues/21219
336404[Feature #21258]: https://bugs.ruby-lang.org/issues/21258
@@ -339,6 +407,9 @@ A lot of work has gone into making Ractors more stable, performant, and usable.
339407[Feature #21287]: https://bugs.ruby-lang.org/issues/21287
340408[Feature #21347]: https://bugs.ruby-lang.org/issues/21347
341409[Feature #21360]: https://bugs.ruby-lang.org/issues/21360
410+ [Feature #21389]: https://bugs.ruby-lang.org/issues/21389
411+ [Feature #21390]: https://bugs.ruby-lang.org/issues/21390
342412[Feature #21527]: https://bugs.ruby-lang.org/issues/21527
343413[Feature #21550]: https://bugs.ruby-lang.org/issues/21550
344414[Feature #21557]: https://bugs.ruby-lang.org/issues/21557
415+ [Bug #21654]: https://bugs.ruby-lang.org/issues/21654
0 commit comments