From 76e047a8435c4a5d0b86a5dde34122be4b44c367 Mon Sep 17 00:00:00 2001 From: naruse Date: Sun, 6 Nov 2016 14:01:21 +0000 Subject: remove debug sleep & exit git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- tool/vcs.rb | 2 -- 1 file changed, 2 deletions(-) diff --git a/tool/vcs.rb b/tool/vcs.rb index 173c306e3c..e663d86a98 100644 --- a/tool/vcs.rb +++ b/tool/vcs.rb @@ -287,8 +287,6 @@ class VCS IO.copy_stream(r, w) end end - sleep 10 - exit end end -- cgit v1.2.3 From 90bf4a8edb295308d07584d94366998ad0a7e988 Mon Sep 17 00:00:00 2001 From: shugo Date: Sun, 6 Nov 2016 14:41:39 +0000 Subject: * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): send SIGKILL if the child process doesn't die within 1 second. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ test/ruby/test_optimization.rb | 18 +++++++++++++++--- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 91c4fc672f..7093ce4ca2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Nov 6 23:36:07 2016 Shugo Maeda + + * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): + send SIGKILL if the child process doesn't die within 1 second. + Sun Nov 6 21:54:28 2016 NARUSE, Yui * tool/vcs.rb (export_changelog): generate ChangeLog file from diff --git a/test/ruby/test_optimization.rb b/test/ruby/test_optimization.rb index 6f5262a69d..0205c92e2f 100644 --- a/test/ruby/test_optimization.rb +++ b/test/ruby/test_optimization.rb @@ -338,9 +338,21 @@ EOS in_p.write(script) in_p.close out_p.gets - Process.kill(:SIGINT, pid) - *, stat = Process.wait2(pid) - [stat, err_p.read] + sig = :INT + begin + Process.kill(sig, pid) + Timeout.timeout(1) do + *, stat = Process.wait2(pid) + [stat, err_p.read] + end + rescue Timeout::Error + if sig == :INT + sig = :KILL + retry + else + raise + end + end } assert_equal("INT", Signal.signame(status.termsig)) assert_match(/Interrupt/, err, bug) -- cgit v1.2.3 From fd9f38348c1247acd0d18312f25e859476eec7a7 Mon Sep 17 00:00:00 2001 From: shugo Date: Sun, 6 Nov 2016 15:33:10 +0000 Subject: confirm that status.termsig is not nil. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56642 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_optimization.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/test/ruby/test_optimization.rb b/test/ruby/test_optimization.rb index 0205c92e2f..5f4a54c2f5 100644 --- a/test/ruby/test_optimization.rb +++ b/test/ruby/test_optimization.rb @@ -317,7 +317,7 @@ class TestRubyOptimization < Test::Unit::TestCase end def test_tailcall_interrupted_by_sigint - bug = 'ruby-core:76327' + bug12576 = 'ruby-core:76327' script = < true, @@ -354,8 +354,9 @@ EOS end end } - assert_equal("INT", Signal.signame(status.termsig)) - assert_match(/Interrupt/, err, bug) + assert_not_equal(nil, status.termsig, bug12576) + assert_equal("INT", Signal.signame(status.termsig), bug12576) + assert_match(/Interrupt/, err, bug12576) end class Bug10557 -- cgit v1.2.3 From a8206276e150a9a9d963242b1aa3505360c459c9 Mon Sep 17 00:00:00 2001 From: svn Date: Sun, 6 Nov 2016 15:33:10 +0000 Subject: * 2016-11-07 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.h b/version.h index af373ead36..61d28453db 100644 --- a/version.h +++ b/version.h @@ -4,7 +4,7 @@ #define RUBY_RELEASE_YEAR 2016 #define RUBY_RELEASE_MONTH 11 -#define RUBY_RELEASE_DAY 6 +#define RUBY_RELEASE_DAY 7 #include "ruby/version.h" -- cgit v1.2.3 From e8ffc63c02a7895524f7ada01a9e5bca778fe3e7 Mon Sep 17 00:00:00 2001 From: usa Date: Sun, 6 Nov 2016 15:35:01 +0000 Subject: * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): ignore on Windows because we cannot handle signaled status of child ruby process on this platform. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ test/ruby/test_optimization.rb | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 7093ce4ca2..1714b7caec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Nov 7 00:32:45 2016 NAKAMURA Usaku + + * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): + ignore on Windows because we cannot handle signaled status of child + ruby process on this platform. + Sun Nov 6 23:36:07 2016 Shugo Maeda * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): diff --git a/test/ruby/test_optimization.rb b/test/ruby/test_optimization.rb index 5f4a54c2f5..b964b26461 100644 --- a/test/ruby/test_optimization.rb +++ b/test/ruby/test_optimization.rb @@ -357,7 +357,7 @@ EOS assert_not_equal(nil, status.termsig, bug12576) assert_equal("INT", Signal.signame(status.termsig), bug12576) assert_match(/Interrupt/, err, bug12576) - end + end unless /mswin|mingw/ =~ RUBY_PLATFORM class Bug10557 def [](_) -- cgit v1.2.3 From 4e9a5a3e3d8e87a16d83aa376265b31716019462 Mon Sep 17 00:00:00 2001 From: naruse Date: Sun, 6 Nov 2016 15:56:27 +0000 Subject: Obsolete ChangeLog [Feature #12283] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 9492 ------------------------------------------------------------- 1 file changed, 9492 deletions(-) delete mode 100644 ChangeLog diff --git a/ChangeLog b/ChangeLog deleted file mode 100644 index 1714b7caec..0000000000 --- a/ChangeLog +++ /dev/null @@ -1,9492 +0,0 @@ -Mon Nov 7 00:32:45 2016 NAKAMURA Usaku - - * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): - ignore on Windows because we cannot handle signaled status of child - ruby process on this platform. - -Sun Nov 6 23:36:07 2016 Shugo Maeda - - * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): - send SIGKILL if the child process doesn't die within 1 second. - -Sun Nov 6 21:54:28 2016 NARUSE, Yui - - * tool/vcs.rb (export_changelog): generate ChangeLog file from - vcs's log. [Feature #12283] - - * tool/make-snapshot (package): overwrite ChangeLog by generated - ChangeLog. - -Sun Nov 6 21:36:33 2016 SHIBATA Hiroshi - - * NEWS: Added entry for RDoc 5. - -Sun Nov 6 21:35:37 2016 SHIBATA Hiroshi - - * NEWS: ordered entries and adjust styles. - -Sun Nov 6 18:23:31 2016 SHIBATA Hiroshi - - * NEWS: Added entry for [Feature #12160][ruby-core:74239] - -Sun Nov 6 18:18:25 2016 SHIBATA Hiroshi - - * NEWS: Added entry for r56624. - -Sun Nov 6 15:53:03 2016 Shugo Maeda - - * configure.in (-Wno-maybe-uninitialized): gcc 6 also shows the same - warnings as described in r49410. - -Sun Nov 6 14:42:50 2016 takkanm - - * eval.c (rb_mod_include, rb_mod_prepend): check if arguments are - given, as well as Kernel#extend. [ruby-dev:49854] [Bug #12887] - [Fix GH-1470] - -Sun Nov 6 11:59:05 2016 Shugo Maeda - - * test/rinda/test_rinda.rb (test_make_socket_ipv6_multicast, - test_make_socket_ipv6_multicast_hops): skip if IPv6 multicast - address is not available. - -Sun Nov 6 11:53:23 2016 Nobuyoshi Nakada - - * lib/irb.rb (Binding#irb): new method like Binding#pry. - -Sun Nov 6 11:48:55 2016 Shugo Maeda - - * test/net/smtp/test_smtp.rb (test_tls_connect, test_tls_connect): - use Socket.tcp_server_sockets in case localhost is resolved to ::1. - -Sun Nov 6 11:49:47 2016 Nobuyoshi Nakada - - * lib/irb.rb (IRB::Irb#run): split from IRB.start. - -Sun Nov 6 11:45:11 2016 Nobuyoshi Nakada - - * lib/e2mmap.rb (E2MM.def_exception): remove old definition if - exists so that works multiple times. - -Sun Nov 6 10:03:00 2016 Shugo Maeda - - * test/ruby/test_optimization.rb (test_tailcall_interrupted_by_sigint): - don't use sleep to run faster. - -Sun Nov 6 09:58:47 2016 Nobuyoshi Nakada - - * process.c (rb_exec_fillarg): honor the given path environment - variable. [ruby-core:53103] [Bug #8004] - -Sun Nov 6 01:52:31 2016 Akira Matsuda - - * lib/erb.rb: Alias regist_scanner to register_scanner - -Sun Nov 6 01:39:36 2016 Shugo Maeda - - * compile.c (tailcallable_p): disable tail call optimization for - toplevel, eval, and load to avoid SEGV when interrupted by SIGINT. - [ruby-core:76327] [Bug #12576] - -Sun Nov 6 01:28:41 2016 Koichi Sasada - - * vm_insnhelper.h: rename REG_(CFP|PC|SP|EP) to VM_REG_.... - [Bug #12527] - - * vm_exec.c: ditto. - -Sun Nov 6 00:25:11 2016 Sho Hashimoto - - * enumerator.c (InitVM_Enumerator): Enumerator::Lazy#chunk_while - defined. [Fix GH-1186] - https://github.com/ruby/ruby/pull/1186 - -Sun Nov 6 00:22:51 2016 Kazuki Tsujimoto - - * vm_eval.c (vm_call0_cfunc_with_frame): pass method id to - dtrace hook. follow up r56592. - -Sun Nov 6 00:06:38 2016 Tanaka Akira - - * lib/resolv.rb (Resolv::LOC::Coord.create): fixed. - [ruby-core:72567] [Bug #11912] fixed by Eric Wong and Kazuhiro - NISHIYAMA. - -Sun Nov 6 00:03:09 2016 NARUSE, Yui - - * configure.in (-Wimplicit-fallthrough): gcc7 introduces case - fall through warnings but it is too noisy. - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=7652 - -Sat Nov 5 23:58:32 2016 Shugo Maeda - - * numeric.c (rb_int_round): cast to SIGNED_VALUE to suppress - warnings by -Wsign-compare. - -Sat Nov 5 23:48:27 2016 NARUSE, Yui - - * file.c (rb_home_dir_of): convert given username into filesystem - encoding. [ruby-core:76682] [Bug #12652] - patched by Davis Mosans - -Sat Nov 5 23:46:03 2016 Tanaka Akira - - * time.c (vtm_add_offset): Fix yday on last day of year. - [ruby-core:72878] [Bug #11994] Fixed by Andrew White. - -Sat Nov 5 23:30:41 2016 Shugo Maeda - - * lib/net/http.rb (Net::HTTP.post): new convenience method to send - a POST request. [ruby-core:75484] [Feature #12375] - -Sat Nov 5 23:03:54 2016 NARUSE, Yui - - * lib/net/http.rb (transport_request): other than HTTPContinue - in 1xx (HTTPInformation) also needs to continue. [Bug #12890] - -Sat Nov 5 22:51:06 2016 Tanaka Akira - - * lib/time.rb (make_time): "now" argument as nil works again. - This is broken since Ruby 2.2. - Mathieu Jobin pointed a problem. - https://github.com/ruby/ruby/commit/e4b05d91eb0d48fd172abf015c493bb42d755d07#commitcomment-17421387 - -Sat Nov 5 22:50:13 2016 Akinori MUSHA - - * lib/ipaddr.rb (IPAddr#==): If coercion fails, return false - instead of passing through the exception. [ruby-core:77451] - [Bug #12799] - - * lib/ipaddr.rb (IPAddr#<=>): If coercion fails, return nil - instead of passing through the exception. [ruby-core:77451] - [Bug #12799] - -Sat Nov 5 22:11:33 2016 Kazuki Tsujimoto - - * vm_trace.c (tracepoint_attr_callee_id, rb_tracearg_callee_id): - add TracePoint#callee_id. [ruby-core:77241] [Feature #12747] - - * cont.c, eval.c, gc.c, include/ruby/intern.h, insns.def, thread.c, - vm.c, vm_backtrace.c, vm_core.h, vm_eval.c, vm_insnhelper.c, vm_trace.c: ditto. - - * test/ruby/test_settracefunc.rb: tests for above. - -Sat Nov 5 22:09:48 2016 Kazuki Tsujimoto - - * eval.c, method.h, proc.c, vm.c, vm_eval.c, vm_insnhelper.c, vm_method.c: - TracePoint#method_id should return method_id, not callee_id. - [ruby-core:77241] [Feature #12747] - - * test/ruby/test_settracefunc.rb: change accordingly. - -Sat Nov 5 18:49:37 2016 Nobuyoshi Nakada - - * numeric.c (flo_round, int_round): support round-to-nearest-even - semantics of IEEE 754 to match sprintf behavior, and add `half:` - optional keyword argument for the old behavior. - [ruby-core:76273] [Bug #12548] - -Sat Nov 5 18:17:54 2016 Akinori MUSHA - - * lib/set.rb (Set#compare_by_identity, Set#compare_by_identity?): - New methods. [Feature #12210] - -Sat Nov 5 18:17:08 2016 SHIBATA Hiroshi - - * lib/rdoc/*, test/rdoc/*: Update rdoc-5.0.0 - Release note: https://github.com/rdoc/rdoc/blob/b825775647f62c5b525e9780a28ff2fbb1d5bf6f/History.rdoc#500--2016-11-05 - -Sat Nov 5 17:29:06 2016 Tanaka Akira - - * lib/resolv.rb (Resolv::DNS#extract_resources): Use each_resource - instead of each_answer. - [ruby-core:75461] [Bug #12372] reported by Rafael Fernandez Lopez. - -Sat Nov 5 17:18:24 2016 NARUSE, Yui - - * ext/-test-/file/fs.c (get_atime_p): Updating of file access times - is enabled or not. - -Sat Nov 5 16:28:07 2016 Nobuyoshi Nakada - - * io.c (extract_getline_opts): extract chomp option. - [Feature #12553] - -Sat Nov 5 15:58:24 2016 Sho Hashimoto - - * tool/mkconfig.rb: [DOC] add rbconfig documentation. - -Sat Nov 5 15:42:52 2016 Shugo Maeda - - * lib/net/smtp.rb (tlsconnect): support timeout for TLS handshake. - [ruby-core:76893] [Bug #12678] - - * lib/net/protocol.rb (ssl_socket_connect): new method to implement - timeout for TLS handshake. - - * lib/net/http.rb (connect): use Net::Protocol#ssl_socket_connect. - -Sat Nov 5 14:17:20 2016 Nobuyoshi Nakada - - * parse.y (brace_body, do_body): since cmdarg_stack is saved in - VALUE val, should restore from the same member. on big-endian - platforms where VALUE is larger than int, it restored 0 in the - upper word. [ruby-core:77920] [Bug #12900] - -Sat Nov 5 13:52:52 2016 Akinori MUSHA - - * lib/shellwords.rb (Shellwords#shellsplit): Fix the handling of - the backslash in double quotes to conform to the standard. - [ruby-core:63807] [Bug #10055] - -Sat Nov 5 12:14:31 2016 Tanaka Akira - - * ext/pathname/pathname.c (Pathname#empty?): New method. - [ruby-core:76404] [Feature #12596] Proposed by John Backus. - -Sat Nov 5 11:53:02 2016 Shugo Maeda - - * test/ruby/test_refinement.rb (test_refine_alias_in_subclass): - add a test to check that alias in subclasses can be refined. - [ruby-core:69374] [Bug #11186] - -Sat Nov 5 11:20:57 2016 Shugo Maeda - - * cont.c (cont_new): disable optimization if clang's version is - 3.8.0. [ruby-core:77894] [Bug #12893] - -Sat Nov 5 10:07:18 2016 Nobuyoshi Nakada - - * test/ruby/test_file.rb (TestFile#test_stat): fix noatime case. - [ruby-core:77943] [Bug #12903] - -Fri Nov 4 17:52:44 2016 Koichi Sasada - - * gc.c (heap_page_resurrect): do not return tomb_pages when - page->freelist == NULL. - [Bug #12670] - -Fri Nov 4 16:31:45 2016 Nobuyoshi Nakada - - * util.c (ruby_dtoa): round to even, instead of rounding to - nearest. [ruby-core:77864] [Bug #12889] - -Fri Nov 4 15:31:00 2016 NARUSE, Yui - - * configure.in: Add compiler version message into rbconfig - as RbConfig::CONFIG['CC_VERSION_MESSAGE']. [Feature #12896] - -Fri Nov 4 13:03:00 2016 Kenta Murata - - * numeric.c (rb_int_digits): Fix exception message - [ruby-core:77502] [Bug #12815] - -Fri Nov 4 10:51:16 2016 Nobuyoshi Nakada - - * ext/pathname/pathname.c (path_hash): fix unnormalized Fixnum - value bug on mingw/mswin. - -Fri Nov 4 10:35:47 2016 Nobuyoshi Nakada - - * lib/fileutils.rb (FileUtils::Entry_#copy): ensure that the - source entry exists first, to fix error for non-existent entry. - [ruby-core:77885] [Bug #12892] - -Thu Nov 3 21:45:00 2016 Kenta Murata - - * ext/bigdecimal/bigdecimal.c: Import changes from ruby/bigdecimal - repository. - -Thu Nov 3 15:01:29 2016 Nobuyoshi Nakada - - * file.c: include sys/sysmacros.h for ArchLinux which deprecated - use of major() and minor() in sys/types.h. - -Wed Nov 2 08:45:49 2016 Dmitry Gritsay - - * doc/extension.rdoc: set ANYARGS as arguments for func1 and func2. - - * doc/extension.rdoc: mention the exception object which is passed - to func2 as the second argument. [Fix GH-1471] - -Wed Nov 2 07:34:27 2016 Nobuyoshi Nakada - - * numeric.c (rb_num_coerce_bit): enable bit operations with - coercing by non-integer object. [ruby-core:77783] [Bug #12875] - -Tue Nov 1 01:31:09 2016 Nobuyoshi Nakada - - * configure.in (ac_cv_func_round): round(3) in x86_64-w64-mingw32 - is not accurate in an edge case. [ruby-core:77794] [Bug #12878] - -Mon Oct 31 17:36:04 2016 Code Ahss - - * test/test_forwardable.rb (TestForwardable#test_on_private_method): - add test for [Bug #12782] [Bug #12840] - -Mon Oct 31 11:08:51 2016 Samuel Williams - - * lib/uri/generic.rb (URI::Generic#merge): merge merge0. - [GH-1469] - -Sun Oct 30 15:32:43 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update - rubygems to 2.6.8. - Release note of 2.6.8: https://github.com/rubygems/rubygems/commit/9fb8880976f5ab998912898b091d88aa10eb1d4a - -Sun Oct 30 06:39:37 2016 Martin Duerst - - * enc/windows_1254.c: Fix typo. Reported by k-takata at - https://github.com/k-takata/Onigmo/commit/ceb59cc. Thanks! - -Sat Oct 29 19:59:37 2016 Nobuyoshi Nakada - - * parse.y (cond0): !-operator is a method call, no warning for - literal in condition. [ruby-core:77801] [Bug #12881] - -Sat Oct 29 10:09:38 2016 Nobuyoshi Nakada - - * compile.c (iseq_compile_each): turn flip-flop in a not-operator - into a boolean value. fix up r56315 - -Sat Oct 29 09:39:14 2016 Nobuyoshi Nakada - - * vm_eval.c (vm_call0_body): follow the original class, not to - loop the prepended module. [ruby-core:77784] [Bug #12876] - -Sat Oct 29 00:14:30 2016 Nobuyoshi Nakada - - * enc/trans/windows-1255-tbl.rb: update mapping from 0xCA to - U+05BA. [Feature #12877] - -Fri Oct 28 23:22:32 2016 Nobuyoshi Nakada - - * enc/depend: extract transcode_tblgen method calls for libraries - loaded by dynamically generated names, in single_byte.trans. - -Fri Oct 28 16:05:03 2016 Nobuyoshi Nakada - - * insns.def (opt_case_dispatch): extract float value only if the - Float method is not redefined. - -Fri Oct 28 15:58:16 2016 Nobuyoshi Nakada - - * internal.h (RB_OBJ_BUILTIN_TYPE): special-const safe - BUILTIN_TYPE. - -Fri Oct 28 15:20:18 2016 Nobuyoshi Nakada - - * complex.c (id_finite_p, id_infinite_p, id_rationalize, id_PI): - initialize static IDs. - - * complex.c (FINITE_TYPE_P): extract predicate. - - * complex.c (rb_complex_finite_p, rb_complex_infinite_p): use - dedicated predicates instead of switch by TYPE. - -Thu Oct 27 23:28:12 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_integer_type_p): turn into macro to help - clang based on old gcc to eliminate CSE. - -Thu Oct 27 16:33:47 2016 NAKAMURA Usaku - - * tool/redmine-backporter.rb (rel): check the exception and show right - message. - -Thu Oct 27 14:57:33 2016 Kazuki Yamaguchi - - * ext/socket/lib/socket.rb (UDPSocket#recvfrom_nonblock): [DOC] Remove - a false statement "If _maxlen_ is omitted, its default value is - 65536." maxlen, the first parameter, cannot be omitted as the method - signature indicates. This hasn't changed ever since it was first - implemented. - -Thu Oct 27 09:42:09 2016 Nobuyoshi Nakada - - * object.c (rb_convert_to_integer): convert a fixable float to a - fixnum directly without the conversion method, as well as bignum - case. - - * object.c (rb_convert_to_integer): should not drop the converted - string. - -Wed Oct 26 17:09:59 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_intern): use prefixed version macro - RUBY_CONST_ID_CACHE. - -Wed Oct 26 11:28:25 2016 URABE Shyouhei - - * NEWS: added several entries which (if I remember correctly) are - added in a year. - -Tue Oct 25 12:54:07 2016 Nobuyoshi Nakada - - * proc.c (mnew_internal): follow the original class, not to loop - the prepended module. [ruby-core:77591] [Bug #12832] - -Mon Oct 24 10:52:17 2016 Nobuyoshi Nakada - - * test/lib/test/unit.rb (Test::Unit::Parallel#deal): update the - job status after a task finished, to show idling workers. - -Mon Oct 24 10:51:09 2016 Nobuyoshi Nakada - - * complex.c (Init_Complex): undefine methods inherited from - Comparable, because Complex does not have <=> method. - [Bug #12866] - - * class.c (rb_undef_methods_from): undefine methods defined in - super from klass. - -Mon Oct 24 10:19:44 2016 Nobuyoshi Nakada - - * complex.c (Init_Complex): undefine Complex#clamp, which does not - work like other Comparable methods, because Complex does not - have <=> method. patched by Tim Peters - in [ruby-core:77720]. [Bug #12866] - -Sun Oct 23 11:41:41 2016 Nobuyoshi Nakada - - * include/ruby/encoding.h: include "ruby/ruby.h" explicitly for - enum ruby_fl_type and VALUE. - -Sat Oct 22 23:33:55 2016 Nobuyoshi Nakada - - * parse.y (reg_compile_gen): always append error message to the - error buffer. - -Sat Oct 22 22:33:32 2016 Nobuyoshi Nakada - - * numeric.c (num_funcall1): check recursion by inverse pair, to - fix fake infinite recursion. [ruby-core:77713] [Bug #12864] - -Sat Oct 22 18:52:32 2016 Nobuyoshi Nakada - - * hash.c (rb_hash_compact_bang): should return nil if no elements - is deleted. [ruby-core:77709] [Bug #12863] - -Sat Oct 22 10:28:28 2016 Nobuyoshi Nakada - - * configure.in (DLDFLAGS): fallback to LDFLAGS. - [ruby-core:72444] [Bug #11863] - - * configure.in (LIBRUBY_DLDFLAGS): fallback to DLDFLAGS. - - * configure.in (RUBY_APPEND_OPTION, RUBY_PREPEND_OPTION): expand - the option to be appended/prepended when matching, as well as - RUBY_APPEND_OPTIONS and RUBY_PREPEND_OPTIONS. - -Sat Oct 22 09:52:57 2016 Nobuyoshi Nakada - - * compile.c (setup_args): duplicate splatting array if more - arguments present to obey left-to-right execution order. - [ruby-core:77701] [Bug# 12860] - -Fri Oct 21 16:44:44 2016 Nobuyoshi Nakada - - * dir.c (do_opendir): retry after GC when the limit for open file - descriptors reached. - -Fri Oct 21 16:06:25 2016 Nobuyoshi Nakada - - * ruby.c (open_load_file): retry after GC when the limit for open - file descriptors reached. - -Fri Oct 21 11:34:17 2016 Pascal Schmid - - * string.c (rb_str_sub, rb_str_gsub): [DOC] 'backlash' should read - 'backslash'. [Fix GH-1461] - -Thu Oct 20 17:02:56 2016 SHIBATA Hiroshi - - * lib/uri/common.rb: added documentation for deprecated method. - [Misc #11960][ruby-core:72733][ci skip] - -Thu Oct 20 16:57:23 2016 SHIBATA Hiroshi - - * ext/digest/digest.c: Add documentation for Digest. - [Feature #10452][ruby-core:66001][ci skip] - * remove HMAC from list of digest algorithms, - * add MD5 in list of digest algorithms, - * add information about writing a C digest implementation using Digest::Base, - * add documentation for Digest::Base public methods. - * ext/digest/md5/md5init.c: add examples for MD5. - * ext/digest/rmd160/rmd160init.c: add examples for Digest::RMD160. - * ext/digest/sha1/sha1init.c: add examples for Digest::SHA1. - -Thu Oct 20 16:19:51 2016 SHIBATA Hiroshi - - * lib/open-uri.rb: Improved documentation grammar for - open-uri#open option. [Misc #11329][ruby-core:69868][ci skip] - -Wed Oct 19 21:48:40 2016 Kazuhiro NISHIYAMA - - * NEWS: mention refinements with Kernel#send and - BasicObject#__send__. [Feature #11476] - -Wed Oct 19 17:02:15 2016 Nobuyoshi Nakada - - * vm_insnhelper.c (vm_call_opt_send): enable refinements with - Kernel#send and BasicObject#__send__. [Feature #11476] - -Wed Oct 19 14:22:49 2016 Nobuyoshi Nakada - - * basictest/runner.rb: do not clobber the option by --run-opt with - RUBYOPT. reported by Allen Hewes . - -Wed Oct 19 00:09:06 2016 Nobuyoshi Nakada - - * addr2line.c (parse_debug_line_cu): boundary checks for - compressed debug sections. [ruby-dev:49840] [Bug #12850] - -Tue Oct 18 16:36:40 2016 Nobuyoshi Nakada - - * configure.in (DLDFLAGS): append --compress-debug-sections=zlib - if available, which reduces the size of LIBRUBY_SO by half or - more. - -Mon Oct 17 16:20:37 2016 Nobuyoshi Nakada - - * win32/configure.bat: add option to enable/disable to install - static ruby library. defaulted to "no". [Feature #12845] - - * configure.in (install-static-library): add option to enable/ - disable to install static ruby library. defaulted to "no" if - enable-shared. [Feature #12845] - - * tool/rbinstall.rb (local-arch-lib): respect the option. - -Sun Oct 16 15:09:06 2016 Martin Duerst - - * enc/windows_1254.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for Windows-1254. - -Sat Oct 15 14:17:05 2016 Nobuyoshi Nakada - - * vm_args.c (refine_sym_proc_call): search and call method with - refinements. - - * vm_args.c (vm_caller_setup_arg_block): enable refinements when - enabled in the caller. [Feature #9451] - -Sat Oct 15 00:54:01 2016 Nobuyoshi Nakada - - * process.c (proc_exec_cmd): use UTF-8 version aspawn. - [ruby-dev:49838] [Bug #12841] - -Fri Oct 14 22:26:10 2016 Nobuyoshi Nakada - - * lib/optparse/kwargs.rb (OptionParser#define_by_keywords): - [EXPERIMENTAL] extract command line option definitions from the - information of keyword arguments. - -Fri Oct 14 18:27:18 2016 SHIBATA Hiroshi - - * object.c: Improve documentation for Float conversion. - [ruby-core:71661][Bug #11736][ci skip] - -Fri Oct 14 18:00:20 2016 SHIBATA Hiroshi - - * lib/logger.rb: Improve Logger.new option documentation. - [Feature #12803][ruby-core:77467] - -Fri Oct 14 17:20:24 2016 Nobuyoshi Nakada - - * lib/optparse.rb (make_switch, parse_in_order): unify underscores - to hyphens. - -Fri Oct 14 10:48:37 2016 Eric Wong - - * lib/webrick/utils.rb (TimeoutHandler): use monotonic clock - (watch): ditto - -Thu Oct 13 19:41:32 2016 Nobuyoshi Nakada - - * io.c (copy_stream_body): use IO to write to copy to duplex IO. - http://twitter.com/knu/status/786505317974585344 - -Thu Oct 13 17:05:57 2016 Dwain Faithfull - - * hash.c (rb_hash_compact, rb_hash_compact_bang): Removes nil - values from the original hash, to port Active Support behavior. - [Feature #11818] - -Thu Oct 13 11:35:33 2016 Nobuyoshi Nakada - - * array.c (rb_ary_sort_bang, rb_ary_sort, rb_ary_sort_by_bang): - [DOC] describe that sort may not be stable. - - * enum.c (enum_sort, enum_sort_by): ditto. - -Thu Oct 13 11:31:40 2016 Nobuyoshi Nakada - - * test/rexml/xpath/test_text.rb (test_ancestors): Array#sort may - not be stable. [ruby-core:76088] [Bug #12509] - - * test/rss/test_maker_{0.9,1.0,2.0}.rb (test_items): ditto. - -Thu Oct 13 10:37:31 2016 Eric Wong - - * doc/extension.rdoc: wording fix - -Thu Oct 13 00:39:08 2016 Nobuyoshi Nakada - - * test/ruby/test_array.rb (test_sort_bang_with_freeze): make a - clone to copy a <=> singleton method, instead of dup. which - element will be called is not predictable. - [ruby-core:76088] [Bug #12509] - -Thu Oct 13 00:21:27 2016 Simon Soriano - - * doc/extension.rdoc: Replace "You can defined hooked variables" - with "You can define hooked variables". [Fix GH-1460] - -Wed Oct 12 21:05:50 2016 NAKAMURA Usaku - - * ruby.c (open_load_file): revert r56385. it introduced incompatibility - about `DATA.binmode?`. - -Wed Oct 12 15:24:53 2016 SHIBATA Hiroshi - - * tool/downloader.rb: Removed verification of gem certification. - Because signed gem is not working on rubygems ecosystem. - * tool/gem-unpack.rb: ditto. - -Tue Oct 11 22:08:24 2016 Nobuyoshi Nakada - - * io.c (prep_io): fix typo of struct member name. - [ruby-core:77550] [Bug #12829] - -Tue Oct 11 16:45:24 2016 Tanaka Akira - - * lib/uri/generic.rb (URI.find_proxy): Add an optional argument, env. - -Tue Oct 11 16:38:32 2016 Tanaka Akira - - * lib/pp.rb (String#pretty_print): Defined to print a string as - multiple lines. - [ruby-core:76800] [Feature#12664] proposed by Petr Chalupa. - -Mon Oct 10 15:22:27 2016 Nobuyoshi Nakada - - * ruby.c (open_load_file): bind the open fd to an IO instance - before waiting FIFO, not to leak the fd if interrupted. - -Mon Oct 10 12:40:54 2016 Nobuyoshi Nakada - - * ruby.c (open_load_file): compare with EXEEXT instead of hard - coded name, and do not match with mere EXEEXT. - - * ruby.c (open_load_file): open in binary mode if available, as - parser deals with EOLs. - - * io.c (prep_io): reduce isatty call (and its system call) on - Cygwin. - -Sun Oct 9 23:05:53 2016 Prathamesh Sonpatki - - * array.c, class.c: Fixed documentation where Fixnum was referred - directly to use Integer, as Fixnum and Bignum are now unified - into Integer and direct usage is deprecated. [Fix GH-1459] - -Sun Oct 9 11:37:19 2016 Nobuyoshi Nakada - - * vm_core.h (VM_ASSERT): stringify expr here before expansion in - RUBY_ASSERT_WHEN. - -Sat Oct 8 10:54:22 2016 Nobuyoshi Nakada - - * ext/-test-/memory_status/memory_status.c (read_status): use - Win32 GetProcessMemoryInfo API. - - * ext/-test-/memory_status/memory_status.c: get memory sizes by - mach task_info system call. - -Sat Oct 8 09:06:55 2016 Aurelien Jacobs - - * 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] - -Fri Oct 7 20:21:39 2016 Nobuyoshi Nakada - - * gc.c (gc_prof_setup_new_record): fix the condition to get - rusage. - - * gc.c (gc_profile_dump_major_reason): remove undefined flags. - -Fri Oct 7 19:18:33 2016 Masaki Suketa - - * ext/win32ole/*.c, ext/win32ole/win32ole.h: use RB_INT2FIX instead of - INT2FIX, and so on. - -Fri Oct 7 14:18:40 2016 SHIBATA Hiroshi - - * basictest/test.rb: Adjust spaces in class declarations - with inheritance. [fix GH-1227] Patch by @adrfer - * lib/irb/*: ditto. - * lib/prime.rb: ditto. - * lib/shell/builtin-command.rb: ditto. - * object.c: ditto. - * sample/*.rb: ditto. - * test/-ext-/method/test_arity.rb: ditto. - -Thu Oct 6 17:29:44 2016 Nobuyoshi Nakada - - * load.c (rb_require_safe): SyntaxError created by the parser just - has the message and needs to set up the backtrace. - [ruby-core:77491] [Bug #12811] - - * load.c (rb_load_internal0): load/require is not the main - script. - -Thu Oct 6 13:35:15 2016 Marc-Andre Lafortune - - * enum.c: [DOC] Improve doc [ci-skip] - -Thu Oct 6 11:38:14 2016 Chris Jones - - * ext/readline/extconf.rb: Update error message with correct words. - [fix GH-1453][ci skip] Patch by @magikid - -Thu Oct 6 11:01:49 2016 Tieg Zaharia - - * lib/uri/common.rb (WEB_ENCODINGS_): Update URI::WEB_ENCODINGS_ - hash, and fix documented command to grab it. [Fix GH-1430] - -Thu Oct 6 10:37:13 2016 SHIBATA Hiroshi - - * enum.c: Add reduce/inject alias note. - [fix GH-1400][ci skip] Patch by @getaaron - -Thu Oct 6 10:30:27 2016 Nobuyoshi Nakada - - * thread.c (update_coverage): check coverage values, and ignore - non-fixnum values. - -Thu Oct 6 09:19:21 2016 Nobuyoshi Nakada - - * io.c (fptr_finalize): use dedicated macro RB_INTEGER_TYPE_P. - -Wed Oct 5 18:02:44 2016 SHIBATA Hiroshi - - * lib/net/http/response.rb: Improve document readability. - [fix GH-1411][ci skip] Patch by @stz-seongheon - -Wed Oct 5 15:43:32 2016 Nobuyoshi Nakada - - * node.c (dump_node): flatten statements in NODE_BLOCK. - -Wed Oct 5 14:27:36 2016 Byron Bowerman - - * range.c: Add docs for max/min behavior with exclusive range. - [fix GH-1433][ci skip] Patch by @BM5k - -Wed Oct 5 12:57:21 2016 Richard Schneeman - - * ext/socket/*.c: Add proper require for example to work. - [fix GH-1378][ci skip] Patch by @schneems - -Wed Oct 5 11:47:19 2016 SHIBATA Hiroshi - - * io.c: Fixed equivalent ruby code with core implemention. - [fix GH-1429][ci skip] Patch by @sos4nt - -Wed Oct 5 11:36:21 2016 SHIBATA Hiroshi - - * lib/delegate.rb: Added missing spaces and Removed needless spaces. - [fix GH-1454][ci skip] Patch by @bogdanvlviv - -Wed Oct 5 03:24:55 2016 Marc-Andre Lafortune - - * enum.c: Make Enumerable#chunk with no block return - an Enumerator [#2172] - -Wed Oct 5 01:19:45 2016 NAKAMURA Usaku - - * internal.h (ST2FIX): new macro to convert st_index_t to Fixnum. - a hash value of Object might be Bignum, but it causes many troubles - especially the Object is used as a key of a hash. so I've gave up - to do so. - - * array.c (rb_ary_hash): use above macro. - - * bignum.c (rb_big_hash): ditto. - - * hash.c (rb_obj_hash, rb_hash_hash): ditto. - - * numeric.c (rb_dbl_hash): ditto. - - * proc.c (proc_hash): ditto. - - * re.c (rb_reg_hash, match_hash): ditto. - - * string.c (rb_str_hash_m): ditto. - -Tue Oct 4 12:59:44 2016 Koichi ITO - - * array.c (rb_ary_dig): [DOC] update an example of error message - by Array#dig, because of Integer Unification. [Fix GH-1455] - -Tue Oct 4 09:55:12 2016 Nobuyoshi Nakada - - * ext/bigdecimal/bigdecimal.c (BigDecimal_div2): need more room - for precision to round. [ruby-core:77475] [Bug #12805] - -Tue Oct 4 06:05:46 2016 NARUSE, Yui - - * regcomp.c (onig_print_compiled_byte_code): make the shown address - look relative. - -Tue Oct 4 05:53:11 2016 NARUSE, Yui - - * regexec.c (OPCODE_EXEC_HOOK): op is p-1 because p is already - incremented. - - * regexec.c (OPCODE_EXEC_HOOK): use the exact end address. - - * regexec.c (match_at): don't call OPCODE_EXEC_HOOK in CASE() - when it comes from goto fail. - -Mon Oct 3 21:24:41 2016 Kazuhiro NISHIYAMA - - * NEWS: mention Readline.quoting_detection_proc{,=}. - -Mon Oct 3 21:19:46 2016 Kazuhiro NISHIYAMA - - * lib/logger.rb: [DOC] Fix default value of shift_age. - -Mon Oct 3 17:20:05 2016 George Brocklehurst - - * ext/readline/readline.c (readline_s_set_quoting_detection_proc): - support rl_char_is_quoted_p. [Feature #12659] - - * ext/readline/readline.c (readline_s_get_quoting_detection_proc): - ditto. - -Sun Oct 2 08:22:28 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (RB_INT2FIX, RB_LONG2FIX): prefix RB to - global symbols to get rid of name conflicts with other headers. - -Sun Oct 2 07:51:20 2016 Nobuyoshi Nakada - - * string.c (rb_str_hash_m): hash values may be negative. - -Sun Oct 2 02:04:12 2016 NAKAMURA Usaku - - * string.c (rb_str_hash_m): st_index_t is not guaranteed as the same - size with int, and of course also not guaranteed the value can be - Fixnum. - -Sun Oct 2 02:03:06 2016 NAKAMURA Usaku - - * numeric.c (rb_fix2str): detect unnormalized Fixnum value. - -Sat Oct 1 23:08:47 2016 NAKAMURA Usaku - - * ext/date/date_parse.c (date_zone_to_diff): it's nonsence and really - harm that to use unary minus operator with unsigned value. - get rid of test failures introduced at r56312. - -Sat Oct 1 22:17:49 2016 Nobuyoshi Nakada - - * compile.c (iseq_compile_each): move numeric literal range - optimization from fixup_nodes() in parse.y. - -Sat Oct 1 19:19:34 2016 Nobuyoshi Nakada - - * compile.c (compile_flip_flop): simplify generated code. - - * compile.c (compile_branch_condition): flip-flop can appear only - in conditional expressions. - -Sat Oct 1 02:02:02 2016 NAKAMURA Usaku - - * win32/win32.c (poll_child_status): rb_w32_wait_events_blocking() sets - errno internally, then should not set it here. - -Fri Sep 30 19:06:21 2016 Anton Davydov - - * lib/uri/http.rb: Documentation and code style improvements. - * test/uri/test_http.rb: Added test for coverage. - [fix GH-1427][ruby-core:77255][Misc #12756] - -Fri Sep 30 18:43:20 2016 Jason Yeo - - * doc/syntax/control_expressions.rdoc: Add missing 'as' - [ci skip][fix GH-1448] Patch by @jsyeo - -Thu Sep 29 23:38:04 2016 Kazuhiro NISHIYAMA - - * lib/yaml/store.rb (YAML::Store#dump): use table argument instead - of @table directly. - -Thu Sep 29 22:22:22 2016 Kazuhiro NISHIYAMA - - * lib/yaml/store.rb (YAML::Store#initialize): Fix arguments. - [ruby-dev:49821] [Bug #12800] - - * test/yaml/test_store.rb: Add tests from test/test_pstore.rb. - - * test/yaml/test_store.rb (YAMLStoreTest#test_with_options): Add options test. - - * lib/yaml/store.rb (YAML::Store#dump): Revert to to_yaml. - - * lib/yaml/store.rb (YAML::Store#empty_marshal_data): Use to_yaml with options. - - * lib/yaml/store.rb (YAML::Store#empty_marshal_checksum): Use CHECKSUM_ALGO. - -Thu Sep 29 19:34:23 2016 Pete Higgins - - * thread_sync.c (rb_queue_pop, rb_szqueue_push, rb_szqueue_pop): - Document exception types, ThreadError, raised by Queue and - SizedQueue. [Fix GH-1451] - -Thu Sep 29 19:21:02 2016 Pete Higgins - - * thread_sync.c (Init_thread_sync): Remove confusing doc comments, - which are picked up by rdoc unexpectedly, from Queue and - SizedQueue. [Fix GH-1450] - -Wed Sep 28 23:14:19 2016 Nobuyoshi Nakada - - * lib/pstore.rb (PStore::CHECKSUM_ALGO): find available hashing - algorithm for checksum. MD5 is not available in FIPS mode. - [Feature #6943] - -Wed Sep 28 13:00:25 2016 ksss - - * signal.c (sig_signame): [DOC] Add documentation in the case of - return nil. [Fix GH-1449] - -Wed Sep 28 10:43:27 2016 URABE Shyouhei - - * .travis.yml: delete comments. They were outdated. - -Wed Sep 28 09:57:48 2016 Nobuyoshi Nakada - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update - rubygems to 2.6.7. - Release note of 2.6.7: https://github.com/rubygems/rubygems/commit/60f35bd1d2359fc30301d2d4cd72bc6833e8d12a - -Wed Sep 28 00:21:00 2016 Nobuyoshi Nakada - - * error.c (rb_warning_s_warn): the argument must be an - ASCII-compatible string. [ruby-core:77430] [Bug #12793] - -Tue Sep 27 23:22:31 2016 Nobuyoshi Nakada - - * parse.y (symbol, dsym, parser_set_number_literal): set state to - ENDARG, so that `do` after a literal should be `do_block` and - bound to the outer method. [ruby-core:72482] [Bug #11873] - - * parse.y (parse_ident): revert r56198. - - * parse.y (warn_balanced): the state of symbol and numeric - literals is now EXPR_ENDARG, do not exclude it. - -Tue Sep 27 22:59:42 2016 URABE Shyouhei - - * NEWS: news about Warning.warn. - -Tue Sep 27 18:10:18 2016 Jeremy Evans - - * error.c: This makes all warnings raised call Warning.warn, which - by default does the same thing it does currently - (rb_write_error_str). You can override Warning.warn to change - the behavior. [ruby-core:75016] [Feature #12299] - -Tue Sep 27 17:35:28 2016 Nobuyoshi Nakada - - * iseq.c (iseqw_s_compile_file): deal with syntax error as well as - compile, and should not abort when rescued. - -Tue Sep 27 12:07:17 2016 NARUSE, Yui - - * lib/cgi/cookie.rb (parse): don't allow , as a separator. [Bug #12791] - - * lib/webrick/cookie.rb (parse): ditto. - -Mon Sep 26 21:37:21 2016 Akinori MUSHA - - * man/erb.1, man/irb.1, man/ri.1, man/ruby.1: Remove Ns before - punctuation. - -Mon Sep 26 16:23:49 2016 Kazuki Yamaguchi - - * ext/stringio/stringio.c (strio_seek): Avoid signed integer overflow. - It's not harmful in practice here, but is still undefined behavior. - - * ext/stringio/stringio.c (strio_extend): Check that the new length does - not exceed LONG_MAX. This fixes the invalid write on the overflow. - - * test/stringio/test_stringio.rb (test_write_integer_overflow): Add a - test case for the above fix in strio_extend(). - -Mon Sep 26 15:43:34 2016 Kazuki Yamaguchi - - * 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. - -Mon Sep 26 14:36:12 2016 Naotoshi Seo - - * lib/tempfile.rb: provide default basename parameter for - Tempfile.create. [Feature #11965] Patch by Yuki Kurihara - * test/test_tempfile.rb: ditto. - -Mon Sep 26 14:10:54 2016 Ary Borenszweig - - * string.c (lstrip_offset): add a fast path in the case of single - byte optimizable strings, as well as rstrip_offset. - [ruby-core:77392] [Feature #12788] - -Mon Sep 26 12:00:12 2016 Nobuyoshi Nakada - - * gems/bundled_gems: update to minitest-5.9.1. - -Mon Sep 26 11:50:03 2016 Kazuki Yamaguchi - - * tool/rbinstall.rb (gem): Don't install gemspec if no files will be - installed for the gem. This happens when the extension library is not - compiled. - -Mon Sep 26 11:06:47 2016 Kazuki Yamaguchi - - * string.c (enc_strlen, rb_enc_strlen_cr): Avoid signed integer - overflow. The result type of a pointer subtraction may have the same - size as long. This fixes String#size returning an negative value on - i686-linux environment: - - str = "\x00" * ((1<<31)-2)) - str.slice!(-3, 3) - str.force_encoding("UTF-32BE") - str << 1234 - p str.size - -Sun Sep 25 22:48:06 2016 namusyaka - - * lib/erb.rb (ERB::Compiler::TrimScanner#stag): The :stag accessor - has already been available because it is defined in parent - Scanner class. [Fix GH-1445] - -Sun Sep 25 19:21:26 2016 Kazuki Tsujimoto - - * node.c (dump_array): remove duplicate header of NODE_ARRAY/ - NODE_VALUES. - -Sat Sep 24 22:26:20 2016 Nobuyoshi Nakada - - * ext/extmk.rb (extract_makefile, extmake, configuration): store - extra libraries to be installed. - - * tool/rbinstall.rb (ext-arch): install extra libraries. - - * ext/zlib/extconf.rb: install zlib if built. - -Sat Sep 24 14:24:55 2016 Kazuhiro NISHIYAMA - - * spec/README: update URL. - -Sat Sep 24 11:28:22 2016 Koichi ITO - - * fix typos, "a" before "Integer" to "an". [Fix GH-1438] - -Sat Sep 24 10:19:41 2016 Nobuyoshi Nakada - - * 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] - - * test/misc/test_ruby_mode.rb (EXPR_SAVE): use a numeric prefix - argument of 0, not to make the previous version into a backup - file, instead of backup-inhibited. - - * test/misc/test_ruby_mode.rb (run_emacs): always save the buffer - if modified. - -Fri Sep 23 23:57:40 2016 Shugo Maeda - - * vm_method.c (make_method_entry_refined): fix wrong use of ||. - -Fri Sep 23 21:38:58 2016 Akinori MUSHA - - * tool/mdoc2man.rb (Mdoc2Man#parse_macro): Add support for the - `Lk` macro. - - * tool/mdoc2man.rb (Mdoc2Man#shift_arg): A new function to extract - a possibly quoted argument. - -Fri Sep 23 20:36:05 2016 Shugo Maeda - - * eval.c (rb_mod_refine): refine modules as well. - [ruby-core:76199] [Feature #12534] - -Fri Sep 23 20:19:09 2016 Akinori MUSHA - - * man/ruby.1: Update the paragraphs in "Rich Libraries" which - included a dead link. - -Fri Sep 23 20:05:27 2016 Akinori MUSHA - - * man/ruby.1, man/erb.1, man/irb.1, man/ri.1: Use the `Lk` macro - for hyperlinks, which has been available since mdocml 1.5.1 - (released more than seven years ago). - -Fri Sep 23 15:47:04 2016 Nobuyoshi Nakada - - * lib/forwardable.rb (_delegator_method): allow private methods to - be delegated, with warnings. [ruby-core:77341] [Bug #12782] - -Fri Sep 23 12:15:29 2016 Nobuyoshi Nakada - - * compile.c (iseq_peephole_optimize): enable tail call - optimization inside a conditional block. - -Thu Sep 22 13:00:04 2016 Kazuhiro NISHIYAMA - - * gc.c (gc_start_internal): [DOC] methods without arguments - like r56194. [Bug #12777] - -Wed Sep 21 17:43:53 2016 NARUSE, Yui - - * process.c (InitVM_process): Support CLOCK_MONOTONIC_RAW_APPROX, - CLOCK_UPTIME_RAW, and CLOCK_UPTIME_RAW_APPROX which are introduced - by macOS 10.12. - -Wed Sep 21 13:47:33 2016 Nobuyoshi Nakada - - * parse.y (brace_body, do_body): preserve cmdarg_stack so that - `do` after cmdarg in a block should be `do_block` and bound to - the outer method. [ruby-core:72482] [Bug #11873] - - * parse.y: `do` after cmdarg in parentheses should be `do_block` - and bound to the outer method. [ruby-core:72482] [Bug #11873] - - * parse.y (brace_body, do_body): extract block bodies. - -Tue Sep 20 23:02:50 2016 Nobuyoshi Nakada - - * gc.c (gc_start_internal): [DOC] add ObjectSpace.garbage_collect - and fix GC#garbage_collect. [Bug #12777] - -Tue Sep 20 21:24:01 2016 Kazuhiro NISHIYAMA - - * doc/extension.ja.rdoc: translate r56189 (rb_gc_adjust_memory_usage). - -Tue Sep 20 17:52:28 2016 SHIBATA Hiroshi - - * gems/bundled_gems: Update rake-11.3.0 - -Tue Sep 20 16:52:23 2016 Nobuyoshi Nakada - - * gc.c (rb_gc_adjust_memory_usage): notify memory usage to the GC - engine by extension libraries, to trigger GC. [Feature #12690] - -Mon Sep 19 17:05:22 2016 Nobuyoshi Nakada - - * numeric.c (Init_Numeric), bignum.c (Init_Bignum): deprecate - Fixnum and Bignum. this may be reverted after previews. - [Feature #12739] - -Mon Sep 19 10:36:53 2016 Nobuyoshi Nakada - - * enumerator.c (lazy_init_yielder): directly call stored functions. - [Feature #6183] - - * enumerator.c (lazy_add_method): create lazy enumerator which - uses lazy_init_yielder(). - -Sun Sep 18 22:48:54 2016 Kouhei Sutou - - * lib/rss/rss.rb (RSS::BaseModel): Remove needless codes. - [Bug #12773][ruby-dev:49813] - Reported by Kazuhiro NISHIYAMA. Thanks!!! - -Sun Sep 18 19:23:47 2016 Kazuhiro NISHIYAMA - - * lib/sync.rb: Fix NameError when error. - -Sat Sep 17 22:46:02 2016 Koichi ITO - - * vm_insnhelper.c (vm_throw_start): Remove too much ";" - [fix GH-1432] - -Sat Sep 17 19:19:06 2016 Kazuki Yamaguchi - - * test/openssl/test_ssl.rb (test_ctx_options): Fix test failure on - Ubuntu 16.04. The fix in r56147 was incomplete. This is a cherry-pick - of the commit b039f3e268c2 at ruby/openssl. - -Sat Sep 17 10:49:35 2016 Kazuhiro NISHIYAMA - - * doc/extension.ja.rdoc: translate r56130 (rb_check_arity). - -Sat Sep 17 02:40:52 2016 Aaron Patterson - - * ext/objspace/objspace_dump.c: Fix stream processing support for heap - dumps. Full heap dumps should use JSON lines (http://jsonlines.org) - so that we can process very large heaps without loading the entire - heap dump in to memory at once. - -Fri Sep 16 22:10:31 2016 Naohisa Goto - - * ext/openssl/ossl_ssl.c (ssl_npn_select_cb_common): Fix compile error - with old version of fcc (Fujitsu C Compiler) on Solaris 10. - [Bug #12769] [ruby-dev:49809] - -Fri Sep 16 21:28:25 2016 Naohisa Goto - - * internal.h (MAYBE_UNUSED): The fallback definition is needed. - Fix compile error with some non-GCC compilers such as - Oracle Solaris Studio 12.3 on Solaris 10. - [Bug #12767] [ruby-dev:49807] - - * internal.h (WARN_UNUSED_RESULT): ditto. - -Fri Sep 16 21:19:51 2016 Naohisa Goto - - * hash.c (each_pair_i_fast): Fix compile error with old version of - fcc on Solaris 10. [Bug #12768] [ruby-dev:49808] - -Fri Sep 16 19:46:05 2016 NAKAMURA Usaku - - * win32/Makefile.sub (config.h): fixed compile error with VC introduced - by previous commit. - -Fri Sep 16 14:54:34 2016 URABE Shyouhei - - * internal.h (WARN_UNUSED_RESULT): moved to configure.in, to - actually check its availability rather to check GCC's version. - - * configure.in (WARN_UNUSED_RESULT): moved to here. - - * configure.in (RUBY_FUNC_ATTRIBUTE): change function declaration - to return int rather than void, because it makes no sense for a - warn_unused_result attributed function to return void. - - Funny thing however is that it also makes no sense for noreturn - attributed function to return int. So there is a fundamental - conflict between them. While I tested this, I confirmed both - GCC 6 and Clang 3.8 prefers int over void to correctly detect - necessary attributes under this setup. Maybe subject to change - in future. - - * internal.h (UNINITIALIZED_VAR): renamed to MAYBE_UNUSED, then - moved to configure.in for the same reason we move - WARN_UNUSED_RESULT. - - * configure.in (MAYBE_UNUSED): moved to here. - - * internal.h (__has_attribute): deleted, because it has no use now. - - * string.c (rb_str_enumerate_lines): refactor macro rename. - - * string.c (rb_str_enumerate_bytes): ditto. - - * string.c (rb_str_enumerate_chars): ditto. - - * string.c (rb_str_enumerate_codepoints): ditto. - - * thread.c (do_select): ditto. - - * vm_backtrace.c (rb_debug_inspector_open): ditto. - - * vsnprintf.c (BSD_vfprintf): ditto. - -Fri Sep 16 14:35:55 2016 URABE Shyouhei - - * ChangeLog (add-log-time-format): Not exactly sure when but - recently (25.x maybe), emacs changed its API to take optional - two arguments. We have to follow that. - -Fri Sep 16 06:43:25 2016 Aaron Patterson - - * 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 - -Thu Sep 15 21:40:03 2016 Kazuhiro NISHIYAMA - - * doc/extension.ja.rdoc: Fix file name. - -Thu Sep 15 00:59:30 2016 NARUSE, Yui - - * benchmark/: add vnmakarov's benchmarks around hash [ruby-core:75265] - -Wed Sep 14 07:02:31 2016 NARUSE, Yui - - * hash.c (each_pair_i_fast): use rb_yield_values2 to avoid var args. - -Tue Sep 13 21:32:54 2016 Kazuki Yamaguchi - - * string.c (STR_HEAP_SIZE, RESIZE_CAPA_TERM, str_new0, rb_str_buf_new, - str_shared_replace, rb_str_init, str_make_independent_expand, - rb_str_resize): Avoid overflow by casting the length to size_t. size_t - should be able to represent LONG_MAX+termlen. - - * string.c (rb_str_modify_expand): Check that the new length is in the - range of long before resizing. Also refactor to use RESIZE_CAPA_TERM - macro. - - * string.c (str_buf_cat): Fix so that it does not create a negative - length String. Also fix the condition for 'string sizes too big', the - total length can be up to LONG_MAX. - - * string.c (rb_str_plus): Check the resulting String length does not - exceed LONG_MAX. - - * string.c (rb_str_dump): Fix integer overflow. The dump result will be - longer then the original String. - -Tue Sep 13 21:30:53 2016 Kazuki Yamaguchi - - * gc.c (heap_extend_pages, get_envparam_size, ruby_malloc_size_overflow, - gc_profile_dump_on): Use PRIuSIZE instead of PRIdSIZE as the passed - value is size_t, not ssize_t. - - * iseq.c (get_line_info, rb_iseq_disasm_insn): Ditto. - - * sprintf.c (rb_str_format): Ditto. - - * thread_win32.c (native_thread_create): Ditto. - - * vm.c (get_param): Ditto. - - * ext/objspace/objspace_dump.c (dump_append_string_content, - dump_object): Ditto. - - * ext/socket/raddrinfo.c (host_str, port_str): Ditto. - -Tue Sep 13 21:27:35 2016 Kazuki Yamaguchi - - * string.c (STR_EMBEDDABLE_P): Renamed from STR_EMBEDABLE_P(). And use - it in more places. - -Tue Sep 13 21:23:51 2016 Kazuhiro NISHIYAMA - - * README.md: Drop support for BeOS now that Haiku is stable since - 2.3.0. - - * README.ja.md: ditto. - -Tue Sep 13 21:11:56 2016 Nobuyoshi Nakada - - * string.c (STR_EMBEDABLE_P): extract the predicate macro to tell - if the given length is capable in an embedded string, and fix - possible integer overflow. - -Tue Sep 13 18:37:08 2016 Koichi Sasada - - * test/ruby/test_exception.rb: fix thread issues. - * use Queue instead of a local variable for synchronization. - * join created thread to solve leaking threads warning. - -Tue Sep 13 16:07:26 2016 Kazuki Yamaguchi - - * string.c (rb_str_set_len): The buffer overflow check is wrong. The - space for termlen is allocated outside the capacity returned by - rb_str_capacity(). This fixes r41920 ("string.c: multi-byte - terminator", 2013-07-11). [ruby-core:77257] [Bug #12757] - - * test/-ext-/string/test_set_len.rb (test_capacity_equals_to_new_size): - Test for this change. Applying only the test will trigger [BUG]. - -Tue Sep 13 06:03:34 2016 NARUSE, Yui - - * common.mk (benchmark): fix lib path. - -Tue Sep 13 00:39:47 2016 Aaron Patterson - - * class.c (singleton_class_of): Copy superclass serial number to - singleton class. This improves singleton class IMC hit rates. - [Feature #12364] [ruby-core:75425] - -Mon Sep 12 13:46:23 2016 Anton Davydov - - * lib/uri/mailto.rb: Removed needless `return` and use `.` instead of `::` - with class method. - * test/uri/test_mailto.rb: Added tests for coverage. - [fix GH-1426][Misc #12750][ruby-core:77242] - -Sun Sep 11 21:30:26 2016 Kazuhiro NISHIYAMA - - * NEWS: News about Module.used_modules. - -Sun Sep 11 19:06:49 2016 NAKAMURA Usaku - - * win32/win32.c (rb_w32_write_console): should set written length as the - return value. [Bug #12748] [ruby-dev:49786] - -Fri Sep 9 22:43:29 2016 Kazuhiro NISHIYAMA - - * gems/bundled_gems: sort lines. - -Fri Sep 9 17:59:46 2016 Nobuyoshi Nakada - - * thread.c (rb_threadptr_raise): set cause from the called thread, - but not from the thread to be interrupted. - [ruby-core:77222] [Bug #12741] - -Fri Sep 9 13:50:05 2016 Nobuyoshi Nakada - - * doc/extension.rdoc, doc/extension.ja.rdoc: fix file name. - pointed out by @takkanm in the RubyKaigi talk. - -Fri Sep 9 13:14:53 2016 Martin Duerst - - * News: Announcing update to Unicode version 9.0.0 [ci skip] - -Fri Sep 9 10:10:00 2016 Nobuyoshi Nakada - - * variable.c (rb_const_search): warn with the actual class/module - name which defines the deprecated constant. - - * variable.c (rb_const_search): raise with the actual class/module - name which defines the private constant. - -Thu Sep 8 17:47:18 2016 Kazuki Tsujimoto - - * 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] - -Thu Sep 8 17:40:15 2016 Nobuyoshi Nakada - - * tool/rbinstall.rb (gem): use the bindir of each gemspec instead - of hardcoded 'bin', since rdoc 5.0.0 overrides it. - -Thu Sep 8 16:47:03 2016 Shugo Maeda - - * eval.c (rb_mod_s_used_modules): rename Module.used_refinements to - Module.used_modules. [Feature #7418] [ruby-core:49805] - -Thu Sep 8 14:21:48 2016 SHIBATA Hiroshi - - * ext/psych/psych.gemspec, lib/rdoc/rdoc.gemspec: Use file list instead of - git output. It shows warning message when invoke `make install` - [Bug #12736][ruby-dev:49778] - -Thu Sep 8 13:41:46 2016 Shugo Maeda - - * insns.def (setclassvariable, setconstant): warn when self is a - refinement. [Bug #10103] [ruby-core:64143] - -Thu Sep 8 11:29:00 2016 Kenta Murata - - * hash.c (rb_hash_transform_values, rb_hash_transform_values_bang): - Rename map_v to transform_values. - [Feature #12512] [ruby-core:76095] - - * test/ruby/test_hash.rb: ditto. - -Thu Sep 8 10:08:35 2016 Kazuki Yamaguchi - - * {ext,test}/openssl: Import Ruby/OpenSSL 2.0.0.beta.2. The full commit - history since v2.0.0.beta.1 can be found at: - https://github.com/ruby/openssl/compare/v2.0.0.beta.1...v2.0.0.beta.2 - -Thu Sep 8 07:23:34 2016 SHIBATA Hiroshi - - * lib/rdoc/*, test/rdoc/*: Update rdoc-5.0.0.beta2 - Fixed ri parse defect with left-hand matched classes. - https://github.com/rdoc/rdoc/pull/420 - -Thu Sep 8 01:12:47 2016 Shugo Maeda - - * eval.c (rb_mod_s_used_refinements): new method - Module.used_refinements. based on the patch by Charlie - Somerville. [Feature #7418] [ruby-core:49805] - -Wed Sep 7 17:50:38 2016 Nobuyoshi Nakada - - * include/ruby/util.h (setenv): remove POSIX-noncompliant - definition with 2 arguments. - -Wed Sep 7 17:35:37 2016 Martin Duerst - - * unicode/8.0.0/casefold.h, name2ctype.h, unicode/data/8.0.0: - removing directories/files related to Unicode version 8.0.0 - -Wed Sep 7 17:21:55 2016 Nobuyoshi Nakada - - * lib/timeout.rb (Timeout#timeout): add custom error message - argument. [Feature #11650] - -Wed Sep 7 17:13:05 2016 Martin Duerst - - * common.mk: Updated Unicode version to 9.0.0 [Feature #12513] - - * unicode/9.0.0/casefold.h, name2ctype.h, unicode/data/9.0.0: - new directories/files for Unicode version 9.0.0 - -Wed Sep 7 16:00:45 2016 Tanaka Akira - - * lib/open-uri.rb: Allow http to https redirection. - Note that https to http is still forbidden. - [ruby-core:20485] [Feature #859] by Roman Shterenzon. - -Wed Sep 7 14:56:59 2016 Kazuki Tsujimoto - - * lib/csv.rb (CSV::{Row,Table}#{each,delete_if}): returns an enumerator - if no block is given. [ruby-core:75346] [Feature #12347] - - * test/csv/test_row.rb: add test for above. - - * test/csv/test_table.rb: ditto. - -Wed Sep 7 14:50:01 2016 Kazuki Tsujimoto - - * gems/bundled_gems: update to power_assert 0.3.1. - -Wed Sep 7 12:16:09 2016 SHIBATA Hiroshi - - * ext/psych/*, test/psych/*: Update psych-2.1.1 - This version fixed following pull requests. - https://github.com/tenderlove/psych/pull/284 - https://github.com/tenderlove/psych/pull/276 - -Wed Sep 7 11:51:06 2016 SHIBATA Hiroshi - - * lib/rdoc/*, test/rdoc/*: Update rdoc-5.0.0.beta1 - This version is mostly same as r56072. It contains to remove code - for Ruby 1.8 - -Tue Sep 6 09:23:06 2016 SHIBATA Hiroshi - - * lib/rdoc/rdoc.gemspec: partly reverted for default gem installer. - upstream configuration is not working on ruby core repository. - -Mon Sep 5 19:35:22 2016 SHIBATA Hiroshi - - * lib/rdoc/*, test/rdoc/*: Update rdoc/rdoc master(f191513) - https://github.com/rdoc/rdoc/blob/master/History.rdoc#423--2016-- - https://github.com/rdoc/rdoc/blob/master/History.rdoc#422--2016-02-09 - -Sun Sep 4 00:17:55 2016 Sho Hashimoto - - * proc.c: [DOC] fix Object#define_singleton_method and - main.define_method return value. [ci skip] - -Sat Sep 3 11:28:29 2016 Nobuyoshi Nakada - - * thread_pthread.c (ruby_init_stack): check stack bounds even if - get_main_stack succeeded, on the "co-routine" case. - https://github.com/ruby/ruby/commit/53953ee#commitcomment-18887413 - -Fri Sep 2 16:06:59 2016 Nobuyoshi Nakada - - * internal.h (MEMO_V1_SET, MEMO_V2_SET): fix typos. use the macro - parameter, not the local variable. - -Fri Sep 2 00:55:11 2016 Nobuyoshi Nakada - - * ext/extmk.rb (timestamp_file): move extmk.rb specific tricks - from lib/mkmf.rb. keep RUBYCOMMONDIR prefix not to conflict - with a timestamp file in the toplevel. - -Thu Sep 1 14:24:16 2016 Nobuyoshi Nakada - - * ext/extmk.rb (gems): move dirty hacks for bundled gems from - mkmf.rb. - - * lib/mkmf.rb (create_makefile): yield all configuration strings. - -Wed Aug 31 17:39:19 2016 Nobuyoshi Nakada - - * ext/extmk.rb (create_makefile): make gem.build_complete file - under TARGET_SO_DIR and install it only when the gem build - succeeded. [ruby-core:77057] [Bug #12681] - -Wed Aug 31 15:36:10 2016 Nobuyoshi Nakada - - * ext/extmk.rb: move TARGET_SO_DIR stuffs to mkmf.rb. - - * lib/mkmf.rb (create_makefile): create target shared object files - under $(TARGET_SO_DIR) which is $sodir if it is defined with - $extout. [ruby-core:77058] [Bug #12681] - -Wed Aug 31 01:56:55 2016 Yuichiro Kaneko - - * doc/extension.ja.rdoc: [DOC] Fix a typo. [ci skip] - -Wed Aug 31 00:52:23 2016 Nobuyoshi Nakada - - * ext/extmk.rb: make the gems target directory under the expanded - name. [ruby-core:77102] [Bug #12714] - -Tue Aug 30 15:27:27 2016 Kouhei Yanagita - - * ext/json/lib/json/add/ostruct.rb (OpenStruct.json_create): - Correct documentation, fix the name of values. [Fix GH-1421] - -Tue Aug 30 14:53:34 2016 NAKAMURA Usaku - - * 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. - -Tue Aug 30 03:38:35 2016 NARUSE, Yui - - * 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 Aug 27 10:26:14 2016 Nobuyoshi Nakada - - * array.c (rb_ary_concat_multi): take multiple arguments. based - on the patch by Satoru Horie. [Feature #12333] - - * string.c (rb_str_concat_multi, rb_str_prepend_multi): ditto. - -Thu Aug 25 00:42:31 2016 Nobuyoshi Nakada - - * win32/file.c (append_wstr): remove a codepage argument, and use - INVALID_CODE_PAGE for conversion by econv. - - * win32/file.c (append_wstr): exclude the terminator from the - result length when input len == -1. - -Wed Aug 24 22:41:30 2016 Kouhei Sutou - - * gc.c (gc_reset_malloc_info): Remove too much ";". - -Wed Aug 24 20:07:57 2016 Naohisa Goto - - * include/ruby/defines.h (ALWAYS_INLINE): Add alternative definition. - Fix compile error with compilers that do not have force inline - attribute, including old version of fcc on Solaris 10. - [ruby-dev:49773] [Bug #12701] - -Wed Aug 24 16:56:26 2016 NARUSE, Yui - - * .gdbinit: follow r55766's VM change. - -Wed Aug 24 12:57:56 2016 Nobuyoshi Nakada - - * object.c (rb_mod_initialize, rb_class_initialize): [DOC] these - methods do not invoke module_eval/class_eval, just eval the - given block under the new module/class but sharing the context - with the surrounding scope like those methods. - [ruby-core:77023] [Bug #12696] - -Tue Aug 23 10:34:40 2016 Nobuyoshi Nakada - - * test/psych/test_psych.rb (test_load_file_with_fallback): fix - Tempfile leak. https://github.com/tenderlove/psych/pull/288 - -Tue Aug 23 10:15:01 2016 Nobuyoshi Nakada - - * string.c (rb_fs_setter): check and convert $; value at - assignment. - -Tue Aug 23 02:09:57 2016 Nobuyoshi Nakada - - * string.c (rb_str_split_m): show $; name in error message when it - is a wrong object. - -Mon Aug 22 16:29:52 2016 Nobuyoshi Nakada - - * lib/csv.rb (CSV#shift): store partial quoted strings in an array - and join at last, to improve performance with very long quoted - lines. [ruby-core:76987] [Bug #12691] - -Mon Aug 22 14:35:57 2016 Nobuyoshi Nakada - - * man/irb.1: remove useless -width option. - [ruby-dev:49767] [Bug #12692] - -Mon Aug 22 09:02:56 2016 Nobuyoshi Nakada - - * iseq.c (Init_ISeq): undefine allocator of InstructionSequence, - to get rid of segfaults at method call on uninitialized object. - -Sat Aug 21 05:47:00 2016 Kenta Murata - - * enum.c (enum_sort): prevent wasteful array duplication. - -Sat Aug 20 11:20:32 2016 Nobuyoshi Nakada - - * rubystub.c: generalize win32/stub.c. - -Fri Aug 19 11:39:06 2016 Nobuyoshi Nakada - - * parse.y (primary): allow parenthesised statement as a method - argument. [Feature #12686] - -Fri Aug 19 09:12:45 2016 Nobuyoshi Nakada - - * vm.c (vm_set_main_stack): TOPLEVEL_BINDING must be built. - http://www.viva64.com/en/b/0414/#ID0EQ1CI [ruby-core:76973] - -Fri Aug 19 01:00:53 2016 Yuichiro Kaneko - - * proc.c (mnew_missing): Remove an unused argument. - After r51126 rid is not used. - -Thu Aug 18 09:26:52 2016 SHIBATA Hiroshi - - * gems/bundled_gems: bump to test-unit-3.2.1 - -Thu Aug 18 02:36:26 2016 Nobuyoshi Nakada - - * tool/rbinstall.rb: skip gems which failed to build extensions. - [ruby-dev:49764] [Bug #12683] - -Wed Aug 17 23:35:12 2016 Nobuyoshi Nakada - - * gems/bundled_gems (tk): bump up to 0.1.1. - -Wed Aug 17 23:14:42 2016 Nobuyoshi Nakada - - * ext/extmk.rb: build gem extensions into separate directories - - * tool/rbinstall.rb: install pre-built gem extension files gem - extension directories. [ruby-core:76931] [Bug #12681] - -Tue Aug 16 21:04:30 2016 Nobuyoshi Nakada - - * common.mk (UNICODE_HDR_DIR): separate unicode header files from - unicode data files. [ruby-core:76879] [Bug #12677] - -Tue Aug 16 11:17:51 2016 Koichi ITO - - * lib/net/http/header.rb: Fix typo. [ci skip][fix GH-1407] - * transcode.c: ditto. - -Tue Aug 16 11:02:31 2016 Nobuyoshi Nakada - - * tool/make-snapshot (package): save generated header files from - unicode data. [ruby-core:76879] [Bug #12677] - -Mon Aug 15 20:31:34 2016 Nobuyoshi Nakada - - * node.c (dump_array): show nd_alen field in NODE_ARRAY only in - the first node. it is nd_end in the rest nodes. - -Mon Aug 15 16:41:32 2016 Kazuhiro NISHIYAMA - - * appveyor.yml: Update libressl version to 2.3.7. - -Mon Aug 15 11:46:50 2016 Nobuyoshi Nakada - - * ext/extmk.rb (extmake): extension libraries in gems cannot link - statically. - -Sun Aug 14 22:35:40 2016 Nobuyoshi Nakada - - * id_table.c (hash_table_extend): should not shrink the table than - the previous capacity. [ruby-core:76534] [Bug #12614] - -Sun Aug 14 18:51:24 2016 Nobuyoshi Nakada - - * gems/bundled_gems: add gemified tk 0.1.0. - this needs `extract-gems` to build. - -Sun Aug 14 14:54:14 2016 Kouhei Sutou - - * object.c (InitVM_Object): Update referenced document path. - -Sat Aug 13 23:08:01 2016 Nobuyoshi Nakada - - * numeric.c (num_funcall0, num_funcall1): get rid of infinite - recursion in fallback methods of Numeric. - -Sat Aug 13 11:10:08 2016 Nobuyoshi Nakada - - * parse.y (command_asgn, arg): fix syntax errors with chained - assignment with op assign. [Bug #12669] - -Sat Aug 13 10:52:19 2016 Nobuyoshi Nakada - - * parse.y (stmt, arg): rescue modifier in command op assignment - should be limited to rhs only. [ruby-core:75621] [Bug #12402] - -Sat Aug 13 07:51:40 2016 Masaki Suketa - - * ext/win32ole/win32ole.c (ole_val2variant): fix integer conversion in - cygwin64. - -Fri Aug 12 21:05:19 2016 NARUSE, Yui - - * lib/webrick/config.rb (WEBrick::Config::General): - disable reverse lookup by default. [ruby-core:45514] [Feature #6559] - Socket.do_not_reverse_lookup is true by default but WEBrick - overwrote it. - patch by Eric Hodel [ruby-core:45527] - -Fri Aug 12 12:50:31 2016 Nobuyoshi Nakada - - * error.c (rb_syntax_error_append): fix newline in syntax error - message to the beginning, not after file name and line number. - [Feature #11951] - -Thu Aug 11 16:24:23 2016 Ferdinand Niedermann - - * compar.c (cmp_clamp): Introduce Comparable#clamp. [Feature #10594] - -Thu Aug 11 03:16:59 2016 Marc-Andre Lafortune - - * lib/prime.rb: Optimize prime? - Adapted from patch by Jabari Zakiya [#12665] - - * test/test_prime.rb: Improve test - -Wed Aug 10 22:37:01 2016 Nobuyoshi Nakada - - * parse.y (command_rhs, arg_rhs): introduce new rules to reduce - repeated rules with rescue modifier. - -Wed Aug 10 17:26:43 2016 Nobuyoshi Nakada - - * parse.y (command_asgn): rescue modifier in command assignment - should be limited to rhs only. [ruby-core:75621] [Bug #12402] - -Wed Aug 10 15:35:03 2016 Nobuyoshi Nakada - - * ext/win32/resolv/resolv.c: needs windows.h for iphlpapi.h on - cygwin. [ruby-core:76791] [Bug #12663] - - * ext/win32/resolv/resolv.c (w32error_make_error): use - Win32::Resolv::Error, an alias of Win32::Registry::Error. - -Tue Aug 9 17:50:00 2016 Kenta Murata - - * hash.c (rb_hash_map_v, rb_hash_map_v_bang): implement Hash#map_v and - Hash#map_v! [Feature #12512] [ruby-core:76095] - - * test/ruby/test_hash.rb: add tests for above change. - -Tue Aug 9 16:09:03 2016 NARUSE, Yui - - * vm_insnhelper.c (vm_getivar): use always_inline because - gcc7 doesn't inline this without always_inline. - -Tue Aug 9 15:41:24 2016 NARUSE, Yui - - * ext/tk: Tk is removed from stdlib. [Feature #8539] - https://github.com/ruby/tk is the new upstream. - -Tue Aug 9 00:12:31 2016 Kazuhiro NISHIYAMA - - * doc/maintainers.rdoc: Remove moved file section. - -Mon Aug 8 20:56:46 2016 Masaki Suketa - - * ext/win32ole/sample/excel1.rb, ext/win32ole/sample/excel2.rb, - ext/win32ole/sample/excel3.rb, ext/win32ole/sample/ie.rb, - ext/win32ole/sample/ienavi.rb, ext/win32ole/sample/ienavi2.rb: use - true instead of deprecated TRUE. [ci skip] - -Mon Aug 8 12:51:12 2016 Zarko Todorovski - - * internal.h (RBASIC_CLEAR_CLASS): Reroute ANSI C's strict - aliasing rule. - [ruby-core:74427][Bug #12191][ruby-core:76747][Bug #12657] - -Sun Aug 7 18:08:27 2016 Nobuyoshi Nakada - - * object.c (InitVM_Object): deprecate toplevel constants TRUE, - FALSE, and NIL. [Feature #12574] - -Sun Aug 7 06:48:21 2016 Eric Wong - - * 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] - -Sat Aug 6 09:35:30 2016 Nobuyoshi Nakada - - * id_table.h (rb_id_table_iterator_result): add dummy sentinel - member because C standard prohibits a trailing comma. - -Sat Aug 6 00:39:44 2016 Nobuyoshi Nakada - - * hash.c (env_enc_str_new): make string for an environment - variable name or value. - - * hash.c (env_name_new): make environment value string with the - encoding for its name. - -Fri Aug 5 23:18:35 2016 NAKAMURA Usaku - - * hash.c (env_str_new): taint the string. get rid of a test failure - introduced at r55811. - -Fri Aug 5 17:04:02 2016 Nobuyoshi Nakada - - * hash.c (w32_getenv): call rb_w32_getenv and rb_w32_ugetenv via - this pointer without further comparisons. - -Thu Aug 4 11:54:30 2016 Nobuyoshi Nakada - - * hash.c (env_assoc): the encoding of the value should be the - locale, as well as other methods, [], fetch, values, etc. - -Wed Aug 3 21:31:23 2016 Nobuyoshi Nakada - - * parse.y (reg_fragment_enc_error): compile_error is different - between parser and ripper. [ruby-core:76397] [Bug #12651] - -Wed Aug 3 17:15:06 2016 Nobuyoshi Nakada - - * object.c (rb_obj_clone2): restrict freeze option to true other - than false which only has the effect. [Feature #12300] - -Wed Aug 3 10:47:07 2016 Koichi Sasada - - * vm_core.h: introduce VM_FRAME_RUBYFRAME_P() - and VM_FRAME_CFRAME_P(). - Most of case, RUBY_VM_NORMAL_ISEQ_P() is no - longer needed. - - * vm_core.h: introduce rb_obj_is_iseq(). - - * cont.c, vm.c: VM_FRAME_MAGIC_DUMMY with - VM_FRAME_FLAG_CFRAME. - -Wed Aug 3 09:25:16 2016 Koichi Sasada - - * vm_core.h: rename macros and make them inline functions. - - * rename VM_FRAME_TYPE_FINISH_P() to VM_FRAME_FINISHED_P(). - * rename VM_FRAME_TYPE_BMETHOD_P() to VM_FRAME_BMETHOD_P(). - -Wed Aug 03 09:15:02 2016 Koichi Sasada - - * vm_core.h: introduce VM_FRAME_FLAG_CFRAME to represent cfp->iseq - type. - -Tue Aug 2 21:42:40 2016 Chia-sheng Chen - - * math.c (tanh): make faster by the extract form if three - hyperbolic functions are unavailable. [Feature #12647] - -Tue Aug 2 12:37:00 2016 Nobuyoshi Nakada - - * ext/socket/option.c, ext/socket/rubysocket.h (inet_ntop): share - the fallback definition. [ruby-core:76646] [Bug #12645] - -Tue Aug 2 04:07:29 2016 NAKAMURA Usaku - - * win32/win32.c (set_pioinfo_extra): use more reliable way to search - the position of pioinfo of VC14, and also support debug library of it. - patched by davispuh AT gmail.com - [ruby-core:76644] [Bug #12644] - this fixes also [Bug #12631] - -Mon Aug 1 21:39:52 2016 Nobuyoshi Nakada - - * ext/extmk.rb: [EXPERIMENTAL] build extension libraries in - extracted gems. - -Mon Aug 1 16:07:18 2016 URABE Shyouhei - - * include/ruby/ruby.h (struct RStruct): no longer. - - * internal.h (struct RStruct): moved here. - - * struct.c (rb_struct_ptr): a compensation function for the lack - of RSTRUCT_PTR. But now that we have RSTRUCT_GET/SET, that must - not be used anyway. I mark this deprecated. Dont use it. - -Mon Aug 1 14:50:06 2016 Jeremy Evans - - * object.c (rb_obj_clone2): Allow Object#clone to take freeze: - false keyword argument to not freeze the clone. - [ruby-core:75017][Feature #12300] - - * test/ruby/test_object.rb (TestObject): test for it. - -Mon Aug 1 12:16:19 2016 SHIBATA Hiroshi - - * ext/json/*, test/json/json_parser_test.rb: Update json-2.0.2. - -Sun Jul 31 16:17:23 2016 Nobuyoshi Nakada - - * ext/win32/resolv/resolv.c (get_dns_server_list): [Win32] get DNS - servers only for connected network devices by GetNetworkParams - API. [Bug #12604] - -Sat Jul 30 12:13:26 2016 Martin Duerst - - * string.c (String#downcase), NEWS: Mentioned that case mapping for all - of ISO-8859-1~16 is now supported. [ci skip] - -Sat Jul 30 12:00:01 2016 Martin Duerst - - * enc/iso_8859_2.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-2, by Yushiro Ishii. - -Fri Jul 29 20:57:12 2016 chuanshuo - - * *.c: rename rb_funcall2 to rb_funcallv, except for extensions - which are/will be/may be gems. [Fix GH-1406] - -Fri Jul 29 10:51:34 2016 Koichi Sasada - - * proc.c (env_write): remove unused function. - -Fri Jul 29 10:49:52 2016 Koichi Sasada - - * vm_core.h (VM_LOCAL_P): should return an integer value. - reported at - http://d.hatena.ne.jp/nagachika/20160728/ruby_trunk_changes_55764_55770 - -Fri Jul 29 04:23:08 2016 Koichi Sasada - - * vm_core.h (VM_ENV_LOCAL_P): return truthy (0 or not) value. - - * vm.c (rb_vm_make_proc_lambda): use VM_ENV_ESCAPED_P() macro. - -Fri Jul 29 03:49:04 2016 Koichi Sasada - - * vm.c, internal.h: remove RubyVM::Env class and all of env objects - are imemo objects (imemo_env). - - * NEWS: describe this change. I believe nobody touch these objects - because there are no method defined. - - * vm_core.h: remove the following definitions. - * rb_cEnv decl. - * GetEnvPtr() because Env is no longer T_DATA object. - - * vm_core.h (rb_env_t): fix layout for imemo values. - - * vm_core.h (vm_assert_env): added. - - * vm_core.h (vm_env_new): added. - -Thu Jul 28 19:53:21 2016 Koichi Sasada - - * vm_core.h: revisit the structure of frame, block and env. - [Bug #12628] - - This patch introduce many changes. - - * Introduce concept of "Block Handler (BH)" to represent - passed blocks. - - * move rb_control_frame_t::flag to ep[0] (as a special local - variable). This flags represents not only frame type, but also - env flags such as escaped. - - * rename `rb_block_t` to `struct rb_block`. - - * Make Proc, Binding and RubyVM::Env objects wb-protected. - - Check [Bug #12628] for more details. - -Thu Jul 28 15:05:12 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (ruby_fl_type): use __extension__ to get rid - of pedantic warning against RUBY_FL_USER19. - https://github.com/skylightio/skylight-ruby/issues/64 - - * include/ruby/ruby.h (rb_mul_size_overflow): ditto for use of - int128. - -Wed Jul 27 10:32:59 2016 Martin Duerst - - * enc/windows_1253.c: Remove dead code found by Coverity Scan. - -Tue Jul 26 22:43:36 2016 Nobuyoshi Nakada - - * gc.c (run_finalizer): make saved running finalizer state - volatile to ensure not to be clobbered by longjmp. - -Tue Jul 26 19:26:00 2016 Koichi Sasada - - * vm_insnhelper.c: introduce rb_vm_pop_frame() and use it - instead of setting rb_thread_t::cfp directly. - - * vm_insnhelper.c (vm_pop_frame): return the result of - finish frame or not. - -Tue Jul 26 19:06:39 2016 Koichi Sasada - - * gc.c (rb_raw_obj_info): support to show Proc obj. - -Tue Jul 26 18:55:55 2016 Koichi Sasada - - * gc.c (gc_mark): add `inline' explicitly. - I expected to inline this function implicitly at the loop - (ex: marking T_ARRAY objects) but sometimes it remains as - normal call. - -Tue Jul 26 16:33:16 2016 Martin Duerst - - * enc/windows_1257.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for Windows-1257, by Sho Koike. - -Tue Jul 26 16:19:41 2016 Martin Duerst - - * enc/windows_1250.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for Windows-1250, by Sho Koike. - - * ChangeLog: Fixed order of previous two entries. - -Tue Jul 26 15:54:17 2016 Martin Duerst - - * enc/windows_1253.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for Windows-1253, by Takumi Koyama. - -Tue Jul 26 15:30:37 2016 Martin Duerst - - * enc/windows_1251.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for Windows-1251, by Shunsuke Sato. - -Tue Jul 26 13:04:59 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Add explicit skip test for - availability of Unicode data files. - -Mon Jul 25 21:33:13 2016 Nobuyoshi Nakada - - * range.c (check_step_domain): check step argument domain by <=> - method, instead of < and >. - -Mon Jul 25 21:11:32 2016 Kazuhiro NISHIYAMA - - * doc/maintainers.rdoc: fix filenames. - -Mon Jul 25 16:59:00 2016 Koichi Sasada - - * debug.c (ruby_debug_printf): use rb_raw_obj_info() - instead of rb_inspect() because it is more robust way - to see object internal. - -Sun Jul 24 16:33:13 2016 Martin Duerst - - * regenc.h/c, include/ruby/oniguruma.h, enc/ascii.c, big5.c, cp949.c, - emacs_mule.c, euc_jp.c, euc_kr.c, euc_tw.c, gb18030.c, gbk.c, - iso_8859_1|2|3|4|5|6|7|8|9|10|11|13|14|15|16.c, koi8_r.c, koi8_u.c, - shift_jis.c, unicode.c, us_ascii.c, utf_16|32be|le.c, utf_8.c, - windows_1250|51|52|53|54|57.c, windows_31j.c, unicode.c: - Remove conditional compilation macro ONIG_CASE_MAPPING. [Feature #12386]. - -Sun Jul 24 12:53:42 2016 SHIBATA Hiroshi - - * doc/maintainers.rdoc: xmlrpc is bundled gem from Ruby 2.4. - -Sun Jul 24 12:07:39 2016 SHIBATA Hiroshi - - * doc/maintainers.rdoc: Update OpenSSL maintainer. - -Sat Jul 23 22:43:41 2016 Nobuyoshi Nakada - - * internal.h (Check_Type): inline check for the object type. - -Sat Jul 23 04:06:04 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (RTEST, NIL_P): use RUBY prefixed name in - macros. - -Sat Jul 23 01:41:29 2016 Eric Wong - - * 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] - -Fri Jul 22 19:55:20 2016 Nobuyoshi Nakada - - * vm.c (vm_set_main_stack): remove unnecessary check. toplevel - binding must be initialized. [Bug #12611] (N1) - - * win32/win32.c (w32_symlink): fix return type. [Bug #12611] (N3) - - * string.c (rb_str_split_m): simplify the condition. - [Bug #12611](N4) - -Fri Jul 22 17:13:37 2016 Martin Duerst - - * string.c (String#dump): Change escaping of non-ASCII characters in - UTF-8 to use upper-case four-digit hexadecimal escapes without braces - where possible [Feature #12419]. - - * test/ruby/test_string.rb (test_dump): Add tests for above. - -Fri Jul 22 10:35:35 2016 Kouhei Sutou - - * 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!!! - -Fri Jul 22 10:32:13 2016 Martin Duerst - - * template/unicode_norm_gen.tmpl: Remove - UnicodeNormalize::UNICODE_VERSION at origin [Feature #12546]. - -Fri Jul 22 09:23:51 2016 SHIBATA Hiroshi - - * LEGAL: Added entries for files under the USD license. - [Bug #12598][ruby-core:76428][ci skip] - -Fri Jul 22 09:19:57 2016 SHIBATA Hiroshi - - * LEGAL: Added entry for `lib/rdoc/generator/template/darkfish/css/fonts.css` - [Misc #12550][ruby-core:76255][ci skip] - -Fri Jul 22 06:28:32 2016 Nobuyoshi Nakada - - * gc.c (run_finalizer): push and exec tag just once, instead of - protecting for each finalizer. - - * gc.c (gc_start_internal, rb_gc_start): set finalizing flag - whenever calling deferred finalizers not to recurse. - -Thu Jul 21 22:26:40 2016 SHIBATA Hiroshi - - * missing/strl{cat,cpy}.c: Update latest upstream files. - [Misc #12205][ruby-core:74487] - * LEGAL: Update license for missing/strl{cat,cpy}.c. - -Thu Jul 21 21:53:30 2016 SHIBATA Hiroshi - - * LEGAL: added file list with Public domain license. - [ruby-core:76254][Bug #12549] - -Wed Jul 20 17:44:07 2016 Nobuyoshi Nakada - - * enumerator.c (lazy_uniq): new method Enumerator::Lazy#uniq. - [Feature #11090] - - * enum.c (enum_uniq): new method Enumerable#uniq. - [Feature #11090] - -Wed Jul 20 17:35:23 2016 Nobuyoshi Nakada - - * hash.c (rb_hash_add_new_element): add new element or do nothing - if it is contained already. - - * array.c (ary_add_hash, ary_add_hash_by): use - rb_hash_add_new_element. - -Tue Jul 19 18:21:17 2016 Martin Duerst - - * lib/unicode_normalize/tables.rb: Remove - UnicodeNormalize::UNICODE_VERSION (#12546). - -Tue Jul 19 15:38:59 2016 Nobuyoshi Nakada - - * variable.c (rb_local_constants_i): exclude private constants - when excluding inherited constants too. [Bug #12345] - -Sun Jul 17 23:42:00 2016 Kenta Murata - - * numeric.c (num_finite_p, num_infinite_p): Add Numeric#finite? and - Numeric#infinite? [Feature #12039] [ruby-core:73618] - - * complex.c (rb_complex_finite_p): Add Complex#finite? - - * complex.c (rb_complex_infinite_p): Add Complex#infinite? - - * test/ruby/test_bignum.rb: Add test for Integer#finite? and - Integer#infinite? - - * test/ruby/test_fixnum.rb: ditto. - - * test/ruby/test_rational.rb: Add test for Rational#finite? and - Rational#infinite? - - * test/ruby/test_complex.rb: Add test for Complex#finite? and - Complex#infinite? - -Sun Jul 17 20:59:24 2016 Nobuyoshi Nakada - - * common.mk, enc/depend (casefold.h, name2ctype.h): move to - unicode data directory per version. - -Sat Jul 16 06:26:00 2016 Nobuyoshi Nakada - - * common.mk, enc/Makefile.in: moved timestamp files for - directories under the specific directory, to get rid of match - with files under the source directory. - -Fri Jul 15 22:05:13 2016 Naohisa Goto - - * string.c (str_buf_cat): Fix potential integer overflow of capa. - In addition, termlen is used instead of +1. - -Fri Jul 15 21:30:38 2016 Naohisa Goto - - * string.c (str_buf_cat): Fix capa size for embed string. - Fix bug in r55547. [Bug #12536] - -Fri Jul 15 18:13:15 2016 SHIBATA Hiroshi - - * gems/bundled_gems: update latest gems. - -Fri Jul 15 17:08:57 2016 Nobuyoshi Nakada - - * util.c (ruby_strtod): do not underflow only by preceding zeros, - which may be canceled out by the exponent. - http://twitter.com/kazuho/status/753829998767714305 - -Fri Jul 15 09:53:48 2016 Nobuyoshi Nakada - - * enc/unicode/case-folding.rb, tool/enc-unicode.rb: check if - Unicode versions are consistent with each other. - -Fri Jul 15 08:25:15 2016 Jeremy Evans - - * string.c (STR_BUF_MIN_SIZE): reduce from 128 to 127 - [ruby-core:76371] [Feature #12025] - * string.c (rb_str_buf_new): adjust for above reduction - -Thu Jul 14 17:26:00 2016 Nobuyoshi Nakada - - * Makefile.in (enc/unicode/name2ctype.h): remove stale recipe, - which did not support Unicode age properties. - - * common.mk (enc/unicode/name2ctype.h): update by --header option - of tool/enc-unicode.rb. enc/unicode/name2ctype.kwd file has not - been used. - - * common.mk (enc/unicode/name2ctype.kwd): rule to create from - Unicode data files, used only when the target does not exist. - -Thu Jul 14 13:10:54 2016 Nobuyoshi Nakada - - * ext/json/lib/json/ext: remove stale directory. bundled - extension libraries are placed under the directory for each - architectures, but not mixed with plain text script libraries. - -Thu Jul 14 12:48:47 2016 SHIBATA Hiroshi - - * ext/json/**/*.rb: merge original files from upstream repository. - It only fixes styles of frozen string literal. - -Wed Jul 13 22:23:03 2016 SHIBATA Hiroshi - - * test/json/json_common_interface_test.rb: use assert_raise instead of - assert_raises. - -Wed Jul 13 22:14:23 2016 SHIBATA Hiroshi - - * test/lib/test/unit.rb: added test files with `_test` suffix for json - upstream. - * test/json: merge original test files from json upstream. - -Wed Jul 13 18:09:42 2016 Martin Duerst - - * enc/iso_8859_9.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-9, by Kazuki Iijima. - - * enc/iso_8859_9.c: Exclude dotless i/I with dot from case-insensitive - matching because they are not a case pair. - - * test/ruby/enc/test_iso_8859.rb: Make test coverage for ISO-8859-9 - a bit more complete. - -Wed Jul 13 17:21:24 2016 Martin Duerst - - * enc/windows_1252.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for Windows-1252, by Serina Tai. - - * test/ruby/enc/test_case_comprehensive.rb: Fix order of encodings. - -Wed Jul 13 16:19:14 2016 Martin Duerst - - * enc/iso_8859_7.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-7, by Kosuke Kurihara. - - * test/ruby/enc/test_case_comprehensive.rb: Fix order of encodings. - -Wed Jul 13 16:08:08 2016 Koichi Sasada - - * 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. - -Wed Jul 13 15:59:59 2016 NAKAMURA Usaku - - * math.c (_USE_MATH_DEFINES): it must be set before including internal.h - because internal.h includes ruby.h, ruby.h includes win32.h, and - win32.h includes system's math.h. - this change is to get rid of a compiler warning (redefinition of - a macro) introduced at r55641. - -Wed Jul 13 15:19:03 2016 Martin Duerst - - * enc/iso_8859_1.c, enc/iso_8859_4.c: Avoid setting modification flag if - there is no modification. - -Wed Jul 13 14:40:04 2016 Martin Duerst - - * enc/iso_8859_5.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-5, by Masaru Onodera. - - * test/ruby/enc/test_case_comprehensive.rb: Fix order of encodings. - -Wed Jul 13 14:28:33 2016 NARUSE, Yui - - * math.c (rb_math_sqrt): r55646 must use f_signbit. - -Wed Jul 13 14:22:50 2016 Koichi Sasada - - * iseq.c (Init_ISeq): undef ISeq.translate and ISeq.load_iseq - to prevent calling super classes' methods. - - Without this patch, you can write workaround like: - - class << RubyVM::InstructionSequence - def translate; end - undef translate - end - - * test/ruby/test_iseq.rb: add a test. - -Wed Jul 13 14:16:03 2016 Koichi Sasada - - * vm_method.c (method_entry_get_without_cache): check - undefined method even if ruby_running is FALSE. - - We haven't call "undef"ed methods before ruby_running. - So that this issue does not make troubles. - -Wed Jul 13 14:15:22 2016 Martin Duerst - - * enc/windows_1254.c: Adjust variable/macro names. - -Wed Jul 13 13:19:12 2016 Martin Duerst - - * enc/iso_8859_9.c, enc/windows_1254.c: Split Windows-1254 from - ISO-8859-9 to be able to implement different case conversions. - -Wed Jul 13 13:08:30 2016 Martin Duerst - - * enc/iso_8859_7.c, enc/windows_1253.c: Split Windows-1253 from - ISO-8859-7 to be able to implement different case conversions. - -Wed Jul 13 10:50:12 2016 Martin Duerst - - * enc/iso_8859_13.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-13, by Kanon Shindo. - -Wed Jul 13 10:31:39 2016 Martin Duerst - - * enc/iso_8859_13.c, enc/windows_1257.c: Split Windows-1257 from - ISO-8859-13 to be able to implement different case conversions. - -Wed Jul 13 09:02:30 2016 Martin Duerst - - * enc/iso_8859_3.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-3, by Takuya Miyamoto. - - * test/ruby/enc/test_case_comprehensive.rb: Extend special treatment - for Turkic. - - * enc/iso_8859_3.c: Exclude dotless i/I with dot from case-insensitive - matching because they are not a case pair. - -Wed Jul 13 08:40:21 2016 Martin Duerst - - * test/ruby/enc/test_iso_8859.rb: Exclude dotless i/I with dot from - case-insensitive matching because they are not a case pair. - -Tue Jul 12 23:13:43 2016 Nobuyoshi Nakada - - * math.c (rb_math_sqrt): [EXPERIMENTAL] move Complex sqrt support - from mathn.rb. - -Tue Jul 12 01:25:09 2016 NAKAMURA Usaku - - * configure.in, lib/mkmf.rb, win32/Makefile.sub (CSRCFLAG): make the - compiler option replacable in Makefile. - - * win32/Makefile.sub (OUTFLAG, COUTFLAG): ditto. - - * win32/Makeile.sub, win32/setup.mak (CC): should not append `-nologo` - option forcely. - -Mon Jul 11 18:05:40 2016 Martin Duerst - - * enc/iso_8859_1.c: Moved test for lowercase characters without - uppercase equivalent. - -Mon Jul 11 17:49:25 2016 Martin Duerst - - * enc/iso_8859_4.c, enc/iso_8859_10.c, enc/iso_8859_14.c, - enc/iso_8859_15.c, enc/iso_8859_16.c: Replace case-by-case code with - lookup in ENC_ISO_8859_xx_TO_LOWER_CASE table. - -Mon Jul 11 16:00:56 2016 Nobuyoshi Nakada - - * ext/stringio/stringio.c (strio_each, strio_readlines): convert - arguments just once before reading, instead of conversions for - each lines, as r55603. - -Sun Jul 10 19:53:41 2016 Martin Duerst - - * enc/iso_8859_10.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-10, by Toya Hosokawa. - -Sun Jul 10 19:33:47 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Changed testing logic to - catch unintended modifications of characters that do not have a case - equivalent in the respective encoding. - * enc/iso_8859_1.c, enc/iso_8859_15.c: Fixed unintended modifications of - micro sign and y with diaeresis. - -Sun Jul 10 17:05:36 2016 Martin Duerst - - * enc/iso_8859_4.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-4, by Kotaro Yoshida. - -Sun Jul 10 16:17:47 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Fixed a comment - (message belongs to last commit). [ci skip] - -Sun Jul 10 14:27:25 2016 Nobuyoshi Nakada - - * util.c (ruby_dtoa): [EXPERIMENTAL] adjust the case that the - Float value is close to the exact but unrepresentable middle - value of two values in the given precision, as r55604. - -Sun Jul 10 08:57:20 2016 SHIBATA Hiroshi - - * thread.c: Fixed implicit conversion error with Apple clang-800.0.31 - -Sat Jul 9 12:43:09 2016 Shugo Maeda - - * lib/getoptlong.rb: use false instead of FALSE. - -Fri Jul 8 21:49:28 2016 Naohisa Goto - - * thread.c (rb_wait_for_single_fd): Clean up fds.revents every time - before calling ppoll(2). [Bug #12575] [ruby-dev:49725] - -Fri Jul 8 14:16:48 2016 Shugo Maeda - - * vm_args.c (vm_caller_setup_arg_block): call rb_sym_to_proc() - directly to reduce method dispatch overhead. - -Fri Jul 8 08:43:31 2016 Shugo Maeda - - * io.c (rb_io_s_read): add description of pipes to the documentation - of IO.read. - -Fri Jul 8 03:54:22 2016 NARUSE, Yui - - * 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 Jul 8 00:47:36 2016 NARUSE, Yui - - * vm_eval.c (yield_under): change prototype to get argc/argv. - - * vm_eval.c (specific_eval): change for above. - - * vm_eval.c (rb_obj_instance_exec): avoid object allocation. - - * vm_eval.c (rb_mod_module_exec): ditto. - -Thu Jul 7 20:08:37 2016 Shugo Maeda - - * vm_args.c (vm_caller_setup_arg_block): disable symbol block - argument optimization when tail call optimization is enabled, - in order to avoid SEGV. [ruby-core:76288] [Bug #12565] - -Thu Jul 7 16:37:53 2016 Nobuyoshi Nakada - - * numeric.c (flo_round): [EXPERIMENTAL] adjust the case that the - receiver is close to the exact but unrepresentable middle value - of two values in the given precision. - http://d.hatena.ne.jp/hnw/20160702 - -Thu Jul 7 16:31:07 2016 Nobuyoshi Nakada - - * io.c (rb_io_s_foreach, rb_io_s_readlines): convert arguments - just once before reading, instead of conversions for each lines. - -Wed Jul 6 19:54:17 2016 Martin Duerst - - * enc/iso_8859_14.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-14, by Yutaro Tada. - -Wed Jul 6 19:24:48 2016 Martin Duerst - - * enc/iso_8859_1.c, enc/iso_8859_15.c, enc/iso_8859_16.c: - Align indenting to onigmo convention. - -Wed Jul 6 18:59:13 2016 Martin Duerst - - * enc/iso_8859_15.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-15, by Maho Harada. - -Wed Jul 6 18:34:21 2016 Martin Duerst - - * enc/iso_8859_16.c, test/ruby/enc/test_case_comprehensive.rb: - Implement non-ASCII case conversion for ISO-8859-16, by Satoshi Kayama. - -Wed Jul 6 14:44:56 2016 Nobuyoshi Nakada - - * lib/mkmf.rb (create_makefile): store $headers in LOCAL_HDRS for - depend files. - - * ext/digest/digest_conf.rb (digest_conf): add implementation - specific headers to $header. - - * ext/digest/{md5,rmd160,sha1,sha2}/depend: add LOCAL_HDRS to the - dependencies. - -Wed Jul 6 08:59:35 2016 Shugo Maeda - - * lib/net/http/generic_request.rb (write_header): A Request-Line must - not contain CR or LF. - -Wed Jul 6 07:11:27 2016 Shugo Maeda - - * lib/net/ftp.rb (putline): raise an ArgumentError when - CR or LF is included in a line. - -Tue Jul 5 20:49:30 2016 SHIBATA Hiroshi - - * ext/json/*, test/json/*: Update json-2.0.1. - Changes of 2.0.0: https://github.com/flori/json/blob/f679ebd0c69a94e3e70a897ac9a229f5779c2ee1/CHANGES.md#2015-09-11-200 - Changes of 2.0.1: https://github.com/flori/json/blob/f679ebd0c69a94e3e70a897ac9a229f5779c2ee1/CHANGES.md#2016-07-01-201 - [Feature #12542][ruby-dev:49706][fix GH-1395] - -Tue Jul 5 19:39:49 2016 Naohisa Goto - - * 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. - -Tue Jul 5 11:07:14 2016 NARUSE, Yui - - * 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. - -Mon Jul 4 13:56:34 2016 NARUSE, Yui - - * process.c: define sig_t if not exist. - at least Solaris 10 and 11 doesn't have sig_t. - -Mon Jul 4 13:08:48 2016 NARUSE, Yui - - * random.c (random_ulong_limited): avoid left shift count >= width of - type on 32bit environment. - -Sun Jul 3 18:51:42 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb, test_regex_casefold.rb, - test/test_unicode_normalize.rb: Replace UNICODE_VERSION from - UnicodeNormalize with RbConfig::CONFIG['UNICODE_VERSION'] from - feature 12460. - -Sun Jul 3 06:04:09 2016 Eric Wong - - * process.c (disable_child_handler_fork_child): simplify - [ruby-core:75781] [Misc #12439] - -Sun Jul 3 05:25:46 2016 Eric Wong - - * tool/asm_parse.rb: add description - * tool/change_maker.rb: ditto - * tool/downloader.rb: ditto - * tool/eval.rb: ditto - * tool/expand-config.rb: ditto - * tool/extlibs.rb: ditto - * tool/fake.rb: ditto - * tool/file2lastrev.rb: ditto - * tool/gem-unpack.rb: ditto - * tool/gen_dummy_probes.rb: ditto - * tool/gen_ruby_tapset.rb: ditto - * tool/generic_erb.rb: ditto - * tool/id2token.rb: ditto - * tool/ifchange: ditto - * tool/insns2vm.rb: ditto - * tool/instruction.rb: ditto - * tool/jisx0208.rb: ditto - * tool/merger.rb: ditto - * tool/mkrunnable.rb: ditto - * tool/node_name.rb: ditto - * tool/parse.rb: ditto - * tool/rbinstall.rb: ditto - * tool/rbuninstall.rb: ditto - * tool/rmdirs: ditto - * tool/runruby.rb: ditto - * tool/strip-rdoc.rb: ditto - * tool/vcs.rb: ditto - * tool/vtlh.rb: ditto - * tool/ytab.sed: ditto - * tool/enc-unicode.rb: fix typo - * tool/mk_call_iseq_optimized.rb: ditto - * tool/update-deps: ditto - [ruby-core:76215] [Bug #12539] - by Noah Gibbs - -Sat Jul 2 18:04:24 2016 NARUSE, Yui - - * 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 - -Sat Jul 2 04:26:14 2016 NARUSE, Yui - - * 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] - -Sat Jul 2 03:09:27 2016 Naohisa Goto - - * 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 Jul 2 02:22:22 2016 Naohisa Goto - - * 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] - -Fri Jul 1 20:20:20 2016 Naohisa Goto - - * 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(). - -Fri Jul 1 19:38:57 2016 Naohisa Goto - - * 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] - -Fri Jul 1 18:20:00 2016 NARUSE, Yui - - * .gdbinit (rb_ps_thread): show the detail of cfunc in ruby level - backtrace. - -Fri Jul 1 13:26:39 2016 Naohisa Goto - - * 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]. - -Fri Jul 1 12:11:01 2016 NARUSE, Yui - - * .gdbinit (rb_count_objects): added gdb version of count_objects(). - -Fri Jul 1 04:32:52 2016 NARUSE, Yui - - * .gdbinit (rb_ps_thread): show ruby level backtrace. - Usually you can call `rb_ps` to show ruby level backtraces - for all living threads. - Note that it can call with core file like `gcore ` - and `gdb ruby core.`. - -Thu Jun 30 19:15:13 2016 Naohisa Goto - - * 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. - -Wed Jun 29 22:24:37 2016 SHIBATA Hiroshi - - * ext/psych/lib/psych_jars.rb: removed needless file required to JRuby. - -Wed Jun 29 22:21:38 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c: The "reuse" behavior of d2i_ functions does - not work well with OpenSSL 1.0.0t. So avoid it. - -Wed Jun 29 15:18:28 2016 NARUSE, Yui - - * insns.def (opt_succ): optimize like r55515. (but this argument is - constant) - -Wed Jun 29 12:41:58 2016 Shugo Maeda - - * test/ruby/test_refinement.rb: skip - test_prepend_after_refine_wb_miss on ARM or MIPS. - [ruby-core:76031] [Bug #12491] - -Wed Jun 29 08:45:53 2016 Nobuyoshi Nakada - - * proc.c (passed_block): convert passed block symbol to proc. - based on the patch by Daisuke Sato in [ruby-dev:49695]. - [Bug #12531] - -Wed Jun 29 03:34:41 2016 NARUSE, Yui - - * bignum.c (rb_big2ulong): the old logic seems to try to avoid - calculating `-(long)(num-1)-1` if `num` is not LONG_MIN. (Note that - `-LONG_MIN` may be larger than LONG_MAX) But C compilers can - optimize it into single NEG instruction. - Therefore those two conditions can be single if-body. - - * bignum.c (rb_big2long): ditto. - - * bignum.c (rb_big2ull): ditto. - - * bignum.c (rb_big2ll): ditto. - -Tue Jun 28 22:55:00 2016 Nobuyoshi Nakada - - * lib/pstore.rb (PStore::CHECKSUM_ALGO): extract the algorithm for - checksum, instead of qualified names for each times. - -Tue Jun 28 22:29:36 2016 Nobuyoshi Nakada - - * bootstraptest/runner.rb: do not use safe navigation operator. - this runner may run on older ruby. partially revert r53110 - (GH-1142 patched by @mlarraz). - -Tue Jun 28 22:09:09 2016 Akio Tajima - - * lib/fileutils.rb: rescue Errno:EACCES for chown. - [Bug #12520] - -Tue Jun 28 18:38:09 2016 Naohisa Goto - - * ext/digest/md5/md5ossl.h: Remove excess semicolons. - Suppress warning on Solaris with Oracle Solaris Studio 12. - [ruby-dev:49692] [Bug #12524] - - * ext/digest/md5/md5cc.h: ditto. - * ext/digest/sha1/sha1cc.h: ditto. - * ext/digest/sha1/sha1ossl.h: ditto. - * ext/digest/sha2/sha2cc.h: ditto. - * ext/digest/sha2/sha2ossl.h: ditto. - * ext/openssl/ossl_pkey_rsa.c: ditto. - -Tue Jun 28 15:56:48 2016 Nobuyoshi Nakada - - * test/ruby/enc/test_case_comprehensive.rb: noting to test if - Unicode data files are available. - [ruby-core:76160] [Bug #12433] - - * test/test_unicode_normalize.rb: ditto. - -Tue Jun 28 15:20:18 2016 Nobuyoshi Nakada - - * lib/net/http.rb (Net::HTTP#proxy_uri): cache the case no proxy - is used. - -Tue Jun 28 09:56:29 2016 Stefan Schussler - - * object.c (rb_mod_eqq): [DOC] Fix typo in RDoc. [Fix GH-1393] - -Tue Jun 28 02:41:32 2016 NARUSE, Yui - - * insns.def (opt_plus): use `- 1` instead of `& (~1)` to allow - compilers to use x86 LEA instruction (3 operand). - Even if 3 operand LEA's latency is 3 cycle after SandyBridge, - it reduces code size and can be faster because of super scalar. - - * insns.def (opt_plus): calculate and use rb_int2big. - On positive Fixnum overflow, `recv - 1 + obj` doesn't carry - because recv's msb and obj's msb are 0, and resulted msb is 1. - Therefore simply rshift and cast as signed long works fine. - On negative Fixnum overflow, it will carry because both arguments' - msb are 1, and resulted msb is also 1. - In this case it needs to restore carried sign bit after rshift. - -Mon Jun 27 16:58:32 2016 Nobuyoshi Nakada - - * lib/fileutils.rb (FileUtils#install): accecpt symbolic mode, as - well as chmod. - - * lib/fileutils.rb (FileUtils#install): add owner and group - options. - -Mon Jun 27 08:56:55 2016 Nobuyoshi Nakada - - * 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] - -Sun Jun 26 10:20:25 2016 Nobuyoshi Nakada - - * ext/win32/lib/Win32API.rb (Win32API#initialize): Cygwin - 2.5.2-1 (perhaps) seems to no longer append ".dll" suffix - implicitly. - - * ext/win32/lib/win32/resolv.rb (Win32::Resolv): ditto. Fix the - error reported by yamataka AT u08.itscom.net in - [ruby-list:50339], and pointed out and patched by cerberus AT - m3.kcn.ne.jp in [ruby-list:50341]. - -Sat Jun 25 10:07:52 2016 Kazuki Yamaguchi - - * test/openssl/test_ocsp.rb: Ignore errors caused by bugs that exist in - LibreSSL >= 2.3.1. - -Sat Jun 25 02:33:33 2016 Nobuyoshi Nakada - - * vm_method.c (vm_respond_to): try method_missing if respond_to? - is undefined, as if it is the default definition. - [ruby-core:75377] [Bug #12353] - -Fri Jun 24 17:04:21 2016 SHIBATA Hiroshi - - * ext/psych/*, test/psych/*: Update psych 2.1.0 - This version fixed [Bug #11988][ruby-core:72850] - -Fri Jun 24 13:12:41 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: - Update rubygems 2.6.5 and 2.6.6. - Release note of 2.6.5: https://github.com/rubygems/rubygems/commit/656f5d94dc888d78d0d00f3598a4fa37391aac80 - Release note of 2.6.6: https://github.com/rubygems/rubygems/commit/ccb9c3300c063f5b5656669972d24a10ef8afbf5 - -Fri Jun 24 09:17:15 2016 Nobuyoshi Nakada - - * common.mk (lib/unicode_normalize/tables.rb): should not depend - on Unicode data files unless ALWAYS_UPDATE_UNICODE=yes, to get - rid of downloading Unicode data unnecessary. [ruby-dev:49681] - - * common.mk (enc/unicode/casefold.h): update Unicode files in a - sub-make, not to let the header depend on the files always. - - * enc/unicode/case-folding.rb: if gperf is not usable, assume the - existing file is OK. - -Tue Jun 21 19:44:54 2016 Martin Duerst - - * test/ruby/enc/test_regex_casefold.rb: Add Windows-1251, KOI8-R, and - KOI8-U to encodings; definitely removed EUC-JP. - -Tue Jun 21 19:32:23 2016 Mark St.Godard - - * lib/webrick/httprequest.rb (setup_forwarded_info): Use the first - value in X-Forwarded-Proto, if header contains multiple comma - separated values. Some middlewares may add these values to the - list, not replacing. [Fix GH-1386] - -Tue Jun 21 17:17:42 2016 Martin Duerst - - * test/ruby/test_io.rb: Skip test_readpartial_with_not_empty_buffer, - test_read_buffer_error, test_read_unlocktmp_ensure, - test_readpartial_unlocktmp_ensure, and - test_sysread_unlocktmp_ensure on cygwin, - because these tests repeatedly hang. This makes test_io.rb - complete in finite time on cygwin. - - * ChangeLog: Fix test_in.rb -> test_io.rb (two instances). - -Tue Jun 21 16:38:14 2016 Nobuyoshi Nakada - - * string.c (rb_str_casemap): do not put code with side effects - inside RSTRING_PTR() macro which evaluates the argument multiple - times. - -Tue Jun 21 16:13:45 2016 NARUSE, Yui - - * string.c (rb_str_casemap): fix memory leak. - -Tue Jun 21 16:12:21 2016 NARUSE, Yui - - * string.c (rb_str_casemap): int is too small for string size. - -Tue Jun 21 15:42:22 2016 Martin Duerst - - * test/ruby/test_io.rb: Skip test_read_buffer_error on cygwin, - because this test repeatedly hangs. - -Tue Jun 21 15:35:14 2016 Martin Duerst - - * LEGAL: Added filenames and copyrights for some files in - enc/trans/JIS. - -Tue Jun 21 00:56:47 2016 Nobuyoshi Nakada - - * win32/win32.c (get_special_folder): fix calling convention of - SHGetPathFromIDListEx, which should be WINAPI. pointed out by - @arton at http://twitter.com/arton/status/744884064277016576 - -Tue Jun 21 00:22:02 2016 Nobuyoshi Nakada - - * configure.in, include/ruby/defines.h (RUBY_USE_SETJMPEX): - include setjmpex.h only when using setjmpex() for RUBY_SETJMP. - the header of mingw32 overrides setjmp() by setjmpex(). - -Mon Jun 20 18:39:16 2016 Martin Duerst - - * test/ruby/test_io.rb: Skip test_open_fifo_does_not_block_other_threads - on cygwin. Fifos seem to work okay in cygwin, but this test repeatedly - hangs. - -Mon Jun 20 13:35:06 2016 Shugo Maeda - - * vm.c (invoke_bmethod, invoke_block_from_c_0): revert r52104 - partially to avoid "self has wrong type to call super in this - context" errors. - [ruby-core:72724] [Bug #11954] - -Mon Jun 20 12:53:38 2016 Kazuki Yamaguchi - - * test/rubygems/test_gem_remote_fetcher.rb: OpenSSL::PKey::DH#priv_key= - is not defined when ext/openssl is built with OpenSSL 1.1.0. - https://github.com/rubygems/rubygems/pull/1648 - [ruby-core:75225] [Feature #12324] - -Sun Jun 19 21:25:43 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c: Add OCSP::SingleResponse that represents an - OCSP SingleResponse structure. Also add two new methods #responses - and #find_response to OCSP::BasicResponse. A BasicResponse has one or - more SingleResponse. We have OCSP::BasicResponse#status that returns - them as an array of arrays, each containing the content of a - SingleResponse, but this is not useful. When validating an OCSP - response, we need to look into the each SingleResponse and check their - validity but it is not simple. For example, when validating for a - certificate 'cert', the code would be like: - - # certid_target is an OpenSSL::OCSP::CertificateId for cert - basic = res.basic - result = basic.status.any? do |ary| - ary[0].cmp(certid_target) && - ary[4] <= Time.now && (!ary[5] || Time.now <= ary[5]) - end - - Adding OCSP::SingleResponse at the same time allows exposing - OCSP_check_validity(). With this, the code above can be rewritten as: - - basic = res.basic - single = basic.find_response(certid_target) - result = single.check_validity - - * test/openssl/test_ocsp.rb: Test this. - -Sun Jun 19 18:40:19 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c (ossl_ocspbres_add_status): Allow specifying - the times (thisUpdate, nextUpdate and revocationTime) with Time - objects. Currently they accepts only relative seconds from the current - time. This is inconvenience, especially for revocationTime. When - Integer is passed, they are still treated as relative times. Since the - type check is currently done with rb_Integer(), this is a slightly - incompatible change. Hope no one passes a relative time as String or - Time object... - Also, allow passing nil as nextUpdate. It is optional. - - * ext/openssl/ruby_missing.h: Define RB_INTEGER_TYPE_P() if not defined. - openssl gem will be released before Ruby 2.4.0. - -Sun Jun 19 18:39:38 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c: Implement OCSP::{CertificateId,Request, - BasicResponse,Response}#initialize_copy. - [ruby-core:75504] [Bug #12381] - - * test/openssl/test_ocsp.rb: Test them. - -Sun Jun 19 18:29:50 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkey_dh.c, ext/openssl/ossl_pkey_dsa.c, - ext/openssl/ossl_pkey_ec.c, ext/openssl/ossl_pkey_rsa.c: Implement - initialize_copy method for OpenSSL::PKey::*. - [ruby-core:75504] [Bug #12381] - - * test/openssl/test_pkey_dh.rb, test/openssl/test_pkey_dsa.rb, - test/openssl/test_pkey_ec.rb, test/openssl/test_pkey_rsa.rb: Test they - actually copy the OpenSSL objects, and modifications to cloned object - don't affect the original object. - -Sun Jun 19 16:55:16 2016 Martin Duerst - - * test/ruby/test_dir_m17n.rb: Skip tests with non-UTF-8 encodings - on cygwin. Cygwin can use the Unicode PUA (private use area) to store - bytes from non-UTF-8 filenames (see - https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars), - but we are not supporting this. [Bug #12443] - -Sun Jun 19 15:01:18 2016 Martin Duerst - - * localeinit.c: Fix filesystem encoding for cygwin to UTF-8 (see - https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-unusual) - -Sun Jun 19 14:31:07 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkey.h, ext/openssl/ossl_pkey_dh.c, - ext/openssl/ossl_pkey_dsa.c, ext/openssl/ossl_pkey_rsa.c: A few days - ago, OpenSSL changed {DH,DSA,RSA}_get0_*() to take const BIGNUM **. - https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=fd809cfdbd6e32b6b67b68c59f6d55fbed7a9327 - [ruby-core:75225] [Feature #12324] - -Sun Jun 19 11:19:43 2016 Nobuyoshi Nakada - - * variable.c (rb_path_to_class): consider the string length - instead of a terminator. - - * variable.c (rb_path_to_class): search the constant at once - instead of checking if defined and then getting it. - -Sat Jun 18 14:01:40 2016 SHIBATA Hiroshi - - * test/rubygems/test_gem_installer.rb: Fixed broken test with extension - build. https://github.com/rubygems/rubygems/pull/1645 - -Sat Jun 18 13:59:54 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems - HEAD(2c6d256). It contains to update vendored Molinillo to 0.5.0. - https://github.com/rubygems/rubygems/pull/1638 - -Sat Jun 18 10:13:37 2016 Nobuyoshi Nakada - - * 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] - -Sat Jun 18 08:52:46 2016 Nobuyoshi Nakada - - * ext/stringio/stringio.c (strio_getline): fix pointer index - overflow. reported by Guido Vranken . - -Thu Jun 16 16:35:35 2016 Nobuyoshi Nakada - - * class.c (Init_class_hierarchy): prevent rb_cObject which is the - class tree root, from GC. [ruby-dev:49666] [Bug #12492] - -Thu Jun 16 12:17:52 2016 Nobuyoshi Nakada - - * string.c (tr_trans): adjust buffer size by processed and rest - lengths, instead of doubling repeatedly. - -Thu Jun 16 11:15:25 2016 Nobuyoshi Nakada - - * string.c (tr_trans): consider terminator length and fix heap - overflow. reported by Guido Vranken . - -Thu Jun 16 00:02:32 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c (ossl_ocspreq_verify, ossl_ocspbres_verify): - Use ossl_clear_error() so that they don't print warnings to stderr and - leak errors in the OpenSSL error queue. Also, check the return value - of OCSP_*_verify() correctly. They can return -1 on verification - failure. - -Wed Jun 15 19:52:23 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c (ossl_ocspreq_sign, ossl_ocspbres_sign): Allow - specifying hash algorithm used in signing. They are hard coded to use - SHA-1. - Based on a patch provided by Tim Shirley . - [ruby-core:70915] [Feature #11552] [GH ruby/openssl#28] - - * test/openssl/test_ocsp.rb: Test sign-verify works. - -Wed Jun 15 01:46:16 2016 Nobuyoshi Nakada - - * numeric.c: [DOC] fix rdoc directive, and an example of negative - value. [ruby-core:76025] [Bug #12487] - -Wed Jun 15 01:44:42 2016 Nobuyoshi Nakada - - * tool/mkconfig.rb: provide Unicode Version information as - RbConfig::CONFIG['UNICODE_VERSION']. - [ruby-core:75845] [Feature #12460] - -Wed Jun 15 00:01:18 2016 Kazuhiro NISHIYAMA - - * test/ruby/enc/test_case_comprehensive.rb - (TestComprehensiveCaseFold::read_data): use \A and \z instead of - ^ and $ in regexp. - -Tue Jun 14 23:43:00 2016 Nobuyoshi Nakada - - * include/ruby/backward.h (rb_cFixnum, rb_cBignum): remove the - backward compatibility macros, to fail incompatible extension - libraries early. [Bug #12427] - -Tue Jun 14 22:22:07 2016 Nobuyoshi Nakada - - * strftime.c (rb_strftime_with_timespec): limit the result string - size by the format length, to get rid of unlimited memory use. - -Tue Jun 14 22:11:11 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c (ossl_ocspcid_get_issuer_name_hash, - ossl_ocspcid_get_issuer_key_hash, ossl_ocspcid_get_hash_algorithm): - Add accessor methods OCSP::CertificateId#issuer_name_hash, - #issuer_key_hash, #hash_algorithm. - Based on a patch provided by Paul Kehrer . - [ruby-core:48062] [Feature #7181] - - * test/openssl/test_ocsp.rb: Test these new methods. - -Tue Jun 14 22:07:25 2016 Nobuyoshi Nakada - - * ext/date/date_strftime.c (date_strftime_with_tmx): reject too - large precision to get rid of buffer overflow. - reported by Guido Vranken . - -Tue Jun 14 21:40:42 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ocsp.c (ossl_ocspbres_to_der, ossl_ocspcid_to_der): - Implement #to_der methods for OCSP::BasicResponse and - OCSP::CertificateId. - - (ossl_ocspreq_initialize, ossl_ocspres_initialize): Use GetOCSP*() - instead of raw DATA_PTR(). - - (ossl_ocspbres_initialize, ossl_ocspcid_initialize): Allow - initializing from DER string. - - (Init_ossl_ocsp): Define new #to_der methods. - - * test/openssl/test_ocsp.rb: Test these changes. Also add missing tests - for OCSP::{Response,Request}#to_der. - -Tue Jun 14 21:35:00 2016 Kazuki Yamaguchi - - * ext/openssl/openssl_missing.h (DH_set0_pqg, RSA_set0_key): - DH_set0_pqg() allows 'q' to be NULL. Fix a typo in RSA_set0_key(). - Fixes r55285. [ruby-core:75225] [Feature #12324] - -Mon Jun 14 10:19:00 2016 Kenta Murata - - * NEWS: describe Integer#digits. - -Mon Jun 13 21:09:40 2016 NARUSE, Yui - - * thread.c (debug_deadlock_check): show thread lock dependency and - backtrace [Feature #8214] [ruby-dev:47217] - - * thread.c (thread_status_name): show "sleep_forever" instead of - "sleep" if called from inspect. - -Mon Jun 13 20:50:07 2016 Nobuyoshi Nakada - - * parse.y (reg_named_capture_assign_iter): remove named capture - conflict warnings. it is just annoying rather than useful. - [ruby-core:75416] [Bug #12359] - -Mon Jun 13 20:04:00 2016 Kenta Murata - - * numeric.c (rb_int_digits, rb_fix_digits, rb_int_digits_bigbase): - Add Integer#digits to extract columns in place-value notation - [Feature #12447] [ruby-core:75799] - - * test/ruby/test_integer.rb: Add tests for the above change. - - * test/ruby/test_bignum.rb: ditto. - -Mon Jun 13 20:34:53 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (RUBY_INTEGER_UNIFICATION): macro to tell if - Integer is integrated. [ruby-core:75718][Bug #12427] - - * include/ruby/backward.h, internal.h (rb_cFixnum, rb_cBignum): - fallback to rb_cInteger. - - * bignum.c, numeric.c, ext/json/generator/generator.{c,h}: use the - macro. - -Mon Jun 13 16:58:53 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Add tests for full Unicode - swapcase. - -Sun Jun 12 14:48:00 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Add tests for ASCII-only - swapcase; store calculated values in hashes. - -Sun Jun 12 14:05:45 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_cipher.c (ossl_cipher_get_auth_tag, - ossl_cipher_set_auth_tag): Check if the cipher flags retrieved by - EVP_CIPHER_CTX_flags() includes EVP_CIPH_FLAG_AEAD_CIPHER to see if - the cipher supports AEAD. AES-GCM was the only supported in OpenSSL - 1.0.1. - - (Init_ossl_cipher): Fix doc; OpenSSL::Cipher::AES.new(128, :GCM) can't - work. - - * ext/openssl/openssl_missing.h: Define EVP_CTRL_AEAD_{GET,SET}_TAG if - missing. They are added in OpenSSL 1.1.0, and have the same value as - EVP_CTRL_GCM_{GET,SET}_TAG and EVP_CTRL_CCM_{GET,SET}_TAG. - -Sun Jun 12 13:47:42 2016 Kazuki Yamaguchi - - * test/openssl/test_engine.rb (test_openssl_engine_builtin, - test_openssl_engine_by_id_string): Skip test if 'openssl' engine is - already loaded. And test the number increased by Engine.load{_by_id,}, - not the total count of loaded engines. Previously, we called - OpenSSL::Engine.cleanup every time running a test case, but we no - longer can do it. - [ruby-core:75225] [Feature #12324] - -Sun Jun 12 09:24:34 2016 Nobuyoshi Nakada - - * file.c (append_fspath): normalize directory name to be appended - on OS X. [ruby-core:75957] [Ruby trunk Bug#12483] - https://github.com/rails/rails/issues/25303#issuecomment-224834804 - -Sat Jun 11 23:07:32 2016 NAKAMURA Usaku - - * lib/forwardable.rb (_delegator_method): get rid of a warning which - causes test failures introduced at r55376. - -Sat Jun 11 18:37:58 2016 Marcus Stollsteimer - - * ext/json/lib/*.rb: Removed some comments. Because these are unnecessary - class description. [ci skip][Bug #12255][ruby-core:74835] - -Sat Jun 11 15:19:38 2016 takiy33 - - * lib/net/smtp.rb: [DOC] Remove dead link on documentation for - Japanese of SMTP. [Fix GH-1380] - -Sat Jun 11 15:02:45 2016 Grant Hutchins - - * string.c (rb_str_oct): [DOC] fix typo, hornored -> honored. - [Fix GH-1379] - -Sat Jun 11 14:04:19 2016 Nobuyoshi Nakada - - * ext/objspace/objspace_dump.c: generate valid JSON for dump_all. - -Sat Jun 11 13:52:33 2016 Nobuyoshi Nakada - - * lib/forwardable.rb (_delegator_method): remove __send__ call if - possible, so that more optimizations will be enabled. - -Sat Jun 11 11:24:36 2016 Nobuyoshi Nakada - - * enc/iso_8859.h (SHARP_s): name frequently used codepoint. - -Sat Jun 11 09:58:45 2016 Martin Duerst - - * enc/iso_8859_1.c: Revert to older version of code. - -Sat Jun 11 09:46:17 2016 Martin Duerst - - * enc/iso_8859_1.c: Implement non-ASCII case mapping. - - * test/ruby/enc/test_case_comprehensive.rb: Tests for above. - - * string.c: Add iso-8859-1 to supported encodings. - -Sat Jun 11 09:31:28 2016 Nobuyoshi Nakada - - * lib/forwardable.rb (_delegator_method): leave the backtrace - untouched during accessor. forwardable.rb does not appear in - the backtrace during delegated method because of tail-call - optimization. - -Sat Jun 11 01:38:31 2016 Naohisa Goto - - * include/ruby/defines.h (GCC_VERSION_SINCE): Fix logic error by - adding parentheses. Fix failures of TestMkmf::TestConvertible - with GCC 3.4.3 on Solaris 10. [Bug #12479] [ruby-dev:49660] - -Fri Jun 10 21:54:24 2016 Nobuyoshi Nakada - - * lib/forwardable.rb (Forwardable._delegator_method): extract - method generator and deal with non-module objects. - [ruby-dev:49656] [Bug #12478] - -Fri Jun 10 17:35:11 2016 Martin Duerst - - * string.c: Special-case :ascii option in rb_str_capitalize_bang and - rb_str_swapcase_bang. - -Fri Jun 10 17:12:24 2016 Martin Duerst - - * string.c: Special-case :ascii option in rb_str_upcase_bang (retry). - -Fri Jun 10 14:48:36 2016 Nobuyoshi Nakada - - * hash.c (get_env_cstr): ensure NUL-terminated. - [ruby-dev:49655] [Bug #12475] - - * string.c (rb_str_fill_terminator): return the pointer to the - NUL-terminated content. - -Thu Jun 9 21:42:00 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_asn1.c (asn1integer_to_num): Use - ASN1_ENUMERATED_to_BN() to convert an ASN1_ENUMERATED to a BN. - Starting from OpenSSL 1.1.0, ASN1_INTEGER_to_BN() rejects - non-ASN1_INTEGER objects. The format of INTEGER and ENUMERATED are - almost identical so they behaved in the same way in OpenSSL <= 1.0.2. - [ruby-core:75225] [Feature #12324] - - * test/openssl/test_asn1.rb (test_decode_enumerated): Test that it - works. - -Thu Jun 9 21:10:04 2016 Kazuhiro NISHIYAMA - - * tool/ifchange: fix timestamp error when target without - directory. - -Thu Jun 9 19:46:22 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ssl.c: Add define guards for OPENSSL_NO_EC. - SSL_CTX_set_ecdh_auto() is defined even when ECDH is disabled in - OpenSSL's configuration. This fixes r55214. - - * test/openssl/test_pair.rb (test_ecdh_curves): Skip if the OpenSSL does - not support ECDH. - - * test/openssl/utils.rb (start_server): Ignore error in - SSLContext#ecdh_curves=. - -Thu Jun 9 18:12:42 2016 Nobuyoshi Nakada - - * Makefile.in (un-runnable): fail with proper error message. - [ruby-core:75905] [Bug #12472] - -Thu Jun 9 15:32:17 2016 Nobuyoshi Nakada - - * common.mk (RBCONFIG): use ifchange tool to see if the content is - changed and update the timestamp file. - - * tool/mkconfig.rb: remove ifchange features. - - * tool/ifchange: make target directory if it does not exist with - its parent directories. - - * win32/ifchange.bat: drop support for command.com used on old - systems. - -Thu Jun 9 15:03:35 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check for CRYPTO_malloc() and SSL_new(). - OpenSSL_add_all_digests() and SSL_library_init() are deprecated and - converted to macros in OpenSSL 1.1.0. - [ruby-core:75225] [Feature #12324] - -Wed Jun 8 23:09:51 2016 Kazuhiro NISHIYAMA - - * string.c (rb_str_ascii_casemap): fix compile error. - -Wed Jun 8 22:22:24 2016 Martin Duerst - - * string.c: Revert previous commit (possibility of endless loop). - -Wed Jun 8 21:57:41 2016 Martin Duerst - - * string.c: Special-case :ascii option in rb_str_upcase_bang. - -Wed Jun 8 21:28:36 2016 Martin Duerst - - * string.c: New static function rb_str_ascii_casemap; special-casing - :ascii option in rb_str_upcase_bang and rb_str_downcase_bang. - - * regenc.c: Fix a bug (wrong use of unnecessary slack at end of string). - - * regenc.h -> include/ruby/oniguruma.h: Move declaration of - onigenc_ascii_only_case_map so that it is visible in string.c. - -Wed Jun 8 20:33:44 2016 Naohisa Goto - - * include/ruby/intern.h: Remove excess semicolons in PUREFUNC(). - Fix failure of TestMkmf::TestConvertible on Solaris with - Oracle Solaris Studio 12. [ruby-dev:49651] [Bug #12470] - * internal.h: ditto. - -Wed Jun 8 16:03:09 2016 Shugo Maeda - - * lib/net/smtp.rb (getok, get_response): raise an ArgumentError when - CR or LF is included in a line, because they are not allowed in - RFC5321. Thanks, Jeremy Daer. - -Tue Jun 7 21:27:25 2016 Kazuki Yamaguchi - - * test/rubygems/*_{cert,cert_32}.pem: Regenerate test certificates for - OpenSSL 1.1.0. This is already in upstream. - https://github.com/rubygems/rubygems/commit/9be5c53939440a61c4bba73cfffbeb5cfadf72be - [ruby-core:75225] [Feature #12324] - -Tue Jun 7 21:27:17 2016 Kazuki Yamaguchi - - * test/open-uri/test_ssl.rb: Regenerate test certificates. The test CA - certificate was incorrectly generated. A CA certificate must have the - basic constraints extension with cA bit set to TRUE. OpenSSL <= 1.0.2 - allowed the error when the certificate is in the trusted store but - OpenSSL 1.1.0 no longer does. - [ruby-core:75225] [Feature #12324] - -Tue Jun 7 21:20:38 2016 Kazuki Yamaguchi - - * test/openssl/test_x509name.rb: Don't register OID for 'emailAddress' - and 'serialNumber'. A recent change in OpenSSL made OBJ_create() - reject an already existing OID. They were needed to run tests with - OpenSSL 0.9.6 which is now unsupported. - https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=52832e470f5fe8c222249ae5b539aeb3c74cdb25 - [ruby-core:75225] [Feature #12324] - - * test/openssl/test_ssl_session.rb (test_server_session): Duplicate - SSL::Session before re-adding to the session store. OpenSSL 1.1.0 - starts rejecting SSL_SESSION once removed by SSL_CTX_remove_session(). - https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=7c2d4fee2547650102cd16d23f8125b76112ae75 - - * test/openssl/test_pkey_ec.rb (setup): Remove X25519 from @keys. X25519 - is new in OpenSSL 1.1.0 but this is for key agreement and not for - signing. - - * test/openssl/test_pair.rb, test/openssl/test_ssl.rb, - test/openssl/utils.rb: Set security level to 0 when using aNULL cipher - suites. - - * test/openssl/utils.rb: Use 1024 bits DSA key for client certificates. - - * test/openssl/test_engine.rb: Run each test in separate process. - We can no longer cleanup engines explicitly as ENGINE_cleanup() was - removed. - https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=6d4fb1d59e61aacefa25edc4fe5acfe1ac93f743 - - * ext/openssl/ossl_engine.c (ossl_engine_s_cleanup): Add a note to the - RDoc for Engine.cleanup. - - * ext/openssl/lib/openssl/digest.rb: Don't define constants for DSS, - DSS1 and SHA(-0) when using with OpenSSL 1.1.0. They are removed. - - * test/openssl/test_digest.rb, test/openssl/test_pkey_dsa.rb, - test/openssl/test_pkey_dsa.rb, test/openssl/test_ssl.rb, - test/openssl/test_x509cert.rb, test/openssl/test_x509req.rb: Don't - test unsupported hash functions. - -Tue Jun 7 17:49:52 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive: Change test for encodings - without any non-ASCII case conversions from ASCII-only test - to full test. - -Tue Jun 7 17:18:39 2016 Martin Duerst - - * string.c (rb_str_upcase_bang, rb_str_capitalize_bang, - rb_str_swapcase_bang): Switch to use primitive. - -Tue Jun 7 16:44:16 2016 Martin Duerst - - * string.c (rb_str_downcase_bang): Switch to use primitive except if - conversion can be done ASCII-only. - -Tue Jun 7 16:13:36 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive: Add regression tests for - current ASCII-only case conversion. - -Tue Jun 7 15:28:38 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive: Fix method name - (generate_casefold_tests -> generate_case_mapping_tests). - -Tue Jun 7 15:05:13 2016 Martin Duerst - - * regenc.h/c: Rename onigenc_not_support_case_map to - onigenc_ascii_only_case_map. - - * regenc.h: Add definition of onigenc_single_byte_ascii_only_case_map. - - * enc/iso_8859_X.c, windows_125X.c, ascii.c, us-ascii.c, koi8_x.c: - Replace onigenc_not_support_case_map by - onigenc_single_byte_ascii_only_case_map. - - * enc/big5.c, cp949.c, emacs_mule.c, euc_X.c, gbX.c, shift_jis.c, - windows_31j.c: Replace onigenc_not_support_case_map by - onigenc_ascii_only_case_map. - -Tue Jun 7 14:57:09 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check for SSL_CTX_set_min_proto_version() - macro added in OpenSSL 1.1.0. Version-specific methods, such as - TLSv1_method(), are deprecated in OpenSSL 1.1.0. We need to use - version-flexible methods (TLS_*method() or SSLv23_*method()) and - disable other protocol versions as necessary. - [ruby-core:75225] [Feature #12324] - - * ext/openssl/ossl_ssl.c: Use SSL_CTX_set_{min,max}_proto_version() to - fix the protocol version. - -Tue Jun 7 12:55:34 2016 Martin Duerst - - * regenc.c (onigenc_not_support_case_map): Move to end of file; - (onigenc_single_byte_ascii_only_case_map): Add new function. - -Tue Jun 7 09:26:37 2016 Martin Duerst - - * regenc.c (onigenc_not_support_case_map): Rewrite to work correctly - in ASCII range. - -Mon Jun 6 23:00:00 2016 Kazuhiro NISHIYAMA - - * appveyor.yml: Update libressl version to 2.3.5. - -Mon Jun 6 18:37:57 2016 Nobuyoshi Nakada - - * vm_insnhelper.c (vm_throw_start): check if the iseq is symbol - proc, class definition should not be a symbol proc. - [ruby-core:75856] [Bug #12462] - -Mon Jun 6 18:36:34 2016 Martin Duerst - - * string.c: Added UTF-16BE/LE and UTF-32BE/LE to supported encodings - for Unicode case mapping. - - * test/ruby/enc/test_case_comprehensive.rb: Tests for above - functionality; fixed an encoding issue in assertion error message. - -Mon Jun 6 17:29:35 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Speed up testing for small - encodings by preselecting codepoints. - -Mon Jun 6 17:10:50 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_cipher.c (ossl_cipher_free): Use EVP_CIPHER_CTX_free() - to free EVP_CIPHER_CTX allocated by EVP_CIPHER_CTX_new(). - [ruby-core:75225] [Feature #12324] - -Mon Jun 6 13:37:08 2016 Martin Duerst - - * string.c Change rb_str_casemap to use encoding primitive - case_map instead of directly calling onigenc_unicode_case_map. - -Mon Jun 6 13:16:46 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: - Remove :lithuanian guard for Unicode case mapping. - -Mon Jun 6 10:39:56 2016 Kazuki Yamaguchi - - * ext/openssl/openssl_missing.h: Include ruby/config.h. r55285 added - some inline functions but VC does not recognize 'inline' keyword. - -Mon Jun 6 09:25:34 2016 Nobuyoshi Nakada - - * thread.c (thread_start_func_2): report raised exception if - report_on_exception flag is set. [Feature #6647] - -Mon Jun 6 01:36:24 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check existence of SSL_is_server(). This - function was introduced in OpenSSL 1.0.2. - [ruby-core:75225] [Feature #12324] - - * ext/openssl/openssl_missing.h: Implement SSL_is_server() if missing. - - * ext/openssl/ossl_ssl.c (ssl_info_cb): Use SSL_is_server() to see if - the SSL is server. The state machine in OpenSSL was rewritten and - SSL_get_state() no longer returns SSL_ST_ACCEPT. - - (ossl_ssl_cipher_to_ary, ossl_sslctx_session_get_cb): Add some - `const`s to suppress warning. - -Mon Jun 6 01:18:10 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_asn1.c (decode_bool): Do the same thing as - d2i_ASN1_BOOLEAN() does by ourselves. This function is removed in - OpenSSL 1.1.0. - [ruby-core:75225] [Feature #12324] - -Mon Jun 6 00:34:16 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check existence of accessor functions that - don't exist in OpenSSL 0.9.8. OpenSSL 1.1.0 made most of its - structures opaque and requires use of these accessor functions. - [ruby-core:75225] [Feature #12324] - - * ext/openssl/openssl_missing.[ch]: Implement them if missing. - - * ext/openssl/ossl*.c: Use these accessor functions. - - * test/openssl/test_hmac.rb: Add missing test for HMAC#reset. - -Mon Jun 6 00:00:13 2016 Kazuki Yamaguchi - - * ext/openssl/openssl_missing.[ch]: Implement EVP_PKEY_get0_*() and - {RSA,DSA,EC_KEY,DH}_get0_*() functions. - OpenSSL 1.1.0 makes EVP_PKEY/RSA/DSA/DH opaque. We used to provide - setter methods for each parameter of each PKey type, for example - PKey::RSA#e=, but this is no longer possible because the new API - RSA_set0_key() requires the 'n' at the same time. This commit adds - deprecation warning to them and adds PKey::*#set_* methods as direct - wrapper for those new APIs. For example, 'rsa.e = 3' now needs to be - rewritten as 'rsa.set_key(rsa.n, 3, rsa.d)'. - [ruby-core:75225] [Feature #12324] - - * ext/openssl/ossl_pkey*.[ch]: Use the new accessor functions. Implement - RSA#set_{key,factors,crt_params}, DSA#set_{key,pqg}, DH#set_{key,pqg}. - Emit a warning with rb_warning() when old setter methods are used. - - * test/drb/ut_array_drbssl.rb, test/drb/ut_drb_drbssl.rb, - test/rubygems/test_gem_remote_fetcher.rb: Don't set a priv_key for DH - object that are used in tmp_dh_callback. Generating a new key pair - every time should be fine - actually the private exponent is ignored - in OpenSSL >= 1.0.2f/1.0.1r even if we explicitly set. - https://www.openssl.org/news/secadv/20160128.txt - -Sun Jun 5 22:06:00 2016 Kenta Murata - - * configure.in: Fix the timing to detect the appropriate C++ compiler - in OS X. - -Sun Jun 5 21:42:24 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check absence of CRYPTO_lock() to see if the - OpenSSL has the new threading API. In OpenSSL <= 1.0.2, an application - had to set locking callbacks to use OpenSSL in a multi-threaded - environment. OpenSSL 1.1.0 now finds pthreads or Windows threads so we - don't need to do something special. - [ruby-core:75225] [Feature #12324] - - Also check existence of *_up_ref(). Some structures in OpenSSL have - a reference counter. We used to increment it with CRYPTO_add() which - is a part of the old API. - - * ext/openssl/openssl_missing.h: Implement *_up_ref() if missing. - - * ext/openssl/ossl.c: Don't set locking callbacks if unneeded. - - * ext/openssl/ossl_pkey.c, ext/openssl/ossl_ssl.c, - ext/openssl/ossl_x509cert.c, ext/openssl/ossl_x509crl.c, - ext/openssl/ossl_x509store.c: Use *_up_ref() instead of CRYPTO_add(). - -Sun Jun 5 21:38:13 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check if RAND_pseudo_bytes() is usable. It is - marked as deprecated in OpenSSL 1.1.0. - [ruby-core:75225] [Feature #12324] - - * ext/openssl/ossl_rand.c: Disable Random.pseudo_bytes if - RAND_pseudo_bytes() is unavailable. - - * test/openssl/test_random.rb: Don't test Random.pseudo_bytes if not - defined. - -Sun Jun 5 19:06:40 2016 Martin Duerst - - * NEWS: Add news about Unicode-wide case mapping for - String/Symbol#upcase/downcase/swapcase/capitalize(!). - -Sun Jun 5 15:24:33 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: - Remove :lithuanian guard for Unicode case mapping. - -Sun Jun 5 14:46:34 2016 Martin Duerst - - * string.c: Remove :lithuanian guard for Unicode case mapping. - -Sat Jun 4 10:54:52 2016 Nobuyoshi Nakada - - * missing/crypt.h (struct crypt_data): remove unnecessary member - "initialized". - - * missing/crypt.c (des_setkey_r): nothing to be initialized in - crypt_data. - - * configure.in (struct crypt_data): check for "initialized" in - struct crypt_data, which may be only in glibc, and isn't on AIX - at least. - -Sat Jun 4 10:38:39 2016 Nobuyoshi Nakada - - * win32/win32.c: unify MAX_PATH, _MAX_PATH, and MAXPATHLEN to - PATH_MAX, except for MAX_PATH in get_special_folder for an API - limit. - -Fri Jun 3 21:27:22 2016 Nobuyoshi Nakada - - * ruby.c (process_options): rb_str_conv_enc() never set encoding - of the source string, but returns the string itself if the - conversion failed. then the instance variable does not need to - be set again. - -Fri Jun 3 18:04:37 2016 NAKAMURA Usaku - - * ruby.c (process_options): need to duplicate path before passing it to - rb_str_conv_enc() because the function might call rb_enc_associate() - internally. this fixes test failures on Windows introduced at r55260. - -Fri Jun 3 17:44:25 2016 Reiner Herrmann - - * lib/mkmf.rb (create_makefile): sort lists of source and object - files in generated Makefile, unless given by extconf.rb. - [Fix GH-1367] - -Thu Jun 2 21:18:10 2016 Nobuyoshi Nakada - - * win32/win32.c (get_special_folder): use SHGetPathFromIDListEx if - available instead of old SHGetPathFromIDListW, to check the - buffer size. - -Thu Jun 2 17:05:19 2016 Nobuyoshi Nakada - - * ruby.c (ruby_init_loadpath_safe): remove MAXPATHLEN restriction - for Windows 10. - -Thu Jun 2 16:51:35 2016 Koichi ITO - - * misc/ruby-mode.el (ruby-here-doc-beg-re), - (ruby-here-doc-beg-match, ruby-parse-partial): Support for - `squiggly heredoc' syntax in ruby-mode. [Fix GH-1372] - -Thu Jun 2 10:24:48 2016 Martin Duerst - - * string.c: Raise ArgumentError when invalid string is detected in - case mapping methods. - - * enc/unicode.c: Check for invalid string and signal with negative - length value. - - * test/ruby/enc/test_case_mapping.rb: Add tests for above. - - * test/ruby/test_m17n_comb.rb: Add a message to clarify test failure. - -Wed Jun 1 21:41:05 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Check existence of ASN1_TIME_adj(). The old - ASN1_TIME_set() is not Year 2038 ready on sizeof(time_t) == 4 - environment. This function was added in OpenSSL 1.0.0. - [ruby-core:45552] [Bug #6571] - - * ext/openssl/ossl_asn1.c (ossl_time_split): Added. Split the argument - (Time) into the number of days elapsed since the epoch and the - remainder seconds to conform to ASN1_TIME_adj(). - (obj_to_asn1utime, obj_to_asn1gtime): Use ossl_time_split() and - ASN1_*TIME_adj(). - - * ext/openssl/ossl_asn1.h: Add the function prototype for - ossl_time_split(). - - * ext/openssl/ossl_x509.[ch]: Add ossl_x509_time_adjust(). Similarly to - obj_to_asn1*time(), use X509_time_adj_ex() instead of X509_time_adj(). - - * ext/openssl/ossl_x509cert.c, ext/openssl/ossl_x509crl.c, - ext/openssl/ossl_x509revoked.c: Use ossl_x509_time_adjust(). - -Wed Jun 1 15:58:20 2016 Nobuyoshi Nakada - - * configure.in: revert r55237. replace crypt, not crypt_r, and - check if crypt is broken more. - - * missing/crypt.c: move crypt_r.c - - * string.c (rb_str_crypt): use crypt_r if provided by the system. - -Wed Jun 1 14:07:53 2016 Nobuyoshi Nakada - - * missing/crypt_r.c (a64toi): initialize statically and fix out of - bounds access when salt is not 7bit clean. - -Wed Jun 1 11:34:59 2016 NAKAMURA Usaku - - * win32/Makefile.sub (MISSING): fixed build error introduced at r55237. - -Wed Jun 1 09:48:06 2016 Nobuyoshi Nakada - - * string.c (rb_str_crypt): use reentrant crypt_r. - -Wed Jun 1 09:37:26 2016 NAKAMURA Usaku - - * missing/crypt.c (des_setkey): void function never returns any value. - -Wed Jun 1 09:16:22 2016 Nobuyoshi Nakada - - * crypt.h: separate header file from missing/crypt.c. - - * missing/crypt.c (crypt_r, setkey_r, encrypt_r): add reentrant - versions. - -Wed Jun 1 02:25:38 2016 Nobuyoshi Nakada - - * missing/crypt.c: fix size macros to use configured values - for platforms long is larger than 32bit. - [ruby-core:75792] [Bug #12446] - -Tue May 31 17:28:46 2016 Nobuyoshi Nakada - - * 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. - -Tue May 31 00:30:11 2016 NAKAMURA Usaku - - * ext/socket/raddrinfo.c (host_str, port_str): Use StringValueCStr - instead of (Safe)StringValue, to detect NUL byte in the string. - -Mon May 30 22:02:01 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_asn1.c (time_to_time_t): Use NUM2TIMET() instead of - NUM2LONG(). time_t may be larger than long. - [ruby-core:45552] [Bug #6571] - -Mon May 30 21:15:37 2016 Martin Duerst - - * string.c: Document current behavior for other case mapping methods - on String. [ci skip] - -Mon May 30 20:00:25 2016 Martin Duerst - - * string.c: Document current situation for String#downcase. [ci skip] - -Mon May 30 18:29:28 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): Enable the automatic - curve selection for ECDH by calling SSL_CTX_set_ecdh_auto(). With - this a TLS server automatically selects a curve which both the client - and the server support to use in ECDH. This changes the default - behavior but users can still disable ECDH by excluding 'ECDH' cipher - suites from the cipher list (with SSLContext#ciphers=). This commit - also deprecate #tmp_ecdh_callback=. It was added in Ruby 2.3.0. It - wraps SSL_CTX_set_tmp_ecdh_callback() which will be removed in OpenSSL - 1.1.0. Its callback receives two values 'is_export' and 'keylength' - but both are completely useless for determining a curve to use in - ECDH. The automatic curve selection was introduced to replace this. - - (ossl_sslctx_setup): Deprecate SSLContext#tmp_ecdh_callback=. Emit a - warning if this is in use. - - (ossl_sslctx_set_ecdh_curves): Add SSLContext#ecdh_curves=. Wrap - SSL_CTX_set1_curves_list(). If it is not available, this falls back - to SSL_CTX_set_tmp_ecdh(). - - (Init_ossl_ssl): Define SSLContext#ecdh_curves=. - - * ext/openssl/extconf.rb: Check the existence of EC_curve_nist2nid(), - SSL_CTX_set1_curves_list(), SSL_CTX_set_ecdh_auto() and - SSL_CTX_set_tmp_ecdh_callback(). - - * ext/openssl/openssl_missing.[ch]: Implement EC_curve_nist2nid() if - missing. - - * test/openssl/test_pair.rb (test_ecdh_callback): Use - EnvUtil.suppress_warning to suppress deprecated warning. - - (test_ecdh_curves): Test that SSLContext#ecdh_curves= works. - - * test/openssl/utils.rb (start_server): Use SSLContext#ecdh_curves=. - -Mon May 30 16:28:53 2016 Nobuyoshi Nakada - - * ext/socket/raddrinfo.c (host_str, port_str): use RSTRING_LEN - instead of strlen, since RSTRING_PTR StringValueCStr may not be - NUL-terminated when SHARABLE_MIDDLE_SUBSTRING=1. reported by - @tmtms, http://twitter.com/tmtms/status/736910516229005312 - -Mon May 30 16:20:26 2016 Nobuyoshi Nakada - - * string.c (str_fill_term): return new pointer reallocated by - filling terminator. - -Mon May 30 14:54:58 2016 Nobuyoshi Nakada - - * ext/stringio/stringio.c (enc_subseq): share the return value and - the buffer as possible. - -Mon May 30 14:50:25 2016 Nobuyoshi Nakada - - * string.c (str_substr, rb_str_aref): refactor not to create - unnecessary empty string. - - * string.c (str_byte_substr, str_byte_aref): ditto. - -Mon May 30 00:09:37 2016 NAKAMURA Usaku - - * ext/-test-/auto_ext.rb: fixed a heedless bug introduced at r55198. - this change will make RubyCI green. - -Sun May 29 22:58:19 2016 NARUSE, Yui - - * regexec.c (ONIGENC_IS_MBC_ASCII_WORD): redefine optimized one. - WORD of Ruby's ascii compatible encoding is always [a-zA-Z0-9_]. - -Sun May 29 22:44:19 2016 NARUSE, Yui - - * regexec.c (match_at): make compilers optimize harder. - -Sun May 29 12:08:42 2016 Nobuyoshi Nakada - - * ext/-test-/auto_ext.rb (auto_ext): utility method to create - extension libraries for tests. - -Sat May 28 20:40:57 2016 Nobuyoshi Nakada - - * misc/ruby-additional.el (ruby-insert-heredoc-code-block): insert - here document code block for assert_separately mainly. - -Sat May 28 20:34:19 2016 Martin Duerst - - * test/test_unicode_normalize.rb: Add test to check for availability of - Unicode data file; refactoring; fix an error with tests for destructive - method (unicode_normalize!). - -Sat May 28 19:08:36 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Add error messages to tests - for data file availability; refactoring. - -Sat May 28 14:00:10 2016 Kazuki Yamaguchi - - * ext/openssl/lib/openssl/ssl.rb (SSLSocket): Move the implementation of - SSLSocket#initialize to C. Initialize the SSL (OpenSSL object) in it. - Currently this is delayed until ossl_ssl_setup(), which is called from - SSLSocket#accept or #connect. Say we call SSLSocket#hostname= with an - illegal value. We expect an exception to be raised in #hostname= but - actually we get it in the later SSLSocket#connect. Because the SSL is - not ready at #hostname=, the actual call of SSL_set_tlsext_host_name() - is also delayed. - This also fixes: [ruby-dev:49376] [Bug #11724] - - * ext/openssl/ossl_ssl.c (ossl_ssl_initialize): Added. Almost the same - as the Ruby version but this instantiate the SSL object at the same - time. - - (ossl_ssl_setup): Adjust to the changes. Just set the underlying IO to - the SSL. - - (ssl_started): Added. Make use of SSL_get_fd(). This returns -1 if not - yet set by SSL_set_fd(). - - (ossl_ssl_data_get_struct): Removed. Now GetSSL() checks that the SSL - exists. - - (ossl_ssl_set_session): Don't call ossl_ssl_setup() here as now the - SSL is already instantiated in #initialize. - - (ossl_ssl_shutdown, ossl_start_ssl, ossl_ssl_read_internal, - ossl_ssl_write_internal, ossl_ssl_stop, ossl_ssl_get_cert, - ossl_ssl_get_peer_cert, ossl_ssl_get_peer_cert_chain, - ossl_ssl_get_version, ossl_ssl_get_cipher, ossl_ssl_get_state, - ossl_ssl_pending, ossl_ssl_session_reused, - ossl_ssl_get_verify_result, ossl_ssl_get_client_ca_list, - ossl_ssl_npn_protocol, ossl_ssl_alpn_protocol, ossl_ssl_tmp_key): Use - GetSSL() instead of ossl_ssl_data_get_struct(). Use ssl_started(). - - (Init_ossl_ssl): Add method declarations of SSLSocket#{initialize, - hostname=}. - - * ext/openssl/ossl_ssl.h (GetSSL): Check that the SSL is not NULL. It - should not be NULL because we now set it in #initialize. - - * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize): No need - to check if the SSL is NULL. - -Sat May 28 10:47:40 2016 SHIBATA Hiroshi - - * gems/bundled_gems: Update latest releases, power_assert-0.3.0, - test-unit 3.1.9, minitest 5.9.0, did_you_mean 1.0.1 - -Sat May 28 10:45:40 2016 SHIBATA Hiroshi - - * addr2line.c: drop support for ATARI ST platform. It was - discontinued more than two decades ago. [fix GH-1350] Patch by - @cremno - * include/ruby/ruby.h: ditto. - * io.c: ditto. - -Sat May 28 10:39:47 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Converted exception for - unavailable Unicode data files to failed assertion. - -Sat May 28 10:26:18 2016 SHIBATA Hiroshi - - * lib/cgi/util.rb: added missing quote. - [fix GH-1363][ci skip] Patch by @dwaller - -Fri May 27 17:38:49 2016 Nobuyoshi Nakada - - * variable.c (rb_local_constants_i): exclude hidden constants. - [ruby-core:75575] [Bug #12389] - -Fri May 27 17:09:44 2016 Nobuyoshi Nakada - - * 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] - -Fri May 27 15:07:32 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args): remove nul padding which - caused syntax error if fmt is not a string literal. - - * include/ruby/ruby.h (rb_scan_args_verify): suppress array-bounds - warnings by old clang. - - * include/ruby/ruby.h (rb_scan_args0): make extractor macros - inline functions, which do not validate the format and are - unnecessary to be expanded. - -Fri May 27 01:00:36 2016 NARUSE, Yui - - * symbol.c (is_identchar): use ISDIGIT instead of rb_enc_isalnum. - Though rb_enc_isalnum is encoding aware function, its argument here - is *m, which is a single byte. Therefore ISDIGIT is faster. - - * symbol.c (is_special_global_name): ditto. - - * symbol.c (rb_enc_symname_type): ditto. - -Fri May 27 00:39:40 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args): add nul padding here to - apply to all references. - - * include/ruby/ruby.h (rb_scan_args_verify): move length mismatch - check outside conditional operators. - -Thu May 26 14:21:10 2016 Kazuki Yamaguchi - - * 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. - -Thu May 26 14:13:52 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args_count): verify length with - counting variables together. - -Thu May 26 09:45:41 2016 Martin Duerst - - * test/ruby/enc/test_case_comprehensive.rb: Add set of comprehensive - (across most Unicode characters; later across most character encodings) - tests for case mapping. - -Thu May 26 05:00:13 2016 Benoit Daloze - - * class.c (rb_define_class): Fix documentation. - -Wed May 25 20:50:12 2016 NARUSE, Yui - - * re.c (unescape_nonascii): scan hex up to only 3 characters. - [Bug #12420] [Bug #12423] - -Wed May 25 19:07:19 2016 Martin Duerst - - * enc/unicode.c: Handle DOTLESS_i by hand because it isn't involved in folding. - -Wed May 25 18:30:53 2016 NARUSE, Yui - - * regparse.c (fetch_token_in_cc): raise error if given octal escaped - character is too big. [Bug #12420] [Bug #12423] - -Wed May 25 17:45:15 2016 Kazuki Yamaguchi - - * ext/openssl, test/openssl: Drop OpenSSL < 0.9.8 support. - -Wed May 25 17:43:30 2016 Kazuki Yamaguchi - - * ext/openssl/openssl_missing.h, ext/openssl/ossl.h: Remove - unnecessary 'extern "C"' blocks. We don't use C++ and these headers - are local to ext/openssl, so there is no need to enclose with it. - -Wed May 25 17:42:58 2016 Kazuki Yamaguchi - - * ext/openssl/extconf.rb: Remove check of OPENSSL_FIPS macro. This is - unneeded because we can check the macro directly in source code, - just as we already do for OPENSSL_NO_* macros. - - * ext/openssl/ossl.c: Replace occurrences of HAVE_OPENSSL_FIPS with - OPENSSL_FIPS. - -Wed May 25 17:13:35 2016 Nobuyoshi Nakada - - * class.c (rb_scan_args): merge code for n_trail. - -Wed May 25 17:11:34 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args_validate): move failed - condition to the terminal. [ruby-core:75714] [Bug #12426] - -Wed May 25 13:13:37 2016 NARUSE, Yui - - * regcomp.c: remove condition for debug output because prelude - doesn't use regexp now. - -Wed May 25 13:10:30 2016 NARUSE, Yui - - * regcomp.c (compile_length_tree): return error code immediately - if compile_length_tree raised error [Bug #12418] - -Wed May 25 08:01:39 2016 Martin Duerst - - * enc/unicode.c: Fix flag error for switch from titlecase to lowercase. - - * test/ruby/enc/test_case_mapping.rb: Tests for above error. - -Wed May 25 01:13:55 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkey_ec.c (ec_key_new_from_group): Create a new - EC_KEY on given EC group. Extracted from ossl_ec_key_initialize(). - (ossl_ec_key_s_generate): Added. Create a new EC instance and - generate a random private and public key. - (ossl_ec_key_initialize): Use ec_key_new_from_group(). - (Init_ossl_ec): Define the new method EC.generate. This change is - for consistency with other PKey types. [ruby-core:45541] [Bug #6567] - - * test/openssl/test_pkey_ec.rb: Test that EC.generate works. - -Wed May 25 00:37:16 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_generate_key): Fix up RDoc. - (Init_ossl_ec): Rename EC#generate_key to EC#generate_key!. Make the - old name an alias of #generate_key!. This change is for consistency - with other PKey types. [ruby-core:45541] [Bug #6567] - - * test/openssl/test_pkey_ec.rb: Use EC#generate_key! instead of - EC#generate_key. - -Wed May 25 00:23:05 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args_set): check the arity after - adjusting argc for an option hash, for optimization in simpler - cases. - -Wed May 25 00:21:52 2016 Nobuyoshi Nakada - - * configure.in (XCFLAGS): merge flags only for ruby itself from - ruby_cflags. - -Tue May 24 22:04:15 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_cipher.c (ossl_cipher_set_key, ossl_cipher_set_iv): - Reject too long values as well as too short ones. Currently they - just truncate the input but this would hide bugs and lead to - unexpected encryption/decryption results. - - * test/openssl/test_cipher.rb: Test that Cipher#key= and #iv= reject - Strings with invalid length. - -Tue May 24 21:32:21 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): Use - ASN1_OCTET_STRING_set() instead of M_ASN1_OCTET_STRING_set(). Macros - prefixed by "M_" are discouraged to be used from outside OpenSSL - library[1]. - (ossl_x509ext_get_value): Likewise, use ASN1_STRING_print() instead - of M_ASN1_OCTET_STRING_print(). - [1] https://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=CHANGES;h=bf61913d7b01212b4d8b2f3c13d71d645914f67c;hb=b6079a7835f61daa9fb2cbf9addfa86049523933#l878 - - * ext/openssl/ossl.h: Include openssl/asn1.h instead of - openssl/asn1_mac.h. It just includes openssl/asn1.h and defines some - additional "M_" macros. - -Tue May 24 18:52:11 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args_verify): verify the format to - scan if no invalid chars and variable argument length matching, - at the compile time if possible. - -Tue May 24 17:18:46 2016 Nobuyoshi Nakada - - * include/ruby/defines.h (ERRORFUNC, WARNINGFUNC): add fallback - definitions. - -Tue May 24 16:37:43 2016 NARUSE, Yui - - * configure.in (ruby_cflags): separate from optflags [Bug #12409] - -fexcess-precision=standard and -fp-model precise are set to this now. - - * configure.in (cflags): use ruby_cflags. - -Tue May 24 16:20:53 2016 Nobuyoshi Nakada - - * configure.in (ERRORFUNC, WARNINGFUNC): __error__ and __warning__ - attributes take a parenthesized string literal. - -Tue May 24 12:35:56 2016 URABE Shyouhei - - * common.mk: sort lines, and add missing dependencies suggested - by tool/update-deps - -Mon May 23 21:33:36 2016 Nobuyoshi Nakada - - * include/ruby/missing.h (isfinite): move from numeric.c. - -Mon May 23 21:09:06 2016 Kazuki Yamaguchi - - * ext/openssl/ossl.c (Init_openssl): Avoid reference to unset global - variable. ossl_raise() may be called before dOSSL is set. Since - global variables default to 0 and the default value of dOSSL set in - Init_openssl() is also Qfalse, there is no real issue but confusing. - Patch by Bertram Scharpf - [ruby-core:58264] [Bug #9101] - -Mon May 23 20:32:16 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_asn1.c, ext/openssl/ossl_bn.c, - ext/openssl/ossl_cipher.c, ext/openssl/ossl_digest.c - ext/openssl/ossl_engine.c, ext/openssl/ossl_ns_spki.c - ext/openssl/ossl_pkcs12.c, ext/openssl/ossl_pkcs7.c - ext/openssl/ossl_pkey.c, ext/openssl/ossl_pkey_ec.c - ext/openssl/ossl_rand.c, ext/openssl/ossl_ssl.c - ext/openssl/ossl_x509attr.c, ext/openssl/ossl_x509cert.c - ext/openssl/ossl_x509ext.c, ext/openssl/ossl_x509store.c: Use - StringValueCStr() where NUL-terminated string is expected. - -Mon May 23 20:20:12 2016 NAKAMURA Usaku - - * ext/bigdecimal/bigdecimal.c (isfinite): get rid of a warning on - cygwin. [Bug #12417][ruby-core:75691] - -Mon May 23 19:41:27 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_rand.c (ossl_rand_egd, ossl_rand_egd_bytes): - RAND_egd{_bytes,}() return -1 on failure, not 0. - Patch by cremno phobia - [ruby-core:63795] [Bug #10053] - (ossl_pseudo_bytes): Similar, RAND_pseudo_bytes() may return 0 or - -1 on failure. - -Mon May 23 15:52:07 2016 NAKAMURA Usaku - - * ext/bigdecimal/bigdecimal.c (isfinite): isfinite does not always - exist. fixed build error on Windows introduced at r55123. - -Mon May 23 13:19:41 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args0): make compile error if the - format is wrong or does not match with the variable argument - length if possible. - -Mon May 23 12:47:09 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (rb_scan_args0): raise fatal error if - variable argument length does not match, it is a bug in the code - which uses rb_scan_args, not a runtime error. - -Mon May 23 12:30:29 2016 Nobuyoshi Nakada - - * ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): consider - non-finite float values not to raise FloatDomainError. - [ruby-core:75682] [Bug #12414] - -Mon May 23 12:21:18 2016 NARUSE, Yui - - * array.c (rb_ary_fill): suppress warnings: 'item' may be used - uninitialized in this function - -Mon May 23 07:41:49 2016 Eric Wong - - * dir.c (dir_close): update RDoc for 2.3 #close change - [ruby-core:75679] [Bug #12413] - -Sun May 22 20:01:21 2016 Masatoshi SEKI - - * lib/drb/timeridconv.rb: use finalizer trick instead of thread. - - * test/drb/ut_timerholder.rb: ditto. - -Sun May 22 17:25:18 2016 Martin Duerst - - * test/ruby/enc/test_case_options.rb: adjust test class name - to match file name - -Sun May 22 17:24:07 2016 Martin Duerst - - * rename test/ruby/enc/test_casing_options.rb to test_case_options.rb - for consistency - -Sun May 22 17:06:55 2016 Nobuyoshi Nakada - - * transcode.c (enc_arg, str_transcode_enc_args, econv_args): - remove volatile, and add GC guards in callers. - [ruby-core:75664] [Bug #12411] - -Sun May 22 16:27:00 2016 Nobuyoshi Nakada - - * ext/-test-/integer/core_ext.c: move testutil/integer.c. - - * test/lib/-test-/integer.rb: extract implementation details from - test/unit/assertions.rb. [Bug #12408] - -Sun May 22 14:57:43 2016 Martin Duerst - - * include/ruby/oniguruma.h: Extend OnigEncodingTypeDefine to define a - new encoding primitive 'case_map' for case mapping - - * enc/utf-8.c, utf_16be/le.c, utf_32be/le.c: - add onigenc_unicode_case_map as case_map primitive - - * enc/ascii.c, big5.c, cp949.c, emacs_mule.c, euc_jp/kr/tw.c, gb18030.c, - gbk.c, iso_8859_1/2/3/4/5/6/7/8/9/10/11/13/14/15/16.c, koi8_r/u.c, - shift_jis.c, us_ascii.c, windows_1250/1251/1252.c: - add onigenc_not_support_case_map as case_map primitive - -Sun May 22 14:45:45 2016 Martin Duerst - - * regenc.h/c: Define new function onigenc_not_support_case_map - -Sun May 22 12:14:06 2016 NARUSE, Yui - - * include/ruby/ruby.h (rb_scan_args): use original rb_scan_args - when fmt is dynamic. - -Sun May 22 11:41:12 2016 NARUSE, Yui - - * class.c (rb_scan_args): moved to bottom of the file to make the - effect of `#undef rb_scan_args` the minimum. - - * include/ruby/ruby.h (rb_scan_args): overwrite only if GCC and - optimized. Visual C++ 14 or later can compile it but make it - conservative. - -Sat May 21 22:45:50 2016 NAKAMURA Usaku - - * include/ruby/ruby.h (rb_scan_args): don't use ALWAYS_INLINE with - `inline`. if gcc needs this duplication, do in ALWAYS_INLINE macro. - -Sat May 21 21:11:56 2016 NARUSE, Yui - - * include/ruby/ruby.h (rb_scan_args): use __VA_ARGS__ instead of - va_arg to allow compilers optimize more aggressive. - https://gustedt.wordpress.com/2011/07/10/avoid-writing-va_arg-functions/ - rb_scan_args is now expected to be statically resolved. - -Sun May 22 02:41:52 2016 NARUSE, Yui - - * ext/zlib/zlib.c: remove hacky macro introduced at r30437. - - * ext/zlib/zlib.c (gzfile_make_header): cast as long (instead of int). - - * ext/zlib/zlib.c (gzfile_make_footer): ditto. - -Sat May 21 21:07:18 2016 NARUSE, Yui - - * configure.in (ALWAYS_INLINE): force compilers the function inlined. - -Sat May 21 16:16:03 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_ssl.c (ossl_ssl_stop): Don't free the SSL struct - here. Since some methods such as SSLSocket#connect releases GVL, - there is a chance of use after free if we free the SSL from another - thread. SSLSocket#stop was documented as "prepares it for another - connection" so this is a slightly incompatible change. However when - this sentence was added (r30090, Add toplevel documentation for - OpenSSL, 2010-12-06), it didn't actually. The current behavior is - from r40304 (Correct shutdown behavior w.r.t GC., 2013-04-15). - [ruby-core:74978] [Bug #12292] - - * ext/openssl/lib/openssl/ssl.rb (sysclose): Update doc. - - * test/openssl/test_ssl.rb: Test this. - -Sat May 21 14:41:14 2016 Kazuki Yamaguchi - - * ext/openssl/ossl.c: [DOC] Fix SSL client example. The variable name - was wrong. Patch by Andreas Tiefenthaler (@pxlpnk). - [GH ruby/openssl#32] - -Sat May 21 14:25:38 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkey_ec.c: rename PKey::EC#private_key? and - #public_key? to #private? and #public? for consistency with other - PKey types. Old names remain as alias. [ruby-core:45541] [Bug #6567] - - * test/openssl/test_pkey_ec.rb (test_check_key): check private? and - public? works correctly. - -Sat May 21 12:40:36 2016 Kazuki Yamaguchi - - * ext/openssl/lib/openssl/buffering.rb (read_nonblock, readpartial): - Remove impossible EOFError raise. Patch by Zach Anker - . [GH ruby/openssl#23] - -Sat May 21 11:18:42 2016 Evgeni Golov - - * lib/ipaddr.rb: [DOC] fix documentation of IN6MASK to mention - IPv6. [Fix GH-1349] - -Sat May 21 11:12:53 2016 Dan Martinez - - * io.c (Init_IO): [DOC] define dummy ARGF instead of ARGF.class to - re-enable the generation of ARGF documentation. [Fix GH-1358] - -Sat May 21 11:07:29 2016 0x01f7 - - * doc/syntax/methods.rdoc (Method Names): add proper closing tag. - [Fix GH-1356] - -Sat May 21 09:26:28 2016 Nobuyoshi Nakada - - * configure.in (RUBY_CHECK_SETJMP): fix missing macro definition - for the configured result. fix up r55021. - -Sat May 21 00:36:32 2016 Nobuyoshi Nakada - - * process.c (rb_execarg_commandline): build command line string - from argument vector in rb_execarg. - [ruby-core:75611] [Bug #12398] - -Fri May 20 23:25:42 2016 Kazuki Yamaguchi - - * ext/openssl/ossl.c (ossl_pem_passwd_value): Added. Convert the - argument to String with StringValue() and validate the length is in - 4..PEM_BUFSIZE. PEM_BUFSIZE is a macro defined in OpenSSL headers. - (ossl_pem_passwd_cb): When reading/writing encrypted PEM format, we - used to pass the password to PEM_def_callback() directly but it was - problematic. It is not NUL character safe. And surprisingly, it - silently truncates the password to 1024 bytes. [GH ruby/openssl#51] - - * ext/openssl/ossl.h: Add function prototype declaration of newly - added ossl_pem_passwd_value(). - - * ext/openssl/ossl_pkey.c (ossl_pkey_new_from_data): Use - ossl_pem_passwd_value() to validate the password String. - - * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize, ossl_dsa_export): - ditto. - - * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_initialize, - ossl_ec_key_to_string): ditto. - - * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_initialize, ossl_rsa_export): - ditto. - - * test/openssl/test_pkey_{dsa,ec,rsa}.rb: test this. - -Fri May 20 23:45:53 2016 Naohisa Goto - - * id_table.c (list_id_table_init): When unaligned word access is - prohibited and sizeof(VALUE) is 8 (64-bit machines), - capa should always be even number for 8-byte word alignment - of the values of a table. This code assumes that sizeof(ID) is 4, - sizeof(VALUE) is 8, and xmalloc() returns 8-byte aligned memory. - This fixes bus error on 64-bit SPARC Solaris 10. - [Bug #12406][ruby-dev:49631] - -Fri May 20 22:30:09 2016 Naohisa Goto - - * symbol.h (rb_id2sym): Use HAVE_BUILTIN___BUILTIN_CONSTANT_P - -Fri May 20 22:19:00 2016 Kazuhiro NISHIYAMA - - * ext/date/date_core.c: [DOC] fix typos. - [fix GH-1360] patched by @soundasleep - -Fri May 20 21:26:58 2016 Naohisa Goto - - * include/ruby/defines.h (RB_GNUC_EXTENSION, RB_GNUC_EXTENSION_BLOCK): - macros for skipping __extension__ on non-GCC compilers. - * eval_error.c (warn_print): use RB_GNUC_EXTENSION_BLOCK instead of - __extension__ because __extension__ is a GNU extension. - Fix compile error on Solaris 10 with Oracle Solaris Studio 12.x. - [Bug #12397] [ruby-dev:49629]. - * internal.h (rb_fstring_cstr, rb_fstring_enc_cstr): ditto - * include/ruby/encoding.h (rb_enc_str_new, rb_enc_str_new_cstr): ditto - * include/ruby/intern.h (rb_str_new, rb_str_new_cstr, - rb_usascii_str_new, rb_utf8_str_new, rb_tainted_str_new_cstr, - rb_usascii_str_new_cstr, rb_utf8_str_new_cstr, - rb_external_str_new_cstr, rb_locale_str_new_cstr, - rb_str_buf_new_cstr, rb_str_cat_cstr, rb_exc_new_cstr): ditto - -Fri May 20 21:17:13 2016 Nobuyoshi Nakada - - * ext/win32ole/win32ole.c (fole_missing): make substring or dup to - share the content if possible. - -Fri May 20 19:48:48 2016 Nobuyoshi Nakada - - * internal.h (NEW_PARTIAL_MEMO_FOR): shrink buffer array not to - mark non-VALUE fields. fix check_rvalue_consistency abort with - RGENGC_CHECK_MODE=2. - - * internal.h (NEW_CMP_OPT_MEMO): exclude struct cmp_opt_data from - the valid array range. - - * enum.c (slicewhen_i): exclude inverted too. - -Thu May 19 21:21:57 2016 Kazuhiro NISHIYAMA - - * re.c (rb_reg_match_m_p): [DOC] fix return value in rdoc. - - * test/ruby/test_regexp.rb (TestRegexp#test_match_p): add some - tests from document. - -Thu May 19 13:22:44 2016 Kazuki Yamaguchi - - * 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. - -Thu May 19 13:11:35 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): check that the - argument is an OpenSSL::ASN1::Data before converting to ASN1_TYPE. - This fixes SEGV on OpenSSL::X509::Attribute#value=(non-asn1-value). - - * test/openssl/test_x509attr.rb: add tests for OpenSSL::X509::Attribute. - -Thu May 19 12:10:10 2016 Nobuyoshi Nakada - - * re.c (rb_reg_match_m_p): fix match against empty string. - rb_str_offset returns the end when the position exceeds the - length. fix the range parameter of onig_search. - [ruby-core:75604] [Bug #12394] - -Thu May 19 11:37:36 2016 Nobuyoshi Nakada - - * re.c (rb_reg_match_m_p): should return false if no match, as the - document says. [Feature #8110] - -Thu May 19 00:17:01 2016 NARUSE, Yui - - * re.c (reg_names_iter): specify capacify - -Wed May 18 21:29:59 2016 NAKAMURA Usaku - - * 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. - -Wed May 18 19:33:54 2016 NARUSE, Yui - - * re.c (rb_reg_match_m_p): Introduce Regexp#match?, which returns - bool and doesn't save backref. - -Wed May 18 16:52:03 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): pop errors - leaked by PKCS12_parse(). This is a bug in OpenSSL, which exists - in the versions before the version 1.0.0t, 1.0.1p, 1.0.2d. - -Wed May 18 16:04:54 2016 Nobuyoshi Nakada - - * tool/downloader.rb (Downloader::RubyGems.download): verify gems - only if RubyGems is 2.4 or later. old RubyGems fails to verify - almost all of bundled gems. - -Wed May 18 14:52:38 2016 Nobuyoshi Nakada - - * string.c (rb_str_modify_expand): check integer overflow. - [ruby-core:75592] [Bug #12390] - -Wed May 18 13:11:44 2016 NARUSE, Yui - - * re.c (match_ary_subseq): get subseq of match array without creating - temporary array. - - * re.c (match_ary_aref): get element(s) of match array without creating - temporary array. - - * re.c (match_aref): Use match_ary_subseq with handling irregulars. - - * re.c (match_values_at): Use match_ary_aref. - -Wed May 18 13:03:07 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_x509cert.c (ossl_x509_verify): X509_verify() - family may put errors on 0 return (0 means verification failure). - Clear OpenSSL error queue before return to Ruby. Since the queue is - thread global, remaining errors in the queue can cause an unexpected - error in the next OpenSSL operation. [ruby-core:48284] [Bug #7215] - - * ext/openssl/ossl_x509crl.c (ossl_x509crl_verify): ditto. - - * ext/openssl/ossl_x509req.c (ossl_x509req_verify): ditto. - - * ext/openssl/ossl_x509store.c (ossl_x509stctx_verify): ditto. - - * ext/openssl/ossl_pkey_dh.c (dh_generate): clear the OpenSSL error - queue before re-raising exception. - - * ext/openssl/ossl_pkey_dsa.c (dsa_generate): ditto. - - * ext/openssl/ossl_pkey_rsa.c (rsa_generate): ditto. - - * ext/openssl/ossl_ssl.c (ossl_start_ssl): ditto. - - * test/openssl: check that OpenSSL.errors is empty every time after - running a test case. - -Wed May 18 12:07:42 2016 Kazuki Yamaguchi - - * ext/openssl/ossl.c (ossl_clear_error): Extracted from - ossl_make_error(). This prints errors in the OpenSSL error queue if - OpenSSL.debug is true, and clears the queue. - (ossl_make_error): use ossl_clear_error(). - - * ext/openssl/ossl.h: add prototype declaration of ossl_make_error(). - (OSSL_BIO_reset) use ossl_clear_error() to clear the queue. Clearing - silently makes debugging difficult. - - * ext/openssl/ossl_engine.c (ossl_engine_s_by_id): ditto. - - * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto. - - * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): ditto. - - * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto. - - * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_initialize): ditto. - (ossl_ec_group_initialize): ditto. - - * ext/openssl/ossl_ssl.c (ossl_ssl_shutdown): ditto. - -Wed May 18 11:53:49 2016 Kazuki Yamaguchi - - * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): Validate the - arguments before passing to EC_POINT(s)_mul(). Add description of this - method. [ruby-core:65152] [Bug #10268] - - * test/openssl/test_pkey_ec.rb (test_ec_point_mul): Test that - OpenSSL::PKey::EC::Point#mul works. - -Wed May 18 11:19:59 2016 Kazuki Yamaguchi - - * 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 - -Wed May 18 10:17:41 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (RB_INTEGER_TYPE_P): new macro and - underlying inline function to check if the object is an - Integer (Fixnum or Bignum). - -Wed May 18 09:52:00 2016 Kenta Murata - - * enum.c (enum_sum, hash_sum, hash_sum_i, enum_sum_i, sum_iter): - Optimize for hashes when each method isn't redefined. - -Wed May 18 09:14:00 2016 Kenta Murata - - * enum.c (enum_sum, int_range_sum): Extract int_range_sum from - enum_sum. - -Wed May 18 03:16:06 2016 Nobuyoshi Nakada - - * re.c (match_values_at): fix regression at r55036. - MatchData#values_at accepts Range. - -Wed May 18 02:02:58 2016 NARUSE, Yui - - * re.c (match_aref): remove useless condition and call rb_fix2int. - rb_reg_nth_match handles negative index. - -Wed May 18 01:57:43 2016 NARUSE, Yui - - * re.c (match_values_at): MatchData#values_at supports named captures - [Feature #9179] - - * re.c (namev_to_backref_number): separated. - -Wed May 18 00:05:00 2016 Kenta Murata - - * enum.c (enum_sum): Optimize for a range from int to int. - - * test/ruby/test_enum.rb (test_range_sum): Move from test_range.rb, - and add assertions for some conditions. - - * test/ruby/test_enum.rb (test_hash_sum): Move from test_hash.rb. - - * test/ruby/test_hash.rb, test/ruby/test_range.rb: Remove test_sum. - -Tue May 17 23:08:00 2016 Kenta Murata - - * enum.c (enum_sum): [DOC] Write documentation. - -Tue May 17 22:53:00 2016 Kenta Murata - - * enum.c (enum_sum): Implement Enumerable#sum. - - * test/ruby/test_enum.rb (test_sum): Test sum for Enumerable. - - * test/ruby/test_hash.rb (test_sum): Test sum for Hash. - - * test/ruby/test_range.rb (test_sum): Test sum for Range. - -Tue May 17 22:11:41 2016 Tanaka Akira - - * object.c, numeric.c, enum.c, ext/-test-/bignum/mul.c, - lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rexml/xpath_parser.rb, - lib/rubygems/specification.rb, lib/uri/generic.rb, - bootstraptest/test_eval.rb, basictest/test.rb, - test/-ext-/bignum/test_big2str.rb, test/-ext-/bignum/test_div.rb, - test/-ext-/bignum/test_mul.rb, test/-ext-/bignum/test_str2big.rb, - test/csv/test_data_converters.rb, test/date/test_date.rb, - test/json/test_json_generate.rb, test/minitest/test_minitest_mock.rb, - test/openssl/test_cipher.rb, test/rexml/test_jaxen.rb, - test/ruby/test_array.rb, test/ruby/test_basicinstructions.rb, - test/ruby/test_bignum.rb, test/ruby/test_case.rb, - test/ruby/test_class.rb, test/ruby/test_complex.rb, - test/ruby/test_enum.rb, test/ruby/test_eval.rb, - test/ruby/test_iseq.rb, test/ruby/test_literal.rb, - test/ruby/test_math.rb, test/ruby/test_module.rb, - test/ruby/test_numeric.rb, test/ruby/test_range.rb, - test/ruby/test_rational.rb, test/ruby/test_refinement.rb, - test/ruby/test_rubyvm.rb, test/ruby/test_struct.rb, - test/ruby/test_variable.rb, test/rubygems/test_gem_specification.rb, - test/thread/test_queue.rb: Use Integer instead of Fixnum and Bignum. - -Tue May 17 15:26:10 2016 Tanaka Akira - - * [Feature #12005] Unify Fixnum and Bignum into Integer - - * include/ruby/ruby.h (rb_class_of): Return rb_cInteger for fixnums. - - * insns.def (INTEGER_REDEFINED_OP_FLAG): Unified from - FIXNUM_REDEFINED_OP_FLAG and BIGNUM_REDEFINED_OP_FLAG. - - * vm_core.h: Ditto. - - * vm_insnhelper.c (opt_eq_func): Use INTEGER_REDEFINED_OP_FLAG instead - of FIXNUM_REDEFINED_OP_FLAG. - - * vm.c (vm_redefinition_check_flag): Use rb_cInteger instead of - rb_cFixnum and rb_cBignum. - (C): Use Integer instead of Fixnum and Bignum. - - * numeric.c (fix_succ): Removed. - (Init_Numeric): Define Fixnum as Integer. - - * bignum.c (bignew): Use rb_cInteger instead of rb_cBignum. - (rb_int_coerce): replaced from rb_big_coerce and return fixnums - as-is. - (Init_Bignum): Define Bignum as Integer. - Don't define ===. - - * error.c (builtin_class_name): Return "Integer" for fixnums. - - * sprintf.c (ruby__sfvextra): Use rb_cInteger instead of rb_cFixnum. - - * ext/-test-/testutil: New directory to test. - Currently it provides utilities for fixnum and bignum. - - * ext/json/generator/generator.c: Define mInteger_to_json. - - * lib/mathn.rb (Fixnum#/): Redefinition removed. - -Tue May 17 11:58:58 2016 Nobuyoshi Nakada - - * configure.in (RUBY_CHECK_BUILTIN_SETJMP): declare t as NORETURN - to suppress warnings by -Wsuggest-attribute=noreturn. - [ruby-core:75510] [Bug #12383] - -Tue May 17 10:40:18 2016 Nobuyoshi Nakada - - * configure.in (RUBY_CHECK_SETJMP): needs the header and proper - arguments for builtin setjmp functions. - -Mon May 16 20:00:30 2016 Martin Duerst - - * enc/unicode.h: Additional uses of ONIG_CASE_MAPPING compilation switch - -Mon May 16 19:46:33 2016 Martin Duerst - - * include/ruby/oniguruma.h: Introducing ONIG_CASE_MAPPING compilation - switch - - * include/ruby/oniguruma.h, enc/unicode.h: Using ONIG_CASE_MAPPING - compilation switch - -Mon May 16 19:29:31 2016 SHIBATA Hiroshi - - * gems/bundled_gems: Update xmlrpc-0.1.1. xmlrpc-0.1.0 didn't allow - to install on 2.4.0dev. - -Mon May 16 13:28:59 2016 Nobuyoshi Nakada - - * configure.in (FUNC_STDCALL, FUNC_CDECL, FUNC_FASTCALL): set - macro names explicitly to the old names, which are accidentally - changed at r54985, for backward compatibilities. - fiddle also depends on these names to fallback to ANSI names. - [ruby-core:75494] [Bug #12377] - -Mon May 16 11:39:02 2016 SHIBATA Hiroshi - - * lib/xmlrpc.rb, lib/xmlrpc/*, test/xmlrpc: XMLRPC is bundled gem - on Ruby 2.4. It is extracted to https://github.com/ruby/xmlrpc - [Feature #12160][ruby-core:74239] - * gems/bundled_gems: ditto. - -Mon May 16 06:06:21 2016 Eric Wong - - * proc.c: fix RDoc of Proc#===/call/yield/[] - [Bug #12332] - -Sun May 15 20:55:31 2016 Masatoshi SEKI - - * lib/drb/timeridconv.rb: don't use keeper thread. [Bug #12342] - - * test/drb/ut_timerholder.rb: ditto. - -Sun May 15 16:15:25 2016 NARUSE, Yui - - * array.c (rb_ary_entry): extract rb_ary_elt to organize if-conditions - and check whether is embedded at once. - -Sun May 15 10:57:26 2016 Nobuyoshi Nakada - - * vm_insnhelper.c (vm_get_ev_const): warn deprecated constant even - in the class context. [ruby-core:75505] [Bug #12382] - -Sun May 15 03:13:01 2016 NARUSE, Yui - - * iseq.h (struct iseq_compile_data): use struct rb_id_table - instead of st_table. - - * iseq.c (prepare_iseq_build): don't allocate ivar_cache_table - until it has at least one element. - - * iseq.c (compile_data_free): free ivar_cache_table only if it - is allocated. - - * compile.c (get_ivar_ic_value): allocate if the table is not - allocated yet. - -Sat May 14 09:04:34 2016 Nobuyoshi Nakada - - * lib/mkmf.rb (pkg_config): use xsystem consistently to set up - library path environment variable as well as latter pkg-config - calls. [ruby-dev:49619] [Bug #12379] - -Sat May 14 00:16:54 2016 Nobuyoshi Nakada - - * random.c (make_seed_value): append leading-zero-guard and get - rid of making a local copy of the seed. - -Fri May 13 08:46:42 2016 cremno - - * NEWS: drop FreeBSD < 4 support. [Fix GH-1339] - The most recent version affected by this is 3.5 and was released - in 2000. - https://www.freebsd.org/releases/3.5R/announce.html - https://en.wikipedia.org/wiki/History_of_FreeBSD#Version_history - -Fri May 13 03:12:09 2016 NARUSE, Yui - - * include/ruby/defines.h (GCC_VERSION_SINCE): moved from internal.h. - -Fri May 13 03:11:20 2016 NARUSE, Yui - - * configure.in (__builtin_constant_p): check. - - * internal.h: Use HAVE_BUILTIN___BUILTIN_CONSTANT_P - -Fri May 13 03:10:39 2016 NARUSE, Yui - - * configure.in: use alternative keyword - to avoid macros conflicts with them. - -Thu May 12 01:54:08 2016 Nobuyoshi Nakada - - * lib/mkmf.rb (try_func): get rid of conflict of declarations of - main(). checking local symbol reference does not make sense. - -Thu May 12 00:18:19 2016 NAKAMURA Usaku - - * win32/Makefile.sub (HAVE_QSORT_S): use qsort_s only for Visual Studio - 2012 or later, because VS2010 seems to causes a SEGV in - test/ruby/test_enum.rb. - -Wed May 11 23:59:47 2016 Masaya Tarui - - * vm_insnhelper.c (vm_getivar): describe fast-path explicit - (compiler friendly). [Bug #12274]. - -Wed May 11 21:30:07 2016 Masaya Tarui - - * compile.c (iseq_compile_each): share InlineCache during same - instance variable accesses. Reducing memory consumption, - rising cache hit rate and rising branch prediction hit rate - are expected. A part of [Bug #12274]. - - * iseq.h (struct iseq_compile_data): introduce instance - variable IC table for sharing. - - * iseq.c (prepare_iseq_build, compile_data_free): - construct/destruct above table. - -Wed May 11 17:18:53 2016 Nobuyoshi Nakada - - * util.c (ruby_qsort): use qsort_s if available, for Microsoft - Visual Studio 2005 (msvcr80.dll) and mingw. - -Wed May 11 10:33:26 2016 Marcus Stollsteimer - - * COPYING: Remove trailing-whitespaces. - [ci skip][fix GH-1348] - -Tue May 10 21:05:45 2016 Benoit Daloze - - * 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. - -Tue May 10 14:57:09 2016 Nobuyoshi Nakada - - * random.c (obj_random_bytes): base on bytes method instead of - rand method, not to call toplevel rand method. - -Tue May 10 13:07:28 2016 NARUSE, Yui - - * configure.in (-fexcess-precision=standard): before r54895 -std=c99 - is specified and it implied -fexcess-precision=standard. - Now with -std=gnu99, it should be explicitly specified. - https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html - -Mon May 9 10:51:59 2016 Nobuyoshi Nakada - - * thread.c (rb_thread_atfork_internal): move th to an argument. - - * thread.c (rb_thread_atfork): do not repeat GET_THREAD(). - -Mon May 9 10:46:36 2016 Nobuyoshi Nakada - - * thread.c (rb_thread_atfork, rb_thread_atfork_before_exec): do - nothing unless working fork is available. - - * thread_sync.c (rb_mutex_abandon_all): define only if working - fork is available. - - * thread_sync.c (rb_mutex_abandon_keeping_mutexes): ditto. - - * thread_sync.c (rb_mutex_abandon_locking_mutex): ditto. - - * thread_win32.c (gvl_init): never used. - -Mon May 9 07:18:06 2016 NAKAMURA Usaku - - * include/ruby/{defines,ruby}.h: need to define function attributes - alternatives in defines.h instead of ruby.h, because they are used - in oniguruma.h and the header used without including ruby.h at - encoding library sources. - -Mon May 9 06:30:12 2016 NAKAMURA Usaku - - * include/ruby/ruby.h (CONSTFUNC, PUREFUNC): fixed build errors on - non-gcc build environments introduced at r54952. - -Mon May 9 02:51:51 2016 NARUSE, Yui - - * gc.c (rb_gc_unprotect_logging): throw rb_memerror when it cannot - allocate memory. This is pointed out by Facebook's Infer. - - * gc.c (gc_prof_setup_new_record): ditto. - - * regparse.c (parse_regexp): ditto. - - * util.c (MALLOC): use xmalloc and xfree like above. - -Mon May 9 02:39:16 2016 NARUSE, Yui - - * configure.in: check function attribute const and pure, - and define CONSTFUNC and PUREFUNC if available. - Note that I don't add those options as default because - it still shows many false-positive (it seems not to consider - longjmp). - - * vm_eval.c (stack_check): get rb_thread_t* as an argument - to avoid duplicate call of GET_THREAD(). - -Sun May 8 21:01:14 2016 NARUSE, Yui - - * ext/openssl/extconf.rb: assume it doesn't have SSLv2 related - functions when OPENSSL_NO_SSL2 is defined. - Usually openssl's header and the library (libssl) have the same - set of functions, but on some environment the library has functions - whose headers doesn't declare. (openssl/opensslconf.h and libssl.so - aren't be synchronized) - To detect such case explicitly check feature macro and remove - related functions. - -Sun May 8 18:51:33 2016 Nobuyoshi Nakada - - * file.c (rb_home_dir_of): return the default home path if the - user name is the current user name, on platforms where struct - pwd is not supported. a temporary measure against - [Bug #12226]. - -Sun May 8 08:51:38 2016 NARUSE, Yui - - * configure.in: add -Wsuggest-attribute=format and suppress warnings. - -Sun May 8 08:31:03 2016 NARUSE, Yui - - * configure.in: add -Wsuggest-attribute=noreturn and suppress warnings. - -Sun May 8 08:19:16 2016 NARUSE, Yui - - * configure.in: add -Werror=implicit-int to avoid missing type of - function declaration. - -Sat May 7 22:22:37 2016 SHIBATA Hiroshi - - * lib/webrick/ssl.rb: Accept string value for SSLCertName. It is used - to invoke ssl server with command line. - [fix GH-1329] Patch by @kerlin - * test/webrick/test_ssl_server.rb: Added test for GH-1329 - -Sat May 7 21:55:12 2016 SHIBATA Hiroshi - - * test/webrick/test_ssl_server.rb: Added basic test for `webrick/ssl` - -Sat May 7 16:22:13 2016 Nobuyoshi Nakada - - * random.c (int_pair_to_real_inclusive): optimize to multiply - without Bignum. - -Sat May 7 07:58:02 2016 Nobuyoshi Nakada - - * 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 May 6 08:16:26 2016 David Silva - - * enum.c (enum_find): [DOC] add more examples to the documentation - of Enumerable#detect, to show that it equals to Enumerable#find. - [Fix GH-1340] - -Thu May 5 18:08:31 2016 Yuichiro Kaneko - - * test/ruby/test_complexrational.rb: Remove duplicated raise. - -Thu May 5 14:41:05 2016 Yuichiro Kaneko - - * string.c (rb_str_sub): Fix a special match variable name. - [ci skip] - -Thu May 5 12:22:17 2016 Nobuyoshi Nakada - - * vm_eval.c (rb_eval_cmd, rb_catch_obj): use TH_JUMP_TAG with the - same rb_thread_t used for TH_PUSH_TAG, instead of JUMP_TAG with - the current thread global variable. - -Thu May 5 10:49:33 2016 Nobuyoshi Nakada - - * random.c (fill_random_bytes_syscall): use arc4random_buf if - available. - -Wed May 4 23:13:58 2016 Yuichiro Kaneko - - * numeric.c (fix_plus): Remove rb_nucomp_add prototype - declaration. - - * numeric.c (fix_mul): Remove rb_nucomp_mul prototype - declaration. - - * internal.h (rb_nucomp_add, rb_nucomp_mul): add prototype - declarations. - -Wed May 4 18:38:00 2016 Kazuki Tsujimoto - - * lib/net/http/header.rb (Net::HTTPHeader#{each_header,each_name, - each_capitalized_name,each_value,each_capitalized}): Return - sized enumerators. - - * test/net/http/test_httpheader.rb: add test for above. - -Wed May 4 17:53:15 2016 Kazuki Tsujimoto - - * lib/set.rb (Set#{delete_if,keep_if,collect!,reject!,select!,classify,divide}, - SortedSet#{delete_if,keep_if}): Return sized enumerators. - - * test/test_set.rb: add test for above. - -Tue May 3 23:25:48 2016 Kazuhiro NISHIYAMA - - * numeric.c: [DOC] Update result of 123456789 ** -2. - [ruby-dev:49606] [Bug #12339] - -Tue May 3 23:13:16 2016 Yuichiro Kaneko - - * internal.h (RCOMPLEX_SET_IMAG): undef RCOMPLEX_SET_IMAG - instead of duplicated undef RCOMPLEX_SET_REAL. - -Tue May 3 22:55:07 2016 Yuichiro Kaneko - - * complex.c (rb_complex_set_imag): Fix to properly set imag - of complex. - -Tue May 3 22:19:55 2016 NARUSE, Yui - - * configure.in (warnflags): use -std=gnu99 instead of - -std=iso9899:1999. [Feature #12336] - -Tue May 3 22:10:09 2016 NARUSE, Yui - - * string.c (count_utf8_lead_bytes_with_word): Use __builtin_popcount - only if it can use SSE 4.2 POPCNT whose latency is 3 cycle. - - * internal.h (rb_popcount64): use __builtin_popcountll because now - it is in fast path. - -Tue May 3 14:19:18 2016 Nobuyoshi Nakada - - * parse.y (new_if_gen): set newline flag to NODE_IF to trace all - if/elsif statements. [ruby-core:67720] [Bug #10763] - -Tue May 3 05:35:54 2016 Eric Wong - - * process.c (disable_child_handler_fork_child): - initialize handler for SIGPIPE for !POSIX_SIGNAL - -Mon May 2 23:03:42 2016 NAKAMURA Usaku - - * 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] - -Mon May 2 20:59:21 2016 NARUSE, Yui - - * re.c (str_coderange): to avoid function call when the string already - has coderange information. - - * re.c (rb_reg_prepare_enc): add shortcut path when the regexp has - the same encoding of given string. - - * re.c (rb_reg_prepare_re): avoid duplicated allocation of - onig_errmsg_buffer. - - -Mon May 2 12:34:52 2016 Tanaka Akira - - * test/ruby/test_refinement.rb (test_inspect): Use Integer instead of - Fixnum. - -Mon May 2 06:58:38 2016 Tanaka Akira - - * complex.c: Don't refer rb_cFixnum and rb_cBignum. - (k_fixnum_p): Use FIXNUM_P. - (k_bignum_p): Use RB_TYPE_P. - -Mon May 2 01:27:59 2016 Tanaka Akira - - * test/ruby/test_numeric.rb (test_step): Use Integer::FIXNUM_MAX. - -Mon May 2 01:15:01 2016 Tanaka Akira - - * test/ruby/test_module.rb (test_name): Use Integer instead of Fixnum. - -Mon May 2 01:00:04 2016 Tanaka Akira - - * test/lib/test/unit/assertions.rb (assert_fixnum): Defined. - (assert_bignum): Defined. - - * test/ruby/test_bignum.rb: Use assert_bignum. - - * test/ruby/test_integer_comb.rb: Use assert_fixnum and assert_bignum. - - * test/ruby/test_optimization.rb: Ditto. - -Mon May 2 00:41:53 2016 Tanaka Akira - - * vm_trace.c (recalc_remove_ruby_vm_event_flags): Add a cast to - avoid signed integer overflow. - -Mon May 2 00:06:04 2016 Tanaka Akira - - * test/lib/envutil.rb: Define Integer::{FIXNUM_MIN,FIXNUM_MAX}. - - * test/ruby/test_bignum.rb: Use Integer::{FIXNUM_MIN,FIXNUM_MAX}. - - * test/ruby/test_bignum.rb: Ditto. - - * test/ruby/test_integer_comb.rb: Ditto. - - * test/ruby/test_marshal.rb: Ditto. - - * test/ruby/test_optimization.rb: Ditto. - -Sun May 1 23:59:59 2016 Kenta Murata - - * array.c (rb_ary_sum): fix for mathn - - * test/ruby/test_array.rb (test_sum): ditto. - -Sun May 1 23:51:54 2016 NAKAMURA Usaku - - * test/lib/test/unit.rb (Options#non_options): fixed wrong regexp. - if both positives and negatives were specified, positives had to - be specified from the beginning. - -Sun May 1 21:00:07 2016 NAKAMURA Usaku - - * win32/win32.c: drop Win2K support. - -Sun May 1 20:39:47 2016 NAKAMURA Usaku - - * cont.c, hash.c, random.c, win32/win32.c: cleanup some Win9x/ME/NT4 - support leftovers. - [fix GH-1328] patched by @cremno - -Sun May 1 07:30:44 2016 NARUSE, Yui - - * string.c (search_nonascii): use nlz on big endian environments. - - * internal.h (nlz_intptr): defined. - -Sun May 1 00:03:30 2016 NARUSE, Yui - - * configure.in (__builtin_ctz): check. - - * configure.in (__builtin_ctzll): check. - - * internal.h (rb_popcount32): defined for ntz_int32. - it can use __builtin_popcount but this function is not used on - GCC environment because it uses __builtin_ctz. - When another function uses this, using __builtin_popcount - should be re-considered. - - * internal.h (rb_popcount64): ditto. - - * internal.h (ntz_int32): defined for ntz_intptr. - - * internal.h (ntz_int64): defined for ntz_intptr. - - * internal.h (ntz_intptr): defined as ntz for uintptr_t. - - * string.c (search_nonascii): unroll and use ntz. - -Sat Apr 30 21:54:13 2016 Tanaka Akira - - * numeric.c (Init_Numeric): Gather Fixnum method definitions. - -Sat Apr 30 21:28:14 2016 Tanaka Akira - - * numeric.c (rb_int_div): Define Integer#/. - - * bignum.c (rb_big_div): Don't define Bignum#/. - - * lib/mathn.rb (Integer#/): Replace Integer#/ instead of Bignum#/. - -Sat Apr 30 21:11:08 2016 Tanaka Akira - - * numeric.c (rb_int_plus): Define Integer#+. - - * bignum.c (rb_big_plus): Don't define Bignum#+. - -Sat Apr 30 21:01:20 2016 Tanaka Akira - - * numeric.c (rb_int_minus): Define Integer#-. - - * bignum.c (rb_big_minus): Don't define Bignum#-. - -Sat Apr 30 20:53:33 2016 Tanaka Akira - - * numeric.c (rb_int_mul): Define Integer#*. - - * bignum.c (rb_big_mul): Don't define Bignum#*. - -Sat Apr 30 20:30:44 2016 Tanaka Akira - - * numeric.c (rb_int_modulo): Define Integer#%. - - * bignum.c (rb_big_modulo): Don't define Bignum#%. - -Sat Apr 30 20:17:08 2016 Tanaka Akira - - * numeric.c (int_equal): Define Integer#==. - - * bignum.c (rb_big_eq): Don't define Bignum#==. - -Sat Apr 30 19:41:15 2016 Tanaka Akira - - * numeric.c (int_gt): Define Integer#>. - - * bignum.c (rb_big_gt): Don't define Bignum#>. - Renamed from big_gt. - - * internal.h (rb_big_gt): Declared. - -Sat Apr 30 19:24:40 2016 Tanaka Akira - - * numeric.c (int_ge): Define Integer#>=. - - * bignum.c (rb_big_ge): Don't define Bignum#>=. - Renamed from big_ge. - - * internal.h (rb_big_ge): Declared. - -Sat Apr 30 19:20:40 2016 SHIBATA Hiroshi - - * doc/standard_library.rdoc: Remove obsoleted classes and modules. - -Sat Apr 30 19:09:23 2016 Tanaka Akira - - * numeric.c (int_lt): Define Integer#<. - - * bignum.c (rb_big_lt): Don't define Bignum#<. - Renamed from big_lt. - - * internal.h (rb_big_lt): Declared. - -Sat Apr 30 18:44:05 2016 Tanaka Akira - - * numeric.c (int_le): Define Integer#<=. - - * bignum.c (rb_big_le): Don't define Bignum#<=. - Renamed from big_le. - - * internal.h (rb_big_le): Declared. - -Sat Apr 30 18:11:44 2016 Tanaka Akira - - * bignum.c (Init_Bignum): Define Integer::GMP_VERSION. - -Sat Apr 30 16:58:18 2016 Tanaka Akira - - * numeric.c (int_remainder): Define Integer#remainder. - - * bignum.c (rb_big_remainder): Don't define Bignum#remainder. - - * internal.h (rb_big_remainder): Declared. - -Sat Apr 30 15:29:24 2016 Tanaka Akira - - * numeric.c (rb_int_uminus): {Fixnum,Bignum}#-@ is unified into - Integer. - - * bignum.c (rb_big_uminus): Don't define Bignum#-@. - -Sat Apr 30 14:42:20 2016 Tanaka Akira - - * numeric.c (rb_int_idiv): {Fixnum,Bignum}#div is unified into - Integer. - - * bignum.c (rb_big_idiv): Don't define Bignum#div. - -Sat Apr 30 14:25:55 2016 Tanaka Akira - - * numeric.c (rb_int_modulo): {Fixnum,Bignum}#modulo is unified into - Integer. - - * bignum.c (rb_big_modulo): Don't define Bignum#modulo. - -Sat Apr 30 14:04:30 2016 Tanaka Akira - - * numeric.c (int_divmod): {Fixnum,Bignum}#divmod is unified into - Integer. - - * bignum.c (rb_big_divmod): Don't define Bignum#divmod. - -Sat Apr 30 13:20:00 2016 Tanaka Akira - - * numeric.c (int_fdiv): {Fixnum,Bignum}#fdiv is unified into - Integer. - - * bignum.c (rb_big_fdiv): Don't define Bignum#fdiv. - -Sat Apr 30 12:25:43 2016 Tanaka Akira - - * numeric.c (rb_int_pow): {Fixnum,Bignum}#** is unified into - Integer. - - * bignum.c (rb_big_pow): Don't define Bignum#**. - -Sat Apr 30 12:28:59 2016 Tanaka Akira - - * bignum.c (rb_big_comp): Renamed from rb_big_neg. - - * numeric.c (fix_comp): Renamed from fix_rev. - -Sat Apr 30 12:25:43 2016 Tanaka Akira - - * numeric.c (int_comp): {Fixnum,Bignum}#~ is unified into - Integer. - - * bignum.c (rb_big_neg): Don't define Bignum#~. - - * internal.h (rb_big_neg): Declared. - -Sat Apr 30 12:07:42 2016 Tanaka Akira - - * numeric.c (int_and): {Fixnum,Bignum}#& is unified into - Integer. - - * bignum.c (rb_big_and): Don't define Bignum#&. - -Sat Apr 30 11:56:15 2016 Nobuyoshi Nakada - - * ext/thread: removed dummy extension library. thread_sync.c - provides "thread.rb" already. - -Sat Apr 30 11:53:48 2016 Tanaka Akira - - * numeric.c (int_or): {Fixnum,Bignum}#| is unified into - Integer. - - * bignum.c (rb_big_or): Don't define Bignum#|. - -Sat Apr 30 11:18:47 2016 Yuichiro Kaneko - - * vm_trace.c: Fix typos. [ci skip] - -Sat Apr 30 10:09:04 2016 Nobuyoshi Nakada - - * ext/pty/pty.c (establishShell): honor USER environment variable - and login name over uid, one uid can be shared by some login - names. - -Fri Apr 29 22:40:28 2016 Nobuyoshi Nakada - - * doc/maintainers.rdoc (ext/io/nonblock): still maintained, as - well as ext/io/wait, which is the origin. - -Fri Apr 29 21:18:12 2016 NAKAMURA Usaku - - * doc/maintainers.rdoc (ext/win32): of course, it's still maintained. - -Fri Apr 29 21:03:10 2016 SHIBATA Hiroshi - - * gems/bundled_gems: Update latest gems, test-unit-3.1.8 and rake-11.1.2. - -Fri Apr 29 20:43:02 2016 SHIBATA Hiroshi - - * doc/maintainers.rdoc: Update latest maintainers list on Ruby 2.4 - -Fri Apr 29 19:52:45 2016 SHIBATA Hiroshi - - * doc/maintainers.rdoc: Removed deprecated entries. These are already deleted. - -Fri Apr 29 19:48:45 2016 SHIBATA Hiroshi - - * doc/maintainers.rdoc: Removed Ruby 1.8 entries. It's not necessary to - Ruby 2.4 or later. - -Thu Apr 28 17:03:17 2016 Nicholas Maccharoli - - * hash.c (rb_hash_update_{block,func}_callback): dry up hash - update callback code. [Fix GH-1338] - -Thu Apr 28 16:52:05 2016 NARUSE, Yui - - * re.c (rb_reg_prepare_enc): use rb_enc_asciicompat(enc) instead of - rb_enc_str_asciicompat_p(str) to avoid useless rb_enc_get(str) call. - -Thu Apr 28 16:33:41 2016 Nobuyoshi Nakada - - * lib/optparse.rb: [DOC] fix example code. base on the code by - Semyon Gaivoronskiy in [ruby-core:75224]. [Bug #12323] - -Thu Apr 28 09:33:03 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.6.4. - Please see entries of 2.6.4 on - https://github.com/rubygems/rubygems/blob/master/History.txt - -Thu Apr 28 04:49:07 2016 Rei Odaira - - * configure.in (rb_cv_lgamma_r_pm0): check if lgamma_r(+0.0) - returns positive infinity, in addition to lgamma_r(-0.0). - AIX returns an incorrect result of negative infinity. - - * math.c (ruby_lgamma_r): handle +0.0, in addition to -0.0. - -Thu Apr 28 01:11:14 2016 NARUSE, Yui - - * time.c: define _DEFAULT_SOURCE because glibc 2.20 deprecates - _BSD_SOURCE. - https://sourceware.org/glibc/wiki/Release/2.20 - -Thu Apr 28 00:27:55 2016 Tanaka Akira - - * numeric.c (int_xor): {Fixnum,Bignum}#^ is unified into - Integer. - - * bignum.c (rb_big_xor): Don't define Bignum#^. - -Wed Apr 27 20:53:59 2016 Tanaka Akira - - * numeric.c (int_aref): {Fixnum,Bignum}#[] is unified into - Integer. - - * bignum.c (rb_big_aref): Don't define Bignum#<<. - - * internal.h (rb_big_aref): Declared. - -Wed Apr 27 16:10:35 2016 NARUSE, Yui - - * tool/instruction.rb: fix to follow current implementation. - -Wed Apr 27 15:47:54 2016 Nobuyoshi Nakada - - * ext/stringio/stringio.c (strio_s_new): warn if a block is given, - as well as IO.new. - -Wed Apr 27 14:29:47 2016 Nobuyoshi Nakada - - * error.c (ruby_only_for_internal_use): raise fatal error when - deprecated function only for internal use is called, not just a - warning. - -Tue Apr 26 23:42:30 2016 NAKAMURA Usaku - - * tool/redmine-backporter.rb (rel): should not raise exceptions even if - the user input is wrong. only reports the error and continue process. - -Tue Apr 26 23:35:23 2016 Nobuyoshi Nakada - - * 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] - -Tue Apr 26 21:11:02 2016 Tanaka Akira - - * numeric.c (rb_int_lshift): {Fixnum,Bignum}#<< is unified into - Integer. - - * bignum.c (rb_big_lshift): Don't define Bignum#<<. - -Tue Apr 26 20:59:40 2016 Tanaka Akira - - * numeric.c (rb_int_rshift): {Fixnum,Bignum}#>> is unified into - Integer. - - * bignum.c (rb_big_rshift): Don't define Bignum#>>. - -Tue Apr 26 20:46:16 2016 Tanaka Akira - - * numeric.c (int_size): {Fixnum,Bignum}#size is unified into Integer. - - * bignum.c (rb_big_size_m): Don't define Bignum#size. - - * internal.h (rb_big_size_m): Declared. - -Tue Apr 26 20:09:08 2016 Tanaka Akira - - * numeric.c (rb_int_bit_length): {Fixnum,Bignum}#bit_length is - unified into Integer. - - * bignum.c (rb_big_bit_length): Don't define Bignum#bit_length. - - * internal.h (rb_big_bit_length): Declared. - -Tue Apr 26 19:56:16 2016 Tanaka Akira - - * numeric.c (int_abs): Integer#{abs,magnitude} moved from - Fixnum and Bignum. - - * bignum.c (rb_big_abs): Don't define Bignum#{abs,magnitude}. - - * internal.h (rb_big_abs): Declared. - -Mon Apr 25 14:39:11 2016 Nobuyoshi Nakada - - * ext/rbconfig/sizeof/extconf.rb: just check the existence of each - types, to reduce configuration time, especially cross-compiling. - - * template/sizes.c.tmpl: calculate sizes of checked types at - compilation time. - -Mon Apr 25 11:27:27 2016 Marcus Stollsteimer - - * doc/extension.rdoc: Improvements to english grammars. - [Bug #12246][ruby-core:74792][ci skip] - -Mon Apr 25 11:17:50 2016 Marcus Stollsteimer - - * 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` - -Sun Apr 24 23:29:16 2016 Rei Odaira - - * configure.in: add missing -lm for AIX. - -Sun Apr 24 18:33:58 2016 Kazuki Tsujimoto - - * vm_insnhelper.c (INLINE): disable r54738 if __NO_INLINE__ is defined. - It caused "undefined reference to `vm_getivar'". - -Sun Apr 24 09:32:12 2016 Yuichiro Kaneko - - * test/ruby/test_array.rb: Add test cases for Array#sum with - non-numeric objects. - -Sun Apr 24 04:21:27 2016 NARUSE, Yui - - * vm_insnhelper.c (INLINE): define as `inline` when it is optimized. - define as `static inline` when it is not optimized to keep - the symbol generated. - - * vm_insnhelper.c (vm_getivar): use `INLINE` to force inline - so that a compiler inlines it into vm_getinstancevariable - and optimizes out is_attr and related branches. - - * vm_insnhelper.c (vm_getivar): use `inline` to recommend inline. - Without this vm1_ivar_set is degraded. - - benchmark results: - minimum results in each 5 measurements. - Execution time (sec) - name ruby 2.4.0dev (2016-04-23 trunk 54727) [x86_64-linux] ruby 2.4.0dev (2016-04-23 trunk 54733) [x86_64-linux] built-ruby - loop_whileloop 0.641 0.642 0.646 - vm1_ivar* 1.002 0.999 0.831 - vm1_ivar_set* 0.369 1.106 0.362 - - Speedup ratio: compare with the result of `ruby 2.4.0dev (2016-04-23 - trunk 54727) [x86_64-linux]' (greater is better) - name ruby 2.4.0dev (2016-04-23 trunk 54733) [x86_64-linux] - built-ruby - loop_whileloop - 0.998 0.991 - vm1_ivar* - 1.003 1.205 - vm1_ivar_set* - 0.334 1.018 - -Sat Apr 23 18:01:21 2016 NARUSE, Yui - - * vm_insnhelper.c (vm_getivar): specify inline instead of static inline. - vm_getivar is called by vm_call_ivar and vm_getinstancevariable. - At least with GCC 4.8 and 5.3 on Linux, they are inlining it into - vm_call_ivar but not vm_getinstancevariable. - By `inline`, they correctly inline it and gains performance. - - Speedup ratio: compare with the result of `ruby 2.4.0dev (2016-04-23 - trunk 54727) [x86_64-linux]' (greater is better) - name built-ruby - loop_whileloop 1.001 - vm1_ivar* 1.189 - vm1_ivar_set* 1.024 - - Note the `inline`'s meaning is different between old GCC - and C99. Old GCC's inline means C99's extern inline. - https://gcc.gnu.org/onlinedocs/gcc/Inline.html - Since Ruby specify -std=iso9899:1999, it works like C99. - -Sat Apr 23 16:11:39 2016 NARUSE, Yui - - * include/ruby/ruby.h (rb_mul_size_overflow): use UNLIKELY - by user side to improve generality. - -Sat Apr 23 16:10:02 2016 NARUSE, Yui - - * include/ruby/ruby.h (RB_LIKELY): use prefix in ruby.h. - - * intern.h (LIKELY): define with RB_LIKELY. - -Sat Apr 23 13:27:25 2016 Yuichiro Kaneko - - * NEWS: Add descriptions for Time#to_time updates. - [Bug #12271] - -Sat Apr 23 13:21:24 2016 Yuichiro Kaneko - - * NEWS: Add descriptions for DateTime#to_time updates. - [Bug #12189] - -Sat Apr 23 11:21:27 2016 Marcus Stollsteimer - - * ext/date/date_core.c (Init_date_core): [DOC] Convert DateTime - documentation to RDoc from Markdown. - [ruby-core:75136] [Bug #12311] - -Sat Apr 23 09:03:35 2016 Nobuyoshi Nakada - - * ruby.c: cygwin does not use w32_cmdvector, command line can be - other than UTF-8. [ruby-dev:49519] [Bug #12184] - -Sat Apr 23 01:00:03 2016 Rei Odaira - - * 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. - -Fri Apr 22 21:00:44 2016 Tanaka Akira - - * 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. - -Fri Apr 22 20:18:40 2016 NARUSE, Yui - - * include/ruby/ruby.h (rb_mul_size_overflow): added to handle - mul overflow efficiently. - - * include/ruby/ruby.h (rb_alloc_tmp_buffer2): use rb_mul_size_overflow - and avoid division where it can define DSIZE_T. - - * gc.c (xmalloc2_size): moved from ruby.h and use rb_mul_size_overflow. - -Fri Apr 22 20:34:04 2016 Nobuyoshi Nakada - - * time.c (time_asctime): [DOC] add ctime example, not only - asctime. [ruby-core:75126] [Bug #12310] - -Fri Apr 22 18:44:32 2016 NARUSE, Yui - - * variable.c: use uint32_t instead of long to avoid confusion about - the type of ivtbl->numiv. - -Fri Apr 22 15:09:27 2016 Nobuyoshi Nakada - - * eval_jump.c (exec_end_procs_chain): restore previous error info - for each end procs. [ruby-core:75038] [Bug #12302] - -Fri Apr 22 15:04:56 2016 NAKAMURA Usaku - - * tool/redmine-backporter.rb: the fullpath of merger.rb is too long to - copy&paste on Windows. show shorter name instead on the platform. - I'm sure that the user of this command on Windows is only me. - -Fri Apr 22 14:52:04 2016 NAKAMURA Usaku - - * tool/merger.rb: remove temporary file. - -Fri Apr 22 11:27:03 2016 SHIBATA Hiroshi - - * lib/net/http.rb: Improve documentation for SSL requests via GET method. - [fix GH-1325][ci skip] Patch by @jsyeo - -Fri Apr 22 10:51:13 2016 SHIBATA Hiroshi - - * lib/webrick/ssl.rb: Support to add SSLCiphers option. - [fix GH-1321] Patch by @rhadoo - -Fri Apr 22 10:43:19 2016 SHIBATA Hiroshi - - * file.c, win32/file.c: Removed obsoleted safe level checks. - [fix GH-1327] Patch by @cremno - -Fri Apr 22 10:01:48 2016 SHIBATA Hiroshi - - * benchmark/bm_so_meteor_contest.rb: fix a typo. - [fix GH-1330][ci skip] Patch by @sachin21 - -Fri Apr 22 04:57:01 2016 NARUSE, Yui - - * gc.c (rb_alloc_tmp_buffer_with_count): added like xmalloc2 to - avoid duplicated check of size. - - * gc.c (ruby_xmalloc2): added to keep separate layers. - - * include/ruby/ruby.h (rb_alloc_tmp_buffer2): added to check - the size more statically. - -Fri Apr 22 04:54:40 2016 NARUSE, Yui - - * include/ruby/ruby.h (LIKELY): moved from internal.h. - - * include/ruby/ruby.h (UNLIKELY): ditto. - -Thu Apr 21 01:44:19 2016 NARUSE, Yui - - * gc.c (objspace_malloc_prepare): remove size check because it is - used by objspace_xmalloc and objspace_xcalloc. - objspace_xmalloc introduces its own check in this commit. - objspace_xcalloc checks with xmalloc2_size (ruby_xmalloc2_size). - - * gc.c (objspace_xmalloc0): common xmalloc function. - - * gc.c (objspace_xmalloc): introduce its own size check. - - * gc.c (objspace_xmalloc2): separated from ruby_xmalloc2 to clarify - the layer who has the responsibility to check the size. - - * gc.c (objspace_xrealloc): remove duplicated size check. - - * gc.c (ruby_xmalloc2): use objspace_xmalloc2. - - * include/ruby/ruby.h (ruby_xmalloc2_size): follow the size limit - as SSIZE_MAX. Note that ISO C says size_t is unsigned integer. - -Thu Apr 21 12:14:04 2016 Nobuyoshi Nakada - - * configure.in: check if succeeded in creating config.h. - - * tool/ifchange: ignore failures when TEST_COLORS unmatched. just - use the default value if expected name is not contained in it. - [ruby-core:75046] [Bug #12303] - -Wed Apr 20 17:33:31 2016 Nobuyoshi Nakada - - * ext/cgi/escape/escape.c (cgiesc_unescape): define unescape - method instead of _unescape, and should pass the optional - argument to the super method. - - * lib/cgi/util.rb (CGI::Util#_unescape): remove intermediate - method. - -Wed Apr 20 15:52:28 2016 Nobuyoshi Nakada - - * error.c (syntax_error_initialize): move the default message, - "compile error", from parse.y. the default parameter should - belong to the class definition. - - * parse.y (yycompile0): use the default parameter. - -Wed Apr 20 10:25:53 2016 Nobuyoshi Nakada - - * compile.c (append_compile_error): use rb_syntax_error_append. - - * error.c (rb_syntax_error_append): append messages into a - SyntaxError exception instance. - - * parse.y (yycompile0): make new SyntaxError instance in main - mode, otherwise error_buffer should be a SyntaxError if error - has occurred. - -Tue Apr 19 17:42:47 2016 Nobuyoshi Nakada - - * error.c (err_vcatf): rename, and separate appending message from - creating a string buffer. - - * error.c (rb_syntax_error_append): merge rb_error_vsprintf and - rb_compile_err_append. - - * parse.y (parser_compile_error): use rb_syntax_error_append. - -Tue Apr 19 13:46:19 2016 Nobuyoshi Nakada - - * compile.c (append_compile_error, compile_bug): pass iseq and get - error info and file from it, not by the thread error info. - - * error.c (rb_report_bug_valist): take va_list instead of variadic - arguments, and just report the bug but not abort. - -Tue Apr 19 13:18:12 2016 Naotoshi Seo - - * lib/time.rb: revert r54167 because it would break - backward compatibilities, and it is documented that - Time.parse does not take into account time zone - abbreations other than ones described in RFC 822 - -Tue Apr 19 13:12:03 2016 Naotoshi Seo - - * ChangeLog: Fix dates of previous commits - -Tue Apr 19 12:45:03 2016 Naotoshi Seo - - * ChangeLog: Add descriptions for logger updates - * NEWS: Add descriptions for logger updates - -Tue Apr 19 12:45:02 2016 Naotoshi Seo - - * lib/logger.rb: Add shift_period_suffix option - -Tue Apr 19 12:45:01 2016 Naotoshi Seo - - * lib/logger.rb: Allow specifying logger parameters in constructor - such as level, progname, datetime_format, formatter. - -Mon Apr 18 16:07:01 2016 Nobuyoshi Nakada - - * compile.c (iseq_peephole_optimize): should not replace the - current target INSN, not to follow the replaced dangling link in - the caller. [ruby-core:74993] [Bug #11816] - -Mon Apr 18 12:56:31 2016 Nobuyoshi Nakada - - * numeric.c (flo_truncate): add an optional parameter, digits, as - well as Float#round. [Feature #12245] - - * numeric.c (int_truncate): add an optional parameter, digits, as - well as Integer#round. [Feature #12245] - -Sun Apr 17 04:18:56 2016 CHIKANAGA Tomoyuki - - * tool/redmine-backporter.rb: revisions are strings. - -Sat Apr 16 14:26:49 2016 Yuichiro Kaneko - - * ext/date/date_core.c : remove not used f_getlocal macro. - After r54553 f_getlocal macro is not used. - -Sat Apr 16 14:15:24 2016 Yuichiro Kaneko - - * ext/date/date_core.c : remove not used f_utc6 macro. - After r54169 f_utc6 macro is not used. - -Sat Apr 16 10:00:11 2016 Nobuyoshi Nakada - - * struct.c (struct_make_members_list, rb_struct_s_def): member - names should be unique. [ruby-core:74971] [Bug #12291] - - * struct.c (struct_make_members_list): extract making member name - list from char* va_list, with creating symbols without - intermediate IDs. - -Sat Apr 16 01:33:27 2016 CHIKANAGA Tomoyuki - - * tool/redmine-backporter.rb: sort revisions. - -Sat Apr 16 01:16:02 2016 Tanaka Akira - - * array.c (rb_ary_sum): Don't yield same element twice. - Found by nagachika. - -Sat Apr 16 01:03:32 2016 Tanaka Akira - - * array.c (rb_ary_sum): Fix SEGV by [1/2r, 1].sum. - -Fri Apr 15 23:52:00 2016 Kenta Murata - - * rational.c (rb_rational_plus): rename from rb_rational_add - to be aligned with rb_fix_plus. - - * array.c (rb_ary_sum): ditto. - - * internal.h: ditto. - -Fri Apr 15 23:42:00 2016 Kenta Murata - - * rational.c (rb_rational_add): rename from nurat_add. - - * array.c (rb_ary_sum): use rb_rational_add directly. - - * test/ruby/test_array.rb (test_sum): add assertions for an array of - Rational values. - -Fri Apr 15 22:31:00 2016 Kenta Murata - - * array.c (rb_ary_sum): apply the precision compensated algorithm - for an array in which Rational and Float values are mixed. - - * test/ruby/test_array.rb (test_sum): add assertions for the above - change. - -Fri Apr 15 22:30:01 2016 Nobuyoshi Nakada - - * thread.c (rb_thread_setname): defer setting native thread name - set in initialize until the native thread is created. - [ruby-core:74963] [Bug #12290] - -Fri Apr 15 20:27:16 2016 SHIBATA Hiroshi - - * lib/irb/ext/save-history.rb: Fix NoMethodError when method is not defined. - -Fri Apr 15 15:38:58 2016 NARUSE, Yui - - * common.mk (benchmark): order options for built-ruby and compare-ruby. - -Fri Apr 15 14:14:00 2016 Kenta Murata - - * test/ruby/test_array.rb (test_sum): add assertions for Rational and - Complex numbers. - -Fri Apr 15 10:07:11 2016 Nobuyoshi Nakada - - * ext/io/console/console.c (console_key_pressed_p): raise the same - exception, "unknown virtual key code", for names with nul chars. - though console_win32_vk() considers the length and can deal with - nul chars, rb_sprintf() raised at PRIsVALUE previously, so quote - it if it is unprintable. - -Fri Apr 15 09:02:58 2016 Nobuyoshi Nakada - - * ext/io/console/console.c (rb_sym2str): fallback definition for - older ruby. [ruby-core:74953] [Bug #12284] - -Thu Apr 14 21:46:36 2016 Tanaka Akira - - * array.c (rb_ary_sum): Support the optional argument, init, and - block. - -Thu Apr 14 19:02:41 2016 NARUSE, Yui - - * lib/irb/ext/save-history.rb: suppress warning: method redefined; - discarding old save_history=. - -Thu Apr 14 14:58:14 2016 Nobuyoshi Nakada - - * ext/tk/tkutil/tkutil.c (tk_hash_kv): the third argument can be - nil not only an Array. reported by @windwiny at - https://github.com/ruby/ruby/commit/cdaa94e#commitcomment-17096618 - -Thu Apr 14 14:28:55 2016 cremno phobia - - * cont.c (fiber_initialize_machine_stack_context): fix wrong - _MSC_VER check, should be decimal but not hexadecimal. - [ruby-core:74936] [Bug #12279] - -Wed Apr 13 22:51:38 2016 Tanaka Akira - - * array.c (rb_ary_sum): Array#sum is implemented. - Kahan's compensated summation algorithm for precise sum of float - numbers is moved from ary_inject_op in enum.c. - - * enum.c (ary_inject_op): Don't specialize for float numbers. - - [ruby-core:74569] [Feature #12217] proposed by mrkn. - -Wed Apr 13 15:56:35 2016 Nobuyoshi Nakada - - * numeric.c (flo_ceil): add an optional parameter, digits, as - well as Float#round. [Feature #12245] - - * numeric.c (flo_floor): add an optional parameter, digits, as - well as Float#round. [Feature #12245] - - * numeric.c (int_ceil): add an optional parameter, digits, as - well as Integer#round. [Feature #12245] - - * numeric.c (int_floor): add an optional parameter, digits, as - well as Integer#round. [Feature #12245] - -Wed Apr 13 14:47:47 2016 Nobuyoshi Nakada - - * file.c (Init_File): add alias File.empty? to File.zero?. - [Feature #9969] - -Wed Apr 13 14:36:24 2016 Nobuyoshi Nakada - - * parse.y (assign_in_cond): allow multiple assignment in - conditional expression. [Feature #10617] - -Wed Apr 13 14:11:59 2016 Nobuyoshi Nakada - - * bignum.c (rb_big_size): add wrapper function of BIGSIZE and - rename the method function with _m suffix. - - * numeric.c (int_round_zero_p): extracted from rb_int_round. - optimize for Bignum, and convert VALUE returned by Numeric#size - to long. - -Wed Apr 13 12:00:08 2016 Koichi Sasada - - * test/ruby/test_basicinstructions.rb: add a test to check access - instance variables on special const objects. - - All of such objects are frozen, so that we can not set instance - variables for them. But we can read instance variables and return - default value (nil). - -Tue Apr 12 20:40:35 2016 Kaneko Yuichiro - - * ext/date/date_core.c (time_to_time): should preserve timezone - info. [ruby-core:74889] [Bug #12271] - -Tue Apr 12 11:51:18 2016 Nobuyoshi Nakada - - * compile.c (new_label_body): initialize bit fields, since - compile_data_alloc does not clear the memory. [Bug #12082] - -Mon Apr 11 20:18:43 2016 Koichi Sasada - - * vm_backtrace.c (frame2klass): filter only for imemo_ment. - T_IMEMO/imemo_iseq can be passed here. - -Mon Apr 11 17:43:04 2016 Nobuyoshi Nakada - - * compile.c (iseq_optimize): disable tail call optimization in - rescued, rescue, and ensure blocks. - [ruby-core:73871] [Bug #12082] - -Mon Apr 11 06:54:39 2016 Nobuyoshi Nakada - - * file.c (apply2files): apply to a VALUE vector instead of a - temporary array. - -Sun Apr 10 20:54:16 2016 Joe Swatosh - - * ext/win32/lib/win32/registry.rb (DeleteValue, DeleteKey): fix - API names. [ruby-core:74863] [Bug #12264] - -Sun Apr 10 17:47:42 2016 Nobuyoshi Nakada - - * file.c (rb_realpath_internal): no argument conversions since - this internal function does not need to_path and encoding - conversions, not to be affected by the default internal - encoding. - -Sat Apr 9 10:03:12 2016 Nobuyoshi Nakada - - * load.c (rb_f_load): raise with the original path name before - encoding conversion. - -Sat Apr 9 02:05:10 2016 Nobuyoshi Nakada - - * bignum.c (rb_cstr_parse_inum): [EXPERIMENTAL] new function to - parse integer in C-string with length. the name and the - arguments may be changed in the future. - - * bignum.c (rb_str_to_inum): preserve encoding of the argument in - error messages, and no longer needs to copy non-terminated - strings. - - * bignum.c (rb_str2big_{poweroftwo,normal,karatsuba,gmp}): ditto. - -Thu Apr 7 19:04:03 2016 Nobuyoshi Nakada - - * doc/regexp.rdoc (comments): [DOC] terminators cannot appear in - comments. [ruby-core:74838] [Bug #12256] - -Thu Apr 7 11:24:14 2016 Nobuyoshi Nakada - - * ext/tk/tkutil/tkutil.c (cbsubst_initialize): fix out-of-bound - access when no arguments given. `p Tk::Event.new` crashed. - -Fri Apr 1 01:26:00 2016 Benoit Daloze - - * ext/coverage/coverage.c: Fully reset coverage to not persist global state. - It was returning old file coverages as empty arrays to the user. - [ruby-core:74596] [Bug #12220] - - * ext/coverage/coverage.c (rb_coverages): remove unused static state. - - * thread.c: Moved and renamed coverage_clear_result_i to reset_coverage_i. - - * test/coverage/test_coverage.rb: improve precision of tests. - -Wed Apr 6 22:41:31 2016 Nobuyoshi Nakada - - * configure.in (rb_cv_lgamma_r_m0): fix the condition for - lgamma_r(-0.0). [Bug #12249] - -Wed Apr 6 17:38:42 2016 NAKAMURA Usaku - - * tool/downloader.rb (RubyGems.download): follow the change of the - rubygems ssl_certs directory tree introduced by previous commit. - -Wed Apr 6 15:00:27 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.6.3. - Please see entries of 2.6.3 on - https://github.com/rubygems/rubygems/blob/master/History.txt - -Wed Apr 6 14:13:28 2016 Nobuyoshi Nakada - - * 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. - -Wed Apr 6 10:56:15 2016 Anton Davydov - - * lib/logger.rb (Logger#level=): remove unnecessary local - variable. - - * lib/logger.rb (Logger#initialize, Logger#reopen): [DOC] mention - the default values. cherrypicked from [GH-1319]. - -Wed Apr 6 10:17:53 2016 cremno phobia - - * 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] - -Wed Apr 6 01:22:55 2016 NAKAMURA Usaku - - * math.c (ruby_lgamma_r): mswin's lgamma_r also seems to be wrong. - cf. [Bug #12249] - -Wed Apr 6 00:53:31 2016 Nobuyoshi Nakada - - * math.c (ruby_lgamma_r): fix lgamma(-0.0) on mingw and OSX. - - * math.c (ruby_tgamma): fix tgamma(-0.0) on mingw. - [ruby-core:74817] [Bug #12249] - -Tue Apr 5 14:50:28 2016 NARUSE, Yui - - * ext/nkf/nkf-utf8/nkf.c (mime_putc): fix typo. - [Bug #12202] [ruby-core:74802] - -Tue Apr 5 00:06:44 2016 Aeris - - * ext/openssl/ossl_ssl.c (ossl_ssl_tmp_key): Access to ephemeral - TLS session key in case of forward secrecy cipher. Only - available since OpenSSL 1.0.2. [Fix GH-1318] - - * ext/openssl/extconf.rb: Check for SSL_get_server_tmp_key. - -Mon Apr 4 23:37:05 2016 Nobuyoshi Nakada - - * 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] - -Mon Apr 4 17:43:45 2016 Koichi Sasada - - * gc.c: change default value of - RUBY_GC_HEAP_FREE_SLOTS_MIN_RATIO 0.3 -> 0.2 - RUBY_GC_HEAP_FREE_SLOTS_MAX_RATIO 0.8 -> 0.65 - - These values are same as Ruby 2.0.0. - - This change cause GC counts. - However, generational GC reduced each (minor) GC time and - increase memory locality. So that not so big impact on my - benchmarking results. - (surprisingly, this fix speed up programs on some cases) - - You can change these values by environment variables - if you feel wrong. - -Mon Apr 4 17:36:52 2016 Koichi Sasada - - * gc.c (get_envparam_double): take an upper_bound. - - And also take an accept_zero flag which allow to accept zero - even if lower_bound is set. - - * gc.c (ruby_gc_set_params): fix parameters. - - RUBY_GC_HEAP_FREE_SLOTS_MAX_RATIO set 0.9 as *lower_bound*, so that - it should be upper_bound. - Set RUBY_GC_HEAP_FREE_SLOTS_MIN_RATIO as lower bound. - - Also set lower/upper bound of RUBY_GC_HEAP_FREE_SLOTS_GOAL_RATIO to - RUBY_GC_HEAP_FREE_SLOTS_MIN/MAX_RATIO. - -Mon Apr 4 16:41:32 2016 Koichi Sasada - - * vm.c (Init_VM): should pass tokens. - -Sun Apr 3 09:34:29 2016 Nobuyoshi Nakada - - * numeric.c (flodivmod): round division if it is a finite number - and module is required. - - * numeric.c (dbl2ival): do not round here. - - * numeric.c (flo_ceil): use dbl2ival. - - * numeric.c (flo_round): round explicitly. - -Sat Apr 2 15:24:18 2016 Nobuyoshi Nakada - - * include/ruby/intern.h (rb_check_arity): returns argc. - -Fri Apr 1 20:58:33 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Data generation to implement - swapcase functionality for titlecase characters. Swapcase isn't defined - by Unicode, because the purpose/usage of swapcase is unclear anyway. - The implementation follows a proposal from Nobu, swapping the case of - each component of a titlecase character individually. - This means that the titlecase characters have to be decomposed. - - * enc/unicode.c: Code using the above data. - - * test/ruby/enc/test_case_mapping.rb: Tests for the above. - -Fri Apr 1 14:55:28 2016 Kazuki Yamaguchi - - * configure.in (AC_CONFIG_FILES): $srcdir/.git can be a file pointing - the real git_dir, such as when the git working tree is a "linked - working tree" (a working tree created by git-worktree). So use - git-rev-parse --git-dir to check if $srcdir is the top-level of a git - repository, not just checking if the $srcdir/.git directory does exist - or not. [ruby-core:74759] [Bug #12239] - - * tool/change_maker.rb: use tool/vcs.rb to detect VCS. This used to have - its own VCS detection code, while we have tool/vcs.rb. - - * tool/vcs.rb (detect): remove code duplication - -Fri Apr 1 04:50:44 2016 Eric Wong - - * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): - enable SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER by default - [Bug #12126] - -Fri Apr 1 01:13:55 2016 Benoit Daloze - - * 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. - -Thu Mar 31 19:16:16 2016 Koichi Sasada - - * gc.c: need to set initial value of GC_HEAP_FREE_SLOTS_GOAL_RATIO. - -Thu Mar 31 17:50:27 2016 Koichi Sasada - - * gc.c: change additional allocation policy. - - Introduce new environment variable - RUBY_GC_HEAP_FREE_SLOTS_GOAL_RATIO (goal_ratio) to calculate the - ratio of additional memory. - - Before this change, we add pages with the following formula - (when free_slots < total_pages * RUBY_GC_HEAP_FREE_SLOTS_MIN_RATIO): - next_pages = total_pages * RUBY_GC_HEAP_GROWTH_FACTOR - - This addition can allocate too much. - - With this change, we increase pages to satisfy the following formula: - next_free_slots = next_total_slots * goal_ratio - where - next_free_slots = free_slots + adding_slots - next_total_slots = total_slots + adding_slots. - - If you want to prepare many free slots, increase this ratio. - - If this variable is 0, then simply multiply - RUBY_GC_HEAP_GROWTH_FACTOR. - - * gc.c (get_envparam_double): enable to accept 0. - -Thu Mar 31 17:48:25 2016 Koichi Sasada - - * gc.c (gc_marks_finish): fix syntax error. - -Thu Mar 31 16:49:36 2016 Koichi Sasada - - * gc.c: simplify allocate/free detecting logic at the end of marking. - - Before this change, heap_pages_min_slots are calculated at the - beginning sweeping phase. And this value is used at the end of - *next* marking phase. - - To simplify it, we use this value at the end of this marking phase. - It means that we don't need to store this value as global state. - - Also heap_pages_max_slots is calculated at the begging of sweeping - phase and used at the end of sweeping phase. - To simplify this logic, we introduced new global value - heap_pages_freeable_pages it means extra pages count we can free. - gc_sweep_step() checks this value and moves empty pages to tomb_heap - not more than this value. - - Because of this fix, heap_pages_swept_slots is no longer needed. - - * gc.c (rb_objspace_t::heap_pages): restruct the objspace global - status. - - remove the following fields - * swept_slots (and heap_pages_swept_slots) - * min_free_slots (and heap_pages_min_free_slots) - * max_free_slots (and heap_pages_max_free_slots) - And add the following filed. - * freeable_pages (and heap_pages_freeable_pages) - - * gc.c (heap_pages_free_unused_pages): unlink tomb heap pages - because tomb heap should have only freeable pages. - - * gc.c (heap_extend_pages): add parameters for future extension. - -Thu Mar 31 16:43:02 2016 Koichi Sasada - - * gc.c: add GC parameters to configure the following values: - * RUBY_GC_HEAP_FREE_SLOTS_MIN_RATIO: - allocate additional pages when free slots is lower than - the value (total_slots * (this ratio)). - * RUBY_GC_HEAP_FREE_SLOTS_MAX_RATIO: - allow to free pages when free slots is greater than - the value (total_slots * (this ratio)). - - Before this change, these values are hard coded. - - * gc.c (ruby_gc_params_t): ditto. - - * gc.c (ruby_gc_set_params): ditto. - -Thu Mar 31 15:59:17 2016 Koichi Sasada - - * gc.c (gc_verify_heap_page): check the number of zombies. - - * gc.c (gc_verify_heap_pages): check also tomb heap. - -Thu Mar 31 15:48:18 2016 Koichi Sasada - - * gc.c (gc_page_sweep): return free slots count. - - * gc.c (gc_sweep_step): use returned free slots count. - - * gc.c (gc_sweep_step): change variable name `next' - to `next_sweep_page'. - -Thu Mar 31 11:33:49 2016 Nobuyoshi Nakada - - * ext/date/date_core.c (d_lite_strftime, dt_lite_strftime): [DOC] - fix indent not to be a big sole verbatim. - -Thu Mar 31 11:18:19 2016 Nobuyoshi Nakada - - * ext/date/date_core.c (Init_date_core): [DOC] fix misplaced doc - of DateTime. [ruby-core:74729] [Bug #12233] - -Thu Mar 31 03:41:02 2016 NARUSE, Yui - - * ext/nkf/nkf-utf8/nkf.c: Merge upstream 69f7e74dde. - fix indent. - -Wed Mar 30 16:33:19 2016 Nobuyoshi Nakada - - * 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. patch by Marcus Stollsteimer in [ruby-core:74690]. - [Bug #12228] - -Wed Mar 30 09:46:01 2016 SHIBATA Hiroshi - - * lib/open-uri.rb: Use `userinfo` for authenticated proxy. - [fix GH-1148] Patch by @SokichiFujita - * test/open-uri/test_open-uri.rb: ditto. - [fix GH-1309] Patch by @jdamick - -Wed Mar 30 01:56:06 2016 NARUSE, Yui - - * ext/nkf/nkf-utf8/nkf.c: Merge upstream 4f3edf80a0. - patched by Anton Sivakov [Bug #12201] [Bug #12202] - -Wed Mar 30 01:54:30 2016 NARUSE, Yui - - * tool/redmine-backporter.rb: add given revision to current changesets - on associating the revision to the related ticket. - -Wed Mar 30 01:53:17 2016 NARUSE, Yui - - * tool/merger.rb: update revision.h before merge. - -Tue Mar 29 19:33:54 2016 NARUSE, Yui - - * addr2line.c: define toupper for its use. fix r54391. - -Tue Mar 29 19:23:46 2016 NARUSE, Yui - - * include/ruby/ruby.h (rb_isupper, rb_islower, rb_isalpha, rb_isdigit, - rb_isalnum, rb_isxdigit, rb_isblank, rb_isspace, rb_isblank, - rb_iscntrl, rb_isprint, rb_ispunct, rb_isgraph, - rb_tolower, rb_toupper): use inline function to avoid function call. - - * include/ruby/ruby.h (rb_isascii): use inline function to clarify - the logic. - -Tue Mar 29 18:56:55 2016 NARUSE, Yui - - * tool/redmine-backporter.rb (backport): show merger.rb's path. - - * tool/redmine-backporter.rb (show): show current issue again if no - ticket number is given. - - * tool/redmine-backporter.rb (rel): show error message if current - bugs.ruby-lang.org doesn't support the API. - -Tue Mar 29 18:54:34 2016 NARUSE, Yui - - * tool/merger.rb: support to backport header as backport identifier. - Now you can specify by 'merge revision(s) 49254: [Backport #10738]'. - -Tue Mar 29 16:53:44 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Tweaked handling of 6 - special cases in CaseUnfold_11_Table. - - * enc/unicode.c: Adjustments for above. - - * test/ruby/enc/test_case_mapping.rb: Tests for the above: Some tests in - test_titlecase activated; test_greek added. A test in test_cherokee fixed. - -Tue Mar 29 13:31:00 2016 Martin Duerst - - * enc/unicode.c: Cleaned up some comments. - -Tue Mar 29 13:24:56 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Removing data for idempotent - titlecasing. - - * enc/unicode.c: Adjust code to data removal. - -Tue Mar 29 12:45:18 2016 Laurent Arnoud - - * lib/webrick/httpresponse.rb: Move error_body to method. It allow to - override the body more easily. [fix GH-1307] - * test/webrick/test_httpresponse.rb: ditto. - -Tue Mar 29 06:40:53 2016 Nobuyoshi Nakada - - * error.c (rb_compile_err_append): rb_thread_t::base_block is no - longer used. - - * iseq.c (rb_iseq_compile_with_option): ditto, no protection is - needed. - -Tue Mar 29 06:39:22 2016 Nobuyoshi Nakada - - * parse.y (struct parser_params): move parse_in_eval flag from - rb_thread_t. - - * parse.y (rb_parser_set_context): set parsing context, not only - mild error flag. - - * iseq.c (rb_iseq_compile_with_option): the parser now refers no - thread local states to be restored. - - * vm_eval.c (eval_string_with_cref): ditto. - -Mon Mar 28 21:24:02 2016 Kazuhiro NISHIYAMA - - * numeric.c (int_pos_p): fix typos. - -Mon Mar 28 14:54:49 2016 Martin Duerst - - * enc/unicode.c: Refactoring in preparation for data reduction for - titlecase. - -Mon Mar 28 14:36:36 2016 Martin Duerst - - * enc/unicode.c: Minor refactoring for I WITH DOT ABOVE. - -Mon Mar 28 14:26:24 2016 Martin Duerst - - * enc/unicode.c: Removed code now covered by data from table. - -Mon Mar 28 11:49:21 2016 Martin Duerst - - * enc/unicode.c: Adding comments. [ci skip] - -Mon Mar 28 11:30:23 2016 Shinichi Maeshima - - * lib/rubygems.rb: Fix `Gem.find_spec_for_exe` picks oldest gem. - https://github.com/travis-ci/travis-ci/issues/5798 - https://github.com/rubygems/rubygems/pull/1566 - * test/rubygems/test_gem.rb: ditto. - -Mon Mar 28 11:26:31 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.6.2. - Please see entries of 2.6.2 on - https://github.com/rubygems/rubygems/blob/master/History.txt - -Mon Mar 28 11:02:31 2016 Hiroshi Shirosaki - - * 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] - -Mon Mar 28 08:19:49 2016 Nobuyoshi Nakada - - * sprintf.c (rb_str_format): refactor floating point format of - Rational by using generic Integer functions. - - * sprintf.c (rb_str_format): fix buffer overflow, length must be - greater than precision. reported by William Bowling . - -Sun Mar 27 12:13:37 2016 Nobuyoshi Nakada - - * sprintf.c (rb_str_format): convert Rational to floating point - format by using generic Integer functions, not by methods which - can be overwritten. - -Sat Mar 26 10:55:12 2016 Nobuyoshi Nakada - - * numeric.c (rb_int2str): conversion function to String for - generic Integer. - - * numeric.c (rb_int_round): rounding function for generic - Integers. - - * numeric.c (rb_int_{uminus,plus,minus,mul,idiv,modulo}): basic - arithmetic functions for generic Integers. - - * numeric.c (FIXNUM_{POSITIVE,NEGATIVE,ZERO}_P): predict macros - only for Fixnum. - -Sat Mar 26 06:34:24 2016 NARUSE, Yui - - * localeinit.c (rb_locale_charmap_index): fix prototype. - patched by Andreas Schwab [Bug #12218] - -Fri Mar 25 16:40:48 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: Additional tests title case; - some not yet activated. - -Fri Mar 25 13:38:11 2016 Kazuki Yamaguchi - - * 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. - -Fri Mar 25 11:08:37 2016 Nobuyoshi Nakada - - * lib/uri/http.rb (URI::HTTP#initialize): [DOC] fix example, - missing mandatory arguments. [ruby-core:74540] [Bug #12215] - -Fri Mar 25 01:50:58 2016 NARUSE, Yui - - * thread_pthread.c (reserve_stack): fix reserving position where - the stack growing bottom to top. [Bug #12118] - -Fri Mar 25 01:10:42 2016 Sebastian Schuberth - - * lib/mkmf.rb (find_executable0): On Windows, it is actually valid - to surround individual PATH directory entries with double - quotes. Remove these before joining the path as otherwise the - literal quotes would become part of the path, resulting in the - executable not to be found. [Fix GH-1305] - -Thu Mar 24 22:38:18 2016 Nobuyoshi Nakada - - * strftime.c (FMT, FMTV): remove recursive-assignments to get rid - of undefined behavior. [ruby-core:74532] [Bug #12213] - -Thu Mar 24 17:44:02 2016 Nobuyoshi Nakada - - * strftime.c (FMT_PADDING): extract format for padding. - - * strftime.c (FMT_PRECISION): extract precision formula. - - * strftime.c (FMTV): append formatted string to expand the result. - -Thu Mar 24 14:20:21 2016 Nobuyoshi Nakada - - * strftime.c (STRFTIME): deal with case conversion flags for - recursive formats. - -Thu Mar 24 12:43:26 2016 Nobuyoshi Nakada - - * ext/date/date_core.c (dt_lite_iso8601): strftimev() always - returns a String, so append them directly. - - * ext/date/date_core.c (d_lite_jisx0301, iso8601_timediv), - (dt_lite_jisx0301): format by the format string in local buffer - to prevent intermediate strings from GC. - - * ext/date/date_core.c (mk_inspect_raw, mk_inspect): inspect by - "%+"PRIsVALUE, to prevent intermediate strings from GC. - -Thu Mar 24 11:43:32 2016 Nobuyoshi Nakada - - * strftime.c (rb_strftime_with_timespec): remove unnecessary - check, as `s` equals to `endp` when recursed STRFTIME resized - the capacity same as the size. - -Wed Mar 23 21:48:00 2016 Kenta Murata - - * enum.c (ary_inject_op): put subtract operation out of if-clause. - -Wed Mar 23 21:38:00 2016 Kenta Murata - - * enum.c (ary_inject_op): Use Kahan's compensated summation algorithm - for summing up float values. - -Wed Mar 23 20:56:59 2016 Nobuyoshi Nakada - - * strftime.c (rb_strftime_with_timespec): append formatted results - to the given string with expanding, and also deal with NUL chars. - - * strftime.c (rb_strftime, rb_strftime_timespec): return formatted - string, not the length put in the given buffer. - - * time.c (rb_strftime_alloc): no longer needs to retry with - reallocating buffers. - - * time.c (time_strftime): no longer needs to split by NUL chars. - -Wed Mar 23 14:23:54 2016 NARUSE, Yui - - * lib/rdoc/ri/driver.rb (interactive): rescue NotFoundError raised in - expand_name. (display_name rescues NotFoundError by itself, - the original logic looks buggy...) - -Wed Mar 23 11:44:53 2016 cremno - - * marshal.c (r_long): cast to `signed char`, which is used - already, instead of SIGN_EXTEND_CHAR. - - * parse.y: SIGN_EXTEND_CHAR is no longer used. [Fix GH-1302] - -Wed Mar 23 11:38:47 2016 Nobuyoshi Nakada - - * cygwin/GNUmakefile.in (MSYS2_ARG_CONV_EXCL_PARAM): - * add missing parentheses and remove double quotes. - * rename to get rid of recursive references. - * as --excludes-dir option is for a path name, its argument - should be converted. - [ruby-dev:49526] [Bug #12199] - -Wed Mar 23 10:39:38 2016 Koichi ITO - - * variable.c: Added documentation about order of `Module#constants` - [ci skip][Bug #12121][ruby-dev:49505][fix GH-1301] - -Tue Mar 22 21:08:30 2016 Martin Duerst - - * include/ruby/oniguruma.h: Additional flag for characters that are titlecase. - - * enc/unicode/case-folding.rb, casefold.h: Using above flag in data. - - * enc/unicode.c: Marking capitalized character as unmodified if it is - already titlecase. - - * test/ruby/enc/test_case_mapping.rb: Tests for above functionality. - -Tue Mar 22 14:18:59 2016 Nobuyoshi Nakada - - * parse.y (lambda_body, parser_yylex): warn mismatched indentation - of lambda block. - -Tue Mar 22 11:36:49 2016 NAKAMURA Usaku - - * time.c (wmul): wrong condition. - fixed many test failures on 32bit and LLP64 platforms. - -Tue Mar 22 10:31:34 2016 NAKAMURA Usaku - - * time.c (wdiv, wmod): wdivmod0() assumes the 3rd and the 4th arguments - are valid pointers. - maybe checking them in wdivmod0() is better manner, but I guess that - passing real dummy pointers may be faster than checking and branching - in wdivmod0(). - this commit fixes SEGV on 32bit and LLP64 platforms. - -Tue Mar 22 10:24:04 2016 NAKAMURA Usaku - - * time.c (divmodv): void function never returns any value. - -Tue Mar 22 10:11:01 2016 Nobuyoshi Nakada - - * test/lib/test/unit.rb (Test::Unit::StatusLine#failed): print - failed messages only if replacing mode, otherwise defer them - until the end, to get rid of interleaving failures with progress - messages. refix r54195. - -Tue Mar 22 03:45:03 2016 NARUSE, Yui - - * time.c (MUL_OVERFLOW_FIXWV_P): defined for FIXWV. - - * time.c (wmul): use MUL_OVERFLOW_FIXWV_P and only switch. - - * time.c (wmul): use mul which has Fixnum optimization. - - * time.c (rb_time_magnify): If WIDEVALUE_IS_WIDER, wmul() has the same - optimized logic, else mul() has also the similar logic for Fixnum. - - * time.c (rb_time_unmagnify): almost ditto. - -Tue Mar 22 03:10:09 2016 NARUSE, Yui - - * time.c (divmodv): add the case both arguments are Fixnum. - - * time.c (wquo): use quo which has Fixnum optimization. - - * time.c (wdivmod0): added for WIDEVALUE_IS_WIDER. - - * time.c (wdivmod): use wdivmod0 and divmodv. - divmodv has Fixnum optimization. - - * time.c (wdiv): use wdivmod0 and div to avoid the use of divmodv which - calls id_quo whose return value is array. - - * time.c (wmod): use wdivmod0 and mod to avoid the use of divmodv which - calls id_quo whose return value is array. - -Mon Mar 21 22:32:50 2016 NARUSE, Yui - - * internal.h (rb_fix_divmod_fix): like r54213, use FIX2NUM only if - x == FIXNUM_MIN && y == -1. This must be a rare case and it is - expected compiler to handle well. - -Mon Mar 21 22:15:11 2016 NARUSE, Yui - - * time.c (mod): Add Fixnum case. - - * time.c (quo): c can be Fixnum except a == FIXNUM_MIN && b == -1. - Such case can be optimized out because quo()'s argument is constant. - -Mon Mar 21 22:09:24 2016 Nobuyoshi Nakada - - * internal.h (rb_fix_mul_fix): multiply converted values, not - object VALUEs. - -Mon Mar 21 20:18:29 2016 Nobuyoshi Nakada - - * common.mk (TEST_EXCLUDES, EXCLUDE_TESTFRAMEWORK): use full spell - long option. - - * cygwin/GNUmakefile.in (MSYS2_ARG_CONV_EXCL): suppress path name - conversions by msys2. [ruby-dev:49525] [Bug #12199] - -Mon Mar 21 19:09:31 2016 Nobuyoshi Nakada - - * string.c (enc_succ_alnum_char): try to skip an invalid character - gap between GREEK CAPITAL RHO and SIGMA. - [ruby-core:74478] [Bug #12204] - -Mon Mar 21 18:55:49 2016 Nobuyoshi Nakada - - * node.c (rb_gc_mark_node): NODE_MATCH2 can have nd_args, u3, - since r54100. - -Sun Mar 20 21:17:13 2016 NAKAMURA Usaku - - * internal.h (rb_int128t2big): declare only when HAVE_INT128_T. - fixed a compile error with VC++ introduced at r54203. - -Sun Mar 20 20:10:14 2016 NARUSE, Yui - - * internal.h (DLONG): defined if long is 32bit (and LONG_LONG is 64bit; - but LONG_LONG is always defined as 64bit), or there's int128_t. - - * internal.h (DL2NUM): defined if DLONG is defined. - - * internal.h (rb_fix_mul_fix): defined for `Fixnum * Fixnum`. - - * insns.def (opt_mul): use rb_fix_mul_fix(). - - * numeric.c (fix_mul): ditto. - - * time.c (mul): ditto. - -Sun Mar 20 18:53:49 2016 Nobuyoshi Nakada - - * numeric.c (fix_gt, fix_ge, fix_lt, fix_le): optimize comparisons - Fixnum against Bignum by rb_big_cmp in inversed order without - new Bignum instance. - -Sun Mar 20 18:44:52 2016 NARUSE, Yui - - * time.c (add): remove FIXABLE() which is in LONG2NUM(). - - * time.c (sub): ditto. - - * time.c (mul): ditto. - -Sun Mar 20 04:46:02 2016 NARUSE, Yui - - * bignum.c (rb_big_cmp): reduce the code. - - * bignum.c (rb_big_eq): If normalized bignum is still bignum, - it must be larger than fixnum. - -Sat Mar 20 00:58:00 2016 Kenta Murata - - * include/ruby/intern.h (rb_big_odd_p, rb_big_even_p): move to - internal.h so that they are exported only for ruby itself. - - * internal.h (rb_big_odd_p, rb_big_even_p): ditto. - -Sat Mar 19 21:56:23 2016 Nobuyoshi Nakada - - * test/lib/test/unit.rb (Test::Unit::StatusLine#failed): defer - failed messages until the end in verbose mode, to get rid of - interleaving failures with progress messages. - -Sat Mar 19 21:53:35 2016 Nobuyoshi Nakada - - * numeric.c (fix_cmp): invert the result as the comparison is - inverted. - -Sat Mar 19 18:32:00 2016 Kenta Murata - - * numeric.c (int_to_f): raise NotImplementedError when a receiver - class is unknown. - - * test/-ext-/integer/test_my_integer.rb (test_my_integer_to_f): modify - a test for the above change. - -Sat Mar 19 18:21:00 2016 Kenta Murata - - * bignum.c (Bignum#<=>): remove it because they are unified with - Integer#<=>. - - * numeric.c (Integer#<=>, Fixnum#<=>): move <=> method from Fixnum to - Integer. - - * numeric.c (int_cmp): add this method for Integer#<=>. - - * test/-ext-/integer/test_my_integer.rb (test_my_integer_cmp): add a - test to examine Integer#<=> for unknown subclasses. - -Sat Mar 19 14:46:18 2016 Nobuyoshi Nakada - - * iseq.c (rb_iseq_compile_with_option): make the parser in mild - error. - - * load.c (rb_load_internal0): ditto. - - * parse.y (yycompile0): return the error message within the error - to be raised. [Feature #11951] - - * parse.y (parser_compile_error): accumulate error messages in the - error_buffer. - -Sat Mar 19 03:57:13 2016 NARUSE, Yui - - * time.c (LOCALTIME): organize #ifdefs. - - * time.c (GMTIME): define only ifndef HAVE_STRUCT_TM_TM_GMTOFF. - -Sat Mar 19 03:53:31 2016 NARUSE, Yui - - * configure.in (rb_cv_member_struct_tm_tm_gmtoff): For Linux (glibc) - define _BSD_SOURCE for time.h to define struct tm.tm_gmtoff. - - * time.c: define _BSD_SOURCE at the top. - -Sat Mar 19 03:00:50 2016 Rei Odaira - - * test/-ext-/time/test_new.rb (test_timespec_new): change a gmtoff - test to a better one that does not depend on whether the current - time is in summer time or not. - -Fri Mar 19 00:00:00 2016 Kenta Murata - - * bignum.c (rb_big_to_f, Bignum#to_f): removed them because they are - unified with int_to_f and Integer#to_f. - - * numeric.c (int_to_f): treat Bignum values directly. - -Fri Mar 18 23:41:00 2016 Kenta Murata - - * numeric.c (int_to_f, fix_to_f): rename fix_to_f to int_to_f, and add - treatment for subclasses which don't have definitions of to_f method. - - * numeric.c (Integer#to_f, Fixnum#to_f): move to_f method from Fixnum - to Integer. - - * ext/-test-/integer/my_integer.c: define helper class for testing - to_f method for a subclass of Integer. - - * ext/-test-/integer/extconf.rb: ditto. - - * ext/-test-/integer/init.c: ditto. - - * test/-ext-/integer/test_my_integer.rb: examine to_f method for a - subclass of Integer. - -Fri Mar 18 22:32:00 2016 Kenta Murata - - * include/ruby/intern.h (rb_big_hash): Move to internal.h. - - * internal.h: ditto. - -Fri Mar 18 22:10:00 2016 Kenta Murata - - * bignum.c (Bignum#eql?): remove its definition because it is unified - with Numeric#eql?. - - * numeric.c (num_eql): treat Bignum values directly. - -Fri Mar 18 21:57:00 2016 Kenta Murata - - * bignum.c (rb_big_to_s, Bignum#to_s): remove its definition because - it is unified with Integer#to_s. - - * numeric.c (int_to_s): treat Bignum values directly. - -Fri Mar 18 21:30:00 2016 Kenta Murata - - * numeric.c (int_to_s): Move from fix_to_s. - - * numeric.c (Integer#to_s): Move from Fixnum#to_s. - -Fri Mar 18 16:22:24 2016 Victor Nawothnig - - * 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] - -Fri Mar 18 12:25:30 2016 Nobuyoshi Nakada - - * gc.c (tick): fix missing close parenthesis. [Fix GH-1291] - -Fri Mar 18 10:24:12 2016 Naotoshi Seo - - * ext/date/date_core.c (datetime_to_time): preserve timezone info - [Bug #12189] [Fix GH-1295] - -Fri Mar 18 10:17:00 2016 Kenta Murata - - * 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 Mar 18 02:35:12 2016 Naotoshi Seo - - * lib/time.rb (parse, strptime): Fix Time.parse/strptime does not - have compatibility with DateTime.parse/strptime in terms of parsing - timezone [Bug #12190] [Fix GH-1297] - -Fri Mar 18 02:17:00 2016 Kenta Murata - - * numeric.c (fix_zero_p, fix_even_p, fix_odd_p): remove needless - functions. - -Fri Mar 18 02:15:00 2016 Kenta Murata - - * numeric.c (int_even_p): treat Fixnum and Bignum values directly. - -Fri Mar 18 02:07:00 2016 Kenta Murata - - * bignum.c (Bignum#even?, Bignum#odd?): remove definitions - because they are unified with Integer#even? and Integer#odd?. - - * numeric.c (Fixnum#zero?, Fixnum#even?, Fixnum#odd?): remove - definitions because they are unified with Numeric#zero?, - Integer#even?, and Integer#odd?. - - * numeric.c (num_zero_p, int_odd_p): treat Fixnum and - Bignum values directly. - - * test/ruby/test_integer.rb (test_odd_p_even_p): remove meaningless - test case. - -Fri Mar 18 01:51:00 2016 Kenta Murata - - * bignum.c (rb_big_even_p, rb_big_odd_p): make them public functions - to be available in other source files. - - * include/ruby/intern.h (rb_big_even_p, rb_big_odd_p): add prototype - declarations. - -Fri Mar 18 00:25:56 2016 Tanaka Akira - - * enum.c (ary_inject_op): Implement the specialized code for sum of - float numbers. - -Fri Mar 18 00:15:05 2016 Yusuke Endoh - - * numeric.c (num_step): use rb_equal for zero check. rb_num_coerce_cmp - created an object which caused extra overhead. - -Thu Mar 17 22:21:34 2016 Nobuyoshi Nakada - - * include/ruby/ruby.h (RB_GC_GUARD_PTR): remove intermediate - macro, and expand for each RB_GC_GUARD. [Fix GH-1293] - -Thu Mar 17 22:08:33 2016 Nobuyoshi Nakada - - * compile.c (iseq_specialized_instruction): move specialization - for opt_newarray_max/min from translation phase. - -Thu Mar 17 21:52:09 2016 Yusuke Endoh - - * array.c, enum.c: make rdoc format consistent. - -Thu Mar 17 21:47:57 2016 Yusuke Endoh - - * NEWS: add Array#max, #min, and the optimization. [Feature #12172] - -Thu Mar 17 21:45:02 2016 Yusuke Endoh - - * compile.c (NODE_CALL): add optimization shortcut for Array#max/min. - Now `[x, y].max` is optimized so that a temporal array object is not - created in some condition. [Feature #12172] - - * insns.def (opt_newarray_max, opt_newarray_min): added. - -Thu Mar 17 21:35:52 2016 Yusuke Endoh - - * array.c (rb_ary_max, rb_ary_min): implement Array#max and min with - arguments. replace super call with rb_nmin_run. - - * enum.c (nmin_run): exported (as rb_nmin_run). - - * internal.h: added a prototype for rb_nmin_run. - -Thu Mar 17 21:24:52 2016 Yusuke Endoh - - * array.c (rb_ary_max, rb_ary_min): implement a block by itself instead - of delegating Enumerable#max/min. - -Thu Mar 17 21:09:34 2016 Yusuke Endoh - - * array.c (rb_ary_max, rb_ary_min): Array#max and Array#min added. - [Feature #12172] - - * internal.h (OPTIMIZED_CMP): moved from enum.c so that array.c can - use it. - - * test/ruby/test_array.rb (test_max, test_min): tests for Array#max - and Array#min. - - * test/ruby/test_enum.rb (test_max, test_min): revised a bit to test - Enumerable#max and #min explicitly. - -Thu Mar 17 21:02:42 2016 Yusuke Endoh - - * internal.c: struct cmp_opt_data added for refactoring out a data - structure for CMP_OPTIMIZABLE - - * array.c (struct ary_sort_data): use struct cmp_opt_data. - - * enum.c (struct min_t, max_t, min_max_t): use struct cmp_opt_data. - -Thu Mar 17 20:55:21 2016 Tanaka Akira - - * enum.c (ary_inject_op): Extracted from enum_inject. - -Thu Mar 17 18:39:04 2016 Tanaka Akira - - * enum.c (enum_inject): Implement the specialized code for sum of - integers including Bignums. - - * internal.h (rb_fix_plus): Declared to be usable from enum_inject. - - * numeric.c (rb_fix_plus): Defined. - -Thu Mar 17 17:20:28 2016 Anton Davydov - - * thread_sync.c: [DOC] Update documentation for Queue class - description. [Fix GH-1292] - -Thu Mar 17 17:14:51 2016 Dinar Valeev - - * gc.c (tick): Use __builtin_ppc_get_timebase for POWER arch. - [Fix GH-1291] - -Thu Mar 17 11:51:48 2016 NARUSE, Yui - - * 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 directly (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 - -Thu Mar 17 12:09:00 2016 Martin Duerst - - * enc/unicode.c: Fixed two macro definitions. - * test/ruby/enc/test_case_mapping.rb: Test cases that detected - the above bugs. - -Thu Mar 17 11:36:27 2016 Nobuyoshi Nakada - - * ext/socket/option.c (inspect_tcpi_msec): more accurate condition - for TCPI msec member inspection function. - [ruby-core:74388] [Bug #12185] - -Thu Mar 17 08:13:43 2016 Rei Odaira - - * test/-ext-/time/test_new.rb (test_timespec_new): Time#gmtoff values - are the same only when both or neither of the Time objects are in - summer time (daylight-saving time). - -Thu Mar 17 07:17:36 2016 Eric Hodel - - * marshal.c (r_object0): raise ArgumentError when linking to undefined - object. - -Thu Mar 17 00:45:00 2016 Kenta Murata - - * test/ruby/test_bignum.rb: Make sure to use Bignum values in the tests. - -Wed Mar 16 23:10:25 2016 Nobuyoshi Nakada - - * 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] - -Wed Mar 16 21:39:39 2016 NARUSE, Yui - - * enc/trans/JIS: update Unicode's notice. [Bug #11844] - -Wed Mar 16 20:03:35 2016 Nobuyoshi Nakada - - * proc.c (proc_binding): proc from symbol can not make a binding. - [ruby-core:74100] [Bug #12137] - -Wed Mar 16 18:42:45 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: Fixed and activated a test for Cherokee. - -Wed Mar 16 17:58:56 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: Fixed a logical error. - -Wed Mar 16 17:57:34 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: Adding tests for Cherokee. - One test not yet working. - (with Kimihito Matsui) - -Wed Mar 16 15:44:05 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: Adding tests for actual Unicode - case mapping. Fixing some aliasing issues. - (with Kimihito Matsui) - -Tue Mar 15 21:38:28 2016 Tanaka Akira - - * enum.c (enum_inject): Consider redefinition of Fixnum#+. - [ruby-dev:49510] [Bug#12178] Reported by usa. - -Tue Mar 15 20:32:57 2016 Tanaka Akira - - * enum.c (enum_inject): Implement the specialized code for :+ operator - for Fixnums. - -Tue Mar 15 20:21:01 2016 Tanaka Akira - - * enum.c (enum_inject): Implement the specialized code for self is an - array and a symbol operator is given. - -Tue Mar 15 16:29:51 2016 Martin Duerst - - * enc/unicode.c: Eliminating common code. - (with Kimihito Matsui) - -Tue Mar 15 16:17:09 2016 Martin Duerst - - * enc/unicode.c: Expansion of some code repetition in preparation for - elimination of common code pieces. - (with Kimihito Matsui) - -Tue Mar 15 13:49:23 2016 Martin Duerst - - * enc/unicode.c: Additional macros and code to use mapping data in - CaseMappingSpecials array. - (with Kimihito Matsui) - -Tue Mar 15 13:41:22 2016 Nobuyoshi Nakada - - * internal.h (rb_gc_mark_global_tbl): should be private, - but was accidentally exported. - -Tue Mar 15 12:51:06 2016 Marcus Stollsteimer - - * doc/extension.ja.rdoc: Fix RDoc markup in doc/extension*.rdoc. - [ci skip][Bug #12143][ruby-core:74143] - * doc/extension.rdoc: ditto. - -Tue Mar 15 09:56:41 2016 Ian Lunderskov - - * time.c: Minor typo in Time#dst? documentation. - [ci skip][fix GH-1290] - -Tue Mar 15 04:36:41 2016 Charles Oliver Nutter - - * test/ruby/test_rubyoptions.rb (test_disable): add tests for - --disable-gems and --disable-did_you_mean. - -Tue Mar 15 03:35:04 2016 Eric Hodel - - * marshal.c (r_object0): Fix Marshal crash for corrupt extended object. - -Tue Mar 15 01:22:27 2016 Charles Oliver Nutter - - * test/ruby/test_rubyoptions.rb: make version matching support - JRuby's version output. - -Mon Mar 14 19:05:39 2016 NARUSE, Yui - - * bignum.c (big2str_2bdigits): reduce div instruction. - -Mon Mar 14 18:39:53 2016 Martin Duerst - - * include/ruby/oniguruma.h, enc/unicode.c: Adjusting flag assignments - and macros to work with unified CaseMappingSpecials array. - (with Kimihito Matsui) - -Mon Mar 14 16:53:37 2016 Nobuyoshi Nakada - - * compile.c (compile_named_capture_assign): optimize named capture - assignments, by replacing repeating global variable accesses - with `dup`, and by returning the matched result instead of - re-getting it from the MatchData. - - * parse.y (reg_named_capture_assign_gen): build just assignment - nodes for the optimization. - -Mon Mar 14 16:02:59 2016 Nobuyoshi Nakada - - * file.c (ruby_is_fd_loadable): now return -1 if loadable but - may block. - - * ruby.c (open_load_file): wait to read by the result of - ruby_is_fd_loadable, without fstat. - -Mon Mar 14 13:38:38 2016 NARUSE, Yui - - * numeric.c (fix2str): improve r54092 like rb_int2big(). - -Mon Mar 14 10:02:23 2016 Eric Wong - - * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): document as MT-unsafe - [ruby-core:73803] [Bug #12069] - -Sun Mar 13 09:43:23 2016 Nobuyoshi Nakada - - * include/ruby/win32.h (O_SHARE_DELETE): change to fit Fixnum - limit. [ruby-core:74285] [Bug #12171] - -Sun Mar 13 09:15:45 2016 Nobuyoshi Nakada - - * numeric.c (rb_fix2str): fix edge case, accidentally generated - wrong Fixnum from LONG_MIN. - -Sat Mar 12 09:50:27 2016 Nobuyoshi Nakada - - * 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] - -Sat Mar 12 02:44:48 2016 Tanaka Akira - - * test/lib/test/unit.rb: describe !/REGEXP/ in the help message. - -Fri Mar 11 17:03:09 2016 Nobuyoshi Nakada - - * test/lib/test/unit.rb (Options#non_options): make regexp name - options prefixed with "!" negative filters. - - * common.mk (TEST_EXCLUDES): use negative filter to exclude memory - leak tests. -x option excludes test files, not test methods. - -Fri Mar 11 16:11:27 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Streamlining approach to - case mapping data not available from case folding by unifying all - three cases (special title, special upper, special lower). - * enc/unicode.c: Adjust macro names for above (macros are currently inactive). - (with Kimihito Matsui) - -Thu Mar 10 17:34:16 2016 Nobuyoshi Nakada - - * iseq.c (prepare_iseq_build): enable coverage by coverage_enabled - option, not by parse_in_eval flag in the thread context. - - * iseq.h (rb_compile_option_struct): add coverage_enabled flag. - - * parse.y (yycompile0): set coverage_enabled flag if coverage - array is made. - -Thu Mar 10 15:19:54 2016 Nobuyoshi Nakada - - * node.c (dump_option): nd_compile_option is a hidden hash object, - cannot call inspect on it. - -Thu Mar 10 09:49:54 2016 Rei Odaira - - * test/socket/test_socket.rb (test_udp_recvmsg_truncation): - AIX does not set the MSG_TRUNC flag for a message partially read - by recvmsg(2) with the MSG_PEEK flag set. - -Wed Mar 9 16:48:45 2016 Koichi Sasada - - * benchmark/driver.rb: fix my last commit (syntax error). - -Wed Mar 9 16:41:44 2016 Koichi Sasada - - * benchmark/driver.rb: fix output messages. - - * benchmark/memory_wrapper.rb: use respond_to? because - member? does not work well. - -Wed Mar 9 16:20:25 2016 Koichi Sasada - - * benchmark/driver.rb: support memory usage benchmark. - use `--measure-target=[target]'. - Now, we can use the following targets: - * real (default): real time which returns process time in sec. - * peak: peak memory usage (physical memory) in bytes. - * size: last memory usage (physical memory) in bytes. - - * benchmark/memory_wrapper.rb: ditto. - -Wed Mar 9 15:04:22 2016 Koichi Sasada - - * benchmark/bm_vm3_gc_old_full.rb: add GC.start benchmark. - - * benchmark/bm_vm3_gc_old_immediate.rb: ditto. - - * benchmark/bm_vm3_gc_old_lazy.rb: ditto. - -Wed Mar 9 14:59:11 2016 Koichi Sasada - - * benchmark/driver.rb: exit benchmarking if a benchmark process - receives signals. - -Wed Mar 9 13:22:49 2016 Nobuyoshi Nakada - - * test/lib/memory_status.rb: make Memory::Status independent of - MiniTest::Skip. - - * test/lib/test/unit/assertions.rb (assert_no_memory_leak): skip - if Memory::Status is not available. - -Wed Mar 9 09:19:55 2016 Rei Odaira - - * test/io/wait/test_io_wait.rb (test_wait_readwrite_timeout): - select(2) in AIX returns "readable" for the write-side fd - of a pipe, so it is not possible to use a pipe to test - the read-write timeout of IO#wait on AIX. - -Wed Mar 9 03:35:22 2016 Charles Oliver Nutter - - * test/ruby/test_require.rb (test_require_with_loaded_features_pop): - Only remove PATH so threads don't accidentally double-pop. - -Wed Mar 9 00:29:46 2016 Nobuyoshi Nakada - - * vm_method.c (rb_alias): the original name should be properly - available method_added method, set the name before calling the - hook. - -Wed Mar 9 00:07:03 2016 Nobuyoshi Nakada - - * lib/logger.rb (Logger::LogDevice#initialize): define using - keyword arguments. - -Tue Mar 8 23:37:07 2016 Charles Oliver Nutter - - * test/ruby/test_array.rb: split out the test for no stack error - on large input for test_permutation, test_repeated_permutation, - and test_repeated_combination, and make them all timeout:30. - -Tue Mar 8 17:20:21 2016 NARUSE, Yui - - * intern.h (rb_divmod): assume compilers `/` and `%` comply C99 - and reduce branching. If a compiler doesn't comply, add #ifdefs. - - * intern.h (rb_div): added for Ruby's behavior. - - * intern.h (rb_mod): added for Ruby's behavior. - - * insns.def (opt_div): use rb_div. - - * insns.def (opt_mod): use rb_mod. - - * numeric.c (fixdivmod): removed. - - * numeric.c (fix_divide): use rb_div. - - * numeric.c (fix_mod): use rb_mod. - - * numeric.c (fix_divmod): use rb_divmod. - -Tue Mar 8 17:53:09 2016 NARUSE, Yui - - * insns.def (opt_mod): show its method name on ZeroDivisionError. - [Bug #12158] - -Tue Mar 8 17:33:38 2016 NAKAMURA Usaku - - * win32/win32.c (rb_w32_write_console): now no need to check - ERROR_CALL_NOT_IMPLEMENTED because it is for old Win9X. - -Tue Mar 8 16:54:29 2016 NAKAMURA Usaku - - * win32/win32.c (rb_w32_write_console): stop the VT100 emulation if the - console supports it natively. - -Tue Mar 8 08:13:01 2016 Rei Odaira - - * test/net/imap/test_imap.rb (test_idle_timeout): Because of the - timeout specified in "imap.idle(0.2)", there is no guarantee that - the server thread has done all the work before the client thread - performs the assertions. It depends on the thread scheduling. - Add checks to avoid false positives (on AIX, particularly). - -Tue Mar 8 00:42:22 2016 NAKAMURA Usaku - - * ruby.c (warn_cr_in_shebang): meaningless check on DOSISH platforms. - fixed a test failure introduced at r53998. - -Tue Mar 8 00:27:53 2016 CHIKANAGA Tomoyuki - - * ext/tk/lib/tkextlib/tcllib/tablelist_tile.rb: fix method name typo. - [ruby-core:72513] [Bug #11893] The patch provided by Akira Matsuda. - - -Tue Mar 8 00:25:08 2016 CHIKANAGA Tomoyuki - - * ext/tk/lib/tkextlib/tcllib/toolbar.rb: fix method name typo. - [ruby-core:72511] [Bug #11891] The patch provided by Akira Matsuda. - - -Tue Mar 8 00:21:58 2016 CHIKANAGA Tomoyuki - - * ext/tk/lib/tkextlib/blt/tree.rb: fix method name typo. - [ruby-core:72510] [Bug #11890] The patch provided by Akira Matsuda. - - -Tue Mar 8 00:11:47 2016 CHIKANAGA Tomoyuki - - * 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 7 13:32:58 2016 Nobuyoshi Nakada - - * class.c (rb_define_class, rb_define_class_id_under): raise - ArgumentError if super is 0, deprecated behavior which has been - warned long time. - -Mon Mar 7 13:28:30 2016 Nobuyoshi Nakada - - * internal.h: move function declarations for class internals from - include/ruby/intern.h. - -Mon Mar 7 10:58:07 2016 Nobuyoshi Nakada - - * ext/win32ole/win32ole_event.c (rescue_callback): use - rb_write_error_str instead of rb_write_error, to respect - the encoding and prevent the message from GC. - - * internal.h (rb_write_error_str): export. - -Mon Mar 7 01:38:41 2016 Rei Odaira - - * 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. - -Sun Mar 6 22:43:41 2016 Nobuyoshi Nakada - - * io.c (rb_obj_display): [DOC] fix output of Array, as Array#to_s - is same as Array#inspect since 1.9. - -Sat Mar 5 09:50:58 2016 Rei Odaira - - * 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. - -Sat Mar 5 09:17:54 2016 Rei Odaira - - * 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. - -Sat Mar 5 07:36:27 2016 Rei Odaira - - * 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. - -Sat Mar 5 07:14:10 2016 Rei Odaira - - * 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. - -Sat Mar 5 03:07:40 2016 Rei Odaira - - * thread_pthread.c (getstack): __pi_stacksize returned by - pthread_getthrds_np() is wrong on AIX. Use - __pi_stackend - __pi_stackaddr instead. - -Fri Mar 4 19:19:42 2016 Koichi Sasada - - * gc.c: use 2 bits with unsigned int for rb_objspace::flags::mode - because it always returns 0 to 2 (non-negative value). - -Fri Mar 4 18:42:08 2016 Koichi Sasada - - * gc.c: rename "enum gc_stat" to "enum gc_mode" - because there is a same name (no related) function gc_stat(). - - Also gc_stat_* are renamed to gc_mode_*, - gc_stat_transition() to gc_mode_transition(), - rb_objspace::flags::stat is renamed to rb_objspace::flags::mode. - - Change rb_objspace::flags::mode from 2 bits to 3 bits because VC++ - returns negative enum value with 2 bits. - - * gc.c (gc_mode): add a macro to access rb_objspace::flags::mode - with verification code (verification is enabled only on - RGENGC_CHECK_MODE > 0). - - * gc.c (gc_mode_set): same macro for setter. - -Fri Mar 4 09:28:18 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.6.1. - Please see entries of 2.6.0 and 2.6.1 on - https://github.com/rubygems/rubygems/blob/master/History.txt - [fix GH-1270] Patch by @segiddins - -Thu Mar 3 14:09:00 2016 Nobuyoshi Nakada - - * lib/ostruct.rb (modifiable?, new_ostruct_member!, table!): - rename methods for internal use with suffixes and make private, - [ruby-core:71069] [Bug #11587] - -Wed Mar 2 16:28:48 2016 Nobuyoshi Nakada - - * vm_eval.c (method_missing): call by found method entry and get - rid of searching the same method entry twice. - - * vm_eval.c (vm_call0_body): calling method_missing method is - method_missing(). - -Wed Mar 2 15:13:33 2016 herwinw - - * lib/xmlrpc.rb: Removed broken parser named XMLScanStreamParser. - It's not works with current Ruby version. - [fix GH-1271][ruby-core:59588][Bug #9369] - * lib/xmlrpc/config.rb: ditto. - * lib/xmlrpc/parser.rb: ditto. - -Wed Mar 2 15:08:33 2016 herwinw - - * lib/xmlrpc.rb: Removed broken parser named XMLTreeParser. - Required gem of its parser didn't compile on newer Ruby versions. - [fix GH-1271][ruby-core:59590][Bug #9370] - * lib/xmlrpc/config.rb: ditto. - * lib/xmlrpc/parser.rb: ditto. - -Tue Mar 1 11:25:48 2016 Nobuyoshi Nakada - - * lib/fileutils.rb: use keyword arguments instead of option - hashes. - -Mon Feb 29 16:50:20 2016 hanachin - - * array.c (rb_ary_push_m): [DOC] Remove trailing comma from - Array#push example, as other Array examples doesn't put trailing - comma. [Fix GH-1279] - -Mon Feb 29 16:31:01 2016 Nobuyoshi Nakada - - * common.mk, tool/mkconfig.rb: set cross_compiling option from - Makefile, but not from rbconfig.rb, which is just going to be - created by this command. - -Sun Feb 28 23:13:49 2016 C.J. Collier - - * configure.in: Add summary to end of configure output. - [Fix GH-1275] - -Sun Feb 28 20:23:36 2016 Masatoshi SEKI - - * lib/drb/drb.rb (error_print): Add verbose failure messages and - avoid infamous DRb::DRbConnError. [Feature #12101] - -Sun Feb 28 13:40:46 2016 Nobuyoshi Nakada - - * error.c (nometh_err_initialize): add private_call? parameter. - - * error.c (nometh_err_private_call_p): add private_call? method, - to tell if the exception raised in private form FCALL or VCALL. - [Feature #12043] - - * vm_eval.c (make_no_method_exception): append private_call? - argument. - - * vm_insnhelper.c (ci_missing_reason): copy FCALL flag. - -Sun Feb 28 10:19:47 2016 Ryan T. Hosford - - * array.c (rb_ary_and): clarify that set intersection returns the - unique elements common to both arrays. - - * array.c (rb_ary_or): clarify that union preserves the order from - the given arrays. - -Sat Feb 27 17:05:29 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Reducing size of TitleCase - table by eliminating duplicates. - (with Kimihito Matsui) - -Fri Feb 26 14:40:48 2016 Nobuyoshi Nakada - - * numeric.c (num_step_scan_args): comparison String with Numeric - should raise TypeError. it is an invalid type, but not a - mismatch the number of arguments. [ruby-core:62430] [Bug #9810] - -Fri Feb 26 14:39:39 2016 Nobuyoshi Nakada - - * doc/extension.rdoc, doc/extension.ja.rdoc: add editor local - variables, with commenting out by :enddoc: directives which are - just ignored unless code object mode. [Bug #12111] - -Fri Feb 26 12:25:56 2016 SHIBATA Hiroshi - - * doc/extension.ja.rdoc: removed rendering error caused by editor specific - configuration on http://docs.ruby-lang.org/en/trunk/extension_rdoc.html . - [Bug #12111][ruby-core:73990] - -Fri Feb 26 11:21:41 2016 herwinw - - * lib/xmlrpc.rb: Removed references to NQXML. It's obsoleted parser. - [fix GH-1245][ruby-core:59593][Feature #9371] - * lib/xmlrpc/config.rb: ditto. - * lib/xmlrpc/parser.rb: ditto. - -Fri Feb 26 11:10:19 2016 Rick Salevsky - - * lib/tmpdir.rb: Unify to coding-style for method definition. - [fix GH-1252] - -Fri Feb 26 11:02:04 2016 SHIBATA Hiroshi - - * README.md: update markdown syntax for anchor tag. - [fix GH-1265] Patch by @lukBarros - -Fri Feb 26 10:52:29 2016 Alex Boyd - - * lib/irb.rb: avoid to needless truncation when using back_trace_limit option. - [fix GH-1205][ruby-core:72773][Bug #11969] - -Fri Feb 26 08:11:58 2016 Aaron Patterson - - * gem_prelude.rb: Reduce system calls by activating the `did_you_mean` - gem before requiring the gem. Activating the gem puts the gem on - the load path, where simply requiring the file will search every gem - that's installed until it can find a gem that contains the - `did_you_mean` file. - -Thu Feb 25 19:04:13 2016 Martin Duerst - - * enc/unicode/case-folding.rb: Adding possibility for debugging output - for TitleCase table in casefold.h. - (with Kimihito Matsui) - -Wed Feb 24 22:31:13 2016 Martin Duerst - - * include/ruby/oniguruma.h: Rearranging flag assignments and making - space for titlecase indices; adding additional macros to add or - extract titlecase index; adding comments for better documentation. - * enc/unicode.c: Moving some macros to include/ruby/oniguruma.h; - activating use of titlecase indices. - (with Kimihito Matsui) - -Wed Feb 24 21:03:04 2016 Tanaka Akira - - * random.c (limited_rand): Add a specialized path for when the limit fits - in 32 bit. - -Tue Feb 23 21:52:24 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Outputting actual titlecase - data (new table, with indices from other tables). - * enc/unicode.c: Ignoring titlecase data indices for the moment. - (with Kimihito Matsui) - -Tue Feb 23 15:21:14 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Reading casing data from - SpecialCasing.txt. - (with Kimihito Matsui) - -Mon Feb 22 18:33:55 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Adding flag for title-case, - not yet operational. - (with Kimihito Matsui) - -Mon Feb 22 18:17:03 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Fixed bug that avoided inclusion - of compatibility characters in upper-/lower-case mappings. - (with Kimihito Matsui) - -Sun Feb 21 13:57:18 2016 Nobuyoshi Nakada - - * cgi/escape/escape.c: Optimize CGI.unescape performance by C ext - for ASCII-compatible encodings. [Fix GH-1250] - -Sun Feb 21 13:56:57 2016 Nobuyoshi Nakada - - * cgi/escape/escape.c: Optimize CGI.unescapeHTML performance by C - ext for ASCII-compatible encodings. [Fix GH-1242] - -Sat Feb 20 15:38:16 2016 Eric Wong - - * doc/extension.rdoc: update paths for defs/ directory - -Sat Feb 20 14:44:15 2016 Lucas Buchala - - * vm_eval.c (rb_mod_module_eval): [DOC] Fix documentation - signature for Module#module_eval. [Fix GH-1258] - -Sat Feb 20 14:40:44 2016 Adam O'Connor - - * README.md: a few grammatical changes to the main Ruby README.md. - [Fix GH-1259] - -Sat Feb 20 13:04:22 2016 Nobuyoshi Nakada - - * dir.c (push_pattern, push_glob): deal with read paths as UTF-8 - to stat later, on Windows as well as OS X. - [ruby-core:73868] [Bug #12081] - -Sat Feb 20 01:53:33 2016 Nobuyoshi Nakada - - * object.c (rb_mod_const_get): make error message at uninterned - string consistent with symbols. [ruby-dev:49498] [Bug #12089] - -Fri Feb 19 23:37:52 2016 Masahiro Tomita - - * lib/find.rb (Find#find): raise with the given path name if it - does not exist. [ruby-dev:49497] [Bug #12087] - -Fri Feb 19 12:44:57 2016 Martin Duerst - - * enc/unicode.c: Activated use of case mapping data in CaseUnfold_11 array. - (with Kimihito Matsui) - -Fri Feb 19 11:08:32 2016 Nobuyoshi Nakada - - * ext/extmk.rb: add cygwin case, nothing excluded. - [ruby-core:73806] [Bug#12071] - -Thu Feb 18 21:32:15 2016 Kazuhiro NISHIYAMA - - * man/irb.1: fix output in EXAMPLES. - -Thu Feb 18 21:05:47 2016 Nobuyoshi Nakada - - * string.c (sym_match_m): delegate to String#match but not - String#=~. [ruby-core:72864] [Bug #11991] - -Thu Feb 18 14:15:38 2016 Shota Fukumori - - * re.c: Add MatchData#named_captures - [Feature #11999] [ruby-core:72897] - - * test/ruby/test_regexp.rb(test_match_data_named_captures): Test for above. - - * NEWS: News about MatchData#named_captures. - -Wed Feb 17 21:41:29 2016 Nobuyoshi Nakada - - * defs/id.def (predefined): add idLASTLINE and idBACKREF for $_ - and $~ respectively. - - * parse.y: use idLASTLINE and idBACKREF instead of rb_intern. - -Wed Feb 17 20:23:38 2016 Nobuyoshi Nakada - - * string.c (rb_str_init): fix segfault and memory leak, consider - wide char encoding terminator. - -Wed Feb 17 12:14:59 2016 NARUSE, Yui - - * string.c (rb_str_init): introduce String.new(capacity: size) - [Feature #12024] - -Tue Feb 16 19:10:08 2016 Martin Duerst - - * enc/unicode/case-folding.rb, casefold.h: Used only first element - (rather than all) of target in CaseUnfold_11 array. - (with Kimihito Matsui) - -Tue Feb 16 18:24:38 2016 Nobuyoshi Nakada - - * numeric.c (compare_with_zero): fix variable name, rb_cmperr - requires VALUEs but not an ID. - -Tue Feb 16 17:34:18 2016 Nobuyoshi Nakada - - * dir.c (rb_dir_s_empty_p): add Dir.empty? method, which tells the - argument is the name of an empty directory. [Feature #10121] - -Tue Feb 16 09:51:20 2016 Nobuyoshi Nakada - - * tool/rbinstall.rb (without_destdir): just strip a drive letter - which is prepended by with_destdir. - pointed out by @DavidEGrayson. - https://github.com/ruby/ruby/commit/0e5f9ae#commitcomment-16101763 - -Tue Feb 16 04:42:13 2016 NARUSE, Yui - - * insns.def (opt_plus): simply use LONG2NUM() instead of wrongly - complex overflow case. - - * insns.def (opt_sub): ditto. - -Tue Feb 16 02:49:41 2016 Nobuyoshi Nakada - - * tool/rbinstall.rb (without_destdir): compare with the destdir - after stripping a drive letter, on dosish platforms. - pointed out by @DavidEGrayson. - https://github.com/ruby/ruby/commit/d0cf23b#commitcomment-16100407 - -Mon Feb 15 15:44:09 2016 Nobuyoshi Nakada - - * parse.y (parse_ident): allow keyword arguments just after a - method where the same name local variable is defined. - [ruby-core:73816] [Bug#12073] - -Mon Feb 15 14:43:28 2016 Martin Duerst - - * enc/unicode/case-folding.rb: Added debugging option - (with Kimihito Matsui) - -Sun Feb 14 17:31:50 2016 Lars Kanis - - * lib/mkmf.rb (with_{cpp,c,ld}flags): copy caller strings not to - be modified, in append_{cpp,c,ld}flags respectively. - [Fix GH-1246] - -Sun Feb 14 16:18:57 2016 Nobuyoshi Nakada - - * eval.c (setup_exception): set the cause only if it is explicitly - given or not set yet. [Bug #12068] - -Sat Feb 13 21:44:58 2016 Tanaka Akira - - * hash.c (rb_hash_invert): [DOC] more examples. - -Sat Feb 13 17:30:49 2016 Nobuyoshi Nakada - - * lib/uri/generic.rb (URI::Generic#find_proxy): support CIDR in - no_proxy. [ruby-core:73769] [Feature#12062] - -Sat Feb 13 17:11:58 2016 Fabian Wiesel - - * lib/uri/generic.rb (find_proxy): exclude white-spaces and allow - for a leading dot in the domain name in no_proxy. - [ruby-core:54542] [Feature #8317] - -Fri Feb 12 12:20:56 2016 Nobuyoshi Nakada - - * error.c (name_err_initialize, nometh_err_initialize): [DOC] fix - argument positions. optional parameters except for the message - are placed at the last. - -Fri Feb 12 11:49:49 2016 Anthony Dmitriyev - - * net/ftp.rb: add NullSocket#closed? to fix closing not opened - connection. [Fix GH-1232] - -Fri Feb 12 11:17:38 2016 Bogdan - - * re.c (rb_reg_initialize_m): [DOC] fix missing right bracket. - [Fix GH-1243] - -Thu Feb 11 14:57:58 2016 Nobuyoshi Nakada - - * configure.in (RUBY_CHECK_SIZEOF, RUBY_DEFINT): fix for types - which are conditionally available depending on architectures - when universal binary, e.g., __int128. - -Thu Feb 11 06:26:18 2016 NARUSE, Yui - - * configure.in (RUBY_DEFINT): use Parameter Expansion. - -Thu Feb 11 05:33:24 2016 NARUSE, Yui - - * configure.in (int128_t): don't check HAVE_XXX (for example - HAVE___INT128) because RUBY_CHECK_SIZEOF() don't define it for - config.h and use of $ac_cv_sizeof___int128 alternates the check. - (and don't need to define because users shouldn't know that) - -Wed Feb 10 12:03:41 2016 Nobuyoshi Nakada - - * configure.in (ARFLAGS): check if deterministic mode flag is - effective, which is on by default on Ubuntu. - -Tue Feb 9 16:36:23 2016 Naotoshi Seo - - * lib/logger.rb: Remove block from Logger.add as it's not needed - patch provided by Daniel Lobato Garcia [fix GH-1240] [Bug #12054] - -Tue Feb 9 14:32:23 2016 Zachary Scott - - * ext/zlib/zlib.c: Document mtime header behavior with patch by @schneems - Fixes [GH-1129]: https://github.com/ruby/ruby/pull/1129 - -Tue Feb 9 13:52:49 2016 Zachary Scott - - * re.c: Remove deprecated kcode argument from Regexp.new and compile - patch provided by Dylan Pulliam [Bug #11495] - -Mon Feb 8 21:26:19 2016 Martin Duerst - - * enc/unicode/case-folding.rb, enc/unicode/casefold.h: Flags for - upper/lower conversion added (titlecase and SpecialCasing still missing) - (with Kimihito Matsui) - -Mon Feb 8 20:43:57 2016 Martin Duerst - - * string.c, enc/unicode.c: Disassociating ONIGENC_CASE_FOLD flag from - ONIGENC_CASE_DOWNCASE. - (with Kimihito Matsui) - -Mon Feb 8 13:00:17 2016 Martin Duerst - - * enc/unicode.c: Shortened macros for enc/unicode/casefold.h to - single-letter; use flags in casefold.h for logic. - - * enc/unicode/case-folding.rb: Added flag for case folding. - Changed parameter passing. - - * enc/unicode/casefold.h: New flags added. - (with Kimihito Matsui) - -Mon Feb 8 10:30:10 2016 Nobuyoshi Nakada - - * ruby.c (feature_option): raise a runtime error if ambiguous - feature name is given, in the future. [Bug #12050] - -Mon Feb 8 09:43:57 2016 Martin Duerst - - * common.mk: Removed enc/unicode/casefold.h from automatic build because - some CI systems don't have gperf. Creation of enc/unicode/casefold.h - is now possible with make unicode-up. This is intended as a temporary measure. - -Sun Feb 7 22:10:08 2016 Martin Duerst - - * common.mk: Added two more precondition files for enc/unicode/casefold.h - - * enc/unicode.c: Added shortening macros for enc/unicode/casefold.h - - * enc/unicode/case-folding.rb: Fixed file encoding for CaseFolding.txt - to ASCII-8BIT (should fix some ci errors). Clarified usage. Created - class MapItem. Partially implemented class CaseMapping. - (with Kimihito Matsui) - -Sun Feb 7 14:12:32 2016 Martin Duerst - - * enc/unicode/case-folding.rb: Fixing parameter passing. - (with Kimihito Matsui) - -Sun Feb 7 11:44:03 2016 Martin Duerst - - * enc/unicode/case-folding.rb: New classes CaseMapping/CaseMappingDummy - to pass as parameters; not yet implemented or used. - (with Kimihito Matsui) - -Sun Feb 7 11:16:00 2016 Martin Duerst - - * common.mk: using new option in recipe for enc/unicode/casefold.h - - * enc/unicode/case-folding.rb: Correctly specify argument to new option. - (with Kimihito Matsui) - -Sun Feb 7 10:43:27 2016 Martin Duerst - - (this commit message applies to the previous commit) - * common.mk: explicit recipe for enc/unicode/casefold.h - - * enc/unicode/case-folding.rb: Adding -m option to prepare for using - multiple data files. - (with Kimihito Matsui) - -Sat Feb 6 22:30:57 2016 Nobuyoshi Nakada - - * lib/cgi/util.rb (escapeHTML, unescapeHTML): consider - ASCII-incompatible encodings. [Fix GH-1239] - -Sat Feb 6 15:18:28 2016 Martin Duerst - - * test/ruby/enc/test_regex_casefold.rb: Added data-based testing for - String#downcase :fold. - - * enc/unicode.c: Fixed a range error (lowest non-ASCII character affected - by case operations is U+00B5, MICRO SIGN) - - * test/ruby/enc/test_case_mapping.rb: Explicit test for case folding of - MICRO SIGN to Greek mu. - (with Kimihito Matsui) - -Sat Feb 6 14:51:23 2016 Martin Duerst - - * test/ruby/enc/test_regex_casefold.rb: Tests for three case folding - primitives (mbc_case_fold, get_case_fold_codes_by_str, - apply_all_case_fold) in the various encodings. Currently only known - good encodings are tested to avoid test failures. For bug hunting, - start by adding more encodings with - generate_test_casefold encoding - (with Kimihito Matsui) - -Sat Feb 6 14:37:16 2016 Martin Duerst - - * enc/unicode.c, test/ruby/enc/test_case_mapping.rb: Implemented :fold - option for String#downcase by using case folding data from - regular expression engine, and added a few simple tests. - (with Kimihito Matsui) - -Fri Feb 5 20:08:59 2016 Martin Duerst - - * test/ruby/enc/test_case_mapping.rb: added tests for :ascii option. - (with Kimihito Matsui) - -Fri Feb 5 12:22:20 2016 NARUSE, Yui - - * insns.def (opt_mult): Use int128_t for overflow detection. - - * bignum.c (rb_uint128t2big): added for opt_mult. - - * bignum.c (rb_uint128t2big): added for rb_uint128t2big.. - - * configure.in: define int128_t, uint128_t and related MACROs. - Initially introduced by r41379 but reverted by r50749. - -Thu Feb 4 21:05:17 2016 Martin Duerst - - * enc/unicode.c: Activated :ascii flag for ASCII-only case conversion - (with Kimihito Matsui) - -Thu Feb 4 17:38:01 2016 Nobuyoshi Nakada - - * re.c (reg_set_source): make source string frozen without - copying. - - * re.c (rb_reg_initialize_m): refactor initialization with - encoding. - -Thu Feb 4 15:35:29 2016 Nobuyoshi Nakada - - * string.c (rb_fstring_enc_new, rb_fstring_enc_cstr): functions to - make fstring with encoding. - -Thu Feb 4 14:42:29 2016 Martin Duerst - - * common.mk: Added Unicode data file SpecialCasing.txt to be additionally - downloaded (with Kimihito Matsui) - -Thu Feb 4 12:39:08 2016 joker1007 - - * cgi/escape/escape.c: Optimize CGI.escape performance by C ext - for ASCII-compatible encodings. [Fix GH-1238] - -Thu Feb 4 11:53:56 2016 Martin Duerst - - * common.mk: Introduce two variables (UNICODE_DATA_DIR and - UNICODE_SRC_DATA_DIR) to eliminate repetitions. - -Wed Feb 3 12:13:20 2016 NARUSE, Yui - - * string.c (str_new_frozen): if the given string is embeddedable - but not embedded, embed a new copied string. [Bug #11946] - -Wed Feb 3 08:25:38 2016 boshan - - * ext/openssl/ossl_pkey.c (Init_ossl_pkey): [DOC] Fix typo - "encrypted" to "decrypted". [Fix GH-1235] - -Wed Feb 3 08:21:32 2016 Seiei Miyagi - - * ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): Fix - Ripper.lex error in dedenting squiggly heredoc. heredoc tree is - also an array of Elem in the outer tree. [Fix GH-1234] - -Wed Feb 3 02:33:39 2016 NARUSE, Yui - - * re.c (rb_reg_prepare_enc): use already compiled US-ASCII regexp - if given string is ASCII only. - 121.2s to 113.9s on my x86_64-freebsd10.2 Intel Core i5 661 - -Tue Feb 2 13:02:03 2016 NARUSE, Yui - - * re.c: Introduce RREGEXP_PTR. - patch by dbussink. - partially merge https://github.com/ruby/ruby/pull/497 - - * include/ruby/ruby.h: ditto. - - * gc.c: ditto. - - * ext/strscan/strscan.c: ditto. - - * parse.y: ditto. - - * string.c: ditto. - -Tue Feb 2 09:08:27 2016 SHIBATA Hiroshi - - * lib/rubygems/specification.rb: `coding` is effective only first - line except shebang. - - * lib/rubygems/package.rb, lib/rubygems/package/*: ditto. - -Mon Feb 1 21:41:58 2016 SHIBATA Hiroshi - - * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.5.2. - It supports to enable frozen string literal and add `--norc` option for - disable to `.gemrc` configuration. - See 2.5.2 release notes for other fixes and enhancements. - https://github.com/rubygems/rubygems/blob/a8aa3bac723f045c52471c7b9328310a048561e0/History.txt#L3 - -Sun Jan 31 12:33:13 2016 Dan Kreiger - - * test/drb/ut_large.rb (multiply, avg, median): add additional - math operations to DRbLarge. [Fix GH-1086] - -Sun Jan 31 12:19:15 2016 Kuniaki IGARASHI - - * test/ruby/test_file_exhaustive.rb (test_lstat): Add lacking test - for File#lstat. [Fix GH-1231] - -Sun Jan 31 12:15:33 2016 Prayag Verma - - * doc/standard_library.rdoc: fix typo [Fix GH-1230] - Spelling mistakes - - outputing > outputting - publich > publish - -Sat Jan 30 15:18:07 2016 Nobuyoshi Nakada - - * vm_eval.c (rb_check_funcall_with_hook): also should call the - given hook before returning Qundef when overridden respond_to? - method returned false. [ruby-core:73556] [Bug #12030] - -Fri Jan 29 17:40:07 2016 Nobuyoshi Nakada - - * win32/file.c (rb_readlink): drop garbage after the substitute - name, as rb_w32_read_reparse_point returns the expected buffer - size but "\??\" prefix is dropped from the result. - - * win32/win32.c (w32_readlink): ditto, including NUL-terminator. - -Fri Jan 29 17:07:27 2016 NAKAMURA Usaku - - * win32/win32.c (fileattr_to_unixmode, rb_w32_reparse_symlink_p): volume - mount point should be treated as directory, not symlink. - [ruby-core:72483] [Bug #11874] - - * win32/win32.c (rb_w32_read_reparse_point): check the reparse point is - a volume mount point or not. - - * win32/file.c (rb_readlink): follow above change (but this pass won't - be used). - -Fri Jan 29 16:17:07 2016 Lucas Buchala - - * enum.c (enum_take_while, enum_drop_while): rename block - parameter to obj, since they are generic objects. [Fix GH-1226] - -Fri Jan 29 14:15:26 2016 Nobuyoshi Nakada - - * lib/erb.rb (ERB::Compiler#detect_magic_comment): allow - frozen-string-literal in comment as well as encoding. - - * lib/erb.rb (ERB#def_method): insert def line just before the - first non-comment and non-empty line, not to leave duplicated - and stale magic comments. - -Fri Jan 29 11:13:33 2016 Jeremy Evans - - * lib/erb.rb (ERB#set_eoutvar): explicitly make mutable string as - a buffer to make ERB work with --enable-frozen-string-literal. - [ruby-core:73561] [Bug #12031] - -Fri Jan 29 10:44:56 2016 SHIBATA Hiroshi - - * lib/net/http/header.rb: Warn nil variable on HTTP Header. - It caused to NoMethodError. [fix GH-952][fix GH-641] Patch by @teosz - * test/net/http/test_httpheader.rb: Added test for nil HTTP Header. - -Thu Jan 28 17:31:43 2016 Nobuyoshi Nakada - - * ext/socket/socket.c (sock_gethostname): support unlimited size - hostname. - -Wed Jan 27 21:03:45 2016 SHIBATA Hiroshi - - * test/-ext-/string/test_capacity.rb: Added missing library. - -Wed Jan 27 18:53:40 2016 Martin Duerst - - * enc/unicode.c: Fixed bit mask in macro OnigCodePointCount - -Wed Jan 27 17:54:42 2016 Martin Duerst - - * enc/unicode.c: Protect code point count by macro, in order to - be able to use the remaining bits for flags. - (with Kimihito Matsui) - -Wed Jan 27 16:34:35 2016 boshan - - * lib/tempfile.rb (Tempfile#initialize): [DOC] the first parameter - `basename` is optional and defaulted to an empty string since - [GH-523]. [Fix GH-1225] - -Wed Jan 27 16:25:54 2016 Koichi ITO - - * array.c (rb_ary_dig): [DOC] fix the exception class to be raised - when intermediate object does not have dig method. TypeError - will be raised now. [Fix GH-1224] - -Tue Jan 26 19:36:15 2016 Aggelos Avgerinos - - * array.c (permute0, rpermute0): [DOC] Substitute indexes -> - indices in documentation for consistency. [Fix GH-1222] - -Tue Jan 26 15:21:37 2016 Eric Wong - - * compile.c (caller_location): use rb_fstring_cstr for "" - (it is converted to fstring anyways inside rb_iseq_new_with_opt) - * iseq.c (iseqw_s_compile): ditto - * iseq.c (rb_iseq_new_main): use rb_fstring_cstr for "
" - * vm.c (Init_VM): ditto, share with with above - * iseq.c (iseqw_s_compile_file): rb_fstring before rb_io_t->pathv - share "
" with above - * vm.c (rb_binding_add_dynavars): fstring "" immediately - -Tue Jan 26 15:14:01 2016 Kazuki Yamaguchi - - * compile.c (iseq_peephole_optimize): don't apply tailcall - optimization to send/invokesuper instructions with blockiseq. - This is a follow-up to the changes in r51903; blockiseq is now - the third operand of send/invokesuper instructions. - [ruby-core:73413] [Bug #12018] - -Tue Jan 26 14:26:46 2016 Eric Wong - - * signal.c (sig_list): use fstring for hash key - * test/ruby/test_signal.rb (test_signal_list_dedupe_keys): added - -Tue Jan 26 13:08:34 2016 Nobuyoshi Nakada - - * signal.c (rb_f_kill): should immediately deliver reserved - signals SIGILL and SIGFPE, not only SIGSEGV and SIGBUS. - -Tue Jan 26 07:57:28 2016 Joseph Tibbertsma - - * gc.c (RVALUE_PAGE_WB_UNPROTECTED): fix a typo of argument name. - [Fix GH-1221] - -Mon Jan 25 17:26:54 2016 Eric Wong - - * ruby_assert.h (RUBY_ASSERT_WHEN): fix reference to macro name - * vm_core.h: include ruby_assert.h before using - [ruby-core:73371] - -Mon Jan 25 15:55:30 2016 Nobuyoshi Nakada - - * symbol.c (sym_check_asciionly): more informative error message - with the encoding name and the inspected content. - [ruby-core:73398] [Feature #12016] - -Mon Jan 25 09:38:26 2016 SHIBATA Hiroshi - - * test/ruby/test_string.rb: added testcase for next!, succ and succ! - [fix GH-1213] Patch by @K0mAtoru - -Mon Jan 25 09:32:25 2016 SHIBATA Hiroshi - - * lib/webrick/httpservlet/filehandler.rb: fix documentation for namespace. - [fix GH-1219][ci skip] Patch by @leafac - -Sun Jan 24 19:34:23 2016 Eric Wong - - * vm_insnhelper.c (vm_check_if_namespace): tiny size reduction - -Sun Jan 24 18:12:36 2016 Martin Duerst - - * common.mk: Simplifying Unicode data file download logic to make - it more reliable (including additional fix not in r53633) [Bug #12007] - -Sun Jan 24 16:54:11 2016 Nobuyoshi Nakada - - * ext/io/wait/wait.c (io_wait_readwrite): [EXPERIMENTAL] allow to - wait for multiple modes, readable and writable, at once. the - arguments may change in the future. [Feature #12013] - -Sat Jan 23 22:30:59 2016 K0mA - - * test/ruby/test_array.rb (test_keep_if): Add test for - Array#keep_if separate from Array#select! [Fix GH-1218] - -Sat Jan 23 20:54:26 2016 SHIBATA Hiroshi - - * common.mk: revert r53633. It broke rubyci and travis. - https://travis-ci.org/ruby/ruby/builds/104259623 - -Sat Jan 23 20:10:29 2016 Shugo Maeda - - * range.c (range_eqq): revert r51585 because rb_call_super() is - called in range_include() and thus r51585 doesn't work when the - receiver Range object consists of non linear objects such as Date - objects. - [ruby-core:72908] [Bug #12003] - -Sat Jan 23 18:37:37 2016 Martin Duerst - - * ChangeLog: Fixing wrong time on previous commit, and adding - previous commit message to svn [ci skip] - -Sat Jan 23 18:30:30 2016 Martin Duerst - - * common.mk: Simplifying Unicode data file download logic to make - it more reliable [Bug #12007] - -Sat Jan 23 16:29:42 2016 Martin Duerst - - * tool/downloader.rb: Fixed a logical error, improved documentation - -Sat Jan 23 11:42:43 2016 Peter Suschlik - - * README.md: Use SVG Travis badge over PNG for better quality and - device support. [Fix GH-1214] [Fix GH-1216] - -Sat Jan 23 11:29:16 2016 Pascal Betz - - * lib/csv.rb: Update documentation of CSV header converter for - r45498, [GH-575]. [Fix GH-1215] - -Fri Jan 22 17:36:46 2016 Nobuyoshi Nakada - - * vm_core.h (VM_ASSERT): use RUBY_ASSERT instead of rb_bug. - - * error.c (rb_assert_failure): assertion with stack dump. - - * ruby_assert.h (RUBY_ASSERT): new header for the assertion. - -Fri Jan 22 00:25:57 2016 NARUSE, Yui - - * regparse.c (fetch_name_with_level): allow non word characters - at the first character. [Feature #11949] - - * regparse.c (fetch_name): ditto. - -Thu Jan 21 17:34:01 2016 NARUSE, Yui - - * marshal.c (r_object0): honor Marshal.load post proc - value for TYPE_LINK. by Hiroshi Nakamura - https://github.com/ruby/ruby/pull/1204 fix GH-1204 - -Thu Jan 21 16:37:50 2016 NARUSE, Yui - - * Makefile.in (update-rubyspec): fix r53208 like r53451. - -Wed Jan 20 20:58:25 2016 NAKAMURA Usaku - - * common.mk, Makefile.in: update-config_files is only for Unix - platforms. - -Wed Jan 20 17:13:39 2016 Nobuyoshi Nakada - - * tool/extlibs.rb: add --cache option to change cache directory. - -Tue Jan 19 17:03:40 2016 Martin Duerst - - * common.mk: Added Unicode data file CaseFolding.txt to be additionally - downloaded (with Kimihito Matsui) - -Tue Jan 19 10:09:58 2016 Sho Hashimoto - - * lib/shell.rb (Shell.debug_output_exclusive_unlock): remove - because Mutex#exclusive_unlock was already deleted. [fix GH-1185] - -Tue Jan 19 09:38:27 2016 Nick Cox - - * vm_method.c: fix grammar in respond_to? warning. - [fix GH-1047] - -Mon Jan 18 14:37:07 2016 Nobuyoshi Nakada - - * parse.y (parser_here_document): an escaped newline is not an - actual newline, and the rest part should not be dedented. - [ruby-core:72855] [Bug #11989] - -Mon Jan 18 12:04:34 2016 SHIBATA Hiroshi - - * test/ruby/test_string.rb: Added extra testcase for test_rstrip_bang - and test_lstrip_bang. [fix GH-1178] Patch by @Matrixbirds - -Mon Jan 18 11:47:27 2016 SHIBATA Hiroshi - - * string.c: fix a typo. [fix GH-1202][ci skip] Patch by @sunboshan - -Sun Jan 17 21:15:30 2016 NARUSE, Yui - - * 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 Jan 17 20:40:10 2016 Martin Duerst - - * string.c: Any kind of option is now taking the new code path for - upcase/downcase/capitalize/swapcase. :lithuanian can be used for - testing if no specific option is desired. - * test/ruby/enc/test_case_mapping.rb: Adjusted to above. - (with Kimihito Matsui) - -Sun Jan 17 20:10:10 2016 Martin Duerst - - * enc/unicode.c: Fixed a logical error and some comments. - * test/ruby/enc/test_case_mapping.rb: Made tests more general. - (with Kimihito Matsui) - -Sun Jan 17 17:41:41 2016 Martin Duerst - - * enc/unicode.c: Removed artificial expansion for Turkic, - added hand-coded support for Turkic, fixed logic for swapcase. - * string.c: Made use of new case mapping code possible from upcase, - capitalize, and swapcase (with :lithuanian as a guard). - * test/ruby/enc/test_case_mapping.rb: Adjusted for above. - (with Kimihito Matsui) - -Sun Jan 17 15:30:57 2016 Nobuyoshi Nakada - - * 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] - -Sun Jan 17 14:43:01 2016 Kuniaki IGARASHI - - * test/ruby/test_env.rb: [Fix GH-1201] - * Extract test code for ENV#keep_if from ENV#select_bang - * Add a test case for ENV#select_bang,keep_if - -Sun Jan 17 14:42:25 2016 Kuniaki IGARASHI - - * test/ruby/test_env.rb: [Fix GH-1201] - * Extract test code for ENV#delete_if from ENV#reject_bang - * Add a test case for ENV#reject_bang,delete_if - -Sun Jan 17 14:40:22 2016 Nobuyoshi Nakada - - * ext/socket/option.c (check_size): extract a macro to check - binary data size, with a consistent message. - - * ext/socket/option.c (sockopt_byte): fix error message, - sizeof(int) differs from sizeof(unsigned char) in general. - -Sat Jan 16 21:16:21 2016 Nobuyoshi Nakada - - * parse.y (xstring): reset heredoc indent after dedenting, - so that following string literal would not be dedented. - [ruby-core:72857] [Bug #11990] - -Sat Jan 16 17:24:24 2016 Martin Duerst - - * enc/unicode.c: Artificial mapping to test buffer expansion code. - * string.c: Fixed buffer expansion logic. - * test/ruby/enc/test_case_mapping.rb: Tests for above. - (with Kimihito Matsui) - -Sat Jan 16 16:47:14 2016 SHIBATA Hiroshi - - * ext/openssl/lib/openssl/pkey.rb: Added 2048 bit DH parameter. - * test/openssl/test_pkey_dh.rb: ditto. - -Sat Jan 16 10:51:19 2016 SHIBATA Hiroshi - - * enc/unicode.c: fix implicit conversion error with clang. fixup r53548. - * string.c: ditto. - -Sat Jan 16 10:31:00 2016 SHIBATA Hiroshi - - * common.mk: test-sample was changed to test-basic. - [Feature #11982][ruby-core:72823] - * basictest/runner.rb: ditto. rename from tool/rubytest.rb. - * basictest/test.rb: ditto. rename from sample/test.rb. - * defs/gmake.mk: picked from r53540 - * sample/test.rb: backward compatibility for chkbuild. - -Sat Jan 16 10:23:23 2016 Martin Duerst - - * string.c, enc/unicode.c: New code path as a preparation for Unicode-wide - case mapping. The code path is currently guarded by the :lithuanian - option to avoid accidental problems in daily use. - * test/ruby/enc/test_case_mapping.rb: Test for above. - * string.c: function 'check_case_options': fixed logical errors - (with Kimihito Matsui) - -Fri Jan 15 20:20:20 2016 Naohisa Goto - - * regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): The value of - UNALIGNED_WORD_ACCESS should be used to determine whether - unaligned word access is allowed or not. After this commit, - ./configure CPPFLAGS="-DUNALIGNED_WORD_ACCESS=0" disables - unaligned word access even on platforms that support the feature. - -Fri Jan 15 16:12:10 2016 Nobuyoshi Nakada - - * parse.y (string1): reset heredoc indent for each string literal - so that concatenated string would not be dedented. - [ruby-core:72857] [Bug #11990] - -Thu Jan 14 20:01:00 2016 NARUSE, Yui - - * lib/uri/generic.rb (URI::Generic#to_s): change encoding to - UTF-8 as Ruby 2.2/ by Koichi ITO - https://github.com/ruby/ruby/pull/1188 fix GH-1188 - -Thu Jan 14 17:36:16 2016 Nobuyoshi Nakada - - * variable.c (rb_f_global_variables): add matched back references - only, as well as defined? operator. - -Thu Jan 14 16:12:09 2016 Nobuyoshi Nakada - - * sprintf.c (rb_str_format): format exact number more exactly. - -Thu Jan 14 15:08:43 2016 Tony Arcieri - - * Remove 512-bit DH group. It's affected by LogJam Attack. - https://weakdh.org/ - [fix GH-1196][Bug #11968][ruby-core:72766] - -Thu Jan 14 11:44:29 2016 Nobuyoshi Nakada - - * variable.c (rb_f_global_variables): add $1..$9 only if $~ is - set. fix the condition removed at r14014. - -Wed Jan 13 17:21:45 2016 SHIBATA Hiroshi - - * .travis.yml: removed commented-out code. - -Wed Jan 13 17:14:54 2016 SHIBATA Hiroshi - - * .travis.yml: removed osx code. follow up with r53517 - -Wed Jan 13 16:56:19 2016 Nobuyoshi Nakada - - * iseq.c (rb_iseq_mark): mark parent iseq to prevent dynamically - generated iseq by eval from GC. [ruby-core:72620] [Bug #11928] - -Wed Jan 13 03:42:58 2016 Eric Wong - - * class.c (Init_class_hierarchy): resolve name for rb_cObject ASAP - * object.c (rb_mod_const_set): move name resolution to rb_const_set - * variable.c (rb_const_set): do class resolution here - [ruby-core:72807] [Bug #11977] - -Wed Jan 13 00:37:12 2016 Satoshi Ohmori - - * man/ruby.1: fix double word typo. [Fix GH-1194] - -Tue Jan 12 21:01:09 2016 Benoit Daloze - - * common.mk: update URL and name for the Ruby spec suite. - -Tue Jan 12 19:52:19 2016 sorah (Shota Fukumori) - - * 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. - -Mon Jan 12 18:41:41 2016 Martin Duerst - - * string.c: made a variable name more grammatically correct - -Mon Jan 12 18:34:34 2016 Martin Duerst - - * string.c: minor grammar fix [ci skip] - -Mon Jan 12 16:09:09 2016 Martin Duerst - - * test/ruby/enc/test_casing_options.rb: Tests for option - parsing/checking for upcase/downcase/capitalize/swapcase - (see r53503; with Kimihito Matsui) - -Mon Jan 12 16:03:03 2016 Martin Duerst - - * string.c: Added option parsing/checking for upcase/downcase/ - capitalize/swapcase (with Kimihito Matsui) - -Mon Jan 11 21:28:28 2016 Martin Duerst - - * include/ruby/oniguruma.h: Added flags needed for upcase/downcase - Unicode addition (with Kimihito Matsui) - -Mon Jan 11 09:50:24 2016 Nobuyoshi Nakada - - * configure.in: check if the API version number is consistent with - the program version number. - -Sun Jan 10 20:57:25 2016 Nobuyoshi Nakada - - * 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] - -Sun Jan 10 15:45:10 2016 Nobuyoshi Nakada - - * include/ruby/missing.h (explicit_bzero_by_memset_s): remove - inline implementation by memset_s, which needs a macro before - including headers and can cause problems in extension libraries - by the order of the macro and headers. - -Sun Jan 10 13:41:36 2016 Eric Wong - - * io.c (rb_deferr): remove long obsolete global - -Sun Jan 10 09:14:42 2016 Eric Wong - - * ext/psych/lib/psych/visitors/yaml_tree.rb (visit_String): - eliminate chomp - * lib/net/http.rb (connect): eliminate delete - * lib/net/http/header.rb (basic_encode): ditto - * lib/net/imap.rb (authenticate): eliminate gsub - (self.encode_utf7): shorten delete arg - * lib/net/smtp.rb (base64_encode): eliminate gsub - * lib/open-uri.rb (OpenURI.open_http): eliminate delete - * lib/rss/rss.rb: ditto - * lib/securerandom.rb (base64): ditto - (urlsafe_base64): eliminate delete! - * lib/webrick/httpauth/digestauth.rb (split_param_value): - eliminate chop - * lib/webrick/httpproxy.rb (do_CONNECT): eliminate delete - (setup_upstream_proxy_authentication): ditto - [ruby-core:72666] [Feature #11938] - -Sat Jan 9 23:19:14 2016 Kuniaki IGARASHI - - * test/ruby/test_hash.rb (test_try_convert): Add test for - Hash.try_convert. [Fix GH-1190] - -Sat Jan 9 23:15:25 2016 Jon Moss - - * ext/openssl/ossl.c: Add missing variables to documentation - examples. [Fix GH-1189] - -Sat Jan 9 18:25:57 2016 Nobuyoshi Nakada - - * symbol.h (is_attrset_id): ASET is an attrset ID. fix - unexpected safe call instead of an ordinary ASET. - -Sat Jan 9 10:44:33 2016 Nobuyoshi Nakada - - * configure.in, win32/setup.mak: extract RUBY_PROGRAM_VERSION from - RUBY_VERSION in version.h instead of RUBY_API_VERSION numbers in - include/ruby/version.h, and cut it into version numbers. - -Sat Jan 9 07:13:33 2016 Koichi Sasada - - * gc.c: rename PAGE_* to HEAP_PAGE_* because PAGE_SIZE is used - in Mac OS X. - - * test/ruby/test_gc.rb: catch up this fix. - -Sat Jan 9 05:45:40 2016 Koichi Sasada - - * gc.c: PAGE_BITMAP_PLANES (the number of bitmap) is 4, not 3. - -Sat Jan 9 05:42:57 2016 Koichi Sasada - - * gc.c: rename constant names HEAP_* to PAGE_*. - - Keys of GC::INTERNAL_CONSTANTS are also renamed. - - * test/ruby/test_gc.rb: catch up this fix. - -Fri Jan 8 22:30:06 2016 Akinori MUSHA - - * doc/regexp.rdoc: [DOC] Elaborate on the \G anchor. [ci skip] - -Fri Jan 8 19:49:27 2016 Koichi Sasada - - * gc.c: remove heap_page::body. Instead of this field, - heap_page::start field works well. - -Fri Jan 8 19:31:52 2016 Koichi Sasada - - * gc.c: rename rb_heap_t::page_length to rb_heap_t::total_pages. - - `page_length' is not clear (we may understand with length of - a page). - -Fri Jan 8 17:07:14 2016 Koichi Sasada - - * gc.c: remove heap_page::heap. This field is only used to recognize - whether a page is in a tomb or not. Instead of this field, - heap_page::flags::in_tomb (1 bit field) is added. - - Also type of heap_page::(total|free|final)_slots are changed from - int to short. 2B is enough for them. - -Fri Jan 8 09:33:59 2016 Shugo Maeda - - * iseq.c (rb_iseq_compile_with_option): move variable initialization - code to avoid maybe-uninitialized warnings by gcc 4.8. - -Fri Jan 8 00:03:22 2016 Shugo Maeda - - * enum.c (enum_min, enum_max): do the same optimization as r53454. - -Thu Jan 7 22:32:21 2016 Kenta Murata - - * 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 Jan 7 22:02:21 2016 Shugo Maeda - - * enum.c (enum_minmax): optimize object comparison in - Enumerable#minmax. - -Thu Jan 7 14:49:12 2016 Nobuyoshi Nakada - - * 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 Jan 7 11:34:14 2016 Nobuyoshi Nakada - - * include/ruby/backward.h (ruby_show_copyright_to_die): for source - code backward compatibility. - - * ruby.c (process_options): return Qtrue to exit the process - successfully. - - * version.c (ruby_show_copyright): no longer exit. - -Wed Jan 6 17:22:53 2016 Nobuyoshi Nakada - - * lib/optparse.rb (OptionParser#order!): add `into` optional - keyword argument to store the results. [Feature #11191] - -Tue Jan 5 21:44:37 2016 SHIBATA Hiroshi - - * ChangeLog: fix wrong class name. - -Tue Jan 5 21:43:50 2016 Kuniaki IGARASHI - - * test/ruby/test_string.rb(test_chr): added test for String#chr - [fix GH-1179] - -Tue Jan 5 21:32:26 2016 Kuniaki IGARASHI - - * test/ruby/test_numeric.rb (test_nonzero_p): added test for Numeric#nonzero? - [fix GH-1187] - -Tue Jan 5 11:47:23 2016 Damir Gaynetdinov - - * doc/marshal.rdoc: Clarify object references example, that the - reference is same object. [Fix GH-1156] - -Tue Jan 5 05:06:51 2016 Eric Wong - - * ext/stringio/stringio.c (strio_binmode): implement to set encoding - * test/stringio/test_stringio.rb (test_binmode): new test - [ruby-core:72699] [Bug #11945] - -Mon Jan 4 15:44:37 2016 Sho Hashimoto - - * variable.c (rb_mod_deprecate_constant): [DOC] added - documentation for Module#deprecate_constant. [ci skip] - -Mon Jan 4 15:36:38 2016 Sho Hashimoto - - * thread_sync.c: [DOC] remove SizedQueue#close argument. - [ci skip] - -Mon Jan 4 10:14:24 2016 SHIBATA Hiroshi - - * test/coverage/test_coverage.rb: ignored test when enabled to coverage. - It lead to crash with `make test-all`. - -Mon Jan 4 08:10:44 2016 Yuichiro Kaneko - - * insns.def (opt_case_dispatch): Move a comment to the - appropriate position. - [ci skip] - -Sun Jan 3 23:55:13 2016 Nobuyoshi Nakada - - * lib/rubygems/security.rb (DIGEST_ALGORITHM, KEY_ALGORITHM): - should check same name as the used constants. - [ruby-core:72674] [Bug #11940] - -Sun Jan 3 19:22:01 2016 Nobuyoshi Nakada - - * aclocal.m4: add fallback file for non-aclocal environments. - [ruby-core:72683] [Bug #11942] - -Sun Jan 3 13:56:49 2016 Yuichiro Kaneko - - * eval_error.c (rb_print_undef): Use `rb_method_visibility_t` - instead of `int`. - * eval_intern.h (rb_print_undef): ditto - * proc.c (mnew_internal): ditto - * vm_method.c (rb_export_method): ditto - [Misc #11649] [ruby-core:71311] [fix GH-1078] - -Sun Jan 3 12:12:09 2016 Nobuyoshi Nakada - - * acinclude.m4: rename aclocal.m4, which should be generated by - aclocal. [ruby-core:72675] [Bug #11941] - -Sat Jan 2 21:07:55 2016 Eric Wong - - * thread_sync.c (queue_do_pop): avoid cast with Qfalse - (rb_szqueue_push): ditto, use queue_sleep wrapper - -Sat Jan 2 16:16:14 2016 Masatoshi SEKI - - * lib/erb.rb: Allow ERB subclass to add token easily. - [Feature #11936] - - * test/erb/test_erb.rb: ditto. - -Sat Jan 2 14:44:31 2016 Nobuyoshi Nakada - - * parse.y (regexp): set_yylval_num sets u1, should use nd_tag - instead of nd_state. [ruby-core:72638] [Bug #11932] - -Sat Jan 2 02:27:22 2016 Marc-Andre Lafortune - - * lib/ostruct.rb: Fix case of frozen object with initializer. - Bug revealed by RubySpec [ruby-core:72639] - -Fri Jan 1 22:01:52 2016 Kazuhiro NISHIYAMA - - * NEWS: mention CSV's liberal_parsing option. - -Fri Jan 1 19:38:23 2016 okkez - - * doc/NEWS-2.3.0: fix double words typo. - [ci skip][fix GH-1183] - -Fri Jan 1 15:28:56 2016 Nobuyoshi Nakada - - * compile.c (remove_unreachable_chunk): decrease count of - call_info in removed instructions. fix up r53402. - -Fri Jan 1 12:05:53 2016 Nobuyoshi Nakada - - * compile.c (remove_unreachable_chunk): remove unreferred label - to optimize away unreachable chunk. - -Fri Jan 1 11:42:57 2016 James Edward Gray II - - * lib/csv.rb (CSV): Add a liberal_parsing option. - Patch by Braden Anderson. [#11839] - * test/csv/test_features.rb: test liberal_parsing - -Fri Jan 1 10:27:28 2016 Nobuyoshi Nakada - - * tool/mkconfig.rb (RbConfig): prefix SDKROOT to oldincludedir - not includedir, the latter is outside the ruby installation. - [ruby-core:72496] [Bug #11881] - -Fri Jan 1 08:53:02 2016 Yuki Kurihara - - * test/ruby/test_lazy_enumerator.rb (test_take_bad_arg): Add test - code in case of Enumerator::Lazy#take called with negative number. - [ruby-dev:49467] [Bug #11933] - -Fri Jan 1 05:06:20 2016 Nobuyoshi Nakada - - * parse.y (parser_here_document): update indent for each line in - indented here document with single-quotes. - [ruby-core:72479] [Bug #11871] - -Fri Jan 1 03:26:44 2016 Nobuyoshi Nakada - - * lib/ostruct.rb (freeze): define deferred accessors before - freezing to get rid of an error when just reading frozen - OpenStruct. - -Thu Dec 31 14:36:45 2015 Marc-Andre Lafortune - - * lib/ostruct.rb: Fix new_ostruct_member to correctly avoid - redefinition [#11901] - -Thu Dec 31 02:45:12 2015 NARUSE, Yui - - * test/ruby/test_module.rb (test_classpath): r53376 may change - the order of m.constants. - `make TESTS='-v ruby/test_class.rb ruby/test_module.rb' test-all` - may fail after that. - http://rubyci.s3.amazonaws.com/tk2-243-31075/ruby-trunk/log/20151230T164202Z.log.html.gz - -Thu Dec 31 02:20:00 2015 Benoit Daloze - - * common.mk (help): Fix typo. - -Wed Dec 30 20:53:09 2015 SHIBATA Hiroshi - - * lib/net/http/responses.rb: Added new response class for 451 status code. - * lib/net/http.rb: documentation for HTTPUnavailableForLegalReasons - -Wed Dec 30 20:45:45 2015 SHIBATA Hiroshi - - * lib/webrick/httpstatus.rb: Added HTTP 451 Status Code. - [fix GH-1167] Patch by @MuhammetDilmac - https://tools.ietf.org/html/draft-tbray-http-legally-restricted-status-00 - -Wed Dec 30 20:25:52 2015 SHIBATA Hiroshi - - * doc/syntax/calling_methods.rdoc: fix old operator for safe navigation - operator. [ci skip][fix GH-1182] Patch by @dougo - -Wed Dec 30 16:43:23 2015 Kuniaki IGARASHI - - * test/ruby/test_string.rb (test_ord): Add test for String#ord. - [Fix GH-1181] - -Wed Dec 30 11:28:57 2015 Nobuyoshi Nakada - - * lib/forwardable.rb (def_instance_delegator): adjust backtrace of - method body by tail call optimization. adjusting the delegated - target is still done by deleting backtrace. - - * lib/forwardable.rb (def_single_delegator): ditto. - -Wed Dec 30 11:18:42 2015 Elliot Winkler - - * 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. - -Wed Dec 30 09:58:56 2015 Nobuyoshi Nakada - - * object.c (rb_class_inherited_p): search the corresponding - ancestor to prepended module from prepending class itself. - [ruby-core:72493] [Bug #11878] - -Wed Dec 30 09:20:00 2015 Yuki Kurihara - - * test/stringio/test_io.rb (test_flag): add assertion for error when - text and binary mode are mixed. - [ruby-dev:49465] [Feature #11921] - -Wed Dec 30 08:43:59 2015 Yuki Kurihara - - * test/stringio/test_stringio.rb (test_initialize): add test for - StringIO#initialize. [ruby-core:72585] [Feature #11920] - -Wed Dec 30 05:19:24 2015 Eric Wong - - * class.c (struct clone_const_arg): adjust for id_table - (clone_const): ditto - (clone_const_i): ditto - (rb_mod_init_copy): ditto - (rb_singleton_class_clone_and_attach): ditto - (rb_include_class_new): ditto - (include_modules_at): ditto - * constant.h (rb_free_const_table): ditto - * gc.c (free_const_entry_i): ditto - (rb_free_const_table): ditto - (obj_memsize_of): ditto - (mark_const_entry_i): ditto - (mark_const_tbl): ditto - * internal.h (struct rb_classext_struct): ditto - * object.c (rb_mod_const_set): resolve class name on assignment - * variable.c (const_update): replace with const_tbl_update - (const_tbl_update): new function - (fc_i): adjust for id_table - (find_class_path): ditto - (autoload_const_set): st_update => const_tbl_update - (rb_const_remove): adjust for id_table - (sv_i): ditto - (rb_local_constants_i): ditto - (rb_local_constants): ditto - (rb_mod_const_at): ditto - (rb_mod_const_set): ditto - (rb_const_lookup): ditto - [ruby-core:72112] [Feature #11614] - -Wed Dec 30 04:10:13 2015 CHIKANAGA Tomoyuki - - * thread_pthread.c (rb_thread_create_timer_thread): destroy attr even - if pthread_create() failed. - -Wed Dec 30 02:55:09 2015 Eric Wong - - * thread_pthread.c (setup_communication_pipe): delay setting owner - (rb_thread_create_timer_thread): until thread creation succeeds - [ruby-core:72590] [Bug #11922] - -Tue Dec 29 19:12:46 2015 Nobuyoshi Nakada - - * ruby.c (proc_options): -W command line option should be able to - override -w in RUBYOPT environment variable. - -Tue Dec 29 17:54:16 2015 Nobuyoshi Nakada - - * eval.c (ignored_block): warn if a block is given to `using`, - which is probably for `Module.new`. - -Tue Dec 29 12:48:34 2015 Nobuyoshi Nakada - - * lib/ostruct.rb (OpenStruct): make respond_to? working on - just-allocated objects for workaround of Psych. - [ruby-core:72501] [Bug #11884] - -Tue Dec 29 10:35:00 2015 Kenta Murata - - * test/mkmf/test_have_func.rb (test_have_func): - Add assertion to examine the existence of HAVE_RUBY_INIT. - - * test/mkmf/test_have_func.rb (test_not_have_func): - Add assertion to examine the absence of HAVE_RUBY_INIT. - -Tue Dec 29 06:50:42 2015 Eric Wong - - * thread_sync.c: static classes - -Tue Dec 29 05:30:30 2015 Eric Wong - - * lib/resolv.rb (Resolv::IPv6.create): avoid modifying frozen - * test/resolv/test_dns.rb (test_ipv6_create): test for above - [Bug #11910] [ruby-core:72559] - -Mon Dec 28 14:55:57 2015 Kuniaki IGARASHI - - * test/ruby/test_string.rb (TestString#test_rstrip_bang): Add test - for String#rstrip!. [Fix GH-1176] - -Mon Dec 28 09:18:53 2015 Kuniaki IGARASHI - - * test/ruby/test_string.rb (TestString#test_lstrip_bang): Add test - for String#lstrip!. [Fix GH-1176] - -Sun Dec 27 23:32:26 2015 Masaki Suketa - - * ext/win32ole/win32ole.c (ole_variant2val): refactoring. - -Sun Dec 27 21:14:42 2015 NAKAMURA Usaku - - * process.c (rb_execarg_parent_start1): need to convert the encoding to - ospath's one. - -Sun Dec 27 20:54:22 2015 NAKAMURA Usaku - - * 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. - -Sun Dec 27 20:00:31 2015 SHIBATA Hiroshi - - * enc/x_emoji.h: fix dead-link. - -Sun Dec 27 19:55:55 2015 SHIBATA Hiroshi - - * doc/NEWS-2.3.0: fix a typo. - -Sun Dec 27 18:08:15 2015 Kuniaki IGARASHI - - * string.c (rb_str_lstrip_bang, rb_str_rstrip_bang): [DOC] Fix - ruby-doc comments for String#rstrip! and lstrip!. It looks like - dropped bang. [Fix GH-1175] - -Sun Dec 27 15:14:20 2015 Eric Wong - - * io.c (io_getpartial): remove unused kwarg from template - * test/ruby/test_io.rb (test_readpartial_bad_args): new - [Bug #11885] - -Sun Dec 27 11:50:53 2015 Kuniaki IGARASHI - - * test/ruby/test_string.rb (test_rstrip, test_lstrip): Add tests - for String#lstrip and rstrip. The test cases are used from - string.c ruby-doc comments. [Fix GH-1174] - -Sun Dec 27 11:47:46 2015 Kuniaki IGARASHI - - * test/ruby/test_string.rb (test_insert): Add test for - String#insert. The test cases are written in string.c - comments as a reference. [Fix GH-1173] - -Sun Dec 27 11:03:33 2015 Nobuyoshi Nakada - - * parse.y (show_bitstack): trace stack_type value if yydebug. - -Sun Dec 27 10:03:14 2015 Nobuyoshi Nakada - - * enc/depend (enc, trans): fix version dependency, shared object - files depend on the RUBY_SO_NAME value for runtime link. - -Sun Dec 27 09:47:20 2015 Masaki Suketa - - * ext/win32ole/win32ole.c (ole_vstr2wc, ole_variant2val): fix blank - string conversion. - [Bug #11880] - Thanks Akio Tajima for the patch! - -Sun Dec 27 09:34:53 2015 craft4coder - - * doc/extension.rdoc: [DOC] `nul` should be uppercase. - change 'nul' => 'NUL'. [Fix GH-1172] - -Sat Dec 26 18:29:01 2015 Kouhei Sutou - - * lib/xmlrpc/client.rb: Support SSL options in async methods of - XMLRPC::Client. - [Bug #11489] - Reported by Aleksandar Kostadinov. Thanks!!! - -Sat Dec 26 11:26:38 2015 Nobuyoshi Nakada - - * miniinit.c (Init_enc): add some common aliases of built-in - encodings. [ruby-core:72481] [Bug #11872] - -Fri Dec 25 22:43:26 2015 Nobuyoshi Nakada - - * configure.in: extract RUBY_RELEASE_DAY at generating Makefile. - - * version.h (RUBY_RELEASE_DATE): construct from RUBY_RELEASE_YEAR, - RUBY_RELEASE_MONTH, and RUBY_RELEASE_DAY. - -Fri Dec 25 21:33:06 2015 Yukihiro Matsumoto - - * version.h (RUBY_VERSION): 2.4.0 development has started. - -Fri Dec 25 14:12:12 2015 Martin Duerst - - * doc/ChangeLog-2.3.0, ext/tk/lib/tkextlib/SUPPORT_STATUS, - include/ruby/version.h: minor grammar fixes [ci skip] - -Fri Dec 25 08:23:22 2015 Tadashi Saito - - * compile.c, cont.c, doc, man: fix common misspelling. - [ruby-core:72466] [Bug #11870] - - -For the changes before 2.3.0, see doc/ChangeLog-2.3.0 -For the changes before 2.2.0, see doc/ChangeLog-2.2.0 -For the changes before 2.1.0, see doc/ChangeLog-2.1.0 -For the changes before 2.0.0, see doc/ChangeLog-2.0.0 -For the changes before 1.9.3, see doc/ChangeLog-1.9.3 -For the changes before 1.8.0, see doc/ChangeLog-1.8.0 - -Local variables: -coding: us-ascii -add-log-time-format: (lambda (&optional x y) - (let* ((time (or x (current-time))) - (system-time-locale "C") - (diff (+ (cadr time) 32400)) - (lo (% diff 65536)) - (hi (+ (car time) (/ diff 65536)))) - (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t))) -indent-tabs-mode: t -tab-width: 8 -change-log-indent-text: 2 -end: -vim: tabstop=8 shiftwidth=2 -- cgit v1.2.3