[rspec-devel] [ rspec-Bugs-15546 ] Rspec Build Fails

noreply at rubyforge.org noreply at rubyforge.org
Mon Nov 12 11:40:48 EST 2007


Bugs item #15546, was opened at 2007-11-11 08:58
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=3149&aid=15546&group_id=797

Category: None
Group: None
Status: Open
Resolution: None
Priority: 2
Submitted By: Scott Taylor (smtlaissezfaire)
Assigned to: Nobody (None)
Summary: Rspec Build Fails

Initial Comment:

The rspec build is failing for me, @ revision 2848.  After the specs run (with rake spec) and all pass, I get the following error:

/usr/local/lib/ruby/1.8/rexml/text.rb:292:in `normalize': private method `gsub' called for 0:Fixnum (NoMethodError)

Attached, below, is the output:


escher: svn up; svn info; pwd; rake verify_rcov
At revision 2848.
Path: .
URL: svn://rubyforge.org/var/svn/rspec/trunk/rspec
Repository Root: svn://rubyforge.org/var/svn/rspec
Repository UUID: 410327ef-2207-0410-a325-f78bbcb22a5a
Revision: 2848
Node Kind: directory
Schedule: normal
Last Changed Author: aslak_hellesoy
Last Changed Rev: 2847
Last Changed Date: 2007-11-10 17:31:31 -0500 (Sat, 10 Nov 2007)

/Users/smt/play/rspec/rspec
(in /Users/smt/play/rspec/rspec)
Profiling enabled.
.........................................................................................................................................................................................................................P......P...........................................................................................................................P.................................................................................................................................................................................................................................................P....................................................................................................................................................................................................................................P........................................................................................................................................................................................

  Given given.
  And no match (PENDING).

  When when.
  And no match (PENDING).

  Then then.
  And no match (PENDING)...............................................................................................................................................................................


Top 10 slowest examples:
1.2913050 Translator should translate files
0.6018740 Test::Unit interaction runs tests and specs
0.6006520 Spec::Runner::CommandLine when tests are run, output test/unit sumary
0.5934550 Spec::Runner::CommandLine should not output twice
0.5880460 Test::Unit interaction monkey patches AutoRunner
0.5840390 Spec::Runner::CommandLine should not output twice
0.5830880 Spec::Runner::CommandLine when no tests are run, does not output test/unit summary
0.5290180 The bin/spec script should have no warnings
0.4790760 HtmlFormatter should produce HTML identical to the one we designed manually with --diff
0.4294800 Spec::Runner::CommandLine.run should run directory

