rstacruz / sinatra-assetpack

Package your assets transparently in Sinatra.
http://ricostacruz.com/sinatra-assetpack/
MIT License
542 stars 97 forks source link

relax backports from ruby 1.9+ bundle #114

Closed ujifgc closed 11 years ago

ujifgc commented 11 years ago

The backports gem is not needed in sinatra-assetpack if ruby version is 1.9+. Please, do not bloat application runtime bundle.

j15e commented 11 years ago

Hi @ujifgc, this solution won't work as the gemspec is evaluated on gem build and when I will publish it simply won't show up for 1.8 users.

I must agree it is annoying to include backports on this project as it make it look like its a 1998 project. But if I drop backports from the runtime dependencies, I'll have to drop 1.8 support or rewrite a bunch of code for 1.8 (I won't).

There is a possible hack using a native gem extension but I think it would not be nice either as it might break compatibility with jruby & rbx :

http://www.programmersparadox.com/2012/05/21/gemspec-loading-dependent-gems-based-on-the-users-system/

Dropping 1.8 support is probably the best option as it was released more than 5 years ago.

ujifgc commented 11 years ago

Thank you for the explanation. I'm gonna investigate the situation.

ujifgc commented 11 years ago

The only place where tests failed on mri1.8.7 and jruby-mode18 is https://github.com/rstacruz/sinatra-assetpack/blob/master/lib/sinatra/assetpack/options.rb#L237

Is this solution acceptable?

j15e commented 11 years ago

Awesome, this seems all right, I thought there was more issues with 1.8, they might have been fixed by other changes. Travis seems to be overloaded at this moment and I do not have 1.8 currently install so I'll wait until I can run test to merge, but it should be soon enough.

For next release I will also move other gems dependencies to the Gemfile as they are only required for the gem development not running sinatra-assetpack during a project development :

  # For gem tests
  s.add_development_dependency 'rake'
  s.add_development_dependency 'mocha'

  # For gem release mangement
  s.add_development_dependency 'gem-release'

Thanks again for this cleanup.

j15e commented 11 years ago

Released in 0.2.6