Version 5.1.4 of the Passenger application server for Ruby, Node.js, Meteor and Python has been released. Version 5.1.3 was skipped because of problems during the release process. Version 5.1.4 fixes an unfortunate side-effect from using a private keychain as part of the security update check on macOS, as well as some other minor nuisances. This release adds Ubuntu 17.04 "Zesty" support, and is packaged with Nginx 1.10.3.
The 5.1.x series of Passenger brings a plethora of improvements in uptime maximization, security and efficiency. Please be aware that you can enjoy enterprise features and sponsor the open source development directly by buying Phusion Passenger Enterprise.
Fix for System keychain bug on macOS
In 5.1.2 Passenger created a private keychain for use with the security update checker. Unfortunately the related APIs had undocumented side effects and caused issues with the system keychain which resulted in irregularities with wifi, Time-Machine, and other system services.
In Passenger 5.1.4 we reverted this change and no longer create a private keychain on macOS, and instead handle the certificate/key-pair separately to increase robustness. For more details on undoing the side effects caused by this problem, you can read here.
In addition some unnecessary logging in the non-error case was suppressed.
macOS Sierra built-in Apache support
This release adds support for compiling against the built-in Apache installation supplied with macOS 10.12 Sierra. Previous versions of Passenger failed to compile because macOS Sierra's Apache installation is incomplete and does not supply the
apr-config tool. We now work around this by using hardcoded default values for macOS.
Ubuntu 17.04 Zesty packages
We’ve added Passenger packages for the Ubuntu Zesty release. In accordance with our support policy (support all Ubuntu LTS releases that are still supported by Canonical, plus the latest Ubuntu release), this means that our packages for Ubuntu 16.10 “Yakkety” are now deprecated.
Nginx 1.10.3 preferred
The preferred Nginx version is now 1.10.3, which contains several bugfixes.
We are not moving to Nginx 1.12.0 in this release because multiple modules we include are not ready for the new Nginx version.
- [Standalone] Fixes
install-standalone-runtimecommand after regression in 5.1.2.
- Removes unnecessary logging of "No Error" from macOS Security Update Checker.
- Don't output colorized text during dependency check when output isn't a TTY, unless forced. Closes GH-1902.
- [Enterprise] Fixes
send-cloud-usagecommand when Passenger is installed from gem.
- [Enterprise] Improves robustness of machine properties reporting for pay-as-you-go cloud-license holders.
- [Enterprise] Adds support for reporting available RAM, and
CONTAINER_HOST_IDENTIFIERenvvar, to support RAM-based pricing model.
- Added additional debug level logging for troubleshooting issues with bash scripts. Closes GH-1928.
- Fix missing openssl check in
passenger-install-apache2-moduledependency checker. Closes GH-1934.
Please see the installation guide.
Upgrading to 5.1.4
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.
Download issue with old
Old versions of
gem (below 2.2.0, released in 2013) may fail to download the Passenger Enterprise gem from our rubygem hosting software (Gem in a box).
ERROR: Could not find a valid gem 'passenger-enterprise-server' (= 5.1.4), here is why: Unable to download data from https://..@www.phusionpassenger.com/enterprise_gems/ - bad response Unauthorized 401
If this happens, please upgrade to a newer version of gem:
gem install rubygems-update; update_rubygems
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 email@example.com: 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.