Sat Jul 23 21:14:00 2011 Tadayoshi Funaba * lib/cmath.rb: 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