hawx / guard-sass

Guard::Sass automatically rebuilds sass files when modified (like sass --watch)
MIT License
88 stars 35 forks source link

sass exceptions break guard-sass until guard is restarted #41

Closed emkman closed 11 years ago

emkman commented 11 years ago

Most SASS errors break guard until I restart it. Here is a stracktrace:

17:18:39 - ERROR - Guard::Sass failed to achieve its , exception was: [#] Sass::SyntaxError: Invalid CSS after " margin": expected "{", was "}" [#] public/css/_index.scss:31 [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1148:in expected' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1084:inexpected' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1079:in tok!' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:534:inblock' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:529:in ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:591:inblock in declaration_or_ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1122:in call' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1122:inrethrow' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:592:in declaration_or_ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:554:inblock_child' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:543:in block_contents' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:535:inblock' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:529:in ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:591:inblock in declaration_or_ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1122:in call' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1122:inrethrow' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:592:in declaration_or_ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:554:inblock_child' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:546:in block_contents' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:535:inblock' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:529:in ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:591:inblock in declaration_or_ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1122:in call' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:1122:inrethrow' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:592:in declaration_or_ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:554:inblock_child' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:546:in block_contents' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:535:inblock' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:529:in ruleset' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:553:inblock_child' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:543:in block_contents' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:82:instylesheet' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/scss/parser.rb:27:in parse' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/engine.rb:342:in_to_tree' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/engine.rb:274:in to_tree' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/engine.rb:306:in_dependencies' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/sass-3.2.7/lib/sass/engine.rb:295:in dependencies' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-sass-1.0.3/lib/guard/sass.rb:107:inblock in resolve_partials_to_owners' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-sass-1.0.3/lib/guard/sass.rb:105:in select' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-sass-1.0.3/lib/guard/sass.rb:105:inresolve_partials_to_owners' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-sass-1.0.3/lib/guard/sass.rb:119:in run_with_partials' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-sass-1.0.3/lib/guard/sass.rb:133:inrun_on_changes' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:99:in block in run_supervised_task' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:97:incatch' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:97:in run_supervised_task' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:146:inblock in run_first_task_found' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:144:in each' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:144:inrun_first_task_found' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:79:in block in run_on_changes' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:175:inblock (3 levels) in scoped_guards' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:174:in each' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:174:inblock (2 levels) in scoped_guards' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:173:in catch' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:173:inblock in scoped_guards' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:172:in each' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:172:inscoped_guards' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard/runner.rb:72:in run_on_changes' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard.rb:139:inblock (2 levels) in setup_listener' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard.rb:363:in block in within_preserved_state' [#] <internal:prelude>:10:insynchronize' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard.rb:360:in within_preserved_state' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/guard-1.6.2/lib/guard.rb:138:inblock in setup_listener' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/listen-0.7.3/lib/listen/listener.rb:212:in call' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/listen-0.7.3/lib/listen/listener.rb:212:inon_change' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/listen-0.7.3/lib/listen/listener.rb:221:in block in initialize_adapter' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/listen-0.7.3/lib/listen/adapters/polling.rb:56:incall' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/listen-0.7.3/lib/listen/adapters/polling.rb:56:in poll' [#] /Users/emkman/.rvm/gems/ruby-1.9.3-p392@triple/gems/listen-0.7.3/lib/listen/adapters/polling.rb:32:inblock in start' 17:18:39 - INFO - Guard::Sass has just been fired

My Gemset:

guard (1.6.2)
guard-livereload (1.1.3)
guard-sass (1.0.3)

and my Guardfile

guard 'sass', :input => 'public/css', :load_paths => ["lib", "public/css"], :smart_partials => true

guard 'livereload' do
  watch(%r{views/.+\.(erb|haml)})
  watch(%r{public/.+\.(css|js)})
end
hawx commented 11 years ago

I'm pretty sure that fixes the problem (now 1.0.4). But tell me if it doesn't, thanks.

emkman commented 11 years ago

So far so good. Thanks!