⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.93
Server IP:
65.108.141.171
Server:
Linux server.heloix.com 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
ri
/
2.7.0
/
system
/
View File Name :
page-NEWS-2_6_0.ri
U:RDoc::TopLevel[ i I"NEWS-2.6.0:EFcRDoc::Parser::Simpleo:RDoc::Markup::Document:@parts[#S:RDoc::Markup::Heading: leveli: textI"NEWS for Ruby 2.6.0;To:RDoc::Markup::BlankLine o: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"NNote that each entry is kept so brief that no reason behind or reference ;TI"Hinformation is supplied with. For a full list of changes with all ;TI"?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.5.0 release;T@ S; ; i;I"Language changes;T@ o:RDoc::Markup::List: @type:BULLET:@items[o:RDoc::Markup::ListItem:@label0;[o; ;[I"a<code>$SAFE</code> now is a process global state and can be set to 0 again. [Feature #14250];T@ o;;0;[o; ;[I"?Refinements take place at block passing. [Feature #14223];T@ o;;0;[o; ;[I"DRefinements take place at Kernel#public_send. [Feature #15326];T@ o;;0;[o; ;[I"DRefinements take place at Kernel#respond_to?. [Feature #15327];T@ o;;0;[o; ;[I"X+else+ without +rescue+ now causes a syntax error. [EXPERIMENTAL] [Feature #14606];T@ o;;0;[o; ;[I"OConstant names may start with a non-ASCII capital letter. [Feature #13770];T@ o;;0;[ o; ;[I"JEndless ranges are introduced. You can use a Range that has no end, ;TI"Rlike <code>(0..)</code> (or similarly <code>(0...)</code>). [Feature #12912];T@ o; ;[I"+The following shows typical use cases:;T@ o:RDoc::Markup::Verbatim;[I"Eary[1..] # identical to ary[1..-1] ;TI"H(1...).each {|index| block } # infinite loop from index 1 ;TI"Hary.zip(1..) {|elem, index| block } # ary.each.with_index(1) { } ;T:@format0o;;0;[o; ;[I"DNon-Symbol keys in a keyword arguments hash cause an exception.;T@ o;;0;[ o; ;[I"OThe "shadowing outer local variable" warning is removed. [Feature #12490];T@ o; ;[I"5You can now write the following without warning:;T@ o;;[I",user = users.find {|user| cond(user) } ;T;0o;;0;[o; ;[I"OPrint +cause+ of the exception if the exception is not caught and printed ;TI"6its backtraces and error message. [Feature #8257];T@ o;;0;[o; ;[I"8The flip-flop syntax is deprecated. [Feature #5400];T@ S; ; i;I"1Core classes updates (outstanding ones only);T@ o;;: NOTE;[$o;;[I" Array;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"OAdded Array#union and Array#difference instance methods. [Feature #14097];T@ o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I"`Array#to_h now accepts a block that maps elements to new key/value pairs. [Feature #15143];T@ o;;[I"Aliased methods;T;[o;;;;[o;;0;[o; ;[I"CArray#filter is a new alias for Array#select. [Feature #13784];To;;0;[o; ;[I"EArray#filter! is a new alias for Array#select!. [Feature #13784];T@ o;;[I"Binding;T;[o;;;;[o;;[I"New method;T;[o;;;;[o;;0;[ o; ;[I"5Added Binding#source_location. [Feature #14230];T@ o; ;[I"IThis method returns the source location of the binding, a 2-element ;TI"?array of <code>__FILE__</code> and <code>__LINE__</code>. ;TI"?Traditionally, the same information could be retrieved by ;TI"D<code>eval("[__FILE__, __LINE__]", binding)</code>, but we are ;TI"Bplanning to change this behavior so that Kernel#eval ignores ;TI"Gbinding's source location [Bug #4352]. So, users should use this ;TI"4newly-introduced method instead of Kernel#eval.;T@ o;;[I"Dir;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"MAdded Dir#each_child and Dir#children instance methods. [Feature #13969];T@ o;;[I"Enumerable;T;[o;;;;[o;;[I"New method;T;[o;;;;[o;;0;[o; ;[I"JEnumerable#chain returns an enumerator object that iterates over the ;TI">elements of the receiver and then those of each argument ;TI"#in sequence. [Feature #15144];T@ o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I"eEnumerable#to_h now accepts a block that maps elements to new key/value pairs. [Feature #15143];T@ o;;[I"Aliased method;T;[o;;;;[o;;0;[o; ;[I"MEnumerable#filter is a new alias for Enumerable#select. [Feature #13784];T@ o;;[I"#Enumerator::ArithmeticSequence;T;[o;;;;[o;;0;[o; ;[ I"MThis is a new class to represent a generator of an arithmetic sequence, ;TI"Nthat is a number sequence defined by a common difference. It can be used ;TI"Hfor representing what is similar to Python's slice. You can get an ;TI"=instance of this class from Numeric#step and Range#step.;T@ o;;[I"Enumerator::Chain;T;[o;;;;[o;;0;[o; ;[I"MThis is a new class to represent a chain of enumerables that works as a ;TI"Jsingle enumerator, generated by such methods as Enumerable#chain and ;TI"Enumerator#+.;T@ o;;[I"Enumerator::Lazy;T;[o;;;;[o;;[I"Aliased method;T;[o;;;;[o;;0;[o; ;[I"0Enumerator::Lazy#filter is a new alias for ;TI"/Enumerator::Lazy#select. [Feature #13784];T@ o;;[I"Enumerator;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"FEnumerator#+ returns an enumerator object that iterates over the ;TI"Telements of the receiver and then those of the other operand. [Feature #15144];T@ o;;[I"ENV;T;[o;;;;[o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I"fENV.to_h now accepts a block that maps names and values to new keys and values. [Feature #15143];T@ o;;[I"Exception;T;[o;;;;[o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"<Exception#full_message takes +:highlight+ and +:order+ ;TI"options. [Bug #14324];T@ o;;[I" Hash;T;[o;;;;[o;;[I"Modified methods;T;[o;;;;[o;;0;[o; ;[I"BHash#merge, Hash#merge!, and Hash#update now accept multiple ;TI"!arguments. [Feature #15111];T@ o;;0;[o; ;[I"fHash#to_h now accepts a block that maps keys and values to new keys and values. [Feature #15143];T@ o;;[I"Aliased methods;T;[o;;;;[o;;0;[o; ;[I"BHash#filter is a new alias for Hash#select. [Feature #13784];T@ o;;0;[o; ;[I"CHash#filter! is a new alias for Hash#select!. [Feature #13784];T@ o;;[I"IO;T;[o;;;;[o;;[I"New option;T;[o;;;;[o;;0;[o; ;[I"KAdded new mode character <code>'x'</code> to open files for exclusive ;TI"access. [Feature #11258];T@ o;;[I"Kernel;T;[o;;;;[o;;[I"Aliased method;T;[o;;;;[o;;0;[o; ;[I"GKernel#then is a new alias for Kernel#yield_self. [Feature #14594];T@ o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"7Kernel#Complex, Kernel#Float, Kernel#Integer, and ;TI"GKernel#Rational take an +:exception+ option to specify the way of ;TI"&error handling. [Feature #12732];T@ o;;0;[o; ;[I"FKernel#system takes an +:exception+ option to raise an exception ;TI""on failure. [Feature #14386];T@ o;;[I"Incompatible changes;T;[o;;;;[o;;0;[o; ;[ I"NKernel#system and Kernel#exec do not close non-standard file descriptors ;TI"G(the default of the +:close_others+ option is changed to +false+, ;TI">but we still set the +FD_CLOEXEC+ flag on descriptors we ;TI"create). [Misc #14907];T@ o;;[I" KeyError;T;[o;;;;[o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"MKeyError.new accepts +:receiver+ and +:key+ options to set receiver and ;TI"(key in Ruby code. [Feature #14313];T@ o;;[I"Method;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"IAdded Method#<< and Method#>> for Proc composition. [Feature #6284];T@ o;;[I"Module;T;[o;;;;[o;;[I"Modified methods;T;[o;;;;[o;;0;[o; ;[ I"AModule#method_defined?, Module#private_method_defined?, and ;TI"<Module#protected_method_defined? now accept the second ;TI"Kparameter as optional. If it is +true+ (the default value), it checks ;TI"Pancestor modules/classes, or checks only the class itself. [Feature #14944];T@ o;;[I"NameError;T;[o;;;;[o;;[I"New option;T;[o;;;;[o;;0;[o; ;[I"HNameError.new accepts a +:receiver+ option to set receiver in Ruby ;TI"code. [Feature #14313];T@ o;;[I" NilClass;T;[o;;;;[o;;[I"New method;T;[o;;;;[o;;0;[o; ;[I">NilClass#=~ is added for compatibility. [Feature #15231];T@ o;;[I"NoMethodError;T;[o;;;;[o;;[I"New option;T;[o;;;;[o;;0;[o; ;[I"LNoMethodError.new accepts a +:receiver+ option to set receiver in Ruby ;TI"code. [Feature #14313];T@ o;;[I"Numeric;T;[o;;;;[o;;[I"Incompatible changes;T;[o;;;;[o;;0;[o; ;[I"PNumeric#step now returns an instance of the Enumerator::ArithmeticSequence ;TI"3class rather than one of the Enumerator class.;T@ o;;[I"OpenStruct;T;[o;;;;[o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I"lOpenStruct#to_h now accepts a block that maps keys and values to new keys and values. [Feature #15143];T@ o;;[I" Proc;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"EAdded Proc#<< and Proc#>> for Proc composition. [Feature #6284];T@ o;;[I"Incompatible changes;T;[o;;;;[o;;0;[o; ;[I"LProc#call doesn't change <code>$SAFE</code> any more. [Feature #14250];T@ o;;[I"Random;T;[o;;;;[o;;[I"New method;T;[o;;;;[o;;0;[o; ;[I")Added Random.bytes. [Feature #4938];T@ o;;[I" Range;T;[o;;;;[o;;[I"New method;T;[o;;;;[o;;0;[o; ;[I"5Added Range#% instance method. [Feature #14697];T@ o;;[I"Incompatible changes;T;[o;;;;[o;;0;[o; ;[I"YRange#=== now uses the +#cover?+ instead of the +#include?+ method. [Feature #14575];To;;0;[o; ;[I">Range#cover? now accepts a Range object. [Feature #14473];To;;0;[o; ;[I"NRange#step now returns an instance of the Enumerator::ArithmeticSequence ;TI"3class rather than one of the Enumerator class.;T@ o;;[I"Regexp/String;T;[o;;;;[o;;0;[ o; ;[I"CUpdate Unicode version from 10.0.0 to 11.0.0. [Feature #14802];T@ o; ;[I"FThis includes a rewrite of the grapheme cluster (/\X/) algorithm ;TI"Aand special-casing for Georgian MTAVRULI on String#downcase.;T@ o;;0;[o; ;[I"=Update Emoji version from 5.0 to 11.0.0 [Feature #14802];T@ o;;[I"RubyVM::AbstractSyntaxTree;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"LRubyVM::AbstractSyntaxTree.parse parses a given string and returns AST ;TI"nodes. [experimental];T@ o;;0;[o; ;[I"ORubyVM::AbstractSyntaxTree.parse_file parses a given file and returns AST ;TI"nodes. [experimental];T@ o;;0;[o; ;[I"JRubyVM::AbstractSyntaxTree.of returns AST nodes of the given proc or ;TI"method. [experimental];T@ o;;[I"RubyVM;T;[o;;;;[o;;[I"New method;T;[o;;;;[o;;0;[o; ;[I"LRubyVM.resolve_feature_path identifies the file that will be loaded by ;TI"8"require(feature)". [experimental] [Feature #15230];T@ o;;[I"String;T;[o;;;;[o;;0;[o; ;[I"5String#crypt is now deprecated. [Feature #14915];T@ o;;;;[o;;[I"New features;T;[o;;;;[o;;0;[o; ;[I"NString#split yields each substring to the block if given. [Feature #4780];T@ o;;[I"Struct;T;[o;;;;[o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I"hStruct#to_h now accepts a block that maps keys and values to new keys and values. [Feature #15143];T@ o;;[I"Aliased method;T;[o;;;;[o;;0;[o; ;[I"EStruct#filter is a new alias for Struct#select. [Feature #13784];T@ o;;[I" Time;T;[o;;;;[o;;[I"New features;T;[o;;;;[o;;0;[o; ;[I"DTime.new and Time#getlocal accept a timezone object as well as ;TI"Fa UTC offset string. Time#+, Time#-, and Time#succ also preserve ;TI"$the timezone. [Feature #14850];T@ o;;[I"TracePoint;T;[o;;;;[o;;[I"New features;T;[o;;;;[o;;0;[o; ;[I";"script_compiled" event is supported. [Feature #15287];T@ o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"+TracePoint#parameters [Feature #14694];T@ o;;0;[o; ;[I"5TracePoint#instruction_sequence [Feature #15287];T@ o;;0;[o; ;[I",TracePoint#eval_script [Feature #15287];T@ o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I":TracePoint#enable accepts new keywords "target:" and ;TI"&"target_line:". [Feature #15289];T@ S; ; i;I"+Stdlib updates (outstanding ones only);T@ o;;;;[o;;[I"BigDecimal;T;[o; ;[I"KUpdate to version 1.4.0. This version includes several compatibility ;TI"@issues, see Compatibility issues section below for details.;T@ o;;;;[o;;[I"Modified method;T;[o;;;;[o;;0;[o; ;[I"JBigDecimal() accepts the new keyword "exception:" similar to Float().;T@ o;;[I"3Note for the differences among recent versions;T;[o; ;[I"RYou should want to know the differences among recent versions of bigdecimal. ;TI"QPlease select the suitable version of bigdecimal according to the following ;TI"information.;T@ o;;;;[o;;0;[o; ;[I"M1.3.5 has BigDecimal.new without "exception:" keyword. You can see the ;TI"Ideprecation warning of BigDecimal.new when you specify "-w" option. ;TI"HBigDecimal(), BigDecimal.new, and Object#to_d methods are the same.;T@ o;;0;[o; ;[I"M1.4.0 has BigDecimal.new with "exception:" keyword. You always see the ;TI"Mdeprecation warning of BigDecimal.new. Object#to_d method is different ;TI"*from BigDecimal() and BigDecimal.new.;T@ o;;0;[o; ;[I"K2.0.0 will be released soon after releasing Ruby 2.6.0. This version ;TI"-will not have the BigDecimal.new method.;T@ o;;[I"Bundler;T;[o;;;;[o;;0;[o; ;[I"6Add Bundler to Standard Library. [Feature #12733];T@ o;;0;[o; ;[I"+Use 1.17.2, the latest stable version.;T@ o;;[I" Coverage;T;[ o; ;[I"5A oneshot_lines mode is added. [Feature #15022];T@ o; ;[ I"MThis mode checks "whether each line was executed at least once or not", ;TI"9instead of "how many times each line was executed". ;TI"GA hook for each line is fired at most once, and after it is fired ;TI"@the hook flag is removed, i.e., it runs with zero overhead.;T@ o;;;;[o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"=Add +:oneshot_lines+ keyword argument to Coverage.start.;T@ o;;0;[o; ;[I"DAdd +:stop+ and +:clear+ keyword arguments to Coverage.result. ;TI"9If +clear+ is true, it clears the counters to zero. ;TI"9If +stop+ is true, it disables coverage measurement.;T@ o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"@Coverage.line_stub, which is a simple helper function that ;TI"Bcreates the "stub" of line coverage from a given source code.;T@ o;;[I"CSV;T;[o;;;;[o;;0;[o; ;[I"IUpgrade to 3.0.2. This includes performance improvements especially ;TI"3for writing. Writing is about 2 times faster. ;TI"9See https://github.com/ruby/csv/blob/master/NEWS.md.;T@ o;;[I"ERB;T;[o;;;;[o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"CAdd +:trim_mode+ and +:eoutvar+ keyword arguments to ERB.new. ;TI"NNow non-keyword arguments other than the first one are softly deprecated ;TI"Dand will be removed when Ruby 2.5 becomes EOL. [Feature #14256];T@ o;;0;[o; ;[I"Ierb command's <tt>-S</tt> option is deprecated, and will be removed ;TI"in the next version.;T@ o;;[I"FileUtils;T;[o;;;;[o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"&FileUtils#cp_lr. [Feature #4189];T@ o;;[I"Matrix;T;[o;;;;[o;;[I"New methods;T;[o;;;;[ o;;0;[o; ;[I"2Matrix#antisymmetric?, Matrix#skew_symmetric?;T@ o;;0;[o; ;[I"2Matrix#map!, Matrix#collect! [Feature #14151];T@ o;;0;[o; ;[I"Matrix#[]=;T@ o;;0;[o; ;[I"!Vector#map!, Vector#collect!;T@ o;;0;[o; ;[I"Vector#[]=;T@ o;;[I"Net;T;[o;;;;[o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"MAdd +:write_timeout+ keyword argument to Net::HTTP.new. [Feature #13396];T@ o;;[I"New methods;T;[o;;;;[o;;0;[o; ;[I"PAdd Net::HTTP#write_timeout and Net::HTTP#write_timeout=. [Feature #13396];T@ o;;[I"New constant;T;[o;;;;[o;;0;[o; ;[I"IAdd Net::HTTPClientException to deprecate Net::HTTPServerException, ;TI",whose name is misleading. [Bug #14688];T@ o;;[I"NKF;T;[o;;;;[o;;0;[o; ;[I"Upgrade to nkf v2.1.5;T@ o;;[I" Psych;T;[o;;;;[o;;0;[o; ;[I"Upgrade to Psych 3.1.0;T@ o;;[I" RDoc;T;[o;;;;[ o;;0;[o; ;[I"!Become about 2 times faster.;T@ o;;0;[o; ;[I"-Use SOURCE_DATE_EPOCH to generate files.;T@ o;;0;[o; ;[I"-Fix method line number that slipped off.;T@ o;;0;[o; ;[I":Enable <code>--width</code>, <code>--exclude</code>, ;TI"7and <code>--line-numbers</code> that were ignored.;T@ o;;0;[o; ;[I"DAdd support for blockquote by ">>>" in default markup notation.;T@ o;;0;[o; ;[I"7Add support for "Raises" lines in TomDoc notation.;T@ o;;0;[o; ;[I"Fix syntax error output.;T@ o;;0;[o; ;[I"Fix many parsing bugs.;T@ o;;[I" REXML;T;[o;;;;[o;;0;[o; ;[I"Upgrade to REXML 3.1.9. ;TI";See https://github.com/ruby/rexml/blob/master/NEWS.md.;T@ o;;;;[o;;[I"(Improved some XPath implementations;T;[o;;;;[ o;;0;[o; ;[I"R<code>concat()</code> function: Stringify all arguments before concatenating.;T@ o;;0;[o; ;[I":<code>string()</code> function: Support context node.;T@ o;;0;[o; ;[I"I<code>string()</code> function: Support processing instruction node.;T@ o;;0;[o; ;[I"BSupport <code>"*:#{ELEMENT_NAME}"</code> syntax in XPath 2.0.;T@ o;;[I"%Fixed some XPath implementations;T;[o;;;;[o;;0;[o; ;[I"7<code>"//#{ELEMENT_NAME}[#{POSITION}]"</code> case;T@ o;;0;[o; ;[I"I<code>string()</code> function: Fix <code>function(document)</code> ;TI"1returns nodes that are out of root elements.;T@ o;;0;[o; ;[I"+<code>"/ #{ELEMENT_NAME} "</code> case;T@ o;;0;[o; ;[I";<code>"/ #{ELEMENT_NAME} [ #{PREDICATE} ]"</code> case;T@ o;;0;[o; ;[I"3<code>"/ #{AXIS}::#{ELEMENT_NAME}"</code> case;T@ o;;0;[o; ;[I"K<code>"#{N}-#{M}"</code> case: One or more white spaces were required ;TI"before <code>"-"</code>;T@ o;;0;[o; ;[I"'<code>"/child::node()"</code> case;T@ o;;0;[o; ;[I".<code>"#{FUNCTION}()/#{PATH}"</code> case;T@ o;;0;[o; ;[I"/<code>"@#{ATTRIBUTE}/parent::"</code> case;T@ o;;0;[o; ;[I"*<code>"name(#{NODE_SET})"</code> case;T@ o;;[I"RSS;T;[o;;;;[o;;[I"New options;T;[o;;;;[o;;0;[o; ;[I"BRSS::Parser.parse now accepts options as Hash. +:validate+ , ;TI"G+:ignore_unknown_element+ , +:parser_class+ options are available.;T@ o;;[I" RubyGems;T;[o;;;;[o;;0;[o; ;[I"Upgrade to RubyGems 3.0.1;T@ o;;0;[o; ;[I"=https://blog.rubygems.org/2018/12/19/3.0.0-released.html;T@ o;;0;[o; ;[I"=https://blog.rubygems.org/2018/12/23/3.0.1-released.html;T@ o;;[I"Set;T;[o;;;;[o;;[I"Aliased method;T;[o;;;;[o;;0;[o; ;[I"BSet#filter! is a new alias for Set#select!. [Feature #13784];T@ o;;[I"URI;T;[o;;;;[o;;[I"New constant;T;[o;;;;[o;;0;[o; ;[I"CAdd URI::File to handle the file URI scheme. [Feature #14035];T@ S; ; i;I"7Compatibility issues (excluding feature bug fixes);T@ o;;;;[o;;[I"Dir;T;[o;;;;[o;;0;[o; ;[I"PDir.glob with <code>'\0'</code>-separated pattern list will be deprecated, ;TI")and is now warned. [Feature #14643];T@ o;;[I" File;T;[o;;;;[o;;0;[o; ;[I"KFile.read, File.binread, File.write, File.binwrite, File.foreach, and ;TI"LFile.readlines do not invoke external commands even if the path starts ;TI"?with the pipe character <code>'|'</code>. [Feature #14245];T@ o;;[I"Object;T;[o;;;;[o;;0;[o; ;[I"/Object#=~ is deprecated. [Feature #15231];T@ S; ; i;I">Stdlib compatibility issues (excluding feature bug fixes);T@ o;;;;[o;;0;[o; ;[I"AThese standard libraries have been promoted to default gems.;T@ o;;;;[o;;0;[o; ;[I"e2mmap;To;;0;[o; ;[I"forwardable;To;;0;[o; ;[I"irb;To;;0;[o; ;[I"logger;To;;0;[o; ;[I"matrix;To;;0;[o; ;[I"mutex_m;To;;0;[o; ;[I"ostruct;To;;0;[o; ;[I" prime;To;;0;[o; ;[I" rexml;To;;0;[o; ;[I"rss;To;;0;[o; ;[I" shell;To;;0;[o; ;[I" sync;To;;0;[o; ;[I"thwait;To;;0;[o; ;[I"tracer;T@ o;;;;[o;;[I"BigDecimal;T;[o;;;;[ o;;0;[o; ;[I"'The following methods are removed.;T@ o;;;;[o;;0;[o; ;[I"BigDecimal.allocate;To;;0;[o; ;[I"BigDecimal.ver;T@ o;;0;[o; ;[I"8Every BigDecimal object is frozen. [Feature #13984];T@ o;;0;[o; ;[I"=BigDecimal() parses the given string similar to Float().;T@ o;;0;[o; ;[I"CString#to_d parses the receiver string similar to String#to_f.;T@ o;;0;[o; ;[I"3BigDecimal.new will be removed in version 2.0.;T@ o;;[I" Pathname;T;[o;;;;[o;;0;[o; ;[ I"IPathname#read, Pathname#binread, Pathname#write, Pathname#binwrite, ;TI"FPathname#each_line and Pathname#readlines do not invoke external ;TI"Pcommands even if the path starts with the pipe character <code>'|'</code>. ;TI"#This follows [Feature #14245].;T@ S; ; i;I" Implementation improvements;T@ o;;;;[ o;;0;[ o; ;[I"NSpeedup Proc#call because we don't need to care about <code>$SAFE</code> ;TI"any more. [Feature #14318];T@ o; ;[I"IWith +lc_fizzbuzz+ benchmark which uses Proc#call many times we can ;TI"-measure x1.4 improvements. [Bug #10212];T@ o;;0;[o; ;[I"QSpeedup block.call where +block+ is passed block parameter. [Feature #14330];T@ o; ;[I"BRuby 2.5 improves block passing performance. [Feature #14045];T@ o; ;[I"MAdditionally, Ruby 2.6 improves the performance of passed block calling.;T@ o;;0;[o; ;[I"jIntroduce an initial implementation of a JIT (Just-in-time) compiler. [Feature #14235] [experimental];T@ o;;;;[ o;;0;[o; ;[I"Y<tt>--jit</tt> command line option is added to enable JIT. <tt>--jit-verbose=1</tt> ;TI"Bis good for inspection. See <tt>ruby --help</tt> for others.;To;;0;[o; ;[I"WTo generate machine code, this JIT compiler uses the C compiler used for building ;TI"Zthe interpreter. Currently GCC, Clang, and Microsoft Visual C++ are supported for it.;To;;0;[o; ;[I"d<tt>--disable-mjit-support</tt> option is added to configure. This is added for JIT debugging, ;TI"`but if you get an error on building a header file for JIT, you can use this option to skip ;TI"!building it as a workaround.;To;;0;[o; ;[I"Arb_waitpid reimplemented on Unix-like platforms to maintain ;TI">compatibility with processes created for JIT [Bug #14867];T@ o;;0;[o; ;[I"RVM generator script renewal; makes the generated VM more optimized. [GH-1779];T@ o;;0;[o; ;[I"EThread cache enabled for pthreads platforms (for Thread.new and ;TI"%Thread.start). [Feature #14757];T@ o;;0;[o; ;[I"Ntimer thread is eliminated for platforms with POSIX timers. [Misc #14937];T@ o;;0;[ o; ;[I"GTransient Heap (theap) is supported. [Bug #14858] [Feature #14989];T@ o; ;[I"Ktheap is a managed heap for short-living memory objects. For example, ;TI"Tmaking a small and short-living Hash object is x2 faster. With rdoc benchmark, ;TI".we measured 6-7% performance improvement.;T@ o;;0;[o; ;[I"QNative implementations (arm32, arm64, ppc64le, win32, win64, x86, amd64) of ;TI"Ocoroutines to improve performance of Fiber significantly. [Feature #14739];T@ S; ; i;I"Miscellaneous changes;T@ o;;;;[o;;0;[o; ;[I"POn macOS, shared libraries no longer include a full version number of Ruby ;TI"Nin their names. This eliminates the burden of each teeny upgrade on the ;TI"Aplatform that users need to rebuild every extension library.;T@ o;;;;[o;;[I"Before;T;[o;;;;[o;;0;[o; ;[I"libruby.2.6.0.dylib;To;;0;[o; ;[I"-libruby.2.6.dylib -> libruby.2.6.0.dylib;To;;0;[o; ;[I")libruby.dylib -> libruby.2.6.0.dylib;T@ o;;[I" After;T;[o;;;;[o;;0;[o; ;[I"libruby.2.6.dylib;To;;0;[o; ;[I"'libruby.dylib -> libruby.2.6.dylib;T@ o;;0;[o; ;[I"?Extracted misc/*.el files to https://github.com/ruby/elisp;T: @file@:0@omit_headings_from_table_of_contents_below0