These are chat archives for cboursnell/transfuse

6th
Oct 2015
Chris Boursnell
@cboursnell
Oct 06 2015 11:08
Hi
Will
@willblev
Oct 06 2015 11:58
Hi, sorry I just went down for lunch
Chris Boursnell
@cboursnell
Oct 06 2015 12:10
I'm not sure what the problem is that is causing that error, but I don't think it's to do with transfuse specifically. It seems to be about ruby not seeing some gems. The line that is causing an error is in the yell gem which is used by transrate, which is used by transfuse...
Will
@willblev
Oct 06 2015 12:25
Hm... Transrate seems to be as happy as a clam with our environment :-/
How does Transfuse locate the yell gem? Do either Transfuse|rate have to be installed in a specific directory relative to one another?
Will
@willblev
Oct 06 2015 12:32
Thanks for your help btw! If you don't have the time to track down the problem, do you recommend trying Transfuse with a specific OS/version of ruby?
Chris Boursnell
@cboursnell
Oct 06 2015 12:32
Hm. I don't know then. I can't reproduce that error with my environment.
If you did gem install transfuse that should be fine.
To see where your gems are do echo $GEM_PATH. This is how ruby knows where to look
How is your ruby installed and on what linux etc... I'll see if I can reproduce in a VM
I'm developing transfuse in debian jessie with ruby 2.1.2 using an rvm install of ruby
Will
@willblev
Oct 06 2015 12:43
You could just add to the readme that people should run transfuse on a VM with jessie and ruby 2.1.2...
But I guess if you're set on tracking down the problem, we have to wait for the admin of the cluster to get back ;)
Chris Boursnell
@cboursnell
Oct 06 2015 12:43
The error superclass mismatch for class Pathname means that you have two definitions of the class Pathname installed somewhere.
Can you do gem list | grep -i path and see what you get?
Will
@willblev
Oct 06 2015 12:44
will do, just waiting for our admin to finish lunch
Chris Boursnell
@cboursnell
Oct 06 2015 13:26
Ok I've managed to reproduce the error... I should be able to fix it now
Thanks for the heads up :)
Will
@willblev
Oct 06 2015 13:27
Sorry I couldn't be of more help! Can you spare any details?
Chris Boursnell
@cboursnell
Oct 06 2015 13:37
No idea at the moment :P I'll sort it in a bit though and push out an update to rubygems
Will
@willblev
Oct 06 2015 13:46
Well if it's any help, I have the log from our install of ruby etc:

We are using ScientificLinux 6.7:

cat /etc/redhat-release
Scientific Linux release 6.7 (Carbon)

I have compile the last stable version of Ruby in /usr/local:

[root@cappra ~]# ll /usr/local/ruby-2.2.3/
total 16
drwxr-xr-x 2 root root 4096 Oct 6 11:42 bin
drwxr-xr-x 3 root root 4096 Oct 6 11:12 include
drwxr-xr-x 4 root root 4096 Oct 6 11:12 lib
drwxr-xr-x 5 root root 4096 Oct 6 11:12 share

First I have used '/usr/local/ruby-2.2.3/bin/gem install transfuse' to install transfuse software, but when I try to run the software I've receive the next error message:

[root@cappra ~]# /usr/local/ruby-2.2.3/bin/transfuse
/usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require': superclass mismatch for class Pathname (TypeError) from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/pathname.rb:12:in <top (required)>' from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/yell-2.0.5/lib/yell/logger.rb:3:in<top (required)>'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/yell-2.0.5/lib/yell.rb:136:in <top (required)>' from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/transrate-1.0.1/lib/transrate.rb:3:in<top (required)>'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/transfuse-0.4.4/lib/transfuse/transfuse.rb:11:in <module:Transfuse>' from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/transfuse-0.4.4/lib/transfuse/transfuse.rb:7:in<top (required)>'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/transfuse-0.4.4/lib/transfuse.rb:4:in <top (required)>' from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire'
from /usr/local/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0/gems/transfuse-0.4.4/bin/transfuse:4:in<top (required)>'
from /usr/local/ruby-2.2.3/bin/transfuse:23:in load' from /usr/local/ruby-2.2.3/bin/transfuse:23:in<main>'
[root@cappra ~]#

As an alternative, I also tried compiling the software from source but changing the install directory:

