mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	[Feature #11158] * symbol.c (rb_sym_immortal_count): added to count immortal symbols. * symbol.h: ditto. * test/objspace/test_objspace.rb: add a test for this method. * NEWS: describe about this method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			170 lines
		
	
	
	
		
			5.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			170 lines
		
	
	
	
		
			5.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # -*- rdoc -*-
 | |
| 
 | |
| = NEWS for Ruby 2.3.0
 | |
| 
 | |
| This document is a list of user visible feature changes made between
 | |
| releases except for bug fixes.
 | |
| 
 | |
| Note that each entry is kept so brief that no reason behind or
 | |
| reference information is supplied with.  For a full list of changes
 | |
| with all sufficient information, see the ChangeLog file.
 | |
| 
 | |
| == Changes since the 2.2.0 release
 | |
| 
 | |
| === Language changes
 | |
| 
 | |
| === Core classes updates (outstanding ones only)
 | |
| 
 | |
| * ARGF
 | |
| 
 | |
|   * ARGF.read_nonblock supports `exception: false' like IO#read_nonblock.
 | |
|     [Feature #11358]
 | |
| 
 | |
| * Array
 | |
| 
 | |
|   * Array#bsearch_index [Feature #10730]
 | |
| 
 | |
| * Enumerable
 | |
| 
 | |
|   * Enumerable#grep_v is added as inverse version of Enumerable#grep.
 | |
|     [Feature #11049]
 | |
|   * Enumerable#chunk_while [Feature #10769]
 | |
| 
 | |
| * Hash
 | |
| 
 | |
|   * Hash#fetch_values [Feature #10017]
 | |
| 
 | |
| * IO
 | |
| 
 | |
|   * new mode flag File::SHARE_DELETE is available.
 | |
|     this flag means to permit deleting opened file on Windows, but currently
 | |
|     this affect only files opened as binary.  [Feature #11218]
 | |
| 
 | |
|   * new option parameter `flags' is added.
 | |
|     this parameter is bitwise-ORed to oflags generated by normal mode argument.
 | |
|     [Feature #11253]
 | |
| 
 | |
| * Module
 | |
|   * Module#deprecate_constant [Feature #11398]
 | |
| 
 | |
| * NameError
 | |
|   * NameError#receiver is added to take the receiver object. [Feature #10881]
 | |
| 
 | |
| * Numeric
 | |
| 
 | |
|   * Numeric#positive? and Numeric#negative? are added, which return
 | |
|     true when the receiver is positive and negative respectively.
 | |
|     [Feature #11151]
 | |
| 
 | |
| * Thread
 | |
|   * Thread#name, Thread#name= are added to handle thread names [Feature #11251]
 | |
| 
 | |
| === Core classes compatibility issues (excluding feature bug fixes)
 | |
| 
 | |
| * Array
 | |
|   * Array#select!, Array#keep_if, Array#reject!, and Array#delete_if
 | |
|     no longer changes the receiver array instantly every time the
 | |
|     block is called.  [Feature #10714]
 | |
| 
 | |
|   * Array#flatten and Array#flatten! no longer try to call #to_ary
 | |
|     method on elements beyond the given level.  [Bug #10748]
 | |
| 
 | |
| * Enumerable
 | |
|   * Enumerable#chunk and Enumerable#slice_before no longer takes the
 | |
|     initial_state argument.  [Feature #10958]
 | |
|     Use a local variable instead to maintain a state.
 | |
| 
 | |
| * File::Stat
 | |
|   * On Windows File::Stat#ino always returned 0, but now returns
 | |
|     BY_HANDLE_FILE_INFORMATION.nFileIndexHigh/Low.
 | |
| 
 | |
| * IO
 | |
|   * IO#close doesn't raise when the IO object is closed.  [Feature #10718]
 | |
|   * IO#each_codepoint raises an exception at incomplete character
 | |
|     before EOF when conversion takes place.  [Bug #11444]
 | |
| 
 | |
| * Module
 | |
|   * Module#define_method and Object.define_singleton_method now
 | |
|     require method body, Proc, Method, or a block, and raise
 | |
|     ArgumentError if no block is given directly.  [Bug #11283]
 | |
| 
 | |
| * pack/unpack (Array/String)
 | |
|   * j and J directives for pointer width integer type.  [Feature #11215]
 | |
| 
 | |
| 
 | |
| === Stdlib updates (outstanding ones only)
 | |
| 
 | |
| * Socket
 | |
|   * Socket#connect_nonblock, Socket#accept_nonblock,
 | |
|     TCPServer#accept_nonblock, UNIXServer#accept_nonblock,
 | |
|     BasicSocket#recv_nonblock, BasicSocket#recvmsg_nonblock,
 | |
|     BasicSocket#sendmsg_nonblock all support `exception :false` to return
 | |
|     :wait_readable or :wait_writable symbols instead of raising
 | |
|     IO::WaitReadable or IO::WaitWritable exceptions
 | |
|   * BasicSocket#recv and BasicSocket#recv_nonblock allow an output
 | |
|     String buffer argument like IO#read and IO#read_nonblock to reduce
 | |
|     GC overhead
 | |
| 
 | |
| * ObjectSpace (objspace)
 | |
|   * ObjectSpace.count_symbols is added.
 | |
|   * ObjectSpace.count_imemo_objects is added.
 | |
|   * ObjectSpace.internal_class_of is added.
 | |
|   * ObjectSpace.internal_super_of is added.
 | |
| 
 | |
| * OpenSSL
 | |
|   * OpenSSL::SSL::SSLSocket#accept_nonblock and
 | |
|     OpenSSL::SSL::SSLSocket#connect_nonblock supports `exception: false`.
 | |
| 
 | |
| * Pathname
 | |
|   * Pathname#descend and Pathname#ascend supported blockless form.
 | |
|     [Feature #11052]
 | |
| 
 | |
| * io/wait
 | |
|   * IO#wait_readable no longer checks FIONREAD, it may be used for
 | |
|     non-bytestream IO such as listen sockets.
 | |
| 
 | |
| * timeout
 | |
|   * Object#timeout is now warned as deprecated when called.
 | |
| 
 | |
| === Stdlib compatibility issues (excluding feature bug fixes)
 | |
| 
 | |
| * lib/webrick/utils.rb
 | |
|  * removed unused argument. https://github.com/ruby/ruby/pull/356
 | |
| 
 | |
| * lib/drb/drb.rb
 | |
|  * removed unused argument. https://github.com/ruby/ruby/pull/515
 | |
| 
 | |
| * lib/base64.rb
 | |
|  * Base64.urlsafe_encode64: added a "padding" option to suppress
 | |
|    the padding character ("=").
 | |
|  * Base64.urlsafe_decode64: now it accepts not only correctly-padded
 | |
|    input but also unpadded input.
 | |
| 
 | |
| * lib/matrix.rb
 | |
|  * Add Vector#round. https://github.com/ruby/ruby/pull/802
 | |
| 
 | |
| * ext/coverage/coverage.c
 | |
|   * Coverage.peek_result: new method to allow coverage to be captured without
 | |
|     stopping the coverage tool.
 | |
| 
 | |
| * Net::Telnet
 | |
|   * Net::Telnet is extracted to net-telnet gem. It's unmaintain code.
 | |
| 
 | |
| * Rake
 | |
|   * Rake is removed from stdlib.
 | |
| 
 | |
| === Built-in global variables compatibility issues
 | |
| 
 | |
| * $SAFE
 | |
|   * $SAFE=2 and $SAFE=3 are obsolete.  If $SAFE is set to 2 or larger,
 | |
|     an ArgumentError is raised.  [Feature #5455]
 | |
| 
 | |
| === C API updates
 | |
| 
 | |
| * rb_define_class_id_under() now raises a TypeError exception when the
 | |
|   class is already defined but its superclass does not match the given
 | |
|   superclass, as well as definitions in ruby level.
 | |
| 
 | |
| === Build system updates
 | |
| 
 | |
| === Implementation changes
 |