12

When I run "compass watch" I got this error:

LoadError on line ["54"] of /usr/local/lib/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb: cannot load such file -- susy
Run with --trace to see the full backtrace

I managed to fix it with:

sudo gem update
sudo gem install susy

When I run compass again, css files were generated and I got a new error:

>>> Compass is watching for changes. Press Ctrl-C to Stop.
    write css/ie10_and_higher.css
    write css/ie9.css
    write css/style.css
D, [2015-07-31T10:36:12.805795 #5675] DEBUG -- : Celluloid 0.17.0 is running in BACKPORTED mode. [ http://git.io/vJf3J ]
ArgumentError on line ["48"] of /var/lib/gems/2.1.0/gems/celluloid-0.17.0/lib/celluloid/calls.rb: wrong number of arguments (2 for 1)
Run with --trace to see the full backtrace

And now I can't find any solution in google.

Drupal Noob
  • 153
  • 6

2 Answers2

3

I ran into this problem too. I had updated everything - ruby, gem --system, all the gems, compass, etc, but it still kept throwing the error. What I had to do was use "gem uninstall listen" repeatedly to remove the multiple 2.7.x versions that were installed - once they were all removed and only listen 3.x existed would it work correctly again.

2

This looks like it's an issue with the celluloid gem. Take a look at the Github Issue.

I sifted through the compass source, and it does not appear that celluloid is referenced anywhere - I am doubtful that compass is related. If you're not using it anywhere in your project, one of your other gems must be doing so. You'll need to run a full trace to figure out which one it is.

Sculper
  • 712
  • 2
  • 12
  • 24
  • 4
    compass uses sass, which uses the listen gem, which uses celluloid – tomasbarrios Aug 18 '15 at 20:19
  • Which version of ruby are you using? The version of `listen` that `sass` chooses by default is dependent on this - the newest version of `listen` does not require `celluloid`. – Sculper Aug 18 '15 at 21:09
  • Is upgrading to ruby 2.2 an option? The readme for `listen` *strongly* recommends using 2.2. You may want to check the version of `listen` as well - as of 3.x, `celluloid` is no longer a dependency. – Sculper Aug 20 '15 at 16:09
  • Looks like the version of listen you're using is 2.7.11. Maybe try uninstalling that version, and upgrading to 3.x manually? – Sculper Aug 20 '15 at 19:44
  • Thanks, by mistake I had fix the version in my Gemfile, after removing this and using ruby 2.2 everything works! – tomasbarrios Aug 21 '15 at 13:51