ChiliProject is not maintained anymore. Please be advised that there will be no more updates.

We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.

Chiliproject 2.0.0 - partial Ruby1.9 support?

Added by Craig Price at 2011-07-26 01:51 pm

I've noticed that CP2.0.0 has "partial support" for Ruby 1.9.

What does this mean? Is it feasible to run in production? Is a specific version of 1.9.x required? This seems like the sort of thing that would be listed in the install guide, but I couldn't find mention of it anywhere on this site.

I'm trying to upgrade from 1.3 to 2.0, and having a hell of a time. My webhost defaults to 1.9.2p20, and I have the feeling that my environment is not quite sane after forcing it back to 1.8.7. If I can make the switch to 1.9, my gut tells me that everything will be much easier for me.

Alternately, if anybody can explain why I'm getting this error when I launch ./dispatch.fcgi, I would name my firstborn after you.

/usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require': no such file to load -- fcgi (MissingSourceFile)
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:547:in `new_constants_in'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
from /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.12/lib/fcgi_handler.rb:1
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:547:in `new_constants_in'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
from ./dispatch.fcgi:22


Replies (8)

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Craig Price at 2011-07-27 05:13 pm

Well, I decided to go for it and see how deep the rabbithole went. "My install is already hosed, how much worse can it get?"

Well, the same level of hosed, I guess. After reinstalling Ruby and resetting my environment to use 1.9.2, I'm getting the exact same error that I got after upgrading to 1.5. Not exactly what I hoped for, but in hindsight I guess I should have expected it.

CP1.3 worked just fine before the upgrade- I'm using the same .htaccess and config files. So I'm pretty sure my FCGI handler is set up properly. gem list shows fcgi (0.8.8) is installed, so that should also be fine. I also noticed that the error complained about top, so I installed that too (0.0.1).

I noticed the 1.5 error log I pasted above cut off some text. I will post the (identical as far as I can tell) 2.0 log using the pre tag this time.

