From 12/02/2013 to 12/08/2013


11:41 PM Revision 44085: * lib/rubygems: Update to RubyGems master bf37240. Fixes useless
error message with `gem install -g` with no gem dependencies file.
* test/rubygems: ditto.
drbrain (Eric Hodel)
11:07 PM Revision 44084: vm.c: fix compile issue on 32bit freebsd
tmm1 (Aman Gupta)
07:52 PM Revision 44083: * NEWS: Update RubyGems entry with notable features.
drbrain (Eric Hodel)
07:44 PM Revision 44082: * ext/.document: Add syslog/lib and thread/thread.c to documentable
items. [ruby-trunk - Bug #9228] drbrain (Eric Hodel)
07:32 PM Revision 44081: * lib/rubygems: Update to RubyGems master 096db36. Changes include
support for PATH in Gemfile.lock and a typo fix from Akira Matsuda.
* test/rubygems: ditto.
drbrain (Eric Hodel)
05:11 PM Revision 44080: * 2013-12-09
05:11 PM Revision 44079: * lib/net/http/responses.rb:
Add `HTTPIMUsed`, as it is also supported by rack/rails.
by Vipul A M <v...
naruse (Yui NARUSE)
02:30 PM Revision 44078: Fix the description in ChangeLog
mrkn (Kenta Murata)
11:47 AM Revision 44077: class.c: rest kwargs
* class.c (rb_get_kwargs): when values is non-null, remove
extracted keywords from the rest keyword argument.
nobu (Nobuyoshi Nakada)
11:38 AM Revision 44076: variable.c: frozen class name
* variable.c (fc_path, classname): return ID strings without
unnecessary copying.
nobu (Nobuyoshi Nakada)
11:33 AM Revision 44075: avoid circular dependency on AIX
kanemoto (Yutaka Kanemoto)
11:25 AM Revision 44074: hash.c: reject shoult infect
* hash.c (rb_hash_reject): result should be infected by the
nobu (Nobuyoshi Nakada)
11:20 AM Revision 44073: * bigdecimal.c (BigDecimal_coerce): convert a Float to a BigDecimal instead
of converting the receiver to a Float.
[ruby-core:58756] [Bug #9192]
* test/bigdecimal/test_bigdecimal.rb: add tes...
mrkn (Kenta Murata)
11:04 AM Revision 44072: edit NEWS to move texts correct places
naruse (Yui NARUSE)
09:33 AM Revision 44071: * NEWS: [DOC] update NEWS about GC.
ktsj (Kazuki Tsujimoto)
08:54 AM Revision 44070: * object.c: [DOC] document Module#singleton_class?.
ktsj (Kazuki Tsujimoto)
07:19 AM Revision 44069: class.c, vm_insnhelper.c: check unknown keywords
* class.c (rb_get_kwargs): if optional is negative, unknown
keywords are allowed.
* vm_insnhelper.c (vm_callee_setu...
nobu (Nobuyoshi Nakada)
07:17 AM Revision 44068: class.c: optimization just one key
* class.c (keyword_error): use only element itself for
optimization in the case the key has just one element.
nobu (Nobuyoshi Nakada)
07:17 AM Revision 44067: test_keyword.rb: check error messages
* test/ruby/test_keyword.rb (test_required_keyword): check also
error messages.
* test/ruby/test_keyword.rb (test_...
nobu (Nobuyoshi Nakada)
06:47 AM Revision 44066: array.c: id_random
* array.c (rb_ary_shuffle_bang, rb_ary_sample): share id_random
instead of no longer used sym_random.
nobu (Nobuyoshi Nakada)
05:58 AM Revision 44065: * array.c (rb_ary_shuffle_bang, rb_ary_sample): rename local variables.
ktsj (Kazuki Tsujimoto)
05:02 AM Revision 44064: * array.c (rb_ary_shuffle_bang, rb_ary_sample): check
unknown keywords.
* test/ruby/test_array.rb (test_shuffle, test_sample): tests for
the above.
ktsj (Kazuki Tsujimoto)
04:06 AM Revision 44063: * properties.
nobu (Nobuyoshi Nakada)
04:05 AM Revision 44062: vm.c: add RubyVM.stat for accessing cache serials
* vm.c (ruby_vm_stat): add RubyVM.stat() for access to internal cache
counters. this methods behaves like GC.stat, ...
tmm1 (Aman Gupta)
03:51 AM Revision 44061: * lib/xmlrpc/client.rb: [DOC] Fix typo
[ci skip]
03:03 AM Revision 44060: hash.c: fix WB miss issue in Hash#replace
* hash.c (rb_hash_replace): add a write barrier to fix GC mark miss on
hashes using Hash#replace [Bug #9226] [ruby-...
tmm1 (Aman Gupta)
02:28 AM Revision 44059: gc.c: promote long-lived NODE_CREF objects to oldgen
* include/ruby/ruby.h: add RGENGC_WB_PROTECTED_NODE_CREF setting
In a large app, this reduces the size of
tmm1 (Aman Gupta)
01:52 AM Revision 44058: hash.c: revert r43870 and add alternative parser patch for literal keys
* hash.c (hash_aset_str): revert r43870 due to performance issue
[Bug #9188] [ruby-core:58730]
* parse.y (assoc): c...
tmm1 (Aman Gupta)
01:39 AM Revision 44057: parse.y: use rb_fstring() for strings stored in the symbol table
* parse.y (register_symid_str): use fstrings in symbol table
[Bug #9171] [ruby-core:58656]
* parse.y (rb_id2str): d...
tmm1 (Aman Gupta)
01:32 AM Revision 44056: class.c: fix uninitialized value
* class.c (rb_get_kwargs): fix returning uninitialized value when no
optional keywords.
nobu (Nobuyoshi Nakada)
01:25 AM Revision 44055: * lib/rubygems.rb: Update version for upcoming ruby 2.1.0 RC.
drbrain (Eric Hodel)
01:22 AM Revision 44054: * lib/rubygems: Update to RubyGems master 14749ce. This fixes bugs
handling of gem dependencies lockfiles (Gemfile.lock).
* test/rubygems: ditto.
drbrain (Eric Hodel)
12:41 AM Revision 44053: * 2013-12-08
12:41 AM Revision 44052: * array.c (rb_ary_or): use RHASH_TBL_RAW instead of RHASH_TBL
* process.c (rb_execarg_fixup): use RHASH_TBL_RAW and insert write
barriers where appropriate
* vm.c (kwmerge_i): ...
charliesome (Charlie Somerville)


01:01 PM Revision 44051: * gc.c (gc_mark_children): use nd_clss and nd_next for code clarity
charliesome (Charlie Somerville)
10:33 AM Revision 44050: * lib/net/http/header.rb: [DOC] Net::HTTP#to_hash returns pair of key and array values. Thanks @bjhaid [fix GH-467]
hsbt (Hiroshi SHIBATA)
10:27 AM Revision 44049: * ext/tk/lib/tk/canvas.rb: [DOC] Fix typo (s/paramter/parameter/)
* ext/tk/lib/tk/text.rb: Ditto.
* ext/tk/lib/tkextlib/blt/component.rb: Ditto.
* ext/tk/lib/tkextlib/blt/tree.rb: ...
10:25 AM Revision 44048: * lib/fileutils.rb: remove unnecessary initialization. by @vipulnsward [fix GH-463]
hsbt (Hiroshi SHIBATA)
02:16 AM Revision 44047: hash.c: rb_hash_reject without dup
* hash.c (rb_hash_reject): copy unrejected elements only to new hash,
so that the change on the original receiver c...
nobu (Nobuyoshi Nakada)
01:47 AM Revision 44046: test_struct.rb: use assert_same
* test/ruby/test_struct.rb (test_question_mark_in_member): true value
has no meanings itself. use assert_same inst...
nobu (Nobuyoshi Nakada)
01:44 AM Revision 44045: test_struct.rb: use assert_predicate
* test/ruby/test_struct.rb (test_question_mark_in_member): assert_true
is a method in test-unit. use assert_predica...
nobu (Nobuyoshi Nakada)


11:32 PM Revision 44044: * ChangeLog: fix spelling of contributor's name
charliesome (Charlie Somerville)
11:25 PM Revision 44043: * 2013-12-07
11:25 PM Revision 44042: * test/ruby/test_struct.rb: Add regression test for question marks and
bangs in struct members. [Closes GH-468] charliesome (Charlie Somerville)
10:33 AM Revision 44041: class.c: move kwarg functions
* class.c (rb_extract_keywords, rb_get_kwargs): move from
nobu (Nobuyoshi Nakada)
10:27 AM Revision 44040: * gc.c: change oldmalloc meaning.
Increase oldmalloc_increase with malloc_increase
instead of using obj_memsize_of().
This change will avoid the da...
ko1 (Koichi Sasada)
10:09 AM Revision 44039: * gc.c (atomic_sub_nounderflow): not 0 but val itself.
ko1 (Koichi Sasada)
09:38 AM Revision 44038: * gc.c (rb_objspace_alloc, Init_heap): initialize
oldmalloc_increase_limit at Init_heap.
rb_objspace_alloc() is not called on some platforms.
ko1 (Koichi Sasada)
09:34 AM Revision 44037: * gc.c (garbage_collect_body): bug fix.
initialize after recording. ko1 (Koichi Sasada)
08:53 AM Revision 44036: * gc.c (atomic_sub_nounderflow): added to simplify atomic sub with
care about underflow.
* gc.c (objspace_malloc_increase): use it.
ko1 (Koichi Sasada)
08:10 AM Revision 44035: vm_insnhelper.c: rb_get_kwargs
* vm_insnhelper.c (rb_get_kwargs): get keyword argument values from an
option hash, not only checking keys.
* dir.c...
nobu (Nobuyoshi Nakada)
07:50 AM Revision 44034: thread.c: compare_by_id
* thread.c (recursive_list_access): let symbol only hashes compare
the elements by id.
nobu (Nobuyoshi Nakada)
07:47 AM Revision 44033: ruby-mode.el: expand/unexpand block
* misc/ruby-mode.el (ruby-brace-to-do-end): split single line block.
* misc/ruby-mode.el (ruby-do-end-to-brace): shri...
nobu (Nobuyoshi Nakada)
07:47 AM Revision 44032: gc.c: indent
* gc.c (gc_start_internal): adjust indent. nobu (Nobuyoshi Nakada)
07:22 AM Revision 44031: * gc.c (gc_start_internal): do not use rb_gc_start() and rb_gc().
ko1 (Koichi Sasada)
06:31 AM Revision 44030: * remove trailing spaces.
nobu (Nobuyoshi Nakada)
06:26 AM Revision 44029: * gc.c (gc_start_internal, rb_gc): do not need
heap_pages_free_unused_pages() here.
It was done in after_sweep().
* gc.c (rb_gc): The reason is now GPR_FLAG_CAPI.
ko1 (Koichi Sasada)
05:32 AM Revision 44028: gc.c: add note about experimental nature of new GC.start flags
tmm1 (Aman Gupta)
05:11 AM Revision 44027: gc.c: add minor marking and lazy sweeping options to GC.start
* gc.c (gc_start_internal): GC.start() now accepts two optional
keyword arguments. These can be used to disable ful...
tmm1 (Aman Gupta)
04:34 AM Revision 44026: * lib/webrick/httpstatus.rb: [DOC] Fix typo
[ci skip]
02:54 AM Revision 44025: * lib/erb.rb: [DOC] fix broken link.
Use and instead of RAA. [Bug #9197] hsbt (Hiroshi SHIBATA)
02:10 AM Revision 44024: * lib/webrick/compat.rb, lib/xmlrpc/datetime.rb: [DOC] fix typo by @vipulnsward [fix GH-464]
hsbt (Hiroshi SHIBATA)
01:56 AM Revision 44023: * lib/webrick/httprequest.rb: [DOC] Fix broken link of CGI specification by @udzura [fix GH-466]
hsbt (Hiroshi SHIBATA)


04:35 PM Revision 44022: * 2013-12-06
04:34 PM Revision 44021: * ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec):
treat 0.0 and -0.0 of floating-point numbers specially for an optimization
and to correctly propagate its signbit t...
mrkn (Kenta Murata)
01:30 PM Revision 44020: test_objspace.rb: show error
* test/objspace/test_objspace.rb (test_dump_all): show error output if
nothing dumped.
nobu (Nobuyoshi Nakada)
01:18 PM Revision 44019: mkmf.rb: strip destdir from prefix
* lib/mkmf.rb (configuration): strip destdir part from prefix to get
rid of duplication. a patch by arton at [ruby...
nobu (Nobuyoshi Nakada)
01:05 PM Revision 44018: * string.c (rb_str_scrub): [DOC] add param str.
nobu (Nobuyoshi Nakada)
01:02 PM Revision 44017: strip-rdoc.rb: binmode
* tool/strip-rdoc.rb: read in binary mode to get rid of errors by
non-ascii characters.
nobu (Nobuyoshi Nakada)
12:59 PM Revision 44016: fix matching
* bootstraptest/test_thread.rb: String#=~ does not accept String. nobu (Nobuyoshi Nakada)
12:53 PM Revision 44015: array.c: prefer lhs elements
* array.c (rb_ary_or): lhs elements are prefered, so should not
replace with rhs elements.
* test/ruby/test_array.r...
nobu (Nobuyoshi Nakada)
12:49 PM Revision 44014: * remove trailing spaces.
nobu (Nobuyoshi Nakada)
12:34 PM Revision 44013: gc.c: [DOC] minor typo
tmm1 (Aman Gupta)
12:06 PM Revision 44012: * gc.c (gc_info_decode): fix to avoid syntax error on VS2012.
ko1 (Koichi Sasada)
11:57 AM Revision 44011: test_gc.rb: expand timeout
* test/ruby/test_gc.rb (test_sweep_in_finalizer): expand timeout for
slower machines.
nobu (Nobuyoshi Nakada)
11:32 AM Revision 44010: * lib/webrick/httpresponse.rb: [DOC] Fix typo
[ci skip]
10:35 AM Revision 44009: st.c: tweaked comment
duerst (Martin Dürst)
10:30 AM Revision 44008: gc.c: add GC.latest_gc_info()
* gc.c (struct rb_objspace): rename internal last_collection_flags to
* gc.c (gc_latest_collection_i...
tmm1 (Aman Gupta)
09:24 AM Revision 44007: ext/objspace: remove OS.after_gc_start_hook= and move internal test
* ext/objspace/gc_hook.c: remove this file
* ext/-test-/tracepoint/gc_hook.c: new filename for above
* ext/objspace/o...
tmm1 (Aman Gupta)
08:52 AM Revision 44006: * gc.c: change function names vm_ prefix to objspace_ prefix.
They are objspace_ functionality. ko1 (Koichi Sasada)
07:45 AM Revision 44005: gc.c: expose GC.stat() to C-api via rb_gc_stat()
* include/ruby/intern.h: add rb_gc_stat() for access to GC.stat
variables from c-api
* gc.c (rb_gc_stat): new c-api...
tmm1 (Aman Gupta)
06:56 AM Revision 44004: ChangeLog: about malloc_size(3) availability
* ChangeLog: malloc_size(3) on MacOS X says it's a BSD Library
Function, so possibly some other BSDs may have but s...
nobu (Nobuyoshi Nakada)
05:40 AM Revision 44003: hash.c: bail out to the outermost frame
* hash.c (rb_hash): revert r43981 and bail out to the outermost frame
when recursion is detected.
nobu (Nobuyoshi Nakada)
05:38 AM Revision 44002: test_hash.rb: import tests from rubyspec
* test/ruby/test_hash.rb: import tests for recursive hash values
from rubyspec/core/{array,hash}/hash_spec.rb.
nobu (Nobuyoshi Nakada)
05:38 AM Revision 44001: test_hash.rb: move tests
* test/ruby/test_hash.rb: move hash value tests from test_array.rb. nobu (Nobuyoshi Nakada)
05:35 AM Revision 44000: test_gc.rb: shorten
* test/ruby/test_gc.rb (test_sweep_in_finalizer): omit iteration number to 2. nobu (Nobuyoshi Nakada)
05:26 AM Revision 43999: vm_eval.c: suppress warning
* vm_eval.c (rb_catch_obj): add cast to suppress warning by VC. nobu (Nobuyoshi Nakada)
04:54 AM Revision 43998: * gc.c (vm_malloc_size): added.
return malloc_usable_size() if possible.
* gc.c (MALLOC_ALLOCATED_SIZE): add new setting macro to enable
ko1 (Koichi Sasada)
04:26 AM Revision 43997: gc.c: split GC_END event into GC_END_MARK and GC_END_SWEEP
* include/ruby/ruby.h: remove INTERNAL_EVENT_GC_END and replace with
two new events: GC_END_MARK and GC_END_SWEEP
tmm1 (Aman Gupta)
01:48 AM Revision 43996: ruby_atomic.h: ATOMIC_PTR_EXCHANGE
* ruby_atomic.h (ATOMIC_PTR_EXCHANGE): atomic exchange function for
a generic pointer.
nobu (Nobuyoshi Nakada)
01:47 AM Revision 43995: ruby_atomic.h: duplicate code
* ruby_atomic.h (ATOMIC_SIZE_CAS): remove duplicate code as
nobu (Nobuyoshi Nakada)
01:47 AM Revision 43994: gc.c: flush all deferred finalizers
* gc.c (finalize_deferred): flush all deferred finalizers while other
finalizers can get ready to run newly by lazy...
nobu (Nobuyoshi Nakada)
01:16 AM Revision 43993: gc.c: rb_gc_set_params
* gc.c (rb_gc_set_params): define as separate function.
RUBY_ALIAS_FUNCTION is for simple alias only, the third par...
nobu (Nobuyoshi Nakada)
12:19 AM Revision 43992: * 2013-12-05
12:19 AM Revision 43991: gc.c: Load GC tuning settings earlier during boot.
* gc.c (ruby_gc_set_params): Accept safe_level argument so GC tuning
settings can be applied before rb_safe_level()...
tmm1 (Aman Gupta)


02:06 PM Revision 43990: * lib/webrick/httpproxy.rb: [DOC] Fix typo
[ci skip]
04:59 AM Revision 43989: * test/ruby/test_array.rb (test_recursive_hash_value): rename.
nobu (Nobuyoshi Nakada)
04:20 AM Revision 43988: string.c: fix declaration-after-statement
* string.c (fstr_update_callback): move a variable declaration since
ISO C90 forbids mixed declarations and code.
nobu (Nobuyoshi Nakada)
04:05 AM Revision 43987: * vm_trace.c (rb_suppress_tracing): Fix initialization of stack
allocated rb_trace_arg_t structure. Without this patch, sometimes
INTERNAL_EVENT_GC would be skipped accidentally i...
tmm1 (Aman Gupta)
04:05 AM Revision 43986: * string.c (fstr_update_callback): Improve implementation in r43968
based on feedback from @nagachika. In the existing case, we can
return ST_STOP to prevent any hash modification. In...
tmm1 (Aman Gupta)
03:48 AM Revision 43985: * 2013-12-04
03:47 AM Revision 43984: delegate.rb: ignore unset target
* lib/delegate.rb (Delegator#method_missing): ignore the target if not
set, and delegate to global methods. [ruby-...
nobu (Nobuyoshi Nakada)


02:48 PM Revision 43983: gc.c: use malloc_size
* check malloc_size() available on BSD.
* gc.c: use malloc_size() with malloc/malloc.h on BSD.
nobu (Nobuyoshi Nakada)
02:14 PM Revision 43982: * object.c (rb_obj_clone): don't copy FL_WB_PROTECTED of a
original object. nari
01:32 PM Revision 43981: hash.c: same hash value for similar constructs
* hash.c (rb_hash_recursive): make similar (recursive) constructs
return same hash value. execute recursively, and...
nobu (Nobuyoshi Nakada)
01:18 PM Revision 43980: hash.c: detect recursion for all
* hash.c (rb_hash): detect recursion for all `hash' methods. each
`hash' methods no longer need to use rb_exec_rec...
nobu (Nobuyoshi Nakada)
12:53 PM Revision 43979: vm_eval.c: rb_catch_protect
* vm_eval.c (rb_catch_protect): new function similar to
rb_catch_obj(), but protect from all global jumps like as
nobu (Nobuyoshi Nakada)
12:14 PM Revision 43978: * lib/net/smtp.rb: [DOC] Fix typo
[ci skip]
12:08 PM Revision 43977: ChangeLog: complement the intention
nobu (Nobuyoshi Nakada)
11:24 AM Revision 43976: * object.c (rb_obj_clone): Protect FL_PROMOTED and FL_WB_PROTECTED
flags of a destination object. nari
11:19 AM Revision 43975: * array.c (rb_hash_rehash): use hash_alloc() instead of rb_hash_new().
[Bug #9187] glass
08:13 AM Revision 43974: * load.c (features_index_add_single): Move loaded_features_index array values off
the ruby heap. [Bug #9201] [ruby-core:58805]
* load.c (loaded_features_index_clear_i): Clean up off-heap array struct...
tmm1 (Aman Gupta)
08:11 AM Revision 43973: * include/ruby/ruby.h (struct RClass): Add wrapper struct around
RClass->m_tbl with serial. This prevents double marking method
tables, since many classes/modules can share the sam...
tmm1 (Aman Gupta)
06:30 AM Revision 43972: Add a description about string-scrub.gem to NEWS
naruse (Yui NARUSE)
06:08 AM Revision 43971: * test/ruby/test_rubyoptions.rb (TestRubyOptions::SEGVTest::ExpectedStderr):
ignore fault address. nobu (Nobuyoshi Nakada)
05:13 AM Revision 43970: * array.c (rb_ary_uniq_bang): remove duplicate code.
04:55 AM Revision 43969: * array.c (ary_add_hash): set and return values because string keys
will be frozen. [ruby-core:58809] [Bug #9202]
* array.c (rb_ary_uniq_bang): ditto.
* array.c (rb_ary_or): ditto.
03:40 AM Revision 43968: * string.c (rb_fstring): Use st_update instead of st_lookup +
* string.c (fstr_update_callback): New callback for st_update.
tmm1 (Aman Gupta)
03:18 AM Revision 43967: rdoc/constant.rb: reapply r43006 for workaround of
* lib/rdoc/constant.rb (RDoc::Constant#documented?): workaround for
NoMethodError when the original o...
nobu (Nobuyoshi Nakada)
03:18 AM Revision 43966: signal.c: fault address
* signal.c (sigbus, sigsegv): show fault address in the bug message. nobu (Nobuyoshi Nakada)
03:18 AM Revision 43965: * hash.c (w32_getenv): should be static.
nobu (Nobuyoshi Nakada)
01:44 AM Revision 43964: * ext/openssl/lib/openssl/buffering.rb: Return ASCII-8BIT strings from
SSLSocket methods. [ruby-trunk - Bug #9028]
* test/openssl/test_ssl.rb: Test for the above.
drbrain (Eric Hodel)
12:42 AM Revision 43963: * 2013-12-03
12:42 AM Revision 43962: * lib/rdoc: Update to RDoc master 900de99. Changes include:
Fixed documentation display of constants
Fixed handling of unknown parsers
* test/rdoc: ditto.
drbrain (Eric Hodel)


01:31 PM Revision 43958: * hash.c (getenv): fixed test failures introduced by r43950.
[ruby-core:58774] [Bug #9195] reported by phasis68 (Heesob Park). usa (Usaku NAKAMURA)
12:59 PM Revision 43957: * hash.c (rb_hash_rehash): make temporary st_table under the control
of GC. [Bug #9187]
* test/ruby/test_hash.rb: add a test for above.
08:26 AM Revision 43956: * variable.c (rb_mod_constants): when calling Module#constants with
inherit=false, there is no need to use a hashtable to deduplicate
constant names. [Feature #9196] [ruby-core:58786]
charliesome (Charlie Somerville)
05:36 AM Revision 43955: * lib/csv.rb: [DOC] Fix typos
s/occurrs/occurs/, s/interation/iteration/, s/intetionally/intentionally/,
s/modfied/modified/, s/axception/exception...
05:18 AM Revision 43954: * lib/net/smtp.rb (Net::SMTP#critical): Always return a
Net::SMTP::Response. Patch by Pawel Veselov.
[ruby-trunk - Bug #9125]
* test/net/smtp/test_smtp.rb: Test for the ...
drbrain (Eric Hodel)

Also available in: Atom