Rails on openSuSE 10.3

Rails 1.2.3 used to run just fine on openSuSE 10.2 (x86_64)

I recently upgraded to openSuSE 10.3 and I cannot get neither mongrel
nor webrick up.
I tried various combinations of mongrel (0.31, 1.01, 1.03, 1.04), ruby
(1.8.6 and stable snapshot), rails (1.2.3 and 1.2.5).

I get the following error:

=> Booting Mongrel (use 'script/server webrick' to force WEBrick)
=> Rails application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
** Starting Mongrel listening at 0.0.0.0:3000
** Starting Rails with development environment...
Exiting
/usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/
mongrel.rb:15: warning: already initialized constant OPTIONS
/usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/
mongrel.rb:18: undefined method `options' for []:Array (NoMethodError)
        from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/
custom_require.rb:32:in `gem_original_require'
        from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/
custom_require.rb:32:in `require'
        from /usr/lib64/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:495:in `require'
        from /usr/lib64/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:342:in `new_constants_in'
        from /usr/lib64/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:495:in `require'
        from /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/
server.rb:39
        from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/
custom_require.rb:27:in `gem_original_require'
        from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/
custom_require.rb:27:in `require'
        from script/server:3

The whole thing explodes while executing
     ARGV.clone.options
(at least this is in mongrel.rb:18)

I tried this in irb and it works fine:

irb(main):001:0> ARGV.clone.options
NoMethodError: undefined method `options' for []:Array
        from (irb):1
irb(main):002:0> require 'optparse'
=> true
irb(main):003:0> ARGV.clone.options
=> #<OptionParser:0x2b5def15b788 @banner=nil, @default_argv=[],
@program_name=ni
l, @summary_indent=" ", @stack=[#<OptionParser::List:0x2b5def18dd00
@list=[],
@short={"-"=>#<OptionParser::Switch::NoArgument:0x2b5def18dbe8
@block=#<Proc:0x
0000000000000000@/usr/lib64/ruby/1.8/optparse.rb:694>, @short=nil,
@desc=nil, @c
...

It seems optparse is not loaded properly.

Something interesting is that if I try to force webrick, it attempts
to start BOTH webrick and then mongrel (and it crashes again).

Any ideas?

Hi,

I’m using Suse 10.3 , I don’t see a problem on my server.

=> Booting Mongrel (use ‘script/server webrick’ to force WEBrick)
=> Rails application starting on
http://0.0.0.0:3000

=> Call with -d to detach
=> Ctrl-C to shutdown server
** Starting Mongrel listening at 0.0.0.0:3000
** Starting Rails with development environment…

** Rails loaded.
** Loading any Rails specific GemPlugins
** Signals ready. TERM => stop. USR2 => restart. INT => stop (no restart).
** Rails signals registered. HUP => reload (without restart). It might not work well.

** Mongrel available at 0.0.0.0:3000
** Use CTRL-C to stop.

My update from Suse 10.2 was done via a new install (format partition …)

Maybe something to try:

remove Rails via gem and install again.

Luc.

Well, I found that when creating a Rails app from scratch, then
Mongrel starts without any problems. I am thinking there is a plugin
or a dependency causing my problems, but how can I trace the culprit?
Any ideas?

Re-installing Rails (various versions) did not help.
It seems that my problem is not Rails itself or Mongrel...

Did you check the Mongrel log files?

 Luc.