diff options
Diffstat (limited to 'jni/ruby/ChangeLog')
-rw-r--r-- | jni/ruby/ChangeLog | 13278 |
1 files changed, 13278 insertions, 0 deletions
diff --git a/jni/ruby/ChangeLog b/jni/ruby/ChangeLog new file mode 100644 index 0000000..f3c0387 --- /dev/null +++ b/jni/ruby/ChangeLog @@ -0,0 +1,13278 @@ +Tue Aug 18 22:52:50 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/downloader.rb: support old versions of ruby. + + * tool/downloader.rb: now can download gems by http if openssl is not + available (this may be danger!) + +Tue Aug 18 20:10:13 2015 Tanaka Akira <akr@fsij.org> + + * numeric.c (Init_Numeric): Fix document for Float::MIN and + Float::EPSILON. + +Mon Aug 17 23:07:47 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org> + + * lib/rubygems.rb: bump version to 2.4.5.1. this version fixed + CVE-2015-3900. + * lib/rubygems/remote_fetcher.rb: ditto. + * test/rubygems/test_gem_remote_fetcher.rb: added testcase for CVE-2015-3900 + +Mon Aug 17 23:00:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/win32/lib/win32/registry.rb (API#SetValue): data size should + be in bytes, not in chars. [ruby-core:70365] [Bug #11439] + +Mon Aug 17 23:00:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/win32/lib/win32/registry.rb (API#SetValue): add terminator + size, not 1 byte. [ruby-core:70365] [Bug #11439] + +Sun Aug 16 03:14:04 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (rb_memsearch): should match only char boundaries in wide + character encodings. [ruby-core:70220] [Bug #11413] + +Sun Aug 16 03:00:44 2015 Eric Wong <e@80x24.org> + + * symbol.h (struct RSymbol): add hashval field + * symbol.c (dsymbol_alloc): setup hashval field once + * hash.c (rb_any_hash): return RSymbol->hashval directly + * common.mk: hash.o depends on symbol.h + Thanks to Bruno Escherl <bruno@escherl.net> for the bug report + [ruby-core:70129] [Bug #11396] + +Fri Aug 14 16:30:43 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * transcode.c (rb_econv_set_replacement): target encoding name can + be empty now. [ruby-core:69841] [Bug #11324] + +Fri Aug 14 15:24:12 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (rb_any_hash): fix Float hash. rb_dbl_hash() returns a + Fixnum, but not a long. [Bug #9381] + +Fri Aug 14 15:09:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/json/parser/parser.rl: raise with messages in UTF-8 + encoding. [ruby-core:67386] [Bug #10705] + +Fri Aug 14 00:44:34 2015 Eric Wong <e@80x24.org> + + * io.c (rb_io_oflags_modestr): handle O_TRUNC correctly + * test/ruby/test_io.rb (test_reopen_stdio): new test + Patch-by: cremno phobia <cremno@mail.ru> + [ruby-core:69779] [Bug #11319] + +Thu Aug 13 01:25:26 2015 Benoit Daloze <eregontp@gmail.com> + + * lib/net/ftp.rb (makeport): close the TCPServer + when sending the port fails. + + * test/net/ftp/test_ftp.rb: test for above. + +Thu Aug 13 01:03:13 2015 Kazuki Tsujimoto <kazuki@callcc.net> + + * lib/net/http/response.rb (Net::HTTPResponse::Inflater#finish): + fix a bug that empty gzipped response body causes Zlib::BufError. + [ruby-core:68846] [Bug #11058] + + * test/net/http/test_httpresponse.rb: tests for the above. + +Thu Aug 13 01:03:13 2015 Kazuki Tsujimoto <kazuki@callcc.net> + + * lib/net/http/response.rb (Net::HTTPResponse#inflater): + fix TypeError. An exception object might be nil. + [ruby-core:68846] [Bug #11058] + +Thu Aug 13 00:03:24 2015 Aaron Patterson <tenderlove@ruby-lang.org> + + * .travis.yml: update libssl before running tests. + Thanks to Chris Sinjakli <chris@sinjakli.co.uk> for figuring out the + travis settings! + +Thu Aug 13 00:03:24 2015 Aaron Patterson <tenderlove@ruby-lang.org> + + * ext/openssl/lib/openssl/ssl.rb (module OpenSSL): raise a more + helpful exception when verifying the peer connection and an + anonymous cipher has been selected. [ruby-core:68330] [Bug #10910] + Thanks to Chris Sinjakli <chris@sinjakli.co.uk> for the patch. + + * test/openssl/test_ssl.rb (class OpenSSL): test for change + +Wed Aug 12 23:57:01 2015 NARUSE, Yui <naruse@ruby-lang.org> + + * ext/date/extconf.rb: try_cflags("-std=iso9899:1999") [Bug #10906] + ruby itself (including numeric.c) is built with strict compile + options including -std=iso9899:1999, but ext/date is not. + By the way -std=iso9899:1999 is not only a warning option but also + changes behavior like MACRO definitions for example INFINITY. + gcc on Solaris affect this. + +Wed Aug 12 23:53:39 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (waitpid): return immediately if interrupted. + reported by <takkanm AT gmail.com> [ruby-dev:49176] [Bug #11340] + +Wed Aug 12 01:05:58 2015 Jeremy Evans <merch-redmine@jeremyevans.net> + + * test/openssl/test_ssl.rb: Fix LocalJumpErrors being raised + in OpenSSL tests. [ruby-core:70020][Bug #11368] + +Wed Aug 12 00:54:29 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * array.c (rb_ary_repeated_permutation): fix buffer size, ALLOCV_N + already multiplies element size. + +Tue Aug 11 01:51:53 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * lib/timeout.rb (ExitException): leave Timeout::ExitException as an + alias of Timeout::Error for backward compatibility in stable branch. + [ruby-dev:49179] [Bug #11344] + +Tue Aug 11 01:51:53 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/timeout.rb (ExitException): removed internal exception class + and use Timeout::Error instead, as using throw/catch to isolate + each timeouts now. [ruby-dev:49179] [Bug #11344] + +Tue Aug 11 01:37:28 2015 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * test/net/http/test_httpresponse.rb + (HTTPResponseTest#test_read_body_content_encoding_deflate_uppercase): + fix a failure without zlib. + +Tue Aug 11 01:37:28 2015 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/response.rb (inflater): CONTENT_ENCODING can be upper + case. [ruby-core:69670] [Bug #11285] patched by Andy Chu + +Tue Aug 11 01:21:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm.c (m_core_hash_merge_ptr): copy the arguments to the machine + stack before rewinding the control frame pointer and leaving the + arguments outside valid region of the value stack. + [ruby-core:69969] [Bug #11352] + + * vm.c (REWIND_CFP): keep the arguments region inside the valid + value stack. [ruby-core:69969] [Bug #11352] + +Tue Aug 11 01:11:02 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_reverse): reversed string is not a substring, + and should not set coderange of the original string. + [ruby-dev:49189] [Bug #11387] + +Tue Aug 11 00:42:53 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (lambda_body): pop cmdarg stack for lookahead + token. [ruby-core:70067] [Bug #11380] + +Tue Aug 11 00:21:56 2015 NARUSE, Yui <naruse@ruby-lang.org> + + * ext/socket/extconf.rb: Solaris 11 has struct tcp_info.tcpi_ca_state, + but it is a dummy. + + * ext/socket/option.c: Solaris 11 doesn't have u_intN_t. + + * ext/socket/option.c: Solaris 11 needs inspect_tcpi_msec. + + * ext/socket/raddrinfo.c: Solaris 11 has AF_PACKET but doesn't have + related macros. + +Tue Aug 4 04:11:34 2015 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (strptime): Support %s.%N. + [ruby-core:68301] [Bug #10904] Patch by Sadayuki Furuhashi. + +Tue Aug 4 03:43:15 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * transcode.c (load_transcoder_entry): fix transcoder loading race + condition, by waiting in require. [ruby-dev:49106] [Bug #11277] + +Tue Aug 4 03:13:59 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * array.c (ary_ensure_room_for_push): check if array size will + exceed maximum size to get rid of buffer overflow. + [ruby-dev:49043] [Bug #11235] + + * array.c (ary_ensure_room_for_unshift, rb_ary_splice): ditto. + +Sat Jul 4 23:08:32 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * file.c (rb_file_load_ok): try opening file without gvl not to + lock entire process. [Bug #11060] + +Sat Jul 4 05:00:48 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/mkmf.rb (pkg_config): split --libs if --libs-only-l option + is not available. patch in [ruby-core:69428] by Hans Mackowiak. + [ruby-core:69421] [Bug #11201] + +Sat Jul 4 04:46:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (iseq_compile_each): out of range NTH_REF is always + nil. + + * parse.y (parse_numvar): check overflow of NTH_REF and range. + [ruby-core:69393] [Bug #11192] + + * util.c (ruby_scan_digits): make public and add length parameter. + +Sat Jul 4 04:35:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (rb_method_call_status): resolve refined method entry + to check if undefined. [ruby-core:69064] [Bug #11117] + +Sat Jul 4 04:35:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (rb_method_call_status): undefined refined method is + not callable unless using. [ruby-core:69064] [Bug #11117] + +Wed Jul 1 04:16:56 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org> + + * ext/bigdecimal/bigdecimal.gemspec: Fix require paths for released gem. + [fix GH-929] Patch by @voxik + * ext/io/console/io-console.gemspec: ditto. + +Wed Jul 1 04:15:38 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org> + + * ext/zlib/zlib.c: Fix indentation for rdoc. + [Bug #11221][ruby-core:69465] + +Sat Jun 27 22:51:59 2015 Shota Fukumori <her@sorah.jp> + + * ext/objspace/objspace_dump.c(dump_object): Return empty JSON object when + passed object is a special const, instead of SEGV. + Based patch by Kohei Suzuki (eagletmt). [ruby-core:69692] [Bug #11291] + + * test/objspace/test_objspace.rb(test_dump_special_consts): Test for above fix. + + +Wed Jun 17 02:53:59 2015 Koichi Sasada <ko1@atdot.net> + + * test/objspace/test_objspace.rb (test_dump_flags): relax pattern + because long_lived flag and marked flag can be false at major GC. + [Bug #10852] + +Mon Jun 15 03:24:23 2015 Koichi Sasada <ko1@atdot.net> + + * vm_insnhelper.c (lep_svar_set): add WBs. + +Fri Jun 12 01:39:49 2015 Eric Wong <e@80x24.org> + + * ext/socket/ancdata.c: use RB_GC_GUARD instead of volatile + [ruby-core:69419] [Feature #11198] + +Fri Jun 12 01:16:13 2015 Eric Wong <e@80x24.org> + + * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode, + ossl_asn1_decode_all): use RB_GC_GUARD instead of volatile + [ruby-core:69371] [Bug #11185] + +Fri Jun 12 01:14:00 2015 NARUSE, Yui <naruse@ruby-lang.org> + + * win32/win32.c (setup_overlapped): seek to the file end only when + writing (mode:a), not reading (mode:a+, read). + +Fri Jun 12 01:11:52 2015 Aaron Patterson <tenderlove@ruby-lang.org> + + * load.c (loaded_feature_path): stop returning false negatives for + filenames which are trailing substrings of file extensions. For + example, 'b', which a trailing substring of ".rb" should not return + false. [Bug #11155][ruby-core:69206] + + * test/ruby/test_autoload.rb: test for fix + +Sun May 24 03:56:27 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * marshal.c (r_symreal): register symbol names as strings first so + that r_symlink always returns valid names. + [ruby-core:68587] [Bug #10991] + + * marshal.c (r_ivar, r_object0): now need to intern symbol names. + + * marshal.c (r_object0): compare with symbol names. + +Sun May 24 03:53:07 2015 Eric Wong <e@80x24.org> + + * ext/socket/ancdata.c (bsock_recvmsg_internal): GC guard + [Bug #11123] + +Sun May 24 03:44:42 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * range.c (linear_object_p, range_include): test if covered for + linear objects. [ruby-core:69052] [Bug #11113] + +Sun May 24 03:41:45 2015 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/imap.rb (body_ext_mpart): should work even if body-fld-dsp + is omitted. [ruby-core:69093] [Bug #11128] + +Sun May 24 03:37:14 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org> + + * string.c: added documentation for character sequence \' with String#sub + [Bug #11132][ruby-core:69121][fix GH-900][ci skip] Patch by @shishir127 + +Sun May 24 03:32:53 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org> + + * rational.c: Added documentation for rational literal. + [Bug #11075][fix GH-885][ci skip] Patch by @shishir127 + +Sun May 24 03:06:20 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/socket/ipsocket.c (init_inetsock_internal): preserve errno + before other library calls and use rb_syserr_fail. + [ruby-core:68531] [Bug #10975] + +Sun May 24 03:01:17 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/-test-/printf/printf.c (uint_to_str): renamed to get rid of + conflict on cygwin. [ruby-core:68877] [Bug #11065] + +Sun May 24 02:44:53 2015 Koichi Sasada <ko1@atdot.net> + + * vm.c (vm_exec): check other events when RETURN is thrown. + [Bug #10724] + + * test/ruby/test_settracefunc.rb: add a test. + +Sun May 24 02:21:47 2015 Masahiro Tomita <tommy@tmtm.org> + + * ext/socket/raddrinfo.c (addrinfo_mload): fix memory leak of + addrinfo. [ruby-dev:48923] [Bug #11051] + +Sun May 24 02:17:05 2015 Kenta Murata <mrkn@cookpad.com> + + * bigdecimal: conform to ruby's license. [ruby-core:68466] [Bug #10952] + +Sun May 24 02:06:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/-test-/file/fs.c (get_fsname): try magic number only if + f_type is included. [ruby-dev:48913] [Bug #11000] + +Sun May 24 02:06:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/-test-/file/fs.c (get_fsname): return filesystem name by + statfs/statvfs. [ruby-core:68624] [Bug #10998] + +Sun May 24 02:02:00 2015 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_symbol.rb: fix syntax error. + +Sun May 24 02:02:00 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (rb_any_hash): Symbols are compared by the identities + always. [ruby-core:68767] [Bug #11035] + +Sun May 24 02:01:07 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (rb_any_hash): use same hash values with Float#hash so + that -0.0 and +0.0 will be identical. + [ruby-core:68541] [Bug #10979] + +Thu May 21 01:34:48 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * gc.c (id2ref): prohibit from accessing internal objects. + [ruby-core:68348] [Bug #10918] + +Thu May 21 01:32:02 2015 Rei Odaira <Rei.Odaira@gmail.com> + + * ext/pty/pty.c: AIX supports autopush. + Patch by Perry Smith [ruby-core:58539] [Bug #9144] + +Thu May 21 01:07:41 2015 Misumi Rize <r@ayase-e.li> + + * vm_insnhelper.c (vm_throw_start): search the target to break + from a block with nested rescue, from the nested blocks. + [ruby-core:67765] [Bug #10775] [Fix GH-820] + +Thu May 21 00:55:45 2015 Koichi Sasada <ko1@atdot.net> + + * vm_args.c: protect value stack from calling other methods + during complex parameter setting process (splat, kw, and so on). + [Bug #11027] + + * vm_core.h: remove rb_thead_t::mark_stack_len. + With this modification, we don't need to use th->mark_stack_len. + + * test/ruby/test_keyword.rb: add a test. + + * cont.c (cont_capture): catch up this fix. + + * vm.c (rb_thread_mark): ditto. + +Thu May 21 00:07:54 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (rb_obj_instance_eval, rb_obj_instance_exec): allow + symbols to just instance_eval/exec, except for definition of + singletons. [ruby-core:68961] [Bug #11086] + +Wed May 20 04:33:50 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (STR_SET_EMBED): clear NOFREE flag at embedding as + embedded strings no longer refer static strings. + [ruby-core:68436] [Bug #10942] + +Wed May 20 03:46:11 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (need_normalization): use getattrlist() if fgetattrlist() + is unavailable, on OSX 10.5. [ruby-core:68829] [Bug #11054] + +Wed May 20 03:25:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (proc_binding): replicate env from method object, and + allocate the local variable area for the iseq local table. + [ruby-core:68673] [Bug #11012] + +Wed May 20 03:25:34 2015 Koichi Sasada <ko1@atdot.net> + + * proc.c: use RUBY_VM_IFUNC_P() to recognize IFUNC or not. + + * vm.c: ditto. + + * vm_dump.c: ditto. + + * vm_insnhelper.c: ditto. + + * vm_core.h: use RB_TYPE_P() instead of BUILTIN_TYPE(). + +Wed May 20 03:10:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * benchmark/bm_hash_aref_flo.rb: make more realistic data. + [ruby-core:68632] [[Bug #10999] + +Wed May 20 02:49:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (respond_to_missing_p): check if the receiver responds to + the given method by respond_to_missing?. + + * proc.c (mnew_missing): create Method object for method_missing. + [ruby-core:68564] [Bug #10985] + +Wed May 20 02:16:05 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * dir.c (replace_real_basename): need to check the return value of + GLOB_REALLOC(). + +Wed May 20 02:16:05 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * dir.c (replace_real_basename): shouldn't create Ruby object before + the object system is loaded. + [ruby-core:68430] [Bug #10941] + +Wed May 20 01:58:12 2015 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb (Resolv::DNS::Label::Str#==): Check class equality. + (Resolv::DNS::Name#initialize): Normalize labels as + Resolv::DNS::Label::Str objects. + +Wed May 20 01:47:23 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * iseq.c (rb_iseq_compile_with_option): check source type, must be + an IO or a String. [ruby-core:69219] [Bug #11159] + +Fri May 15 05:01:25 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * symbol.c (Init_sym): make dsym_fstrs a hash compared by identity + as the keys are unique fstrings, to get rid of running hash and + compare methods and causing new object allocation during garbage + collection phase. [ruby-dev:48891] [Bug #10933] + +Thu May 14 00:50:40 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (lambda): push and reset cmdarg_stack in lambda body. + [ruby-core:69017] [Bug #11107] + +Thu May 14 00:39:29 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dln.c (dln_load): check if a different libruby is loaded by the + extension library, and then bail out to get rid of very frequent + reported stale bug reports. + +Thu May 14 00:29:44 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/fileutils.rb (FileUtils#mv): show the exact target path in + the error message instead of the destination parent directory + name. patched by Joao Britto <jabcalves AT gmail.com> at + [ruby-core:68706]. [Bug #11021] + +Thu May 14 00:19:04 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread_pthread.c (reserve_stack): keep sp safe zone to get rid + of crash by -fstack-check. [ruby-core:68740] [Bug #11030] + +Tue Apr 14 23:33:39 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: check also procstat_getvmmap, which is not + available on FreeBSD 9. [ruby-core:68468] [Bug #10954] + + * vm_dump.c (procstat_vm): use kinfo_getvmmap instead if + procstat_getvmmap is not available. + +Mon Apr 13 22:11:21 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * ext/openssl/lib/openssl/ssl.rb: stricter hostname verification + following RFC 6125. with the patch provided by Tony Arcieri and + Hiroshi Nakamura [ruby-core:61545] [Bug #9644] + * test/openssl/test_ssl.rb: add tests for above. + +Mon Apr 13 13:03:33 2015 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * lib/securerandom.rb: skip Win32 libraries in SecureRandom if + OpenSSL::Random is available. + https://github.com/ruby/ruby/pull/848 [Bug #10948] [Bug #10995] + +Mon Apr 13 00:49:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (arg): fix segfault by null caused by syntax error. + [ruby-core:68851] [Bug #10957] + +Mon Apr 13 00:49:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (primary): empty parentheses at cmdarg can be null. + [ruby-core:68477] [Bug #10957] + +Mon Apr 13 00:44:12 2015 Eric Wong <e@80x24.org> + + * ext/io/wait/wait.c (io_nread): wrap return value with INT2FIX + Thanks to Yura Sokolov <funny.falcon@gmail.com> + [ruby-core:68369] [Bug#10923] + * test/io/wait/test_io_wait.rb (test_nread_buffered): + fix broken test + +Mon Apr 13 00:16:32 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (vm_call_super): search next super class from the + original class, to get rid of infinite recursion with + prepending. a patch by Seiei Higa <hanachin AT gmail.com> at + [ruby-core:68434]. [ruby-core:68093] [Bug #10847] + +Mon Apr 13 00:09:48 2015 Koichi Sasada <ko1@atdot.net> + + * class.c (rb_prepend_module): need a WB for klass -> origin. + +Sun Apr 12 23:53:33 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/extconf.rb: needs --enable-shared when linked to + libruby or fiddle.so. since --with-static-linked-ext does no + longer link extensions to ruby program with --enable-shared, the + only combination needs --enable-static is --disable-shared and + --with-static-linked-ext. [ruby-dev:48901] [Bug #10960] + +Sun Apr 12 23:53:33 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/extconf.rb: make PIC objects if it will be linked as + a shared object eventually. [ruby-core:67128] + +Sun Mar 22 12:39:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * spec/default.mspec: use default configuration file name. + https://github.com/ruby/rubyspec/commit/cc69f337b06362e5607ffa3e3ad40ef7494960cf + +Sun Mar 22 12:39:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * spec/default.mspec: remove specific version number. + https://github.com/ruby/rubyspec/commit/7a909e925c1baa9c700bd44af9241aef6e596714 + +Sun Mar 22 12:39:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * common.mk: use ruby organization for rubyspec. + +Thu Feb 26 15:48:41 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/win32/Win32API.rb (initialize): accept both a string and an array + for the arguments of the imported function. + reported by Aaron Stone [ruby-core:68208] [Bug #10876] [Fixes GH-835] + +Wed Feb 25 15:36:26 2015 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/merger.rb: support 2.1+ versioning scheme. + +Tue Feb 24 17:41:27 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * time.c (time_zone_name): should be US-ASCII only if all 7-bits, + otherwise locale encoding. [ruby-core:68230] [Bug #10887] + +Tue Feb 24 17:41:27 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * time.c (time_zone_name): should be US-ASCII only if all 7-bits, + otherwise locale encoding. [ruby-core:68230] [Bug #10887] + +Tue Feb 24 17:41:27 2015 Benoit Daloze <eregontp@gmail.com> + + * time.c: Zone encoding should be US-ASCII if all 7-bits. Fix r46907. + + * test/ruby/test_time.rb, test/ruby/test_time_tz.rb: Update tests. + +Tue Feb 24 16:37:26 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (chompped_length): enable smart chomp for all non-dummy + encoding strings, not only default_rs. + [ruby-core:68258] [Bug #10893] + +Tue Feb 24 16:31:53 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_split_m): raise ArgumentError at broken string + not RegexpError, as Regexp is not involved in. + [ruby-core:68229] [Bug #10886] + +Tue Feb 24 14:00:46 2015 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_objspace_call_finalizer): control GC execution during + force firnalizations at the end of interpreter process. + [Bug #10768] + + 1) Prohibit incremental GC while running Ruby-level finalizers + to avoid any danger. + 2) Prohibit GC while invoking T_DATA/T_FILE data structure + because these operations break object relations consistency. + + This patch can introduce another memory consuming issue because + Ruby-level finalizers can run after (2), GC is disabled. + However, basically object consistency was broken at (2) as I + described above. So that running Ruby-level finalizers contains + danger originally. Because of this point, I need to suggest to + remove these 3 lines (invoking remaining finalizers). And add a + rule to add that finalizers should not add new finalizers, or + say there is no guarantee to invoke finalizers that added by + another finalizer. + +Tue Feb 24 14:00:46 2015 Aman Gupta <ruby@tmm1.net> + + * gc.c (rb_objspace_free): cause rb_bug if lazy sweep is in progress + during rb_objspace_free. Adds extra protection for r46340. + Patch by Vicent Marti. [Bug #10768] [ruby-core:67734] + * gc.c (rb_objspace_call_finalizer): Ensure GC is completed after + finalizers have run. We already call gc_rest() before invoking + finalizers, but finalizer can allocate new objects and start new GC + cycle, so we call gc_rest() again after finalizers are complete. + +Tue Feb 24 10:30:59 2015 Kazuki Tsujimoto <kazuki@callcc.net> + + * vm_insnhelper.c (rb_vm_rewrite_cref_stack): copy nd_refinements + of original crefs. It fixes segmentation fault when calling + refined method in duplicate module. [ruby-dev:48878] [Bug #10885] + + * vm_core.h, class.c: change accordingly. + + * test/ruby/test_refinement.rb: add a test for above. + +Sun Feb 22 21:20:37 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (match_aref): RMatch::regexp is Qnil after matching by a + string since r45451. [ruby-core:68209] [Bug #10877] + +Sun Feb 22 17:11:25 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * Makefile.in (probes.stamp): rebuild dtrace dependent objects + only when `dtrace -G` modifies its input files. + +Sun Feb 22 17:11:25 2015 Naohisa Goto <ngotogenome@gmail.com> + + * common.mk (ruby-glommed.o): dependency on $(OBJ) should be written + in common.mk (in which OBJ is defined) because of Makefile include + and parse order. This partly reverts r49419. + [ruby-dev:48849] [Bug #10808] + + * Makefile.in (ruby-glommed.o): ditto. + + * Makefile.in (ruby-glommed.o): remove excess $(DTRACE_OBJ) because + it is included in $(OBJS) since r49451. + + * Makefile.in (probes.o): should depend on $(DTRACE_DEPENDENT_OBJS) + +Sun Feb 22 02:16:40 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * file.c (rb_file_identical_p): fix handle leak, ensure to close + the handle of the first argument. + +Sat Feb 21 13:48:11 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/win32.c (different_device_p): compare by volume serial + numbers, not by path names. [ruby-core:68162] [Bug #10865] + +Sat Feb 21 13:48:11 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/win32.c (wrename): return EXDEV if moving a directory to + another drive, since MoveFileExW does not set proper error code. + [ruby-core:68162] [Bug #10865] + +Sat Feb 21 12:46:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/file.c (rb_file_expand_path_internal): neither the drive + of base directory nor the current drive are involved in the + result if different than the drive of path. + [ruby-core:68130] [Bug #10858] + +Sat Feb 21 12:46:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/file.c (rb_file_expand_path_internal): do not make invalid + (or ADS) path if the path has a drive letter, the result also + should have be under it. [ruby-core:68130] [Bug #10858] + +Sat Feb 21 12:45:54 2015 Matt Hoyle <matt@deployable.co> + + * ext/bigdecimal/bigdecimal.c (VpSetPTR): fix a typo, 'expoennt' + to 'exponent'. [ruby-core:67980] [Bug #10823] [Fix GH-825] + +Fri Feb 20 17:47:20 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_core.h (rb_call_info_kw_arg_struct): make keywords a symbols + list to get rid of inadvertent creation by variable keyword + arguments. [ruby-core:68031] [Bug #10831] + +Fri Feb 20 15:08:17 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (has_magic): always get long path name on Windows even if + no tilde is there. [ruby-core:68011] [Bug #10819] + + * dir.c (replace_real_basename): FindFirstFile ignore redirection + character, check if exists before call it. cf. [Bug #8597] + +Fri Feb 20 15:08:17 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_helper): obtain real name with FindFirstFile API + instead of matchin all entries, on Windows. + [ruby-core:67954] [Bug #10819] + +Fri Feb 20 14:32:14 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (dir_initialize): workaround of opendir failure at symlink + directories on Windows via CIFS. + +Thu Feb 19 17:05:47 2015 Shugo Maeda <shugo@ruby-lang.org> + + * class.c (rb_obj_singleton_methods): should use RTEST() to convert + VALUE to int. + +Thu Feb 19 16:14:04 2015 Shugo Maeda <shugo@ruby-lang.org> + + * class.c (method_entry_i, class_instance_method_list, + rb_obj_singleton_methods): should not include methods of + superclasses if recur is false. [ruby-dev:48854] [Bug #10826] + +Thu Feb 19 16:14:04 2015 Shugo Maeda <shugo@ruby-lang.org> + + * vm_method.c (remove_method): When remove refined + method, raise a NameError if the method is not + defined in refined class. + + But if the method is defined in refined class, + it should keep refined method and remove original + method. + + Patch by Seiei Higa. [ruby-core:67722] [Bug #10765] + +Thu Feb 19 16:07:03 2015 Seiei Higa <hanachin@gmail.com> + + * proc.c (rb_obj_singleton_method): Kernel#singleton_method should + not use refinements, as well as Kernel#method. + [ruby-core:67603] [Bug #10744] + +Thu Feb 19 15:32:26 2015 Dave Stevens <dave@crowdlab.com> + + * string.c (str_make_independent_expand): terminate String when + moved from heap to embedded. [Fix GH-821]. + +Thu Feb 19 13:35:21 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/sdbm/_sdbm.c: include ruby/ruby.h for PRIdPTRDIFF when a + macro `DEBUG` is defined. based on the patch by Owen Rodley in + [ruby-core:67987]. [Bug #10825] + +Tue Feb 17 18:57:13 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/resolv.rb (Resolv::DNS::Resource#==, #hash): elements + returned by Kernel#instance_variables are Symbols now. + [ruby-core:68128] [Bug #10857] + +Tue Feb 17 15:39:01 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/win32/lib/win32/registry.rb (Win32::Registry::API): use wide + versions of RegDeleteValue and RegDeleteKey. + [ruby-core:67958] [Bug #10820] + +Tue Feb 17 11:50:06 2015 Yusuke Endoh <mame@tsg.ne.jp> + + * string.c (str_discard): does not free for STR_NOFREE string. + [Bug #10853][ruby-core:68110] + + * bootstraptest/test_string.rb: test for above. + +Sun Feb 15 13:15:46 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/socket/getaddrinfo.c (get_addr): reject too long hostname to + get rid of GHOST vulnerability on very old platforms. + + * ext/socket/raddrinfo.c (make_hostent_internal): ditto, paranoic + check for the canonnical name. + +Sat Feb 14 13:27:41 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (send_internal), vm_insnhelper.c (vm_call_opt_send): + convert String method name into a Symbol, as method_missing + method expects its first argument to be a Symbol. [Bug #10828] + + * vm_insnhelper.c (ci_missing_reason): return the reason of method + missing in call info. + + * vm_insnhelper.c (vm_call_opt_send): re-apply r49500 with the + proper missing reason. [Bug #10828] + +Sat Feb 14 13:27:41 2015 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * vm_insnhelper.c: Fix symbol leak with +send+ [Bug #10828] + +Sat Feb 14 08:53:50 2015 Shugo Maeda <shugo@ruby-lang.org> + + * class.c (method_entry_i, class_instance_method_list, + rb_obj_singleton_methods): should not include methods of + superclasses if recur is false. [ruby-dev:48854] [Bug #10826] + +Fri Feb 13 13:59:56 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): get rid of + interference by modifying global variables in have_devel? method. + [ruby-core:67962] [Bug #10821] + +Fri Feb 13 03:13:05 2015 Scott Francis <scott.francis@shopify.com> + + * thread_pthread.c (reserve_stack): fix intermittent SIGBUS on + Linux, by reserving the stack virtual address space at process + start up so that it will not clash with the heap space. + [Fix GH-822] + +Fri Feb 6 12:05:13 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * thread.c: Improve documentation for Thread#value + [Bug #10694][ruby-core:67324][ci skip] + +Fri Feb 6 12:02:05 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/win32/libffi.mk.tmpl: assemble without directory prefix. + workaround of a bug of VC12 ml, by unak at [ruby-core:67792]. + [ruby-core:67789] [Bug #10780] + +Fri Feb 6 01:03:38 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * marshal.c (w_object, marshal_dump): use indetity tables for + arbitrary VALUE keys, because of performance of FLONUM. + [Bug #10761] + + * marshal.c (obj_alloc_by_klass, marshal_load): ditto. + +Fri Feb 6 01:03:38 2015 Eric Wong <e@80x24.org> + + * benchmark/bm_marshal_dump_flo.rb: new benchmark for [Bug #10761] + +Fri Feb 6 01:03:38 2015 Eric Wong <e@80x24.org> + + * st.c (st_numhash): mix float value for flonum + * hash.c (rb_any_hash): ditto + * benchmark/bm_hash_aref_flo.rb: new benchmark + * benchmark/bm_hash_ident_flo.rb: ditto + [Bug #10761] + +Thu Feb 5 16:30:09 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (gettable_gen): disable warnings of possible reference + to a local variable defined in a past scope. + [ruby-core:67162] [Bug #10661] + +Mon Jan 26 15:35:16 2015 Seiei Higa <hanachin@gmail.com> + + * vm_method.c (check_definition): Module#public_method_defined?, + Module#private_method_defined?, Module#protected_method_defined? + should not use refinements. [ruby-core:67656] [Bug #10753] + +Thu Jan 22 11:47:31 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * doc/syntax/literals.rdoc (Symbols): now Symbols created by + interpolation can be garbage collected. patch by Yihang Ho in + [ruby-core:67194]. [Bug #10671] + +Thu Jan 22 11:45:32 2015 Kazuki Tsujimoto <kazuki@callcc.net> + + * eval_intern.h, vm.c, vm_eval.c, vm_insnhelper.c: + change throw mechanism (not save target ep, but save target cfp). + It fixes `unexpected break' bug that occurs when + TracePoint#binding is called. + [ruby-dev:48797] [Bug #10689] + + * test/ruby/test_settracefunc.rb: add a test. + +Tue Jan 20 14:05:08 2015 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_invoke): avoid SEGV when VT_RECORD + variable is passed by reference. [ruby-dev:48803] [Bug #10697] + +Mon Jan 19 15:45:33 2015 Seiei Higa <hanachin@gmail.com> + + * vm_method.c (rb_method_entry): if no super class, no original + method entry. [ruby-core:67389] [Bug #10707] + +Mon Jan 19 12:03:59 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_dump.c (rb_vm_bugreport): check by configured result instead + of system name for old FreeBSD. based on a patch by Steve Wills + at [ruby-core:67655]. [Bug #10752] + +Mon Jan 19 12:00:51 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: get rid of pattern substitution, which is not + supported by ash, and ash on NetBSD parses whole source first + and fails to start. [ruby-dev:48823] [Bug #10750] + +Mon Jan 19 11:57:14 2015 Vit Ondruch <vondruch@redhat.com> + + * configure.in (RUBY_SETJMP_TYPE): Remove superfluous semicolon + which causes a syntax error with autoconf 2.63. + [ruby-core:67429] [Bug #10716] + +Mon Jan 19 11:44:52 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/rdoc/text.rb (expand_tabs): get rid of infinite loop with + CR. should check if substitution occurred too. + [ruby-dev:48813] [Bug #10732] + +Sun Jan 18 00:59:41 2015 Eric Wong <e@80x24.org> + + * numeric.c (bit_coerce): use original value for error message + [ruby-core:67405] [Bug #10711] + * test/ruby/test_numeric.rb (test_coerce): check error message + +Sun Jan 18 00:53:38 2015 Seiei Higa <hanachin@gmail.com> + + * vm_method.c (rb_alias): raise a NameError when creating alias to + a refined method if the original method of the refined method is + not defined. [ruby-core:67523] [Bug #10731] + +Sat Jan 17 22:25:50 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (need_normalization): not only HFS+, CIFS (SMB) is also + decomposed. [Bug #10704] + + * dir.c (NORMALIZE_UTF8PATH): Unicode decomposition seems to + perform in an upper layer than file systems on OSX, as all path + names are always decomposed regardless of file system types. + +Sat Jan 17 17:56:45 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (assocs, assoc): eliminate splatting empty literal + hashes. [ruby-core:67446] [Bug #10719] + + * compile.c (compile_array_): supprt splatted hash in hash type. + +Sat Jan 17 16:49:49 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/readline/readline.c (readline_s_refresh_line): initialize + before rl_refresh_line(), as some function make the internal + state non-clean but rl_refresh_line() does not re-initialize it. + [ruby-core:43957] [Bug #6232] + +Sat Jan 17 16:47:20 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * eval_error.c (error_print): pos and len parameters of rb_str_substr() + are counted by characters, not bytes. use rb_str_subseq() instead. + [Bug #10727] [ruby-core:67473] + +Sat Jan 17 16:35:59 2015 Seiei Higa <hanachin@gmail.com> + + * vm_method.c (rb_export_method): bail out if the original method + is undefined when the method is refined. + [ruby-core:67387] [Bug #10706] + +Sat Jan 17 16:16:14 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_helper): match in case-folding only if the directory + resides on a case-insensitve file system, on OSX. + [ruby-core:67364] [Bug #10700] + +Sat Jan 17 02:04:01 2015 Eric Wong <e@80x24.org> + + * lib/resolv.rb: consider ENETUNREACH as ResolvTimeout + [ruby-core:67411] [Bug #10712] + +Sat Jan 17 01:57:57 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/zlib/zlib.c: fix document of method signatures. + [Bug #10668][ruby-core:67186][ci skip] + +Sat Jan 17 01:52:42 2015 Tanaka Akira <akr@fsij.org> + + * time.c (timelocalw): Set tm_isdst field -1 if vtm->isdst is + VTM_ISDST_INITVAL. This bug is introduced at packing struct + vtm (r45155). + [ruby-core:67345] [Bug #10698] Reported by Boris Ruf. + +Fri Jan 16 21:17:34 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_io.rb: added timeout for AIX environment. + [ruby-core:62983][Bug #9917] + +Fri Jan 16 18:25:57 2015 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb (Resolv::DNS::Name#==): Compare an array of Label:Str + objects. Label#Str#== is case-insensitive. + +Fri Jan 16 18:25:57 2015 Ben Miller <bmiller@rackspace.com> + + * lib/resolv.rb (Resolv::DNS::Name#==): DNS is case-insensitive, so the + comparison should be case-insensitive as well. + [ruby-core:66498] [Bug #10550] + +Fri Jan 16 18:25:57 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/resolv.rb (Resolv::DNS::Name): names with different dots + should be different. + +Fri Jan 16 17:34:57 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (f_label): return tLABEL value as it is. + [ruby-core:67315] [Bug #10693] + +Fri Jan 16 16:49:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/net/http.rb (Net::HTTP#send_request): there is no response body + with HEAD request. Patch by @rodrigosaito [fix GH-520] + +Fri Jan 16 16:49:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/net/http/test_http.rb (_test_send_request__HEAD): Added + failing test for send_request with HEAD method. + +Fri Jan 16 14:56:08 2015 Eric Wong <e@80x24.org> + + * symbol.c (rb_gc_free_dsymbol): delete from global fstr hash + * test/ruby/test_symbol.rb (test_symbol_fstr_leak): test for bug + [ruby-core:67268] [Bug #10686] + +Fri Jan 16 14:20:52 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_args.c (keyword_hash_p): fix non-symbol keys hash. + rb_extract_keywords() returns 0 not Qnil when no symbol keys is + included. + +Fri Jan 16 11:06:17 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/unicode_normalize.rb: typo fix. [ci skip] + [ruby-dev:48794][misc #10675] + included. [ruby-core:67264] [Bug #10685] +Fri Jan 16 11:04:35 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (unescape_nonascii): append excape sequence as-is not + unescaped character, to get rid of unexpected meta-character. + [ruby-core:67193] [Bug #10670] + +Sat Jan 3 21:17:58 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread.c (rb_thread_variable_get): fix dynamic symbol keys. + rb_check_id() returns non-zero only for static symbols, whereas + thread local variable keys can be dynamic symbols. + [ruby-core:67185] [Bug #10667] + +Thu Jan 1 08:29:55 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * cygwin/GNUmakefile.in (EXTOBJS): override to add resource files + always. [ruby-core:67153] [Bug #10657] + +Wed Dec 31 15:26:46 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (f_kwrest, new_args_tail_gen): unnamed rest keyword and + keywords bits arguments should be unique. since internal IDs + depend on the local variable index in the current scope, new ID + should be made before popping those vtables. + [ruby-core:67157] [Bug #10659] + +Wed Dec 31 14:11:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/tk/lib/tkextlib/tcllib/plotchart.rb: fix to invoke correct function + of tcllib. Patch by @zalt50 [fix GH-787] + +Wed Dec 31 13:26:22 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_vm_living_threads_insert): preserve order + [Bug #10660] [ruby-core:67154] [ruby-core:67159] + +Fri Dec 26 15:42:27 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/rbinstall.rb: skip installing bundle gems if zlib is unavailable. + [Bug #10647] [ruby-dev:48787] + +Thu Dec 25 17:42:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/io/console/console.c (console_dev): send the given arguments + to the opened console. as a special case, do nothing if :close + is given. + + * test/lib/leakchecker.rb (LeakChecker#check_fd_leak): close if + console. + +Thu Dec 25 17:37:47 2014 Naohisa Goto <ngotogenome@gmail.com> + + * gc.c (wmap_final_func): fix memory size shortage when realloc wmap. + Fix SEGV during finilize of WeakRef on Solaris (though the SEGV + could occur on all OS/platforms). [ruby-dev:48779] [Bug #10646] + +Thu Dec 25 17:31:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (NET_LUID): include winsock2.h instead of windows.h. + patch by Jon Forums in [ruby-core:67125]. [Bug #10640] + +Thu Dec 25 16:01:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * file.c (rb_file_expand_path_internal): drop characters ignored + by filesystem on Mac OS X. + +Thu Dec 25 15:36:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (replace_real_basename): get the real name and replace the + base name with it by getattrlist(2) if available. + suggested by Matthew Draper at [ruby-core:67116]. [Bug #10015] + + * dir.c (glob_helper): get the real name of the whole path, not + only the last name. + +Thu Dec 25 13:59:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (NET_LUID): include also ifdef.h as a workaround of + a bug in mingw-w64 header. [ruby-core:67103] [Bug #10640] + +Thu Dec 25 12:47:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (gettable_gen): warn possible reference to a local + variable defined in a past scope. + +Thu Dec 25 10:09:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/io/console/console.c (console_dev): id_console is not a + constant name, use rb_const_remove() to get rid of NameError. + +Thu Dec 25 09:18:55 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/resolv/test_dns.rb (TestResolvDNS#test_query_ipv4_address): + set timeout for recvfrom because if client thread is crashed, it + waits infinity. + +Thu Dec 25 08:42:11 2014 Eric Wong <e@80x24.org> + + * lib/uri/generic.rb (split_userinfo): fstring for 1-byte split + (set_port): reduce bytecode size + (check_path): reduce garbage via opt_str_freeze + (query=): ditto + (fragment=): ditto + [misc #10628] + * lib/uri/rfc3986_parser.rb (regexp): cache as attr + (initialize): setup and freeze regexp attr once + (split): reduce bytecode size, use opt_str_freeze + (parse): minor bytecode and garbage reduction + (default_regexp): rename for initialize + +Wed Dec 24 20:38:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_make_pattern): restrict searching case-insensitive + name from the filesystem to only last part, for the performance. + [ruby-core:63591] [Bug #10015] + +Wed Dec 24 18:21:27 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: remove unused rb_objspace_t::rgengc::old_objects_at_gc_start. + +Wed Dec 24 13:25:22 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/redmine-backporter.rb: require view_changesets permission. + +Wed Dec 24 13:00:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * tool/downloader.rb (Downloader.download): fix the exception to + re-raise. initialize methods of subclasses of Exception may + have different parameters. [ruby-core:67086] [Bug #10639] + +Wed Dec 24 12:16:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ruby.h (rb_data_type_t): revert r48647 and revise parent member. + [ruby-core:66969] [Bug #10621] + +Wed Dec 24 05:40:52 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/downloader.rb: use config.guess in gcc repo. + +Wed Dec 24 11:50:19 2014 Koichi Sasada <ko1@atdot.net> + + * hash.c (rb_hash_delete): return Qnil if there are no corresponding + entry. [Bug #10623] + + * hash.c (rb_hash_delete_entry): try delete and return Qundef if there + are no corresponding entry. + + * internal.h: add rb_hash_delete_entry()'s declaration. + + * symbol.c: use rb_hash_delete_entry(). + + * thread.c: use rb_hash_delete_entry(). + + * ext/-test-/hash/delete.c: use rb_hash_delete_entry(). + +Wed Dec 24 09:35:11 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/fiddle/extconf.rb: remove ffitarget.h generated by configure on + mswin, because it's not normal file (cygwin's symlink) and have + system attribute. + +Wed Dec 24 05:40:52 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/downloader.rb: support ruby 1.8. + +Wed Dec 24 02:44:06 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/response.rb (Net::HTTPResponse): require one or more + spaces [Bug #10591]. + by leriksen <leif.eriksen.au@gmail.com> + https://github.com/ruby/ruby/pull/782 fix GH-782 + NOTE: graph.facebook.com returns without SP Reason-Phrase. + +Wed Dec 24 02:12:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * tool/make-snapshot (package): VCS#branch_list expects glob a + pattern string but not a regexp. based on the patch by Vit + Ondruch. in [ruby-core:67064]. [Bug #10636] + + * tool/vcs.rb (VCS::SVN#branch_list): strip newlines. + + * tool/vcs.rb (VCS::GIT.get_revisions): retrieve modified time + from toplevel log too. + + * tool/vcs.rb (VCS::GIT#branch_list): yield for each lines. + +Wed Dec 24 00:23:13 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/extlibs.rb (do_extract): the pipe should be binmode. + +Wed Dec 24 00:21:44 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * Makefile.in, common.mk: move common-srcs to Makefile.in because + it breaks build on mswin. + +Wed Dec 24 00:04:45 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/open-uri.rb (OpenURI.open_http): accept multiple certs path in + ssl_ca_certs. + + * tool/downloader.rb: use certs of rubygems for downloading gems. + +Tue Dec 23 22:39:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/extlibs: libffi-3.2.1 and patch for mswin. + +Tue Dec 23 22:04:38 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (URI::Generic#query=): don't escape [\]^ + on both rfc2396 and rfc3986. [Bug #10619] + +Tue Dec 23 16:03:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/win32/lib/win32/registry.rb (Win32::Registry::Error#initialize): + try en_US message if the default message cannot be encoded to + locale. [ruby-core:65295] [Bug #10300] + +Tue Dec 23 11:42:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/openssl/ossl_cipher.c (ossl_cipher_update_long): update huge + data gradually not to exceed INT_MAX. workaround of OpenSSL API + limitation. [ruby-core:67043] [Bug #10633] + +Mon Dec 22 21:30:16 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * test/win32ole/test_win32ole_event.rb: some tests are + executed on standard Windows OS without ADO. + +Mon Dec 22 14:08:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (received_signal): fix condition to define. + [ruby-core:67032] [Bug #10629] + +Sun Dec 21 10:51:51 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * test/win32ole/test_win32ole_event.rb: test_s_new_exception is + executed on standard Windows OS without ADO. + +Sun Dec 21 08:35:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (jemalloc): fix option argument, should use + `$withval` but not `yes` always. [ruby-core:66994] [Bug #10625] + + * configure.in (jemalloc): defer adding the liner option to get + rid of linking contest against jemalloc, so that it works + without runtime dynamic load path. + +Sat Dec 20 17:49:03 2014 Tanaka Akira <akr@fsij.org> + + * lib/tmpdir.rb (Dir.mktmpdir): Accept nil again, as Ruby 2.1. + [ruby-core:66943] [Bug #10616] Fixed by Alex Slynko. + +Sat Dec 20 11:22:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/depend, ext/fiddle/extconf.rb: try to build bundled + libffi if existing. + +Sat Dec 20 05:21:00 2014 Eric Wong <e@80x24.org> + + * test/test_weakref.rb (test_repeated_object_leak): increase timeout + [Bug #10618] + +Fri Dec 19 22:33:13 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: Use $(hdrdir) if possible. + +Fri Dec 19 22:10:00 2014 Kenta Murata <mrkn@cookpad.com> + + * ext/bigdecimal/depend: Fix dependencies to make bigdecimal + installable by rubygems. + + * ext/bigdecimal/bigdecimal.gemspec: version 1.2.6. + +Fri Dec 19 20:00:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/ruby.h (PRIsVALUE): put a space after string + literals not to be confused with C++11 string literal suffix. + https://github.com/ruby/ruby/commit/a9f3eb7#commitcomment-9040169 + +Fri Dec 19 15:36:02 2014 Simon Genier <simon.genier@shopify.com> + + * hash.c (hash_equal): prefer true than the result of implicit + conversion from int returned by rb_eql() to VALUE. [Fix GH-789] + +Thu Dec 18 17:45:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (rb_cv_binary_elf): get rid of -e option of cat + which is not available on BusyBox, use tr instead. + [ruby-core:64824] [Bug #10210] + +Thu Dec 18 14:25:17 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * signal.c (ruby_signal): since SIGKILL is not supported by MSVCRT, + should be treated before calling signal(3). + [Bug #10615] + +Wed Dec 17 12:20:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (rb_method_for_self_aref, rb_method_for_self_aset): + move from iseq.c to build from node instead of arrays. + +Wed Dec 17 10:50:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/gdbm/test_gdbm.rb: Added test for each_key called without a block. + Patch by @joeyates [fix GH-783] + +Wed Dec 17 10:18:42 2014 Koichi Sasada <ko1@atdot.net> + + * compile.c (iseq_compile_each): check + iseq->compile_data->option->specialized_instruction for opt_* insn. + + * test/ruby/test_iseq.rb: check no specialized_instructions option. + +Wed Dec 17 09:48:57 2014 Eric Wong <e@80x24.org> + + * compile.c (iseq_compile_each): only emit opt_str_freeze, + opt_aref_with, and opt_aset_with insn when no block is given + [Bug #10557] [ruby-core:66595] + * test/ruby/test_optimization.rb (test_block_given_aset_aref): + new test for bug thanks to Bartosz Kopinski. + (test_string_freeze): additional assertion for object_id + +Wed Dec 17 01:06:47 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/win32/lib/Win32API.rb (Win32API#call): need to splat. hmm, when + was this broken? + +Tue Dec 16 15:18:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * iseq.c (rb_method_for_self_aref, rb_method_for_self_aset): call + accessor functions directly, not to be affected by [] and []= + methods. [ruby-core:66846] [Bug #10601] + + * struct.c (define_aref_method, define_aset_method): ditto. + + * vm_insnhelper.c (rb_vm_opt_struct_aref, rb_vm_opt_struct_aset): + direct accessors of Struct. + +Tue Dec 16 12:01:29 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): + extend timeout seconds to 60 for RGENGC_CHECK_MODE > 0 environment. + +Tue Dec 16 08:53:12 2014 Eric Wong <e@80x24.org> + + * tool/vcs.rb: fix Ruby 1.8 compatibility harder + +Tue Dec 16 07:37:18 2014 Eric Wong <e@80x24.org> + + * gc.c (GC_HEAP_FREE_SLOTS): move definition to match use order + (RUBY_GC_HEAP_GROWTH_SLOTS): s/factor/number of slots/ + + * man/ruby.1: add section for GC environment variables + [Feature #10197] + +Tue Dec 16 05:41:46 2014 Eric Wong <e@80x24.org> + + * tool/vcs.rb: fix Ruby 1.8 compatibility + +Mon Dec 15 17:51:28 2014 Koichi Sasada <ko1@atdot.net> + + * ext/objspace/objspace.c: ObjectSpace.memsize_of(obj) returns + with sizeof(RVALUE). [Bug #8984] + + * gc.c (obj_memsize_of): ditto. + + * NEWS: add a NEWS entry. + + * test/objspace/test_objspace.rb: catch up this fix. + + * test/ruby/test_file_exhaustive.rb: ditto. + +Mon Dec 15 16:19:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_enc_str_coderange): dummy wchar, non-endianness + encoding string cannot be ascii only. + [ruby-core:66835] [Bug #10598] + +Sun Dec 14 20:11:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (primary): restore current_arg so that circular + reference after a method definition is also warned. + [ruby-core:61299] [Bug #9593] + +Sat Dec 13 20:41:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_trace.c (rb_postponed_job_flush): mask signal trap interrupt + too to defer handling after finalizers finished. + [ruby-core:66825] [Bug #10595] + +Sat Dec 13 18:33:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/openssl/test_pkey_ec.rb: ignored tests with old OpenSSL. + +Sat Dec 13 18:01:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (check_stack_overflow): check sp also on i386/x86_64 + FreeBSD. + +Sat Dec 13 09:58:41 2014 Eric Wong <e@80x24.org> + + * gc.c (define_final0): avoid duplicate blocks + [Bug #10537] + * test/test_weakref.rb (test_repeated_object_leak): new test + +Sat Dec 13 04:59:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * bin/erb (ERB::Main#run): get rid of shadowing outer local + variables. [ruby-core:65772] [Feature #10395] + +Fri Dec 12 21:56:44 2014 Kouhei Sutou <kou@cozmixng.org> + + * gems/bundled_gems: Upgrade to test-unit 3.0.8. assert_throw and + assert_nothing_thrown in test-unit 3.0.7 were broken by + UncaughtThrowError change introduced in Ruby 2.2.0 + preview2. These assertions in test-unit 3.0.8 work well with + UncaughtThrowError in Ruby 2.2.0 preview2. + +Fri Dec 12 19:48:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * bin/erb (ARGV.switch, ERB::Main#run): allow variables to be set + from the command line. [ruby-core:65772] [Feature #10395] + +Fri Dec 12 19:31:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/erb.rb (ERB#lineno): accessor for line number to eval. + + * lib/erb.rb (ERB#location=): setter of file name and line number. + +Fri Dec 12 13:09:13 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_latest_gc_info): return :state field to show current + GC state (none/marking/sweeping). + [Feature #10590] + +Fri Dec 12 10:49:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_crypt): check arguments more strictly. + * crypt() is not for wide char strings + * salt bytes should not be NUL + +Fri Dec 12 08:16:01 2014 Matt Hoyle <matt@deployable.co> + + * io.c (io_read) Fix spelling in docco for read. [Fix GH-781] + try > tries + +Thu Dec 11 19:06:01 2014 Koichi Sasada <ko1@atdot.net> + + * class.c (class_alloc): Start from age == 2. + Class and Module objects can be living long life. + + * iseq.c: Same for ISeq objects. + + * gc.c (RVALUE_AGE_RESET): added. + + * gc.c (newobj_of): allow to generate (age != 0) objects. + + * gc.c (rb_copy_wb_protected_attribute): reset age for wb unprotected + objects. + + * include/ruby/ruby.h: add RUBY_TYPED_PROMOTED1 as an unrecommended + flag. + +Thu Dec 11 05:37:52 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/prime.rb: Remove useless loop and block capture. + See [#10354] + +Thu Dec 11 04:27:24 2014 Koichi Sasada <ko1@atdot.net> + + * vm_core.h: introduce new field + rb_thread_t::local_storage_recursive_hash_for_trace to store + recursive hash to avoid creating new recursive (nested) hashes + for each trace events. + [Bug #10511] + + * vm_trace.c (rb_threadptr_exec_event_hooks_orig): use it. + + * cont.c: catch up this fix. + + * vm.c (rb_thread_mark): ditto. + +Wed Dec 10 13:39:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * struct.c (define_aref_method, define_aset_method): use iseq + VALUE instead of rb_iseq_t to prevent from GC, as RB_GC_GUARD + makes sense only for local variables. [Feature #10575] + +Wed Dec 10 09:38:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread.c (exec_recursive): use the same last method name as + recursive_push in the error message when recursive_pop failed. + [ruby-core:66742] [Bug #10579] + +Wed Dec 10 02:48:46 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/net/http/test_https.rb + (TestNetHTTPS#test_certificate_verify_failure): on Windows, + Errno::ECONNRESET will be raised when the verify is failure at the + client side, and it'll be eaten by WEBrick. + + * test/open-uri/test_ssl.rb (TestOpenURISSL#test_validation_failure): + ditto. + +Wed Dec 10 00:42:13 2014 Eric Wong <e@80x24.org> + + * iseq.c (rb_method_for_self_aref, rb_method_for_self_aset): + new methods to generate bytecode for struct.c + [Feature #10575] + * struct.c (rb_struct_ref, rb_struct_set): remove + (define_aref_method, define_aset_method): new functions + (setup_struct): use new functions + * test/ruby/test_struct.rb: add test for struct >10 members + * benchmark/bm_vm2_struct_big_aref_hi.rb: new benchmark + * benchmark/bm_vm2_struct_big_aref_lo.rb: ditto + * benchmark/bm_vm2_struct_big_aset.rb: ditto + * benchmark/bm_vm2_struct_small_aref.rb: ditto + * benchmark/bm_vm2_struct_small_aset.rb: ditto + +Tue Dec 9 20:24:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * string.c: [DOC] Add missing documentation around String#chomp. + Patch by @stderr [ci skip][fix GH-780] + +Tue Dec 9 18:20:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * object.c: [DOC] Revise documentation by Marcus Stollsteimer at + [ruby-core:66368]. [Bug #10526] + + * #inspect: be more specific about generated string, remove + obsolete example. + * #nil?: use code examples instead of different call-seq's. + * #tap: clarify what is yielded. + * Integer(): be more specific about to_int and to_i, remove + reference to Ruby 1.8. + * Array(): fix error. + * Class: fix variable name style and indentation in example. + * improve consistency, fix typos and formatting. + +Tue Dec 9 12:48:32 2014 Josef Simanek <josef.simanek@gmail.com> + + * vm_eval.c (rb_eval_string_wrap): [DOC] Fix `rb_eval_string_wrap` + documentation. It is referencing `require` instead of `load`. + The former does not have the optional argument. [Fix GH-779] + +Tue Dec 9 10:16:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (rb_frame_last_func): return the most recent frame method + name. + + * thread.c (recursive_list_access): use the last method name, + instead of the current method name which can be unset in some + cases, not to use a symbol by the invalid ID. + [ruby-core:66742] [Bug #10579] + +Sun Dec 7 19:36:12 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * ext/socket/basicsocket.c, ext/socket/sockssocket.c: + remove code for $SAFE=4. + +Sun Dec 7 10:20:55 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rdoc: Update to RDoc 4.2.0. + * test/rdoc: ditto. + +Sun Dec 7 09:52:30 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems: Update to RubyGems 2.4.5. + * test/rubygems: ditto. + +Sat Dec 6 10:05:08 2014 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/imap.rb: Fix undefined variable usage & refactor/DRY + code. Patch by @aledovsky. [Fixes GH-770] + + * test/net/test_imap.rb: related test. + +Sat Dec 6 10:09:44 2014 Eric Wong <e@80x24.org> + + * thread.c (do_select): rename parameters to avoid shadowing + +Sat Dec 6 09:22:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rake: Update to rake 10.4.2 + * test/rake: ditto. + +Sat Dec 6 06:48:03 2014 Eric Wong <e@80x24.org> + + * compile.c (rb_iseq_build_from_ary): remove misc handling + +Sat Dec 6 06:14:23 2014 Vit Ondruch <vondruch@redhat.com> + + * configure.in (RUBY_LIB_VERSION): Fix --with-ruby-version + configuration option. get rid of quoting in config.status. + + * template/verconf.h.tmpl: quote RUBY_LIB_VERSION here. + [ruby-core:66724] [Bug #10572] + +Sat Dec 6 04:33:52 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/pp.rb (File::Stat#pretty_print): some platforms (such as Windows) + does not have major/minor parts of device. + +Fri Dec 5 22:43:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/psych/lib/psych.rb: bump version to 2.0.8 + * ext/psych/psych.gemspec: ditto. + * ext/psych/psych_emitter.c: ditto. + * ext/psych/psych_parser.c: ditto. + +Fri Dec 5 17:09:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/socket/option.c (inet_ntop): link aliased inet_ntop in + libruby on mswin not rb_w32_inet_ntop which fails to link for + unknown reason. + +Fri Dec 5 11:09:54 2014 Eric Wong <e@80x24.org> + + * iseq.c (prepare_iseq_build): remove unused block_opt param + (rb_iseq_new_with_bopt_and_opt): remove + (rb_iseq_new_with_opt): inline removed function + (rb_iseq_new_with_bopt): remove + (iseq_load): adjust prepare_iseq_build call + [Feature #10565] + +Fri Dec 5 09:46:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_yylex): fix lex_state after tLABEL_END, should + be EXPR_LABELARG to be followed by "paren with arg". + [ruby-core:66705] [Feature #4935] + +Fri Dec 5 02:27:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/extmk.rb: as all extension objects including initializations + of ext and enc should be linked to libruby if enable-shared, + EXTOBJS should not be linked to main programs. + [ruby-core:66675] [Bug #10566] + +Thu Dec 4 07:06:02 2014 Eric Wong <e@80x24.org> + + * compile.c (rb_iseq_build_from_exception): entry->sp is unsigned + (iseq_build_callinfo_from_hash): account for kw_arg + (iseq_build_from_ary_body): update for r35459 + (CHECK_STRING, CHECK_INTEGER): remove unused checks + (int_param): new function for checking new `params' hash + (iseq_build_kw): new function for loading rb_iseq_param_keyword + (rb_iseq_build_from_ary): account for `misc' entry and general + structure changes + [Feature #8543] + * iseq.c (CHECK_HASH): new macro (for `misc' and `param' entries) + (iseq_load): account for `misc' and `params' hashes + (iseq_data_to_ary): add final opt to arg_opt_labels, + fix kw support, account for unsigned entry->sp + * ext/-test-/iseq_load/iseq_load.c: new ext for test + * ext/-test-/iseq_load/extconf.rb: ditto + * test/-ext-/iseq_load/test_iseq_load.rb: new test + +Thu Dec 4 06:56:57 2014 Eric Wong <e@80x24.org> + + * iseq.c (iseq_free): avoid segfault on incomplete iseq + * test/ruby/test_syntax.rb (test_invalid_next): new test + for syntax error, not segfault + +Thu Dec 4 04:20:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * load.c (ruby_require_internal): ignore error detail, just return + an error. + +Wed Dec 3 17:13:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * encoding.c (load_encoding): use rb_require_internal instead of + calling rb_require_safe with protection. + +Wed Dec 3 16:47:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * load.c (register_init_ext, ruby_init_ext): defer running the + registered initialization function until required, not to enable + extensions which have global effects just by loading, e.g., + mathn/complex and mathn/rational. fix `make test` with + --with-static-linked-ext. + + * enc/encinit.c.erb (Init_enc): initialize encdb and transdb + directly. + +Wed Dec 3 14:51:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * load.c (ruby_require_internal): separate from rb_require_safe, + not to raise exceptions. + + * ruby.c (process_options): remove unnatural encoding search. + +Wed Dec 3 14:34:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (setup_fake_str): fake string does not share another + string, but just should not free. + +Wed Dec 3 11:14:14 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (w32_spawn): `v2` is used not only for `shell` but also + `cmd`, so must not free before using `cmd`. + [ruby-core:66648] [Bug #10563] + +Wed Dec 3 09:48:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/racc/cparse/cparse.c (cparse_params_type): use typed data. + +Tue Dec 2 21:33:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: use typed data for com_hash. + +Tue Dec 2 15:30:30 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * array.c (rb_ary_plus): in documentation, added note about + inefficiency of repeated += operations. + +Tue Dec 2 07:20:21 2014 Eric Wong <e@80x24.org> + + * iseq.c (iseq_data_to_ary): keep hidden variables + Thanks to wanabe [ruby-core:66566] + +Tue Dec 2 06:46:57 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych.rb: bumping version + + * ext/psych/psych.gemspec: ditto + +Tue Dec 2 06:34:08 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/to_ruby.rb: support objects that are + marshalable, but inherit from basic object. + Thanks Sean Griffin <sean@thoughtbot.com> + + * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto + + * test/psych/test_marshalable.rb: test for fix + +Tue Dec 2 06:32:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (ripper_flush_string_content): preserve the dispatched + results at tSTRING_CONTENT. [ruby-dev:48714] [Bug #10437] + + * parse.y (regexp_contents): check in ripper only if the whole + content is a single regexp without interpolation. + [ruby-dev:48714] [Bug #10437] + +Tue Dec 2 06:30:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (rb_reg_region_copy): new function to try with GC if copy + failed and return the error. + +Tue Dec 2 04:43:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (CHECK_REGION_COPIED): onig_region_copy() can fail when + memory exhausted but returns nothing, so check by if allocated. + +Tue Dec 2 02:53:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (magic_comment_encoding): enable in ripper, since the + encoding is necessary to parse non-default encoding scripts. + +Tue Dec 2 02:30:25 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (URI::Generic.build): + use hostname= to detect and wrap IPv6 hosts. + Build is accepting URI components and users may not expect + that a host component needs to be wrapped with square brackets + since it's not providing a URI. + Note: initialize with arg_check => true does not wrap IPv6 hosts. + by Joe Rafaniello <jrafanie@redhat.com> + https://github.com/ruby/ruby/pull/765 fix GH-765 + + * test/uri/test_generic.rb: Add more tests + +Mon Dec 1 20:01:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: use typed data for WIN32OLE. + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_event.c: ditto. + +Mon Dec 1 17:20:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/Makefile.sub (verconf.h): so depends on verconf.mk, which + is rebuilt by setup.mak. + +Mon Dec 1 11:05:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * proc.c: fix grammar by @BenMorganIO [fix GH-764][ci skip] + +Mon Dec 1 10:49:53 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * man/rake.1: Update latest man content by @aledovsky + [fix GH-771][ci skip] + +Mon Dec 1 10:42:31 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * doc/syntax/refinements.rdoc: refinements are no longer experimental. + patch by @gaurish [fix GH-775][ci skip] + +Sun Nov 30 20:05:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (regexp_contents): fix a typo. pointed out by wanabe. + [ruby-dev:48741] [Bug #10543] + +Sun Nov 30 18:55:32 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): + Don't raise Interrupt. + +Sun Nov 30 17:11:05 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): Use + assert_separately. + +Sun Nov 30 00:02:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ruby.c (process_options, ruby_script): transcode script name and + program name to locale encoding as well as argv. + [ruby-dev:48752] [Bug #10555] + + * ruby.c (translit_char_bin): should not use code page dependent + CharNext on UTF-8 string. [ruby-dev:48752] [Bug #10555] + +Sat Nov 29 16:53:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ruby.c (ruby_set_argv): convert argv from UTF-8. + + * win32/win32.c (rb_w32_sysinit, cmdglob, w32_cmdvector): convert + wide char command line to UTF-8 argv, and glob in UTF-8 so that + metacharacters would match multibyte characters. + [ruby-dev:48752] [Bug #10555] + +Sat Nov 29 10:49:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/win32.c (win32_direct_conv, rb_w32_readdir): convert UTF-8 + and filesystem code page by using Win32 API directly. + +Sat Nov 29 09:37:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * error.c (syserr_initialize): simplify message building and get + rid of potential invalid byte sequence. + +Sat Nov 29 06:09:44 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * eval_error.c (error_print): respect the encoding of the message. + + * io.c (rb_write_error_str): use rb_w32_write_console() on Windows + if stderr is a tty. + +Fri Nov 28 05:10:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (--with-setup): add option to select ext/Setup file. + +Fri Nov 28 05:02:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dmyenc.c (Init_enc): separate from dmyext.c for statically + linked extension excluding encoding libraries. + +Thu Nov 27 21:58:30 2014 Tanaka Akira <akr@fsij.org> + + * common.mk (miniprelude.c): It does not depend on prelude.rb now. + +Thu Nov 27 21:49:49 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: List up files built always in the source directory + and source files built always in the build directory. + +Thu Nov 27 21:24:55 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * NEWS: add obsolete callcc. + +Thu Nov 27 19:59:49 2014 Koichi Sasada <ko1@atdot.net> + + * compile.c (iseq_compile_each): remove duplicated line event. + [Bug #10449] + + * test/ruby/test_settracefunc.rb: add and fix tests. + +Thu Nov 27 19:04:50 2014 Koichi Sasada <ko1@atdot.net> + + * vm_args.c: fix backtrace location for keyword related exceptions. + + For example, the following program + def foo(k1: 1); end # line 1 + foo(k2: 2) # line 2 + causes "unknown keyword: k2 (ArgumentError)". + + Before this patch, the backtrace location is only line 2. + However, error should be located at line 1 (over line 2 in + stack trace). This patch fix this problem. + + * class.c (rb_keyword_error_new): separate exception creation logic + from rb_keyword_error(), to use in vm_args.c. + + * vm_insnhelper.c (rb_arg_error_new): rename to rb_arity_error_new(). + + * vm_args.c (argument_arity_error): rename to argument_arity_error(). + + * vm_args.c (argument_kw_error): added to fix backtrace. + + * test/ruby/test_keyword.rb: add tests. + +Thu Nov 27 17:31:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (prelude.c): no longer depends on miniruby, since not + depending on rbconfig.rb. + +Thu Nov 27 17:12:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (miniprelude.c): miniruby needs no preludes. + +Thu Nov 27 17:10:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * template/prelude.c.tmpl: no code if no prelude code is given. + +Thu Nov 27 13:11:00 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (objspace_malloc_increase): enable lazy sweep on GC by malloc() + (malloc_increase) to make GC incrementally. + + This change can increase memory consumption. Report us if you find + any problem. + +Thu Nov 27 12:46:38 2014 Tanaka Akira <akr@fsij.org> + + * time.c (time_s_mkutc): [DOC] Time.utc's 10 arguments form + doesn't examine wday, yday, isdst and tz. + (time_s_mktime): [DOC] Time.mktime's 10 arguments form + doesn't examine wday, yday and tz. + Suggested by naruse. + +Thu Nov 27 11:45:33 2014 Eric Wong <e@80x24.org> + + * iseq.c (iseq_data_to_ary): add missing GC guard + +Thu Nov 27 10:51:59 2014 Koichi Sasada <ko1@atdot.net> + + * vm_core.h: add rb_thread_t::local_storage_recursive_hash + to speed up Thread#[:__recursive_key__] access. + [Bug #10511] + + * thread.c (threadptr_local_aref): add fast path for + :__recursive_data__. + + * thread.c (threadptr_recursive_hash, threadptr_recursive_hash_set): + add special accessor for recursive hash. + + * cont.c: store/restore local_storage_recursive_hash. + + * vm.c: init and mark local_storage_recursive_hash. + + * vm_trace.c (rb_threadptr_exec_event_hooks_orig): clear and restore + local_storage_recursive_hash directly. + +Thu Nov 27 07:11:00 2014 Eric Wong <e@80x24.org> + + * compile.c (iseq_calc_param_size): hoist out of iseq_set_arguments + +Wed Nov 26 22:28:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/ruby.h (rb_get_kwargs, rb_extract_keywords): export + keyword argument functions. + +Wed Nov 26 21:18:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/inlinetest.rb: removed unused test helper. + +Wed Nov 26 20:47:28 2014 Masaya Tarui <tarui@ruby-lang.org> + + * ext/continuation/continuation.c (Init_continuation): obsolete callcc. + first step of [Feature #10548]. + +Wed Nov 26 19:57:54 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_gc.rb (test_latest_gc_info): do test separately + to avoid mysterious behavior. + +Wed Nov 26 19:54:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/win32.c (constat_reset): do nothing on non-standard + console emulators. [ruby-core:66471] [Bug #10546] + +Wed Nov 26 19:44:13 2014 Tanaka Akira <akr@fsij.org> + + * lib/tsort.rb: Returns an enumerator if no block is given. + [ruby-core:66270] [Feature #10508] Proposed by Andrey Savchenko. + +Wed Nov 26 17:25:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (f_label, f_kw, formal_argument_gen): ignore invalid + formal argument in keyword argument definition. + [ruby-dev:48742] [Bug #10545] + +Wed Nov 26 15:32:06 2014 Koichi Sasada <ko1@atdot.net> + + * compile.c (iseq_set_sequence): use "nop" insn instead of + "jump to next insn". + https://bugs.ruby-lang.org/issues/8543#change-50085 + +Wed Nov 26 11:01:35 2014 Eric Wong <e@80x24.org> + + * iseq.c (iseq_s_compile_file): close IO when done + +Wed Nov 26 06:06:23 2014 Tanaka Akira <akr@fsij.org> + + * common.mk: encdb.h and transdb.h depends on $(PREP). + So prebuild files for them in tarball are useless. + +Wed Nov 26 02:08:44 2014 Tanaka Akira <akr@fsij.org> + + * tool/make-snapshot: Don't generate enc/trans/newline.c in tarball. + +Wed Nov 26 00:41:44 2014 Tanaka Akira <akr@fsij.org> + + * common.mk (prereq): Don't depends on prelude.c and golf_prelude.c. + Since they depend on $(PREP) which is miniruby, they are rebuilt + after miniruby is built, even if tarball contains them. + +Wed Nov 26 00:20:48 2014 Tanaka Akira <akr@fsij.org> + + * template/prelude.c.tmpl: Don't expand RbConfig::Config[...]. + It is not used now. + + * common.mk: prelude.c and golf_prelude.c doesn't depend on rbconfig. + +Tue Nov 25 17:07:06 2014 Koichi Sasada <ko1@atdot.net> + + * NEWS: add an "Implementation changes" section. + +Tue Nov 25 16:09:28 2014 Eric Hodel <drbrain@segment7.net> + + * lib/net/http.rb: Do not attempt SSL session resumption when the + session is expired. [Bug #10533] + +Tue Nov 25 15:59:46 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rake: Update to rake 10.4.0 + * test/rake: ditto. + * NEWS: ditto. + + * test/lib/minitest/unit.rb: Add compatibility shim for minitest 5. + This only provides minitest 5 unit test naming compatibility. + +Tue Nov 25 15:26:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * tool/vcs.rb (get_revisions): use Time.new instead of Time.mktime + which does not accept UTC offset, and offset manually for older + versions than 1.9. + +Tue Nov 25 12:14:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * process.c (Init_process): initialize static IDs before constant + definitions. [ruby-core:66445] + +Tue Nov 25 10:32:23 2014 Eric Wong <e@80x24.org> + + * compile.c (iseq_build_callinfo_from_hash): hoist out + (iseq_build_from_ary_body): shorten callinfo case + +Mon Nov 24 23:03:21 2014 Kouhei Sutou <kou@cozmixng.org> + + * gems/bundled_gems: Update to test-unit 3.0.7. + +Mon Nov 24 12:44:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * process.c (check_exec_redirect_fd, check_exec_redirect), + (rb_execarg_addopt): get rid of inadvertent ID pindown. + +Mon Nov 24 02:03:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_setter): preserve encoding of global variable + name in error message. + +Mon Nov 24 02:03:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * iseq.c (rb_insn_operand_intern): preserve encoding of method + name in CALL_INFO at disassembling. + +Mon Nov 24 02:02:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (must_respond_to): preserve encodings of variable name and + class name in warning message. + +Sun Nov 23 10:46:23 2014 Eric Wong <e@80x24.org> + + * internal.h (struct rb_execarg): 160 => 144 bytes on x86-64 + * ruby.c (struct load_file_arg): 48 => 40 bytes on x86-64 + * vm_args.c (struct args_info): ditto + +Sun Nov 23 07:46:54 2014 Andy Maloney <asmaloney@gmail.com> + + * io.c (rb_io_sysread): Remove redundant assignment of 'n'. + [Fix GH-767] + +Sat Nov 22 09:48:33 2014 Tanaka Akira <akr@fsij.org> + + * tool/make-snapshot: Specify PWD macro for make. + PWD environment variable may not exist. + +Fri Nov 21 11:58:58 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * lib/resolv.rb: fall back if canonicalization fails. + Thanks Vit Ondruch for the patch! [ruby-core:65836] + + * test/resolv/test_dns.rb: test for patch + +Sat Nov 22 01:11:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * object.c (rb_mod_const_get, rb_mod_const_defined): ditto. + + * variable.c (rb_const_missing, rb_mod_const_missing): call + const_missing without new ID to get rid of inadvertent ID + creation. + +Fri Nov 21 19:32:57 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * common.mk (ext/ripper/ripper.c): revert about srcdir and top_srcdir. + + * common.mk (ext/ripper/ripper.c): use $(PWD) for Unix, + $(MAKEDIR) for Windows. + +Fri Nov 21 18:12:37 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: Refactored. + +Fri Nov 21 14:25:40 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/Makefile.sub (top_srcdir): added because lacking this macro + causes build error at r48526. + +Fri Nov 21 12:00:58 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps (in_makefile): Use FILES_NEED_VPATH and + FILES_CONFUSING. + + * ext/objspace/extconf.rb: Add VPATH for id.h + +Fri Nov 21 09:10:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (ext/ripper/ripper.c): fix dependencies for the case + to make ripper.y and id.h under the build directory. + +Fri Nov 21 08:42:21 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * common.mk (ext/ripper/ripper.c): id.h in VPATH may exist in the build + directory. + + * common.mk (ext/ripper/ripper.c): $(RM) was not defined. + +Fri Nov 21 00:36:09 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/openssl/lib/openssl/x509.rb + (OpenSSL::X509::Name::RFC2253DN::StringChar): get rid of a false + positive assertion in ripper's test. + +Fri Nov 21 00:29:51 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/net/imap.rb (Net::IMAP::ResponseParser::BEG_REGEXP): no need to + use embed string. + +Fri Nov 21 00:19:17 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/uri/mailto.rb (URI::MailTo::EMAIL_REGEXP): should escape `#`. + +Thu Nov 20 23:17:11 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: Insert all dependencies found by compiler. + +Thu Nov 20 15:51:01 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * ext/nkf/depend (nkf.o): add nkf.c as dependency. + bsdmake tries to make nkf.o with nkf-utf8/nkf.c without this. + +Thu Nov 20 08:54:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (struct parser_params): reduce size by reordering + members and an unused member. + +Thu Nov 20 02:44:27 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Vector#independent? and associated class method + patch by gogo tanaka [#10451] + +Thu Nov 20 02:32:34 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add Vector#angle_with + Patch by Egunov Dmitriy [#10442] + +Thu Nov 20 02:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (ripper_flush_string_content, parser_parse_string): + preserve parsed string content. [ruby-dev:48714] [Bug #10437] + + * parse.y (ripper_new_yylval): abstract function to create ripper + wrapper, and make it able to hold another object. + +Thu Nov 20 01:00:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (reg_named_capture_assign_gen): use predefined ID + instead of rb_intern. + +Thu Nov 20 00:54:57 2014 Tanaka Akira <akr@fsij.org> + + * internal.h (ruby_init_setproctitle): Declare here. + +Thu Nov 20 00:26:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_here_document): append byte sequence directly to + the delayed content instead of creating an intermediate string + object. + +Wed Nov 19 21:11:01 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * common.mk (ext/json/parser/parser.c): don't touch parse.c, + ruby repo is a downstream. + +Wed Nov 19 20:38:11 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * common.mk (ext/ripper/ripper.c): use $(PWD) to get + <build-directory>/ext/ripper. + +Wed Nov 19 18:12:17 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/downloader.rb (RubyGems.download): Don't download gem if the + version is already downloaded. A gem file is versioned and + it must be identical if the version is the same. + +Wed Nov 19 17:59:25 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * common.mk (ext/ripper/ripper.c): pass build directory as VPATH. + + * ext/ripper/depend (.y.c): use VPATH for y.tab.c. + +Wed Nov 19 10:07:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * template/prelude.c.tmpl (Prelude#translate): strip VPATH prefix + from prelude names, so that srcdir differences do not make the + generated code different. + +Wed Nov 19 07:45:11 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (rb_w32_write): should set the error of + GetOverlappedResult()'s, not WriteFile()'s (it's always + ERROR_IO_PENDING, of course). + +Tue Nov 18 14:16:47 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_record): add information for debug print. + +Wed Nov 19 04:49:07 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * debug.c (set_debug_option): need the declaration. + + * debug.c (set_debug_option): use the same macro with the implementation + at win32/win32.c. + +Wed Nov 19 04:16:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (symbol_list): fix the node type of literal symbol list + with no interpolation. [ruby-core:66343] + +Wed Nov 19 00:26:15 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: Sort dependencies. + +Wed Nov 19 00:24:18 2014 Tanaka Akira <akr@fsij.org> + + * enc/encdb.c: Include internal.h. + +Tue Nov 18 23:23:45 2014 Tanaka Akira <akr@fsij.org> + + * internal.h: Gather declarations in non-header files. + +Tue Nov 18 23:45:52 2014 Tanaka Akira <akr@fsij.org> + + * debug.c (SET_WHEN): Don't declare debug variables here. + ruby_initial_gc_stress_ptr is changed int* to VALUE* at r41406. + + * internal.h (ruby_initial_gc_stress_ptr): Declared. + (ruby_enable_coredump): Ditto. + +Tue Nov 18 18:06:43 2014 Tanaka Akira <akr@fsij.org> + + * include/ruby/io.h (FMODE_WSPLIT): Removed. The write() system call + is not required to split. It was useful to avoid whole process + blocking in Ruby 1.8 but not useful since write() is invoked without + GVL. + (FMODE_WSPLIT_INITIALIZED): Ditto. + + * io.c (wsplit_p): Removed. + (io_writable_length): Removed. + (rb_fcntl): Don't update the removed flags. + +Tue Nov 18 03:23:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * object.c (check_setter_id): show the original argument instead + of nil on TypeError. + +Tue Nov 18 03:20:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * symbol.h (is_{local,global,instance,attrset,const,class,junk}_sym): + fix ID type names. + +Mon Nov 17 20:17:59 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_event.c: use typed data. + +Mon Nov 17 12:54:56 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rubygems/*, test/rubygems/*: Update to RubyGems 2.4.4 + master (2f6e42e). + +Mon Nov 17 06:13:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (proc_binding): use the original iseq on a binding from + proc from method object to get the location. + +Sun Nov 16 19:38:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (rb_current_receiver): new function to return the + receiver in the current control frame. [Feature #10195] + +Sun Nov 16 19:11:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/timeout.rb (Timeout::ExitException#exception): rescue + UncaughtThrowError which is specific for throw, instead of + ArgumentError. + +Sun Nov 16 18:22:18 2014 Eric Wong <e@80x24.org> + + * tool/update-deps: warning to disable ccache + +Sun Nov 16 13:11:35 2014 Tanaka Akira <akr@fsij.org> + + * common.mk (CCAN_LIST_INCLUDES): Unused variable removed. + (ENCODING_H_INCLUDES): Ditto. + (PROBES_H_INCLUDES): Ditto. + (VM_CORE_H_INCLUDES): Ditto. + +Sun Nov 16 11:07:25 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_io.rb (test_readpartial_locktmp): + remove unnecessary begin/end + +Sun Nov 16 00:45:23 2014 Tanaka Akira <akr@fsij.org> + + * common.mk: Specify dependencies for generated C sources. + +Sat Nov 15 23:10:45 2014 Tanaka Akira <akr@fsij.org> + + * common.mk: No need to declare dependencies which + will be detected by inference rules. + +Sat Nov 15 20:34:23 2014 Tanaka Akira <akr@fsij.org> + + * internal.h: Include ruby.h and ruby/encoding.h to be + includable without prior inclusion. + +Sat Nov 15 20:46:44 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb + (REXMLTests::TestDocument::EntityExpansionLimitTest): + Group tests by general entity and parameter entity. + +Sat Nov 15 20:43:31 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb + (REXMLTests::TestDocument::EntityExpansionLimitTest): Define + test XML in each test method because (1) each XML in used only + one test and (2) related data and code should be close. + +Sat Nov 15 20:39:06 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb + (REXMLTests::TestDocument::EntityExpansionLimitTest): Use + one test method for one test. + +Sat Nov 15 20:16:59 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb + (REXMLTests::TestDocument::EntityExpansionLimitTest): Use + setup and teardown instead of ensure in test. + +Sat Nov 15 20:11:34 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb (REXMLTests::TestDocument): Group + entity expansion limit related tests. + +Sat Nov 15 20:09:00 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb (REXMLTests::TestDocument::BomTest): + Fix wrong parent class. It doesn't need inherit tests in + TestDocument class. + +Sat Nov 15 19:48:59 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/mkmf.rb (depend_rules): support comments during a line. + + * lib/mkmf.rb (depend_rules): apply RULE_SUBST even if the dependency + file contains path. + +Sat Nov 15 19:25:46 2014 Tanaka Akira <akr@fsij.org> + + * common.mk: Remove comments in Dependency lines. + Notified by usa. + + * enc/depend: Ditto. + + * ext/**/depend: Ditto. + +Sat Nov 15 16:28:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (rb_throw_obj): throw UncaughtThrowError instead of + ArgumentError. [Feature #10480] + +Sat Nov 15 14:13:38 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: Extend to fix dependencies. + + * common.mk: Dependencies updated by tool/update-deps. + + * enc/depend: Ditto. + + * ext/**/depend: Ditto. + +Fri Nov 14 17:36:48 2014 Tanaka Akira <akr@fsij.org> + + * tool/update-deps: Support GNU Make 4.0. + +Fri Nov 14 16:59:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * gc.c (default_proc_for_compat_func): check arguments number and + type, and get rid of reentering this default proc. + +Fri Nov 14 16:33:06 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): support compatible layer for + GC.stat(symbol) type access. + +Fri Nov 14 16:19:08 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): add compatible layer. + From Ruby 2.2, keys of GC.stat are changed [Feature #9924]. + To provide compatible layer, GC.stat add a default_proc + (if default_proc of given Hash object is not set). + + At first use of this compatible layer of interpreter process, + show a warning message like that: + program: GC.stat[:total_allocated_object] + warning message: "warning: GC.stat keys were changed from Ruby + 2.1. In this case, you refer to obsolete `total_allocated_object' + (new key is `total_allocated_objects'). + Please check <https://bugs.ruby-lang.org/issues/9924> + for more information." + + Please correct my English message :) + + * hash.c (rb_hash_set_default_proc): export (in internal). + + * internal.h: ditto. + +Fri Nov 14 10:41:25 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: guard by #if/#endif with GC_ENABLE_INCREMENTAL_MARK + to hide unused codes. + + * gc.c: similar to GC_ENABLE_LAZY_SWEEP. + +Fri Nov 14 10:23:35 2014 Eric Wong <e@80x24.org> + + * vm_eval.c (rb_eval_cmd): use pre-defined idCall + +Fri Nov 14 09:25:44 2014 Eric Wong <e@80x24.org> + + * vm_eval.c (rb_yield_splat): add missing GC guard + [Bug #10509] + +Fri Nov 14 08:12:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gc.c: fix build error caused by implicit conversion with clang. + +Fri Nov 14 06:54:06 2014 Eric Wong <e@80x24.org> + + * insns.def (opt_succ): remove Time#succ optimization + [Feature #10501] + +Fri Nov 14 05:29:46 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: refactoring. + + * gc.c: use GC_ENABLE_INCREMENTAL_MARK instead of USE_RINCGC. + + * gc.c (gc_start): check FORCE_MAJOR_GC. + +Fri Nov 14 04:51:18 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: Tuning RincGC parameters. + + Before this patch, gc_marks_step() marks (white -> grey) fixed + number objects. However, this strategy does not fit practical + cases, for example too slow to make progress. + + This patch changes this strategy how many objects the + gc_marks_step() should handle. + + We can estimate how many times gc_marks_step() is called during + this major marking (== C) with the free slot number in pooled + pages. We also can estimate the living object number (== L) + using last marked_slots value. We can solve this problem (how + many objects should be process in gc_marks_step()) by L/C. + + * gc.c (rb_objspace_t): add rb_objspace_t::rincgc::pooled_slots and + step_slots. + +Fri Nov 14 01:26:47 2014 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/imap.rb (search_response): parse MODSEQ in SEARCH + responses properly. [ruby-core:64203] [Bug #10112] + +Fri Nov 14 01:03:17 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/envutil.rb: Moved from test/ruby/. + + * test/lib/find_executable.rb: Ditto. + + * test/lib/memory_status.rb: Ditto. + + * test/lib/test/unit.rb: require envutil. + + * test/: Don't require envutil in test files. + +Thu Nov 13 21:59:58 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * lib/rexml/document.rb: add REXML::Document#document. + reported by Tomas Hoger <thoger@redhat.com> and patched by nahi. + +Thu Nov 13 21:51:56 2014 Tanaka Akira <akr@fsij.org> + + * test/monitor/test_monitor.rb: Use assert_join_threads. + +Thu Nov 13 21:45:13 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl: Don't specify port number. + +Thu Nov 13 21:22:35 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl/ssl_server.rb: Unused file removed. + It is not used since r16111, Ruby 1.9.1. + +Thu Nov 13 18:50:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (rb_ensure): remove obsolete prot_tag comment. patch by + Jack Danger at [ruby-core:66238]. [misc #10502] + +Thu Nov 13 18:10:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm.c (rb_vm_make_proc_lambda): similar to rb_vm_make_proc() with + is_lambda argument. + +Thu Nov 13 12:11:18 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (rb_w32_fstat{,i64}): speed up. adjusting + timestamps in this function is to get rid of the side effect of + ENV["TZ"]. then, if ENV["TZ"] is not set, no need to adjust. + this change makes File#stat about 60% faster. + +Thu Nov 13 11:56:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * st.c: include "internal.h" for STATIC_ASSERT. + +Thu Nov 13 03:56:38 2014 Eric Wong <e@80x24.org> + + * gc.c (struct heap_page): trivial packing + 304 => 296 bytes on x86-64 + +Wed Nov 12 22:50:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gems/bundled_gems: Update to test-unit 3.0.6 and minitest 5.4.3. + +Wed Nov 12 22:30:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rubygems/*: Update to RubyGems 2.4.3 master (7b1f684). + +Wed Nov 12 00:26:37 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_object.rb: Specify an exception class for rescue clause. + + * test/dbm/test_dbm.rb: Ditto. + + * test/gdbm/test_gdbm.rb: Ditto. + + * test/sdbm/test_sdbm.rb: Ditto. + +Tue Nov 11 23:43:51 2014 Tanaka Akira <akr@fsij.org> + + * test/fileutils/test_fileutils.rb: Use assert_join_threads. + +Tue Nov 11 22:51:14 2014 Tanaka Akira <akr@fsij.org> + + * test/resolv/test_dns.rb: Use assert_join_threads. + +Tue Nov 11 22:33:08 2014 Tanaka Akira <akr@fsij.org> + + * test/net/pop/test_pop.rb: Use assert_join_threads. + +Tue Nov 11 22:07:20 2014 Tanaka Akira <akr@fsij.org> + + * test/net/http/test_https_proxy.rb: Use assert_join_threads. + +Tue Nov 11 18:09:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * template/prelude.c.tmpl: move from tool/compile_prelude.rb and + expand by generic_erb.rb. + +Tue Nov 11 13:01:31 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/rubygems/commands/contents_command.rb (files_in_default_gem): + remove useless sort. show_files will sort the result and + another branch, files_in_gem, doesn't sort. + it should be removed for consistency. + + * test/rubygems/test_gem_commands_contents_command.rb + (test_execute_default_gem): adjust the sort algorithm with + Gem::Commands::ContentsCommand#show_files, which sort items + as array of [prefix, basename] not strings. + +Tue Nov 11 10:37:09 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (sym_equal): use rb_obj_equal(). + rb_obj_equal() is specially optimized in + opt_eq_func()@vm_insnhelper.c. + + This fix is made from this discussion: + https://www.omniref.com/ruby/2.1.4/symbols/Symbol/%3D%3D#line=8361. + +Tue Nov 11 09:38:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rdoc/known_classes.rb: reverted regression changes of + rdoc known class. + +Tue Nov 11 00:21:50 2014 Tanaka Akira <akr@fsij.org> + + * test/net/imap/test_imap.rb: Don't ignore exceptions on server + threads. + +Mon Nov 10 23:34:13 2014 Tanaka Akira <akr@fsij.org> + + * test/net/ftp/test_ftp.rb (create_ftp_server): Don't ignore + exceptions on server thread. + Delete read_timeout method call to fix NoMethodError. + +Mon Nov 10 20:20:53 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (rb_w32_read): retry with reduced length if cannot to + write any data but no error occurs. + +Mon Nov 10 20:04:16 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/server.rb: Setup shutdown pipe in listen method. + +Mon Nov 10 19:37:09 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c, include/win32/win32.h (rb_w32_set_nonblock): new + function to support nonblock-mode of pipes. + + * win32/win32.c (rb_w32_read): nonblock-mode pipe returns ERROR_NO_DATA + if there is no data, but also returns it if remote-end is closed. + + * win32/win32.c (rb_w32_write): if cannot to write any data, it may be + blocking. + + * io.c (rb_io_set_nonblock): use rb_w32_set_nonblock for Windows. + + * ext/io/nonblock/nonblock.c (rb_io_nonblock_set): use ruby's API when + setting nonblock-mode. + + * test/ruby/test_io.rb: test nonblock pipes on Windows. + +Mon Nov 10 17:24:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/etc/etc.c (etc_getlogin): set login name encoding properly. + [ruby-core:66163] [Bug #10493] + +Mon Nov 10 16:20:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rubygems/*.rb: Update to RubyGems master(3e36528). + +Mon Nov 10 16:09:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (rb_f_kill): [DOC] mention known signal list. + [ruby-core:66162] [Bug #10492] + +Mon Nov 10 14:17:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rdoc/*.rb: Update to RDoc 4.2.0.alpha(579a11c) + +Mon Nov 10 12:44:39 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/server.rb: Less instance variables. + +Mon Nov 10 12:19:43 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/server.rb (shutdown): Use close() on @shutdown_pipe_w to + notify readability on the read side of the pipe. + write_nonblock() is not usable for pipe on Windows. + (cleanup_shutdown_pipe): Rescue IOError for @shutdown_pipe_w.close. + +Mon Nov 10 07:31:59 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/server.rb (initialize): Initialize shutdown pipe here + to avoid race condition. + (cleanup_shutdown_pipe): New private method. + (cleanup_listener): Extracted from shutdown method. + Call this method from start method to avoid race condition. + +Mon Nov 10 05:57:53 2014 Tanaka Akira <akr@fsij.org> + + * test/webrick/webrick.cgi: Don't use debug mode. + + * test/webrick/webrick_long_filename.cgi: Ditto. + +Sun Nov 9 23:25:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (vm_call_super): allow bound proc method to call super + method. + + * vm_insnhelper.c (vm_yield_with_cfunc): push defined class and + bound proc method entry to the control frame. + +Sun Nov 9 22:46:13 2014 Tanaka Akira <akr@fsij.org> + + * test/open-uri: Test server log in server thread. + + * test/webrick: Ditto. + +Sun Nov 9 22:28:34 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/httpstatus.rb: require webrick/accesslog for AccessLog. + +Sun Nov 9 21:03:59 2014 Tanaka Akira <akr@fsij.org> + + * test/webrick: Fix the argument order of assert_equal. + +Sun Nov 9 20:29:01 2014 Tanaka Akira <akr@fsij.org> + + * test/webrick: Store log in an array. + + * test/net/http: Ditto. + + * test/open-uri: Ditto. + +Sun Nov 9 18:35:36 2014 Tanaka Akira <akr@fsij.org> + + * test/xmlrpc: Refine log test. + +Sun Nov 9 18:33:33 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: Replaced if-else by + case in self.normalized? in parallel to r48309. + +Sun Nov 9 18:07:00 2014 Tanaka Akira <akr@fsij.org> + + * test/xmlrpc: Use assert_join_threads. + +Sun Nov 9 14:06:13 2014 Tanaka Akira <akr@fsij.org> + + * test/xmlrpc: Test webrick error log is empty. + +Sun Nov 9 13:47:02 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (is_incremental_marking): use #if/#else because + rb_objspace_t::flags::during_incremental_marking is not defined + when GC_ENABLE_INCREMENTAL_MARK is 0. + + * gc.c (will_be_incremental_marking, is_full_marking): similar fix. + +Sun Nov 9 12:16:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/securerandom.rb (SecureRandom.gen_random): separate + implementation details and select at the load time. + +Sun Nov 9 12:09:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/win32/lib/win32/registry.rb (Win32::Registry::API#Enum{Value,Key): + ditto. + +Sun Nov 9 11:48:40 2014 Tanaka Akira <akr@fsij.org> + + * test/net/http: Examine webrick log. + +Sun Nov 9 11:45:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gems/bundled_gems: upgraded to test-unit 3.0.5. + +Sun Nov 9 11:40:50 2014 Tanaka Akira <akr@fsij.org> + + * defs/known_errors.def: More errors for FreeBSD. + +Sun Nov 9 11:25:11 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * gems/bundled_gems: upgraded to power_assert 0.2.0. + +Sun Nov 9 10:31:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/securerandom.rb: set the script encoding to make a string + literal in SecureRandom::Kernel32.last_error_message single byte + encoding so msg[] works in bytes, since FormatMessage() returns + the size in TCHARs, not in characters. + +Sun Nov 9 09:50:22 2014 Tanaka Akira <akr@fsij.org> + + * test/webrick: Refine log tests. + +Sun Nov 9 08:58:05 2014 Tanaka Akira <akr@fsij.org> + + * defs/known_errors.def (EHWPOISON): New errno symbol. + It is defined by glibc-2.16. + +Sun Nov 9 05:00:23 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/securerandom.rb (initialize): call the special method for Win32 + before checking `/dev/urandom` because we know windows doesn't have it. + +Sun Nov 9 04:01:46 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/securerandom.rb (SecureRandom::AdvApi32): split from `initialize`. + thanks @zzak to remember it. + +Sun Nov 9 02:05:33 2014 Tanaka Akira <akr@fsij.org> + + * test/net/http/utils.rb: Don't connect to spawned server + before actual test. + +Sun Nov 9 01:51:50 2014 Benoit Daloze <eregontp@gmail.com> + + * object.c (Module#const_defined?): [DOC] Revise the documentation. + Patch by Xavier Noria. + [Fixes GH-754] https://github.com/ruby/ruby/pull/754 + +Sun Nov 9 00:37:44 2014 Tanaka Akira <akr@fsij.org> + + * test/webrick: Examine log and use assert_join_threads. + +Fri Nov 7 00:00:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * template/unicode_norm_gen.tmpl: expand kompatible_table so that + recursive expansion is not needed at runtime. + +Thu Nov 6 23:58:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * pack.c (pack_pack): escape unprintable characters and preserve + the encoding of warning message. + +Thu Nov 6 23:55:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (sym_printable): QUOTE() should not raise an exception + even on invalid byte sequence. + +Thu Nov 6 21:44:36 2014 Tanaka Akira <akr@fsij.org> + + * test/test_unicode_normalize.rb: Rename TestNormalize to + TestUnicodeNormalize. + Define constants under TestUnicodeNormalize. + +Thu Nov 6 21:22:59 2014 Tanaka Akira <akr@fsij.org> + + * test/open-uri/test_open-uri.rb: Check empty webrick log. + +Thu Nov 6 19:27:34 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * re.c (unescape_nonascii): cast -1 for the case char is unsigned char. + If char is signed char, for example gcc for ARM or ppc64, it caused + infinite loop. + http://kmuto.jp/build-ruby/arm/ruby-trunk/log/20141106T013005Z.fail.html.gz + http://rubyci.blob.core.windows.net/f19p8/ruby-trunk/log/20141106T090217Z.fail.html.gz + +Thu Nov 6 09:53:18 2014 Eric Wong <e@80x24.org> + + * lib/uri/rfc2396_parser.rb (initialize): reduce bytecode size + 2088 => 1332 bytes on 32-bit x86 + +Thu Nov 6 08:49:49 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: Comment clarification. + +Wed Nov 5 23:43:24 2014 Naohisa Goto <ngotogenome@gmail.com> + + * compile.c (compile_data_alloc): add padding when strict alignment + is required for memory access. Currently, the padding is enabled + only when the CPU is 32-bit SPARC and the compiler is GCC. + [Bug #9681] [ruby-core:61715] + + * compile.c (STRICT_ALIGNMENT): defined if strict alignment is required + + * compile.c (ALIGNMENT_SIZE, ALIGNMENT_SIZE_MASK, PADDING_SIZE_MAX): + new macros for alignment word size, bit mask, max size of padding. + + * compile.c (calc_padding): new function to calculate padding size. + +Wed Nov 5 23:24:45 2014 Tanaka Akira <akr@fsij.org> + + * test/open-uri/test_open-uri.rb: Don't ignore webrick's log. + +Wed Nov 5 19:20:08 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/server.rb: Stop listener loop properly. + [ruby-core:66085] [Bug #10478] Fixed by Charles Nutter. + +Wed Nov 5 17:20:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/intern.h (rb_disable_super, rb_enable_super): warn + as deprecated at build time, instead of ignoring silently or + warning at runtime only. + +Wed Nov 5 16:55:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (rb_f_lambda): remove deprecated function, which has been + unavailable from extension libraries. + +Wed Nov 5 16:26:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/intern.h (rb_clear_cache): mark as deprecated, not + only warnings at runtime. + +Wed Nov 5 15:05:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_{,l,r}strip_bang): rb_str_subseq() will not + NUL-terminate the result string, in the future, so it will not + be needed in other cases. + +Wed Nov 5 14:11:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (lib/unicode_normalize/tables.rb): do nothing unless + BASERUBY is available. MINIRUBY cannot load extension libraries, + so cannot update Unicode data. + +Wed Nov 5 12:13:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_lstrip, rb_str_strip): reduce memory copy by + copying necessary part only. + + * string.c (rb_str_strip_bang, rb_str_strip): ditto. + +Wed Nov 5 12:13:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_lstrip, rb_str_strip): reduce memory copy by + copying necessary part only. + + * string.c (rb_str_strip_bang, rb_str_strip): ditto. + +Wed Nov 5 10:54:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_lstrip_bang, rb_str_rstrip_bang): terminate + wchar strings with wchar 0. + +Tue Nov 4 21:23:22 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/win32/lib/Win32API.rb: Fiddle::Importer is defined in + fiddle/import.rb and it's not loaded implicitly. + + * ext/win32/lib/Win32API.rb (Win32API#initialize): `import` is a string. + + * ext/win32/lib/Win32API.rb (Win32API#initialize): + Fiddle::Importer::CALL_TYPE_TO_ABI is private constant. + +Tue Nov 4 21:20:07 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/securerandom.rb (SecureRandom.random_bytes): use fiddle directly + instead of using Win32API. + +Tue Nov 4 21:04:30 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/rubygems/test_gem_request_set_lockfile.rb + (test_relative_path_from): driveletter support. + +Tue Nov 4 16:23:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/rubygems/test_gem_remote_fetcher.rb (RemoteFetcherCleanup): + close all pooled connections for each tests to fix leaked file + descriptors. + +Tue Nov 4 12:51:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/ruby.h (PRIsVALUE), vsnprintf.c (BSD_vfprintf): add + RUBY_PRI_VALUE_MARK to reduce danger of accidental conflict with + plain "%i". binary incompatible with extension libraries using + PRIsVALUE and built for 2.1 and earlier. [EXPERIMENTAL] + +Tue Nov 4 12:33:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * object.c: fix document of Kernel#String by @suzukaze + [fix GH-743][ci skip] + +Tue Nov 4 12:21:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/csv.rb: added documentation for skip_blanks option by @decasia + [fix GH-744][ci skip] + +Tue Nov 4 12:09:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/open3.rb: fix code formatting in documentation by @JoshCheek + [fix GH-747][ci skip] + +Tue Nov 4 08:57:37 2014 Eric Wong <e@80x24.org> + + * encoding.c (enc_memsize): remove unnecessary function + [ruby-core:65304] + +Mon Nov 3 18:09:39 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl/utils.rb: The default of :ignore_listener_error is + changed to false. + +Mon Nov 3 14:42:37 2014 Koichi Sasada <ko1@atdot.net> + + * iseq.c (iseq_free): resolve memory leak. + +Mon Nov 3 13:49:18 2014 Koichi Sasada <ko1@atdot.net> + + * iseq.c (iseq_memsize): catch up recent changes. + +Mon Nov 3 13:38:28 2014 Koichi Sasada <ko1@atdot.net> + + * vm_core.h: change semantics of opt_num and opt_table. + `opt_num' was the number of optional parameters + 1. + `opt_table' has "opt_num" entries. + + Change them to: + `opt_num' is the number of optional parameters. + `opt_table' has "opt_num + 1" entries. + + This change simplify parameter fitting logics. + + * compile.c: catch up this change. + + * iseq.c: ditto. + + * proc.c: ditto. + + * vm_args.c: ditto. + +Mon Nov 3 11:47:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * NEWS: added period into Matrix section. [ci skip] + [misc #10446][ruby-core:65987] + +Mon Nov 3 09:43:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * vm_args.c: fixed build error with clang + +Mon Nov 3 09:32:46 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/rfc3986_parser.rb (URI::RFC3986_Parser::RFC3986_URI): + allow '[' and ']' for URI input (and escape). [Bug #10402] + + * lib/uri/generic.rb (URI#query=): escape '[', '\', and ']'. + +Mon Nov 3 07:49:34 2014 Koichi Sasada <ko1@atdot.net> + + * vm_core.h: change iseq parameter data structure. + https://bugs.ruby-lang.org/issues/10440#change-49694 + + * change terminology `arg' to `param'. + * move rb_iseq_t::arg_* to rb_iseq_t::param. + * move rb_iseq_t::arg_size to rb_iseq_t::param::size. + * move rb_iseq_t::argc to rb_iseq_t::param::lead_num. + * move rb_iseq_t::arg_opts to rb_iseq_t::param::opt_num. + * move rb_iseq_t::arg_rest to rb_iseq_t::param::rest_start. + * move rb_iseq_t::arg_post_num to rb_iseq_t::param::post_num. + * move rb_iseq_t::arg_post_start to rb_iseq_t::param::post_start. + * move rb_iseq_t::arg_block to rb_iseq_t::param::block_start. + * move rb_iseq_t::arg_keyword* to rb_iseq_t::param::keyword. + rb_iseq_t::param::keyword is allocated only when keyword + parameters are available. + * introduce rb_iseq_t::param::flags to represent parameter + availability. For example, rb_iseq_t::param::flags::has_kw + represents that this iseq has keyword parameters and + rb_iseq_t::param::keyword is allocated. + We don't need to compare with -1 to check availability. + * remove rb_iseq_t::arg_simple. + + * compile.c: catch up this change. + + * iseq.c: ditto. + + * proc.c: ditto. + + * vm.c, vm_args.c, vm_dump.c, vm_insnhelper.c: ditto. + + * iseq.c (iseq_data_to_ary): support keyword argument. + +Mon Nov 3 03:39:04 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_method.rb: r48239 makes this test green. + +Mon Nov 03 03:02:38 2014 Koichi Sasada <ko1@atdot.net> + + * rewrite method/block parameter fitting logic to optimize + keyword arguments/parameters and a splat argument. + [Feature #10440] (Details are described in this ticket) + + Most of complex part is moved to vm_args.c. + + Now, ISeq#to_a does not catch up new instruction format. + + * vm_core.h: change iseq data structures. + + * introduce rb_call_info_kw_arg_t to represent keyword arguments. + * add rb_call_info_t::kw_arg. + * rename rb_iseq_t::arg_post_len to rb_iseq_t::arg_post_num. + * rename rb_iseq_t::arg_keywords to arg_keyword_num. + * rename rb_iseq_t::arg_keyword to rb_iseq_t::arg_keyword_bits. + to represent keyword bitmap parameter index. + This bitmap parameter shows that which keyword parameters are given + or not given (0 for given). + It is referred by `checkkeyword' instruction described bellow. + * rename rb_iseq_t::arg_keyword_check to rb_iseq_t::arg_keyword_rest + to represent keyword rest parameter index. + * add rb_iseq_t::arg_keyword_default_values to represent default + keyword values. + * rename VM_CALL_ARGS_SKIP_SETUP to VM_CALL_ARGS_SIMPLE + to represent + (ci->flag & (SPLAT|BLOCKARG)) && + ci->blockiseq == NULL && + ci->kw_arg == NULL. + + * vm_insnhelper.c, vm_args.c: rewrite with refactoring. + + * rewrite splat argument code. + * rewrite keyword arguments/parameters code. + * merge method and block parameter fitting code into one code base. + + * vm.c, vm_eval.c: catch up these changes. + + * compile.c (new_callinfo): callinfo requires kw_arg parameter. + + * compile.c (compile_array_): check the last argument Hash object or + not. If Hash object and all keys are Symbol literals, they are + compiled to keyword arguments. + + * insns.def (checkkeyword): add new instruction. + This instruction check the availability of corresponding keyword. + + For example, a method "def foo k1: 'v1'; end" is compiled to the + following instructions. + + 0000 checkkeyword 2, 0 # check k1 is given. + 0003 branchif 9 # if given, jump to address #9 + 0005 putstring "v1" + 0007 setlocal_OP__WC__0 3 # k1 = 'v1' + 0009 trace 8 + 0011 putnil + 0012 trace 16 + 0014 leave + + * insns.def (opt_send_simple): removed and add new instruction + "opt_send_without_block". + + * parse.y (new_args_tail_gen): reorder variables. + Before this patch, a method "def foo(k1: 1, kr1:, k2: 2, **krest, &b)" + has parameter variables "k1, kr1, k2, &b, internal_id, krest", + but this patch reorders to "kr1, k1, k2, internal_id, krest, &b". + (locate a block variable at last) + + * parse.y (vtable_pop): added. + This function remove latest `n' variables from vtable. + + * iseq.c: catch up iseq data changes. + + * proc.c: ditto. + + * class.c (keyword_error): export as rb_keyword_error(). + + * common.mk: depend vm_args.c for vm.o. + + * hash.c (rb_hash_has_key): export. + + * internal.h: ditto. + +Mon Nov 3 02:35:32 2014 Koichi Sasada <ko1@atdot.net> + + * sample/simple-bench.rb: added to measure performance of simple + lines. + +Mon Nov 3 02:33:43 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (obj_info): show T_STRING more details. + +Sun Nov 2 01:30:32 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl/test_ssl.rb: Don't ignore errors on listener threads, + as much as possible. + + * test/openssl/test_ssl_session.rb: Ditto. + + * test/openssl/test_partial_record_read.rb: Ditto. + +Sat Nov 1 23:11:05 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl/utils.rb (start_server): Don't close sockets before + threads finished. + +Sat Nov 1 22:06:24 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl/test_ssl_session.rb (test_ctx_client_session_cb): Don't + ignore errors of SSL accept. + (test_ctx_server_session_cb): Ditto. + + * test/openssl/utils.rb (server_loop): Add ignore_ssl_accept_error + argument. + (start_server): Refine threads waits. + + * test/ruby/envutil.rb (assert_join_threads): Show a thread before + backtrace. + +Sat Nov 1 20:40:18 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl/utils.rb (start_server, server_loop): Use a + pipe to stop server instead of shutdown/close a listening socket. + +Sat Nov 1 19:24:59 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/envutil.rb (assert_join_threads): New assertion to + join multiple threads without exceptions. + +Sat Nov 1 17:09:32 2014 Tanaka Akira <akr@fsij.org> + + * bignum.c (bary_mul_balance_with_mulfunc): Fix free work area + location. + [ruby-dev:48723] [Bug #10464] + [ruby-core:66044] [Bug #10465] + Reported by Kohji Nishihama. + +Sat Nov 1 15:45:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parse_atmark): mere atmark and two atmarks without + succeeding identifiers are invalid as instance/class variable + names. + +Sat Nov 1 06:31:41 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_variant.c: use typed data. + +Fri Oct 31 13:55:28 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/dl/*: remove DL as it is replaced by Fiddle. + [Feature #5458] Thanks to Jonan Scheffler <jonanscheffler@gmail.com> + for this patch + + * test/dl/*: ditto. + +Fri Oct 31 15:26:02 2014 Charles Oliver Nutter <headius@headius.com> + + * test/openssl/test_ssl.rb: Add certificate verification chain + test from JRuby community. + +Fri Oct 31 18:58:02 2014 Charles Oliver Nutter <headius@headius.com> + + * test/psych/test_emitter.rb: Fix line_width test...initial value + is impl-specific and attr assignment always returns LHS. + +Fri Oct 31 22:19:30 2014 Akinori MUSHA <knu@iDaemons.org> + + * ext/digest/lib/digest.rb (Digest()): This function should now be + thread-safe. If you have a problem with regard to on-demand + loading under a multi-threaded environment, preload "digest/*" + modules on boot or use this method instead of directly + referencing Digest::*. [Bug #9494] + cf. https://github.com/aws/aws-sdk-ruby/issues/525 + +Fri Oct 31 21:33:17 2014 Akinori MUSHA <knu@iDaemons.org> + + * test/digest/test_digest.rb: Drop #!. This no longer runs + stand-alone because it depends on ruby/envutil. + +Fri Oct 31 17:22:19 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/setup.mak: $(APPEND) with some arguments insert a space before + the arguments, so it causes error if the arguments are expected to be + a macro definition. this fix resolve the build error introduced at + r48210. + +Fri Oct 31 16:47:35 2014 Akinori MUSHA <knu@iDaemons.org> + + * ext/syslog/lib/syslog/logger.rb (Syslog::Logger::VERSION): Bump + the VERSION to 2.1.0. [ruby-core:64483] [Bug #10159] + +Fri Oct 31 16:33:46 2014 Akinori MUSHA <knu@iDaemons.org> + + * lib/net/imap.rb (Net::IMAP#fetch): [DOC] Document that + Net::IMAP#fetch will return nil instead of an empty array. + +Fri Oct 31 12:54:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (.unicode-tables.time): needs Unicode files always, + and should update after downloading these files. + [ruby-core:66026] [Bug #10461] + +Fri Oct 31 10:16:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: reverted r48199, it's unrelated configuration. + +Fri Oct 31 09:58:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_unicode_normalize.rb: added unicode version number to + test data location. + +Fri Oct 31 09:56:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .gitignore: ignored unicode data with version directories. + +Fri Oct 31 09:35:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: tweak build scripts for unicode_normalize.rb. + +Thu Oct 30 18:47:04 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * common.mk: fix for the case ALWAYS_UPDATE_UNICODE=no + +Thu Oct 30 13:23:23 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: changed Unicode data download location + from latest Unicode version to Unicode 7.0.0. + +Thu Oct 30 11:16:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_insnhelper.c (vm_callee_setup_arg{_complex,}): try conversion + by to_ary for a lambda, as well as a proc. + [ruby-core:65887] [Bug #9605] + +Wed Oct 29 21:13:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (gettable_gen): warn circular argument reference, for + transition from 2.1 and earlier. [ruby-core:65990] [Bug #10314] + +Wed Oct 29 20:41:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_params): remove unused member `cur_mid`. + this has been taken over by `in_def` since 1.6. + +Wed Oct 29 14:44:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * load.c (rb_f_load): path name needs to be transcoded to OS path + encoding. [ruby-list:49994] + +Wed Oct 29 11:48:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (__builtin_setjmp): disable with gcc/clang earlier + than 4.3 on Mac OS X. [ruby-core:65174] [Bug #10272] + +Wed Oct 29 11:43:43 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Generalize Vector#cross_product to arbitrary + dimensions + based on a patch by gogo tanaka [#10074] + +Wed Oct 29 11:43:11 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add Matrix#adjucate + patch by gogo tanaka [#10056] + +Wed Oct 29 11:42:33 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add aliases for Vector#cross & dot + patch by gogo tanaka [#10352] + +Wed Oct 29 10:00:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gems/bundled_gems: Update latest version of bundled gems. + +Tue Oct 28 16:52:07 2014 Eric Wong <e@80x24.org> + + * signal.c (install_sighandler): remove rb_disable_interrupt and + rb_enable_interrupt calls + (init_sigchld): ditto + (Init_signal): disable and enable interrupt once around all + install_sighandler and init_sigchld to reduce syscalls at start + [Feature #9345] [ruby-core:59480] + +Tue Oct 28 16:22:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ruby.c (process_options, load_file_internal2): should not + require other files when dump option is given. + [ruby-dev:48712] [Bug #10435] + +Tue Oct 28 14:51:38 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: remove apple-gcc4.2 from CC candidates. + +Mon Oct 27 20:13:37 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/rexml/entity.rb: keep the entity size within the limitation. + reported by Willis Vandevanter <will@silentrobots.com> and + patched by nahi. + +Mon Oct 27 17:17:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (method_proc): the receiver of binding from method should + be same as the receiver of the method. + [ruby-core:65917] [Bug #10432] + +Mon Oct 27 16:26:37 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_super.rb: add a test to check block passing. + +Mon Oct 27 15:59:26 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: is_incremental_marking(), will_be_incremental_marking(): + use `&&' with GC_ENABLE_INCREMENTAL_MARK instead of using + #if/#else/#endif. + +Mon Oct 27 13:40:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * gc.c (gc_sweep_rest): sweep rest pages regardless of whether + lazy sweep is enabled or not. based on the patch by Masahiro + Ide at [ruby-dev:48706]. [Bug #10431] + +Mon Oct 27 11:18:32 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): + reduce garbage during forks + +Sun Oct 25 12:26:26 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * template/insns.inc.tmpl, insns_info.inc.tmpl, known_errors.inc.tmpl, + minsns.inc.tmpl: fixed path of generating script. + +Sun Oct 26 12:24:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp, Ripper.sexp_raw): + return nil on error. [ruby-dev:48678] [Bug #10405] + +Sun Oct 25 11:24:24 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * string.c: improved comment. + +Sun Oct 26 07:40:11 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_val2variant, ole_invoke): refactoring. + use ole_variant2variant to convert WIN32OLE_VARIANT object to + VARIANT object. + + * ext/win32ole/win32ole_variant.c: refactoring. add + ole_variant2variant. + * ext/win32ole/win32ole_variant.h: ditto. + +Sat Oct 25 22:28:17 2014 Tanaka Akira <akr@fsij.org> + + * io.c (io_binwrite_string): Test writev() failure. + +Sat Oct 25 20:19:19 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * test/test-unicode_normalize.rb: added test_us_ascii. + +Sat Oct 25 20:09:09 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: added US_ASCII + as trivially supported encoding (is always normalized, + and may appear mixed in with UTF-8 or other Unicode + encodings). + +Sat Oct 25 20:01:01 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * test/test-unicode_normalize.rb: added + test_raise_exception_for_non_unicode_encoding. + +Sat Oct 25 19:30:30 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * test/test-unicode_normalize.rb: removed unused function. + +Sat Oct 25 18:41:41 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * template/unicode_norm_gen.tmpl: Adjusted name of generating file. + +Fri Oct 24 22:49:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_yylex): dispatch newline and space at fluent + interface, so that the following identifier does not include the + space. [ruby-dev:48684] [Bug #10411] + +Fri Oct 24 20:41:36 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * signal.c (check_reserved_signal_): fix write count since r47991. + +Thu Oct 23 21:42:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (rb_hash_delete): now does not call the block given to + the current method. [ruby-core:65861] [Bug #10413] + +Thu Oct 23 19:13:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_method.c (rb_method_entry_make): warn redefinition only for + already defined methods, but not for undefined methods. + [ruby-dev:48691] [Bug #10421] + +Thu Oct 23 17:19:04 2014 Kouhei Sutou <kou@cozmixng.org> + + * lib/rexml/source.rb (REXML::IOSource#encoding_updated): Fix a + bug that can't parse XML correctly when + Encoding.default_internal is different with XML + encoding. REXML::Source converts XML encoding on read. So IO + should not convert XML encoding. + Based on patch by NAKAMURA Usaku. + [ruby-dev:48686] [Bug #10418] + + * test/rexml/test_encoding.rb + (REXMLTests::EncodingTester#test_parse_utf16_with_utf8_default_internal): + Add the for the above case. + +Thu Oct 23 16:29:02 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_encoding.rb + (REXMLTests::EncodingTester#test_parse_utf16): Use meaningful + test name. "ticket" in the old test name means the ticket in + REXML's issue tracker. The REXML's issue tracker was gone. So + "ticket" is meaningless. + + * test/rexml/data/ticket_110_utf16.xml: Rename to ... + * test/rexml/data/utf16.xml: ... this. + +Thu Oct 23 16:18:11 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_encoding.rb + (REXMLTests::EncodingTester#test_ticket_110): Fix expected and + actual order. + Patch by NAKAMURA Usaku. Thanks!!! + +Thu Oct 23 10:47:16 2014 Eric Wong <e@80x24.org> + + * insns.def (getlocal,setlocal): add comment to def/opt_operand.def + +Thu Oct 23 10:22:41 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): + use IO#wait_readable instead of timeout + +Thu Oct 23 10:22:24 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): + ensure exit! during fork failure + +Thu Oct 23 10:21:21 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * NEWS: Added String#unicode_normalize(|!|d?) [ci skip] + +Thu Oct 23 03:41:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * class.c (unknown_keyword_error): delete expected keywords + directly from raw table, so that the given block is not called. + [ruby-core:65837] [Bug #10413] + +Thu Oct 23 02:33:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (update-unicode): invert dependency to run every times. + [ruby-core:65842] [Bug #10415] + + * common.mk (after-update): update files under source tree. + [ruby-core:65840] [Bug #10414] + +Wed Oct 22 22:38:59 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * ext/openssl/lib/openssl/ssl.rb (DEFAULT_PARAMS): override + options even if OpenSSL::SSL::OP_NO_SSLv3 is not defined. + this is pointed out by Stephen Touset. [ruby-core:65711] [Bug #9424] + +Wed Oct 22 21:31:56 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * common.mk (prelude.c): add dependency to LIB_SRCS because + enc/prelude.rb requires lib/unicode_normalize.rb, and it's also + requires lib/unicode_normalize/tables.rb (=LIB_SRCS). + +Wed Oct 22 21:09:51 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * configure.in (nacl_cv_cpu_nick): fix typo in PNaCl. + (XCFLAGS) Add -isystem flag to pnacl and nacl-newlib + (CXX): added + + * nacl/GNUmakefile.in (CXX): Added + (PPROGRAM): Use clang++ instead of clang because libnacl_io + depends on c++ std lib. + +Wed Oct 22 21:07:32 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * common.mk (build-ext): avoid trying to build dynamic libraries + if configured --with-static-linked-ext. + +Wed Oct 22 20:33:33 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * common.mk: Fixed grammar in comment [ci skip] + +Wed Oct 22 19:18:18 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/unicode_norm_gen.rb: Fixed escaping of backslash and + double quote ('\\\&' -> "\\\\\\\&"; double quoted string + is needed to make \& mean last match; double double + backslashes are needed because of two layers of escaping). + +Wed Oct 22 18:13:29 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/test-unicode_normalize.rb: as often said, ruby is sometimes built + at non-srcdir. + +Wed Oct 22 18:12:12 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * test/test-unicode_normalize.rb: Adjusted path for test + data file (now ../enc/unicode/data/NormalizationTest.txt). + +Wed Oct 22 18:07:07 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * test/test-unicode_normalize.rb: Removed explicit require, + changed method names, adjusted copyright. + +Wed Oct 22 18:00:00 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * test/test-unicode_normalize.rb: Importing from + https://github.com/duerst/eprun/blob/master/test/test_normalize.rb. + (removing trailing whitespace, fixing EOLs and adding EOL property) + +Wed Oct 22 08:21:09 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * nacl/pepper_main.c (Instance_DidCreate): mount devfs and rebind fd 0 + .. 2 so that stderr goes to the console of the browser. + +Wed Oct 22 03:47:43 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * ext/etc/etc.c (etc_nprocessors_affin): maximum "n" should be 16384. + +Wed Oct 22 03:37:00 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * ext/etc/etc.c (etc_nprocessors_affin): minor spell fix. + +Wed Oct 22 03:33:58 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * ext/etc/etc.c (etc_nprocessors_affin): optimize memory usage a + bit. Typical rubyist never use 8k cpus machine. + +Wed Oct 22 00:01:09 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * configure.in (XCFLAGS): Add include path for NaCl libraries. + (XLDFLAGS): ditto. + (NACL_LIB_PATH): new substitution + + * nacl/nacl-config.rb: support NACL_LIB_PATH + + * nacl/package.rb: ditto. + + * nacl/pepper_main.c: replace old implementations with nacl_io. + + * nacl/GNUmakefile.in: link nacl_io to pepper_ruby + + * ruby.c (rb_load_file): remove __attribute__((weak)) because the old + override hack was replaced with nacl_io. + + * file.c (rb_file_load_ok): ditto. + +Tue Oct 21 17:32:32 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * common.mk: Adding explicit creation of directory + enc/unicode/data because git doesn't handle empty + directories. [patch by Masahiro Ide, filed with r48073] + +Tue Oct 21 17:12:12 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/tables.rb: Committing to make version + update easier and more predictable, and reducing compilation + time. + +Tue Oct 21 15:56:56 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: Added comment to point to + relevant portion of Unicode standard for Hangul (de)composition + identifiers and algorithm. + +Tue Oct 21 11:49:16 2014 Andreas Schwab <schwab@suse.de> + + * gc.c (mark_current_machine_context) [__mc68000__]: Update stack + marking. + (rb_gc_mark_machine_stack) [__mc68000__]: Also handle it here. + +Mon Oct 20 23:59:38 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * enc/prelude.rb: we sometimes run ruby without library path (especially + for test), so should permit to run ruby if unicode_normalize.rb is + missing. + +Mon Oct 20 23:57:58 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * common.mk (lib/unicode_normalize/tables.rb): enable running (n)make + in non-srcdir. + +Mon Oct 20 23:58:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * tool/downloader.rb: add -a option to always download regardless + existing files. + +Mon Oct 20 23:18:18 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/mkmf.rb: no need to convert path separator for COPY because it's + ruby -run cp and it can treat '/' on any platform. + +Mon Oct 20 19:54:54 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * config.mk: Added missing data files as targets for + prerequisite update_unicode. + +Mon Oct 20 19:06:06 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: revert r48046. The s in sIndex + is not hungarian notation. The variable name sIndex is + directly taken from the relevant part of the Unicode + Standard, where it is written SIndex and stands for + 'syllable index'. See pp. 144/145 of + http://www.unicode.org/versions/Unicode7.0.0/ch03.pdf. + +Mon Oct 20 12:46:46 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: removing unnecessary 'self'. + +Mon Oct 20 12:37:37 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: change method names + in commented-out code. Followup to r48027. + +Mon Oct 20 02:23:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * variable.c (rb_ivar_get), vm_insnhelper.c (vm_getivar): improve + instance variable retrieval performance by checking ruby_verbose + before call of rb_warning and evaluation of its argument. + [ruby-core:65786] [Feature #10396] + +Sun Oct 19 23:31:29 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * lib/unicode_normalize.rb: (unicode_normalize!): change method name. + catch up the method name change at r48014. [Feature #10084] + +Sun Oct 19 20:05:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/tk/lib/tkextlib/tile/treeview.rb: fix syntax error. + +Sun Oct 19 18:39:39 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * enc/prelude.rb: Added automatic loading of + lib/unicode_normalize.rb. This makes sure that all + the methods that are available on String are + available without explicit require. + +Sun Oct 19 18:35:35 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: Added a missing + file extension in require statement. + +Sun Oct 19 18:13:13 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * common.mk: Added a rule to generate + lib/unicode_normalize/tables.rb. This rule still + needs to be integrated into the overall make process. + +Sun Oct 19 17:53:53 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Changed to dynamic + loading of actual normalization code and tables. + +Sun Oct 19 17:37:37 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Small documentation fix. + +Sun Oct 19 17:26:26 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Added documentation. + +Sun Oct 19 11:09:09 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/unicode_norm_gen.rb, lib/unicode_normalize.rb: + File name change from lib/unicode_normalize/normalize_tables.rb + to lib/unicode_normalize/tables.rb. + +Sun Oct 19 10:12:12 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Changing method names, see + https://bugs.ruby-lang.org/issues/10084#note-7 + +Sun Oct 19 10:10:10 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Changing module name. + +Sun Oct 19 10:08:08 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Changing require statement, + adjusting copyright. + +Sun Oct 19 10:04:04 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize.rb: Importing from + https://github.com/duerst/eprun/blob/master/lib/string_normalize.rb. + (removing trailing whitespace, fixing EOLs and adding EOL property) + +Sun Oct 19 09:56:56 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/unicode_norm_gen.rb: Changed module name. + +Sun Oct 19 09:48:48 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: Changed module name, + adjusted copyright. + +Sun Oct 19 09:38:38 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize/normalize.rb: Importing from + https://github.com/duerst/eprun/blob/master/lib/normalize.rb. + +Sat Oct 18 20:40:52 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * vm_core.h, proc.c, vm_backtrace.c, vm_trace.c: + remove rb_binding_new_with_cfp, and use rb_vm_make_binding instead. + +Sat Oct 18 20:38:48 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * vm_core.h, vm.c, proc.c: fix GC mark miss on bindings. + [ruby-dev:48616] [Bug #10368] + + * test/ruby/test_eval.rb: add a test code. + +Fri Oct 17 22:47:11 2014 Tanaka Akira <akr@fsij.org> + + * pack.c (pack_unpack): Add casts for char references for 'u'. + Fix line ending recognition algorithm. + +Fri Oct 17 21:49:52 2014 Tanaka Akira <akr@fsij.org> + + * pack.c (pack_unpack): Add casts for char references for 'b' and 'h'. + +Fri Oct 17 17:50:10 2014 Tanaka Akira <akr@fsij.org> + + * Avoid undefined behaviors found by gcc -fsanitize=undefined. + gcc (Debian 4.9.1-16) 4.9.1 + + * string.c (rb_str_sum): Avoid undefined behavior. + +Fri Oct 17 17:43:50 2014 Tanaka Akira <akr@fsij.org> + + * Avoid undefined behaviors found by gcc -fsanitize=undefined. + gcc (Debian 4.9.1-16) 4.9.1 + + * include/ruby/ruby.h (INT2FIX): Avoid undefined behavior. + + * node.h (nd_set_line): Ditto. + + * pack.c (encodes): Ditto. + (pack_unpack): Ditto. + + * regint.h (BIT_STATUS_AT): Ditto. + (BS_BIT): Ditto. + + * time.c (time_mdump): Ditto. + (time_mload): Ditto. + + * vm_core.h (VM_FRAME_MAGIC_MASK): Ditto. + + * vm_trace.c (recalc_add_ruby_vm_event_flags): Ditto. + +Fri Oct 17 15:06:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (unescape_nonascii): make dynamically compiled US-ASCII + regexps ASCII-8BIT encoding if binary (hexadecimal, control, + meta) escapes are contained, as well as literal regexps. + [ruby-dev:48626] [Bug #10382] + +Fri Oct 17 03:05:08 2014 Eric Wong <e@80x24.org> + + * test/-ext-/bug_reporter/test_bug_reporter.rb + (test_bug_reporter_add): revert r47972 + * test/ruby/test_rubyoptions.rb (test_segv_test): revert r47971 + [ruby-core:65764] + +Thu Oct 16 23:17:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (rb_sigaltstack_size): double default size to get rid + of heap corruption by alternate stack overflow in SEGV handler. + typically happened at fprintf() in control_frame_dump(). + +Thu Oct 16 22:43:12 2014 Tanaka Akira <akr@fsij.org> + + * vm_backtrace.c (id2str): Fix a variable name. + [ruby-dev:48642] [Bug #10389] + +Thu Oct 16 20:01:26 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/envutil.rb (assert_pattern_list): Show number of matched + patterns and characters. + +Thu Oct 16 16:26:09 2014 Eric Wong <e@80x24.org> + + * cont.c (fiber_store): fix WIN32 fibers + [ruby-core:65745] [ruby-core:65758] + +Thu Oct 16 15:05:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_here_document): do not append already appended + and disposed code fragment. [ruby-dev:48647] [Bug #10392] + +Thu Oct 16 10:35:33 2014 Eric Wong <e@80x24.org> + + * test/-ext-/bug_reporter/test_bug_reporter.rb + (test_bug_reporter_add): fix race + +Thu Oct 16 10:09:02 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_rubyoptions.rb (test_segv_test): fix race + +Thu Oct 16 09:17:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * cont.c (rb_fiber_t): fix compile error caused by move to + vm_core.h at r47964. [Feature #10341] + +Thu Oct 16 08:58:11 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): + avoid killing wrong parent + +Thu Oct 16 08:40:04 2014 Eric Wong <e@80x24.org> + + * cont.c (fiber_store): restore references to next_fib (fix typo) + +Thu Oct 16 08:26:08 2014 Eric Wong <e@80x24.org> + + * cont.c (fiber_store): remove references to nextfib + fix build when FIBER_USE_NATIVE is 0 + +Thu Oct 16 06:51:35 2014 Knut Franke <Knut.Franke@gmx.de> + + * vm_core.h: declare rb_fiber_t typedef + (rb_thread_t): fiber and root_fiber become rb_fiber_t * (from VALUE) + * vm.c (rb_thread_mark): use rb_fiber_mark_self + * cont.c (rb_fiber_t): prev becomes rb_fiber_t * (from VALUE) + (cont_mark, cont_free): simplify conditions + (rb_fiber_mark_self): new function + (fiber_mark): use rb_fiber_mark_self + (cont_save_thread, cont_restore_thread): inline + (cont_restore_thread): simplify + (fiber_setcontext): simplify conditions + (rb_cont_call): remove dereference + (fiber_t_alloc): update for rb_fiber_t->prev type change + (rb_fiber_start): ditto + (fiber_current): extract from rb_fiber_current + (return_fiber): move, simplify type checks + (rb_fiber_current): use fiber_current + (fiber_store): simplify type checks + (fiber_switch): ditto, simplify call to fiber_setcontext, + use fiber_current + (rb_fiber_transfer): update for type changes + (rb_fiber_terminate): move, use fiber_switch + (rb_fiber_resume): update for type changes + (rb_fiber_reset_root_local_storage): ditto + (rb_fiber_yield): use rb_fiber_switch instead of rb_fiber_transfer + (rb_fiber_m_transfer): ditto + [ruby-core:65518] [Feature #10341] + +Thu Oct 16 06:25:29 2014 Knut Franke <Knut.Franke@gmx.de> + + * cont.c (rb_context_t): comment on saved_thread + (cont_save_thread): sparse copy + (cont_init): copy extra fields + (fiber_init): use current thread VM stack size + [ruby-core:65518] [Feature #10341] + +Thu Oct 16 06:13:09 2014 Knut Franke <Knut.Franke@gmx.de> + + * cont.c (cont_capture): remove unnecessary variable + [ruby-core:65518] [Feature #10341] + +Thu Oct 16 05:02:31 2014 Knut Franke <Knut.Franke@gmx.de> + + * cont.c (fiber_store, fiber_switch): simplify + [ruby-core:65518] [Feature #10341] + +Thu Oct 16 04:28:41 2014 Knut Franke <Knut.Franke@gmx.de> + + * cont.c (rb_fiber_t): remove prev_fiber/next_fiber + (fiber_link_join, fiber_link_remove): remove functions + (fiber_free, fiber_init, root_fiber_alloc): + remove references to removed fields and functions + [ruby-core:65518] [Feature #10341] + +Wed Oct 15 22:08:37 2014 Tanaka Akira <akr@fsij.org> + + * ext/etc/etc.c (etc_nprocessors_affin): Test CPU_ALLOC availability. + CentOS 5 don't have CPU_ALLOC(). + +Wed Oct 15 18:26:19 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * ext/etc/etc.c (etc_nprocessors_affinity): use sched_getaffinity + for getting precious number of available cpus. + + * ext/etc/etc.c (etc_nprocessors): use etc_nprocessors_affinity if + possible. + + [Feature #10267] etc-nprocessors-kosaki2.patch + +Wed Oct 15 17:53:28 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/envutil.rb (assert_pattern_list) Renamed from + assert_regexp_list. + Show multiline string in multi lines. + + * test/-ext-/bug_reporter/test_bug_reporter.rb: Use + assert_pattern_list. + +Wed Oct 15 12:26:58 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/envutil.rb (assert_regexp_list): New assertion method. + + * test/ruby/test_rubyoptions.rb: Use assert_regexp_list. + +Wed Oct 15 07:21:09 2014 Tanaka Akira <akr@fsij.org> + + * enum.c: min(n) drops elements bigger than the n-th maximum element. + (struct nmin_data): New field to record the n-th maximum element, limit + (nmin_filter): Update limit field. + (nmin_i): Drop too big elements. + (nmin_run): Initialize limit field. + +Wed Oct 15 07:00:14 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_optimization.rb (test_string_size): new test + +Wed Oct 15 06:51:13 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_optimization.rb (test_string_eq_neq): new test + (test_string_ltlt): ditto + +Wed Oct 15 06:50:29 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_optimization.rb (test_hash_aset_with): + assert assignment + +Wed Oct 15 04:56:27 2014 Zachary Scott <e@zzak.io> + + * gc.c (rb_obj_id): [DOC] Fix typo, clean up sentence, and wrap cols + +Wed Oct 15 04:53:30 2014 Zachary Scott <e@zzak.io> + + * error.c: [DOC] Fix case of type in exception message by @tricknotes + [Fixes GH-740] https://github.com/ruby/ruby/pull/740 + + * object.c: ditto + +Tue Oct 14 21:39:16 2014 Vit Ondruch <vondruch@redhat.com> + + * tool/rbinstall.rb (gem): Fix permissions of bundled gems + specification files. [ruby-core:65700] [Bug #10383] + +Tue Oct 14 19:15:31 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_record.c: use typed data. + +Tue Oct 14 16:23:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * symbol.c (global_symbols): make ids two-dimensional array of + strings and symbols, for write-barrier. + + * symbol.c (global_symbols): make IDs immortal always, instead + of treating dynamic symbols as IDs. + + * iseq.c, marshal.c, string.c: use rb_str_intern instead of + rb_str_dynamic_intern. + + * symbol.c (rb_str_intern): rename rb_str_dynamic_intern. + +Tue Oct 14 10:19:10 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_optimization.rb (test_string_freeze): new test + (test_hash_aref_with): ditto + (test_hash_aset_with): ditto + +Tue Oct 14 01:27:54 2014 Tanaka Akira <akr@fsij.org> + + * enum.c (nmin_run): max(n) and max_by(n) returns an array in + descending order. + [ruby-core:65452] Suggested by David Grayson. + +Mon Oct 13 20:44:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (update-gems): chdir to the target directory and then + add the tool directory to load paths, for older BASERUBY. + [Bug #10372][ruby-core:65630] + +Mon Oct 13 17:53:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/xmlrpc/parser.rb: added new parser class using libxml-ruby gem. + [Feature #9379][ruby-core:59633] + * lib/xmlrpc/config.rb: ditto. + +Mon Oct 13 16:32:56 2014 Tanaka Akira <akr@fsij.org> + + * lib/find.rb (Find.find): Call to_path for arguments to obtain + strings. + [ruby-core:63713] [Bug #10035] Reported by Herwin. + +Mon Oct 13 15:42:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * common.mk: use relative load path for bundled_gems directory. + [Bug #10372][ruby-core:65630] + +Mon Oct 13 08:44:06 2014 Zachary Scott <e@zzak.io> + + * README.EXT: [DOC] fix example missing typedef with patch by + @steveklabnik [Fixes GH-739] https://github.com/ruby/ruby/pull/739 + + * README.EXT.ja: ditto. + +Mon Oct 13 06:52:09 2014 Eric Wong <e@80x24.org> + + * array.c (ary_recycle_hash): add RB_GC_GUARD + (rb_ary_diff): remove volatile + [Bug #10369] + +Mon Oct 13 03:20:23 2014 Zachary Scott <e@zzak.io> + + * ext/date/date_core.c: [DOC] Clean up whitespace, examples, and typos + in date_core based on a patch by @vipulnsward [Fixes GH-724] + https://github.com/ruby/ruby/pull/724 + +Mon Oct 13 02:39:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (remove_duplicate_keys): should not simply eliminate all + value nodes, which may have side effects. + [ruby-core:65625] [Bug #10315] + +Sun Oct 12 10:39:16 2014 Zachary Scott <e@zzak.io> + + * vm.c: [DOC] fix typo by @yui-knk [Fixes GH-738] + https://github.com/ruby/ruby/pull/738 + +Sun Oct 12 09:24:15 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/test/unit.rb: Hide skips by default. + +Sun Oct 12 01:37:11 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * file.c: include sys/time.h only if HAVE_SYS_TIME_H + +Sat Oct 11 22:29:40 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * file.c (HAVE_UTIMENSAT): disabled for NativeClient. + Fixes build error. + +Sat Oct 11 22:11:58 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * ext/extmk.rb: generates the rule for extinit.$(OBJEXT). + extinit.$(OBJEXT) used to be generated by the builtin rule, thus + didn't accept custom $(CC) and caused linkage error for cross + compiling. + +Sat Oct 11 18:46:50 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * include/ruby/intern.h (rb_fd_select): declare struct timeval, or the + struct gets local to the function in C99. + + * file.c (#include): add nacl/stat.h for PNaCl. + (utimes): added a declaration for PNaCl. + (stat_atimespec): stat::st_atimensec is long long but + timespec::tv_nsec is long in PNaCl. + (stat_mtimespec, stat_ctimespec): ditto. + (rb_group_member): disable getgroups unless HAVE_GETGROUPS. + (eaccess): unify the fallback to generic defined(USE_GETEUID). + + * io.c: include sys/time.h for struct timeval. + (rb_close_before_exec): nothing we can do if F_GETFD is not + available. + (ioctl): pnacl newlib actually doesn't have ioctl. + + * process.c (maxgroups): it is used iff + defined(_SC_NGROUPS_MAX) || defined(NGROUPS_MAX) but not + defined(HAVE_GETGROUPS) || defined(HAVE_SETGROUPS). + (obj2gid): fail unless the object is a Fixnum if getgrnam is not + available. + (disable_child_handler_fork_child): sigaction is not available in + PNaCl newlib. + + * configure.in (warnflags, strict_warnflags): avoid -ansi for strlcpy. + (rb_cv_gcc_atomic_builtins): also check + __atomic_or_etch because it is used in ruby_atomic.h. + (rb_cv_gcc_sync_builtins): ditto. + (HAVE_GETGRNAM): added. + +Sat Oct 11 15:32:08 2014 Eric Wong <e@80x24.org> + + * compile.c (iseq_build_from_ary_exception): move RB_GC_GUARD + (iseq_build_from_ary_body): use PRIsVALUE instead of RB_GC_GUARD + +Sat Oct 11 14:57:08 2014 Eric Wong <e@80x24.org> + + * string.c (rb_str_intern): remove unnecessary RB_GC_GUARD + +Sat Oct 11 13:47:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (remove_duplicate_keys): remove duplicate literal keys, + i.e., symbols and strings. [ruby-core:65368] [Bug #10315] + + * vm.c (kwmerge_i): override existing keys by new keys. + [ruby-core:65368] [Bug #10315] + + * parse.y (assocs): concatenate splatted literal hashes. the + former key has precedence even if duplicated literal keys + follow. [ruby-core:65368] [Bug #10315] + +Sat Oct 11 12:27:03 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * configure.in (RUBY_NACL): automatically locate pnacl-clang. + (RUBY_PLATFORM): pnacl instead of le32-nacl. + +Sat Oct 11 11:27:14 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * io.c: fix issues in the last two commits. don't disable cloexec for + platforms other than NativeClient. + + * ChangeLog: ditto. add entries for the last two commits. + +Sat Oct 11 11:12:00 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * signal.c (install_signalhandler, init_sigchld): allow failure because it + always fails with ENOSYS on NaCl. + +Sat Oct 11 11:11:53 2014 Yuki Yugui Sonoda <yugui@yugui.jp> + + * configure.in (RUBY_NACL and others): merge patch from naclports. Supports PNaCl. + + * dln.c: ditto. replace the old hacky dynamic loading over HTTP with nacl_io. + + * file.c: ditto. tentatively use access(2) instead of eaccess. + (rb_file_load_ok): weaken with attribute but not by postprocess. + + * io.c: ditto. + (socket.h): now NaCl has socket.h + (flock): disable here instead of nacl/ioctl.h + + * nacl/GNUmakefile.in: ditto. + (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY): + respect path to them if they are absolute. + This helps naclports to build ruby in their source tree. + (PROGRAM_NMF, .SUFFIXES): support .pnexe for PNaCl. + (ruby.o, file.o): move the hack to attributes in ruby.c and file.c + + * nacl/ioctl.h: ditto. removed. move the hack to io.c. + + * nacl/nacl-config.rb: ditto. support arm, pnacl and others. + + * nacl/pepper_main.c: ditto. support build in a naclports tree. + + * ruby.c (rb_load_file): ditto. weaken with attribute but not by postprocess. + +Sat Oct 11 09:32:00 2014 Zachary Scott <e@zzak.io> + + * ext/socket/unixsocket.c: [DOC] Fix example to render in HTML + properly, with a patch by @eval [Fixes GH-733] + https://github.com/ruby/ruby/pull/733 + +Sat Oct 11 04:14:41 2014 Kir Shatrov <shatrov@me.com> + + * lib/open-uri.rb (OpenURI::Options): add :open_timeout default + * (def OpenURI.open_http): check :open_timeout option + * (module OpenURI): rdoc for :open_timeout + * test/open-uri/test_open-uri.rb (test_open_timeout): new test + [Feature #10361] + +Fri Oct 10 11:27:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/io.h (rb_io_mode_flags, rb_io_modenum_flags): + deprecate old macros for compatibility for ruby 1.8 and older. + +Thu Oct 9 23:31:47 2014 Naohisa Goto <ngotogenome@gmail.com> + + * bignum.c (absint_numwords_generic): set an array element after + definition of a variable to fix compile error with older version + of fcc (Fujitsu C Compiler) 5.6 on Solaris 10 on Sparc. + [Bug #10350] [ruby-dev:48608] + +Thu Oct 9 16:15:26 2014 Eric Wong <e@80x24.org> + + * ext/-test-/st/foreach/extconf.rb: new file + * ext/-test-/st/foreach/foreach.c: ditto + * test/-ext-/st/test_foreach.rb: ditto + [Feature #10321] + +Thu Oct 9 12:40:28 2014 Eric Wong <e@80x24.org> + + * benchmark/bm_hash_aref_sym*.rb: force static symbols + +Thu Oct 9 12:38:28 2014 Eric Wong <e@80x24.org> + + * hash.c (rb_any_hash): remove unnecessary dsym check + +Thu Oct 9 07:20:30 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * missing/setproctitle.c: Avoid invalidating argv[1], argv[2], + etc. until the first call to Process.setproctitle, because + the ps command of AIX refers to the argv array. + [Bug #10090] + +Thu Oct 9 00:53:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (dir_s_aref): fix rdoc. `Dir.glob` allows an array but + `Dir[]` not. the former accepts an optional parameter `flags`, + while the latter accepts arbitrary number of arguments but no + `flags`. [ruby-core:65265] [Bug #10294] + +Wed Oct 8 21:44:10 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_variable.c: use typed data. + +Wed Oct 8 16:36:47 2014 gogo tanaka <mail@tanakakazuki.com> + + * test/ruby/test_syntax.rb: added syntax tests of underscore + arguments. [Feature #10340][ruby-core:65496] + +Wed Oct 8 07:42:39 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (URI#inspect): remove Object id. + URI is considered that it doesn't require id. + +Wed Oct 8 05:22:42 2014 Eric Wong <e@80x24.org> + + * ext/etc/etc.c (etc_systmpdir): set default tmplen correctly + Fixup r47826 + +Wed Oct 8 05:16:32 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add @- and @+ for Matrix and Vector. + patch by gogo tanaka [#10068] [#10069] + +Wed Oct 8 04:58:48 2014 John Bachir <j@jjb.cc> + + * bootstraptest/test_io.rb (assert_finish): + normalize rescue for Timeout::Error + * lib/net/ftp.rb (Net#read_timeout): ditto for doc + * lib/resolv.rb (Resolv::ResolvTimeout): ditto for subclass + * lib/webrick/httprequest.rb (_read_data): ditto for rescue + * sample/timeout.rb (p timeout): ditto for call + * test/drb/drbtest.rb (test_06_timeout): ditto + * test/ruby/test_readpartial.rb (test_open_pipe): ditto + * test/thread/test_queue.rb (test_queue_thread_raise): ditto + * thread.c (rb_thread_s_handle_interrupt): ditto for doc + [ruby-core:65481] [misc #10339] + +Wed Oct 8 04:38:29 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * test/ruby/test_process.rb (TestProcess#test_setsid): AIX + does not allow Process::getsid(pid) when pid is in a + different session. + +Wed Oct 8 04:33:04 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_encoding): + On AIX, locale_charmap is ISO-8859-1 with LANG=C. This means + the source encoding of stdin is ISO-8859-1, so "invalid + multibyte char" error does not occur. + +Wed Oct 8 04:30:29 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add Matrix#laplace_expansion. + patch by gogo tanaka [#10073] + +Wed Oct 8 04:29:21 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add Vector.basis. + Based on patch by gogo tanaka [#10072] + +Tue Oct 7 23:40:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (rb_f_kill): get rid of deadlock as unhandled and + discarded signals do not make interrupt_cond signaled. + based on the patch by Kazuki Tsujimoto at [ruby-dev:48606]. + [Bug #9820] + +Tue Oct 7 22:43:44 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_method.c: use typed data. + +Tue Oct 7 21:47:05 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_param.c: refactoring. + +Tue Oct 7 21:40:17 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_method.c: refactoring. add + olemethod_data_get_struct to wrap Data_Get_Struct. + * ext/win32ole/win32ole_method.h: ditto. + + * ext/win32ole/win32ole_param.c (oleparam_ole_param): + call olemethod_data_get_struct instead of Data_Get_Struct. + +Tue Oct 7 11:17:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/etc/etc.c (etc_systmpdir): try user temporary directory by + confstr() on Mac OS X. + c.f. http://www.opensource.apple.com/source/ruby/ruby-104/patches/ext_etc_etc.c.diff + +Tue Oct 7 10:48:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (struct stat.st_size): prefer off_t over int, long, + and so on. inspired by + http://www.opensource.apple.com/source/ruby/ruby-104/patches/config.h.ed + +Tue Oct 7 10:37:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (RUBY_UNIVERSAL_ARCH): fix missing quoting + brackets. incorporated from + http://www.opensource.apple.com/source/ruby/ruby-104/patches/configure.diff + +Mon Oct 6 23:34:42 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_param.c: use typed data. + +Mon Oct 6 22:37:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * symbol.h (struct RSymbol): move from internal.h. + +Mon Oct 6 21:43:03 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * error.c: update exception tree. [DOC] + reported by @hemge via twitter. + +Mon Oct 6 18:43:03 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * configure.in: Fix typo. [Bug #9914] + +Mon Oct 6 16:23:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (rb_f_kill): should not ignore signal unless the + default handler is registered. [ruby-dev:48592] [Bug #9820] + +Mon Oct 6 16:07:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/ruby/test_string.rb (test_LSHIFT_neary_long_max): enable + only on platforms where string size range is smaller than memory + space. this test does not make sense but just wastes memory and + time on other platforms, as it is hardly possible that a string + size becomes neary LONG_MAX if long size equals pointer size. + [ruby-core:65410] [Bug #10325] + +Mon Oct 6 11:21:21 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/unicode_norm_gen.rb: Adding/tweaking comments. + +Mon Oct 6 10:57:57 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/unicode_norm_gen.rb: Adjusted directory paths. + +Mon Oct 6 10:27:27 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/unicode_norm_gen.rb: Data generation script imported from + https://github.com/duerst/eprun/blob/master/lib/generate.rb + +Mon Oct 6 10:15:15 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: Adjust example in documentation for + Downloader.download. + +Mon Oct 6 10:07:07 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * lib/unicode_normalize: New folder for Unicode normalization + functionality + +Sun Oct 5 11:04:13 2014 Luiz Angelo Daros de Luca <luizluca@gmail.com> + + * ext/digest/{md5,rmd160,sha1,sha2}/extconf.rb: configure OpenSSL + only if bundled libraries is not used, so that OpenSSL is not + linked unnecessarily. [ruby-core:65404] [Bug #10324] + +Sun Oct 5 10:39:11 2014 Luiz Angelo Daros de Luca <luizluca@gmail.com> + + * ext/digest/rmd160/extconf.rb: fix transform function name to + check. [ruby-core:65091] [Bug #10252] + +Sun Oct 5 05:46:00 2014 Eric Wong <e@80x24.org> + + * ext/zlib/zlib.c (zstream_mark, zstream_free): update signature + (gzfile_mark, gzfile_free): ditto + (zstream_memsize): new function for rb_data_type->dsize + (gzfile_memsize): ditto + (zstream_data_type, gzfile_data_type): new data types + (zstream_new): Data_Make_Struct => TypedData_Make_Struct + (gzfile_new): ditto + (get_zstream, get_gzfile): Data_Get_Struct => TypedData_Get_Struct + (rb_zstream_flush_next_in): ditto + (rb_zstream_flush_next_out): ditto + (rb_zstream_avail_out): ditto + (rb_zstream_avail_in): ditto + (rb_zstream_closed_p): ditto + (rb_deflate_initialize): ditto + (rb_deflate_init_copy): ditto + (rb_inflate_initialize): ditto + (gzfile_ensure_close): ditto + (rb_gzfile_closed_p): ditto + (rb_gzfile_path): ditto + (rb_gzwriter_initialize): ditto + (rb_gzreader_initialize): ditto + (rb_gzreader_unused): ditto + [ruby-core:65377] [Feature #10319] + +Sat Oct 4 16:24:41 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * test/test_syslog.rb (TestSyslog#test_log): In AIX, each output + line of LOG_PERROR to stderr has an additional empty line appended, + so skip that line. + +Sat Oct 4 16:05:49 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * test/socket/test_unix.rb (TestSocket_UNIXSocket#test_too_long_path): + sockaddr_un.sun_path in AIX is defined as char[1024], + so "a" * 300 is not too long. "a" * 3000 would be enough. + +Sat Oct 4 09:12:03 2014 Zachary Scott <e@zzak.io> + + * ext/win32ole/sample/example*.rb: Add wait input to quit for examples + with patch provided by @windwiny [Fixes GH-705] + https://github.com/ruby/ruby/pull/705 + +Sat Oct 4 09:08:18 2014 Zachary Scott <e@zzak.io> + + * ext/win32ole/win32ole.c: [DOC] Fix typo in :nodoc: reported by + @windwiny to [Fix GH-705] https://github.com/ruby/ruby/pull/705 + + * ext/pty/pty.c: ditto + +Sat Oct 4 08:59:45 2014 Zachary Scott <e@zzak.io> + + * ext/openssl/ossl_rand.c: [DOC] Add call signature for pseudo_bytes + and random_bytes, wrap lines at 80 chars, and remove useless + comments. + +Sat Oct 4 08:49:34 2014 Zachary Scott <e@zzak.io> + + * ext/openssl/ossl_rand.c: [DOC] Add rdoc for method descriptions + By @vipulnsward [Fixes GH-657] https://github.com/ruby/ruby/pull/657 + +Sat Oct 4 08:23:48 2014 Zachary Scott <e@zzak.io> + + * ext/openssl/ossl_rand.c: Use rb_define_module_function instead of + macro. [Fixes GH-686] https://github.com/ruby/ruby/pull/686 + +Sat Oct 4 06:04:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_method.c(olemethod_set_member): remove + redundant NULL check. + * ext/win32ole/win32ole_type.c(oletype_set_member): ditto. + +Sat Oct 4 00:25:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: removed needless preparation for gcc. + +Fri Oct 3 23:41:20 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: enabled gcc build with osx on travis. + +Fri Oct 3 23:22:23 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> + + * template/fake.rb.in: fix make install failure due to MSYS path + with mingw on MSYS environment. + [ruby-core:64965] [Bug #10230] + +Fri Oct 3 21:02:32 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_io.rb (TestIO#test_advise): avoid to infinite loop. + +Fri Oct 3 19:26:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: enabled test results of linux. + +Fri Oct 3 18:52:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_io.rb (TestIO#test_advise): added workaround of fadvise(2) + with tmpfs and old linux kernel. [ruby-core:65355][Bug #10313] + +Fri Oct 3 18:22:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: Disabled to generate document on travis. + Reduce test running time. + +Fri Oct 3 12:42:15 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add hstack & vstack methods. + Based on a patch by creasywuqiong. [Fix GH-344] + +Fri Oct 3 12:37:48 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Fix Matrix.rows copy bug. + Patch by Arron Mabrey. [Fix GH-707] + +Fri Oct 3 06:06:28 2014 Eric Wong <e@80x24.org> + + * st.c (next_pow2): new function (from old bignum.c) + (new_size): use next_pow2 function + +Fri Oct 3 05:58:58 2014 Eric Wong <e@80x24.org> + + * vm_trace.c (rb_tp_t): pack 56 => 48 bytes on 64-bit + +Thu Oct 2 18:41:45 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/etc/etc.c (etc_nprocessors): Windows support. + see [Feature #10267] + +Thu Oct 2 12:21:52 2014 Tanaka Akira <akr@fsij.org> + + * ext/etc/etc.c (etc_nprocessors): New method. + Accepted by matz at RubyKaigi 2014. + [ruby-core:65142] [Feature #10267] + +Thu Oct 2 07:56:49 2014 Eric Wong <e@80x24.org> + + * iseq.c (rb_iseq_line_trace_each): explicit cast + Fix https://travis-ci.org/ruby/ruby/jobs/36814282 + +Thu Oct 2 05:40:05 2014 Eric Wong <e@80x24.org> + + * ruby.h: set rb_event_flag_t to uint32_t + [ruby-core:65315] [misc #10249] + +Thu Oct 2 05:32:17 2014 Eric Wong <e@80x24.org> + + * io.c (fptr_finalize): free memory before GC sweep + [ruby-core:65269] [Feature #10295] + +Thu Oct 2 05:27:24 2014 Eric Wong <e@80x24.org> + + * marshal.c (w_class): check dump_arg->compat_tbl before lookup + (w_object): lazy init ->compat_tbl before insert + (obj_alloc_by_class): ditto + (clear_dump_arg): free only non-NULL ->compat_tbl + (clear_load_arg): ditto for ->compat_tbl + (marshal_dump): ->compat_tbl defaults to zero + (marshal_load): ditto for ->compat_tbl + (r_entry0): check l->compat_tbl before lookup + (r_fixup_compat): ditto + [ruby-core:65305] [Feature #10302] + +Wed Oct 1 21:14:34 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_type.c: use typed data. + +Wed Oct 1 18:15:42 2014 Nolan Evans <nolane@gmail.com> + + * compile.c: remove commented out code. + +Wed Oct 1 17:38:53 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * test/fileutils/test_fileutils.rb: AIX does not allow + a sticky bit on a regular file. + +Wed Oct 1 17:31:41 2014 Eric Hodel <drbrain@segment7.net> + + * NEWS: Add RubyGems update. + +Wed Oct 1 17:28:58 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems: Update to RubyGems 2.4.2. + * test/rubygems: ditto. + +Tue Sep 30 22:25:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_data_type): separate ripper data type for from + parser. + +Tue Sep 30 18:46:31 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_typelib.c: use typed data. + +Tue Sep 30 09:51:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * common.mk: fixed broken reference of update-config_files task + +Mon Sep 29 22:54:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/file.c (append_wstr): set expanded length, not length of + appended string. fix "probable buffer overflow" bug. + [ruby-core:65317] [Bug #10304] + + * string.c (str_make_independent_expand): drop NOFREE flag after + reallocation, static buffer is not pointed anymore. + [ruby-core:65317] [Bug #10304] + +Sun Sep 28 23:59:17 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * gc.c (rb_gcdebug_print_obj_condition): use RVALUE_REMEMBERED + because GET_HEAP_REMEMBERSET_BITS is obsoleted. + +Sun Sep 28 11:14:14 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * common.mk: Created new target update-unicode to download + some Unicode data files. + +Fri Sep 26 15:03:19 2014 Masaki Matsushita <glass.saga@gmail.com> + + * lib/uri/rfc3986_parser.rb: raise URI::InvalidURIError when + uri doesn't respond to #to_str. [ruby-core:64453] [Bug #10150] + + * test/uri/test_parser.rb: test for above. + +Sat Sep 27 10:31:48 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * gems/bundled_gems: upgraded to power_assert 0.1.4. + +Fri Sep 26 12:52:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/stringio/stringio.c (strio_write): ASCII-8BIT StringIO + should be writable any encoding strings, without conversion. + [ruby-core:65240] [Bug #10285] + +Fri Sep 26 05:21:01 2014 Eric Wong <e@80x24.org> + + * object.c (rb_class_real): do not dereference 0 VALUE + + * test/ruby/test_module.rb (test_inspect_segfault): + Test case and bug report by Thomas Stratmann. + [ruby-core:65214] [Bug #10282] + +Fri Sep 26 05:12:10 2014 Eric Wong <e@80x24.org> + + * man/ruby.1: document stack size env variables + [Feature #10197] + +Thu Sep 25 19:37:34 2014 Eric Wong <e@80x24.org> + + * io.c (free_io_buffer): new function for a common pattern + (clear_readconv): use free_io_buffer + (rb_io_fptr_finalize): ditto + +Thu Sep 25 07:51:07 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * lib/matrix.rb: Fix docs. Patched by Ben Woodall. [GH-726] + +Wed Sep 24 19:04:04 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * enc/unicode/data: New directory for downloaded Unicode + data files. + +Wed Sep 24 18:59:59 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: Adjusting example for + Downloader.download to implementation changes in r47693. + +Wed Sep 24 18:06:06 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: Removing unused method + Downloader.download_if_modified_since. + (if ever used, just replace with Downloader.download) + +Wed Sep 24 17:59:59 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: Fixing raise after return. + +Wed Sep 24 17:55:55 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: Made Unicode data file location available + via :unicode Symbol. + +Wed Sep 24 10:45:45 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: Small fix to documentation comment. + +Tue Sep 23 22:00:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parse_ident): just after a label, new expression should + start, cannot be a modifier. [ruby-core:65211] [Bug #10279] + +Tue Sep 23 16:07:07 2014 Martin Duerst <duerst@it.aoyama.ac.jp> + + * tool/downloader.rb: added Downloader.download_if_modified_since + to reduce downloads of large files that change only rarely. + [ruby-core:65164] [CommonRuby - Feature #10084] + +Tue Sep 23 11:55:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: added rubyspec into travis tasks and eliminate to stdout. + +Mon Sep 22 20:00:29 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * test/win32ole/test_win32ole_variant.rb + (test_conversion_time2date_with_msec): test by using only + assert_in_delta to avoid to fail when converting Time object with + 999999999 nanoseconds into VT_DATE Variant. + +Mon Sep 22 19:49:12 2014 Zachary Scott <e@zzak.io> + + * doc/syntax/methods.rdoc: [DOC] [] and []= methods by @process + [Fixes GH-662] https://github.com/ruby/ruby/pull/662 + +Mon Sep 22 18:21:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: Only osx build is enabled. linux builds is random failure + and test results of major linux is covered by rubyci. + +Mon Sep 22 12:10:29 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_time_tz.rb: Fix test error with tzdata-2014g. + [ruby-core:65058] [Bug #10245] Reported by Vit Ondruch. + +Mon Sep 22 09:28:43 2014 Eric Wong <e@80x24.org> + + * ext/socket/ancdata.c ({send,recv}msg_args_struct): 24 => 16 bytes + * ext/socket/init.c (connect_arg): ditto + * ext/socket/raddrinfo.c (getnameinfo_arg): 56 => 48 bytes + (reductions only for 64-bit systems) + +Mon Sep 22 02:04:25 2014 Tanaka Akira <akr@fsij.org> + + * lib/drb/drb.rb: Support graceful shutdown. + (DRbTCPSocket#initialize): Create a pipe for shutdown notification. + (DRbTCPSocket#close): Invoke close_shutdown_pipe. + (DRbTCPSocket#close_shutdown_pipe): New private method. + (DRbTCPSocket#accept): Use accept_or_shutdown. + (DRbTCPSocket#accept_or_shutdown): New private method which returns + nil on shutdown. + (DRbServer#stop_service): Use shutdown instead of Thread#kill. + (DRbServer#run): Break infinite loop when main_loop returns nil. + (DRbServer#main_loop): @protocol.accept may return nil. + + * lib/drb/ssl.rb: Follow above change. + + * lib/drb/unix.rb: Ditto. + +Sun Sep 21 13:54:36 2014 Masaki Matsushita <glass.saga@gmail.com> + + * time.c: raise exception when minutes of utc_offset is out of 00-59. + patch is from Kenichi Kamiya. + [ruby-dev:47539] [Bug #8679] + + * test/ruby/test_time.rb: test for above. + patch is from Kenichi Kamiya. + +Sun Sep 21 19:04:08 2014 Narihiro Nakamura <authornari@gmail.com> + + * st.c (do_hash_bin): unused macro. + +Sun Sep 21 18:45:01 2014 Narihiro Nakamura <authornari@gmail.com> + + * parse.y (parser_class_nest): unused variable after YARV + merged (r11439). + +Sun Sep 21 18:14:03 2014 Narihiro Nakamura <authornari@gmail.com> + + * st.c (numberof): unused. internal.h has same macro. + + * node.c (F_CUSTOM2): unused. + +Sun Sep 21 14:11:23 2014 Tanaka Akira <akr@fsij.org> + + * thread_pthread.c (native_set_thread_name): New function to + set thread name visible with ps command on GNU/Linux. + Ex. ps -o %c -L + + * thread.c (thread_start_func_2): Call native_set_thread_name at + beginning. + (rb_thread_inspect_msg): Extract from rb_thread_inspect. + +Sun Sep 21 12:49:11 2014 Eric Wong <e@80x24.org> + + * iseq.c (rb_iseq_defined_string): trim redundant semi-colon + +Sun Sep 21 12:19:29 2014 Eric Wong <e@80x24.org> + + * file.c (rb_find_file_ext_safe): clear tmp buffer on failure + (rb_find_file_safe): ditto + +Sat Sep 20 04:42:18 2014 Masaki Matsushita <glass.saga@gmail.com> + + * lib/csv.rb: avoid unnecessary object allocations. + patch is from Andrew Vit. [ruby-core:63215] [Feature #9952] + +Sun Sep 21 12:10:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rexml/**/*.rb: removed commented-out code. + +Sat Sep 20 03:46:58 2014 Masaki Matsushita <glass.saga@gmail.com> + + * array.c: use rb_equal_opt() for performance improvement. + [ruby-core:64954] [Feature #10227] + +Sun Sep 21 11:16:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (rbtime2vtdate, vtdate2rbtime): fix + the bug in conversion of milliseconds. [Bug #10258] + + * test/win32ole/test_win32ole_variant.rb + (test_conversion_dbl2date_with_msec, + test_conversion_time2date_with_msec): use assert_in_delta instead + of assert_equal to treat an acceptable error range. + +Sun Sep 21 11:03:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (ruby_signal): although "EINVAL from sigaction(2) is + not a bug", but even it is a failure. pointed at toRuby/guRuby + in RubyHiroba. + +Sat Sep 20 03:00:26 2014 Masaki Matsushita <glass.saga@gmail.com> + + * lib/tempfile.rb: define parameters appropriately and some + refactoring. + + * lib/tmpdir.rb: ditto. + +Sat Sep 20 23:58:21 2014 Tanaka Akira <akr@fsij.org> + + * enum.c (enum_chunk): Deprecate the state management. + (enum_slice_before): Ditto. + +Sat Sep 20 15:39:11 2014 Tanaka Akira <akr@fsij.org> + + * enum.c (enum_slice_when): New method: Enumerable#slice_when. + (slicewhen_i): New function. + (slicewhen_ii): New function. + + * enumerator.c (InitVM_Enumerator): New method: + Enumerator::Lazy#slice_when. + + [ruby-core:62499] [Feature #9826] + +Sat Sep 20 11:55:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .travis.yml: added new configurations for osx on travis ci. + [fix GH-723] + * test/ruby/test_object.rb: tweaked to memory leak limit for osx build. + +Sat Sep 20 10:48:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (assoc): allow quoted ID as a key of a hash literal. + [ruby-core:34453] [Feature #4276] + +Sat Sep 20 10:23:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (iseq_set_arguments): store local variable IDs in + temporary list as Symbols. previously these are stored as + Fixnums to prevent from GC, but IDs of dynamic symbols can + exceed Fixnum range and cause RangeError at inverting from + Fixnum. [ruby-dev:48564] [Bug #10266] + +Sat Sep 20 10:02:51 2014 Tanaka Akira <akr@fsij.org> + + * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#pretty_print): + New method. + (OpenSSL::X509::Certificate#pretty_print): Ditto. + + * ext/openssl/lib/openssl/bn.rb (OpenSSL::BN#pretty_print): Ditto. + +Sat Sep 20 07:55:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (eval_string_with_cref): fix super from eval with + scope. set klass in the current control frame to the class of + the receiver in the context to be evaluated, this class/module + must match the actual receiver to call super. + [ruby-core:65122] [Bug #10263] + +Fri Sep 19 20:06:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * symbol.c (rb_str_dynamic_intern): check if the stem ID of + attrset ID is already registered as a static ID. + [ruby-dev:48559] [Bug #10259] + +Fri Sep 19 15:48:09 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/Makefile.sub (VCSUP): nothing to do if this worktree is not + under any VCS (it means that the worktree may be from the release + package). + +Fri Sep 19 10:47:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/ruby/test_math.rb (TestMath#assert_infinity): Float#finite? + returns true also for NaN, so use Float#infinite? instead. + [ruby-core:65117] [Feature #10261] + +Fri Sep 19 05:36:16 2014 Eric Wong <e@80x24.org> + + * NEWS: note --with-jemalloc option [ci skip] + +Thu Sep 18 16:26:27 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/rubygems/test_gem_commands_setup_command.rb: @ui uses StringIO + as its streams, and Encoding.default_external does not effect to + StringIOs already exist. so, we need to set external_encoding of + @ui.outs directly. this problem (test failure) does not appear in + the environments default_external is us-ascii or utf-8. + +Thu Sep 18 15:02:15 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/rubygems/test_gem_specification.rb: '/' is not always the root. + +Thu Sep 18 09:36:37 2014 Scott Francis <scott.francis@shopify.com> + + * vm_method.c (Init_Method): make global method cache size + configurable by environment variable + "RUBY_GLOBAL_METHOD_CACHE_SIZE" [Fix GH-719] + +Thu Sep 18 07:03:36 2014 Eric Wong <e@80x24.org> + + * test/-ext-/string/test_modify_expand.rb: increase limit + for {je,tc}malloc [Bug #10236] + +Thu Sep 18 06:41:18 2014 Eric Wong <e@80x24.org> + + * ext/zlib/zlib.c (struct gzfile): pack (288 => 272 bytes) on 64-bit + +Thu Sep 18 05:44:05 2014 Eric Wong <e@80x24.org> + + * ext/socket/init.c (rsock_connect): refactor for blocking + (wait_connectable): clear error before wait + [Bug #9356] + +Wed Sep 17 23:12:36 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/rfc3986_parser.rb: specify a regexp for :OPAQUE; generic.rb + assumes it is present, and will refuse all values otherwise. + by Matthew Draper <matthew@trebex.net> + https://github.com/ruby/ruby/pull/718 fix GH-718 + +Wed Sep 17 16:22:58 2014 Eric Wong <e@80x24.org> + + * ext/zlib/zlib.c (zlib_mem_alloc): check overflow + +Wed Sep 17 11:33:35 2014 Laurent Arnoud <laurent@spkdev.net> + + * test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof): + added test for long long [fix GH-716] + +Wed Sep 17 11:09:21 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * tool/rbinstall.rb: fixed invalid options with latest rubygems. + https://github.com/rubygems/rubygems/issues/1013 + +Tue Sep 16 19:19:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * benchmark/bm_app_aobench.rb: update outdated links to the + original program. [ruby-dev:48550] [Feature #10247] + +Tue Sep 16 01:06:40 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * reg*.c: Merge Onigmo 5.15.0 38a870960aa7370051a3544 + +Mon Sep 15 16:21:10 2014 Eric Wong <e@80x24.org> + + * io.c (struct io_advise_struct): 32 => 24 bytes on 64-bit + * io.c (struct io_internal_writev_struct): 24 => 16 bytes on 64-bit + * process.c (struct waitpid_arg): ditto + +Mon Sep 15 10:29:25 2014 Natalie Weizenbaum <nweiz@google.com> + + * ext/pathname/lib/pathname.rb (SAME_PATHS): + Pathname#relative_path_from uses String#casecmp to compare strings + on case-insensitive filesystem platforms (e.g., Windows). This can + return nil for strings with different encodings, and the code + previously assumed that it always returned a Fixnum. [Fix GH-713] + +Mon Sep 15 09:43:18 2014 Sho Hashimoto <sho.hsmt@gmail.com> + + * ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof): fix typo, + SIZEOF_LONG_LON. [Fix GH-714] + +Mon Sep 15 08:13:40 2014 Matthew Draper <matthew@trebex.net> + + * sprintf.c (rb_str_format): rational 'f' format works for more + values. [fix GH-717] + +Sun Sep 14 16:57:27 2014 Eric Wong <e@80x24.org> + + * template/vm.inc.tmpl: "insns.c" => "insns.def" + * tool/instruction.rb: typo fix + +Sun Sep 14 12:29:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_tracer.rb: fixed testcase for rubygems update. + +Sun Sep 14 12:29:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rubygems: Update to RubyGems 2.4.1 master(713ab65) + Complete history at: + https://github.com/rubygems/rubygems/blob/master/History.txt#L3-L216 + + * test/rubygems: ditto. + +Sun Sep 14 11:03:24 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych.rb: update version + * ext/psych/psych.gemspec: ditto + +Sun Sep 14 08:43:37 2014 Eric Wong <e@80x24.org> + + * ccan/container_of/container_of.h (container_of_or_null): added + [ccan 7ec5b8e06b2fd5fa98b1fcde1158c286d2d429d8] (David Gibson) + +Sun Sep 14 08:41:44 2014 Eric Wong <e@80x24.org> + + * ccan/list/list.h (list_del_init, list_node_init): new functions + for multiple list_del() calls + [ccan ec8654d94d3c5c47aa5f82698f7e8048c79765b1] (Rusty Russell) + +Sat Sep 13 22:19:26 2014 Bernard Potocki <bernard.potocki@imanel.org> + + * hash.c (rb_hash_aset): fix misleading example which may suggest + that Hash.store will return self instead of value - Hash#store + is returning value and update itself, as well as Hash#[]=. + [Fix GH-715] + +Sat Sep 13 15:16:31 2014 Eric Wong <e@80x24.org> + + * class.c: use ALLOC(rb_subclass_entry_t) + +Sat Sep 13 14:14:00 2014 Eric Wong <e@80x24.org> + + * process.c (free_exec_arg): remove + (memsize_exec_arg): ptr is never NULL + (exec_arg_data_type): use RUBY_TYPED_DEFAULT_FREE + + * variable.c (autoload_i_free): remove + (autoload_data_i_type): use RUBY_TYPED_DEFAULT_FREE + (autoload_memsize): ptr is never NULL + + * vm_backtrace.c (location_free): remove + (location_mark): ptr is never NULL + (location_data_type): use RUBY_TYPED_DEFAULT_FREE + (backtrace_mark): ditto + (backtrace_free): ditto + +Sat Sep 13 13:43:07 2014 Eric Wong <e@80x24.org> + + * doc/NEWS-2.0.0: fix typo for default RUBY_FIBER_MACHINE_STACK_SIZE + [ci skip] + +Sat Sep 13 11:16:58 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_event.c(ev_advise, ole_event_free, + fev_s_allocate, fev_unadvise): avoid segmentation fault when COM + server freed before calling Unadvise from WIN32OLE_EVENT object. + * ext/win32ole/win32ole.c: ditto. + +Sat Sep 13 09:47:44 2014 Eric Wong <e@80x24.org> + + * man/ruby.1: use https for *.ruby-lang.org links + +Sat Sep 13 06:31:23 2014 Eric Wong <e@80x24.org> + + * vm.c (thread_alloc): remove needless volatile + +Sat Sep 13 06:13:55 2014 Eric Wong <e@80x24.org> + + * proc.c (proc_free): remove, use RUBY_TYPED_DEFAULT_FREE + (proc_mark, proc_memsize): remove needless branching + + * vm.c (env_free): remove, use RUBY_TYPED_DEFAULT_FREE + (env_mark, env_memsize): remove needless branching + +Sat Sep 13 05:52:15 2014 Eric Wong <e@80x24.org> + + * proc.c (rb_proc_alloc): inline and move to vm.c + (rb_proc_wrap): new wrapper function used by rb_proc_alloc + (proc_dup): simplify alloc + copy + wrap operation + [ruby-core:64994] + + * vm.c (rb_proc_alloc): new inline function + (rb_vm_make_proc): call rb_proc_alloc + + * vm_core.h: remove rb_proc_alloc, add rb_proc_wrap + + * benchmark/bm_vm2_newlambda.rb: short test to show difference + +Sat Sep 13 04:40:04 2014 Eric Wong <e@80x24.org> + + * process.c (Init_process): subclass Thread as Process::Waiter + (rb_detach_process): use Process::Waiter instead of singleton class + Thanks to headius and nobu. [Bug #10231] + + * test/ruby/test_process.rb (test_process_detach): new test + + * inits.c (rb_call_inits): call Init_Thread before Init_process to + ensure Process::Waiter may be a subclass of Thread + +Fri Sep 12 18:14:28 2014 Eric Wong <e@80x24.org> + + * vm.c (env_alloc): inline to avoid extra zeroing + tiny speedup [ruby-core:64980] + +Fri Sep 12 17:13:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_method.c (rb_method_entry_make, remove_method): ditto. + +Fri Sep 12 14:39:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gems/bundled_gems: Upgraded to test-unit-3.0.1 and minitest-5.4.1 + +Fri Sep 12 06:55:40 2014 Eric Wong <e@80x24.org> + + * string.c (Init_frozen_strings): use st_init_table_with_size + +Fri Sep 12 06:15:37 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (sym_find): remove Symbol.find because we have Symbol GC now. + https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20140904Japan + If you still want this, request again on Redmine. [Feature #7854] + https://bugs.ruby-lang.org/issues/7854 + + * ext/-test-/symbol/init.c (sym_find): moved from string.c for tests. + +Fri Sep 12 04:24:03 2014 Eric Wong <e@80x24.org> + + * insns.def (once): define and use fake RUNNING_THREAD_ONCE_DONE + pointer to indicate is->once.running_thread is done. + + * vm_core.h (iseq_inline_storage_entry): remove done field, + allowing the union to be reduced from 24=>16 bytes on 64-bit + [Feature #10187] + +Thu Sep 11 20:10:00 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (rb_thread_mark): use rb_gc_mark_values() to mark VM stack. + +Thu Sep 11 19:50:57 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (rb_vm_register_special_exception): make new function to + make and register special exceptions. + + * vm.c (rb_vm_mark): do not need to mark special exceptions + because they are registered by rb_gc_register_mark_object(). + + * eval.c (Init_eval): use rb_vm_register_special_exception(). + + * gc.c (Init_GC): ditto. + + * proc.c (Init_Proc): ditto. + + * thread.c (Init_Thread): ditto. + +Thu Sep 11 19:32:30 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_gc_mark_values): added. + This function is similar to rb_gc_mark_locations(), but not + conservative. + + * internal.h: ditto. + + * vm.c (env_mark): use rb_gc_mark_values() because env values should + be Ruby VALUEs. + +Thu Sep 11 19:16:39 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_mark_ptr): rename to gc_mark_set. + + * gc.c (gc_mark): add gc_mark_ptr() to skip is_markable_object() + check. gc_mark_maybe() can use gc_mark_ptr() directly because + passed pointer is checked by is_pointer_to_heap(). + +Thu Sep 11 18:40:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .gitignore: ignored temporary files and coverage results. + +Thu Sep 11 18:15:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .gitignore: ignored only simplecov. + * coverage/README: Added coverage docs. + +Thu Sep 11 17:25:31 2014 Koichi Sasada <ko1@atdot.net> + + * include/ruby/ruby.h, gc.c: add new internal events + RUBY_INTERNAL_EVENT_GC_ENTER and + RUBY_INTERNAL_EVENT_GC_EXIT. + + When invoking GC process, GC_ENTER event is called. + When exiting from GC process, GC_EXIT event is called. + + Incremental GC (incremental marking and lazy sweep) can call + these events many times. + + For example (minor marking): + (1) GC_ENTER + - (2) GC_START (minor GC) + (minor marking) + - (3) GC_END_MARK + (start lazy sweep) + (4) GC_EXIT + (ruby process) + (5) GC_ENTER + (lazy sweep) + (6) GC_EXIT + (ruby process) + (... repeat (5), (6)) + (7) GC_ENTER + (finish lazy sweep) + - (8) GC_END_SWEEP + (9) GC_EXIT + + 2nd example (incremental major marking): + (1) GC_ENTER + - (2) GC_START (minor GC) + (start incremental marking) + (3) GC_EXIT + (ruby process) + (4) GC_ENTER + (incremental marking) + (5) GC_EXIT + (ruby process) + (... repeat (4), (5)) + (6) GC_ENTER + (finish incremental marking) + - (7) GC_END_MARK + (start lazy sweep) + (8) GC_EXIT + (ruby process) + (9) GC_ENTER + (lazy sweep) + (10) GC_EXIT + (ruby process) + (... repeat (9), (10)) + (11) GC_ENTER + (finish lazy marking) + - (12) GC_STOP_SWEEP + (13) GC_EXIT + + These internal events enable to measure GC pause time completely. + +Thu Sep 11 17:04:54 2014 Eric Wong <e@80x24.org> + + * lib/benchmark.rb: remove CLOCK_MONOTONIC_RAW support + Thanks to Vit Ondruch for reporting the issue on ARM. + [Bug #10202] + +Thu Sep 11 14:31:57 2014 Koichi Sasada <ko1@atdot.net> + + * include/ruby/ruby.h: freeze nil/true/false. + [Feature #8923] + + * gc.c (should_be_finalizable): check frozen after checkin FL_ABLE. + + * object.c (rb_obj_taint): check + OBJ_TAINTABLE(obj). + + * object.c (rb_obj_freeze): remove immediate_frozen_tbl + because all of immediate values are frozen. YAY! + + * object.c (rb_obj_frozen_p): ditto. + + * test/ruby/test_eval.rb: skip instance_variable_set for + frozen objects. + + * test/ruby/test_weakmap.rb: check ArgumentError instead of + RuntimeError. + +Thu Sep 11 10:03:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rdoc.rb, lib/rdoc, test/rdoc: Update to RDoc 4.2.0.alpha(21b241a) + +Wed Sep 10 17:52:25 2014 Koichi Sasada <ko1@atdot.net> + + * compile.c (rb_vm_addr2insn): rename to rb_vm_insn_addr2insn + to clear what address. + +Wed Sep 10 16:22:26 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_gc.rb: fix condition. + +Wed Sep 10 15:29:46 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_call_info_t): ci->flag becomes 32-bit unsigned int + ci->index becomes a 32-bit signed int (from signed long). + Reorder for better packing on 64-bit, giving an 8 byte reduction + from 104 to 96 bytes for each ci. + [Feature #10187] + + * compile.c (new_callinfo, setup_args, iseq_compile_each, + iseq_build_from_ary_body): adjust for type changes + + * vm_insnhelper.c (vm_getivar): ditto + +Wed Sep 10 15:07:35 2014 Eric Wong <e@80x24.org> + + * compile.c (rb_iseq_translate_threaded_code): + modify in-place w/o copy + (rb_vm_addr2insn): new function for debug + (rb_iseq_original_iseq): ditto + (iseq_set_sequence): assign iseq_encoded directly + [Feature #10185] + + * vm_core (rb_iseq_t): move original ->iseq to bottom + + * iseq.c (iseq_free, iseq_free): adjust for new layout + (rb_iseq_disasm): use original iseq for dump + (iseq_data_to_ary): ditto + (rb_iseq_line_trace_each): ditto + (rb_iseq_build_for_ruby2cext): use iseq_encoded directly + + * vm_dump.c (rb_vmdebug_debug_print_pre): use original iseq + +Wed Sep 10 15:00:11 2014 Eric Wong <e@80x24.org> + + * time.c (time_mark): remove NULL check + (time_memsize): ditto + (time_free): remove, use RUBY_TYPED_DEFAULT_FREE instead + [Feature #10219] + +Wed Sep 10 14:14:57 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * common.mk (encs enc trans libencs libenc libtrans): force to run + enk.mk because common.mk does not know the dependency, but enk.mk + knows. [ruby-dev:48530] [Bug #10220] + +Wed Sep 10 11:59:10 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat): update rdoc. + +Wed Sep 10 11:52:08 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): rename: + * malloc_increase -> malloc_increase_bytes + * malloc_limit -> malloc_increase_bytes_limit + * oldmalloc_increase -> oldmalloc_increase_bytes + * oldmalloc_limit -> oldmalloc_increase_bytes_limit + ref: [Feature #9924] + +Wed Sep 10 11:45:40 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): rename `heap_used' to `heap_allocated_pages'. + ref: [Feature #9924] + + * test/ruby/test_gc.rb: add constraints test for gc stat information. + +Wed Sep 10 11:31:16 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): rename: + * remembered_shady_object -> remembered_wb_unprotected_objects + * remembered_shady_object_limit -> remembered_wb_unprotected_objects_limit + * old_object -> old_objects + * old_object_limit -> old_objects_limit + ref: [Feature #9924] + +Wed Sep 10 11:12:25 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): support: + * total_allocated_pages + * total_freed_pages + ref: [Feature #9924] + +Wed Sep 10 10:48:04 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_gc.rb: catch up last fix. + +Wed Sep 10 10:36:08 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (objspace_total_slot): rename objspace_available_slots. + + * gc.c (objspace_live_slot, objspace_free_slot): rename + ..._slot() to ..._slots(). + + * gc.c (objspace_free_slot): should subtract heap_pages_final_slots. + + * gc.c (gc_stat_internal): + * add `heap_available_slots' field + * rename heap_live_slot to heap_live_slots + * rename heap_free_slot to heap_free_slots + ref: [Feature #9924] + +Wed Sep 10 07:22:53 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: refactoring for RGENGC_PROFILE > 0. + + * rename rb_objspace_t::profile::..._count + to rb_objspace_t::profile::total_..._count + * rename promote_infant_types to promote_types + + * gc.c (gc_remember_unprotected): count remembered shady objects here. + +Wed Sep 10 03:12:12 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * gc.c (init_mark_stack): MEMZERO() receive type as 2nd argument instead + of size. + Coverity Scan found this bug. + +Tue Sep 9 21:55:39 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/sample/excel2.rb: remove some commented-out code. + rotate graph more slowly to see graph clearly. + +Tue Sep 9 19:52:33 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: rename rb_objspace_t::marked_objects to marked_slots. + + * gc.c (gc_marks_start): should be clear first. + + * gc.c (gc_marks_start): remembered shady objects are also marked. + + * gc.c (gc_stat_internal): add heap_marked_slots. + +Tue Sep 9 18:58:48 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: rename + * total_allocated_object_num -> total_allocated_objects + * total_allocated_object_num_at_gc_start -> total_allocated_objects_at_gc_start + * total_freed_object_num -> total_freed_objects + + * gc.c (gc_stat_internal): + * rename total_allocated_object -> total_allocated_objects + * rename total_freed_object -> total_freed_objects + +Tue Sep 9 18:51:36 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): fix symbol names + * heap_final_slot -> heap_final_slots + * heap_swept_slot -> heap_swept_slots + +Tue Sep 9 18:18:07 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_objspace_t::heap_pages): rename field names: + * used -> allocated_pages + * increment -> allocatable_pages + * length -> sorted_length + And remove unused `limit' field. + + * gc.c: rename macros: + * heap_pages_used -> heap_allocated_pages + * heap_pages_length -> heap_pages_sorted_length + * heap_pages_increment -> heap_allocatable_pages + + * gc.c (gc_stat_internal): fix symbol names + * heap_used -> heap_allocated_pages + * heap_eden_page_length -> heap_eden_pages + * heap_tomb_page_length -> heap_tomb_pages + * heap_increment -> heap_allocatable_pages + * heap_length -> heap_sorted_length + + ref: [Feature #9924] + https://docs.google.com/spreadsheets/d/11Ua4uBr6o0k-nORrZLEIIUkHJ9JRzRR0NyZfrhEEnc8/edit?usp=sharing + Yellow color fields in this table are changed. + + * test/ruby/test_gc.rb: catch up this change. + +Tue Sep 9 14:56:03 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: continue layout changing. + + newobj_of() also touch: + (4) increment total_allocated_object_num + (5) check hook_events + + And gather fields related to marking phase. + +Tue Sep 9 14:21:50 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: fix layout of rb_objspace_t to improve cache locality. + + newobj_of() accesses: + (1) rb_objspace_t::flags + (2) rb_objspace_t::eden_heap::freelist + (3) and rb_objspace_t::eden_heap::free_pages if freelist is NULL. + +Tue Sep 9 14:09:36 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: move rb_objspace_t::flags::gc_stressful after during_gc + to make accessing both parameters easy. + + * gc.c (heap_get_freeobj): add LIKELY() hint. + + * gc.c (heap_get_freeobj_from_next_freepage): ditto. + + * gc.c (newobj_of): check both parameters at once for exceptional + case. + +Tue Sep 9 13:51:32 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: add rb_objspace_t::flags::gc_stressful and + ruby_gc_stressful macro. + Rename objspace->gc_stress to objspace->gc_stress_mode. + + If objspace->gc_stress_mode is true (!nil and !false) then + ruby_gc_stressful becomes TRUE. + + ruby_gc_stressful will speedup newobj_of() slightly. + + * gc.c: initialize ruby_gc_stress(full|_mode) by gc_params.gc_stress + even if ENABLE_VM_OBJSPACE is false. + +Tue Sep 9 13:05:50 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: remove ruby_disable_gc_stress and add ruby_disable_gc + to speed-up newobj_of(). + + * gc.c (ready_to_gc): check ruby_disable_gc. + + * signal.c: use ruby_disable_gc. + +Tue Sep 9 12:11:41 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: rename gc_stat entries and check stat transition. + +Tue Sep 9 12:06:03 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_sweep_rest): remove wrong modification of during_gc flag. + +Tue Sep 9 11:39:41 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: pack boolean values into rb_objspace_t::flags with bit fields + to improve cache locality. + +Tue Sep 9 11:11:05 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_object.rb: extend timeout. + +Tue Sep 9 09:02:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/mkmf.rb (MakeMakefile#pkg_config): append --cflags to also + $CXXFLAGS, as they are often used by C++ compiler. + [ruby-core:54532] [Bug #8315] + +Tue Sep 9 07:03:22 2014 Eric Wong <e@80x24.org> + + * compile.c: remove needless SYM2ID <-> ID2SYM conversions + [misc #10207] + +Tue Sep 9 05:48:42 2014 Eric Wong <e@80x24.org> + + * symbol.c (rb_intern_cstr_without_pindown): check dsymbol on return + This is not a complete fix for bug 10206, but seems to reduce + that crash and also looks correct. + +Tue Sep 9 04:36:24 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_env_t): use flexible array + This reduces allocations and speeds up the lambda calculus + fizzbuzz (bm_app_lc_fizzbuzz.rb) benchmark [ruby-core:64858] + * proc.c (get_local_variable_ptr): deconst to adjust for flex array + * vm.c (env_mark, env_free, env_memsize): remove check for env->env + * vm.c (env_alloc): single allocation for flex array + * vm.c (vm_make_env_each): adjust env_alloc call + +Mon Sep 8 16:08:22 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/bm_app_lc_fizzbuzz.rb: should skip output on benchmark. + +Mon Sep 8 16:04:02 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/bm_app_lc_fizzbuzz.rb: `answer.to_a' does not return + a string, but an array. + +Mon Sep 8 13:18:37 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/bm_app_lc_fizzbuzz.rb: added. + + This program is described closely in "Understanding Computation" + chapter 6 by Tom Stuart. <http://computationbook.com/> + + Japanese translation will be published soon. + <http://www.oreilly.co.jp/books/9784873116976/> + +Mon Sep 8 12:01:39 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: add incremental GC algorithm. [Feature #10137] + + Please refer this ticket for details. + + This change also introduces the following changes. + + * Remove RGENGC_AGE2_PROMOTION and introduce object age (0 to 3). + Age can be count with FL_PROMOTE0 and FL_PROMOTE1 flags in + RBasic::flags (2 bit). Age == 3 objects become old objects. + * WB_PROTECTED flag in RBasic to WB_UNPROTECTED bitmap. + * LONG_LIVED bitmap to represent living objects while minor GCs + It specifies (1) Old objects and (2) remembered shady objects. + * Introduce rb_objspace_t::marked_objects which counts marked + objects in current marking phase. marking count is needed to + introduce incremental marking. + * rename mark related function and sweep related function to + gc_(marks|sweep)_(start|finish|step|rest|continue). + * rename rgengc_report() to gc_report(). + * Add obj_info() function to get cstr of object details. + * Add MEASURE_LINE() macro to measure execution time of specific line. + * and many small fixes. + + * include/ruby/ruby.h: add flag USE_RINCGC. + Now USE_RINCGC can be set only with USE_RGENGC. + + * include/ruby/ruby.h: introduce FL_PROMOTED0 and add FL_PROMOTED1 + to count object age. + + * include/ruby/ruby.h: rewrite write barriers for incremental marking. + + * debug.c: catch up flag name changes. + + * internal.h: add rb_gc_writebarrier_remember() instead of + rb_gc_writebarrier_remember_promoted(). + + * array.c (ary_memcpy0): use rb_gc_writebarrier_remember(). + + * array.c (rb_ary_modify): ditto. + + * hash.c (rb_hash_keys): ditto. + + * hash.c (rb_hash_values): ditto. + + * object.c (init_copy): use rb_copy_wb_protected_attribute() because + FL_WB_PROTECTED is moved from RBasic::flags. + + * test/objspace/test_objspace.rb: catch up ObjectSpace.dump() changes. + +Sun Sep 7 12:47:06 2014 Tanaka Akira <akr@fsij.org> + + * process.c: PTHREAD_CANCEL_DISABLE is not defined on Android. + +Sat Sep 6 20:59:06 2014 Tanaka Akira <akr@fsij.org> + + * process.c (has_privilege): The gid zero is not a privilege. + +Sat Sep 6 20:19:16 2014 Tanaka Akira <akr@fsij.org> + + * process.c (struct child_handler_disabler_state): cancelstate field + added. + (disable_child_handler_before_fork): Record cancelstate. + (disable_child_handler_fork_parent): Restore cancelstate. + +Sat Sep 6 19:27:10 2014 Tanaka Akira <akr@fsij.org> + + * process.c (struct child_handler_disabler_state): Defined. + +Sat Sep 6 18:31:32 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rake.rb, lib/rake/*, test/rake/*: Update latest rake master(e47d023) + +Sat Sep 6 16:38:08 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_variant.c (ole_val2variant_err, + ole_val2variantdata, Init_win32ole_variant): support VT_ERROR + variant with error code. add WIN32OLE_VARIANT::NoParam. + * test/win32ole/test_win32ole_variant.rb(test_c_noparam, + test_vt_error_noparam): ditto. + * ext/win32ole/win32ole.c: ditto. + +Sat Sep 6 11:08:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (arg_ambiguous_gen): fix warning message, "even" does + not mean the number of spaces here. state the place to put a + space and the operator. [ruby-core:64790] [Bug #10204] + +Sat Sep 6 08:44:40 2014 Zachary Scott <e@zzak.io> + + * lib/rdoc/generator/template/darkfish/js/jquery.js: Backport + rdoc/rdoc@74f60fcb04fee1778fe2694d1a0ea6513f8e67b7 + +Sat Sep 6 08:10:44 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_io.rb (test_readpartial_locktmp): use IO#nonblock= + Old fcntl invocation may drop necessary flags on some platforms. + +Sat Sep 6 07:46:51 2014 Eric Wong <e@80x24.org> + + * test/ruby/test_io.rb (test_readpartial_locktmp): avoid EBADF + [ruby-core:64773] [ruby-core:64775] + +Sat Sep 6 01:34:31 2014 Tanaka Akira <akr@fsij.org> + + * process.c (rb_f_exec): Call before_exec_async_signal_safe and + after_exec_async_signal_safe around rb_exec_async_signal_safe. + (rb_exec_async_signal_safe): Don't call + before_exec_async_signal_safe and after_exec_async_signal_safe. + (rb_exec_without_timer_thread): Call before_exec and + after_exec. + (disable_child_handler_fork_child): Make SIGPIPE handler SIG_DFL. + +Sat Sep 6 00:49:41 2014 Tanaka Akira <akr@fsij.org> + + * signal.c (ruby_signal): Don't set SA_SIGINFO for SIG_IGN and + SIG_DFL. + +Fri Sep 5 21:45:33 2014 Tanaka Akira <akr@fsij.org> + + * process.c (disable_child_handler_before_fork): New function. + (disable_child_handler_fork_parent): Ditto. + (disable_child_handler_fork_child): Ditto. + (retry_fork_async_signal_safe): Call above functions to disable + signal handlers in child process. + +Fri Sep 5 21:02:54 2014 Tanaka Akira <akr@fsij.org> + + * process.c (handle_fork_error): Make try_gc_p argument volatile to + suppress "clobbered" warning. + +Fri Sep 5 20:48:06 2014 Tanaka Akira <akr@fsij.org> + + * process.c (handle_fork_error): Don't need state_p argument. + +Fri Sep 5 20:35:52 2014 Tanaka Akira <akr@fsij.org> + + * process.c (has_privilege): Fix a return value. + +Fri Sep 5 19:00:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/shellwords.rb: proofreading documentation. + [Bug #10155][ruby-core:64471] + +Fri Sep 5 18:34:33 2014 Laurent Arnoud <laurent@spkdev.net> + + * test/csv/test_row.rb: Added some missing tests in CSV. + [fix GH-710] + * test/csv/test_table.rb: ditto. + +Fri Sep 5 12:57:52 2014 Tanaka Akira <akr@fsij.org> + + * process.c (has_privilege): Refine uid/gid check. + +Fri Sep 5 12:40:55 2014 Tanaka Akira <akr@fsij.org> + + * configure.in: Check sys/id.h, getuidx and getgidx for AIX. + + * process.c (getresuid): Defined for AIX. + (getresgid): Ditto + AIX don't have getresuid/getresgid but getuidx/getgidx. + +Fri Sep 5 12:28:21 2014 Tanaka Akira <akr@fsij.org> + + * process.c (has_privilege): Fix assignments. + +Fri Sep 5 11:10:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rdoc/generator/pot/po.rb: fixed broken tests for trailing whitespace. + * test/rdoc/test_rdoc_generator_pot.rb: ditto. + * test/rdoc/test_rdoc_generator_pot_po.rb: ditto. + +Fri Sep 5 10:41:07 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/rdoc/test_rdoc_rdoc.rb (TestRDocRDoc#test_parse_file_encoding): + typofix. + +Fri Sep 5 10:39:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rdoc.rb, lib/rdoc, test/rdoc: Update to RDoc 4.2.0.alpha(313287) + +Fri Sep 5 06:04:22 2014 Eric Wong <e@80x24.org> + + * vm.c: remove unused USE_THREAD_RECYCLE [misc #10198] + +Fri Sep 5 00:29:08 2014 Tanaka Akira <akr@fsij.org> + + * configure.in (dirfd): Check function. + + * dir.c (dir_fileno): New method. + [ruby-dev:48265] [Feature #9880] + +Thu Sep 4 23:39:52 2014 Tanaka Akira <akr@fsij.org> + + * process.c (has_privilege): New function. + (retry_fork_async_signal_safe): Don't use vfork() for privileged + process. + + * configure.in (getresuid): Check function. + (getresgid): Ditto. + +Thu Sep 4 20:22:14 2014 Laurent Arnoud <laurent@spkdev.net> + + * test/pathname/test_pathname.rb: added testcase for Pathname#mountpoint?. + [fix GH-709] + +Thu Sep 4 20:09:21 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * symbian/*: removed Symbian support. + [Feature #10199][ruby-core:64725] + * dln.c: ditto. + * include/ruby/defines.h: ditto. + * thread_pthread.c: ditto. + * vm.c: ditto. + +Thu Sep 4 17:44:40 2014 Koichi Sasada <ko1@atdot.net> + + * dir.c (glob_helper): use #ifdef instead of #if. + gcc's -Wundef option shows warning for undefined macro. + + * numeric.c (flo_is_finite_p): ditto. + + * vm_dump.c (rb_vmdebug_thread_dump_state): ditto. + + * vm_core.h: define VM_DEBUG_VERIFY_METHOD_CACHE to 0. + +Thu Sep 4 03:57:46 2014 Eric Wong <e@80x24.org> + + * man/ruby.1: spelling fix ("bellow" => "below") [ci-skip] + +Thu Sep 4 03:52:16 2014 Eric Wong <e@80x24.org> + + * man/ruby.1: add trailing slash to URLs [ci-skip] + +Wed Sep 3 19:10:28 2014 Tanaka Akira <akr@fsij.org> + + * process.c (before_fork_ruby): Renamed from before_fork. + (after_fork_ruby): Renamed from after_fork. + +Wed Sep 3 18:56:05 2014 Tanaka Akira <akr@fsij.org> + + * process.c (forked_child): Removed. + +Wed Sep 3 16:56:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * object.c (rb_obj_copy_ivar): allocate no memory for empty + instance variables. [ruby-core:64700] [Bug #10191] + +Wed Sep 3 12:05:17 2014 Tanaka Akira <akr@fsij.org> + + * process.c (retry_fork_async_signal_safe): Use vfork() if available. + vfork() is still faster than fork() especially when the parent + process uses big memory. + + ruby -rbenchmark -e 'a = "a" * 1_000_000_000; puts Benchmark.measure { system("true") }' + fork: 0.000000 0.010000 0.010000 ( 0.014968) + vfork: 0.000000 0.000000 0.000000 ( 0.000912) + on Debian sid. + +Wed Sep 3 11:33:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/openssl/test_pkey_rsa.rb (OpenSSL#test_sign_verify_memory_leak): + added timeout into testcase for low performance environment. + [Bug #9984][ruby-core:63367] + +Wed Sep 3 07:50:15 2014 Tanaka Akira <akr@fsij.org> + + * configure.in: Use AC_FUNC_FORK. + + * io.c: Use HAVE_WORKING_FORK instead of HAVE_FORK. + + * process.c: Ditto. + +Wed Sep 3 00:12:44 2014 Tanaka Akira <akr@fsij.org> + + * process.c (retry_fork_async_signal_safe): Don't return on in child + process. + +Tue Sep 2 23:47:35 2014 Tanaka Akira <akr@fsij.org> + + * process.c (retry_fork_async_signal_safe): Specialized version of + retry_fork respect to rb_fork_async_signal_safe. + (retry_fork_ruby): Specialized version of retry_fork respect to + rb_fork_ruby. + (rb_fork_ruby): Removed. + +Tue Sep 2 23:26:26 2014 Tanaka Akira <akr@fsij.org> + + * process.c (send_child_error): Simplified. + (recv_child_error): Ditto. + +Tue Sep 2 22:56:25 2014 Tanaka Akira <akr@fsij.org> + + * process.c (rb_fork_async_signal_safe): Inline rb_fork_internal. + (rb_fork_ruby): Ditto. + (rb_fork_internal): Removed. + (chfunc_protect): Removed. + +Tue Sep 2 22:43:52 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_io.rb (test_new_with_block): Set autoclose to avoid + EBADF. + +Tue Sep 2 22:01:51 2014 Kouhei Sutou <kou@cozmixng.org> + + * Makefile.in (update-coverage): Remove a never executed line. + +Tue Sep 2 19:48:26 2014 Tanaka Akira <akr@fsij.org> + + * process.c (handle_fork_error): Extracted from retry_fork. + +Tue Sep 2 17:02:53 2014 Vit Ondruch <v.ondruch@tiscali.cz> + + * tool/rbinstall.rb: fixed error of local installation. + [Bug #10192][ruby-core:64702] + +Tue Sep 2 16:58:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/runner.rb: reporting test coverage for test-all with COVERAGE env. + [Feature #10189][ruby-core:64681][fix GH-708] + * Makefile.in: added task for coverage report. + * common.mk: added definition of forked simplecov url. + * .gitignore: ignored coverage directory. + +Mon Sep 1 20:11:02 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (rbtime2vtdate): try to convert millisecond + of Time object to millisecond of VT_DATE VARIANT. + * test/win32ole/test_win32ole_variant.rb + (test_conversion_time2date_with_msec): ditto. + +Sun Aug 31 16:58:49 2014 Tanaka Akira <akr@fsij.org> + + * lib/benchmark.rb: Fix a syntax error. + +Sun Aug 31 08:46:44 2014 Eric Wong <e@80x24.org> + + * ext/zlib/zlib.c (gzfile_reset): preserve ZSTREAM_FLAG_GZFILE + [Bug #10101] + + * test/zlib/test_zlib.rb (test_rewind): test each_byte + +Sat Aug 30 19:22:47 2014 Eric Wong <e@80x24.org> + + * symbol.c (rb_sym2id): do not return garbage object + +Sat Aug 30 06:39:48 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/yaml_tree.rb: fix NameError dumping and + loading. Fixes GH #85. Thanks @brentdax for the patch! + * test/psych/test_exception.rb: test for fix + +Sat Aug 30 06:23:40 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/scalar_scanner.rb: fix loading strings that + look like integers but have a newline. Fixes GH #189 + * test/psych/test_string.rb: test for fix + +Sat Aug 30 06:10:39 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/to_ruby.rb: merge keys with a hash + should merge the hash in to the parent. + * test/psych/test_merge_keys.rb: test for change. Fixes GH #202 + +Sat Aug 30 06:00:26 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/to_ruby.rb: quoted "<<" strings + should not be treated as merge keys. + * ext/psych/lib/psych/visitors/yaml_tree.rb: hashes with keys + containing "<<" should roundtrip. + * test/psych/test_merge_keys.rb: test for change. Fixes GH #203 + +Fri Aug 29 17:56:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/net/imap/test_imap_response_parser.rb: removed needless code. + +Fri Aug 29 17:36:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/rinda/test_rinda.rb: removed useless assignment variables. + * test/rss/rss-assertions.rb: ditto. + * test/rss/test_maker_itunes.rb: ditto. + +Fri Aug 29 16:18:26 2014 Eric Wong <e@80x24.org> + + * string.c: revert part of r47311, add rb_vm_fstring_table(), + remove vm_core.h dependency. [ruby-core:64627] + +Fri Aug 29 15:17:13 2014 Eric Wong <e@80x24.org> + + * string.c: remove static frozen_strings + * string.c (Init_frozen_strings): new function + * string.c (rb_fstring): remove check for frozen strings, + use per-VM table + * string.c (rb_str_free): use per-VM table + * string.c (Init_String): use per-VM table + * vm_core.h (rb_vm_t): add frozen_strings table + * internal.h (Init_frozen_strings): new function prototype + * eval.c (ruby_setup): call Init_frozen_strings + [Feature #10182] + +Wed Aug 27 23:10:24 2014 Masaki Matsushita <glass.saga@gmail.com> + + * lib/tempfile.rb: remove "require 'thread'". its features are no + longer used. + +Wed Aug 27 21:19:40 2014 gogo tanaka <mail@tanakakazuki.com> + + * lib/drb/acl.rb: Removed meaningless #to_s methods in interpolation. + [Feature #10174][ruby-core:64584] + * lib/erb.rb: ditto. + * lib/observer.rb: ditto. + * lib/rake/invocation_chain.rb: ditto. + * lib/rubygems/command_manager.rb: ditto. + * lib/rubygems/config_file.rb: ditto. + * lib/uri/common.rb: ditto. + +Wed Aug 27 21:08:20 2014 gogo tanaka <mail@tanakakazuki.com> + + * lib/drb/drb.rb: use attr_reader instead of Module#attr. + [Feature #10172][ruby-core:64582] + * lib/irb/ruby-token.rb: ditto. + * lib/net/telnet.rb: ditto. + * lib/rdoc/ruby_token.rb: ditto. + * lib/thwait.rb: ditto. + +Wed Aug 27 19:52:33 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (vtdate2rbtime): try to convert millisecond + of VT_DATE VARIANT to nsec of Time object. + * test/win32ole/test_win32ole_variant.rb + (test_conversion_dbl2date_with_msec): ditto. + +Wed Aug 27 09:57:29 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_complex.rb: removed unreachable code. + * test/ruby/test_rational.rb: ditto. + +Wed Aug 27 07:59:17 2014 Eric Wong <e@80x24.org> + + * compile.c (iseq_set_sequence): check for multiplication overflow + +Tue Aug 26 22:07:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_complex.rb: cherry-picked working assertions from r47251. + * test/ruby/test_rational.rb: cherry-picked working assertions from r47263. + +Tue Aug 26 21:07:56 2014 gogo tanaka <mail@tanakakazuki.com> + + * lib/mathn.rb (Fixnum#**, Bignum#**, Float#**, Rational#**): + remove as these are now built-in. [ruby-core:63973] [Bug #10086] + +Tue Aug 26 20:46:55 2014 Tanaka Akira <akr@fsij.org> + + * time.c (rb_time_unmagnify_to_float): Avoid double rounding. + Reported by Tsuyoshi Sawada. + https://bugs.ruby-lang.org/issues/10135#note-1 + +Tue Aug 26 17:12:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (io_close): ignore only "closed stream" IOError and + NoMethodError, do not swallow other exceptions at the end of + block. [ruby-core:64463] [Bug #10153] + +Tue Aug 26 13:46:33 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * template/fake.rb.in: fix failed to make install when @srcdir@ is + absolute path. + +Tue Aug 26 13:43:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_range.rb: added workaround for VERBOSE message. + +Tue Aug 26 12:38:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_mathn.rb: added workaround for VERBOSE messages. + +Tue Aug 26 11:44:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/shell/process-controller.rb: removed commented-out code. + +Tue Aug 26 11:39:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/thwait.rb (ThreadsWait): removed needless constant. + +Tue Aug 26 09:27:10 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/mathn.rb: mathn library is deprecated on ruby 2.2. + [Feature #10169][ruby-core:64553] + +Tue Aug 26 09:25:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/mathn.rb: removed commented-out code. + +Mon Aug 25 20:15:50 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c(fole_s_connect, fole_initialize): raise a + security error with the tainted string object. + * ext/win32ole/win32ole_event.c(ev_advise): ditto. + * test/win32ole/test_win32ole.rb(test_s_new_exc_svr_tainted, + test_s_new_exc_host_tainted): ditto. + * test/win32ole/test_win32ole_event.rb(test_s_new_exc_tainted): ditto. + +Mon Aug 25 12:56:54 2014 Ivan Korunkov <ivankorunkov@ya.ru> + + * lib/logger.rb (format_datetime): use "%6N" to show microsecond. + [Fix GH-704] + +Mon Aug 25 11:02:07 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_iseq_location_t): change first_lineno type to VALUE + * iseq.c (rb_iseq_build_for_ruby2cext): update based on argument + +Sun Aug 24 16:14:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/e2mmap.rb: remove needless instance variables. + * lib/irb.rb: ditto. + * lib/irb/**/*.rb: ditto. + * lib/shell.rb: ditto. + +Sun Aug 24 12:44:26 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_complex.rb: removed needless conditions. + * test/ruby/test_rational.rb: ditto. + +Sun Aug 24 11:47:39 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_rational.rb: fixed indent. + +Sun Aug 24 11:44:11 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_rational.rb: remove commented-out code. + +Sun Aug 24 11:09:29 2014 Eric Wong <e@80x24.org> + + * lib/benchmark.rb (measure): reduce allocations as in r47260 + +Sun Aug 24 10:35:54 2014 Pete Higgins <pete@peterhiggins.org> + + * lib/benchmark.rb (module Benchmark): define BENCHMARK_CLOCK + (realtime): use Process.clock_gettime(BENCHMARK_CLOCK) + Reduces allocations to improve performance [Feature #10165] + + * test/benchmark/test_benchmark.rb (test_realtime_output): new test + +Fri Aug 22 20:23:54 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (rb_fstring): fix condition (easy to cause infinite loop!). + +Fri Aug 22 20:07:43 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (rb_fstring, fstr_update_callback): simply delete garbage + key first. + + Garbage keys can be swept by lazy sweeping invoked by creating new + fstring. So that simply do: + (1) delete garbage key and return `fstr_update_callback' immediately + (2) try again `fstr_update_callback()' to create a new fstr. + + This bug can be cause memory corruption, reported by + http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20140821T220302Z.fail.html.gz + +Fri Aug 22 19:30:39 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_complex.rb: removed commented-out code. + +Fri Aug 22 19:25:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_complex.rb: fixed broken tests. Math is not + compatible CMath now. + +Fri Aug 22 15:36:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * common.mk (Doxyfile): revert r43888, not to require preinstalled + ruby. [ruby-core:64488] [Bug #10161] + +Fri Aug 22 12:32:15 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/shell.rb: removed commented-out code. + * lib/shell/builtin-command.rb: ditto. + * lib/shell/command-processor.rb: ditto. + +Fri Aug 22 12:21:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/complex.rb: removed deprecated library. + * lib/rational.rb: ditto. + +Fri Aug 22 11:38:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/prettyprint.rb: removed PrettyPrint#first? + because it is obsoleted method since Ruby 1.8.2 + +Thu Aug 21 17:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * win32/win32.c (constat_attr): manage reverse video internally + since Windows console window does not manage it. based on the + patch by white leaf in [ruby-dev:48483]. [Bug #10158] + +Thu Aug 21 14:45:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/e2mmap.rb: removed commented-out code. + +Thu Aug 21 13:23:34 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rinda/ring.rb: split executable code into sample directory. + * sample/rinda-ring.rb: ditto. + +Thu Aug 21 13:21:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/drb/acl.rb: split executable code into sample directory. + * sample/drb/acl.rb: ditto. + +Thu Aug 21 12:55:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * .gitignore: ignored temporary file for Changelog. + http://mkosaki.blog46.fc2.com/blog-entry-1284.html + +Thu Aug 21 12:40:22 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/net/imap.rb: split executable code into sample directory. + * sample/net-imap.rb: ditto. + +Thu Aug 21 12:23:56 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/net/imap.rb: removed commented-out code. + +Wed Aug 20 17:27:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (RUBY_TRY_CFLAGS, RUBY_TRY_LDFLAGS), + (RUBY_CHECK_BUILTIN_SETJMP, RUBY_SETJMP_TYPE), + (RUBY_STACK_GROW_DIRECTION): quote defun names, for some + versions of autoconf possibly. [ruby-core:64473] [Bug #10156] + +Tue Aug 19 22:28:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * sprintf.c (rb_str_format): fix condition to round. + [ruby-core:64454] [Bug #10151] + +Tue Aug 19 22:22:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * enc/trans/euckr-tbl.rb (EUCKR_TO_UCS_TBL): add missing euro and + registered signs. [ruby-core:64452] [Bug #10149] + +Tue Aug 19 13:59:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compar.c (rb_cmperr): preserve encodings of arguments in the + message. + +Tue Aug 19 10:13:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/thread/thread.c (get_array): check instance variables are + initialized properly. [ruby-core:63826][Bug #10062] + +Mon Aug 18 17:06:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * sprintf.c (rb_str_format): support rational 'f' format. + [ruby-core:64382] [Bug #10136] + +Mon Aug 18 08:03:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * spec/default.mspec: use 2.2 definition. + +Sun Aug 17 19:41:40 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * gc.c (obj_memsize_of): don't calculate memsize of T_NODE + when called from check_gen_consistency. It fixes segmentation + fault on RGENGC_CHECK_MODE >= 1 introduced by r47188. + +Sun Aug 17 17:08:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_invoke): use RHASH_SIZE instead of + calling Hash#length method. + +Sat Aug 16 19:32:06 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_event.c (evs_length): use RARRAY_LEN instead + of calling Array#length method. + +Sat Aug 16 10:20:17 2014 Eric Wong <e@80x24.org> + + * time.c (time_timespec): fix tv_nsec overflow + [Bug #10144] + +Fri Aug 15 20:34:17 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_EVENT src from + win32ole.c. + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_event.c: ditto. + * ext/win32ole/win32ole_event.h: ditto. + * ext/win32ole/depend: ditto. + +Fri Aug 15 19:38:00 2014 Koichi Sasada <ko1@atdot.net> + + * iseq.c (rb_iseq_clone): Should not insert write barrier from + non-RVALUE data (to non-RVALUE data, of course). + + Ruby 2.1 also has a same problem. + +Fri Aug 15 19:34:33 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (setup_fake_str): fake strings should not set class by + RBASIC_SET_CLASS() because it insert write barriers to fake + (non-RVALUE) structure. + + It can cause unexpected behaviour. + + Ruby 2.1 also have a same problem (setup_fake_str() in parse.y). + + * symbol.c (setup_fake_str): ditto. + +Fri Aug 15 19:27:25 2014 Koichi Sasada <ko1@atdot.net> + + * array.c (rb_ary_tmp_new_fill): added. + This function creates internal use only array (which is completely + hided by ObjectSpace.each_object) with filling nil. + + Otherwise, it can be includes strange VALUEs. + + * internal.h: added. + + * node.h: use rb_ary_tmp_new_fill() for MEMO. + +Fri Aug 15 10:13:37 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/gserver.rb: removed unmaintained code. + [ruby-core:40313][Feature #5480] + * lib/xmlrpc/httpserver.rb: ditto. + +Fri Aug 15 09:22:12 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_thread_struct): reorder to pack + * cont.c (rb_context_struct, rb_fiber_struct): ditto + On x86-64, these changes reduces: + rb_thread_struct to 1000 bytes (from 1016) + rb_context_struct to 1288 bytes (from 1312) + rb_fiber_struct to 2272 bytes (from 2304) + +Fri Aug 15 09:06:31 2014 Eric Wong <e@80x24.org> + + * thread_pthread.h: define RB_NATIVETHREAD_LOCK_INIT and + RB_NATIVETHREAD_COND_INIT macros + + * thread_pthread.c (native_mutex_lock, native_mutex_unlock, + native_mutex_trylock, native_mutex_initialize, + native_mutex_destroy, native_cond_wait): + use rb_nativethread_lock_t instead of pthread_mutex_t + [Feature #10134] + + * thread_pthread.c (native_mutex_debug): make argument type-agnostic + to avoid later cast. + + * thread_pthread.c (register_cached_thread_and_wait): + replace PTHREAD_COND_INITIALIZER with RB_NATIVETHREAD_COND_INIT, + use native_mutex_{lock,unlock} + + * thread_pthread.c (use_cached_thread): + use native_mutex_{lock,unlock} + + * thread_pthread.c (native_sleep): + use rb_nativethread_lock_t to match th->interrupt_lock, + use native_mutex_{lock,unlock} + + * thread_pthread.c (timer_thread_lock): use rb_nativethread_lock_t type + +Fri Aug 15 08:10:29 2014 Eric Wong <e@80x24.org> + + * cont.c (cont_mark): fix typo in unused path [ci skip] + +Fri Aug 15 06:00:56 2014 Eric Wong <e@80x24.org> + + * vm.c (rb_thread_mark): update comment about marking `me' + [ruby-core:64340] [ruby-core:64341] + +Fri Aug 15 05:53:59 2014 Eric Wong <e@80x24.org> + + * README.EXT: preliminary documentation for RB_GC_GUARD + [Bug #10100] [ruby-core:60741] + +Thu Aug 14 00:26:19 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_RECORD src from + win32ole.c + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_record.c: ditto. + * ext/win32ole/win32ole_record.h: ditto. + * ext/win32ole/depend: ditto. + +Wed Aug 13 21:41:04 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_VARIANT src from + win32ole.c. + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_variant.c: ditto. + * ext/win32ole/win32ole_variant.c: ditto. + * ext/win32ole/depend: ditto. + +Wed Aug 13 20:09:37 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: remove unused variable. + +Wed Aug 13 19:31:27 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_search_handler_method, rescue_callback, + folerecord_inspect): use PRIsVALUE in rb_sprintf. + + * ext/win32ole/win32ole_param.c (foleparam_inspect): ditto. + + * ext/win32ole/win32ole_variable.c (folevariable_inspect): use + PRIsVALUE in rb_sprintf, use rb_inspect. + +Wed Aug 13 11:54:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/irb/completion.rb: reverted r47163. + because another case can't be show completion target. + +Wed Aug 13 11:17:00 2014 Shimpei Makimoto <github@makimoto.org> + + * lib/irb.rb: Prevent irb from crashing when exception with + nil backtrace is raised. + [fix GH-434][ruby-core:58078][Bug #9063] + * test/irb/test_raise_no_backtrace_exception.rb: ditto. + +Wed Aug 13 11:08:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/irb/completion.rb: fixed broken completion list with + String including spaces. Contributed from @dunric. [fix GH-465] + +Wed Aug 13 00:07:01 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_PARAM src from win32ole.c + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_param.c: ditto. + * ext/win32ole/win32ole_param.h: ditto. + * ext/win32ole/depend: ditto. + +Tue Aug 12 23:17:47 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: refactoring. move some methods + into win32ole_type.c / win32ole_method.c + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_method.c: ditto. + * ext/win32ole/win32ole_method.h: ditto. + * ext/win32ole/win32ole_type.h: ditto. + * ext/win32ole/win32ole_type.h: ditto. + +Tue Aug 12 22:59:48 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: refactoring. move + ole_typelib_from_itypeinfo into win32ole_typelib.c. + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_typelib.h: ditto. + * ext/win32ole/win32ole_typelib.h: ditto. + +Tue Aug 12 21:49:40 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_create_dcom): use the converted + result if the argument can be converted to a string, to get rid + of invalid access. Thanks to nobu. [ruby-dev:48467] [Bug #10127] + +Tue Aug 12 14:22:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * configure.in: ignored working directory same as prefix value. + [ruby-core:54999] [Bug #8409] + +Tue Aug 12 13:34:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/fileutils.rb: enable to remove with non-owner directory. + [ruby-dev:45976] [Bug #6756] + * test/fileutils/test_fileutils.rb: add testcase for #6756. + +Tue Aug 12 12:57:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * vm_exec.c: improve performance in ppc64 arch. + [ruby-core:63437] [Feature #9997] + +Tue Aug 12 12:14:52 2014 Akira Matsuda <ronnie@dio.jp> + + * lib/fileutils.rb: fix typo. + [ruby-dev:47831] [Bug #9180] + +Tue Aug 12 10:10:42 2014 Eric Wong <e@80x24.org> + + * vm_method.c (release_method_definition): use rb_free_method_entry + +Tue Aug 12 06:16:09 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_METHOD src from + win32ole.c. + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_method.c: ditto. + * ext/win32ole/win32ole_method.h: ditto. + * ext/win32ole/depend: ditto. + +Mon Aug 11 22:19:15 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_variable.c (folevariable_inspect): refactoring. + +Mon Aug 11 20:47:27 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_VARIABLE src from + win32ole.c + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_variable.c: ditto. + * ext/win32ole/win32ole_variable.h: ditto. + * ext/win32ole/depend: ditto. + +Mon Aug 11 16:17:21 2014 Tony Miller <mcfiredrill@gmail.com> + + * dir.c (rb_dir_exists_p): [DOC] Document that Dir.exists? is + deprecated. [ruby-core:64135] [Bug #10102] + +Mon Aug 11 11:26:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/tempfile.rb: start rdoc parsing inside singleton class + definition to include the document there. + [ruby-core:64157] [Bug #10105] + +Sun Aug 10 12:22:43 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_type.c: refactoring. + +Sun Aug 10 10:34:00 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/cgi/session/pstore.rb: separated sample code. + * lib/open3.rb: ditto. + +Sun Aug 10 10:03:24 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/irb/ext/multi-irb.rb: removed commented-out code. + +Sat Aug 9 11:02:07 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/irb.rb: removed commented-out code. + * lib/irb/**/*.rb: ditto. + +Sat Aug 9 10:35:30 2014 Laurent Arnoud <laurent@spkdev.net> + + * lib/cmath.rb: fixed indent. [fix GH-696] + * lib/drb/ssl.rb: ditto. + * lib/irb/**/*.rb: ditto. + +Sat Aug 9 10:28:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/minitest/test_minitest_unit.rb: removed obsoleted condition + for Ruby 1.8. + * test/ruby/test_time_tz.rb: ditto. + +Sat Aug 9 10:18:00 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/cgi/test_cgi_core.rb: removed obsoleted condition for Ruby 1.8. + * test/cgi/test_cgi_header.rb: ditto. + * test/cgi/test_cgi_multipart.rb: ditto. + * test/cgi/test_cgi_tag_helper.rb: ditto. + +Sat Aug 9 00:34:37 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE_TYPE src from win32ole.c. + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_type.c: ditto. + * ext/win32ole/win32ole_type.h: ditto. + * ext/win32ole/depend: ditto. + +Fri Aug 8 01:53:37 2014 Masaki Matsushita <glass.saga@gmail.com> + + * lib/securerandom.rb: use OpenSSL::BN for performance improvement. + + * benchmark/bm_securerandom.rb: benchmark script. + +Fri Aug 8 17:19:57 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/open-uri.rb: remove needless condition for old ruby version. + * test/open-uri/test_open-uri.rb: ditto. + +Fri Aug 8 16:40:59 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/irb/init.rb: removed unreachable code. + +Fri Aug 8 16:34:22 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/drb/drb.rb: removed unreachable code. + +Fri Aug 8 14:33:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/webrick/httpproxy.rb: remove needless condition + for old ruby version. + +Fri Aug 8 01:07:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_yylex): fix invalid char in eval, should raise + an syntax error too, as well as directly coded. + [ruby-core:64243] [Bug #10117] + +Thu Aug 7 23:25:29 2014 Masaki Matsushita <glass.saga@gmail.com> + + * lib/open3.rb: avoid unnecessary write if stdin_data is empty. + +Thu Aug 7 21:42:49 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole_typelib.c (foletypelib_version): return + version string. + + * test/win32ole/test_win32ole_typelib.rb (test_version): ditto. + +Thu Aug 7 15:13:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/cgi.rb: remove needless condition for old ruby version. + +Thu Aug 7 06:04:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_yyerror): preserve source code encoding in + syntax error messages. [ruby-core:64228] [Bug #10114] + +Wed Aug 6 20:56:02 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate src of WIN32OLE_TYPELIB from + win32ole.c + + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_typelib.c: ditto. + * ext/win32ole/win32ole_typelib.h: ditto. + * ext/win32ole/depend: ditto. + +Wed Aug 6 20:44:07 2014 Akinori MUSHA <knu@iDaemons.org> + + * enum.c (enum_one): [DOC] Move enum.one? documentation before the + relevant method. Submitted by @vipulnsward. [Fixes GH-687] + https://github.com/ruby/ruby/pull/687 + +Wed Aug 6 20:25:47 2014 Akinori MUSHA <knu@iDaemons.org> + + * lib/set.rb (Set#replace): Check if an object given is enumerable + before clearing self. Reported by yui-knk. [GH-675] + https://github.com/ruby/ruby/pull/675 + +Wed Aug 6 20:07:26 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (olerecord_ivar_set): remove rb_str_subseq. + +Wed Aug 6 19:09:27 2014 Akinori MUSHA <knu@iDaemons.org> + + * lib/set.rb (Set): Implement Set#clone by splitting + initialize_copy into initialize_dup and initialize_clone. + Submitted by yui-knk. [Fixes GH-661] + https://github.com/ruby/ruby/pull/661 + +Wed Aug 6 18:42:58 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate src of WIN32OLERuntimeError + from win32ole.c. + + * ext/win32ole/win32ole.h: ditto + * ext/win32ole/depend: ditto. + * ext/win32ole/win32ole_error.c: ditto. + * ext/win32ole/win32ole_error.h: ditto. + +Wed Aug 6 04:33:58 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http.rb (Net::HTTP.proxy_uri): use initializer instead + of parser to handle IPv6 address. [Bug #9129] + +Wed Aug 6 04:16:05 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/requests.rb (Net::HTTP::Options::RESPONSE_HAS_BODY): + OPTIONS requests may have response bodies. [Feature #8429] + http://tools.ietf.org/html/rfc7231#section-4.3.7 + +Wed Aug 6 03:18:04 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/generic_request.rb (Net::HTTP::GenericRequest#exec): + handle req['host'] in update_uri. + + * lib/net/http/generic_request.rb + (Net::HTTP::GenericRequest#update_uri): + use req['host'] if it is explicitly set. Even if URI is given, + it is already used for the initial value of req['host']. + Therefore overwritten value should be respected. [Bug #10054] + +Wed Aug 6 03:17:34 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/generic_request.rb + (Net::HTTP::GenericRequest#update_uri): + handle scheme, host, and port to reflect connection to @uri. + + * lib/net/http.rb (Net::HTTP#begin_transport): move trivial handling + to Net::HTTP::GenericRequest#update_uri. + + +Wed Aug 6 02:16:43 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/generic_request.rb + (Net::HTTP::GenericRequest#initialize): + optimize object allocation. + +Wed Aug 6 01:16:47 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (URI::Generic#path_query): remove a private method. + +Wed Aug 6 01:15:47 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (URI::Generic#normalize!): use String#empty? + + * lib/uri/generic.rb (URI::Generic#path_query): optimized. + + * lib/uri/generic.rb (URI::Generic#to_s): optimized. + +Wed Aug 6 00:15:10 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/http.rb (URI::HTTP#request_uri): optimized. + decrease object allocation, and ensure always create at least one new + object for return value. + +Wed Aug 6 03:41:21 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/to_ruby.rb: backwards compatibility for + hashes emitted by Syck. Github #198 + * test/psych/test_hash.rb: test for change. + +Tue Aug 5 19:27:59 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_invoke): skip VariantClear when + argument is VT_RECORD variant. + +Tue Aug 5 15:52:51 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gems/bundled_gems: Upgrade to test-unit-3.0.0 and minitest-5.4.0. + +Mon Aug 4 21:50:09 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * test/win32ole/test_win32ole_record.rb: add for WIN32OLE_RECORD + test(need .NET Framework 3.5 to run test). + +Mon Aug 4 19:49:34 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_invoke): call rb_hash_foreach instead + of rb_block_call. + + * ext/win32ole/win32ole.c: add comment for rdoc of WIN32OLE_VARIANT + class. + +Mon Aug 4 09:12:47 2014 Eric Wong <e@80x24.org> + + * variable.c: cleanup to use rb_const_lookup + [Feature #10107] + + * vm_insnhelper.c: ditto + +Sun Aug 3 10:55:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/encoding.h (rb_check_symbol_cstr): ditto. + +Sun Aug 3 10:43:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_insnhelper.c (vm_call_method): unusable super class should cause + method missing when BasicObject is refined but not been using. + [ruby-core:64166] [Bug #10106] + +Sat Aug 2 23:47:45 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: separate WIN32OLE::VARIANT src file + from win32ole.c + * ext/win32ole/win32ole.h: ditto. + * ext/win32ole/win32ole_variant_m.c: ditto. + * ext/win32ole/win32ole_variant_m.h: ditto. + * ext/win32ole/depend: ditto. + * ext/.document: ditto. + +Sat Aug 2 14:34:58 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: add comments for rdoc. + +Sat Aug 2 10:26:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * object.c (rb_obj_itself): new method Object#itself. based on the + patch by Rafael Franca in [ruby-core:64156]. + [EXPERIMENTAL] this method may be renamed due to compatibilities. + [ruby-core:44704] [Feature #6373] + +Fri Aug 1 22:30:40 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (folerecord_initialize): accept + only 2 arguments. The 2nd argument should be WIN32OLE object or + WIN32OLE_RECORD object. + +Fri Aug 1 20:17:33 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_variant2val): call + folerecord_s_allocate instead of WIN32OLE_RECORD.new. + +Fri Aug 1 18:39:57 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/date/test_date.rb: remove commented-out code. + * test/date/test_date_arith.rb: ditto. + * test/date/test_date_attr.rb: ditto. + * test/date/test_date_parse.rb: ditto. + +Fri Aug 1 16:35:32 2014 Evan Miller <evan@squareup.com> + + * numeric.c (flodivmod): all results are NaN if divisor is NaN. + [fix GH-692] + +Thu Aug 01 07:28:12 2014 Kenta Murata <mrkn@mrkn.jp> + + * ext/bigdecimal/bigdecimal.c: [DOC] Add description of + `BigDecimal.new` exceptions. Patched by @joker1007 and + @prathamesh-sonpatki [Fixes GH-690] + https://github.com/ruby/ruby/pull/690 + +Thu Jul 31 22:20:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: add WIN32OLE_RECORD#inspect. + +Thu Jul 31 20:35:32 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: add + WIN32OLE_RECORD#ole_instance_variable_set and + WIN32OLE_RECORD#ole_instance_variable_get + +Wed Jul 30 23:28:10 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * sprintf.c (rb_str_format): like r47006, get rid of + function calls in RSTRING_PTR(). + +Wed Jul 30 22:10:29 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * process.c (rlimit_resource_type, rlimit_resource_value): + get rid of inadvertent dynamic symbol pin-down. + + * re.c (match_backref_number): ditto. + + * signal.c (esignal_init, rb_f_kill, trap_signm): ditto. + + * transcode.c (econv_opts): ditto. + + * vm_trace.c (symbol2event_flag): ditto. + +Wed Jul 30 21:29:39 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_invoke): pass WIN32OLE_RECORD variant + by reference when invoke OLE methods at first. + + * ext/win32ole/win32ole.c (olerecord_set_ivar): release + IRecordInfo interface before setting another IRecordInfo interface. + +Wed Jul 30 13:17:35 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: remove unused macros. + +Tue Jul 29 22:21:37 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (hash2olerec): ignore WIN32OLE_RECORD + instance variable if the variable is nil. + +Tue Jul 29 19:43:27 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (folerecord_method_missing): refactoring. + divide functionality of folerecord_method_missing into + olerecord_ivar_set and olerecord_ivar_get. + +Mon Jul 28 20:20:08 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win23ole.c (folerecord_method_missing): support + setter of member of WIN32OLE_RECORD object. + +Mon Jul 28 06:37:19 2014 Zachary Scott <e@zzak.io> + + * vm_eval.c: [DOC] Fix rdoc formatting of patch from [Bug #9551] + +Mon Jul 28 06:34:43 2014 Zachary Scott <e@zzak.io> + + * vm_eval.c: [DOC] [Bug #9551] Improve clarity of Kernel::catch + documentation, patch by Jesse Sielaff. + +Mon Jul 28 06:24:54 2014 Zachary Scott <e@zzak.io> + + * lib/uri/common.rb: [DOC] [Bug #9563] Recommend using URI.escape + before parsing a uri to avoid invalid characters. Reported by + Evgeniy Serykh. + +Mon Jul 28 05:55:56 2014 Zachary Scott <e@zzak.io> + + * time.c: [DOC] Clarify %Y in strftime, which can accept any digits + and will output at least 4 digits as the year. Reported by Yury + Trofimenko [Bug #10049] + + * lib/time.rb: ditto + +Mon Jul 28 05:32:06 2014 Zachary Scott <e@zzak.io> + + * lib/uri/common.rb: [DOC] [Bug #10075] Clarify how URI.join arguments + are handled by RFC3986, originally reported by John Feminella. + +Mon Jul 28 05:21:41 2014 Zachary Scott <e@zzak.io> + + * file.c: [DOC] Clarify how File.file? handles symbolic links. Also + cleaned up the rdoc style for this method, more to follow. + Originally reported by Michael Renner [Bug #10067] + +Mon Jul 28 05:12:22 2014 Zachary Scott <e@zzak.io> + + * time.c: [DOC] Remove dead link and old bug report, which hasn't been + reproduced in a few years. Reported by Federico Builes [Bug #10071] + +Mon Jul 28 04:39:58 2014 Zachary Scott <e@zzak.io> + + * ext/zlib/zlib.c: [DOC] Remove default value of Zlib constants, as + they may change in the implementation without notice. Patched by + @robin850 [Fixes GH-682] https://github.com/ruby/ruby/pull/682 + +Mon Jul 28 04:35:35 2014 Zachary Scott <e@zzak.io> + + * ext/openssl/ossl_hmac.c: Fix NO_HMAC warning [Fixes GH-665] + Patched by @vipulnsward https://github.com/ruby/ruby/pull/665 + +Sun Jul 27 19:49:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/cgi/core.rb: remove unused variables. + * lib/erb.rb: ditto. + * lib/mkmf.rb: ditto. + * lib/net/http/response.rb: ditto. + * lib/optparse/version.rb: ditto. + * lib/prime.rb: ditto. + * lib/racc/parser.rb: ditto. + * lib/rexml/document.rb: ditto. + * lib/rexml/dtd/dtd.rb: ditto. + * lib/rexml/element.rb: ditto. + * lib/rexml/functions.rb: ditto. + * lib/rexml/parsers/xpathparser.rb: ditto. + +Sun Jul 27 05:11:21 2014 Zachary Scott <e@zzak.io> + + * lib/irb.rb: [DOC] PROMPT_I cannot be nil, patch by @hgillane + Fixes documenting-ruby/ruby#37 + https://github.com/documenting-ruby/ruby/pull/37 + +Sun Jul 27 02:41:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/shell/command-processor.rb: remove unused variable. + * lib/shell/system-command.rb: ditto. + * lib/tmpdir.rb: ditto. + * lib/uri/generic.rb: ditto. + +Sun Jul 27 02:08:31 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/weakref.rb: split executable code into sample directory. + * sample/weakref.rb: ditto. + +Sun Jul 27 02:06:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/delegate.rb: split executable code into sample directory. + * sample/delegate.rb: ditto. + +Sun Jul 27 01:46:34 2014 Zachary Scott <e@zzak.io> + + * proc.c (method_super_method): [DOC] Method#super_method + +Sun Jul 27 01:22:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (method_super_method): new method Method#super_method, + which returns a method object of the method to be called by + `super` in the receiver method object. + [ruby-core:62202] [Feature #9781] + +Sat Jul 26 17:22:14 2014 URABE Shyouhei <shyouhei@ruby-lang.org> + + * ext/objspace/objspace_dump.c (dump_append): avoid fflush. + + because dump_append_string_value() iterates over each chars, + fflush()-ing here effectively issues system calls on every single + bytes exist in a ruby process. + +Sat Jul 26 16:55:18 2014 Eric Wong <e@80x24.org> + + * iseq.h (struct iseq_compile_data_storage): reduce overhead + to 16 bytes (from 32) on 64-bit + +Sat Jul 26 16:28:06 2014 Eric Wong <e@80x24.org> + + * vm_core.h (struct rb_iseq_struct): reduce to 280 bytes + (from 288 bytes) on 64-bit + +Sat Jul 26 06:44:43 2014 Eric Wong <e@80x24.org> + + * parse.y (struct parse_params): shrink to 320 to 304 bytes on 64-bit + +Sat Jul 26 05:58:35 2014 Eric Wong <e@80x24.org> + + * include/ruby/ruby.h (ZALLOC, ZALLOC_N): implement + (Data_Make_Struct, TypedData_Make_Struct): + ZALLOC replaces ALLOC+memset + [ruby-core:63951][Feature #10082] + * compile.c (iseq_seq_sequence): ZALLOC_N replaces ALLOC_N+MEMZERO + * cont.c (fiber_t_alloc): ZALLOC replaces ALLOC+MEMZERO + * io.c (rb_io_reopen): ditto + * iseq.c (prepare_iseq_build): ditto + * parse.y (new_args_tail_gen, parser_new, ripper_s_allocate): ditto + * re.c (match_alloc): ditto + * variable.c (rb_const_set): ditto + * ext/socket/raddrinfo.c (get_addrinfo): ditto + * ext/strscan/strscan.c (strscan_s_allocate): ditto + * gc.c (rb_objspace_alloc): calloc replaces malloc+MEMZERO + +Sat Jul 26 05:54:54 2014 Eric Wong <e@80x24.org> + + * symbol.c (dsymbol_check): remove unneeded semi-colon + +Fri Jul 25 14:07:27 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: change objspace::rgengc::parent_object_is_old (boolean) + to objspace::rgengc::parent_object (VALUE). + Use Qfalse or RVALUE pointer instead of FALSE and TRUE. + + * gc.c (gc_marks_body): should clear parent_object just before + gc_mark_roots() because there are no parents objects + for root objects. + +Fri Jul 25 13:45:39 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_gc_writebarrier_remember_promoted): should remember only + OLD objects on RGENGC_AGE2_PROMOTION. + +Fri Jul 25 13:42:02 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_mark_stacked_objects): fix error message. + +Fri Jul 25 13:18:00 2014 Will Farrington <wfarrington@digitalocean.com> + + * ext/socket/socket.c (sock_gethostname): Use NI_MAXHOST to support + hostnames longer than 64 characters if the system supports it. + [fixes GH-683] + +Fri Jul 25 12:21:11 2014 Santiago Pastorino <santiago@wyeworks.com> + + * compile.c (defined_expr): make the condition if the receiver + is explicit or implicit cleaner. [fix GH-681] + +Fri Jul 25 03:53:52 2014 Eric Hodel <drbrain@segment7.net> + + * doc/keywords.rdoc: [DOC] Describe each keyword. + +Thu Jul 24 22:40:24 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_RECORD#initialize + method. + + * ext/win32ole/win32ole.c (ole_val2variant): convert WIN32OLE_RECORD + object to VT_RECORD variant. + +Thu Jul 24 20:10:59 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: fix major GC flags. + * add GPR_FLAG_MAJOR_BY_FORCE, which indicates + major GC by METHOD, CAPI and so on (see GC_BY). + * remove GPR_FLAG_MAJOR_BY_RESCAN because not used. + * remove GPR_FLAG_MAJOR_BY_STRESS, use FORCE instead. + + * test/ruby/test_gc.rb: catch up. + +Thu Jul 24 15:55:02 2014 Naohisa Goto <ngotogenome@gmail.com> + + * include/ruby/io.h (struct rb_io_buffer_t): PACKED_STRUCT should not + be used for platform-specific optimization. PACKED_STRUCT_UNALIGNED + should be used. [ruby-core:63988] [Bug #10088] + +Thu Jul 24 04:42:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/benchmark.rb: split executable code into sample directory. + * sample/benchmark.rb: ditto. + +Thu Jul 24 04:36:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/tempfile.rb: split executable code into sample directory. + * sample/tempfile.rb: ditto. + +Thu Jul 24 04:29:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/pstore.rb: split executable code into sample directory. + * sample/pstore.rb: ditto. + +Wed Jul 23 23:50:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/defines.h, siphash.c, st.c (UNALIGNED_WORD_ACCESS): + add PowerPC64 too, which is capable to access unaligned words. + patched by Gustavo Frederico Temple Pedrosa in [ruby-core:63937]. + [Feature #10081] + + * regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): ditto. + +Wed Jul 23 04:04:38 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/drb/extserv.rb: remove duplicate code with sample directory. + contributed from @vipulnsward. [fix GH-679] + +Tue Jul 22 12:56:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_count): fix wrong single-byte optimization. + 7bit ascii can be a trailing byte in Shift_JIS. + [ruby-dev:48442] [Bug #10078] + +Tue Jul 22 01:48:38 2014 Eric Wong <e@80x24.org> + + * include/ruby/io.h (rb_io_buffer_t): fix packing on gcc + r46892 caused packing to be a no-op on gcc (4.7.2-5, Debian) + [Bug #10079][ruby-core:63912] + +Mon Jul 21 15:55:42 2014 fuji70 <fujifuji70@gmail.com> + + * lib/optparse.rb (getopts): print default values and descriptions + in the help message. [fix GH-676] + +Sun Jul 20 14:26:27 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_proc_t): reduce to 64 bytes from 72 on 64-bit + +Sun Jul 20 13:50:34 2014 Eric Wong <e@80x24.org> + + * transcode.c (rb_econv_t): reduce to 184 bytes from 200 on 64-bit + +Sun Jul 20 12:44:23 2014 Eric Wong <e@80x24.org> + + * include/ruby/io.h (rb_io_buffer_t): pack structure + Reduces rb_io_t from 200 to 192 bytes, allowing rb_io_t to + occupy one less cache line. + [Feature #10050] + +Sun Jul 20 12:41:53 2014 Eric Wong <e@80x24.org> + + * include/ruby/io.h (rb_io_t): shrink to 200 bytes from 216 on 64-bit + This puts us within 8 bytes of being three cache lines instead of + four lines on x86-64. This breaks the ABI. + [Feature #10050] + +Sun Jul 20 12:36:46 2014 Eric Wong <e@80x24.org> + + * include/ruby/oniguruma.h (struct re_pattern_buffer): shrink to 448 + bytes from 464 bytes on 64-bit. This breaks the ABI. + [Feature #10034] + +Sun Jul 20 01:06:06 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/openssl/ossl.c: use encryptor instead of encrypter in doc. + contributed from @vipulnsward. [fix GH-663] + +Sun Jul 20 00:32:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (rb_io_initialize): [DOC] fix rdoc of append mode. it does + not move the pointer at open. [ruby-core:63747] [Bug #10039] + +Sat Jul 19 12:40:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (iseq_compile_each): allow to access private attribute + reader in op_assign. [ruby-core:63817] [Bug #10060] + +Sat Jul 19 11:56:36 2014 Grey Baker <greysteil@gmail.com> + + * lib/time.rb (Time#apply_offset): Guards against a `nil` return + value from `Time.month_days` when offsetting date. Out of range + values are then caught when `Time.utc` is called (as usual). + + Previously a `nil` return value from `Time.month_days` would + have the `<` operator called on it, and raise `NoMethodError`. + [fix GH-667] + + * lib/rdoc/parser/changelog.rb (RDoc#parse_entries): fix dirty hack. + +Sat Jul 19 06:19:01 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: refactoring. + +Fri Jul 18 22:34:41 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (folevariant_initialize): WIN32OLE_VARIANT + does not support VT_RECORD. VT_RECORD should be supported in + WIN32OLE_RECORD. + + * test/win32ole/test_win32ole_variant.rb (test_s_new_vt_record_exc): + ditto. + +Fri Jul 18 19:54:03 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (folevariant_initialize): remove unnecessary + code. + +Fri Jul 18 19:11:03 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix/eigenvalue_decomposition: Style fix + Patch by Gogo Tanaka [#10058] + +Fri Jul 18 19:03:53 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Avoid using `and`. + Patch by gogo tanaka [#10058] + +Fri Jul 18 17:41:54 2014 GoGo tanaka <qlli.illb@gmail.com> + + * test/matrix/test_matrix.rb: Add tests for Matrix class. + [Feature #10057][ruby-core:63809] + +Fri Jul 18 10:14:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/fileutils.rb: added missing options of FileUtils.touch by @Domon. + [fix GH-669] + +Thu Jul 17 19:57:27 2014 Herwin <herwin@quarantainenet.nl> + + * ext/thread/thread.c (rb_szqueue_push): add optional parameter, + non_block defaulted to false. [ruby-core:63794] [Feature #10052] + +Wed Jul 16 23:01:43 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_variant2val): support array of + VT_RECORD variant. + +Wed Jul 16 20:21:49 2014 Naohisa Goto <ngotogenome@gmail.com> + + * vm_core.h (struct rb_iseq_struct): stack_max is changed to int + because all calculations related to stack_max in compile.c + (iseq_set_sequence) and vm_insnhelper.c (vm_push_frame) are + conducted by using int. This partly reverts r23945. + * vm_insnhelper.c (vm_push_frame): ditto. This reverts r42401. + +Wed Jul 16 19:55:32 2014 Naohisa Goto <ngotogenome@gmail.com> + + * vm_core.h (struct rb_iseq_struct): temporal workaround of [Bug 10037]. + Add padding on big-endian 64-bit architecture (e.g. sparc64). + +Wed Jul 16 19:32:23 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (fole_record_method_missing): call + rb_hash_fetch instead of rb_hash_aref. + +Wed Jul 16 18:08:47 2014 Koichi Sasada <ko1@atdot.net> + + * iseq.c (rb_iseq_defined_string): use rb_gc_mark_object() instead of + marking from vm_mark(). + + * vm.c (rb_vm_mark): ditto. + +Wed Jul 16 18:03:50 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_mark_roots): call rb_vm_mark directly. + + * vm.c: remove mark function for RubyVM object because + RubyVM object marked manually. + +Wed Jul 16 12:25:39 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * regcomp.c: Merge Onigmo 5.14.1 25a8a69fc05ae3b56a09. + this includes Support for Unicode 7.0 [Bug #9092]. + +Tue Jul 15 23:59:27 2014 Jared Jennings <jared.jennings.ctr@us.af.mil> + + * ext/digest: make built-in digest function implementations + indicate success or failure of init and final functions. + [ruby-core:61614] [Bug #9659] + + * ext/digest/digest.c: expect digest init and finish functions to + indicate success or failure; raise exception on failure. + [ruby-core:61614] [Bug #9659] + +Tue Jul 15 20:31:40 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: modify document for WIN32OLE_RECORD. + +Tue Jul 15 12:42:23 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * defs/default_gems: change version definition file of rake. + +Tue Jul 15 12:00:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rake.rb, lib/rake/*.rb: Upgrade to rake-10.3.2 + [fix GH-668] + * test/rake/*.rb: ditto. + +Mon Jul 14 19:14:51 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: modify WIN32OLE class document and + add comment for constants of WIN32OLE. + +Mon Jul 14 16:38:45 2014 Eric Wong <e@80x24.org> + + * vm_core.h (struct rb_iseq_struct): reduce to 288 bytes + on x86-64 (from 296 bytes) + +Mon Jul 14 16:07:25 2014 Eric Wong <e@80x24.org> + + * iseq.h (struct iseq_catch_table_entry): shrink to 32 bytes + on x86-64 (from 48 bytes) + +Mon Jul 14 16:04:41 2014 Eric Wong <e@80x24.org> + + * iseq.h (struct iseq_catch_table): new flexible array struct + (iseq_catch_table_bytes): allocated size function + * vm_core.h (struct rb_iseq_struct): update catch_table member + This reduces the struct from 304 to 296 bytes on x86-64. + * compile.c (iseq_set_exception_table): update for struct changes + * iseq.c (iseq_free): ditto + * iseq.c (iseq_memsize): ditto + * iseq.c (rb_iseq_disasm): ditto + * iseq.c (iseq_data_to_ary): ditto + * iseq.c (rb_iseq_build_for_ruby2cext): ditto (untested) + * vm.c (vm_exec): ditto + * vm_core.h (struct rb_iseq_struct): ditto + * vm_insnhelper.c (vm_throw): ditto + +Sun Jul 13 17:49:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/openssl/ossl_cipher.c: Fix call to ciphers class method and + spell out `encryption` by @vipulnsward [fix GH-664] + +Sun Jul 13 17:31:51 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/gdbm/gdbm.c: fix wrong arguments in GetDBM2 macro. + * ext/sdbm/init.c: ditto. + +Sun Jul 13 17:25:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/dbm/dbm.c: fix wrong arguments in GetDBM2 macro by @v2e4lisp. + [fix GH-655] + +Sun Jul 13 16:44:56 2014 Eric Wong <e@80x24.org> + + * vm_core.h (struct rb_call_info_struct): improve packing + This reduces the struct from 112 to 104 bytes on x86-64. + +Sun Jul 13 15:53:25 2014 Eric Wong <e@80x24.org> + + * vm_core.h (struct rb_iseq_struct): stack_max is uint32_t + This reduces the struct from 312 to 304 bytes on x86-64. + +Sun Jul 13 10:56:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (rb_cv_broken_backtrace): exit with failure + normally, no needs to abort. [ruby-core:63678] [Bug #10008] + +Sat Jul 12 15:10:22 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (fole_record_method_missing): correct + fields Hash key. + +Sat Jul 12 04:17:40 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * lib/net/smtp.rb (Net::SMTP#data): enable buffering while + 'data' send for optimizing Net::SMTP#send_message. + [ruby-dev:48329] [misc #9981] + patch by Masahiro Tomita. + +Sat Jul 12 01:13:45 2014 Naohisa Goto <ngotogenome@gmail.com> + + * test/ruby/envutil.rb (assert_no_memory_leak): On Solaris 9 or later, + if possible, execute child ruby with environment variables + LD_PRELOAD=libumem.so UMEM_OPTIONS="backend=mmap". With these + variables, freed memory is immediately returned to the OS. + [Bug #10020] [ruby-dev:48391] + +Fri Jul 11 20:49:10 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c: add WIN32OLE_RECORD class to support + VT_RECORD OLE variables. + +Fri Jul 11 17:15:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/abbrev.rb: remove executable. + +Fri Jul 11 16:45:39 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/fileutils.rb: handle ENOENT error with symlink targeted to + non-exists file. [ruby-dev:45933] [Bug #6716] + +Fri Jul 11 15:59:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * array.c: Clarify documentation for Array#insert. + [ruby-core:62934] [Bug #9901] + +Fri Jul 11 15:39:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * io.c: Improve Documentation by @dapplebeforedawn. + [fix GH-658] [ruby-core:63579] [Bug #10012] + +Fri Jul 11 14:19:14 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Fix sign for cross_product [#9499] + +Fri Jul 11 11:11:50 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/prepare_so_k_nucleotide.rb: use require_relative. + + * benchmark/prepare_so_reverse_complement.rb: ditto. + +Fri Jul 11 10:09:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * pack.c (encodes): fix buffer overrun by tail_lf. Thanks to + Mamoru Tasaka and Tomas Hoger. [ruby-core:63604] [Bug #10019] + +Thu Jul 10 23:51:36 2014 Naohisa Goto <ngotogenome@gmail.com> + + * hash.c (ruby_setenv): Fix TestEnv#test_aset failure on Solaris 9. + When name contains '=', ruby_setenv raises Errno::EINVAL. + That is the same behavior as Solaris 10. + NULL check for malloc return value is also added. + +Thu Jul 10 15:02:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_insnhelper.c (vm_callee_setup_keyword_arg): adjust VM stack + pointer to get rid of overwriting splat arguments by arguments + for `to_hash` conversion. [ruby-core:63593] [Bug #10016] + +Thu Jul 10 01:09:57 2014 Koichi Sasada <ko1@atdot.net> + + * symbol.c: remove rb_gc_mark_symbols(). + + fstrings referred by static symbols and pinned dynamic symbols + are registered by rb_gc_register_mark_object(). + + fstrings referred by dynamic symbols (not pinned symbols) + are referred from global_symbols.dsymbol_fstr_hash (Hash object). + + Note that fstrings referred from dynamic symbols must live logger + than symbol objects themselves because rb_gc_free_dsymbol() uses + fstrings to remove from symbol tables. + This is why we can not mark fstrings from dynamic symbols. + + This technique reduces root objects for GC marking. + + * gc.c (gc_mark_roots): ditto. + + * internal.h: ditto. + +Thu Jul 10 00:24:18 2014 Naohisa Goto <ngotogenome@gmail.com> + + * common.mk (DTRACE_DEPENDENT_OBJS): fix build failure on Solaris + introduced in r46768. Object files containing dtrace probes should + be listed in DTRACE_DEPENDENT_OBJS. + +Wed Jul 9 17:07:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * symbol.c, symbol.h: Symbol class implementation and internals, + split from parse.y. + +Wed Jul 9 14:45:39 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y: change Symbol <-> ID relationship to avoid + exposing IDs from collectable symbols. + [Bug #10014] + + Now, rb_check_id() returns 0 if corresponding symbol is + pinned dynamic symbol. + + There is remaining intern_cstr_without_pindown(), it can return + IDs from collectable symbols. We must be careful to use it + (only used in parse.y). I think it should be removed if + it does not have impact for performance. + + * parse.y: + add: + * STATIC_SYM2ID() + * STATIC_ID2SYM() + rename: + * rb_pin_dynamic_symbol() -> dsymbol_pindown() + + * internal.h: + remove: + * rb_check_id_without_pindown() + * rb_sym2id_without_pindown() + add: + * rb_check_symbol() + * rb_check_symbol_cstr() + + * load.c: use rb_check_id() or rb_check_id_cstr(). + + * object.c: ditto. + + * struct.c: ditto. + + * thread.c: ditto. + + * vm_method.c: ditto. + + * string.c (sym_find): use only rb_check_symbol(). + + * sprintf.c (rb_str_format): use rb_check_symbol_cstr(). + +Wed Jul 9 12:21:55 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y (symbols_i): delete garbage symbols for Symbol.all_symbols. + +Wed Jul 9 05:49:08 2014 Eric Wong <e@80x24.org> + + * thread_pthread.h (struct rb_global_vm_lock_struct): + do not expose pthread type for lock + +Wed Jul 9 05:41:40 2014 Eric Wong <e@80x24.org> + + * thread_pthread.h: remove unneeded semaphore.h include + +Wed Jul 9 00:12:28 2014 Keiju Ishitsuka <keiju@ishitsuka.com> + + * lib/irb/ruby-lex.rb: fix counting indent in identify_string_dvar. + +Tue Jul 8 16:58:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/ruby/memory_status.rb (Memory::PSCMD): use ps command which + outputs expected result. [ruby-dev:48370] [Bug #10010] + +Tue Jul 8 14:45:17 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y (dsymbol_alloc): set global_symbols.minor_marked to 0. + + * parse.y (dsymbol_check): set RSYMBOL(sym)->fstr to 0 + because we should not touch fstr after that. + + * parse.y (rb_gc_free_dsymbol): skip deleting str and sym + from tables if fstr == 0. + +Mon Jul 7 14:31:52 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y: remove global_symbols::pinned_dsym + (and ::pinned_dsym_minor_marked). + + Mark pinned dsymbols by rb_gc_register_mark_object() because + they are immortal. + + * parse.y (rb_gc_free_dsymbol): rename parameter name `ptr' to `sym'. + +Mon Jul 7 12:45:51 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: revert miss-commit. + +Mon Jul 7 12:40:59 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y: need to use updated (re-created) symbols. + +Mon Jul 7 11:02:55 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/mkconfig.rb: remove not to require rbconfig/obsolete.rb. + + * lib/rbconfig/obsolete.rb: removed. + +Mon Jul 7 10:52:03 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y: do not use rb_gc_resurrect(), but create a new dynamic + symbol for garbage dynamic symbol. + + * common.mk: use gc.h by parse.y. + +Mon Jul 7 02:18:42 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (fstr_update_callback): do not use rb_gc_resurrect() + any more. + + Make new frozen string and replace with garbage frozen string. + + * common.mk: use gc.h from string.c. + +Mon Jul 7 00:36:13 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: rename is_dying_object() to is_garbage_object(). + + * gc.h: rb_objspace_garbage_object_p() as an exported function. + +Sun Jul 6 21:30:35 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (is_dying_object): fix missed condition. + + * gc.c (is_live_object): move frequent path first. + +Sun Jul 6 21:00:11 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: rename is_dead_object() to is_dying_object(). + This function is not opposite against is_live_object() + because is_dying_object() does *not* check object type. + + * gc.c (is_dying_object): change condition. + + * gc.c (is_live_object): use T_NONE instead of 0. + + * gc.c (rb_objspace_dying_object_p): added. + +Sun Jul 6 13:37:27 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_gc_register_mark_object): change data structure. + From single array, to array of arrays. Each array only has 1024 + entries. + + * vm.c (Init_vm_objects): change default capa from 1 to 128. + +Sat Jul 5 05:05:53 2014 Vipul A M <vipulnsward@gmail.com> + + * lib/irb/locale.rb (IRB::Locale#modifier): fix wrong attr_reader + `modifieer` => `modifier` from irb locale. [fix GH-656] + +Fri Jul 4 20:45:26 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y: rename symbols::sym_id to symbols::str_id. + This table is not {Symbol => ID} table, but + {String => ID} table. + + * parse.y (lookup_sym_id): also rename lookup_sym_id() to + lookup_str_id() because key is not Symbol, but String. + +Fri Jul 4 18:42:04 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y (must_be_dynamic_symbol): fix missed-condition. + +Fri Jul 4 18:38:11 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y (rb_pin_dynamic_symbol): should be `static' function. + +Fri Jul 4 18:03:35 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y (must_be_dynamic_symbol): refactoring. + * add `inline'. + * use UNLIKELY(). + * check only DYNAMIC_SYM_P(), otherwise it is a bug. + * lookup_id_str() is not needed in second condition. + +Fri Jul 4 11:53:56 2014 Koichi Sasada <ko1@atdot.net> + + * parse.y: remove unused code + surrounded by `#if ENABLE_SELECTOR_NAMESPACE' + +Fri Jul 4 10:08:24 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/rubygems/test_gem_package.rb: avoid tempfile leaks using Tempfile#close! + * test/rubygems/test_gem_request_set.rb: ditto. + * test/rubygems/test_gem_request_set_gem_dependency_api.rb: ditto. + +Fri Jul 4 04:42:05 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/response.rb (Net::Inflater#inflate_adapter): + prevent automatic encoding conversion. + +Fri Jul 4 04:39:52 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/net/http/response.rb (Net::HTTPResponse.each_response_header): + raise first exception even if inflate_body_io.finish raises error. + when begin block raises error, finish usually raises error too. + +Fri Jul 4 02:56:04 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (URI::Generic#query=): remove validation, just + escape. [Feature #2542] + + * lib/uri/generic.rb (URI::Generic#fragment=): ditto. + + * lib/uri/generic.rb (URI::Generic#check_query): removed. + + * lib/uri/generic.rb (URI::Generic#set_query): ditto. + + * lib/uri/generic.rb (URI::Generic#check_fragment): ditto. + + * lib/uri/generic.rb (URI::Generic#set_fragment): ditto. + +Thu Jul 3 12:40:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (--with-static-linked-ext): fix for extensions to + be linked statically. + + * Makefile.in, common.mk: use ENCSTATIC for enc directory. + + * ext/extmk.rb: supply dependencies of statically linked extension + libraries. + +Wed Jul 2 15:45:49 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_heap_lazy_sweep): simplify logic. + + * gc.c (gc_page_sweep): return TRUE if empty slots are available. + +Wed Jul 2 09:48:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * logger.rb: removed unmaintained code. + [Feature #9860][ruby-core:62724] + * test/logger/test_application.rb: ditto. + +Wed Jul 2 03:20:00 2014 Charlie Somerville <charliesome@ruby-lang.org> + + * node.c (dump_node): handle nd_value == (NODE *)-1 to mean this + keyword argument is required + +Wed Jul 2 02:57:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm.c (rb_vm_env_local_variables): returns array of local + variable name symbols in the environment by envval. + + * proc.c (bind_local_variables): use rb_vm_env_local_variables. + +Wed Jul 2 02:23:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (bind_receiver): new method to return the bound receiver + of the binding object. [ruby-dev:47613] [Feature #8779] + +Wed Jul 2 02:14:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (bind_local_variables): update env from envval for each + iterations. [ruby-dev:48351] [Bug #10001] + +Tue Jul 1 23:46:34 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * NEWS: [DOC] mention about Binding#local_variables, introduced at + r44392 (see [Feature #8773]). + +Tue Jul 1 23:30:51 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> + + * numeric.c (num_step_scan_args): table argument of rb_get_kwargs() is + array of IDs, not Symbols. [ruby-dev:48353] [Bug #9811] + +Tue Jul 1 16:18:22 2014 Akinori MUSHA <knu@iDaemons.org> + + * ext/digest/lib/digest/hmac.rb, test/digest/test_digest_hmac.rb: + Digest::HMAC is finally removed as previously noticed. + [fix GH-648] + +Tue Jul 1 11:13:43 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/date/lib/date/format.rb: removed empty file by @vipulnsward. + * ext/date/lib/date.rb: removed needless require. + [fix GH-647] + +Mon Jun 30 16:42:52 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_stat_internal): return size_t value instead of VALUE + and remove `out' parameter. + + * gc.c: add braces for `if' statements. + + * gc.c (gc_stat_internal): fix comment. + +Mon Jun 30 15:07:34 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: support `USE_RGENGC == 0'. + + * test/ruby/test_gc.rb: ditto. + +Mon Jun 30 11:36:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * file.c: [DOC] document File.join returns a string. + Contributed by @dapplebeforedawn. [fix GH-646] + +Sat Jun 28 22:57:01 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/pathname/pathname.c (path_birthtime): Windows support. + see [Feature #9857] [ruby-dev:48339] + +Sat Jun 28 22:44:16 2014 Tanaka Akira <akr@fsij.org> + + * ext/pathname/pathname.c (path_birthtime): New method, + Pathname#birthtime. + Proposed by Kazuhiro NISHIYAMA. [ruby-dev:48232] [Feature #9857] + +Sat Jun 28 20:29:03 2014 Simon Baird <simon.baird@gmail.com> + + * ext/bigdecimal/lib/bigdecimal/math.rb (BigMath#PI): change error + message about zero or negative precision for clarity and + consistency with other methods. [GH-644] + +Sat Jun 28 15:32:57 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/utils.rb (create_listeners): Close socket objects. + +Sat Jun 28 13:58:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (setup_exception): should not overwrite SystemStackError + backtrace if set already. [ruby-core:63377] [Feature #6216] + + * eval.c (setup_exception): get rid of method calls before raising + stack overflow, not to cause stack overflow again. + + * defs/id.def: add IDs for backtraces. + +Sat Jun 28 04:08:22 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/mailto.rb: update to latest specs, RFC 6068 and HTML5. + + * lib/uri/mailto.rb (HEADER_PATTERN): removed. + + * lib/uri/mailto.rb (HEADER_REGEXP): use RFC 6068 hfields. + + * lib/uri/mailto.rb (EMAIL_REGEXP): use HTML5 email regexp. + + * lib/uri/mailto.rb (URI::MailTo.build): support multiple to addresses. + + * lib/uri/mailto.rb (URI::MailTo#initialize): Support multiple to + addresses. Don't check with regexp, only split. + + * lib/uri/mailto.rb (URI::MailTo#check_to): verify by matching + URI path-rootless and HTML5 email regexp with unescaped one. + + * lib/uri/mailto.rb (URI::MailTo#check_headers): verify only by + HEADER_REGEXP. + + * lib/uri/mailto.rb (URI::MailTo#set_headers): don't check by + HEADER_REGEXP, only split it. + +Sat Jun 28 00:35:10 2014 Lauri Tirkkonen <lotheac@iki.fi> + + * tool/mkconfig.rb: fix empty RbConfig::CONFIG["prefix"] when + configured --with-rubyarchprefix, remove prefix from rubyarchdir + after expansion for the case it does not start with '$(prefix)'. + [fix GH-643] + +Fri Jun 27 15:20:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rubygems/test_case.rb: rescue Gem::LoadError in Gem::TestCase. + because it's effected by removing minitest from stdlib. + +Fri Jun 27 12:29:37 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/rubygems/specification.rb: fixed broken condition caused + by removing YAML::ENGINE. + * lib/rubygems/package/old.rb: ditto. + +Fri Jun 27 05:33:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (env_shift): fix memory leak on Windows, free environment + strings block always. [ruby-dev:48332] [Bug #9983] + +Fri Jun 27 03:41:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * sprintf.c (GETASTER): should not use the numbered argument to be + formatted, raise ArgumentError instead. + [ruby-dev:48330] [Bug #9982] + +Thu Jun 26 18:18:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/with_different_ofs.rb: move into test library directory. + * test/csv/base.rb: fix require path for with_different_ofs.rb. + * test/digest/test_digest_extend.rb: ditto. + +Thu Jun 26 18:06:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/profile_test_all.rb: move into test library directory. + * test/runner.rb: fix require path for profile_test_all.rb. + +Thu Jun 26 17:57:57 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/webrick/httpproxy.rb: remove useless assigned variables. + * lib/webrick/httpservlet/cgihandler.rb: ditto. + * lib/webrick/httpservlet/erbhandler.rb: ditto. + * lib/webrick/server.rb: ditto. + +Thu Jun 26 08:28:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (env_select): fix memory leak and crash on Windows, make + keys array first instead of iterating on environ directly. + [ruby-dev:48325] [Bug #9978] + +Thu Jun 26 02:45:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval_error.c (error_print): put a newline after an anonymous + exception class name. + +Wed Jun 25 22:31:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (ruby_setenv): fix memory leak on Windows, free + environment strings block after check for the size. + [ruby-dev:48323] [Bug #9977] + +Wed Jun 25 15:44:12 2014 Eric Wong <e@80x24.org> + + * ccan/container_of/container_of.h (container_off_var): + avoid warning with -Wcast-qual + [ccan ba5ad771af4aa9e085498de6c3c665c52694460f (Rusty Russell)] + +Wed Jun 25 10:19:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (env_aset, env_has_key, env_assoc, env_has_value), + (env_rassoc, env_key): prohibit tainted strings if $SAFE is + non-zero. [Bug #9976] + +Tue Jun 24 14:46:17 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/gserver.rb: remove redundant use of to_s in interpolation. + * lib/logger.rb: ditto. + * lib/optparse.rb: ditto. + * lib/rbconfig/obsolete.rb: ditto. + * lib/resolv.rb: ditto. + * lib/webrick/httpresponse.rb: ditto. + +Tue Jun 24 10:50:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (env_path_str_new): make PATH environment variable + string, to be frozen. + +Tue Jun 24 10:40:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * tool/make-snapshot: download bundle gems when package making. + [Feature #9852][ruby-core:62676] + * gems/bundled_gems: listed bundled gems for Ruby 2.2. + +Tue Jun 24 10:20:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * tool/downloader.rb: make Downloader class to general download utility. + It can be used without config.guess and config.sub. + * tool/get-config_files: ditto. + * tool/make-snapshot: ditto. + +Tue Jun 24 06:17:52 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * eval.c (setup_exception): "mesg == sysstack_error" and + sysstack_error_p(mesg) are duplicated. + r46502 seems to want to use latter. + +Tue Jun 24 06:15:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/tk/tcltklib.c: fix format specifiers for VALUE and + Tcl_Interp*. [ruby-core:63283] [Bug #9972] + +Tue Jun 24 05:40:41 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * nacl/nacl-config.rb: Use File.exist? instead of executable? + for irt_core. Recent nacl_sdk has non-executable irt_core. + Patch by Shinichiro Hamaji. + [Fixes GH-529] https://github.com/ruby/ruby/pull/529 + +Mon Jun 23 18:44:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * tool/config_files.rb: rename class ConfigFiles to Downloader. + * tool/get-config_files: ditto. + * tool/make-snapshot: ditto. + +Mon Jun 23 18:03:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * tool/rbinstall.rb: support to install bundle gems. + +Mon Jun 23 17:33:11 2014 Akinori MUSHA <knu@iDaemons.org> + + * lib/net/imap.rb (Net::IMAP#fetch): [DOC] Describe how a range in + +set+ is interpreted, and mention -1 which can be used for '*'. + +Mon Jun 23 16:22:50 2014 URABE Shyouhei <shyouhei@ruby-lang.org> + + * include/ruby/ruby.h (struct RHash): no longer. [Feature #9889] + + * include/ruby/ruby.h (RHASH): ditto. + + * include/ruby/ruby.h (RHASH_ITER_LEV): deprecated. Will be deleted later. + + * include/ruby/ruby.h (RHASH_IFNONE): ditto. + + * internal.h (struct RHash): moved here. + + * internal.h (RHASH): ditto. + + * hash.c (rb_hash_iter_lev): do not use this. + + * hash.c (rb_hash_ifnone): ditto. + +Mon Jun 23 13:30:11 2014 URABE Shyouhei <shyouhei@ruby-lang.org> + + * include/ruby/ruby.h (struct RComplex): no longer. [Feature #9888] + + * include/ruby/ruby.h (RCOMPLEX): ditto. + + * include/ruby/ruby.h (RCOMPLEX_SET_REAL): deprecated. Will be deleted later. + + * include/ruby/ruby.h (RCOMPLEX_SET_IMAG): ditto. + + * internal.h (struct RFloat): moved here. + + * internal.h (RCOMPLEX): ditto. + + * complex.c (rb_complex_set_real): do not use this. + + * complex.c (rb_complex_set_imag): ditto. + +Mon Jun 23 13:10:15 2014 URABE Shyouhei <shyouhei@ruby-lang.org> + + * include/ruby/ruby.h (struct RFloat): no longer. [Feature #9863] + + * include/ruby/ruby.h (RFLOAT): ditto. + + * internal.h (struct RFloat): moved here. + + * internal.h (RFLOAT): ditto. + +Mon Jun 23 12:01:42 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb (check_port): allow strings for port= as + described in rdoc. + + * lib/uri/rfc3986_parser.rb (regexp): implementation detail of above. + +Mon Jun 23 11:35:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (setup_exception): set backtrace in system stack error + other than the pre-allocated sysstack_error. [Feature #6216] + + * proc.c (Init_Proc): freeze the pre-allocated sysstack_error. + + * vm_insnhelper.c (vm_stackoverflow): raise new instance for each + times without calling any methods to keep the backtrace with no + further stack overflow. + + * object.c (rb_obj_copy_ivar): extract function to copy instance + variables only for T_OBJECT from init_copy. + +Mon Jun 23 11:11:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (check_stack_overflow): drop the last tag too close to + the fault page, to get rid of stack overflow deadlock. + [Bug #9971] + +Sun Jun 22 09:11:15 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/generic.rb: remove registry. + 'registry' is not used and RFC3986 doesn't use it. + +Sun Jun 22 09:10:09 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/rfc3986_parser.rb: raise exception when given a URI string + has non ASCII in order to keep the regexp compiled for US-ASCII. + +Sun Jun 22 09:05:42 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/common.rb (URI::REGEXP): move to lib/uri/rfc2396_parser.rb. + + * lib/uri/common.rb (URI::Parser): ditto. + + * lib/uri/common.rb (URI.split): use RFC3986_Parser. [Feature #2542] + + * lib/uri/common.rb (URI.parse): ditto. + + * lib/uri/common.rb (URI.join): ditto. + + * lib/uri/common.rb (URI.extract): deprecated. + + * lib/uri/common.rb (URI.regexp): ditto. + + * lib/uri/rfc2396_parser.rb: added. + + * lib/uri/rfc3986_parser.rb: added. + +Sun Jun 22 09:04:50 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/mailto.rb (initialize): as previous commit, fix arg_check + +Sun Jun 22 09:01:47 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/uri/ftp.rb (initialize): argument checking flag is arg_check, + but arg[-1] is fragment. + + * lib/uri/ftp.rb (initialize): explicitly specify arguments. + +Sat Jun 21 12:50:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/extconf.rb: supply 0 to fill RUBY_LIBFFI_MODVERSION + with 3-digit. libffi 3.1 returns just 2-digit. + [ruby-core:62920] [Bug #9897] + +Sat Jun 21 07:06:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * encoding.c (enc_find): [DOC] never accepted a symbol. + [ruby-dev:48308] [Bug #9966] + +Fri Jun 20 17:15:43 2014 Koichi Sasada <ko1@atdot.net> + + * test/lib/tracepointchecker.rb: add to check TracePoint healthiness. + + * test/runner.rb: use it. + +Fri Jun 20 07:26:44 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_settracefunc.rb: rewrite tests with + assert_consistent_call_return(). + + assert_consistent_call_return() is also modified to check + consistency. + +Fri Jun 20 07:07:28 2014 Koichi Sasada <ko1@atdot.net> + + * compile.c (rb_iseq_compile_node): put start label of block after + trace (b_call). + [Bug #9964] + + * test/ruby/test_settracefunc.rb: add a test. + + added assert_consistent_call_return() method check call/return + consistency. + +Fri Jun 20 05:26:27 2014 Koichi Sasada <ko1@atdot.net> + + * vm_eval.c (rb_catch_protect): fix same problem of [Bug #9961]. + + * vm_eval.c (rb_iterate): ditto. + +Thu Jun 19 21:41:30 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (rb_vm_rewind_cfp): add new function to rewind specified cfp + with invoking RUBY_EVENT_C_RETURN. + [Bug #9961] + + * vm_core.h: ditto. + + * eval.c (rb_protect): use it. + + * eval.c (rb_rescue2): ditto. + + * vm_eval.c (rb_iterate): ditto. + + * test/ruby/test_settracefunc.rb: add a test. + + * vm_core.h (rb_vm_rewind_cfp): add the prototype declaration. + +Thu Jun 19 19:47:21 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (invoke_block_from_c): move call/return event timing for + bmethod. It can invoke inconsistent call event if this call raises + argument error. + [Bug #9959] + + * vm_insnhelper.c (vm_call_bmethod_body): ditto. + + * test/ruby/test_settracefunc.rb: add a test. + +Thu Jun 19 18:14:47 2014 Koichi Sasada <ko1@atdot.net> + + * vm_core.h: add VM_FRAME_MAGIC_RESCUE to recognize normal block or + rescue clause. + + * vm.c (vm_exec): use VM_FRAME_MAGIC_RESCUE on at rescue/ensure. + + * test/ruby/test_settracefunc.rb: should not invoke b_return at rescue + clause. + [Bug #9957] + + * vm_dump.c (control_frame_dump): check VM_FRAME_MAGIC_RESCUE. + + * vm_dump.c (vm_stack_dump_each): ditto. + +Thu Jun 19 13:39:11 2014 Arne Brasseur <arne@arnebrasseur.net> + + * proc.c (rb_method_curry): Implement Method#curry, which delegates + to to_proc.curry. [ruby-core:62212] [Feature #9783] + +Tue Jun 17 16:41:49 2014 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/ftp.rb (gets, readline): read lines without LF properly. + [ruby-core:63205] [Bug #9949] + + * test/net/ftp/test_buffered_socket.rb: related test. + +Tue Jun 17 12:35:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (extract_raise_opts): pass unknown options to the + exception, so that exception class can receive a hash argument. + [ruby-core:63203] [Feature #8257] + +Tue Jun 17 12:24:57 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (obj_memsize_of): memsize_of(T_ZOMBIE) returns 0, not a rb_bug. + ObjectSpace.count_objects_size() uses memsize_of(T_ZOMBIE). + + This bug introduced at r46348. + +Mon Jun 16 19:00:11 2014 Koichi Sasada <ko1@atdot.net> + + * test/runner.rb: failure message should be passed as an argument. + +Mon Jun 16 18:42:57 2014 Koichi Sasada <ko1@atdot.net> + + * test/runner.rb: capture TracePoint stat before setup and compare + it after teardown. + +Mon Jun 16 14:33:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * process.c (open): use UTF-8 version function to support + non-ascii path properly. [ruby-core:63185] [Bug #9946] + +Sat Jun 14 10:54:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * array.c (rcombinate0): remove recursion, by looping with indexes + stored in `p`. + + * array.c (rpermute0): remove recursion, by looping with indexes + stored in `p`. + + * array.c (permute0): remove recursion, by looping with indexes + stored in `p`. [ruby-core:63103] [Bug #9932] + +Sat Jun 14 10:52:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_resize): update capa only when buffer get + reallocated. + http://d.hatena.ne.jp/nagachika/20140613/ruby_trunk_changes_46413_46420#r46413 + +Sat Jun 14 08:28:59 2014 Zachary Scott <e@zzak.io> + + * man/rake.1: [DOC] Update links for Rake, patch by @hsbt [Bug #9904] + [Fixes GH-628] https://github.com/ruby/ruby/pull/628 + +Fri Jun 13 17:58:58 2014 Koichi Sasada <ko1@atdot.net> + + * vm_trace.c: add new method TracePoint.stat to debug + TracePoint mechanism. + + Ruby users should not use this method. So I don't note this method + in the NEWS file. + + * test/runner.rb: detect zombie active TracePoints with + TracePoint.stat. + +Fri Jun 13 17:46:31 2014 Koichi Sasada <ko1@atdot.net> + + * vm_trace.c: clear and restore recursive checking thread local data + to avoid unexpected throw from TracePoint. + [Bug #9940] + + * test/ruby/test_settracefunc.rb: add a test. + + * thread.c: added + * rb_threadptr_reset_recursive_data(rb_thread_t *th); + * rb_threadptr_restore_recursive_data(rb_thread_t *th, VALUE old); + + * vm_core.h: ditto. + +Fri Jun 13 17:33:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * array.c (rb_ary_combination): iterate on a shared copy, and use + array of indexes instead of array of chosen objects. + [ruby-core:63149] [Bug #9939] + + * array.c (yield_indexed_values): extract from permute0(), + rpermute0(), and rcombinate0(). + +Fri Jun 13 13:42:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * array.c (rb_ary_permutation): `p` is the array of size `r`, as + commented at permute0(). since `n >= r` here, buffer overflow + never happened, just reduce unnecessary allocation though. + +Thu Jun 12 20:32:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_resize): should consider the capacity instead + of the old length, as pointed out by nagachika. + +Thu Jun 12 18:31:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/net/http/responses.rb: added Net::HTTPPermanentRedirect(308) + Contributed by @yorkie [fix GH-638] + +Thu Jun 12 13:27:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_freeze): shrink the buffer before freezing, as + pointed out by Eric Wong at [ruby-core:63119]. + +Thu Jun 12 13:09:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * file.c (expand_path): shrink expanded path which no longer needs + rooms to append. [ruby-core:63114] [Bug #9934] + +Wed Jun 11 17:37:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (rb_cv_scalar_pthread_t): pthread_t is not required + to be a scalar type. + + * thread.c (fill_thread_id_string, thread_id_str): dump pthread_t + in hexadecimal form if it is not a scalar type, assume it can be + represented in a pointer form otherwise. based on the patch by + Rei Odaira at [ruby-core:62867]. [ruby-core:62857] [Bug #9884] + + * thread_pthread.c (Init_native_thread, thread_start_func_1), + (native_thread_create): set thread_id_str if needed. + + * vm_core.h (rb_thread_t): add thread_id_string if needed. + +Wed Jun 11 01:53:22 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: invoke GC before memory allocation (xmalloc/xrealloc) + when GC.stress = true. + [Bug #9859] + + * test/ruby/test_gc.rb: add a test. + +Tue Jun 10 13:20:14 2014 Takeyuki FUJIOKA <xibbar@ruby-lang.org> + + * lib/cgi/core.rb: Provide a mechanism to specify the + max_multipart_length of multipart data. + [Feature #8370] patch by Leif Eriksen <leif.eriksen.au@gmail.com> + +Tue Jun 10 10:57:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/csv.rb (CSV#<<): honor explicitly given encoding. based on + the patch by DAISUKE TANIWAKI <daisuketaniwaki AT gmail.com> at + [ruby-core:62113]. [Bug #9766] + +Mon Jun 9 20:40:48 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: change full GC timing to keep lower memory usage. + + Extend heap only at + (1) after major GC + or + (2) after several (two times, at current) minor GC + + Details in https://bugs.ruby-lang.org/issues/9607#note-9 + [Bug #9607] + +Mon Jun 9 16:01:41 2014 Masahiro Ide <imasahiro9@gmail.com> + + * gc.c (gcdebug_sentinel): fix typo, "sentinel" not "sential". + [fix GH-634] + +Mon Jun 9 00:04:25 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (posix_fadvise): disable use of posix_fadvise + itself on 32-bit AIX. [ruby-core:62968] [Bug #9914] + +Sun Jun 8 23:28:00 2014 <kanemoto@ruby-lang.org> + + * io.c (rb_io_advise): AIX currently does not support a 32-bit call to + posix_fadvise() if _LARGE_FILES is defined. Patch by Rei Odaira. + [ruby-core:62968] [Bug #9914] + +Sun Jun 8 04:52:40 2014 Jun Hiroe <Jun.Hiroe@gmail.com> + + * string.c (rb_str_slice_bang): [DOC] update return value against + a fixnum, which has changed because of M17N. [fix GH-631] + +Sat Jun 7 22:13:42 2014 Benoit Daloze <eregontp@gmail.com> + + * numeric.c (do_coerce): Add a warning when an exception is raised + or an invalid value is returned in #coerce called by + numeric comparison operators and the exception + thrown by the caller has no information on the failure. + In the next release such exception should not be rescued or + should be the cause of the caller exception. nil is accepted + as the "no possible coercion" return value. See #7688. + + * test/ruby/test_numeric.rb: Add corresponding test. + +Sat Jun 7 18:15:33 2014 Benoit Daloze <eregontp@gmail.com> + + * numeric.c (bit_coerce): remove constant parameter `err' + (always TRUE) of bit_coerce(). + +Sat Jun 7 16:01:57 2014 Yutaka Kanemoto <kanemoto@ruby-lang.org> + + * cont.c (rb_fiber_struct): keep context.uc_stack.ss_sp and context.uc_stack.ss_size + for later use. Patch by Rei Odaira. [ruby-core:62945] [Bug #9905] + +Sat Jun 7 12:51:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (read_all): truncate the buffer before appending read data, + instead of truncating before reading. + [ruby-core:55951] [Bug #8625] + +Sat Jun 7 12:28:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/digest/digest.c (rb_digest_instance_equal): no need to call + `to_s` twice. [Bug #9913] + +Sat Jun 7 11:35:01 2014 Tanaka Akira <akr@fsij.org> + + * object.c (rb_mod_initialize_clone): Override Kernel#initialize_clone + to avoid an exception on Class.new.freeze.clone.to_s. + Reported by Andrew Grimm. [ruby-core:41858] [Bug #5828] + +Sat Jun 7 06:03:11 2014 Benoit Daloze <eregontp@gmail.com> + + * ext/digest/digest.c (rb_digest_instance_equal): + fix #== for non-string arguments. [ruby-core:62967] [Bug #9913] + + * test/digest/test_digest.rb: add test for above. + +Fri Jun 6 22:19:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (private_recv_p): check by node type, instead of a + magic number. + + * node.h (NODE_PRIVATE_RECV), parse.y (attrset_gen): remove + +Fri Jun 6 17:07:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (iseq_compile_each), parse.y (new_attr_op_assign_gen): + allow op assign to a private attribute. + [ruby-core:62949] [Bug #9907] + +Fri Jun 6 13:39:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (io_setstrbuf, io_read): should not shorten the given buffer until + read succeeds. [ruby-core:55951] [Bug #8625] + +Fri Jun 6 07:41:41 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/yaml_tree.rb: dump empty symbols with a + tag so that they can be parsed on input. [Bug #9873] [ruby-core:62825] + * test/psych/test_symbol.rb: test for change + +Thu Jun 5 16:08:39 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_page_sweep): refactoring. + + * gc.c (gc_page_sweep): should not set, but add final_slots into + sweep_page->final_slots. + +Thu Jun 5 14:36:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (jemalloc): check for the header regardless drop-in + libjemalloc is found, for `malloc_conf` declaration. + + * version.c (ruby_show_version): show `malloc_conf` if set. + [Feature #9113] + + * configure.in (with-jemalloc): also check for header, for ABIs + which JEMALLOC_MANGLE is needed, i.e., Mach-O and PE-COFF + platforms. [ruby-core:62939] [Feature #9113] + + * include/ruby/missing.h: include alternative malloc header to + replace memory management functions. + + * dln.c, io.c, parse.y, st.c: undef malloc family before + re-definition to suppress warnings. + +Thu Jun 5 12:52:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * man/ruby.1: remove rubyforge entry. + +Thu Jun 5 12:45:32 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * misc/README: use github link instead of rubyforge. + +Thu Jun 5 10:03:29 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (obj_free): check also FL_PROMOTED bit by RVALUE_OLD_P(). + +Thu Jun 5 03:45:28 2014 Eric Wong <e@80x24.org> + + * configure.in: add --with-jemalloc option + [ruby-core:62912] + +Wed Jun 4 22:28:14 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: introduce RZombie to manage zombie objects. + Rewrite finalizing logics with this type. + + * gc.c (gc_verify_internal_consistency): verify zombie (finalizing) + objects count. + +Wed Jun 4 22:09:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (match_aref, rb_reg_regsub): consider encoding of captured + names, encoding-incompatible should not match. + [ruby-dev:48278] [Bug #9903] + +Wed Jun 4 21:23:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (match_aref): should not ignore name after NUL byte. + [ruby-dev:48275] [Bug #9902] + +Wed Jun 4 04:08:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm.c (core_hash_merge_kwd): should return the result hash, which + may be converted from and differ from the given argument. + [ruby-core:62921] [Bug #9898] + +Tue Jun 3 23:32:34 2014 Tanaka Akira <akr@fsij.org> + + * ruby.c (load_file_internal2): Extracted from load_file_internal. + (load_file_internal): Invoke load_file_internal2 using rb_protect. + Close an opened FD if load_file_internal2 raises an exception. + +Tue Jun 3 19:11:45 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_objspace_free): should not rest_sweep() here. + Some data structures are already freed. + +Tue Jun 3 18:43:51 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_gc.rb: allocate more objects to invoke GC by newobj. + GC allows extending pages depends on heap_increment. + +Tue Jun 3 18:01:27 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_gc_call_finalizer_at_exit): add + gc_verify_internal_consistency() when RGENGC_CHECK_MODE >= 2. + +Tue Jun 3 17:54:21 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: change the counting method for young objects. + clear counter at the beginning of every GC and + count promoted (infant->young) objects. + + Some promotions (infant->young) are transition of promoting to old + objects. We should not count such promotions. + + With this technique, we don't need to check young objects + at obj_free(). + +Tue Jun 3 16:38:19 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: add verifying counters code in gc_verify_internal_consistency(). + gc_verify_internal_consistency() counts all + - live objects + - young objects (if age2 promotion) + - old objects + in all pages and compares with objspace managing counters. + + * gc.c (gc_after_sweep): do gc_verify_internal_consistency() + when RGENGC_CHECK_MODE >= 2. + +Tue Jun 3 13:14:04 2014 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/imap.rb (body_type_1part): Gmail IMAP reports a body + type as "MIXED" followed immediately by params + [ruby-core:62864] [Bug #9885] + Patch by @rayners (David Raynes). [Fixes GH-622] + https://github.com/ruby/ruby/pull/622 + +Tue Jun 3 13:18:24 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (objspace_live_slot): live slot count should not include final + slot (contains T_ZOMBIE) count. + +Tue Jun 3 13:03:21 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (obj_free): fix spacing. + +Tue Jun 3 12:59:32 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (check_gen_consistency): fix error message. + +Tue Jun 3 12:40:23 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: count old/young objects more correctly. + + * gc.c (RVALUE_DEMOTE_FROM_OLD): decrement old object count. + + * gc.c (RVALUE_DEMOTE_FROM_YOUNG): decrement young object count. + + * gc.c (rb_gc_resurrect): increment old object count. + + * gc.c (gc_marks_body): should not add old object count. + This code is completely my misunderstanding. + + * gc.c (rb_gc_force_recycle): decrement young or old object count + correctly. + +Tue Jun 3 12:26:47 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/memory_status.rb: add $LOAD_PATH to load test/unit + correctly for fiddle/import unavailable environments. + +Tue Jun 3 09:45:13 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/openssl/test_ssl.rb (OpenSSL::TestSSL#test_verify_result): + shouldn't use same server for respective tests, because the 1st + test sometimes kills the server main loop silently. + [Bug #9881] [ruby-dev:48266] + +Tue Jun 3 01:34:59 2014 Zachary Scott <e@zzak.io> + + * README.EXT: [DOC] Add rb_call_super when subclassing from @robin850 + [Fixes GH-623] https://github.com/ruby/ruby/pull/623 + +Mon Jun 2 17:14:49 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (ruby_vm_destruct): remove useless call of + rb_gc_force_recycle(). + + At this line, a VM object is already freed + (is changed to T_NONE) by rb_gc_call_finalizer_at_exit(). + +Mon Jun 2 15:50:24 2014 Koichi Sasada <ko1@atdot.net> + + * eval.c (rb_using_refinement): add write-barriers for + cref->nd_refinements. + +Mon Jun 2 12:26:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * CONTRIBUTING.md: added contributing guide for github. [fix GH-625] + +Mon Jun 2 07:30:33 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/envutil.rb (default_warning): New method. + + * test/ruby/test_autoload.rb: Use EnvUtil.default_warning. + +Mon Jun 2 07:05:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/encoding.h: constify `rb_encoding` arguments. + + * include/ruby/oniguruma.h: constify `OnigEncoding` arguments. + +Sun Jun 1 12:05:10 2014 Tanaka Akira <akr@fsij.org> + + * test/drb: Wrap tests definitions by DRbTests module. This makes + several tests (ACLEntryTest, TestBug4409, etc.) easier to understand + that they are tests for DRb. + +Sun Jun 1 11:36:25 2014 Tanaka Akira <akr@fsij.org> + + * lib/rinda/ring.rb (RingFinger#make_socket): Close the socket on + exception. + +Sun Jun 1 06:55:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (intern_str): dynamic attrset ID is registered by + `rb_id_attrset()` already, so no further registration is needed. + [ruby-core:62861] + +Sun Jun 1 04:52:47 2014 Zachary Scott <e@zzak.io> + + * lib/English.rb: [DOC] $LOADED_FEATURES moved to load.c [Fixes GH-620] + Patch submitted by @leafac in https://github.com/ruby/ruby/pull/620 + * doc/globals.rdoc: Added $LOADED_FEATURES to list + +Sat May 31 22:30:14 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/leakchecker.rb: Leak checker extracted from + test/lib/minitest/unit.rb. + +Sat May 31 21:15:43 2014 URABE Shyouhei <shyouhei@ruby-lang.org> + + * thread.c (rb_thread_atfork_internal): My compiler complains + about this variable being used before initialized. I looked at + the code and expanded the macro and turned out it was actually + USED for pointer arithmetic, not dereferenced. So this was + never a serious bug. But is annoying indeed to see warnings + every time. I added `=0` and all went healthy. + + * configure.in: Also, I found that the problematic macro expansion + only happens when we lack __typeof__ C extension, which shall + not be the case of my compiler. I added AC_C_TYPEOF to kick ass. + +Sat May 31 16:32:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/ipaddr.rb: extracted inline tests into test dir. + * test/test_ipaddr.rb: ditto. + +Sat May 31 16:29:21 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/digest/lib/digest/hmac.rb: extracted inline tests into test dir. + * test/digest/test_digest_hmac.rb: ditto. + +Sat May 31 16:02:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_syslog.rb: remove executable. + +Sat May 31 08:58:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * enc/unicode.c (init_case_fold_table): no longer need to + initialize tables at runtime. + + * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to + lookup case unfolding table 3. + + * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to + lookup case unfolding table 2. + + * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to + lookup case unfolding table 1. + + * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to + lookup case folding table. + + * enc/unicode/case-folding.rb (print_table): merge non-locale and + locale tables, and reduce initializing loops. + + * enc/unicode/case-folding.rb (CaseFolding): modularize, and add + --output-file option. + + * enc/unicode/case-folding.rb: script to convert CaseFolding.txt, + translated from CaseFolding.py. + +Sat May 31 08:31:41 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Check Tempfile leaks for each test method + again. + +Sat May 31 03:50:50 2014 Zachary Scott <e@zzak.io> + + * lib/delegate.rb: [DOC] Document raise in Delegator class + Patch by @lucasmazza. [Fixes GH-621] + https://github.com/ruby/ruby/pull/621 + +Fri May 30 21:23:26 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/server.rb: Use a pipe to detect server shutdown. + shutdown() or close() for listening socket is not a reliable. + Actually, both doesn't work (doesn't wake up select()) on + DragonFly BSD 3.6.2. + + * test/webrick/utils.rb: :ShutdownSocketWithoutClose is not required + now to immediate server shutdown detection. + This fixes fd leaks. + + * test/net/http/utils.rb: Ditto. + +Fri May 30 20:58:37 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb (check_fd_leak): Sort the inspected + objects list for a FD. + +Fri May 30 18:06:55 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb (check_fd_leak): Try GC to delete leaked + FDs. + +Fri May 30 12:05:59 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * test/lib/test/unit/parallel.rb (_run_suite): orig_stdout may be nil + though I don't know the reason. + +Fri May 30 11:33:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_substr): need to reset code range for shared + string too, not only copied string. + [ruby-core:62842] [Bug #9882] + +Fri May 30 10:22:21 2014 Mark Lorenz <mlorenz@covermymeds.com> + + * lib/erb.rb (result): [DOC] no longer accepts a Proc, as + Kernel.eval does not. [fix GH-619] + +Fri May 30 07:25:46 2014 Tanaka Akira <akr@fsij.org> + + * ext/-test-/dir: Dir#fileno implemented. + + * test/lib/minitest/unit.rb (find_fds): Don't return the fd used to + scan /proc/$$/fd. + +Fri May 30 04:48:00 2014 Eric Wong <e@80x24.org> + + * parse.y (rb_gc_mark_parser): remove, empty since r8758 + * internal.h: ditto, not usable from extensions since 2.0.0 + * gc.c (gc_mark_roots): remove checkpoint for parser + +Thu May 29 23:27:50 2014 Rei Odaira <Rei.Odaira@gmail.com> + + * signal.c (ruby_signal): should return either `old.sa_sigaction` + or `old.sa_handler`, depending on whether `SA_SIGINFO` is set in + `old.sa_flags`, because they may not be a union. + [ruby-core:62836] [Bug #9878] + +Thu May 29 23:11:20 2014 Tanaka Akira <akr@fsij.org> + + * io.c (pipe_open): Close pipes when rb_execarg_fixup() raises + an exception. + (rb_execarg_fixup_v): New function. + +Thu May 29 22:18:57 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb (capture_subprocess_io): Close fds. + +Thu May 29 19:47:08 2014 Tanaka Akira <akr@fsij.org> + + * io.c (rb_io_s_pipe): Close pipes if io_encoding_set() raises an + exception. + (io_encoding_set_v): New function. + +Thu May 29 19:42:49 2014 Tanaka Akira <akr@fsij.org> + + * lib/csv.rb (CSV.open): Close the opened file when an exception + occur. + +Thu May 29 19:31:10 2014 Tanaka Akira <akr@fsij.org> + + * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): Close a socket + if any exception occur. + +Thu May 29 05:05:29 2014 Eric Wong <e@80x24.org> + + * include/ruby/ruby.h: Hide Symbol internals. + (struct RSymbol): moved to internal.h + (RSYMBOL): ditto + +Thu May 29 00:28:56 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/unixsocket.c (rsock_init_unixsock): Open a socket + after path length check. + This fixes a fd leak by TestSocket_UNIXSocket#test_too_long_path. + +Wed May 28 23:04:35 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_io.rb (test_flush_in_finalizer1): Use + ObjectSpace.each_object to close files. + GC.start is not reliable. + +Wed May 28 19:00:31 2014 Tanaka Akira <akr@fsij.org> + + * lib/net/imap.rb (Net::IMAP#initialize): Close the opened socket when + any exception occur. + This fixes a fd leak by IMAPTest#test_imaps_post_connection_check + which start_tls_session() raises an exception. + +Wed May 28 18:06:13 2014 Tanaka Akira <akr@fsij.org> + + * ext/openssl/ossl_ssl.c (ossl_ssl_close): Fix sync_close to work + when SSL is not started. + This fix the fd leak by test_https_proxy_authentication in + test/net/http/test_https_proxy.rb. + +Wed May 28 10:29:28 2014 Eric Wong <e@80x24.org> + + * vm.c (rb_vm_living_threads_foreach): remove function + [ruby-core:62745] + * thread.c (terminate_i): remove + * thread.c (terminate_all): implement (inlines old terminate_i) + * thread.c (rb_thread_terminate_all): use terminate_all + * thread.c (rb_thread_fd_close_i): remove + * thread.c (rb_thread_fd_close): iterate inline + * thread.c (thread_list_i): remove + * thread.c (rb_thread_list): iterate inline + * thread.c (rb_thread_atfork_internal): iterate inline + * thread.c (terminate_atfork_i): update types to remove casts + * thread.c (terminate_atfork_before_exec_i): ditto + * thread.c (struct thgroup_list_params): remove definition + * thread.c (thgroup_list_i): remove + * thread.c (thgroup_list): iterate inline + * thread.c (check_deadlock_i): remove + * thread.c (debug_deadlock_check): implement (inlines check_deadlock_i) + * thread.c (debug_i): remove + * thread.c (rb_check_deadlock): iterate inline + * vm.c (vm_mark_each_thread_func): remove + * vm.c (rb_vm_mark): iterate inline + * vm_core.h (rb_vm_living_threads_remove): remove + * vm_trace.c (clear_trace_func_i): remove + * vm_trace.c (rb_clear_trace_func): iterate inline + +Wed May 28 09:30:51 2014 Eric Wong <e@80x24.org> + + * signal.c (signal_exec): ignore immediate cmd for SIG_IGN + * signal.c (trap_handler): set cmd to true for SIG_IGN + * signal.c (trap): handle nil and true values for oldcmd + [Bug #9835] + +Wed May 28 01:02:54 2014 Tanaka Akira <akr@fsij.org> + + * lib/tempfile.rb (Tempfile#inspect): Show "(closed)" if the tempfile + is closed. + +Wed May 28 00:38:09 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Use Tempfile#close! instead of + Tempfile#unlink to close file descriptors. + + * test/openssl/test_config.rb: Ditto. + + * test/ruby/test_io.rb: Ditto. + +Wed May 28 00:06:18 2014 Tanaka Akira <akr@fsij.org> + + * lib/net/ftp.rb (transfercmd): Close TCP server socket even if an + exception occur. + +Tue May 27 23:50:07 2014 Tanaka Akira <akr@fsij.org> + + * lib/cgi/core.rb: Use Tempfile#close! instead of Tempfile#unlink + to close file descriptors. + +Tue May 27 23:06:46 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_number_literal_suffix): refine error message for + extra dot and digits. + +Tue May 27 22:44:20 2014 Tanaka Akira <akr@fsij.org> + + * test/rexml: Avoid fd leaks. + +Tue May 27 22:24:25 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb: Indent. + +Tue May 27 22:15:29 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_document.rb: Wrap by REXMLTests module. + +Tue May 27 22:11:10 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_encoding_2.rb: Remove a needless file. + +Tue May 27 22:10:30 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_contrib.rb: Indent. + +Tue May 27 21:28:16 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * ext/socket/ifaddr.c (ifaddr_inspect_flags): support IFF_SIMPLEX. + +Tue May 27 21:03:03 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/: Use REXMLTests as wrapping module for REXML tests. + I avoid using the same module for library in test because + it provides "include REXML" environment in test. Normally, + users don't use REXML on "include REXML" environment. So I + don't want to write tests on "include REXML" environment. + +Tue May 27 20:59:37 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_comment.rb: Remove needless REXML module wrapping. + +Tue May 27 20:56:49 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/openssl/test_pkcs7.rb: Fix inverted expected and actual values. + +Tue May 27 20:26:06 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/ruby/test_io.rb (test_flush_in_finalizer1): some opened fds are + remain before GC, so unlink the tempfile is failed. + +Tue May 27 19:07:26 2014 Tanaka Akira <akr@fsij.org> + + * io.c (rb_io_autoclose_p): Don't raise on frozen IO. + + * test/lib/minitest/unit.rb: IO#autoclose? may raise IOError. + +Tue May 27 19:01:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/openssl/test_pair.rb: Modify TestSSL#test_read_and_write + to handle partial sysreads. [Bug #7398][ruby-core:49563] + * test/openssl/test_ssl.rb: ditto. + +Tue May 27 18:46:23 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/openssl/test_pkcs7.rb: Add tests for PKCS7#type= and add_data. + [Feature #7399][ruby-core:49565] + +Tue May 27 17:45:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/openssl/test_hmac.rb (test_binary_update): Added Test for + HMAC signing with UTF-8 String. [Bug #7512][ruby-core:50559] + +Tue May 27 17:10:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/runner.rb: fixed randomly test failure. + [Bug #6573][ruby-core:45563] + +Tue May 27 16:58:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_timeout.rb (test_timeout): inverted test condition. + [Bug #8523] + +Tue May 27 12:24:22 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Show leaked file descriptors. + +Tue May 27 11:12:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (rb_io_fileno, rb_io_inspect): non-modification does not + error on frozen IO. [ruby-dev:48241] [Bug #9865] + +Tue May 27 00:00:21 2014 yui-knk <spiketeika@gmail.com> + + * insns.def (defineclass): fix typo in the instruction comment. + [fix GH-618] + +Mon May 26 16:33:15 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/ruby/test_file.rb: skip the test of atime on Windows, because + Windows delays updating atime about 1 hour. + see more details: + http://msdn.microsoft.com/en-us/library/windows/desktop/ms724290%28v=vs.85%29.aspx + +Mon May 26 12:25:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/optionparser.rb, lib/optparse.rb (OptParse): aliases. + [ruby-core:62751] [Feature #9864] + +Mon May 26 07:59:34 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Show Finished threads line-by-line. + +Mon May 26 01:39:02 2014 Zachary Scott <e@zzak.io> + + * lib/csv.rb: Reject nil as data source for CSV.new, patch by @Peeja. + [Fixes GH-580] https://github.com/ruby/ruby/pull/580 + +Mon May 26 01:07:51 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Show leaked threads and tempfiles + line-by-line. + +Sun May 25 23:02:06 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb (MiniTest::Assertions#diff): Remove + tempfiles. + +Sun May 25 22:42:27 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Check tempfile leak for each test class. + +Sun May 25 20:31:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (ac_cv_func_{getcontext,setcontext}): do not + disable ucontext.h entirely, but disable use of functions only. + `ucontext_t` is necessary in the signal handler now. + +Sun May 25 20:00:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (check_stack_overflow): revert part of r46100, the + previous condition was correct, and fix compilation error on + other architecture linux. [ruby-core:62746] [Bug #9862] + +Sun May 25 17:09:13 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Less ObjectSpace.each_object(Tempfile) + invocation. + +Sun May 25 16:54:06 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Use Thread.list instead of + ObjectSpace.each_object(Thread). + +Sun May 25 15:53:54 2014 Tanaka Akira <akr@fsij.org> + + * lib/rinda/ring.rb (Rinda::RingServer#shutdown): Join the killed + threads. + +Sun May 25 15:26:17 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/utils.rb: Override the inspect method of the thread + used in WEBrick::Utils::TimeoutHandler. + +Sun May 25 14:22:30 2014 Tanaka Akira <akr@fsij.org> + + * test/openssl: Join threads. + +Sun May 25 12:46:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * error.c (rb_bug_context): new function to report bug with + context. + + * vm_dump.c (rb_vm_bugreport): accepts `ucontext_t` argument to + dump machine registers. based on [GH-584]. + + * signal.c (sigbus, sigsegv): dump machine registers if available. + +Sun May 25 12:32:42 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Sort leaked threads and tempfiles. + +Sun May 25 12:15:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (check_stack_overflow): fix condition to use ucontext + register, mcontext_t dereference, and its member names, on Mac + OS X. + +Sun May 25 11:58:26 2014 Zachary Scott <e@zzak.io> + + * enumerator.c: [DOC] Fix example to show Enumerator#peek behavior + Patch by Erik Hollembeak [Bug #9814] + +Sun May 25 11:56:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vsnprintf.c (BSD_vfprintf): fix string width when precision is + given. as the result of `memchr` is NULL or its offset from the + start cannot exceed the size, the comparison was always false. + [ruby-core:62737] [Bug #9861] + +Sun May 25 11:32:42 2014 Zachary Scott <e@zzak.io> + + * lib/yaml.rb: Remove Psych::EngineManager [Bug #8344] + * test/psych/*: ditto. + +Sun May 25 10:34:15 2014 Zachary Scott <e@zzak.io> + + * doc/regexp.rdoc: [DOC] Clarify whitespace matching by @allolex + [Fixes GH-606] https://github.com/ruby/ruby/pull/606 + +Sun May 25 10:19:34 2014 Zachary Scott <e@zzak.io> + + * enum.c: [DOC] Use #find in example to clarify alias by @rachellogie + Patch submitted via documenting-ruby/ruby#34 + +Sun May 25 10:16:43 2014 Zachary Scott <e@zzak.io> + + * cont.c: [DOC] Fix rdoc in example for Fiber#transfer by @majjoha + Patch submitted via documenting-ruby/ruby#33 + +Sun May 25 10:01:11 2014 Zachary Scott <e@zzak.io> + + * lib/irb.rb: [DOC] Fixed syntax error in example by @jasdeepsingh. + Patch submitted via documenting-ruby/ruby#32 + +Sun May 25 09:58:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/fileutils/test_fileutils.rb (test_chown_R): Add tests for + chown_R. [Feature #9383][ruby-core:59641] + +Sun May 25 09:57:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/fileutils/test_fileutils.rb: Added recursively chown tests. + [Feature #9303][ruby-core:59325] + +Sun May 25 09:41:56 2014 Zachary Scott <e@zzak.io> + + * class.c: [DOC] Fixed grammar and examples of instance_methods. + By @alex-frost via documenting-ruby/ruby#31 + +Sun May 25 09:40:44 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb: Show leaked threads and tempfiles. + +Sun May 25 08:54:38 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/openssl/test_partial_record_read.rb: Testing read_nonblock on + a partial TLS record results in IO::WaitReadable by @mohamedhafez. + [fix GH-547] + +Sun May 25 08:43:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * lib/logger.rb: refactored to include Logger::Period. + +Sun May 25 06:50:19 2014 Zachary Scott <e@zzak.io> + + * vm_eval.c: [DOC] Improve instance_eval description when given a + block or String arguments. By @nathanl via documenting-ruby/ruby#28 + +Sun May 25 06:29:39 2014 Zachary Scott <e@zzak.io> + + * array.c: [DOC] Clarify default argument for Array.new. + By @Elffers [Fixes GH-610] + +Sat May 24 22:37:20 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * array.c: [DOC] Add more documents to shuffle! and shuffle. + Contributed by @JuanitoFatas [ci skip][fix GH-612] + +Sat May 24 22:28:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/lib/minitest/.document: removed unused configuration. + +Sat May 24 19:08:47 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/spec.rb: Unused file removed. + + * test/lib/minitest/autorun.rb: Don't require minitest/spec. + + * test/lib/minitest/benchmark.rb: Ditto. + +Sat May 24 18:45:30 2014 Tanaka Akira <akr@fsij.org> + + * test/benchmark/test_benchmark.rb: Use test/unit. + +Sat May 24 16:20:59 2014 Eric Wong <e@80x24.org> + + * process.c (proc_getgroups, proc_setgroups): use ALLOCV_N + [Bug #9856] + +Sat May 24 15:49:39 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/unit.rb (parallelize_me!): Removed. + This fixes the line-by-line structure of the test result in verbose + mode. [ruby-core:54905] + + * test/lib/minitest/parallel_each.rb: Removed. + + * test/minitest/test_minitest_mock.rb: Don't call parallelize_me!. + + * test/minitest/test_minitest_spec.rb: Ditto. + + * test/minitest/test_minitest_unit.rb: Ditto. + Tests for parallel feature removed. + +Sat May 24 15:29:10 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest/hell.rb: Unused file removed. + + * test/lib/minitest/pride.rb: Ditto. + +Sat May 24 15:05:32 2014 yui-knk <spiketeika@gmail.com> + + * enumerator.c (yielder_yield_push): Insert a break after the + method return value. [fix GH-617] + +Sat May 24 14:59:12 2014 Tanaka Akira <akr@fsij.org> + + * test/lib/minitest: Remove comments not appropriate now. + + * test/minitest: Ditto. + +Sat May 24 14:02:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * NEWS: added minitest changes. + +Sat May 24 13:42:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/lib/test/unit/test-unit.gemspec: removed needless gemspec file. + +Sat May 24 09:39:06 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * defs/default_gems: removed minitest entry. + +Sat May 24 06:17:33 2014 Ryan Davis <ryand-ruby@zenspider.com> + + * lib/minitest: minitest 4.7.5 removed. Need to support proper + gem packaging / installation before minitest 5 can be added. + +Sat May 24 05:54:06 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/mkconstants.rb: More constants + +Sat May 24 00:25:34 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * NEWS: add information of incompatibility about Prime.prime? + * lib/prime.rb: fix docs. + +Fri May 23 21:36:28 2014 Josh Goebel <dreamer3@gmail.com> + + * net/protocol.rb (using_each_crlf_line): fix SMTP dot-stuffing + for messages not ending with a new-line. + [ruby-core:61441] [Bug #9627] [fix GH-616] + +Fri May 23 03:48:08 2014 Eric Wong <e@80x24.org> + + * gc.c (rb_free_m_tbl): mark function as static + + * method.h (rb_free_m_tbl): remove prototype + +Thu May 22 22:58:27 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/mkconstants.rb: More TCP option constants. + Describe Linux and glibc versions. + +Thu May 22 20:38:10 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * file.c (stat_birthtime): add birthtime support [Feature #9647] + + * file.c (rb_stat_birthtime): add File::Stat.birthtime + + * file.c (rb_file_s_birthtime): add File.birthtime + + * file.c (rb_file_birthtime): add File#birthtime + + * configure.in: check struct stat.st_birthtimespec. + +Thu May 22 19:38:14 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * file.c: remove IO::Statfs because of reject. [Feature #9772] + +Thu May 22 14:02:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * enc/jis/props.kwd: constify character property tables of JIS + based encodings by perfect hash. + + * enc/euc_jp.c, enc/shift_jis.c: use character property functions. + +Wed May 21 12:21:10 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c: Fix compilation error on Android. + Bionic doesn't define TCP state constants. + +Wed May 21 11:42:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: workaround for Info.plist to get rid of `dsymutil` + crash by wrong files in parent directories. + [ruby-core:62594] [Bug #9840] + +Tue May 20 20:57:34 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_dir.rb (test_glob): added testcase of double + slash path. + +Tue May 20 04:58:54 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/extconf.rb: Don't check fields of struct tcp_info if the + structure is not available. + +Mon May 19 23:13:33 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c (inspect_tcp_info): Permit longer data. (glibc + 2.7 adds tcpi_rcv_rtt, tcpi_rcv_space and tcpi_total_retrans to + struct tcp_info.) + +Mon May 19 20:49:07 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c (inspect_tcp_info): New function to inspect + struct tcp_info. + (sockopt_inspect): Use inspect_tcp_info. + + * ext/socket/extconf.rb: Check tcp_info related things. + + * ext/socket/rubysocket.h: Include netinet/tcp_fsm.h if available. + +Mon May 19 19:36:39 2014 Tanaka Akira <akr@fsij.org> + + * test/dbm/test_dbm.rb: Use Etc.uname. + + * test/gdbm/test_gdbm.rb: Ditto. + +Mon May 19 16:54:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/etc/etc.c (etc_uname): add support for Windows using + GetVersionExW(), GetSystemInfo(), and GetComputerNameExW() with + `ComputerNameDnsHostname`. [Feature #9842] + +Mon May 19 16:29:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_pat_search): advance by byte offset but not by char + offset. [ruby-core:62669] [Bug #9849] + +Mon May 19 14:06:18 2014 Shota Fukumori <her@sorah.jp> + + * bin/testrb: Removed. Forgot to remove in r45971. + [Feature #9711] [ruby-core:62620] + +Sun May 18 16:42:08 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_m17n_comb.rb (test_str_crypt): Use Etc.confstr to + detect the glibc version. + libc.so is not an executable on Debian GNU/kFreeBSD 7.0 (wheezy). + +Sun May 18 12:15:54 2014 Jonathan Mukai-Heidt <johnnymukai@gmail.com> + + * io.c (argf_each_line, argf_inplace_mode_set): [DOC] Update ARGF + documentation examples. `ARGF.lines` has been deprecated in + favor of `ARGF.each_line`. [Fixes GH-615] + +Sun May 18 11:59:25 2014 Tanaka Akira <akr@fsij.org> + + * missing/nextafter.c: Include ruby/missing.h. + +Sun May 18 11:09:28 2014 Tanaka Akira <akr@fsij.org> + + * win32/Makefile.sub: Add nextafter.obj to MISSING. + +Sun May 18 10:46:04 2014 Tanaka Akira <akr@fsij.org> + + * ext/etc/etc.c: Etc.sysconf, Etc.confstr and IO#pathconf implemented. + + * ext/etc/extconf.rb: Check sysconf(), confstr() and fpathconf(). + + * ext/etc/mkconstants.rb: New file. + + [ruby-core:62600] [Feature #9842] + +Sun May 18 09:58:17 2014 Tanaka Akira <akr@fsij.org> + + * ext/etc/etc.c: Etc.uname method implemented. + + * ext/etc/extconf.rb: Check uname() function. + + [ruby-core:62139] [Feature #9770] + +Sun May 18 09:16:33 2014 Tanaka Akira <akr@fsij.org> + + * configure.in: Check nextafter() availability. + + * include/ruby/missing.h (nextafter): New optional declaration. + + * missing/nextafter.c: New file. + + * numeric.c: Float#next_float and Float#prev_float implemented. + + [ruby-core:62562] [Feature #9834] + +Sun May 18 09:02:17 2014 Tanaka Akira <akr@fsij.org> + + * enum.c: Enumerable#slice_after implemented. + + * enumerator.c: Enumerator::Lazy#slice_after implemented. + + Requested by Tsuyoshi Sawada. [ruby-core:58123] [Feature #9071] + +Sun May 18 08:22:25 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (io_setstrbuf): always check if the buffer is modifiable. + [ruby-core:62643] [Bug #9847] + +Sun May 18 01:21:23 2014 Tanaka Akira <akr@fsij.org> + + * include/ruby/ruby.h: Hide Rational internal. + (RRational): Moved to internal.h + (RRATIONAL): Ditto. + (RRATIONAL_SET_NUM): Moved to rational.c. + (RRATIONAL_SET_DEN): Ditto. + + * rational.c (rb_rational_num): New function. + (rb_rational_den): Ditto. + + * include/ruby/intern.h (rb_rational_num): Declared. + (rb_rational_den): Ditto. + + * ext/bigdecimal/bigdecimal.c: Follow the above change. + + * ext/date/date_core.c: Ditto. + + [ruby-core:60665] [Feature #9513] + +Sat May 17 17:04:32 2014 Shota Fukumori <her@sorah.jp> + + * NEWS: Add news about removal of lib/test/**/*.rb. + +Sat May 17 16:57:33 2014 Shota Fukumori <her@sorah.jp> + + * lib/test: Removed because ruby's test cases now independent to + lib/test by r45970. [Feature #9711] [ruby-core:62620] + + I'm still considering about the future of lib/minitest, lib/test. + (bundling gems?) + +Sat May 17 15:06:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/runner.rb: remove dependency test-unit and minitest + from stdlib when running with test-all. + [Feature #9711][ruby-core:61890] + * test/testunit/*.rb: ditto. + * test/lib: ditto. + +Sat May 17 11:02:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_helper): try match PLAIN as well as ALPHA, which are + separated by previous commits. [ruby-core:61552] [Bug #9648] + + * dir.c (glob_make_pattern): set PLAIN for non-magical path to + skip parts which not need to glob. + [ruby-core:61552] [Bug #9648] + + * dir.c (has_magic): return ALPHA at alphabetical name regardless + FNM_CASEFOLD flag. + + * dir.c (glob_helper): fix conditions for ALPHA. + [ruby-core:61552] [Bug #9648] + +Sat May 17 01:49:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_helper): reduce matching at non-magical path on + Windows. + +Sat May 17 01:49:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_pattern_type): separate names with alphabet but no + magical from plain. + + * dir.c (glob_helper): match plain names as-is to treat super-root + same as the root. [ruby-core:61552] [Bug #9648] + +Fri May 16 17:38:22 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_marks, gc_marks_body): increase the counter of young objects + at the major GC because AGE2Promotion changes all old objects into + young objects at major GC. + +Fri May 16 17:26:24 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_before_sweep): heap_pages_swept_slots should contains + heap_pages_increment. + + For example, GC by exceeding malloc_limit can remain + heap_pages_increment. + +Thu May 15 21:18:43 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> + + * configure.in: enable SSE2 on mingw. target='i386-pc-mingw32'. + [ruby-core:62095] [Bug #8358] + +Thu May 15 21:04:06 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> + + * lib/test/unit/parallel.rb: fix test-all parallel failure if a test + is skipped after raise. + DL::TestFunc#test_sinf is skipped after raise on mingw ruby. + But it causes Marshal.load failure due to undefined class/module + DL::DLError when doing test-all parallel and test-all doesn't + complete. We create new MiniTest::Skip object to avoid Marshal.load + failure. + [ruby-core:62133] [Bug #9767] + + * test/testunit/test_parallel.rb (TestParallel): add a test. + + * test/testunit/tests_for_parallel/ptest_forth.rb: ditto. + +Thu May 15 18:57:23 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (garbage_collect_body): move gc_heap_prepare_minimum_pages() + from gc_sweep(). + +Thu May 15 18:51:25 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (heap_extend_pages): calculate next growing heap size. + + * gc.c (heap_set_increment): accept addition pages instead of + minimum pages. + + * gc.c (gc_after_sweep): use heap_etend_pages(). + + * gc.c (gc_heap_prepare_minimum_pages): add only 1 page. + + * gc.c (heap_ready_to_gc): add only 1 page. + +Thu May 15 18:42:49 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: introduce macros to remove magic number. + + GC_HEAP_FREE_SLOTS_MIN_RATIO = 0.3: guarantee minimum empty slots + ratio after sweep. + GC_HEAP_FREE_SLOTS_MAX_RATIO = 0.8: allow to free pages 0.2 (= 1-0.8) + of current existing slots. + +Thu May 15 17:32:51 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> + + * thread_win32.c (rb_w32_stack_overflow_handler): use Structured + Exception Handling by AddVectoredExceptionHandler() for machine + stack overflow on mingw. + This would be equivalent to the handling using __try and __except + on mswin introduced by r43748. + +Wed May 14 19:31:03 2014 Koichi Sasada <ko1@atdot.net> + + * ext/openssl/depend: remove dependency from internal headers. + [Feature #9612] + + * ext/openssl/ossl.c (ossl_fips_mode_set): ditto. + + * ext/coverage/depend: ditto. + + * include/ruby/thread_native.h: added. + + This header file only provides wrapper functions to control + native threads. These wrapper functions are used by MRI + implementation. + + * vm_core.h: use include/ruby/thread_native.h. + + * thread.c: ditto. + + * thread_pthread.h: ditto. + + * thread_win32.h: ditto. + + * thread_native.h: removed. + +Wed May 14 18:03:28 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: enable RGENGC_AGE2_PROMOTION. + +Wed May 14 18:02:30 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rgengc_rememberset_mark): promote remembered object earlier. + +Mon May 12 23:57:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (rb_cv_atan2_inf_c99): check whether runtime atan2 + handles Inf as C99. [ruby-core:62536] [Bug #9831] + +Mon May 12 20:33:01 2014 Tanaka Akira <akr@fsij.org> + + * configure.in: Invoke AC_REPLACE_FUNCS for each function. + +Mon May 12 19:52:11 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: count young object correctly and show it in GC.stat + on RGENGC_AGE2_PROMOTION. + + * gc.c (RVALUE_PROMOTE_YOUNG): decrement young object count on + YOUNG->OLD. + + * gc.c (obj_free): decrement young object count when young object + freed. + + * gc.c (gc_marks): should not clear young object count. + + * gc.c (gc_stat_internal): GC.stat :young_object information. + +Mon May 12 01:30:59 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/ifaddr.c (IS_IFADDRS): Unused macro removed. + + * ext/strscan/strscan.c (BUFSIZE): Ditto. + + * ext/zlib/zlib.c (OBJ_IS_FREED): Ditto. + +Sun May 11 22:27:18 2014 Tanaka Akira <akr@fsij.org> + + * compile.c (BUFSIZE): Unused macro removed. + + * vm.c (BUFSIZE): Ditto. + + * pack.c (INT64toNUM): Ditto. + (UINT64toNUM): Ditto. + (BYTEWIDTH): Ditto. + + * time.c (lshift): Ditto. + (UINT64toNUM): Ditto. + (id_lshift): Unused variable removed. + +Sun May 11 21:23:27 2014 Tanaka Akira <akr@fsij.org> + + * pack.c (swaps): Unused macro removed. + (swapi): Ditto. + (swapl): Ditto. + (swapll): Ditto. + +Sun May 11 08:02:49 2014 Eric Wong <e@80x24.org> + + * vm_core.h (rb_vm_t): list_head and counter for living_threads + (rb_thread_t): vmlt_node for living_threads linkage + (rb_vm_living_threads_init): new function wrapper + (rb_vm_living_threads_insert): ditto + (rb_vm_living_threads_remove): ditto + * vm.c (rb_vm_living_threads_foreach): new function wrapper + * thread.c (terminate_i, thread_start_func_2, thread_create_core, + thread_fd_close_i, thread_fd_close): update to use new APIs + * vm.c (vm_mark_each_thread_func, rb_vm_mark, ruby_vm_destruct, + vm_memsize, vm_init2, Init_VM): ditto + * vm_trace.c (clear_trace_func_i, rb_clear_trace_func): ditto + * benchmark/bm_vm_thread_close.rb: added to show improvement + * ccan/build_assert/build_assert.h: added as a dependency of list.h + * ccan/check_type/check_type.h: ditto + * ccan/container_of/container_of.h: ditto + * ccan/licenses/BSD-MIT: ditto + * ccan/licenses/CC0: ditto + * ccan/str/str.h: ditto (stripped of unused macros) + * ccan/list/list.h: ditto + * common.mk: add CCAN_LIST_INCLUDES + [ruby-core:61871][Feature #9632 (part 1)] + +Sun May 11 01:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (rb_f_kill): directly enqueue an ignored signal to self, + except for SIGSEGV and SIGBUS. [ruby-dev:48203] [Bug #9820] + +Sat May 10 22:37:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (push_glob): match in UTF-8 on Mac OS X. + [ruby-dev:48213] [Bug #9825] + +Sat May 10 13:32:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread.c (thread_start_func_2): stop if forked in a sub-thread, + the thread has become the main thread. + [ruby-core:62070] [Bug #9751] + +Sat May 10 09:32:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * man/ruby.1: remove deadlink. [ruby-core:62145][Bug #9773] + +Sat May 10 08:47:36 2014 Tanaka Akira <akr@fsij.org> + + * signal.c (trap): Return "SYSTEM_DEFAULT" if SIG_DFL is set. + +Fri May 9 14:27:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (RUBY_SETJMP_TYPE): check for setjmp type after + CCDLFLAGS is appended to CFLAGS, since __builtin_setjmp can be + affected. [ruby-core:62469] [Bug #9818] + +Fri May 9 03:59:06 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * lib/delegate.rb: Fix example of using delegator. + patched from Andrey Koleshko. [Fixes GH-505] + +Fri May 9 03:42:43 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * lib/shell.rb: add documentation in lib/shell.rb + patched from reprah. [Fixes GH-516] + +Fri May 9 03:28:04 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * lib/fileutils.rb: show fileutils require at top. + patched from Richard Schneeman. [Fixes GH-604] + +Fri May 9 03:07:09 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * lib/prime.rb (Prime#prime?): negative numbers can't be primes + by definition. reported by Ivan Kataitsev. [Bug #7395] + * test/test_prime.rb: add test. + +Thu May 8 14:34:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * class.c (rb_mod_init_copy): always clear instance variable, + constant and method tables first, regardless the source tables. + [ruby-dev:48182] [Bug #9813] + +Thu May 8 10:53:14 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: OpenBSD needs to include sys/param.h before include + sys/mount.h. [ruby-dev:48167] + +Thu May 8 10:17:04 2014 Karsten Sperling <karsten@sperling.co.nz> + + * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): stop + handling requests on shutdown, even if the socket is readable + and IO.select() returns true. [Fixes GH-607] + + * lib/webrick/server.rb (WEBrick::GenericServer#start): IO.select() + raises ENOTSOCK on shutdown on Windows. + +Wed May 7 21:45:00 2014 Tanaka Akira <akr@fsij.org> + + * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#accept): + Consider Socket#accept as well as TCPServer#accept. + Reported by Sam Stelfox. [ruby-core:62064] [Bug #9750] + +Wed May 7 17:24:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * numeric.c (num_step_scan_args): check keyword arguments and fail + if they conflict with positional arguments. + [ruby-dev:48177] [Bug #9811] + +Wed May 7 12:06:14 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/driver.rb: remove debug output and output results into + specified file. + +Wed May 7 11:55:40 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/driver.rb: add '--rawdata-output=[FILE] option to output + raw results into FILE. + +Wed May 7 11:25:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_eval.c (rb_f_local_variables): exclude variables hidden by + shadowing. [ruby-core:60501] [Bug #9486] + + * vm.c (collect_local_variables_in_iseq): ditto. + +Tue May 6 23:29:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (new_bv_gen): no duplicated names, if already added in + shadowing_lvar(). + + * parse.y (local_tbl_gen): remove local variables duplicated with + arguments. + [ruby-core:60501] [Bug #9486] + +Tue May 6 18:48:50 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.make_time): Adjust the time zone of "now". + +Tue May 6 18:33:12 2014 Tadayoshi Funaba <tadf@dotrb.org> + + * io.c (io_{read,write}_nonblock): use rb_get_kwargs instead of + rb_hash_aref. + +Tue May 6 18:03:05 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.make_time): Argument validation code moved from + Time.parse and Time.strptime. + +Tue May 6 17:27:06 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.parse): [DOC] Fix an example in the documentation + to use EST. + Reported by Marcus Stollsteimer. + [ruby-core:60778] [Bug #9521] and [ruby-core:61718] [Bug #9682] + +Tue May 6 04:31:48 2014 Tadayoshi Funaba <tadf@dotrb.org> + + * file.c (rb_f_test): removed meaningless "case 'a'". + +Tue May 6 01:28:14 2014 Tanaka Akira <akr@fsij.org> + + * lib/open-uri.rb (OpenURI.open_uri): Call StringIO#close only if + the StringIO object is not closed yet. + Reported by Jordi Massaguer Pla. [ruby-core:42538] [Bug #6010] + +Tue May 6 01:08:01 2014 Koichi Sasada <ko1@atdot.net> + + * benchmark/driver.rb: define File::NULL if not defined and /dev/null + is available to run benchmark driver on ruby 1.9.2. + +Mon May 5 23:53:24 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/mkconstants.rb: Add IP_TRANSPARENT. + IP_TRANSPARENT is provieded since glibc-2.12. + Reported by Eliezer Croitoru. [ruby-core:50372] [Bug #7476] + +Mon May 5 22:29:47 2014 Tanaka Akira <akr@fsij.org> + + * process.c (check_exec_redirect): Open the file in write mode for + redirect from [:out, :err]. + Proposed and implemented by Yusuke Endoh. + [ruby-dev:41430] [Feature #3348] + +Mon May 5 21:52:35 2014 Tanaka Akira <akr@fsij.org> + + * ext/pathname/lib/pathname.rb (cleanpath_aggressive): make all + separators File::SEPARATOR from File::ALT_SEPARATOR. + Reported by Daniel Rikowski. + Fixed by Nobuyoshi Nakada. [Bug #9618] + + * ext/pathname/lib/pathname.rb (cleanpath_conservative): ditto. + +Mon May 5 21:48:04 2014 Tanaka Akira <akr@fsij.org> + + * ext/pathname/lib/pathname.rb (Pathname#/): Aliased to Pathname#+. + Suggested by Alexey Muranov. [ruby-core:61432] [Feature #9625] + +Mon May 5 17:26:09 2014 Tadayoshi Funaba <tadf@dotrb.org> + + * math.c (rb_math_sqrt): omitted exporting an unused function, + anyway. + * internal.h: follows the above change. + +Mon May 5 11:44:03 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.strptime): Raise ArgumentError if Date._strptime + doesn't extract date information. + Reported by tadayoshi funaba. [ruby-core:62349] + +Mon May 5 01:12:27 2014 Tadayoshi Funaba <tadf@dotrb.org> + + * ext/date/date_core.c (rt_rewrite_frags): a new feature (not a + bug fix) of strptime. applies offset even if the given date is + not local time (%s and %Q). This is an exceptional feature and + I do NOT recommend to use this at all. Thank you git community. + +Sun May 4 20:51:32 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.force_zone!): Use usual local time if it has + expected offset from UTC. + +Sun May 4 17:58:12 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.force_zone!): New private method. + (Time.make_time): Use Time.force_zone!. + (Time.strptime): Ditto. + (Time.rfc2822): Ditto. + (Time.xmlschema): Ditto. + + * lib/rss/rss.rb (Time.w3cdtf): Use Time.force_zone!. + +Sun May 4 10:22:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * math.c (math_atan2): return values like as expected by C99 if + both two arguments are infinity. based on the patch by cremno + phobia <cremno AT mail.ru> in [ruby-core:62310]. [Feature #9799] + +Sun May 4 03:46:42 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.httpdate): Always return a UTC Time object. + +Sun May 4 03:26:39 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.make_time): Refactored. + +Sun May 4 02:53:17 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.rfc2822): Fix year completion. + Produce fixed-offset time object if appropriate. + (Time.xmlschema): Produce fixed-offset time object if appropriate. + +Sat May 3 23:52:20 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (make_time): Produce fixed-offset time object if + appropriate. + (Time.strptime): Use d[:zone] instead of d[:offset]. + + * lib/rss/rss.rb (Time.w3cdtf): Produce fixed-offset time object if + appropriate. + +Sat May 3 20:21:38 2014 Tanaka Akira <akr@fsij.org> + + * lib/time.rb (Time.strptime): Use d[:offset] if d[:seconds] is not + given. + Reported by tadayoshi funaba. [ruby-core:62322] + +Sat May 3 04:04:16 2014 Eric Wong <e@80x24.org> + + * complex.c (parse_comp): replace ALLOCA_N with ALLOCV_N/ALLOCV_END + [Bug #9608] + * rational.c (read_digits): ditto + +Sat May 3 00:06:30 2014 Naohisa Goto <ngotogenome@gmail.com> + + * file.c (HAVE_STRUCT_STATVFS_F_BASETYPE): File::Statfs#fstypename + is supported on AIX, HP-UX, and Solaris, by using the value of + struct statvfs.f_basetype. + + * configure.in (HAVE_STRUCT_STATVFS_F_BASETYPE): check struct + statvfs.f_basetype which is available on AIX, HP-UX, and Solaris. + +Fri May 2 21:04:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (next_id): no reason to set ID_STATIC_SYM here, as ID + returned by rb_intern3 can be a dynamic symbol and the static + symbol flag is set otherwise. [Bug #9787] + +Fri May 2 11:32:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/ruby/test_io.rb (test_seek, test_seek_symwhence): defer + File::Statfs#type call which may not be implemented, to mitigate + errors on platforms where SEEK_DATA is available but f_type in + struct statfs is not. [ruby-dev:48154] [Bug #9789] + +Fri May 2 10:37:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (rb_id_attrset): turn dynamically interned Symbol into + an ID, since rb_str_dynamic_intern returns a Symbol but not an + ID. [ruby-core:62226] [Bug #9787] + +Thu May 1 22:19:34 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * file.c: Change AND condition to nested condition. + +Thu May 1 00:36:26 2014 Naohisa Goto <ngotogenome@gmail.com> + + * file.c (FSTATFS): check availability of struct statfs and + struct statvfs in addition to fstatfs(2) and fstatvfs(2). + This fixes error in Solaris. [Bug #9788] [ruby-dev:48145] + +Wed Apr 30 19:46:23 2014 Narihiro Nakamura <authornari@gmail.com> + + * gc.c (gc_after_sweep): suppress unnecessary expanding heap. + Tomb heap pages are freed pages here, so expanding heap is + not required. + +Wed Apr 30 17:58:40 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record + it is bmethod frame. + + * vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame + is VM_FRAME_FLAG_BMETHOD. + [Bug #9759] + + * test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func. + + * vm_core.h: rename rb_thread_t::passed_me to + rb_thread_t::passed_bmethod_me to clarify the usage. + + * vm_insnhelper.c (vm_call_bmethod_body): use renamed member. + +Wed Apr 30 17:06:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (rb_id_attrset): pin down dynamic symbol only. it is + possible that attrset ID can be registered as a static symbol + after the corresponding attrget ID has been registered as a + dynamic, and then the latter may be collected. + [ruby-core:62226] [Bug #9787] + +Tue Apr 29 14:17:57 2014 Tanaka Akira <akr@fsij.org> + + * lib/tmpdir.rb: Rescue LoadError on etc.so for miniruby. + Revert r45707, r45711, r45717. + +Tue Apr 29 12:50:02 2014 Tanaka Akira <akr@fsij.org> + + * lib/fileutils.rb: Don't need to define fu_get_gid and fu_get_gid in + rescue LoadError on 'etc'. + +Tue Apr 29 10:21:38 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * parse.y (symbols_i): like r45492, call rb_gc_resurrect(). + +Tue Apr 29 04:29:05 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * file.c (HAVE_STRUCT_STATFS_T_F_FSTYPENAME): Add new macro for + statfs_t. + * file.c (HAVE_STRUCT_STATFS_T_F_TYPE): ditto. + + * file.c (rb_io_statfs): check FSTATFS macro only instead of + HAVE_FSTATFS and HAVE_FSTATVFS. + + * file.c (statfs_type): use new macro. + * file.c (statfs_fstypename): ditto. + * file.c (statfs_inspect): ditto. + +Tue Apr 29 00:20:26 2014 Rajarshi Das <rajarshid@cybage.com> + + * bootstraptest/test_literal.rb: fix typo of "dynamic". [ci skip] + + * regexp.rdoc: fix typo of "organized". [ci skip] + + * lib/session.rb: fix typo of "recognized". [ci skip] + +Mon Apr 28 21:40:27 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in (HAVE_STRUCT_STATFS_F_TYPE): check struct statfs.f_type + to support OpenBSD. + + * file.c (statfs_type): use above macro to switch. + + * file.c (statfs_inspect): ditto. + +Mon Apr 28 18:06:08 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: check struct statvfs and struct statvfs.f_fstypename. + + * configure.in: on NetBSD fstatfs is obsoleted. + + * file.c: support NetBSD for File::Statfs. + +Mon Apr 28 17:42:42 2014 Narihiro Nakamura <authornari@gmail.com> + + * gc.c: This argument must be a pointer. + +Mon Apr 28 17:40:15 2014 Narihiro Nakamura <authornari@gmail.com> + + * gc.c: Fix typos. These are undefined variables. + +Sun Apr 27 19:39:42 2014 Tadayoshi Funaba <tadf@dotrb.org> + + * ext/date/date_strptime.c (date__strptime_internal): do not + overwrite century. + +Sat Apr 26 11:50:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/ruby/test_enum.rb (test_flat_map): Added test for flat_map. + Contribute from @igaiga. [fix GH-598] + +Sat Apr 26 10:55:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (compile_array_): make copy a first hash not to modify + the argument itself. keyword splat should be non-destructive. + [ruby-core:62161] [Bug #9776] + +Sat Apr 26 08:05:36 2014 Tanaka Akira <akr@fsij.org> + + * test/ruby/test_process.rb (test_rlimit_nofile): Don't limit + RLIMIT_NOFILE too small. + This fix sporadic "[ASYNC BUG] thread_timer: select" on GNU/Linux. + +Fri Apr 25 22:54:34 2014 Naohisa Goto <ngotogenome@gmail.com> + + * lib/fileutils.rb (rmdir): rescue Errno::EEXIST in addition to + ENOTEMPTY (and ENOENT), because SUSv3 describes that "If the + directory is not an empty directory, rmdir() shall fail and set + errno to [EEXIST] or [ENOTEMPTY]" and Solaris uses EEXIST. + [Bug #9571] [ruby-dev:48017] + +Fri Apr 25 19:16:30 2014 Tanaka Akira <akr@fsij.org> + + * lib/webrick/utils.rb: Don't rescue LoadError for 'etc' extension. + +Fri Apr 25 14:55:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (rb_cv_func___builtin_unreachable): try with an + external variable not only by a warning, which might not be + shown due to the optimization. [ruby-core:61647] [Bug #9665] + +Fri Apr 25 13:11:49 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: NetBSD's ksh, used by configure, needs escapes. + +Fri Apr 25 12:51:08 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: correct pthread_setname_np's prototype on NetBSD. + [Bug #9586] + +Thu Apr 24 23:17:25 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/fileutils.rb (fu_get_uid, fu_get_gid): Etc.getpwnam/getgrnam may + returns nil. + + * lib/webrick/utils.rb (su): ditto. + +Thu Apr 24 22:55:22 2014 Tanaka Akira <akr@fsij.org> + + * bootstraptest/test_io.rb: Add etc.so to $" before require 'tmpdir'. + +Thu Apr 24 21:09:55 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * man/ruby.1: fix broken link. + +Thu Apr 24 20:53:02 2014 Tanaka Akira <akr@fsij.org> + + * lib/tmpdir.rb: Don't need to rescue LoadError for etc.so. + +Thu Apr 24 17:39:53 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * file.c (statfs_inspect): suppress warnings. + assume those values won't be larger than LONG_LONG_MAX. + +Thu Apr 24 11:53:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/openssl/ossl_asn1.c (ossl_asn1_initialize): SYMID on a value + other than Symbol is an undefined behavior. fix up r31699. + [ruby-core:62142] [Bug #9771] + +Thu Apr 24 11:21:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (rb_sym2id, rb_sym2id_without_pindown): return 0 for + non-symbol values, for the time being. + +Thu Apr 24 05:50:13 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * parse.y (dsym_node_gen): like r45492, call rb_gc_resurrect(). + +Wed Apr 23 20:36:22 2014 Tanaka Akira <akr@fsij.org> + + * ext/etc/extconf.rb: Build ext/etc unconditionally. + +Wed Apr 23 14:10:50 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * file.c (statfs_fsid): remove statfs.f_fsid because it doesn't return + meaningful value portably. http://togetter.com/li/658517 + +Wed Apr 23 11:03:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/stringio/stringio.c (strio_write): use rb_str_append to + reuse coderange bits other than ASCII-8BIT, and keep + taintedness. [ruby-dev:48118] [Bug #9769] + +Wed Apr 23 00:43:00 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c, include/ruby/win32.h (ustatfs): implementation of + statfs(2) clone. [EXPERIMENTAL] + + * file.c (rb_io_statfs): use above function. + + * configure.in, win32/Makefile.sub (struct statfs): available. + +Tue Apr 22 23:56:24 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * file.c (rb_io_stafs): use statfs(2) if fstatfs(2) is unavailable. + + * configure.in (fstatfs): check it. + +Tue Apr 22 22:15:51 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * file.c (rb_io_statfs): need to define even if the system doesn't have + fstatfs(2). + + * test/ruby/test_file.rb (TestFile#test_statfs): skip if IO#stafs is not + implemented. + +Tue Apr 22 19:32:48 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * file.c: newly added a class File::Statfs. (experimental) + +Tue Apr 22 08:22:33 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (objspace_malloc_increase): don't cause GC by malloc_increase + when memop type is MEMOP_TYPE_REALLOC. + + GC at realloc is not well maintained. + We need a time to make it safe. + [ruby-dev:48117] + +Tue Apr 22 06:54:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * gc.c (objspace_malloc_increase): run full mark if 0x04 bit is + set in ruby_gc_stress. [ruby-core:62103] [Feature #9761] + + * gc.c (objspace_malloc_increase): run GC after realloc not only + malloc and calloc by GC.stress. [ruby-core:62103] [Feature #9761] + +Mon Apr 21 19:12:20 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (rb_str_coderange_scan_restartable): coderange is always + ENC_CODERANGE_VALID if the string is ASCII-8BIT and already has a non + ASCII character. + +Mon Apr 21 19:02:44 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (coderange_scan): remove useless condition `p < e` after + search_nonascii. + + * string.c (rb_str_coderange_scan_restartable): ditto. + +Mon Apr 21 18:55:21 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * ext/-test-/string/coderange.c: add Bug::String.new#coderange_scan + to explicitly scan coderange. + +Mon Apr 21 18:19:35 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (coderange_scan): remove unused logic. + + * string.c (rb_str_coderange_scan_restartable): ditto. + +Mon Apr 21 14:11:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/stringio/stringio.c (strio_putc): fix for non-ascii + encoding, like as IO#putc. [ruby-dev:48114] [Bug #9765] + +Sun Apr 20 12:57:15 2014 Masaya Tarui <tarui@ruby-lang.org> + + * st.c (st_foreach_check): change start point of search at check + from top to current. [ruby-dev:48047] [Bug #9646] + +Sun Apr 20 08:41:33 2014 Andrew DeMaria <ademariad@gmail.com> + + * lib/mkmf.rb (link_command, libpathflag, create_makefile): prefer + user specified `$LIBPATH` than `$DEFLIBPATH`. [ruby-core:62100] + [ruby-trunk - Bug #9760] + +Sun Apr 20 06:01:18 2014 Eric Wong <e@80x24.org> + + * gc.c (rb_gc_writebarrier): drop special case for big hash/array + [Bug #9518] + +Sat Apr 19 15:38:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (primary): flush cmdarg flags inside left-paren in a + command argument, to allow parenthesed do-block as an argument + without arguments parentheses. [ruby-core:61950] [Bug #9726] + +Sat Apr 19 10:07:24 2014 Tanaka Akira <akr@fsij.org> + + * internal.h (struct RBignum): Use size_t for len. + + * include/ruby/intern.h (rb_big_new): Use size_t instead of long to + specify the size of bignum. + (rb_big_resize): Ditto. + + * bignum.c: Follow above changes. + + * rational.c: Follow above changes. + + * marshal.c: Follow above changes. + +Sat Apr 19 00:32:07 2014 Tanaka Akira <akr@fsij.org> + + * numeric.c (rb_num2long): Returns a long. + (rb_num2ulong): Returns a unsigned long. + + * bignum.c (rb_big2long): Returns a long. + (rb_big2ulong): Returns a unsigned long. + + * include/ruby/intern.h: Follow above changes. + + * include/ruby/ruby.h: Follow above changes. + (rb_num2long_inline): No need to cast. + (rb_num2ulong_inline): Ditto. + +Sat Apr 19 00:17:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (SHARABLE_SUBSTRING_P): predicate if substring can be + shared with the original string. true if just at the end of the + original string, for the time being. all substring will be able to + be shared in the future. + +Fri Apr 18 21:48:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_new_frozen): consider the shared string at + middle. + + * string.c (rb_str_subseq, rb_str_substr, str_byte_substr): share + middle of a string. + +Fri Apr 18 15:40:05 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c: use uintptr_t instead of VALUE because they are not ruby + object. + +Fri Apr 18 14:51:42 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c: check str_strlen's argument, and add comment or + use NULL if simply it uses str's enc. + +Fri Apr 18 14:32:40 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (str_strlen): use enc_strlen if the coderange is known. + +Fri Apr 18 14:21:21 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (enc_strlen): move UTF-8 optimization from str_strlen to + enc_strlen. + +Fri Apr 18 08:50:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (rb_cv_getcwd_malloc): check if getcwd allocates + buffer if NULL is given [ruby-core:62072] [Bug #9752] + +Thu Apr 17 16:28:10 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * prelude.rb: [DOC] Update Thread::exclusive docs by @stevenharman. + +Thu Apr 17 10:03:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/fileutils.rb (FileUtils#copy_entry): update rdoc about + preserve option and permissions, following r31123. + [ruby-core:62065] [Bug #9748] + +Wed Apr 16 23:47:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * enum.c (dont_recycle_block_arg): fix condition to recycle block + argument. lambda with rest can get internal array directly. + [ruby-core:62060] [Bug #9749] + +Wed Apr 16 09:51:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/openssl/ossl_pkey.c (ossl_pkey_verify): as EVP_VerifyFinal() + finalizes only a copy of the digest context, the context must be + cleaned up after initialization by EVP_MD_CTX_cleanup() or a + memory leak will occur. [ruby-core:62038] [Bug #9743] + +Tue Apr 15 19:36:42 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * include/ruby/win32.h (rb_w32_cmdvector): removed. + + * win32/win32.c (rb_w32_sysinit): use WCHAR version of GetCommandLine() + internally. + + * win32/win32.c (w32_cmdvector): renamed from rb_w32_cmdvector. use + WCHAR* instead of char* internally. + + these changes are expected to not changing the behavior yet. + +Tue Apr 15 19:26:05 2014 Tanaka Akira <akr@fsij.org> + + * ext/extmk.rb: Re-generate extmk.mk and dummy makefiles only if + really required. + This fixes a problem to run multiple test-all concurrently as: + make test-all & make test-all & make test-all & ... + +Tue Apr 15 12:49:53 2014 Sam Rawlins <sam.rawlins@gmail.com> + + * enum.c (enum_each_slice, enum_each_cons): make more efficient by + allocating less and recycling block argument arrays if possible. + [Fixes GH-596] + +Mon Apr 14 18:44:45 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): get base addrs in fill_lines to use it + with dladdr_fbases introduced at r45563. + it didn't get before if the executable is not pie. + +Mon Apr 14 18:05:48 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (main_exe_path): support FreeBSD. + At least sh, csh, tcsh, bash, and zsh sets realpath of the main + executable for dladdr, but gdb doesn't. + +Mon Apr 14 17:20:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (umethod_bind): use the ancestor iclass instead of new + iclass to get rid of infinite recursion, if the defined module + is already included. [ruby-core:62014] [Bug #9721] + +Sun Apr 13 12:46:58 2014 Tanaka Akira <akr@fsij.org> + + * bignum.c (SIZEOF_BDIGIT): Renamed from SIZEOF_BDIGITS. + + * internal.h: Ditto. + + * marshal.c: Ditto. + + * rational.c: Ditto. + +Sun Apr 13 10:18:09 2014 Tanaka Akira <akr@fsij.org> + + * common.mk: Unused target, $(MKMAIN_CMD), removed. + + * Makefile.in (MKMAIN_CMD): Unused macro removed. + + * win32/Makefile.sub (MKMAIN_CMD): Ditto. + +Sat Apr 12 22:11:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (sym_to_proc), proc.c (rb_block_clear_env_self): clear + caller's self which is useless, so that it can get collected. + [Fixes GH-592] + +Sat Apr 12 09:26:48 2014 Eric Hodel <drbrain@segment7.net> + + * ext/openssl/ossl_ocsp.c: [DOC] Document OpenSSL::OCSP. + +Fri Apr 11 18:52:38 2014 Koichi Sasada <ko1@atdot.net> + + * array.c (ARY_SET): added. + + ARY_SET() is same functionality of RARRAY_ASET(), but + it has an assertion (`ary' doesn't have shared array). + +Fri Apr 11 16:54:26 2014 Koichi Sasada <ko1@atdot.net> + + * array.c: make shared arrays WB-protected objects. + + Shared arrays were WB-unprotected object because + sharing array can modify shared array's buffer + if it occupied shared array. + + [sharing array (ary)] -> [shared array (shared)] -> <buff> + | A + +---------------------------------------+ + write `buff' with WB(ary, &buff[i], obj) + -> if `ary' and `shared' are old, then only `ary' + will be remembered. + -> traverse from `ary'. But `shared' is old, so + that written `obj' is not marked. + + It cause WB miss so that shared arrays were WB-unprotected. + (WB-unprotected objects are marked everytime if it is living) + + This patch insert WB() for `shared' if it is needed. + +Fri Apr 11 15:05:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (rb_method_call_with_block, umethod_bind): call with + IClass including the module for a module instance method. + [ruby-core:61936] [Bug #9721] + + * vm_insnhelper.c (vm_search_super_method): allow bound + UnboundMethod case. + +Fri Apr 11 12:02:30 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (rb_dump_backtrace_with_lines): set base address + which is retrieved from dladdr to dladdr_fbases, to skip already + parsed objects. + +Fri Apr 11 12:44:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * array.c (ary_reject): may be turned into a shared array during + the given block. [ruby-dev:48101] [Bug #9727] + +Thu Apr 10 23:41:21 2014 Akinori MUSHA <knu@iDaemons.org> + + * lib/net/ftp.rb (Net::FTP#login): [DOC] The default password for + anonymous login was changed to "anonymous@" in r25313. + +Thu Apr 10 19:22:58 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_array.rb: remove useless `assert'. + +Thu Apr 10 19:11:11 2014 Koichi Sasada <ko1@atdot.net> + + * array.c (rb_ary_modify): remember shared array owner if a shared + array owner is promoted and a shared array is not promoted. + + Now, shared array is WB-unprotected so that shared arrays are not + promoted. All objects referred from shared array should be marked + correctly. + + [ruby-core:61919] [ruby-trunk - Bug #9718] + + * test/ruby/test_array.rb: add a test for above. + +Thu Apr 10 18:57:12 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_verify_internal_consistency): move lines and enable + allrefs_dump() on RGENGC_CHECK_MODE >= 4. + +Thu Apr 10 15:01:06 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (append_obj): clear allocated memory. + + * addr2line.c (rb_dump_backtrace_with_lines): free `base_addrs'. + +Thu Apr 10 14:40:18 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (rb_gc_writebarrier_unprotect_promoted): disable to dump debug + message when RGENGC_CHECK_MODE == 0. + +Thu Apr 10 08:13:47 2014 Tanaka Akira <akr@fsij.org> + + * signal.c (check_stack_overflow): Don't use ucontext_t if ucontext.h + is not available. + Fixes build on Android (x86). + +Wed Apr 9 23:22:44 2014 Tanaka Akira <akr@fsij.org> + + * gc.c (mark_current_machine_context): Call SET_STACK_END. + This reverts a hunk of r40703 by ko1. + This fixes [ruby-dev:48098] [Bug #9717]. + +Wed Apr 9 21:02:04 2014 Tanaka Akira <akr@fsij.org> + + * process.c (OBJ2UID1): Defined even if getpwnam_r is not usable. + (OBJ2GID1): Defined even if getgrnam_r is not usable. + This fixes compilation error on Android. + +Wed Apr 9 15:16:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * encoding.c (rb_enc_default_internal): fix rdoc. `__FILE__` is + in filesystem encoding but not `default_internal`. + [ruby-core:61894] [Bug #9713] + +Wed Apr 9 14:43:00 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_gc.rb: more long timeout. + This test failed under RGENGC_CHECK_MODE >= 2. + +Wed Apr 9 13:07:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: get rid of __builtin_setjmp/__builtin_longjmp on + x64-mingw, which causes SEGV with callcc. + [ruby-core:61887] [Bug #9710] + +Wed Apr 9 12:44:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (str_buf_cat): should round up the capacity by 4KiB, + but not number of rooms. [ruby-core:61886] [Bug #9709] + +Tue Apr 8 22:55:32 2014 Akinori MUSHA <knu@iDaemons.org> + + * lib/mkmf.rb (MakeMakefile#dir_config): [DOC] Improve + documentation. + +Tue Apr 8 22:31:44 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: rename `RGENGC_THREEGEN' to `RGENGC_AGE2_PROMOTION'. + + * gc.c (rgengc_rememberset_mark): don't promote, but remain in + remember set for infant objects. + + * gc.c (RVALUE_PROMOTE_INFANT, RVALUE_PROMOTE_YOUNG): count numbers + in these functions. + +Mon Apr 7 21:11:49 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/socket.c (sock_s_getnameinfo): Save errno for EAI_SYSTEM. + Reported by Saravana kumar. [ruby-core:61820] [Bug #9697] + Fixed by Heesob Park. [ruby-core:61868] + +Mon Apr 7 07:20:23 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * lib/xmlrpc/client.rb (do_rpc): don't check body length. + If HTTP content-encoding is used, the length may be different. + [Bug #8182] [ruby-core:53811] + +Mon Apr 7 02:39:48 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * lib/matrix.rb: Add Matrix#cofactor [fix GH-568] + Add first_minor [fix GH-568] + Handle empty diagonal matrix case [fix GH-576] + Patches by gogotanaka + +Sun Apr 6 08:52:50 2014 Bugra Barin <bugrabarin@hotmail.com> + + * dln.c (dln_load): use wchar version to load a library in + non-ascii path on Windows. based on the patch by Bugra Barin + <bugrabarin AT hotmail.com> in [ruby-core:61845]. [Bug #9699] + +Sat Apr 5 19:36:33 2014 Tadayoshi Funaba <tadf@dotrb.org> + + * ext/date/date_core.c (d_lite_cmp): should compare with #<. + +Sat Apr 5 00:31:21 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/readline/extconf.rb (rl_hook_func_t): check pointer type. + [ruby-dev:48089] [Bug #9702] + +Fri Apr 4 07:13:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (ac_cv_func___builtin_setjmp): should not skip + flags restoration in RUBY_WERROR_FLAG by `break`. + [ruby-dev:48086] [Bug #9698] + +Wed Apr 2 21:50:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (ac_cv_func___builtin_setjmp): __builtin_longjmp() + in Apple LLVM 5.1 (LLVM 3.4svn) uses `void**`, not `jmp_buf`. + [Bug #9692] + +Wed Apr 2 20:57:15 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c, gc.h (rb_objspace_each_objects_without_setup): + Add a new (hidden) C-API to iterate objspace snapshot. + + This API is not safe to call any C-APIs in a given callback + function. Be careful to use this C-API. + +Wed Apr 2 17:43:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (ac_cv_func___builtin_setjmp): gcc 4.9 disallows a + variable as the second argument of __builtin_longjmp(). + [ruby-core:61800] [Bug #9692] + +Wed Apr 2 15:12:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * common.mk: Use redmine-2.x url for DeveloperHowto wiki. + [ruby-core:60657] [Bug #9511] + +Wed Apr 2 11:46:29 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * ext/pathname/lib/pathname.rb (Pathname#join): Fix error with + empty args. Reported by ko1 via IRC. + + * test/pathname/test_pathname.rb (TestPathname#test_join): Add the + test for above case. + +Tue Apr 1 11:39:57 2014 James Edward Gray II <james@graysoftinc.com> + + * lib/csv.rb: Symbol HeaderConverter: strip leading/trailing space. + Reported by Skye Shaw + [Fixes GH-575] + +Tue Apr 1 11:34:04 2014 James Edward Gray II <james@graysoftinc.com> + + * lib/csv.rb: Don't attempt to convert nil headers. + Reported by Skye Shaw + +Tue Apr 1 17:29:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * tool/config_files.rb (ConfigFiles.download): show failed URI. + [ruby-core:61792] [Bug #9690] + +Tue Apr 1 12:06:49 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (rb_dump_backtrace_with_lines): don't depend hard coded + symbol '_start'. + + * addr2line.c (fill_lines): instead of above, get a dynamic symbol + in the main executable and use it to know the base address. + + * addr2line.c (follow_debuglink0): use obj_info_t instead of + line_info_t to handle object related data. + + * addr2line.c (main_exe_path): defined for Linux. + +Tue Apr 1 08:58:39 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * parse.y (rb_str_dynamic_intern): set mark bit if dynamic symbol + is before sweeping. + +Tue Apr 1 07:37:00 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): use dynsym, which is used for dynamic + linking and always exists, if there's no symtab. + +Tue Apr 1 07:27:15 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * vm_dump.c (rb_print_backtrace): current implementation + uses dladdr to get the path of objects. + +Mon Mar 31 23:57:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/readline/extconf.rb: fix typo, `$defs` not `$DEFS`. + [ruby-core:61756] [Bug #9578] + +Mon Mar 31 17:23:50 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/ruby/memory_status.rb: require envutil before accessing EnvUtil + module. reported by ko1 via twitter. + +Mon Mar 31 10:28:01 2014 Eric Wong <e@80x24.org> + + * st.c (st_init_table_with_size): update comment + [Feature #9425] + +Sun Mar 30 23:39:26 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (rb_w32_accept, open_ifs_socket, socketpair_internal): + reset inherit flag of socket to avoid unintentional inheritance of + socket. note that the return value of SetHandleInformation() is not + verified intentionally because old Windows may return an error. + [Bug #9688] [ruby-core:61754] + +Sat Mar 29 13:04:22 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_before_sweep): cap `malloc_limit' to + gc_params.malloc_limit_max. It can grow and grow with such case: + `loop{"a" * (1024 ** 2)}' + [Bug #9687] + + This issue is pointed by Tim Robertson. + http://www.omniref.com/blog/blog/2014/03/27/ruby-garbage-collection-still-not-ready-for-production/ + +Fri Mar 28 19:32:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * struct.c (not_a_member): extract name error and use same error + messages. based on the patch by Marcus Stollsteimer <sto.mar AT + web.de> at [ruby-core:61721]. [Bug #9684] + +Fri Mar 28 09:21:54 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/psych/psych.gemspec: update gemspec for psych-2.0.5 + +Fri Mar 28 09:11:06 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * ext/psych/lib/psych.rb: Merge psych-2.0.5. bump version to + libyaml-0.1.6 for CVE-2014-2525. + * ext/psych/yaml/config.h: ditto. + * ext/psych/yaml/scanner.c: ditto. + * ext/psych/yaml/yaml_private.h: ditto. + +Thu Mar 27 18:58:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * re.c (match_regexp): set regexp for MatchData from string. + + * re.c (rb_backref_set_string): create MatchData from string and + set backref. + + * string.c (rb_pat_search, rb_str_sub, rb_str_sub_bang, str_gsub), + (scan_once, rb_str_scan, rb_str_partition): use rb_str_index + instead of rb_reg_search() when pattern is a String. based on + the patch by Sam Rawlins <sam.rawlins@gmail.com> [Fixes GH-579] + +Thu Mar 27 11:58:55 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): check shdr[i].sh_type because even if + .symtab section exists, the section's type can be SHT_NOBITS and + actual data doesn't exist in the file. + revert r45441. + +Wed Mar 26 14:57:35 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * parse.y: inline must be static (for mswin). + fixed build error introduced at r45426. + +Wed Mar 26 14:33:00 2014 Narihiro Nakamura <authornari@gmail.com> + + * internal.h (USE_SYMBOL_GC): enable Symbol GC by default (USE_SYMBOL_GC == 1). + +Tue Mar 25 22:57:11 2014 Narihiro Nakamura <authornari@gmail.com> + + * parse.y: support Symbol GC. [ruby-trunk Feature #9634] + See this ticket about Symbol GC. + + * include/ruby/ruby.h: + Declare few functions. + * rb_sym2id: almost same as old SYM2ID but support dynamic symbols. + * rb_id2sym: almost same as old ID2SYM but support dynamic symbols. + * rb_sym2str: almost same as `rb_id2str(SYM2ID(sym))` but not + pin down a dynamic symbol. + Declare a new struct. + * struct RSymbol: represents a dynamic symbol as object in + Ruby's heaps. + Add few macros. + * STATIC_SYM_P: check a static symbol. + * DYNAMIC_SYM_P: check a dynamic symbol. + * RSYMBOL: cast to RSymbol + + * gc.c: declare RSymbol. support T_SYMBOL. + + * internal.h: Declare few functions. + * rb_gc_free_dsymbol: free up a dynamic symbol. GC call this + function at a sweep phase. + * rb_str_dynamic_intern: convert a string to a dynamic symbol. + * rb_check_id_without_pindown: not pinning function. + * rb_sym2id_without_pindown: ditto. + * rb_check_id_cstr_without_pindown: ditto. + + * string.c (Init_String): String#intern and String#to_sym use + rb_str_dynamic_intern. + + * template/id.h.tmpl: use LSB of ID as a flag for determining a + static symbol, so we shift left other ruby_id_types. + + * string.c: use rb_sym2str instead `rb_id2str(SYM2ID(sym))` to + avoid pinning. + + * load.c: use xx_without_pindown function at creating temporary ID + to avoid pinning. + + * object.c: ditto. + + * sprintf.c: ditto. + + * struct.c: ditto. + + * thread.c: ditto. + + * variable.c: ditto. + + * vm_method.c: ditto. + +Wed Mar 26 13:25:54 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): loop reverse order not to overwrite + the basis of base addresses comparison. + + * addr2line.c: use uintptr_t instead of intptr_t for pointers. + + * addr2line.c (rb_dump_backtrace_with_lines): don't use syms. + + * vm_dump.c (rb_print_backtrace): ditto. + + * addr2line.h: ditto. + +Wed Mar 26 11:20:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * marshal.c (w_object): internal objects are not dumpable. + [ruby-core:61677] [Bug #9674] + + * ext/thread/thread.c (undumpable): ConditionVariable and Queue + are not dumpable. [ruby-core:61677] [Bug #9674] + +Wed Mar 26 10:36:39 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (follow_debuglink): show message if it closes opened + (and maybe used) elf binary. + +Wed Mar 26 10:34:25 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_line): pass and use offset instead of + curobj_baseaddr. + +Wed Mar 26 09:07:48 2014 Yutaka Kanemoto <kanemoto@ruby-lang.org> + + * configure.in: add --disable-pie. [Feature #9673] + +Wed Mar 26 08:47:04 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): don't run fill_lines multiple times. + +Wed Mar 26 08:45:00 2014 Sam Rawlins <sam.rawlins@gmail.com> + + * internal.h: add prototype for rb_reg_search0 + + * re.c: rename rb_reg_search to rb_reg_search0, add set_backref_str + argument to allow callers to indicate that they don't require the + backref string to be allocated. + + * string.c: don't allocate backref str if replacement string is provided + + [GH-578] [Bug #9676] [ruby-core:61682] + +Wed Mar 26 08:29:43 2014 mo khan <mo@mokhan.ca> + + * lib/rubygems.rb: fix spelling of Jim Weirich. [Fixes GH-577] + +Wed Mar 26 01:55:45 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (rb_dump_backtrace_with_lines): a function to get must + be a function in the main executable, whose absolute path is not + available by dladdr, and ruby get it by /proc/self/exe on Linux. + +Wed Mar 26 01:34:50 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): skip if path is NULL. + +Tue Mar 25 23:57:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_yylex): only a newline after label should be + significant. [ruby-core:61658] [Bug #9669] + +Tue Mar 25 23:32:25 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * ext/pathname/lib/pathname.rb (Pathname#join): remove unnecessary + unshift. + + * test/pathname/test_pathname.rb (TestPathname#test_join): add tests. + +Tue Mar 25 16:47:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (lex_state_e, parser_params, f_arglist, parser_yylex): + separate EXPR_LABELARG from EXPR_BEG and let newline significant, + so that required keyword argument can place at the end of + argument list without parentheses. [ruby-core:61658] [Bug #9669] + +Mon Mar 24 22:19:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (ripper_initialize): filename can not be modified. + +Mon Mar 24 15:19:47 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (rb_dump_backtrace_with_lines): fetch path of the + executable from /proc/self/exe on Linux. + +Mon Mar 24 14:14:37 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * gc.c: Fix up default GC params by @csfrancis [fix GH-556] + +Mon Mar 24 13:13:36 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (parse_debug_line_cu): explicitly specify signed char + because DWARF's line_Base is signed char and char maybe unsigned. + patched by Rei Odaira. [ruby-dev:48068] [Bug #9654] + +Sun Mar 23 11:03:50 2014 Kohei Suzuki <eagletmt@gmail.com> + + * vm_method.c (rb_method_entry_get_without_cache): me->klass is 0 + for a method aliased in a module. [ruby-core:61636] [Bug #9663] + +Sun Mar 23 08:12:27 2014 Eric Wong <e@80x24.org> + + * st.c (hash_pos): use bitwise AND to avoid slow modulo op + (new_size): power-of-two sizes for hash_pos change + (st_numhash): adjust for common keys due to lack of prime modulo + [Feature #9425] + * hash.c (rb_any_hash): right shift for symbols + * benchmark/bm_hash_aref_miss.rb: added to show improvement + * benchmark/bm_hash_aref_sym_long.rb: ditto + * benchmark/bm_hash_aref_str.rb: ditto + * benchmark/bm_hash_aref_sym.rb: ditto + * benchmark/bm_hash_ident_num.rb: added to prevent regression + * benchmark/bm_hash_ident_obj.rb: ditto + * benchmark/bm_hash_ident_str.rb: ditto + * benchmark/bm_hash_ident_sym.rb: ditto + +Sat Mar 22 22:56:45 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): compare the file names of object in which + symbols exist. [Bug #9654] [ruby-dev:48058] + +Sat Mar 22 06:46:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/cgi/util.rb (escape_html, unescape_html): make synonyms + aliases instead of wrapper methods. + + * lib/cgi/util.rb (escape_element, unescape_element): ditto. + [Fixes GH-573] + +Fri Mar 21 21:57:34 2014 Akinori MUSHA <knu@iDaemons.org> + + * configure.in: Fix a build problem with clang and --with-opt-dir. + If ruby is configured with --with-opt-dir=dir when using clang + as compiler, a warning `clang: warning: argument unused during + compilation: '-I dir'` is emitted almost every time clang + compiles a file. Unfortunately, RUBY_CHECK_PRINTF_PREFIX takes + any output from the compiler as fatal error, and the check thus + fails due to the warning. This is an attempt to fix the problem + by adding a flag -Qunused-arguments to CFLAGS locally in the + function to suppress the warning. [ruby-dev:48062] [Bug #9658] + [Fixes GH-571] https://github.com/ruby/ruby/pull/571 + +Fri Mar 21 16:31:56 2014 Zachary Scott <e@zzak.io> + + * gc.c: [DOC] Fix call-seq for GC.start by @jasonrclark [Fixes GH-572] + https://github.com/ruby/ruby/pull/572 + +Thu Mar 20 11:37:28 2014 James Edward Gray II <james@graysoftinc.com> + + * lib/csv.rb: Fixed a broken regular expression that was causing + CSV to miss escaping some special meaning characters when used + in parsing. + Reported by David Unric + [ruby-core:54986] [Bug #8405] + +Thu Mar 20 16:53:07 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (objspace_malloc_increase): should not invoke + garbage_collect_with_gvl() here on non-ruby threads. + + Should just ignore the malloc_increase. + + This issue is pointed by Eric Wong [ruby-core:61519]. + +Thu Mar 20 13:05:16 2014 Koichi Sasada <ko1@atdot.net> + + * struct.c (rb_struct_alloc): use RARRAY_CONST_PTR() instead of + RARRAY_PTR(). + +Thu Mar 20 12:59:39 2014 Koichi Sasada <ko1@atdot.net> + + * include/ruby/intern.h (rb_obj_call_init, rb_class_new_instance): + constify a parameter (VALUE *). + I believe this incompatibility doesn't break any code. + However, if you have trouble, please tell us. + + * eval.c, object.c: ditto. + +Thu Mar 20 12:31:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_method.c (rb_method_entry_get_without_cache): get rid of + infinite recursion at aliases in a subclass and a superclass. + return actually defined class for other than singleton class. + [ruby-core:60431] [Bug #9475] + +Wed Mar 19 17:13:06 2014 Eric Wong <e@80x24.org> + + * time.c (time_mload): freeze and preserve marshal-loaded time zone + * test/ruby/test_time.rb: add test for GC on loaded object + [Bug #9652] + +Tue Mar 18 23:20:12 2014 Shota Fukumori <her@sorah.jp> + + * vm_eval.c (eval_string_with_cref): Unify to use NIL_P. + +Tue Mar 18 22:03:41 2014 Shota Fukumori <her@sorah.jp> + + * vm_eval.c (eval_string_with_cref): Use file path even if scope is + given. Related to [ruby-core:56099] [Bug #8662] and r42103. + +Mon Mar 17 13:17:47 2014 Koichi Sasada <ko1@atdot.net> + + * enumerator.c (enumerator_block_call): use RARRAY_CONST_PTR() + instead of RARRAY_PTR(). + + * io.c (rb_io_s_popen): ditto. + + * numeric.c (num_step_size): ditto. + + * vm_eval.c (rb_apply): ditto. + + * vm_eval.c (rb_eval_cmd): ditto. + +Mon Mar 17 10:11:59 2014 Eric Wong <e@80x24.org> + + * variable.c (rb_const_set): delete existing entry on redefinition + [Bug #9645] + * test/ruby/test_const.rb (test_redefinition): test for leak + +Sun Mar 16 21:33:01 2014 Zachary Scott <e@zzak.io> + + * lib/time.rb: [DOC] Fix timezone in example of Time.parse [Bug #9521] + Based on patch by @stomar + +Sun Mar 16 13:21:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (DLDFLAGS): insert a space between option and its + argument for non-GCC compilers. [ruby-core:61429] [Bug #9624] + +Sun Mar 16 08:05:06 2014 Eric Wong <e@80x24.org> + + * gc.c (objspace_xcalloc): fix GC accounting + +Sun Mar 16 06:33:35 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): return address is just after calling + address. Therefore noreturn function with tail call's return + address may be in another function. + +Sun Mar 16 05:51:55 2014 Zachary Scott <e@zzak.io> + + * lib/gserver.rb: [DOC] Fixed typo in example by @stomar [Bug #9543] + +Sat Mar 15 18:54:03 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * ext/.document: remove refinement from documentable directories. + +Sat Mar 15 11:02:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (DLDFLAGS): check for each options to control + symbol resolution. [ruby-core:61429] [Bug #9624] + +Sat Mar 15 07:02:35 2014 Eric Wong <e@80x24.org> + + * st.c (st_update): remove unnecessary assignment + +Fri Mar 14 14:58:38 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * addr2line.c (fill_lines): fetch symbol names from ELF binary's + symbol table if it is built with cc -g and not stripped. + Now ruby can show static symbols on Linux though glibc's + backtrace_symbols(3) don't show them. + + * addr2line.c (rb_dump_backtrace_with_lines): use dladdr(3) to + detect what object file declares the symbol because + dl_iterate_phdr can't detect the main executable file + and codes on the stack. + NOTE: signal trampolines sometimes on the user stack. (FreeBSD) + + * addr2line.c (rb_dump_backtrace_with_lines): stop showing + backtrace if the function's name is main. + NOTE: FreeBSD's backtrace (libexecinfo) shows _start and + an additional address. Why it doesn't remove them on dladdr phase + is, dladdr may fail to detect the main function but detect + as _start function. Therefore it must be after scanning + the symbol table and getting correct name. + + +Fri Mar 14 12:07:46 2014 Zachary Scott <e@zzak.io> + + * doc/syntax/literals.rdoc: [DOC] Single quote strings allows escape + of backslash as well, patch by @idupree [Fixes GH-553] + https://github.com/ruby/ruby/pull/553 + +Fri Mar 14 01:18:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm.c (invoke_block_from_c): add splattable argument. + + * vm.c (vm_invoke_proc): disallow to splat when directly invoked. + + * vm_insnhelper.c (vm_callee_setup_arg_complex, vm_callee_setup_arg): + relax arity check of yielded lambda. [ruby-core:61340] [Bug #9605] + + * test/ruby/test_yield.rb (TestRubyYieldGen#emu_bind_params): no + longer raise ArgumentError when splatting to lambda. + +Thu Mar 13 23:51:02 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/-test-/win32/dln/libdlntest.c (dlntest_ordinal): no need to + specify export in the source file because .def file do it. + get rid of warning on linking. + +Wed Mar 12 11:19:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_insnhelper.c (vm_callee_setup_arg): disable fastpath if splat + argument, since argc may differ for each calls. + [ruby-core:61422] [Bug #9622] + + * vm_insnhelper.c (vm_callee_setup_arg): turn a macro into an + inline function. + +Wed Mar 12 07:26:05 2014 Eric Wong <e@80x24.org> + + * insns.def (opt_regexpmatch2): respect redefined match op + Thanks to Sam Rawlins for the fix. + * test/ruby/test_string.rb: test based on Tsuyoshi Sawada's report + [Bug #9581] + +Tue Mar 11 22:31:25 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * ext/.document: add objspace/objspace_dump.c to document file. + +Tue Mar 11 22:22:38 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * test/objspace/test_objspace.rb (TestObjSpace#test_dump_uninitialized_file): + remove dependency on json library. + +Tue Mar 11 10:55:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * README.EXT{,.ja} (Appendix B): update contents of `ruby_options` + and replace `ruby_run` with `ruby_run_node`. based on the patch + by Kaneko Yuichiro at [ruby-dev:48030] [Bug #9619]. + +Tue Mar 11 06:54:00 2014 Scott Francis <scott.francis@shopify.com> + + * ext/objspace/objspace_dump.c: Check fptr before trying to dump RFILE + object fd. [GH-562] + + * test/objspace/test_objspace.rb: add test + +Tue Mar 11 02:04:36 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * vm_dump.c (rb_vm_bugreport): show vm maps on FreeBSD. + + * vm_dump.c (procstat_vm): copied from FreeBSD. + http://svnweb.freebsd.org/base/head/usr.bin/procstat/procstat_vm.c?revision=261780 + +Mon Mar 10 12:14:26 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: always check dladdr(1). + + * addr2line.c (fill_lines): show the line number in C backtrace if + ruby is built without --enable-shared (PIE) on Linux. + patch is originally by Shinichiro Hamaji + https://twitter.com/shinh/status/441957774264504321 + NOTE: ld doesn't insert __executable_start for PIE. + dladdr(3)'s argument must be a function pointer. + +Mon Mar 10 10:51:17 2014 ksss <co000ri@gmail.com> + + * test/ruby/test_enumerator.rb (test_iterators): fix test for hash + iterators. [Fixes GH-558] + +Sun Mar 9 14:14:49 2014 Eric Wong <e@80x24.org> + + * class.c (rb_class_subclass_add): use xmalloc + * class.c (rb_module_add_to_subclasses_list): ditto + * class.c (rb_class_remove_from_super_subclasses): use xfree + * class.c (rb_class_remove_from_module_subclasses): ditto + [Bug #9616] + +Sun Mar 9 13:51:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/fiddle/function.c (function_call): fix memory leak when an + exception occurs at argument conversion or the function call. + +Sun Mar 9 06:42:40 2014 Eric Wong <e@80x24.org> + + * variable.c (struct global_variable): shrink by 8 bytes on 64-bit + +Sat Mar 8 17:42:51 2014 Eric Wong <e@80x24.org> + + * vm.c (add_opt_method): cleanup to use rb_method_entry_at + +Sat Mar 8 13:46:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/dl/cptr.c (dlptr_free), ext/dl/handle.c (dlhandle_free), + ext/fiddle/handle.c (fiddle_handle_free), + ext/fiddle/pointer.c (fiddle_ptr_free): fix memory leak. + based on the patch Heesob Park at [ruby-dev:48021] [Bug #9599]. + +Sat Mar 8 13:30:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * process.c (obj2uid, obj2gid): now getpwnam_r() and getgrnam_r() + may need larger buffers than sysconf values, so retry with + expanding the buffer when ERANGE is returned. + [ruby-core:61325] [Bug #9600] + +Fri Mar 7 19:29:13 2014 Eric Wong <e@80x24.org> + + * vm_eval.c (vm_call0_body): use RARRAY_CONST_PTR + (check_funcall_exec): ditto + [ruby-core:61360] + +Fri Mar 7 19:14:11 2014 Eric Wong <e@80x24.org> + + * vm_eval.c (vm_call0_body): fix RB_GC_GUARD location + (check_funcall_exec): ditto + [Bug #9609] + +Fri Mar 7 14:48:17 2014 Narihiro Nakamura <authornari@gmail.com> + + * parse.y (ENC_SINGLE): Unused macro removed. + +Fri Mar 7 12:06:19 2014 Martin Bosslet <Martin.Bosslet@gmail.com> + + * test/openssl/test_ssl.rb: Reuse TLS default options from + OpenSSL::SSL::SSLContext::DEFAULT_PARAMS. + +Thu Mar 6 15:15:24 2014 Zachary Scott <e@zzak.io> + + * doc/syntax/assignment.rdoc: [DOC] Fix assignment directions + By @idupree [Fixes GH-555] https://github.com/ruby/ruby/pull/555 + +Thu Mar 6 15:07:18 2014 Zachary Scott <e@zzak.io> + + * doc/syntax/methods.rdoc: [DOC] Fix example for block arguments + By @idupree [Fixes GH-554] https://github.com/ruby/ruby/pull/554 + +Thu Mar 6 10:33:31 2014 Martin Bosslet <Martin.Bosslet@gmail.com> + + * lib/openssl/ssl.rb: Explicitly whitelist the default + SSL/TLS ciphers. Forbid SSLv2 and SSLv3, disable + compression by default. + Reported by Jeff Hodges. + [ruby-core:59829] [Bug #9424] + +Wed Mar 5 15:56:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (f_arg_asgn): define optional arguments as argument + variables in the rhs default expressions. + [ruby-core:61299] [Bug #9593] + +Wed Mar 5 11:58:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/openssl/ossl.c (ossl_make_error): check NULL for unknown + error reasons with old OpenSSL, and insert a colon iff formatted + message is not empty. + +Wed Mar 5 00:42:00 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * ext/pathname/lib/pathname.rb (Pathname#find): add "ignore_error" + keyword argument defaulted to true as well as Find#find. + +Tue Mar 4 23:00:18 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/ruby/test_eval.rb (TestEval#make_test_binding): renamed. + it's not test method. + +Tue Mar 4 20:50:59 2014 Masaya Tarui <tarui@ruby-lang.org> + + * st.c (st_foreach): fix type of hash. not st_data_t but st_index_t. + +Tue Mar 4 19:41:40 2014 Tanaka Akira <akr@fsij.org> + + * Makefile.in: ".DEFAULT" target removed because it is not for + specifying default target. + +Tue Mar 4 00:25:35 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * lib/find.rb (Find#find): should pass ignore_error option to enumerators. + +Mon Mar 3 13:27:35 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/test_find.rb (TestFind#test_unsearchable_dir): ruby cannot make + directory unreachable by owner on Windows. + +Mon Mar 3 08:10:04 2014 Eric Wong <e@80x24.org> + + * vm_method.c (rb_method_entry_get_without_cache): disable GMC + writing if GMC is disabled. + [ruby-core:61218] + +Mon Mar 3 07:47:17 2014 Eric Wong <e@80x24.org> + + * README.EXT: wrap GetDBM with do/while(0) + * README.EXT.ja: ditto + * ext/dbm/dbm.c: ditto, likewise for GetDBM2 + * ext/gdbm/gdbm.c: ditto + * ext/sdbm/init.c: ditto + [ruby-core:61217] + +Mon Mar 3 07:17:31 2014 Zachary Scott <e@zzak.io> + + * NEWS: [DOC] Update doc regarding filesystem load when flushing IO + +Mon Mar 3 04:37:50 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * io.c (rb_io_fsync): need to fsync even if on Windows. fixed mistake + of r45254 and r45256. + +Mon Mar 3 04:21:34 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/win32ole: get rid of warnings (unused variable). + +Mon Mar 3 02:53:53 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * io.c (rb_io_flush_raw): [EXPERIMENTAL] remove force syncing for Win32 + to speed up IO. this may break some tests, and they'll be fixed + later. + [ruby-core:58570] [Bug #9153] + +Mon Mar 3 00:17:43 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/ruby/test_backtrace.rb: get rid of warnings. unused variable, + shadowing. + +Sun Mar 2 11:15:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/find.rb (Find#find): add "ignore_error" keyword argument + defaulted to true. [ruby-core:51025] [Feature #7596] + +Sun Mar 2 11:13:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/readline/extconf.rb (rl_hook_func_t): define as Function for + very old readline versions. [ruby-core:61209] [Bug #9578] + +Sun Mar 2 10:47:58 2014 Eric Wong <e@80x24.org> + + * load.c (ruby_init_ext): make idempotent to suppress warnings + +Sat Mar 1 19:51:42 2014 Tanaka Akira <akr@fsij.org> + + * lib/open3.rb (Open3.capture3): Ignore Errno::EPIPE for writing + stdin_data. + (Open3.capture2): Ditto. + (Open3.capture2e): Ditto. + +Sat Mar 1 19:06:47 2014 Eric Wong <e@80x24.org> + + * gc.c (ruby_gc_set_params): simplify condition + +Sat Mar 1 16:18:40 2014 Tanaka Akira <akr@fsij.org> + + * ext/readline/readline.c (Init_readline): Use rl_hook_func_t instead + of Function to support readline-6.3. (rl_hook_func_t is available + since readline-4.2.) + Reported by Dmitry Medvinsky. [ruby-core:61141] [Bug #9578] + +Sat Mar 1 16:05:58 2014 Eric Wong <e@80x24.org> + + * gc.c (ruby_gc_set_params): fix building without RGenGC + +Sat Mar 1 11:08:00 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/yaml_tree.rb: support dumping Encoding + objects. + + * ext/psych/lib/psych/visitors/to_ruby.rb: support loading Encoding + objects. + + * test/psych/test_encoding.rb: add test + + * ext/psych/lib/psych.rb: add version + +Sat Mar 1 10:52:34 2014 Zachary Scott <e@zzak.io> + + * README.EXT.ja: [DOC] Fix typo "macro macro" @utenmiki [Fixes GH-551] + https://github.com/ruby/ruby/pull/551 + +Fri Feb 28 11:16:55 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * numeric.c: Fix Numeric#step with 0 unit [Bug #9575] + +Thu Feb 27 17:59:01 2014 Zachary Scott <e@zzak.io> + + * lib/optparse.rb: [DOC] Add example of generating help with optparse. + Patch by @joelmccracken documenting-ruby/ruby#19 + https://github.com/documenting-ruby/ruby/pull/19 + +Thu Feb 27 12:10:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * numeric.c (ruby_num_interval_step_size): check signs and get rid + of implementation dependent behavior of negative division. + [ruby-core:61106] [Bug #9570] + +Thu Feb 27 03:55:45 2014 Zachary Scott <e@zzak.io> + + * thread.c: [DOC] Typo in comment for _FORTIFY_SOURCE [Fixes GH-548] + Patch by @qnet-herwin https://github.com/ruby/ruby/pull/548 + +Wed Feb 26 18:43:43 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (heap_pages_free_unused_pages): check tomb page availability + at first. + And return immediately if we don't touch sorted list any more. + +Wed Feb 26 14:10:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (setup_exception): preserve exception class name encoding + in debug mode messages. + + * eval.c (setup_exception): preserve errinfo across calling #to_s + method on the exception. [ruby-core:61091] [Bug #9568] + +Wed Feb 26 01:29:27 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * string.c (sym_find): Add Symbol.find(str), which returns whether given + string is defined as symbol or not. [Feature #7854] + +Tue Feb 25 22:52:02 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * ext/dl/dl.c (rb_dl_realloc): use NUM2SIZET instead of NUM2INT. + + * ext/fiddle/fiddle.c (rb_fiddle_realloc): ditto. + +Tue Feb 25 22:49:30 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * ext/dl/dl.c (rb_dl_malloc): use NUM2SIZET instead of NUM2INT. + Coverity Scan found this bug. + + * ext/fiddle/fiddle.c (rb_fiddle_malloc): ditto. + +Tue Feb 25 12:06:13 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * win32/Makefile.sub: define PACKED_STRUCT. + +Mon Feb 24 21:41:56 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * README.md, README.ja.md: removed (wrong) mode setting for emacs. + +Mon Feb 24 20:05:41 2014 Eric Wong <e@80x24.org> + + * configure.in: define PACKED_STRUCT_UNALIGNED for x86* + * timev.h (struct vtm): use PACKED_STRUCT_UNALIGNED + * time.c (struct time_object): ditto + [Bug #9558] non-x86 cannot safely access unaligned addresses + +Mon Feb 24 18:10:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/fiddle/test_function.rb: remove unused variables. + * test/fileutils/test_fileutils.rb: ditto. + * test/io/console/test_io_console.rb: ditto. + +Mon Feb 24 12:37:51 2014 Eric Wong <e@80x24.org> + + * configure.in: use -Wno-packed-bitfield-compat for GCC 4.4+ + use __attribute__((packed)) if available + * timev.h: shrink and pack struct vtm + * time.c: pack struct time_object and adjust/introduce helpers + [ruby-core:60794] + +Sun Feb 23 17:55:50 2014 Kouhei Sutou <kou@cozmixng.org> + + * lib/rexml/xmltokens.rb: Add missing non ASCII valid characters + to element name characters. Now, REXML name tokens exactly + match "[5] Name" in the XML spec and "[4] NCName" in the + Namespaces in XML spec. See comment about the details. + [Bug #9539] [ruby-core:60901] + Reported by Mario Barcala. Thanks!!! + + * test/rexml/xpath/test_node.rb: Add tests for the above case. + +Sun Feb 23 12:18:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/socket/raddrinfo.c (inet_pton): use rb_w32_inet_pton, instead of + inet_pton directly, which is unavailable on older version Windows. + + * include/ruby/win32.h, win32/win32.c (rb_w32_inet_pton): add a + wrapper function for inet_pton minimum supported client is + Vista, as well as inet_ntop. + +Sun Feb 23 11:33:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/net/imap/test_imap.rb: remove unused variables. + * test/net/imap/test_imap_response_parser.rb: ditto. + * test/net/pop/test_pop.rb: ditto. + +Sun Feb 23 02:19:51 2014 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb (bind_random_port): Rescue EPERM for FreeBSD which + security.mac.portacl.port_high is changed. + See mac_portacl(4) for details. + Reported by Jakub Szafranski. [ruby-core:60917] [Bug #9544] + +Sat Feb 22 23:17:01 2014 Kouhei Sutou <kou@cozmixng.org> + + * lib/rexml/xpath_parser.rb: Fix indent. + +Sat Feb 22 23:15:35 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/xpath/test_attribute.rb: Simplify. + +Sat Feb 22 20:28:47 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/redmine-backporter.rb: more friendly. + +Sat Feb 22 20:24:43 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/test_xpath*.rb: Move to ... + * test/rexml/xpath/*.rb: ... here. + +Sat Feb 22 20:04:41 2014 Kouhei Sutou <kou@cozmixng.org> + + * test/rexml/listener.rb: Untabify. + +Sat Feb 22 19:07:31 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * ext/io/console/console.c (console_dev): need read access for conout$ + because some functions need it. [Bug#9554] + +Sat Feb 22 18:40:58 2014 Eric Wong <e@80x24.org> + + * .gitignore: ignore benchmark files + +Sat Feb 22 01:22:24 2014 Yusuke Endoh <mame@tsg.ne.jp> + + * bignum.c (bary_mul_precheck): fix a copy-paste error. + Coverity Scan found this bug. + +Sat Feb 22 00:58:51 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * ext/socket/raddrinfo.c (rb_getaddrinfo): second argument of + MEMZERO is type. Coverity Scan found this bug. + +Fri Feb 21 23:47:24 2014 Shugo Maeda <shugo@ruby-lang.org> + + * ext/socket/init.c (wait_connectable): break if the socket is + writable to avoid infinite loops on FreeBSD and other platforms + which conforms to SUSv3. This problem cannot be reproduced with + loopback interfaces, so it's hard to write test code. + rsock_connect() and wait_connectable() are overly complicated, so + they should be refactored, but I commit this fix as a workaround + for the release of Ruby 1.9.3 scheduled on Feb 24. + [ruby-core:60940] [Bug #9547] + +Fri Feb 21 23:03:39 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * tool/redmine-backporter.rb: added to handle redmine tickets. + +Fri Feb 21 20:42:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * class.c (rb_mod_init_copy): do nothing if copying self. + [ruby-dev:47989] [Bug #9535] + + * hash.c (rb_hash_initialize_copy): ditto. + +Fri Feb 21 16:45:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/logger.rb (next_rotate_time, previous_period_end): consider + DST change. + + * lib/logger.rb (Logger::LogDevice#check_shift_log): compare the + current time with the time for the next rotation to fix rotation + miss when date changed between the comparison and log writing. + based on the patch by megayu <yuhg2310 AT gmail.com>. + [Fixes GH-539] + +Fri Feb 21 10:39:33 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/monitor/test_monitor.rb: remove unused variables. + * test/resolv/test_dns.rb: ditto. + * test/rexml/test_functions.rb: ditto. + * test/rss/test_setup_maker_itunes.rb: ditto. + +Fri Feb 21 09:48:56 2014 Eric Wong <e@80x24.org> + + * ext/socket/ancdata.c (bsock_sendmsg_internal): only retry on error + (bsock_recvmsg_internal): ditto + * test/socket/test_unix.rb: test above for infinite loop + +Fri Feb 21 08:27:19 2014 Eric Wong <e@80x24.org> + + * include/ruby/ruby.h (RB_GC_GUARD): + use rb_gc_guarded_ptr_val on non-GCC/MSC + * gc.c (rb_gc_guarded_ptr_val): rename and adjust argument. + RB_GC_GUARD should be robust enough for any compiler. + [ruby-core:60816] [Bug #7805] + +Thu Feb 20 22:21:26 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/raddrinfo.c (numeric_getaddrinfo): Use xcalloc. + Suggested by Eric Wong. + https://bugs.ruby-lang.org/issues/9525#note-14 + +Thu Feb 20 11:21:13 2014 Masaki Matsushita <glass.saga@gmail.com> + + * hash.c (rb_hash_flatten): fix behavior of flatten(-1). + [ruby-dev:47988] [Bug #9533] + + * test/ruby/test_array.rb: test for above. + +Wed Feb 19 18:57:02 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket: Bypass getaddrinfo() if node and serv are numeric. + Reporeted by Naotoshi Seo. [ruby-core:60801] [Bug #9525] + + * ext/socket/extconf.rb: Detect struct sockaddr_in6.sin6_len. + + * ext/socket/sockport.h (SET_SIN6_LEN): New macro. + (INIT_SOCKADDR_IN6): Ditto. + + * ext/socket/rubysocket.h (struct rb_addrinfo): Add + allocated_by_malloc field. + + * ext/socket/raddrinfo.c (numeric_getaddrinfo): New function. + (rb_getaddrinfo): Call numeric_getaddrinfo at first. + (rb_freeaddrinfo): Free struct addrinfo properly when it is + allocated by numeric_getaddrinfo. + +Wed Feb 19 18:31:48 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket: Wrap struct addrinfo by struct rb_addrinfo. + +Wed Feb 19 17:47:01 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/ipsocket.c (ip_s_getaddress): Don't access freed memory. + +Wed Feb 19 11:39:41 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in: it must see rb_cv_broken_memmem not rb_cv_func_memmem. + +Tue Feb 18 23:18:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/socket/test_socket.rb: unix socket is required by test case. + +Tue Feb 18 20:48:38 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/socket/test_addrinfo.rb: remove unused variables. + * test/socket/test_nonblock.rb: ditto. + * test/socket/test_socket.rb: ditto. + * test/socket/test_unix.rb: ditto. + * test/testunit/test_parallel.rb: ditto. + * test/webrick/test_filehandler.rb: ditto. + * test/xmlrpc/test_features.rb: ditto. + * test/zlib/test_zlib.rb: ditto. + +Tue Feb 18 14:27:18 2014 Shota Fukumori <her@sorah.jp> + + * lib/test/unit.rb: Requires minitest < 5.0.0 if Gem is available. + +Tue Feb 18 14:24:07 2014 Shota Fukumori <her@sorah.jp> + + * lib/test/unit/test-unit.gemspec: Add minitest < 5.0.0 dependency + + * tool/rbinstall.rb: Add empty implementations for `add_dependency`, + `add_runtime_dependency`, `add_development_dependency` for + Gem::Specification. + +Tue Feb 18 12:06:39 2014 Tanaka Akira <akr@fsij.org> + + * configure.in (FILE_COUNT): Removed. (win32.c defines it in itself.) + (FILE_READPTR): Ditto. + +Tue Feb 18 09:35:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test/psych/test_string.rb: remove unused variables. + * test/test/psych/test_yaml.rb: ditto. + +Mon Feb 17 21:31:31 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_gc.rb: ignore warning messages for running with -w + option such as chkbuild. + +Mon Feb 17 20:00:27 2014 Tanaka Akira <akr@fsij.org> + + * internal.h: Move BDIGIT and related definitions from + include/ruby/defines.h. + +Mon Feb 17 17:41:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * marshal.c (marshal_dump, marshal_load): do not recycle wrapper + objects, to prevent from segfault with continuation. + [ruby-dev:47970] [Bug #9523] + +Mon Feb 17 15:43:59 2014 Zachary Scott <e@zzak.io> + + * doc/keywords.rdoc: [DOC] Add keywords doc by documenting-ruby/ruby#29 + https://github.com/documenting-ruby/ruby/pull/29 + +Mon Feb 17 12:31:31 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (get_envparam_double): fix a warning message. + +Mon Feb 17 12:09:52 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c: introduce new environment variable + "RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR" to control major/minor GC + frequency. + + Do full GC when the number of old objects is more than R * N + where R is this factor and + N is the number of old objects just after last full GC. + + * test/ruby/test_gc.rb: add a test. + +Mon Feb 17 11:28:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_pty.rb: ignore warnings to unused variables. + +Mon Feb 17 11:27:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_find.rb: remove unused variables. + +Sun Feb 17 02:12:00 2014 Kenta Murata <mrkn@mrkn.jp> + + * ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard. + + * ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto. + +Sun Feb 16 15:53:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/test_securerandom.rb: File.exists? is deprecated. use File.exist? + +Sun Feb 16 15:05:00 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/pathname/test_pathname.rb: File.exists? is deprecated. use File.exist? + +Sun Feb 16 15:00:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> + + * test/net/ftp/test_ftp.rb: remove unused variables. + * test/logger/test_logger.rb: ditto. + +Sun Feb 16 14:52:46 2014 Eric Wong <e@80x24.org> + + * dir.c (dir_s_glob): RB_GC_GUARD instead of volatile + +Sun Feb 16 14:33:52 2014 Tanaka Akira <akr@fsij.org> + + * include/ruby/ruby.h (RBIGNUM_SIGN): Defined for compatibility. + (RBIGNUM_POSITIVE_P): Ditto. + (RBIGNUM_NEGATIVE_P): Ditto. + +Sun Feb 16 12:46:47 2014 Eric Wong <e@80x24.org> + + * io.c (rb_f_backquote): trade volatile for manual recycle + rb_gc_force_recycle ensures object is visible until recycle + +Sun Feb 16 11:55:14 2014 Eric Wong <e@80x24.org> + + * marshal.c (marshal_dump): use rb_gc_force_recycle for GC-safety + (marshal_load): ditto + [ruby-core:60730] [Bug #7805] + +Sun Feb 16 08:11:23 2014 Zachary Scott <e@zzak.io> + + * README.EXT.ja: [DOC] Fix typo by @utenmiki [Fixes GH-534] + https://github.com/ruby/ruby/pull/534 + +Sun Feb 16 07:48:20 2014 Tanaka Akira <akr@fsij.org> + + * ext/bigdecimal/bigdecimal.c (BIGNUM_ZERO_P): Unused macro removed. + +Sun Feb 16 06:12:23 2014 Tanaka Akira <akr@fsij.org> + + * internal.h: Rename macro names: RBIGNUM_FOO to BIGNUM_FOO. + (BIGNUM_EMBED_LEN_NUMBITS): Renamed from RBIGNUM_EMBED_LEN_NUMBITS. + (BIGNUM_EMBED_LEN_MAX): Renamed from RBIGNUM_EMBED_LEN_MAX. + (BIGNUM_SIGN_BIT): Renamed from RBIGNUM_SIGN_BIT. + (BIGNUM_SIGN): Renamed from RBIGNUM_SIGN. + (BIGNUM_SET_SIGN): Renamed from RBIGNUM_SET_SIGN. + (BIGNUM_POSITIVE_P): Renamed from RBIGNUM_POSITIVE_P. + (BIGNUM_NEGATIVE_P): Renamed from RBIGNUM_NEGATIVE_P. + (BIGNUM_EMBED_FLAG): Renamed from RBIGNUM_EMBED_FLAG. + (BIGNUM_EMBED_LEN_MASK): Renamed from RBIGNUM_EMBED_LEN_MASK. + (BIGNUM_EMBED_LEN_SHIFT): Renamed from RBIGNUM_EMBED_LEN_SHIFT. + (BIGNUM_LEN): Renamed from RBIGNUM_LEN. + (RBIGNUM_DIGITS): Renamed from RBIGNUM_DIGITS. + (BIGNUM_LENINT): Renamed from RBIGNUM_LENINT. + + * bignum.c: Follow the above change. + + * gc.c: Ditto. + + * marshal.c: Ditto. + + * math.c: Ditto. + + * numeric.c: Ditto. + + * random.c: Ditto. + + * rational.c: Ditto. + + * sprintf.c: Ditto. + + * ext/-test-/bignum/bigzero.c: Ditto. + + * ext/-test-/bignum/intpack.c: Ditto. + + * ext/bigdecimal/bigdecimal.c: Ditto. + +Sat Feb 15 20:48:49 2014 Tanaka Akira <akr@fsij.org> + + * configure.in (FILE_READEND): Don't detect it because it is not used. + +Sat Feb 15 13:22:28 2014 Eric Wong <e@80x24.org> + + * probes_helper.h (RUBY_DTRACE_HOOK): correct type for _id + +Sat Feb 15 11:47:47 2014 Tanaka Akira <akr@fsij.org> + + * bignum.c (rb_big_cmp): Avoid bignum allocation for comparison + between bignum and fixnum. + +Sat Feb 15 10:55:12 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> + + * ext/-test-/win32/fd_setsize/depend: fix wrong dependencies. + [ruby-dev:47253] + +Sat Feb 15 00:38:54 2014 Tanaka Akira <akr@fsij.org> + + * enum.c: Enumerable#{min,min_by,max,max_by} extended to take an + optional argument. + (nmin_cmp): New function. + (nmin_block_cmp): Ditto + (nmin_filter): Ditto. + (nmin_i): Ditto. + (nmin_run): Ditto. + (enum_min): Call nmin_run if the optional argument is given. + (nmin_max): Ditto. + (nmin_min_by): Ditto. + (nmin_max_by): Ditto. + + * range.c: Range#{min,max} extended to take an optional argument. + (range_min): Call range_first if the optional argument is given. + (range_max): Call rb_call_super if the optional argument is given. + + [ruby-core:57111] [Feature #8887] + +Sat Feb 15 00:27:46 2014 Tanaka Akira <akr@fsij.org> + + * include/ruby/ruby.h, + internal.h, + ext/-test-/bignum/bigzero.c: Hide a Bignum definition. + [ruby-core:42891] [Feature #6083] + +Sat Feb 15 00:13:14 2014 Tanaka Akira <akr@fsij.org> + + * include/ruby/intern.h, + include/ruby/io.h, + include/ruby/ruby.h, + include/ruby/win32.h, + include/ruby/backward/rubysig.h, + bignum.c, + gc.c, + io.c, + process.c, + safe.c, + struct.c, + thread.c, + ext/socket/rubysocket.h, + ext/-test-/old_thread_select: Remove deprecated definitions + [ruby-core:60581] [Feature #9502] + +Fri Feb 14 18:38:46 2014 Eric Wong <e@80x24.org> + + * string.c (rb_str_format_m): trade volatile for RB_GC_GUARD + RB_GC_GUARD meaning is clear and has better code generation. + [ruby-core:60688] + +Thu Feb 13 23:30:30 2014 Shugo Maeda <shugo@ruby-lang.org> + + * vm_insnhelper.c (vm_call_method): should check ci->me->flag of + a refining method in case the method is private. + [ruby-core:60111] [Bug #9452] + + * vm_method.c (make_method_entry_refined): set me->flag of a refined + method entry to NOEX_PUBLIC in case the original method is private + and it is refined as a public method. The original flag is stored + in me->def->body.orig_me, so it's OK to make a refined method + entry public. [ruby-core:60111] [Bug #9452] + + * test/ruby/test_refinement.rb: related tests. + +Thu Feb 13 18:38:15 2014 Eric Wong <e@80x24.org> + + * re.c (rb_reg_raise): remove volatile + Unnecessary since r41597 + +Thu Feb 13 18:28:51 2014 Eric Wong <e@80x24.org> + + * re.c (rb_reg_regcomp): remove volatile + Unnecessary since r13261 + +Thu Feb 13 16:54:32 2014 Zachary Scott <e@zzak.io> + + * test/ruby/test_array.rb: Ensure flatten! is used for test_flatten + Patch by @ksss [Fixes GH-530] https://github.com/ruby/ruby/pull/530 + +Thu Feb 13 15:43:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (IDSET_ATTRSET_FOR_INTERN): fix off-by-one bug. + + * parse.y (rb_enc_symname_type): junk ID succeeded by '=' is also + attrset ID. [ruby-core:60668] [Bug #8756] + +Thu Feb 13 11:06:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: check if pthread_setname_np is available. + + * thread_pthread.c: pthread_setname_np is not available on old + Darwins. [ruby-core:60524] [Bug #9492] + +Thu Feb 13 00:56:59 2014 Masaki Matsushita <glass.saga@gmail.com> + + * configure.in: revert r44922. I should have used AC_CHECK_FUNCS() + to just define a symbol if the function is available. + +Thu Feb 13 00:20:58 2014 Masaki Matsushita <glass.saga@gmail.com> + + * configure.in: use AC_CHECK_FUNC instead of AC_CHECK_FUNCS + if available. + +Thu Feb 13 00:15:10 2014 Masaki Matsushita <glass.saga@gmail.com> + + * configure.in: fix to undefine HAVE_MEMMEM correctly if it is broken. + +Tue Feb 11 23:54:40 2014 Tanaka Akira <akr@fsij.org> + + * bignum.c (rb_big_cmp): Specialize a comparison to zero. + + * ext/bigdecimal/bigdecimal.c (is_negative): Use rb_big_cmp instead of + RBIGNUM_NEGATIVE_P. + (BigMath_s_log): Ditto. + +Tue Feb 11 22:59:10 2014 Tanaka Akira <akr@fsij.org> + + * ext/openssl/ossl_bn.c (ossl_bn_initialize): Use rb_integer_pack. + Fix SEGV by OpenSSL::BN.new(1 << (2**34)). + +Tue Feb 11 17:00:38 2014 Zachary Scott <e@zzak.io> + + * ext/tk/README.tcltklib: [DOC] Fix typo by @xta [Fixes GH-532] + +Sun Feb 9 13:59:29 2014 Tanaka Akira <akr@fsij.org> + + * configure.in: Fix compilation error. + https://bugs.ruby-lang.org/issues/8358#note-16 + +Sun Feb 9 05:20:24 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * configure.in (rb_cv_gnu_qsort_r): use compile error "conflicting + types for 'qsort_r'" instead of AC_RUN_IFELSE. + +Sun Feb 9 04:07:34 2014 Zachary Scott <e@zzak.io> + + * lib/yaml.rb: [DOC] Add links to syck and psych on github [Bug #9501] + Based on a patch by Giorgos Tsiftsis + +Sun Feb 9 02:13:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/ruby.h (OBJ_TAINTABLE, OBJ_TAINT, OBJ_INFECT), + marshal.c (r_entry0): all Numerics never be tainted now. + [ruby-core:57346] [Bug #8945] + +Sat Feb 8 23:40:35 2014 Vit Ondruch <vondruch@redhat.com> + + * configure.in: add quoting brackets and append wildcard for the + rest after target_cpu, to properly detect platform for SSE2 + instructions. [ruby-core:60576] [Bug #8358] + +Sat Feb 8 21:44:07 2014 Masaki Matsushita <glass.saga@gmail.com> + + * configure.in: check qsort_r(3) and whether it is GNU version. + BSD version has different prototype. + + * util.h: use qsort_r() as ruby_qsort() if it is GNU version. + + * util.c: define ruby_qsort() if needed. + +Sat Feb 8 16:34:36 2014 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder#get_labels): + Make it iterative. + +Sat Feb 8 15:54:12 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c, gc.h (rb_objspace_marked_object_p): added. + This function *ONLY* works just after marking phase, + before any sweeping. + This function is highly depending current GC implementation + and can be removed future version. + +Sat Feb 8 15:41:37 2014 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb: Don't set CLOEXEC flag explicitly. (Ruby set it by + default.) + +Sat Feb 8 15:27:02 2014 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder): Raise + DecodeError if no data before the limit. + Reported by Will Bryant. [ruby-core:60557] [Bug #9498] + +Sat Feb 8 15:11:21 2014 Tanaka Akira <akr@fsij.org> + + * io.c (SMALLBUF): Unused macro removed. + +Fri Feb 7 23:37:49 2014 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb: Ignore name servers which cause EAFNOSUPPORT on + socket creation. + Reported by Bjoern Rennhak. [ruby-core:60442] [Bug #9477] + +Fri Feb 7 21:58:48 2014 Zachary Scott <e@zzak.io> + + * lib/open-uri.rb: [DOC] use lower case version of core classes, same + as commit r44878, based on patch by Jonathan Jackson [Bug #9483] + +Fri Feb 7 21:54:53 2014 Zachary Scott <e@zzak.io> + + * ext/ripper/lib/ripper/lexer.rb: [DOC] use lower case version of core + classes when referring to return value, since we aren't directly + talking about the class. Patch by Jonathan Jackson [Bug #9483] + +Fri Feb 7 05:28:38 2014 Eric Wong <e@80x24.org> + + * constant.h: reduce rb_const_entry_t size on 64-bit + Patch by Adam Avilla [ruby-core:60542] [Feature #9496] + +Thu Feb 6 15:27:46 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (get_envparam_int): correct warning messages. + + * gc.c (get_envparam_double): ditto. + +Thu Feb 6 15:17:30 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (get_envparam_int): don't accept a value equals to lowerbound + (changed by last commit) because "" or "foo" (not a number) strings + are parsed as 0. They should be rejected. + + * gc.c (get_envparam_double): ditto. + +Thu Feb 6 09:00:35 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (ruby_gc_set_params): if RUBY_GC_OLDMALLOC_LIMIT is provided, + then set objspace->rgengc.oldmalloc_increase_limit. + Without this fix, the env variable RUBY_GC_OLDMALLOC_LIMIT + does not work. + + * gc.c (get_envparam_int): accept a value equals to lowerbound. + + * gc.c (get_envparam_double): ditto. + +Thu Feb 6 08:23:28 2014 Eric Wong <e@80x24.org> + + * ext/thread/thread.c (rb_szqueue_max_set): use correct queue and + limit wakeups. [Bug #9343][ruby-core:60517] + * test/thread/test_queue.rb (test_sized_queue_assign_max): + test for bug + +Thu Feb 6 07:18:01 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems: Update to RubyGems 2.2.2. Complete history at: + + http://rubygems.rubyforge.org/rubygems-update/History_txt.html#label-2.2.2+%2F+2014-02-05 + + * test/rubygems: ditto. + +Wed Feb 5 20:56:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * marshal.c (to_be_skipped_id): ignore anonymous attributes. + + * pack.c (Init_pack): use anonymous ID so that associated objects + do not appear in the packed result. + + * parse.y (rb_make_internal_id): return an anonymous ID for + internal use. + +Wed Feb 5 14:41:56 2014 Koichi Sasada <ko1@atdot.net> + + * vsnprintf.c: remove duplicated def of `UNINITIALIZED_VAR()'. + +Wed Feb 5 14:40:16 2014 Koichi Sasada <ko1@atdot.net> + + * ext/objspace/objspace_dump.c (dump_object): use STR_SHARED_P() + instead of removed STR_NOCAPA_P() macro. + +Wed Feb 5 13:51:33 2014 Koichi Sasada <ko1@atdot.net> + + * internal.h, vm_core.h: move LIKELY/UNLIKELY/UNINITIALIZED_VAR() + macros from vm_core.h to internal.h. + + * string.c: remove dependency to "vm_core.h". + + * common.mk: ditto. + +Wed Feb 5 13:29:01 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (rb_str_free): use FL_TEST(str, STR_SHARED) directly + because str is not embed. + + * string.c (str_replace): remove `FL_SET(str, STR_SHARED)' line + because STR_SET_SHARED() set STR_SHARED. + +Wed Feb 5 13:18:08 2014 Koichi Sasada <ko1@atdot.net> + + * internal.h: remove macros STR_NOCAPA and STR_NOCAPA_P(). + + * string.c (rb_str_resize): remove `STR_SET_NOEMBED(str)' because + str_make_independent_expand() set NOEMBED flag. + + * string.c (rb_str_resize): remove `STR_NOCAPA_P(str)' check because + `str' is independent (not shared). + +Wed Feb 5 12:54:25 2014 Koichi Sasada <ko1@atdot.net> + + * string.c: refactoring, especially about string flags. + + * string.c (STR_UNSET_NOCAPA): removed. + Use FL_UNSET() with STR_SHARED. + + * string.c (rb_str_capacity): check STR_SHARED directly + because it is not a embed string. + + * string.c (rb_str_modify_expand): ditto. + + * string.c (rb_str_shared_replace): use STR_SET_SHARED(). + + * string.c (str_make_independent_expand): remove STR_UNSET_NOCAPA() + because `str' is not shared string. + +Wed Feb 5 12:11:04 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (RESIZE_CAPA): should not resize shared string. + +Wed Feb 5 11:46:42 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_mark_children): STR_ASSOC is no longer available. + Reported by @nagachika. + http://d.hatena.ne.jp/nagachika/20140204 + +Wed Feb 5 11:27:22 2014 Koichi Sasada <ko1@atdot.net> + + * string.c (rb_str_new_frozen): refactoring code. + * Move code from str_new_frozen_with_klass() (and remove it) + * `aux.shared' should not be 0 for STR_SHARED strings. + +Wed Feb 5 04:23:41 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych.rb: New release of psych. + * ext/psych/psych.gemspec: ditto + +Wed Feb 5 04:16:41 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/yaml/emitter.c: merge libyaml 0.1.5 + * ext/psych/yaml/loader.c: ditto + * ext/psych/yaml/parser.c: ditto + * ext/psych/yaml/reader.c: ditto + * ext/psych/yaml/scanner.c: ditto + * ext/psych/yaml/writer.c: ditto + * ext/psych/yaml/yaml_private.h: ditto + +Tue Feb 4 19:10:29 2014 Koichi Sasada <ko1@atdot.net> + + * string.c: use long allocator names instead of numbered + allocator names. + * rb_str_new2 -> rb_str_new_cstr + * rb_str_new4 -> rb_str_new_frozen + * rb_str_new5 -> rb_str_new_with_class + * str_new3 -> str_new_shared + * str_new4 -> str_new_frozen_with_klass + +Tue Feb 4 17:20:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_helper): return the filename with actual cases on + the filesystem if it is case-insensitive. [ruby-core:42469] + [Feature #5994] + +Tue Feb 4 16:16:58 2014 Koichi Sasada <ko1@atdot.net> + + * string.c: use STR_SHARED instead of ELTS_SHARED. + (same value, but more clear meaning) + +Tue Feb 4 16:09:14 2014 Koichi Sasada <ko1@atdot.net> + + * string.c: remove STR_ASSOC related code. + By r44804, string objects can not have STR_ASSOC flag. + + * internal.h: ditto. + + * ext/objspace/objspace_dump.c (dump_object): ditto. + +Tue Feb 4 14:07:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * pack.c (str_associate, str_associated): keep associated objects + in an instance variables, instead of in the internal structure. + + * string.c (rb_str_associate, rb_str_associated): deprecate. + +Tue Feb 4 12:55:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (rb_str_modify_expand): enable capacity and disable + association with packed objects when setting capa, so that + pack("p") string fails to unpack properly after modified. + +Tue Feb 4 12:45:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * dir.c (glob_make_pattern): all alphabets are magic characters on + case-insensitive filesystems. [ruby-core:42469] [Feature #5994] + +Tue Feb 4 09:47:57 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems: Update to RubyGems 2.2.2 prerelease to check fixes to + CI. + * test/rubygems: ditto. + +Mon Feb 3 12:04:47 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * error.c: [DOC] Exception#cause may return nil. [ci skip] + +Sun Feb 2 05:48:42 2014 Eric Wong <e@80x24.org> + + * io.c (rb_io_syswrite): add RB_GC_GUARD + [Bug #9472][ruby-core:60407] + +Sat Feb 1 15:09:16 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> + + * ext/win32ole/win32ole.c (ole_typedesc2val): add VT_RECORD case. + +Sat Feb 1 06:38:51 2014 Zachary Scott <e@zzak.io> + + * lib/drb/drb.rb: [DOC] Add note about start_service for each process + Based on a patch by @rosenfeld [Fixes GH-514] [ci skip] + https://github.com/ruby/ruby/pull/514 + +Sat Feb 1 06:30:20 2014 Zachary Scott <e@zzak.io> + + * error.c: [DOC] Document Exception#cause by @jasonrclark [ci skip] + [Fixes GH-519] https://github.com/ruby/ruby/pull/519 + +Sat Feb 1 06:10:49 2014 Zachary Scott <e@zzak.io> + + * lib/securerandom.rb: [DOC] Add note on require for examples + Based on a patch by @schneems [Fixes GH-518] [ci skip] + https://github.com/ruby/ruby/pull/518 + +Sat Feb 1 06:04:56 2014 Zachary Scott <e@zzak.io> + + * numeric.c: [DOC] Fix typo in example for #step [ci skip] + Patch by @ksss [Fixes GH-522] https://github.com/ruby/ruby/pull/522 + +Fri Jan 31 17:01:47 2014 Eric Wong <e@80x24.org> + + * ext/socket/init.c (rsock_socket0): split out SOCK_CLOEXEC version + * ext/socket/socket.c (rsock_socketpair0): ditto + [ruby-core:60377] + +Fri Jan 31 03:48:40 2014 Eric Wong <e@80x24.org> + + * benchmark/driver: avoid large alloc in driver process + [ruby-core:59869] [Bug #9430] + +Thu Jan 30 14:45:49 2014 Shugo Maeda <shugo@ruby-lang.org> + + * configure.in: use $@ instead of $(.TARGET) because .TARGET is not + supported by GNU make. + +Thu Jan 30 08:26:21 2014 Yusuke Endoh <mame@tsg.ne.jp> + + * ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value. + [ruby-core:57599] [Bug #8978]. + +Wed Jan 29 20:08:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (nogvl_copy_stream_sendfile): check socket on other than + linux, as sendfile(2) on non-socket fd works only on linux. + [Feature #9427] + +Wed Jan 29 18:09:48 2014 Eric Wong <e@80x24.org> + + * io.c (nogvl_copy_stream_sendfile): remove socket check + [ruby-core:59856][Feature #9427] + +Wed Jan 29 04:29:54 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/openssl/ossl_ssl.c: pass read_nonblock options to underlying IO + when SSL session has not been started. + + * test/openssl/test_ssl.rb: test for change. + +Wed Jan 29 03:49:36 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value. + [ruby-core:57599] [Bug #8978]. Thanks mame! + +Wed Jan 29 03:36:42 2014 Eric Wong <e@80x24.org> + + * doc/contributing.rdoc: allow/encourage other git hosts + [ruby-core:59807][misc #9421] + +Tue Jan 28 23:36:01 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket: Avoid redundant fcntl/fstat syscalls for cloexec + sockets. + Patch by Eric Wong. [ruby-core:59429] [Feature #9330] + +Tue Jan 28 20:51:07 2014 Tanaka Akira <akr@fsij.org> + + * process.c (READ_FROM_CHILD): Apply the last hunk of + 0001-process.c-avoid-EINTR-from-Process.spawn.patch written by + Eric Wong in [Bug #8770]. + +Tue Jan 28 16:31:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread_pthread.c (ruby_init_stack, ruby_stack_overflowed_p): + place get_stack above others to get stack boundary information. + [ruby-core:60113] [Bug #9454] + +Tue Jan 28 15:27:36 2014 NARUSE, Yui <naruse@ruby-lang.org> + + * thread_pthread.c: rlimit is only available on Linux. + At least r44712 breaks FreeBSD. + [ruby-core:60113] [Bug #9454] + +Tue Jan 28 15:17:59 2014 Zachary Scott <e@zzak.io> + + * lib/set.rb: [DOC] Add examples for Set#intersect? and Set#disjoint? + Patch by xavier nayrac [Bug #9331] [ci skip] + +Tue Jan 28 15:12:22 2014 Zachary Scott <e@zzak.io> + + * ext/zlib/zlib.c (rb_zlib_adler32): [DOC] Add example for adler32 + Patch by Vajrasky Kok [Bug #9307] [ci skip] + +Tue Jan 28 08:56:00 2014 Charlie Somerville <charliesome@ruby-lang.org> + + * compile.c (iseq_build_from_ary_body): Use :blockptr instead of :block + as hash key when loading serialized instruction sequences from arrays. + [Bug #9455] [ruby-core:60146] + +Mon Jan 27 21:52:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread_pthread.c: get current main thread stack size, which may + be expanded than allocated size at initialization, by rlimit(). + [ruby-core:60113] [Bug #9454] + +Sat Jan 25 22:17:02 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * README.ja.md, README.md: update the controller address of + mailing lists. + +Sat Jan 25 14:50:42 2014 Eric Wong <normalperson@yhbt.net> + + * process.c (send_child_error): retry write on EINTR to fix + occasional Errno::EINTR from Process.spawn. + + * process.c (recv_child_error): retry read on EINTR to fix + occasional Errno::EINTR from Process.spawn. + +Sat Jan 25 14:21:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (iseq_compile_each): result of assignment should be + its rhs instead of returned value from a method. + [ruby-core:60071] [Bug #9448] + +Sat Jan 25 11:16:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * class.c (rb_extract_keywords): treat nil keyword_hash same as 0, + for the case rb_scan_args returns nil if no keyword hash. + +Fri Jan 24 15:13:20 2014 Zachary Scott <e@zzak.io> + + * lib/racc/rdoc/grammar.en.rdoc: [DOC] Correct grammar and typos + Patch by Giorgos Tsiftsis [Bug #9429] [ci skip] + +Thu Jan 23 20:20:17 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/envutil.rb: try to wait a bit (0.1sec) when ruby process + exits by signals because some SEGV tests fail because of not enough + error output. + +Thu Jan 23 20:06:27 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_settracefunc.rb: check the target thread. + +Thu Jan 23 19:59:16 2014 Koichi Sasada <ko1@atdot.net> + + * test/ruby/test_settracefunc.rb: check the target thread. + +Thu Jan 23 14:26:44 2014 Zachary Scott <e@zzak.io> + + * lib/fileutils.rb: [DOC] Fix typo in options_of() example [Bug #9392] + Patch by Giorgos Tsiftsis + +Thu Jan 23 13:56:16 2014 Zachary Scott <e@zzak.io> + + * README -> README.md: [DOC] Format README with Markdown [Bug #9255] + * README.ja -> README.ja.md: ditto + +Wed Jan 22 15:59:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/thread/thread.c (Init_thread): ConditionVariable and Queue + are not able to copy. [ruby-core:59961] [Bug #9440] + +Tue Jan 21 20:14:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread_pthread.c (rb_thread_create_timer_thread): fix for platforms + where PTHREAD_STACK_MIN is a dynamic value and not a compile-time + constant. [ruby-dev:47911] [Bug #9436] + +Tue Jan 21 17:55:09 2014 Zachary Scott <e@zzak.io> + + * lib/uri/common.rb: [DOC] Use static w3.org uri [ci skip] + Patch by @ykzts [Fix GH-484] https://github.com/ruby/ruby/pull/484 + +Tue Jan 21 16:43:22 2014 Zachary Scott <e@zzak.io> + + * enum.c: [DOC] Add simple example of Enumerable#zip [ci skip] + Patch by @nruth on documenting-ruby/ruby#22 + https://github.com/documenting-ruby/ruby/pull/22 + +Tue Jan 21 16:26:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread_pthread.c (rb_thread_create_timer_thread): expand timer + thread stack size to get rid of segfault on FreeBSD/powerpc64. + based on the patch by Steve Wills at [ruby-core:59923]. + [ruby-core:56590] [Bug #8783] + +Tue Jan 21 04:31:23 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c: Use "int" for IP_MULTICAST_LOOP and + IP_MULTICAST_TTL on Mac OS X and Windows. + +Tue Jan 21 00:39:15 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c: Use "byte" as default argument for + IP_MULTICAST_LOOP and IP_MULTICAST_TTL socket option to follow + the original multicast implementation. + +Mon Jan 20 20:20:27 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c: Use preprocessor macros to avoid repeated + conditionals. + +Mon Jan 20 13:55:03 2014 Zachary Scott <e@zzak.io> + + * lib/rubygems/version.rb: [DOC] Use gender-neutral pronouns [ci skip] + * lib/rubygems/security.rb: ditto + +Sun Jan 19 06:38:48 2014 Benoit Daloze <eregontp@gmail.com> + + * compar.c (cmp_equal): warn for this release and still rescue + standard exceptions for a nicer transition. See #7688. + Partly reverts r44502. + + * test/ruby/test_comparable.rb: adapt assertion to match new behavior. + +Sun Jan 19 06:27:18 2014 Benoit Daloze <eregontp@gmail.com> + + * test/ruby/test_comparable.rb: specify behavior for the different + kind of exceptions rescued (or not) by Comparable#==. + +Sat Jan 18 23:12:19 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket: Avoid unnecessary ppoll/select on Linux. + Patch by Eric Wong. [ruby-core:57950] [Bug #9039] + +Sat Jan 18 22:57:44 2014 Tanaka Akira <akr@fsij.org> + + * lib/resolv.rb (Resolv::DNS::Resource::TXT#data): Return concatenated + string. + Patch by Ryan Brunner. [ruby-core:58220] [Bug #9093] + +Sat Jan 18 22:35:15 2014 Tanaka Akira <akr@fsij.org> + + * io.c (rb_update_max_fd): Return immediately if the given fd is small + enough. + +Sat Jan 18 22:25:53 2014 Tanaka Akira <akr@fsij.org> + + * io.c: Test O_CLOEXEC only once. + Patch by Eric Wong. [ruby-core:59419] [Feature #9328] + +Sat Jan 18 21:24:49 2014 Tanaka Akira <akr@fsij.org> + + * ext/socket/option.c: IP_MULTICAST_LOOP and IP_MULTICAST_TTL socket + option takes a byte on OpenBSD. + Fixed by Jeremy Evans. [ruby-core:59496] [Bug #9350] + +Sat Jan 18 21:19:04 2014 Tanaka Akira <akr@fsij.org> + + * lib/open-uri.rb: Make proxy disabling working again. + Fixed by Christophe Philemotte. [ruby-core:59650] [Bug #9385] + +Fri Jan 17 20:05:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/delegate.rb (Delegator): keep source information methods + which start and end with '__'. [ruby-core:59718] [Bug #9403] + +Fri Jan 17 17:58:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (rb_mod_s_constants): return its own constants for other + than Module itself. [ruby-core:59763] [Bug #9413] + +Tue Jan 16 00:17:00 2014 Kenta Murata <mrkn@mrkn.jp> + + * ext/bigdecimal/bigdecimal.gemspec: bigdecimal version 1.2.5. + +Wed Jan 15 20:30:31 2014 Masaki Matsushita <glass.saga@gmail.com> + + * io.c (io_binwrite): use writev(2) to avoid double write if available. + + * configure.in: check writev(2) + +Wed Jan 15 14:04:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (get_encoding): respect BOM on pseudo encodings. + [ruby-dev:47895] [Bug #9415] + +Wed Jan 15 14:03:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * string.c (get_actual_encoding): get actual encoding according to + the BOM if exists. + + * string.c (rb_str_inspect): use according encoding, instead of + pseudo encodings, UTF-{16,32}. [ruby-core:59757] [Bug #8940] + +Tue Jan 14 21:07:22 2014 Masaki Matsushita <glass.saga@gmail.com> + + * ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS + on SizedQueue#clear. [ruby-core:59462] [Bug #9342] + + * test/thread/test_queue.rb: add test. the patch is from + Justin Collins. + +Tue Jan 14 15:58:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/bigdecimal/bigdecimal.c (CLASS_NAME): macro to wrap + depending on PRIsVALUE for 1.9. [Backport #9406] + + * ext/bigdecimal/bigdecimal.c (DECIMAL_SIZE_OF_BITS): fallback + definition for 2.1 or older. [ruby-core:59750] [Backport #9406] + +Tue Jan 14 11:28:44 2014 Yuki Yugui Sonoda <yugui@google.com> + + * vm_exec.c (cfp): Fixes a SEGV issue in r44554. + r11 can be broken by subroutine and sometimes causes SEGV at + runtime. Use r13 instead. + +Tue Jan 14 02:20:00 2014 Kenta Murata <mrkn@mrkn.jp> + + * ext/bigdecimal/bigdecimal.c (BigDecimal_divide): Add an additional + digit for the quotient to be compatible with bigdecimal 1.2.1 and + the former. [ruby-core:59365] [#9316] [#9305] + + * test/bigdecimal/test_bigdecimal.rb: tests for the above change. + + * ext/bigdecimal/bigdecimal.gemspec: bigdecimal version 1.2.4. + +Mon Jan 13 14:55:31 2014 Zachary Scott <e@zzak.io> + + * lib/xmlrpc/client.rb: [DOC] Remove note about SSL package on RAA + Since RAA has been deprecated, and the SSL package has been replaced + with net/https this statement is entirely false and should be + deleted. [Bug #9152] + +Mon Jan 13 14:47:07 2014 Zachary Scott <e@zzak.io> + + * lib/net/smtp.rb: [DOC] Remove dead link to RAA by Giorgos Tsiftsis + Fixes the following bugs: [Bug #9152] [Bug #9268] [Bug #9394] + * lib/open-uri.rb: ditto + +Mon Jan 13 14:25:55 2014 Zachary Scott <e@zzak.io> + + * ext/openssl/ossl_pkey_dh.c: Fixed typo by Sandor Szuecs [Bug #9243] + +Mon Jan 13 12:03:00 2014 Charlie Somerville <charliesome@ruby-lang.org> + + * ext/thread/thread.c (rb_szqueue_push): check GET_SZQUEUE_WAITERS + instead of GET_QUEUE_WAITERS to prevent deadlock. Patch by Eric Wong. + [Bug #9302] [ruby-core:59324] + + * test/thread/test_queue.rb: add test + +Sun Jan 12 16:41:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * iseq.c (iseq_load): keep type_map to get rid of memory leak. + based on a patch by Eric Wong at [ruby-core:59699]. [Bug #9399] + +Sun Jan 12 09:21:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * include/ruby/util.h (DECIMAL_SIZE_OF_BITS): a preprocessor + constant macro to approximate decimal representation size of n-bits + integer. + + * iseq.c (register_label): use DECIMAL_SIZE_OF_BITS for better + approximation. + + * ext/bigdecimal/bigdecimal.c (BigMath_s_log): ditto. + + * common.mk (iseq.o), ext/bigdecimal/depend (bigdecimal.o): add + dependency to ruby/util.h for DECIMAL_SIZE_OF_BITS. + +Fri Jan 10 16:27:20 2014 Yuki Yugui Sonoda <yugui@google.com> + + * vm_exec.c (cfp): Avoid generating invalid binary for + NativeClient. + r15 on x86_64 is reserved by NativeClient. So r15 to cfp used to + generate invalid binary under some combinations of compiler + optimization flags. + +Fri Jan 10 18:01:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_insnhelper.c (vm_search_super_method): allow bound method from a + module, yet another method transplanting. + +Fri Jan 10 13:34:04 2014 Aman Gupta <ruby@tmm1.net> + + * insns.def (opt_aref_with): new instruction to optimize Hash#[], + removing any allocation overhead when used with a string literal + key. Patch by normalperson (Eric Wong). [ruby-core:59640] [Bug #9382] + * insns.def (opt_aset_with): new instruction to optimize Hash#[]= + * compile.c (iseq_compile_each): compiler shortcuts for new + instructions + * hash.c (static VALUE rb_hash_compare_by_id_p): fix documentation for + Hash#compare_by_identity to reflect frozen string sharing + * test/ruby/test_hash.rb (class TestHash): test for new behavior + +Fri Jan 10 06:23:21 2014 Benoit Daloze <eregontp@gmail.com> + + * range.c (Range#size): [DOC] improve description and add examples. + Patch by @skade. [Fixes GH-501] + +Fri Jan 10 00:47:52 2014 Josef Stribny <strzibny@gmail.com> + + * ext/tk/extconf.rb: fix to pass arrays instead of strings to + libpathflag. patch at [ruby-core:59665]. [Bug #9386] + +Thu Jan 9 20:49:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: -mstackrealign is necessary for -msse2 working. + [ruby-core:54716] [Bug #8349] + + * configure.in: use SSE2 instructions to drop unexpected precisions on + other than mingw. [ruby-core:59472] [Bug #8358] + +Thu Jan 9 20:31:10 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * hash.c (rb_objid_hash): should return `long'. brushup r44534. + + * object.c (rb_obj_hash): follow above change. + +Thu Jan 9 19:12:37 2014 Koichi Sasada <ko1@atdot.net> + + * vm.c (rb_vm_pop_cfunc_frame): added. It cares c_return event. + The patch base by drkaes (Stefan Kaes). + [Bug #9321] + + * variable.c (rb_mod_const_missing): use rb_vm_pop_cfunc_frame() + instead of rb_frame_pop(). + + * vm_eval.c (raise_method_missing): ditto. + + * vm_eval.c (rb_iterate): ditto. + + * internal.h (rb_vm_pop_cfunc_frame): add decl. + + * test/ruby/test_settracefunc.rb: add tests. + provided by drkaes (Stefan Kaes). + + * vm.c, eval.c, include/ruby/intern.h (rb_frame_pop): + move definition of rb_frame_pop() and deprecate it. + It doesn't care about `return' events. + +Thu Jan 9 17:40:28 2014 NAKAMURA Usaku <usa@ruby-lang.org> + + * hash.c (rb_any_hash): should treat the return value of rb_objid_hash() + as `long', because ruby assumes the hash value of the object id of + an object is `long'. + this fixes test failures on mswin64 introduced at r44525. + +Thu Jan 9 09:55:20 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/yaml_tree.rb: dumping strings with + quotes should not have changed. [ruby-core:59316] [Bug #9300] + + * ext/psych/lib/psych.rb: fixed missing require. + + * test/psych/test_string.rb: test + +Thu Jan 9 09:51:00 2014 Aaron Patterson <aaron@tenderlovemaking.com> + + * ext/psych/lib/psych/visitors/to_ruby.rb: anonymous structs + should be able to roundtrip. Thanks @splattael! + + * test/psych/test_object_references.rb: test for change + +Wed Jan 8 22:53:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * vm_insnhelper.c (vm_search_super_method): when super called in a + bound UnboundMethod generated from a module, no superclass is + found since the current defined class is the module, then call + method_missing in that case. [ruby-core:59619] [Bug #9377] + +Wed Jan 8 15:55:21 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (rb_objid_hash): return hash value from object ID with a + salt, extract from rb_any_hash(). + + * object.c (rb_obj_hash): return same value as rb_any_hash(). + fix r44125. [ruby-core:59638] [Bug #9381] + +Wed Jan 8 13:12:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/timeout.rb (Timeout::ExitException.catch): pass arguments + for new instance. + + * lib/timeout.rb (Timeout::ExitException#exception): fallback to + Timeout::Error if couldn't throw. [ruby-dev:47872] [Bug #9380] + + * lib/timeout.rb (Timeout#timeout): initialize ExitException with + message for the fallback case. + +Tue Jan 7 12:43:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/timeout.rb (Timeout#timeout): should not rescue ordinarily + raised ExitException, which should not be thrown. + + * lib/timeout.rb (Timeout::ExitException.catch): set @thread only if + it ought to be caught. + + * lib/timeout.rb (Timeout#timeout): when a custom exception is given, + no instance is needed to be caught, so defer creating new instance + until it is raised. [ruby-core:59511] [Bug #9354] + +Tue Jan 7 10:16:02 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems: Update to RubyGems master 21e409d / RubyGems 2.2.1. + + See http://rubygems.rubyforge.org/rubygems-update/History_txt.html + for a list of bug fixes. + + * test/rubygems: ditto. + +Tue Jan 7 10:10:46 2014 Eric Wong <e@80x24.org> + + * ext/json/generator/depend: add build dependencies for json extension + [Bug #9374] [ruby-core:59609] + * ext/json/parser/depend: ditto + +Tue Jan 7 04:35:46 2014 Aman Gupta <ruby@tmm1.net> + + * array.c (ary_add_hash): Fix consistency issue between Array#uniq and + Array#uniq! [Bug #9340] [ruby-core:59457] + * test/ruby/test_array.rb (class TestArray): regression test for above. + +Mon Jan 6 21:28:48 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * .gitignore: ignore *-fake.rb generated even when CROSS_COMPILING = no + since r42862. + +Sun Jan 5 20:14:14 2014 Benoit Daloze <eregontp@gmail.com> + + * compar.c (cmp_equal): remove error hiding in Comparable#==. + Comparable#== no longer rescues exceptions silently. + This was the cause of quite a couple bugs. See #7688. [EXPERIMENTAL] + + * test/ruby/test_comparable.rb: adapt assertion to match new behavior. + + * lib/rdoc/method_attr.rb: fix bugs discovered by this change. + + * test/rdoc/test_rdoc_normal_class.rb: fix bugs in tests. + +Sat Jan 4 22:44:00 2014 Charlie Somerville <charliesome@ruby-lang.org> + + * struct.c (rb_struct_set): return assigned value from setter method + rather than struct object. [Bug #9353] [ruby-core:59509] + + * test/ruby/test_struct.rb (test_setter_method_returns_value): add test + +Sat Jan 4 21:44:31 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> + + * test/ruby/test_gc.rb (TestGc#test_latest_gc_info): use + GC.stat(:key) instead of GC.stat. + +Sat Jan 4 19:15:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/socket/socket.c (rsock_syserr_fail_host_port): use format flags, + '+' to inspect, ' ' to quote unprintables. + + * ext/socket/socket.c (rsock_syserr_fail_path): ditto. + + * ext/socket/socket.c (rsock_syserr_fail_raddrinfo): ditto. + + * ext/socket/socket.c (rsock_syserr_fail_host_port): add errno + argument version and use rb_syserr_fail_str() instead of + rb_sys_fail_str() with restoring errno. + + * ext/socket/socket.c (rsock_syserr_fail_path): ditto, and + rb_syserr_fail(). + + * ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto, use + rsock_syserr_fail_raddrinfo(). + + * ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto. + + * ext/socket/socket.c (setup_domain_and_type): ditto. + +Sat Jan 4 17:18:58 2014 Kazuki Tsujimoto <kazuki@callcc.net> + + * vm.c (RubyVM::OPTS): get rid of a garbage character. + +Sat Jan 4 10:17:54 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rinda/ring.rb (Rinda::RingFinger#make_socket): Use + ipv4_multicast_ttl option for portability. + +Sat Jan 4 10:15:47 2014 Eric Hodel <drbrain@segment7.net> + + * lib/rinda/ring.rb (Rinda::RingFinger#make_socket): Use + ipv4_multicast_loop option for portability. Patch by Jeremy Evans. + [ruby-trunk - Bug #9351] + +Fri Jan 3 19:09:00 2014 Eric Wong <normalperson@yhbt.net> + + * ext/socket/socket.c (rsock_sys_fail_host_port): save and restore errno + before calling rb_sys_fail_str to prevent [BUG] errno == 0. + Patch by Eric Wong. [ruby-core:59498] [Bug #9352] + + * ext/socket/socket.c (rsock_sys_fail_path): ditto + * ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto + * ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto + * ext/socket/socket.c (rsock_sys_fail_raddrinfo_or_sockaddr): ditto + +Fri Jan 3 10:43:57 2014 Aman Gupta <ruby@tmm1.net> + + * test/net/imap/cacert.pem: generate new CA cert, since the last one + expired. [Bug #9341] [ruby-core:59459] + * test/net/imap/server.crt: new server cert signed with updated CA. + * test/net/imap/Makefile: add `make regen_certs` to automate this + process. + +Fri Jan 3 00:09:54 2014 Benoit Daloze <eregontp@gmail.com> + + * ext/bigdecimal: update class method call style from :: to . + in documentation and usage. + + * ext/bigdecimal/lib/bigdecimal/math.rb: [DOC] fix examples values. + Computations were made using ruby 2.0.0p247 to ensure + no effect of the recent BigDecimal bug. + + * ext/bigdecimal/sample/nlsolve.rb: fix indent. + +Thu Jan 2 16:07:21 2014 Masaki Matsushita <glass.saga@gmail.com> + + * io.c (io_fwrite): freeze converted str. + +Thu Jan 2 04:15:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (rb_longjmp): remove an extra modifier from the forward + declaration to match the actual definition. [ruby-core:59451] + [Bug #9338] + +Thu Jan 2 01:23:30 2014 Masaki Matsushita <glass.saga@gmail.com> + + * vm_eval.c (method_missing): use ALLOCV_N() instead of + ALLOCA_N() and rb_ary_tmp_new(). + +Thu Jan 2 00:53:16 2014 Masaki Matsushita <glass.saga@gmail.com> + + * array.c (rb_ary_zip): use ALLOCV_N() instead of ALLOCA_N(). + +Thu Jan 2 00:04:29 2014 Masaki Matsushita <glass.saga@gmail.com> + + * hash.c (rb_hash_keys): make rb_hash_keys() static. + it is no longer used from array.c since r43969. + the patch is from normalperson (Eric Wong). + [ruby-core:59449] [Feature #9336] + + * internal.h: remove definition of rb_hash_keys(). + +Wed Jan 1 18:19:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: reset LDFLAGS and DLDFLAGS for opt-dir again after + LIBPATHFLAG and RPATHFLAG are set. [ruby-dev:47868] [Bug #9317] + +Wed Jan 1 11:12:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: use SSE2 instructions for drop unexpected + precisions. [ruby-core:54738] [Bug #8358] + +Tue Dec 31 23:49:07 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (rb_f_raise): add cause: optional keyword argument. + [ruby-core:58610] [Feature #8257] [EXPERIMENTAL] + +Tue Dec 31 21:44:17 2013 Akio Tajima <artonx@yahoo.co.jp> + + * win32/Makefile.sub: remove HAVE_FSEEKO because fseeko removed from win32/win32.c + Fixed [Bug #9333]. + +Tue Dec 31 21:02:27 2013 Masaki Matsushita <glass.saga@gmail.com> + + * io.c (io_fwrite): allocate frozen str only when str is not converted. + +Tue Dec 31 15:44:48 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/mkmf.rb (RbConfig): expand RUBY_SO_NAME for extensions + backward compatibility. [ruby-core:59426] [Bug #9329] + +Mon Dec 30 23:33:07 2013 Ayumu AIZAWA <ayumu.aizawa@gmail.com> + + * variable.c: [DOC] adding extra example in docs. + patched by Steve Klabnik. [Bug #9210] + +Mon Dec 30 18:34:18 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * encoding.c (must_encindex, rb_enc_from_index, rb_obj_encoding): mask + encoding index and ignore dummy flags. [ruby-core:59354] [Bug #9314] + +Mon Dec 30 16:11:52 2013 WATANABE Hirofumi <eban@ruby-lang.org> + + * tool/make-snapshot: needs CXXFLAGS. [ruby-core:59393][Bug #9320] + +Sun Dec 29 18:36:54 2013 Shota Fukumori <her@sorah.jp> + + * lib/mkmf.rb (configuration): Make CXXFLAGS customizable. + Patch by Kohei Suzuki (eagletmt). [Fixes GH-492] + +Sun Dec 29 12:11:11 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (mnew_from_me): keep iclass as-is, to make inheritance + chain consistent. [ruby-core:59358] [Bug #9315] + + * proc.c (method_owner): return the original defined_class from + prepended iclass, instead. + +Sun Dec 29 08:47:24 2013 Lucas Allan Amorim <lucas.allan@gmail.com> + + * test/ruby/test_sprintf.rb (test_hash): Added tests for sprintf + with a hash as parameter. [Fixes GH-491] + +Sun Dec 29 07:27:51 2013 Benoit Daloze <eregontp@gmail.com> + + * compar.c (cmp_eq_recursive): Fix the return value, the value for + failed #<=> should be nil. It was raising a NoMethodError for + the test case TestComparable#test_no_cmp (undefined method `>' + for false:FalseClass). Yet one more reason for #7688. + +Sat Dec 28 22:21:59 2013 Benoit Daloze <eregontp@gmail.com> + + * object.c (Kernel#<=>) surround Comparable operators with <code> tags. + The #== method was hidden in ri/rdoc's output and was highlighting + the line instead. + +Sat Dec 28 17:24:00 2013 DV Suresh <e@dvsuresh.me> + + * benchmark/bm_so_meteor_contest.rb: [DOC] Fix a few typos + * ext/fiddle/lib/fiddle/import.rb: ditto + * ext/psych/lib/psych.rb: ditto + * ext/psych/lib/psych/nodes/sequence.rb: ditto + * ext/tk/lib/multi-tk.rb: ditto + * ext/tk/lib/tcltk.rb: ditto + +Sat Dec 28 00:42:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (local_push_gen, local_pop_gen): save cmdarg_stack to + isolate command argument state from outer scope. + [ruby-core:59342] [Bug #9308] + +Fri Dec 27 13:25:03 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/{setup.mak,Makefile.sub}: update fake.rb like + template/fake.rb.in. + +Thu Dec 26 16:10:41 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/Makefile.sub (fake.rb): should depend on version.h because + if RUBY_VERSION is updated, fake.rb need to say the new version + to avoid install error in rbconfig.rb. + +Thu Dec 26 14:25:03 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (HASH_REJECT_COPY_EXTRA_STATES): turn off the old + behavior, copying extra states by accident. + +Thu Dec 26 10:49:14 2013 Yukihiro Matsumoto <matz@ruby-lang.org> + + * version.h (RUBY_VERSION): 2.2.0 development has started. + +Thu Dec 26 10:27:53 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/merger.rb (tag): support 2.1.1 semi-automatic tagging and 2.2.0 + explicit tagging. + +Thu Dec 26 06:35:25 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * proc.c: Having any mandatory keyword argument increases min arity + [#9299] + +Thu Dec 26 06:27:08 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * proc.c: Having optional keyword arguments makes maximum arity +1, + not unlimited [#8072] + +Thu Dec 26 01:09:57 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/release.sh: make symbolic links. + +Thu Dec 26 00:45:33 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/make-snapshot: support new version scheme. + +Wed Dec 25 22:44:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (iseq_set_arguments): set arg_keyword_check from + nd_cflag, which is set by parser. internal ID is used for + unnamed keyword rest argument, which should be separated from no + keyword check. + + * iseq.c (rb_iseq_parameters): if no keyword check, keyword rest is + present. + + * parse.y (new_args_tail_gen): set keywords check to nd_cflag, which + equals to that keyword rest is not present. + +Wed Dec 25 22:32:19 2013 Zachary Scott <e@zzak.io> + + * lib/abbrev.rb: [DOC] rdoc format patch by Giorgos Tsiftsis [Bug #9146] + +Wed Dec 25 20:30:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * iseq.c (rb_iseq_parameters): push argument type symbol only for + unnamed rest keywords argument. + +Wed Dec 25 20:28:48 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (rb_iseq_min_max_arity): maximum argument is unlimited if + having rest keywords argument. [ruby-core:53298] [Bug #8072] + +Wed Dec 25 18:29:22 2013 Koichi Sasada <ko1@atdot.net> + + * vm_insnhelper.c (argument_error): insert dummy frame to make + a backtrace object intead of modify backtrace string array. + [Bug #9295] + + * test/ruby/test_backtrace.rb: add a test for this patch. + fix test to compare a result of Exception#backtrace with + a result of Exception#backtrace_locations. + +Wed Dec 25 13:00:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in: let mingw do something black-magic, and check if + _gmtime64_s() is available actually. + + * win32/win32.c (gmtime_s, localtime_s): use _gmtime64_s() and + _localtime64_s() if available, not depending on very confusing + mingw variants macros. based on the patch by phasis68 (Heesob + Park) at [ruby-core:58764]. [ruby-core:58391] [Bug #9119] + +Wed Dec 25 12:33:41 2013 Yusuke Endoh <mame@tsg.ne.jp> + + * sample/trick2013/: added the award-winning entries of TRICK 2013. + See https://github.com/tric/trick2013 for the contest outline. + (Matz has approved the attachment.) + +Wed Dec 25 10:42:02 2013 Yamashita Yuu <yamashita@geishatokyo.com> + + * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Declare a constant + `OP_MSIE_SSLV2_RSA_PADDING` only if the macro is defined. The + `SSL_OP_MSIE_SSLV2_RSA_PADDING` has been removed from latest + snapshot of OpenSSL 1.0.1. [Fixes GH-488] + +Wed Dec 25 01:03:00 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (bind_local_variables): allowing binding to list its + local variables. patch by Jack Danger Canty <jackdanger AT + squareup.com> at [ruby-core:56543]. [Feature #8773] + +Tue Dec 24 23:20:38 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/fileutils/fileasserts.rb (assert_ownership_user): new + assertion for user ownership. + + * test/fileutils/test_fileutils.rb (test_chown_error), + (test_chown_without_permission, test_chown_with_root): + based on the patch by vajrasky (Vajrasky Kok) at + [ruby-core:59298]. [Feature #9292] + +Tue Dec 24 16:28:05 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * proc.c (rb_mod_define_method): consider visibility only if self + in the caller is same as the receiver, otherwise make public as + well as old behavior. [ruby-core:57747] [Bug #9005] + [ruby-core:58497] [Bug #9141] + + * vm.c (rb_vm_cref_in_context): return ruby level cref if self is + same. + +Tue Dec 24 14:13:14 2013 Koichi Sasada <ko1@atdot.net> + + * README.EXT: add a refer to URL. + +Tue Dec 24 13:48:45 2013 Koichi Sasada <ko1@atdot.net> + + * README.EXT: add a document about RGenGC. + Reviewed by havenwood. + [misc #8962] + + * README.EXT.ja: ditto. + +Tue Dec 24 12:11:43 2013 Koichi Sasada <ko1@atdot.net> + + * include/ruby/ruby.h (RARRAY_ASET): try to avoid compiler warning. + [Bug #9287] + +Tue Dec 24 05:04:56 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * test/fileutils/test_fileutils.rb (setup): should not call + Process.groups for Windows. get rid of many errors introduced by + r44364. + +Mon Dec 23 18:37:16 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * test/fileutils/fileasserts.rb (assert_ownership_group): new + assertion for group ownership. + + * test/fileutils/test_fileutils.rb (test_chown{,_verbose,_noop}): + based on the patch by vajrasky (Vajrasky Kok) at + [ruby-core:59281]. [Feature #9286] + +Mon Dec 23 15:53:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * hash.c (HAS_EXTRA_STATES): warn extra states only when something + differ. [ruby-core:59254] [Bug #9275] + +Mon Dec 23 12:42:13 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> + + * array.c: Have to_h raise on elements that are not key-value pairs + [#9239] + + * enum.c: ditto + +Mon Dec 23 05:01:55 2013 Zachary Scott <e@zzak.io> + + * doc/syntax/methods.rdoc: [DOC] Added example for underscore + conventions in method names. Also added doc to clarify encoding + character set support for Ruby programs and elaborated on defining + predicate and bang methods. Based on a patch by @gaurish + [Fixes GH-477] https://github.com/ruby/ruby/pull/477 + +Mon Dec 23 03:18:09 2013 Zachary Scott <e@zzak.io> + + * doc/ChangeLog-1.9.3: [DOC] Fix typos by @dvsuresh + [Fixes GH-485] https://github.com/ruby/ruby/pull/485 + * ext/openssl/ossl_config.c: ditto + * lib/rss/utils.rb, lib/time.rb: ditto + * test/ruby/envutil.rb: ditto + +Sun Dec 22 23:56:56 2013 Zachary Scott <e@zzak.io> + + * lib/{rake,rdoc,rss}/*, test/rexml/test_listener.rb: [DOC] Fix typos + by @dvsuresh [Fixes GH-486] https://github.com/ruby/ruby/pull/486 + +Sun Dec 22 11:08:47 2013 Eric Hodel <drbrain@segment7.net> + + * test/rubygems/test_gem_ext_builder.rb: Fix warning due to ambiguous + expression. + +Sun Dec 22 11:05:53 2013 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems/commands/install_command.rb: Restore gem install + --ignore-dependencies for remote gems + * test/rubygems/test_gem_commands_install_command.rb: Test for the + above. + +Sun Dec 22 10:23:40 2013 Eric Hodel <drbrain@segment7.net> + + * lib/rdoc.rb: Set RDoc to release version. + +Sun Dec 22 10:19:07 2013 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems.rb: Set RubyGems to release version. + +Sun Dec 22 10:16:08 2013 Eric Hodel <drbrain@segment7.net> + + * lib/rubygems.rb (module Gem): Fix comment for + Gem::load_path_insert_index. + +Sun Dec 22 04:07:55 2013 Koichi Sasada <ko1@atdot.net> + + * gc.c (ruby_gc_set_params): don't show obsolete warnings for + RUBY_FREE_MIN/RUBY_HEAP_MIN_SLOTS if + RUBY_GC_HEAP_FREE_SLOTS/RUBY_GC_HEAP_INIT_SLOTS are given. + [Bug #9276] + +Sat Dec 21 13:00:20 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * file.c: remove unnecessary the source path from EEXIST error + messages and show the destination path only. [ruby-core:59202] + [Feature #9263] + +Sat Dec 21 12:37:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/resolv.rb (Resolv::Hosts#lazy_initialize): should not + consider encodings in hosts file. [ruby-core:59239] [Bug #9273] + + * lib/resolv.rb (Resolv::Config.parse_resolv_conf): ditto. + +Sat Dec 21 05:43:27 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * tool/make-snapshot: replace RUBY_PATCHLEVEL_STR in version.h to + show users that this ruby is a preview/rc version. + +Sat Dec 21 05:03:49 2013 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/Makefile.sub (fake.rb): fixed wrong RUBY_PLATFORM, to correctly + install win32.h. + [ruby-core:58801][Bug #9199] reported by arton. + +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 () + (let* ((time (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 |