title: Guard doesn't see file updates
body: <p>I'm developing a custom engine using <a href="http://rubyx.com/2011/03/01/start-your-engines">this setup</a>.</p>
  
  <p>I've created the engine with</p>
  
  <pre><code>rails plugin new MyEngine --full
  </code></pre>
  
  <p>Then I've added <code>rspec-rails</code> and <code>guard-rspec</code> as development dependencies with</p>
  
  <pre><code>s.add_development_dependency "rspec-rails"
  s.add_development_dependency "guard-rspec"
  </code></pre>
  
  <p>in my gemspec file.</p>
  
  <p>When I run both <code>rspec</code> and <code>rake spec</code> (with or without <code>bundle exec</code>) my specs run fine. When I run the <code>guard</code> command however it runs all the specs for the first time and then it does not do nothing. It won't detect any file change in the whole app.</p>
  
  <p>The Guardfile is generated as usual with <code>guard init spec</code>, here is its content</p>
  
  <pre><code># A sample Guardfile
  # More info at https://github.com/guard/guard#readme
  
  guard 'rspec', :version =&gt; 2 do
    watch(%r{^spec/.+_spec\.rb$})
    watch(%r{^lib/(.+)\.rb$})     { |m| "spec/lib/#{m[1]}_spec.rb" }
    watch('spec/spec_helper.rb')  { "spec/" }
  
    # Rails example
    watch(%r{^spec/.+_spec\.rb$})
    watch(%r{^app/(.+)\.rb$})                           { |m| "spec/#{m[1]}_spec.rb" }
    watch(%r{^lib/(.+)\.rb$})                           { |m| "spec/lib/#{m[1]}_spec.rb" }
    watch(%r{^app/controllers/(.+)_(controller)\.rb$})  { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
    watch(%r{^spec/support/(.+)\.rb$})                  { "spec/" }
    watch('spec/spec_helper.rb')                        { "spec/" }
    watch('config/routes.rb')                           { "spec/routing" }
    watch('app/controllers/application_controller.rb')  { "spec/controllers" }
    # Capybara request specs
    watch(%r{^app/views/(.+)/.*\.(erb|haml)$})          { |m| "spec/requests/#{m[1]}_spec.rb" }
  end
  </code></pre>
  
  <p>If I keep a shell open with guard running and I do from another shell <code>touch app/my_model.rb</code> nothing happens. The same for every other file(pattern) listed in the Guardfile.</p>
  
  <p>Is there any way to debug this kind of issues?</p>
  
  <p><strong>Update</strong>
  I've created a new project (a rails one) and installed the <strong><a href="https://github.com/guard/guard-shell">guard-shell</a></strong> gem with this <code>Guardfile</code></p>
  
  <pre><code>guard 'shell' do
    watch(%r{(.*)}) {|m| `cat #{m[0]}` }
    watch(%r{(.*)}) {|m| raise m.to_s }
  end
  </code></pre>
  
  <p>Even in this case if I edit any files nothing happens. I'm starting to think that the problem could be somewhere else, maybe in the <code>rb-fsevents</code> gem. What can I check?</p>