riemann / riemann-dash

An HTTP dashboard for Riemann.
MIT License
248 stars 102 forks source link

Installation fails on some rubygems #6

Closed aphyr closed 11 years ago

aphyr commented 11 years ago

Installing on

ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux] rubygems 1.3.7

Fails from rubygems on Wed Jan 30 11:48:35 PST 2013

Succeeds when built on 1.8.7p352, gems 1.3.7 Succeeds when built on 1.8.7p371, gems 1.8.11 Fails when built on 1.9.3rev32789, gems 1.8.10

aphyr commented 11 years ago
[vagrant@vagrant-CentOS6 riemann-dash]$ sudo gem install riemann-dash --backtrace
ERROR:  While executing gem ... (NoMethodError)
    undefined method `call' for nil:NilClass
        /usr/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:134:in `satisfied_by?'
        /usr/lib/ruby/1.8/fileutils.rb:243:in `all?'
        /usr/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:134:in `each'
        /usr/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:134:in `all?'
        /usr/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:134:in `satisfied_by?'
        /usr/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:325:in `search'
        /usr/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:323:in `select'
        /usr/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:323:in `search'
        /usr/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:280:in `find_name'
        /usr/lib/ruby/site_ruby/1.8/rubygems/installer.rb:243:in `installation_satisfies_dependency?'
        /usr/lib/ruby/site_ruby/1.8/rubygems/installer.rb:232:in `ensure_dependency'
        /usr/lib/ruby/site_ruby/1.8/rubygems/installer.rb:181:in `install'
        /usr/lib/ruby/site_ruby/1.8/rubygems/installer.rb:180:in `each'
        /usr/lib/ruby/site_ruby/1.8/rubygems/installer.rb:180:in `install'
        /usr/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:277:in `install'
        /usr/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:247:in `each'
        /usr/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:247:in `install'
        /usr/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:119:in `execute'
        /usr/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:116:in `each'
        /usr/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:116:in `execute'
        /usr/lib/ruby/site_ruby/1.8/rubygems/command.rb:270:in `invoke'
        /usr/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:134:in `process_args'
        /usr/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:104:in `run'
        /usr/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:58:in `run'
        /usr/bin/gem:21
JannKleen commented 11 years ago

also fails with Debian 'squeeze':

ruby version:

# ruby --version
ruby 1.8.7 (2010-08-16 patchlevel 302) [x86_64-linux]

gem version:

# gem --version
1.3.7

debian:

# cat /etc/debian_version 
6.0.6
# gem install riemann-dash --backtrace
ERROR:  While executing gem ... (NoMethodError)
    undefined method `call' for nil:NilClass
    /usr/lib/ruby/1.8/rubygems/requirement.rb:134:in `satisfied_by?'
    /usr/lib/ruby/1.8/fileutils.rb:243:in `all?'
    /usr/lib/ruby/1.8/rubygems/requirement.rb:134:in `each'
    /usr/lib/ruby/1.8/rubygems/requirement.rb:134:in `all?'
    /usr/lib/ruby/1.8/rubygems/requirement.rb:134:in `satisfied_by?'
    /usr/lib/ruby/1.8/rubygems/source_index.rb:325:in `search'
    /usr/lib/ruby/1.8/rubygems/source_index.rb:323:in `select'
    /usr/lib/ruby/1.8/rubygems/source_index.rb:323:in `search'
    /usr/lib/ruby/1.8/rubygems/source_index.rb:280:in `find_name'
    /usr/lib/ruby/1.8/rubygems/installer.rb:243:in `installation_satisfies_dependency?'
    /usr/lib/ruby/1.8/rubygems/installer.rb:232:in `ensure_dependency'
    /usr/lib/ruby/1.8/rubygems/installer.rb:181:in `install'
    /usr/lib/ruby/1.8/rubygems/installer.rb:180:in `each'
    /usr/lib/ruby/1.8/rubygems/installer.rb:180:in `install'
    /usr/lib/ruby/1.8/rubygems/dependency_installer.rb:277:in `install'
    /usr/lib/ruby/1.8/rubygems/dependency_installer.rb:247:in `each'
    /usr/lib/ruby/1.8/rubygems/dependency_installer.rb:247:in `install'
    /usr/lib/ruby/1.8/rubygems/commands/install_command.rb:119:in `execute'
    /usr/lib/ruby/1.8/rubygems/commands/install_command.rb:116:in `each'
    /usr/lib/ruby/1.8/rubygems/commands/install_command.rb:116:in `execute'
    /usr/lib/ruby/1.8/rubygems/command.rb:270:in `invoke'
    /usr/lib/ruby/1.8/rubygems/command_manager.rb:134:in `process_args'
    /usr/lib/ruby/1.8/rubygems/command_manager.rb:104:in `run'
    /usr/lib/ruby/1.8/rubygems/gem_runner.rb:58:in `run'
    /usr/bin/gem:21
mjakl commented 11 years ago

I could install riemann-dash on squeeze using the rubygems from sqeeze-backports (http://packages.debian.org/squeeze-backports/ruby/rubygems). It's version 1.8.15.

bdmorin commented 11 years ago

Fails here too:

uname -a Linux 409246-opennms.gerberlife.com 3.0.0-30-server #47-Ubuntu SMP Wed Jan 2 23:34:47 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

ruby -v ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]

