[前][次][番号順一覧][スレッド一覧]

ruby-changes:63879

From: Jeremy <ko1@a...>
Date: Fri, 4 Dec 2020 02:08:27 +0900 (JST)
Subject: [ruby-changes:63879] b60eaea8e5 (master): Update NEWS [ci skip]

https://git.ruby-lang.org/ruby.git/commit/?id=b60eaea8e5

From b60eaea8e54fb003a79a5a165c6ee55d653322f6 Mon Sep 17 00:00:00 2001
From: Jeremy Evans <code@j...>
Date: Thu, 3 Dec 2020 09:02:42 -0800
Subject: Update NEWS [ci skip]

Make core class updates section use a consistent format. Alphabetize
core class updates section by class name, and stdlib updates section
by library name.  Minor formatting changes while here.

diff --git a/NEWS.md b/NEWS.md
index 43ad2e9..fb11294 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -120,105 +120,113 @@ Outstanding ones only. https://github.com/ruby/ruby/blob/trunk/NEWS.md#L120
 
 * Array
 
-    * Modified methods
-
-        * The following methods now return Array instances instead of
-          subclass instances when called on subclass instances:
-          [[Bug #6087]]
-
-            * `Array#drop`
-            * `Array#drop_while`
-            * `Array#flatten`
-            * `Array#slice!`
-            * `Array#slice/#[]`
-            * `Array#take`
-            * `Array#take_while`
-            * `Array#uniq`
-            * `Array#*`
+    * The following methods now return Array instances instead of
+      subclass instances when called on subclass instances:
+      [[Bug #6087]]
+
+        * `Array#drop`
+        * `Array#drop_while`
+        * `Array#flatten`
+        * `Array#slice!`
+        * `Array#slice/#[]`
+        * `Array#take`
+        * `Array#take_while`
+        * `Array#uniq`
+        * `Array#*`
 
-* Dir
+* ConditionVariable
+
+    * `ConditionVariable#wait` may now invoke the `block`/`unblock` scheduler
+      hooks in a non-blocking context. [[Feature #16786]]
 
-    * Modified method
+* Dir
 
-        * Dir.glob and Dir.[] now sort the results by default, and
-          accept `sort:` keyword option.  [[Feature #8709]]
+    * `Dir.glob` and `Dir.[]` now sort the results by default, and
+      accept `sort:` keyword option.  [[Feature #8709]]
 
 * ENV
 
-    * New method
-
-        * ENV.except, which returns a hash excluding the given keys
-          and their values.  [[Feature #15822]]
+    * `ENV.except` has been added, which returns a hash excluding the
+      given keys and their values.  [[Feature #15822]]
 
 * Encoding
 
-    * New encoding
+    * Added new encoding IBM720.  [[Feature #16233]]
 
-        * Added new encoding IBM720.  [[Feature #16233]]
+* Fiber
 
-* Hash
+    * `Fiber.new(blocking: true/false)` allows you to create non-blocking
+      execution contexts. [[Feature #16786]]
 
-    * Modified method
+    * `Fiber#blocking?` tells whether the fiber is non-blocking. [[Feature #16786]]
 
-        * Hash#transform_keys now accepts a hash that maps keys to new
-          keys.  [[Feature #16274]]
+    * `Fiber#backtrace` & `Fiber#backtrace_locations` provide per-fiber backtrace.
+      [[Feature #16815]]
 
-    * New method
+    * The limitation of `Fiber#transfer` is relaxed. [Bug #17221]
 
-        * Hash#except, which returns a hash excluding the given keys
-          and their values.  [[Feature #15822]]
+* GC
 
-* Kernel
+    * `GC.auto_compact=` and `GC.auto_compact` have been added to control
+      when compaction runs.  Setting `auto_compact=` to true will cause
+      compaction to occur during major collections.  At the moment,
+      compaction adds significant overhead to major collections, so please
+      test first!  [[Feature #17176]]
 
-    * Modified method
+* Hash
 
-        * Kernel#clone when called with `freeze: false` keyword will call
-          `#initialize_clone` with the `freeze: false` keyword.
-          [[Bug #14266]]
+    * `Hash#transform_keys` now accepts a hash that maps keys to new
+      keys.  [[Feature #16274]]
 
-        * Kernel#clone when called with `freeze: true` keyword will call
-          `#initialize_clone` with the `freeze: true` keyword, and will
-          return a frozen copy even if the receiver is unfrozen.
-          [[Feature #16175]]
+    * `Hash#except` has been added, which returns a hash excluding the
+      given keys and their values.  [[Feature #15822]]
 
-        * Kernel#eval when called with two arguments will use "(eval)"
-          for `__FILE__` and 1 for `__LINE__` in the evaluated code.
-          [[Bug #4352]]
+* IO
 
-        * Kernel#lambda now warns if called without a literal block.
-          [[Feature #15973]]
+    * `IO#nonblock?` now defaults to `true`. [[Feature #16786]]
 
-* Module
+    * `IO#wait_readable`, `IO#wait_writable`, `IO#read`, `IO#write` and other
+      related methods (e.g. `#puts`, `#gets`) may invoke the scheduler hook
+      `#io_wait(io, events, timeout)` in a non-blocking execution context.
+      [[Feature #16786]]
 
-    * Modified method
+* Kernel
 
-        * Module#include and #prepend now affect classes and modules that
-          have already included or prepended the receiver, mirroring the
-          behavior if the arguments were included in the receiver before
-          the other modules and classes included or prepended the receiver.
-          [[Feature #9573]]
+    * `Kernel#clone` when called with `freeze: false` keyword will call
+      `#initialize_clone` with the `freeze: false` keyword.
+      [[Bug #14266]]
 
-            ```ruby
-            class C; end
-            module M1; end
-            module M2; end
-            C.include M1
-            M1.include M2
-            p C.ancestors #=> [C, M1, M2, Object, Kernel, BasicObject]
-            ```
+    * `Kernel#clone` when called with `freeze: true` keyword will call
+      `#initialize_clone` with the `freeze: true` keyword, and will
+      return a frozen copy even if the receiver is unfrozen.
+      [[Feature #16175]]
 
-* Thread
+    * `Kernel#eval` when called with two arguments will use "(eval)"
+      for `__FILE__` and 1 for `__LINE__` in the evaluated code.
+      [[Bug #4352]]
 
-    * Introduce `Fiber.set_scheduler` for intercepting blocking operations and
-      `Fiber.scheduler` for accessing the current scheduler. See
-      doc/scheduler.md for more details. [[Feature #16786]]
-    * `Fiber.blocking?` tells whether the current execution context is
-      blocking. [[Feature #16786]]
-    * `Thread#join` invokes the scheduler hooks `block`/`unblock` in a
+    * `Kernel#lambda` now warns if called without a literal block.
+      [[Feature #15973]]
+
+    * `Kernel.sleep(...)` invokes the scheduler hook `#kernel_sleep(...)` in a
       non-blocking execution context. [[Feature #16786]]
-    * `Thread.ignore_deadlock` accessor for disabling the default deadlock
-      detection, allowing the use of signal handlers to break deadlock.
-      [[Bug #13768]]
+
+* Module
+
+    * `Module#include` and `#prepend` now affect classes and modules that
+      have already included or prepended the receiver, mirroring the
+      behavior if the arguments were included in the receiver before
+      the other modules and classes included or prepended the receiver.
+      [[Feature #9573]]
+
+        ```ruby
+        class C; end
+        module M1; end
+        module M2; end
+        C.include M1
+        M1.include M2
+        p C.ancestors #=> [C, M1, M2, Object, Kernel, BasicObject]
+        ```
 
 * Mutex
 
@@ -226,39 +234,12 @@ Outstanding ones only. https://github.com/ruby/ruby/blob/trunk/NEWS.md#L234
       should be compatible for essentially all usages and avoids blocking when
       using a scheduler. [[Feature #16792]]
 
-* Fiber
-
-    * `Fiber.new(blocking: true/false)` allows you to create non-blocking
-      execution contexts. [[Feature #16786]]
-    * `Fiber#blocking?` tells whether the fiber is non-blocking. [[Feature #16786]]
-    * `Fiber#backtrace` & `Fiber#backtrace_locations` provide per-fiber backtrace.
-      [[Feature #16815]]
-    * The limitation of `Fiber#transfer` is relaxed. [Bug #17221]
-
-* Kernel
-
-    * `Kernel.sleep(...)` invokes the scheduler hook `#kernel_sleep(...)` in a
-      non-blocking execution context. [[Feature #16786]]
-
 * Proc
 
     * `Proc#==` and `Proc#eql?` are now defined and will return true for
       separate Proc instances if the procs were created from the same block.
       [[Feature #14267]]
 
-* IO
-
-    * `IO#nonblock?` now defaults to `true`. [[Feature #16786]]
-    * `IO#wait_readable`, `IO#wait_writable`, `IO#read`, `IO#write` and other
-      related methods (e.g. `#puts`, `#gets`) may invoke the scheduler hook
-      `#io_wait(io, events, timeout)` in a non-blocking execution context.
-      [[Feature #16786]]
-
-* ConditionVariable
-
-    * `ConditionVariable#wait` may now invoke the `block`/`unblock` scheduler
-      hooks in a non-blocking context. [[Feature #16786]]
-
 * Queue / SizedQueue
 
     * `Queue#pop`, `SizedQueue#push` and related methods may now invoke the
@@ -267,123 +248,128 @@ Outstanding ones only. https://github.com/ruby/ruby/blob/trunk/NEWS.md#L248
 
 * Ractor
 
-    * new class to enable parallel execution. See doc/ractor.md for
+    * New class added to enable parallel execution. See doc/ractor.md for
       more details.
 
-* Symbol
+* String
 
-    * Modified method
+    * The following methods now return or yield String instances
+      instead of subclass instances when called on subclass instances:
+      [[Bug #10845]]
+
+        * `String#*`
+        * `String#capitalize`
+        * `String#center`
+        * `String#chomp`
+        * `String#chop`
+        * `String#delete`
+        * `String#delete_prefix`
+        * `String#delete_suffix`
+        * `String#downcase`
+        * `String#dump`
+        * `String#each_char`
+        * `String#each_grapheme_cluster`
+        * `String#each_line`
+        * `String#gsub`
+        * `String#ljust`
+        * `String#lstrip`
+        * `String#partition`
+        * `String#reverse`
+        * `String#rjust`
+        * `String#rpartition`
+        * `String#rstrip`
+        * `String#scrub`
+        * `String#slice!`
+        * `String#slice/#[]`
+        * `String#split`
+        * `String#squeeze`
+        * `String#strip`
+        * `String#sub`
+        * `String#su (... truncated)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]