passenger 6.0.24 → 6.0.26

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 +138 -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 +21 -23
  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,10 +1,10 @@
1
1
  # encoding: utf-8
2
2
  #
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2014-2018 Phusion Holding B.V.
4
+ # Copyright (c) 2014-2025 Asynchronous B.V.
5
5
  #
6
6
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
- # trademarks of Phusion Holding B.V.
7
+ # trademarks of Asynchronous B.V.
8
8
  #
9
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
10
10
  # 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,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,10 +1,10 @@
1
1
  # encoding: utf-8
2
2
  #
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2010-2017 Phusion Holding B.V.
4
+ # Copyright (c) 2010-2025 Asynchronous B.V.
5
5
  #
6
6
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
- # trademarks of Phusion Holding B.V.
7
+ # trademarks of Asynchronous B.V.
8
8
  #
9
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
10
10
  # 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,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,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
  # frozen_string_literal: true
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) 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) 2014-2017 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
@@ -1,9 +1,9 @@
1
1
  # encoding: utf-8
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,9 +1,9 @@
1
1
  # encoding: binary
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2011-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2011-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
@@ -304,9 +304,9 @@ module PhusionPassenger
304
304
  end
305
305
 
306
306
  if options["process_title"] && !options["process_title"].empty?
307
- $0 = options["process_title"] + ": " + options["app_group_name"]
307
+ rename_process "#{options["process_title"]}: #{options["app_group_name"]}"
308
308
  else
309
- $0 = "Passenger App: " + options["app_group_name"]
309
+ rename_process "Passenger App: #{options["app_group_name"]}"
310
310
  end
311
311
 
312
312
  # If we were forked from a preloader process then clear or
@@ -541,6 +541,14 @@ module PhusionPassenger
541
541
  try_write_file("#{dir}/envvars", ENV.to_a.map { |k, v| "#{k} = #{v}" }.join("\n"))
542
542
  end
543
543
 
544
+ def rename_process(name)
545
+ if Process.respond_to?(:setproctitle)
546
+ Process.setproctitle(name)
547
+ else
548
+ $0 = name
549
+ end
550
+ end
551
+
544
552
  private
545
553
  def running_bundler(options)
546
554
  yield
@@ -1,9 +1,9 @@
1
1
  # encoding: binary
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
@@ -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-2018 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-2018 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
@@ -255,6 +255,14 @@ NGINX_CONFIGURATION_OPTIONS = [
255
255
  :context => [:main],
256
256
  :struct => 'NGX_HTTP_MAIN_CONF_OFFSET'
257
257
  },
258
+ {
259
+ :name => 'passenger_old_routing',
260
+ :scope => :global,
261
+ :type => :flag,
262
+ :default => false,
263
+ :context => [:main],
264
+ :struct => 'NGX_HTTP_MAIN_CONF_OFFSET'
265
+ },
258
266
  {
259
267
  :name => 'passenger_user_switching',
260
268
  :scope => :global,
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (c) 2010-2018 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) 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,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-2018 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) 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-2018 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,9 +1,9 @@
1
1
  # frozen_string_literal: true
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) 2015-2017 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
@@ -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) 2021 Phusion Holding B.V.
2
+ # Copyright (c) 2021-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-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
@@ -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-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
@@ -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) 2011-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2011-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
@@ -37,7 +37,7 @@ module PhusionPassenger
37
37
  def init(main_app)
38
38
  options = LoaderSharedHelpers.init(main_app)
39
39
 
40
- $0 = "#{SHORT_PROGRAM_NAME} AppPreloader: #{options['app_root']}"
40
+ LoaderSharedHelpers.rename_process pre_name(options)
41
41
 
42
42
  if !Kernel.respond_to?(:fork)
43
43
  message = "Smart spawning is not available on this Ruby " +
@@ -56,7 +56,7 @@ module PhusionPassenger
56
56
  options
57
57
  end
58
58
 
59
- def accept_and_process_next_client(server_socket)
59
+ def accept_and_process_next_client(server_socket, options)
60
60
  client = server_socket.accept
61
61
  client.binmode
62
62
  begin
@@ -75,7 +75,7 @@ module PhusionPassenger
75
75
  end
76
76
 
77
77
  if doc['command'] == 'spawn'
78
- handle_spawn_command(client, doc)
78
+ handle_spawn_command(client, doc, options)
79
79
  else
80
80
  client.write(Utils::JSON.generate(
81
81
  :result => 'error',
@@ -94,7 +94,7 @@ module PhusionPassenger
94
94
  end
95
95
  end
96
96
 
97
- def handle_spawn_command(client, doc)
97
+ def handle_spawn_command(client, doc, options)
98
98
  work_dir = doc['work_dir']
99
99
  LoaderSharedHelpers.record_journey_step_end('PRELOADER_PREPARATION',
100
100
  'STEP_PERFORMED', work_dir)
@@ -114,7 +114,7 @@ module PhusionPassenger
114
114
 
115
115
  if pid.nil?
116
116
  begin
117
- $0 = "#{$0} (forking...)"
117
+ LoaderSharedHelpers.rename_process "#{pre_name(options)} (forking...)"
118
118
  LoaderSharedHelpers.record_journey_step_end('PRELOADER_FORK_SUBPROCESS',
119
119
  'STEP_PERFORMED', work_dir)
120
120
  LoaderSharedHelpers.run_block_and_record_step_progress('PRELOADER_SEND_RESPONSE', work_dir) do
@@ -164,7 +164,7 @@ module PhusionPassenger
164
164
  # https://code.google.com/p/phusion-passenger/issues/detail?id=915
165
165
  ios = Kernel.select([server_socket, STDIN])[0]
166
166
  if ios.include?(server_socket)
167
- result, subprocess_work_dir = accept_and_process_next_client(server_socket)
167
+ result, subprocess_work_dir = accept_and_process_next_client(server_socket, options)
168
168
  if result == :forked
169
169
  return subprocess_work_dir
170
170
  end
@@ -188,6 +188,12 @@ module PhusionPassenger
188
188
  File.unlink(socket_filename) rescue nil
189
189
  end
190
190
  end
191
+
192
+ private
193
+ def pre_name(options)
194
+ "#{SHORT_PROGRAM_NAME} AppPreloader: #{options['app_root']}"
195
+ end
196
+
191
197
  end
192
198
 
193
199
  end # module PhusionPassenger
@@ -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,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2024 Phusion Holding B.V.
4
+ # Copyright (c) 2024-2025 Asynchronous B.V.
5
5
  #
6
6
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
- # trademarks of Phusion Holding B.V.
7
+ # trademarks of Asynchronous B.V.
8
8
  #
9
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
10
10
  # 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) 2012-2017 Phusion Holding B.V.
3
+ # Copyright (c) 2012-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: 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,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Phusion Passenger - https://www.phusionpassenger.com/
4
- # Copyright (c) 2016-2017 Phusion Holding B.V.
4
+ # Copyright (c) 2016-2025 Asynchronous B.V.
5
5
  #
6
6
  # "Passenger", "Phusion Passenger" and "Union Station" are registered
7
- # trademarks of Phusion Holding B.V.
7
+ # trademarks of Asynchronous B.V.
8
8
  #
9
9
  # Permission is hereby granted, free of charge, to any person obtaining a copy
10
10
  # of this software and associated documentation files (the "Software"), to deal