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

6755 Коммитов

Автор SHA1 Сообщение Дата
tmm1 0094b7bb68 * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 06:57:14 +00:00
ko1 5993c141f1 * 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[:heap_eden_page_length]
  instead of GC.stat[:heap_length].
  This test expects `heap_eden_page_length' (used pages size).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 06:09:55 +00:00
tmm1 53f3ddfefb * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 06:03:37 +00:00
drbrain 9c8f03fac9 * lib/rinda/ring.rb: Announce RingServer for the same process.
[ruby-trunk - Bug #9163]
	* test/rinda/test_rinda.rb:  Tests for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 05:50:21 +00:00
tmm1 fdcc476e21 * 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]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 05:39:38 +00:00
tmm1 0c3b3e9237 * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 05:28:55 +00:00
headius 26e969182b * test/ruby/test_string.rb: Add test for error when appending a
Symbol into a String.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 03:28:48 +00:00
nobu c38b4a9b3d test_bug_reporter.rb: remove core
* test/-ext-/bug_reporter/test_bug_reporter.rb (test_bug_reporter_add):
  remove expected core file to get rid of false error in chkbuild.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-27 00:32:37 +00:00
tenderlove 079ff69ca0 * 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: https://github.com/tenderlove/psych/issues/168

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 21:41:48 +00:00
tenderlove 725d6f4970 * ext/psych/lib/psych/scalar_scanner.rb: fix regexp for matching TIME
strings.
* test/psych/test_date_time.rb: test for change.
  Fixes: https://github.com/tenderlove/psych/issues/171

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 19:48:03 +00:00
nobu 4760b9824f string.c: fix memsize of frozen shared string
* string.c (str_new4): copy the original capacity so that memsize of
  frozen shared string returns correct size.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 17:27:01 +00:00
nobu 94f01c55df should not ignore the rest of recursive constructs
* 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 17:20:16 +00:00
nobu d503381ce8 hash.c: cut off if recursion
* hash.c (rb_hash): cut off if recursion detected to get rid of stack
  overflow.  [ruby-core:58567] [Bug #9151]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 13:43:40 +00:00
ko1 a4b0c3c26b * test/ruby/test_settracefunc.rb: add tests for a_call/a_return
by Brandur <brandur@mutelight.org> [Feature #9120]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 11:03:57 +00:00
ko1 5b40cb6a2c * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 08:41:44 +00:00
nobu 079009fb93 file.c: fix buffer overflow
* 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]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-26 07:30:37 +00:00
drbrain 04817ae6d3 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-25 19:14:49 +00:00
ko1 84b7d6d533 * test/-ext-/tracepoint/test_tracepoint.rb: catch up GC.stat changes
at r43835.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-24 20:06:02 +00:00
ko1 f06002208d * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-24 19:08:33 +00:00
ko1 15bbf34c69 * test/ruby/test_gc.rb: catch up last commit.
Now RUBY_GC_OLDSPACE_LIMIT(...) is RUBY_GC_OLDMALLOC_LIMIT(...).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-24 19:01:14 +00:00
jeg2 895e9b0acd * lib/csv.rb: Optimize header hashes by freezing string keys.
[ruby-core:58510]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-24 00:44:41 +00:00
tmm1 34176b023e * ext/objspace/objspace_dump.c: test fixes and win32 compatibility
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-24 00:22:19 +00:00
jeg2 80c4b4b3d7 * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-23 23:12:11 +00:00
ko1 dbe9e6a5f8 * gc.c: fix gloval 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-23 03:33:10 +00:00
drbrain e8e18cff7a * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 18:53:21 +00:00
tarui d56cbe5ad7 * test/ruby/test_settracefunc.rb (test_tracepoint_thread): bugfix.
Take care about the thread switch between Thread.new and let to
	  create_thread.
	  TracePoint's block is sometimes run with create_thread == nil,
	  so we have to perform Thread check later.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 18:22:57 +00:00
naruse 95a6be1a17 * transcode.c (str_transcode0): don't scrub invalid chars if
str.encode doesn't have explicit invalid: :replace.
  workaround fix for see #8995

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 08:50:14 +00:00
mrkn 2043bb5c34 * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 07:52:17 +00:00
nobu f229f6e32c test_string.rb: refine assertions
* test/ruby/test_string.rb: refine assertions, instead of mere assert.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 06:32:34 +00:00
nobu 5cb83d9dab util.c: ignore too long fraction part
* util.c (ruby_strtod): ignore too long fraction part, which does not
  affect the result.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 03:43:56 +00:00
akr a89132ca7f * test/ruby/test_settracefunc.rb: Ignore events from other threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 03:03:11 +00:00
zzak d553c518d5 * test/digest/test_digest.rb: Reverse order of assert_equal
Reported by @splattael


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-22 00:43:08 +00:00
drbrain 5307d803f5 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 23:27:30 +00:00
mrkn ff3e585014 * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 12:37:46 +00:00
nobu 7800a4b566 test_tempfile.rb: suppress warnings
* test/test_tempfile.rb (test_tempfile_is_unlinked_when_ruby_exits): no error should emit.

* test/test_tempfile.rb (test_tempfile_encoding_ascii8bit): remove unused variable.

* test/test_tempfile.rb (test_tempfile_encoding_ascii8bit2): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 09:51:18 +00:00
nobu bb6607404a delegate.rb: check if target is set
* lib/delegate.rb (SimpleDelegator#__getobj__): target object must be set.
* lib/delegate.rb (DelegateClass#__getobj__): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 09:47:31 +00:00
zzak 671dbfdda8 * test/digest/test_digest.rb: Add more tests for digest/bubblebabble
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 07:51:29 +00:00
knu d3edb4a85e * test/uri/test_generic.rb (URI#test_merge): Test uri + URI(path)
in addition to uri + path.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 07:26:53 +00:00
zzak 543c99e25a * test/digest/test_digest.rb: Add test for Digest::SHA256.bubblebabble
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-21 01:31:51 +00:00
akr ced9ad5ab5 * random.c (rand_init): Make it possible to specify arbitrary array
for init_genrand().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-20 11:05:38 +00:00
nobu cdde8c23de test_exception.rb: enclose hash defininition
* test/ruby/test_exception.rb: (test_machine_stackoverflow): enclose
  hash defininition because SystemStackError raises at line 3 on
  FreeBSD, for unknown reason.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-20 09:01:42 +00:00
naruse 14cab32596 * ext/json: merge JSON 1.8.1.
002ac2771c...e09ffc0d7d
* Remove Rubinius exception since transcoding should be working now.
* Fix https://github.com/flori/json/issues/162 reported by Marc-Andre
  Lafortune <github_rocks@marc-andre.ca>. Thanks!
* Applied patches by Yui NARUSE <naruse@airemix.jp> to suppress
  warning with -Wchar-subscripts and better validate UTF-8 strings.
* Applied patch by ginriki@github to remove unnecessary if.
* 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-20 02:55:08 +00:00
nobu a9a6c103e5 delegate.rb: refix r43682
* lib/delegate.rb (Delegator#send): separate from method_missing so
  that super calls proper method.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-19 16:27:40 +00:00
nobu a8e29fb206 test_rdoc_generator_darkfish.rb: ignore nlink is not provided
* test/rdoc/test_rdoc_generator_darkfish.rb (assert_hard_link): makes
  no sense on platforms where link count is not provided.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-19 14:34:20 +00:00
nobu 4528d7e0cf rubygems/source/git.rb: discard output
* lib/rubygems/source/git.rb (Gem::Source::Git#checkout): discard git
  output.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-19 14:00:29 +00:00
akr 6895e77ffc * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-19 12:29:46 +00:00
drbrain cc46b530b0 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-19 00:47:33 +00:00
drbrain a7fa4d5d9a * 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]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-19 00:34:13 +00:00
headius 64e693dd32 * test/bigdecimal/test_bigdecimal.rb: incorporate BigMath.log
tests from JRuby by Peter Vandenabeele.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-18 19:02:11 +00:00
nobu 340390093b eval_intern.h: refine stack overflow detection
* 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().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-18 13:47:56 +00:00
kou a66a9fbb10 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-16 09:31:24 +00:00
tarui bc3db2a512 * test/ruby/test_hash.rb (class TestHash): add tests for [ruby-dev:47803] [Bug #9105]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-16 00:24:39 +00:00
nobu 6e3184e25a envutil.rb: crash report on Mac OS X
* test/ruby/envutil.rb (EnvUtil.diagnostic_reports): find crash report
  on Mac OS X.

* test/ruby/envutil.rb (Test::Unit::Assertions::FailDesc): include
  crash report on Mac OS X.

* test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err):
  remove crash reports if exist.

* test/ruby/test_process.rb (TestProcess#test_status_kill): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-15 22:14:09 +00:00
nobu 006eca88cf test_beginendblock.rb: assert_normal_exit
* test/ruby/test_beginendblock.rb (test_callcc_at_exit): use
  assert_normal_exit for better message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-15 20:54:16 +00:00
glass 77a5f5b57b * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-15 15:29:23 +00:00
nobu 549b35c1dc eval.c: refactor exception cause
* eval.c (setup_exception): set up cause after exception to be raised
  is fixed.  [Feature #8257]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-15 14:08:49 +00:00
nobu e7d29c6cda hash.c: iteration level with reentering
* hash.c (hash_foreach_iter, hash_foreach_ensure, rb_hash_foreach):
  deal with iteration level when reentering by callcc.  temporary
  measure until rollback of ensure is introduced.  [ruby-dev:47807]
  [Bug #9105]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-15 13:21:38 +00:00
nobu ca5739979d delegate.rb: get rid of global function interference
* lib/delegate.rb (Delegator#send): override to get rid of global function interference.
  [Fixes GH-449]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-15 08:07:39 +00:00
nobu 91aa8da578 objspace_dump.c: refine output
* 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-14 16:06:09 +00:00
akr e4f8f8907c * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-14 10:58:15 +00:00
nobu 04c7fa0f3b hash.c: restore iter_lev
* hash.c (hash_foreach_ensure): restore iter_lev to the previous
  value, not just decrement.  [ruby-dev:47803] [Bug #9105]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-14 02:35:40 +00:00
drbrain 067e24d6e2 * test/rubygems/insure_session.rb: Remove unused test file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-12 01:16:11 +00:00
drbrain 44d0a6dcd7 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-12 00:16:41 +00:00
drbrain e22d8781c8 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-10 19:37:05 +00:00
drbrain 4f6779bac7 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-10 17:51:40 +00:00
nobu b050cc5ab9 error.c: Exception#cause
* error.c (exc_cause): captured previous exception.
* eval.c (make_exception): capture previous exception automagically.
  [Feature #8257]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-10 13:16:33 +00:00
nobu 90b9996523 parse.y: remove "f" suffix [ruby-core:57966] [Feature #9042]
revert r42847 "test_string.rb: add test string encoding"

revert r42846 "parse.y: freeze in advance to reduce objects"

revert r42843 "parse.y: deduplicate frozen string literals"

revert r42780 "test_string.rb: yet another test"

revert r42779 "parse.y: valid suffix word only"

revert r42778 "test_string.rb: remove duplicated code"

revert r42775 "parse.y: force_encoding"

This reverts commit 93ea04ecec.

revert r42773 "Add frozen string literals"

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-10 06:13:02 +00:00
nobu d6f5e30df8 test_objectspace.rb: run in separate process
* test/ruby/test_objectspace.rb (TestObjectSpace#test_finalizer): run
  in separate process so that finalizers run at termination certainly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 18:12:39 +00:00
nobu 0a5b32c45a envutil.rb: under_gc_stress parameter
* test/ruby/envutil.rb (EnvUtil#under_gc_stress): add stress parameter
  so that making possible to disable stressing explicitly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 16:46:17 +00:00
nobu 3fdff0501a gc.c: private call
* gc.c (should_be_callable): allow private call since rb_eval_cmd
  calls even private methods.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 15:36:46 +00:00
nobu ab60cf1a99 test_objspace.rb: assertion for temporary file
* test/objspace/test_objspace.rb (TestObjSpace#test_dump_all): add
  assertion for output to temporary file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 13:35:01 +00:00
akr c3fdc2cfb0 * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 11:53:02 +00:00
tmm1 d0d6e2ecfa * ext/objspace/object_tracing.c: Add experimental methods to dump
objectspace as json: ObjectSpace.dump_all and ObjectSpace.dump(obj).
These methods are useful for debugging reference leaks and memory growth
in large ruby applications. [Bug #9026] [ruby-core:57893] [Fixes GH-423]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-08 17:06:55 +00:00
nobu 74f424c26a test_logger.rb: clear garbage files
* test/logger/test_logger.rb (test_shifting_age_in_multiprocess):
  unlink rotated log files all.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-07 18:11:38 +00:00
nobu cf5ef3db5e vm_trace.c: isolate errinfo in trace blocks
* 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]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-07 00:39:56 +00:00
naruse e7194e9648 Suppress warnings: ambiguous first argument; put parentheses or even spaces
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-06 06:25:18 +00:00
tenderlove 9ae2651d19 * 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
  https://github.com/tenderlove/psych/issues/168

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-05 19:15:40 +00:00
akr 7835e321ea * test/ruby/test_thread.rb (test_thread_join_in_trap):
Run the test in a different process.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-05 12:25:15 +00:00
nobu b2f7e64caf test_command_processor.rb: clear tmpdir
* test/shell/test_command_processor.rb (TestShell#teardown): should
  not leave temporary directories.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-05 08:10:32 +00:00
akr 7a3f2845df * test/xmlrpc: Don't use fixed ports: 8070 and 8071.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-04 13:21:53 +00:00
akr 445b04d18d * test/xmlrpc/webrick_testing.rb (start_server): Initialize the server
at main thread to fail early.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-04 06:27:54 +00:00
akr ddf1d3aaed * test/xmlrpc: Wrap definitions by TestXMLRPC module.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-03 11:41:53 +00:00
akr 438a91c072 * test/xmlrpc/webrick_testing.rb (stop_server): Don't try to shutdown
the server if the server is not started.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-03 11:26:58 +00:00
nobu 3c8072937c logger.rb: fix r43511 for Windows
* 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-02 06:15:02 +00:00
naruse 0749adc54c * lib/logger.rb: Inter-process locking for log rotation
Current implementation fails log rotation on multi process env.
  by sonots <sonots@gmail.com>
  https://github.com/ruby/ruby/pull/428 fix GH-428 [Bug #9046]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-01 22:14:42 +00:00
nobu 99981ece00 test_m17n.rb: fix encoding
* test/ruby/test_m17n.rb (test_scrub): fix expected encoding, for
  non-UTF-8 environment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-01 13:46:29 +00:00
nobu e7fac351c2 string.c: fix typo
* string.c (rb_str_scrub): fix typo, should yield invalid byte
  sequence to be scrubbed.  reported by znz at IRC.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-01 11:53:59 +00:00
nobu d7b729dcd0 test_m17n.rb: nil replacement
* test/ruby/test_m17n.rb (test_scrub, test_scrub_bang): now explicit
  nil is allowed as replacement.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-01 08:00:43 +00:00
tenderlove e0c6dd91a4 * ext/psych/lib/psych/visitors/yaml_tree.rb: string subclasses should
not be considered to be binary.  Fixes Psych / GH 166
  https://github.com/tenderlove/psych/issues/166

* test/psych/test_string.rb: test for fix

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-29 18:10:24 +00:00
tmm1 29dbed183e * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-29 02:11:26 +00:00
akr e2ec76056a * test/readline/test_readline.rb (teardown): Clear Readline.input and
Readline.output.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-28 14:26:41 +00:00
nobu 4a21c8cc27 test_exception.rb: missing test
* test/ruby/test_exception.rb (test_to_s): missing test for r30455.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-28 04:11:20 +00:00
tmm1 5b529e5a3d * vm_backtrace.c (rb_profile_frame_classpath): handle singleton
methods defined directly on an object.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-27 19:17:24 +00:00
nobu ab453f901d struct.c: fix warning message
* struct.c (new_struct): fix warning message, class name and encoding.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-27 15:52:39 +00:00
nobu f8978ba3f9 envutil.rb: fix disabling gems in assert_separately
* test/ruby/envutil.rb (assert_separately): fix the position of
  --disable=gems option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-27 01:36:18 +00:00
nobu 64f2b9f990 range.c: modify check
* range.c (range_initialize_copy): disallow to modify after
  initialized.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-26 10:08:02 +00:00
nobu 2c6518c37d envutil.rb: disable gems in child process
* test/ruby/envutil.rb (assert_separately): disable gems by default to
  get rid of loading test-unit gem, which doesn't have _assertions
  method.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-26 10:07:13 +00:00
marcandre 8afbb0e6ef * parse.y: Remove +(binary) and -(binary) special cases [Feature #9048]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-24 12:58:54 +00:00
tmm1 b906f0ed17 * gc.c: add new initial_growth_max tuning parameter. [ruby-core:57928] [Bug #9035]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-23 22:47:29 +00:00
marcandre f9a169fff2 * lib/ostruct.rb: raise NoMethodError with a #name and #args.
Patch by Kenichi Kamiya. [Fixes GH-383]

* test/ostruct/test_ostruct.rb: Added tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-23 15:14:17 +00:00
marcandre 5b5de3984e * lib/ostruct.rb (Struct#each_pair): Return an enumerator with size
Patch by Kenichi Kamiya. [Fixes GH-383]

* test/ostruct/test_ostruct.rb: Added tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-23 15:13:57 +00:00
marcandre 99d5d90f2f * lib/ostruct.rb (OpenStruct#delete): Use the converted argument.
Patch by Kenichi Kamiya. [Fixes GH-383]

* test/ostruct/test_ostruct.rb: Added tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-23 15:13:38 +00:00
marcandre b9e18abe4a * lib/ostruct.rb: Raise RuntimeError when modifying frozen instances
instead of TypeError. Patch by Kenichi Kamiya. [Fixes GH-383]

* test/ostruct/test_ostruct.rb: Added tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-23 15:13:19 +00:00
marcandre dc215dcd9f * array.c: Add Array#to_h [Feature #7292]
* enum.c: Add Enumerable#to_h

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-23 15:10:48 +00:00
nobu f57c988e34 dir.c: DOTMATCH to current directory
* dir.c (glob_helper): don't skip current directories if FNM_DOTMATCH
  is given.  [ruby-core:53108] [Bug #8006]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-22 06:59:54 +00:00
nobu 274e50c189 encoding.c: preserve outer errinfo
* encoding.c (load_encoding): should preserve outer errinfo, so that
  expected exception may not be lost.  [ruby-core:57949] [Bug #9038]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-21 14:57:55 +00:00
drbrain 8552f7aa68 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-20 00:31:12 +00:00
nobu 347e748bdd variable.c: real class name
* variable.c (rb_class2name): should return real class name, not
  singleton class or iclass.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-19 20:24:30 +00:00
nobu 6bf78ee633 gc.c: fix arity
* gc.c (Init_GC): fix arity of key? method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-18 23:50:13 +00:00
drbrain 18b7112ec1 * lib/rubygems: Update to RubyGems master 42543b6. Changes:
Fix `gem update` for gems with multiple platforms.

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-18 22:14:56 +00:00
drbrain 08aa6d59a2 * lib/rubygems: Update to RubyGems master 0a3814b. Changes:
Fixed extension directory in Gem::Specification#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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-18 21:56:18 +00:00
drbrain 0751fd43ac Commit miss for r43347
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-18 01:57:00 +00:00
drbrain 05ca2faba2 * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-18 00:41:36 +00:00
drbrain 4fa08bbaf8 * lib/rubygems: Update to RubyGems master f738c67. Changes:
Fixed test bug for ruby with ENABLE_SHARED = no

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 21:03:49 +00:00
akr 4c5bfb9fbd * 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.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 15:59:40 +00:00
nobu 29736fab40 envutil.rb: use **opt
* test/ruby/envutil.rb: use **opt to call invoke_ruby.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 10:51:37 +00:00
nobu 96399a0c5f envutil.rb: improve assert_no_memory_leak
* test/ruby/envutil.rb (assert_no_memory_leak): allow envirionment
  variables keyword options.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 10:51:35 +00:00
shugo f8e0e1647e * 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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 08:44:26 +00:00
nobu 36862468a8 file.c: fix memory leak
* win32/file.c (rb_file_expand_path_internal): fix memory leaks at
  a non-absolute home exception.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 05:21:38 +00:00
akr ed6231195b * lib/tsort.rb (TSort.each_strongly_connected_component_from):
Extracted from TSort#each_strongly_connected_component_from.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 03:32:15 +00:00
drbrain a357984508 * lib/rubygems: Update to RubyGems master 941c21a. Changes:
Restored method bundler wants to remove for compatibility.

  Improvements to Gemfile compatibility.

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 02:08:53 +00:00
nobu dee91b534a * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-17 01:10:35 +00:00
drbrain a1d96c9f47 * lib/rubygems: Update to RubyGems master 2abce58. Changes:
Fixed documentation generation when sdoc and json are installed as
  gems.

  Added some missing documentation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-16 22:37:39 +00:00
ko1 955a38da08 * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-16 08:39:39 +00:00
ko1 ede6826186 * ext/objspace/objspace.c: add a new method `reachable_objects_from_root'.
ObjectSpace.reachable_objects_from_root returns all objects refered
  from root (called "root objects").
  This feature is for deep object analysis.
