ChangeLog-2.1.0¶ ↑
2013-12-20¶ ↑
Fri Dec 20 17:52:50 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_method.c
-
check definition of GLOBAL_METHOD_CACHE_SIZE and GLOBAL_METHOD_CACHE_MASK.
Fri Dec 20 17:03:10 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
rename OBJ_WRITE and OBJ_WRITTEN into RB_OBJ_WRITE and RB_OBJ_WRITTEN.
- array.c, class.c, compile.c, hash.c, internal.h, iseq.c, proc.c, process.c, re.c, string.c, variable.c, vm.c, vm_eval.c, vm_insnhelper.c, vm_insnhelper.h, vm_method.c
-
catch up this change.
Fri Dec 20 16:01:35 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
add a comment for WB interfaces.
Fri Dec 20 16:00:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- configure.in
-
DLDFLAGS is defined in –with-opt-dir handler, so ${DLDFLAGS=} does not work now. use RUBY_APPEND_OPTIONS instead. [ruby-dev:47855] [Bug #9256]
Fri Dec 20 14:19:12 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- configure.in (AC_ARG_WITH)
-
use withval directly. fix failure on FreeBSD. fb32.rubyci.org/~chkbuild/ruby-trunk/log/20131217T070301Z.diff.html.gz
Fri Dec 20 14:00:01 2013 Aman Gupta<EMAIL_ADDRESS>↑
- include/ruby/ruby.h (struct RClass)
-
add super, remove iv_index_tbl. since RCLASS_SUPER() is commonly used inside while loops, we move it back inside struct RClass to improve cache hits. this provides a small improvement (1%) in hotspots like rb_obj_is_kind_of()
- internal.h (struct rb_classext_struct)
-
remove super, add iv_index_table
- internal.h (RCLASS_SUPER)
-
update for new location
- internal.h (RCLASS_SET_SUPER)
-
ditto
- internal.h (RCLASS_IV_INDEX_TBL)
-
ditto
- object.c (rb_class_get_superclass)
-
ditto
- include/ruby/backward/classext.h (RCLASS_SUPER)
-
ditto
Fri Dec 20 07:07:35 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 03d6ae7. Changes include: * Fixed typos. * Relaxed Gem.ruby test for ruby packagers that do not use `ruby`.
- test/rubygems
-
ditto.
2013-12-19¶ ↑
Thu Dec 19 14:03:04 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (heap_get_freeobj)
-
improve hot path performance.
- gc.c (heap_get_freeobj_from_next_freepage)
-
replace with heap_get_freepage(). It returns freeobj instead of freepage. This is not on hot path.
Thu Dec 19 12:05:17 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master af60443. Changes include: * Improved speed of `gem install –ignore-dependencies`. * Open read-write for exclusive flock. [ruby-trunk - Bug #9257] * Remove specification before install to prevent infinite loop.
Thu Dec 19 11:23:49 2013 Aman Gupta<EMAIL_ADDRESS>↑
- vm_insnhelper.c (vm_call_iseq_setup_normal)
-
simple for loop condition optimization. this area shows up as a hotspot in VM profiles.
Thu Dec 19 10:50:13 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (newobj_of)
-
don't need to RBASIC_SET_CLASS() which includes WB here because created obj is always YOUNG/INFANT.
Thu Dec 19 10:48:37 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- benchmark/gc/gcbench.rb
-
check GC::OPTS availability for not MRI 2.1.0.
Thu Dec 19 03:10:30 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (heap_get_freeobj)
-
remove redundant assignment. heap->freelist is set after the while() loop already.

Thu Dec 19 00:26:11 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (garbage_collect_body)
-
lazy_sweep setting should work without USE_RGENGC.
2013-12-18¶ ↑
Wed Dec 18 23:31:04 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_profile_dump_major_reason)
-
fix this function because major_reason can be OR of multiple reasons.
- gc.c (gc_profile_dump_on)
-
ditto.
Wed Dec 18 17:03:00 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_profile_record_get)
-
should return an empty array when profiling is active.
Wed Dec 18 16:49:40 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_profile_clear, gc_profile_enable)
-
remove rest_sweep().
- gc.c
-
check objspace->profile.current_record before inserting profiling record by new macro gc_prof_enabled().
Wed Dec 18 14:32:06 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_exec.h (VM_DEBUG_STACKOVERFLOW)
-
added. disable stack overflow check for every stack pushing as default.
- vm_exec.c (vm_stack_overflow_for_insn)
-
ditto.
Wed Dec 18 10:00:22 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master d8f12e2. This increases the speed of `gem install –ignore-dependencies` which helps bundler tests.
- test/rubygems
-
ditto.
Wed Dec 18 09:00:17 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- test/ruby/test_gc.rb (test_expand_heap)
-
allow +/-1 diff.
2013-12-17¶ ↑
Tue Dec 17 23:44:15 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- test/ruby/test_io.rb
-
fix duplicated test name.
Tue Dec 17 20:15:00 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (rb_hash_reject)
-
revert to deprecated behavior, with warnings, due to compatibility for HashWithDifferentAccess. [ruby-core:59154] [Bug #9223]
Tue Dec 17 17:30:56 2013 Akinori MUSHA<EMAIL_ADDRESS>↑
- misc/ruby-electric.el
-
Import version 2.1.1 from github.com/knu/ruby-electric.el. * ruby-electric-delete-backward-char: Enable support for number prefix. * ruby-electric-curlies: Fix electric operation after an open curly.
Tue Dec 17 16:19:09 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_trace.c (rb_postponed_job_flush)
-
isolate exceptions in postponed jobs and restore outer ones. based on a patch by tarui. [ruby-core:58652] [Bug #9168]
Tue Dec 17 10:48:04 2013 Aman Gupta<EMAIL_ADDRESS>↑
- configure.in (RUBY_DTRACE_POSTPROCESS)
-
Fix compatibility with systemtap on linux. stap requires `dtrace -G` post-processing, but the dtrace compatibility wrapper is very strict about probes.d syntax.
Tue Dec 17 05:18:17 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 1c5f4b3. Allows rubygems repackagers to disable backward-compatible shared gem directory behavior.
- test/rubygems
-
ditto.
Tue Dec 17 05:14:35 2013 Eric Hodel<EMAIL_ADDRESS>↑
- NEWS (RDoc)
-
Update version number so I don't have to change it for the final release.
2013-12-16¶ ↑
Mon Dec 16 19:19:19 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_objspace_markable_object_p)
-
should check special_const_p first (by is_markable_object()).
Mon Dec 16 19:12:54 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/objspace.c (reachable_object_from_root_i)
-
use compare_by_identity hash to avoid hash modify problem during iteration. [Bug #9252]
- ext/objspace/objspace.c (reachable_objects_from_root)
-
ditto.
Mon Dec 16 18:16:28 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_verify_internal_consistency)
-
should not use rb_objspace_each_objects() because it call rest_sweep().
Mon Dec 16 18:07:30 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_objspace_markable_object_p)
-
fix last commit (build error).
Mon Dec 16 18:04:28 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_objspace_markable_object_p)
-
it should be live objects.
Mon Dec 16 18:00:51 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_objspace_each_objects)
-
should not clear dont_lazy_sweep flag in nested case.
Mon Dec 16 16:40:35 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_method.c (rb_method_entry_make)
-
fix WB miss. Note that rb_method_entry_t::klass is not constified. We may constify this field.
- test/ruby/test_alias.rb
-
add a test.
Mon Dec 16 14:14:22 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
use gc_verify_internal_consistency() instead of gc_check_before_marks_i() for check consistency on RGENGC_CHECK_MODE >= 2.
Mon Dec 16 14:01:48 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- process.c (make_clock_result)
-
add :second as a unit for Process.clock_gettime.
Mon Dec 16 13:10:54 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
introduce GC.verify_internal_consistency method to verify GC internal data structure. Now this method only checks generation (old/young) consistency.
Mon Dec 16 11:49:26 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (gc_info_decode)
-
Fix build errors when compiled with RGENGC_ESTIMATE_OLDMALLOC=0
- gc.c (objspace_malloc_increase)
-
ditto
2013-12-15¶ ↑
Sun Dec 15 13:38:29 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/objspace.c (reachable_object_from_root_i)
-
reachable objects should not include categories and category_objects because it is noisy information. In fact, objects created after calling ObjectSpace.reachable_objects_from_root should not be included as a returning hash objects. Currently, mswin64 platform has a problem because of this behavior. Should we trace new objects?
Sun Dec 15 07:09:28 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rdoc
-
Update to RDoc master 263a9e5. This improves the accessibility of the search box.
2013-12-14¶ ↑
Sat Dec 14 17:39:00 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_insnhelper.c (vm_callee_setup_arg_complex)
-
count post arguments as mandatory arguments. [ruby-core:57706] [Bug #8993]
- vm_insnhelper.c (vm_yield_setup_block_args)
-
ditto.
Sat Dec 14 16:26:46 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- configure.in (rubylibprefix)
-
replace exec_prefix as well as bindir and libdir. a patch by kimuraw (Wataru Kimura) at [ruby-dev:47852]. [Bug #9160]
Sat Dec 14 14:42:53 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/logger.rb (lock_shift_log)
-
no need to rotate the log file if it has been rotated by another process. based on the patch by no6v (Nobuhiro IMAI) in [ruby-core:58620]. [Bug #9133]
Sat Dec 14 13:01:45 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- proc.c (mnew_from_me)
-
method by respond_to_missing? should be owned by the original class.
Sat Dec 14 11:55:31 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/scanf.rb (IO#scanf)
-
fix mistaken use of rescue modifier. a patch by Mon_Ouie at [ruby-core:52813]. [Bug #7940]
Sat Dec 14 11:44:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- util.c (ruby_qsort)
-
fix potential stack overflow on a large machine. based on the patch by Conrad Irwin <conrad.irwin AT gmail.com> at [ruby-core:51816]. [Bug #7772]
Sat Dec 14 11:25:56 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- object.c (rb_mod_const_defined)
-
support nested class path as well as const_get. [Feature #7414]
Sat Dec 14 01:31:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- eval.c (rb_rescue2)
-
reuse tags pushed for body proc to protect rescue proc too.
Sat Dec 14 01:15:51 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (wmap_final_func)
-
Bugfix. Should update *value to new pointer.
Sat Dec 14 01:05:46 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- ext/socket/lib/socket.rb
-
Don't test $! in “ensure” clause because it may be set before the body. Reported by ko1 and mrkn. [ruby-core:59088] [Bug #9247]
- lib/cgi/core.rb
-
Ditto.
- lib/drb/ssl.rb
-
Ditto.
Sat Dec 14 00:34:31 2013 Naohisa Goto<EMAIL_ADDRESS>↑
- internal.h (ruby_sized_xrealloc2)
-
fix typo introduced in r44117, which cause compile error on Solaris.
Sat Dec 14 00:22:16 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- thread.c
-
(exec_recursive): use rb_catch_protect() instead of rb_catch_obj() and PUSH_TAG(), and reduce pushing tags and machine stack usage.
Sat Dec 14 00:18:08 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- proc.c (mnew_from_me)
-
achieve the original defined_class from prepended iclass, to fix inherited owner.
- proc.c (method_owner)
-
return the defined class, but not the class which the method object is created from.
2013-12-13¶ ↑
Fri Dec 13 22:29:21 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- proc.c (method_owner)
-
return the class where alias is defined, not the class original method is defined.
- vm_method.c (rb_method_entry_make, rb_alias)
-
store the originally defined class in me. [Bug #7993] [Bug #7842] [Bug #9236]
- vm_method.c (rb_method_entry_get_without_cache)
-
cache included module but not iclass.
Fri Dec 13 16:27:17 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (gc_info_decode)
-
Use :major_by=>:nofree as fallback reason when other trigger conditions are present.
Fri Dec 13 13:25:30 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- error.c
-
add Exception#backtrace_locations. Now, there are no setter and independent from Exception#backtrace. [Feature #8960]
- eval.c (setup_exception)
-
set backtrace locations for `bt_location' special attribute.
- vm_backtrace.c (rb_backtrace_to_location_ary)
-
added.
- internal.h
-
ditto.
- test/ruby/test_backtrace.rb
-
add a test for Exception#backtrace_locations.
Fri Dec 13 12:01:07 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (garbage_collect_body)
-
use rb_bug() and explicit error message instead of using assert(). [Bug #9222]
Fri Dec 13 11:52:41 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- array.c
-
fix comment to remove the word “shady”.
- variable.c
-
ditto.
Fri Dec 13 11:33:55 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
rename shady func/macros. * RVALUE_RAW_SHADY() -> RVALUE_WB_PROTECTED_RAW() * RVALUE_SHADY() -> RVALUE_RAW_SHADY() * rgengc_check_shady() -> rgengc_check_relation(). And fix some messages using “shady” to “non-WB-protected”.
Fri Dec 13 10:04:23 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems/request_set/lockfile.rb
-
Import RubyGems master a8d0669 with a 1.8.7 compatibility fix.
- test/rubygems/test_gem_request_set_lockfile.rb
-
ditto.
Fri Dec 13 09:50:49 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master ddac51f. Changes: * Allow override for the shared gem installation directory for rubygems packagers. * Lock gem cache files for read and write to improve thread safety. * Use io/console when available. * Minor cleanup.
- test/rubygems
-
ditto.
Fri Dec 13 08:15:31 2013 Aman Gupta<EMAIL_ADDRESS>↑
- class.c (include_modules_at)
-
use RCLASS_M_TBL_WRAPPER for equality checks. this avoids an unnecessary deference inside a tight loop, fixing a performance regression from r43973.
- object.c (rb_obj_is_kind_of)
-
ditto.
- object.c (rb_class_inherited_p)
-
ditto.
Wed Dec 13 02:00:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (VpSetPTR)
-
fix for limitation of the resulting precision. [ruby-core:50269] [Bug #7458]
- test/bigdecimal/test_bigdecimal.rb (test_limit)
-
add tests for the above change.
Wed Dec 13 01:56:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (VpAddAbs)
-
put out a conditional branch from the inside of while-loop.
- ext/bigdecimal/bigdecimal.c (VpSubAbs)
-
ditto.
Wed Dec 13 01:53:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (VPrint)
-
be a static function, support another dump formats, and add more information of the given bigdecimal.
- ext/bigdecimal/bigdecimal.h
-
ditto.
2013-12-11¶ ↑
Wed Dec 11 16:45:58 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- eval.c (rb_raise_jump)
-
call c_return hook immediately after popping `raise' frame. Patches by deivid (David Rodriguez). [Bug #8886]
- test/ruby/test_settracefunc.rb
-
catch up this fix.
Wed Dec 11 16:01:26 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (rb_hash_reject)
-
return a plain hash, without copying the class, default value, instance variables, and taintedness. they had been copied just by accident. [ruby-core:59045] [Bug #9223]
Wed Dec 11 15:36:15 2013 Aman Gupta<EMAIL_ADDRESS>↑
- compile.c (iseq_specialized_instruction)
-
emit opt_aset instruction to optimize Hash#[]= and Array#[]= when called with Fixnum argument. [Bug #9227] [ruby-core:58956]
Wed Dec 11 04:54:03 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master ec8ed22. Notable changes include: * Renamed extension_install_dir to extension_dir (backwards compatible). * Fixed creation of gem.deps.rb.lock file from TestGemRequestSet#test_install_from_gemdeps_install_dir * Fixed a typo and some documentation.
- test/rubygems
-
ditto.
2013-12-10¶ ↑
Tue Dec 10 23:58:30 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/date/date_strptime.c (date__strptime_internal)
-
unset case-insensitive flag for [:alpha:], which already implies both cases, to get rid of backtrack explosion. [ruby-core:58984] [Bug #9221]
Tue Dec 10 23:44:42 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- array.c (rb_ary_hash)
-
add salt to differentiate false and empty array. [ruby-core:58993] [Bug #9231]
- hash.c (rb_any_hash, rb_hash_hash)
-
ditto.
Tue Dec 10 18:16:09 2013 SHIBATA Hiroshi<EMAIL_ADDRESS>↑
- man/ruby.1
-
[DOC] Use www.ruby-toolbox.com instead of RAA.
Tue Dec 10 17:21:30 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (wmap_finalize, wmap_aset_update)
-
use simple malloced array instead of T_ARRAY, to reduce GC pressure.
Tue Dec 10 15:56:48 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (reflist_add)
-
revert changes from r44109. it is unnecessary after r44113
- gc.c (allrefs_i)
-
fix whitespace
- gc.c (allrefs_roots_i)
-
fix whitespace
Tue Dec 10 15:46:03 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (allrefs_add)
-
push obj only if allrefs table doesn't have obj.
- gc.c (allrefs_roots_i)
-
ditto.
Tue Dec 10 15:28:10 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (RGENGC_CHECK_MODE)
-
separate checkers to different modes. * 2: enable generational bits check (for debugging) * 3: enable livness check * 4: show all references
Tue Dec 10 15:15:37 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_marks_check)
-
disable GC during checking and restore malloc_increase info.
Tue Dec 10 14:41:53 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (reflist_add)
-
return 0 if reference already exists
- gc.c (allrefs_add)
-
return 1 on newly added references
- gc.c (allrefs_i)
-
follow references to construct complete object graph. before this patch, RGENGC_CHECK could fail to verify some WB miss issues. [Bug #9226] [ruby-core:58959]
Tue Dec 10 11:20:56 2013 Aman Gupta<EMAIL_ADDRESS>↑
- ext/objspace/objspace_dump.c (dump_object)
-
include fstring flag on strings. include gc flags (old, remembered, wb_protected) on all objects.
- ext/objspace/objspace_dump.c (Init_objspace_dump)
-
initialize lazy IDs before first use.
- gc.c (rb_obj_gc_flags)
-
new function to retrieve object flags
- internal.h (RB_OBJ_GC_FLAGS_MAX)
-
maximum flags allowed for one obj
- test/objspace/test_objspace.rb (test_dump_flags)
-
test for above
- test/objspace/test_objspace.rb (test_trace_object_allocations)
-
resolve name before dump (for rb_class_path_cached)
Tue Dec 10 07:48:29 2013 Aman Gupta<EMAIL_ADDRESS>↑
- vm_method.c (rb_clear_method_cache_by_class)
-
fire ruby::method-cache-clear probe on global or klass-level method cache clear [Bug #9190]
- probes.d (provider ruby)
-
new dtrace probe
- doc/dtrace_probes.rdoc
-
docs for new probe
- test/dtrace/test_method_cache.rb
-
test for new probe
Tue Dec 10 06:14:11 2013 Eric Hodel<EMAIL_ADDRESS>↑
- ext/.document
-
Remove curses from documentable directories.
Tue Dec 10 04:55:36 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/digest.rb
-
Deprecate OpenSSL::Digest::Digest [Fixes GH-446] github.com/ruby/ruby/pull/446
Tue Dec 10 00:41:42 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- ext/thread/thread.c
-
[DOC] add call-seq alias for Queue#enq, <<, etc.
- ext/thread/thread.c (Init_thread)
-
use rb_define_alias instead of rb_alias to document alias.
2013-12-09¶ ↑
Mon Dec 9 20:00:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- internal.h (RCLASS_SERIAL)
-
Add RCLASS_SERIAL as a convenience accessor for RCLASS_EXT(klass)->class_serial.
- class.c, vm_insnhelper.c, vm_method.c
-
Use RCLASS_SERIAL
Mon Dec 9 19:50:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- compile.c, insns.def, test/ruby/test_rubyvm.rb, vm.c, vm_core.h, vm_insnhelper.c, vm_insnhelper.h, vm_method.c
-
Rename method_serial to global_method_state and constant_serial to global_constant_state after discussion with ko1.
Mon Dec 9 18:50:43 2013 Aman Gupta<EMAIL_ADDRESS>↑
- hash.c (rb_hash_replace)
-
fix segv on `{}.replace({})` introduced in r44060 [Bug #9230] [ruby-core:58991]
- test/ruby/test_hash.rb
-
regression test for above
Mon Dec 9 18:10:10 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm.c (vm_stat)
-
renamed from ruby_vm_stat. Should not use ruby_ prefix here.
Mon Dec 9 16:13:31 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (wmap_size)
-
add ObjectSpace::WeakMap#size and length.
Mon Dec 9 15:26:17 2013 Shugo Maeda<EMAIL_ADDRESS>↑
- test/test_curses.rb
-
removed.
Mon Dec 9 13:36:55 2013 Shugo Maeda<EMAIL_ADDRESS>↑
- ext/curses, sample/curses
-
removed curses.
- NEWS
-
added an entry for the above change.
Mon Dec 9 12:26:05 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c (newobj_i)
-
use cached class path only to get rid object allocation during NEWOBJ hook. [ruby-core:58853] [Bug #9212]
- variable.c (rb_class_path_cached)
-
returns cached class path only, without searching and allocating new class path string.
Mon Dec 9 11:14:26 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/date/date_parse.c (parse_time)
-
unset case-insensitive flag for [:alpha:], which already implies both cases, to get rid of backtrack explosion. [ruby-core:58876] [Bug #9221]
Mon Dec 9 08:40:40 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master bf37240. Fixes useless error message with `gem install -g` with no gem dependencies file.
- test/rubygems
-
ditto.
Mon Dec 9 04:52:25 2013 Eric Hodel<EMAIL_ADDRESS>↑
- NEWS
-
Update RubyGems entry with notable features.
Mon Dec 9 04:43:54 2013 Eric Hodel<EMAIL_ADDRESS>↑
- ext/.document
-
Add syslog/lib and thread/thread.c to documentable items. [ruby-trunk - Bug #9228]
Mon Dec 9 04:28:50 2013 Eric Hodel<EMAIL_ADDRESS>↑
- 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.
Mon Dec 9 02:10:32 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- lib/net/http/responses.rb
-
Add `HTTPIMUsed`, as it is also supported by rack/rails. RFC - tools.ietf.org/html/rfc3229 by Vipul A M<EMAIL_ADDRESS>github.com/ruby/ruby/pull/447 fix GH-447
2013-12-08¶ ↑
Sun Dec 8 20:47:35 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- class.c (rb_get_kwargs)
-
when values is non-null, remove extracted keywords from the rest keyword argument.
Sun Dec 8 20:26:54 2013 Yutaka Kanemoto<EMAIL_ADDRESS>↑
- common.mk (ruby.imp)
-
avoid circular dependency on AIX
Sun Dec 8 20:21:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- bigdecimal.c (BigDecimal_coerce)
-
convert a Float to a BigDecimal instead of converting the receiver to a Float. The reason is there are BigDecimal instances with precisions that is smaller than the Float's precision. [ruby-core:58756] [Bug #9192]
- test/bigdecimal/test_bigdecimal.rb
-
add tests for the above change.
Sun Dec 8 18:28:20 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
Sun Dec 8 17:52:24 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- object.c
-
[DOC] document Module#singleton_class?.
Sun Dec 8 16:19:28 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- class.c (rb_get_kwargs)
-
if optional is negative, unknown keywords are allowed.
- vm_insnhelper.c (vm_callee_setup_keyword_arg)
-
check unknown keywords.
Sun Dec 8 14:55:12 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- array.c (rb_ary_shuffle_bang, rb_ary_sample)
-
rename local variables.
Sun Dec 8 13:59:38 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- 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.
Sun Dec 8 13:01:11 2013 Aman Gupta<EMAIL_ADDRESS>↑
- vm.c (ruby_vm_stat)
-
add RubyVM.stat for access to internal cache counters. this methods behaves like GC.stat, accepting an optional hash or symbol argument. [Bug #9190] [ruby-core:58750]
- test/ruby/test_rubyvm.rb
-
test for new method
Sun Dec 8 11:59:40 2013 Aman Gupta<EMAIL_ADDRESS>↑
- hash.c (rb_hash_replace)
-
add a write barrier to fix GC mark miss on hashes using Hash#replace [Bug #9226] [ruby-core:58948]
Sun Dec 8 11:21:00 2013 Aman Gupta<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
add RGENGC_WB_PROTECTED_NODE_CREF setting In a large app, this reduces the size of remembered_shady_object_count by 80%. [Bug #9225] [ruby-core:58947]
- gc.c (rb_node_newnode)
-
add FL_WB_PROTECTED flag to NODE_CREF
- class.c (rewrite_cref_stack)
-
insert OBJ_WRITE for NODE_CREF
- iseq.c (set_relation)
-
ditto
- iseq.c (rb_iseq_clone)
-
ditto
- vm_eval.c (rb_yield_refine_block)
-
ditto
- vm_insnhelper.c (vm_cref_push)
-
ditto
- vm_insnhelper.h (COPY_CREF)
-
ditto
Sun Dec 8 10:45:05 2013 Aman Gupta<EMAIL_ADDRESS>↑
- hash.c (hash_aset_str)
-
revert r43870 due to performance issue [Bug #9188] [ruby-core:58730]
- parse.y (assoc)
-
convert literal string hash keys to fstrings
- test/ruby/test_hash.rb (class TestHash)
-
expand test
Sun Dec 8 10:22:38 2013 Aman Gupta<EMAIL_ADDRESS>↑
- parse.y (register_symid_str)
-
use fstrings in symbol table [Bug #9171] [ruby-core:58656]
- parse.y (rb_id2str)
-
ditto
- string.c (rb_fstring)
-
create frozen_strings on first usage. this allows rb_fstring() calls from the parser (before cString is created)
- string.c (fstring_set_class_i)
-
set klass on fstrings generated before cString was defined
- string.c (Init_String)
-
convert frozen_strings table to String objects after boot
- ext/-test-/symbol/type.c (bug_sym_id2str)
-
expose rb_id2str()
- test/-ext-/symbol/test_type.rb (module Test_Symbol)
-
verify symbol table entries are fstrings
Sun Dec 8 10:24:20 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems.rb
-
Update version for upcoming ruby 2.1.0 RC.
Sun Dec 8 10:21:36 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 14749ce. This fixes bugs handling of gem dependencies lockfiles (Gemfile.lock).
- test/rubygems
-
ditto.
Sun Dec 8 09:40:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- 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)
-
use RHASH_TBL_RAW
- vm.c (HASH_ASET)
-
use rb_hash_aset instead of calling directly into st_insert
2013-12-07¶ ↑
Sat Dec 7 11:15:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (rb_hash_reject)
-
copy unrejected elements only to new hash, so that the change on the original receiver can affect. [ruby-core:58914] [Bug #9223]
Sat Dec 7 08:25:00 2013 Richo Healey<EMAIL_ADDRESS>↑
- test/ruby/test_struct.rb
-
Add regression test for question marks and bangs in struct members. [Closes GH-468]
2013-12-06¶ ↑
Fri Dec 6 19:33:39 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- class.c (rb_extract_keywords, rb_get_kwargs)
-
move from vm_insnhelper.c.
Fri Dec 6 19:18:02 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
change oldmalloc meaning. Increase oldmalloc_increase with malloc_increase instead of using obj_memsize_of(). This change will avoid the danger of memory full without major GC.
Fri Dec 6 19:08:48 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (atomic_sub_nounderflow)
-
not 0 but val itself.
Fri Dec 6 18:37:11 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_objspace_alloc, Init_heap)
-
initialize oldmalloc_increase_limit at Init_heap. rb_objspace_alloc() is not called on some platforms.
Fri Dec 6 18:33:39 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (garbage_collect_body)
-
bug fix. initialize after recording.
Fri Dec 6 17:49:46 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (atomic_sub_nounderflow)
-
added to simplify atomic sub with care about underflow.
- gc.c (objspace_malloc_increase)
-
use it.
Fri Dec 6 17:10:44 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_insnhelper.c (rb_get_kwargs)
-
get keyword argument values from an option hash, not only checking keys.
- dir.c (dir_initialize)
-
use rb_get_kwargs.
- gc.c (gc_start_internal)
-
ditto.
Fri Dec 6 16:47:45 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- misc/ruby-mode.el (ruby-brace-to-do-end)
-
split single line block.
- misc/ruby-mode.el (ruby-do-end-to-brace)
-
shrink single line block to one line.
Fri Dec 6 16:16:30 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_start_internal)
-
do not use rb_gc_start() and rb_gc().
Fri Dec 6 15:24:30 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- 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.
Fri Dec 6 14:05:19 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (gc_start_internal)
-
GC.start now accepts two optional keyword arguments. These can be used to disable full_mark (minor mark only) or disable immediate_sweep (use lazy sweep). These new options are useful for benchmarking GC behavior, or performing minor GC out-of-band.
- test/ruby/test_gc.rb (class TestGc)
-
tests for new options.
Fri Dec 6 11:51:28 2013 SHIBATA Hiroshi<EMAIL_ADDRESS>↑
- lib/erb.rb
-
[DOC] fix broken link, Use rubygems.org and www.ruby-toolbox.com instead of RAA. [Bug #9197]
Fri Dec 6 10:50:54 2013 SHIBATA Hiroshi<EMAIL_ADDRESS>↑
- lib/webrick/httprequest.rb
-
[DOC] Fix broken link of CGI specification by @udzura [fix GH-466]
Thu Dec 6 01:27:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- 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 to the result. [Bug #9214] [ruby-core:58858]
- test/bigdecimal/test_bigdecimal.rb
-
add tests case for the above change.
- test/bigdecimal/test_bigdecimal_util.rb
-
ditto.
2013-12-05¶ ↑
Thu Dec 5 22:18:01 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/mkmf.rb (configuration)
-
strip destdir part from prefix to get rid of duplication. a patch by arton at [ruby-core:58859]. [ruby-core:58856] [Bug #9213]
Thu Dec 5 21:53:29 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- array.c (rb_ary_or)
-
lhs elements are preferred, so should not replace with rhs elements.
- test/ruby/test_array.rb (test_OR_in_order)
-
import the test failed by r43969 from rubyspec/core/array/union_spec.rb.
Thu Dec 5 21:05:42 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_info_decode)
-
fix to avoid syntax error on VS2012.
Thu Dec 5 19:21:10 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (struct rb_objspace)
-
rename internal last_collection_flags to latest_gc_info
- gc.c (gc_latest_collection_info)
-
add GC.latest_gc_info with similar behavior to GC.stat
- gc.c (rb_gc_latest_gc_info)
-
new c-api for above
- gc.c (gc_stat_internal)
-
remove :last_collection_flags from GC.stat
- gc.c (gc_profile_decode_flags)
-
remove GC::Profiler.decode_flags
- include/ruby/intern.h (rb_gc_latest_gc_info)
-
export new c-api
- test/ruby/test_gc.rb (class TestGc)
-
test for new behavior
- NEWS
-
note about new api
- gc.c (gc_stat_internal)
-
raise TypeError on wrong type
- gc.c (gc_stat)
-
fix error message
Thu Dec 5 18:18:08 2013 Aman Gupta<EMAIL_ADDRESS>↑
- ext/objspace/gc_hook.c
-
remove this file
- ext/-test-/tracepoint/gc_hook.c
-
new filename for above
- ext/objspace/objspace.c
-
remove ObjectSpace.after_gc_start_hook=
- test/objspace/test_objspace.rb
-
remove test
- test/-ext-/tracepoint/test_tracepoint.rb
-
add above test for tracepoint re-entry
Thu Dec 5 17:44:53 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
change function names vm_ prefix to objspace_ prefix. They are objspace_ functionality.
Thu Dec 5 16:11:04 2013 Aman Gupta<EMAIL_ADDRESS>↑
- 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 method. accepts either VALUE hash like GC.stat, or VALUE symbol key and returns size_t directly. the second form is useful to avoid allocations, i.e. for usage inside INTERNAL_EVENT_GC tracepoints.
- gc.c (gc_stat)
-
add GC.stat(:key) to return single value instead of hash
- gc.c (gc_stat_internal)
-
helper method to retrieve single or all stat values
- test/ruby/test_gc.rb (class TestGc)
-
test for new behavior
- NEWS
-
note about this new api
Thu Dec 5 14:40:41 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (rb_hash)
-
revert r43981 and bail out to the outermost frame when recursion is detected.
Thu Dec 5 13:47:15 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (vm_malloc_size)
-
added. return malloc_usable_size() if possible.
- gc.c (MALLOC_ALLOCATED_SIZE)
-
add new setting macro to enable GC.allocated_size. If platform supports `malloc_usable_size()' (or similar one), GC.allocated_size can be implemented with this function. Default is 0.
- gc.c (vm_xmalloc, vm_xrealloc, vm_xfree)
-
use vm_malloc_size() to detect collect allocated size.
- gc.c (vm_malloc_increase)
-
refactoring.
Thu Dec 5 13:19:03 2013 Aman Gupta<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
remove INTERNAL_EVENT_GC_END and replace with two new events: GC_END_MARK and GC_END_SWEEP
- gc.c (gc_after_sweep)
-
emit GC_END_SWEEP after lazy sweep is done
- gc.c (gc_marks_body)
-
emit GC_END_MARK at end of minor/major mark
- ext/-test-/tracepoint/tracepoint.c (struct tracepoint_track)
-
tests for new events.
- test/-ext-/tracepoint/test_tracepoint.rb (class TestTracepointObj)
-
ditto.
- NEWS
-
remove ObjectSpace.after_gc_*_hook. These are only a sample, and will be removed before ruby 2.1.
- ext/objspace/gc_hook.c
-
remove ObjectSpace.after_gc_end_hook=
Thu Dec 5 10:47:56 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ruby_atomic.h (ATOMIC_PTR_EXCHANGE)
-
atomic exchange function for a generic pointer.
Thu Dec 5 10:47:09 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (finalize_deferred)
-
flush all deferred finalizers while other finalizers can get ready to run newly by lazy sweep. [ruby-core:58833] [Bug #9205]
Thu Dec 5 09:07:59 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (ruby_gc_set_params)
-
Accept safe_level argument so GC tuning settings can be applied before rb_safe_level() is available.
- internal.h (rb_gc_set_params)
-
ditto.
- ruby.c (process_options)
-
Apply GC tuning early during boot process so boot-time allocations can benefit. This also benefits any code loaded in via `ruby -r`.
2013-12-04¶ ↑
Wed Dec 4 13:02:13 2013 Aman Gupta<EMAIL_ADDRESS>↑
- 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 inside rb_threadptr_exec_event_hooks_orig().
Wed Dec 4 12:57:24 2013 Aman Gupta<EMAIL_ADDRESS>↑
- 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 the !existing case, set both key and value to the fstr.
Wed Dec 4 12:47:54 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/delegate.rb (Delegator#method_missing)
-
ignore the target if not set, and delegate to global methods. [ruby-core:58572] [Bug #9155]
- lib/delegate.rb (Delegator#respond_to_missing)
-
ditto.
- lib/delegate.rb (SimpleDelegator#__getobj__)
-
yield and return if not delegated but a block is given, like as Hash#fetch.
- lib/delegate.rb (DelegateClass#__getobj__)
-
ditto.
2013-12-03¶ ↑
Tue Dec 3 23:48:18 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- configure.in
-
check malloc_size() availability.
- gc.c
-
use malloc_size() with malloc/malloc.h if available.
Tue Dec 3 23:06:20 2013 Narihiro Nakamura<EMAIL_ADDRESS>↑
- object.c (rb_obj_clone)
-
don't copy FL_WB_PROTECTED of a original object.
Tue Dec 3 22:32:18 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (rb_hash_recursive)
-
make similar (recursive) constructs return same hash value. execute recursively, and rewind to the topmost frame with an object which .eql? to the recursive object, if recursion is detected.
- hash.c (rb_hash)
-
detect recursion for all `hash' methods. each `hash' methods no longer need to use rb_exec_recursive().
Tue Dec 3 21:53:15 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_eval.c (rb_catch_protect)
-
new function similar to rb_catch_obj(), but protect from all global jumps like as rb_load_protect(), rb_protect(), etc.
Tue Dec 3 20:18:46 2013 Narihiro Nakamura<EMAIL_ADDRESS>↑
- object.c (rb_obj_clone)
-
Protect FL_PROMOTED and FL_WB_PROTECTED flags of a destination object.
Tue Dec 3 20:16:38 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_hash_rehash)
-
use hash_alloc() instead of rb_hash_new(), to hide temporary object from ObjectSpace. [Bug #9187]
Tue Dec 3 17:11:47 2013 Aman Gupta<EMAIL_ADDRESS>↑
- 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 structure.
- vm.c (rb_vm_mark)
-
Remove unnecessary mark_tbl for loaded_features_index. This improves minor GC time by 15% in a large application.
Tue Dec 3 17:01:45 2013 Aman Gupta<EMAIL_ADDRESS>↑
- 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 same method table. This improves minor mark time in a large application by 30%.
- internal.h (struct method_table_wrapper)
-
Define new wrapper struct with additional serial.
- internal.h (RCLASS_M_TBL_INIT)
-
New macro for initializing method table wrapper and st_table.
- method.h (void rb_sweep_method_entry)
-
Rename rb_free_m_table to rb_free_m_tbl for consistency
- .gdbinit (define rb_method_entry)
-
Update rb_method_entry gdb helper for new method table structure.
- class.c
-
Use RCLASS_M_TBL_WRAPPER and RCLASS_M_TBL_INIT macros.
- class.c (rb_include_class_new)
-
Share WRAPPER between module and iclass, so serial can prevent double marking.
- eval.c (rb_prepend_module)
-
ditto.
- eval.c (rb_using_refinement)
-
ditto.
- gc.c
-
Mark and free new wrapper struct.
- gc.c (obj_memsize_of)
-
Count size of additional wrapper struct.
Tue Dec 3 14:05:49 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_uniq_bang)
-
remove duplicate code.
Tue Dec 3 13:40:42 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- 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.
- array.c (rb_ary_uniq)
-
ditto.
- test/ruby/test_array.rb
-
tests for above. The patch is from normalperson (Eric Wong).
Tue Dec 3 12:20:21 2013 Aman Gupta<EMAIL_ADDRESS>↑
- string.c (rb_fstring)
-
Use st_update instead of st_lookup + st_insert.
- string.c (fstr_update_callback)
-
New callback for st_update.
Tue Dec 3 12:17:59 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/rdoc/constant.rb (RDoc::Constant#documented?)
-
workaround for NoMethodError when the original of alias is not found.
Tue Dec 3 10:43:58 2013 Eric Hodel<EMAIL_ADDRESS>↑
- 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.
Tue Dec 3 09:42:27 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rdoc
-
Update to RDoc master 900de99. Changes include: Fixed documentation display of constants Fixed handling of unknown parsers
- test/rdoc
-
ditto.
2013-12-02¶ ↑
Mon Dec 2 22:30:10 2013 NAKAMURA Usaku<EMAIL_ADDRESS>↑
- hash.c (getenv)
-
fixed test failures introduced by r43950. [ruby-core:58774] [Bug #9195] reported by phasis68 (Heesob Park).
Mon Dec 2 21:49:19 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- 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.
Mon Dec 2 17:23:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- 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]
Mon Dec 2 14:16:52 2013 Eric Hodel<EMAIL_ADDRESS>↑
- 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 above.
Mon Dec 2 05:52:33 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master baa965b. Notable changes: Copy directories to lib/ when installing extensions. This completes the fix for [ruby-trunk - Bug #9106]
- test/rubygems
-
ditto.
Mon Dec 2 02:03:47 2013 Shota Fukumori<EMAIL_ADDRESS>↑
- test/ruby/test_case.rb (test_nomethoderror)
-
Add test related to r43913, r43914
Mon Dec 2 00:53:01 2013 NAKAMURA Usaku<EMAIL_ADDRESS>↑
- hash.c (getenv)
-
use ANSI codepage version of getenv() for miniruby on Windows. [ruby-core:58732] [Bug #9189] reported by phasis68 (Heesob Park).
2013-12-01¶ ↑
Sun Dec 1 22:14:27 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributors.rdoc
-
[DOC] Import contributors from redmine wiki Many wiki pages have become outdated and spam-ridden, we will import these to trunk and begin maintaining them in ruby-trunk. This will also allow new contributors to easily contribute patches to update these pages, where previously a redmine account with wiki access was required. Another bonus is having a contributors file to show thanks to all of the people who have submitted a patch to Ruby.
Sun Dec 1 18:03:26 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/maintainers.rdoc
-
[DOC] Current maintainers of Ruby
Sun Dec 1 17:17:36 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Current branch maintainers
Sun Dec 1 17:16:36 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Reporting other (ruby-lang.org) issues
Sun Dec 1 17:15:51 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Current platform maintainers
Sun Dec 1 17:14:55 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Reporting downstream distro issues
Sun Dec 1 14:37:20 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- hash.c (rb_hash_to_a)
-
specify array capa.
Sun Dec 1 14:15:36 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- hash.c (rb_hash_rehash)
-
fix to free new st_table when exception is raised in do_hash(). [Bug #9187]
Sun Dec 1 11:57:59 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/buffering.rb
-
Fix warning in copyright
Sun Dec 1 08:27:28 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 66e5c39. Notable changes: Implement gem.deps.rb (Gemfile) .lock support Fixed `gem uninstall` for a relative directory in GEM_HOME.
- test/rubygems
-
ditto.
Sun Dec 1 06:00:49 2013 Aman Gupta<EMAIL_ADDRESS>↑
- test/ruby/test_gc.rb (test_gc_reason)
-
Force minor GC by consuming free slots to fix test.
2013-11-30¶ ↑
Sat Nov 30 21:22:11 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- dir.c (dir_initialize)
-
check unknown keywords. [ruby-dev:47152] [Bug #8060]
Sat Nov 30 18:05:38 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/win32ole/win32ole.c (hash2named_arg)
-
correct declaration to fix build failure. a patch by phasis68 (Heesob Park) at [ruby-core:58710]. [Bug #9184]
Sat Nov 30 17:46:35 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- eval.c (ruby_cleanup)
-
determine exit status and signal to terminate before finalization, to get rid of access destroyed T_DATA exception object. [ruby-core:58643] [Bug #9167]
Sat Nov 30 16:25:14 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- enumerator.c (enumerator_with_index)
-
should not store local variable address to memoize the arguments. it is invalidated after the return. [ruby-core:58692] [Bug #9178]
Sat Nov 30 13:28:13 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- siphash.c (sip_hash24)
-
fix for aligned word access little endian platforms. [ruby-core:58658] [Bug #9172]
Sat Nov 30 13:21:15 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_eval.c (rb_yield_block)
-
implement non-nil block argument.
2013-11-29¶ ↑
Fri Nov 29 20:59:39 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- vm_dump.c (rb_vmdebug_debug_print_pre)
-
Bugfix. Get PC directly. PC is cached into local stack and cfp->pc is incorrect at next of branch or jump.
- vm_exec.h (DEBUG_ENTER_INSN)
-
catch up this change.
- vm_core.h
-
update signature of rb_vmdebug_debug_print_pre.
Fri Nov 29 20:43:57 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- compile.c
-
Bugsfix for dump_disasm_list. rb_inspect denies a hidden object. So, insert wrapper that creates the unhidden one. adjust->label is null sometimes. insn_data_line_no makes no sense at all.
Fri Nov 29 18:06:45 2013 Shota Fukumori<EMAIL_ADDRESS>↑
- test/ruby/test_case.rb (test_method_missing)
-
Test for r43913.
Fri Nov 29 17:53:22 2013 Shota Fukumori<EMAIL_ADDRESS>↑
- vm_insnhelper.c (check_match)
-
Fix SEGV with VM_CHECKMATCH_TYPE_CASE and class of `pattern` has `method_missing` [Bug #8872] [ruby-core:58606]
Fri Nov 29 17:06:09 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_eval.c (rb_yield_block)
-
yield block with rb_block_call_func arguments.
- range.c (range_each)
-
use rb_yield_block.
- include/ruby/ruby.h (RB_BLOCK_CALL_FUNC_ARGLIST)
-
constify argv.
- enum.c (rb_enum_values_pack)
-
ditto.
- vm_eval.c (rb_block_call, rb_check_block_call)
-
ditto.
- include/ruby/ruby.h (RB_BLOCK_CALL_FUNC_ARGLIST)
-
for declaration argument list of rb_block_call_func.
Fri Nov 29 11:26:43 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h (rb_block_call_func)
-
add blockarg. block function can take block argument, e.g., proc {|&blockarg| …}.
2013-11-28¶ ↑
Thu Nov 28 21:43:48 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/dtrace_probes.rdoc
-
[DOC] Import dtrace probes doc from wiki
Thu Nov 28 21:17:32 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Add heading above ChangeLog tips to setup entry for commits, its not required. Actually easier if contributors don't include a ChangeLog entry.
Thu Nov 28 21:16:18 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Add coding style heading for patch rules
Thu Nov 28 21:15:45 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Add notes about deciding what to patch
Thu Nov 28 19:43:45 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- benchmark/bm_hash_flatten.rb
-
added. r43896 is about 4 times faster than 2.0.0p353.
- benchmark/bm_hash_keys.rb
-
added. r43896 is about 5 times faster than 2.0.0p353.
- benchmark/bm_hash_values.rb
-
added. r43896 is about 5 times faster than 2.0.0p353.
Thu Nov 28 19:29:04 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/contributing.rdoc
-
[DOC] Add notes about slideshow proposals from wiki page: HowToRequestFeatures
Thu Nov 28 17:34:42 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- st.c
-
add st_values() and st_values_check().
- include/ruby/st.h
-
add prototypes for above.
- hash.c (rb_hash_values)
-
use st_values_check() for performance improvement if VALUE and st_data_t are compatible.
Thu Nov 28 17:14:14 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- st.c (st_keys)
-
fix not to use Qundef in st.c.
- include/ruby/st.h
-
define modified prototype.
- hash.c (rb_hash_keys)
-
use modified st_keys().
Thu Nov 28 16:34:43 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c
-
Expose details about last garbage collection via GC.stat.
- gc.c (gc_stat)
-
Add :last_collection_flags for reason/trigger/type of last GC run.
- gc.c (gc_prof_sweep_timer_stop)
-
Record HAVE_FINALIZE GPR even without GC_PROFILE_MORE_DETAIL.
- gc.c (gc_profile_flags)
-
Add GC::Profiler.decode_flags to make sense of GC.stat
- test/ruby/test_gc.rb (class TestGc)
-
Test for above.
Thu Nov 28 16:15:47 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- win32/win32.c (rb_w32_dup2)
-
extract from rb_cloexec_dup2() and redirect_dup2().
Tue Nov 28 14:40:00 2013 Akira Matsuda<EMAIL_ADDRESS>↑
- lib/drb/ssl.rb
-
[Doc] Fix typo
Thu Nov 28 13:56:05 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- common.mk (Doxyfile)
-
tool/file2lastrev.rb needs running with BASERUBY since r43617. [ruby-dev:47823] [Bug #9169]
Thu Nov 28 09:18:39 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- string.c (rb_fstring)
-
fstrings should be ELTS_SHARED. If we resurrect dying objects (non-marked, but not swept yet), pointing shared string can be collected. To avoid such issue, fstrings (recorded to fstring_table) should not be ELTS_SHARED (should not have a shared string).
Thu Nov 28 01:35:08 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- st.c (st_keys)
-
fix to use st_index_t for size of hash.
Thu Nov 28 00:36:52 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- st.c (st_keys)
-
define st_keys(). it writes each key to buffer.
- hash.c (rb_hash_keys)
-
use st_keys() for performance improvement if st_data_t and VALUE are compatible.
- include/ruby/st.h
-
define macro ST_DATA_COMPATIBLE_P() to predicate whether st_data_t and passed type are compatible.
- configure.in
-
check existence of builtin function to use in ST_DATA_COMPATIBLE_P().
Thu Nov 28 00:07:28 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- ruby_atomic.h
-
remove duplicate definitions between ATOMIC_XXX and ATOMIC_SIZE_XXX.
2013-11-27¶ ↑
Wed Nov 27 23:55:50 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- ruby_atomic.h
-
define ATOMIC_SIZE_CAS() with __atomic_compare_exchange_n() and refactoring.
Tue Nov 27 21:43:00 2013 Akira Matsuda<EMAIL_ADDRESS>↑
- lib/irb/notifier.rb
-
[Doc] Fix typo
- ext/json/lib/json/common.rb
-
Ditto.
Tue Nov 27 18:04:57 2013 Akira Matsuda<EMAIL_ADDRESS>↑
- lib/irb/notifier.rb
-
Fix typo
Wed Nov 27 17:54:57 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_mark_stacked_objects)
-
check only when check_mode > 0.
Wed Nov 27 16:07:19 2013 Aman Gupta<EMAIL_ADDRESS>↑
- test/ruby/test_gc.rb (class TestGc)
-
Fix warning in test_expand_heap.
Wed Nov 27 15:55:52 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (Init_GC)
-
Add new GC::INTERNAL_CONSTANTS for information about GC heap/page/slot sizing.
- test/ruby/test_gc.rb (class TestGc)
-
test for above.
Wed Nov 27 15:21:17 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (gc_page_sweep)
-
Fix compile warning from last commit.
- hash.c (hash_aset_str)
-
Re-use existing variable to avoid unnecessary pointer dereferencing.
Wed Nov 27 15:12:55 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_page_sweep)
-
disable debug print.
Wed Nov 27 15:05:59 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_stat)
-
add new information heap_eden_page_length and heap_tomb_page_length.
- test/ruby/test_gc.rb
-
fix to use GC.stat instead of GC.stat. This test expects `heap_eden_page_length' (used pages size).
Wed Nov 27 15:02:53 2013 Aman Gupta<EMAIL_ADDRESS>↑
- test/ruby/test_eval.rb (class TestEval)
-
Use assert_same instead of assert_equal.
- test/ruby/test_hash.rb (class TestHash)
-
ditto.
- test/ruby/test_iseq.rb (class TestISeq)
-
ditto.
Wed Nov 27 14:50:02 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rinda/ring.rb
-
Announce RingServer for the same process. [ruby-trunk - Bug #9163]
- test/rinda/test_rinda.rb
-
Tests for the above.
Wed Nov 27 14:37:33 2013 Aman Gupta<EMAIL_ADDRESS>↑
- test/ruby/test_eval.rb (class TestEval)
-
Add test for shared eval filenames via rb_fstring().
- test/ruby/test_iseq.rb (class TestISeq)
-
Add test for shared iseq labels via rb_fstring(). [Bug #9159]
Wed Nov 27 14:24:55 2013 Aman Gupta<EMAIL_ADDRESS>↑
- hash.c (hash_aset_str)
-
Use rb_fstring() to de-duplicate hash string keys. Patch by Eric Wong. [Bug #8998] [ruby-core:57727]
- test/ruby/test_hash.rb (class TestHash)
-
test for above.
Wed Nov 27 10:39:39 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c
-
Rename rb_heap_t members: used -> page_length limit -> total_slots
Wed Nov 27 08:24:49 2013 Aman Gupta<EMAIL_ADDRESS>↑
- compile.c
-
Use rb_fstring() to de-duplicate string literals in code. [ruby-core:58599] [Bug #9159] [ruby-core:54405]
- iseq.c (prepare_iseq_build)
-
De-duplicate iseq labels and source locations.
- re.c (rb_reg_initialize)
-
Use rb_fstring() for regex string.
- string.c (rb_fstring)
-
Handle non-string and already-fstr arguments.
- vm_eval.c (eval_string_with_cref)
-
De-duplicate eval source filename.
Wed Nov 27 07:13:54 2013 Aaron Patterson<EMAIL_ADDRESS>↑
- ext/psych/lib/psych.rb
-
psych version 2.0.2
- ext/psych/psych.gemspec
-
ditto
Wed Nov 27 06:40:18 2013 Aaron Patterson<EMAIL_ADDRESS>↑
- ext/psych/lib/psych/scalar_scanner.rb
-
fix support for negative years.
- ext/psych/lib/psych/visitors/yaml_tree.rb
-
ditto
- test/psych/test_date_time.rb
-
test for change. Fixes: github.com/tenderlove/psych/issues/168
Wed Nov 27 04:46:55 2013 Aaron Patterson<EMAIL_ADDRESS>↑
- ext/psych/lib/psych/scalar_scanner.rb
-
fix regexp for matching TIME strings.
- test/psych/test_date_time.rb
-
test for change. Fixes: github.com/tenderlove/psych/issues/171
Wed Nov 27 02:26:58 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- string.c (str_new4)
-
copy the original capacity so that memsize of frozen shared string returns correct size.
Wed Nov 27 02:20:13 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- array.c (rb_ary_hash)
-
should not ignore the rest of recursive constructs.
- hash.c (rb_hash_hash)
-
ditto.
- range.c (range_hash)
-
ditto.
- struct.c (rb_struct_hash)
-
ditto.
- test/-ext-/test_recursion.rb (TestRecursion)
-
separate from test/ruby/test_thread.rb.
2013-11-26¶ ↑
Tue Nov 26 22:43:36 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (rb_hash)
-
cut off if recursion detected to get rid of stack overflow. [ruby-core:58567] [Bug #9151]
Tue Nov 26 20:02:39 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- test/ruby/test_settracefunc.rb
-
add tests for a_call/a_return by Brandur<EMAIL_ADDRESS>[Feature #9120]
Tue Nov 26 19:29:52 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- common.mk
-
add useful config “set breakpoint pending on” for run.gdb.
Tue Nov 26 19:17:47 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c (newobj_i)
-
skip class_path if class is frozen. rb_class_path() can modify frozen classes (and causes errors). This patch is temporary. We need no-modification/no-allocation class path function.
Tue Nov 26 18:12:13 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_trace.c
-
skip “exception check” and “reentrant check (only normal events) for internal events. Reentrant check for internal events are remaining.
Tue Nov 26 17:38:16 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_trace.c
-
prohibit to specify normal events and internal events simultaneously. I will introduce special care for internal events later.
- ext/-test-/tracepoint/tracepoint.c
-
test this behavior.
- test/-ext-/tracepoint/test_tracepoint.rb
-
ditto.
Tue Nov 26 16:30:31 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- file.c (rb_readlink)
-
fix buffer overflow on a long symlink. since rb_str_modify_expand() expands from its length but not its capacity, need to set the length properly for each expansion. [ruby-core:58592] [Bug #9157]
Tue Nov 26 14:23:17 2013 Aman Gupta<EMAIL_ADDRESS>↑
- ext/objspace/objspace_dump.c (dump_append_string_value)
-
Escape control characters for strict json parsers.
- ext/objspace/objspace_dump.c (objspace_dump)
-
Document File/IO output option.
Tue Nov 26 11:43:19 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- ruby_atomic.h
-
use __atomic builtin functions supported by GCC. __sync family are legacy functions now and it is recommended that new code use the __atomic functions. gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html
- configure.in
-
check existence of __atomic functions.
Tue Nov 26 10:57:49 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.gemspec
-
revert Gem::Specification#date for snapshot/release tarballs.
Tue Nov 26 06:42:50 2013 Aman Gupta<EMAIL_ADDRESS>↑
- NEWS
-
Add ObjectSpace.after_gc_{start,end}_hook=
- ext/objspace/objspace_dump.c
-
[DOC] catch up dump/dump_all to r43679
Tue Nov 26 04:12:10 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 612f85a. Notable changes: Fixed installation and activation of git: and path: gems via Gem.use_gemdeps Improved documentation coverage
- test/rubygems
-
ditto.
2013-11-25¶ ↑
Mon Nov 25 22:23:03 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/xmlrpc.rb
-
[DOC] Fix link to xmlrpc4r site [Bug #9148] Patch by Giorgos Tsiftsis
Mon Nov 25 19:48:10 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/uri/common.rb
-
[DOC] typo fixes by @vipulnsward [Fixes GH-456] github.com/ruby/ruby/pull/456
- lib/uri/generic.rb
-
[DOC] ditto.
Mon Nov 25 14:34:42 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.gemspec
-
bump BigDecimal to 1.2.3 for proper release date in RubyGems
Mon Nov 25 14:25:08 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.gemspec
-
Remove Gem::Specification#date We should rely on rubygems to create the date the gem was released for each version.
Mon Nov 25 06:53:30 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- internal.h
-
do not use ruby_sized_xrealloc() and ruby_sized_xfree() if HAVE_MALLOC_USABLE_SIZE (or _WIN32) is defined. We don't need these function if malloc_usable_size() is available.
- gc.c
-
catch up this change.
- gc.c
-
define HAVE_MALLOC_USABLE_SIZE on _WIN32.
- array.c (ary_resize_capa)
-
do not use ruby_sized_xfree() with local variable to avoid “unused local variable” warning. This change only has few impact.
- string.c (rb_str_resize)
-
ditto.
Mon Nov 25 05:05:04 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- test/-ext-/tracepoint/test_tracepoint.rb
-
catch up GC.stat changes at r43835.
Mon Nov 25 04:45:59 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
continue to change OLDSPACE -> OLDMALLOC. RGENGC_ESTIMATE_OLDSPACE -> RGENGC_ESTIMATE_OLDMALLOC.
- gc.c
-
add a new major GC reason GPR_FLAG_MAJOR_BY_OLDMALLOC.
Mon Nov 25 04:16:09 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
change terminology “…_num” to “…_slots” about slot operation. * final_num -> final_slots * objspace_live_num() -> objspace_live_slots() * objspace_limit_num() -> objspace_limit_slots() * objspace_free_num() -> objspace_free_slots()
Mon Nov 25 04:03:12 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_stat)
-
add internal information. * heap_swept_slot * malloc_increase * malloc_limit * remembered_shady_object * remembered_shady_object_limit * old_object * old_object_limit * oldmalloc_increase * oldmalloc_limit
- gc.c (gc_stat)
-
rename names. * heap_live_num -> heap_live_slot * heap_free_num -> heap_free_slot * heap_final_slot -> heap_final_slot Quote from RDoc of GC.stat: “The contents of the hash are implementation specific and may be changed in the future.”
- test/ruby/test_gc.rb
-
catch up this change.
Mon Nov 25 03:59:45 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- test/ruby/test_gc.rb
-
catch up last commit. Now RUBY_GC_OLDSPACE_LIMIT(…) is RUBY_GC_OLDMALLOC_LIMIT(…).
Mon Nov 25 03:10:46 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
change terminology OLDSPACE -> OLDMALLOC.
Mon Nov 25 00:50:03 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- internal.h
-
use __builtin_bswap16() if possible.
- configure.in
-
check existence of __builtin_bswap16().
2013-11-24¶ ↑
Sun Nov 24 22:24:19 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- bignum.c (bigxor_int)
-
Apply BIGLO for long in a BDIGIT expression.
- (bigor_int)
-
Ditto.
- (bigand_int)
-
Ditto.
Sun Nov 24 18:13:23 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- include/ruby/defines.h (SIZEOF_ACTUAL_BDIGIT)
-
Defined.
- include/ruby/ruby.h (RBIGNUM_EMBED_LEN_MAX)
-
Use SIZEOF_ACTUAL_BDIGIT instead of SIZEOF_BDIGITS. SIZEOF_BDIGITS can be different to sizeof(BDIGIT).
Sun Nov 24 13:49:08 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- include/ruby/defines.h
-
Don't use int128_t for Bignum. It's not always faster.
- bignum.c
-
Ditto.
Sun Nov 24 10:18:15 2013 Aman Gupta<EMAIL_ADDRESS>↑
- NEWS
-
Add details about new debugging features and APIs.
Sun Nov 24 09:37:20 2013 Andrew Vit<EMAIL_ADDRESS>↑
- lib/csv.rb
-
Optimize header hashes by freezing string keys. [ruby-core:58510]
Sun Nov 24 09:18:06 2013 Aman Gupta<EMAIL_ADDRESS>↑
- ext/objspace/objspace_dump.c (dump_object)
-
Use PRIuSIZE to print size_t for better win32 compatibility.
- test/objspace/test_objspace.rb (test_dump_all)
-
Hold reference to test string to avoid failure due to GC. Reduce size of failure message using grep(/TEST STRING/).
Sun Nov 24 08:38:00 2013 Kyle Stevens<EMAIL_ADDRESS>↑
- lib/csv.rb
-
If skip_lines is set to a String, convert it to a Regexp to prevent the alternative, which is that each line in the CSV gets converted to a Regexp when calling skip_lines#match.
Sun Nov 24 01:03:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigDecimal_power)
-
Use FIX2LONG instead of FIX2INT to avoid conversion error.
Sun Nov 24 00:44:30 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h (RBIGNUM_EMBED_LEN_MAX)
-
define by macros defined in defines.h, instead of complex and repeated expression.
2013-11-23¶ ↑
Sat Nov 23 22:22:26 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- include/ruby/ruby.h (RBIGNUM_EMBED_LEN_MAX)
-
Limit the value to less than 8.
Sat Nov 23 19:52:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/lib/bigdecimal/math.rb (BigMath.E)
-
Use BigMath.exp. [Feature #6857] [ruby-core:47130]
Sat Nov 23 19:46:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigMath_s_exp)
-
Optimize the calculation algorithm to reduce the number of divisions. This optimization was proposed by Rafal Michalski. [Feature #6857] [ruby-core:47130]
Sat Nov 23 19:20:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigDecimal_div2)
-
The signature was changed to allow us to pass arguments directly.
- ext/bigdecimal/bigdecimal.c (BigDecimal_div3)
-
Added for the role of the old BigDecimal_div2.
Sat Nov 23 12:31:00 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
fix global variable name. Now we have following environments (and related variable names). * RUBY_GC_HEAP_INIT_SLOTS * RUBY_GC_HEAP_FREE_SLOTS * RUBY_GC_HEAP_GROWTH_FACTOR (new from 2.1) * RUBY_GC_HEAP_GROWTH_MAX_SLOTS (new from 2.1) * obsolete * RUBY_FREE_MIN -> RUBY_GC_HEAP_FREE_SLOTS (from 2.1) * RUBY_HEAP_MIN_SLOTS -> RUBY_GC_HEAP_INIT_SLOTS (from 2.1) * RUBY_GC_MALLOC_LIMIT * RUBY_GC_MALLOC_LIMIT_MAX (new from 2.1) * RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR (new from 2.1) * RUBY_GC_OLDSPACE_LIMIT (new from 2.1) * RUBY_GC_OLDSPACE_LIMIT_MAX (new from 2.1) * RUBY_GC_OLDSPACE_LIMIT_GROWTH_FACTOR (new from 2.1)
- test/ruby/test_gc.rb
-
catch up this change.
Sat Nov 23 09:45:49 2013 Aman Gupta<EMAIL_ADDRESS>↑
- marshal.c (w_object)
-
Use HASH_PROC_DEFAULT directly from internal.h
Sat Nov 23 08:43:23 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c
-
Rename heap_pages_swept_num to heap_pages_swept_slots to clarify meaning (number of slots, not pages).
Sat Nov 23 08:23:23 2013 Aman Gupta<EMAIL_ADDRESS>↑
- lib/set.rb (class SortedSet)
-
Fix source_location for methods defined via eval.
Sat Nov 23 03:44:03 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master dcce4ff. Important changes in this commit: Remove automatic detection of gem dependencies files. This prevents a security hole as described in [ruby-core:58490] Fixed bugs for installing git gems.
- test/rubygems
-
ditto.
2013-11-22¶ ↑
Fri Nov 22 22:30:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigDecimal_power)
-
Round the result value only if the precision is given.
Fri Nov 22 17:20:50 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- transcode.c (str_transcode0)
-
don't scrub invalid chars if str.encode doesn't have explicit invalid: :replace. workaround fix for see #8995
Fri Nov 22 17:11:26 2013 Narihiro Nakamura<EMAIL_ADDRESS>↑
- include/ruby/intern.h, internal.h
-
Expose rb_gc_count().
Fri Nov 22 17:07:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.gemspec
-
version 1.2.2.
Fri Nov 22 17:04:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigDecimal_data_type)
-
Use RUBY_TYPED_FREE_IMMEDIATELY only if it is available.
Fri Nov 22 16:49:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigDecimal_power)
-
Round the result value. [Bug #8818] [ruby-core:56802]
- test/bigdecimal/test_bigdecimal.rb
-
Add a test for the above fix.
Fri Nov 22 16:25:43 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (heap_set_increment)
-
accept minimum additional page number.
- gc.c (gc_after_sweep)
-
allocate pages to allocate at least RUBY_HEAP_MIN_SLOTS. [Bug #9137]
Fri Nov 22 16:19:52 2013 Narihiro Nakamura<EMAIL_ADDRESS>↑
- include/ruby/intern.h (rb_gc_set_params)
-
Deprecate rb_gc_set_params because it's only used in ruby internal.
- internal.h (ruby_gc_set_params)
-
Declare rb_gc_set_params's alias function.
- gc.c
-
ditto.
- ruby.c
-
use ruby_gc_set_params.
Fri Nov 22 14:55:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigMath_s_exp)
-
Insert rb_thread_check_ints.
Fri Nov 22 14:35:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigMath_s_exp)
-
Fix the inserting points of RB_GC_GUARDs.
Fri Nov 22 14:31:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c
-
Fix indentation.
Fri Nov 22 14:03:00 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- ext/nkf
-
merge nkf 2.1.3 2a2f2c5.
Fri Nov 22 12:43:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- util.c (ruby_strtod)
-
ignore too long fraction part, which does not affect the result.
Fri Nov 22 12:17:14 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/buffering.rb (OpenSSL::Buffering#initialize)
-
initialize of a module should pass arguments to super.
Fri Nov 22 12:02:58 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/ruby/test_settracefunc.rb
-
Ignore events from other threads.
Fri Nov 22 10:35:57 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm.c (ruby_vm_destruct)
-
do not use ruby_xfree() after freeing objspace.
- gc.c (ruby_mimfree)
-
added. It is similar to ruby_mimmalloc().
- internal.h
-
ditto.
Fri Nov 22 09:42:35 2013 Zachary Scott<EMAIL_ADDRESS>↑
- test/digest/test_digest.rb
-
Reverse order of assert_equal Reported by @splattael
Fri Nov 22 09:03:16 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- gc.c
-
fix build failure on FreeBSD introduced by r43763. malloc_usable_size() is defined by malloc_np.h on FreeBSD.
- configure.in
-
check malloc.h and malloc_np.h.
Fri Nov 22 08:27:13 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 50a8210. Important changes in this commit: RubyGems now automatically checks for gem.deps.rb or Gemfile when running ruby executables. This behavior is similar to `bundle exec rake`. This change may be reverted before Ruby 2.1.0 if too many bugs are found.
- test/rubygems
-
ditto.
2013-11-21¶ ↑
Thu Nov 21 22:33:59 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
RGENGC_CHECK_MODE should be 0.
Thu Nov 21 21:40:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (VpAlloc)
-
Fix the expr to adjust the size of the digit array.
Thu Nov 21 21:36:00 2013 Kenta Murata<EMAIL_ADDRESS>↑
- ext/bigdecimal/bigdecimal.c (BigDecimal_sqrt)
-
Fix the precision of the result BigDecimal of sqrt. [Bug #5266] [ruby-dev:44450]
- test/bigdecimal/test_bigdecimal.rb
-
add tests for the above changes.
Thu Nov 21 18:49:02 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (vm_xrealloc, vm_xfree)
-
use malloc_usable_size() to obtain old size if available.
Thu Nov 21 18:47:29 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/delegate.rb (SimpleDelegator#__getobj__)
-
target object must be set.
- lib/delegate.rb (DelegateClass#__getobj__)
-
ditto.
Thu Nov 21 18:28:42 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/tempfile.rb (Tempfile#initialize)
-
use class method to get rid of warnings when $VERBOSE.
Thu Nov 21 17:43:29 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
rename initial_xxx variables to gc_params.xxx. They are not only used initial values. Chikanaga-san: Congratulations on RubyPrize!
Thu Nov 21 17:16:00 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
enable “RGENGC_ESTIMATE_OLDSPACE” option as default. Without this option, some application consumes huge memory.
- (and there are only a few performance down) Introduced new environment variables
-
* RUBY_GC_HEAP_OLDSPACE (default 16MB) * RUBY_GC_HEAP_OLDSPACE_MAX (default 128 MB) * RUBY_GC_HEAP_OLDSPACE_GROWTH_FACTOR (default 1.2)
- gc.c (initial_malloc_limit)
-
rename to initial_malloc_limit_min.
Thu Nov 21 16:51:34 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/digest/bubblebabble/bubblebabble.c
-
Teach RDoc digest/bubblebabble
Thu Nov 21 16:50:16 2013 Zachary Scott<EMAIL_ADDRESS>↑
- test/digest/test_digest.rb
-
Add more tests for digest/bubblebabble
Thu Nov 21 16:32:47 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/delegate.rb (Delegator#method_missing)
-
try private methods defined in Kernel after the target. [Fixes GH-449]
Thu Nov 21 16:25:08 2013 Akinori MUSHA<EMAIL_ADDRESS>↑
- test/uri/test_generic.rb (URI#test_merge)
-
Test uri + URI(path) in addition to uri + path.
Thu Nov 21 15:36:08 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/buffering.rb
-
[DOC] Fix HEREDOC comment for OpenSSL::Buffering which breaks overview because of RDoc bug
Thu Nov 21 14:46:57 2013 NAKAMURA Usaku<EMAIL_ADDRESS>↑
- eval_intern.h (SAVE_ROOT_JMPBUF)
-
workaround for the failure of test/ruby/test_exception.rb on Windows. wrap by __try and __exception statements on mswin to raise SIGSEGV when EXCEPTION_STACK_OVERFLOW is occurred, because MSVCRT doesn't handle the exception. however, (1) mingw-gcc doesn't support __try and __exception statements, and (2) we cannot retry SystemStackError after this change yet (maybe crashed) because SEH and longjmp() are too uncongenial.
- signal.c (check_stack_overflow, CHECK_STACK_OVERFLOW)
-
now defined on Windows, too.
- thread_win32.c (ruby_stack_overflowed_p)
-
ditto.
Thu Nov 21 14:18:24 2013 Zachary Scott<EMAIL_ADDRESS>↑
- object.c
-
[DOC] Clarify Object#dup vs clone [Bug #9128] Moving existing doc for this comparison to separate section of dup Adding examples to document behavior of dup with Object#extend. Based on a patch by stevegoobermanhill
Thu Nov 21 14:06:02 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_marks_check)
-
do not dump all refs.
- gc.c (allrefs_dump_i)
-
fix output format.
Thu Nov 21 13:43:07 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
change RGENGC_CHECK_MODE (>= 2) logic. Basically, make an object graph of all of living objects before and after marking and check status. [Before marking: check WB sanity] If there is a non-old object `obj' pointed from old object
- (`parent') then `parent' or `obj' should be remembered. [After marking
-
check marking miss] Traversible objects with the object graph should be marked.
- gc.c (init_mark_stack)
-
do not use push_mark_stack_chunk() at init. This pre-allocation causes failure on is_mark_stack_empty() without any pushing.
Thu Nov 21 13:40:20 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/observer.rb
-
[DOC] Clarify default observer method. By @edward [Fixes GH-450] github.com/ruby/ruby/pull/450
Thu Nov 21 13:32:53 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/ossl_engine.c
-
[DOC] Documentation for OpenSSL::Engine This patch is based off work by @vbatts in GH-436 completing the documentation for this class and its methods. github.com/ruby/ruby/pull/436
Thu Nov 21 10:45:22 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/buffering.rb
-
Remove unused arguments from OpenSSL::Buffering.new [Fixes GH-445]
Thu Nov 21 10:30:47 2013 Zachary Scott<EMAIL_ADDRESS>↑
- test/digest/test_digest.rb
-
Add test for Digest::SHA256.bubblebabble
2013-11-20¶ ↑
Wed Nov 20 20:54:01 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- tool/instruction.rb
-
fix typo.
Wed Nov 20 19:45:22 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- random.c (rand_init)
-
Make it possible to specify arbitrary array for init_genrand().
Wed Nov 20 17:34:13 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- parse.y (rb_gc_mark_symbols)
-
set global_symbols.minor_marked only when full_mark is 0. rb_gc_mark_symbols() (with full_mark == 1) can be called by other than GC (such as rb_objspace_reachable_objects_from_root()).
Wed Nov 20 11:46:38 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- ext/json
-
merge JSON 1.8.1. github.com/nurse/json/compare/002ac2771ce32776b32ccd2d06e5604de6c36dcd…e09ffc0d7da25d0393873936c118c188c78dbac3
- Fix https
-
//github.com/flori/json/issues/162 reported by Marc-Andre Lafortune<EMAIL_ADDRESS>Thanks!
- Add load/dump interface to JSON
-
:GenericObject to make serialize :some_attribute, JSON::GenericObject work in Rails active models for convenient SomeModel#some_attribute.foo.bar access to serialised JSON data.
Wed Nov 20 01:39:02 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/rdoc/constant.rb (RDoc::Constant#documented?)
-
workaround for NoMethodError when the original of alias is not found.
2013-11-19¶ ↑
Tue Nov 19 23:38:49 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- configure.in (–with-os-version-style)
-
option to transform target OS version string.
Tue Nov 19 21:27:33 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/net/http/utils.rb (spawn_server)
-
Specify zero for port to avoid reusing an allocated port.
- test/net/http/test_http.rb
-
Don't specify port here.
- test/net/http/test_https.rb
-
Ditto.
Tue Nov 19 18:52:10 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (heap_is_swept_object)
-
use heap_page::before_sweep flag.
Tue Nov 19 18:49:32 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_objspace_reachable_objects_from_root)
-
do major marking.
Tue Nov 19 18:45:40 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (rb_gc_resurrect)
-
added. rb_fstring() used rb_gc_mark() to avoid freeing used string. However, rb_gc_mark() set mark bit and pushes mark_stack. rb_gc_resurrect() does only set mark bit if it is before sweeping.
- string.c (rb_fstring)
-
use rb_gc_resurrect.
- internal.h
-
add decl.
Tue Nov 19 09:47:02 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rdoc
-
Update to RDoc master a1195ce. Changes include: Improved accessibility of the main sidebar navigation. Fixed handling of regexp options in HTML source highlighting.
- test/rdoc
-
ditto.
Tue Nov 19 09:33:52 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 6a3d9f9. Changes include: Compatibly renamed Gem::DependencyResolver to Gem::Resolver. Added support for git gems in gem.deps.rb and Gemfile. Fixed resolver bugs.
- test/rubygems
-
ditto.
- lib/rubygems/LICENSE.txt
-
Updated to license from RubyGems trunk. [ruby-trunk - Bug #9086]
- lib/rubygems/commands/which_command.rb
-
RubyGems now indicates failure when any file is missing. [ruby-trunk - Bug #9004]
- lib/rubygems/ext/builder
-
Extensions are now installed into the extension install directory and the first directory in the require path from the gem. This allows backwards compatibility with msgpack and other gems that calculate full require paths. [ruby-trunk - Bug #9106]
Tue Nov 19 07:21:56 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- configure.in (LOCALTIME_OVERFLOW_PROBLEM)
-
Define it for cross compiling. [ruby-core:58391] [Bug #9119] Reported by Luis Lavena. Analyzed by Heesob Park.
Tue Nov 19 05:55:05 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rdoc/rubygems_hook.rb
-
Remove debugging puts committed by accident.
2013-11-18¶ ↑
Mon Nov 18 22:47:54 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- eval_intern.h (TH_PUSH_TAG, TH_EXEC_TAG)
-
refine stack overflow detection. chain local tag after setjmp() successed on it, because calling setjmp() also can overflow the stack. [ruby-dev:47804] [Bug #9109]
- vm_eval.c (rb_catch_obj)
-
now th->tag points previous tag until TH_EXEC_TAG().
- thread_pthread.c (ruby_init_stack)
-
set stack_start properly by get_main_stack() if possible.
Mon Nov 18 22:45:49 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- eval_jump.c (rb_exec_end_proc)
-
unlink and free procs data before calling for each procs. [Bug #9110]
2013-11-17¶ ↑
Sun Nov 17 06:33:32 2013 Shota Fukumori<EMAIL_ADDRESS>↑
- configure.in
-
Use $LIBS for base of $SOLIBS, also in darwin. By this fix, environment that libgmp is located in $LIBS can build ruby.
Sun Nov 17 01:56:32 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- thread_pthread.c (rb_thread_create_timer_thread)
-
Show error message instead of error number.
- (thread_create_core)
-
Ditto.
- cont.c (fiber_machine_stack_alloc)
-
Ditto.
2013-11-16¶ ↑
Sat Nov 16 18:28:08 2013 Kouhei Sutou<EMAIL_ADDRESS>↑
- lib/rexml/parsers/ultralightparser.rb (REXML::Parsers::UltraLightParser#parse)
-
Fix wrong :start_doctype position. [Bug #9061] [ruby-dev:47778] Patch by Ippei Obayashi. Thanks!!!
- test/rexml/parser/test_ultra_light.rb
-
Add a test for this case.
Sat Nov 16 02:13:56 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- cont.c
-
Introduce ensure rollback mechanism. Please see below.
- internal.h (ruby_register_rollback_func_for_ensure)
-
catch up above change. Add rollback mechanism API.
- vm_core.h (typedef struct rb_vm_struct)
-
catch up above change. Introduce ensure-rollback relation table.
- vm_core.h (typedef struct rb_thread_struct)
-
catch up above change. Introduce ensure stack.
- eval.c (rb_ensure)
-
catch up above change. Introduce ensure stack.
- hash.c
-
New function for rollback ensure, and register it to ensure-rollback relation table. [ruby-dev:47803] [Bug #9105] Ensure Rollback Mechanism: A rollback's function is a function to rollback a state before ensure's function execution. When the jump of callcc is across the scope of rb_ensure, ensure's functions and rollback's functions are executed appropriately for keeping consistency. Current API is unstable, and only internal use. ruby_register_rollback_func_for_ensure(ensure_func,rollback_func) This API create relation ensure's function to rollback's function. By registered rollback's function, it is executed When jumping into corresponding rb_ensure scope.
Sat Nov 16 00:18:36 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- eval_jump.c (rb_exec_end_proc)
-
fix double free or corruption error when reentering by callcc. [ruby-core:58329] [Bug #9110]
- test/ruby/test_beginendblock.rb
-
test for above.
2013-11-15¶ ↑
Fri Nov 15 01:06:04 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/objspace/objspace_dump.c (dump_output)
-
allow IO object as output, and use Tempfile.create and return open file instead of mkstemp() and path name for :file output. [ruby-core:58266] [Bug #9102]
- test/objspace/test_objspace.rb (TestObjSpace#dump_my_heap_please)
-
remove temporary output file.
2013-11-14¶ ↑
Thu Nov 14 23:39:00 2013 CHIKANAGA Tomoyuki<EMAIL_ADDRESS>↑
- ext/bigdecimal/lib/bigdecimal/util.rb
-
[DOC] remove example of Rational#to_d without argument. [Bug #8958]
Thu Nov 14 20:24:15 2013 Naohisa Goto<EMAIL_ADDRESS>↑
- ruby_atomic.h (ATOMIC_SIZE_CAS)
-
fix compile error on Solaris since r43460.
Thu Nov 14 19:53:00 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/openssl/test_cipher.rb (test_aes_gcm_wrong_tag)
-
Don't use String#succ because it can make modified (wrong) auth_tag longer than 16 bytes. The longer auth_tag makes that EVP_CIPHER_CTX_ctrl (and internally aes_gcm_ctrl) fail. [ruby-core:55143] [Bug #8439] reported by Vit Ondruch.
Thu Nov 14 11:33:47 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- hash.c (foreach_safe_i, hash_foreach_iter)
-
deal with error detected by ST_CHECK.
- st.c (st_foreach_check)
-
call with non-error argument in normal case.
Thu Nov 14 02:37:14 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/thread/thread.c
-
[DOC] This patch accomplishes the following: - Teach RDoc about ConditionVariable - Teach RDoc about Queue - Teach RDoc about SizedQueue - Use fully-qualified namespace for Document-method This is necessary to separate definitions between classes - Fix rdoc bug in call_seq vs. call-seq - Correct doc for SizedQueue#pop patch by @jackdanger [Bug #8988]
Thu Nov 14 01:11:54 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/bigdecimal/lib/bigdecimal/util.rb
-
[DOC]
precision
is required
2013-11-13¶ ↑
Wed Nov 13 19:21:36 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/bigdecimal/lib/bigdecimal/util.rb
-
[DOC] Document the required
precision
argument for Rational#to_d [Bug #8958]
Wed Nov 13 19:02:05 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/digest/*
-
[DOC] Fix several typos and broken http links. Improved examples for Digest overview and fixed a broken example in Digest::HMAC overview. This patch also adds a description of Digest::SHA256.bubblebabble to the Digest overview. Patched by @stomar [Bug #9027]
Wed Nov 13 18:32:12 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/ossl_config.c
-
[DOC] Document the following: - OpenSSL::ConfigError - OpenSSL::Config::DEFAULT_CONFIG_FILE Patched by @vbatts via GH-436 github.com/ruby/ruby/pull/436
Wed Nov 13 18:03:00 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/ossl_asn1.c
-
[DOC] Document parts of OpenSSL::ASN1::ObjectId included a fix for the class overview, which previously showed the documentation for Constructive due to missing ObjectId overview. This patch also includes a note for Primitive. Based on a patch by @vbatts via GH-436 github.com/ruby/ruby/pull/436
Wed Nov 13 17:19:36 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/config.rb
-
In parse use
string
forstr
Wed Nov 13 17:09:45 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/openssl/lib/openssl/*.rb
-
[DOC] Document the following: - Integer#to_bn - OpenSSL::Buffering module - Deprecated OpenSSL::Digest::Digest compatibility class - OpenSSL::Config These changes were based on a patch by @vbatts via GH-436 github.com/ruby/ruby/pull/436
Wed Nov 13 10:55:43 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/regexp.rdoc
-
[DOC] Fix typo in Special global variables section. Reported by Alex Johnson on ruby-doc.org
Wed Nov 13 10:43:19 2013 Zachary Scott<EMAIL_ADDRESS>↑
- hash.c
-
[DOC] Adds an example for Hash#store
Wed Nov 13 09:03:40 2013 Zachary Scott<EMAIL_ADDRESS>↑
- doc/regexp.rdoc
-
[DOC] add note about Bug #4044 as suggested by duerst-san in [ruby-core:43612] [Fixes GH-443] Patched by @rosenfeld github.com/ruby/ruby/pull/443
2013-11-12¶ ↑
Tue Nov 12 10:15:14 2013 Eric Hodel<EMAIL_ADDRESS>↑
- test/rubygems/insure_session.rb
-
Remove unused test file.
Tue Nov 12 09:16:24 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master b9213d7. Changes include: Fixed tests on Windows (I hope) by forcing platform for platform-dependent tests. Fixed File.exists? warnings. Improved testing infrastructure.
- test/rubygems
-
ditto.
- test/rdoc/test_rdoc_rubygems_hook.rb
-
Switch to util_spec like RubyGems.
2013-11-11¶ ↑
Mon Nov 11 18:31:12 2013 Aman Gupta<EMAIL_ADDRESS>↑
- internal.h
-
move common string/hash flags to include file.
- ext/objspace/objspace_dump.c
-
remove flags shared above.
- hash.c
-
ditto.
- string.c
-
ditto.
Mon Nov 11 04:36:14 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems/specification.rb
-
Include 2.2.0.preview.2 when checking if extensions should be built. Fixes a ruby-ci failure.
- test/rubygems/test_gem_specification.rb
-
Test for the above.
Mon Nov 11 03:15:56 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_trace.c (symbol2event_flag)
-
add secret feature. add a_call/a_return events. a_call is call | b_call | c_call, and same as a_return.
Mon Nov 11 02:51:17 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 4bdc4f2. Important changes in this commit: RubyGems now chooses the test server port reliably. Patch by akr. Partial implementation of bundler's Gemfile format. Refactorings to improve the new resolver. Fixes bugs in the resolver.
- test/rubygems
-
Tests for the above.
Mon Nov 11 01:02:06 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/timeout.rb
-
[DOC] Add note about change from #8730 [Fixes GH-440]
- NEWS
-
[DOC] Improve grammar on change to Timeout Patched by @srawlins in github.com/ruby/ruby/pull/440
2013-11-10¶ ↑
Sun Nov 10 23:47:05 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- gc.c (rb_gcdebug_print_obj_condition)
-
catch up recent changes to compile on GC_DEBUG.
Sun Nov 10 22:16:19 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- error.c (exc_cause)
-
captured previous exception.
- eval.c (make_exception)
-
capture previous exception automagically. [Feature #8257]
Sun Nov 10 08:37:20 2013 Zachary Scott<EMAIL_ADDRESS>↑
- thread.c
-
[DOC] Remove duplicate reference
Sun Nov 10 08:09:29 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/drb/drb.rb
-
[DOC] promote better windows-safe filename regular expression in DRb Logger example. Reported by Chris Pheonix [Bug #9074]
Sun Nov 10 08:03:05 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (rb_define_finalizer, rb_undefine_finalizer)
-
rename and export finalizer functions.
Sun Nov 10 07:41:22 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/weakref.rb
-
[DOC] fix typos by @xaviershay [Fixes GH-439] github.com/ruby/ruby/pull/439
Sun Nov 10 06:14:39 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- compile.c (iseq_compile_each)
-
emit opt_str_freeze if the freeze method is called on a static string literal with no arguments.
- defs/id.def (firstline)
-
add freeze so idFreeze is available
- insns.def (opt_str_freeze)
-
add opt_str_freeze instruction which pushes a frozen string literal without allocating a new object if String#freeze is not overridden
- string.c (Init_String)
-
define String#freeze
- vm.c (vm_init_redefined_flag)
-
define BOP_FREEZE on String class as a basic operation
- vm_insnhelper.h
-
ditto [Feature #8992] [ruby-core:57705]
Sun Nov 10 01:34:14 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (vm_malloc_increase)
-
sweep immediately on GC due to malloc(). To reduce memory usage, sweep as soon as possible. This behavior is same as Ruby 2.0.0 and before.
Sun Nov 10 00:39:26 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- benchmark/gc/gcbench.rb
-
output version description and GC::OPTS.
Sun Nov 10 00:36:42 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (should_be_callable)
-
allow private call since rb_eval_cmd calls even private methods.
Sun Nov 10 00:33:17 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/racc/rdoc/grammar.en.rdoc
-
[DOC] fix typo by Tsuyoshi Sawada [Bug #9077]
2013-11-09¶ ↑
Sat Nov 9 22:35:35 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- tool/rbinstall.rb (Gem::Specification.load)
-
obtain spec date from VCS for the case using git, RUBY_RELEASE_DATE is the last resort. probably fixes [Bug #9085].
Sat Nov 9 20:56:12 2013 Narihiro Nakamura<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c
-
use declarations in internal.h.
- ext/objspace/objspace.c
-
ditto
Sat Nov 9 20:32:59 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/objspace/test_objspace.rb (test_dump_all)
-
Make the test string shorter to be an embedded string on 32bit environment as well as 64bit environment.
Sat Nov 9 15:00:16 2013 Zachary Scott<EMAIL_ADDRESS>↑
- io.c
-
[DOC] ARGF.gets may return nil [Bug #9029] patch by znz
Sat Nov 9 14:54:52 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/rss/*
-
[DOC] document various constants @steveklabnik [Bug #8812]
Sat Nov 9 14:50:09 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/rss/rss.rb
-
[DOC] document Time#w3cdtf by @steveklabnik [Bug #8821]
Sat Nov 9 14:29:04 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/dl/cfunc.c
-
[DOC] fix typo in example [Bug #8944] Patched by Heesob Park
Sat Nov 9 13:59:58 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/test/unit/assertions.rb
-
[DOC] better example for assert_send() Patch by Andrew Grimm [Bug #8975]
Sat Nov 9 12:45:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- insns.def
-
unify ic_constant_serial and ic_class_serial into one field ic_serial. This is possible because these fields are only ever used exclusively with each other.
- insns.def
-
ditto
- vm_core.h
-
ditto
- vm_insnhelper.c
-
ditto
Sat Nov 9 12:31:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- class.c
-
unify names of vm state version counters to 'serial'. This includes renaming 'vm_state_version_t' to 'rb_serial_t', 'method_state' to 'method_serial', 'seq' to 'class_serial', 'vmstat' to 'constant_serial', etc.
- insns.def
-
ditto
- internal.h
-
ditto
- vm.c
-
ditto
- vm_core.h
-
ditto
- vm_insnhelper.c
-
ditto
- vm_insnhelper.h
-
ditto
- vm_method.c
-
ditto
Sat Nov 9 09:22:29 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (gc_page_sweep, rgengc_rememberset_mark)
-
Refactoring. Get bitmaps directly.
Sat Nov 9 09:16:36 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (RVALUE_PROMOTE_INFANT)
-
Refactoring. Remove duplicated nonsense code.
Sat Nov 9 09:04:48 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (gc_marks_test)
-
Bugfix. Fix a struct member name for build with RGENGC_CHECK_MODE.
Sat Nov 9 08:58:23 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c
-
Add GC_PROFILE_DETAIL_MEMORY option. If GC_PROFILE_MORE_DETAIL && GC_PROFILE_DETAIL_MEMORY, maxrss, minflt and majflt are added to each profile record.
Sat Nov 9 07:41:41 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- internal.h (rb_vm_backtrace_object, rb_gc_count)
-
make prototype declarations, not old-K&R style.
Sat Nov 9 06:11:14 2013 vo.x (Vit Ondruch<EMAIL_ADDRESS>↑
- tool/rbinstall.rb (Gem::Specification#collect)
-
make stable Gem::Specification#files in default .gemspecs the different order of “files” in .gemspec files makes them different therefore possibly conflicting in multilib scenario. patch by vo.x (Vit Ondruch) at [ruby-core:57544] [Bug #8623].
Sat Nov 9 01:59:18 2013 Aman Gupta<EMAIL_ADDRESS>↑
- ext/objspace/objspace_dump.c
-
Add experimental methods to dump objectspace as json: ObjectSpace.dump_all and ObjectSpace.dump. These methods are useful for debugging reference leaks and memory growth in large ruby applications. [Bug #9026] [ruby-core:57893] [Fixes GH-423]
- test/objspace/test_objspace.rb
-
tests for above.
Sat Nov 9 00:26:50 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- file.c (GetLastError)
-
already defined in windows.h on nowadays cygwin, and caused the confliction with the system provided definition on cygwin64. by @kou1okada [Fixes GH-433].
2013-11-08¶ ↑
Fri Nov 8 18:35:31 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- lib/open3.rb
-
receive arguments as keyword arguments.
Fri Nov 8 13:19:26 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- io.c (rb_io_open_with_args)
-
use RARRAY_CONST_PTR().
- io.c (rb_scan_open_args)
-
use const qualifier for above.
- io.c (rb_open_file)
-
ditto.
- io.c (rb_io_open_with_args)
-
ditto.
Fri Nov 8 11:35:06 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- dir.c, pack.c, ruby.c, struct.c, vm_eval.c
-
use RARRAY_CONST_PTR().
Fri Nov 8 10:58:02 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- compile.c (iseq_build_from_ary_exception)
-
use RARRAY_CONST_PTR().
- compile.c (iseq_build_from_ary_body)
-
ditto.
Fri Nov 8 10:49:34 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- enumerator.c (append_method)
-
use RARRAY_CONST_PTR().
- enumerator.c (lazy_init_iterator)
-
ditto.
Fri Nov 8 02:44:29 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (vm_malloc_increase)
-
check GVL before gc_rest_sweep(). vm_malloc_increase() can be called without GVL. However, gc_rest_sweep() assumes acquiring GVL. To avoid this problem, check GVL before gc_rest_sweep(). [Bug #9090] This workaround introduces possibility to set malloc_limit as wrong value (*1). However, this may be rare case. So I commit it. *1: Without rest_sweep() here, gc_rest_sweep() can decrease malloc_increase due to ruby_sized_xfree().
Fri Nov 8 02:50:25 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/securerandom.rb
-
[DOC] specify arguments passed to ::random_bytes By @chastell [Fixes GH-412] github.com/ruby/ruby/pull/412
Fri Nov 8 02:43:01 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c
-
[DOC] trace_object_allocations_stop By @srawlins [Fixes GH-421] github.com/ruby/ruby/pull/421
Fri Nov 8 02:34:20 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/net/ftp.rb
-
[DOC] Document Net::FTP#mdtm and .set_socket and fix spelling typo, based on patch by @artfuldodger [Fixes GH-426] github.com/ruby/ruby/pull/426
Fri Nov 8 02:14:37 2013 Zachary Scott<EMAIL_ADDRESS>↑
- array.c
-
[DOC] Add note about negative indices in Array overview By @ckaenzig [Fixes GH-427] github.com/ruby/ruby/pull/427
Fri Nov 8 02:09:12 2013 Zachary Scott<EMAIL_ADDRESS>↑
- lib/csv.rb
-
[DOC] Fix typo in CSV.parse_line by @funky-bibimbap [Fixes GH-430] github.com/ruby/ruby/pull/430
Fri Nov 8 01:01:54 2013 Zachary Scott<EMAIL_ADDRESS>↑
- golf_prelude.rb
-
syntax formatting for whitespace [Fixes GH-425] Patch by @edward github.com/ruby/ruby/pull/425
2013-11-07¶ ↑
Thu Nov 7 19:36:09 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
modify malloc_limit strategy. * fix default values: GC_MALLOC_LIMIT_GROWTH_FACTOR GC_MALLOC_LIMIT: 8MB -> 16MB GC_MALLOC_LIMIT_MAX: 384MB -> 32MB * algorithm of malloc_limit increment. if (malloc_increase < malloc_limit) { next_malloc_limit = malloc_limit * factor if (malloc_limit > malloc_limit_max) { malloc_limit = malloc_increase } } This algorithm change malloc_limit from 16MB -> 32MB slowly. If malloc_limit exceeds malloc_limit_max, then increase with malloc_increase.
Thu Nov 7 11:06:05 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_shuffle_bang)
-
use RARRAY_PTR_USE() without WB because there are not new relations.
Thu Nov 7 10:34:12 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_sample)
-
use rb_ary_dup().
Thu Nov 7 09:39:41 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- vm_trace.c (rb_threadptr_exec_event_hooks_orig)
-
errinfo should not be propagated to trace blocks so that no argument raise does not throw internal objects. [ruby-dev:47793] [Bug #9088]
2013-11-06¶ ↑
Wed Nov 6 21:30:55 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (gc_before_sweep)
-
Change algorithm of malloc_limit to conservative for closing to memory consumption of ruby 2.0.
- gc.c (GC_MALLOC_LIMIT, GC_MALLOC_LIMIT_GROWTH_FACTOR)
-
Adjust parameters for new algorithm.
Wed Nov 6 21:16:51 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_shift_m)
-
use RARRAY_PTR_USE() without WB because there are not new relations.
Wed Nov 6 21:05:20 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_reverse)
-
use RARRAY_PTR_USE().
Wed Nov 6 19:30:44 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- common.mk (help)
-
add texts about gcbench.
Wed Nov 6 11:46:36 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_sample)
-
use RARRAY_AREF() and RARRAY_PTR_USE() instead of RARRAY_PTR().
Wed Nov 6 10:37:07 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_and)
-
defer hash creation and some refactoring.
Wed Nov 6 09:14:31 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- benchmark/bm_vm1_gc_short_lived.rb
-
added. These GC benchmarks do not reflect practical applications. They are only for tuning.
- benchmark/bm_vm1_gc_short_with_complex_long.rb
-
added.
- benchmark/bm_vm1_gc_short_with_long.rb
-
added.
- benchmark/bm_vm1_gc_short_with_symbol.rb
-
added.
- benchmark/bm_vm1_gc_wb_ary.rb
-
added.
- benchmark/bm_vm1_gc_wb_obj.rb
-
added.
- benchmark/bm_vm_thread_queue.rb
-
added. This benchmark is added to know how fast C version of thread.so.
Wed Nov 6 09:13:32 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
define RGENGC_ESTIMATE_OLDSPACE == 0 if USE_RGENGC is 0.
Wed Nov 6 07:13:18 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (Init_GC)
-
add GC::OPTS to show options.
Wed Nov 6 07:12:17 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- benchmark/gc/gcbench.rb
-
add some options to make quiet.
Wed Nov 6 04:14:25 2013 Aaron Patterson<EMAIL_ADDRESS>↑
- ext/psych/lib/psych/visitors/to_ruby.rb
-
process merge keys before reviving objects. Fixes GH psych #168
- test/psych/test_merge_keys.rb
-
test for change github.com/tenderlove/psych/issues/168
2013-11-05¶ ↑
Tue Nov 5 21:21:47 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/ruby/test_thread.rb (test_thread_join_in_trap)
-
Run the test in a different process.
Tue Nov 5 20:14:32 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (is_live_object)
-
A hidden object may be a live object. [ruby-dev:47788] [Bug #9072]
Tue Nov 5 13:37:19 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
add support to estimate increase of oldspace memory usage. This is another approach to solve an issue discussed at r43530. This feature is disabled as default. This feature measures an increment of memory consumption by oldgen objects. It measures memory consumption for each objects when the object is promoted. However, measurement of memory consumption is not accurate now. So that this measurement is `estimation'. To implement this feature, move memsize_of() function from ext/objspace/objspace.c and expose rb_obj_memsize_of(). Some memsize() functions for T_DATA (T_TYPEDDATA) have problem to measure memory size, so that we ignores T_DATA objects now. For example, some functions skip NULL check for pointer. The macro RGENGC_ESTIMATE_OLDSPACE enables/disables this feature, and turned off as default. We need to compare 3gen GC and this feature carefully.
- internal.h
-
expose rb_obj_memsize_of().
- ext/objspace/objspace.c
-
use rb_obj_memsize_of() function.
- cont.c (fiber_memsize)
-
fix to check NULL.
- variable.c (autoload_memsize)
-
ditto.
- vm.c (vm_memsize)
-
ditto.
Tue Nov 5 04:03:07 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (GC_MALLOC_LIMIT_MAX)
-
fix default value 512MB -> 384MB. 512MB is huge.
Tue Nov 5 03:31:23 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
add 3gen GC patch, but disabled as default. RGenGC is designed as 2 generational GC, young and old generation. Young objects will be promoted to old objects after one GC. Old objects are not collect until major (full) GC. The issue of this approach is some objects can promoted as old objects accidentally and not freed until major GC. Major GC is not frequently so short-lived but accidentally becoming old objects are not freed. For example, the program “loop{Array.new(1_000_000)}” consumes huge memories because short lived objects (an array which has 1M elements) are promoted while GC and they are not freed before major GC. To solve this problem, generational GC with more generations technique is known. This patch implements three generations gen GC. At first, newly created objects are “Infant” objects. After surviving one GC, “Infant” objects are promoted to “Young” objects. “Young” objects are promoted to “Old” objects after surviving next GC. “Infant” and “Young” objects are collected if it is not marked while minor GC. So that this technique solves this problem. Representation of generations: * Infant: !FL_PROMOTED and !oldgen_bitmap [00] * Young : FL_PROMOTED and !oldgen_bitmap [10] * Old : FL_PROMOTED and oldgen_bitmap [11] The macro “RGENGC_THREEGEN” enables/disables this feature, and turned off as default because there are several problems.
- include/ruby/ruby.h
-
catch up 3gen GC.
- .gdbinit
-
fix to show a prompt “[PROMOTED]” for promoted objects.
Tue Nov 5 00:05:51 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- node.h
-
catch up comments for last commit.
Tue Nov 5 00:02:00 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
rename FL_OLDGEN to FL_PROMOTED. This flag represents that “this object is promoted at least once.”
- gc.c, debug.c, object.c
-
catch up this change.
2013-11-04¶ ↑
Mon Nov 4 22:20:16 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/xmlrpc
-
Don't use fixed ports: 8070 and 8071.
Mon Nov 4 15:25:52 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/xmlrpc/webrick_testing.rb (start_server)
-
Initialize the server at main thread to fail early.
Mon Nov 4 10:08:17 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- eval_intern.h (TH_EXEC_TAG, TH_JUMP_TAG)
-
get rid of undefined behavior of setjmp() in rhs of assignment expression. [ISO/IEC 9899:1999] <IP_ADDRESS>
2013-11-03¶ ↑
Sun Nov 3 23:06:51 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- sample/test.rb
-
Make temporary file names unique.
Sun Nov 3 20:41:17 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/xmlrpc
-
Wrap definitions by TestXMLRPC module.
Sun Nov 3 20:23:38 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/xmlrpc/webrick_testing.rb (stop_server)
-
Don't try to shutdown the server if the server is not started.
Sun Nov 3 09:35:47 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- load.c (rb_feature_p)
-
deal with default loadable suffixes.
- load.c (load_lock)
-
initialize statically linked extensions.
- load.c (search_required, rb_require_safe)
-
deal with statically linked extensions.
- load.c (ruby_init_ext)
-
defer initialization of statically linked extensions until required actually. [Bug #8883]
2013-11-02¶ ↑
Sat Nov 2 15:14:33 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/logger.rb (Logger::LogDevice::LogDeviceMutex#lock_shift_log)
-
open file can't be removed or renamed on Windows. [ruby-dev:47790] [Bug #9046]
- test/logger/test_logger.rb (TestLogDevice#run_children)
-
don't use fork.
Sat Nov 2 07:08:43 2013 NARUSE, Yui<EMAIL_ADDRESS>↑
- lib/logger.rb
-
Inter-process locking for log rotation Current implementation fails log rotation on multi process env. by sonots<EMAIL_ADDRESS>github.com/ruby/ruby/pull/428 fix GH-428 [Bug #9046]
2013-11-01¶ ↑
Fri Nov 1 23:24:31 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (wmap_mark_map)
-
mark live objects only, but delete zombies. [ruby-dev:47787] [Bug #9069]
Fri Nov 1 22:45:54 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (struct heap_page, gc_page_sweep, gc_sweep)
-
Refactoring for performance. Add before_sweep condition to heap_page structure.
- gc.c (rb_gc_force_recycle)
-
Use before_sweep member.
- gc.c (heap_is_before_sweep, is_before_sweep)
-
Remove. They have not already been used.
Fri Nov 1 22:20:28 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (make_deferred)
-
Refactoring. Collect codes which should be atomic.
- gc.c (make_io_deferred, obj_free, rb_objspace_call_finalizer, gc_page_sweep)
-
Correspond to the above.
Fri Nov 1 21:40:35 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (typedef struct rb_objspace)
-
Refactoring. Move some members into profile member.
- gc.c (newobj_of)
-
Correspond to the above.
- gc.c (finalize_list)
-
Ditto.
- gc.c (objspace_live_num)
-
Ditto.
- gc.c (gc_page_sweep)
-
Ditto.
- gc.c (rb_gc_force_recycle)
-
Ditto.
- gc.c (garbage_collect_body)
-
Ditto.
- gc.c (rb_gc_count)
-
Ditto.
- gc.c (gc_stat)
-
Ditto.
- gc.c (gc_prof_set_heap_info)
-
Ditto.
- gc.c (gc_profile_dump_on)
-
Ditto.
Fri Nov 1 20:53:56 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- string.c (rb_str_scrub)
-
fix typo, should yield invalid byte sequence to be scrubbed. reported by znz at IRC.
Fri Nov 1 17:25:30 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- gc.c (is_live_object)
-
finalizer may not run because of lazy-sweep. [ruby-dev:47786] [Bug #9069]
Fri Nov 1 16:55:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- string.c (rb_str_scrub)
-
export with fixed length arguments, and allow nil as replacement string instead of omitting.
Fri Nov 1 06:20:44 2013 KOSAKI Motohiro<EMAIL_ADDRESS>↑
- thread.c (rb_mutex_struct)
-
reduce rb_mutex_t size by 8 bytes on 64bit platform. Patch by Eric Wong. [Feature #9068]
Fri Nov 1 01:08:33 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- benchmark/gc/gcbench.rb
-
print HWM (high water mark) if possible.
2013-10-31¶ ↑
Thu Oct 31 21:48:31 2013 Kouhei Sutou<EMAIL_ADDRESS>↑
- lib/rexml/parsers/streamparser.rb
-
Add dependency file require. [Bug #9062] [ruby-dev:47779] Reported by Ippei Obayashi. Thanks!!!
Thu Oct 31 14:09:32 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_method.c (rb_method_entry_make)
-
fix to pass an ISeq value. OBJ_WRITTEN() accepts only VALUE.
2013-10-30¶ ↑
Wed Oct 30 19:07:57 2013 Akinori MUSHA<EMAIL_ADDRESS>↑
- misc/ruby-additional.el (ruby-brace-to-do-end, ruby-do-end-to-brace, ruby-toggle-block)
-
Remove functions that are already in the latest released version of Emacs (24.3). [Bug #7565]
Wed Oct 30 12:44:28 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- win32/Makefile.sub (config.status)
-
add missing variables, PLATFORM_DIR and THREAD_MODEL.
Wed Oct 30 12:20:32 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- time.c (v2w)
-
Normalize a rational value to an integer if possible. [ruby-core:58070] [Bug #9059] reported by Isaac Schwabacher.
Wed Oct 30 12:08:41 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_uniq_bang)
-
use rb_ary_modify_check() instead of rb_ary_modify() because the array will be unshared soon.
Wed Oct 30 03:25:10 2013 Aaron Patterson<EMAIL_ADDRESS>↑
- ext/psych/lib/psych/visitors/yaml_tree.rb
-
make less garbage when testing if a string is binary.
Wed Oct 30 03:08:24 2013 Aaron Patterson<EMAIL_ADDRESS>↑
- ext/psych/lib/psych/visitors/yaml_tree.rb
-
string subclasses should not be considered to be binary. Fixes Psych / GH 166 github.com/tenderlove/psych/issues/166
- test/psych/test_string.rb
-
test for fix
2013-10-29¶ ↑
Tue Oct 29 23:01:18 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_zip)
-
some refactoring.
Tue Oct 29 22:11:37 2013 Masaki Matsushita<EMAIL_ADDRESS>↑
- array.c (rb_ary_uniq_bang)
-
use st_foreach() instead of for loop.
Tue Oct 29 20:01:58 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- add RUBY_TYPED_FREE_IMMEDIATELY to data types which only use safe functions during garbage collection such as xfree(). On default, T_DATA objects are freed at same points as finalizers. This approach protects issues such as reported by [ruby-dev
-
35578]. However, freeing T_DATA objects immediately helps heap usage. Most of T_DATA (in other words, most of dfree functions) are safe. However, we turned off RUBY_TYPED_FREE_IMMEDIATELY by default for safety.
- cont.c
-
ditto.
- dir.c
-
ditto.
- encoding.c
-
ditto.
- enumerator.c
-
ditto.
- error.c
-
ditto.
- file.c
-
ditto.
- gc.c
-
ditto.
- io.c
-
ditto.
- iseq.c
-
ditto.
- marshal.c
-
ditto.
- parse.y
-
ditto.
- proc.c
-
ditto.
- process.c
-
ditto.
- random.c
-
ditto.
- thread.c
-
ditto.
- time.c
-
ditto.
- transcode.c
-
ditto.
- variable.c
-
ditto.
- vm.c
-
ditto.
- vm_backtrace.c
-
ditto.
- vm_trace.c
-
ditto.
- ext/bigdecimal/bigdecimal.c
-
ditto.
- ext/objspace/objspace.c
-
ditto.
- ext/stringio/stringio.c
-
ditto.
- ext/strscan/strscan.c
-
ditto.
Tue Oct 29 19:48:33 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
fix typo (FL_WB_PROTECT -> FL_WB_PROTECTED).
Tue Oct 29 18:45:08 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_trace.c (tp_free)
-
removed because empty free function. Use RUBY_TYPED_NEVER_FREE instead.
Tue Oct 29 18:37:33 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h
-
introduce new flags for T_TYPEDDATA. * RUBY_TYPED_FREE_IMMEDIATELY: free the data given by DATA_PTR() with dfree function immediately. Otherwise (default), the data freed at finalization point. * RUBY_TYPED_WB_PROTECTED: make this object with FL_WB_PROTECT
- gc.c (obj_free)
-
support RUBY_TYPED_FREE_IMMEDIATELY.
Tue Oct 29 16:49:03 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (vm_malloc_increase)
-
decrease it more carefully.
Tue Oct 29 16:24:52 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (heap_page_resurrect)
-
return a page in tomb heap even if freelist is NULL.
Tue Oct 29 15:46:30 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ruby_atomic.h (ATOMIC_SIZE_CAS)
-
new macro, compare and swap size_t.
Tue Oct 29 12:08:05 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- ext/readline/readline.c (readline_getc)
-
Consider NULL as input.
Tue Oct 29 11:10:08 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (gc_profile_total_time)
-
fix off-by-one error in GC::Profiler.total_time.
- test/ruby/test_gc.rb (class TestGc)
-
test for above.
Tue Oct 29 09:53:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- insns.def, vm.c, vm_insnhelper.c, vm_insnhelper.h, vm_method.c
-
split ruby_vm_global_state_version into two separate counters - one for the global method state and one for the global constant state. This means changes to constants do not affect method caches, and changes to methods do not affect constant caches. In particular, this means inclusions of modules containing constants no longer globally invalidate the method cache.
- class.c, eval.c, include/ruby/intern.h, insns.def, vm.c, vm_method.c
-
rename rb_clear_cache_by_class to rb_clear_method_cache_by_class
- class.c, include/ruby/intern.h, variable.c, vm_method.c
-
add rb_clear_constant_cache
- compile.c, vm_core.h, vm_insnhelper.c
-
rename vmstat field in rb_call_info_struct to method_state
- vm_method.c
-
rename vmstat field in struct cache_entry to method_state
2013-10-28¶ ↑
Mon Oct 28 23:26:04 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- test/readline/test_readline.rb (teardown)
-
Clear Readline.input and Readline.output.
Mon Oct 28 21:35:31 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- ext/-test-/file/depend, ext/-test-/postponed_job/depend, ext/-test-/tracepoint/depend
-
New files for dependencies.
Mon Oct 28 15:32:18 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ext/openssl/depend (ossl.o)
-
work around of dependency of thread_native.h, which depends on headers by THREAD_MODEL. [ruby-dev:47777]
- ext/openssl/extconf.rb
-
need THREAD_MODEL.
Mon Oct 28 14:57:01 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- load.c (ruby_init_ext)
-
share feature names between frame name and provided features.
Mon Oct 28 14:41:27 2013 Akinori MUSHA<EMAIL_ADDRESS>↑
- misc/ruby-electric.el
-
Import ruby-electric.el 2.1 from github.com/knu/ruby-electric.el. * Hitting the newline-and-indent key within a comment fires comment-indent-new-line. * Introduce a new feature `ruby-electric-autoindent-on-closing-char`. * Fix fallback behavior of ruby-electric-space/return that caused error with auto-complete.
Mon Oct 28 13:17:17 2013 Or Cohen<EMAIL_ADDRESS>↑
- error.c (name_err_to_s)
-
remove no longer needed overriding, since r30455 which made exc_to_s almost same. Fixes [GH-413].
Mon Oct 28 12:42:11 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- common.mk, ext/objspace/depend, ext/coverage/depend, ext/-test-/debug/depend, ext/date/depend
-
Update dependencies.
Mon Oct 28 09:29:00 2013 Charlie Somerville<EMAIL_ADDRESS>↑
- vm.c
-
vm_clear_all_cache is not necessary now we use a 64 bit counter for global state version.
- vm_insnhelper.h
-
ruby_vm_global_state_version overflow is unnecessary
Mon Oct 28 07:47:32 2013 Aman Gupta<EMAIL_ADDRESS>↑
- vm_backtrace.c (rb_profile_frame_classpath)
-
do not use rb_inspect directly, since it might have a custom implementation or show ivars.
Mon Oct 28 04:10:41 2013 Aman Gupta<EMAIL_ADDRESS>↑
- vm_backtrace.c (rb_profile_frame_classpath)
-
handle singleton methods defined directly on an object.
- test/-ext-/debug/test_profile_frames.rb
-
test for above.
Mon Oct 28 00:52:36 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- struct.c (new_struct)
-
fix warning message, class name and encoding.
2013-10-27¶ ↑
Sun Oct 27 20:53:08 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- ext/readline/readline.c
-
Include ruby/thread.h for rb_thread_call_without_gvl2.
- (readline_rl_instream, readline_rl_outstream)
-
Record FILE structures allocated by this extension.
- (getc_body)
-
New function extracted from readline_getc.
- (getc_func)
-
New function.
- (readline_getc)
-
Use rb_thread_call_without_gvl2 to invoke getc_func. [ruby-dev:47033] [Bug #8749]
- (clear_rl_instream, clear_rl_outstream)
-
Close FILE structure allocated by this extension reliably. [ruby-core:57951] [Bug #9040]
- (readline_readline)
-
Use clear_rl_instream and clear_rl_outstream.
- (readline_s_set_input)
-
Set readline_rl_instream.
- (readline_s_set_output)
-
Set readline_rl_outstream.
- (Init_readline)
-
Don't call readline_s_set_input because readline_getc doesn't block other threads for any FILE structure now. [ruby-dev:47033] [Bug #8749] reported by Nobuhiro IMAI. [ruby-core:57951] [Bug #9040] reported by Eamonn Webster.
2013-10-26¶ ↑
Sat Oct 26 19:31:28 2013 Kazuki Tsujimoto<EMAIL_ADDRESS>↑
- gc.c
-
catch up recent changes to compile on GC_DEBUG, RGENGC_CHECK_MODE.
Sat Oct 26 19:08:00 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- range.c (range_initialize_copy)
-
disallow to modify after initialized.
Sat Oct 26 17:48:54 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- lib/open-uri.rb (meta_add_field)
-
: Re-implemented. [ruby-core:58017] [Bug #9051] patch by Eamonn Webster.
Sat Oct 26 14:35:09 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_profile_dump_on)
-
use “Page” terminology.
Sat Oct 26 13:25:45 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_sweep, gc_heap_lazy_sweep)
-
fix measurement code. We only need one sweep time measurement without lazy sweep.
Sat Oct 26 11:59:13 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- addr2line.c
-
Include ELF header after system headers (especially sys/types.h) to avoid compilation failure, “usr/include/sh3/elf_machdep.h:4:2: error: error Define _BYTE_ORDER!”, on NetBSD/sh3 (dreamcast, hpcsh, landisk, mmeye).
Sat Oct 26 11:35:22 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
tuning parameters.
- gc.c (GC_MALLOC_LIMIT)
-
change default value to 16MB.
- gc.c (GC_MALLOC_LIMIT_GROWTH_FACTOR)
-
change default value to 2.0.
- gc.c (gc_before_sweep)
-
change decrease ratio of `malloc_limit' from 1/4 to 1/10.
Sat Oct 26 11:30:07 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (vm_malloc_increase)
-
do gc_rest_sweep() before GC. gc_rest_sweep() can reduce malloc_increase, so try it before GC. Otherwise, malloc_increase can be less than malloc_limit at gc_before_sweep(). This means that re-calculation of malloc_limit may be wrong value.
Sat Oct 26 06:35:41 2013 Masaya Tarui<EMAIL_ADDRESS>↑
- gc.c (gc_before_heap_sweep)
-
Restructure code to mean clearly. heap->freelist is connected to end of list.
Sat Oct 26 04:01:35 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_before_heap_sweep)
-
fix freelist management. After rb_gc_force_recycle() for a object belonging to heap->freelist, `heap->using_page->freelist' is not null.
2013-10-24¶ ↑
Thu Oct 24 12:45:53 2013 Zachary Scott<EMAIL_ADDRESS>↑
- object.c
-
[DOC] Document first argument also takes string for: rb_mod_const_get, rb_mod_const_set, rb_mod_const_defined Also added note about NameError exception for invalid constant name
Thu Oct 24 12:23:58 2013 KOSAKI Motohiro<EMAIL_ADDRESS>↑
- thread.c (rb_thread_terminate_all)
-
add a comment why we need state check and call terminate_i again.
Thu Oct 24 12:15:02 2013 KOSAKI Motohiro<EMAIL_ADDRESS>↑
- thread.c (rb_thread_terminate_all)
-
add a comment why infinite sleep is safe.
Thu Oct 24 07:41:42 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c
-
add new initial_growth_max tuning parameter. [ruby-core:57928] [Bug #9035]
- gc.c (heap_set_increment)
-
when initial_growth_max is set, do not grow number of slots by more than growth_max at a time.
- gc.c (rb_gc_set_params)
-
load optional new tuning value from RUBY_HEAP_SLOTS_GROWTH_MAX environment variable.
- test/ruby/test_gc.rb (class TestGc)
-
test for above.
Thu Oct 24 01:34:12 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- include/ruby/win32.h (rb_infinity_float)
-
suppress overflow in constant arithmetic warnings. [ruby-core:57981] [Bug #9044]
2013-10-23¶ ↑
Wed Oct 23 23:48:28 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c
-
Rename free_min to min_free_slots and free_min_page to max_free_slots. The algorithm for heap growth is: if (swept_slots < min_free_slots) pages++ if (swept_slots > max_free_slots) pages–
Wed Oct 23 22:51:03 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- win32/Makefile.sub (config.h)
-
VC 2013 supports C99 mathematics functions. [ruby-core:57981] [Bug #9044]
Wed Oct 23 19:13:18 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
move increment from heap to heap_pages. Share `increment' information with heaps.
- gc.c
-
change ratio of heap_pages_free_min_page to 0.80. This change means slow down page freeing speed.
Wed Oct 23 17:52:03 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (heap_pages_free_unused_pages)
-
cast to (int) for size_t variable `i'.
Wed Oct 23 17:39:35 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
introduce tomb heap. Tomb heap is where zombie objects and ghost (freed slot) lived in. Separate from other heaps (now there is only eden heap) at sweeping helps freeing pages more efficiently. Before this patch, even if there is an empty page at former phase of sweeping, we can't free it. Algorithm:
Wed Oct 23 14:20:56 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (gc_prof_sweep_timer_stop)
-
catch up recent changes to compile on GC_PROFILE_MORE_DETAIL=1.
Wed Oct 23 11:43:27 2013 Zachary Scott<EMAIL_ADDRESS>↑
- file.c
-
[DOC] fix rdoc format of File#expand_path from r43386
2013-10-22¶ ↑
Tue Oct 22 21:58:28 2013 URABE Shyouhei<EMAIL_ADDRESS>↑
- vm_core.h (enum)
-
avoid syntax error.
- method.h
-
ditto.
- internal.h
-
ditto.
Tue Oct 22 19:53:16 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (Init_heap)
-
move logics from heap_pages_init() and remove heap_pages_init().
Tue Oct 22 19:19:05 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
allow multiple heaps. Now, objects are managed by page. And a set of pages is called heap. This commit supports multiple heaps in the object space. * Functions heap_* and rb_heap_t manages heap data structure. * Functions heap_page_* and struct heap_page manage page data structure. * Functions heap_pages_* and struct rb_objspace_t::heap_pages maintains all pages. For example, pages are allocated from the heap_pages. See bugs.ruby-lang.org/projects/ruby-trunk/wiki/GC_design and for more details. Now, there is only one heap called `eden', which is a space for all new generated objects.
Tue Oct 22 18:26:12 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- lib/pp.rb (object_address_group)
-
Use Kernel#to_s to obtain the class name and object address. This fix a problem caused by %p in C generates variable length address. Reported by ko1 via IRC.
Tue Oct 22 16:57:48 2013 Benoit Daloze<EMAIL_ADDRESS>↑
- file.c (File#expand_path)
-
[DOC] improve documentation of File#expand_path. Based on patch by Prathamesh Sonpatki. [ruby-core:57734] [Bug #9002]
Tue Oct 22 15:59:51 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- dir.c (glob_helper)
-
don't skip current directories if FNM_DOTMATCH is given. [ruby-core:53108] [Bug #8006]
Tue Oct 22 14:53:11 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- vm_trace.c
-
exterminate Zombies. There is a bug that T_ZOMBIE objects are not collected. Because there is a pass to miss finalizer postponed job with multi-threading. This patch solve this issue.
- vm_trace.c (rb_postponed_job_register_one)
-
set RUBY_VM_SET_POSTPONED_JOB_INTERRUPT(th) if another same job is registered. There is a possibility to remain a postponed job without interrupt flag.
- vm_trace.c (rb_postponed_job_register_one)
-
check interrupt carefully.
- vm_trace.c (rb_postponed_job_register_one)
-
use additional space to avoid buffer full.
- gc.c (gc_finalize_deferred_register)
-
check failure.
- thread.c (rb_threadptr_execute_interrupts)
-
check `postponed_job_interrupt' immediately. There is a possibility to miss this flag.
Tue Oct 22 12:11:16 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- configure.in
-
check if the given CFLAGS and LDFLAGS are working, and bail out early if not.
Tue Oct 22 00:06:57 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- file.c (rb_file_exists_p)
-
warn deprecated name. [Bug #9041]
2013-10-21¶ ↑
Mon Oct 21 23:57:53 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- encoding.c (load_encoding)
-
should preserve outer errinfo, so that expected exception may not be lost. [ruby-core:57949] [Bug #9038]
2013-10-20¶ ↑
Sun Oct 20 15:41:22 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- io.c (rb_io_reopen)
-
create a new, temporary FD via rb_sysopen and call rb_cloexec_dup2 on it to atomically replace the file fptr->fd points to. This leaves no possible window where fptr->fd is invalid to userspace (even for any threads running w/o GVL). based on the patch by Eric Wong<EMAIL_ADDRESS>at [ruby-core:57943]. [Bug #9036]
Sun Oct 20 15:29:05 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- error.c (rb_syserr_fail_path_in)
-
new function split from rb_sys_fail_path_in to raise SystemCallError without errno.
- internal.h (rb_syserr_fail_path)
-
like rb_sys_fail_path but without errno.
Sun Oct 20 13:58:47 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- include/ruby/ruby.h (rb_obj_wb_unprotect, rb_obj_written), (rb_obj_write)
-
suppress unused-parameter warnings.
Sun Oct 20 10:32:48 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update RubyGems to master 0886307. This commit improves documentation and should bring ruby above 75% documented on rubyci.
Sun Oct 20 09:30:56 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 3de7e0f. Changes: Only attempt to build extensions for newly-installed gems. This prevents compilation attempts at gem activation time for gems that already have extensions built. Fix crash in the dependency resolver for dependencies that cannot be resolved.
- test/rubygems
-
ditto.
Sun Oct 20 05:24:29 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- variable.c (rb_class2name)
-
should return real class name, not singleton class or iclass.
Sun Oct 20 04:18:48 2013 Aman Gupta<EMAIL_ADDRESS>↑
- variable.c (rb_class2name)
-
call rb_tmp_class_path() directly to avoid extra rb_str_dup() from rb_class_name().
2013-10-19¶ ↑
Sat Oct 19 19:59:02 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- win32/file.c (code_page)
-
use simple array instead of st_table.
- encoding.c (rb_locale_encindex)
-
defer initialization of win32 code page table until encoding db loaded.
Sat Oct 19 08:25:05 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
fix rb_objspace_t. * make “struct heap” and move most of variables in rb_objspace_t::heap. * rename rb_objspace_t::heap::sorted to rb_objspace_t::heap_sorted_pages and make a macro heap_sorted_pages. * rename rb_objspace_t::heap::range to rb_objspace_t::heap_range and rename macros lomem/himem to heap_lomem/heap_himem.
Sat Oct 19 07:14:40 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 42543b6. Changes: Fix `gem update` for gems with multiple platforms.
- test/rubygems
-
ditto.
Sat Oct 19 06:55:52 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 0a3814b. Changes: Fixed extension directory in Gem::BasicSpecification#require_paths. Allow installation of gems when $HOME is nonexistent or unwritable. Use proper API in InstallCommand. Improve support for path option in gem dependency files. Remove warnings.
- test/rubygems
-
ditto.
2013-10-18¶ ↑
Fri Oct 18 15:23:34 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c
-
change terminology of heap. Change “slot” to “page”. “Slot” is a space of RVALUE. 1. “Heap” consists of a set of “heap_page”s (pages). 2. Each “heap_page” has “heap_page_body”. 3. “heap_page_body” has RVALUE (a.k.a. “slot”) spaces. 4. “sorted” is a sorted array of “heap_page”s, sorted by address of heap_page_body (for “is_pointer_to_heap”). See .
Fri Oct 18 09:40:43 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master cee6788. Changes: Fix test failure on vc10-x64 Server on rubyci.org due to attempting to File.chmod where it is not supported. Continuing work on improved gem dependencies file (Gemfile) support.
- test
-
ditto.
Fri Oct 18 06:02:49 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master f738c67. Changes: Fixed test bug for ruby with ENABLE_SHARED = no
- test/rubygems
-
ditto.
Fri Oct 18 00:57:07 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- lib/tsort.rb (TSort.tsort)
-
Extracted from TSort#tsort.
- (TSort.tsort_each)
-
Extracted from TSort#tsort_each.
- (TSort.strongly_connected_components)
-
Extracted from TSort#strongly_connected_components.
- (TSort.each_strongly_connected_component)
-
Extracted from TSort#each_strongly_connected_component.
2013-10-17¶ ↑
Thu Oct 17 18:50:08 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (CALC_EXACT_MALLOC_SIZE_CHECK_OLD_SIZE)
-
introduced. This macro enable checker compare with allocated memory and declared old_size of sized_xfree and sized_xrealloc.
Thu Oct 17 18:45:41 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- string.c (STR_HEAP_SIZE)
-
includes TERM_LEN(str).
- string.c (rb_str_memsize)
-
use STR_HEAP_SIZE().
Thu Oct 17 17:43:00 2013 Shugo Maeda<EMAIL_ADDRESS>↑
- vm_insnhelper.c (vm_call_method)
-
set ci->me to 0 when the original method of a refined method is undef to avoid SEGV.
- vm_method.c (rb_method_entry_without_refinements)
-
return 0 when the original method of a refined method is undef to avoid SEGV.
- test/ruby/test_refinement.rb
-
related test.
Thu Oct 17 17:38:36 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c, internal.h
-
rename ruby_xsizefree/realloc to rb_sized_free/realloc.
- array.c
-
catch up these changes.
- string.c
-
ditto.
Thu Oct 17 17:32:51 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- array.c, string.c
-
use ruby_xsizedfree() and ruby_xsizedrealloc().
- internal.h (SIZED_REALLOC_N)
-
define a macro as REALLOC_N().
Thu Oct 17 17:11:17 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- win32/win32.c (console_emulator_p)
-
check by comparison between module handle of WriteConsoleW and kernel32.dll.
- configure.in, win32/Makefile.sub, win32/setup.mak
-
no longer need psapi.lib.
Thu Oct 17 16:53:30 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c, internal.h
-
add new internal memory management functions. * void *ruby_xsizedrealloc(void *ptr, size_t new_size, size_t old_size) * void ruby_xsizedfree(void *x, size_t size) These functions accept additional size parameter to calculate more accurate malloc_increase parameter which control GC timing. [Feature #8985]
Thu Oct 17 14:21:34 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- win32/file.c (rb_file_expand_path_internal)
-
fix memory leaks at a non-absolute home exception.
Thu Oct 17 14:06:39 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c (newobj_i)
-
fix memory leak. There is possibility to remain info due to missing FREEOBJ event. FREEOBJ events are skipped while suppress_tracing state, for example, during trace events are invoking.
Thu Oct 17 12:30:16 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- lib/tsort.rb (TSort.each_strongly_connected_component_from)
-
Extracted from TSort#each_strongly_connected_component_from.
Thu Oct 17 11:07:06 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 941c21a. Changes: Restored method bundler wants to remove for compatibility. Improvements to Gemfile compatibility.
- test/rubygems
-
ditto.
Thu Oct 17 08:08:11 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c (newobj_i)
-
add workaround. some bugs hits this check.
- ext/objspace/object_tracing.c (object_allocations_reporter_i)
-
cast as pointer.
Thu Oct 17 07:36:53 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 2abce58. Changes: Fixed documentation generation when sdoc and json are installed as gems. Added some missing documentation.
Thu Oct 17 07:10:26 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/curses/curses.c
-
[DOC] Cleaned up formatting consistency of rdoc comments for Curses, including period spacing and column width. This patch also fixed some typos. Thanks to @postmodern for the patch! [Fixes GH-420] github.com/ruby/ruby/pull/420
Thu Oct 17 06:58:42 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/date/date_core.c
-
[DOC] plural grammar fixed by @scott113341 Contributed via documenting-ruby.org: documenting-ruby/ruby#16 github.com/documenting-ruby/ruby/pull/16
Thu Oct 17 05:52:31 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/io/nonblock/nonblock.c
-
[DOC] Document io/nonblock by reprah [Fixes GH-418] github.com/ruby/ruby/pull/418 based on the original discussion from documenting-ruby/ruby#18
Thu Oct 17 05:40:33 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.c (objspace_each_objects)
-
do not skip empty RVALUEs.
Thu Oct 17 05:31:31 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- error.c (rb_bug_reporter_add)
-
return simply 0 if failed. Please check return value.
Thu Oct 17 05:17:33 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/object_tracing.c
-
add new method ObjectSpace.trace_object_allocations_debug_start for GC debugging. If you encounter the BUG “… is T_NONE” (and so on) on your application, please try this method at the beginning of your app.
2013-10-16¶ ↑
Wed Oct 16 22:35:27 2013 Zachary Scott<EMAIL_ADDRESS>↑
- ext/io/nonblock/nonblock.c
-
use rb_cIO instead of VALUE
Wed Oct 16 17:45:13 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- bootstraptest/runner.rb
-
check nil before calling `signal?' for a process status.
Wed Oct 16 17:37:17 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- error.c, internal.h (rb_bug_reporter_add)
-
add a new C-API. rb_bug_reporter_add() allows to register a function which is called at rb_bug() called.
- ext/-test-/bug_reporter/bug_reporter.c
-
add a test for this C-API.
- ext/-test-/bug_reporter/extconf.rb
-
ditto.
- test/-ext-/bug_reporter/test_bug_reporter.rb
-
ditto.
Wed Oct 16 15:14:21 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- NEWS
-
add a line into NEWS for last commit.
Wed Oct 16 15:09:14 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- ext/objspace/objspace.c
-
add a new method `reachable_objects_from_root'. ObjectSpace.reachable_objects_from_root returns all objects referred from root (called “root objects”). This feature is for deep object analysis.
- test/objspace/test_objspace.rb
-
add a test.
Wed Oct 16 15:00:21 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master b955554. Changes: Fixed NameError for Gem::Ext due to re-entering file lookup in RubyGems' overridden require. Bug by Koichi Sasada. Fixed possible circular require warning in tests. Used existing constant for `gem install -g` dependency file list.
- test/rubygems
-
ditto.
Wed Oct 16 09:42:42 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master 278d00d. Changes: Fixes building extensions without a “clean” make rule Adds gem dependency file autodetection to “gem install -g”
- test/rubygems
-
Tests for the above.
Wed Oct 16 09:12:23 2013 Eric Hodel<EMAIL_ADDRESS>↑
- lib/rubygems
-
Update to RubyGems master commit 2a74263. This fixes several bugs in RubyGems 2.2.0.preview.1.
- test/rubygems
-
ditto.
Wed Oct 16 07:25:02 2013 Aman Gupta<EMAIL_ADDRESS>↑
- gc.c (gc_mark_roots)
-
rename roots to be categories instead of function names.
2013-10-15¶ ↑
Tue Oct 15 19:18:13 2013 Koichi Sasada<EMAIL_ADDRESS>↑
- gc.h (rb_objspace_reachable_objects_from_root)
-
added. This API provides information which objects are root objects. `category' shows what kind of root objects.
- gc.c (gc_mark_roots)
-
separate from gc_marks_body().
Tue Oct 15 17:47:59 2013 Tanaka Akira<EMAIL_ADDRESS>↑
- process.c
-
Fix a typo. MacOS X doesn't have ENOTSUPP.
2013-10-14¶ ↑
Mon Oct 14 12:32:52 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- ruby.c (process_options)
-
load statically linked extensions before rubygems, because of ext/thread.
- ruby.c (process_options)
-
use gem_prelude instead of requiring rubygems directly when –enable=gems is given.
- Makefile.in (DEFAULT_PRELUDES)
-
always use gem_prelude regardless of –disable-rubygems.
Mon Oct 14 11:07:51 2013 Nobuyoshi Nakada<EMAIL_ADDRESS>↑
- lib/mkmf.rb (have_framework)
-
should append framework options to $LIBS, not $LDFLAGS. The former is propagated to exts.mk when enable-static-linked-ext.
- lib/mkmf.rb (create_makefile)
-