title: Why exclude tests from gemspec files?
body: <p><a href="https://github.com/bundler/bundler/blob/e41edd133a737ed95581a4e850076c7160289269/lib/bundler/templates/newgem/newgem.gemspec.tt" rel="nofollow">Bundler's gemspec template</a> provides the following as the default for specifying a gems files:</p>
  
  <pre><code>spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
  </code></pre>
  
  <p>A lot of other (seemingly irrelevant) files like the .gitignore and .travis.yml file would be included, so why exclude the tests?</p>
  
  <p>I've seen <a href="https://github.com/wycats/rack-offline/blob/master/rack-offline.gemspec#L21" rel="nofollow">other</a> <a href="https://github.com/intridea/omniauth/blob/master/omniauth.gemspec#L13" rel="nofollow">high-profile</a> <a href="https://github.com/rails/globalid/blob/master/globalid.gemspec#L16" rel="nofollow">gems</a> ignore test files too.</p>