* test/objspace/test_objspace.rb: add a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-16 06:13:41 +00:00
drbrain e775a930e1 * 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` dependecy file list.

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-16 06:00:39 +00:00
drbrain 33d1f172c8 * 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.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-16 00:43:14 +00:00
drbrain 28918eac58 * lib/rubygems: Update to RubyGems master commit 2a74263. This fixes
several bugs in RubyGems 2.2.0.preview.1.

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-16 00:14:16 +00:00
nobu d0885b5cd8 test_array.rb: add test
* test/ruby/test_array.rb (test_last2): add test for Array#last with
  length argument.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-15 07:34:03 +00:00
nobu ae65eeb604 allpairs.rb: remove unused variable
* test/ruby/allpairs.rb (AllPairs#each_index): remove unused variable,
  prime.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-14 19:14:29 +00:00
nobu 2e3d072d9d test/-ext-: suppress warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-14 19:14:27 +00:00
nobu 5f7f1e5162 test_profile_frames.rb: assert first_lineno
* test/-ext-/debug/test_profile_frames.rb (test_profile_frames):
  assert first_lineno, only the top level of methods for the time
  being.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-14 19:14:20 +00:00
nobu 8cf090743e test_profile_frames.rb: fix typo
* test/-ext-/debug/test_profile_frames.rb (test_profile_frames): fix
  typo, methdo_names to method_names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-14 19:14:17 +00:00
nobu e8da08364c test_rake_clean.rb: skip on Windows
* test/rake/test_rake_clean.rb (create_undeletable_file): skip when
  permission to delete files is different.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-13 03:42:39 +00:00
nobu 060b4df0ac test_notimp.rb: test timeout
* test/ruby/test_notimp.rb (test_call_fork): test timeout directly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-13 03:16:50 +00:00
drbrain 9cadc95b28 * NEWS (with all sufficient information):
* lib/rake:  Update to rake 10.1.0
* bin/rake:  ditto.
* test/rake:  ditto.

* NEWS:  Update NEWS to include rake 10.1.0 and links to release notes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-11 21:35:01 +00:00
nobu 53861b8acd vm_trace.c: fix infinite hook
* thread.c (rb_threadptr_execute_interrupts): flush postponed job only
  once at last.
* vm_trace.c (rb_postponed_job_flush): defer calling postponed jobs
  registered while flushing to get rid of infinite reentrance of
  ObjectSpace.after_gc_start_hook.  [ruby-dev:47400] [Bug #8492]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-10 18:36:54 +00:00
ko1 4599d3efd7 * vm.c (vm_exec): support :b_return event for "lambda{return}.call".
[Bug #8622]
* test/ruby/test_settracefunc.rb: add a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-10 08:31:48 +00:00
ko1 dcad4bda58 * test/ruby/test_rand.rb: fix r43224. local variable `e' is
no longer available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 21:04:12 +00:00
nobu 2918f391dd test/ruby: assert_raise_with_message
* test/ruby: use assert_raise_with_message

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 15:17:20 +00:00
nobu 24cf72029f object.c: avoid inadvertent symbol creation
* object.c (id_for_attr): avoid inadvertent symbol creation.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 14:57:04 +00:00
nobu e3a716a2ab test_module.rb: quote name
* test/ruby/test_module.rb (test_bad_constants, test_invalid_attr):
  encode and quote name properly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 13:27:51 +00:00
