documentcloud / jammit

Industrial Strength Asset Packaging for Rails
http://documentcloud.github.com/jammit/
MIT License
1.16k stars 197 forks source link

jammit fails when rails 3 gems are installed #31

Closed kevinansfield closed 14 years ago

kevinansfield commented 14 years ago

After installing the Rails 3.0 beta gems, jammit fails to run with the following error:

imac-home ~/code/rails/yougotpapped (master): jammit
/Library/Ruby/Gems/1.8/gems/jammit-0.4.1/lib/jammit/compressor.rb:27: undefined method `kilobytes' for 32:Fixnum (NoMethodError)
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
    from /Library/Ruby/Gems/1.8/gems/jammit-0.4.1/lib/jammit/dependencies.rb:19
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
    from /Library/Ruby/Gems/1.8/gems/jammit-0.4.1/lib/jammit.rb:145
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
    from /Library/Ruby/Gems/1.8/gems/jammit-0.4.1/bin/../lib/jammit/command_line.rb:2
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in`gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
    from /Library/Ruby/Gems/1.8/gems/jammit-0.4.1/bin/jammit:3
    from /usr/bin/jammit:19:in`load'
    from /usr/bin/jammit:19
            
kevinansfield commented 14 years ago

Confirmed with version 0.4.3 also.

Uninstalling the Rails 3.0 gems resolves the issue

samgranieri commented 14 years ago

Ive been working on jammit for rails 3... I'ts preliminary so far, but I'll try go get a new version out and work with the maintainer

samgranieri commented 14 years ago

try this ./script/rails plugin install git://github.com/samgranieri/jammit.git -r rails3

kevinansfield commented 14 years ago

running the jammit gem from the binary included in the above also fails with:

imac-home ~/code/rails/yougotpapped/vendor/plugins/jammit/bin (master)☢ : ./jammit
/Users/kev/code/rails/yougotpapped/vendor/plugins/jammit/lib/jammit/compressor.rb:27: undefined method `kilobytes' for 32:Fixnum (NoMethodError)
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
    from /Users/kev/code/rails/yougotpapped/vendor/plugins/jammit/lib/jammit/dependencies.rb:18
    from /Users/kev/code/rails/yougotpapped/vendor/plugins/jammit/lib/jammit.rb:144:in `require'
    from /Users/kev/code/rails/yougotpapped/vendor/plugins/jammit/lib/jammit.rb:144
    from ./../lib/jammit/command_line.rb:2:in `require'
    from ./../lib/jammit/command_line.rb:2
    from ./jammit:3:in `require'
    from ./jammit:3
kevinansfield commented 14 years ago

As a workaround, I've added "gem 'activesupport', '2.3.5'" to line 13 in lib/jammit/dependencies.rb

Note: This is not a rails 3.0 project, it's using 2.3.4. The issue I'm having is just getting jammit to run during a capistrano deployment.

documentcloud commented 14 years ago

Thanks, folks. Until we get simultaneous Rails 2/3 support figured out, I've added an explicit gem dependency on a 2.x version of rails. If you pull from master, you should be good to go for the time being.