Commit graph

4679 commits

Author SHA1 Message Date
mame
f08581c7b6 * ext/coverage/coverage.c, ext/coverage/extconf.rb: eliminate
COVERAGE__ and introduce coverage.so instead.  How to measure
  coverage: (1) require "coverage.so", (2) require or load Ruby source
  file, and (3) Coverage.result will return the same hash as COVERAGE__.
  [ruby-dev:35324]

* thread.c (rb_enable_coverages): start coverage measurement by using
  rb_add_event_hook.

* thread.c (rb_get_coverages): returns current results of coverage
  measurement.

* include/ruby/intern.h: add prototype for above two functions.

* vm_core.h, vm.c: add field of coverages to rb_vm_t.

* insns.def (trace): remove special handling for COVERAGE__.

* iseq.c (prepare_iseq_build): switch COVERAGE__ to
  rb_get_coverages().

* parse.y (coverage): ditto.

* thread.c (clear_coverage): ditto.

* lib/coverage.rb: use coverage.so instead of COVERAGE__.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-03 12:55:12 +00:00
matz
3819f8d156 * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
'localhost.localdomain'.  [ruby-dev:35333]

* lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-03 03:54:25 +00:00
mame
5874de95e8 * Add coverage measurement constant COVERAGE__. This constant is not
for casual use.  Usage: (1) assign {} to COVERAGE__, (2) require or
  load Ruby source file, and (3) COVERAGE__["sourcefilepath"] will
  return an array whose elements represent number of executions per
  line of source code.

* vm_core.h: add field of coverage array to iseq.

* iseq.c (prepare_iseq_build): ditto.

* insns.def (trace): update coverage array.

* parse.y (coverage): create and initialize coverage array.

* compile.h (ADD_TRACE): add trace instruction to update covearge
  array.

* thread.c (clear_coverage): delete coverage array when forking.
  Otherwise, double count of coverage may occur.

* lib/coverage.rb: sample coverage measurement tool.

* error.c: distinguish explicitly between parse_in_eval and
  mild_compile_error.

* load.c: ditto.

* vm_eval.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 16:55:30 +00:00
mame
498324c5d3 * lib/test/unit/ui/console/testrunner.rb: prevent destructive modification to $0.
* test/rubygems/gemutilities.rb (build_rake_in): move from test_gem_ext_rake_builder.rb.

* test/rubygems/test_gem_ext_rake_builder.rb: ditto.

* test/rubygems/test_gem_installer.rb: override Gem.ruby and ENV["rake"].

* test/rubygems/test_gem_uninstaller.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 12:33:11 +00:00
shyouhei
1b62e5ec37 * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS,
namely inclusion of ruby.h, because _GNU_SOURCE is now defined
 	  there (if any) and socket.so requires it on Linux systems.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 12:13:13 +00:00
nobu
c274c6fabf * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make),
(Gem::Ext::Builder.run): EXIT_SUCCESS may be 0 or may not.

* test/rubygems/test_gem_ext_rake_builder.rb (build_rake_in): override
  Gem.ruby and ENV["rake"].

* runruby.rb: bin/rake does not exist in archdir where architecture
  depend script (i.e. rbconfig.rb) exists.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 06:01:15 +00:00
