sstephenson / sprockets

Rack-based asset packaging system
2.55k stars 24 forks source link

sprockets 3 doesn't work without CoffeeScript? #724

Closed pmontrasio closed 8 years ago

pmontrasio commented 9 years ago

I have a Rails project in which I disabled CoffeeScript by commenting it out in the generated Gemfile (I'm not using CS, only plain JS).

I removed Gemfile.lock and run bundle to get new versions of all the gems today. Sprocket has been upgraded to 3.0.3 from 2.12.3. Unfortunately the application doesn't work anymore. This is the error I get when trying to load the home page.

LoadError in HomeController#index
cannot load such file -- coffee_script
Extracted source (around line #274):

272 def require(file)
273   result = false
274   load_dependency(file) { result = super }
275   result
276   end
277 end

Rails.root: /home/me/project
Application Trace | Framework Trace | Full Trace

activesupport (4.2.1) lib/active_support/dependencies.rb:274:in `require'
activesupport (4.2.1) lib/active_support/dependencies.rb:274:in `block in require'
activesupport (4.2.1) lib/active_support/dependencies.rb:240:in `load_dependency'
activesupport (4.2.1) lib/active_support/dependencies.rb:274:in `require'
sprockets (3.0.3) lib/sprockets/autoload/coffee_script.rb:1:in `<top (required)>'
sprockets (3.0.3) lib/sprockets/coffee_script_processor.rb:15:in `cache_key'
sprockets (3.0.3) lib/sprockets/coffee_script_processor.rb:20:in `call'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:75:in `call_processor'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:57:in `block in call_processors'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:56:in `reverse_each'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:56:in `call_processors'
sprockets (3.0.3) lib/sprockets/loader.rb:87:in `load_asset_by_uri'
sprockets (3.0.3) lib/sprockets/loader.rb:45:in `block in load'
sprockets (3.0.3) lib/sprockets/loader.rb:157:in `fetch_asset_from_dependency_cache'
sprockets (3.0.3) lib/sprockets/loader.rb:38:in `load'
sprockets (3.0.3) lib/sprockets/cached_environment.rb:20:in `block in initialize'
sprockets (3.0.3) lib/sprockets/cached_environment.rb:47:in `yield'
sprockets (3.0.3) lib/sprockets/cached_environment.rb:47:in `load'
sprockets (3.0.3) lib/sprockets/bundle.rb:23:in `block in call'
sprockets (3.0.3) lib/sprockets/utils.rb:183:in `dfs'
sprockets (3.0.3) lib/sprockets/bundle.rb:24:in `call'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:75:in `call_processor'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:57:in `block in call_processors'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:56:in `reverse_each'
sprockets (3.0.3) lib/sprockets/processor_utils.rb:56:in `call_processors'
sprockets (3.0.3) lib/sprockets/loader.rb:87:in `load_asset_by_uri'
sprockets (3.0.3) lib/sprockets/loader.rb:45:in `block in load'
sprockets (3.0.3) lib/sprockets/loader.rb:157:in `fetch_asset_from_dependency_cache'
sprockets (3.0.3) lib/sprockets/loader.rb:38:in `load'
sprockets (3.0.3) lib/sprockets/cached_environment.rb:20:in `block in initialize'
sprockets (3.0.3) lib/sprockets/cached_environment.rb:47:in `yield'
sprockets (3.0.3) lib/sprockets/cached_environment.rb:47:in `load'
sprockets (3.0.3) lib/sprockets/base.rb:63:in `find_asset'
sprockets (3.0.3) lib/sprockets/environment.rb:30:in `find_asset'
sprockets (3.0.3) lib/sprockets/base.rb:89:in `[]'
sprockets-rails (2.2.4) lib/sprockets/rails/helper.rb:230:in `lookup_asset_for_path'
sprockets-rails (2.2.4) lib/sprockets/rails/helper.rb:138:in `block in javascript_include_tag'
sprockets-rails (2.2.4) lib/sprockets/rails/helper.rb:136:in `map'
sprockets-rails (2.2.4) lib/sprockets/rails/helper.rb:136:in `javascript_include_tag'
actionview (4.2.1) lib/action_view/template.rb:145:in `block in render'
activesupport (4.2.1) lib/active_support/notifications.rb:166:in `instrument'
actionview (4.2.1) lib/action_view/template.rb:333:in `instrument'
actionview (4.2.1) lib/action_view/template.rb:143:in `render'
actionview (4.2.1) lib/action_view/renderer/template_renderer.rb:66:in `render_with_layout'
actionview (4.2.1) lib/action_view/renderer/template_renderer.rb:52:in `render_template'
actionview (4.2.1) lib/action_view/renderer/template_renderer.rb:14:in `render'
actionview (4.2.1) lib/action_view/renderer/renderer.rb:42:in `render_template'
actionview (4.2.1) lib/action_view/renderer/renderer.rb:23:in `render'
actionview (4.2.1) lib/action_view/rendering.rb:100:in `_render_template'
actionpack (4.2.1) lib/action_controller/metal/streaming.rb:217:in `_render_template'
actionview (4.2.1) lib/action_view/rendering.rb:83:in `render_to_body'
actionpack (4.2.1) lib/action_controller/metal/rendering.rb:32:in `render_to_body'
actionpack (4.2.1) lib/action_controller/metal/renderers.rb:37:in `render_to_body'
actionpack (4.2.1) lib/abstract_controller/rendering.rb:25:in `render'
actionpack (4.2.1) lib/action_controller/metal/rendering.rb:16:in `render'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:44:in `block (2 levels) in render'
activesupport (4.2.1) lib/active_support/core_ext/benchmark.rb:12:in `block in ms'
/home/me/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/benchmark.rb:303:in `realtime'
activesupport (4.2.1) lib/active_support/core_ext/benchmark.rb:12:in `ms'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:44:in `block in render'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:87:in `cleanup_view_runtime'
activerecord (4.2.1) lib/active_record/railties/controller_runtime.rb:25:in `cleanup_view_runtime'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:43:in `render'
actionpack (4.2.1) lib/action_controller/metal/implicit_render.rb:10:in `default_render'
actionpack (4.2.1) lib/action_controller/metal/implicit_render.rb:5:in `send_action'
actionpack (4.2.1) lib/abstract_controller/base.rb:198:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/rendering.rb:10:in `process_action'
actionpack (4.2.1) lib/abstract_controller/callbacks.rb:20:in `block in process_action'
activesupport (4.2.1) lib/active_support/callbacks.rb:117:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:117:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
activesupport (4.2.1) lib/active_support/callbacks.rb:505:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:505:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
activesupport (4.2.1) lib/active_support/callbacks.rb:313:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
route_translator (4.0.0) lib/route_translator/extensions/action_controller.rb:20:in `set_locale_from_url'
activesupport (4.2.1) lib/active_support/callbacks.rb:432:in `block in make_lambda'
activesupport (4.2.1) lib/active_support/callbacks.rb:312:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:312:in `block in halting'
activesupport (4.2.1) lib/active_support/callbacks.rb:497:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:497:in `block in around'
activesupport (4.2.1) lib/active_support/callbacks.rb:505:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:505:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:92:in `_run_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:776:in `_run_process_action_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (4.2.1) lib/abstract_controller/callbacks.rb:19:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/rescue.rb:29:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
activesupport (4.2.1) lib/active_support/notifications.rb:164:in `block in instrument'
activesupport (4.2.1) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.2.1) lib/active_support/notifications.rb:164:in `instrument'
actionpack (4.2.1) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
actionpack (4.2.1) lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
activerecord (4.2.1) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
actionpack (4.2.1) lib/abstract_controller/base.rb:137:in `process'
actionview (4.2.1) lib/action_view/rendering.rb:30:in `process'
actionpack (4.2.1) lib/action_controller/metal.rb:196:in `dispatch'
actionpack (4.2.1) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
actionpack (4.2.1) lib/action_controller/metal.rb:237:in `block in action'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:74:in `call'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:74:in `dispatch'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:43:in `serve'
actionpack (4.2.1) lib/action_dispatch/journey/router.rb:43:in `block in serve'
actionpack (4.2.1) lib/action_dispatch/journey/router.rb:30:in `each'
actionpack (4.2.1) lib/action_dispatch/journey/router.rb:30:in `serve'
actionpack (4.2.1) lib/action_dispatch/routing/route_set.rb:819:in `call'
omniauth (1.2.2) lib/omniauth/strategy.rb:186:in `call!'
omniauth (1.2.2) lib/omniauth/strategy.rb:164:in `call'
omniauth (1.2.2) lib/omniauth/strategy.rb:186:in `call!'
omniauth (1.2.2) lib/omniauth/strategy.rb:164:in `call'
omniauth (1.2.2) lib/omniauth/builder.rb:59:in `call'
warden (1.2.3) lib/warden/manager.rb:35:in `block in call'
warden (1.2.3) lib/warden/manager.rb:34:in `catch'
warden (1.2.3) lib/warden/manager.rb:34:in `call'
rack (1.6.0) lib/rack/etag.rb:24:in `call'
rack (1.6.0) lib/rack/conditionalget.rb:25:in `call'
rack (1.6.0) lib/rack/head.rb:13:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/params_parser.rb:27:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/flash.rb:260:in `call'
rack (1.6.0) lib/rack/session/abstract/id.rb:225:in `context'
rack (1.6.0) lib/rack/session/abstract/id.rb:220:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/cookies.rb:560:in `call'
activerecord (4.2.1) lib/active_record/query_cache.rb:36:in `call'
activerecord (4.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:649:in `call'
activerecord (4.2.1) lib/active_record/migration.rb:378:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.2.1) lib/active_support/callbacks.rb:88:in `call'
activesupport (4.2.1) lib/active_support/callbacks.rb:88:in `_run_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:776:in `_run_call_callbacks'
activesupport (4.2.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (4.2.1) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/reloader.rb:73:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
better_errors (2.1.1) lib/better_errors/middleware.rb:59:in `call'
web-console (2.0.0.beta4) lib/action_dispatch/debug_exceptions.rb:18:in `middleware_call'
web-console (2.0.0.beta4) lib/action_dispatch/debug_exceptions.rb:13:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.2.1) lib/rails/rack/logger.rb:38:in `call_app'
railties (4.2.1) lib/rails/rack/logger.rb:20:in `block in call'
activesupport (4.2.1) lib/active_support/tagged_logging.rb:68:in `block in tagged'
activesupport (4.2.1) lib/active_support/tagged_logging.rb:26:in `tagged'
activesupport (4.2.1) lib/active_support/tagged_logging.rb:68:in `tagged'
railties (4.2.1) lib/rails/rack/logger.rb:20:in `call'
quiet_assets (1.1.0) lib/quiet_assets.rb:27:in `call_with_quiet_assets'
actionpack (4.2.1) lib/action_dispatch/middleware/request_id.rb:21:in `call'
rack (1.6.0) lib/rack/methodoverride.rb:22:in `call'
rack (1.6.0) lib/rack/runtime.rb:18:in `call'
activesupport (4.2.1) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
rack (1.6.0) lib/rack/lock.rb:17:in `call'
actionpack (4.2.1) lib/action_dispatch/middleware/static.rb:113:in `call'
rack (1.6.0) lib/rack/sendfile.rb:113:in `call'
railties (4.2.1) lib/rails/engine.rb:518:in `call'
railties (4.2.1) lib/rails/application.rb:164:in `call'
rack (1.6.0) lib/rack/lock.rb:17:in `call'
rack (1.6.0) lib/rack/content_length.rb:15:in `call'
rack (1.6.0) lib/rack/handler/webrick.rb:89:in `service'
/home/me/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/webrick/httpserver.rb:138:in `service'
/home/me/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/webrick/httpserver.rb:94:in `run'
/home/me/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/webrick/server.rb:294:in `block in start_thread'

This error occurred while loading the following files:
   coffee_script

Request

Parameters:

None

If I add gem "sprockets", "2.12.3" to the Gemfile it works again.

Does version 3 make some hard assumption on the presence of CoffeeScript?

schneems commented 9 years ago

If this is still an active issue can you close this one and re-open it at http://github.com/rails/sprockets. Active development has moved to that repo.

If you've got a bug with sprockets 3 please make sure you've tried the latest 3.3.3. If you can confirm this is still an active issue, the fastest way to get it fixed is to create a small example app that reproduces the failure and open an issue in the new repo http://github.com/rails/sprockets.

benpickles commented 9 years ago

I have also encountered this but have tracked it down to the teaspoon-jasmine gem. Are you also using this @pmontrasio?

pmontrasio commented 9 years ago

@benpickles I checked and I'm not using that gem.

@schneems I'll check with the new version as soon as I resume working on that project. I'll open an issue in its repository if I run again into that problem.

Thanks to both of you.

benpickles commented 9 years ago

FYI I've created an issue in the Teaspoon repo for this: https://github.com/modeset/teaspoon/issues/405

benpickles commented 9 years ago

Either way, in my case at least, the problem resides in another library and not Sprockets.

rafaelfranca commented 8 years ago

This issue was moved to rails/sprockets#183

ordinaryzelig commented 8 years ago

Clearing the cache fixed it for me. https://github.com/rails/sprockets/issues/183#issuecomment-162203288