passenger 5.3.4 → 6.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +69 -0
- data/CONTRIBUTORS +1 -0
- data/README.md +2 -1
- data/Rakefile +0 -5
- data/build/agent.rb +6 -3
- data/build/cxx_tests.rb +28 -19
- data/build/integration_tests.rb +6 -2
- data/build/misc.rb +2 -1
- data/build/packaging.rb +2 -0
- data/build/support/cplusplus.rb +2 -2
- data/build/support/cxx_dependency_map.rb +2651 -2189
- data/dev/colorize-logs +272 -0
- data/dev/show-latest-crashlog-dir +27 -0
- data/resources/templates/standalone/http.erb +2 -0
- data/resources/templates/standalone/server.erb +1 -0
- data/src/agent/AgentMain.cpp +4 -0
- data/src/agent/Core/AdminPanelConnector.h +6 -6
- data/src/agent/Core/ApiServer.h +4 -4
- data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +2 -2
- data/src/agent/Core/ApplicationPool/Context.h +5 -1
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +2 -2
- data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +2 -1
- data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +3 -3
- data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +13 -20
- data/src/agent/Core/ApplicationPool/Group.h +4 -2
- data/src/agent/Core/ApplicationPool/Implementation.cpp +5 -5
- data/src/agent/Core/ApplicationPool/Options.h +42 -38
- data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +2 -1
- data/src/agent/Core/ApplicationPool/Pool.h +4 -4
- data/src/agent/Core/ApplicationPool/Process.h +13 -15
- data/src/agent/Core/ApplicationPool/Socket.h +5 -5
- data/src/agent/Core/ApplicationPool/TestSession.h +3 -3
- data/src/agent/Core/Config.h +50 -10
- data/src/agent/Core/ConfigChange.cpp +13 -1
- data/src/agent/Core/Controller/Config.h +41 -17
- data/src/agent/Core/Controller/ForwardResponse.cpp +4 -0
- data/src/agent/Core/Controller/InitRequest.cpp +14 -8
- data/src/agent/Core/Controller/InitializationAndShutdown.cpp +5 -0
- data/src/agent/Core/Controller/SendRequest.cpp +9 -9
- data/src/agent/Core/Controller/TurboCaching.h +2 -2
- data/src/agent/Core/Controller.h +7 -5
- data/src/agent/Core/CoreMain.cpp +204 -60
- data/src/agent/Core/OptionParser.h +20 -3
- data/src/agent/Core/ResponseCache.h +3 -3
- data/src/agent/Core/SecurityUpdateChecker.h +4 -2
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +1 -1
- data/src/agent/Core/SpawningKit/Config.h +3 -2
- data/src/agent/Core/SpawningKit/Context.h +8 -2
- data/src/agent/Core/SpawningKit/DirectSpawner.h +4 -4
- data/src/agent/Core/SpawningKit/DummySpawner.h +3 -3
- data/src/agent/Core/SpawningKit/ErrorRenderer.h +1 -1
- data/src/agent/Core/SpawningKit/Exceptions.h +21 -14
- data/src/agent/Core/SpawningKit/Factory.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +14 -2
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +3 -3
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +1 -1
- data/src/agent/Core/SpawningKit/Journey.h +4 -5
- data/src/agent/Core/SpawningKit/PipeWatcher.h +1 -1
- data/src/agent/Core/SpawningKit/README.md +34 -17
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +1 -1
- data/src/agent/Core/SpawningKit/Result.h +20 -8
- data/src/agent/Core/SpawningKit/SmartSpawner.h +7 -7
- data/src/agent/Core/SpawningKit/Spawner.h +25 -8
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +17 -7
- data/src/agent/Core/TelemetryCollector.h +681 -0
- data/src/agent/ExecHelper/ExecHelperMain.cpp +1 -1
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +198 -0
- data/src/agent/README.md +1 -1
- data/src/agent/Shared/ApiAccountUtils.h +1 -1
- data/src/agent/Shared/ApiServerUtils.h +3 -3
- data/src/agent/Shared/ApplicationPoolApiKey.h +2 -2
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +324 -98
- data/src/agent/Shared/Fundamentals/AbortHandler.h +31 -4
- data/src/agent/Shared/Fundamentals/Initialization.cpp +4 -5
- data/src/agent/Shared/Fundamentals/Initialization.h +9 -1
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +1 -1
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +4 -3
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +3 -3
- data/src/agent/Watchdog/ApiServer.h +3 -3
- data/src/agent/Watchdog/Config.h +24 -5
- data/src/agent/Watchdog/CoreWatcher.cpp +2 -2
- data/src/agent/Watchdog/WatchdogMain.cpp +97 -28
- data/src/apache2_module/Config.cpp +14 -14
- data/src/apache2_module/Config.h +8 -16
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +510 -481
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +39 -17
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +5 -0
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +69 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +31 -1
- data/src/apache2_module/ConfigGeneral/Common.h +45 -0
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +17 -1
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +16 -1
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +19 -5
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +26 -9
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +19 -1
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +10 -1
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +14 -1
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +11 -1
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +36 -1
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +34 -1
- data/src/apache2_module/DirectoryMapper.h +36 -37
- data/src/apache2_module/Hooks.cpp +27 -8
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +20 -0
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +48 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +36 -1
- data/src/cxx_supportlib/{Utils → Algorithms}/Hasher.cpp +2 -2
- data/src/cxx_supportlib/{Utils → Algorithms}/Hasher.h +4 -4
- data/src/cxx_supportlib/AppLocalConfigFileUtils.h +148 -0
- data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +147 -0
- data/src/cxx_supportlib/AppTypeDetector/CBindings.h +75 -0
- data/src/cxx_supportlib/{AppTypes.h → AppTypeDetector/Detector.h} +92 -131
- data/src/cxx_supportlib/ConfigKit/README.md +90 -2
- data/src/cxx_supportlib/ConfigKit/Schema.h +60 -15
- data/src/cxx_supportlib/ConfigKit/Store.h +129 -5
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/{Utils → DataStructures}/HashMap.h +4 -4
- data/src/cxx_supportlib/DataStructures/HashedStaticString.h +5 -5
- data/src/cxx_supportlib/DataStructures/LString.h +3 -3
- data/src/cxx_supportlib/{Utils → DataStructures}/StringMap.h +36 -36
- data/src/cxx_supportlib/FileTools/FileManip.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +2 -2
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +1 -1
- data/src/cxx_supportlib/Hooks.h +2 -2
- data/src/cxx_supportlib/{Utils → IOTools}/BufferedIO.h +5 -5
- data/src/cxx_supportlib/{Utils → IOTools}/IOUtils.cpp +4 -3
- data/src/cxx_supportlib/{Utils → IOTools}/IOUtils.h +3 -3
- data/src/cxx_supportlib/{Utils → IOTools}/MessageIO.h +7 -7
- data/src/cxx_supportlib/{MessageReadersWriters.h → IOTools/MessageSerialization.h} +5 -5
- data/src/cxx_supportlib/InstanceDirectory.h +4 -4
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +3 -3
- data/src/cxx_supportlib/{Utils → JsonTools}/JsonUtils.h +5 -5
- data/src/cxx_supportlib/LoggingKit/Context.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +3 -3
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +2 -2
- data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +3 -3
- data/src/cxx_supportlib/ProcessManagement/Ruby.h +7 -2
- data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +19 -12
- data/src/cxx_supportlib/ProcessManagement/Spawn.h +21 -2
- data/src/cxx_supportlib/ProcessManagement/Utils.h +10 -0
- data/src/cxx_supportlib/RandomGenerator.h +2 -2
- data/src/cxx_supportlib/ResourceLocator.h +1 -1
- data/src/cxx_supportlib/{Crypto.cpp → SecurityKit/Crypto.cpp} +4 -4
- data/src/cxx_supportlib/{Crypto.h → SecurityKit/Crypto.h} +4 -4
- data/src/cxx_supportlib/{Utils → SecurityKit}/MemZeroGuard.h +0 -0
- data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +2 -2
- data/src/cxx_supportlib/ServerKit/Channel.h +1 -1
- data/src/cxx_supportlib/ServerKit/ClientRef.h +17 -7
- data/src/cxx_supportlib/ServerKit/Context.h +2 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +3 -3
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +17 -7
- data/src/cxx_supportlib/ServerKit/HttpServer.h +16 -10
- data/src/cxx_supportlib/ServerKit/Server.h +3 -4
- data/src/cxx_supportlib/{Utils → StrIntTools}/DateParsing.h +5 -5
- data/src/cxx_supportlib/{Utils → StrIntTools}/StrIntUtils.cpp +3 -3
- data/src/cxx_supportlib/{Utils → StrIntTools}/StrIntUtils.h +0 -0
- data/src/cxx_supportlib/{Utils → StrIntTools}/StrIntUtilsNoStrictAliasing.cpp +12 -12
- data/src/cxx_supportlib/{Utils → StrIntTools}/StringScanning.h +5 -5
- data/src/cxx_supportlib/{Utils → StrIntTools}/Template.h +30 -5
- data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +88 -0
- data/src/cxx_supportlib/{Utils → SystemTools}/ProcessMetricsCollector.h +15 -12
- data/src/cxx_supportlib/{Utils → SystemTools}/SystemMetricsCollector.h +3 -3
- data/src/cxx_supportlib/{Utils → SystemTools}/SystemTime.cpp +1 -1
- data/src/cxx_supportlib/{Utils → SystemTools}/SystemTime.h +0 -0
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.hpp +3 -3
- data/src/cxx_supportlib/Utils/Curl.h +2 -2
- data/src/cxx_supportlib/Utils/FileChangeChecker.h +2 -2
- data/src/cxx_supportlib/Utils/MessagePassing.h +1 -1
- data/src/cxx_supportlib/Utils/SpeedMeter.h +2 -2
- data/src/cxx_supportlib/Utils/Timer.h +2 -2
- data/src/cxx_supportlib/Utils/VariantMap.h +3 -3
- data/src/cxx_supportlib/Utils.cpp +2 -2
- data/src/cxx_supportlib/WatchdogLauncher.h +3 -3
- data/src/cxx_supportlib/WebSocketCommandReverseServer.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +85 -0
- data/src/cxx_supportlib/{Utils/MemoryBarrier.h → WrapperRegistry/CBindings.h} +30 -27
- data/src/cxx_supportlib/WrapperRegistry/Entry.h +112 -0
- data/src/cxx_supportlib/WrapperRegistry/README.md +37 -0
- data/src/cxx_supportlib/WrapperRegistry/Registry.h +309 -0
- data/src/cxx_supportlib/vendor-modified/psg_sysqueue.h +3 -0
- data/src/helper-scripts/download_binaries/extconf.rb +6 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +32 -0
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +12 -0
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +36 -0
- data/src/nginx_module/Configuration.c +23 -3
- data/src/nginx_module/ContentHandler.c +331 -32
- data/src/nginx_module/ContentHandler.h +8 -3
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +10 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +27 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +3 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +7 -0
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +11 -0
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +23 -0
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +8 -0
- data/src/nginx_module/config +2 -1
- data/src/nginx_module/ngx_http_passenger_module.c +9 -3
- data/src/nginx_module/ngx_http_passenger_module.h +10 -3
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +19 -0
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +19 -16
- data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +4 -4
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +6 -2
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +6 -2
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/message_channel.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +7 -3
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +29 -0
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +20 -19
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +22 -4
- data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +33 -13
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +22 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +4 -1
- data/src/ruby_supportlib/phusion_passenger.rb +7 -5
- data/src/schema_printer/SchemaPrinterMain.cpp +2 -0
- metadata +40 -89
- data/.editorconfig +0 -134
- data/CODE_OF_CONDUCT.md +0 -52
- data/dev/boost-patches/0001-Patch-boost-thread-so-that-oxt-thread-can-use-it.patch +0 -48
- data/dev/boost-patches/0002-Make-boost-thread_interrupted-derive-from-oxt-tracab.patch +0 -33
- data/dev/boost-patches/0003-Disable-a-Clang-pragma-to-prevent-warnings-on-OS-X.patch +0 -25
- data/dev/ci/README.md +0 -134
- data/dev/ci/lib/functions.sh +0 -129
- data/dev/ci/lib/set-container-envvars.sh +0 -53
- data/dev/ci/lib/setup-container.sh +0 -46
- data/dev/ci/run-tests-natively +0 -24
- data/dev/ci/run-tests-with-docker +0 -42
- data/dev/ci/scripts/debug-console-wrapper.sh +0 -29
- data/dev/ci/scripts/docker-entrypoint-stage2.sh +0 -17
- data/dev/ci/scripts/docker-entrypoint.sh +0 -17
- data/dev/ci/scripts/inituidgid +0 -17
- data/dev/ci/scripts/run-tests-natively-stage2.sh +0 -17
- data/dev/ci/scripts/setup-host-natively.sh +0 -11
- data/dev/ci/setup-host +0 -56
- data/dev/ci/tests/apache2/run +0 -6
- data/dev/ci/tests/apache2/setup +0 -4
- data/dev/ci/tests/binaries/Jenkinsfile +0 -105
- data/dev/ci/tests/binaries/build-linux +0 -38
- data/dev/ci/tests/binaries/build-macos +0 -40
- data/dev/ci/tests/binaries/prepare-macos +0 -38
- data/dev/ci/tests/binaries/test-linux +0 -45
- data/dev/ci/tests/binaries/test-macos +0 -38
- data/dev/ci/tests/cxx/run +0 -9
- data/dev/ci/tests/cxx/setup +0 -4
- data/dev/ci/tests/debian/Jenkinsfile +0 -89
- data/dev/ci/tests/debian/run +0 -60
- data/dev/ci/tests/nginx/run +0 -5
- data/dev/ci/tests/nginx/setup +0 -4
- data/dev/ci/tests/nginx-dynamic/run +0 -20
- data/dev/ci/tests/nginx-dynamic/setup +0 -4
- data/dev/ci/tests/nodejs/run +0 -4
- data/dev/ci/tests/nodejs/setup +0 -4
- data/dev/ci/tests/rpm/Jenkinsfile +0 -68
- data/dev/ci/tests/rpm/run +0 -63
- data/dev/ci/tests/ruby/run +0 -4
- data/dev/ci/tests/ruby/setup +0 -4
- data/dev/ci/tests/source-packaging/run +0 -4
- data/dev/ci/tests/source-packaging/setup +0 -4
- data/dev/ci/tests/standalone/run +0 -4
- data/dev/ci/tests/standalone/setup +0 -4
- data/dev/configkit-schemas/index.json +0 -1748
- data/dev/configkit-schemas/update_schema_inline_comments.rb +0 -118
- data/dev/rack.test/config.ru +0 -5
- data/dev/rack.test/public/asset.txt +0 -1
- data/dev/vagrant/apache_default_site.conf +0 -35
- data/dev/vagrant/apache_passenger.conf +0 -5
- data/dev/vagrant/apache_passenger.load +0 -1
- data/dev/vagrant/apache_ports.conf +0 -24
- data/dev/vagrant/apache_rack_test.conf +0 -9
- data/dev/vagrant/bashrc +0 -23
- data/dev/vagrant/nginx.conf +0 -39
- data/dev/vagrant/nginx_rakefile +0 -33
- data/dev/vagrant/nginx_start +0 -32
- data/dev/vagrant/provision.sh +0 -117
- data/dev/vagrant/sudoers.conf +0 -5
- data/resources/templates/error_renderer/.editorconfig +0 -19
- data/src/cxx_supportlib/AppTypes.cpp +0 -109
- data/src/cxx_supportlib/vendor-modified/SmallVector.h +0 -653
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d32b7b733ff8e0ad7bbfba5e03e4550f5688c991
|
4
|
+
data.tar.gz: 9fd2550bd78fdbd5a7d40ebee8e41cd0fe748a3d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 353d24ed6888fc0eb1aa81308a7d81390f87e8b51c67ae384b68982cc4cc493d3a3129dc53087c17459e69c8b641728c03a8033f1b2ca8aef653c0dfdd001858
|
7
|
+
data.tar.gz: 1a9d27b7d986f2249bc5536b0002ec17b5c0c2b1f9d638d1ccd144dc3079398ecc1b2b773ba79d2c5ed66a8a95fba8fafd77981b44fca338f463396ef7970fde
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,72 @@
|
|
1
|
+
Release 6.0.1
|
2
|
+
-------------
|
3
|
+
|
4
|
+
* Adds Ubuntu 18.10 "Cosmic" packages.
|
5
|
+
* Skips trying to set oom score in LXC container environments. Closes GH-2143.
|
6
|
+
* Fixes an issue during the GLS startup handshake where ephemeral ports could be exhausted. Closes GH-2144.
|
7
|
+
* Updated Ruby versions used in precompiled binaries (used for e.g. gem installs) to include 2.5.3, and 2.4.5 (removed: 2.4.4).
|
8
|
+
* Bumps the preferred Nginx version to 1.15.8.
|
9
|
+
* Updated various library versions used in precompiled binaries (used for e.g. gem installs):
|
10
|
+
|
11
|
+
- Curl: 7.62.0 -> 7.63.0
|
12
|
+
- Git: 2.19.2 -> 2.20.1
|
13
|
+
- Gnupg: 2.2.11 -> 2.2.12
|
14
|
+
- libassuan: 2.5.1 -> 2.5.2
|
15
|
+
- libgpg_error: 1.32 -> 1.33
|
16
|
+
- Ruby: 2.4.4 -> 2.4.5, + 2.5.3
|
17
|
+
- RubyGems: 2.7.6 -> 3.0.1
|
18
|
+
|
19
|
+
|
20
|
+
Release 6.0.0
|
21
|
+
-------------
|
22
|
+
|
23
|
+
* Introduces support for *all* programming languages. Yes that's right... Java, Elixir, Go — Passenger now supports them all! This effort is called "generic language support".
|
24
|
+
* Bumps the preferred Nginx version to 1.15.7.
|
25
|
+
* Introduces anonymous usage telemetry, which helps us improve Passenger. Please read the docs on what data is collected and how to disable this.
|
26
|
+
* [Nginx] Introduces a new option "passenger_request_buffering on|off", to allow disabling request body buffering. This is only supported in Nginx >= 1.15.3. Closes GH-2121.
|
27
|
+
* Updated various library versions used in precompiled binaries (used for e.g. gem installs):
|
28
|
+
|
29
|
+
- OpenSSL: 1.0.2q (was: 1.0.2p)
|
30
|
+
- libcurl: 7.62.0 (was: 7.61.1)
|
31
|
+
- Ruby: 2.3.8 (was: 2.3.7)
|
32
|
+
|
33
|
+
|
34
|
+
Release 5.3.7
|
35
|
+
-------------
|
36
|
+
|
37
|
+
* Fixes package installation issues on Ubuntu 18.04. These issues were caused by an update released by Ubuntu on the nginx-common package. Closes GH-2122, GH-2140.
|
38
|
+
* Fixes compilation problems and warnings with GCC 8.2. Tested on Alpine Linux edge 2018-11-05. Closes GH-2139.
|
39
|
+
* Fixes compatibility with libcurl 7.62.0. Contributed by Po-Chuan Hsieh (@sunpoet).
|
40
|
+
* Changes minimum supported macOS version to 10.11 El Capitan.
|
41
|
+
* Removes packages for Ubuntu 17.10 Artful.
|
42
|
+
|
43
|
+
|
44
|
+
Release 5.3.6
|
45
|
+
-------------
|
46
|
+
|
47
|
+
* Fixes smart spawning. A regression in 5.3.5 (due to a refactoring) made it so that Passenger only used the direct spawning method. This issue was mostly noticeable in the form of increased process spawning times between 5.3.4 and 5.3.5.
|
48
|
+
* Fixes Passenger Core and application processes staying on the Watchdog's OOM score (unkillable). Closes GH-2105.
|
49
|
+
* Fixes "mach_vm_map failed" warnings on macOS >= High Sierra. These warnings were harmless, but annoying. Closes GH-2101.
|
50
|
+
* Fixes `passenger-config compile-agent` compilation with optimizations. The optimization flags were not properly passed to the compiler.
|
51
|
+
* Fixes a crash that could occur when HTTP clients send a chunked transfer-encoding body containing a chunk larger than 429496729 bytes.
|
52
|
+
* Improves detection of the system Apache's include headers on macOS High Sierra and later.
|
53
|
+
* Fixes RVM gemset detection on RVM 1.29.
|
54
|
+
* No longer supplies precompiled Ruby extensions for Ruby 1.9.3 and 2.0.0. When running Ruby 1.9.3 and 2.0.0, Passenger will attempt to compile from source instead.
|
55
|
+
|
56
|
+
|
57
|
+
Release 5.3.5
|
58
|
+
-------------
|
59
|
+
|
60
|
+
* Fixes Ubuntu 18.04 package installation problems due to Nginx version mismatch. Closes GH-2122.
|
61
|
+
* Improves usability of crash reports. Crash reports are no longer dumped in one big chunk to stderr. Instead, they are now dumped into multiple files, making it easy to inspect relevant reports.
|
62
|
+
* Fixes some crashes that only occur with log level 7.
|
63
|
+
* Downloads binaries from the newly-introduced Github mirror. This improves the reliability of binary downloads.
|
64
|
+
* Updated various library versions used in precompiled binaries (used for e.g. gem installs):
|
65
|
+
|
66
|
+
- OpenSSL: 1.0.2p (was: 1.0.2o)
|
67
|
+
- libcurl: 7.61.1 (was: 7.60.0)
|
68
|
+
|
69
|
+
|
1
70
|
Release 5.3.4
|
2
71
|
-------------------------------
|
3
72
|
|
data/CONTRIBUTORS
CHANGED
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
[Phusion Passenger™](https://www.phusionpassenger.com/) is a web server and application server, designed to be fast, robust and lightweight. It takes a lot of complexity out of deploying web apps, adds powerful enterprise-grade features that are useful in production, and makes administration much easier and less complex. Phusion Passenger supports Ruby, Python, Node.js and Meteor, and is being used by high-profile companies such as **Apple, Pixar, New York Times, AirBnB, Juniper** etc as well as [over 650.000 websites](http://trends.builtwith.com/Web-Server/Phusion-Passenger).
|
6
6
|
|
7
|
-
<a href="https://
|
7
|
+
<a href="https://vimeo.com/224923750"><img src="https://github.com/phusion/passenger/blob/stable-5.2/images/justin.png" height="400"></a><br><em>Phusion Passenger - the smart app server</em>
|
8
8
|
|
9
9
|
<p>What makes Passenger so fast and reliable is its <strong>C++</strong> core, its <strong>zero-copy</strong> architecture, its <strong>watchdog</strong> system and its <strong>hybrid</strong> evented, multi-threaded and multi-process design.</p>
|
10
10
|
|
@@ -19,6 +19,7 @@ Regardless of if you’re running Passenger open source or you’re one of our e
|
|
19
19
|
- [Website](https://www.phusionpassenger.com/)
|
20
20
|
- [Fuse Panel](https://www.phusionpassenger.com/fuse-panel)
|
21
21
|
- [Documentation & Support](https://www.phusionpassenger.com/support)
|
22
|
+
- [Consultancy](https://www.phusion.nl/consultancy)
|
22
23
|
- [Twitter](https://twitter.com/phusion_nl)
|
23
24
|
- [Blog](http://blog.phusion.nl/)
|
24
25
|
|
data/Rakefile
CHANGED
@@ -44,11 +44,6 @@ end
|
|
44
44
|
|
45
45
|
require("#{SOURCE_ROOT}/config") if File.exist?("#{SOURCE_ROOT}/config.rb")
|
46
46
|
require_build_system_file 'basics'
|
47
|
-
|
48
|
-
if PlatformInfo.os_name_simple == 'macosx'
|
49
|
-
ENV["MACOSX_DEPLOYMENT_TARGET"] ||= PlatformInfo.os_version
|
50
|
-
end
|
51
|
-
|
52
47
|
if boolean_option('ONLY_RUBY')
|
53
48
|
require_build_system_file 'ruby_extension'
|
54
49
|
else
|
data/build/agent.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# Phusion Passenger - https://www.phusionpassenger.com/
|
2
|
-
# Copyright (c) 2010-
|
2
|
+
# Copyright (c) 2010-2018 Phusion Holding B.V.
|
3
3
|
#
|
4
4
|
# "Passenger", "Phusion Passenger" and "Union Station" are registered
|
5
5
|
# trademarks of Phusion Holding B.V.
|
@@ -44,7 +44,9 @@ AGENT_OBJECTS = {
|
|
44
44
|
"#{AGENT_OUTPUT_DIR}SpawnEnvSetupper.o" =>
|
45
45
|
"src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp",
|
46
46
|
"#{AGENT_OUTPUT_DIR}ExecHelperMain.o" =>
|
47
|
-
"src/agent/ExecHelper/ExecHelperMain.cpp"
|
47
|
+
"src/agent/ExecHelper/ExecHelperMain.cpp",
|
48
|
+
"#{AGENT_OUTPUT_DIR}FileReadHelperMain.o" =>
|
49
|
+
"src/agent/FileReadHelper/FileReadHelperMain.cpp"
|
48
50
|
}
|
49
51
|
AGENT_AUTOGENERATED_SOURCES = {
|
50
52
|
"src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h" => [
|
@@ -75,6 +77,7 @@ let(:agent_ldflags) do
|
|
75
77
|
if PlatformInfo.os_name_simple == 'macosx'
|
76
78
|
# Enable dead symbol elimination on OS X.
|
77
79
|
result << '-Wl,-dead_strip'
|
80
|
+
|
78
81
|
if PlatformInfo.os_version >= '10.13'
|
79
82
|
result << PlatformInfo.openssl_extra_ldflags
|
80
83
|
result << '-lcrypto'
|
@@ -141,7 +144,7 @@ desc 'Build the agent'
|
|
141
144
|
task :agent => AGENT_TARGET
|
142
145
|
|
143
146
|
task 'common:clean' do
|
144
|
-
sh
|
147
|
+
sh('rm', '-rf', AGENT_TARGET, *AGENT_OBJECTS.keys)
|
145
148
|
end
|
146
149
|
|
147
150
|
def create_agent_auto_generated_source_task(source, dependencies)
|
data/build/cxx_tests.rb
CHANGED
@@ -56,7 +56,9 @@ TEST_CXX_OBJECTS = {
|
|
56
56
|
"#{TEST_OUTPUT_DIR}cxx/Core/ResponseCacheTest.o" =>
|
57
57
|
"test/cxx/Core/ResponseCacheTest.cpp",
|
58
58
|
"#{TEST_OUTPUT_DIR}cxx/Core/SecurityUpdateCheckerTest.o" =>
|
59
|
-
|
59
|
+
"test/cxx/Core/SecurityUpdateCheckerTest.cpp",
|
60
|
+
"#{TEST_OUTPUT_DIR}cxx/Core/TelemetryCollectorTest.o" =>
|
61
|
+
"test/cxx/Core/TelemetryCollectorTest.cpp",
|
60
62
|
"#{TEST_OUTPUT_DIR}cxx/Core/ControllerTest.o" =>
|
61
63
|
"test/cxx/Core/ControllerTest.cpp",
|
62
64
|
|
@@ -86,6 +88,8 @@ TEST_CXX_OBJECTS = {
|
|
86
88
|
"test/cxx/ConfigKit/TranslationTest.cpp",
|
87
89
|
"#{TEST_OUTPUT_DIR}cxx/ConfigKit/SubSchemaTest.o" =>
|
88
90
|
"test/cxx/ConfigKit/SubSchemaTest.cpp",
|
91
|
+
"#{TEST_OUTPUT_DIR}cxx/ConfigKit/NestedSchemaTest.o" =>
|
92
|
+
"test/cxx/ConfigKit/NestedSchemaTest.cpp",
|
89
93
|
"#{TEST_OUTPUT_DIR}cxx/MemoryKit/MbufTest.o" =>
|
90
94
|
"test/cxx/MemoryKit/MbufTest.cpp",
|
91
95
|
"#{TEST_OUTPUT_DIR}cxx/MemoryKit/PallocTest.o" =>
|
@@ -94,42 +98,42 @@ TEST_CXX_OBJECTS = {
|
|
94
98
|
"test/cxx/DataStructures/LStringTest.cpp",
|
95
99
|
"#{TEST_OUTPUT_DIR}cxx/DataStructures/StringKeyTableTest.o" =>
|
96
100
|
"test/cxx/DataStructures/StringKeyTableTest.cpp",
|
101
|
+
"#{TEST_OUTPUT_DIR}cxx/DataStructures/StringMapTest.o" =>
|
102
|
+
"test/cxx/DataStructures/StringMapTest.cpp",
|
97
103
|
"#{TEST_OUTPUT_DIR}cxx/FileTools/PathSecurityCheckTest.o" =>
|
98
104
|
"test/cxx/FileTools/PathSecurityCheckTest.cpp",
|
99
|
-
"#{TEST_OUTPUT_DIR}cxx/
|
100
|
-
"test/cxx/
|
105
|
+
"#{TEST_OUTPUT_DIR}cxx/IOTools/MessageSerializationTest.o" =>
|
106
|
+
"test/cxx/IOTools/MessageSerializationTest.cpp",
|
101
107
|
"#{TEST_OUTPUT_DIR}cxx/StaticStringTest.o" =>
|
102
108
|
"test/cxx/StaticStringTest.cpp",
|
103
109
|
"#{TEST_OUTPUT_DIR}cxx/FileChangeCheckerTest.o" =>
|
104
110
|
"test/cxx/FileChangeCheckerTest.cpp",
|
105
111
|
"#{TEST_OUTPUT_DIR}cxx/FileDescriptorTest.o" =>
|
106
112
|
"test/cxx/FileDescriptorTest.cpp",
|
107
|
-
"#{TEST_OUTPUT_DIR}cxx/
|
108
|
-
"test/cxx/
|
113
|
+
"#{TEST_OUTPUT_DIR}cxx/SystemTools/ProcessMetricsCollectorTest.o" =>
|
114
|
+
"test/cxx/SystemTools/ProcessMetricsCollectorTest.cpp",
|
115
|
+
"#{TEST_OUTPUT_DIR}cxx/SystemTools/SystemTimeTest.o" =>
|
116
|
+
"test/cxx/SystemTools/SystemTimeTest.cpp",
|
109
117
|
"#{TEST_OUTPUT_DIR}cxx/CachedFileStatTest.o" =>
|
110
118
|
"test/cxx/CachedFileStatTest.cpp",
|
111
|
-
"#{TEST_OUTPUT_DIR}cxx/BufferedIOTest.o" =>
|
112
|
-
"test/cxx/BufferedIOTest.cpp",
|
113
|
-
"#{TEST_OUTPUT_DIR}cxx/
|
114
|
-
"test/cxx/
|
119
|
+
"#{TEST_OUTPUT_DIR}cxx/IOTools/BufferedIOTest.o" =>
|
120
|
+
"test/cxx/IOTools/BufferedIOTest.cpp",
|
121
|
+
"#{TEST_OUTPUT_DIR}cxx/IOTools/IOUtilsTest.o" =>
|
122
|
+
"test/cxx/IOTools/IOUtilsTest.cpp",
|
123
|
+
"#{TEST_OUTPUT_DIR}cxx/IOTools/MessageIOTest.o" =>
|
124
|
+
"test/cxx/IOTools/MessageIOTest.cpp",
|
115
125
|
"#{TEST_OUTPUT_DIR}cxx/MessagePassingTest.o" =>
|
116
126
|
"test/cxx/MessagePassingTest.cpp",
|
117
127
|
"#{TEST_OUTPUT_DIR}cxx/VariantMapTest.o" =>
|
118
128
|
"test/cxx/VariantMapTest.cpp",
|
119
|
-
"#{TEST_OUTPUT_DIR}cxx/StringMapTest.o" =>
|
120
|
-
"test/cxx/StringMapTest.cpp",
|
121
|
-
"#{TEST_OUTPUT_DIR}cxx/ProcessMetricsCollectorTest.o" =>
|
122
|
-
"test/cxx/ProcessMetricsCollectorTest.cpp",
|
123
129
|
"#{TEST_OUTPUT_DIR}cxx/DateParsingTest.o" =>
|
124
130
|
"test/cxx/DateParsingTest.cpp",
|
125
131
|
"#{TEST_OUTPUT_DIR}cxx/UtilsTest.o" =>
|
126
132
|
"test/cxx/UtilsTest.cpp",
|
127
|
-
"#{TEST_OUTPUT_DIR}cxx/
|
128
|
-
"test/cxx/
|
129
|
-
"#{TEST_OUTPUT_DIR}cxx/
|
130
|
-
"test/cxx/
|
131
|
-
"#{TEST_OUTPUT_DIR}cxx/TemplateTest.o" =>
|
132
|
-
"test/cxx/TemplateTest.cpp",
|
133
|
+
"#{TEST_OUTPUT_DIR}cxx/StrIntTools/StrIntUtilsTest.o" =>
|
134
|
+
"test/cxx/StrIntTools/StrIntUtilsTest.cpp",
|
135
|
+
"#{TEST_OUTPUT_DIR}cxx/StrIntTools/TemplateTest.o" =>
|
136
|
+
"test/cxx/StrIntTools/TemplateTest.cpp",
|
133
137
|
"#{TEST_OUTPUT_DIR}cxx/Base64DecodingTest.o" =>
|
134
138
|
"test/cxx/Base64DecodingTest.cpp"
|
135
139
|
}
|
@@ -210,6 +214,11 @@ desc "Run unit tests for the C++ components"
|
|
210
214
|
task 'test:cxx' => dependencies do
|
211
215
|
args = ENV['GROUPS'].to_s.split(";").map{ |name| "-g #{name}" }
|
212
216
|
|
217
|
+
if level = string_option('LOG_LEVEL')
|
218
|
+
args << '-l'
|
219
|
+
args << level
|
220
|
+
end
|
221
|
+
|
213
222
|
command = "#{File.expand_path(TEST_CXX_TARGET)} #{args.join(' ')}".strip
|
214
223
|
if boolean_option('GDB')
|
215
224
|
command = "gdb --args #{command}"
|
data/build/integration_tests.rb
CHANGED
@@ -106,7 +106,7 @@ task 'test:integration:native_packaging' do
|
|
106
106
|
# We should run the tests in /usr/bin/ruby too, so that native_support is compiled for
|
107
107
|
# the same Ruby.
|
108
108
|
prefix = "env NATIVE_PACKAGING_METHOD=homebrew " +
|
109
|
-
"LOCATIONS_INI=/usr/local/Cellar/passenger/#{VERSION_STRING}/libexec/src/ruby_supportlib/phusion_passenger/locations.ini"
|
109
|
+
"LOCATIONS_INI=/usr/local/Cellar/passenger/#{PhusionPassenger::VERSION_STRING}/libexec/src/ruby_supportlib/phusion_passenger/locations.ini"
|
110
110
|
if PlatformInfo.in_rvm?
|
111
111
|
prefix << " rvm-exec system /usr/bin/ruby -S"
|
112
112
|
end
|
@@ -136,5 +136,9 @@ end
|
|
136
136
|
|
137
137
|
desc "Run source packaging tests"
|
138
138
|
task 'test:source_packaging' do
|
139
|
-
|
139
|
+
command = 'bundle exec rspec -f s -c test/integration_tests/source_packaging_test.rb'
|
140
|
+
if grep = string_option('E')
|
141
|
+
command << " -e #{shesc grep}"
|
142
|
+
end
|
143
|
+
sh(command)
|
140
144
|
end
|
data/build/misc.rb
CHANGED
@@ -190,11 +190,12 @@ task :compile_app => dependencies do
|
|
190
190
|
*CXX_SUPPORTLIB_INCLUDE_PATHS
|
191
191
|
],
|
192
192
|
:flags => [
|
193
|
+
OPTIMIZE ? "-O" : nil,
|
193
194
|
"-DSTANDALONE",
|
194
195
|
libev_cflags,
|
195
196
|
libuv_cflags,
|
196
197
|
websocketpp_cflags
|
197
|
-
]
|
198
|
+
].compact
|
198
199
|
)
|
199
200
|
create_cxx_executable(exe,
|
200
201
|
object,
|
data/build/packaging.rb
CHANGED
@@ -217,6 +217,8 @@ task :fakeroot => [:apache2, :nginx, 'nginx:as_dynamic_module', :doc] do
|
|
217
217
|
# the above code
|
218
218
|
headers.concat([
|
219
219
|
["src/cxx_supportlib/Exceptions.h", "cxx_supportlib/Exceptions.h"],
|
220
|
+
["src/cxx_supportlib/AppTypeDetector/CBindings.h", "cxx_supportlib/AppTypeDetector/CBindings.h"],
|
221
|
+
["src/cxx_supportlib/WrapperRegistry/CBindings.h", "cxx_supportlib/WrapperRegistry/CBindings.h"],
|
220
222
|
["src/cxx_supportlib/JsonTools/CBindings.h", "cxx_supportlib/JsonTools/CBindings.h"],
|
221
223
|
["src/cxx_supportlib/vendor-modified/modp_b64.h", "cxx_supportlib/vendor-modified/modp_b64.h"],
|
222
224
|
["src/cxx_supportlib/vendor-modified/modp_b64_data.h", "cxx_supportlib/vendor-modified/modp_b64_data.h"]
|
data/build/support/cplusplus.rb
CHANGED
@@ -150,14 +150,14 @@ def create_shared_library(target, objects, options_or_flags = nil)
|
|
150
150
|
end
|
151
151
|
|
152
152
|
def define_c_object_compilation_task(object, source, options_or_flags = nil)
|
153
|
-
options = options_or_flags if options_or_flags.is_a?(Hash)
|
153
|
+
options = options_or_flags if options_or_flags.is_a?(Hash) || options_or_flags.respond_to?(:call)
|
154
154
|
file(object => generate_compilation_task_dependencies(source, options)) do
|
155
155
|
compile_c(object, source, options_or_flags)
|
156
156
|
end
|
157
157
|
end
|
158
158
|
|
159
159
|
def define_cxx_object_compilation_task(object, source, options_or_flags = nil)
|
160
|
-
options = options_or_flags if options_or_flags.is_a?(Hash)
|
160
|
+
options = options_or_flags if options_or_flags.is_a?(Hash) || options_or_flags.respond_to?(:call)
|
161
161
|
file(object => generate_compilation_task_dependencies(source, options)) do
|
162
162
|
compile_cxx(object, source, options_or_flags)
|
163
163
|
end
|