Version 5.0.25 of the Phusion Passenger application server for Ruby, Node.js, Meteor and Python has been released. This release introduces much better Rails 5 integration, better Action Cable integration, fixes a number of crashes and bugs and adds a few improvements.
If you hadn't already, be sure to check out the many major improvements that the 5.x series of Passenger introduces. And please be aware that you can enjoy enterprise features and sponsor the open source development directly by buying Phusion Passenger Enterprise.
Rails 5 integration
Passenger integrates with Rails 5 in many ways that other application servers do not. For example, we perform static asset acceleration, we support ActionPack page caching and we automatically set HTTP caching headers for the asset pipeline. We have added new documentation which describes our integration in detail.
Action Cable integration documentation and features
Passenger has been compatible with the new Action Cable since our previous (5.0.24) release. This remains true with the recently released Rails 5.0.0.beta2.
It's very easy to set up, as you can see in our newly added documentation. We've also added a new option that helps set up Passenger Standalone with the officially recommended Action Cable configuration.
rails server command integration
For Ruby users, the instructions for using Passenger differed slightly from the traditional way of defining a gem and using
rails server. We've added support for this mechanism, so that you can now use Passenger via
rails server as well if you want to!
The other ways of using Passenger (through the
passenger start command, or integrated with Nginx / Apache) remain fully supported and unchanged.
Ubuntu 15.04 / Debian 6 packages: End of Life
Ubuntu 15.04 and Debian 6 are still supported for running Passenger, but we no longer supply packages for them, per our packaging policy.
If you are an Ubuntu 15.04 or Debian 6 user and you want to use Passenger >= 5.0.25, then please install Passenger from RubyGems/tarball or upgrade your distribution.
- Fixes a crash that occurs when using Nginx + HTTPS + Sub-requests. Closes GH-1724.
- Fixes a crash that occurs when using Nginx + syslog and a logfile for Passenger. Also fixes edge cases where the Nginx logpath would override the Passenger logpath. Closes GH-1514 (again).
- Fixes a potential crash due to memory corruption in code for
- Fixes a potential crash in the large (inbound/outbound) file buffering code.
- [Standalone] Don't reject the value 0 (meaning no limit) for
--max-request-queue-size. Closes GH-1743.
- [Union Station] Fixes a potential crash due to a wrong limit on
snprintf(introduced in 5.0.24 by GH-1633). Closes GH-1744.
- [Union Station] Fixes Union Station Node.js request introspection to allow for
application.usemethod chaining. Closes GH-1745.
- [Union Station] Fixes information about sinks sometimes missing from
- [Standalone] Adds the
- [Standalone] Adds IPv6 support to the builtin engine.
- [Standalone] Makes the
--addressoption work more reliably if the passed hostname may resolve to multiple addresses. For example, if you pass
--address localhostthen previous versions could fail because Passenger thinks it's an IPv6 address (::1) while Nginx thinks it's an IPv4 address (127.0.0.1). Hostname resolution is now done in a consistent manner.
- If one or more Union Station gateways are suffering from technical difficulties, the Union Station support code now tries more quickly to reestablish the connection.
Please see the installation guide.
Upgrading to 5.0.25
We strongly advise staying up to date with the latest version.
See also the upgrade notes below!
If you are upgrading from 4.x, please read the 5.0 upgrade notes to learn about potential upgrade caveats.
Special notes about capistrano-passenger
If you are using Capistrano and [capistrano-passenger], then it may fail with this error:
SSHKit::Runner::ExecuteError: Exception while executing as firstname.lastname@example.org: undefined method `' for nil:NilClass NoMethodError: undefined method `' for nil:NilClass Tasks: TOP => passenger:restart
This is due to an incompatibility in capistrano-passenger with Passenger 5.0.22 and later. Please upgrade capistrano-passenger to 0.2.0 or later.