summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-19merge revision(s) 57517: [Backport #13190]nagachika
doc: Fix error for escape sequences in string literals Backslash goes first in escape sequences, so it must be "any other character following a backslash is interpreted as ...", while the doc says "...followed by...". Author: Marcus Stollsteimer <sto.mar@web.de> [ruby-core:79418] [Bug #13190] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 57522: [Backport #13189]nagachika
doc: restore class documentation for Struct * struct.c: restore class documentation for Struct that disappeared with r46663. Due to r46663, the class documentation for Struct disappeared. (The revision inserted the definition of `InitVM_Struct` between the rdoc and the definition of `Init_Struct`.) The docs are rendered for 2.1: <https://docs.ruby-lang.org/en/2.1.0/Struct.html>, but not for later versions, see: <https://docs.ruby-lang.org/en/2.2.0/Struct.html> (Same for `ri` pages). [ruby-core:79416] [Bug #13189] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 57434: [Backport #13161]nagachika
Enumerable#{min,min_by,max,max_by} [ci skip] * enum.c: [DOC] Enumerable#{min,min_by,max,max_by} return a sorted array when +n+ argument is used. * enum.c: Small typo : minimum -> maximum [Bug #13161] Author: Eric Duminil <eric.duminil@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 54785: [Backport #11900]nagachika
* ruby.c (process_options): convert -e script to the encoding given by a command line option on Windows. assume it is the expected encoding. [ruby-dev:49461] [Bug #11900] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 57539: [Backport #11752]nagachika
rational.c: fix rdoc [ci skip] * rational.c (rb_rational_plus): [DOC] fix an example. A patch by Trygve Flathen <at.ruby-lang AT flathen.net> in [ruby-core:71755]. [Bug #11752] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 57595: [Backport #8996]nagachika
check thread deadness correctly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 56125,56150: [Backport #12741]nagachika
* thread.c (rb_threadptr_raise): set cause from the called thread, but not from the thread to be interrupted. [ruby-core:77222] [Bug #12741] * test/ruby/test_exception.rb: fix thread issues. * use Queue instead of a local variable for synchronization. * join created thread to soleve leaking threads warning. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-19merge revision(s) 57767,57944: [Backport #10403]nagachika
io.c: documentation for puts * io.c: [DOC] clarify that the 'record separator' between arguments passed to 'puts' is always a newline. Based on a patch by Mark Amery. [ruby-core:65801] [Misc #10403] io.c: [DOC] IO#puts uses IO#write git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@58025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-14revert r57571. `merge revision(s) 55781,55783: [Backport #12604]`nagachika
It breaked CI on vc12-x64 http://13.78.52.201/vc12-x64/ruby-2.3/log/20170207T182419Z.log.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 57368: [Backport #12613]nagachika
compile.c: check err_info * compile.c (iseq_setup): bail out if any errors found. [ruby-core:76531] [Bug #12613] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 55781,55783: [Backport #12604]nagachika
* ext/win32/resolv/resolv.c (get_dns_server_list): [Win32] get DNS servers only for connected network devices by GetNetworkParams API. [Bug #12604] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 53383,55366: [Backport #12478]nagachika
* lib/forwardable.rb (def_instance_delegator): adjust backtrace of method body by tail call optimization. adjusting the delegated target is still done by deleting backtrace. * lib/forwardable.rb (def_single_delegator): ditto. * lib/forwardable.rb (Forwardable._delegator_method): extract method generator and deal with non-module objects. [ruby-dev:49656] [Bug #12478] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 57123: [Backport #13054]nagachika
re.c: consider the case of RMatch::regexp is nil Follow r49675, r57098 and r57110. Don't assume RMatch::regexp always contains a valid Regexp instance; it will be Qnil if the MatchData is created by rb_backref_set_string(). [ruby-core:78741] [Bug #13054] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 56928: [Backport #12991]nagachika
thread.c: fix doc of abort_on_exception [ci skip] * thread.c (rb_thread_s_abort_exc, rb_thread_s_abort_exc_set): [DOC] the raised exception will be re-raised in the main thread, and then follows the ordinary exception sequence, exit status is not 0. [ruby-core:78415] [Bug #12991] * thread.c (rb_thread_abort_exc_set): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 57172: [Backport #13066]nagachika
time.c: fix type of usec2subsecx * time.c (usec2subsecx): fix return type, which is a numeric object but not a long int. [ruby-dev:49912] [Bug #13066] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 56892: [Backport #12910]nagachika
test_fileutils.rb: fix deadlock * test/fileutils/test_fileutils.rb (assert_output_lines): ensure that write pipe is closed, not the reader thread to deadlock when an exception raised in the given block. [ruby-core:78053] [Bug #12910] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07merge revision(s) 56224: [Backport #12785]nagachika
* test/misc/test_ruby_mode.rb (assert_indent): since write-region in Emacs 25.1 no longer displays the "Wrote file" message, shows the explicit message to check if successfully finished. [ruby-core:77355] [Bug #12785] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-17version.h: bump up patchlevel for r57356.nagachika
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-17win32/win32.c: fix r57351. rename PATH_MAX to MAX_PATH.nagachika
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 57135,57136: [Backport #13058]nagachika
Fixed potentially buffer overrun. * win32/win32.c (winnt_stat): the return value of `get_final_path` is the expected buffer length, not the actuall filled length. * win32/win32.c (winnt_stat): `finalname` may be accessed in the outer block of its definition via `path`. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 57119: [Backport #13052]nagachika
array.c: check array length every time after yielding Since the Array may be modified during rb_yield(), the length before invoking the block can't be trusted. Fix possible out-of-bounds read in Array#combination and Array#repeated_combination. It may better to make a defensive copy of the Array, but for now let's follow what Array#permutation does. [ruby-core:78738] [Bug #13052] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 57098: [Backport #13042]nagachika
re.c: non-regexp name reference * re.c (rb_reg_regsub): other than regexp has no name references. [ruby-core:78686] [Bug #13042] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 57078: [Backport #13034]nagachika
encoding.c: handle needmore error from rb_enc_precise_mbclen() rb_enc_ascget() erroneously reports success even if the given byte sequence is incomplete, for non-ASCII compatible encoding strings. rb_enc_precise_mbclen() may return a negative value on error, and thus rb_enc_ascget() must not store the return value in 'unsigned int'; otherwise the subsequent MBCLEN_CHARFOUND_P() check won't catch the error. [ruby-core:78646] [Bug #13034] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 57020,57021: [Backport #13014]nagachika
Add clang volatile fixes from FreeBSD and NetBSD. Use volatile instead of optnone to avoid optimization which causes segmentation faults. Patch by Dimitry Andric. [ruby-core:78531] [Bug #13014] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 56980,56981: [Backport #13004]nagachika
extension.rdoc: fix rb_get_kwargs [ci skip] * doc/extension.rdoc: [DOC] optional keyword arguments are defaulted to Qundef. ignored keys are kept in the hash but a new Hash is not created. [ruby-dev:49893] [Bug #13004] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 56905: [Backport #12983]nagachika
Reverse compatibility_version and current_version for Darwin The `compatibility_version` should have an API version and the `current_version` should have a program version of Ruby, but they have been reversed and the binary compatibility has never worked. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 56832: [Backport #12956]nagachika
dln.c: raise LoadError * dln.c (dln_load): raise LoadError instead of fatal error on recent OSX, dlclose seems fixed in El Capitan or later. [ruby-core:78200] [Bug #12956] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 56894: [Backport #12974]nagachika
marshal.c: fix infinite recursion * marshal.c (check_userdump_arg): marshal_dump should not return an instance of the same class, otherwise it causes infinite recursion. [ruby-core:78289] [Bug #12974] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 56469: [Backport #12860]nagachika
* compile.c (setup_args): duplicate splatting array if more arguments present to obey left-to-right execution order. [ruby-core:77701] [Bug# 12860] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 56938: [Backport #12988]nagachika
Stop reading past the end of `ivptr` array If you have code like this: ```ruby class A def initialize @a = nil @b = nil @c = nil @d = nil @e = nil end end x = A.new y = x.clone 100.times { |z| x.instance_variable_set(:"@foo#{z}", nil) } puts y.inspect ``` `x` and `y` will share `iv_index_tbl` hashes. However, the size of the hash will grow larger than the number if entries in `ivptr` in `y`. Before this commit, `rb_ivar_count` would use the size of the hash to determine how far to read in to the array, but this means that it could read past the end of the array and cause the program to segv [ruby-core:78403] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-16merge revision(s) 57108: [Backport #13121]nagachika
sprintf.c: fix width underflow * sprintf.c (rb_str_format): fix memory corruption by width underflow. https://github.com/mruby/mruby/issues/3347 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@57340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-23merge revision(s) 56884: [Backport #12910]nagachika
test_fileutils.rb: Use primary group too * test/fileutils/test_fileutils.rb (TestFileUtils#setup): Use primary group as well as supplementary groups. based on the patch by Vit Ondruch at [ruby-core:78053]. [Bug #12910] It might happen in certain environments (systemd-nspawn) that process has no supplementary groups, but primary groups should be enough to pass most of the tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-23merge revision(s) 56881: [Backport #12972]nagachika
Don't encode to UTF-8 if it's unnecessary. If the file system encoding is ISO-8851-1 or if the encoding of the target string is invalid, don't encode to UTF-8. [ruby-core:78271] [Bug#12972] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-21merge revision(s) 53668: [Backport #12759]nagachika
* lib/tempfile.rb (Tempfile#initialize): [DOC] the first parameter `basename` is optional and defaulted to an empty string since [GH-523]. [Fix GH-1225] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-19* iseq.c (proc_dup): don't duplicate sym_procs. [Fix GH-1479]nagachika
[ruby-core:78100] [Bug #12927] Based on the patch provided by Emiliano Ritiro. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56841 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-19merge revision(s) 56267,56268: [Backport #12943]nagachika
based on a patch provided by Aaron Patterson. assertions.rb: success option * test/lib/test/unit/assertions.rb (assert_in_out_err): add success option to check the exit status. * iseq.c (iseqw_s_compile_file): deal with syntax error as well as compile, and should not abort when rescued. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-16merge revision(s) 56694,56698: [Backport #12920]nagachika
vm_eval.c: fix refined method when prepended * vm_eval.c (vm_call0_body): refined module should not be skipped as prepended. [ruby-core:78073] [Bug #12920] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-15* version.h: Bump up version to 2.3.3.nagachika
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14merge revision(s) 56559,56582,56584,56585: [Backport #12903]nagachika
* test/ruby/test_file.rb (TestFile#test_stat): fix noatime case. [ruby-core:77943] [Bug #12903] * ext/-test/file/fs.c (get_atime_p): Updating of file access times is enabled or not. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14merge revision(s) 56625: [Backport #12936]nagachika
* test/rinda/test_rinda.rb (test_make_socket_ipv6_multicast, test_make_socket_ipv6_multicast_hops): skip if IPv6 multicast address is not available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14merge revision(s) 56520: [Backport #12876]nagachika
* vm_eval.c (vm_call0_body): follow the original class, not to loop the prepended module. [ruby-core:77784] [Bug #12876] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14merge revision(s) 56596: [Backport #12890]nagachika
* lib/net/http.rb (transport_request): other than HTTPContinue in 1xx (HTTPInformation) also needs to continue. [Bug #12890] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-14merge revision(s) 56766,56767: [Backport #12925]nagachika
error.c: rb_get_backtrace * error.c (rb_get_backtrace): move from eval_error.c to call exc_backtrace directly. [ruby-core:78097] [Bug #12925] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56421,56422: [Backport #11736]nagachika
* object.c: Improve documentation for Integer conversion. [ruby-core:71661][Bug #11736][ci skip] * object.c: Improve documentation for Float conversion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56682: [Backport #12922]nagachika
default.mspec: end of options * spec/default.mspec (MSpecScript): add the end of options to runruby.rb, to fix failure at ruby/spec@a0e55db. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56489: [Backport #12832]nagachika
* proc.c (mnew_internal): follow the original class, not to loop the prepended module. [ruby-core:77591] [Bug #12832] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56686:nagachika
Extend timeout for RubyCI chkbuild on Debian 8.2 x86_64. On that machine, TestQueue#test_thr_kill often fails as follows: 1) Failure: TestQueue#test_thr_kill [/home/hsbt/chkbuild/tmp/build/20161109T213002Z/ruby/test/thread/test_queue.rb:155]: only 171/250 done in 30 seconds. Even if it passes, it takes about 30 seconds: [11160/16832] TestQueue#test_thr_kill = 29.80 s git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56561: [Backport #12893]nagachika
* cont.c (cont_new): disable optimization if clang's version is 3.8.0. [ruby-core:77894] [Bug #12893] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56208,56663: [Backport #12905]nagachika
* compile.c (iseq_peephole_optimize): enable tail call optimization inside a conditional block. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-11-11merge revision(s) 56684: [Backport #12909]nagachika
test_process.rb: fix pgroup test * test/ruby/test_process.rb (TestProcess#test_execopts_pgroup): use dynamically assigned pid for the process group, instead of a magic number 2. [ruby-core:78051] [Bug #12909] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e