$ ./dispatch.fcgi
/usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require': no such file to load -- fcgi (MissingSource file)
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `block in require'
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:547:in `new_constants_in'
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
      from /usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:1:in `<top (required)>'
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `block in require'
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:547:in `new_constants_in'
      from /usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/dependencies.rb:182:in `require'
      from ./dispatch.fcgi:22:in `<main>'

If anybody has some wisdom they can impart, I would be most thankful. Google is failing me.

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Eric Davis at 2011-07-31 05:31 am

I haven't used fcgi for years so this is just some guesses.

ChiliProject 2.x uses Bundler which requires you to define all of your gems in the Gemfile. Since you said you have the fcgi gem installed but dispatch.fcgi can't find it, I think you need to tell Bundler to include the gem.

If you upgrade to ChiliProject 2.1.0 you can create a Gemfile.local in the root of ChiliProject and we will automatically load that. If you are on ChiliProject 2.0.0 you should either 1) upgrade or 2) edit the main Gemfile for now and switch to using a Gemfile.local later.

All you need to add to the Gemfile is:

1gem 'fcgi'

and then run bundle install again.

(And yes, we are officially supporting Ruby 1.9.2 since ChiliProject 2.1.0.)
Eric Davis

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Craig Price at 2011-07-31 03:44 pm

Awesome news about the 1.9.2 support, thanks for the reply! I noticed you already updated the install wiki.

Attempting to install CP 2.1 has led me to another wall. I'm using a webhost, and it doesn't look like bundle is able to install linecache19, as it really wants to mkdir /usr/include/ruby1.9/ruby-1.9.2-p0 for some reason, which is locked down on my server. gem install gives me the same problems. I've got a ticket open with my host in an attempt to work around this.

In the meantime, I've got CP 2.0 working with your help (and learned a bit about Bundler in the process), to which I owe you my undying gratitude. Thanks again for the awesome tip.

Just out of morbid curiosity, what do you use now if not fcgi? I'm not much of a web programmer, but I thought fcgi was still the best.

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Craig Price at 2011-07-31 04:11 pm

OK, I take that back. :(

CP 2.0 looks to be operational until I log in as admin and attempt to create a new user. At which point I get an 'invalid byte sequence in US-ASCII' error, which may be related to #519... but doesn't sound exactly the same, since the trace looks a bit different, and my error happens after clicking the New User link... I seem to be able to go into other areas, although attempting to go into Settings will also generate the same error. Again, this is a totally clean install.

Full trace:

/usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/core_ext/object/blank.rb:68:in `=~'
/usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/core_ext/object/blank.rb:68:in `!~'
/usr/local/ruby/1.9/gems/activesupport-2.3.12/lib/active_support/core_ext/object/blank.rb:68:in `blank?'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/response.rb:201:in `nonempty_ok_response?'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/response.rb:187:in `handle_conditional_get!'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/response.rb:140:in `prepare!'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/base.rb:540:in `send_response'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/base.rb:534:in `process'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/filters.rb:606:in `process_with_filters'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/base.rb:391:in `process'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/base.rb:386:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/routing/route_set.rb:438:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/dispatcher.rb:87:in `dispatch'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/dispatcher.rb:121:in `_call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/dispatcher.rb:130:in `block in build_middleware_stack'
/usr/local/ruby/1.9/gems/activerecord-2.3.12/lib/active_record/query_cache.rb:29:in `call'
/usr/local/ruby/1.9/gems/activerecord-2.3.12/lib/active_record/query_cache.rb:29:in `block in call'
/usr/local/ruby/1.9/gems/activerecord-2.3.12/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in `cache'
/usr/local/ruby/1.9/gems/activerecord-2.3.12/lib/active_record/query_cache.rb:9:in `cache'
/usr/local/ruby/1.9/gems/activerecord-2.3.12/lib/active_record/query_cache.rb:28:in `call'
/usr/local/ruby/1.9/gems/activerecord-2.3.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/string_coercion.rb:25:in `call'
/usr/local/ruby/1.9/gems/rack-1.1.2/lib/rack/head.rb:9:in `call'
/usr/local/ruby/1.9/gems/rack-1.1.2/lib/rack/methodoverride.rb:24:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/params_parser.rb:15:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/session/cookie_store.rb:99:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/failsafe.rb:26:in `call'
/usr/local/ruby/1.9/gems/rack-1.1.2/lib/rack/lock.rb:11:in `block in call'
<internal:prelude>:10:in `synchronize'
/usr/local/ruby/1.9/gems/rack-1.1.2/lib/rack/lock.rb:11:in `call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/dispatcher.rb:114:in `block in call'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/reloader.rb:34:in `run'
/usr/local/ruby/1.9/gems/actionpack-2.3.12/lib/action_controller/dispatcher.rb:108:in `call'
/usr/local/ruby/1.9/gems/rack-1.1.2/lib/rack/content_length.rb:13:in `call'
/usr/local/ruby/1.9/gems/rack-1.1.2/lib/rack/handler/fastcgi.rb:57:in `serve'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:103:in `block in process_request'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:153:in `with_signal_handler'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:101:in `process_request'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:78:in `block (2 levels) in process_each_request'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:77:in `each'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:77:in `block in process_each_request'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:76:in `catch'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:76:in `process_each_request'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:51:in `process!'
/usr/local/ruby/1.9/gems/rails-2.3.12/lib/fcgi_handler.rb:23:in `process!'
dispatch.fcgi:24:in `<main>'

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Craig Price at 2011-08-02 11:38 am

I have updated to 2.1.0, but sadly the #519 bug is still there. The trek continues.

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Saeed Richardson at 2011-10-06 05:34 am

Greets. I'm having the same exact problem trying to add users running ChiliProject 2.2.0 on a fresh install. Has anyone been able to figure out the problem or perhaps have a workaround for dealing with it? Thanks.

Processing ApplicationController#new (for 67.165.143.130 at 2011-10-06 01:32:49) [GET]
  Parameters: {"controller"=>"users", "action"=>"new"}

ArgumentError (invalid byte sequence in US-ASCII):
  <internal:prelude>:10:in `synchronize'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_request_handler.rb:513:in `accept_and_process_next_request'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/classic_rails/application_spawner.rb:321:in `start_request_handler'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/classic_rails/application_spawner.rb:275:in `block in handle_spawn_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/utils.rb:479:in `safe_fork'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/classic_rails/application_spawner.rb:270:in `handle_spawn_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server.rb:180:in `start'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/classic_rails/application_spawner.rb:149:in `start'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/spawn_manager.rb:219:in `block (2 levels) in spawn_rails_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/spawn_manager.rb:214:in `block in spawn_rails_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
  <internal:prelude>:10:in `synchronize'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/spawn_manager.rb:213:in `spawn_rails_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/spawn_manager.rb:132:in `spawn_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/helper-scripts/passenger-spawn-server:99:in `<main>'

Rendering /var/rapp/BlueDev/public/500.html (500 Internal Server Error)

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Piotr Całus at 2011-10-06 06:03 am

Saeed Richardson wrote:

ArgumentError (invalid byte sequence in US-ASCII)

Take a look at issue #646. I can't even log in without those two patches. Maybe it helps you too.

RE: Chiliproject 2.0.0 - partial Ruby1.9 support? - Added by Saeed Richardson at 2011-10-10 01:41 pm

Thanks for the input. I still couldn't get things to work. For the sake of time (and my sanity) I've reinstalled CP in a Ruby 1.8.7 environment. Things are running smoothly now. I'l wait until later for full 1.9.x support.

(1-8/8)