[root@cappra bio]# git clone https://github.com/cboursnell/transfuse.git
Initialized empty Git repository in /paquets/bio/transfuse/.git/
remote: Counting objects: 223, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 223 (delta 0), reused 0 (delta 0), pack-reused 220
Receiving objects: 100% (223/223), 200.09 KiB, done.
Resolving deltas: 100% (105/105), done.
[root@cappra bio]# cd transfuse/
[root@cappra transfuse]# /usr/local/ruby-2.2.3/bin/gem build spec
Successfully built RubyGem
Name: transfuse
Version: 0.4.4
File: transfuse-0.4.4.gem
[root@cappra transfuse]# /usr/local/ruby-2.2.3/bin/gem install
gem --install-dir=/usr/local/transfuse-from-source
Fetching: trollop-2.1.2.gem (100%)
Successfully installed trollop-2.1.2
Fetching: bio-1.5.0.gem (100%)
Successfully installed bio-1.5.0
Fetching: facade-1.0.7.gem (100%)
Successfully installed facade-1.0.7
Fetching: pathname2-1.7.4.gem (100%)
Successfully installed pathname2-1.7.4
Fetching: fixwhich-1.0.2.gem (100%)
Successfully installed fixwhich-1.0.2
Fetching: bindeps-1.2.0.gem (100%)
Successfully installed bindeps-1.2.0
Fetching: colorize-0.7.7.gem (100%)
Successfully installed colorize-0.7.7
Fetching: fix-trinity-output-1.0.0.gem (100%)
Successfully installed fix-trinity-output-1.0.0
Fetching: threach-0.2.0.gem (100%)
Successfully

..... Successfully installed threach-0.2.0
Fetching: crb-blast-0.6.5.gem (100%)
Successfully installed crb-blast-0.6.5
Fetching: yell-2.0.5.gem (100%)
Successfully installed yell-2.0.5
Fetching: transrate-1.0.1.gem (100%)
Building native extensions. This could take a while...
Successfully installed transrate-1.0.1
Successfully installed transfuse-0.4.4
Parsing documentation for trollop-2.1.2
Installing ri documentation for trollop-2.1.2
Parsing documentation for bio-1.5.0
Installing ri documentation for bio-1.5.0
Parsing documentation for facade-1.0.7
Installing ri documentation for facade-1.0.7
Parsing documentation for pathname2-1.7.4
Installing ri documentation for pathname2-1.7.4
Parsing documentation for fixwhich-1.0.2
Installing ri documentation for fixwhich-1.0.2
Parsing documentation for bindeps-1.2.0
Installing ri documentation for bindeps-1.2.0
Parsing documentation for colorize-0.7.7
Installing ri documentation for colorize-0.7.7
Parsing documentation for fix-trinity-output-1.0.0
Installing ri documentation for fix-trinity-output-1.0.0
Parsing documentation for threach-0.2.0
Installing ri documentation for threach-0.2.0
Parsing documentation for crb-blast-0.6.5
Installing ri documentation for crb-blast-0.6.5
Parsing documentation for yell-2.0.5
Installing ri documentation for yell-2.0.5
Parsing documentation for transrate-1.0.1
Installing ri documentation for transrate-1.0.1
Parsing documentation for transfuse-0.4.4
Installing ri documentation for transfuse-0.4.4
Done installing documentation for trollop, bio, facade, pathname2, fixwhich, bindeps, colorize, fix-trinity-output, threach, crb-blast, yell, transrate, transfuse after 24 seconds
13 gems installed
[root@cappra transfuse]# export GEM_PATH=$GEN_PATH:/usr/local/transfuse-from-source/gems
[root@cappra transfuse]# /usr/local/ruby-2.2.3/bin/gem env
RubyGems Environment:
  • RUBYGEMS VERSION: 2.4.5.1
  • RUBY VERSION: 2.2.3 (2015-08-18 patchlevel 173) [x86_64-linux]
  • INSTALLATION DIRECTORY: /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0
  • RUBY EXECUTABLE: /usr/local/ruby-2.2.3/bin/ruby
  • EXECUTABLE DIRECTORY: /usr/local/ruby-2.2.3/bin
  • SPEC CACHE DIRECTORY: /root/.gem/specs
  • SYSTEM CONFIGURATION DIRECTORY: /usr/local/ruby-2.2.3/etc
  • RUBYGEMS PLATFORMS:
    • ruby
    • x86_64-linux
  • GEM PATHS:
    • /usr/local/ruby-2.2.3/lib/ruby/gems/2.2.0
      -
    • /usr/local/transfuse-from-source/gems
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:
  • SHELL PATH:
    • /usr/lib64/qt-3.3/bin
    • /usr/local/sbin
    • /usr/local/bin
    • /sbin
    • /bin
    • /usr/sbin
    • /usr/bin
    • /root/bin
    • /opt/dell/mdstoragemanager-MD3000i/jre/bin
Will
@willblev
Oct 06 2015 13:51
Oh, and the grep search returned pathname2 (1.7.4)
Chris Boursnell
@cboursnell
Oct 06 2015 13:54
Ok that seems to be similar enough to what I have in the VM where I reproduced the same error.
It's very strange as you say transrate works and transfuse doesn't require much more than that.
I'll keep you posted with what I find and what fixes it.
Will
@willblev
Oct 06 2015 13:55
Thanks again!
Chris Boursnell
@cboursnell
Oct 06 2015 16:36
Ok... I think I have a fix, but to be honest I don't understand why it works.
Do gem install bundler