nobu e70f74c3d2 vm_method.c: preserve encoding
* vm_method.c (rb_attr): preserve encoding of the attribute ID in
  error message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 09:03:07 +00:00
nobu ef46e8d264 test_inadvertent_creation.rb: fix assertion name
* test/-ext-/symbol/test_inadvertent_creation.rb: fix assertion name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 09:03:03 +00:00
nobu 6af3029c8c test_inadvertent_creation.rb: use assert_not_interned?
* test/-ext-/symbol/test_inadvertent_creation.rb: use
  assert_not_interned? instead assert_not_send.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 08:45:30 +00:00
nobu 9ef55da910 test/unit/assertions.rb: return exception
* lib/test/unit/assertions.rb (assert_raise_with_message): return
  raised exception same as assert_raise.

* test/ruby, test/-ext-: use assert_raise_with_message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 08:43:12 +00:00
nobu 289d6bb30f test: use assert_raise
* test/ruby, test/-ext-: use assert_raise instead of assert_raises.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 08:41:13 +00:00
nobu b1b4724ea0 test_tracepoint.rb: include zombies
* test/-ext-/tracepoint/test_tracepoint.rb (test_tracks_objspace_count):
  free count should include zombies.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 08:39:28 +00:00
nobu 90c1ebbfd5 compar.c: fail if recursion
* compar.c (cmp_eq): fail if recursion.  [ruby-core:57736] [Bug #9003]
* thread.c (rb_exec_recursive_paired_outer): new function which is
  combinnation of paired and outer variants.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 04:53:18 +00:00
nobu 37fb998384 test_require.rb: need verbose
* test/ruby/test_require.rb (test_race_exception): need $VERBOSE
  setting, to emit warnings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 03:11:49 +00:00
ko1 b753b9606e * include/ruby/debug.h,
vm_backtrace.c (rb_profile_frame_full_label): add new C API
  rb_profile_frame_full_label() which returns label with
  qualified method name.
  Note that in future version of Ruby label() may return
  same return value of full_label().
* ext/-test-/debug/profile_frames.c,
  test/-ext-/debug/test_profile_frames.rb: fix a test for this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-09 00:21:51 +00:00
nobu 21e858e518 load.c: display backtrace to $stderr
* load.c (load_lock): display backtrace to $stderr at circular
  require.
* vm_backtrace.c (rb_backtrace_print_to): new function to print
  backtrace to the given output.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-08 15:56:01 +00:00
nobu 3f167b72bd * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-08 13:50:50 +00:00
ko1 cff2b2b666 * vm_backtrace.c, include/ruby/debug.h: add new APIs
* VALUE rb_profile_frame_method_name(VALUE frame)
* VALUE rb_profile_frame_qualified_method_name(VALUE frame)
* iseq.c (rb_iseq_klass), internal.h: add new internal function
  rb_iseq_method_name().
* ext/-test-/debug/profile_frames.c (profile_frames),
  test/-ext-/debug/test_profile_frames.rb: add a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-08 12:08:20 +00:00
nobu 377758fdcb test_rubyoptions.rb: only one Bogus object
* test/ruby/test_rubyoptions.rb (test_segv_loaded_features): leave
  only one Bogus object in $LOADED_FEATURES.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-08 07:19:54 +00:00
akr a8178c69be * lib/time.rb (Time.strptime): Time.strptime('0', '%s') returns local
time Time object as Ruby 2.0 and before.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 21:00:12 +00:00
akr da6229a3a0 * lib/time.rb (Time.strptime): Use :offset.
Patch by Felipe Contreras.  [ruby-core:57694]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 11:10:03 +00:00
nobu f14c312b58 test_io.rb: fix r43164
* test/ruby/test_io.rb (test_pid_after_close_read): fix rr43164 for
  platforms other than Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 08:14:01 +00:00
ko1 6b5d5e5322 * test/-ext-/debug/test_profile_frames.rb: rename class C to
something long name because one test depends on absence of
  class ::C.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 07:51:16 +00:00
ko1 ef7df5a414 * ext/-test-/debug/profile_frames.c:
test/-ext-/debug/test_profile_frames.rb: add a test for new C-APIs.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 07:35:21 +00:00
naruse 5df9f0d839 Increase open_timeout [Bug #8986]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 06:36:27 +00:00
nobu 1ccaef9938 test_io.rb: get rid of error message
* test/ruby/test_io.rb (TestIO#test_pid_after_close_read): get rid of
  broken pipe error message from invoked command, by let it exit
  silently.  echo in cmd.exe does not interpret double quotes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-07 06:08:59 +00:00
nobu be903332c6 test_tempfile.rb: fix test on Windows
* test/test_tempfile.rb (test_tempfile_finalizer_does_not_run_if_unlinked):
  open file cannot be deleted on Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-06 00:38:34 +00:00
nobu 21212fba19 test_old_thread_select.rb: ignore short wait on Windows
* test/-ext-/old_thread_select/test_old_thread_select.rb
  (test_old_select_signal_safe): ignore short wait on Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-06 00:28:13 +00:00
nobu 803c3929b8 test_sleep.rb: get rid of failure on Windows
* test/ruby/test_sleep.rb (test_sleep_5sec): relax bottom on Windows.
  assert_operator should test on the receiver.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-06 00:22:58 +00:00
nobu 6d757c79d9 test_thread.rb: ignore meaningless test
* test/ruby/test_thread.rb (test_blocking_mutex_unlocked_on_fork):
  ignore meaningless test on platforms where fork() is not supported.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-06 00:16:52 +00:00
nobu 57b8687deb thread.c: fix some mutexes remaining locked after forking
* thread.c (terminate_atfork_i): fix locking mutexes not unlocked in
  forks when not tracked in thread.  [ruby-core:55102] [Bug #8433]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-05 02:21:12 +00:00
tmm1 907a03fee5 gc.c: add objspace_free_num and make GC.stat[:heap_free_num] use it
* gc.c (objspace_free_num): new method for available/free slots on
	  heap. [ruby-core:57633] [Bug #8983]
	* gc.c (gc_stat): change heap_free_num definition to use new method.
	* test/ruby/test_gc.rb: test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-04 10:05:40 +00:00
nobu 28204c67ed csv.rb: foreach enumerator
* lib/csv.rb (CSV.foreach): support enumerator.  based on a patch by
  Hanmac (Hans Mackowiak) at [ruby-core:57643].  [ruby-core:57283]
  [Feature #8929]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-04 00:32:35 +00:00
nobu fd3cdb5ee3 test_io.rb: fix typo
* test/ruby/test_io.rb (test_pid_after_close_read): fix typo.  pointed
  out by Peter Suschlik.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-03 11:41:50 +00:00
nobu a2d21de1c8 test_io.rb: add test
* test/ruby/test_io.rb (tesst_pid_after_close_read): test for r43117.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-02 07:48:19 +00:00
nobu f0d8be4e2b io.c: get rid of race condition
* io.c (rb_io_close_write): detach tied IO for writing before closing
  to get rid of race condition.  [ruby-list:49598]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-02 05:20:02 +00:00
nobu ec2db8decf tempfile.rb: undefine finalizer on unlink
* lib/tempfile.rb (Tempfile#unlink): finalizer is no longer needed
  after unlinking.  patched by by normalperson (Eric Wong) at
  [ruby-core:56521] [Bug #8768]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-01 13:03:58 +00:00
nobu c07c33b28a file.c: export rb_stat_new
* file.c (stat_new_0): constify.
* file.c (rb_stat_new): constify and export.  based on a patch by
  Hanmac (Hans Mackowiak) at [ruby-core:53225].  [Feature #8050]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-01 11:54:53 +00:00
nobu f09b772de6 test_config.rb: fix library path
* test/mkmf/test_config.rb (test_dir_config): fix expected library
  path.  [ruby-core:57535] [Bug #8972]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-01 11:36:47 +00:00
nobu 1dc020917f test_regexp.rb, test_string.rb: suppress warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-01 07:27:14 +00:00
nobu d4ef0b4794 test_regexp.rb, test_string.rb: use assert_separately
* test/ruby/test_regexp.rb (test_eq_tilde_can_be_overridden): use assert_separately
  to suppress a warning.
* test/ruby/test_string.rb (test_eq_tilde_can_be_overridden): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43104 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-01 07:27:11 +00:00
nobu 2374241752 test_regexp.rb, test_string.rb: suppress warnings
* test/ruby/test_regexp.rb (test_eq_tilde_can_be_overridden): suppress
  a warning.
* test/ruby/test_string.rb (test_eq_tilde_can_be_overridden): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-10-01 05:48:57 +00:00
ko1 1450e0b5ac * ext/objspace/object_tracing.c: add new 3 methods to control tracing.
* ObjectSpace::trace_object_allocations_start
* ObjectSpace::trace_object_allocations_stop
* ObjectSpace::trace_object_allocations_clear
  And some refactoring.
* test/objspace/test_objspace.rb: add a test for new methods.
* NEWS: add a description for new methods.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-30 08:17:30 +00:00
shugo 59f5fa102a * vm_method.c (rb_undef): raise a NameError if the original method
of a refined method is not defined.

* vm_insnhelper.c (rb_method_entry_eq): added NULL check to avoid SEGV.

* test/ruby/test_refinement.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-30 01:49:21 +00:00
nobu 6496dc892d parse.y: allow junk attrset
* parse.y (rb_id_attrset, intern_str): allow junk attrset ID for
  Struct.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-29 14:45:46 +00:00
nobu 771c8ed338 parse.y: fix inconsistency with literals
* parse.y (rb_id_attrset): fix inconsistency with literals, allow
  ID_ATTRSET and return it itself, but ID_JUNK cannot make ID_ATTRSET.
  and raise a NameError instead of rb_bug() for invalid argument.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-29 13:56:33 +00:00
ktsj 94f5787130 * vm_insnhelper.c (vm_callee_setup_arg_complex, vm_yield_setup_block_args):
clear keyword arguments to prevent GC bug which occurs
  while marking VM stack.
  [ruby-dev:47729] [Bug #8964]

* test/ruby/test_keyword.rb: tests for the above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-29 09:50:24 +00:00
nobu 202cc8e615 math.c: fix for Bignum argument
* math.c (math_log, math_log2, math_log10): fix for Bignum argument.
  numbits should be add only when right shifted.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-28 14:25:59 +00:00
kosaki 1a0eb89cff * test/dl/test_base.rb: {libc, libm} detection now handle GNU/Hurd
correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com).
* test/fiddle/helper.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-28 05:43:50 +00:00
ko1 2c0d74b708 * gc.c: add two GC tuning environment variables.
RUBY_GC_MALLOC_LIMIT_MAX and RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR.
  See r43067 for details.
* gc.c (rb_gc_set_params): refactoring. And change verbose notation.
  Mostly duplicated functions get_envparam_int/double is not cool.
  Please rewrite it.
* test/ruby/test_gc.rb: fix a test for this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-27 09:36:48 +00:00
sorah c4b4e77c72 * insns.def (opt_regexpmatch2): Check String#=~ hasn't overridden
before calling rb_reg_match().

* test/ruby/test_string.rb: Test for above.

* vm.c (vm_init_redefined_flag): Add BOP flag for String#=~

[ruby-core:57385] [Bug #8953]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-26 07:58:28 +00:00
charliesome b18151cf53 * insns.def (opt_regexpmatch1): check Regexp#=~ is not defined before
calling rb_reg_match()

* test/ruby/test_regexp.rb: add test

* vm.c (ruby_vm_redefined_flag): change type to short[]

* vm.c (vm_redefinition_check_flag): return REGEXP_REDEFINED_OP_FLAG if
  klass == rb_cRegexp

* vm.c (vm_init_redefined_flag): setup BOP flag for Regexp#=~

* vm_insnhelper.h: add REGEXP_REDEFINED_OP_FLAG

[ruby-core:57385] [Bug #8953]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-26 07:39:48 +00:00
nobu b328a43fa6 test_command_processor.rb: fix for mswin/mingw and test for directory
* test/shell/test_command_processor.rb (test_system_external): fix for
  mswin and mingw.  one of EXECUTABLE_EXTS is needed but shell.rb does
  not support it.

* test/shell/test_command_processor.rb (test_system_directory): test
  not to find directory.  [ruby-core:57235] [Bug #8918]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-25 07:46:20 +00:00
ko1 d12d47c4be * test/rdoc/test_rdoc_generator_darkfish.rb: add a guard for windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-25 06:37:36 +00:00
drbrain 8eb3918581 * lib/rubygems: Fix CVE-2013-4363. Miscellaneous minor improvements.
* test/rubygems:  Tests for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-25 00:53:19 +00:00
nobu d8441fcc6e encdb.c, encoding.c: make BOM-encodings dummy
* enc/encdb.c (ENC_DUMMY_UNICODE): make BOM-encodings dummy.
* encoding.c (enc_autoload): keep dummy encodings dummy.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-24 08:15:18 +00:00
nobu 84a5622646 test_encodings.rb: remove BOM encodings
* test/csv/test_encodings.rb (TestCSV#each_encoding): encodings with
  BOM are external use only.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-24 07:48:51 +00:00
nobu f894022ba5 string/test_ellipsize.rb: remove non-sense tests
* test/-ext-/string/test_ellipsize.rb (Test_StringEllipsize#test_nonascii):
  rb_str_ellipsize() does not support BOM.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-24 07:42:58 +00:00
nobu e29c3bfb9f test_transcode.rb: base encoding
* test/ruby/test_transcode.rb (TestTranscode#test_pseudo_encoding_inspect):
  test for proper base encoding.  [ruby-core:57318] [Bug #8940]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-23 15:02:50 +00:00
nobu 3a2aca5075 encdb.c, utf_16_32.h: Unicode with BOM
* enc/encdb.c, enc/utf_16_32.h (ENC_DUMMY_UNICODE): Unicode with BOM
  must be based on big endian variants, so that actual encodings would
  work.  [ruby-core:57318] [Bug #8940]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-23 13:16:11 +00:00
nobu d190241a9e test_module.rb: toplevel include
* test/ruby/test_module.rb (TestModule#test_include_toplevel): test
  for top level main.include.  based on a part of the patch by
  kyrylo at [GH-395].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-23 01:42:34 +00:00
nobu c10b7435f6 test_module.rb: use assertions for messages
* test/ruby/test_module.rb (TestModule#assert_top_method_is_private):
  use assert_separately and assert_raise_with_message for better
  messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-23 01:34:01 +00:00
nobu aba824fece parse.y: junk sigil only names
* parse.y (intern_str): sigil only names are junk, at least one
  identifier character is needed.  [ruby-dev:47723] [Bug #8928]
* parse.y (rb_enc_symname_type): fix out of bound access.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-20 06:01:57 +00:00
nobu 831fe26dec ext/-test-/symbol: move upward
* ext/-test-/symbol/extconf.rb: move the extension object file upward.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-20 04:53:11 +00:00
nobu 2a57b71937 test_lambda.rb: fix messages
* test/ruby/test_lambda.rb (test_{do,brace}_lambda_source_location):
  fix messages, missed to commit at r42980.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-19 20:02:06 +00:00
nobu 5cda4e9071 parse.y: adjust position of lambda
* parse.y (lambda): adjust position to the beginning of the block.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-19 07:59:07 +00:00
nobu 170344b20e vsnprintf.c: initialize cp
* vsnprintf.c (BSD_vfprintf): initialize cp so that size is 0 in the
  commented case.  fix an accidental bug at r16716.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-19 07:25:09 +00:00
nobu 3145683203 * remove trailing spaces, append newline at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-19 07:22:13 +00:00
ko1 1e27eda2fa * include/ruby/ruby.h: make Symbol objects frozen.
[Feature #8906]
  I want to freeze this good day, too.
* test/ruby/test_eval.rb: catch up this change.
* test/ruby/test_symbol.rb: add a test to check frozen symbols.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-19 05:30:02 +00:00
drbrain df7dac9174 * lib/rdoc: Update to RDoc 4.1.0.preview.1
RDoc 4.1.0 contains a number of enhancements including a new default
  style and accessibility support.  You can see the changelog here:

  https://github.com/rdoc/rdoc/blob/v4.1.0.preview.1/History.rdoc

* test/rdoc:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-18 23:33:36 +00:00
drbrain 95683e5cb2 * lib/rubygems: Update to RubyGems 2.2.0.preview.1
This brings several new features to RubyGems summarized here:

  https://github.com/rubygems/rubygems/blob/v2.2.0.preview.1/History.txt

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-18 21:29:41 +00:00
glass 81629f0531 * string.c (rb_str_enumerate_lines): make String#each_line and
#lines not raise invalid byte sequence error when it is called
  with an argument. The patch also causes performance improvement.
  [ruby-dev:47549] [Bug #8698]

* test/ruby/test_m17n_comb.rb (test_str_each_line): remove
  assertions which check that String#each_line and #lines will
  raise an error if the receiver includes invalid byte sequence.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-18 14:34:04 +00:00
nobu b56fbb9b12 command-processor.rb: return executable file only
* lib/shell/command-processor.rb (Shell::CommandProcessor#find_system_command):
  return executable file only, should ignore directories and
  unexecutable files.  [ruby-core:57235] [Bug #8918]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-17 12:35:49 +00:00
naruse 269503b544 Revert r42938 "* lib/rubygems: Update to RubyGems 2.1.3"
It breaks build.
http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20130913T200302Z.diff.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-14 08:59:02 +00:00
drbrain 1daa0b113d * lib/rubygems: Update to RubyGems 2.1.3
Fixed installing platform gems

  Restored concurrent requires

  Fixed installing gems with extensions with --install-dir

  Fixed `gem fetch -v` to install the latest version

  Fixed installing gems with "./" in their files entries

* test/rubygems/test_gem_package.rb:  Tests for the above.

* NEWS:  Updated for RubyGems 2.1.3


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-13 19:58:57 +00:00
naruse 80d8216415 * lib/uri/generic.rb (URI::Generic.find_proxy): return nil if
http_proxy environment variable is empty string.
  [ruby-core:57140] [Bug #8898]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-13 04:57:25 +00:00
drbrain fdb6a621b0 * lib/rubygems: Update to RubyGems 2.1.3
Fixed installing platform gems

	  Restored concurrent requires

	  Fixed installing gems with extensions with --install-dir

	  Fixed `gem fetch -v` to install the latest version

	  Fixed installing gems with "./" in their files entries

	* test/rubygems/test_gem_package.rb:  Tests for the above.

	* NEWS:  Updated for RubyGems 2.1.3


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-13 01:40:42 +00:00
nobu 88d28fb7cd vsnprintf.c: fix buffer overflow
* vsnprintf.c (MAXEXP, MAXFRACT): calculate depending on constants in
  float.h.
* vsnprintf.c (BSD_vfprintf): limit length for cvt() to get rid of
  buffer overflow.  [ruby-core:57023] [Bug #8864]
* vsnprintf.c (exponent): make expbuf size more precise.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-12 11:07:30 +00:00
nobu 326980f6fd test_sprintf_comb.rb: split tests
* test/ruby/test_sprintf_comb.rb (test_format_integer),
  (test_format_float): split huge tests by the formats.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-11 03:00:42 +00:00
kosaki 90425153fb * thread.c (rb_mutex_unlock): Mutex#unlock no longer raise
an exception even if uses on trap. [Bug #8891]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-10 23:21:17 +00:00
sorah 5b46f6c602 * vm_backtrace.c (vm_backtrace_to_ary): Ignore the second argument if
it is nil. [Bug #8884] [ruby-core:57094]

* test/ruby/test_backtrace.rb (test_caller_with_nil_length):
  Test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-10 05:37:39 +00:00
nobu 67129c8383 class.c: exclude refined methods
* class.c (method_entry_i): should exclude refined methods from
  instance method list.  [ruby-core:57080] [Bug #8881]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-10 03:39:31 +00:00
drbrain f06f903231 * lib/rubygems: Update to RubyGems 2.1.0. Fixes CVE-2013-4287.
See http://rubygems.rubyforge.org/rubygems-update/CVE-2013-4287_txt.html
  for CVE information.

  See http://rubygems.rubyforge.org/rubygems-update/History_txt.html#label-2.1.0+%2F+2013-09-09
  for release notes.

* test/rubygems:  Tests for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-10 00:52:14 +00:00
nobu a71ee2ce41 vm_method.c: clear cache after refine method
* vm_method.c (rb_add_refined_method_entry): clear cache in the
  refined class since refining a method entry is modifying the class.
  [ruby-core:57079] [Bug #8880]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-09 07:56:02 +00:00
suke 04976ab678 * ext/win32ole/win32ole.c (folevariant_initialize): check type of
element of array.

* test/win32ole/test_win32ole_variant.rb (test_s_new_ary): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-08 05:06:20 +00:00
nobu e5d327f444 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-07 21:48:40 +00:00
nobu ba6c734847 numeric.c: no extra checks
* numeric.c (NUM_STEP_SCAN_ARGS): remove extra class checks, which
  cause the incompatibilities.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-07 19:04:28 +00:00
charliesome 66915c5077 * vm_eval.c (vm_call0): fix prototype, the id parameter should be of
type ID, not VALUE

* vm_insnhelper.c (check_match): the rb_funcall family of functions
  does not care about refinements. We need to use
  rb_method_entry_with_refinements instead to call === with
  refinements. Thanks to Jon Conley for reporting this bug.
  [ruby-core:57051] [Bug #8872]

* test/ruby/test_refinement.rb: add test

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-07 06:44:31 +00:00
ktsj 113b1c76fc * variable.c (classname): the name of class that has
non class id should not be nil. This bug was introduced
  in r36577.

* test/thread/test_cv.rb: test for change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-07 04:58:38 +00:00
ktsj 0a4801e768 * lib/find.rb (Find.find): respect the encodings of arguments.
[ruby-dev:47530] [Feature #8657]

* test/test_find.rb: add tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-07 04:34:27 +00:00
glass e334bb2ce5 * common.mk: use RUNRUBY instead of MINIRUBY because MINIRUBY can't
require extension libraries. The patch is from nobu
  (Nobuyoshi Nakada).

* ext/thread/extconf.rb: for build ext/thread/thread.c.

* include/ruby/intern.h: ditto.

* thread.c: ditto.

* lib/thread.rb: removed and replaced by ext/thread/thread.c.

* ext/thread/thread.c: Queue, SizedQueue and ConditionVariable
  implementations in C. This patch is based on patches from panaggio
  (Ricardo Panaggio) and funny_falcon (Yura Sokolov) and  ko1
  (Koichi Sasada). [ruby-core:31513] [Feature #3620]

* test/thread/test_queue.rb (test_queue_thread_raise): add a test for
  ensuring that killed thread should be removed from waiting threads.
  It is based on a code by ko1 (Koichi Sasada). [ruby-core:45950]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-06 15:15:07 +00:00
akr 42a3e0dc55 * rational.c: Include gmp.h if GMP is used.
(GMP_GCD_DIGITS): New macro.
  (rb_gcd_gmp): New function.
  (f_gcd_normal): Renamed from f_gcd.
  (rb_gcd_normal): New function.
  (f_gcd): Invoke rb_gcd_gmp or f_gcd_normal.

* internal.h (rb_gcd_normal): Declared.
  (rb_gcd_gmp): Ditto.

* ext/-test-/rational: New directory.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-06 12:07:08 +00:00
tenderlove 8579a33966 * ext/psych/lib/psych/visitors/yaml_tree.rb: use double quotes when
strings start with special characters.
  [Fixes GH-157] https://github.com/tenderlove/psych/issues/157

* test/psych/test_string.rb: test for change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-05 17:39:53 +00:00
charliesome 7eafeaa313 * string.c (fstring_cmp): take string encoding into account when
comparing fstrings [ruby-core:57037] [Bug #8866]

* test/ruby/test_string.rb: add test

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-05 09:07:48 +00:00
drbrain ee155140e8 * lib/optparse.rb: The Integer acceptable now allows binary and
hexadecimal numbers per the documentation.  [ruby-trunk - Bug #8865]

  DecimalInteger, OctalInteger, DecimalNumeric now validate their input
  before converting to a number.  [ruby-trunk - Bug #8865]

* test/optparse/test_acceptable.rb:  Tests for the above, tests for all
  numeric acceptables for existing behavior.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-05 05:02:17 +00:00
charliesome 6fd9000076 * include/ruby/ruby.h: add RSTRING_FSTR flag
* internal.h: add rb_fstring() prototype
* parse.y (str_suffix_gen): deduplicate frozen string literals
* string.c (rb_fstring): deduplicate frozen string literals
* string.c (rb_str_free): delete fstrings from frozen_strings table when
  they are GC'd
* string.c (Init_String): initialize frozen_strings table
* test/ruby/test_string.rb: test frozen strings are deduplicated

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-05 04:49:16 +00:00
akr b1b395911c * bignum.c (GMP_DIV_DIGITS): New macro.
(bary_divmod_gmp): New function.
  (rb_big_divrem_gmp): Ditto.
  (bary_divmod_branch): Ditto.
  (bary_divmod): Use bary_divmod_branch.
  (bigdivrem): Ditto.

* internal.h (rb_big_divrem_gmp): Declared.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-04 23:22:27 +00:00
naruse 8db313151d wait until the shutdowning message reaches to the server
see #8831

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-04 18:46:16 +00:00
akr 8f8bf8243d * bignum.c (rb_big_divrem_normal): New function.
* internal.h (rb_big_divrem_normal): Declared.

* ext/-test-/bignum/div.c: New file.

* test/-ext-/bignum/test_div.rb: New file.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-04 16:10:06 +00:00
naruse 0e92ae9636 * enc/trans/utf8_mac-tbl.rb: fix r42789.
Fix conversion table and logic. [ruby-dev:47680]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-04 06:40:39 +00:00
nobu b31965cb43 string.c: fix for \K
* string.c (str_gsub): use BEG(0) for whole matched position not
  return value from rb_reg_search(), for \K matching.
  [ruby-dev:47694] [Bug #8856]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-04 02:13:42 +00:00
nobu 90cbcbe68b test_rubyoptions.rb: ignore trivial differences
* test/ruby/test_rubyoptions.rb (ExpectedStderr): ignore trivial
  differences, not worth to break the tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-04 02:12:39 +00:00
kou 1d8efe61d8 * test/rexml/parser/test_tree.rb
(TestTreeParser::TestInvalid#test_unmatched_close_tag):
  Compute expected value from test value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 14:02:10 +00:00
kou 73c57761a9 * lib/rexml/parsers/treeparser.rb (REXML::Parsers::TreeParser#parse):
Add source information to parse exception on no close tag error.
  [Bug #8844]  [ruby-dev:47672]
  Patch by Ippei Obayashi. Thanks!!!
* test/rexml/parser/test_tree.rb: Add a test for the above case.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 14:01:20 +00:00
kou 4c1fa1a6a4 * test/rexml/parser/test_tree.rb: Fix test name to describe test
content.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 13:58:24 +00:00
kou a0657cd5d7 * lib/rexml/parsers/treeparser.rb (REXML::Parsers::TreeParser#parse):
Remove needless nested parse exception information.
  [Bug #8844]  [ruby-dev:47672]
  Reported by Ippei Obayashi. Thanks!!!
* test/rexml/parser/test_tree.rb: Add a test for the above case.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 13:57:18 +00:00
akr 1c6ff586a6 Fix a typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 13:22:05 +00:00
a_matsuda 26766ee89c * eval.c (Init_eval): Make Module#include and Module#prepend public
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 12:42:01 +00:00
akr c0e1f9e016 Add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 11:20:17 +00:00
akr 2583689340 * bignum.c (GMP_STR2BIG_DIGITS): New macro.
(str2big_gmp): New function.
  (rb_cstr_to_inum): Use str2big_gmp for big bignums.
  (rb_str2big_gmp): New function.

* internal.h (rb_str2big_gmp): Declared.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 11:20:02 +00:00
usa 67460ee946 * test/ruby/test_rubyoptions.rb
(TestRubyOptions::SEGVTest::ExpectedStderr): the URL was changed at
  r42800.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 08:07:49 +00:00
akr 0b2413b471 * bignum.c (rb_str2big_poweroftwo): New function.
(rb_str2big_normal): Ditto.
  (rb_str2big_karatsuba): Ditto.

* internal.h (rb_str2big_poweroftwo): Declared.
  (rb_str2big_normal): Ditto.
  (rb_str2big_karatsuba): Ditto.

* ext/-test-/bignum/str2big.c: New file.

* test/-ext-/bignum/test_str2big.rb: New file.

* ext/-test-/bignum/depend: Add the dependency for str2big.c.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 03:50:15 +00:00
akr bc3d736f43 * process.c (rb_clock_gettime): Support times() based monotonic clock.
(rb_clock_getres): Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 03:10:41 +00:00
usa 6d18cc288a * test/openssl/test_pair.rb
(OpenSSL::TestPair#test_write_nonblock_no_exceptions): on some CIs
  such as Debian 6.0, Ubuntu 10.04, CentOS and vc10-x64 (maybe depend
  on OpenSSL version), writing to SSLSocket after SSL_ERROR_WANT_WRITE
  causes SSL_ERROR_SSL "bad write retry".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-03 01:08:09 +00:00
naruse 853c346dde * enc/trans/utf8_mac-tbl.rb: update conversion table to recent OS X.
Previous table is used on Mac OS X 10.1 or prior.
  This table is used on 10.2 or later. [ruby-dev:47680]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 23:36:01 +00:00
knu c68596aef1 Retain behavior of Numeric#step when nil is given as second argument.
* numeric.c (NUM_STEP_SCAN_ARGS): On sencond thought, keep
  Numeral#step backward compatible in that it raises TypeError
  when nil is given as second argument.

* test/ruby/test_float.rb (TestFloat#test_num2dbl): Revert.

* test/ruby/test_numeric.rb (TestNumeric#test_step): Fix test
  cases for the above change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 22:54:58 +00:00
knu 7cc26c722c Fix and add tests for Numeric#step.
* test/ruby/test_float.rb (TestFloat#test_num2dbl): Allow nil as
  step, as with the keyword argument.

* test/ruby/test_numeric.rb (TestNumeric#test_step): Add tests for
  nil as step or limit.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 22:39:24 +00:00
ko1 41234c5ca3 * vm_insnhelper.c (vm_search_super_method): use ci->argc instead of
ci->orig_argc. ci->argc can be changed by splat arguments.
  [ruby-list:49575]
  This fix should be applied to Ruby 2.0.0 seriese.
* test/ruby/test_super.rb: add a test for above.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 18:21:13 +00:00
knu fd4b5b8dc8 Enhance Numeric#step.
* numeric.c (num_step): Default the limit argument to infinity and
  allow it to be omitted.  Keyword arguments (by: and to:) are
  introduced for ease of use. [Feature #8838] [ruby-dev:47662]
  [ruby-dev:42194]

* numeric.c (num_step): Optimize for infinite loop.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:56:06 +00:00
nobu a94833eb50 test_string.rb: yet another test
* test/ruby/test_string.rb (TestString#test_frozen_string_adjacent):
  option is allowed after the last string.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:56:03 +00:00
nobu 306cf3ac03 parse.y: valid suffix word only
* parse.y (parser_str_options): use valid suffix word only, as well as
  numeric literal, for the backward comatibility.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:46:25 +00:00
nobu 57d06d7b3f test_string.rb: remove duplicated code
* test/ruby/test_string.rb (TestString#test_frozen_dstring): remove
  duplicated assertion.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:33:56 +00:00
charliesome a056098cb7 * NEWS: Add note about frozen string literals
* compile.c (case_when_optimizable_literal): optimize NODE_LIT strings
  in when clauses of case statements

* ext/ripper/eventids2.c: add tSTRING_SUFFIX

* parse.y: add 'f' suffix on string literals for frozen strings

* test/ripper/test_scanner_events.rb: add scanner tests

* test/ruby/test_string.rb: add frozen string tests

[Feature #8579] [ruby-core:55699]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 07:11:41 +00:00
charliesome 0732ed367c * test/rake/test_rake_rules.rb: add space after string literal to
prevent conflict with string options syntax "foo"opts

* test/rss/rss-assertions.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 05:08:20 +00:00
akr dd9c8b88af * test/ruby/test_bignum.rb (test_interrupt_during_to_s): Disable it
when GMP is used.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 03:29:16 +00:00
akr 28130c1c63 * test/net/http/test_http.rb (test_bind_to_local_port): Choose an open
port more reliably.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 12:19:15 +00:00
akr 7dd1604603 * bignum.c (big2str_base_poweroftwo): Renamed from
big2str_base_powerof2.
  (rb_big2str_poweroftwo): New function for test.
  (big2str_generic): Extracted from rb_big2str1.
  (rb_big2str_generic): New function for test.

* internal.h (rb_big2str_poweroftwo): Declared.
  (rb_big2str_generic): Ditto.

* ext/-test-/bignum/big2str.c: New file.

* test/-ext-/bignum/test_big2str.rb: New file.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 11:35:57 +00:00
akr e8d8e0696f Add assertions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 01:57:45 +00:00
akr 89744e75bd * bignum.c (rb_big_bit_length): New method.
(rb_fix_bit_length): Ditto.
  [ruby-core:56247] [Feature #8700]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 15:09:20 +00:00
akr 23da5a785e * process.c (rb_clock_getres): New method.
(timetick2dblnum_reciprocal): New function.

* configure.in: Check clock_getres.

[ruby-core:56780] [Feature #8809] accepted at
DevelopersMeeting20130831Japan
https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20130831Japan



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 13:21:48 +00:00
nobu 74b85189b8 vm_insnhelper.c: fix zsuper in prepended
* vm_insnhelper.c (vm_call_method): a method entry refers the based
  class/module, so should search superclass from the origin i-class
  where the entry belongs to, to get rid of infinite loop when zsuper
  in a prepended class/module.  [ruby-core:54105] [Bug #8238]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-29 08:03:23 +00:00
drbrain 9f2f1fcbc8 * ext/zlib/zlib.c (zstream_run): Fix handling of deflate streams that
need a dictionary but are being decompressed by Zlib::Inflate.inflate
  (which has no option to set a dictionary).  Now Zlib::NeedDict is
  raised instead of crashing.  [ruby-trunk - Bug #8829]
* test/zlib/test_zlib.rb (TestZlibInflate):  Test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-28 20:36:21 +00:00
tenderlove c94b0e8568 backport Tempfile.create so psych tests will run outside ruby trunk
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-28 17:55:50 +00:00
tenderlove 48602d1dbf * ext/psych/lib/psych/scalar_scanner.rb: invalid floats should be
treated as strings.
  [Fixes GH-156] https://github.com/tenderlove/psych/issues/156

* test/psych/test_string.rb: test for change

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-28 17:42:38 +00:00
nobu ba57274860 timeout.rb: raise given exception
* lib/timeout.rb (Timeout#timeout): skip rescue clause only when no
  exception class is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-27 08:18:50 +00:00
nobu 8ef0192103 io.c: copy in binary mode
* io.c (copy_stream_body): should write in binary mode.  based on a
  patch by godfat (Lin Jen-Shin) at [ruby-core:56556].
  [ruby-core:56518] [Bug #8767]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-27 08:03:00 +00:00
marcandre ca7f52a32a * enumerator.c: Allow Enumerator size argument to be any callable.
Patch by Avdi Grimm. [bug #8641] [ruby-core:56032] [fix GH-362]

* test/ruby/test_enumerator.rb: Test for above

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-27 02:50:08 +00:00
tenderlove 988ca60565 * io.c (io_read_nonblock): support non-blocking reads without raising
exceptions. As in: `io.read_nonblock(size, exception: false)`
  [ruby-core:38666] [Feature #5138]
* ext/openssl/ossl_ssl.c (ossl_ssl_read_internal): ditto
* ext/stringio/stringio.c (strio_sysread): ditto
* io.c (rb_io_write_nonblock): support non-blocking writes without
  raising an exception.
* ext/openssl/ossl_ssl.c (ossl_ssl_write_internal): ditto
* test/openssl/test_pair.rb (class OpenSSL): tests
* test/ruby/test_io.rb (class TestIO): ditto
* test/socket/test_nonblock.rb (class TestSocketNonblock): ditto
* test/stringio/test_stringio.rb (class TestStringIO): ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-26 22:41:44 +00:00
drbrain e487a7f53c * lib/rubygems: Import RubyGems 2.1.0 Release Candidate
* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-26 20:24:51 +00:00
nobu a6a85a0cb7 parse.y: warn CR
* parse.y (parser_nextc): warn carriage return in middle of line.
  [ruby-core:56240] [Feature #8699]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-26 07:25:08 +00:00
nobu 1a3bcf103c timeout.rb: skip rescue
* lib/timeout.rb (Timeout#timeout): should not be caught by rescue
  clause.  [Bug #8730]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-26 06:27:48 +00:00
akr 811eaddf4c * process.c (rb_clock_gettime): The emulated clock names changed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-24 01:38:34 +00:00
akr 282bbea0d9 add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 13:46:25 +00:00
akr a641003f66 * process.c (rb_clock_gettime): Strip "s" from unit names.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-22 13:04:06 +00:00
ko1 30b1947df2 * insns.def: fix regexp's once option behavior.
fix [ruby-trunk - Bug #6701]
* insns.def: remove `onceinlinecache' and introduce `once' instruction.
  `once' doesn't use `setinlinecache' insn any more.
* vm_core.h: `union iseq_inline_storage_entry' to store once data.
* compile.c: catch up above changes.
* iseq.c: ditto.
* vm.c, vm_insnhelper.c: ditto. fix `m_core_set_postexe()' which
  is depend on `onceinlinecache' insn.
* test/ruby/test_regexp.rb: add tests.
* iseq.c: ISEQ_MINOR_VERSION to 1 (should increment major?)



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-20 17:41:13 +00:00
ngoto 4d0fd22e7d * test/gdbm/test_gdbm.rb: skip TestGDBM#test_s_open_lock on Solaris.
On Solaris (and platforms which do not have flock and have lockf),
  with GDBM 1.10, gdbm_open(3) blocks when opening already locked
  gdbm file. [Bug #8790] [ruby-dev:47631]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-20 04:46:37 +00:00
ko1 158f3547e9 * test/ruby/test_fiber.rb: collect garbage fibers immediately.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-19 08:44:50 +00:00
ko1 e4f51f80d0 * test/profile_test_all.rb: add `failed?' information.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-19 08:43:13 +00:00
ktsj fe360c463c * variable.c, vm_method.c: remove dead code.
* test/ruby/test_fiber.rb, test/ruby/test_thread.rb:
  change accordingly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-18 11:27:42 +00:00
eregon f79aeb60e7 * test/ruby/test_time.rb: use the in_timezone() helper
and define it at the top with other helpers.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-17 14:25:34 +00:00
eregon 43b80e0988 * test/ruby/test_time.rb (#in_timezone): fix typo of r42596
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-17 14:20:12 +00:00
nobu 5685abe6c3 time.c: ignore invalid data
* time.c (time_mload): ignore invalid offset and zone.
  [ruby-core:56648] [Bug #8795]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-17 13:20:50 +00:00
ko1 ff377d9e81 * test/profile_test_all.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-16 09:12:36 +00:00
ko1 55251d0c83 * test/profile_test_all.rb: remove space characters from test names.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-16 09:10:06 +00:00
ko1 769715bda5 * test/profile_test_all.rb: refactoring memory profiling tool for
test-all.
  Add profiling targets /proc/meminfo and /proc/self/status.
* test/runner.rb: accept other than 'true'.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-16 08:46:21 +00:00
usa f2e870c9a7 * file.c (rb_file_size, rb_file_flock): improve parformance of Winodws.
* file.c (rb_file_truncate): removed unnecessary #ifdef.

* test/test_file.rb (TestFile#test_truncate_size): added an assertion
  for File#size.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-16 02:26:28 +00:00
usa ce3ca270a5 * test/ruby/test_file.rb (TestFile#test_truncate_size): test for
above changes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-15 12:38:02 +00:00
usa d6af2a2b21 * io.c, internal.h (rb_io_flush_raw): new function to select calling
fsync() (on Windows).

* io.c (rb_io_flush_raw): use above function.

* file.c (rb_file_truncate): use above function.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-15 11:53:41 +00:00
usa 9972c18c12 * test/fileutils/test_fileutils.rb (TestFileUtils#test_rmdir):
FileUtils.rmdir ignores Errno::ENOTEMPTY, so, in such cases, this
  assertion is nonsence.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-15 07:32:07 +00:00
usa a66d568524 * test/test_pstore.rb
(PStoreTest#test_pstore_files_are_accessed_as_binary_files): need more time.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-14 11:16:11 +00:00
naruse e3488fcee1 get detailed ps data to debug
add -L/-H/-M to get thread info

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-14 10:16:33 +00:00
usa e74a9c0668 * test/test_pstore.rb
(PStoreTest#test_pstore_files_are_accessed_as_binary_files): changed because
  vc10-x64 CI fails with timeout.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-14 05:59:22 +00:00
usa a28d1eff65 * proc.c (rb_mod_define_method): now they return the symbols of the
defined methods, not the methods/procs themselves.
  [ruby-dev:42151] [Feature #3753]

* NEWS: documents about above change and def-expr (see r42337).

* test/ruby/test_module.rb: tests about above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-14 05:35:21 +00:00
nobu d551b78d4a test_dir_m17n.rb: fixed encoding file system on OS X
* test/ruby/test_dir_m17n.rb (test_filename_as_bytes_extutf8),
  (test_filename_bytes_euc_jp, test_filename_euc_jp),
  (test_filename_ext_euc_jp_and_int_utf_8): Mac OS X also has fixed
  encoding file system.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-14 00:10:58 +00:00