Граф коммитов

37521 Коммитов

Автор SHA1 Сообщение Дата
ko1 4314ded836 * gc.c: guard by #if/#endif with GC_ENABLE_INCREMENTAL_MARK
to hide unused codes.
* gc.c: similar to GC_ENABLE_LAZY_SWEEP.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-14 01:44:57 +00:00
normal c5f8d9c981 vm_eval.c (rb_eval_cmd): use pre-defined idCall
No need to use rb_intern, here.  Reduces size slightly on x86-64:

$ ~/linux/scripts/bloat-o-meter ruby.before ruby.after
add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-31 (-31)
function                                     old     new   delta
rb_eval_cmd                                  813     782     -31

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-14 01:23:58 +00:00
normal f0208a8995 vm_eval.c (rb_yield_splat): add missing GC guard
Nobody uses this function in our source tree, but maybe this
bug is triggered by certain C extensions.

[Bug #10509]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-14 00:26:26 +00:00
hsbt 30a69a5998 * gc.c: fix build error caused by implicit conversion with clang.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 23:12:45 +00:00
normal 6c0a375c58 insns.def (opt_succ): remove Time#succ optimization
Time#succ is a deprecated method and not frequently used, so this wastes
icache in vm_exec_core.  Using bloat-o-meter in the Linux kernel source
to shows a small reduction on my x86-64 system:

$ ~/linux/scripts/bloat-o-meter ruby.before ruby.after
add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-57 (-57)
function                                     old     new   delta
vm_exec_core                               24216   24159     -57

[Feature #10501]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 21:55:28 +00:00
ko1 97c2eac2df * gc.c: refactoring.
* gc.c: use GC_ENABLE_INCREMENTAL_MARK instead of USE_RINCGC.
* gc.c (gc_start): check FORCE_MAJOR_GC.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 20:31:29 +00:00
ko1 b887f4fb45 * gc.c: Tuning RincGC parameters.
Before this patch, gc_marks_step() marks (white -> grey) fixed
  number objects. However, this strategy does not fit practical
  cases, for example too slow to make progres.
  This patch changes this strategy how many objects the
  gc_marks_step() should handle.
  We can estimate how many times gc_marks_step() is called during
  this major marking (== C) with the free slot number in pooled
  pages. We also can estimate the living object number (== L)
  using last marked_slots value. We can solve this problem (how
  many objects should be process in gc_marks_step()) by L/C.
* gc.c (rb_objspace_t): add rb_objspace_t::rincgc::pooled_sltos and
  step_slots.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 20:16:59 +00:00
svn 5a79fda5b4 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:32:45 +00:00
shugo 772e9778fb * lib/net/imap.rb (search_response): parse MODSEQ in SEARCH
responses properly.  [ruby-core:64203] [Bug #10112]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:32:15 +00:00
svn e84e56db54 * 2014-11-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:06:01 +00:00
akr fb2008a73a * test/lib/envutil.rb: Moved from test/ruby/.
* test/lib/find_executable.rb: Ditto.

* test/lib/memory_status.rb: Ditto.

* test/lib/test/unit.rb: require envutil.

* test/: Don't require envutil in test files.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:05:37 +00:00
nagachika 2e8f953d68 * lib/rexml/document.rb: add REXML::Document#document.
reported by Tomas Hoger <thoger@redhat.com> and patched by nahi.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 13:29:50 +00:00
akr b19c39f94f * test/monitor/test_monitor.rb: Use assert_join_threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 13:04:43 +00:00
akr 3864eb828b * test/openssl: Don't specify port number.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 12:46:58 +00:00
akr 1e502d2a10 * test/openssl/ssl_server.rb: Unused file removed.
It is not used since r16111, Ruby 1.9.1.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 12:28:12 +00:00
nobu 07da5b294a eval.c: obsolete comment [ci skip]
* eval.c (rb_ensure): remove obsolete prot_tag comment.  patch by
  Jack Danger at [ruby-core:66238].  [misc #10502]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 09:50:16 +00:00
nobu 2a754a7330 proc.c: make lambda directly
* vm.c (rb_vm_make_proc_lambda): similar to rb_vm_make_proc() with
  is_lambda argument.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 09:10:40 +00:00
headius 787b98e365 * test/bigdecimal/test_bigdecimal.rb: Add test for mult by nil.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 05:31:00 +00:00
nobu d21daa2b91 internal.h: define
* internal.h (STATIC_ASSERT): fix missing preprocessor directive.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 03:44:54 +00:00
usa e9885185c4 * rb_w32_fstat{,i64}: speed up. adjuting timestamps in this function
is to get rid of the side effect of ENV["TZ"].  then, if ENV["TZ"] is
  not set, no need to adjust.  this change makes File#stat about 60%
  faster.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 03:18:00 +00:00
nobu 54af8757b3 internal.h: STATIC_ASSERT
* st.c: include "internal.h" for STATIC_ASSERT.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 02:56:14 +00:00
svn 867aafe409 * 2014-11-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-12 18:57:17 +00:00
normal 14fe2b6b4c gc.c (struct heap_page): trivial packing
304 => 296 bytes on x86-64

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-12 18:57:06 +00:00
hsbt 12c9560fa9 * gems/bundled_gems: Update to test-unit 3.0.6 and minitest 5.4.3.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-12 13:50:17 +00:00
hsbt bb6b37a9bc * lib/rubygems/*: Update to RubyGems 2.4.3 master (7b1f684).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-12 13:30:58 +00:00
nobu 9efb9195e0 test_unicode_normalize.rb: skip only once
* test/test_unicode_normalize.rb (setup): skip only once, and
  silently ignore other tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 23:54:45 +00:00
nobu 16d2f2803f test_unicode_normalize.rb: skip if not found
* test/test_unicode_normalize.rb (read_tests): do nothing if the
  test data file is not found.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 23:06:53 +00:00
nobu b65b392e96 tables.rb: add
* lib/unicode_normalize/tables.rb: commit not to download and
  convert Unicode data files every time.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 17:41:53 +00:00
nobu d91b502dec common.mk: relax dependency
* common.mk (lib/unicode_normalize/tables.rb): should depend on
  Unicode data files only when downloading.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 17:41:42 +00:00
svn f3ad4110be * 2014-11-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 15:28:33 +00:00
akr ae831861be * test/ruby/test_object.rb: Specify an exception class for rescue clause.
* test/dbm/test_dbm.rb: Ditto.

* test/gdbm/test_gdbm.rb: Ditto.

* test/sdbm/test_sdbm.rb: Ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 15:28:17 +00:00
akr 801c8ab026 * test/fileutils/test_fileutils.rb: Use assert_join_threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 14:44:18 +00:00
akr 08bb9482a0 * test/resolv/test_dns.rb: Use assert_join_threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 13:51:39 +00:00
akr 1fca7620dc * test/net/pop/test_pop.rb: Use assert_join_threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 13:33:46 +00:00
akr 7bb546a2a1 * test/net/http/test_https_proxy.rb: Use assert_join_threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 13:08:01 +00:00
nobu 50ad0f58bb * win32/Makefile.sub (prelude.c): search from source directory,
not depending on VPATH, in parallel to r35135.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 10:29:00 +00:00
nobu 1a9a3c3944 unicode_norm_gen.tmpl: fix build error
* template/unicode_norm_gen.tmpl: fix build error on CentOS 5 with
  ruby 1.8.5 which lacks Symbol#to_proc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 10:18:13 +00:00
nobu d24e725009 common.mk: nmake
* common.mk (prelude.c): workaround for nmake.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:46:32 +00:00
nobu df4c772724 make-snapshot: no wait unless needed
* tool/make-snapshot (package): no wait when using already
  exported source without modification, assuming exported 2
  seconds (the lowest timestamp resolution) ago or more.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:10:03 +00:00
nobu f760bb4b39 common.mk: preludes
* common.mk (preludes): make prelude.c too.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:09:59 +00:00
nobu 8e677dc443 template/prelude.c.tmpl
* template/prelude.c.tmpl: move from tool/compile_prelude.rb and
  expand by generic_erb.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:09:14 +00:00
naruse 2607419700 suppress warning: shadowing outer local variable - line
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 06:27:34 +00:00
naruse 7b4383a2a9 remove debug code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 06:22:34 +00:00
naruse 05eb6111d9 * lib/rubygems/commands/contents_command.rb (files_in_default_gem):
remove useless sort. show_files will sort the result and
  another branch, files_in_gem, doesn't sort.
  it should be removed for consistency.

* test/rubygems/test_gem_commands_contents_command.rb
  (test_execute_default_gem): adjust the sort algorithm with
  Gem::Commands::ContentsCommand#show_files, which sort items
  as array of [prefix, basename] not strings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 05:08:59 +00:00
ko1 495548ace4 * string.c (sym_equal): use rb_obj_equal().
rb_obj_equal() is specially optimized in
  opt_eq_func()@vm_insnhelper.c.
  This fix is made from this discussion:
  https://www.omniref.com/ruby/2.1.4/symbols/Symbol/%3D%3D#line=8361.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 01:42:01 +00:00
hsbt d5b7a701eb * lib/rdoc/known_classes.rb: reverted regression changes of
rdoc known class.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 00:39:00 +00:00
svn 3d5601ae9a * 2014-11-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-10 15:22:42 +00:00
akr 976574413a * test/net/imap/test_imap.rb: Don't ignore exceptions on server
threads.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-10 15:22:29 +00:00
akr 9bf5457481 * test/net/ftp/test_ftp.rb (create_ftp_server): Don't ignore
exceptions on server thread.
  Delete read_timeout method call to fix NoMethodError.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-10 14:40:00 +00:00
nobu 0d70c707ae win32.c: user name
* win32/win32.c (init_env): save USER environment variable in
  login name if it is set.  [ruby-core:66163] [Bug #10493]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-10 14:24:53 +00:00