Tue Jan 7 12:43:06 2014 Nobuyoshi Nakada * 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 * 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 * 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 * 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 * .gitignore: ignore *-fake.rb generated even when CROSS_COMPILING = no since r42862. Sun Jan 5 20:14:14 2014 Benoit Daloze * 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 * 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 * 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 * 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 * vm.c (RubyVM::OPTS): get rid of a garbage character. Sat Jan 4 10:17:54 2014 Eric Hodel * lib/rinda/ring.rb (Rinda::RingFinger#make_socket): Use ipv4_multicast_ttl option for portability. Sat Jan 4 10:15:47 2014 Eric Hodel * 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 * 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 * 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 * 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 * io.c (io_fwrite): freeze converted str. Thu Jan 2 04:15:13 2014 Nobuyoshi Nakada * 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 * 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 * array.c (rb_ary_zip): use ALLOCV_N() instead of ALLOCA_N(). Thu Jan 2 00:04:29 2014 Masaki Matsushita * 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 * 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 * configure.in: use SSE2 instructions for drop unexpected precisions. [ruby-core:54738] [Bug #8358] Tue Dec 31 23:49:07 2013 Nobuyoshi Nakada * 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 * 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 * io.c (io_fwrite): allocate frozen str only when str is not converted. Tue Dec 31 15:44:48 2013 Nobuyoshi Nakada * 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 * variable.c: [DOC] adding extra example in docs. patched by Steve Klabnik. [Bug #9210] Mon Dec 30 18:34:18 2013 Nobuyoshi Nakada * 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 * tool/make-snapshot: needs CXXFLAGS. [ruby-core:59393][Bug #9320] Sun Dec 29 18:36:54 2013 Shota Fukumori * lib/mkmf.rb (configuration): Make CXXFLAGS customizable. Patch by Kohei Suzuki (eagletmt). [Fixes GH-492] Sun Dec 29 12:11:11 2013 Nobuyoshi Nakada * 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 * 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 * 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 * object.c (Kernel#<=>) surround Comparable operators with 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 * 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 * 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 * win32/{setup.mak,Makefile.sub}: update fake.rb like template/fake.rb.in. Thu Dec 26 16:10:41 2013 NAKAMURA Usaku * 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 * 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 * version.h (RUBY_VERSION): 2.2.0 development has started. Thu Dec 26 10:27:53 2013 NAKAMURA Usaku * 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 * proc.c: Having any mandatory keyword argument increases min arity [#9299] Thu Dec 26 06:27:08 2013 Marc-Andre Lafortune * proc.c: Having optional keyword arguments makes maximum arity +1, not unlimited [#8072] Thu Dec 26 01:09:57 2013 NAKAMURA Usaku * tool/release.sh: make symbolic links. Thu Dec 26 00:45:33 2013 NAKAMURA Usaku * tool/make-snapshot: support new version scheme. Wed Dec 25 22:44:14 2013 Nobuyoshi Nakada * 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 * lib/abbrev.rb: [DOC] rdoc format patch by Giorgos Tsiftsis [Bug #9146] Wed Dec 25 20:30:10 2013 Nobuyoshi Nakada * iseq.c (rb_iseq_parameters): push argument type symbol only for unnamed rest keywords argument. Wed Dec 25 20:28:48 2013 Nobuyoshi Nakada * 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 * 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 * 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 * 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 * 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 * proc.c (bind_local_variables): allowing binding to list its local variables. patch by Jack Danger Canty at [ruby-core:56543]. [Feature #8773] Tue Dec 24 23:20:38 2013 Nobuyoshi Nakada * 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 * 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 * README.EXT: add a refer to URL. Tue Dec 24 13:48:45 2013 Koichi Sasada * 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 * include/ruby/ruby.h (RARRAY_ASET): try to avoid compiler warning. [Bug #9287] Tue Dec 24 05:04:56 2013 NAKAMURA Usaku * 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 * 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 * 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 * 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 * 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 * 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 * 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 * test/rubygems/test_gem_ext_builder.rb: Fix warning due to ambiguous expression. Sun Dec 22 11:05:53 2013 Eric Hodel * 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 * lib/rdoc.rb: Set RDoc to release version. Sun Dec 22 10:19:07 2013 Eric Hodel * lib/rubygems.rb: Set RubyGems to release version. Sun Dec 22 10:16:08 2013 Eric Hodel * lib/rubygems.rb (module Gem): Fix comment for Gem::load_path_insert_index. Sun Dec 22 04:07:55 2013 Koichi Sasada * 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 * 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 * 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 * 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 * 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