- 1_8_6_287
- 1_8_7_72
- 1_8_7_330
- 1_9_1_378
- 1_9_2_180
- 1_9_3_125
- 1_9_3_392
- 2_1_10 (0)
- 2_2_9 (-15)
- 2_4_6
- 2_5_5
- 2_6_3
- What's this?
Fri Dec 15 00:08:26 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* test/net/ftp/test_ftp.rb (process_port_or_eprt): merge a part of r56973 to pass the test introduced at previous commit.
Thu Dec 14 22:52:11 2017 Shugo Maeda <shugo@ruby-lang.org>
Fix a command injection vulnerability in Net::FTP.
Thu Dec 14 22:49:08 2017 SHIBATA Hiroshi <hsbt@ruby-lang.org>
Merge rubygems-2.6.14 changes. It fixed http://blog.rubygems.org/2017/10/09/unsafe-object-deserialization-vulnerability.html
Thu Sep 14 20:44:26 2017 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* ext/json: bump to version 1.8.1.1. [Backport #13853]
Thu Sep 14 20:39:39 2017 Kazuki Yamaguchi <k@rhe.jp>
asn1: fix out-of-bounds read in decoding constructed objects * OpenSSL::ASN1.{decode,decode_all,traverse}: have a bug of out-of-bounds read. int_ossl_asn1_decode0_cons() does not give the correct available length to ossl_asn1_decode() when decoding the inner components of a constructed object. This can cause out-of-bounds read if a crafted input given. Reference: https://hackerone.com/reports/170316 https://github.com/ruby/openssl/commit/1648afef33c1d97fb203c82291b8a61269e85d3b
Thu Sep 14 20:36:54 2017 Yusuke Endoh <mame@ruby-lang.org>
lib/webrick/log.rb: sanitize any type of logs It had failed to sanitize some type of exception messages. Reported and patched by Yusuke Endoh (mame) at https://hackerone.com/reports/223363
Thu Sep 14 20:33:52 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
Fix space flag when Inf/NaN and width==3 * sprintf.c (rb_str_format): while "% 2f" and "% 4f" result in " Inf" and " Inf" respectively, "% 3f" results in "Inf" (no space). Refactor "%f" % Inf/NaN * sprintf.c (rb_str_format): as for non-finite float, calculate the exact needed size with the space flag.
Sun Sep 10 10:10:05 2017 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* lib/rubygems: fix several vulnerabilities in RubyGems; bump to version 2.4.5.3. [Backport #13842]
Sat Sep 9 21:08:24 2017 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* ext/psych/yaml: update libyaml to 0.1.7. * ext/psych/psych.gemspec: bump version to 2.0.8.1.
Tue Mar 28 15:39:26 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
configure.in: syscall is deprecated on macOS * configure.in: syscall is no longer supported on macOS since 10.12. [Bug #13361]
Mon Mar 27 01:41:37 2017 NARUSE, Yui <naruse@ruby-lang.org>
* configure.in: improve ICC (Intel C Compiler) support. * configure.in (CXX): The name of icc's c++ compiler is `icpc`. * configure.in (warnings): Add `-diag-disable=2259` to suppress noisy warnings: "non-pointer conversion from "..." to "..." may lose significant bits". * configure.in (optflags): Add `-fp-model precise` like -fno-fast-math. * lib/mkmf.rb: icc supports -Werror=division-by-zero and -Werror=deprecated-declarations, but doesn't support -Wdivision-by-zero and -Wdeprecated-declarations.
Sun Mar 26 17:24:02 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (rb_thread_fd_close): unintentionally removed at r58094.
Sun Mar 26 16:24:02 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* test/ruby/test_thread.rb (test_thread_interrupt_for_killed_thread): may fix the test failure on some platforms introduced at r58108.
Sun Mar 26 16:22:03 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
envutil.rb: timeout_error argument to invoke_ruby * test/lib/envutil.rb (invoke_ruby): add `timeout_error` optional keyword argument, the exception class to be raised if the target process timed out. if it is nil, no exception will be raised at timeout but the terminated output, error, and status will be returned. defaulted to Timeout::Error. * test/lib/envutil.rb (assert_separately): check outputs and status (including diagnostic reports) of timed-out process.
Sun Mar 26 13:07:21 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (rb_thread_sleep_deadly_allow_spurious_wakeup): need to mark as exported. this may fix the load error introduced at r58115.
Sun Mar 26 03:55:45 2017 Marcus Stollsteimer <sto.mar@web.de>
docs for creating arrays * array.c: [DOC] add example for Array.new with block and index. Reported by Don Cruickshank. [ruby-core:68442] [Bug #10944]
Sun Mar 26 03:55:01 2017 Marcus Stollsteimer <sto.mar@web.de>
date_core.c: fix error in DateTime docs * ext/date/date_core.c: [DOC] fix format string for DateTime#rfc3339. Reported by Andreas Rayo Kniep. [ruby-core:68418] [Bug #10936] * ext/date/date_core.c: [DOC] ditto for DateTime#iso8601 and DateTime#xmlschema; other small improvements.
Sun Mar 26 03:54:16 2017 Marcus Stollsteimer <sto.mar@web.de>
io.c: improve docs * io.c: [DOC] improve and harmonize docs for IO#read and ARGF#read; fix invalid example code for IO#read to make it syntax highlighted. * io.c: [DOC] various improvements for docs of IO, ARGF, and Kernel: fix indent to ensure correct code block detection; sync "outbuf" paragraph for {IO,ARGF}#read, {IO,ARGF}#readpartial, and IO#sysread; fix formatting of call-seq's; improve Kernel#open example to use nil?; fix RDoc markup and typos.
Sun Mar 26 03:42:37 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
vm_method.c: resolve refined method to undef * vm_method.c (rb_undef): resolve the method entry which refines a prepended method entry. [ruby-core:78944] [Bug #13096]
Sun Mar 26 03:36:29 2017 Marcus Stollsteimer <sto.mar@web.de>
date_core.c: expand docs for Date shifting * ext/date/date_core.c: [DOC] expand docs for Date shifting * add examples for Date#>> and Date#<< that clarify some edge cases * add examples for Date#next_year and Date#prev_year * add cross references to Date#>> and Date#<< [ruby-core:79584] [Bug #13225]
Sun Mar 26 03:35:09 2017 Marcus Stollsteimer <sto.mar@web.de>
lib/ostruct.rb: [DOC] revise docs for OpenStruct * update paragraph on implementation: define_singleton_method is used, not define_method * add call-seq with return values for each_pair * adopt description of dig from Array and Hash * fix description of the hash method * :nodoc: initialize_copy, respond_to_missing? * other small improvements, e.g. use the term `attribute' in the docs (instead of `member'), which is clearer for users of the class * improve code examples: e.g. use more consistent style (always use double quotes, drop `p' and `puts', ...), update inspect output, use example data that is not prone to change (like population) * add more code examples * fix some small errors and grammar [ruby-core:79265] [Bug #13159]
Sun Mar 26 03:31:18 2017 Eric Wong <normalperson@yhbt.net>
doc: improve documentation for Binding [ci skip] * remove explicit return from code examples * grammar fixes * other small fixes Patch by: Marcus Stollsteimer <sto.mar@web.de> [ruby-core:79082] [Bug #13132]
Sun Mar 26 03:28:27 2017 Marcus Stollsteimer <sto.mar@web.de>
nodoc OptParse * lib/optparse.rb: [DOC] nodoc OptParse, introduced with r46126, to avoid leaking of its documentation (OptionParser's docs) into the class documentation of Object. [ruby-core:79909] [Bug #13281]
Sun Mar 26 03:26:56 2017 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
rational.c: fix rdoc * rational.c: [DOC] fix wrong indentations and comment out some lines in code examples to make them valid Ruby code and syntax highlighted on the rendered page. [ci skip] [ruby-core:79607] [Bug #13233] Author: Marcus Stollsteimer <sto.mar@web.de>
Sun Mar 26 03:24:28 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
fileutils.rb: do not make root * lib/fileutils.rb (FileUtils#mkdir_p): no need to make root directory which should be exist and cannot be made with mkdir recent Cygwin can make a directory contains a colon. [Bug #13214]
Sun Mar 26 03:22:34 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
win32/resolv.rb: ad hoc workaround * ext/win32/lib/win32/resolv.rb (Win32::Resolv::SZ): an ad hoc workaround for broken registry. SearchList and other registry values must be REG_SZ, or Windows ignores anything in those values otherwise. [ruby-dev:49924] [Bug #13081] https://github.com/rubygems/rubygems/issues/1700 win32/registry.rb: registry type names * ext/win32/lib/win32/registry.rb (Win32::Registry#read): show registry type names instead of numeric values.
Sun Mar 26 03:19:17 2017 Eric Wong <normalperson@yhbt.net>
doc: Add example for Symbol#to_s * string.c: add example for Symbol#to_s. The docs for Symbol#to_s only include an example for Symbol#id2name, but not for #to_s which is an alias; the docs should include examples for both methods. From: Marcus Stollsteimer <sto.mar@web.de>
Sun Mar 26 03:16:16 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
rational.c: infinity in power * rational.c (nurat_expt): return Infinity due to overflow. [ruby-core:79686] [Bug #13242]: rational.c: infinity in power * rational.c (nurat_expt): return 0 due to overflow. [ruby-core:79686] [Bug #13242]:
Sun Mar 26 03:13:17 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
vm.c: check type of hash to merge * vm.c (core_hash_merge): check the type of the target hash to merge. [ruby-core:78536] [Bug #13015]
Sun Mar 26 03:07:08 2017 Koichi Sasada <ko1@atdot.net>
use TRUE/FALSE. define rb_thread_sleep_deadly_allow_spurious_wakeup(). * thread.c, thread_sync.c: define new function rb_thread_sleep_deadly_allow_spurious_wakeup() and use it instead of using sleep_forever() directly. allow Queue operation in trap. * thread_sync.c: allow spurious wakeup to check Queue status just after trap. [Bug #12405] * test/thread/test_queue.rb: add a test for it. test_queue.rb: fix portability * test/thread/test_queue.rb (test_queue_with_trap): fix portability. use SIGINT instead of SIGUSR2 which is supported on not all platforms.
Sun Mar 26 02:44:16 2017 Akinori MUSHA <knu@iDaemons.org>
* doc/syntax/literals.rdoc (Strings): [DOC] Revise the character literal part.
Sun Mar 26 02:44:16 2017 Akinori MUSHA <knu@iDaemons.org>
* doc/syntax/literals.rdoc (Strings): [DOC] Document the full list of supported escape sequences in string literals.
Sun Mar 26 02:44:16 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* doc/syntax/literals.rdoc (Strings): mention about ?a literal.
Sun Mar 26 02:37:23 2017 Eric Wong <normalperson@yhbt.net>
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]
Sun Mar 26 02:36:34 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
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>
Sun Mar 26 02:35:17 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
* 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]
Sun Mar 26 02:34:13 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
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]
Sun Mar 26 02:32:12 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (poll_child_status): rb_w32_wait_events_blocking() sets errno internally, then should not set it here.
Sun Mar 26 02:27:37 2017 Koichi Sasada <ko1@atdot.net>
check thread deadness correctly.
Sun Mar 26 02:13:04 2017 Koichi Sasada <ko1@atdot.net>
* 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.
Sun Mar 26 02:13:04 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (rb_threadptr_raise): set cause from the called thread, but not from the thread to be interrupted. [ruby-core:77222] [Bug #12741]
Sun Mar 26 02:11:47 2017 Marcus Stollsteimer <sto.mar@web.de>
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] * 2017-03-13
Sun Mar 26 02:08:06 2017 Marcus Stollsteimer <sto.mar@web.de>
proc.c: documentation for Proc#{call,yield,[]} * proc.c: [DOC] fix and improve docs for Proc#{call,yield,[]}: * change order of Document-method directives as workaround for an RDoc rendering problem where the documentation for Proc#call displays a "Document-method: []" code block. [ruby-core:79887] [Bug #13273] * add missing call-seq and example for Proc#yield * remove pointless cross reference to Proc#yield * update description for handling of extra or missing arguments, improve examples and add cross reference to #lambda?
Sun Mar 26 02:03:06 2017 Marcus Stollsteimer <sto.mar@web.de>
docs for IO#print * io.c: [DOC] split documentation for IO#print into smaller paragraphs, delete duplicate sentence, fix call-seq. Based on a patch by Dario Daic. [ruby-core:78291] [Bug #12975]
Sun Mar 26 02:01:54 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
fix UTF-32 valid_encoding? * enc/utf_32be.c (utf32be_mbc_enc_len): check arguments precisely. [ruby-core:79966] [Bug #13292] * enc/utf_32le.c (utf32le_mbc_enc_len): ditto. * regenc.h (UNICODE_VALID_CODEPOINT_P): predicate for valid Unicode codepoints. fix UTF-32 valid_encoding? * test/ruby/test_io_m17n.rb (TestIO_M17N#test_puts_widechar): do not use invalid codepoint. [ruby-core:79966] [Bug #13292]
Sun Mar 26 01:58:03 2017 NAKAMURA Usaku <usa@ruby-lang.org>
* regcomp.c (set_bm_skip): Need to check the end of the string. this patch is from https://github.com/k-takata/Onigmo/commit/e5c0e6c36187898bb27960cd66d591f172558848 . [Backport #12997]
Sun Mar 26 01:48:05 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
date_core.c: [DOC] revise docs [ci skip] * fix malformed rdoc for Date#today, Date._strptime, and DateTime._strptime * add code examples for Date#<< and Date#>> to demonstrate that different dates can result in the same return value * use Date::ITALY in call-seq instead of only ITALY * fix some copy/paste mistakes where Date should be DateTime * fix various errors and grammar * fix cross references and formatting [ruby-core:79433] [Bug #13193] Author: Marcus Stollsteimer <sto.mar@web.de>
Sun Mar 26 01:35:25 2017 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
lib/ostruct.rb: Fix returned value of each_pair. From a patch by Marcus Stollsteimer. [Fixes #13169]
Sun Mar 26 01:31:54 2017 Benoit Daloze <eregontp@gmail.com>
fix optimization for hash aset/aref with fstring Patch by Eric Wong [ruby-core:78797]. I don't like the idea of making insns.def any bigger to support a corner case, and "test_hash_aref_fstring_identity" shows how contrived this is. [ruby-core:78783] [Bug #12855] adjust indent [ci skip]
Sun Mar 26 01:29:17 2017 Shugo Maeda <shugo@ruby-lang.org>
string.c: rindex(//) should set $~. This seems a bug introduced by r520 (1.4.0). [ruby-core:79110] [Bug #13135]
Sun Mar 26 01:15:34 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
disable critical-error-handler * win32/win32.c (rb_w32_sysinit): disable critical-error-handler message box even on mswin, regardless of runtime DLL version. [ruby-dev:49988] [Bug #13254]
Sun Mar 26 01:14:19 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
broken mingw * configure.in: check whether frexp and modf are broken. * include/ruby/win32.h (frexp, modf): ignore bad declarations when compiling as C++. [ruby-core:79859] [Bug #13267]
Sun Mar 26 01:13:11 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
parallel.rb: fix intervention * test/lib/test/unit/parallel.rb (_report): send a response and a newline atomically, to get rid of intervention with "p" which runs in a separate thread.
Sun Mar 26 01:03:27 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
io.c: close before wait * io.c (io_close_fptr): notify then close, and wait for other threads before free fptr. [ruby-core:79262] [Bug #13158]
Sun Mar 26 00:47:52 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
io.c: fix race between read and close * io.c (io_fillbuf): fix race between read and close, in the case the IO gets closed before the reading thread achieve the lock. [ruby-core:78845] [Bug #13076] thread.c: fix race between read and close * thread.c (rb_thread_fd_close): wait until all threads using the fd finish the operation, not to free the buffer in use. [ruby-core:78845] [Bug #13076] revert a part of r57199 * io.c (io_fillbuf): revert a part of r57199 because it broke IO#getch. see also [Bug #13076] io.c: fix race between read and close * io.c (io_fillbuf): fix race between read and close and bail out in the case the IO gets closed before the reading thread achieve the lock. [ruby-core:78845] [Bug #13076]
Sun Mar 26 00:39:40 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
class.c: non-keyword hash class * class.c (rb_extract_keywords): keep the class of non-keyword elements hash as the original. [ruby-core:77813] [Bug #12884]
Sun Mar 26 00:36:01 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
string.c: block for scrub with ASCII-incompatible * string.c (rb_enc_str_scrub): honor the given block with ASCII-incompatible encoding. [ruby-core:79039] [Bug #13120] string.c: yield invalid part * string.c (rb_enc_str_scrub): yield the invalid part only with ASCII-incompatible. [ruby-core:79039] [Bug #13120] string.c: replacement and block * string.c (rb_enc_str_scrub): only one of replacement and block is allowed. [ruby-core:79038] [Bug #13119]
Sun Mar 26 00:30:36 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
compile.c: check err_info * compile.c (iseq_setup): bail out if any errors found. [ruby-core:76531] [Bug #12613]
Sun Mar 26 00:19:09 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
rational.c: memory leak in gcd * rational.c (rb_gcd_gmp): fix memory leak. patched by KISHIMOTO, Makoto <ksmakoto AT dd.iij4u.or.jp> in [ruby-dev:49934]. [Bug #13089]
Sun Mar 26 00:16:04 2017 Kazuki Yamaguchi <k@rhe.jp>
pack.c: avoid returning uninitialized String Fix unpacking with 'b', 'B', 'h' and 'H' format. Do not return an uninitialized String to Ruby before filling the content bytes. Fixes r11175 ("pack.c (pack_unpack): execute block if given with unpacked value instead of creating an array", 2006-10-15). [ruby-core:78841] [Bug #13075] test/ruby/test_pack.rb: fix test case added by r57187 The test case for String#unpack added by r57187 is not properly testing because the String will be filled after the block invocation. [ruby-core:78841] [Bug #13075] Thanks to nagachika for pointing this out: http://d.hatena.ne.jp/nagachika/20161226/ruby_trunk_changes_57184_57194#r57187
Sun Mar 26 00:09:48 2017 Nobuyoshi Nakada <nobu@ruby-lang.org>
ruby-lex.rb: fix for label * lib/irb/ruby-lex.rb (identify_identifier): treat identifier just followed by a colon as a lable. this is not a precise solution but enough for the time being. [ruby-core:78526] [Bug #13012]
Tue Dec 27 20:43:54 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (usec2subsecx): fix return type, which is a numeric object but not a long int. [Bug #13066]
Tue Dec 27 20:13:12 2016 Kazuki Yamaguchi <k@rhe.jp>
* re.c (match_{names,hash,equal}): consider the case of RMatch::regexp is nil. 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(). [Bug #13054]
Tue Dec 27 20:02:43 2016 Kazuki Yamaguchi <k@rhe.jp>
* array.c (rb_ary_{repeated_,}combination): 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. [Bug #13052]
Tue Dec 27 19:57:51 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sprintf.c (rb_str_format): fix memory corruption by width underflow. https://github.com/mruby/mruby/issues/3347
Tue Dec 27 19:55:10 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (rb_reg_regsub): other than regexp has no name references. [Bug #13042]
Tue Dec 27 19:51:43 2016 Kazuki Yamaguchi <k@rhe.jp>
* encoding.c (rb_enc_ascget): 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. [Bug #13034]
Tue Dec 27 19:49:01 2016 Shugo Maeda <shugo@ruby-lang.org>
* cont.c, eval.c, eval_error.c, thread.c, vm_eval.c, vm_trace.c: add clang volatile fixes from FreeBSD and NetBSD. Use volatile instead of optnone to avoid optimization which causes segmentation faults. Patch by Dimitry Andric. [Bug #13014]
Tue Dec 27 19:40:09 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* README.EXT{.ja,}: [DOC] optional keyword arguments are defaulted to Qundef. ignored keys are kept in the hash but a new Hash is not created. [Bug #13004] * class.c (rb_get_kwargs): when values are stored, corresponding keys have been remove from the keyword hash, and the hash should be empty in that case. [Bug #13004]
Tue Dec 27 19:34:47 2016 Aaron Patterson <tenderlove@ruby-lang.org>
* variable.c (rb_ivar_count): stop reading past the end of ivptr array. [Bug #12988]
Tue Dec 27 19:32:03 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* 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. [Bug #12991] * thread.c (rb_thread_abort_exc_set): ditto.
Tue Dec 27 19:29:54 2016 Akinori MUSHA <knu@iDaemons.org>
* configure.in: reverse compatibility_version and current_version for Darwin.
Tue Dec 27 19:10:09 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (dump_funcall, dump_check_funcall, load_funcall): function calls with reentrant check. always show names corresponding to the called methods. * marshal.c (check_userdump_arg): marshal_dump should not return an instance of the same class, otherwise it causes infinite recursion. [Bug #12974]
Tue Dec 27 18:34:04 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (setup_args): duplicate splatting array if more arguments present to obey left-to-right execution order. [ruby-core:77701] [Bug# 12860]
Tue Dec 27 18:28:20 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* 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]
Tue Dec 27 18:17:23 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* 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]
Tue Nov 15 15:29:36 2016 NARUSE, Yui <naruse@ruby-lang.org>
* ext/openssl/ossl_ssl.c (ssl_npn_select_cb_common): fix parsing protocol list. The protocol list from OpenSSL is not null-terminated. patched by Kazuki Yamaguchi [Bug #11810] [ruby-core:72082]
Tue Nov 15 03:55:45 2016 NARUSE, Yui <naruse@ruby-lang.org>
* ext/-test/file/fs.c (get_atime_p): Updating of file access times is enabled or not.
Tue Nov 15 03:55:45 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/test_file.rb (TestFile#test_stat): fix noatime case. [ruby-core:77943] [Bug #12903]
Tue Nov 15 03:54:14 2016 Shugo Maeda <shugo@ruby-lang.org>
* test/rinda/test_rinda.rb (test_make_socket_ipv6_multicast, test_make_socket_ipv6_multicast_hops): skip if IPv6 multicast address is not available.
Tue Nov 15 03:39:07 2016 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/http.rb (transport_request): other than HTTPContinue in 1xx (HTTPInformation) also needs to continue. [Bug #12890]
Sat Nov 12 07:48:07 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (mnew_internal): follow the original class, not to loop the prepended module. [ruby-core:77591] [Bug #12832]
Sat Nov 12 07:47:19 2016 Shugo Maeda <shugo@ruby-lang.org>
* cont.c (cont_new): disable optimization if clang's version is 3.8.0. [ruby-core:77894] [Bug #12893]
Sat Nov 12 07:37:30 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sprintf.c (rb_str_format): format exact number more exactly.
Sat Nov 12 07:34:03 2016 Kazuki Yamaguchi <k@rhe.jp>
* ext/openssl/ossl.c (Init_openssl): register an ex_data index for X509_STORE and X509_STORE_CTX respectively. Since they don't share the ex_data index registry, we can't use the same index. (ossl_verify_cb): use the the correct index. * ext/openssl/ossl_ssl.c (ossl_ssl_verify_callback): ditto. * ext/openssl/ossl_x509store.c (ossl_x509store_set_vfy_cb): ditto. (ossl_x509stctx_verify): ditto. * ext/openssl/ossl.h (void ossl_clear_error): add extern declarations of ossl_store_{ctx_,}ex_verify_cb_idx. * ext/openssl/openssl_missing.c: remove X509_STORE_set_ex_data and X509_STORE_get_ex_data. * ext/openssl/openssl_missing.h: implement X509_STORE_get_ex_data, X509_STORE_set_ex_data and X509_STORE_get_ex_new_index as macros.
Sat Nov 12 07:32:23 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (rb_thread_pending_interrupt_p): no pending interrupt before initialization. * thread.c (thread_raise_m, rb_thread_kill): uninitialized thread cannot interrupt. [ruby-core:72732] [Bug #11959]
Thu Oct 27 16:47:57 2016 Kazuki Yamaguchi <k@rhe.jp>
* eval_intern.h (TH_PUSH_TAG): Initialize struct rb_vm_tag::tag with Qundef rather than 0 which is equal to Qfalse. Since Kernel#throw(obj) searches a tag with rb_vm_tag::tag == obj, throw(false) can accidentally find an unrelated tag which is not created by Kernel#catch. [ruby-core:77229] [Bug #12743] * test/ruby/test_exception.rb (test_throw_false): Add a test case for this.
Thu Oct 27 16:39:56 2016 Aurelien Jacobs <aurel@gnuage.org>
* lib/logger.rb (Logger::Period#next_rotate_time): fix monthly log rotate when DST is applied during a month of 31 days. [Fix GH-1458]
Thu Oct 27 16:27:06 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* object.c: Improve documentation for Float conversion. [ruby-core:71661][Bug #11736][ci skip]
Fri Oct 7 02:44:57 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/rubygems/ssl_certs/GlobalSignRootCA.pem: add for RubyGems.org.
Sat Oct 1 01:02:22 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (rb_const_search): raise with the actual class/module name which defines the private constant.
Sat Oct 1 00:57:54 2016 NARUSE, Yui <naruse@ruby-lang.org>
* vm_dump.c (backtrace): use rip in the saved context for the case the SIGSEGV is received when the process is in userland. Note that ip in the stack should be used if the signal is received when it is in kernel (when it is calling syscall) [Bug #12711]
Sat Oct 1 00:56:19 2016 Aaron Patterson <tenderlove@ruby-lang.org>
* lib/uri/generic.rb (def check_password): don't include bad password in URI exception output * test/uri/test_generic.rb (def test_set_component): test for behavior
Sat Oct 1 00:55:19 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (nogvl_fsync, nogvl_fdatasync): on Windows, just ignore if the fd is associated to non-disk device. if call fsync and/or fdatasync with such fds, it causes Errno::EBADF exception and the behavior is incompatible with ruby 2.1 and earlier unintentionally introduced.
Sat Oct 1 00:53:28 2016 Kazuki Tsujimoto <kazuki@callcc.net>
* array.c (flatten): use rb_obj_class instead of rb_class_of because rb_class_of may return a singleton class. [ruby-dev:49781] [Bug #12738]
Sat Oct 1 00:52:34 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* man/irb.1: remove useless -width option. [ruby-dev:49767] [Bug #12692]
Sat Oct 1 00:49:40 2016 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (Init_win32ole): should not use atexit to free allocated hash table to avoid error on Cygwin.
Sat Oct 1 00:43:11 2016 Naohisa Goto <ngotogenome@gmail.com>
* test/fiddle/test_pointer.rb (test_to_str, test_to_s, test_aref_aset): Attempt to use independent strings for destructive tests that directly modify values on memory by using Fiddle::Pointer. [Bug #12537] [ruby-dev:49700]
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c (str_buf_cat): Fix capa size for embed string. Fix bug in r55547. [Bug #12536]
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c (rb_str_change_terminator_length): New function to change termlen and resize heap for the terminator. This is split from rb_str_fill_terminator (str_fill_term) because filling terminator and changing terminator length are different things. [Bug #12536] * internal.h: declaration for rb_str_change_terminator_length. * string.c (str_fill_term): Simplify only to zero-fill the terminator. For non-shared strings, it assumes that (capa + termlen) bytes of heap is allocated. This partially reverts r55557. * encoding.c (rb_enc_associate_index): rb_str_change_terminator_length is used, and it should be called whenever the termlen is changed. * string.c (str_capacity): New static function to return capacity of a string with the given termlen, because the termlen may sometimes be different from TERM_LEN(str) especially during changing termlen or filling terminator with specific termlen. * string.c (rb_str_capacity): Use str_capacity.
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c: Partially reverts r55547 and r55555. ChangeLog about the reverted changes are also deleted in this file. [Bug #12536] [ruby-dev:49699] [ruby-dev:49702]
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c (str_fill_term): When termlen increases, re-allocation of memory for termlen should always be needed. In this fix, if possible, decrease capa instead of realloc. [Bug #12536] [ruby-dev:49699]
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c: Specify termlen as far as possible. Additional fix for [Bug #12536] [ruby-dev:49699]. * string.c (str_new_static): Specify termlen from the given encoding when creating a new String object is needed. * string.c (rb_tainted_str_new_with_enc): New function to create a tainted String object with the given encoding. This means that the termlen is correctly specified. Currently static function. The function name might be renamed to rb_tainted_enc_str_new or rb_enc_tainted_str_new. * string.c (rb_external_str_new_with_enc): Use encoding by using the above rb_tainted_str_new_with_enc().
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c (rb_str_subseq, str_substr): When RSTRING_EMBED_LEN_MAX is used, TERM_LEN(str) should be considered with it because embedded strings are also processed by TERM_FILL. Additional fix for [Bug #12536] [ruby-dev:49699].
Sat Oct 1 00:06:03 2016 Naohisa Goto <ngotogenome@gmail.com>
* string.c: Fix memory corruptions when using UTF-16/32 strings. [Bug #12536] [ruby-dev:49699] * string.c (rb_str_new_with_class): Use TERM_LEN of the "obj". * string.c (rb_str_plus, rb_str_justify): Use str_new0 which is aware of termlen. * string.c (str_shared_replace): Copy +termlen bytes instead of +1. * string.c (rb_str_times): termlen should not be included in capa. * string.c (RESIZE_CAPA_TERM): When using RSTRING_EMBED_LEN_MAX, termlen should be counted with it because embedded strings are also processed by TERM_FILL. * string.c (rb_str_capacity, str_shared_replace, str_buf_cat): ditto. * string.c (rb_str_drop_bytes, rb_str_setbyte, str_byte_substr): ditto.
Sat Oct 1 00:00:13 2016 Eric Wong <e@80x24.org>
* ext/openssl/ossl_ssl.c (ossl_ssl_write_internal): avoid undefined behavior * test/openssl/test_pair.rb (test_write_zero): new test [ruby-core:76751] [Bug #12660]
Tue Aug 16 21:12:07 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (ADD_TRACE): ignore trace instruction on non-positive line. * parse.y (coverage): get rid of ArgumentError when the starting line number is not positive. [ruby-core:76141] [Bug #12517]
Tue Aug 16 21:12:07 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* test/coverage/test_coverage.rb: ignored test when enabled to coverage. It lead to crash with `make test-all`.
Tue Aug 16 21:01:55 2016 NARUSE, Yui <naruse@ruby-lang.org>
* lib/uri/mailto.rb (initialize): RFC3986_Parser#split sets opaque only if the URI has path-rootless, not path-empty. [ruby-core:76055] [Bug #12498] patched by Chris Heisterkamp <cheister@squareup.com>
Tue Aug 16 20:59:35 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/date/date_strftime.c (date_strftime_with_tmx): reject too large precision to get rid of buffer overflow. reported by Guido Vranken <guido AT guidovranken.nl>.
Tue Aug 16 20:58:11 2016 NARUSE, Yui <naruse@ruby-lang.org>
* regcomp.c (noname_disable_map): don't optimize out group 0 Ruby's Regexp doesn't allow normal numbered groups if the regexp has named groups. On such case it optimizes out related NT_ENCLOSE. But even on the case it can use \g<0>. This fix not to remove NT_ENCLOSE whose regnum is 0. [ruby-core:75828] [Bug #12454]
Tue Aug 16 20:56:30 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* missing/crypt.c: fix size macros to use configured values for platforms long is larger than 32bit. [ruby-core:75792] [Bug #12446]
Tue Aug 16 20:40:36 2016 Kazuki Yamaguchi <k@rhe.jp>
* ext/openssl/ossl_bn.c (try_convert_to_bnptr): Extracted from GetBNPtr(). This doesn't raise exception but returns NULL on error. (GetBNPtr): Raise TypeError if conversion fails. (ossl_bn_eq): Implement BN#==. (ossl_bn_eql): #eql? should not raise TypeError even if the argument is not compatible with BN. (ossl_bn_hash): Implement BN#hash. * ext/openssl/ossl_bn.c (Init_ossl_bn): Define #== and #hash. * test/openssl/test_bn.rb: Test BN#eql?, #== and #hash
Tue Aug 16 20:34:22 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (str_transcode0): scrub in the given encoding when the source encoding is given, not in the encoding of the receiver. [ruby-core:75732] [Bug #12431]
Tue Aug 16 20:30:53 2016 Kazuki Yamaguchi <k@rhe.jp>
* ext/openssl/ossl_pkey_dh.c (ossl_dh_compute_key): Check that the DH has 'p' (the prime) before calling DH_size(). We can create a DH with no parameter but DH_size() does not check and dereferences NULL. [ruby-core:75720] [Bug #12428] * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_sign): Ditto. DSA_size() does not check dsa->q. * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt, ossl_rsa_public_decrypt, ossl_rsa_private_encrypt, ossl_rsa_private_decrypt): Ditto. RSA_size() does not check rsa->n.
Tue Aug 16 20:28:24 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (enc_arg, str_transcode_enc_args, econv_args): remove volatile, and add GC guards in callers. [ruby-core:75664] [Bug #12411]
Tue Aug 16 14:58:50 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (build-ext), ext/extmk.rb: use variable EXTENCS different than ENCOBJS, to get rid of circular dependency. build libencs when linking encodings statically. [ruby-core:75618] [Bug #12401]
Tue Aug 16 14:54:14 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (rb_local_constants_i): exclude private constants when excluding inherited constants too. [Bug #12345]
Tue Aug 16 14:43:00 2016 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb/timeridconv.rb: don't use keeper thread. [Bug #12342] * test/drb/ut_timerholder.rb: ditto.
Tue Aug 16 14:07:18 2016 Marcus Stollsteimer <sto.mar@web.de>
* ext/json/lib/*.rb: Removed some comments. Because these are unnecessary class description. [ci skip][Bug #12255][ruby-core:74835]
Tue Aug 16 14:06:04 2016 NARUSE, Yui <naruse@ruby-lang.org>
* pack.c (pack_pack): use union instead of bare variable to ease optimizations and avoid assigning x87 floating point number. [ruby-core:74496] [Bug #12209] * pack.c (pack_unpack): ditto.
Tue Aug 16 13:59:34 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/option.c, ext/socket/rubysocket.h (inet_ntop): share the fallback definition. [ruby-core:76646] [Bug #12645]
Tue Aug 16 13:52:42 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm.c (vm_set_main_stack): remove unnecessary check. toplevel binding must be initialized. [Bug #12611] (N1) * string.c (rb_str_split_m): simplify the condition. [Bug #12611](N4)
Tue Aug 16 13:42:42 2016 Naohisa Goto <ngotogenome@gmail.com>
* thread.c (rb_wait_for_single_fd): Clean up fds.revents every time before calling ppoll(2). [Bug #12575] [ruby-dev:49725]
Tue Aug 16 13:40:26 2016 Eric Wong <e@80x24.org>
* lib/webrick/httpservlet/cgihandler.rb (do_GET): delete HTTP_PROXY * test/webrick/test_cgi.rb (test_cgi_env): new test * test/webrick/webrick.cgi (do_GET): new endpoint to dump env [ruby-core:76511] [Bug #12610]
Tue Aug 16 13:38:36 2016 Kouhei Sutou <kou@cozmixng.org>
* lib/rexml/attribute.rb (REXML::Attribute#to_string): Fix wrong entry reference name of double quote. [Bug #12609][ruby-core:76509] Patch by Joseph Marrero. Thanks!!!
Tue Aug 16 13:36:00 2016 Koichi Sasada <ko1@atdot.net>
* gc.c (gc_mark_roots): should mark the VM object itself to mark singleton class of the VM object. Before this patch, we only set mark bit for the VM object and invoke mark function separately. [Bug #12583] * test/ruby/test_gc.rb: add a test.
Tue Aug 16 13:29:25 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/rubygems/package.rb: Fixed potential perms issue unpacking of gems on NFS. [Backport #12579] * lib/rubygems.rb: bump version.
Fri Aug 12 11:48:27 2016 NARUSE, Yui <naruse@ruby-lang.org>
* vm_args.c (setup_parameters_complex): don't raise ArgumentError if an array is given for instance_exec with optional argument. [ruby-core:76300] [Bug #12568] https://github.com/rails/rails/pull/25699
Fri Aug 12 11:45:02 2016 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/http/generic_rquest.rb (write_header): A Request-Line must not contain CR or LF.
Fri Aug 12 11:41:41 2016 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (putline): raise an ArgumentError when CR or LF is included in a line.
Fri Aug 12 11:21:24 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (tr_trans): consider terminator length and fix heap overflow. reported by Guido Vranken <guido AT guidovranken.nl>.
Tue Jul 12 00:17:36 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* tool/fake.rb: don't fake libdir. use libdirname instead.
Thu Jul 7 00:05:00 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* bignum.c (Init_Bignum): revert a part of previous commit (r55598), because the implementation of Object#hash is a little difference from trunk. cf. [Backport #12391]
Wed Jul 6 23:02:03 2016 Kenta Murata <mrkn@mrkn.jp>
* bignum.c (rb_big_hash): make it public function to be available in other source files, and remove documentation comment for Bignum#hash. * bignum.c (Bignum#hash): remove its definition because it is unified with Object#hash. * include/ruby/intern.h (rb_big_hash): add a prototype declaration. * hash.c (any_hash): treat Bignum values directly.
Fri Jun 10 17:48:51 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (OptionParser::Completion.candidate): get rid of nil as key names. [ruby-core:75773] [Bug #12438] * lib/optparse.rb (OptionParser#make_switch): char class option cannot be NoArgument, default to RequiredArgument.
Fri Jun 10 17:44:59 2016 NARUSE, Yui <naruse@ruby-lang.org>
* re.c (unescape_nonascii): scan hex up to only 3 characters. [Bug #12420] [Bug #12423]
Fri Jun 10 17:44:59 2016 NARUSE, Yui <naruse@ruby-lang.org>
* regparse.c (fetch_token_in_cc): raise error if given octal escaped character is too big. [Bug #12420] [Bug #12423]
Fri Jun 10 17:34:09 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (rb_exec_getargs): honor the expected argument types over the conversion method. the basic language functionality should be robust. [ruby-core:75388] [Bug #12355]
Fri Jun 10 16:30:16 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (new_if_gen): set newline flag to NODE_IF to trace all if/elsif statements. [ruby-core:67720] [Bug #10763]
Fri Jun 10 16:24:29 2016 Marcus Stollsteimer <sto.mar@web.de>
* ext/date/date_core.c (Init_date_core): [DOC] Convert DateTime documentation to RDoc from Markdown. [ruby-core:75136] [Bug #12311]
Fri Jun 10 16:12:58 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (rb_local_constants_i): exclude hidden constants. [ruby-core:75575] [Bug #12389]
Fri Jun 10 16:10:23 2016 NARUSE, Yui <naruse@ruby-lang.org>
* regcomp.c (compile_length_tree): return error code immediately if compile_length_tree raised error [Bug #12418]
Fri Jun 10 16:06:25 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/missing.h (isfinite): move from numeric.c.
Fri Jun 10 16:06:25 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (isfinite): get rid of a warning on cygwin. [Bug #12417][ruby-core:75691]
Fri Jun 10 16:06:25 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (isfinite): isfinite does not always exist. fixed build error on Windows introduced at r55123.
Fri Jun 10 16:06:25 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): consider non-finite float values not to raise FloatDomainError. [ruby-core:75682] [Bug #12414]
Fri Jun 10 16:00:27 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (recursive_list_access): a object id may be a Bignum. so, the list must be a objhash, instead of a identhash. this fixes many test errors on mswin64 CI.
Fri Jun 10 15:56:24 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_modify_expand): check integer overflow. [ruby-core:75592] [Bug #12390]
Fri Jun 10 15:54:05 2016 Benoit Daloze <eregontp@gmail.com>
* insns.def (defineclass): Also raise an error when redeclaring the superclass of a class as Object and it has another superclass. [Bug #12367] [ruby-core:75446] * test/ruby/test_class.rb: test for above.
Fri Jun 10 15:46:24 2016 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* bignum.c: [DOC] Update result of 123456789 ** -2. [ruby-dev:49606] [Bug #12339]
Fri Jun 10 15:37:25 2016 Yuichiro Kaneko <yui-knk@ruby-lang.org>
* internal.h (RCOMPLEX_SET_IMAG): undef RCOMPLEX_SET_IMAG instead of duplicated undef RCOMPLEX_SET_REAL.
Fri Jun 10 15:37:25 2016 Yuichiro Kaneko <yui-knk@ruby-lang.org>
* complex.c (rb_complex_set_imag): Fix to properly set imag of complex.
Fri Jun 10 15:05:41 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c, include/ruby/win32.h (rb_w32_utruncate): implements new truncate alternative which accepts UTF-8 path. * file.c (truncate): use above function. [Bug #12340]
Fri Apr 29 20:11:38 2016 Tanaka Akira <akr@fsij.org>
* test/ruby/test_time_tz.rb: Tests depends on Europe/Moscow removed to avoid test failures due to the tzdata change. https://github.com/eggert/tz/commit/8ee11a301cf173afb0c76e0315b9f9ec8ebb9d95 Found by naruse.
Wed Apr 27 22:16:04 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* compile.c (new_label_body): missed backporting r54548 in r54698. this fixes randomly test failure introduced by r54698. cf. [Bug #12082]
Tue Apr 26 13:38:31 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* README.EXT{,.ja}: `nul` should be uppercase. change 'nul' => 'NUL'. [Fix GH-1172] derived from a patch by craft4coder <yooobuntu@163.com> * doc/extension.rdoc: Improvements to english grammers. [Bug #12246][ruby-core:74792][ci skip] derived from a patch by Marcus Stollsteimer <sto.mar@web.de>
Tue Apr 26 13:25:25 2016 Marcus Stollsteimer <sto.mar@web.de>
* encoding.c: Fix return value of `Encoding::ISO8859_1.name` [Bug #12313][ruby-core:75147][ci skip] * ext/bigdecimal/bigdecimal.c: Fix code sample of `BigDecimal.new`
Tue Apr 26 13:22:45 2016 Rei Odaira <Rei.Odaira@gmail.com>
* configure.in: add missing -lm for AIX.
Tue Apr 26 13:22:45 2016 Rei Odaira <Rei.Odaira@gmail.com>
* configure.in: don't use the system-provided round(3) on AIX. In AIX, round(0.49999999999999994) returns 1.0. Use round() in numeric.c instead.
Tue Apr 26 13:18:59 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c: cygwin does not use w32_cmdvector, command line can be other than UTF-8. [ruby-dev:49519] [Bug #12184]
Tue Apr 26 13:16:41 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_jump.c (exec_end_procs_chain): restore previous error info for each end procs. [ruby-core:75038] [Bug #12302]
Fri Apr 22 18:36:15 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (new_label_body): initialize bit fields, since compile_data_alloc does not clear the memory. [Bug #12082]
Fri Apr 22 18:36:15 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (iseq_optimize): disable tail call optimization in rescued, rescue, and ensure blocks. [ruby-core:73871] [Bug #12082]
Fri Apr 22 18:34:31 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* doc/regexp.rdoc (comments): [DOC] terminators cannot appear in comments. [ruby-core:74838] [Bug #12256]
Fri Apr 22 18:30:50 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* extension.rdoc, extension.ja.rdoc: [DOC] Fix some errors. Renamed files, wrong method names or argument types; the example GetDBM macro is now updated to the current version of the actual code. patches are derived from Marcus Stollsteimer in [ruby-core:74690]. [Bug #12228]
Fri Apr 22 18:22:15 2016 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-utf8/nkf.c (mime_putc): fix typo. [Bug #12202] [ruby-core:74802]
Fri Apr 22 18:22:15 2016 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-utf8/nkf.c: Merge upstream 4f3edf80a0. patched by Anton Sivakov [Bug #12201] [Bug #12202]
Fri Apr 22 18:16:51 2016 NARUSE, Yui <naruse@ruby-lang.org>
* lib/securerandom.rb (gen_random): to avoid blocking on Windows. On Windows OpenSSL RAND_bytes (underlying implementation is RAND_poll in crypto/rand/rand_win.c) may be blocked at NetStatisticsGet. https://wiki.openssl.org/index.php/Random_Numbers#Windows_Issues Instead of this, use Random.raw_seed directory (whose implementation CryptGenRandom is one of the source of entropy of RAND_poll on Windows). https://wiki.openssl.org/index.php/Random_Numbers Note: CryptGenRandom function is PRNG and doesn't check its entropy, so it won't block. [Bug #12139] https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa379942.aspx https://tools.ietf.org/html/rfc4086#section-7.1.3 https://eprint.iacr.org/2007/419.pdf http://www.cs.huji.ac.il/~dolev/pubs/thesis/msc-thesis-leo.pdf
Fri Apr 22 18:13:22 2016 Hiroshi Shirosaki <h.shirosaki@gmail.com>
* lib/rubygems/test_case.rb: Fix test on Windows for inconsistent temp path. https://github.com/rubygems/rubygems/pull/1554 [Bug #12193][ruby-core:74431]
Fri Apr 22 16:37:14 2016 multisnow <infinity.blick.winkel@gmail.com>
* ext/openssl/extconf.rb: check RAND_edg to support libressl. * ext/openssl/ossl_rand.c (ossl_rand_egd): define only if RAND_edg is available. [Fix GH-829]
Fri Apr 22 16:24:00 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (rb_cv_lgamma_r_m0): fix the condition for lgamma_r(-0.0). [Bug #12249]
Fri Apr 22 16:24:00 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (rb_cv_lgamma_r_m0): check if lgamma_r(-0.0) returns negative infinity. [Bug #12249] * math.c (ruby_lgamma_r): define by the configured result.
Fri Apr 22 16:24:00 2016 cremno phobia <cremno@mail.ru>
* math.c (ruby_lgamma_r): missing/lgamma_r.c is used on Windows, since msvcrt does not provide it. * missing/lgamma_r.c (lgamma_r): fix lgamma(-0.0). [ruby-core:74823] [Bug #12249]
Fri Apr 22 16:24:00 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* math.c (ruby_lgamma_r): mswin's lgamma_r also seems to be wrong. cf. [Bug #12249]
Fri Apr 22 16:24:00 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* math.c (ruby_tgamma): fix tgamma(-0.0) on mingw. [ruby-core:74817] [Bug #12249]
Fri Apr 22 16:00:50 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* defs/keywords (alias, undef): symbol literals are allowed. * parse.y (parse_percent): should parse symbol literals for alias and undef. [ruby-dev:47681] [Bug #8851]
Fri Apr 22 15:47:58 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* struct.c (struct_make_members_list): extract making member name list from char* va_list, with creating symbols without intermediate IDs.
Fri Apr 22 15:19:01 2016 Joe Swatosh <joe.swatosh@gmail.com>
* ext/win32/lib/win32/registry.rb (DeleteValue, DeleteKey): fix API names. [ruby-core:74863] [Bug #12264]
Fri Apr 22 15:13:39 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_core.h (rb_vm_struct): make at_exit a single linked list but not RArray, not to mark the registered functions by the write barrier. based on the patches by Evan Phoenix. [ruby-core:73908] [Bug #12095]
Fri Apr 22 15:08:27 2016 Benoit Daloze <eregontp@gmail.com>
* thread.c (update_coverage): Do not track coverage in loaded files after Coverage.result. Avoids out-of-bounds access. [Bug #12237] * ext/coverage/coverage.c (coverage_clear_result_i): document.
Fri Apr 22 14:56:46 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/date/date_core.c (Init_date_core): [DOC] fix misplaced doc of DateTime. [ruby-core:74729] [Bug #12233]
Fri Apr 22 14:48:09 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parse_ident): allow keyword arguments just after a method where the same name local variable is defined. [ruby-core:73816] [Bug#12073]
Fri Apr 22 14:34:27 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (setup_exception): set the cause only if it is explicitly given or not set yet. [Bug #12068]
Fri Apr 22 14:13:28 2016 sorah (Shota Fukumori) <her@sorah.jp>
* lib/forwardable.rb: Convert given accessors to String. r53381 changed to accept only Symbol or String for accessors, but there are several rubygems that pass classes (e.g. Array, Hash, ...) as accessors. Prior r53381, it was accepted because Class#to_s returns its class name. After r53381 given accessors are checked with define_method, but it accepts only Symbol or String, otherwise raises TypeError. def_delegator Foo, :some_method This change is to revert unexpected incompatibility. But this behavior may change in the future.
Fri Apr 22 14:13:28 2016 Elliot Winkler <elliot.winkler@gmail.com>
* lib/forwardable.rb (def_instance_delegator) fix delegating to 'args' and 'block', clashing with local variables in generated methods. [ruby-core:72579] [Bug #11916] * lib/forwardable.rb (def_single_delegator): ditto.
Fri Apr 22 13:41:38 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (compile_massign_lhs): when index ends with splat, append rhs value to it like POSTARG, since VM_CALL_ARGS_SPLAT splats the last argument only. [ruby-core:72777] [Bug #11970]
Thu Mar 31 05:06:02 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sprintf.c (rb_str_format): fix buffer overflow, length must be greater than precision. reported by William Bowling <will AT wbowling.info>.
Thu Mar 31 04:49:05 2016 Kimura Wataru <kimuraw@i.nifty.jp>
* test/ruby/test_io.rb: handled rlimit value same as r52277 [Bug #11852][ruby-dev:49446]
Wed Mar 30 06:37:56 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* tool/extlibs.rb (do_patch): let "patch" command change the working directory and open the patch file there, instead of spawn options, so that proper error message will be shown by the command not just "chdir" or "open".
Wed Mar 30 06:11:36 2016 NARUSE, Yui <naruse@ruby-lang.org>
* thread_pthread.c (reserve_stack): fix reserving position where the stack growing bottom to top. [Bug #12118]
Wed Mar 30 06:04:18 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* .travis.yml: removed commented-out code.
Wed Mar 30 06:04:18 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* .travis.yml: removed osx code. follow up with r53517
Wed Mar 30 06:04:18 2016 Aaron Patterson <tenderlove@ruby-lang.org>
* .travis.yml: update libssl before running tests. Thanks to Chris Sinjakli <chris@sinjakli.co.uk> for figuring out the travis settings!
Wed Mar 30 06:04:18 2016 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* .travis.yml: removed Ruby 1.9.3 build on Travis CI
Wed Mar 30 06:04:18 2016 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* .travis.yml: Remove redundant configuration option. [fix GH-809] Patch by @gxworld
Wed Mar 30 05:15:04 2016 Kazuki Yamaguchi <k@rhe.jp>
* ext/openssl/extconf.rb: check SSL_CTX_set_next_proto_select_cb function rather than OPENSSL_NPN_NEGOTIATED macro. it exists even if it is disabled by OpenSSL configuration. [ruby-core:74384] [Bug #12182] * ext/openssl/ossl_ssl.c: update #ifdef(s) as above. * test/openssl/test_ssl.rb: skip NPN tests if NPN is disabled.
Wed Mar 30 05:13:25 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/uri/http.rb (URI::HTTP#initialize): [DOC] fix example, missing mandatory arguments. [ruby-core:74540] [Bug #12215]
Tue Mar 29 02:22:35 2016 Martin Duerst <duerst@it.aoyama.ac.jp>
* lib/uri/mailto.rb: raising URI::InvalidComponentError instead of failing with undefined method `split' for nil:NilClass for mailto: URIs without opaque part. [Bug #10738] * test/uri/testuri.rb: Test for above
Tue Mar 29 02:08:40 2016 Koichi Sasada <ko1@atdot.net>
* signal.c: should also clear ruby_disable_gc. [Bug #11692]
Tue Mar 29 02:04:18 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (rb_f_catch): [DOC] fix malformed RDoc syntax, "+...+" cannot enclose non-identifier characters. a patch by Sebastian S in [ruby-core:74278]. [Bug#12170]
Tue Mar 29 02:02:53 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/-ext-/float/test_nextafter.rb: In AIX, nextafter(+0.0,-0.0)=+0.0, and nextafter(-0.0,+0.0)=-0.0, but they should return -0.0 and +0.0, respectively. This is a known bug in nextafter(3) on AIX, so skip related tests.
Tue Mar 29 01:56:24 2016 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* lib/rubygems/installer.rb: merge partially r49511. cherry picking https://github.com/rubygems/rubygems/commit/f9232680 [Bug #12066]
Tue Mar 29 01:41:10 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (enc_succ_alnum_char): try to skip an invalid character gap between GREEK CAPITAL RHO and SIGMA. [ruby-core:74478] [Bug #12204]
Tue Mar 29 01:27:52 2016 Victor Nawothnig <Victor.Nawothnig@gmail.com>
* parse.y (parse_numvar): NTH_REF must be less than a half of INT_MAX, as it is left-shifted to be ORed with back-ref flag. [ruby-core:74444] [Bug#12192] [Fix GH-1296]
Tue Mar 29 01:24:55 2016 NARUSE, Yui <naruse@ruby-lang.org>
* enc/trans/JIS: update Unicode's notice. [Bug #11844]
Tue Mar 29 01:22:39 2016 Eric Hodel <drbrain@segment7.net>
* marshal.c (r_object0): raise ArgumentError when linking to undefined object.
Tue Mar 29 01:22:39 2016 Eric Hodel <drbrain@segment7.net>
* marshal.c (r_object0): Fix Marshal crash for corrupt extended object.
Tue Mar 29 01:20:37 2016 Eric Wong <e@80x24.org>
* ext/openssl/ossl_ssl.c (ossl_sslctx_setup): document as MT-unsafe [ruby-core:73803] [Bug #12069]
Tue Mar 29 01:07:36 2016 NARUSE, Yui <naruse@ruby-lang.org>
* insns.def (opt_mod): show its method name on ZeroDivisionError. [Bug #12158]
Tue Mar 29 01:05:28 2016 Anthony Dmitriyev <antstorm@gmail.com>
* net/ftp.rb: add NullSocket#closed? to fix closing not opened connection. [Fix GH-1232]
Tue Mar 29 01:02:49 2016 Koichi ITO <koic.ito@gmail.com>
* variable.c: Added documentation about order of `Module#constants` [ci skip][Bug #12121][ruby-dev:49505][fix GH-1301]
Tue Mar 29 00:56:10 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/ruby/test_process.rb (test_execopts_gid): Skip a test that is known to fail on AIX. AIX allows setgid to a supplementary group, but Ruby does not allow the "-e" option when setgid'ed, so the test does not work as intended.
Tue Mar 29 00:53:26 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/socket/test_addrinfo.rb (test_ipv6_address_predicates): IN6_IS_ADDR_V4COMPAT and IN6_IS_ADDR_V4MAPPED are broken on AIX, so skip related tests.
Tue Mar 29 00:44:55 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/rinda/test_rinda.rb (test_make_socket_ipv4_multicast): The fifth argument to getsockopt(2) should be modified to indicate the actual size of the value on return, but not in AIX. This is a know bug. Skip related tests. * test/rinda/test_rinda.rb (test_ring_server_ipv4_multicast): ditto. * test/rinda/test_rinda.rb (test_make_socket_unicast): ditto. * test/socket/test_basicsocket.rb (test_getsockopt): ditto. * test/socket/test_sockopt.rb (test_bool): ditto.
Tue Mar 29 00:43:40 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/zlib/test_zlib.rb (test_adler32_combine, test_crc32_combine): Skip two tests on AIX because zconf.h in zlib does not correctly recognize _LARGE_FILES in AIX. The problem was already reported to zlib, and skip these tests until it is fixed.
Tue Mar 29 00:42:10 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_lock): skip this test on AIX. The issue is the same as on Solaris. [ruby-dev:47631]
Tue Mar 29 00:33:06 2016 Rei Odaira <Rei.Odaira@gmail.com>
* thread_pthread.c (getstack): __pi_stacksize returned by pthread_getthrds_np() is wrong on AIX. Use __pi_stackend - __pi_stackaddr instead.
Tue Mar 29 00:06:58 2016 Alex Boyd <alex@opengroove.org>
* lib/irb.rb: avoid to needless truncation when using back_trace_limit option. [fix GH-1205][ruby-core:72773][Bug #11969]
Tue Mar 29 00:00:27 2016 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/tk/lib/tkextlib/tcllib/tablelist_tile.rb: fix method name typo. [ruby-core:72513] [Bug #11893] The patch provided by Akira Matsuda.
Mon Mar 28 23:58:27 2016 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/tk/lib/tkextlib/tcllib/toolbar.rb: fix method name typo. [ruby-core:72511] [Bug #11891] The patch provided by Akira Matsuda.
Mon Mar 28 23:57:33 2016 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/tk/lib/tkextlib/blt/tree.rb: fix method name typo. [ruby-core:72510] [Bug #11890] The patch provided by Akira Matsuda.
Mon Mar 28 23:56:17 2016 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/tk/lib/tk/menubar.rb: fix a typo in font name. [ruby-core:72505] [Bug #11886] The patch provided by Akira Matsuda. * ext/tk/sample/*.rb: ditto.
Mon Mar 28 23:20:12 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/fiddle/test_handle.rb (test_NEXT): use -test-/dln/empty which is always a shared object and is not used by others. [ruby-dev:48629] [Bug #10384]
Mon Mar 28 23:15:54 2016 Kenta Murata <mrkn@mrkn.jp>
* ruby.h: undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P and HAVE_BUILTIN___BUILTIN_TYPES_COMPATIBLE_P on C++. [ruby-core:72736] [Bug #11962]
Thu Mar 24 20:39:58 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/option.c (inspect_tcpi_msec): more accurate condition for TCPI msec member inspection function. [ruby-core:74388] [Bug #12185]
Thu Mar 10 00:22:25 2016 Naotoshi Seo <sonots@gmail.com>
* lib/logger.rb: Remove block from Logger.add as it's not needed patch provided by Daniel Lobato Garcia [fix GH-1240] [Bug #12054]
Thu Mar 10 00:17:57 2016 Zachary Scott <zzak@ruby-lang.org>
* re.c: Remove deprecated kcode argument from Regexp.new and compile patch provided by Dylan Pulliam [Bug #11495]
Thu Mar 10 00:17:57 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* re.c: Update documentation for Regexp class. [fix GH-937][ci skip] Patch by @davydovanton
Thu Mar 10 00:04:34 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/socket.c (sock_gethostname): support unlimited size hostname.
Wed Mar 9 22:59:43 2016 Kouhei Sutou <kou@cozmixng.org>
* lib/xmlrpc/client.rb: Support SSL options in async methods of XMLRPC::Client. [Bug #11489] Reported by Aleksandar Kostadinov. Thanks!!!
Wed Mar 9 22:46:56 2016 NARUSE, Yui <naruse@ruby-lang.org>
* marshal.c (r_object0): honor Marshal.load post proc value for TYPE_LINK. by Hiroshi Nakamura <nahi@ruby-lang.org> https://github.com/ruby/ruby/pull/1204 fix GH-1204
Wed Mar 9 22:26:38 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/option.c (sockopt_bool): relax boolean size to be one too not only sizeof(int). Winsock getsockopt() returns a single byte as a boolean socket option. [ruby-core:72730] [Bug #11958]
Wed Mar 9 05:14:20 2016 Eric Wong <e@80x24.org>
* io.c (io_getpartial): remove unused kwarg from template * test/ruby/test_io.rb (test_readpartial_bad_args): new [Bug #11885]
Wed Mar 9 05:14:20 2016 Eric Wong <e@80x24.org>
* ext/openssl/ossl_ssl.c (ossl_ssl_read_internal): do not process kwargs in blocking mode * test/openssl/test_ssl.rb: test sysread
Wed Mar 9 04:21:02 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* process.c (rb_execarg_parent_start1): need to convert the encoding to ospath's one.
Wed Mar 9 04:21:02 2016 NAKAMURA Usaku <usa@ruby-lang.org>
* process.c: use rb_w32_uchdir() instead of plain chdir() on Windows. reported by naruse via twitter. * process.c (rb_execarg_addopt): need to convert the encoding to ospath's one.
Wed Mar 9 04:15:20 2016 Eric Wong <e@80x24.org>
* ext/stringio/stringio.c (strio_binmode): implement to set encoding * test/stringio/test_stringio.rb (test_binmode): new test [ruby-core:72699] [Bug #11945]
Wed Mar 9 03:53:37 2016 Tadashi Saito <tad.a.digger@gmail.com>
* compile.c, cont.c, doc, man: fix common misspelling. [ruby-core:72466] [Bug #11870]
Wed Mar 9 03:51:48 2016 Eric Wong <e@80x24.org>
* ext/socket/init.c (rsock_init_sock): reject reserved FDs [ruby-core:72445] [Bug #11862]
Wed Mar 9 03:41:27 2016 Eric Wong <e@80x24.org>
* ext/socket/init.c (rsock_init_sock): check FD after validating * test/socket/test_basicsocket.rb (test_for_fd): new [ruby-core:72418] [Bug #11854]
Wed Mar 9 03:34:54 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (reg_names_iter): should consider encoding of regexp. [ruby-core:72185] [Bug #11825]
Wed Feb 24 08:18:18 2016 Naohisa Goto <ngotogenome@gmail.com>
* enc/windows_1250.c: Should not use C++ style comments (C99 feature). [Bug #11843]
Tue Feb 23 03:43:23 2016 Martin Duerst <duerst@it.aoyama.ac.jp>
* enc/iso_8859_2.c, enc/windows_1250.c: separate Windows-1250 from ISO-8859-2 to fix 0x80..0x9e range (from Kimihito Matsui)
Tue Feb 23 03:43:23 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enc/windows_1252.c: separate from ISO-8859-1 to fix 0x80..0x9e range. [ruby-core:64049] [Bug #10097]
Tue Feb 23 03:43:23 2016 Martin Duerst <duerst@it.aoyama.ac.jp>
* enc/iso_8859_13.c: Added three missing lower/upper-case character pairs (from Kimihito Matsui)
Tue Feb 23 03:43:23 2016 Martin Duerst <duerst@it.aoyama.ac.jp>
* enc/iso_8859_4.c: Added missing lower/upper-case character pair (U+014A and U+014B, LATIN CAPITAL/SMALL LETTER ENG) (from Kimihito Matsui)
Mon Feb 15 02:05:13 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_scrub): the result should be infected by the original string.
Mon Feb 15 02:05:13 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (rb_econv_substr_append, econv_primitive_convert): the result should be infected by the original string.
Mon Feb 15 02:05:13 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/ruby.h: add raw FL macros, which assume always the argument object is not a special constant. * internal.h (STR_EMBED_P, STR_SHARED_P): valid only for T_STRING. * string.c: deal with taint flags directly across String instances.
Mon Feb 15 01:20:08 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (regexp): set_yylval_num sets u1, should use nd_tag instead of nd_state. [ruby-core:72638] [Bug #11932]
Tue Jan 26 21:52:16 2016 Joseph Tibbertsma <josephtibbertsma@gmail.com>
* gc.c (RVALUE_PAGE_WB_UNPROTECTED): fix a typo of argument name. [Fix GH-1221]
Mon Jan 18 00:34:41 2016 Koichi Sasada <ko1@atdot.net>
* vm_insnhelper.c (vm_call_method): should not set fastpath with keyword arguments for VM_METHOD_TYPE_ATTRSET type methods. Normally, we can not use keyword arguments for this kind of methods, (obj.foo = 1), but we can set alias names for them. [Bug #11657] * test/ruby/test_keyword.rb: add a test for this fix.
Wed Dec 23 06:05:50 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex): allow here documents in labeled argument. [ruby-core:72396] [Bug #11849]
Wed Dec 23 05:52:06 2015 Yuki Yugui Sonoda <yugui@yugui.jp>
* test/ruby/test_syntax.rb: fix typo in test
Wed Dec 23 05:52:06 2015 Yuki Yugui Sonoda <yugui@yugui.jp>
* parse.y (parse_percent): Allow %-literals in labeled arg as r51624 did for parentheses. Fixes [ruby-core:72084] [Bug #11812].
Mon Dec 21 05:05:54 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* cont.c: fix a double word typo. [Bug #11313][ruby-core:69749]
Mon Dec 21 05:04:18 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* ext/tk/lib/multi-tk.rb: fix typos. [Bug #11764][ruby-core:71800]
Wed Dec 16 21:10:19 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/fiddle/handle.c: check tainted string arguments. Patch provided by tenderlove and nobu. * test/fiddle/test_handle.rb (class TestHandle): add test for above.
Wed Dec 16 02:38:19 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (parse_mode_enc): fix buffer overflow.
Sat Dec 12 17:19:27 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* doc/NEWS-0.2.2: add description about incompatible change in Hash duplicated key overriding policy. [Bug #10315] [Bug #11501]
Fri Dec 11 22:41:15 2015 Eric Wong <e@80x24.org>
* insns.def (opt_case_dispatch): avoid converting Infinity * test/ruby/test_optimization.rb (test_opt_case_dispatch_inf): new [ruby-dev:49423] [Bug #11804]'
Thu Dec 10 00:23:07 2015 Rei Odaira <Rei.Odaira@gmail.com>
* configure.in: pthread_getattr_np is broken on AIX. More specifically, the stack address and size returned are not correct.
Thu Dec 10 00:19:18 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* common.mk (update-gems): use BASERUBY instead of RUNRUBY.
Wed Dec 9 01:49:13 2015 Eric Wong <e@80x24.org>
* insns.def (opt_case_dispatch): check Float#=== redefinition * test/ruby/test_optimization.rb (test_opt_case_dispatch): new [ruby-core:71920] [Bug #11784]
Wed Dec 9 01:46:23 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby_atomic.h (ATOMIC_SIZE_CAS): fix the argument order of InterlockedCompareExchange64. new value and then old value is the last.
Wed Dec 9 01:28:54 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* encoding.c (enc_m_loader): defer finding encoding object not to be infected by marshal source. [ruby-core:71793] [Bug #11760] * marshal.c (r_object0): enable compatible loader on USERDEF class. the loader function is called with the class itself, instead of an allocated object, and the loaded data. * marshal.c (compat_allocator_table): initialize compat_allocator_tbl on demand. * object.c (rb_undefined_alloc): extract from rb_obj_alloc.
Wed Dec 9 01:24:57 2015 Rei Odaira <Rei.Odaira@gmail.com>
* ext/-test-/file/fs.c: need to include sys/statvfs.h to use statvfs(). * ext/-test-/file/extconf.rb: check the existence of sys/statvfs.h
Fri Dec 4 04:46:33 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sprintf.c (rb_str_format): fix wrong shifting position in Rational conversion when not at the beginning of the result. [ruby-core:71806] [Bug #11766]
Fri Dec 4 02:42:37 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* range.c (range_to_s): should be infected by the receiver. str2 infects by appending. [ruby-core:71811] [Bug #11767]
Wed Dec 2 03:17:01 2015 NARUSE, Yui <naruse@ruby-lang.org>
* ext/readline/extconf.rb: call dir_config("libedit") if --enable-libedit is spcified. [Bug #11751] patched by John Hein
Wed Dec 2 02:59:42 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_here_document): store dispatched result of on_tstring_content at the last fragment of a here document.
Tue Dec 1 02:52:17 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* test/ruby/test_gc.rb: merge partially r52391 to get rid of CI error.
Tue Dec 1 02:27:41 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_each_codepoint): raise an exception at incomplete character before EOF when conversion takes place. [Bug #11444]
Sun Nov 29 18:02:44 2015 Shugo Maeda <shugo@ruby-lang.org>
* io.c (argf_getpartial): should not resize str if the second argument is not given. [ruby-core:71668] [Bug #11738]
Sun Nov 29 17:48:39 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (local_var_list_add): skip internal local variable name by its type but not if it has a name. internal local variable names are just unique per frame, not globally. [ruby-core:71437] [Bug #11674]
Sun Nov 29 17:13:16 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_each_codepoint): read more data when read partially. [ruby-core:70379] [Bug #11444]
Sun Nov 29 16:46:25 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* lib/net/http.rb: set hostname before call ossl_ssl_set_session. [Bug #11401][ruby-core:70152][fix GH-964] Patch by @mkarnebeek
Sun Nov 29 16:33:30 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (rb_econv_open0): rb_econv_t::source_encoding_name and rb_econv_t::destination_encoding_name should refer static strings always or NULL. [ruby-core:70247] [Bug #11416]
Sun Nov 29 16:11:32 2015 Eric Wong <e@80x24.org>
* iseq.c (iseq_data_to_ary): dump kw_arg as symbol * test/-ext-/iseq_load/test_iseq_load.rb: test kw_arg roundtrip [ruby-core:69891] [Bug #11338]
Sun Nov 29 02:55:56 2015 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* gc.c (__has_feature): move into internal.h. * internal.h (__has_feature): ditto. * internal.h (__has_extension): new macro. * internal.h (STATIC_ASSERT): use _Static_assert with clang. [ruby-core:69931] [Bug #11343]
Sat Nov 28 06:28:55 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (literal_concat_gen, evstr2dstr_gen): keep literal encoding beginning with an interpolation same as the source file encoding. [ruby-core:70703] [Bug #11519]
Sat Nov 28 06:12:32 2015 NARUSE, Yui <naruse@ruby-lang.org>
* ext/openssl/ossl_ssl.c (ssl_npn_select_cb): explicitly raise error in ext/openssl instead of OpenSSL itself because LibreSSL silently truncate the selected protocol name by casting the length from int to unsigned char. [Bug #11369] Patch by Jeremy Evans <merch-redmine@jeremyevans.net>
Sat Nov 28 05:50:58 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (send_internal): set method_missing_reason before invoking overriding method_missing method so that the default method_missing can achieve it properly. [ruby-core:68515] [Bug #10969]
Sat Nov 28 05:47:27 2015 Rei Odaira <Rei.Odaira@gmail.com>
* test/ruby/test_symbol.rb (test_symbol_fstr_leak): add a warm-up code and check RSS to avoid false positive on AIX and false negative on Mac OS X. [Bug #10686]
Sat Nov 28 05:47:27 2015 Rei Odaira <Rei.Odaira@gmail.com>
* test/ruby/test_symbol.rb: avoid a false positive in AIX.
Sat Nov 28 05:35:28 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* test/objspace/test_objspace.rb (test_trace_object_allocations_start_stop_clear): clear object allocation table first to get rid of erroneous detection for obj3. [ruby-dev:49095] [Bug #11271]
Sat Nov 28 05:21:06 2015 Koichi Sasada <ko1@atdot.net>
* insns.def (defined): skip respond_to_missing? when a method is available. [Bug #11211] * test/ruby/test_defined.rb: add a test for this fix.
Wed Nov 25 01:05:29 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/digest/sha1/sha1ossl.c: fix defs.h path to catch up changes in r52739.[Bug #3231] * ext/digest/rmd160/rmd160ossl.c: ditto.
Wed Nov 25 00:54:15 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (kwd_append): fix segv after invalid keyword argument, preceding keyword list is NULL when syntax error is there. [ruby-core:71356] [Bug #11663]
Wed Nov 25 00:47:07 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* lib/ipaddr.rb, test/test_ipaddr.rb: Reject invalid address contained EOL string. Patch by @kachick [fix GH-942][Bug #11513]
Wed Nov 25 00:32:44 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (iseq_build_from_ary_body): register cdhash to the iseq constant body instead of compile time mark array, not to get GCed. [ruby-core:70708] [Feature #8543]
Wed Nov 25 00:14:28 2015 NARUSE, Yui <naruse@ruby-lang.org>
* ext/digest/*/*.[ch]: include ruby.h before digest.h to avoid includeing ext/digest/extconf.h. [Bug #3231] https://msdn.microsoft.com/library/36k2cdd4.aspx * ext/digest/*/extconf.rb: remove ext/digest from include search path to avoid confusion of cl.exe. * ext/digest/*/*.[ch]: explicitly specify def.h's path.
Wed Nov 25 00:03:42 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* Added missing reference of GitHub
Wed Nov 25 00:03:42 2015 Trevor Rowe <trevorrowe@gmail.com>
* lib/net/http.rb: Fixed regression for Net::HTTP::PUT with "Expect-100" header. [fix GH-949] * test/net/http/test_http.rb: added test.
Mon Nov 23 00:19:51 2015 Koichi Sasada <ko1@atdot.net>
* vm_insnhelper.c (vm_invoke_block): we should not expect ci->argc is stable after invoking a block. [Bug #11451] * test/ruby/test_yield.rb: add a test. This test script is given by Alex Dowad.
Thu Nov 19 01:06:07 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (rb_load_internal0): stop separating exits at loading from exits from execution. TAG_FATAL is the only case that `errinfo` is a Fixnum, and should continue to exit by JUMP_TAG but not raising as an ordinary exception. [ruby-core:70169] [Bug #11404]
Thu Nov 19 01:06:07 2015 Alex Dowad <alexinbeijing@gmail.com>
* load.c (rb_load_internal0): extra check before returning TAG_RAISE when a non-local transfer of control happens while loading and parsing a Ruby source file. [ruby-core:70169] [Bug #11404]
Thu Nov 19 01:06:07 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (rb_load_internal0): do not raise any exceptions but return the result tag state. * load.c (rb_load_protect): reduce nested EXEC_TAGs.
Thu Nov 19 00:41:09 2015 NARUSE, Yui <naruse@ruby-lang.org>
* enc/euc_jp.c (mbc_case_fold): check given string is valid or not, and if invalid, return 1. [Bug #11486]
Thu Nov 19 00:15:23 2015 Zachary Scott <zzak@ruby-lang.org>
* ext/openssl/ossl_pkey.c: Merge ruby/openssl@b9ea8ef [Bug #10735]
Thu Nov 19 00:01:14 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (argf_next_argv): check ARGV element type, and try conversion if necessary. [ruby-core:71140] [Bug #11610]
Wed Nov 18 23:29:32 2015 Aaron Patterson <tenderlove@ruby-lang.org>
* ext/openssl/ossl_ssl.c (ossl_ssl_method_tab): Only add SSLv3 support if the SSL library supports it. Thanks Kurt Roeckx <kurt@roeckx.be> [Bug #11376] * ext/openssl/extconf.rb: check for SSLv3 support in the SSL implementation. * test/openssl/test_ssl.rb (class OpenSSL): Skip tests that need SSLv3 if there is no support.
Mon Nov 16 03:39:59 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* tool/runruby.rb: rubyspec now requires other FDs not to be closed since 7b6ce1fee.
Sun Nov 8 23:30:56 2015 Koichi Sasada <ko1@atdot.net>
* vm_trace.c (rb_threadptr_exec_event_hooks_orig): maintain trace_running counter on internal events. This patch is made by Takashi Kokubun <takashikkbn@gmail.com>. [Bug #11603] https://github.com/ruby/ruby/pull/1059
Sun Nov 1 03:52:41 2015 Aaron Patterson <tenderlove@ruby-lang.org>
* test/openssl/test_ssl_session.rb: Fix tests so that they take in to account OpenSSL installations that have SSLv3 disabled by default. Thanks Jeremy Evans <code@jeremyevans.net> for the patches. [Bug #11366] [Bug #11367]
Sun Nov 1 03:40:43 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/openssl/test_ssl_session.rb (OpenSSL#test_ctx_client_session_cb): fix test failure with OpenSSL disabled SSLv3 protocol. [ruby-core:63772] [Bug #10046]
Tue Oct 27 23:58:32 2015 Koichi Sasada <ko1@atdot.net>
* vm.c (hook_before_rewind): prevent kicking :return event while finishing vm_exec func because invoke_block_from_c() kick a :return event for bmethods. [Bug #11492] * test/ruby/test_settracefunc.rb: add a test.
Tue Oct 27 23:38:26 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: check for libunwind.h, which is not available in very old OS X SDK. [ruby-core:71080] [Bug #11591]
Tue Oct 27 23:32:51 2015 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* test/drb/test_drb.rb: Run Rinda/DRb tests on localhost. [Fix GH-1027] patch by voxik. * test/rinda/test_rinda.rb: ditto
Tue Oct 6 01:29:02 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (IS_BEG): include labeled argument state, which was EXPR_LABELARG. [ruby-dev:49221] [Bug #11456]
Tue Oct 6 01:29:02 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y: fix syntax error at do-block after a conditional operator. separate label-allowed and after-a-label states from others as bit flags. [ruby-dev:48790] [Bug #10653]
Mon Oct 5 03:29:23 2015 Tanaka Akira <akr@fsij.org>
* enum.c (nmin_filter): Fix limit value. patch by Helder Pereira. [Bug #11471] [ruby-core:70477]
Wed Sep 30 03:44:36 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rss/rss.rb (Time#w3cdtf): fix zero-trimmed width of fraction digits. [ruby-core:70667] [Bug #11509]
Wed Sep 30 03:34:25 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (rb_memsearch_wchar, rb_memsearch_qchar): test matching till the end of string. [ruby-core:70592] [Bug #11488] * test/ruby/test_m17n.rb (test_include?, test_index): add tests by Tom Stuart.
Wed Sep 30 03:24:29 2015 NARUSE, Yui <naruse@ruby-lang.org>
* thread_pthread.c (reserve_stack): ensure the memory is really allocated. [Bug #11457]
Tue Aug 25 01:01:01 2015 Koichi Sasada <ko1@atdot.net>
* insns.def (defineclass): introduce an ad-hoc patch to avoid an issue reported on [Bug #10871]. This patch does not fix completely. For example, method definition in a block (like 1.times{def ...; end}) still causes same issue. To solve all, we need a huge patch and it seems difficult for stable branch. Use Ruby 2.3 and later to solve this issue completely. (See [Bug #10943])
Tue Aug 18 22:52:50 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* tool/downloader.rb: support old versions of ruby. * tool/downloader.rb: now can download gems by http if openssl is not available (this may be danger!)
Tue Aug 18 20:10:13 2015 Tanaka Akira <akr@fsij.org>
* numeric.c (Init_Numeric): Fix document for Float::MIN and Float::EPSILON.
Mon Aug 17 23:07:47 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* lib/rubygems.rb: bump version to 2.4.5.1. this version fixed CVE-2015-3900. * lib/rubygems/remote_fetcher.rb: ditto. * test/rubygems/test_gem_remote_fetcher.rb: added testcase for CVE-2015-3900
Mon Aug 17 23:00:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (API#SetValue): data size should be in bytes, not in chars. [ruby-core:70365] [Bug #11439]
Mon Aug 17 23:00:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (API#SetValue): add terminator size, not 1 byte. [ruby-core:70365] [Bug #11439]
Sun Aug 16 03:14:04 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (rb_memsearch): should match only char boundaries in wide character encodings. [ruby-core:70220] [Bug #11413]
Sun Aug 16 03:00:44 2015 Eric Wong <e@80x24.org>
* symbol.h (struct RSymbol): add hashval field * symbol.c (dsymbol_alloc): setup hashval field once * hash.c (rb_any_hash): return RSymbol->hashval directly * common.mk: hash.o depends on symbol.h Thanks to Bruno Escherl <bruno@escherl.net> for the bug report [ruby-core:70129] [Bug #11396]
Fri Aug 14 16:30:43 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (rb_econv_set_replacement): target encoding name can be empty now. [ruby-core:69841] [Bug #11324]
Fri Aug 14 15:24:12 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_any_hash): fix Float hash. rb_dbl_hash() returns a Fixnum, but not a long. [Bug #9381]
Fri Aug 14 15:09:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/json/parser/parser.rl: raise with messages in UTF-8 encoding. [ruby-core:67386] [Bug #10705]
Fri Aug 14 00:44:34 2015 Eric Wong <e@80x24.org>
* io.c (rb_io_oflags_modestr): handle O_TRUNC correctly * test/ruby/test_io.rb (test_reopen_stdio): new test Patch-by: cremno phobia <cremno@mail.ru> [ruby-core:69779] [Bug #11319]
Thu Aug 13 01:25:26 2015 Benoit Daloze <eregontp@gmail.com>
* lib/net/ftp.rb (makeport): close the TCPServer when sending the port fails. * test/net/ftp/test_ftp.rb: test for above.
Thu Aug 13 01:03:13 2015 Kazuki Tsujimoto <kazuki@callcc.net>
* lib/net/http/response.rb (Net::HTTPResponse::Inflater#finish): fix a bug that empty gzipped response body causes Zlib::BufError. [ruby-core:68846] [Bug #11058] * test/net/http/test_httpresponse.rb: tests for the above.
Thu Aug 13 01:03:13 2015 Kazuki Tsujimoto <kazuki@callcc.net>
* lib/net/http/response.rb (Net::HTTPResponse#inflater): fix TypeError. An exception object might be nil. [ruby-core:68846] [Bug #11058]
Thu Aug 13 00:03:24 2015 Aaron Patterson <tenderlove@ruby-lang.org>
* .travis.yml: update libssl before running tests. Thanks to Chris Sinjakli <chris@sinjakli.co.uk> for figuring out the travis settings!
Thu Aug 13 00:03:24 2015 Aaron Patterson <tenderlove@ruby-lang.org>
* ext/openssl/lib/openssl/ssl.rb (module OpenSSL): raise a more helpful exception when verifying the peer connection and an anonymous cipher has been selected. [ruby-core:68330] [Bug #10910] Thanks to Chris Sinjakli <chris@sinjakli.co.uk> for the patch. * test/openssl/test_ssl.rb (class OpenSSL): test for change
Wed Aug 12 23:57:01 2015 NARUSE, Yui <naruse@ruby-lang.org>
* ext/date/extconf.rb: try_cflags("-std=iso9899:1999") [Bug #10906] ruby itself (including numeric.c) is built with strict compile options including -std=iso9899:1999, but ext/date is not. By the way -std=iso9899:1999 is not only a warning option but also changes behavior like MACRO definitions for example INFINITY. gcc on Solaris affect this.
Wed Aug 12 23:53:39 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (waitpid): return immediately if interrupted. reported by <takkanm AT gmail.com> [ruby-dev:49176] [Bug #11340]
Wed Aug 12 01:05:58 2015 Jeremy Evans <merch-redmine@jeremyevans.net>
* test/openssl/test_ssl.rb: Fix LocalJumpErrors being raised in OpenSSL tests. [ruby-core:70020][Bug #11368]
Wed Aug 12 00:54:29 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_repeated_permutation): fix buffer size, ALLOCV_N already multiplies element size.
Tue Aug 11 01:51:53 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* lib/timeout.rb (ExitException): leave Timeout::ExitException as an alias of Timeout::Error for backward compatibility in stable branch. [ruby-dev:49179] [Bug #11344]
Tue Aug 11 01:51:53 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/timeout.rb (ExitException): removed internal exception class and use Timeout::Error instead, as using throw/catch to isolate each timeouts now. [ruby-dev:49179] [Bug #11344]
Tue Aug 11 01:37:28 2015 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* test/net/http/test_httpresponse.rb (HTTPResponseTest#test_read_body_content_encoding_deflate_uppercase): fix a failure without zlib.
Tue Aug 11 01:37:28 2015 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/http/response.rb (inflater): CONTENT_ENCODING can be upper case. [ruby-core:69670] [Bug #11285] patched by Andy Chu
Tue Aug 11 01:21:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm.c (m_core_hash_merge_ptr): copy the arguments to the machine stack before rewinding the control frame pointer and leaving the arguments outside valid region of the value stack. [ruby-core:69969] [Bug #11352] * vm.c (REWIND_CFP): keep the arguments region inside the valid value stack. [ruby-core:69969] [Bug #11352]
Tue Aug 11 01:11:02 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_reverse): reversed string is not a substring, and should not set coderange of the original string. [ruby-dev:49189] [Bug #11387]
Tue Aug 11 00:42:53 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (lambda_body): pop cmdarg stack for lookahead token. [ruby-core:70067] [Bug #11380]
Tue Aug 11 00:21:56 2015 NARUSE, Yui <naruse@ruby-lang.org>
* ext/socket/extconf.rb: Solaris 11 has struct tcp_info.tcpi_ca_state, but it is a dummy. * ext/socket/option.c: Solaris 11 doesn't have u_intN_t. * ext/socket/option.c: Solaris 11 needs inspect_tcpi_msec. * ext/socket/raddrinfo.c: Solaris 11 has AF_PACKET but doesn't have related macros.
Tue Aug 4 04:11:34 2015 Tanaka Akira <akr@fsij.org>
* lib/time.rb (strptime): Support %s.%N. [ruby-core:68301] [Bug #10904] Patch by Sadayuki Furuhashi.
Tue Aug 4 03:43:15 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (load_transcoder_entry): fix transcoder loading race condition, by waiting in require. [ruby-dev:49106] [Bug #11277]
Tue Aug 4 03:13:59 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (ary_ensure_room_for_push): check if array size will exceed maximum size to get rid of buffer overflow. [ruby-dev:49043] [Bug #11235] * array.c (ary_ensure_room_for_unshift, rb_ary_splice): ditto.
Sat Jul 4 23:08:32 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_load_ok): try opening file without gvl not to lock entire process. [Bug #11060]
Sat Jul 4 05:00:48 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (pkg_config): split --libs if --libs-only-l option is not available. patch in [ruby-core:69428] by Hans Mackowiak. [ruby-core:69421] [Bug #11201]
Sat Jul 4 04:46:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (iseq_compile_each): out of range NTH_REF is always nil. * parse.y (parse_numvar): check overflow of NTH_REF and range. [ruby-core:69393] [Bug #11192] * util.c (ruby_scan_digits): make public and add length parameter.
Sat Jul 4 04:35:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (rb_method_call_status): resolve refined method entry to check if undefined. [ruby-core:69064] [Bug #11117]
Sat Jul 4 04:35:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (rb_method_call_status): undefined refined method is not callable unless using. [ruby-core:69064] [Bug #11117]
Wed Jul 1 04:16:56 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* ext/bigdecimal/bigdecimal.gemspec: Fix require paths for released gem. [fix GH-929] Patch by @voxik * ext/io/console/io-console.gemspec: ditto.
Wed Jul 1 04:15:38 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* ext/zlib/zlib.c: Fix indentation for rdoc. [Bug #11221][ruby-core:69465]
Sat Jun 27 22:51:59 2015 Shota Fukumori <her@sorah.jp>
* ext/objspace/objspace_dump.c(dump_object): Return empty JSON object when passed object is a special const, instead of SEGV. Based patch by Kohei Suzuki (eagletmt). [ruby-core:69692] [Bug #11291] * test/objspace/test_objspace.rb(test_dump_special_consts): Test for above fix.
Wed Jun 17 02:53:59 2015 Koichi Sasada <ko1@atdot.net>
* test/objspace/test_objspace.rb (test_dump_flags): relax pattern because long_lived flag and marked flag can be false at major GC. [Bug #10852]
Mon Jun 15 03:24:23 2015 Koichi Sasada <ko1@atdot.net>
* vm_insnhelper.c (lep_svar_set): add WBs.
Fri Jun 12 01:39:49 2015 Eric Wong <e@80x24.org>
* ext/socket/ancdata.c: use RB_GC_GUARD instead of volatile [ruby-core:69419] [Feature #11198]
Fri Jun 12 01:16:13 2015 Eric Wong <e@80x24.org>
* ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode, ossl_asn1_decode_all): use RB_GC_GUARD instead of volatile [ruby-core:69371] [Bug #11185]
Fri Jun 12 01:14:00 2015 NARUSE, Yui <naruse@ruby-lang.org>
* win32/win32.c (setup_overlapped): seek to the file end only when writing (mode:a), not reading (mode:a+, read).
Fri Jun 12 01:11:52 2015 Aaron Patterson <tenderlove@ruby-lang.org>
* load.c (loaded_feature_path): stop returning false negatives for filenames which are trailing substrings of file extensions. For example, 'b', which a trailing substring of ".rb" should not return false. [Bug #11155][ruby-core:69206] * test/ruby/test_autoload.rb: test for fix
Sun May 24 03:56:27 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (r_symreal): register symbol names as strings first so that r_symlink always returns valid names. [ruby-core:68587] [Bug #10991] * marshal.c (r_ivar, r_object0): now need to intern symbol names. * marshal.c (r_object0): compare with symbol names.
Sun May 24 03:53:07 2015 Eric Wong <e@80x24.org>
* ext/socket/ancdata.c (bsock_recvmsg_internal): GC guard [Bug #11123]
Sun May 24 03:44:42 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* range.c (linear_object_p, range_include): test if covered for linear objects. [ruby-core:69052] [Bug #11113]
Sun May 24 03:41:45 2015 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (body_ext_mpart): should work even if body-fld-dsp is omitted. [ruby-core:69093] [Bug #11128]
Sun May 24 03:37:14 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* string.c: added documentation for character sequence \' with String#sub [Bug #11132][ruby-core:69121][fix GH-900][ci skip] Patch by @shishir127
Sun May 24 03:32:53 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* rational.c: Added documentation for rational literal. [Bug #11075][fix GH-885][ci skip] Patch by @shishir127
Sun May 24 03:06:20 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/ipsocket.c (init_inetsock_internal): preserve errno before other library calls and use rb_syserr_fail. [ruby-core:68531] [Bug #10975]
Sun May 24 03:01:17 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/-test-/printf/printf.c (uint_to_str): renamed to get rid of conflict on cygwin. [ruby-core:68877] [Bug #11065]
Sun May 24 02:44:53 2015 Koichi Sasada <ko1@atdot.net>
* vm.c (vm_exec): check other events when RETURN is thrown. [Bug #10724] * test/ruby/test_settracefunc.rb: add a test.
Sun May 24 02:21:47 2015 Masahiro Tomita <tommy@tmtm.org>
* ext/socket/raddrinfo.c (addrinfo_mload): fix memory leak of addrinfo. [ruby-dev:48923] [Bug #11051]
Sun May 24 02:17:05 2015 Kenta Murata <mrkn@cookpad.com>
* bigdecimal: conform to ruby's license. [ruby-core:68466] [Bug #10952]
Sun May 24 02:06:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/-test-/file/fs.c (get_fsname): try magic number only if f_type is included. [ruby-dev:48913] [Bug #11000]
Sun May 24 02:06:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/-test-/file/fs.c (get_fsname): return filesystem name by statfs/statvfs. [ruby-core:68624] [Bug #10998]
Sun May 24 02:02:00 2015 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_symbol.rb: fix syntax error.
Sun May 24 02:02:00 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_any_hash): Symbols are compared by the identities always. [ruby-core:68767] [Bug #11035]
Sun May 24 02:01:07 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_any_hash): use same hash values with Float#hash so that -0.0 and +0.0 will be identical. [ruby-core:68541] [Bug #10979]
Thu May 21 01:34:48 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (id2ref): prohibit from accessing internal objects. [ruby-core:68348] [Bug #10918]
Thu May 21 01:32:02 2015 Rei Odaira <Rei.Odaira@gmail.com>
* ext/pty/pty.c: AIX supports autopush. Patch by Perry Smith [ruby-core:58539] [Bug #9144]
Thu May 21 01:07:41 2015 Misumi Rize <r@ayase-e.li>
* vm_insnhelper.c (vm_throw_start): search the target to break from a block with nested rescue, from the nested blocks. [ruby-core:67765] [Bug #10775] [Fix GH-820]
Thu May 21 00:55:45 2015 Koichi Sasada <ko1@atdot.net>
* vm_args.c: protect value stack from calling other methods during complex parameter setting process (splat, kw, and so on). [Bug #11027] * vm_core.h: remove rb_thead_t::mark_stack_len. With this modification, we don't need to use th->mark_stack_len. * test/ruby/test_keyword.rb: add a test. * cont.c (cont_capture): catch up this fix. * vm.c (rb_thread_mark): ditto.
Thu May 21 00:07:54 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (rb_obj_instance_eval, rb_obj_instance_exec): allow symbols to just instance_eval/exec, except for definition of singletons. [ruby-core:68961] [Bug #11086]
Wed May 20 04:33:50 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (STR_SET_EMBED): clear NOFREE flag at embedding as embedded strings no longer refer static strings. [ruby-core:68436] [Bug #10942]
Wed May 20 03:46:11 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (need_normalization): use getattrlist() if fgetattrlist() is unavailable, on OSX 10.5. [ruby-core:68829] [Bug #11054]
Wed May 20 03:25:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (proc_binding): replicate env from method object, and allocate the local variable area for the iseq local table. [ruby-core:68673] [Bug #11012]
Wed May 20 03:25:34 2015 Koichi Sasada <ko1@atdot.net>
* proc.c: use RUBY_VM_IFUNC_P() to recognize IFUNC or not. * vm.c: ditto. * vm_dump.c: ditto. * vm_insnhelper.c: ditto. * vm_core.h: use RB_TYPE_P() instead of BUILTIN_TYPE().
Wed May 20 03:10:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* benchmark/bm_hash_aref_flo.rb: make more realistic data. [ruby-core:68632] [[Bug #10999]
Wed May 20 02:49:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (respond_to_missing_p): check if the receiver responds to the given method by respond_to_missing?. * proc.c (mnew_missing): create Method object for method_missing. [ruby-core:68564] [Bug #10985]
Wed May 20 02:16:05 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* dir.c (replace_real_basename): need to check the return value of GLOB_REALLOC().
Wed May 20 02:16:05 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* dir.c (replace_real_basename): shouldn't create Ruby object before the object system is loaded. [ruby-core:68430] [Bug #10941]
Wed May 20 01:58:12 2015 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb (Resolv::DNS::Label::Str#==): Check class equality. (Resolv::DNS::Name#initialize): Normalize labels as Resolv::DNS::Label::Str objects.
Wed May 20 01:47:23 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* iseq.c (rb_iseq_compile_with_option): check source type, must be an IO or a String. [ruby-core:69219] [Bug #11159]
Fri May 15 05:01:25 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* symbol.c (Init_sym): make dsym_fstrs a hash compared by identity as the keys are unique fstrings, to get rid of running hash and compare methods and causing new object allocation during garbage collection phase. [ruby-dev:48891] [Bug #10933]
Thu May 14 00:50:40 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (lambda): push and reset cmdarg_stack in lambda body. [ruby-core:69017] [Bug #11107]
Thu May 14 00:39:29 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dln.c (dln_load): check if a different libruby is loaded by the extension library, and then bail out to get rid of very frequent reported stale bug reports.
Thu May 14 00:29:44 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/fileutils.rb (FileUtils#mv): show the exact target path in the error message instead of the destination parent directory name. patched by Joao Britto <jabcalves AT gmail.com> at [ruby-core:68706]. [Bug #11021]
Thu May 14 00:19:04 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread_pthread.c (reserve_stack): keep sp safe zone to get rid of crash by -fstack-check. [ruby-core:68740] [Bug #11030]
Tue Apr 14 23:33:39 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: check also procstat_getvmmap, which is not available on FreeBSD 9. [ruby-core:68468] [Bug #10954] * vm_dump.c (procstat_vm): use kinfo_getvmmap instead if procstat_getvmmap is not available.
Mon Apr 13 22:11:21 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* ext/openssl/lib/openssl/ssl.rb: stricter hostname verification following RFC 6125. with the patch provided by Tony Arcieri and Hiroshi Nakamura [ruby-core:61545] [Bug #9644] * test/openssl/test_ssl.rb: add tests for above.
Mon Apr 13 13:03:33 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* lib/securerandom.rb: skip Win32 libraries in SecureRandom if OpenSSL::Random is available. https://github.com/ruby/ruby/pull/848 [Bug #10948] [Bug #10995]
Mon Apr 13 00:49:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (arg): fix segfault by null caused by syntax error. [ruby-core:68851] [Bug #10957]
Mon Apr 13 00:49:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (primary): empty parentheses at cmdarg can be null. [ruby-core:68477] [Bug #10957]
Mon Apr 13 00:44:12 2015 Eric Wong <e@80x24.org>
* ext/io/wait/wait.c (io_nread): wrap return value with INT2FIX Thanks to Yura Sokolov <funny.falcon@gmail.com> [ruby-core:68369] [Bug#10923] * test/io/wait/test_io_wait.rb (test_nread_buffered): fix broken test
Mon Apr 13 00:16:32 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (vm_call_super): search next super class from the original class, to get rid of infinite recursion with prepending. a patch by Seiei Higa <hanachin AT gmail.com> at [ruby-core:68434]. [ruby-core:68093] [Bug #10847]
Mon Apr 13 00:09:48 2015 Koichi Sasada <ko1@atdot.net>
* class.c (rb_prepend_module): need a WB for klass -> origin.
Sun Apr 12 23:53:33 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/fiddle/extconf.rb: needs --enable-shared when linked to libruby or fiddle.so. since --with-static-linked-ext does no longer link extensions to ruby program with --enable-shared, the only combination needs --enable-static is --disable-shared and --with-static-linked-ext. [ruby-dev:48901] [Bug #10960]
Sun Apr 12 23:53:33 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/fiddle/extconf.rb: make PIC objects if it will be linked as a shared object eventually. [ruby-core:67128]
Sun Mar 22 12:39:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* spec/default.mspec: use default configuration file name. https://github.com/ruby/rubyspec/commit/cc69f337b06362e5607ffa3e3ad40ef7494960cf
Sun Mar 22 12:39:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* spec/default.mspec: remove specific version number. https://github.com/ruby/rubyspec/commit/7a909e925c1baa9c700bd44af9241aef6e596714
Sun Mar 22 12:39:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* common.mk: use ruby organization for rubyspec.
Thu Feb 26 15:48:41 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/win32/Win32API.rb (initialize): accept both a string and an array for the arguments of the imported function. reported by Aaron Stone [ruby-core:68208] [Bug #10876] [Fixes GH-835]
Wed Feb 25 15:36:26 2015 NARUSE, Yui <naruse@ruby-lang.org>
* tool/merger.rb: support 2.1+ versioning scheme.
Tue Feb 24 17:41:27 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_zone_name): should be US-ASCII only if all 7-bits, otherwise locale encoding. [ruby-core:68230] [Bug #10887]
Tue Feb 24 17:41:27 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_zone_name): should be US-ASCII only if all 7-bits, otherwise locale encoding. [ruby-core:68230] [Bug #10887]
Tue Feb 24 17:41:27 2015 Benoit Daloze <eregontp@gmail.com>
* time.c: Zone encoding should be US-ASCII if all 7-bits. Fix r46907. * test/ruby/test_time.rb, test/ruby/test_time_tz.rb: Update tests.
Tue Feb 24 16:37:26 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (chompped_length): enable smart chomp for all non-dummy encoding strings, not only default_rs. [ruby-core:68258] [Bug #10893]
Tue Feb 24 16:31:53 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_split_m): raise ArgumentError at broken string not RegexpError, as Regexp is not involved in. [ruby-core:68229] [Bug #10886]
Tue Feb 24 14:00:46 2015 Koichi Sasada <ko1@atdot.net>
* gc.c (rb_objspace_call_finalizer): control GC execution during force firnalizations at the end of interpreter process. [Bug #10768] 1) Prohibit incremental GC while running Ruby-level finalizers to avoid any danger. 2) Prohibit GC while invoking T_DATA/T_FILE data structure because these operations break object relations consistency. This patch can introduce another memory consuming issue because Ruby-level finalizers can run after (2), GC is disabled. However, basically object consistency was broken at (2) as I described above. So that running Ruby-level finalizers contains danger originally. Because of this point, I need to suggest to remove these 3 lines (invoking remaining finalizers). And add a rule to add that finalizers should not add new finalizers, or say there is no guarantee to invoke finalizers that added by another finalizer.
Tue Feb 24 14:00:46 2015 Aman Gupta <ruby@tmm1.net>
* gc.c (rb_objspace_free): cause rb_bug if lazy sweep is in progress during rb_objspace_free. Adds extra protection for r46340. Patch by Vicent Marti. [Bug #10768] [ruby-core:67734] * gc.c (rb_objspace_call_finalizer): Ensure GC is completed after finalizers have run. We already call gc_rest() before invoking finalizers, but finalizer can allocate new objects and start new GC cycle, so we call gc_rest() again after finalizers are complete.
Tue Feb 24 10:30:59 2015 Kazuki Tsujimoto <kazuki@callcc.net>
* vm_insnhelper.c (rb_vm_rewrite_cref_stack): copy nd_refinements of original crefs. It fixes segmentation fault when calling refined method in duplicate module. [ruby-dev:48878] [Bug #10885] * vm_core.h, class.c: change accordingly. * test/ruby/test_refinement.rb: add a test for above.
Sun Feb 22 21:20:37 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (match_aref): RMatch::regexp is Qnil after matching by a string since r45451. [ruby-core:68209] [Bug #10877]
Sun Feb 22 17:11:25 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in (probes.stamp): rebuild dtrace dependent objects only when `dtrace -G` modifies its input files.
Sun Feb 22 17:11:25 2015 Naohisa Goto <ngotogenome@gmail.com>
* common.mk (ruby-glommed.o): dependency on $(OBJ) should be written in common.mk (in which OBJ is defined) because of Makefile include and parse order. This partly reverts r49419. [ruby-dev:48849] [Bug #10808] * Makefile.in (ruby-glommed.o): ditto. * Makefile.in (ruby-glommed.o): remove excess $(DTRACE_OBJ) because it is included in $(OBJS) since r49451. * Makefile.in (probes.o): should depend on $(DTRACE_DEPENDENT_OBJS)
Sun Feb 22 02:16:40 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_identical_p): fix handle leak, ensure to close the handle of the first argument.
Sat Feb 21 13:48:11 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (different_device_p): compare by volume serial numbers, not by path names. [ruby-core:68162] [Bug #10865]
Sat Feb 21 13:48:11 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (wrename): return EXDEV if moving a directory to another drive, since MoveFileExW does not set proper error code. [ruby-core:68162] [Bug #10865]
Sat Feb 21 12:46:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/file.c (rb_file_expand_path_internal): neither the drive of base directory nor the current drive are involved in the result if different than the drive of path. [ruby-core:68130] [Bug #10858]
Sat Feb 21 12:46:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/file.c (rb_file_expand_path_internal): do not make invalid (or ADS) path if the path has a drive letter, the result also should have be under it. [ruby-core:68130] [Bug #10858]
Sat Feb 21 12:45:54 2015 Matt Hoyle <matt@deployable.co>
* ext/bigdecimal/bigdecimal.c (VpSetPTR): fix a typo, 'expoennt' to 'exponent'. [ruby-core:67980] [Bug #10823] [Fix GH-825]
Fri Feb 20 17:47:20 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_core.h (rb_call_info_kw_arg_struct): make keywords a symbols list to get rid of inadvertent creation by variable keyword arguments. [ruby-core:68031] [Bug #10831]
Fri Feb 20 15:08:17 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (has_magic): always get long path name on Windows even if no tilde is there. [ruby-core:68011] [Bug #10819] * dir.c (replace_real_basename): FindFirstFile ignore redirection character, check if exists before call it. cf. [Bug #8597]
Fri Feb 20 15:08:17 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (glob_helper): obtain real name with FindFirstFile API instead of matchin all entries, on Windows. [ruby-core:67954] [Bug #10819]
Fri Feb 20 14:32:14 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (dir_initialize): workaround of opendir failure at symlink directories on Windows via CIFS.
Thu Feb 19 17:05:47 2015 Shugo Maeda <shugo@ruby-lang.org>
* class.c (rb_obj_singleton_methods): should use RTEST() to convert VALUE to int.
Thu Feb 19 16:14:04 2015 Shugo Maeda <shugo@ruby-lang.org>
* class.c (method_entry_i, class_instance_method_list, rb_obj_singleton_methods): should not include methods of superclasses if recur is false. [ruby-dev:48854] [Bug #10826]
Thu Feb 19 16:14:04 2015 Shugo Maeda <shugo@ruby-lang.org>
* vm_method.c (remove_method): When remove refined method, raise a NameError if the method is not defined in refined class. But if the method is defined in refined class, it should keep refined method and remove original method. Patch by Seiei Higa. [ruby-core:67722] [Bug #10765]
Thu Feb 19 16:07:03 2015 Seiei Higa <hanachin@gmail.com>
* proc.c (rb_obj_singleton_method): Kernel#singleton_method should not use refinements, as well as Kernel#method. [ruby-core:67603] [Bug #10744]
Thu Feb 19 15:32:26 2015 Dave Stevens <dave@crowdlab.com>
* string.c (str_make_independent_expand): terminate String when moved from heap to embedded. [Fix GH-821].
Thu Feb 19 13:35:21 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/sdbm/_sdbm.c: include ruby/ruby.h for PRIdPTRDIFF when a macro `DEBUG` is defined. based on the patch by Owen Rodley in [ruby-core:67987]. [Bug #10825]
Tue Feb 17 18:57:13 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/resolv.rb (Resolv::DNS::Resource#==, #hash): elements returned by Kernel#instance_variables are Symbols now. [ruby-core:68128] [Bug #10857]
Tue Feb 17 15:39:01 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry::API): use wide versions of RegDeleteValue and RegDeleteKey. [ruby-core:67958] [Bug #10820]
Tue Feb 17 11:50:06 2015 Yusuke Endoh <mame@tsg.ne.jp>
* string.c (str_discard): does not free for STR_NOFREE string. [Bug #10853][ruby-core:68110] * bootstraptest/test_string.rb: test for above.
Sun Feb 15 13:15:46 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/getaddrinfo.c (get_addr): reject too long hostname to get rid of GHOST vulnerability on very old platforms. * ext/socket/raddrinfo.c (make_hostent_internal): ditto, paranoic check for the canonnical name.
Sat Feb 14 13:27:41 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (send_internal), vm_insnhelper.c (vm_call_opt_send): convert String method name into a Symbol, as method_missing method expects its first argument to be a Symbol. [Bug #10828] * vm_insnhelper.c (ci_missing_reason): return the reason of method missing in call info. * vm_insnhelper.c (vm_call_opt_send): re-apply r49500 with the proper missing reason. [Bug #10828]
Sat Feb 14 13:27:41 2015 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* vm_insnhelper.c: Fix symbol leak with +send+ [Bug #10828]
Sat Feb 14 08:53:50 2015 Shugo Maeda <shugo@ruby-lang.org>
* class.c (method_entry_i, class_instance_method_list, rb_obj_singleton_methods): should not include methods of superclasses if recur is false. [ruby-dev:48854] [Bug #10826]
Fri Feb 13 13:59:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): get rid of interference by modifying global variables in have_devel? method. [ruby-core:67962] [Bug #10821]
Fri Feb 13 03:13:05 2015 Scott Francis <scott.francis@shopify.com>
* thread_pthread.c (reserve_stack): fix intermittent SIGBUS on Linux, by reserving the stack virtual address space at process start up so that it will not clash with the heap space. [Fix GH-822]
Fri Feb 6 12:05:13 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* thread.c: Improve documentation for Thread#value [Bug #10694][ruby-core:67324][ci skip]
Fri Feb 6 12:02:05 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/fiddle/win32/libffi.mk.tmpl: assemble without directory prefix. workaround of a bug of VC12 ml, by unak at [ruby-core:67792]. [ruby-core:67789] [Bug #10780]
Fri Feb 6 01:03:38 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (w_object, marshal_dump): use indetity tables for arbitrary VALUE keys, because of performance of FLONUM. [Bug #10761] * marshal.c (obj_alloc_by_klass, marshal_load): ditto.
Fri Feb 6 01:03:38 2015 Eric Wong <e@80x24.org>
* benchmark/bm_marshal_dump_flo.rb: new benchmark for [Bug #10761]
Fri Feb 6 01:03:38 2015 Eric Wong <e@80x24.org>
* st.c (st_numhash): mix float value for flonum * hash.c (rb_any_hash): ditto * benchmark/bm_hash_aref_flo.rb: new benchmark * benchmark/bm_hash_ident_flo.rb: ditto [Bug #10761]
Thu Feb 5 16:30:09 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (gettable_gen): disable warnings of possible reference to a local variable defined in a past scope. [ruby-core:67162] [Bug #10661]
Mon Jan 26 15:35:16 2015 Seiei Higa <hanachin@gmail.com>
* vm_method.c (check_definition): Module#public_method_defined?, Module#private_method_defined?, Module#protected_method_defined? should not use refinements. [ruby-core:67656] [Bug #10753]
Thu Jan 22 11:47:31 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* doc/syntax/literals.rdoc (Symbols): now Symbols created by interpolation can be garbage collected. patch by Yihang Ho in [ruby-core:67194]. [Bug #10671]
Thu Jan 22 11:45:32 2015 Kazuki Tsujimoto <kazuki@callcc.net>
* eval_intern.h, vm.c, vm_eval.c, vm_insnhelper.c: change throw mechanism (not save target ep, but save target cfp). It fixes `unexpected break' bug that occurs when TracePoint#binding is called. [ruby-dev:48797] [Bug #10689] * test/ruby/test_settracefunc.rb: add a test.
Tue Jan 20 14:05:08 2015 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_invoke): avoid SEGV when VT_RECORD variable is passed by reference. [ruby-dev:48803] [Bug #10697]
Mon Jan 19 15:45:33 2015 Seiei Higa <hanachin@gmail.com>
* vm_method.c (rb_method_entry): if no super class, no original method entry. [ruby-core:67389] [Bug #10707]
Mon Jan 19 12:03:59 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_dump.c (rb_vm_bugreport): check by configured result instead of system name for old FreeBSD. based on a patch by Steve Wills at [ruby-core:67655]. [Bug #10752]
Mon Jan 19 12:00:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: get rid of pattern substitution, which is not supported by ash, and ash on NetBSD parses whole source first and fails to start. [ruby-dev:48823] [Bug #10750]
Mon Jan 19 11:57:14 2015 Vit Ondruch <vondruch@redhat.com>
* configure.in (RUBY_SETJMP_TYPE): Remove superfluous semicolon which causes a syntax error with autoconf 2.63. [ruby-core:67429] [Bug #10716]
Mon Jan 19 11:44:52 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rdoc/text.rb (expand_tabs): get rid of infinite loop with CR. should check if substitution occurred too. [ruby-dev:48813] [Bug #10732]
Sun Jan 18 00:59:41 2015 Eric Wong <e@80x24.org>
* numeric.c (bit_coerce): use original value for error message [ruby-core:67405] [Bug #10711] * test/ruby/test_numeric.rb (test_coerce): check error message
Sun Jan 18 00:53:38 2015 Seiei Higa <hanachin@gmail.com>
* vm_method.c (rb_alias): raise a NameError when creating alias to a refined method if the original method of the refined method is not defined. [ruby-core:67523] [Bug #10731]
Sat Jan 17 22:25:50 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (need_normalization): not only HFS+, CIFS (SMB) is also decomposed. [Bug #10704] * dir.c (NORMALIZE_UTF8PATH): Unicode decomposition seems to perform in an upper layer than file systems on OSX, as all path names are always decomposed regardless of file system types.
Sat Jan 17 17:56:45 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (assocs, assoc): eliminate splatting empty literal hashes. [ruby-core:67446] [Bug #10719] * compile.c (compile_array_): supprt splatted hash in hash type.
Sat Jan 17 16:49:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/readline/readline.c (readline_s_refresh_line): initialize before rl_refresh_line(), as some function make the internal state non-clean but rl_refresh_line() does not re-initialize it. [ruby-core:43957] [Bug #6232]
Sat Jan 17 16:47:20 2015 NAKAMURA Usaku <usa@ruby-lang.org>
* eval_error.c (error_print): pos and len parameters of rb_str_substr() are counted by characters, not bytes. use rb_str_subseq() instead. [Bug #10727] [ruby-core:67473]
Sat Jan 17 16:35:59 2015 Seiei Higa <hanachin@gmail.com>
* vm_method.c (rb_export_method): bail out if the original method is undefined when the method is refined. [ruby-core:67387] [Bug #10706]
Sat Jan 17 16:16:14 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (glob_helper): match in case-folding only if the directory resides on a case-insensitve file system, on OSX. [ruby-core:67364] [Bug #10700]
Sat Jan 17 02:04:01 2015 Eric Wong <e@80x24.org>
* lib/resolv.rb: consider ENETUNREACH as ResolvTimeout [ruby-core:67411] [Bug #10712]
Sat Jan 17 01:57:57 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* ext/zlib/zlib.c: fix document of method signatures. [Bug #10668][ruby-core:67186][ci skip]
Sat Jan 17 01:52:42 2015 Tanaka Akira <akr@fsij.org>
* time.c (timelocalw): Set tm_isdst field -1 if vtm->isdst is VTM_ISDST_INITVAL. This bug is introduced at packing struct vtm (r45155). [ruby-core:67345] [Bug #10698] Reported by Boris Ruf.
Fri Jan 16 21:17:34 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/ruby/test_io.rb: added timeout for AIX environment. [ruby-core:62983][Bug #9917]
Fri Jan 16 18:25:57 2015 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb (Resolv::DNS::Name#==): Compare an array of Label:Str objects. Label#Str#== is case-insensitive.
Fri Jan 16 18:25:57 2015 Ben Miller <bmiller@rackspace.com>
* lib/resolv.rb (Resolv::DNS::Name#==): DNS is case-insensitive, so the comparison should be case-insensitive as well. [ruby-core:66498] [Bug #10550]
Fri Jan 16 18:25:57 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/resolv.rb (Resolv::DNS::Name): names with different dots should be different.
Fri Jan 16 17:34:57 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_label): return tLABEL value as it is. [ruby-core:67315] [Bug #10693]
Fri Jan 16 16:49:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/net/http.rb (Net::HTTP#send_request): there is no response body with HEAD request. Patch by @rodrigosaito [fix GH-520]
Fri Jan 16 16:49:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/net/http/test_http.rb (_test_send_request__HEAD): Added failing test for send_request with HEAD method.
Fri Jan 16 14:56:08 2015 Eric Wong <e@80x24.org>
* symbol.c (rb_gc_free_dsymbol): delete from global fstr hash * test/ruby/test_symbol.rb (test_symbol_fstr_leak): test for bug [ruby-core:67268] [Bug #10686]
Fri Jan 16 14:20:52 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_args.c (keyword_hash_p): fix non-symbol keys hash. rb_extract_keywords() returns 0 not Qnil when no symbol keys is included.
Fri Jan 16 11:06:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/unicode_normalize.rb: typo fix. [ci skip] [ruby-dev:48794][misc #10675] included. [ruby-core:67264] [Bug #10685]
Fri Jan 16 11:04:35 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (unescape_nonascii): append excape sequence as-is not unescaped character, to get rid of unexpected meta-character. [ruby-core:67193] [Bug #10670]
Sat Jan 3 21:17:58 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (rb_thread_variable_get): fix dynamic symbol keys. rb_check_id() returns non-zero only for static symbols, whereas thread local variable keys can be dynamic symbols. [ruby-core:67185] [Bug #10667]
Thu Jan 1 08:29:55 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* cygwin/GNUmakefile.in (EXTOBJS): override to add resource files always. [ruby-core:67153] [Bug #10657]
Wed Dec 31 15:26:46 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_kwrest, new_args_tail_gen): unnamed rest keyword and keywords bits arguments should be unique. since internal IDs depend on the local variable index in the current scope, new ID should be made before popping those vtables. [ruby-core:67157] [Bug #10659]
Wed Dec 31 14:11:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* ext/tk/lib/tkextlib/tcllib/plotchart.rb: fix to invoke correct function of tcllib. Patch by @zalt50 [fix GH-787]
Wed Dec 31 13:26:22 2014 Eric Wong <e@80x24.org>
* vm_core.h (rb_vm_living_threads_insert): preserve order [Bug #10660] [ruby-core:67154] [ruby-core:67159]
Fri Dec 26 15:42:27 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* tool/rbinstall.rb: skip installing bundle gems if zlib is unavailable. [Bug #10647] [ruby-dev:48787]
Thu Dec 25 17:42:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/io/console/console.c (console_dev): send the given arguments to the opened console. as a special case, do nothing if :close is given. * test/lib/leakchecker.rb (LeakChecker#check_fd_leak): close if console.
Thu Dec 25 17:37:47 2014 Naohisa Goto <ngotogenome@gmail.com>
* gc.c (wmap_final_func): fix memory size shortage when realloc wmap. Fix SEGV during finilize of WeakRef on Solaris (though the SEGV could occur on all OS/platforms). [ruby-dev:48779] [Bug #10646]
Thu Dec 25 17:31:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (NET_LUID): include winsock2.h instead of windows.h. patch by Jon Forums in [ruby-core:67125]. [Bug #10640]
Thu Dec 25 16:01:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_expand_path_internal): drop characters ignored by filesystem on Mac OS X.
Thu Dec 25 15:36:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (replace_real_basename): get the real name and replace the base name with it by getattrlist(2) if available. suggested by Matthew Draper at [ruby-core:67116]. [Bug #10015] * dir.c (glob_helper): get the real name of the whole path, not only the last name.
Thu Dec 25 13:59:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (NET_LUID): include also ifdef.h as a workaround of a bug in mingw-w64 header. [ruby-core:67103] [Bug #10640]
Thu Dec 25 12:47:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (gettable_gen): warn possible reference to a local variable defined in a past scope.
Thu Dec 25 10:09:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/io/console/console.c (console_dev): id_console is not a constant name, use rb_const_remove() to get rid of NameError.
Thu Dec 25 09:18:55 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* test/resolv/test_dns.rb (TestResolvDNS#test_query_ipv4_address): set timeout for recvfrom because if client thread is crashed, it waits infinity.
Thu Dec 25 08:42:11 2014 Eric Wong <e@80x24.org>
* lib/uri/generic.rb (split_userinfo): fstring for 1-byte split (set_port): reduce bytecode size (check_path): reduce garbage via opt_str_freeze (query=): ditto (fragment=): ditto [misc #10628] * lib/uri/rfc3986_parser.rb (regexp): cache as attr (initialize): setup and freeze regexp attr once (split): reduce bytecode size, use opt_str_freeze (parse): minor bytecode and garbage reduction (default_regexp): rename for initialize
Wed Dec 24 20:38:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (glob_make_pattern): restrict searching case-insensitive name from the filesystem to only last part, for the performance. [ruby-core:63591] [Bug #10015]
Wed Dec 24 18:21:27 2014 Koichi Sasada <ko1@atdot.net>
* gc.c: remove unused rb_objspace_t::rgengc::old_objects_at_gc_start.
Wed Dec 24 13:25:22 2014 NARUSE, Yui <naruse@ruby-lang.org>
* tool/redmine-backporter.rb: require view_changesets permission.
Wed Dec 24 13:00:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* tool/downloader.rb (Downloader.download): fix the exception to re-raise. initialize methods of subclasses of Exception may have different parameters. [ruby-core:67086] [Bug #10639]
Wed Dec 24 12:16:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.h (rb_data_type_t): revert r48647 and revise parent member. [ruby-core:66969] [Bug #10621]
Wed Dec 24 05:40:52 2014 NARUSE, Yui <naruse@ruby-lang.org>
* tool/downloader.rb: use config.guess in gcc repo.
Wed Dec 24 11:50:19 2014 Koichi Sasada <ko1@atdot.net>
* hash.c (rb_hash_delete): return Qnil if there are no corresponding entry. [Bug #10623] * hash.c (rb_hash_delete_entry): try delete and return Qundef if there are no corresponding entry. * internal.h: add rb_hash_delete_entry()'s declaration. * symbol.c: use rb_hash_delete_entry(). * thread.c: use rb_hash_delete_entry(). * ext/-test-/hash/delete.c: use rb_hash_delete_entry().
Wed Dec 24 09:35:11 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/fiddle/extconf.rb: remove ffitarget.h generated by configure on mswin, because it's not normal file (cygwin's symlink) and have system attribute.
Wed Dec 24 05:40:52 2014 NARUSE, Yui <naruse@ruby-lang.org>
* tool/downloader.rb: support ruby 1.8.
Wed Dec 24 02:44:06 2014 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/http/response.rb (Net::HTTPResponse): require one or more spaces [Bug #10591]. by leriksen <leif.eriksen.au@gmail.com> https://github.com/ruby/ruby/pull/782 fix GH-782 NOTE: graph.facebook.com returns without SP Reason-Phrase.
Wed Dec 24 02:12:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* tool/make-snapshot (package): VCS#branch_list expects glob a pattern string but not a regexp. based on the patch by Vit Ondruch. in [ruby-core:67064]. [Bug #10636] * tool/vcs.rb (VCS::SVN#branch_list): strip newlines. * tool/vcs.rb (VCS::GIT.get_revisions): retrieve modified time from toplevel log too. * tool/vcs.rb (VCS::GIT#branch_list): yield for each lines.
Wed Dec 24 00:23:13 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* tool/extlibs.rb (do_extract): the pipe should be binmode.
Wed Dec 24 00:21:44 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* Makefile.in, common.mk: move common-srcs to Makefile.in because it breaks build on mswin.
Wed Dec 24 00:04:45 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/open-uri.rb (OpenURI.open_http): accept multiple certs path in ssl_ca_certs. * tool/downloader.rb: use certs of rubygems for downloading gems.
Tue Dec 23 22:39:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/fiddle/extlibs: libffi-3.2.1 and patch for mswin.
Tue Dec 23 22:04:38 2014 NARUSE, Yui <naruse@ruby-lang.org>
* lib/uri/generic.rb (URI::Generic#query=): don't escape [\]^ on both rfc2396 and rfc3986. [Bug #10619]
Tue Dec 23 16:03:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry::Error#initialize): try en_US message if the default message cannot be encoded to locale. [ruby-core:65295] [Bug #10300]
Tue Dec 23 11:42:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/openssl/ossl_cipher.c (ossl_cipher_update_long): update huge data gradually not to exceed INT_MAX. workaround of OpenSSL API limitation. [ruby-core:67043] [Bug #10633]
Mon Dec 22 21:30:16 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* test/win32ole/test_win32ole_event.rb: some tests are executed on standard Windows OS without ADO.
Mon Dec 22 14:08:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* signal.c (received_signal): fix condition to define. [ruby-core:67032] [Bug #10629]
Sun Dec 21 10:51:51 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* test/win32ole/test_win32ole_event.rb: test_s_new_exception is executed on standard Windows OS without ADO.
Sun Dec 21 08:35:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (jemalloc): fix option argument, should use `$withval` but not `yes` always. [ruby-core:66994] [Bug #10625] * configure.in (jemalloc): defer adding the liner option to get rid of linking contest against jemalloc, so that it works without runtime dynamic load path.
Sat Dec 20 17:49:03 2014 Tanaka Akira <akr@fsij.org>
* lib/tmpdir.rb (Dir.mktmpdir): Accept nil again, as Ruby 2.1. [ruby-core:66943] [Bug #10616] Fixed by Alex Slynko.
Sat Dec 20 11:22:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/fiddle/depend, ext/fiddle/extconf.rb: try to build bundled libffi if existing.
Sat Dec 20 05:21:00 2014 Eric Wong <e@80x24.org>
* test/test_weakref.rb (test_repeated_object_leak): increase timeout [Bug #10618]
Fri Dec 19 22:33:13 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: Use $(hdrdir) if possible.
Fri Dec 19 22:10:00 2014 Kenta Murata <mrkn@cookpad.com>
* ext/bigdecimal/depend: Fix dependencies to make bigdecimal installable by rubygems. * ext/bigdecimal/bigdecimal.gemspec: version 1.2.6.
Fri Dec 19 20:00:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/ruby.h (PRIsVALUE): put a space after string literals not to be confused with C++11 string literal suffix. https://github.com/ruby/ruby/commit/a9f3eb7#commitcomment-9040169
Fri Dec 19 15:36:02 2014 Simon Genier <simon.genier@shopify.com>
* hash.c (hash_equal): prefer true than the result of implicit conversion from int returned by rb_eql() to VALUE. [Fix GH-789]
Thu Dec 18 17:45:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (rb_cv_binary_elf): get rid of -e option of cat which is not available on BusyBox, use tr instead. [ruby-core:64824] [Bug #10210]
Thu Dec 18 14:25:17 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* signal.c (ruby_signal): since SIGKILL is not supported by MSVCRT, should be treated before calling signal(3). [Bug #10615]
Wed Dec 17 12:20:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (rb_method_for_self_aref, rb_method_for_self_aset): move from iseq.c to build from node instead of arrays.
Wed Dec 17 10:50:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/gdbm/test_gdbm.rb: Added test for each_key called without a block. Patch by @joeyates [fix GH-783]
Wed Dec 17 10:18:42 2014 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): check iseq->compile_data->option->specialized_instruction for opt_* insn. * test/ruby/test_iseq.rb: check no specialized_instructions option.
Wed Dec 17 09:48:57 2014 Eric Wong <e@80x24.org>
* compile.c (iseq_compile_each): only emit opt_str_freeze, opt_aref_with, and opt_aset_with insn when no block is given [Bug #10557] [ruby-core:66595] * test/ruby/test_optimization.rb (test_block_given_aset_aref): new test for bug thanks to Bartosz Kopinski. (test_string_freeze): additional assertion for object_id
Wed Dec 17 01:06:47 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/win32/lib/Win32API.rb (Win32API#call): need to splat. hmm, when was this broken?
Tue Dec 16 15:18:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* iseq.c (rb_method_for_self_aref, rb_method_for_self_aset): call accessor functions directly, not to be affected by [] and []= methods. [ruby-core:66846] [Bug #10601] * struct.c (define_aref_method, define_aset_method): ditto. * vm_insnhelper.c (rb_vm_opt_struct_aref, rb_vm_opt_struct_aset): direct accessors of Struct.
Tue Dec 16 12:01:29 2014 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): extend timeout seconds to 60 for RGENGC_CHECK_MODE > 0 environment.
Tue Dec 16 08:53:12 2014 Eric Wong <e@80x24.org>
* tool/vcs.rb: fix Ruby 1.8 compatibility harder
Tue Dec 16 07:37:18 2014 Eric Wong <e@80x24.org>
* gc.c (GC_HEAP_FREE_SLOTS): move definition to match use order (RUBY_GC_HEAP_GROWTH_SLOTS): s/factor/number of slots/ * man/ruby.1: add section for GC environment variables [Feature #10197]
Tue Dec 16 05:41:46 2014 Eric Wong <e@80x24.org>
* tool/vcs.rb: fix Ruby 1.8 compatibility
Mon Dec 15 17:51:28 2014 Koichi Sasada <ko1@atdot.net>
* ext/objspace/objspace.c: ObjectSpace.memsize_of(obj) returns with sizeof(RVALUE). [Bug #8984] * gc.c (obj_memsize_of): ditto. * NEWS: add a NEWS entry. * test/objspace/test_objspace.rb: catch up this fix. * test/ruby/test_file_exhaustive.rb: ditto.
Mon Dec 15 16:19:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_enc_str_coderange): dummy wchar, non-endianness encoding string cannot be ascii only. [ruby-core:66835] [Bug #10598]
Sun Dec 14 20:11:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (primary): restore current_arg so that circular reference after a method definition is also warned. [ruby-core:61299] [Bug #9593]
Sat Dec 13 20:41:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_trace.c (rb_postponed_job_flush): mask signal trap interrupt too to defer handling after finalizers finished. [ruby-core:66825] [Bug #10595]
Sat Dec 13 18:33:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/openssl/test_pkey_ec.rb: ignored tests with old OpenSSL.
Sat Dec 13 18:01:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* signal.c (check_stack_overflow): check sp also on i386/x86_64 FreeBSD.
Sat Dec 13 09:58:41 2014 Eric Wong <e@80x24.org>
* gc.c (define_final0): avoid duplicate blocks [Bug #10537] * test/test_weakref.rb (test_repeated_object_leak): new test
Sat Dec 13 04:59:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bin/erb (ERB::Main#run): get rid of shadowing outer local variables. [ruby-core:65772] [Feature #10395]
Fri Dec 12 21:56:44 2014 Kouhei Sutou <kou@cozmixng.org>
* gems/bundled_gems: Upgrade to test-unit 3.0.8. assert_throw and assert_nothing_thrown in test-unit 3.0.7 were broken by UncaughtThrowError change introduced in Ruby 2.2.0 preview2. These assertions in test-unit 3.0.8 work well with UncaughtThrowError in Ruby 2.2.0 preview2.
Fri Dec 12 19:48:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bin/erb (ARGV.switch, ERB::Main#run): allow variables to be set from the command line. [ruby-core:65772] [Feature #10395]
Fri Dec 12 19:31:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/erb.rb (ERB#lineno): accessor for line number to eval. * lib/erb.rb (ERB#location=): setter of file name and line number.
Fri Dec 12 13:09:13 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (gc_latest_gc_info): return :state field to show current GC state (none/marking/sweeping). [Feature #10590]
Fri Dec 12 10:49:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_crypt): check arguments more strictly. * crypt() is not for wide char strings * salt bytes should not be NUL
Fri Dec 12 08:16:01 2014 Matt Hoyle <matt@deployable.co>
* io.c (io_read) Fix spelling in docco for read. [Fix GH-781] try > tries
Thu Dec 11 19:06:01 2014 Koichi Sasada <ko1@atdot.net>
* class.c (class_alloc): Start from age == 2. Class and Module objects can be living long life. * iseq.c: Same for ISeq objects. * gc.c (RVALUE_AGE_RESET): added. * gc.c (newobj_of): allow to generate (age != 0) objects. * gc.c (rb_copy_wb_protected_attribute): reset age for wb unprotected objects. * include/ruby/ruby.h: add RUBY_TYPED_PROMOTED1 as an unrecommended flag.
Thu Dec 11 05:37:52 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/prime.rb: Remove useless loop and block capture. See [#10354]
Thu Dec 11 04:27:24 2014 Koichi Sasada <ko1@atdot.net>
* vm_core.h: introduce new field rb_thread_t::local_storage_recursive_hash_for_trace to store recursive hash to avoid creating new recursive (nested) hashes for each trace events. [Bug #10511] * vm_trace.c (rb_threadptr_exec_event_hooks_orig): use it. * cont.c: catch up this fix. * vm.c (rb_thread_mark): ditto.
Wed Dec 10 13:39:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* struct.c (define_aref_method, define_aset_method): use iseq VALUE instead of rb_iseq_t to prevent from GC, as RB_GC_GUARD makes sense only for local variables. [Feature #10575]
Wed Dec 10 09:38:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (exec_recursive): use the same last method name as recursive_push in the error message when recursive_pop failed. [ruby-core:66742] [Bug #10579]
Wed Dec 10 02:48:46 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* test/net/http/test_https.rb (TestNetHTTPS#test_certificate_verify_failure): on Windows, Errno::ECONNRESET will be raised when the verify is failure at the client side, and it'll be eaten by WEBrick. * test/open-uri/test_ssl.rb (TestOpenURISSL#test_validation_failure): ditto.
Wed Dec 10 00:42:13 2014 Eric Wong <e@80x24.org>
* iseq.c (rb_method_for_self_aref, rb_method_for_self_aset): new methods to generate bytecode for struct.c [Feature #10575] * struct.c (rb_struct_ref, rb_struct_set): remove (define_aref_method, define_aset_method): new functions (setup_struct): use new functions * test/ruby/test_struct.rb: add test for struct >10 members * benchmark/bm_vm2_struct_big_aref_hi.rb: new benchmark * benchmark/bm_vm2_struct_big_aref_lo.rb: ditto * benchmark/bm_vm2_struct_big_aset.rb: ditto * benchmark/bm_vm2_struct_small_aref.rb: ditto * benchmark/bm_vm2_struct_small_aset.rb: ditto
Tue Dec 9 20:24:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* string.c: [DOC] Add missing documentation around String#chomp. Patch by @stderr [ci skip][fix GH-780]
Tue Dec 9 18:20:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* object.c: [DOC] Revise documentation by Marcus Stollsteimer at [ruby-core:66368]. [Bug #10526] * #inspect: be more specific about generated string, remove obsolete example. * #nil?: use code examples instead of different call-seq's. * #tap: clarify what is yielded. * Integer(): be more specific about to_int and to_i, remove reference to Ruby 1.8. * Array(): fix error. * Class: fix variable name style and indentation in example. * improve consistency, fix typos and formatting.
Tue Dec 9 12:48:32 2014 Josef Simanek <josef.simanek@gmail.com>
* vm_eval.c (rb_eval_string_wrap): [DOC] Fix `rb_eval_string_wrap` documentation. It is referencing `require` instead of `load`. The former does not have the optional argument. [Fix GH-779]
Tue Dec 9 10:16:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_frame_last_func): return the most recent frame method name. * thread.c (recursive_list_access): use the last method name, instead of the current method name which can be unset in some cases, not to use a symbol by the invalid ID. [ruby-core:66742] [Bug #10579]
Sun Dec 7 19:36:12 2014 Kazuki Tsujimoto <kazuki@callcc.net>
* ext/socket/basicsocket.c, ext/socket/sockssocket.c: remove code for $SAFE=4.
Sun Dec 7 10:20:55 2014 Eric Hodel <drbrain@segment7.net>
* lib/rdoc: Update to RDoc 4.2.0. * test/rdoc: ditto.
Sun Dec 7 09:52:30 2014 Eric Hodel <drbrain@segment7.net>
* lib/rubygems: Update to RubyGems 2.4.5. * test/rubygems: ditto.
Sat Dec 6 10:05:08 2014 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb: Fix undefined variable usage & refactor/DRY code. Patch by @aledovsky. [Fixes GH-770] * test/net/test_imap.rb: related test.
Sat Dec 6 10:09:44 2014 Eric Wong <e@80x24.org>
* thread.c (do_select): rename parameters to avoid shadowing
Sat Dec 6 09:22:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/rake: Update to rake 10.4.2 * test/rake: ditto.
Sat Dec 6 06:48:03 2014 Eric Wong <e@80x24.org>
* compile.c (rb_iseq_build_from_ary): remove misc handling
Sat Dec 6 06:14:23 2014 Vit Ondruch <vondruch@redhat.com>
* configure.in (RUBY_LIB_VERSION): Fix --with-ruby-version configuration option. get rid of quoting in config.status. * template/verconf.h.tmpl: quote RUBY_LIB_VERSION here. [ruby-core:66724] [Bug #10572]
Sat Dec 6 04:33:52 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/pp.rb (File::Stat#pretty_print): some platforms (such as Windows) does not have major/minor parts of device.
Fri Dec 5 22:43:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* ext/psych/lib/psych.rb: bump version to 2.0.8 * ext/psych/psych.gemspec: ditto. * ext/psych/psych_emitter.c: ditto. * ext/psych/psych_parser.c: ditto.
Fri Dec 5 17:09:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/option.c (inet_ntop): link aliased inet_ntop in libruby on mswin not rb_w32_inet_ntop which fails to link for unknown reason.
Fri Dec 5 11:09:54 2014 Eric Wong <e@80x24.org>
* iseq.c (prepare_iseq_build): remove unused block_opt param (rb_iseq_new_with_bopt_and_opt): remove (rb_iseq_new_with_opt): inline removed function (rb_iseq_new_with_bopt): remove (iseq_load): adjust prepare_iseq_build call [Feature #10565]
Fri Dec 5 09:46:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex): fix lex_state after tLABEL_END, should be EXPR_LABELARG to be followed by "paren with arg". [ruby-core:66705] [Feature #4935]
Fri Dec 5 02:27:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb: as all extension objects including initializations of ext and enc should be linked to libruby if enable-shared, EXTOBJS should not be linked to main programs. [ruby-core:66675] [Bug #10566]
Thu Dec 4 07:06:02 2014 Eric Wong <e@80x24.org>
* compile.c (rb_iseq_build_from_exception): entry->sp is unsigned (iseq_build_callinfo_from_hash): account for kw_arg (iseq_build_from_ary_body): update for r35459 (CHECK_STRING, CHECK_INTEGER): remove unused checks (int_param): new function for checking new `params' hash (iseq_build_kw): new function for loading rb_iseq_param_keyword (rb_iseq_build_from_ary): account for `misc' entry and general structure changes [Feature #8543] * iseq.c (CHECK_HASH): new macro (for `misc' and `param' entries) (iseq_load): account for `misc' and `params' hashes (iseq_data_to_ary): add final opt to arg_opt_labels, fix kw support, account for unsigned entry->sp * ext/-test-/iseq_load/iseq_load.c: new ext for test * ext/-test-/iseq_load/extconf.rb: ditto * test/-ext-/iseq_load/test_iseq_load.rb: new test
Thu Dec 4 06:56:57 2014 Eric Wong <e@80x24.org>
* iseq.c (iseq_free): avoid segfault on incomplete iseq * test/ruby/test_syntax.rb (test_invalid_next): new test for syntax error, not segfault
Thu Dec 4 04:20:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (ruby_require_internal): ignore error detail, just return an error.
Wed Dec 3 17:13:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* encoding.c (load_encoding): use rb_require_internal instead of calling rb_require_safe with protection.
Wed Dec 3 16:47:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (register_init_ext, ruby_init_ext): defer running the registered initialization function until required, not to enable extensions which have global effects just by loading, e.g., mathn/complex and mathn/rational. fix `make test` with --with-static-linked-ext. * enc/encinit.c.erb (Init_enc): initialize encdb and transdb directly.
Wed Dec 3 14:51:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (ruby_require_internal): separate from rb_require_safe, not to raise exceptions. * ruby.c (process_options): remove unnatural encoding search.
Wed Dec 3 14:34:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (setup_fake_str): fake string does not share another string, but just should not free.
Wed Dec 3 11:14:14 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (w32_spawn): `v2` is used not only for `shell` but also `cmd`, so must not free before using `cmd`. [ruby-core:66648] [Bug #10563]
Wed Dec 3 09:48:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/racc/cparse/cparse.c (cparse_params_type): use typed data.
Tue Dec 2 21:33:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: use typed data for com_hash.
Tue Dec 2 15:30:30 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* array.c (rb_ary_plus): in documentation, added note about inefficiency of repeated += operations.
Tue Dec 2 07:20:21 2014 Eric Wong <e@80x24.org>
* iseq.c (iseq_data_to_ary): keep hidden variables Thanks to wanabe [ruby-core:66566]
Tue Dec 2 06:46:57 2014 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/lib/psych.rb: bumping version * ext/psych/psych.gemspec: ditto
Tue Dec 2 06:34:08 2014 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/lib/psych/visitors/to_ruby.rb: support objects that are marshalable, but inherit from basic object. Thanks Sean Griffin <sean@thoughtbot.com> * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto * test/psych/test_marshalable.rb: test for fix
Tue Dec 2 06:32:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (ripper_flush_string_content): preserve the dispatched results at tSTRING_CONTENT. [ruby-dev:48714] [Bug #10437] * parse.y (regexp_contents): check in ripper only if the whole content is a single regexp without interpolation. [ruby-dev:48714] [Bug #10437]
Tue Dec 2 06:30:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (rb_reg_region_copy): new function to try with GC if copy failed and return the error.
Tue Dec 2 04:43:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (CHECK_REGION_COPIED): onig_region_copy() can fail when memory exhausted but returns nothing, so check by if allocated.
Tue Dec 2 02:53:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (magic_comment_encoding): enable in ripper, since the encoding is necessary to parse non-default encoding scripts.
Tue Dec 2 02:30:25 2014 NARUSE, Yui <naruse@ruby-lang.org>
* lib/uri/generic.rb (URI::Generic.build): use hostname= to detect and wrap IPv6 hosts. Build is accepting URI components and users may not expect that a host component needs to be wrapped with square brackets since it's not providing a URI. Note: initialize with arg_check => true does not wrap IPv6 hosts. by Joe Rafaniello <jrafanie@redhat.com> https://github.com/ruby/ruby/pull/765 fix GH-765 * test/uri/test_generic.rb: Add more tests
Mon Dec 1 20:01:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: use typed data for WIN32OLE. * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_event.c: ditto.
Mon Dec 1 17:20:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/Makefile.sub (verconf.h): so depends on verconf.mk, which is rebuilt by setup.mak.
Mon Dec 1 11:05:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* proc.c: fix grammar by @BenMorganIO [fix GH-764][ci skip]
Mon Dec 1 10:49:53 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* man/rake.1: Update latest man content by @aledovsky [fix GH-771][ci skip]
Mon Dec 1 10:42:31 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* doc/syntax/refinements.rdoc: refinements are no longer experimental. patch by @gaurish [fix GH-775][ci skip]
Sun Nov 30 20:05:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (regexp_contents): fix a typo. pointed out by wanabe. [ruby-dev:48741] [Bug #10543]
Sun Nov 30 18:55:32 2014 Tanaka Akira <akr@fsij.org>
* test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): Don't raise Interrupt.
Sun Nov 30 17:11:05 2014 Tanaka Akira <akr@fsij.org>
* test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): Use assert_separately.
Sun Nov 30 00:02:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (process_options, ruby_script): transcode script name and program name to locale encoding as well as argv. [ruby-dev:48752] [Bug #10555] * ruby.c (translit_char_bin): should not use code page dependent CharNext on UTF-8 string. [ruby-dev:48752] [Bug #10555]
Sat Nov 29 16:53:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (ruby_set_argv): convert argv from UTF-8. * win32/win32.c (rb_w32_sysinit, cmdglob, w32_cmdvector): convert wide char command line to UTF-8 argv, and glob in UTF-8 so that metacharacters would match multibyte characters. [ruby-dev:48752] [Bug #10555]
Sat Nov 29 10:49:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (win32_direct_conv, rb_w32_readdir): convert UTF-8 and filesystem code page by using Win32 API directly.
Sat Nov 29 09:37:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* error.c (syserr_initialize): simplify message building and get rid of potential invalid byte sequence.
Sat Nov 29 06:09:44 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* eval_error.c (error_print): respect the encoding of the message. * io.c (rb_write_error_str): use rb_w32_write_console() on Windows if stderr is a tty.
Fri Nov 28 05:10:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (--with-setup): add option to select ext/Setup file.
Fri Nov 28 05:02:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dmyenc.c (Init_enc): separate from dmyext.c for statically linked extension excluding encoding libraries.
Thu Nov 27 21:58:30 2014 Tanaka Akira <akr@fsij.org>
* common.mk (miniprelude.c): It does not depend on prelude.rb now.
Thu Nov 27 21:49:49 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: List up files built always in the source directory and source files built always in the build directory.
Thu Nov 27 21:24:55 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* NEWS: add obsolete callcc.
Thu Nov 27 19:59:49 2014 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): remove duplicated line event. [Bug #10449] * test/ruby/test_settracefunc.rb: add and fix tests.
Thu Nov 27 19:04:50 2014 Koichi Sasada <ko1@atdot.net>
* vm_args.c: fix backtrace location for keyword related exceptions. For example, the following program def foo(k1: 1); end # line 1 foo(k2: 2) # line 2 causes "unknown keyword: k2 (ArgumentError)". Before this patch, the backtrace location is only line 2. However, error should be located at line 1 (over line 2 in stack trace). This patch fix this problem. * class.c (rb_keyword_error_new): separate exception creation logic from rb_keyword_error(), to use in vm_args.c. * vm_insnhelper.c (rb_arg_error_new): rename to rb_arity_error_new(). * vm_args.c (argument_arity_error): rename to argument_arity_error(). * vm_args.c (argument_kw_error): added to fix backtrace. * test/ruby/test_keyword.rb: add tests.
Thu Nov 27 17:31:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (prelude.c): no longer depends on miniruby, since not depending on rbconfig.rb.
Thu Nov 27 17:12:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (miniprelude.c): miniruby needs no preludes.
Thu Nov 27 17:10:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* template/prelude.c.tmpl: no code if no prelude code is given.
Thu Nov 27 13:11:00 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (objspace_malloc_increase): enable lazy sweep on GC by malloc() (malloc_increase) to make GC incrementally. This change can increase memory consumption. Report us if you find any problem.
Thu Nov 27 12:46:38 2014 Tanaka Akira <akr@fsij.org>
* time.c (time_s_mkutc): [DOC] Time.utc's 10 arguments form doesn't examine wday, yday, isdst and tz. (time_s_mktime): [DOC] Time.mktime's 10 arguments form doesn't examine wday, yday and tz. Suggested by naruse.
Thu Nov 27 11:45:33 2014 Eric Wong <e@80x24.org>
* iseq.c (iseq_data_to_ary): add missing GC guard
Thu Nov 27 10:51:59 2014 Koichi Sasada <ko1@atdot.net>
* vm_core.h: add rb_thread_t::local_storage_recursive_hash to speed up Thread#[:__recursive_key__] access. [Bug #10511] * thread.c (threadptr_local_aref): add fast path for :__recursive_data__. * thread.c (threadptr_recursive_hash, threadptr_recursive_hash_set): add special accessor for recursive hash. * cont.c: store/restore local_storage_recursive_hash. * vm.c: init and mark local_storage_recursive_hash. * vm_trace.c (rb_threadptr_exec_event_hooks_orig): clear and restore local_storage_recursive_hash directly.
Thu Nov 27 07:11:00 2014 Eric Wong <e@80x24.org>
* compile.c (iseq_calc_param_size): hoist out of iseq_set_arguments
Wed Nov 26 22:28:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/ruby.h (rb_get_kwargs, rb_extract_keywords): export keyword argument functions.
Wed Nov 26 21:18:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/inlinetest.rb: removed unused test helper.
Wed Nov 26 20:47:28 2014 Masaya Tarui <tarui@ruby-lang.org>
* ext/continuation/continuation.c (Init_continuation): obsolete callcc. first step of [Feature #10548].
Wed Nov 26 19:57:54 2014 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_gc.rb (test_latest_gc_info): do test separately to avoid mysterious behavior.
Wed Nov 26 19:54:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (constat_reset): do nothing on non-standard console emulators. [ruby-core:66471] [Bug #10546]
Wed Nov 26 19:44:13 2014 Tanaka Akira <akr@fsij.org>
* lib/tsort.rb: Returns an enumerator if no block is given. [ruby-core:66270] [Feature #10508] Proposed by Andrey Savchenko.
Wed Nov 26 17:25:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_label, f_kw, formal_argument_gen): ignore invalid formal argument in keyword argument definition. [ruby-dev:48742] [Bug #10545]
Wed Nov 26 15:32:06 2014 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_set_sequence): use "nop" insn instead of "jump to next insn". https://bugs.ruby-lang.org/issues/8543#change-50085
Wed Nov 26 11:01:35 2014 Eric Wong <e@80x24.org>
* iseq.c (iseq_s_compile_file): close IO when done
Wed Nov 26 06:06:23 2014 Tanaka Akira <akr@fsij.org>
* common.mk: encdb.h and transdb.h depends on $(PREP). So prebuild files for them in tarball are useless.
Wed Nov 26 02:08:44 2014 Tanaka Akira <akr@fsij.org>
* tool/make-snapshot: Don't generate enc/trans/newline.c in tarball.
Wed Nov 26 00:41:44 2014 Tanaka Akira <akr@fsij.org>
* common.mk (prereq): Don't depends on prelude.c and golf_prelude.c. Since they depend on $(PREP) which is miniruby, they are rebuilt after miniruby is built, even if tarball contains them.
Wed Nov 26 00:20:48 2014 Tanaka Akira <akr@fsij.org>
* template/prelude.c.tmpl: Don't expand RbConfig::Config[...]. It is not used now. * common.mk: prelude.c and golf_prelude.c doesn't depend on rbconfig.
Tue Nov 25 17:07:06 2014 Koichi Sasada <ko1@atdot.net>
* NEWS: add an "Implementation changes" section.
Tue Nov 25 16:09:28 2014 Eric Hodel <drbrain@segment7.net>
* lib/net/http.rb: Do not attempt SSL session resumption when the session is expired. [Bug #10533]
Tue Nov 25 15:59:46 2014 Eric Hodel <drbrain@segment7.net>
* lib/rake: Update to rake 10.4.0 * test/rake: ditto. * NEWS: ditto. * test/lib/minitest/unit.rb: Add compatibility shim for minitest 5. This only provides minitest 5 unit test naming compatibility.
Tue Nov 25 15:26:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* tool/vcs.rb (get_revisions): use Time.new instead of Time.mktime which does not accept UTC offset, and offset manually for older versions than 1.9.
Tue Nov 25 12:14:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (Init_process): initialize static IDs before constant definitions. [ruby-core:66445]
Tue Nov 25 10:32:23 2014 Eric Wong <e@80x24.org>
* compile.c (iseq_build_callinfo_from_hash): hoist out (iseq_build_from_ary_body): shorten callinfo case
Mon Nov 24 23:03:21 2014 Kouhei Sutou <kou@cozmixng.org>
* gems/bundled_gems: Update to test-unit 3.0.7.
Mon Nov 24 12:44:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (check_exec_redirect_fd, check_exec_redirect), (rb_execarg_addopt): get rid of inadvertent ID pindown.
Mon Nov 24 02:03:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_setter): preserve encoding of global variable name in error message.
Mon Nov 24 02:03:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* iseq.c (rb_insn_operand_intern): preserve encoding of method name in CALL_INFO at disassembling.
Mon Nov 24 02:02:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (must_respond_to): preserve encodings of variable name and class name in warning message.
Sun Nov 23 10:46:23 2014 Eric Wong <e@80x24.org>
* internal.h (struct rb_execarg): 160 => 144 bytes on x86-64 * ruby.c (struct load_file_arg): 48 => 40 bytes on x86-64 * vm_args.c (struct args_info): ditto
Sun Nov 23 07:46:54 2014 Andy Maloney <asmaloney@gmail.com>
* io.c (rb_io_sysread): Remove redundant assignment of 'n'. [Fix GH-767]
Sat Nov 22 09:48:33 2014 Tanaka Akira <akr@fsij.org>
* tool/make-snapshot: Specify PWD macro for make. PWD environment variable may not exist.
Fri Nov 21 11:58:58 2014 Aaron Patterson <aaron@tenderlovemaking.com>
* lib/resolv.rb: fall back if canonicalization fails. Thanks Vit Ondruch for the patch! [ruby-core:65836] * test/resolv/test_dns.rb: test for patch
Sat Nov 22 01:11:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* object.c (rb_mod_const_get, rb_mod_const_defined): ditto. * variable.c (rb_const_missing, rb_mod_const_missing): call const_missing without new ID to get rid of inadvertent ID creation.
Fri Nov 21 19:32:57 2014 NARUSE, Yui <naruse@ruby-lang.org>
* common.mk (ext/ripper/ripper.c): revert about srcdir and top_srcdir. * common.mk (ext/ripper/ripper.c): use $(PWD) for Unix, $(MAKEDIR) for Windows.
Fri Nov 21 18:12:37 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: Refactored.
Fri Nov 21 14:25:40 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (top_srcdir): added because lacking this macro causes build error at r48526.
Fri Nov 21 12:00:58 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps (in_makefile): Use FILES_NEED_VPATH and FILES_CONFUSING. * ext/objspace/extconf.rb: Add VPATH for id.h
Fri Nov 21 09:10:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (ext/ripper/ripper.c): fix dependencies for the case to make ripper.y and id.h under the build directory.
Fri Nov 21 08:42:21 2014 NARUSE, Yui <naruse@ruby-lang.org>
* common.mk (ext/ripper/ripper.c): id.h in VPATH may exist in the build directory. * common.mk (ext/ripper/ripper.c): $(RM) was not defined.
Fri Nov 21 00:36:09 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN::StringChar): get rid of a false positive assertion in ripper's test.
Fri Nov 21 00:29:51 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/net/imap.rb (Net::IMAP::ResponseParser::BEG_REGEXP): no need to use embed string.
Fri Nov 21 00:19:17 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/uri/mailto.rb (URI::MailTo::EMAIL_REGEXP): should escape `#`.
Thu Nov 20 23:17:11 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: Insert all dependencies found by compiler.
Thu Nov 20 15:51:01 2014 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/depend (nkf.o): add nkf.c as dependency. bsdmake tries to make nkf.o with nkf-utf8/nkf.c without this.
Thu Nov 20 08:54:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (struct parser_params): reduce size by reordering members and an unused member.
Thu Nov 20 02:44:27 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/matrix.rb: Vector#independent? and associated class method patch by gogo tanaka [#10451]
Thu Nov 20 02:32:34 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/matrix.rb: Add Vector#angle_with Patch by Egunov Dmitriy [#10442]
Thu Nov 20 02:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (ripper_flush_string_content, parser_parse_string): preserve parsed string content. [ruby-dev:48714] [Bug #10437] * parse.y (ripper_new_yylval): abstract function to create ripper wrapper, and make it able to hold another object.
Thu Nov 20 01:00:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (reg_named_capture_assign_gen): use predefined ID instead of rb_intern.
Thu Nov 20 00:54:57 2014 Tanaka Akira <akr@fsij.org>
* internal.h (ruby_init_setproctitle): Declare here.
Thu Nov 20 00:26:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_here_document): append byte sequence directly to the delayed content instead of creating an intermediate string object.
Wed Nov 19 21:11:01 2014 NARUSE, Yui <naruse@ruby-lang.org>
* common.mk (ext/json/parser/parser.c): don't touch parse.c, ruby repo is a downstream.
Wed Nov 19 20:38:11 2014 NARUSE, Yui <naruse@ruby-lang.org>
* common.mk (ext/ripper/ripper.c): use $(PWD) to get <build-directory>/ext/ripper.
Wed Nov 19 18:12:17 2014 NARUSE, Yui <naruse@ruby-lang.org>
* tool/downloader.rb (RubyGems.download): Don't download gem if the version is already downloaded. A gem file is versioned and it must be identical if the version is the same.
Wed Nov 19 17:59:25 2014 NARUSE, Yui <naruse@ruby-lang.org>
* common.mk (ext/ripper/ripper.c): pass build directory as VPATH. * ext/ripper/depend (.y.c): use VPATH for y.tab.c.
Wed Nov 19 10:07:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* template/prelude.c.tmpl (Prelude#translate): strip VPATH prefix from prelude names, so that srcdir differences do not make the generated code different.
Wed Nov 19 07:45:11 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_write): should set the error of GetOverlappedResult()'s, not WriteFile()'s (it's always ERROR_IO_PENDING, of course).
Tue Nov 18 14:16:47 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (gc_record): add information for debug print.
Wed Nov 19 04:49:07 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* debug.c (set_debug_option): need the declaration. * debug.c (set_debug_option): use the same macro with the implementation at win32/win32.c.
Wed Nov 19 04:16:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (symbol_list): fix the node type of literal symbol list with no interpolation. [ruby-core:66343]
Wed Nov 19 00:26:15 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: Sort dependencies.
Wed Nov 19 00:24:18 2014 Tanaka Akira <akr@fsij.org>
* enc/encdb.c: Include internal.h.
Tue Nov 18 23:23:45 2014 Tanaka Akira <akr@fsij.org>
* internal.h: Gather declarations in non-header files.
Tue Nov 18 23:45:52 2014 Tanaka Akira <akr@fsij.org>
* debug.c (SET_WHEN): Don't declare debug variables here. ruby_initial_gc_stress_ptr is changed int* to VALUE* at r41406. * internal.h (ruby_initial_gc_stress_ptr): Declared. (ruby_enable_coredump): Ditto.
Tue Nov 18 18:06:43 2014 Tanaka Akira <akr@fsij.org>
* include/ruby/io.h (FMODE_WSPLIT): Removed. The write() system call is not required to split. It was useful to avoid whole process blocking in Ruby 1.8 but not useful since write() is invoked without GVL. (FMODE_WSPLIT_INITIALIZED): Ditto. * io.c (wsplit_p): Removed. (io_writable_length): Removed. (rb_fcntl): Don't update the removed flags.
Tue Nov 18 03:23:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* object.c (check_setter_id): show the original argument instead of nil on TypeError.
Tue Nov 18 03:20:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* symbol.h (is_{local,global,instance,attrset,const,class,junk}_sym): fix ID type names.
Mon Nov 17 20:17:59 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole_event.c: use typed data.
Mon Nov 17 12:54:56 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/rubygems/*, test/rubygems/*: Update to RubyGems 2.4.4 master (2f6e42e).
Mon Nov 17 06:13:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (proc_binding): use the original iseq on a binding from proc from method object to get the location.
Sun Nov 16 19:38:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (rb_current_receiver): new function to return the receiver in the current control frame. [Feature #10195]
Sun Nov 16 19:11:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/timeout.rb (Timeout::ExitException#exception): rescue UncaughtThrowError which is specific for throw, instead of ArgumentError.
Sun Nov 16 18:22:18 2014 Eric Wong <e@80x24.org>
* tool/update-deps: warning to disable ccache
Sun Nov 16 13:11:35 2014 Tanaka Akira <akr@fsij.org>
* common.mk (CCAN_LIST_INCLUDES): Unused variable removed. (ENCODING_H_INCLUDES): Ditto. (PROBES_H_INCLUDES): Ditto. (VM_CORE_H_INCLUDES): Ditto.
Sun Nov 16 11:07:25 2014 Eric Wong <e@80x24.org>
* test/ruby/test_io.rb (test_readpartial_locktmp): remove unnecessary begin/end
Sun Nov 16 00:45:23 2014 Tanaka Akira <akr@fsij.org>
* common.mk: Specify dependencies for generated C sources.
Sat Nov 15 23:10:45 2014 Tanaka Akira <akr@fsij.org>
* common.mk: No need to declare dependencies which will be detected by inference rules.
Sat Nov 15 20:34:23 2014 Tanaka Akira <akr@fsij.org>
* internal.h: Include ruby.h and ruby/encoding.h to be includable without prior inclusion.
Sat Nov 15 20:46:44 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_document.rb (REXMLTests::TestDocument::EntityExpansionLimitTest): Group tests by general entity and parameter entity.
Sat Nov 15 20:43:31 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_document.rb (REXMLTests::TestDocument::EntityExpansionLimitTest): Define test XML in each test method because (1) each XML in used only one test and (2) related data and code should be close.
Sat Nov 15 20:39:06 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_document.rb (REXMLTests::TestDocument::EntityExpansionLimitTest): Use one test method for one test.
Sat Nov 15 20:16:59 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_document.rb (REXMLTests::TestDocument::EntityExpansionLimitTest): Use setup and teardown instead of ensure in test.
Sat Nov 15 20:11:34 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_document.rb (REXMLTests::TestDocument): Group entity expansion limit related tests.
Sat Nov 15 20:09:00 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_document.rb (REXMLTests::TestDocument::BomTest): Fix wrong parent class. It doesn't need inherit tests in TestDocument class.
Sat Nov 15 19:48:59 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/mkmf.rb (depend_rules): support comments during a line. * lib/mkmf.rb (depend_rules): apply RULE_SUBST even if the dependency file contains path.
Sat Nov 15 19:25:46 2014 Tanaka Akira <akr@fsij.org>
* common.mk: Remove comments in Dependency lines. Notified by usa. * enc/depend: Ditto. * ext/**/depend: Ditto.
Sat Nov 15 16:28:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (rb_throw_obj): throw UncaughtThrowError instead of ArgumentError. [Feature #10480]
Sat Nov 15 14:13:38 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: Extend to fix dependencies. * common.mk: Dependencies updated by tool/update-deps. * enc/depend: Ditto. * ext/**/depend: Ditto.
Fri Nov 14 17:36:48 2014 Tanaka Akira <akr@fsij.org>
* tool/update-deps: Support GNU Make 4.0.
Fri Nov 14 16:59:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (default_proc_for_compat_func): check arguments number and type, and get rid of reentering this default proc.
Fri Nov 14 16:33:06 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (gc_stat_internal): support compatible layer for GC.stat(symbol) type access.
Fri Nov 14 16:19:08 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (gc_stat_internal): add compatible layer. From Ruby 2.2, keys of GC.stat are changed [Feature #9924]. To provide compatible layer, GC.stat add a default_proc (if default_proc of given Hash object is not set). At first use of this compatible layer of interpreter process, show a warning message like that: program: GC.stat[:total_allocated_object] warning message: "warning: GC.stat keys were changed from Ruby 2.1. In this case, you refer to obsolete `total_allocated_object' (new key is `total_allocated_objects'). Please check <https://bugs.ruby-lang.org/issues/9924> for more information." Please correct my English message :) * hash.c (rb_hash_set_default_proc): export (in internal). * internal.h: ditto.
Fri Nov 14 10:41:25 2014 Koichi Sasada <ko1@atdot.net>
* gc.c: guard by #if/#endif with GC_ENABLE_INCREMENTAL_MARK to hide unused codes. * gc.c: similar to GC_ENABLE_LAZY_SWEEP.
Fri Nov 14 10:23:35 2014 Eric Wong <e@80x24.org>
* vm_eval.c (rb_eval_cmd): use pre-defined idCall
Fri Nov 14 09:25:44 2014 Eric Wong <e@80x24.org>
* vm_eval.c (rb_yield_splat): add missing GC guard [Bug #10509]
Fri Nov 14 08:12:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* gc.c: fix build error caused by implicit conversion with clang.
Fri Nov 14 06:54:06 2014 Eric Wong <e@80x24.org>
* insns.def (opt_succ): remove Time#succ optimization [Feature #10501]
Fri Nov 14 05:29:46 2014 Koichi Sasada <ko1@atdot.net>
* gc.c: refactoring. * gc.c: use GC_ENABLE_INCREMENTAL_MARK instead of USE_RINCGC. * gc.c (gc_start): check FORCE_MAJOR_GC.
Fri Nov 14 04:51:18 2014 Koichi Sasada <ko1@atdot.net>
* gc.c: Tuning RincGC parameters. Before this patch, gc_marks_step() marks (white -> grey) fixed number objects. However, this strategy does not fit practical cases, for example too slow to make progress. This patch changes this strategy how many objects the gc_marks_step() should handle. We can estimate how many times gc_marks_step() is called during this major marking (== C) with the free slot number in pooled pages. We also can estimate the living object number (== L) using last marked_slots value. We can solve this problem (how many objects should be process in gc_marks_step()) by L/C. * gc.c (rb_objspace_t): add rb_objspace_t::rincgc::pooled_slots and step_slots.
Fri Nov 14 01:26:47 2014 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (search_response): parse MODSEQ in SEARCH responses properly. [ruby-core:64203] [Bug #10112]
Fri Nov 14 01:03:17 2014 Tanaka Akira <akr@fsij.org>
* test/lib/envutil.rb: Moved from test/ruby/. * test/lib/find_executable.rb: Ditto. * test/lib/memory_status.rb: Ditto. * test/lib/test/unit.rb: require envutil. * test/: Don't require envutil in test files.
Thu Nov 13 21:59:58 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org>
* lib/rexml/document.rb: add REXML::Document#document. reported by Tomas Hoger <thoger@redhat.com> and patched by nahi.
Thu Nov 13 21:51:56 2014 Tanaka Akira <akr@fsij.org>
* test/monitor/test_monitor.rb: Use assert_join_threads.
Thu Nov 13 21:45:13 2014 Tanaka Akira <akr@fsij.org>
* test/openssl: Don't specify port number.
Thu Nov 13 21:22:35 2014 Tanaka Akira <akr@fsij.org>
* test/openssl/ssl_server.rb: Unused file removed. It is not used since r16111, Ruby 1.9.1.
Thu Nov 13 18:50:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_ensure): remove obsolete prot_tag comment. patch by Jack Danger at [ruby-core:66238]. [misc #10502]
Thu Nov 13 18:10:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm.c (rb_vm_make_proc_lambda): similar to rb_vm_make_proc() with is_lambda argument.
Thu Nov 13 12:11:18 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_fstat{,i64}): speed up. adjusting timestamps in this function is to get rid of the side effect of ENV["TZ"]. then, if ENV["TZ"] is not set, no need to adjust. this change makes File#stat about 60% faster.
Thu Nov 13 11:56:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* st.c: include "internal.h" for STATIC_ASSERT.
Thu Nov 13 03:56:38 2014 Eric Wong <e@80x24.org>
* gc.c (struct heap_page): trivial packing 304 => 296 bytes on x86-64
Wed Nov 12 22:50:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* gems/bundled_gems: Update to test-unit 3.0.6 and minitest 5.4.3.
Wed Nov 12 22:30:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/rubygems/*: Update to RubyGems 2.4.3 master (7b1f684).
Wed Nov 12 00:26:37 2014 Tanaka Akira <akr@fsij.org>
* test/ruby/test_object.rb: Specify an exception class for rescue clause. * test/dbm/test_dbm.rb: Ditto. * test/gdbm/test_gdbm.rb: Ditto. * test/sdbm/test_sdbm.rb: Ditto.
Tue Nov 11 23:43:51 2014 Tanaka Akira <akr@fsij.org>
* test/fileutils/test_fileutils.rb: Use assert_join_threads.
Tue Nov 11 22:51:14 2014 Tanaka Akira <akr@fsij.org>
* test/resolv/test_dns.rb: Use assert_join_threads.
Tue Nov 11 22:33:08 2014 Tanaka Akira <akr@fsij.org>
* test/net/pop/test_pop.rb: Use assert_join_threads.
Tue Nov 11 22:07:20 2014 Tanaka Akira <akr@fsij.org>
* test/net/http/test_https_proxy.rb: Use assert_join_threads.
Tue Nov 11 18:09:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* template/prelude.c.tmpl: move from tool/compile_prelude.rb and expand by generic_erb.rb.
Tue Nov 11 13:01:31 2014 NARUSE, Yui <naruse@ruby-lang.org>
* lib/rubygems/commands/contents_command.rb (files_in_default_gem): remove useless sort. show_files will sort the result and another branch, files_in_gem, doesn't sort. it should be removed for consistency. * test/rubygems/test_gem_commands_contents_command.rb (test_execute_default_gem): adjust the sort algorithm with Gem::Commands::ContentsCommand#show_files, which sort items as array of [prefix, basename] not strings.
Tue Nov 11 10:37:09 2014 Koichi Sasada <ko1@atdot.net>
* string.c (sym_equal): use rb_obj_equal(). rb_obj_equal() is specially optimized in opt_eq_func()@vm_insnhelper.c. This fix is made from this discussion: https://www.omniref.com/ruby/2.1.4/symbols/Symbol/%3D%3D#line=8361.
Tue Nov 11 09:38:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/rdoc/known_classes.rb: reverted regression changes of rdoc known class.
Tue Nov 11 00:21:50 2014 Tanaka Akira <akr@fsij.org>
* test/net/imap/test_imap.rb: Don't ignore exceptions on server threads.
Mon Nov 10 23:34:13 2014 Tanaka Akira <akr@fsij.org>
* test/net/ftp/test_ftp.rb (create_ftp_server): Don't ignore exceptions on server thread. Delete read_timeout method call to fix NoMethodError.
Mon Nov 10 20:20:53 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_read): retry with reduced length if cannot to write any data but no error occurs.
Mon Nov 10 20:04:16 2014 Tanaka Akira <akr@fsij.org>
* lib/webrick/server.rb: Setup shutdown pipe in listen method.
Mon Nov 10 19:37:09 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c, include/win32/win32.h (rb_w32_set_nonblock): new function to support nonblock-mode of pipes. * win32/win32.c (rb_w32_read): nonblock-mode pipe returns ERROR_NO_DATA if there is no data, but also returns it if remote-end is closed. * win32/win32.c (rb_w32_write): if cannot to write any data, it may be blocking. * io.c (rb_io_set_nonblock): use rb_w32_set_nonblock for Windows. * ext/io/nonblock/nonblock.c (rb_io_nonblock_set): use ruby's API when setting nonblock-mode. * test/ruby/test_io.rb: test nonblock pipes on Windows.
Mon Nov 10 17:24:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/etc/etc.c (etc_getlogin): set login name encoding properly. [ruby-core:66163] [Bug #10493]
Mon Nov 10 16:20:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/rubygems/*.rb: Update to RubyGems master(3e36528).
Mon Nov 10 16:09:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* signal.c (rb_f_kill): [DOC] mention known signal list. [ruby-core:66162] [Bug #10492]
Mon Nov 10 14:17:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/rdoc/*.rb: Update to RDoc 4.2.0.alpha(579a11c)
Mon Nov 10 12:44:39 2014 Tanaka Akira <akr@fsij.org>
* lib/webrick/server.rb: Less instance variables.
Mon Nov 10 12:19:43 2014 Tanaka Akira <akr@fsij.org>
* lib/webrick/server.rb (shutdown): Use close() on @shutdown_pipe_w to notify readability on the read side of the pipe. write_nonblock() is not usable for pipe on Windows. (cleanup_shutdown_pipe): Rescue IOError for @shutdown_pipe_w.close.
Mon Nov 10 07:31:59 2014 Tanaka Akira <akr@fsij.org>
* lib/webrick/server.rb (initialize): Initialize shutdown pipe here to avoid race condition. (cleanup_shutdown_pipe): New private method. (cleanup_listener): Extracted from shutdown method. Call this method from start method to avoid race condition.
Mon Nov 10 05:57:53 2014 Tanaka Akira <akr@fsij.org>
* test/webrick/webrick.cgi: Don't use debug mode. * test/webrick/webrick_long_filename.cgi: Ditto.
Sun Nov 9 23:25:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_eval.c (vm_call_super): allow bound proc method to call super method. * vm_insnhelper.c (vm_yield_with_cfunc): push defined class and bound proc method entry to the control frame.
Sun Nov 9 22:46:13 2014 Tanaka Akira <akr@fsij.org>
* test/open-uri: Test server log in server thread. * test/webrick: Ditto.
Sun Nov 9 22:28:34 2014 Tanaka Akira <akr@fsij.org>
* lib/webrick/httpstatus.rb: require webrick/accesslog for AccessLog.
Sun Nov 9 21:03:59 2014 Tanaka Akira <akr@fsij.org>
* test/webrick: Fix the argument order of assert_equal.
Sun Nov 9 20:29:01 2014 Tanaka Akira <akr@fsij.org>
* test/webrick: Store log in an array. * test/net/http: Ditto. * test/open-uri: Ditto.
Sun Nov 9 18:35:36 2014 Tanaka Akira <akr@fsij.org>
* test/xmlrpc: Refine log test.
Sun Nov 9 18:33:33 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* lib/unicode_normalize/normalize.rb: Replaced if-else by case in self.normalized? in parallel to r48309.
Sun Nov 9 18:07:00 2014 Tanaka Akira <akr@fsij.org>
* test/xmlrpc: Use assert_join_threads.
Sun Nov 9 14:06:13 2014 Tanaka Akira <akr@fsij.org>
* test/xmlrpc: Test webrick error log is empty.
Sun Nov 9 13:47:02 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (is_incremental_marking): use #if/#else because rb_objspace_t::flags::during_incremental_marking is not defined when GC_ENABLE_INCREMENTAL_MARK is 0. * gc.c (will_be_incremental_marking, is_full_marking): similar fix.
Sun Nov 9 12:16:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/securerandom.rb (SecureRandom.gen_random): separate implementation details and select at the load time.
Sun Nov 9 12:09:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry::API#Enum{Value,Key): ditto.
Sun Nov 9 11:48:40 2014 Tanaka Akira <akr@fsij.org>
* test/net/http: Examine webrick log.
Sun Nov 9 11:45:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* gems/bundled_gems: upgraded to test-unit 3.0.5.
Sun Nov 9 11:40:50 2014 Tanaka Akira <akr@fsij.org>
* defs/known_errors.def: More errors for FreeBSD.
Sun Nov 9 11:25:11 2014 Kazuki Tsujimoto <kazuki@callcc.net>
* gems/bundled_gems: upgraded to power_assert 0.2.0.
Sun Nov 9 10:31:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/securerandom.rb: set the script encoding to make a string literal in SecureRandom::Kernel32.last_error_message single byte encoding so msg[] works in bytes, since FormatMessage() returns the size in TCHARs, not in characters.
Sun Nov 9 09:50:22 2014 Tanaka Akira <akr@fsij.org>
* test/webrick: Refine log tests.
Sun Nov 9 08:58:05 2014 Tanaka Akira <akr@fsij.org>
* defs/known_errors.def (EHWPOISON): New errno symbol. It is defined by glibc-2.16.
Sun Nov 9 05:00:23 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/securerandom.rb (initialize): call the special method for Win32 before checking `/dev/urandom` because we know windows doesn't have it.
Sun Nov 9 04:01:46 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/securerandom.rb (SecureRandom::AdvApi32): split from `initialize`. thanks @zzak to remember it.
Sun Nov 9 02:05:33 2014 Tanaka Akira <akr@fsij.org>
* test/net/http/utils.rb: Don't connect to spawned server before actual test.
Sun Nov 9 01:51:50 2014 Benoit Daloze <eregontp@gmail.com>
* object.c (Module#const_defined?): [DOC] Revise the documentation. Patch by Xavier Noria. [Fixes GH-754] https://github.com/ruby/ruby/pull/754
Sun Nov 9 00:37:44 2014 Tanaka Akira <akr@fsij.org>
* test/webrick: Examine log and use assert_join_threads.
Fri Nov 7 00:00:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* template/unicode_norm_gen.tmpl: expand kompatible_table so that recursive expansion is not needed at runtime.
Thu Nov 6 23:58:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* pack.c (pack_pack): escape unprintable characters and preserve the encoding of warning message.
Thu Nov 6 23:55:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (sym_printable): QUOTE() should not raise an exception even on invalid byte sequence.
Thu Nov 6 21:44:36 2014 Tanaka Akira <akr@fsij.org>
* test/test_unicode_normalize.rb: Rename TestNormalize to TestUnicodeNormalize. Define constants under TestUnicodeNormalize.
Thu Nov 6 21:22:59 2014 Tanaka Akira <akr@fsij.org>
* test/open-uri/test_open-uri.rb: Check empty webrick log.
Thu Nov 6 19:27:34 2014 NARUSE, Yui <naruse@ruby-lang.org>
* re.c (unescape_nonascii): cast -1 for the case char is unsigned char. If char is signed char, for example gcc for ARM or ppc64, it caused infinite loop. http://kmuto.jp/build-ruby/arm/ruby-trunk/log/20141106T013005Z.fail.html.gz http://rubyci.blob.core.windows.net/f19p8/ruby-trunk/log/20141106T090217Z.fail.html.gz
Thu Nov 6 09:53:18 2014 Eric Wong <e@80x24.org>
* lib/uri/rfc2396_parser.rb (initialize): reduce bytecode size 2088 => 1332 bytes on 32-bit x86
Thu Nov 6 08:49:49 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* lib/unicode_normalize/normalize.rb: Comment clarification.
Wed Nov 5 23:43:24 2014 Naohisa Goto <ngotogenome@gmail.com>
* compile.c (compile_data_alloc): add padding when strict alignment is required for memory access. Currently, the padding is enabled only when the CPU is 32-bit SPARC and the compiler is GCC. [Bug #9681] [ruby-core:61715] * compile.c (STRICT_ALIGNMENT): defined if strict alignment is required * compile.c (ALIGNMENT_SIZE, ALIGNMENT_SIZE_MASK, PADDING_SIZE_MAX): new macros for alignment word size, bit mask, max size of padding. * compile.c (calc_padding): new function to calculate padding size.
Wed Nov 5 23:24:45 2014 Tanaka Akira <akr@fsij.org>
* test/open-uri/test_open-uri.rb: Don't ignore webrick's log.
Wed Nov 5 19:20:08 2014 Tanaka Akira <akr@fsij.org>
* lib/webrick/server.rb: Stop listener loop properly. [ruby-core:66085] [Bug #10478] Fixed by Charles Nutter.
Wed Nov 5 17:20:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/intern.h (rb_disable_super, rb_enable_super): warn as deprecated at build time, instead of ignoring silently or warning at runtime only.
Wed Nov 5 16:55:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (rb_f_lambda): remove deprecated function, which has been unavailable from extension libraries.
Wed Nov 5 16:26:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/intern.h (rb_clear_cache): mark as deprecated, not only warnings at runtime.
Wed Nov 5 15:05:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_{,l,r}strip_bang): rb_str_subseq() will not NUL-terminate the result string, in the future, so it will not be needed in other cases.
Wed Nov 5 14:11:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (lib/unicode_normalize/tables.rb): do nothing unless BASERUBY is available. MINIRUBY cannot load extension libraries, so cannot update Unicode data.
Wed Nov 5 12:13:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_lstrip, rb_str_strip): reduce memory copy by copying necessary part only. * string.c (rb_str_strip_bang, rb_str_strip): ditto.
Wed Nov 5 12:13:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_lstrip, rb_str_strip): reduce memory copy by copying necessary part only. * string.c (rb_str_strip_bang, rb_str_strip): ditto.
Wed Nov 5 10:54:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_lstrip_bang, rb_str_rstrip_bang): terminate wchar strings with wchar 0.
Tue Nov 4 21:23:22 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/win32/lib/Win32API.rb: Fiddle::Importer is defined in fiddle/import.rb and it's not loaded implicitly. * ext/win32/lib/Win32API.rb (Win32API#initialize): `import` is a string. * ext/win32/lib/Win32API.rb (Win32API#initialize): Fiddle::Importer::CALL_TYPE_TO_ABI is private constant.
Tue Nov 4 21:20:07 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/securerandom.rb (SecureRandom.random_bytes): use fiddle directly instead of using Win32API.
Tue Nov 4 21:04:30 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* test/rubygems/test_gem_request_set_lockfile.rb (test_relative_path_from): driveletter support.
Tue Nov 4 16:23:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/rubygems/test_gem_remote_fetcher.rb (RemoteFetcherCleanup): close all pooled connections for each tests to fix leaked file descriptors.
Tue Nov 4 12:51:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/ruby.h (PRIsVALUE), vsnprintf.c (BSD_vfprintf): add RUBY_PRI_VALUE_MARK to reduce danger of accidental conflict with plain "%i". binary incompatible with extension libraries using PRIsVALUE and built for 2.1 and earlier. [EXPERIMENTAL]
Tue Nov 4 12:33:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* object.c: fix document of Kernel#String by @suzukaze [fix GH-743][ci skip]
Tue Nov 4 12:21:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/csv.rb: added documentation for skip_blanks option by @decasia [fix GH-744][ci skip]
Tue Nov 4 12:09:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/open3.rb: fix code formatting in documentation by @JoshCheek [fix GH-747][ci skip]
Tue Nov 4 08:57:37 2014 Eric Wong <e@80x24.org>
* encoding.c (enc_memsize): remove unnecessary function [ruby-core:65304]
Mon Nov 3 18:09:39 2014 Tanaka Akira <akr@fsij.org>
* test/openssl/utils.rb: The default of :ignore_listener_error is changed to false.
Mon Nov 3 14:42:37 2014 Koichi Sasada <ko1@atdot.net>
* iseq.c (iseq_free): resolve memory leak.
Mon Nov 3 13:49:18 2014 Koichi Sasada <ko1@atdot.net>
* iseq.c (iseq_memsize): catch up recent changes.
Mon Nov 3 13:38:28 2014 Koichi Sasada <ko1@atdot.net>
* vm_core.h: change semantics of opt_num and opt_table. `opt_num' was the number of optional parameters + 1. `opt_table' has "opt_num" entries. Change them to: `opt_num' is the number of optional parameters. `opt_table' has "opt_num + 1" entries. This change simplify parameter fitting logics. * compile.c: catch up this change. * iseq.c: ditto. * proc.c: ditto. * vm_args.c: ditto.
Mon Nov 3 11:47:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* NEWS: added period into Matrix section. [ci skip] [misc #10446][ruby-core:65987]
Mon Nov 3 09:43:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* vm_args.c: fixed build error with clang
Mon Nov 3 09:32:46 2014 NARUSE, Yui <naruse@ruby-lang.org>
* lib/uri/rfc3986_parser.rb (URI::RFC3986_Parser::RFC3986_URI): allow '[' and ']' for URI input (and escape). [Bug #10402] * lib/uri/generic.rb (URI#query=): escape '[', '\', and ']'.
Mon Nov 3 07:49:34 2014 Koichi Sasada <ko1@atdot.net>
* vm_core.h: change iseq parameter data structure. https://bugs.ruby-lang.org/issues/10440#change-49694 * change terminology `arg' to `param'. * move rb_iseq_t::arg_* to rb_iseq_t::param. * move rb_iseq_t::arg_size to rb_iseq_t::param::size. * move rb_iseq_t::argc to rb_iseq_t::param::lead_num. * move rb_iseq_t::arg_opts to rb_iseq_t::param::opt_num. * move rb_iseq_t::arg_rest to rb_iseq_t::param::rest_start. * move rb_iseq_t::arg_post_num to rb_iseq_t::param::post_num. * move rb_iseq_t::arg_post_start to rb_iseq_t::param::post_start. * move rb_iseq_t::arg_block to rb_iseq_t::param::block_start. * move rb_iseq_t::arg_keyword* to rb_iseq_t::param::keyword. rb_iseq_t::param::keyword is allocated only when keyword parameters are available. * introduce rb_iseq_t::param::flags to represent parameter availability. For example, rb_iseq_t::param::flags::has_kw represents that this iseq has keyword parameters and rb_iseq_t::param::keyword is allocated. We don't need to compare with -1 to check availability. * remove rb_iseq_t::arg_simple. * compile.c: catch up this change. * iseq.c: ditto. * proc.c: ditto. * vm.c, vm_args.c, vm_dump.c, vm_insnhelper.c: ditto. * iseq.c (iseq_data_to_ary): support keyword argument.
Mon Nov 3 03:39:04 2014 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_method.rb: r48239 makes this test green.
Mon Nov 03 03:02:38 2014 Koichi Sasada <ko1@atdot.net>
* rewrite method/block parameter fitting logic to optimize keyword arguments/parameters and a splat argument. [Feature #10440] (Details are described in this ticket) Most of complex part is moved to vm_args.c. Now, ISeq#to_a does not catch up new instruction format. * vm_core.h: change iseq data structures. * introduce rb_call_info_kw_arg_t to represent keyword arguments. * add rb_call_info_t::kw_arg. * rename rb_iseq_t::arg_post_len to rb_iseq_t::arg_post_num. * rename rb_iseq_t::arg_keywords to arg_keyword_num. * rename rb_iseq_t::arg_keyword to rb_iseq_t::arg_keyword_bits. to represent keyword bitmap parameter index. This bitmap parameter shows that which keyword parameters are given or not given (0 for given). It is referred by `checkkeyword' instruction described bellow. * rename rb_iseq_t::arg_keyword_check to rb_iseq_t::arg_keyword_rest to represent keyword rest parameter index. * add rb_iseq_t::arg_keyword_default_values to represent default keyword values. * rename VM_CALL_ARGS_SKIP_SETUP to VM_CALL_ARGS_SIMPLE to represent (ci->flag & (SPLAT|BLOCKARG)) && ci->blockiseq == NULL && ci->kw_arg == NULL. * vm_insnhelper.c, vm_args.c: rewrite with refactoring. * rewrite splat argument code. * rewrite keyword arguments/parameters code. * merge method and block parameter fitting code into one code base. * vm.c, vm_eval.c: catch up these changes. * compile.c (new_callinfo): callinfo requires kw_arg parameter. * compile.c (compile_array_): check the last argument Hash object or not. If Hash object and all keys are Symbol literals, they are compiled to keyword arguments. * insns.def (checkkeyword): add new instruction. This instruction check the availability of corresponding keyword. For example, a method "def foo k1: 'v1'; end" is compiled to the following instructions. 0000 checkkeyword 2, 0 # check k1 is given. 0003 branchif 9 # if given, jump to address #9 0005 putstring "v1" 0007 setlocal_OP__WC__0 3 # k1 = 'v1' 0009 trace 8 0011 putnil 0012 trace 16 0014 leave * insns.def (opt_send_simple): removed and add new instruction "opt_send_without_block". * parse.y (new_args_tail_gen): reorder variables. Before this patch, a method "def foo(k1: 1, kr1:, k2: 2, **krest, &b)" has parameter variables "k1, kr1, k2, &b, internal_id, krest", but this patch reorders to "kr1, k1, k2, internal_id, krest, &b". (locate a block variable at last) * parse.y (vtable_pop): added. This function remove latest `n' variables from vtable. * iseq.c: catch up iseq data changes. * proc.c: ditto. * class.c (keyword_error): export as rb_keyword_error(). * common.mk: depend vm_args.c for vm.o. * hash.c (rb_hash_has_key): export. * internal.h: ditto.
Mon Nov 3 02:35:32 2014 Koichi Sasada <ko1@atdot.net>
* sample/simple-bench.rb: added to measure performance of simple lines.
Mon Nov 3 02:33:43 2014 Koichi Sasada <ko1@atdot.net>
* gc.c (obj_info): show T_STRING more details.
Sun Nov 2 01:30:32 2014 Tanaka Akira <akr@fsij.org>
* test/openssl/test_ssl.rb: Don't ignore errors on listener threads, as much as possible. * test/openssl/test_ssl_session.rb: Ditto. * test/openssl/test_partial_record_read.rb: Ditto.
Sat Nov 1 23:11:05 2014 Tanaka Akira <akr@fsij.org>
* test/openssl/utils.rb (start_server): Don't close sockets before threads finished.
Sat Nov 1 22:06:24 2014 Tanaka Akira <akr@fsij.org>
* test/openssl/test_ssl_session.rb (test_ctx_client_session_cb): Don't ignore errors of SSL accept. (test_ctx_server_session_cb): Ditto. * test/openssl/utils.rb (server_loop): Add ignore_ssl_accept_error argument. (start_server): Refine threads waits. * test/ruby/envutil.rb (assert_join_threads): Show a thread before backtrace.
Sat Nov 1 20:40:18 2014 Tanaka Akira <akr@fsij.org>
* test/openssl/utils.rb (start_server, server_loop): Use a pipe to stop server instead of shutdown/close a listening socket.
Sat Nov 1 19:24:59 2014 Tanaka Akira <akr@fsij.org>
* test/ruby/envutil.rb (assert_join_threads): New assertion to join multiple threads without exceptions.
Sat Nov 1 17:09:32 2014 Tanaka Akira <akr@fsij.org>
* bignum.c (bary_mul_balance_with_mulfunc): Fix free work area location. [ruby-dev:48723] [Bug #10464] [ruby-core:66044] [Bug #10465] Reported by Kohji Nishihama.
Sat Nov 1 15:45:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parse_atmark): mere atmark and two atmarks without succeeding identifiers are invalid as instance/class variable names.
Sat Nov 1 06:31:41 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole_variant.c: use typed data.
Fri Oct 31 13:55:28 2014 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/dl/*: remove DL as it is replaced by Fiddle. [Feature #5458] Thanks to Jonan Scheffler <jonanscheffler@gmail.com> for this patch * test/dl/*: ditto.
Fri Oct 31 15:26:02 2014 Charles Oliver Nutter <headius@headius.com>
* test/openssl/test_ssl.rb: Add certificate verification chain test from JRuby community.
Fri Oct 31 18:58:02 2014 Charles Oliver Nutter <headius@headius.com>
* test/psych/test_emitter.rb: Fix line_width test...initial value is impl-specific and attr assignment always returns LHS.
Fri Oct 31 22:19:30 2014 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest.rb (Digest()): This function should now be thread-safe. If you have a problem with regard to on-demand loading under a multi-threaded environment, preload "digest/*" modules on boot or use this method instead of directly referencing Digest::*. [Bug #9494] cf. https://github.com/aws/aws-sdk-ruby/issues/525
Fri Oct 31 21:33:17 2014 Akinori MUSHA <knu@iDaemons.org>
* test/digest/test_digest.rb: Drop #!. This no longer runs stand-alone because it depends on ruby/envutil.
Fri Oct 31 17:22:19 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/setup.mak: $(APPEND) with some arguments insert a space before the arguments, so it causes error if the arguments are expected to be a macro definition. this fix resolve the build error introduced at r48210.
Fri Oct 31 16:47:35 2014 Akinori MUSHA <knu@iDaemons.org>
* ext/syslog/lib/syslog/logger.rb (Syslog::Logger::VERSION): Bump the VERSION to 2.1.0. [ruby-core:64483] [Bug #10159]
Fri Oct 31 16:33:46 2014 Akinori MUSHA <knu@iDaemons.org>
* lib/net/imap.rb (Net::IMAP#fetch): [DOC] Document that Net::IMAP#fetch will return nil instead of an empty array.
Fri Oct 31 12:54:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (.unicode-tables.time): needs Unicode files always, and should update after downloading these files. [ruby-core:66026] [Bug #10461]
Fri Oct 31 10:16:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* .travis.yml: reverted r48199, it's unrelated configuration.
Fri Oct 31 09:58:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/test_unicode_normalize.rb: added unicode version number to test data location.
Fri Oct 31 09:56:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* .gitignore: ignored unicode data with version directories.
Fri Oct 31 09:35:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* .travis.yml: tweak build scripts for unicode_normalize.rb.
Thu Oct 30 18:47:04 2014 NARUSE, Yui <naruse@ruby-lang.org>
* common.mk: fix for the case ALWAYS_UPDATE_UNICODE=no
Thu Oct 30 13:23:23 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* tool/downloader.rb: changed Unicode data download location from latest Unicode version to Unicode 7.0.0.
Thu Oct 30 11:16:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_insnhelper.c (vm_callee_setup_arg{_complex,}): try conversion by to_ary for a lambda, as well as a proc. [ruby-core:65887] [Bug #9605]
Wed Oct 29 21:13:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (gettable_gen): warn circular argument reference, for transition from 2.1 and earlier. [ruby-core:65990] [Bug #10314]
Wed Oct 29 20:41:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_params): remove unused member `cur_mid`. this has been taken over by `in_def` since 1.6.
Wed Oct 29 14:44:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (rb_f_load): path name needs to be transcoded to OS path encoding. [ruby-list:49994]
Wed Oct 29 11:48:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (__builtin_setjmp): disable with gcc/clang earlier than 4.3 on Mac OS X. [ruby-core:65174] [Bug #10272]
Wed Oct 29 11:43:43 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/matrix.rb: Generalize Vector#cross_product to arbitrary dimensions based on a patch by gogo tanaka [#10074]
Wed Oct 29 11:43:11 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/matrix.rb: Add Matrix#adjucate patch by gogo tanaka [#10056]
Wed Oct 29 11:42:33 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/matrix.rb: Add aliases for Vector#cross & dot patch by gogo tanaka [#10352]
Wed Oct 29 10:00:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* gems/bundled_gems: Update latest version of bundled gems.
Tue Oct 28 16:52:07 2014 Eric Wong <e@80x24.org>
* signal.c (install_sighandler): remove rb_disable_interrupt and rb_enable_interrupt calls (init_sigchld): ditto (Init_signal): disable and enable interrupt once around all install_sighandler and init_sigchld to reduce syscalls at start [Feature #9345] [ruby-core:59480]
Tue Oct 28 16:22:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (process_options, load_file_internal2): should not require other files when dump option is given. [ruby-dev:48712] [Bug #10435]
Tue Oct 28 14:51:38 2014 NARUSE, Yui <naruse@ruby-lang.org>
* configure.in: remove apple-gcc4.2 from CC candidates.
Mon Oct 27 20:13:37 2014 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/rexml/entity.rb: keep the entity size within the limitation. reported by Willis Vandevanter <will@silentrobots.com> and patched by nahi.
Mon Oct 27 17:17:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (method_proc): the receiver of binding from method should be same as the receiver of the method. [ruby-core:65917] [Bug #10432]
Mon Oct 27 16:26:37 2014 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_super.rb: add a test to check block passing.
Mon Oct 27 15:59:26 2014 Koichi Sasada <ko1@atdot.net>
* gc.c: is_incremental_marking(), will_be_incremental_marking(): use `&&' with GC_ENABLE_INCREMENTAL_MARK instead of using #if/#else/#endif.
Mon Oct 27 13:40:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (gc_sweep_rest): sweep rest pages regardless of whether lazy sweep is enabled or not. based on the patch by Masahiro Ide at [ruby-dev:48706]. [Bug #10431]
Mon Oct 27 11:18:32 2014 Eric Wong <e@80x24.org>
* test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): reduce garbage during forks
Sun Oct 25 12:26:26 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* template/insns.inc.tmpl, insns_info.inc.tmpl, known_errors.inc.tmpl, minsns.inc.tmpl: fixed path of generating script.
Sun Oct 26 12:24:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/ripper/lib/ripper/sexp.rb (Ripper.sexp, Ripper.sexp_raw): return nil on error. [ruby-dev:48678] [Bug #10405]
Sun Oct 25 11:24:24 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* string.c: improved comment.
Sun Oct 26 07:40:11 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_val2variant, ole_invoke): refactoring. use ole_variant2variant to convert WIN32OLE_VARIANT object to VARIANT object. * ext/win32ole/win32ole_variant.c: refactoring. add ole_variant2variant. * ext/win32ole/win32ole_variant.h: ditto.
Sat Oct 25 22:28:17 2014 Tanaka Akira <akr@fsij.org>
* io.c (io_binwrite_string): Test writev() failure.
Sat Oct 25 20:19:19 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* test/test-unicode_normalize.rb: added test_us_ascii.
Sat Oct 25 20:09:09 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* lib/unicode_normalize/normalize.rb: added US_ASCII as trivially supported encoding (is always normalized, and may appear mixed in with UTF-8 or other Unicode encodings).
Sat Oct 25 20:01:01 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* test/test-unicode_normalize.rb: added test_raise_exception_for_non_unicode_encoding.
Sat Oct 25 19:30:30 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* test/test-unicode_normalize.rb: removed unused function.
Sat Oct 25 18:41:41 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* template/unicode_norm_gen.tmpl: Adjusted name of generating file.
Fri Oct 24 22:49:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex): dispatch newline and space at fluent interface, so that the following identifier does not include the space. [ruby-dev:48684] [Bug #10411]
Fri Oct 24 20:41:36 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* signal.c (check_reserved_signal_): fix write count since r47991.
Thu Oct 23 21:42:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_hash_delete): now does not call the block given to the current method. [ruby-core:65861] [Bug #10413]
Thu Oct 23 19:13:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_method.c (rb_method_entry_make): warn redefinition only for already defined methods, but not for undefined methods. [ruby-dev:48691] [Bug #10421]
Thu Oct 23 17:19:04 2014 Kouhei Sutou <kou@cozmixng.org>
* lib/rexml/source.rb (REXML::IOSource#encoding_updated): Fix a bug that can't parse XML correctly when Encoding.default_internal is different with XML encoding. REXML::Source converts XML encoding on read. So IO should not convert XML encoding. Based on patch by NAKAMURA Usaku. [ruby-dev:48686] [Bug #10418] * test/rexml/test_encoding.rb (REXMLTests::EncodingTester#test_parse_utf16_with_utf8_default_internal): Add the for the above case.
Thu Oct 23 16:29:02 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_encoding.rb (REXMLTests::EncodingTester#test_parse_utf16): Use meaningful test name. "ticket" in the old test name means the ticket in REXML's issue tracker. The REXML's issue tracker was gone. So "ticket" is meaningless. * test/rexml/data/ticket_110_utf16.xml: Rename to ... * test/rexml/data/utf16.xml: ... this.
Thu Oct 23 16:18:11 2014 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/test_encoding.rb (REXMLTests::EncodingTester#test_ticket_110): Fix expected and actual order. Patch by NAKAMURA Usaku. Thanks!!!
Thu Oct 23 10:47:16 2014 Eric Wong <e@80x24.org>
* insns.def (getlocal,setlocal): add comment to def/opt_operand.def
Thu Oct 23 10:22:41 2014 Eric Wong <e@80x24.org>
* test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): use IO#wait_readable instead of timeout
Thu Oct 23 10:22:24 2014 Eric Wong <e@80x24.org>
* test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): ensure exit! during fork failure
Thu Oct 23 10:21:21 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
* NEWS: Added String#unicode_normalize(|!|d?) [ci skip]
Thu Oct 23 03:41:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* class.c (unknown_keyword_error): delete expected keywords directly from raw table, so that the given block is not called. [ruby-core:65837] [Bug #10413]
Thu Oct 23 02:33:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (update-unicode): invert dependency to run every times. [ruby-core:65842] [