Pending:
Object#should should raise error if it receives no argument and it is not used as a left side of an operator (Is it even possible to catch this?)
Object#should_not should raise error if it receives no argument and it is not used as a left side of an operator (Is it even possible to catch this?)
should exist, outside of a behavior should pass if target exists (need to either find a way to include stock predicate matchers in Spec::Matchers or add Bret's Exist matcher)
a Mock expectation should fail right away when method defined as never is received (Used to pass (false positive). Which one is wrong, the spec or the actual behavior?)
OptionParser should print help to stdout if no args (TODO)

Finished in 15.896248 seconds

1184 examples, 0 failures, 5 pending
/usr/local/lib/ruby/1.8/rexml/text.rb:292:in `normalize': private method `gsub' called for 0:Fixnum (NoMethodError)
        from /usr/local/lib/ruby/1.8/rexml/element.rb:1084:in `[]='
        from /usr/local/lib/ruby/1.8/rexml/element.rb:586:in `add_attribute'
        from (eval):490:in `table_'
        from (eval):490:in `each'
        from (eval):490:in `table_'
        from (eval):490:in `each'
        from (eval):490:in `table_'
        from /usr/local/lib/ruby/gems/1.8/gems/rcov-0.8.0.2/lib/rcov/report.rb:702:in `format_overview'
         ... 61 levels...
        from /usr/local/lib/ruby/gems/1.8/gems/rcov-0.8.0.2/lib/rcov.rb:628:in `dump_coverage_info'
        from /usr/local/lib/ruby/gems/1.8/gems/rcov-0.8.0.2/lib/rcov.rb:628:in `each'
        from /usr/local/lib/ruby/gems/1.8/gems/rcov-0.8.0.2/lib/rcov.rb:628:in `dump_coverage_info'
        from /usr/local/lib/ruby/gems/1.8/gems/rcov-0.8.0.2/bin/rcov:405
rake aborted!
No such file or directory - ../doc/output/coverage/index.html

(See full trace by running task with --trace)




I'm running on OS X.4.10.  Here is my gem list:



escher: gem list --local

*** LOCAL GEMS ***

actionmailer (1.3.5, 1.3.3)
    Service layer for easy email delivery and testing.

actionpack (1.13.5, 1.13.3)
    Web-flow and rendering framework putting the VC in MVC.

actionwebservice (1.2.5, 1.2.3)
    Web service support for Action Pack.

activerecord (1.15.5, 1.15.3)
    Implements the ActiveRecord pattern for ORM.

activesupport (1.4.4, 1.4.2)
    Support and utility classes used by the Rails framework.

autometric (0.0.1)
    Continuously analyzes your code with rcov, saikuro, and flog

capistrano (2.1.0, 2.0.0, 1.4.1)
    Capistrano is a utility and framework for executing commands in
    parallel on multiple remote machines, via SSH.

capistrano-ext (1.2.0)
    Capistrano Extensions is a set of useful task libraries and methods
    that     other developers may reference in their own recipe files.

cgi_multipart_eof_fix (2.5.0, 2.3)
    Fix an exploitable bug in CGI multipart parsing.

cmdparse (2.0.2)
    Advanced command line parser supporting commands

daemons (1.0.9, 1.0.8)
    A toolkit to create and control daemons in different ways

deprec (1.9.0)
    deployment recipes for capistrano

diff-lcs (1.1.2)
    Provides a list of changes that represent the difference between two
    sequenced collections.

fastthread (1.0.1, 1.0)
    Optimized replacement for thread.rb primitives

gem_plugin (0.2.3, 0.2.2)
    A plugin system based on rubygems that uses dependencies only

gruff (0.2.9, 0.2.8)
    Beautiful graphs for one or multiple datasets.

heckle (1.4.1)
    Unit Test Sadism

highline (1.4.0)
    HighLine is a high-level command-line IO library.

hoe (1.3.0)
    Hoe is a way to write Rakefiles much easier and cleaner.

hpricot (0.6)
    a swift, liberal HTML parser with a fantastic library

memcache-client (1.5.0)
    A Ruby memcached client

mini_magick (1.2.3)
    A simple image manipulation library based on ImageMagick.

mongrel (1.1, 1.0.3, 1.0.2, 1.0.1)
    A small fast HTTP library and server that runs Rails, Camping, Nitro
    and Iowa apps.

mongrel_cluster (1.0.4, 1.0.3, 1.0.2)
    Mongrel plugin that provides commands and Capistrano tasks for
    managing multiple Mongrel processes.

needle (1.3.0)
    Needle is a Dependency Injection/Inversion of Control container for
    Ruby. It supports both type-2 (setter) and type-3 (constructor)
    injection. It takes advantage of the dynamic nature of Ruby to
    provide a rich and flexible approach to injecting dependencies.

net-sftp (1.1.0)
    Net::SFTP is a pure-Ruby implementation of the SFTP client protocol.

net-ssh (1.1.2)
    Net::SSH is a pure-Ruby implementation of the SSH2 client protocol.

ParseTree (2.0.2)
    ParseTree is a C extension (using RubyInline) that extracts the
    parse tree for an entire class or a specific method and returns it
    as a s-expression (aka sexp) using ruby's arrays, strings, symbols,
    and integers.

rails (1.2.5, 1.2.3)
    Web-application framework with template engine, control-flow layer,
    and ORM.

railsmachine (1.0.0, 0.1.2)
    The Rails Machine task library

rake (0.7.3)
    Ruby based make-like utility.

rcov (0.8.0.2)
    Code coverage analysis tool for Ruby

RedCloth (3.0.4)
    RedCloth is a module for using Textile and Markdown in Ruby. Textile
    and Markdown are text formats.  A very simple text format. Another
    stab at making readable text that can be converted to HTML.

rspec (1.0.8)
    RSpec-1.0.8 (r2338) - BDD for Ruby http://rspec.rubyforge.org/

ruby-debug (0.9.3)
    Command line interface (CLI) for ruby-debug-base

ruby-debug-base (0.9.3)
    Fast Ruby debugger

ruby2ruby (1.1.7)
    ruby2ruby provides a means of generating pure ruby code easily from
    ParseTree's Sexps.

rubyforge (0.4.4)
    A script which automates a limited set of rubyforge operations.

RubyInline (3.6.5, 3.6.4)
    Ruby Inline is an analog to Perl's Inline::C. Out of the box, it
    allows you to embed C/++ external module code in your ruby script
    directly.

sources (0.0.1)
    This package provides download sources for remote gem installation

sqlite3-ruby (1.2.1)
    SQLite3/Ruby is a module to allow Ruby scripts to interface with a
    SQLite3 database.

syntax (1.0.0)
    Syntax is Ruby library for performing simple syntax highlighting.

webgen (0.4.6)
    webgen is a templated based static Web site generator.

ZenTest (3.6.1)
    ZenTest provides 4 different tools and 1 library: zentest,
    unit_diff, autotest, multiruby, and Test::Rails.
escher: 




----------------------------------------------------------------------

>Comment By: Scott Taylor (smtlaissezfaire)
Date: 2007-11-12 16:40

Message:
No longer having this problem at revision 2879.  You can
close this ticket (thanks if you've fixed it).

Scott


----------------------------------------------------------------------

Comment By: Scott Taylor (smtlaissezfaire)
Date: 2007-11-12 00:01

Message:
Tried to monkey patch it, but didn't get far (didn't get it
to work).  

Anyway - I've got a patch thats ready to go.  I know that
rspec's internals are changing pretty rapidly, so I'd like
to get this into rspec core sooner rather than later.  

Would it be ok to send you the patch before pre_commit?  Or
maybe you could tell me what version of rcov & rexml you are
using?

----------------------------------------------------------------------

Comment By: Aslak Hellesøy (aslak_hellesoy)
Date: 2007-11-11 12:27

Message:
This is RCov/REXML bugs. A little annoying, but not a big deal. I'm unable to reproduce it on my mac though.

Can you try to monkey patch REXML on the line where the error is thrown to make it work all way through?

----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=3149&aid=15546&group_id=797


More information about the rspec-devel mailing list