mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	* range.c (range_init): no longer hide the user exception with a ArgumentError, just let the user exception go through. * test/ruby/test_range.rb (test_new): add tests. [Feature #7688] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			114 lines
		
	
	
	
		
			3.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
	
		
			3.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
# -*- rdoc -*-
 | 
						|
 | 
						|
= NEWS for Ruby 2.5.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 or Redmine
 | 
						|
(e.g. <tt>https://bugs.ruby-lang.org/issues/$FEATURE_OR_BUG_NUMBER</tt>)
 | 
						|
 | 
						|
== Changes since the 2.4.0 release
 | 
						|
 | 
						|
=== Language changes
 | 
						|
 | 
						|
* Top-level constant look-up is removed.  [Feature #11547]
 | 
						|
 | 
						|
* rescue/else/ensure are allowed inside do/end blocks.  [Feature #12906]
 | 
						|
 | 
						|
=== Core classes updates (outstanding ones only)
 | 
						|
 | 
						|
* Array
 | 
						|
 | 
						|
  * Array#append  [Feature #12746]
 | 
						|
  * Array#prepend  [Feature #12746]
 | 
						|
 | 
						|
* Integer
 | 
						|
 | 
						|
  * Integer.sqrt  [Feature #13219]
 | 
						|
  * Integer#step does no longer rescue exceptions when given
 | 
						|
    a step value which cannot be compared with #> to 0. [Feature #7688]
 | 
						|
 | 
						|
* IO
 | 
						|
 | 
						|
  * IO#pread  [Feature #4532]
 | 
						|
  * IO#pwrite  [Feature #4532]
 | 
						|
 | 
						|
* IOError
 | 
						|
 | 
						|
  * exception message "stream closed" is changed  [Bug #13405]
 | 
						|
 | 
						|
* Numeric
 | 
						|
 | 
						|
  * Numerical comparison operators (<,<=,>=,>) no longer rescue exceptions
 | 
						|
    of #coerce. Return nil in #coerce if the coercion is impossible.
 | 
						|
    [Feature #7688]
 | 
						|
 | 
						|
* Range
 | 
						|
  * Range#initialize no longer rescue exceptions when comparing begin and
 | 
						|
    end with #<=> and raise a "bad value for range" ArgumentError
 | 
						|
    but instead let the exception from the #<=> call go through.
 | 
						|
    [Feature #7688]
 | 
						|
 | 
						|
* Regexp
 | 
						|
  * Update Onigmo 6.1.1.
 | 
						|
    * Support absent operator https://github.com/k-takata/Onigmo/issues/82
 | 
						|
 | 
						|
* Thread
 | 
						|
 | 
						|
  * Thread#fetch  [Feature #13009]
 | 
						|
 | 
						|
* String
 | 
						|
 | 
						|
  * String#-@ deduplicates unfrozen strings.  Already-frozen
 | 
						|
    strings remain unchanged for compatibility.  [Feature #13077]
 | 
						|
  * -"literal" (String#-@) optimized to return the same object
 | 
						|
    (same as "literal".freeze in Ruby 2.1+) [Feature #13295]
 | 
						|
 | 
						|
=== Stdlib updates (outstanding ones only)
 | 
						|
 | 
						|
* Net::HTTP
 | 
						|
  * Net::HTTP#proxy_user and Net::HTTP#proxy_pass now reflects http_proxy
 | 
						|
    environment variable if the system's environment variable is multiuser
 | 
						|
    safe. [Bug #12921]
 | 
						|
 | 
						|
* RbConfig
 | 
						|
  * New constants:
 | 
						|
    * RbConfig::LIMITS is added to provide the limits of C types.
 | 
						|
 | 
						|
=== Compatibility issues (excluding feature bug fixes)
 | 
						|
 | 
						|
* Random.raw_seed renamed to become Random.urandom.  It is now
 | 
						|
  applicable to non-seeding purposes due to [Bug #9569].
 | 
						|
 | 
						|
* BasicSocket#read_nonblock and BasicSocket#write_nonblock no
 | 
						|
  longer sets the O_NONBLOCK file description flag as side effect
 | 
						|
  [Feature #13362]
 | 
						|
 | 
						|
=== Stdlib compatibility issues (excluding feature bug fixes)
 | 
						|
 | 
						|
* mathn.rb
 | 
						|
  Removed from stdlib. [Feature #10169]
 | 
						|
 | 
						|
=== C API updates
 | 
						|
 | 
						|
=== Supported platform changes
 | 
						|
 | 
						|
=== Implementation improvements
 | 
						|
 | 
						|
* (This might not be a "user visible feature change" but) Hash class's
 | 
						|
  hash function is now SipHash13. [Feature #13017]
 | 
						|
 | 
						|
* SecureRandom now prefers OS-provided sources than OpenSSL. [Bug #9569]
 | 
						|
 | 
						|
=== Miscellaneous changes
 | 
						|
 | 
						|
* configure option --with-ext now mandates its arguments.  So for
 | 
						|
  instance if you run ./configure --with-ext=openssl,+ then the
 | 
						|
  openssl library is guaranteed compiled, otherwise the build fails
 | 
						|
  abnormally.
 | 
						|
 | 
						|
  Note however to always add the ",+" at the end of the argument.
 | 
						|
  Otherwise nothing but openssl are built.  [Feature #13302]
 |