Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crono fails to start with Web UI route active on Rails 5 #52

Closed
cseelus opened this issue Sep 20, 2016 · 2 comments
Closed

Crono fails to start with Web UI route active on Rails 5 #52

cseelus opened this issue Sep 20, 2016 · 2 comments
Labels

Comments

@cseelus
Copy link
Collaborator

cseelus commented Sep 20, 2016

First thanks for your work. We use Crono in production for over a year now and it has kicked of tens of thousands of jobs on our servers.

Upgrading one of our apps to Rails 5 we encountered a problem though:

Running the Crono gem works as long as the route to the Web UI (mount Crono::Web, at: '/crono') is not active. With the route added, crono doesn't start locally as well as on our production machine (Heroku).

We can reproduce this problem within a clean new Rails 5.0.0.1 app with only the Crono gem added as well.

Error log from development machine (macOS 10.11.6 with Ruby 2.3.1, paths shortened for readability):

bundler: failed to load command: crono (/bin/crono)
LoadError: cannot load such file -- rack/showexceptions
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/sinatra-1.0/lib/sinatra/showexceptions.rb:1:in `<top (required)>'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/sinatra-1.0/lib/sinatra/base.rb:6:in `<top (required)>'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/crono-1.0.3/lib/crono/web.rb:2:in `<top (required)>'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /Users/chris/Sites/crono/config/routes.rb:2:in `block in <top (required)>'
  /lib/ruby/gems/2.3.0/gems/actionpack-5.0.0.1/lib/action_dispatch/routing/route_set.rb:389:in `instance_exec'
  /lib/ruby/gems/2.3.0/gems/actionpack-5.0.0.1/lib/action_dispatch/routing/route_set.rb:389:in `eval_block'
  /lib/ruby/gems/2.3.0/gems/actionpack-5.0.0.1/lib/action_dispatch/routing/route_set.rb:371:in `draw'
  /Users/chris/Sites/crono/config/routes.rb:1:in `<top (required)>'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:287:in `load'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:287:in `block in load'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:287:in `load'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:40:in `block in load_paths'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:40:in `each'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:40:in `load_paths'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:16:in `reload!'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:26:in `block in updater'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/file_update_checker.rb:77:in `execute'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:27:in `updater'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/routes_reloader.rb:7:in `execute_if_updated'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application/finisher.rb:119:in `block in <module:Finisher>'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/initializable.rb:30:in `instance_exec'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/initializable.rb:30:in `run'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/initializable.rb:55:in `block in run_initializers'
  /lib/ruby/2.3.0/tsort.rb:228:in `block in tsort_each'
  /lib/ruby/2.3.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
  /lib/ruby/2.3.0/tsort.rb:431:in `each_strongly_connected_component_from'
  /lib/ruby/2.3.0/tsort.rb:349:in `block in each_strongly_connected_component'
  /lib/ruby/2.3.0/tsort.rb:347:in `each'
  /lib/ruby/2.3.0/tsort.rb:347:in `call'
  /lib/ruby/2.3.0/tsort.rb:347:in `each_strongly_connected_component'
  /lib/ruby/2.3.0/tsort.rb:226:in `tsort_each'
  /lib/ruby/2.3.0/tsort.rb:205:in `tsort_each'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/initializable.rb:54:in `run_initializers'
  /lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/application.rb:352:in `initialize!'
  /Users/chris/Sites/crono/config/environment.rb:5:in `<top (required)>'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
  /lib/ruby/gems/2.3.0/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require'
  /lib/ruby/gems/2.3.0/gems/crono-1.0.3/lib/crono/cli.rb:84:in `load_rails'
  /lib/ruby/gems/2.3.0/gems/crono-1.0.3/lib/crono/cli.rb:28:in `run'
  /lib/ruby/gems/2.3.0/gems/crono-1.0.3/exe/crono:8:in `<top (required)>'
  /bin/crono:23:in `load'
  /bin/crono:23:in `<top (required)>'
@plashchynski
Copy link
Owner

Hello @cseelus
Thank you for the good words.
This issue is related to sinatra/sinatra#1055
You can fix it by using the latest version of sinatra:

gem 'sinatra', '2.0.0.beta2', require: nil

Thank you and good luck.

@cseelus
Copy link
Collaborator Author

cseelus commented Sep 22, 2016

Thanks @plashchynski, this works :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants