rdoc4.1.1 does not work anymore with ruby-trunk #284

Closed
Hanmac opened this Issue Jan 11, 2014 · 7 comments

Comments

4 participants

Hanmac commented Jan 11, 2014

trying to run rdoc4.1.1 gem on ruby-trunk produce something like that:

undefined method `full_name' for "Numeric":String
/usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/context.rb:167:in `<=>'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:184:in `=='
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:184:in `block in find_method_or_attribute'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:183:in `each'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:183:in `find_method_or_attribute'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:166:in `find_see'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:149:in `see'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:131:in `documented?'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/code_object.rb:172:in `display?'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:308:in `block (3 levels) in marshal_dump'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:307:in `map'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:307:in `block (2 levels) in marshal_dump'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:306:in `each'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:306:in `map'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:306:in `block in marshal_dump'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:305:in `each'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:305:in `map'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/class_module.rb:305:in `marshal_dump'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/store.rb:865:in `dump'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/store.rb:865:in `save_class'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/store.rb:749:in `block in save'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/store.rb:748:in `each'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/store.rb:748:in `save'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/generator/ri.rb:26:in `generate'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:529:in `block in generate'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:524:in `chdir'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:524:in `generate'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:507:in `document'
    ./bin/rdoc:20:in `<main>'

it also prevent ruby making correctly when rdoc building is enabled (the error happends when i try to make ruby itself)

Member

drbrain commented Jan 12, 2014

Does make clean then make install fix it?

Hanmac commented Jan 12, 2014

problem not solved, but i am now getting a different one:


RDoc::Parser::Ruby failure around line 66 of
ext/bigdecimal/lib/bigdecimal/ludcmp.rb


undefined method `singleton' for #<RDoc::Parser::Ruby:0x000000098424f8>
/usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:114:in `<=>'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:118:in `=='
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/method_attr.rb:118:in `=='
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby_tools.rb:113:in `delete'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby_tools.rb:113:in `remove_token_listener'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby_tools.rb:147:in `token_listener'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1303:in `parse_method'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1680:in `parse_statements'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1364:in `block in parse_method_params_and_body'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby_tools.rb:145:in `token_listener'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1341:in `parse_method_params_and_body'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1327:in `parse_method'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1680:in `parse_statements'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1563:in `parse_module'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1677:in `parse_statements'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:1875:in `parse_top_level_statements'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:2003:in `block in scan'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:2001:in `catch'
    /usr/local/lib/ruby/gems/2.2.0/gems/rdoc-4.1.1/lib/rdoc/parser/ruby.rb:2001:in `scan'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:367:in `parse_file'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:420:in `block in parse_files'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:418:in `map'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:418:in `parse_files'
    /home/hanmac/Downloads/ruby/lib/rdoc/rdoc.rb:488:in `document'
    ./bin/rdoc:20:in `<main>'
Owner

tenderlove commented Jan 16, 2014

I am also getting this singleton error when I do ruby -d -S gem install rdoc with trunk Ruby.

Owner

tenderlove commented Jan 16, 2014

For me, it fails trying to install rdoc or coderay. I can run with -d and post the output, but I am getting the same stack trace as @Hanmac.

Owner

tenderlove commented Jan 16, 2014

I think this bug is due to the fact that == will not swallow exceptions from <=> on trunk anymore. Unfortunately, when I try to do rake in the rdoc directory, it breaks because installing the dependencies breaks on gem install.

Owner

tenderlove commented Jan 16, 2014

I manually installed the required gems for testing. If you just run the rdoc tests against ruby trunk, you can see the problem. #287 seems to fix the issue.

Member

eregon commented Jan 16, 2014

Also see ruby/ruby@d781caa for another possible fix.

drbrain closed this in 23c276d Jan 24, 2014

@drbrain drbrain added a commit that referenced this issue Jan 24, 2014

@drbrain drbrain Merge pull request #287 from tenderlove/spaceship
return nil unless `other` is comparable.  Fixes #284
0339d81

@drbrain drbrain added a commit that referenced this issue Jan 24, 2014

@drbrain drbrain Add #287, #284 to History 379be23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment