passenger 6.0.24 → 6.0.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (489) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +133 -114
  3. data/LICENSE +1 -1
  4. data/README.md +1 -1
  5. data/Rakefile +2 -2
  6. data/bin/passenger +2 -2
  7. data/bin/passenger-config +2 -2
  8. data/bin/passenger-install-apache2-module +2 -2
  9. data/bin/passenger-install-nginx-module +2 -2
  10. data/bin/passenger-memory-stats +2 -2
  11. data/bin/passenger-status +2 -2
  12. data/build/agent.rb +2 -2
  13. data/build/apache2.rb +2 -2
  14. data/build/basics.rb +2 -2
  15. data/build/common_library.rb +2 -2
  16. data/build/cxx_tests.rb +2 -2
  17. data/build/integration_tests.rb +2 -2
  18. data/build/misc.rb +2 -2
  19. data/build/nginx.rb +2 -2
  20. data/build/node_tests.rb +2 -2
  21. data/build/oxt_tests.rb +2 -2
  22. data/build/packaging.rb +2 -2
  23. data/build/ruby_extension.rb +2 -2
  24. data/build/ruby_tests.rb +2 -2
  25. data/build/schema_printer.rb +2 -2
  26. data/build/support/cplusplus.rb +2 -2
  27. data/build/support/general.rb +2 -2
  28. data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
  29. data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +2 -2
  30. data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +2 -2
  31. data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
  32. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +2 -2
  33. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +2 -2
  34. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +2 -2
  35. data/build/test_basics.rb +2 -2
  36. data/dev/copy_boost_headers +2 -2
  37. data/dev/nginx_version_sha256 +2 -2
  38. data/doc/DesignAspects/LimitedGemDependencies.md +39 -0
  39. data/doc/DesignAspects/NoGemActivationDuringRubyLoaderInitialization.md +27 -0
  40. data/passenger.gemspec +4 -0
  41. data/resources/templates/apache2/deployment_example.txt.erb +1 -1
  42. data/resources/templates/nginx/deployment_example.txt.erb +1 -1
  43. data/resources/templates/standalone/http.erb +1 -0
  44. data/src/agent/AgentMain.cpp +2 -2
  45. data/src/agent/Core/AdminPanelConnector.h +2 -2
  46. data/src/agent/Core/ApiServer.h +2 -2
  47. data/src/agent/Core/ApplicationPool/AbstractSession.h +2 -2
  48. data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +2 -2
  49. data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +2 -2
  50. data/src/agent/Core/ApplicationPool/Common.h +2 -2
  51. data/src/agent/Core/ApplicationPool/Context.h +7 -4
  52. data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +2 -2
  53. data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +2 -2
  54. data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +2 -2
  55. data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +2 -2
  56. data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +2 -2
  57. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +69 -2
  58. data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +28 -8
  59. data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +2 -2
  60. data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +2 -2
  61. data/src/agent/Core/ApplicationPool/Group/Verification.cpp +2 -2
  62. data/src/agent/Core/ApplicationPool/Group.h +6 -5
  63. data/src/agent/Core/ApplicationPool/Implementation.cpp +2 -2
  64. data/src/agent/Core/ApplicationPool/Options.h +3 -4
  65. data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +2 -2
  66. data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +2 -2
  67. data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +2 -2
  68. data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +2 -2
  69. data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +2 -2
  70. data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +2 -2
  71. data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +2 -2
  72. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +2 -2
  73. data/src/agent/Core/ApplicationPool/Pool.h +2 -2
  74. data/src/agent/Core/ApplicationPool/Process.cpp +2 -2
  75. data/src/agent/Core/ApplicationPool/Process.h +2 -2
  76. data/src/agent/Core/ApplicationPool/Session.h +2 -2
  77. data/src/agent/Core/ApplicationPool/Socket.h +2 -2
  78. data/src/agent/Core/ApplicationPool/TestSession.h +2 -2
  79. data/src/agent/Core/Config.h +4 -3
  80. data/src/agent/Core/ConfigChange.cpp +2 -2
  81. data/src/agent/Core/ConfigChange.h +2 -2
  82. data/src/agent/Core/Controller/AppResponse.h +2 -2
  83. data/src/agent/Core/Controller/BufferBody.cpp +2 -2
  84. data/src/agent/Core/Controller/CheckoutSession.cpp +2 -2
  85. data/src/agent/Core/Controller/Client.h +2 -2
  86. data/src/agent/Core/Controller/Config.cpp +2 -2
  87. data/src/agent/Core/Controller/Config.h +9 -4
  88. data/src/agent/Core/Controller/ForwardResponse.cpp +2 -2
  89. data/src/agent/Core/Controller/Hooks.cpp +2 -2
  90. data/src/agent/Core/Controller/Implementation.cpp +2 -2
  91. data/src/agent/Core/Controller/InitRequest.cpp +2 -3
  92. data/src/agent/Core/Controller/InitializationAndShutdown.cpp +2 -2
  93. data/src/agent/Core/Controller/InternalUtils.cpp +2 -2
  94. data/src/agent/Core/Controller/Miscellaneous.cpp +2 -2
  95. data/src/agent/Core/Controller/Request.h +2 -2
  96. data/src/agent/Core/Controller/SendRequest.cpp +2 -2
  97. data/src/agent/Core/Controller/StateInspection.cpp +2 -2
  98. data/src/agent/Core/Controller/TurboCaching.h +2 -2
  99. data/src/agent/Core/Controller.h +2 -2
  100. data/src/agent/Core/CoreMain.cpp +3 -3
  101. data/src/agent/Core/OptionParser.h +7 -2
  102. data/src/agent/Core/ResponseCache.h +2 -2
  103. data/src/agent/Core/SecurityUpdateChecker.h +2 -2
  104. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +2 -2
  105. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +2 -2
  106. data/src/agent/Core/SpawningKit/Config.h +2 -2
  107. data/src/agent/Core/SpawningKit/Context.h +2 -2
  108. data/src/agent/Core/SpawningKit/DirectSpawner.h +2 -2
  109. data/src/agent/Core/SpawningKit/DummySpawner.h +2 -2
  110. data/src/agent/Core/SpawningKit/ErrorRenderer.h +2 -2
  111. data/src/agent/Core/SpawningKit/Exceptions.h +2 -2
  112. data/src/agent/Core/SpawningKit/Factory.h +2 -2
  113. data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +2 -2
  114. data/src/agent/Core/SpawningKit/Handshake/Perform.h +2 -2
  115. data/src/agent/Core/SpawningKit/Handshake/Prepare.h +2 -2
  116. data/src/agent/Core/SpawningKit/Handshake/Session.h +2 -2
  117. data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +2 -2
  118. data/src/agent/Core/SpawningKit/Journey.h +2 -2
  119. data/src/agent/Core/SpawningKit/PipeWatcher.h +2 -2
  120. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +2 -2
  121. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +2 -2
  122. data/src/agent/Core/SpawningKit/Result.h +2 -2
  123. data/src/agent/Core/SpawningKit/SmartSpawner.h +2 -2
  124. data/src/agent/Core/SpawningKit/Spawner.h +2 -2
  125. data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
  126. data/src/agent/Core/TelemetryCollector.h +2 -2
  127. data/src/agent/ExecHelper/ExecHelperMain.cpp +2 -2
  128. data/src/agent/FileReadHelper/FileReadHelperMain.cpp +2 -2
  129. data/src/agent/MainFunctions.h +2 -2
  130. data/src/agent/Shared/ApiAccountUtils.h +2 -2
  131. data/src/agent/Shared/ApiServerUtils.h +2 -2
  132. data/src/agent/Shared/ApplicationPoolApiKey.h +2 -2
  133. data/src/agent/Shared/Fundamentals/AbortHandler.cpp +2 -2
  134. data/src/agent/Shared/Fundamentals/AbortHandler.h +2 -2
  135. data/src/agent/Shared/Fundamentals/Initialization.cpp +2 -2
  136. data/src/agent/Shared/Fundamentals/Initialization.h +2 -2
  137. data/src/agent/Shared/Fundamentals/Utils.cpp +2 -2
  138. data/src/agent/Shared/Fundamentals/Utils.h +2 -2
  139. data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +2 -2
  140. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +2 -2
  141. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +2 -2
  142. data/src/agent/Watchdog/AgentWatcher.cpp +2 -2
  143. data/src/agent/Watchdog/ApiServer.h +2 -2
  144. data/src/agent/Watchdog/Config.h +4 -3
  145. data/src/agent/Watchdog/CoreWatcher.cpp +2 -2
  146. data/src/agent/Watchdog/InstanceDirToucher.cpp +2 -2
  147. data/src/agent/Watchdog/WatchdogMain.cpp +2 -2
  148. data/src/apache2_module/Bucket.cpp +2 -2
  149. data/src/apache2_module/Bucket.h +2 -2
  150. data/src/apache2_module/CBindings.cpp +2 -2
  151. data/src/apache2_module/Config.cpp +2 -2
  152. data/src/apache2_module/Config.h +2 -2
  153. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +7 -2
  154. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
  155. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +7 -2
  156. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +2 -2
  157. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +17 -2
  158. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +2 -2
  159. data/src/apache2_module/ConfigGeneral/Common.h +2 -2
  160. data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +2 -2
  161. data/src/apache2_module/ConfigGeneral/SetterFuncs.h +2 -2
  162. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +2 -2
  163. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +2 -2
  164. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +2 -2
  165. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +2 -2
  166. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +2 -2
  167. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
  168. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +2 -2
  169. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +2 -2
  170. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +2 -2
  171. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
  172. data/src/apache2_module/DirectoryMapper.h +2 -2
  173. data/src/apache2_module/Hooks.cpp +3 -2
  174. data/src/apache2_module/Hooks.h +2 -2
  175. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +11 -2
  176. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
  177. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +13 -2
  178. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
  179. data/src/apache2_module/Utils.h +2 -2
  180. data/src/apache2_module/mod_passenger.c +2 -2
  181. data/src/cxx_supportlib/Algorithms/Hasher.cpp +2 -2
  182. data/src/cxx_supportlib/Algorithms/Hasher.h +2 -2
  183. data/src/cxx_supportlib/Algorithms/MovingAverage.h +2 -8
  184. data/src/cxx_supportlib/AppLocalConfigFileUtils.h +2 -2
  185. data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +2 -2
  186. data/src/cxx_supportlib/AppTypeDetector/CBindings.h +2 -2
  187. data/src/cxx_supportlib/AppTypeDetector/Detector.h +2 -2
  188. data/src/cxx_supportlib/BackgroundEventLoop.cpp +2 -2
  189. data/src/cxx_supportlib/BackgroundEventLoop.h +2 -2
  190. data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +2 -2
  191. data/src/cxx_supportlib/ConfigKit/Common.h +2 -2
  192. data/src/cxx_supportlib/ConfigKit/ConfigKit.h +2 -2
  193. data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +2 -2
  194. data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +2 -2
  195. data/src/cxx_supportlib/ConfigKit/Schema.h +2 -2
  196. data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +2 -2
  197. data/src/cxx_supportlib/ConfigKit/Store.h +2 -2
  198. data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +2 -2
  199. data/src/cxx_supportlib/ConfigKit/TableTranslator.h +2 -2
  200. data/src/cxx_supportlib/ConfigKit/Translator.h +2 -2
  201. data/src/cxx_supportlib/ConfigKit/Utils.h +2 -2
  202. data/src/cxx_supportlib/Constants.h +3 -3
  203. data/src/cxx_supportlib/Constants.h.cxxcodebuilder +2 -2
  204. data/src/cxx_supportlib/DataStructures/HashMap.h +2 -2
  205. data/src/cxx_supportlib/DataStructures/HashedStaticString.h +2 -2
  206. data/src/cxx_supportlib/DataStructures/LString.cpp +2 -2
  207. data/src/cxx_supportlib/DataStructures/LString.h +2 -2
  208. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +2 -2
  209. data/src/cxx_supportlib/DataStructures/StringMap.h +2 -2
  210. data/src/cxx_supportlib/Exceptions.cpp +2 -2
  211. data/src/cxx_supportlib/Exceptions.h +2 -2
  212. data/src/cxx_supportlib/FileDescriptor.h +2 -2
  213. data/src/cxx_supportlib/FileTools/FileManip.cpp +2 -2
  214. data/src/cxx_supportlib/FileTools/FileManip.h +2 -2
  215. data/src/cxx_supportlib/FileTools/LargeFiles.h +2 -2
  216. data/src/cxx_supportlib/FileTools/PathManip.cpp +2 -2
  217. data/src/cxx_supportlib/FileTools/PathManip.h +2 -2
  218. data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +2 -2
  219. data/src/cxx_supportlib/FileTools/PathManipCBindings.h +2 -2
  220. data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +2 -2
  221. data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +2 -2
  222. data/src/cxx_supportlib/Hooks.h +2 -2
  223. data/src/cxx_supportlib/IOTools/BufferedIO.h +2 -2
  224. data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -2
  225. data/src/cxx_supportlib/IOTools/IOUtils.h +2 -2
  226. data/src/cxx_supportlib/IOTools/MessageIO.h +2 -2
  227. data/src/cxx_supportlib/IOTools/MessageSerialization.h +2 -2
  228. data/src/cxx_supportlib/InstanceDirectory.h +2 -2
  229. data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +2 -2
  230. data/src/cxx_supportlib/JsonTools/Autocast.h +2 -2
  231. data/src/cxx_supportlib/JsonTools/CBindings.cpp +2 -2
  232. data/src/cxx_supportlib/JsonTools/CBindings.h +2 -2
  233. data/src/cxx_supportlib/JsonTools/JsonUtils.h +2 -2
  234. data/src/cxx_supportlib/LoggingKit/Assert.h +2 -2
  235. data/src/cxx_supportlib/LoggingKit/Config.h +2 -2
  236. data/src/cxx_supportlib/LoggingKit/Context.h +2 -2
  237. data/src/cxx_supportlib/LoggingKit/Forward.h +2 -2
  238. data/src/cxx_supportlib/LoggingKit/Implementation.cpp +2 -2
  239. data/src/cxx_supportlib/LoggingKit/Logging.h +2 -2
  240. data/src/cxx_supportlib/LoggingKit/LoggingKit.h +2 -2
  241. data/src/cxx_supportlib/LveLoggingDecorator.h +2 -2
  242. data/src/cxx_supportlib/MemoryKit/mbuf.cpp +2 -2
  243. data/src/cxx_supportlib/MemoryKit/mbuf.h +2 -2
  244. data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
  245. data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
  246. data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +2 -2
  247. data/src/cxx_supportlib/ProcessManagement/Ruby.h +2 -2
  248. data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +2 -2
  249. data/src/cxx_supportlib/ProcessManagement/Spawn.h +2 -2
  250. data/src/cxx_supportlib/ProcessManagement/Utils.cpp +2 -2
  251. data/src/cxx_supportlib/ProcessManagement/Utils.h +2 -2
  252. data/src/cxx_supportlib/RandomGenerator.h +2 -2
  253. data/src/cxx_supportlib/ResourceLocator.h +2 -2
  254. data/src/cxx_supportlib/SafeLibev.h +2 -2
  255. data/src/cxx_supportlib/SecurityKit/Crypto.cpp +2 -2
  256. data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -2
  257. data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +2 -2
  258. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +2 -2
  259. data/src/cxx_supportlib/ServerKit/Channel.h +2 -2
  260. data/src/cxx_supportlib/ServerKit/Client.h +2 -2
  261. data/src/cxx_supportlib/ServerKit/ClientRef.h +2 -2
  262. data/src/cxx_supportlib/ServerKit/Config.h +2 -2
  263. data/src/cxx_supportlib/ServerKit/Context.h +2 -2
  264. data/src/cxx_supportlib/ServerKit/CookieUtils.h +2 -2
  265. data/src/cxx_supportlib/ServerKit/Errors.h +2 -2
  266. data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +2 -2
  267. data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +2 -2
  268. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +2 -2
  269. data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +2 -2
  270. data/src/cxx_supportlib/ServerKit/HeaderTable.h +2 -2
  271. data/src/cxx_supportlib/ServerKit/Hooks.h +2 -2
  272. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +2 -2
  273. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +2 -2
  274. data/src/cxx_supportlib/ServerKit/HttpClient.h +2 -2
  275. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +2 -2
  276. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +2 -2
  277. data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
  278. data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +2 -2
  279. data/src/cxx_supportlib/ServerKit/HttpServer.h +2 -2
  280. data/src/cxx_supportlib/ServerKit/Implementation.cpp +2 -2
  281. data/src/cxx_supportlib/ServerKit/Server.h +2 -2
  282. data/src/cxx_supportlib/StaticString.h +2 -2
  283. data/src/cxx_supportlib/StrIntTools/DateParsing.h +2 -2
  284. data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +2 -2
  285. data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +2 -2
  286. data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +2 -2
  287. data/src/cxx_supportlib/StrIntTools/StringScanning.h +2 -2
  288. data/src/cxx_supportlib/StrIntTools/Template.h +2 -2
  289. data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +2 -2
  290. data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +2 -2
  291. data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
  292. data/src/cxx_supportlib/SystemTools/SystemTime.cpp +2 -2
  293. data/src/cxx_supportlib/SystemTools/SystemTime.h +2 -2
  294. data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +2 -2
  295. data/src/cxx_supportlib/SystemTools/UserDatabase.h +2 -2
  296. data/src/cxx_supportlib/Utils/AnsiColorConstants.h +2 -2
  297. data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +2 -2
  298. data/src/cxx_supportlib/Utils/BlockingQueue.h +2 -2
  299. data/src/cxx_supportlib/Utils/CachedFileStat.cpp +2 -2
  300. data/src/cxx_supportlib/Utils/CachedFileStat.h +2 -2
  301. data/src/cxx_supportlib/Utils/CachedFileStat.hpp +2 -2
  302. data/src/cxx_supportlib/Utils/ClassUtils.h +2 -2
  303. data/src/cxx_supportlib/Utils/Curl.h +2 -2
  304. data/src/cxx_supportlib/Utils/FastStringStream.h +2 -2
  305. data/src/cxx_supportlib/Utils/FileChangeChecker.h +2 -2
  306. data/src/cxx_supportlib/Utils/HttpConstants.h +2 -2
  307. data/src/cxx_supportlib/Utils/IniFile.h +2 -2
  308. data/src/cxx_supportlib/Utils/MessagePassing.h +2 -2
  309. data/src/cxx_supportlib/Utils/OptionParsing.h +2 -2
  310. data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +2 -2
  311. data/src/cxx_supportlib/Utils/ScopeGuard.h +2 -2
  312. data/src/cxx_supportlib/Utils/SpeedMeter.h +2 -2
  313. data/src/cxx_supportlib/Utils/Timer.h +2 -2
  314. data/src/cxx_supportlib/Utils/VariantMap.h +2 -2
  315. data/src/cxx_supportlib/Utils.cpp +2 -2
  316. data/src/cxx_supportlib/Utils.h +2 -2
  317. data/src/cxx_supportlib/WatchdogLauncher.cpp +2 -2
  318. data/src/cxx_supportlib/WatchdogLauncher.h +3 -5
  319. data/src/cxx_supportlib/WebSocketCommandReverseServer.h +2 -2
  320. data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +2 -2
  321. data/src/cxx_supportlib/WrapperRegistry/CBindings.h +2 -2
  322. data/src/cxx_supportlib/WrapperRegistry/Entry.h +2 -2
  323. data/src/cxx_supportlib/WrapperRegistry/Registry.h +2 -2
  324. data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
  325. data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
  326. data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
  327. data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
  328. data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +1 -1
  329. data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +1 -1
  330. data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +1 -1
  331. data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +1 -1
  332. data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
  333. data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
  334. data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +1 -1
  335. data/src/cxx_supportlib/oxt/implementation.cpp +1 -1
  336. data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
  337. data/src/cxx_supportlib/oxt/macros.hpp +1 -1
  338. data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
  339. data/src/cxx_supportlib/oxt/system_calls.cpp +1 -1
  340. data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
  341. data/src/cxx_supportlib/oxt/thread.hpp +1 -1
  342. data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
  343. data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +2 -2
  344. data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +2 -2
  345. data/src/helper-scripts/backtrace-sanitizer.rb +2 -2
  346. data/src/helper-scripts/crash-watch.rb +1 -1
  347. data/src/helper-scripts/download_binaries/extconf.rb +2 -2
  348. data/src/helper-scripts/meteor-loader.rb +9 -4
  349. data/src/helper-scripts/node-loader.js +2 -2
  350. data/src/helper-scripts/prespawn +2 -2
  351. data/src/helper-scripts/rack-loader.rb +2 -2
  352. data/src/helper-scripts/rack-preloader.rb +2 -2
  353. data/src/helper-scripts/wsgi-loader.py +2 -2
  354. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +10 -2
  355. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +2 -2
  356. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +8 -2
  357. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +2 -2
  358. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +14 -2
  359. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +2 -2
  360. data/src/nginx_module/Configuration.c +1 -1
  361. data/src/nginx_module/Configuration.h +1 -1
  362. data/src/nginx_module/ContentHandler.c +1 -1
  363. data/src/nginx_module/ContentHandler.h +1 -1
  364. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +2 -2
  365. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
  366. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +2 -2
  367. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +2 -2
  368. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +2 -2
  369. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
  370. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +2 -2
  371. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +2 -2
  372. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +2 -2
  373. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
  374. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +7 -2
  375. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
  376. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +13 -2
  377. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
  378. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +6 -2
  379. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
  380. data/src/nginx_module/StaticContentHandler.c +1 -1
  381. data/src/nginx_module/StaticContentHandler.h +1 -1
  382. data/src/nginx_module/ngx_http_passenger_module.c +2 -2
  383. data/src/nginx_module/ngx_http_passenger_module.h +1 -1
  384. data/src/nodejs_supportlib/phusion_passenger/line_reader.js +2 -2
  385. data/src/ruby_native_extension/extconf.rb +2 -2
  386. data/src/ruby_native_extension/passenger_native_support.c +2 -2
  387. data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +2 -2
  388. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +2 -2
  389. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +2 -2
  390. data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +2 -2
  391. data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +2 -2
  392. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +9 -2
  393. data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +2 -2
  394. data/src/ruby_supportlib/phusion_passenger/common_library.rb +2 -2
  395. data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +2 -2
  396. data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +2 -2
  397. data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +2 -2
  398. data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +2 -2
  399. data/src/ruby_supportlib/phusion_passenger/config/command.rb +2 -2
  400. data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +2 -2
  401. data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +2 -2
  402. data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +2 -2
  403. data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +2 -2
  404. data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +2 -2
  405. data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +2 -2
  406. data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +2 -2
  407. data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +2 -2
  408. data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +2 -2
  409. data/src/ruby_supportlib/phusion_passenger/config/main.rb +2 -2
  410. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +2 -2
  411. data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +2 -2
  412. data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +2 -2
  413. data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +2 -2
  414. data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +2 -2
  415. data/src/ruby_supportlib/phusion_passenger/config/utils.rb +2 -2
  416. data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +2 -2
  417. data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +2 -2
  418. data/src/ruby_supportlib/phusion_passenger/constants.rb +2 -2
  419. data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +2 -2
  420. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +12 -4
  421. data/src/ruby_supportlib/phusion_passenger/message_channel.rb +2 -2
  422. data/src/ruby_supportlib/phusion_passenger/message_client.rb +2 -2
  423. data/src/ruby_supportlib/phusion_passenger/native_support.rb +2 -2
  424. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +10 -2
  425. data/src/ruby_supportlib/phusion_passenger/packaging.rb +2 -2
  426. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +2 -2
  427. data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +2 -2
  428. data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +2 -2
  429. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +2 -2
  430. data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +2 -2
  431. data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +2 -2
  432. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +2 -2
  433. data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +2 -2
  434. data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +2 -2
  435. data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +2 -2
  436. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +2 -2
  437. data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +2 -2
  438. data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +2 -2
  439. data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +2 -2
  440. data/src/ruby_supportlib/phusion_passenger/platform_info.rb +2 -2
  441. data/src/ruby_supportlib/phusion_passenger/plugin.rb +2 -2
  442. data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +14 -8
  443. data/src/ruby_supportlib/phusion_passenger/public_api.rb +2 -2
  444. data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +2 -2
  445. data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +2 -2
  446. data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +2 -2
  447. data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +2 -2
  448. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -2
  449. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +2 -2
  450. data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +2 -2
  451. data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +2 -2
  452. data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +2 -2
  453. data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +2 -2
  454. data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +2 -2
  455. data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +14 -3
  456. data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -2
  457. data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +2 -2
  458. data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +2 -2
  459. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +5 -3
  460. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +3 -3
  461. data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +2 -2
  462. data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +3 -4
  463. data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +9 -3
  464. data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +2 -2
  465. data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +2 -2
  466. data/src/ruby_supportlib/phusion_passenger/utils/download.rb +2 -2
  467. data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +2 -2
  468. data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +2 -2
  469. data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +2 -2
  470. data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +2 -2
  471. data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +2 -2
  472. data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +2 -2
  473. data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +2 -2
  474. data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +2 -2
  475. data/src/ruby_supportlib/phusion_passenger/utils.rb +2 -2
  476. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
  477. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/base.rb +1 -1
  478. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
  479. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +1 -1
  480. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +1 -1
  481. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/version.rb +1 -1
  482. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/lock_file.rb +1 -1
  483. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +1 -1
  484. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +1 -1
  485. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +1 -1
  486. data/src/ruby_supportlib/phusion_passenger.rb +4 -4
  487. data/src/schema_printer/SchemaPrinterMain.cpp +2 -2
  488. data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +2 -2
  489. metadata +4 -2
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2015-2018 Phusion Holding B.V.
2
+ # Copyright (c) 2015-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -165,6 +165,12 @@ module PhusionPassenger
165
165
  :type => :path,
166
166
  :desc => 'Where to store the PID file'
167
167
  },
168
+ {
169
+ :name => :stop_timeout,
170
+ :type => :integer,
171
+ :default => 60,
172
+ :desc => "How long in seconds to wait for the HTTP engine to gracefully shutdown,\nbefore killing it.\nDefault: %DEFAULT%"
173
+ },
168
174
  {
169
175
  :name => :instance_registry_dir,
170
176
  :type => :path,
@@ -263,7 +269,7 @@ module PhusionPassenger
263
269
  :type => :hostname,
264
270
  :type_desc => 'HOST',
265
271
  :default => '127.0.0.1',
266
- :desc => "The address that Passenger binds to in order to allow sending HTTP requests to individual application processes.\nDefault: %DEFAULT%"
272
+ :desc => "The address that Passenger binds to in order to allow sending\nHTTP requests to individual application processes.\nDefault: %DEFAULT%"
267
273
  },
268
274
  {
269
275
  :name => :static_files_dir,
@@ -479,6 +485,11 @@ module PhusionPassenger
479
485
  options[:turbocaching] = false
480
486
  end
481
487
  },
488
+ {
489
+ :name => :old_routing,
490
+ :type => :boolean,
491
+ :desc => 'Revert to old routing algorithm'
492
+ },
482
493
  {
483
494
  :name => :unlimited_concurrency_paths,
484
495
  :type => :array,
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2014-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2013-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2013-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2014-2018 Phusion Holding B.V.
3
+ # Copyright (c) 2014-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -155,6 +155,7 @@ module PhusionPassenger
155
155
  if @options[:turbocaching] == false
156
156
  command << " --disable-turbocaching"
157
157
  end
158
+ add_flag_param(command, :old_routing, "--old-routing")
158
159
  if @options[:abort_websockets_on_process_shutdown] == false
159
160
  command << " --no-abort-websockets-on-process-shutdown"
160
161
  end
@@ -200,7 +201,8 @@ module PhusionPassenger
200
201
  :ping_command => ping_spec,
201
202
  :pid_file => @options[:pid_file],
202
203
  :log_file => @options[:log_file],
203
- :timeout => 25
204
+ :start_timeout => 25,
205
+ :stop_timeout => @options[:stop_timeout]
204
206
  }
205
207
  end
206
208
 
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -166,7 +166,7 @@ module PhusionPassenger
166
166
  :pid_file => @options[:pid_file],
167
167
  :log_file => @options[:log_file],
168
168
  :start_timeout => 25,
169
- :stop_timeout => 60,
169
+ :stop_timeout => @options[:stop_timeout],
170
170
  :log_file_activity_timeout => 12,
171
171
  :dont_stop_if_pid_file_invalid => true
172
172
  }
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -114,8 +114,7 @@ module PhusionPassenger
114
114
  :start_command => "true", # Doesn't matter
115
115
  :ping_command => "true", # Doesn't matter
116
116
  :pid_file => @options[:pid_file],
117
- :log_file => "/dev/null",
118
- :timeout => 25
117
+ :log_file => "/dev/null"
119
118
  )
120
119
  end
121
120
  end
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -84,6 +84,12 @@ module PhusionPassenger
84
84
  "Don't abort with an error if PID file cannot be found") do
85
85
  options[:ignore_pid_not_found] = true
86
86
  end
87
+ opts.on("-t", "--timeout NUMBER", Integer,
88
+ "How long in seconds to wait for the HTTP engine to#{nl}"+
89
+ "gracefully shutdown, before killing it.#{nl}" +
90
+ "Default: #{defaults[:stop_timeout]}") do |value|
91
+ options[:stop_timeout] = value
92
+ end
87
93
  end
88
94
  end
89
95
 
@@ -125,7 +131,7 @@ module PhusionPassenger
125
131
  :ping_command => "true", # Doesn't matter
126
132
  :pid_file => @options[:pid_file],
127
133
  :log_file => "/dev/null",
128
- :timeout => 25
134
+ :stop_timeout => @options[:stop_timeout]
129
135
  )
130
136
  end
131
137
  end
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2013-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2013-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: binary
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2010-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2014-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2014-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2024 Phusion Holding B.V.
3
+ # Copyright (c) 2024-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2013-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2013-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: binary
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2010-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,6 +1,6 @@
1
1
  # encoding: binary
2
2
  #
3
- # Copyright (c) 2010-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2010-2025 Asynchronous B.V.
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining
6
6
  # a copy of this software and associated documentation files (the
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2016-2017 Phusion Holding B.V.
1
+ # Copyright (c) 2016-2025 Asynchronous B.V.
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining
4
4
  # a copy of this software and associated documentation files (the
@@ -1,6 +1,6 @@
1
1
  # encoding: binary
2
2
  #
3
- # Copyright (c) 2010-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2010-2025 Asynchronous B.V.
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining
6
6
  # a copy of this software and associated documentation files (the
@@ -1,6 +1,6 @@
1
1
  # encoding: binary
2
2
  #
3
- # Copyright (c) 2016-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2016-2025 Asynchronous B.V.
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining
6
6
  # a copy of this software and associated documentation files (the
@@ -1,6 +1,6 @@
1
1
  # encoding: binary
2
2
  #
3
- # Copyright (c) 2016-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2016-2025 Asynchronous B.V.
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining
6
6
  # a copy of this software and associated documentation files (the
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2010-2017 Phusion Holding B.V.
1
+ # Copyright (c) 2010-2025 Asynchronous B.V.
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining
4
4
  # a copy of this software and associated documentation files (the
@@ -1,5 +1,5 @@
1
1
  # daemon_controller, library for robust daemon management
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining a copy
5
5
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,5 +1,5 @@
1
1
  # daemon_controller, library for robust daemon management
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining a copy
5
5
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,5 +1,5 @@
1
1
  # daemon_controller, library for robust daemon management
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining a copy
5
5
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,5 +1,5 @@
1
1
  # daemon_controller, library for robust daemon management
2
- # Copyright (c) 2010-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2010-2025 Asynchronous B.V.
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining a copy
5
5
  # of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  # encoding: utf-8
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2018 Phusion Holding B.V.
3
+ # Copyright (c) 2010-2025 Asynchronous B.V.
4
4
  #
5
5
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- # trademarks of Phusion Holding B.V.
6
+ # trademarks of Asynchronous B.V.
7
7
  #
8
8
  # Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  # of this software and associated documentation files (the "Software"), to deal
@@ -31,7 +31,7 @@ module PhusionPassenger
31
31
 
32
32
  PACKAGE_NAME = 'passenger'
33
33
  # Run 'rake src/cxx_supportlib/Constants.h configkit_schemas_inline_comments' after changing this number.
34
- VERSION_STRING = '6.0.24'
34
+ VERSION_STRING = '6.0.25'
35
35
 
36
36
  # Tip: find the SHA-256 with ./dev/nginx_version_sha256 <VERSION>
37
37
  PREFERRED_NGINX_VERSION = '1.26.2'
@@ -237,7 +237,7 @@ module PhusionPassenger
237
237
  # Using this method also has two more advantages:
238
238
  #
239
239
  # 1. It is immune to Bundler's load path mangling code.
240
- # 2. It is faster than plan require() because it doesn't need to
240
+ # 2. It is faster than plain require() because it doesn't need to
241
241
  # scan the entire load path.
242
242
  def self.require_passenger_lib(name)
243
243
  require("#{ruby_libdir}/phusion_passenger/#{name}")
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2017 Phusion Holding B.V.
3
+ * Copyright (c) 2017-2025 Asynchronous B.V.
4
4
  *
5
5
  * "Passenger", "Phusion Passenger" and "Union Station" are registered
6
- * trademarks of Phusion Holding B.V.
6
+ * trademarks of Asynchronous B.V.
7
7
  *
8
8
  * Permission is hereby granted, free of charge, to any person obtaining a copy
9
9
  * of this software and associated documentation files (the "Software"), to deal
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2017 Phusion Holding B.V.
2
+ # Copyright (c) 2017-2025 Asynchronous B.V.
3
3
  #
4
4
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
5
- # trademarks of Phusion Holding B.V.
5
+ # trademarks of Asynchronous B.V.
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the "Software"), to deal
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: passenger
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.24
4
+ version: 6.0.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Phusion - http://www.phusion.nl/
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-07 00:00:00.000000000 Z
11
+ date: 2025-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -129,6 +129,8 @@ files:
129
129
  - dev/websocketpp.patch
130
130
  - doc/CodingTipsAndPitfalls.md
131
131
  - doc/DebuggingAndStressTesting.md
132
+ - doc/DesignAspects/LimitedGemDependencies.md
133
+ - doc/DesignAspects/NoGemActivationDuringRubyLoaderInitialization.md
132
134
  - doc/DeveloperQuickstart.md
133
135
  - doc/Packaging.md
134
136
  - doc/images/phusion_banner_small.png