Sun Aug 7 15:37:35 2011 NARUSE, Yui * ext/digest/sha2/sha2ossl.c: use original SHA384_Final on DragonFly. Sun Aug 7 14:08:16 2011 Kazuki Tsujimoto * ext/objspace/objspace.c: fix typos in a document. Sun Aug 7 07:14:57 2011 NARUSE, Yui * cont.c (HAVE_GETCONTEXT): see getcontext(3) because DragonFly BSD x64 port doesn't have it. Sun Aug 7 00:42:55 2011 NARUSE, Yui * ext/tk/lib/tk/wm.rb (Tk::Wm.command): Add the missing receiver before calling epath. patched by flori https://github.com/flori/ruby/commit/aa9474d32e5f2c57f8b0e2e0c528a03f06a4d433 Sat Aug 6 07:06:34 2011 Eric Hodel * marshal.c (w_object): Fix exception message when _dump_data is not defined on a T_DATA object. Fri Aug 5 22:16:20 2011 Naohisa Goto * numeric.c (rb_infinity, rb_nan): use WORDS_BIGENDIAN to get endian. fix [Bug #5160] [ruby-dev:44356] Fri Aug 5 17:14:11 2011 Akinori MUSHA * test/test_syslog.rb (TestSyslog#test_log): Do not be too specific about the log line format. Fixes #5081. Fri Aug 5 15:57:10 2011 Naohisa Goto * complex.c (f_signbit): fix compile error in gcc4 on Solaris with CFLAGS="-std=gnu99". [ruby-dev:44355] fix [Bug #5159] * math.c: ditto. Fri Aug 5 15:55:33 2011 Nobuyoshi Nakada * test/ruby/test_object.rb: tests that respond_to? returns false. Fri Aug 5 13:32:43 2011 Shugo Maeda * lib/xmlrpc/client.rb, lib/xmlrpc/server.rb: should use String#bytesize instead of String#size. Fri Aug 5 12:18:20 2011 Nobuyoshi Nakada * vm_eval.c (check_funcall): try respond_to? first if redefined. [Bug #5158] Fri Aug 05 09:48:22 2011 Eric Hodel * lib/rubygems: Import RubyGems 1.8.7: Added missing require for `gem uninstall --format-executable`. The correct name of the executable being uninstalled is now displayed with --format-executable. Fixed `gem unpack uninstalled_gem` default version picker. RubyGems no longer claims a nonexistent gem can be uninstalled. `gem which` no longer claims directories are requirable files. `gem cleanup` continues cleaning up gems if one can't be uninstalled due to permissions. Issue #82. Gem repository directories are no longer created world-writable. Patch by Sakuro OZAWA. [Ruby 1.9 - Bug #4930] Fri Aug 5 07:00:31 2011 Nobuyoshi Nakada * test/io/console/test_io_console.rb (test_noctty): daemon() on Fedora Rawhide seems not to detach the controlling terminal, when the argument noclose is non-zero. ref: [Bug #5135] Thu Aug 4 23:48:00 2011 Kenta Murata * thread_pthread.c (native_cond_signal): retry to call pthread_cond_signal and pthread_cond_broadcast if they return EAGAIN in native_cond_signal and native_cond_broadcast, respectively. It is for the pthread implementation of Mac OS X 10.7 (Lion). fixes #5155. [ruby-dev:44342]. * thread_pthread.c (native_cond_broadcast): ditto. * thread_pthread.c (struct cached_thread_entry): stop using pthread_cond_t and its functions directly. * thread_pthread.c (register_cached_thread_and_wait): ditto. * thread_pthread.c (use_cached_thread): ditto. Thu Aug 4 20:29:41 2011 Naohisa Goto * configure.in: when Solaris cc, use $(CC) to link shared libs. Thu Aug 4 20:19:11 2011 KOSAKI Motohiro * error.c (report_bug): use a small message buffer instead of BUFSIZ. It is needed for avoiding nested SIGSEGV on Linux. Note: BUFSIZ is not proper buffer size. It's unrelated with maximum filename length. :-/ [Bug #5139] [ruby-dev:44315] Thu Aug 4 16:08:45 2011 Nobuyoshi Nakada * tool/rbinstall.rb (gem): install all gemspecs under lib and ext. * tool/rbinstall.rb (Gem::Specification): may not be defined when cross-compiling and BASERUBY is 1.8. Thu Aug 4 11:30:36 2011 NARUSE, Yui * include/ruby/missing.h: define __syscall on OpenBSD as r32702. Thu Aug 4 03:02:54 2011 Aaron Patterson * tool/rbinstall.rb: use rubygems to load gemspecs, copy actual gemspecs on install rather than generate fake ones for all gems. Thu Aug 4 02:45:10 2011 Kenta Murata * configure.in: set CXX variable to the C++ compiler that matches the C compiler specified by CC variable (e.g. use g++-4.2 for gcc-4.2). Thu Aug 4 02:21:10 2011 Nobuyoshi Nakada * lib/mkmf.rb (link_command): use static library only for bundled extensions. [Bug #5147] Thu Aug 4 02:02:10 2011 Aaron Patterson * ext/psych/psych.gemspec: installing psych as a gem. Wed Aug 3 16:01:35 2011 NAKAMURA Usaku * util.c, include/ruby/util.h (ruby_add_suffix): remove the function. [Bug #5153] [ruby-core:38736] * io.c (argf_next_argv): remove the call of above function. * ext/-test-/add_suffix, test/-ext-/test_add_suffix.rb: remove the test extension module because this is only for testsing ruby_add_suffix(). * LEGAL: remove the mention about a part of util.c, because now we removed the part. * io.c (argf_next_argv): now the new filename is not guranteed to use, so should check the return value of rename(2). * test/ruby/test_argf.rb (TestArgf#test_inplace_rename_impossible): now we expect same result with other platforms on no_safe_rename platforms (=Windows). Wed Aug 3 09:18:08 2011 URABE Shyouhei * test/xmlrpc/webrick_testing.rb (WEBrick_Testing#start_server): Like r32795, bind address should be specified. Wed Aug 3 07:46:30 2011 Nobuyoshi Nakada * encoding.c (enc_find): mistakenly remained !. [Bug #5150] Wed Aug 3 00:11:08 2011 Tanaka Akira * lib/prettyprint.rb: update document. [ruby-core:36776] Tue Aug 2 22:04:46 2011 NARUSE, Yui * gc.c (init_heap): allocate sigaltstack after heaps are allocated. [ruby-dev:44315] [Bug #5139] * vm.c (thread_free): use free because objspace is not ready. * vm.c (th_init): use malloc because objspace is not ready. Tue Aug 2 20:10:16 2011 Shota Fukumori * test/testunit/test_parallel.rb: pass "--ruby" option to test/testunit/tests_for_parallel/runner.rb. [Bug #5132] [ruby-dev:44303] Tue Aug 2 15:53:37 2011 NARUSE, Yui * encoding.c (str_to_encoding): rename from to_encoding and use str_to_encindex. * encoding.c (str_to_encindex): split from to_encoding. * encoding.c (rb_to_encoding): use str_to_encoding. * encoding.c (rb_obj_encoding): don't bypass rb_encoding*. If it uses rb_encoding*, it bypass encindex. If it uses encindex, it doesn't bypass. * encoding.c (enc_find): add shortcut for encoding object, use str_to_encindex, and avoid bypass rb_encoding*. Tue Aug 2 12:03:16 2011 Nobuyoshi Nakada * hash.c (recursive_hash): hash value of emptied hash should be equal to an empty hash. [ruby-core:38650] Tue Aug 2 11:42:15 2011 Nobuyoshi Nakada * parse.y (rb_enc_symname2_p): :! is valid symbol. [Bug #5136] Tue Aug 2 07:33:29 2011 URABE Shyouhei * test/net/http/test_http.rb (TestNetHTTP_version_1_1_methods#test_timeout_during_HTTP_session): If you connect to localhost, you should listen localhost. * test/net/http/test_https.rb (TestNetHTTPS#test_timeout_during_SSL_handshake): ditto. Tue Aug 2 06:18:15 2011 Luis Lavena * lib/rubygems/installer.rb (class Gem): Correct path check on Windows Possible fix for [Ruby 1.9 - Bug #5111] * test/rubygems/test_gem_installer.rb (load Gem): ditto Mon Aug 1 20:12:03 2011 NAKAMURA Usaku * test/ruby/test_process.rb (TestProcess#windows?): new method. * test/ruby/test_process.rb (TestProcess#*): use above method. * test/ruby/test_process.rb (TestProcess#test_execopts_redirect): windows doesn't support FD_CLOEXEC. Mon Aug 01 15:45:23 2011 Eric Hodel * test/rake/test_rake_functional.rb: Don't assume the binary name of ruby is "ruby". [Ruby 1.9 - Bug #5114] * test/rake/helper.rb: ditto Mon Aug 1 15:31:14 2011 URABE Shyouhei * test/io/console/test_io_console.rb (TestIO_Console#test_sync): Skip when PTY allocation failed (that's not our fault). Mon Aug 1 15:04:12 2011 URABE Shyouhei * test/xmlrpc/test_webrick_server.rb (Test_Webrick#setup_http_server): XMLRPC::Client.new3(), when called without host: argument, tries to connect to a host where "localhost" resolves to. On the other hand a WEBrick::HTTPServer.new(), when called without BindAddress: argument, tries to listen all the address where getaddrinfo(AF_UNSPEC) resolves to. This is a mismatch because "localhost" might not resolve to one of those listening sockets. We would better explicitly specify "localhost" here and if failed, just skip the whole test. Mon Aug 01 14:24:56 2011 Eric Hodel * lib/rdoc.rb: Import RDoc 3.9.1. Fixes bugs in the RDoc::Markup parser. Mon Aug 1 12:00:35 2011 NARUSE, Yui * insns.def (concatstrings): don't use initial ASCII-8BIT string. [ruby-core:38635] [Bug #5126] Sun Jul 31 22:57:16 2011 Yuki Sonoda (Yugui) * enc/Makefile.in (ECHO1): Same as the recent fix in common.mk. ":" in a make variable replacement cause a syntax error with /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead. Sun Jul 31 21:16:02 2011 Yuki Sonoda (Yugui) * complex.c (f_signbit): gcc4 on Solaris DOES have signbit but does not have it on header. * math.c: ditto. Sun Jul 31 21:09:04 2011 Yuki Sonoda (Yugui) * common.mk (node_name.inc): Use $(Q) for consistency. * Makefile.in (INSNS): ditto. Sun Jul 31 21:19:51 2011 Yuki Sonoda (Yugui) * lib/mkmf.rb (configuration:ECHO1): Same as the recent fix in common.mk. ":" in a make variable replacement cause a syntax error with /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead. Sun Jul 31 20:39:12 2011 Yuki Sonoda (Yugui) * common.mk (ECHO1): nmake does not allow parenthesis in make variable replacement. Sun Jul 31 23:06:57 2011 Kazuki Tsujimoto * vm.c (check_env): print debug messages to stderr. [Feature #4871] [ruby-dev:43743] Sun Jul 31 22:50:23 2011 Kazuki Tsujimoto * vm.c (vm_make_env_each): don't save prev env value. It is no longer used. [Feature #4871] [ruby-dev:43743] * vm.c (check_env): changed accordingly. Sun Jul 31 20:21:36 2011 "Yuki Sonoda (Yugui)" * common.mk (ECHO1): ":" in a make variable replacement cause a syntax error with /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead. * configure.in (NULLCMD): new check. * Makefile.in (NULLCMD): Reflects checking in configure. * win32/Makefile.sub (NULLCMD): new assignment. Sun Jul 31 18:58:59 2011 Nobuyoshi Nakada * io.c (rb_pipe): pipe on cygwin can succeed half but fail half. Sun Jul 31 11:31:07 2011 Kazuki Tsujimoto * vm.c: check if cfp is valid. [Bug #5083] [ruby-dev:44208] Sun Jul 31 09:18:28 2011 Eric Hodel * lib/rdoc: Update to RDoc 3.9. Fixed `ri []`, stopdoc creating an object reference, nodoc for class aliases, verbatim === lines. Sun Jul 31 01:29:08 2011 NARUSE, Yui * io.c (rb_io_each_byte): remove unused variable e. Sat Jul 31 01:23:45 2011 Kenta Murata * test/bigdecimal/test_bigdecimal.rb (test_version): removed. Sat Jul 30 23:19:09 2011 Nobuyoshi Nakada * defs/default_gems: separate from tool/rbinstall.rb. Sat Jul 30 23:14:44 2011 Nobuyoshi Nakada * io.c (rb_io_each_byte): rbuf can be refreshed during yield. [Bug #5119] Sat Jul 30 22:35:50 2011 Naohisa Goto * strftime.c (NEEDS): avoid SEGV due to integer overflow in sparc-solaris2.10 and i686-linux. fix [Bug #4456] [ruby-dev:43284] Sat Jul 30 17:26:26 2011 Masaki Suketa * test/win32ole/test_win32ole_variant.rb: use skip method to skip the test. * test/win32ole/test_win32ole_variant_outarg.rb: ditto. Sat Jul 30 14:27:00 2011 Kenta Murata * ext/bigdecimal/bigdecimal.c (BigDecimal_version): version 1.1.0. * ext/bigdecimal/bigdecimal.gemspec: turn into a default gem. * tool/rbinstall.rb: ditto. Sat Jul 30 11:21:55 2011 KOSAKI Motohiro * vm_core.h (ALT_STACK_SIZE): use MINSIGSTKSZ*2 instead of SIGSTKSZ*2. [ruby-core:38607] Sat Jul 30 10:39:14 2011 KOSAKI Motohiro * vm.c (th_init): preallocate alternative stack. NoMemoryError is better than rb_bug, of course. Patch by Eric Wong. [ruby-core:38572][ruby-core:38594]. * signal.c (rb_register_sigaltstack): ditto. * vm_core.h: moved ALT_STACK_SIZE definition from signal.c. * vm.c (thread_free): use xfree() instead of free(). Sat Jul 30 07:20:49 2011 Tanaka Akira * ext/socket/lib/socket.rb (udp_server_sockets): unused variable removed. patch by Jeremy Evans. [ruby-core:38600] Fri Jul 29 23:56:32 2011 Tanaka Akira * lib/securerandom.rb: call OpenSSL::Random.seed at the SecureRandom.random_bytes call. based on the patch by Masahiro Tomita. [ruby-dev:44270] Fri Jul 29 23:53:48 2011 Nobuyoshi Nakada * array.c (rb_ary_set_len): new function to set array length. * vm_eval.c (method_missing): set the length of argv array, to mark arguments. * vm_eval.c (rb_apply): get rid of too large alloca. Fri Jul 29 20:48:39 2011 Tanaka Akira * ext/socket/mkconstants.rb: fix typos. Fri Jul 29 20:28:56 2011 Tanaka Akira * ext/socket/mkconstants.rb: use whitespaces as a separator. Fri Jul 29 18:59:07 2011 Tanaka Akira * ext/socket/mkconstants.rb: add documents for constants. patch by Eric Hodel. [ruby-core:37853] [Bug #4989] Fri Jul 29 16:00:43 2011 NARUSE, Yui * configure.in (enable_pthread): use -pthread on OpenBSD without explicit option. patched by Jeremy Evans. [ruby-core:38572] Thu Jul 28 23:36:28 2011 CHIKANAGA Tomoyuki * ext/fiddle/closure.c (callback): use rb_ary_tmp_new() instead of xmalloc() to allocate an array for arguments of callback procedure, to prevent arguments from being swept by GC. [ruby-core:38546] [Bug #4929] Thu Jul 28 22:36:06 2011 Hiroshi Nakamura * ext/openssl/ossl_cipher.c (ossl_cipher_initialize): Avoid possible SEGV from AES encryption/decryption. Processing data by Cipher#update without initializing key (meaningless usage of Cipher object since we don't offer a way to export a key) could cause SEGV. In OpenSSL, the EVP which has EVP_CIPH_RAND_KEY flag (such as DES3) allows uninitialized key, but other EVPs (such as AES) does not allow it. Calling EVP_CipherUpdate() without initializing key causes SEGV so we set the data filled with "\0" as the key by default. See #2768. * test/openssl/test_cipher.rb: test it. Thu Jul 28 14:25:08 2011 NAKAMURA Usaku * lib/rubygems/user_interaction.rb (Gem::StreamUI#tty?): typo. Thu Jul 28 12:32:53 2011 Nobuyoshi Nakada * ext/dl/callback/mkcallback.rb (gencallback): use PTR2NUM. * ext/dl/cptr.c (rb_dlptr_aref, rb_dlptr_aset): check NULL pointer dereference. * ext/dl/cptr.c (rb_dlptr_s_to_ptr): use rb_check_funcall. * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fix wrapping condition. Thu Jul 28 04:53:31 2011 Eric Hodel * lib/delegate.rb: Move file-level documentation to the appropriate classes. Thu Jul 28 02:15:04 2011 Nobuyoshi Nakada * ext/dl/cfunc.c (dlcfunc_mark), ext/dl/cptr.c (dlptr_mark): workaround to mark wrapped object. this is not a true fix, because [Bug #4929] is caused by the interface design of DL. Thu Jul 28 00:28:15 2011 NARUSE, Yui * test/fileutils/test_fileutils.rb: add OpenBSD case. patched by Jeremy Evans [ruby-core:38530] see #5097 * test/ruby/test_process.rb: ditto. Wed Jul 27 22:46:59 2011 CHIKANAGA Tomoyuki * test/rinda/test_rinda.rb (test_remote_array_and_hash): add local variables to protect objects from GC. [ruby-dev:44253] [Bug #5104] Wed Jul 27 17:55:54 2011 NARUSE, Yui * include/ruby/missing.h: define __syscall if the platform has __syscall in the library but doesn't define it in headers for example Mac OS X. Wed Jul 27 15:39:14 2011 Eric Hodel * object.c: Add usage documentation for BasicObject. Based on patch by Thomas Sawyer. [Ruby 1.9 - Bug #5067] Wed Jul 27 12:24:17 2011 Eric Hodel * lib/rubygems/uninstaller.rb: Add missing require and update messaging to avoid confusion with uninstall --format-executable. [Ruby 1.9 - Bug #4062] Wed Jul 27 09:34:24 2011 Eric Hodel * lib/rubygems: Update to RubyGems 1.8.6.1. Wed Jul 27 09:27:59 2011 Martin Bosslet * test/openssl/test_pkcs12.rb: Add test and intermediate certificates. [ Ruby 1.9 - Feature #3793 ] [ruby-core:32088] Wed Jul 27 01:05:32 2011 Nobuyoshi Nakada * eval_error.c (rb_print_undef_str): new function to raise NameError for undefined method. * load.c (rb_mod_autoload_p), object.c (rb_mod_const_get), variable.c (rb_f_untrace_var, set_const_visibility), vm_method.c (rb_mod_{remove,undef,alias}_method, set_method_visibility): remove inadvertent symbol creation. based on the first patch by Jeremy Evans at [ruby-core:38447]. [Feature #5089] * vm_method.c (obj_respond_to): fix the respond_to_missing? override case. based on the patch by Jeremy Evans at [ruby-core:38417]. [Feature #5072] * parse.y (rb_check_id): make the given name a symbol or a string. based on the second patch by Jeremy Evans at [ruby-core:38447] Wed Jul 27 00:50:00 2011 Kenta Murata * ext/bigdecimal/lib/bigdecimal/util.rb (Rational#to_d): zero or negative precision is error. fixes #5098. [ruby-dev:44210] * test/bigdecimal/test_bigdecimal_util.rb: add test for the above change. Wed Jul 27 00:48:00 2011 Kenta Murata * ext/bigdecimal/lib/bigdecimal/util.rb (Float#to_d): modified for specifying precision. fixes #5098. [ruby-dev:44210] * test/bigdecimal/test_bigdecimal_util.rb: add test for the above change. Wed Jul 27 00:45:00 2011 Kenta Murata * ext/bigdecimal/lib/bigdecimal/util.rb (Integer#to_d): added for symmetry to BigDecimal() function with an Integer. fixes #5098. [ruby-dev:44210] * test/bigdecimal/test_bigdecimal_util.rb: add test for the above change. Wed Jul 27 00:30:00 2011 Kenta Murata * ext/bigdecimal/lib/bigdecimal/util.rb (BigDecimal#to_d): added for adapting other Numeric subclasses. [ruby-dev:44245] * test/bigdecimal/test_bigdecimal_util.rb: test for the above change. Wed Jul 27 00:27:00 2011 Kenta Murata * bigdecimal/bigdecimal.c (VpDup) a new function for duplicating a BigDecimal. * bigdecimal/bigdecimal.c (BigDecimal_new): support generating a new BigDecimal from another BigDecimal using BigDecimal global function or constructor. [ruby-dev:44245] Tue Jul 26 23:33:24 2011 Igor Zubkov * array.c: Fix typo. https://github.com/ruby/ruby/pull/36 Mon Jul 25 23:51:01 2011 Yusuke Endoh * proc.c: pre-allocate the unlinked_method_entry_list_entry struct to avoid memory allocation during GC. based on a patch from Eric Wong. [ruby-core:38498] Mon Jul 25 23:39:33 2011 NAKAMURA Usaku * test/rake/test_rake_directory_task.rb (TestRakeDirectoryTask# test_directory_win32): fixed wrong test. Mon Jul 25 22:36:11 2011 Yusuke Endoh * proc.c (struct METHOD), gc.c (gc_marks), vm_method.c (rb_gc_mark_unlinked_live_method_entries): fix SEGV bug. rb_method_entry_t was free'd even when the method is still on the stack if it is BMETHOD (i.e., Method#call). This is because rb_method_entry_t is embedded in struct METHOD. This commit separates them and marks the live method entries. See [ruby-core:38449] in detail. fix [Bug #5047] [ruby-core:38171] Mon Jul 25 22:14:37 2011 Hiroshi Nakamura * lib/xmlrpc/client.rb: Fix possible HTTP header formatting failure by 'Basic' header. Long username caused the base64 String truncation in HTTP header which is not allowed. See #5046. * test/xmlrpc/test_webrick_server.rb: test it. Mon Jul 25 15:04:33 2011 Hiroshi Nakamura * ext/openssl/lib/openssl.rb: End of transition period introduced by [ruby-dev:38018]. From the next version of 1.9.3, you should use require "openssl" instead of require "openssl/ssl" and require "openssl/x509" Mon Jul 25 13:46:38 2011 Hiroshi Nakamura * ext/openssl/lib/openssl/x509.rb: Cosmetic change: move definition introduced in r30152 to x509-internal.rb. Mon Jul 25 13:09:42 2011 Hiroshi Nakamura * ext/openssl/ossl_ssl.c (ossl_ssl_shutdown): Avoid randomly generated SSLError from SSLSocket just after invoking SSLSocket#close. OpenSSL's SSL_shutdown could try to send alert packet and it might set SSLerr(global error stack) as the result. It causes the next SSL read/write operation to fail by unrelated reason. By design, we're ignoring any error at SSL_shutdown() so we clear global error stack after SSL_shutdown is called. See #5039. Sun Jul 24 20:29:53 2011 Tanaka Akira * ext/socket/extconf.rb: refine the recvmsg test. Sun Jul 24 20:02:31 2011 Tanaka Akira * ext/socket/extconf.rb: fix the recvmsg test. Sun Jul 24 08:42:51 2011 Tanaka Akira * ext/socket/extconf.rb: test recvmsg allocates file descriptors for fd passing even with MSG_PEEK. * ext/socket/ancdata.c: use the above test result. Sun Jul 24 01:04:50 2011 Eric Hodel * lib/rubygems/specification.rb: Restore behavior of Gem::Specification#loaded. [Ruby 1.9 - Bug #5032] Sun Jul 24 00:05:00 2011 Jeremy Evans * error.c (rb_name_error_str): new function to raise NameError with the name string but not ID. * object.c, proc.c, variable.c: more removal of inadvertent symbol creation. [Feature #5079] Sat Jul 23 21:14:00 2011 Tadayoshi Funaba * lib/cmath.rb (cbrt): should return a real number if possible. Sat Jul 23 20:12:52 2011 NARUSE, Yui * test/rake/test_rake_functional.rb (setup): Use __FILE__ for the base directory. Current directory is not the top source directory when the building process runs on other than there. * test/rake/test_rake_rake_test_loader.rb: ditto. * test/rake/test_rake_task_argument_parsing.rb (test_terminal_width_using_hardcoded_80): hardcoded 80 is used when app.unix? is false. Sat Jul 23 20:11:50 2011 Tadayoshi Funaba * ext/date/date_core.c: an issue that is same as [ruby-dev:44071]. * ext/date/date_strftime.c: identical to [ruby-dev:44112]. Sat Jul 23 19:12:53 2011 Masaki Suketa * test/win32ole/test_err_in_callback.rb (test_err_in_callback): skip test if ADODB.connection is not available. Sat Jul 23 15:37:04 2011 NARUSE, Yui * parse.y (rb_enc_symname_type): :$a!, @a! and so on are not valid symbols, so they should be inspected with quotes. Sat Jul 23 17:06:25 2011 Tanaka Akira * io.c (rb_update_max_fd): validate fd. * ext/socket/rubysocket.h (rsock_discard_cmsg_resource): add msg_peek_p argument for the declaration. * ext/socket/ancdata.c (discard_cmsg): add msg_peek_p argument. assume FreeBSD, NetBSD and MacOS X doesn't generate passed fd when MSG_PEEK. (rsock_discard_cmsg_resource): add msg_peek_p argument. (bsock_recvmsg_internal): call rsock_discard_cmsg_resource with msg_peek_p argument. * ext/socket/unixsocket.c (unix_recv_io): call rsock_discard_cmsg_resource with msg_peek_p argument. Sat Jul 23 14:38:28 2011 Eric Hodel * test/rake*: Remove dependencies on flexmock and session gems. [Ruby 1.9 - Bug #4987] Sat Jul 23 12:19:04 2011 Nobuyoshi Nakada * parse.y (rb_check_id): take care of attrset ID created implicitly by local ID. [Bug #5084] * parse.y (rb_check_id): conversion condition was inverse. [Bug #5084] Fri Jul 22 21:46:54 2011 KOSAKI Motohiro * vm_insnhelper.c (vm_call_cfunc): added volatile for a workaround of cfp consistency error problem on OS X 10.7 (Lion). It's suspected llvm optimization bug. [Bug #5074] [ruby-dev:44185] Fri Jul 22 21:18:20 2011 NARUSE, Yui * lib/uri/generic.rb (WFKV_): unroll the loop of regexp. * lib/uri/generic.rb (URI.decode_www_form_component): ditto. Fri Jul 22 21:06:39 2011 Nobuyoshi Nakada * object.c (rb_mod_{const,cvar}_defined, rb_obj_ivar_defined): avoid inadvertent symbol creation in reflection methods. based on a patch by Jeremy Evans at [ruby-core:38367]. [Feature #5072] * vm_method.c (rb_mod_method_defined) (rb_mod_{public,private,protected}_method_defined) (obj_respond_to): ditto. * parse.y (rb_check_id): new function returns already interned ID or 0. Fri Jul 22 20:44:49 2011 Nobuyoshi Nakada * parse.y (rb_is_global_id, rb_is_attrset_id): add missing predicates. Fri Jul 22 20:24:38 2011 Kazuhiro NISHIYAMA * test/ruby/test_object.rb (TestObject#test_respond_to_missing): 2nd argument of respond_to_missing? is not optional. Fri Jul 22 19:05:47 2011 Nobuyoshi Nakada * parse.y (rb_enc_symname2_p): get rid of potential out-of-bound access. Fri Jul 22 13:55:59 2011 Eric Hodel * lib/net/http.rb: Net::HTTP#finish is used to manually close connections. [Ruby 1.9 - Bug #5045] Fri Jul 22 13:51:29 2011 Eric Hodel * ext/readline/readline.c: Add examples for Readline.completion_proc=. [Ruby 1.9 - Bug #5057] Fri Jul 22 13:03:12 2011 Martin Bosslet * ext/openssl/ossl_hmac.c: Revert checking return type of HMAC_Init_ex as it is not compatible with OpenSSL < 1.0.0. Fri Jul 22 12:10:21 2011 Eric Hodel * tool/rbinstall.rb (default gems): Install executables into the fake gem dir for Gem.bin_path. [#4485] Fri Jul 22 11:20:20 2011 Martin Bosslet * ext/openssl/ossl_digest.c: Check return value of EVP_DigestInit_ex. * ext/openssl/ossl_hmac.c: Check return value of HMAC_Init_ex. Thanks, Jared Jennings, for the patch. [ Ruby 1.9 - Bug #4944 ] [ruby-core:37670] Fri Jul 22 09:09:43 2011 Martin Bosslet * ext/openssl/ossl_engine.c: Avoid double free of ENGINE reference. * test/openssl/test_engine.rb: Add a test for it. Thanks to Ippei Obayashi for providing the patch. [ Ruby 1.9 - Bug #5062 ] [ruby-dev:44173] Fri Jul 22 06:37:13 2011 Marc-Andre Lafortune * lib/csv.rb: Do not modify CSV.generate's argument [ruby-core:38356] Thu Jul 21 20:59:59 2011 Tanaka Akira * ext/socket/ancdata.c (discard_cmsg): workaround for MacOS X Lion. Thu Jul 21 20:02:11 2011 Yusuke Endoh * thread.c (set_trace_func, thread_set_trace_func_m): reset tracing state when set_trace_func hook is removed. This is workaround patch to force to reset tracing state that is broken by continuation call. a patch from James M. Lawrence. [Feature #4347] [ruby-core:34998] * test/ruby/test_continuation.rb (class TestContinuation): add a test for above. a patch from James M. Lawrence. Thu Jul 21 19:27:19 2011 Yusuke Endoh * node.c (dump_node): add today's knowledge. "init arguments (m)" and "init arguments (p)" of compile.c indicates a Ruby code that evaluates multiple assignments that is in method or block parameters: def foo((m1,m2), (m3,m4), *r, (p1,p2), (p3,p4)); end The former (init arguments (m)) evaluates the multiple assignments before rest argument, that are (m1,m2) and (m3,m4). The letter (init arguments (p)) does ones after rest argument, that are (p1,p2) and (p3, p4). Thu Jul 21 18:11:07 2011 NARUSE, Yui * enum.c (enum_inject): remove empty line to notify rdoc Enumerable#reduce is alias. patched by milki@github. https://github.com/ruby/ruby/pull/26 Thu Jul 21 17:30:21 2011 NARUSE, Yui * array.c (rb_ary_delete_at_m): use simple array literal in rdoc. patched by samuel tonini. [ruby-core:38310] [Bug #5066] Thu Jul 21 17:14:21 2011 NARUSE, Yui * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#each): Allow HTTP/0.9 request which doesn't has any header or body. patched by Felix Jodoin. [ruby-core:38040] [Bug #5022] Wed Jul 20 23:02:18 2011 Kazuhiro NISHIYAMA * io.c (rb_update_max_fd): remove parentheses. they are not in macro. Wed Jul 20 22:22:23 2011 Tanaka Akira * include/ruby/intern.h (rb_update_max_fd): declaration moved from internal.h. * file.c: ditto. * io.c: call rb_update_max_fd for each new fds. * process.c: ditto. * random.c: ditto. * ruby.c: ditto. * ext/io/console/console.c: ditto. * ext/openssl/ossl_bio.c: ditto. * ext/pty/pty.c: ditto. * ext/socket/init.c: ditto. * ext/socket/socket.c: ditto. * ext/socket/ancdata.c: ditto. * ext/socket/unixsocket.c: ditto. Wed Jul 20 15:16:22 2011 NARUSE, Yui * ext/dl/handle.c (dlhandle_sym): clear previous error with dlerror() before calling dlsym(). [ruby-dev:44091] [Bug #5021] Wed Jul 20 07:16:26 2011 Kazuhiro NISHIYAMA * NEWS: mention Kernel#warn. [ruby-core:38119] [Feature #5029] Tue Jul 19 16:40:45 2011 TAKANO Mitsuhiro (takano32) * cont.c (cont_save_thread): fix missing semicolon. Tue Jul 19 16:25:15 2011 Tanaka Akira * io.c (UPDATE_MAXFD): removed. Tue Jul 19 16:07:45 2011 Tanaka Akira * io.c (rb_update_max_fd): new function. * internal.h (rb_update_max_fd): declare rb_update_max_fd. * thread_pthread.c (rb_thread_create_timer_thread): update max fd when timer thread pipe is created. Mon Jul 18 13:36:47 2011 Aaron Patterson * ext/psych/lib/psych.rb: define a new BadAlias error class. * ext/psych/lib/psych/visitors/to_ruby.rb: raise an exception when deserializing an alias that does not exist. * test/psych/test_merge_keys.rb: corresponding test. Mon Jul 18 00:00:46 2011 Shugo Maeda * ext/curses/curses.c: added the new class Curses::Pad, which supports scrolling. patch by Eric Hodel. [Feature #4896] [ruby-core:37206] Sun Jul 17 16:26:40 2011 Nobuyoshi Nakada * error.c (rb_check_trusted): new function to check an object is trusted. * struct.c (rb_struct_modify), time.c (time_modify): check by the above function to show proper class names. [Bug #5036] Sun Jul 17 15:30:04 2011 Nobuyoshi Nakada * error.c (rb_warn_m): accept multiple args in like puts. rdoc patch by Erik Price at [ruby-core:38119]. [Feature #5029] Sun Jul 17 07:56:31 2011 Martin Bosslet * test/openssl/test_ssl_session.rb: add PEM SSL session without TLS extensions. Use this as the default for the tests to ensure compatibility with OpenSSL 0.9.7. [ Ruby 1.9 - Bug #4961 ] [ruby-core:37726] Sat Jul 16 17:29:20 2011 Nobuyoshi Nakada * configure.in (RUBY_UNIVERSAL_ARCH): restore arch flag. Bug #4977 Sat Jul 16 06:27:51 2011 Marc-Andre Lafortune * lib/uri/common.rb (module): Remove optional parser argument to Kernel#URI [ruby-core:38061] * lib/uri/generic.rb (module): ditto Sat Jul 16 03:19:45 2011 NAKAMURA Usaku * win32/win32.c (is_socket, is_console): add prototypes to fix compile problem with gcc introduced at r32549. reported by Jon Forums. [Bug #5030] [ruby-core:38079] Sat Jul 16 00:55:38 2011 KOSAKI Motohiro * time.c (time_dup): used rb_obj_class() instead of CLASS_OF(). The patch is made by Kazuki Tsujimoto. [Bug #5012] [ruby-dev:44071] * test/ruby/test_time.rb (TestTime#test_getlocal_dont_share_eigenclass): added a new test for eigenclass of time object. Fri Jul 15 19:11:00 2011 Kenta Murata * bignum.c (bigsub_int): add RB_GC_GUARD. This patch is made by Makoto Kishimoto. fixes #4223 [ruby-dev:42907] * bignum.c (bigadd_int): ditto. Fri Jul 15 14:27:53 2011 NAKAMURA Usaku * win32/win32.c, include/ruby/win32.h (rb_w32_io_cancelable_p): renamed from rb_w32_has_cancel_io(). now it takes a parameter as fd to check the fd is console or not, because we cannot cancel console input even if we have cancel_io function. * io.c (WAIT_FD_IN_WIN32): call above function instead of the old one, so now we can kill the thread which calls STDIN.gets. the problem was reported by ko1 via IRC. Fri Jul 15 09:10:41 2011 Hiroshi Nakamura * ext/digest/sha2/sha2.c (SHA256_Update, SHA512_Update): avoid Bus Error caused by unalignment access on Sparc-Solaris (and possibly on other similar environment.) This patch just do memcpy always instead of checking architecture. I see no perf drop on my 64bit env. For more details, see #4320. * test/digest/test_digest.rb: add test for unalignment access. Fri Jul 15 01:51:25 2011 Nobuyoshi Nakada * regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): Power PC does not allow unaligned word access. * st.c (UNALIGNED_WORD_ACCESS): x86_64 allows unaligned word access as well as i386. Thu Jul 14 12:19:34 2011 Hiroshi Nakamura * ext/openssl/ossl.c (ossl_verify_cb): trap the exception from verify callback of SSLContext and X509Store and make the verification fail normally. Raising exception directly from callback causes orphan resources in OpenSSL stack. Patched by Ippei Obayashi. See #4445. * test/openssl/test_ssl.rb (test_exception_in_verify_callback_is_ignored): test it. Tue Jul 12 23:41:49 2011 KOSAKI Motohiro * NEWS: add a description of Signal.trap change. Tue Jul 12 20:02:35 2011 KOSAKI Motohiro * signal.c (reserved_signal_p): reverted a part of r32523. chikanaga noticed trap(:CHLD) has some realworld usecase. * test/ruby/test_signal.rb (TestSignal#test_reserved_signal): ditto. Tue Jul 12 17:12:45 2011 Yukihiro Matsumoto * vm_method.c (rb_add_method): should not call method_added hook for undef operation. [Bug #5015] Tue Jul 12 16:58:44 2011 Shota Fukumori * lib/test/unit.rb(Test::Unit::Options#process_args): Fix bug. Fix process_args didn't return `@option` after r30939. Tue Jul 12 14:07:46 2011 KOSAKI Motohiro * signal.c (install_sighandler): fixed a race. Tue Jul 12 13:49:32 2011 KOSAKI Motohiro * signal.c (sig_trap): don't permit to change a signal handler which the interpreter reserved. * signal.c (reserved_signal_p): ditto. [Bug #2616] [ruby-core:27625] * test/ruby/test_signal.rb (TestSignal#test_reserved_signal): added a test for reserved signal. Tue Jul 12 11:58:28 2011 NAKAMURA Usaku * win32/setup.mak: support x86-amd64 cross compile environment. Mon Jul 11 23:22:28 2011 Yutaka Kanemoto * time.c: can't compile time.c on AIX due to missing declaration for ffs(). It is declared in strings.h on AIX. Mon Jul 11 15:54:24 2011 KOSAKI Motohiro * process.c: removed signal() macro. It's no longer used. Mon Jul 11 15:02:24 2011 NAKAMURA Usaku * numeric.c (rb_num2ull): use FIX2LONG instead of FIX2ULONG. see rb_num2ulong(). fixed the problem of ObjectSpace._id2ref of IL32LLP64 platforms, introduced at r32433. Mon Jul 11 05:38:05 2011 Yutaka Kanemoto * thread_pthread.c (get_stack): need to adjust stack addr for [Bug #1813] on AIX. Mon Jul 11 01:16:27 2011 KOSAKI Motohiro * thread_pthread.c (rb_thread_create_timer_thread): removed rb_disable_interrupt()/rb_enable_interrupt(). * vm_core.h: ditto. * process.c (static void before_exec): ditto. * process.c (static void after_exec): ditto. [Bug #4765] [ruby-dev:43571] * eval_intern.h: removed rb_trap_restore_mask(). * vm_eval.c (rb_throw_obj): ditto. * eval.c (setup_exception): ditto. * signal.c: removed trap_last_mask. * signal.c (trap_restore_mask): removed. * signal.c (init_sigchld): comment clarification why signal block is needed. and removed trap_last_mask operation. * signal.c (trap_ensure): removed trap_last_mask operation. * signal.c (rb_disable_interrupt, rb_enable_interrupt): made static and removed sigdelset(SIGVTALRM) and sigdelset(SIGSEGV). * process.c (rb_syswait): removed implicit signal handler change. Sun Jul 10 23:49:12 2011 Yuki Sonoda (Yugui) * docs/NEWS-1.9.3: moved from NEWS. * docs/ChangeLog-1.9.3: merged ChangeLog for 1.9.3. * NEWS: NEWS for 1.9.4 that describes changes since 1.9.3 * ChangeLog: new ChangeLog for 1.9.4. Sun Jul 10 23:30:52 2011 Yuki Sonoda (Yugui) * version.h (RUBY_VERSION): ruby_1_9_3 branch was forked. 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