This is it, the first Release Candidate (internally named “pre 4”). A few more bugs have been fixed since beta 3, but if no more serious bugs are found then the next release will be 3.0.0 final.

What’s new

Autodetection of Ruby tool commands now take exe extension, –program-prefix and –program-suffix into account

Phusion Passenger had a pretty elaborate way of searching the system for Ruby tool commands like ‘gem’, ‘rake’, etc. The reason why all this search code exists is because the problem is much more complicated than just searching for “rake” in $PATH. A significant number of people have multiple Ruby versions installed on their system; let’s call these Ruby A and Ruby B. They run the Phusion Passenger installer with Ruby A and they installed the required gems with Ruby A’s RubyGems, but they have a Rake in $PATH that belongs to Ruby B. If we were to naively use the Rake in $PATH then the wrong Rake will be invoked and they would wonder why the gems they just installed aren’t detected. Our Ruby tool search code tries very hard to find the Rake that belongs to the Ruby interpreter that’s currently running.

However the code didn’t take the exe extension into consideration, as well as the –program-prefix and –program-suffix that Ruby could be configured with. For example, on some systems the Ruby command is called “ruby1.8” and Rake is called “rake1.8”. Similarly, the default JRuby binary distribution calls Rake “jrake”. We’ve now updated our search code to take this into account as well. Issue #537.

Usability and ease of installation remains to be one of our biggest goals. As you can see we’ve gone through great lengths to make sure that everything works as expected and that everything is as fool-proof as possible, even if the system might not be entirely correctly configured.

Fixed linking problems on some systems

Phusion Passenger uses math functions such as pow(). On some systems — .e.g. NetBSD, some versions of Solaris and some Linux distros — this requires Phusion Passenger to be linked to the Math library. Issue #539.

Phusion Passenger Standalone fix

When Phusion Passenger Standalone is daemonized with -d, it exits with a non-zero exit code. This has been fixed. Issue #536.

Preferred PCRE version upgraded to version 8.10

passenger-install-nginx-module automatically installs PCRE for you in case you didn’t already have it.

The documentation

Great work!
I switched to passenger 3 in production for all my apps and everything is working just fine and faster than ever.
Thank you guys for the great work!

Geoff

Walter Souto

I see that the nginx version still 0.7.67 by default. I was expecting that nginx’s version gets bumped to 0.8.52… But we can always set –nginx-version 🙂

http://www.phusion.nl/ Hongli Lai

An I didn’t see that 0.8 has now become the stable series.

tester

Works well with rails2 apps, but it’s still not straight forward with rails3/bundler

Gems are not found without config/setup_load_paths.rb
*** Exception PhusionPassenger::UnknownError in PhusionPassenger::Rack::ApplicationSpawner (Could not find activesupport-3.0.0 in any of the sources (Bundler::GemNotFound))

and with ENV[‘BUNDLE_PATH’], passenger just crashes:

[notice] child pid 45571 exit signal Bus error (10)

tester

That’s with Apache2

http://www.phusion.nl/ Hongli Lai

@tester: Rails3+Bundler is supposed to be fully supported. Can you post a bug report with more details? I’d like to see a backtrace.

Nice work! And it is so fast … Unfortunately we are getting a Stack Level too deep exception random times, when loading our app in browser. Quite strange because routing in the Rails App is done and IT happens After that. hoptoad is not notified. But seemingly it is not an app exception because it is running in other environments … We try to find the reason and report it back then …

BillH

I am using latest rvm, ruby 1.9.2-p0 and rails3. At first I was getting errors about not being able to load gems, and I did bundle install –deployment, and now I’m getting: “Could not find rake-0.8.7 in any of the sources (Bundler::GemNotFound)” and somewhat odd, I’m seeing references to r 1.8.7 in the trace following

BillH

doh; figured it out. I introduced an error updating the httpd.conf changes; fixed it and all is well.

http://www.ingamer.com/ Simon

With your 2.2.9 release you suggested that it is better to remove config.ru instead of setting RackEnv.

Is this still the case?

If you’re using ruby 1.9.2?

http://www.karmacrm.com John Paul Narowski

Nice work guys! I really love using Passenger! How does Phusion Passenger 3.0.0 RC 1 play with Ruby 1.9.2. Any idea when the full release will be?

http://www.phusion.nl/ Hongli Lai

@Simon: No, keep config.ru now.

@John: Ruby 1.9 has been supported for more than a year now. Passenger 3 still supports it.

http://betterlogic.com/roger roger

Keep up the good work.

Matt A.

Trying passenger (3.0.0.pre4) with a rails 2.3.8 app on ruby 1.9.2.
We are using authlogic (2.1.6) to login into our administration area and it fails.
But using the thin server it works fine. BTW, There is no problem with ruby 1.8.7.

I checked old post about session conflict between authlogic and passenger and made sure that we are using active_record_store. Included is the log.

Passenger 3 is great, I am looking forward to the full release. When will it be?

nginx-0.8.52 stable version has been released. Will passenger use nginx 0.8.52 anytime soon?

http://www.phusion.nl/ Hongli Lai

@Matt: According to the backtrace you’re still on Ruby 1.9.1.

http://betterlogic.com/roger roger

@Matt @Hongli I think he’s on 1.9.2, the libdir for 1.9.2 is (confusingly) still 1.9.1

Matt A.

@Hongli, I recompiled ruby1.9.2 but as @roger said, the ruby lib is still 1.9.1.
and the above problem still exist. At this time we decided to wait on a 1.9.2 version of the ruby enterprise whenever that may be…

Weldys Santos

Hi, I have had a problem when I compile passenger3 in rvm, with ruby 1.9.2-p0. When compile it, an error happen with no explication. Follow the output:

“Phusion” and “Phusion Passenger” are registered trademarks of Phusion. “Rails”, “Ruby on Rails” and the Rails logo are registered trademarks of David Heinemeier Hansson. All other trademarks are property of their respective owners.