[前][次][番号順一覧][スレッド一覧]

ruby-changes:44539

From: naruse <ko1@a...>
Date: Sun, 6 Nov 2016 03:09:44 +0900 (JST)
Subject: [ruby-changes:44539] naruse:r56612 (trunk): Add ChangeLog-2015 as an anchor of new ChangeLog see #12283

naruse	2016-11-06 03:09:36 +0900 (Sun, 06 Nov 2016)

  New Revision: 56612

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=56612

  Log:
    Add ChangeLog-2015 as an anchor of new ChangeLog see #12283

  Added files:
    trunk/doc/ChangeLog-2015
Index: doc/ChangeLog-2015
===================================================================
--- doc/ChangeLog-2015	(revision 0)
+++ doc/ChangeLog-2015	(revision 56612)
@@ -0,0 +1,791 @@ https://github.com/ruby/ruby/blob/trunk/doc/ChangeLog-2015#L1
+------------------------------------------------------------------------
+r53395 | marcandre | 2015-12-31 14:37:21 +0900 (Thu, 31 Dec 2015) | 2 lines
+
+* lib/ostruct.rb: Fix new_ostruct_member to correctly avoid redefinition
+  [#11901]
+------------------------------------------------------------------------
+r53394 | nobu | 2015-12-31 10:49:27 +0900 (Thu, 31 Dec 2015) | 4 lines
+
+test_module.rb: sort constants
+
+* test/ruby/test_module.rb (test_classpath): since r53376, all
+  results of Module#constants should be sorted to compare.
+------------------------------------------------------------------------
+r53393 | nobu | 2015-12-31 10:38:28 +0900 (Thu, 31 Dec 2015) | 4 lines
+
+ruby-additional.el: escape control code
+
+* misc/ruby-additional.el (ruby-encode-unicode): escape control
+  code except for LF.
+------------------------------------------------------------------------
+r53392 | nobu | 2015-12-31 09:39:03 +0900 (Thu, 31 Dec 2015) | 4 lines
+
+ruby-additional.el: encode non-ASCII code only
+
+* misc/ruby-additional.el (ruby-encode-unicode): encode non-ASCII
+  code only, excluding ASCII control code, e.g. \t, \n, etc.
+------------------------------------------------------------------------
+r53391 | naruse | 2015-12-31 04:06:55 +0900 (Thu, 31 Dec 2015) | 1 line
+
+skip if locale is not UTF-8
+------------------------------------------------------------------------
+r53390 | naruse | 2015-12-31 02:47:43 +0900 (Thu, 31 Dec 2015) | 5 lines
+
+* test/ruby/test_module.rb (test_classpath): r53376 may change
+  the order of m.constants.
+  `make TESTS='-v ruby/test_class.rb ruby/test_module.rb' test-all`
+  may fail after that.
+  http://rubyci.s3.amazonaws.com/tk2-243-31075/ruby-trunk/log/20151230T164202Z.log.html.gz
+------------------------------------------------------------------------
+r53389 | svn | 2015-12-31 02:20:50 +0900 (Thu, 31 Dec 2015) | 1 line
+
+* 2015-12-31
+------------------------------------------------------------------------
+r53388 | eregon | 2015-12-31 02:20:28 +0900 (Thu, 31 Dec 2015) | 1 line
+
+* common.mk (help): Fix typo.
+------------------------------------------------------------------------
+r53387 | hsbt | 2015-12-30 20:53:15 +0900 (Wed, 30 Dec 2015) | 2 lines
+
+* lib/net/http/responses.rb: Added new response class for 451 status code.
+* lib/net/http.rb: documentation for HTTPUnavailableForLegalReasons
+------------------------------------------------------------------------
+r53386 | hsbt | 2015-12-30 20:45:52 +0900 (Wed, 30 Dec 2015) | 3 lines
+
+* lib/webrick/httpstatus.rb: Added HTTP 451 Status Code.
+  [fix GH-1167] Patch by @MuhammetDilmac
+  https://tools.ietf.org/html/draft-tbray-http-legally-restricted-status-00
+------------------------------------------------------------------------
+r53385 | hsbt | 2015-12-30 20:26:09 +0900 (Wed, 30 Dec 2015) | 2 lines
+
+* doc/syntax/calling_methods.rdoc: fix old operator for safe navigation
+  operator. [ci skip][fix GH-1182] Patch by @dougo
+------------------------------------------------------------------------
+r53384 | nobu | 2015-12-30 16:43:25 +0900 (Wed, 30 Dec 2015) | 4 lines
+
+Add test for String#ord
+
+* test/ruby/test_string.rb (test_ord): Add test for String#ord.
+  [Fix GH-1181]
+------------------------------------------------------------------------
+r53383 | nobu | 2015-12-30 11:28:59 +0900 (Wed, 30 Dec 2015) | 6 lines
+
+forwardable.rb: adjust backtrace by tail call
+
+* lib/forwardable.rb (def_instance_delegator): adjust backtrace of
+  method body by tail call optimization.  adjusting the delegated
+  target is still done by deleting backtrace.
+* lib/forwardable.rb (def_single_delegator): ditto.
+------------------------------------------------------------------------
+r53382 | nobu | 2015-12-30 11:26:15 +0900 (Wed, 30 Dec 2015) | 3 lines
+
+fix commit miss
+
+* test/test_forwardable.rb: add tests for r53381.
+------------------------------------------------------------------------
+r53381 | nobu | 2015-12-30 11:18:44 +0900 (Wed, 30 Dec 2015) | 71 lines
+
+Forwardable: Fix delegating to 'args' and 'block'
+
+* lib/forwardable.rb (def_instance_delegator) fix delegating to
+  'args' and 'block', clashing with local variables in generated
+  methods.  [ruby-core:72579] [Bug #11916]
+
+* lib/forwardable.rb (def_single_delegator): ditto.
+
+If you have a class that uses Forwardable to delegate a method to
+another object, and the method that returns the delegate object is
+called `args` or `block`, then Forwardable will fail to work.
+
+Here's a simple example:
+
+    class ModelCreator
+      extend Forwardable
+
+      attr_reader :args
+
+      def_delegator :args, :model_name
+
+      def initialize(args)
+        @args = args
+      end
+    end
+
+    ModelCreator.new.model_name
+
+If you run the last line above, then you'll get:
+
+    NoMethodError: undefined method `model_name' for []:Array
+
+This error occurs because `def_delegator` -- as it is written in Ruby --
+uses metaprogramming to add methods to the class that will then delegate
+to the delegate object. So it's as if we had written:
+
+    class ModelCreator
+      extend Forwardable
+
+      attr_reader :args
+
+      def model_name(*args, &block)
+        args.model_name(*args, &block)
+      end
+
+      def initialize(args)
+        @args = args
+      end
+    end
+
+As you can see, `def_delegator` will not only forward the method call
+onto the delegate object, it will also forward any arguments provided as
+well. It is here that the bug arises: it splats all of the arguments
+into a variable which is called `args`, and because of how variable
+scope works in Ruby, it then attempts to call `model_name` on *this*
+variable and *not* our delegate object method.
+
+The fix is to call the delegate object method manually using `__send__`.
+(This assumes, of course, that the given receiver is, in fact, the name
+of a method and not the name of an instance variable, which is also a
+possibility.) We use `__send__` because the delegate object method could
+be private.
+
+So, that looks like this:
+
+    def model_name(*args, &block)
+      __send__(:args).model_name(*args, &block)
+    end
+
+Because `def_delegators` and `delegate` use `def_delegator` internally,
+they also get this fix as well.
+------------------------------------------------------------------------
+r53380 | nobu | 2015-12-30 09:58:58 +0900 (Wed, 30 Dec 2015) | 5 lines
+
+object.c: fix prepend cmp
+
+* object.c (rb_class_inherited_p): search the corresponding
+  ancestor to prepended module from prepending class itself.
+  [ruby-core:72493] [Bug #11878]
+------------------------------------------------------------------------
+r53379 | nobu | 2015-12-30 09:20:03 +0900 (Wed, 30 Dec 2015) | 5 lines
+
+test_io.rb: test for rb_io_modestr_fmode
+
+* test/stringio/test_io.rb (test_flag): add assertion for error when
+  text and binary mode are mixed.
+  [ruby-dev:49465] [Feature #11921]
+------------------------------------------------------------------------
+r53378 | nobu | 2015-12-30 08:44:01 +0900 (Wed, 30 Dec 2015) | 4 lines
+
+test_stringio.rb: test_initialize
+
+* test/stringio/test_stringio.rb (test_initialize): add test for
+  StringIO#initialize.  [ruby-core:72585] [Feature #11920]
+------------------------------------------------------------------------
+r53377 | normal | 2015-12-30 05:21:17 +0900 (Wed, 30 Dec 2015) | 4 lines
+
+ChangeLog: add entry for r53376
+
+Oops :x
+[ruby-core:72112] [Feature #11614]
+------------------------------------------------------------------------
+r53376 | normal | 2015-12-30 05:19:14 +0900 (Wed, 30 Dec 2015) | 40 lines
+
+use id_table for constant tables
+
+valgrind 3.9.0 on x86-64 reports a minor reduction in memory usage
+when loading only RubyGems and RDoc by running: ruby -rrdoc -eexit
+
+before: HEAP SUMMARY:
+    in use at exit: 2,913,448 bytes in 27,394 blocks
+  total heap usage: 48,362 allocs, 20,968 frees, 9,034,621 bytes alloc
+
+after: HEAP SUMMARY:
+    in use at exit: 2,880,056 bytes in 26,712 blocks
+  total heap usage: 47,791 allocs, 21,079 frees, 9,046,507 bytes alloc
+
+* class.c (struct clone_const_arg): adjust for id_table
+  (clone_const): ditto
+  (clone_const_i): ditto
+  (rb_mod_init_copy): ditto
+  (rb_singleton_class_clone_and_attach): ditto
+  (rb_include_class_new): ditto
+  (include_modules_at): ditto
+* constant.h (rb_free_const_table): ditto
+* gc.c (free_const_entry_i): ditto
+  (rb_free_const_table): ditto
+  (obj_memsize_of): ditto
+  (mark_const_entry_i): ditto
+  (mark_const_tbl): ditto
+* internal.h (struct rb_classext_struct): ditto
+* object.c (rb_mod_const_set): resolve class name on assignment
+* variable.c (const_update): replace with const_tbl_update
+  (const_tbl_update): new function
+  (fc_i): adjust for id_table
+  (find_class_path): ditto
+  (autoload_const_set): st_update => const_tbl_update
+  (rb_const_remove): adjust for id_table
+  (sv_i): ditto
+  (rb_local_constants_i): ditto
+  (rb_local_constants): ditto
+  (rb_mod_const_at): ditto
+  (rb_mod_const_set): ditto
+  (rb_const_lookup): ditto
+------------------------------------------------------------------------
+r53375 | nagachika | 2015-12-30 04:26:52 +0900 (Wed, 30 Dec 2015) | 2 lines
+
+* thread_pthread.c (rb_thread_create_timer_thread): destroy attr even
+  if pthread_create() failed.
+------------------------------------------------------------------------
+r53374 | svn | 2015-12-30 03:20:33 +0900 (Wed, 30 Dec 2015) | 1 line
+
+* 2015-12-30
+------------------------------------------------------------------------
+r53373 | normal | 2015-12-30 03:20:27 +0900 (Wed, 30 Dec 2015) | 36 lines
+
+thread_pthread.c (rb_thread_create_timer_thread): fix race
+
+This fixes an occasional [ASYNC BUG] failure in
+bootstraptest/test_fork.rb '[ruby-dev:37934]'
+which tests fork/pthread_create failure by setting
+RLIMIT_NPROC to 1 and triggering EAGAIN on pthread_create
+when attempting to recreate the timer thread.
+
+The problem timeline is as follows:
+
+thread 1                           thread 2
+---------------------------------------------------------------
+rb_thread_create_timer_thread
+setup_communication_pipe
+                                   rb_thread_wakeup_timer_thread_low
+pthread_create fails               pipe looks valid, write!
+CLOSE_INVALIDATE (x4)              EBADF -> ASYNC BUG
+
+The checks in rb_thread_wakeup_timer_thread_low only tried to
+guarantee proper ordering with native_stop_timer_thread, not
+rb_thread_create_timer_thread :x
+
+Now, this should allow rb_thread_create_timer_thread to
+synchronize properly with rb_thread_wakeup_timer_thread_low by
+delaying the validation marking of the timer_thread_pipe until
+we are certain the timer thread is alive.
+
+In this version, rb_thread_wakeup_timer_thread_low becomes a
+noop.  Threading is still completely broken with NPROC==1, but
+there's not much we can do about it beside warn the user.
+We no longer spew a scary [ASYNC BUG] message or dump core
+on them.
+
+* thread_pthread.c (setup_communication_pipe): delay setting owner
+  (rb_thread_create_timer_thread): until thread creation succeeds
+  [ruby-core:72590] [Bug #11922]
+------------------------------------------------------------------------
+r53372 | nobu | 2015-12-29 21:23:04 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+ruby.c: overriding warning options
+
+* ruby.c (proc_options): successive -W option overrides previous
+  warning options.
+------------------------------------------------------------------------
+r53371 | nagachika | 2015-12-29 21:17:21 +0900 (Tue, 29 Dec 2015) | 1 line
+
+* ChangeLog: remove duplicated entries at r53366.
+------------------------------------------------------------------------
+r53370 | nobu | 2015-12-29 19:39:53 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+ruby.c: parse -W option
+
+* ruby.c (proc_options): parse and skip '-W' option and its
+  argument even if ignored.
+------------------------------------------------------------------------
+r53369 | nobu | 2015-12-29 19:12:48 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+ruby.c: command line option over RUBYOPT env
+
+* ruby.c (proc_options): -W command line option should be able to
+  override -w in RUBYOPT environment variable.
+------------------------------------------------------------------------
+r53368 | nobu | 2015-12-29 17:54:18 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+eval.c: warn block for using
+
+* eval.c (ignored_block): warn if a block is given to `using`,
+  which is probably for `Module.new`.
+------------------------------------------------------------------------
+r53367 | nobu | 2015-12-29 17:36:22 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+compile.c: adjust label reference
+
+* compile.c (new_adjust_body): labels referred by adjuststack
+  shoud not be optimized away.
+------------------------------------------------------------------------
+r53366 | nobu | 2015-12-29 12:48:36 +0900 (Tue, 29 Dec 2015) | 5 lines
+
+ostruct.rb: respond_to?
+
+* lib/ostruct.rb (OpenStruct): make respond_to? working on
+  just-allocated objects for workaround of Psych.
+  [ruby-core:72501] [Bug #11884]
+------------------------------------------------------------------------
+r53365 | mrkn | 2015-12-29 10:37:20 +0900 (Tue, 29 Dec 2015) | 5 lines
+
+* test/mkmf/test_have_func.rb (test_have_func):
+  Add assertion to examine the existence of HAVE_RUBY_INIT.
+
+* test/mkmf/test_have_func.rb (test_not_have_func):
+  Add assertion to examine the absence of HAVE_RUBY_INIT.
+------------------------------------------------------------------------
+r53364 | normal | 2015-12-29 06:52:15 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+thread_sync.c: static classes
+
+We do not want to waste space by exposing globals to other
+objects.
+------------------------------------------------------------------------
+r53363 | normal | 2015-12-29 05:31:10 +0900 (Tue, 29 Dec 2015) | 5 lines
+
+Resolv::IPv6.create: avoid modifying frozen string literal
+
+* lib/resolv.rb (Resolv::IPv6.create): avoid modifying frozen
+* test/resolv/test_dns.rb (test_ipv6_create): test for above
+  [Bug #11910] [ruby-core:72559]
+------------------------------------------------------------------------
+r53362 | a_matsuda | 2015-12-29 00:10:25 +0900 (Tue, 29 Dec 2015) | 1 line
+
+:warning: key "accelerator" is duplicated and overwritten in Tk samples
+------------------------------------------------------------------------
+r53361 | a_matsuda | 2015-12-29 00:10:19 +0900 (Tue, 29 Dec 2015) | 1 line
+
+Missing require
+------------------------------------------------------------------------
+r53360 | a_matsuda | 2015-12-29 00:10:10 +0900 (Tue, 29 Dec 2015) | 1 line
+
+parsedate is no more available since 1.9
+------------------------------------------------------------------------
+r53359 | svn | 2015-12-29 00:10:08 +0900 (Tue, 29 Dec 2015) | 1 line
+
+* 2015-12-29
+------------------------------------------------------------------------
+r53358 | a_matsuda | 2015-12-29 00:09:59 +0900 (Tue, 29 Dec 2015) | 4 lines
+
+Convert euc-jp resource file in Tk sample to utf-8
+
+The sample program assumes the file to be encoded in utf-8
+https://github.com/ruby/ruby/blob/02531898987693bd28879c78b3cb660006891186/ext/tk/sample/tkoptdb.rb#L15-L17
+------------------------------------------------------------------------
+r53357 | a_matsuda | 2015-12-29 00:09:51 +0900 (Tue, 29 Dec 2015) | 1 line
+
+Documentation typo
+------------------------------------------------------------------------
+r53356 | kazu | 2015-12-28 16:04:01 +0900 (Mon, 28 Dec 2015) | 1 line
+
+fix a typo [ci skip]
+------------------------------------------------------------------------
+r53355 | nobu | 2015-12-28 15:42:18 +0900 (Mon, 28 Dec 2015) | 4 lines
+
+iseq.c: suppress warnings
+
+* iseq.c (rb_iseq_compile_with_option): suppress "clobbered"
+  warnings by old gcc.
+------------------------------------------------------------------------
+r53354 | nobu | 2015-12-28 14:56:00 +0900 (Mon, 28 Dec 2015) | 4 lines
+
+Add test for String#rstrip!
+
+* test/ruby/test_string.rb (TestString#test_rstrip_bang): Add test
+  for String#rstrip!.  [Fix GH-1176]
+------------------------------------------------------------------------
+r53353 | svn | 2015-12-28 09:19:11 +0900 (Mon, 28 Dec 2015) | 1 line
+
+* 2015-12-28
+------------------------------------------------------------------------
+r53352 | nobu | 2015-12-28 09:18:55 +0900 (Mon, 28 Dec 2015) | 4 lines
+
+Add test for String#lstrip!
+
+* test/ruby/test_string.rb (TestString#test_lstrip_bang): Add test
+  for String#lstrip!.  [Fix GH-1176]
+------------------------------------------------------------------------
+r53351 | svn | 2015-12-27 23:34:16 +0900 (Sun, 27 Dec 2015) | 1 line
+
+* remove trailing spaces.
+------------------------------------------------------------------------
+r53350 | suke | 2015-12-27 23:34:11 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+* ext/win32ole/win32ole.c (ole_variant2val): refactoring.
+
+
+------------------------------------------------------------------------
+r53349 | usa | 2015-12-27 21:24:03 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+* test/ruby/test_process.rb (TestProcess#test_execopts_open_chdir_m17n_path):
+  test for r53346, r53347 and r53348.
+
+------------------------------------------------------------------------
+r53348 | usa | 2015-12-27 21:15:20 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+* process.c (rb_execarg_parent_start1): need to convert the encoding to
+  ospath's one.
+
+------------------------------------------------------------------------
+r53347 | usa | 2015-12-27 21:03:45 +0900 (Sun, 27 Dec 2015) | 2 lines
+
+* process.c (rb_execarg_addopt): need to convert to ospath.
+
+------------------------------------------------------------------------
+r53346 | usa | 2015-12-27 20:54:59 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+* process.c: use rb_w32_uchdir() instead of plain chdir() on Windows.
+  reported by naruse via twitter.
+
+------------------------------------------------------------------------
+r53345 | hsbt | 2015-12-27 20:00:36 +0900 (Sun, 27 Dec 2015) | 1 line
+
+* enc/x_emoji.h: fix dead-link.
+------------------------------------------------------------------------
+r53344 | hsbt | 2015-12-27 19:55:59 +0900 (Sun, 27 Dec 2015) | 1 line
+
+* doc/NEWS-2.3.0: fix a typo.
+------------------------------------------------------------------------
+r53343 | a_matsuda | 2015-12-27 18:59:31 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+Method name typo in a Tk sample
+
+* ext/tk/sample/tkextlib/treectrl/help.rb: kength => length
+------------------------------------------------------------------------
+r53342 | a_matsuda | 2015-12-27 18:59:20 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+ivar name typo in a Tk sample
+
+* ext/tk/sample/tkextlib/treectrl/outlook-newgroup.rb: @Messge => @Message
+------------------------------------------------------------------------
+r53341 | a_matsuda | 2015-12-27 18:59:13 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+Method name typo in a Tk sample
+
+* ext/tk/sample/tktextio.rb: trancate => truncate
+------------------------------------------------------------------------
+r53340 | a_matsuda | 2015-12-27 18:58:58 +0900 (Sun, 27 Dec 2015) | 3 lines
+
+ivar name typo in a Tk sample
+
+* ext/tk/sample/tktextio.rb: @opne => @open
+------------------------------------------------------------------------
+r53339 | a_matsuda | 2015-12-27 18:58:48 +0900 (Sun, 27 Dec 2015) | 4 lines
+
+Typo in Tk samples
+
+* ext/tk/sample/demos-en/goldberg.rb: miliseconds => milliseconds
+* ext/tk/sample/demos-jp/goldberg.rb: miliseconds => milliseconds
+------------------------------------------------------------------------
+r53338 | a_matsuda | 2015-12-27 18:58:22 +0900 (Sun, 27 Dec 2015) | 4 lines
+
+Method nam (... truncated)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]