« Arts plugin and Rails 2.2.2 | Main | Copyright Hysteria »

December 03, 2008

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00e552517e3788340105362c812d970b

Listed below are links to weblogs that reference Passenger Woes - nil.controller_name in Sweepers module:

Comments

Feed You can follow this conversation by subscribing to the comment feed for this post.

Sebastian Delmont

I disagree with you when it comes to placing the blame on passenger.

You were doing something that's not standard in a Rails app: requiring application.rb. It was your call, you had your reasons to do it, and you were dealing with the impact... until you changed environments. So it's your responsibility to make sure your hack still works in the new environment.

We've had similar problems, and, just like you, our mistake was to use a plain require instead of require_dependency. It's our fault, not rails or passenger.

Josh Goebel

I'm not really saying it's 100% Passenger's fault or even that we *should* blame Passenger.

I'm just saying by virtue of making a formerly working app fail Passenger IS going to take some of the blame, whether deserved or not. These kind of things need to be better documented somewhere. It was a pain in the ass to track this issue down.

It doesn't help that the plugin's own docs recommend the approach. I've forked and updated the repository and sent pull requests to everyone though.

Sebastian Delmont

Ok, ok, I get your point... you don't need to say it three times.

And yes, you're right at saying that "passenger will be blamed" so they might want to do something about it.

Josh Goebel

Ha, it didn't add my comments and then all at once it added all of them. How weird.

Luke Chadwick

See that's where you're wrong. Passenger provides a new and efficient way of using rails. You're under no requirement to use passenger, you can keep using Mongrel clusters forever if it suits you.

Your car analogy is not a good one. Because having the pedal on the right side could be compared to a configuration, the default is for Australia to have the accelerator on the right and break on the left, with the clutch even further to the left if you're in manual. This may be different in other countries but that can hardly be blamed on the manufacturer. Just as you drive on the right side of the road in the US and we drive on the left, it's not wrong, it's just the way you're used to.

A better way of looking at it might be switching from a manual to an automatic (or vice versa). When you hop in that Automatic for the first time you try and press down on the clutch, which isn't there. Likewise if you switch from a automatic to a manual you're likely to crunch the gears a couple of times when you forget to use the clutch.

If you'd developed that application using passenger in the first place then you would have realised during the development process that that doesn't work properly. It's not wrong it's just different. Compromises have had to be made to get the result of an application that can't have the mongrel instances die and not come back.

You're in an automatic now, and some of the things you liked about manuals (stick shifts?) just aren't there anymore. Passenger is opinionated, just like Rails.

The comments to this entry are closed.

About the Author

Rails and Ruby Projects