Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

Mixing --require, --backend and --servers causes NameError

#75

I noticed a bug when using the thin command with the thin-turbo backend with the --server argument.

It seems that when you run a single process, there are no problems. Passing in --require thin-turbo and --backend Thin::Backends::Turbo works fine.

However, when you add a --server command, the --require option is not passed in the shell command, so the subprocess returns a NameError exception because it didn't require thin-turbo, and doesn't know anything about the Thin::Backends::Turbo class.

It appears as if when the --require option is parsed, the system will automatically require the file, but does not store the value in the @options ivar along with all the other passed in values. A quick hack by adding @options[:require] = file after the file was required solved the issue, however this isn't a complete solution. For example, what if multiple :require options were passed in? Say you make the value and Array so it can store one or more :require options, when the shell command is created it doesn't know how to serialize it.

The solution is pretty simple, but being that I'm not too familiar with this project history, I'd like to get some feedback from the core devs before submitting a patch to handle multi-valued options.

Reported by Dan Kubb (dkubb) · July 18th, 2008 @ 11:19 PM

State: resolved
Milestone: 1.0
Assigned to: macournoyer macournoyer

Activity

  1. macournoyer
    macournoyer
    • Milestone changed from Future to 1.0
    • State changed from new to resolved

    Should be fixed by http://github.com/macournoyer/th...

    Thx for reporting Dan!

    July 19th, 2008 @ 12:58 AM

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.