nobu
fd77e489f2 * lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
double quotes are allowed.  [ruby-list:45140]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-30 16:07:19 +00:00
nobu
fce76df67c * lib/test/unit/collector/dir.rb (recursive_collect): r15662 reverted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-30 13:30:39 +00:00
kou
39a241cec6 follow up the previous commit.
* lib/rss/parser.rb: merge documents from ruby_1_8.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 09:05:21 +00:00
kou
8ee383397d * lib/rss/parser.rb, lib/rss/utils.rb: merge documents from ruby_1_8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 09:02:32 +00:00
kou
1695dd0f02 * lib/rss/parser.rb (RSS::ListenerMixin#known_class): define to
work with ruby 1.8.x too.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 08:44:53 +00:00
kou
94031b9628 * lib/rss/maker/base.rb (RSS::Maker::RSSBase#to_feed): raise
exception not return nil if RSS::Maker.make can't get required information.
* test/rss/rss-assertions.rb: follow the above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 08:42:46 +00:00
kou
7556f66e9c * lib/rss/maker/base.rb (RSS::Maker::RSSBase#make): require block.
* test/rss/test_maker_{0.9,1.0,2.0}.rb: follow the above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 08:38:11 +00:00
kou
f6c7804c16 * lib/rss/maker/base.rb, lib/rss/maker/itunes.rb: don't use
instance_eval to initialize variables. (speed up)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 08:34:40 +00:00
kou
b9f895e9c8 * lib/rss/rss.rb, test/rss/test_version.rb (RSS::VERSION): 0.2.4 -> 0.2.5.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 08:32:10 +00:00
nobu
285fb00195 * lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
should be clean.  based on a patch from arton <artonx AT
  yahoo.co.jp> at [ruby-dev:35269]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-29 00:43:12 +00:00
nobu
4bcf877beb * test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
$0.  [ruby-dev:35261]

* lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-27 12:19:11 +00:00
kazu
f0bb63782a * lib/erb.rb: adjust line number for magic comment.
* test/erb/test_erb.rb: add tests for def_method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-27 08:48:24 +00:00
nobu
73567dc103 * lib/un.rb (mkmf): new command to create makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-27 03:29:00 +00:00
nobu
3d5cfe9a32 * lib/un.rb (wait_writable): added help message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-27 02:06:08 +00:00
drbrain
8b424513fd Upgrade to RubyGems 1.2.0 r1824. Incorporates [ruby-core:17353].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-26 02:06:00 +00:00
naruse
f94c46a745 * lib/erb.rb (ERB::Compiler:Buffer#new): push magic comment first.
* lib/erb.rb (ERB::Compiler#compile): fix for broken input.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-25 04:44:32 +00:00
naruse
30e263fc07 * lib/erb.rb (ERB::Compiler#compile): magic comment needs LF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-25 03:10:57 +00:00
naruse
8eb4988a03 * lib/erb.rb (ERB::Compiler#compile): output magic comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-25 00:33:11 +00:00
matz
473acf0a31 * lib/mathn.rb (Rational::power2): removed incomplete method.
see [ruby-dev:35195].   [ruby-core:17293]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-23 03:36:25 +00:00
nobu
47f5c15e8d * lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
magic comment.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 06:57:28 +00:00
nobu
a54cbe65a9 * process.c (rb_detach_process): store detached process ID in the
thread local storage.  moved from lib/open3.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-20 03:40:02 +00:00
drbrain
08837d081d Update to RubyGems 1.1.1 r1784 (pre 1.2)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 18:15:26 +00:00
matz
e76afc29d8 * lib/mathn.rb (Rational::power2): typo fixed. [ruby-core:17293]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 17:17:29 +00:00
kazu
2bcb0a1a35 * lib/net/pop.rb (Net::POP3#set_all_uids): speed
up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 11:42:05 +00:00
nobu
02337b089e * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
public methods only.  [ruby-core:17283]

* object.c (convert_type): ditto.

* lib/singleton.rb (Singleton#_dump): conversion method should be
  public.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-18 03:05:33 +00:00
drbrain
215fbc639f Fix RubyGems for 1.9, r1780
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 23:59:31 +00:00
drbrain
9d4f37f51f Update RubyGems to 1.1.1 r1778 (almost 1.2)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 22:04:18 +00:00
jeg2
b2c5258b85 * lib/net/telnet.rb: Fixing Telnet#wairfor() which was broken by changes to
the Kernel::Integer() method.  [ruby-core:17272]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 14:04:48 +00:00
nobu
82543dbc99 * lib/thwait.rb (ThreadsWait): Exception2MessageMapper no longer has
extend_to method.  [ruby-core:17267]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-16 09:52:50 +00:00
nobu
3929de6982 * lib/e2mmap.rb (E2MM.def_e2message): typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-16 05:46:28 +00:00
akr
05093ae437 * lib/time.rb (Time.xmlschema): don't accept decimal dot without
fractional digits.  fractional digits handling simplified.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-13 09:10:44 +00:00
knu
af0c875e26 * lib/find.rb (Find#find): Return an enumerator if no block is
given.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-10 18:41:25 +00:00
nobu
ce29c17877 * lib/mkmf.rb (configuration): set flags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 12:14:39 +00:00
knu
250dd07021 * lib/set.rb (Set#delete_if): Call to_a.
(SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
  yield elements in sorted order; [ruby-core:17144] by Arthur
  Schreiber.
  (SortedSet#each, SortedSet#each, TC_Set#test_each)
  (TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
  Arthur Schreiber.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 08:58:30 +00:00
akr
f1296598a2 * lib/time.rb (Time.xmlschema): don't use float. fix
http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-05 15:08:12 +00:00
mame
7493685b3b * lib/rexml/document.rb (REXML::Document:write): leaky modification
trans -> transitive.  [ruby-dev:32040], r13686

* lib/rexml/text.rb (Text.check): fix check for illigal characher.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-05 11:22:32 +00:00
matz
e6c1752137 * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
<evanfarrar at gmail.com> in [ruby-doc:1382] applied.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-04 09:37:38 +00:00
knu
3bd8032918 * lib/set.rb (Set#classify): Back out the `group_by' alias.
Better think twice.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03 06:13:22 +00:00
knu
54fbbb4884 Properly back out.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03 06:04:54 +00:00
knu
489bf84b9f * lib/set.rb (Set#collect, Set#select): Back out. I thought it
was consistent but turned out to be wrong.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03 06:01:29 +00:00
knu
ea40df71fc * lib/set.rb (Set#collect, Set#select): Override Enumerable
methods and make them return a set. [ruby-core:17055]
  (Set#delete_if, Set#collect!, Set#reject!, Set#classify)
  (Set#divide, Set#delete_if): Return an enumerator if no block is
  given.
  (Set#classify): Define an alias `group_by' to override that of
  Enumerable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03 04:42:32 +00:00
nobu
eaa3ffbae8 * lib/un.rb (wait_writable): wait until target files can be
written actually.

	* win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
	  mt.exe.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-02 09:51:30 +00:00
knu
c147806901 * lib/delegate.rb (Delegator::MethodDelegation#respond_to):
respond_to? should now take optional second argument; submitted
  by Jeremy Kemper <jeremy at bitsweat.net> in [ruby-core:17045].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-02 07:29:03 +00:00
knu
5b7464b047 * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Oops. This
change did not apply to trunk.  Backed out.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-02 07:15:12 +00:00