gem install riemann-dash --backtrace ERROR: While executing gem ... (NoMethodError) undefined method call' for nil:NilClass /usr/lib/ruby/1.9.1/rubygems/requirement.rb:134:inblock in satisfied_by?' /usr/lib/ruby/1.9.1/rubygems/requirement.rb:134:in each' /usr/lib/ruby/1.9.1/rubygems/requirement.rb:134:inall?' /usr/lib/ruby/1.9.1/rubygems/requirement.rb:134:in satisfied_by?' /usr/lib/ruby/1.9.1/rubygems/source_index.rb:325:inblock in search' /usr/lib/ruby/1.9.1/rubygems/source_index.rb:323:in select' /usr/lib/ruby/1.9.1/rubygems/source_index.rb:323:insearch' /usr/lib/ruby/1.9.1/rubygems/source_index.rb:280:in find_name' /usr/lib/ruby/1.9.1/rubygems/installer.rb:243:ininstallation_satisfies_dependency?' /usr/lib/ruby/1.9.1/rubygems/installer.rb:232:in ensure_dependency' /usr/lib/ruby/1.9.1/rubygems/installer.rb:181:inblock in install' /usr/lib/ruby/1.9.1/rubygems/installer.rb:180:in each' /usr/lib/ruby/1.9.1/rubygems/installer.rb:180:ininstall' /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:277:in block in install' /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:247:ineach' /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:247:in install' /usr/lib/ruby/1.9.1/rubygems/commands/install_command.rb:119:inblock in execute' /usr/lib/ruby/1.9.1/rubygems/commands/install_command.rb:116:in each' /usr/lib/ruby/1.9.1/rubygems/commands/install_command.rb:116:inexecute' /usr/lib/ruby/1.9.1/rubygems/command.rb:270:in invoke' /usr/lib/ruby/1.9.1/rubygems/command_manager.rb:134:inprocess_args' /usr/lib/ruby/1.9.1/rubygems/command_manager.rb:104:in run' /usr/lib/ruby/1.9.1/rubygems/gem_runner.rb:58:inrun' /usr/bin/gem:21:in `

'

0.1.1 worked though.

gem install riemann-dash -v 0.1.1 Successfully installed riemann-dash-0.1.1 1 gem installed Installing ri documentation for riemann-dash-0.1.1... Installing RDoc documentation for riemann-dash-0.1.1...

ghost commented 11 years ago

[root@riemann-labs-berkshelf ~]# uname -a Linux riemann-labs-berkshelf 2.6.18-308.el5 #1 SMP Tue Feb 21 20:06:06 EST 2012 x86_64 x86_64 x86_64 GNU/Linux [root@riemann-labs-berkshelf ~]# ruby --version ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux] [root@riemann-labs-berkshelf ~]# gem --version 1.3.7 [root@riemann-labs-berkshelf ~]# gem install riemann-dash --backtrace ERROR: While executing gem ... (NoMethodError) undefined method call' for nil:NilClass /usr/local/lib/ruby/1.9.1/rubygems/requirement.rb:134:inblock in satisfied_by?' /usr/local/lib/ruby/1.9.1/rubygems/requirement.rb:134:in each' /usr/local/lib/ruby/1.9.1/rubygems/requirement.rb:134:inall?' /usr/local/lib/ruby/1.9.1/rubygems/requirement.rb:134:in satisfied_by?' /usr/local/lib/ruby/1.9.1/rubygems/source_index.rb:325:inblock in search' /usr/local/lib/ruby/1.9.1/rubygems/source_index.rb:323:in select' /usr/local/lib/ruby/1.9.1/rubygems/source_index.rb:323:insearch' /usr/local/lib/ruby/1.9.1/rubygems/source_index.rb:280:in find_name' /usr/local/lib/ruby/1.9.1/rubygems/installer.rb:243:ininstallation_satisfies_dependency?' /usr/local/lib/ruby/1.9.1/rubygems/installer.rb:232:in ensure_dependency' /usr/local/lib/ruby/1.9.1/rubygems/installer.rb:181:inblock in install' /usr/local/lib/ruby/1.9.1/rubygems/installer.rb:180:in each' /usr/local/lib/ruby/1.9.1/rubygems/installer.rb:180:ininstall' /usr/local/lib/ruby/1.9.1/rubygems/dependency_installer.rb:277:in block in install' /usr/local/lib/ruby/1.9.1/rubygems/dependency_installer.rb:247:ineach' /usr/local/lib/ruby/1.9.1/rubygems/dependency_installer.rb:247:in install' /usr/local/lib/ruby/1.9.1/rubygems/commands/install_command.rb:119:inblock in execute' /usr/local/lib/ruby/1.9.1/rubygems/commands/install_command.rb:116:in each' /usr/local/lib/ruby/1.9.1/rubygems/commands/install_command.rb:116:inexecute' /usr/local/lib/ruby/1.9.1/rubygems/command.rb:270:in invoke' /usr/local/lib/ruby/1.9.1/rubygems/command_manager.rb:134:inprocess_args' /usr/local/lib/ruby/1.9.1/rubygems/command_manager.rb:104:in run' /usr/local/lib/ruby/1.9.1/rubygems/gem_runner.rb:58:inrun' /usr/local/bin/gem:21:in `

'

Happens with version 0.1.1 as well. I'm happy to provide a stack trace for that as well if it's helpful.

aphyr commented 11 years ago

Ahh, that trace is very useful, thank you. I've got access to a centos box running 1.3.7 so hopefully I'll be able to figure this out now.

aphyr commented 11 years ago

OK guys, think I've got this fixed in 0.2.1; and I can confirm it installs on centos with 1.3.7. If you have further problems let me know! :)

rchekaluk commented 11 years ago

How was this fixed? I'm encountering a similar issue when trying to install berkshelf gem, and don't see any obvious commits that would give me any hints.

aphyr commented 11 years ago

IIRC there was a bug in rubygems which caused issues depending on the box that did the packaging. Might have introduced a regression by packaging with the wrong version of rubygems.

aphyr commented 11 years ago

(btw, rubygems 1.3.7 is over three years old; might be time to upgrade)