Compass / compass

Compass is no longer actively maintained. Compass is a Stylesheet Authoring Environment that makes your website design simpler to implement and easier to maintain.
http://compass-style.org
Other
6.73k stars 1.18k forks source link

not compiling SASS 3.4.8 #1878

Open timbog80 opened 9 years ago

timbog80 commented 9 years ago

-compass watch:

NoMethodError on line ["402"] of /var/lib/gems/1.9.1/gems/sass-3.4.8/lib/sass/plugin/compiler.rb: undefined method `join' for nil:NilClass Run with --trace to see the full backtrace

ran with --trace:

/var/lib/gems/1.9.1/gems/sass-3.4.8/lib/sass/plugin/compiler.rb:402:in each' /var/lib/gems/1.9.1/gems/sass-3.4.8/lib/sass/plugin/compiler.rb:402:inlisten_to' /var/lib/gems/1.9.1/gems/sass-3.4.8/lib/sass/plugin/compiler.rb:338:in watch' /var/lib/gems/1.9.1/gems/compass-1.0.1/lib/compass/sass_compiler.rb:46:inwatch!' /var/lib/gems/1.9.1/gems/compass-1.0.1/lib/compass/commands/watch_project.rb:41:in perform' /var/lib/gems/1.9.1/gems/compass-1.0.1/lib/compass/commands/base.rb:18:inexecute' /var/lib/gems/1.9.1/gems/compass-1.0.1/lib/compass/commands/project_base.rb:19:in execute' /var/lib/gems/1.9.1/gems/compass-1.0.1/lib/compass/exec/sub_command_ui.rb:43:inperform!' /var/lib/gems/1.9.1/gems/compass-1.0.1/lib/compass/exec/sub_command_ui.rb:15:in run!' /var/lib/gems/1.9.1/gems/compass-1.0.1/bin/compass:30:inblock in ' /var/lib/gems/1.9.1/gems/compass-1.0.1/bin/compass:44:in call' /var/lib/gems/1.9.1/gems/compass-1.0.1/bin/compass:44:in' /usr/local/bin/compass:23:in load' /usr/local/bin/compass:23:in'

thany commented 9 years ago

I can confirm this.

My trace output:

>>> Compass is watching for changes. Press Ctrl-C to Stop.
NoMethodError on line ["402"] of C: undefined method `join' for #<Thread::Queue:0x00000004f3e478>
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/sass-3.4.8/lib/sass/plugin/compiler.rb:402:in `each'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/sass-3.4.8/lib/sass/plugin/compiler.rb:402:in `listen_to'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/sass-3.4.8/lib/sass/plugin/compiler.rb:338:in `watch'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/lib/compass/sass_compiler.rb:46:in `watch!'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/lib/compass/commands/watch_project.rb:41:in `perform'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/lib/compass/commands/base.rb:18:in `execute'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/lib/compass/commands/project_base.rb:19:in `execute'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/lib/compass/exec/sub_command_ui.rb:43:in `perform!'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/lib/compass/exec/sub_command_ui.rb:15:in `run!'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/bin/compass:30:in `block in <top (required)>'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/bin/compass:44:in `call'
  C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/compass-1.0.1/bin/compass:44:in `<top (required)>'
  C:/Ruby21-x64/bin/compass:23:in `load'
  C:/Ruby21-x64/bin/compass:23:in `<main>'
E, [2014-11-21T12:03:25.164393 #7912] ERROR -- : Couldn't cleanly terminate all actors in 10 seconds!

As you can see, a very different environment. I'm on Windows 7 x64, Ruby 2.1.3, and gems 2.4.4.

/edit The weird thing is, I've reverted SASS to 3.3.14, and the error persists. I've also reverted Compass to 1.0.0, and the error still persists.

What's going on??

/edit2 If I uninstall gem listen-2.8.0 (and reinstall the latest compass & sass, uninstalling any older versions), it appears to work fine. But I need that gem to work with jekyll.

thany commented 9 years ago

I see SASS 3.4.9 has been released with a fix for the listen gem. I'll test this shortly, but from the looks of things, it will probably be our fix.

LinLiuLY commented 8 years ago

Updated to the latest version of SASS fixed this issue.