passenger 6.0.23 → 6.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (721) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +158 -114
  3. data/LICENSE +1 -1
  4. data/README.md +1 -1
  5. data/Rakefile +9 -5
  6. data/bin/passenger +2 -2
  7. data/bin/passenger-config +2 -2
  8. data/bin/passenger-install-apache2-module +7 -2
  9. data/bin/passenger-install-nginx-module +19 -4
  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 +3 -3
  14. data/build/basics.rb +12 -6
  15. data/build/common_library.rb +2 -2
  16. data/build/cxx_tests.rb +20 -9
  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/cxx_dependency_map.rb +40 -6
  28. data/build/support/general.rb +2 -2
  29. data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
  30. data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +2 -2
  31. data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +2 -2
  32. data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
  33. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +2 -2
  34. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +2 -2
  35. data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +2 -2
  36. data/build/test_basics.rb +6 -14
  37. data/dev/copy_boost_headers +2 -2
  38. data/dev/nginx_version_sha256 +2 -2
  39. data/doc/DesignAspects/LimitedGemDependencies.md +39 -0
  40. data/doc/DesignAspects/NoGemActivationDuringRubyLoaderInitialization.md +27 -0
  41. data/package.json +1 -1
  42. data/passenger.gemspec +5 -1
  43. data/resources/templates/apache2/deployment_example.txt.erb +1 -1
  44. data/resources/templates/nginx/deployment_example.txt.erb +1 -1
  45. data/resources/templates/standalone/http.erb +1 -0
  46. data/src/agent/AgentMain.cpp +2 -2
  47. data/src/agent/Core/AdminPanelConnector.h +2 -2
  48. data/src/agent/Core/ApiServer.h +2 -2
  49. data/src/agent/Core/ApplicationPool/AbstractSession.h +2 -2
  50. data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +2 -2
  51. data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +2 -2
  52. data/src/agent/Core/ApplicationPool/Common.h +2 -2
  53. data/src/agent/Core/ApplicationPool/Context.h +7 -4
  54. data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +10 -2
  55. data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +12 -4
  56. data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +10 -2
  57. data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +11 -2
  58. data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +11 -2
  59. data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +85 -5
  60. data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +42 -12
  61. data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +10 -2
  62. data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +10 -2
  63. data/src/agent/Core/ApplicationPool/Group/Verification.cpp +10 -2
  64. data/src/agent/Core/ApplicationPool/Group.h +18 -7
  65. data/src/agent/Core/ApplicationPool/Implementation.cpp +2 -2
  66. data/src/agent/Core/ApplicationPool/Options.h +3 -4
  67. data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +7 -2
  68. data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +7 -2
  69. data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +7 -2
  70. data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +7 -2
  71. data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +7 -2
  72. data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +7 -2
  73. data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +7 -2
  74. data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +13 -3
  75. data/src/agent/Core/ApplicationPool/Pool.h +2 -4
  76. data/src/agent/Core/ApplicationPool/Process.cpp +2 -2
  77. data/src/agent/Core/ApplicationPool/Process.h +24 -8
  78. data/src/agent/Core/ApplicationPool/Session.h +8 -3
  79. data/src/agent/Core/ApplicationPool/Socket.h +2 -2
  80. data/src/agent/Core/ApplicationPool/TestSession.h +2 -2
  81. data/src/agent/Core/Config.h +10 -5
  82. data/src/agent/Core/ConfigChange.cpp +2 -2
  83. data/src/agent/Core/ConfigChange.h +2 -2
  84. data/src/agent/Core/Controller/AppResponse.h +2 -2
  85. data/src/agent/Core/Controller/BufferBody.cpp +2 -2
  86. data/src/agent/Core/Controller/CheckoutSession.cpp +2 -2
  87. data/src/agent/Core/Controller/Client.h +2 -2
  88. data/src/agent/Core/Controller/Config.cpp +2 -2
  89. data/src/agent/Core/Controller/Config.h +9 -4
  90. data/src/agent/Core/Controller/ForwardResponse.cpp +2 -2
  91. data/src/agent/Core/Controller/Hooks.cpp +2 -2
  92. data/src/agent/Core/Controller/Implementation.cpp +2 -2
  93. data/src/agent/Core/Controller/InitRequest.cpp +2 -3
  94. data/src/agent/Core/Controller/InitializationAndShutdown.cpp +2 -2
  95. data/src/agent/Core/Controller/InternalUtils.cpp +2 -2
  96. data/src/agent/Core/Controller/Miscellaneous.cpp +2 -2
  97. data/src/agent/Core/Controller/Request.h +2 -2
  98. data/src/agent/Core/Controller/SendRequest.cpp +2 -2
  99. data/src/agent/Core/Controller/StateInspection.cpp +2 -2
  100. data/src/agent/Core/Controller/TurboCaching.h +2 -2
  101. data/src/agent/Core/Controller.h +2 -2
  102. data/src/agent/Core/CoreMain.cpp +13 -20
  103. data/src/agent/Core/OptionParser.h +7 -2
  104. data/src/agent/Core/ResponseCache.h +2 -2
  105. data/src/agent/Core/SecurityUpdateChecker.h +2 -2
  106. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +2 -2
  107. data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +2 -2
  108. data/src/agent/Core/SpawningKit/Config.h +2 -2
  109. data/src/agent/Core/SpawningKit/Context.h +2 -2
  110. data/src/agent/Core/SpawningKit/DirectSpawner.h +2 -2
  111. data/src/agent/Core/SpawningKit/DummySpawner.h +2 -2
  112. data/src/agent/Core/SpawningKit/ErrorRenderer.h +2 -2
  113. data/src/agent/Core/SpawningKit/Exceptions.h +2 -2
  114. data/src/agent/Core/SpawningKit/Factory.h +2 -2
  115. data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +2 -2
  116. data/src/agent/Core/SpawningKit/Handshake/Perform.h +2 -2
  117. data/src/agent/Core/SpawningKit/Handshake/Prepare.h +3 -55
  118. data/src/agent/Core/SpawningKit/Handshake/Session.h +5 -2
  119. data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +7 -4
  120. data/src/agent/Core/SpawningKit/Journey.h +2 -2
  121. data/src/agent/Core/SpawningKit/PipeWatcher.h +2 -2
  122. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +2 -2
  123. data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +2 -2
  124. data/src/agent/Core/SpawningKit/Result.h +2 -2
  125. data/src/agent/Core/SpawningKit/SmartSpawner.h +8 -4
  126. data/src/agent/Core/SpawningKit/Spawner.h +6 -2
  127. data/src/agent/Core/SpawningKit/UserSwitchingRules.h +2 -2
  128. data/src/agent/Core/TelemetryCollector.h +2 -2
  129. data/src/agent/ExecHelper/ExecHelperMain.cpp +2 -2
  130. data/src/agent/FileReadHelper/FileReadHelperMain.cpp +2 -2
  131. data/src/agent/MainFunctions.h +2 -2
  132. data/src/agent/Shared/ApiAccountUtils.h +2 -2
  133. data/src/agent/Shared/ApiServerUtils.h +2 -2
  134. data/src/agent/Shared/ApplicationPoolApiKey.h +2 -2
  135. data/src/agent/Shared/Fundamentals/AbortHandler.cpp +90 -11
  136. data/src/agent/Shared/Fundamentals/AbortHandler.h +4 -2
  137. data/src/agent/Shared/Fundamentals/Initialization.cpp +11 -5
  138. data/src/agent/Shared/Fundamentals/Initialization.h +5 -5
  139. data/src/agent/Shared/Fundamentals/Utils.cpp +2 -2
  140. data/src/agent/Shared/Fundamentals/Utils.h +2 -2
  141. data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +8 -9
  142. data/src/agent/SystemMetrics/SystemMetricsMain.cpp +2 -2
  143. data/src/agent/TempDirToucher/TempDirToucherMain.cpp +2 -2
  144. data/src/agent/Watchdog/AgentWatcher.cpp +2 -2
  145. data/src/agent/Watchdog/ApiServer.h +2 -2
  146. data/src/agent/Watchdog/Config.h +4 -3
  147. data/src/agent/Watchdog/CoreWatcher.cpp +2 -2
  148. data/src/agent/Watchdog/InstanceDirToucher.cpp +2 -2
  149. data/src/agent/Watchdog/WatchdogMain.cpp +6 -9
  150. data/src/apache2_module/Bucket.cpp +2 -2
  151. data/src/apache2_module/Bucket.h +2 -2
  152. data/src/apache2_module/CBindings.cpp +2 -2
  153. data/src/apache2_module/Config.cpp +2 -2
  154. data/src/apache2_module/Config.h +2 -2
  155. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +7 -2
  156. data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
  157. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +7 -2
  158. data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +2 -2
  159. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +17 -2
  160. data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +2 -2
  161. data/src/apache2_module/ConfigGeneral/Common.h +2 -2
  162. data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +7 -5
  163. data/src/apache2_module/ConfigGeneral/SetterFuncs.h +2 -2
  164. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +2 -2
  165. data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +2 -2
  166. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +2 -2
  167. data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +2 -2
  168. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +2 -2
  169. data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
  170. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +2 -2
  171. data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +2 -2
  172. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +5 -2
  173. data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +5 -2
  174. data/src/apache2_module/DirectoryMapper.h +2 -2
  175. data/src/apache2_module/Hooks.cpp +3 -2
  176. data/src/apache2_module/Hooks.h +2 -2
  177. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +11 -2
  178. data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
  179. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +15 -3
  180. data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +4 -3
  181. data/src/apache2_module/Utils.h +2 -2
  182. data/src/apache2_module/mod_passenger.c +2 -2
  183. data/src/cxx_supportlib/Algorithms/Hasher.cpp +2 -2
  184. data/src/cxx_supportlib/Algorithms/Hasher.h +2 -2
  185. data/src/cxx_supportlib/Algorithms/MovingAverage.h +2 -8
  186. data/src/cxx_supportlib/AppLocalConfigFileUtils.h +2 -2
  187. data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +2 -2
  188. data/src/cxx_supportlib/AppTypeDetector/CBindings.h +2 -2
  189. data/src/cxx_supportlib/AppTypeDetector/Detector.h +2 -2
  190. data/src/cxx_supportlib/BackgroundEventLoop.cpp +2 -2
  191. data/src/cxx_supportlib/BackgroundEventLoop.h +2 -2
  192. data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +2 -2
  193. data/src/cxx_supportlib/ConfigKit/Common.h +2 -2
  194. data/src/cxx_supportlib/ConfigKit/ConfigKit.h +2 -2
  195. data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +2 -2
  196. data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +2 -2
  197. data/src/cxx_supportlib/ConfigKit/Schema.h +2 -2
  198. data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +2 -2
  199. data/src/cxx_supportlib/ConfigKit/Store.h +2 -2
  200. data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +2 -2
  201. data/src/cxx_supportlib/ConfigKit/TableTranslator.h +2 -2
  202. data/src/cxx_supportlib/ConfigKit/Translator.h +2 -2
  203. data/src/cxx_supportlib/ConfigKit/Utils.h +2 -2
  204. data/src/cxx_supportlib/Constants.h +3 -3
  205. data/src/cxx_supportlib/Constants.h.cxxcodebuilder +2 -2
  206. data/src/cxx_supportlib/DataStructures/HashMap.h +2 -2
  207. data/src/cxx_supportlib/DataStructures/HashedStaticString.h +2 -2
  208. data/src/cxx_supportlib/DataStructures/LString.cpp +2 -2
  209. data/src/cxx_supportlib/DataStructures/LString.h +2 -2
  210. data/src/cxx_supportlib/DataStructures/StringKeyTable.h +2 -2
  211. data/src/cxx_supportlib/DataStructures/StringMap.h +2 -3
  212. data/src/cxx_supportlib/Exceptions.cpp +2 -2
  213. data/src/cxx_supportlib/Exceptions.h +2 -2
  214. data/src/cxx_supportlib/FileDescriptor.h +2 -2
  215. data/src/cxx_supportlib/FileTools/FileManip.cpp +2 -2
  216. data/src/cxx_supportlib/FileTools/FileManip.h +2 -2
  217. data/src/cxx_supportlib/FileTools/LargeFiles.h +2 -2
  218. data/src/cxx_supportlib/FileTools/PathManip.cpp +3 -3
  219. data/src/cxx_supportlib/FileTools/PathManip.h +2 -2
  220. data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +2 -2
  221. data/src/cxx_supportlib/FileTools/PathManipCBindings.h +2 -2
  222. data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +2 -2
  223. data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +2 -2
  224. data/src/cxx_supportlib/Hooks.h +2 -2
  225. data/src/cxx_supportlib/IOTools/BufferedIO.h +2 -2
  226. data/src/cxx_supportlib/IOTools/IOUtils.cpp +2 -2
  227. data/src/cxx_supportlib/IOTools/IOUtils.h +2 -2
  228. data/src/cxx_supportlib/IOTools/MessageIO.h +2 -2
  229. data/src/cxx_supportlib/IOTools/MessageSerialization.h +2 -2
  230. data/src/cxx_supportlib/InstanceDirectory.h +2 -2
  231. data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +2 -2
  232. data/src/cxx_supportlib/JsonTools/Autocast.h +2 -2
  233. data/src/cxx_supportlib/JsonTools/CBindings.cpp +2 -2
  234. data/src/cxx_supportlib/JsonTools/CBindings.h +2 -2
  235. data/src/cxx_supportlib/JsonTools/JsonUtils.h +2 -2
  236. data/src/cxx_supportlib/LoggingKit/Assert.h +2 -2
  237. data/src/cxx_supportlib/LoggingKit/Config.h +2 -2
  238. data/src/cxx_supportlib/LoggingKit/Context.h +2 -2
  239. data/src/cxx_supportlib/LoggingKit/Forward.h +2 -2
  240. data/src/cxx_supportlib/LoggingKit/Implementation.cpp +2 -2
  241. data/src/cxx_supportlib/LoggingKit/Logging.h +2 -2
  242. data/src/cxx_supportlib/LoggingKit/LoggingKit.h +2 -2
  243. data/src/cxx_supportlib/LveLoggingDecorator.h +2 -2
  244. data/src/cxx_supportlib/MemoryKit/mbuf.cpp +2 -2
  245. data/src/cxx_supportlib/MemoryKit/mbuf.h +2 -2
  246. data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
  247. data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
  248. data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +2 -2
  249. data/src/cxx_supportlib/ProcessManagement/Ruby.h +2 -2
  250. data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +2 -2
  251. data/src/cxx_supportlib/ProcessManagement/Spawn.h +2 -2
  252. data/src/cxx_supportlib/ProcessManagement/Utils.cpp +2 -2
  253. data/src/cxx_supportlib/ProcessManagement/Utils.h +2 -2
  254. data/src/cxx_supportlib/RandomGenerator.h +2 -2
  255. data/src/cxx_supportlib/ResourceLocator.h +2 -2
  256. data/src/cxx_supportlib/SafeLibev.h +3 -5
  257. data/src/cxx_supportlib/SecurityKit/Crypto.cpp +2 -2
  258. data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -2
  259. data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +2 -2
  260. data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +2 -2
  261. data/src/cxx_supportlib/ServerKit/Channel.h +2 -2
  262. data/src/cxx_supportlib/ServerKit/Client.h +2 -2
  263. data/src/cxx_supportlib/ServerKit/ClientRef.h +2 -2
  264. data/src/cxx_supportlib/ServerKit/Config.h +2 -2
  265. data/src/cxx_supportlib/ServerKit/Context.h +2 -2
  266. data/src/cxx_supportlib/ServerKit/CookieUtils.h +2 -2
  267. data/src/cxx_supportlib/ServerKit/Errors.h +2 -2
  268. data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +2 -2
  269. data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +2 -2
  270. data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +2 -2
  271. data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +2 -2
  272. data/src/cxx_supportlib/ServerKit/HeaderTable.h +2 -2
  273. data/src/cxx_supportlib/ServerKit/Hooks.h +4 -4
  274. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +2 -2
  275. data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +2 -2
  276. data/src/cxx_supportlib/ServerKit/HttpClient.h +2 -2
  277. data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +2 -3
  278. data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +2 -2
  279. data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
  280. data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +2 -2
  281. data/src/cxx_supportlib/ServerKit/HttpServer.h +17 -12
  282. data/src/cxx_supportlib/ServerKit/Implementation.cpp +2 -2
  283. data/src/cxx_supportlib/ServerKit/Server.h +2 -8
  284. data/src/cxx_supportlib/StaticString.h +2 -2
  285. data/src/cxx_supportlib/StrIntTools/DateParsing.h +2 -2
  286. data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +2 -2
  287. data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +2 -2
  288. data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +2 -2
  289. data/src/cxx_supportlib/StrIntTools/StringScanning.h +2 -2
  290. data/src/cxx_supportlib/StrIntTools/Template.h +2 -2
  291. data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +2 -2
  292. data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +2 -2
  293. data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +2 -2
  294. data/src/cxx_supportlib/SystemTools/SystemTime.cpp +2 -2
  295. data/src/cxx_supportlib/SystemTools/SystemTime.h +2 -2
  296. data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +2 -2
  297. data/src/cxx_supportlib/SystemTools/UserDatabase.h +2 -2
  298. data/src/cxx_supportlib/Utils/AnsiColorConstants.h +2 -2
  299. data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +4 -2
  300. data/src/cxx_supportlib/Utils/BlockingQueue.h +2 -2
  301. data/src/cxx_supportlib/Utils/CachedFileStat.cpp +2 -2
  302. data/src/cxx_supportlib/Utils/CachedFileStat.h +2 -2
  303. data/src/cxx_supportlib/Utils/CachedFileStat.hpp +2 -2
  304. data/src/cxx_supportlib/Utils/ClassUtils.h +2 -2
  305. data/src/cxx_supportlib/Utils/Curl.h +2 -2
  306. data/src/cxx_supportlib/Utils/FastStringStream.h +2 -2
  307. data/src/cxx_supportlib/Utils/FileChangeChecker.h +2 -2
  308. data/src/cxx_supportlib/Utils/HttpConstants.h +2 -2
  309. data/src/cxx_supportlib/Utils/IniFile.h +2 -2
  310. data/src/cxx_supportlib/Utils/MessagePassing.h +2 -2
  311. data/src/cxx_supportlib/Utils/OptionParsing.h +2 -2
  312. data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +2 -2
  313. data/src/cxx_supportlib/Utils/ScopeGuard.h +2 -2
  314. data/src/cxx_supportlib/Utils/SpeedMeter.h +2 -5
  315. data/src/cxx_supportlib/Utils/Timer.h +2 -2
  316. data/src/cxx_supportlib/Utils/VariantMap.h +2 -2
  317. data/src/cxx_supportlib/Utils.cpp +2 -2
  318. data/src/cxx_supportlib/Utils.h +2 -2
  319. data/src/cxx_supportlib/WatchdogLauncher.cpp +2 -2
  320. data/src/cxx_supportlib/WatchdogLauncher.h +3 -5
  321. data/src/cxx_supportlib/WebSocketCommandReverseServer.h +2 -2
  322. data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +2 -2
  323. data/src/cxx_supportlib/WrapperRegistry/CBindings.h +2 -2
  324. data/src/cxx_supportlib/WrapperRegistry/Entry.h +2 -2
  325. data/src/cxx_supportlib/WrapperRegistry/Registry.h +2 -2
  326. data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
  327. data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
  328. data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
  329. data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
  330. data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +1 -1
  331. data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +1 -1
  332. data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +1 -1
  333. data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +1 -1
  334. data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
  335. data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
  336. data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +1 -1
  337. data/src/cxx_supportlib/oxt/implementation.cpp +12 -1
  338. data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
  339. data/src/cxx_supportlib/oxt/macros.hpp +1 -1
  340. data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
  341. data/src/cxx_supportlib/oxt/system_calls.cpp +11 -4
  342. data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
  343. data/src/cxx_supportlib/oxt/thread.hpp +2 -2
  344. data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
  345. data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +2 -2
  346. data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +35 -9
  347. data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +3 -2
  348. data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
  349. data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +74 -68
  350. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +11 -11
  351. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +2 -2
  352. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +2 -2
  353. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +10 -10
  354. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +1 -1
  355. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +3 -3
  356. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +2 -2
  357. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +1 -1
  358. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +2 -2
  359. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +9 -9
  360. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +2 -2
  361. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +6 -6
  362. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +2 -2
  363. data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +1 -1
  364. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +88 -22
  365. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +91 -22
  366. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +105 -23
  367. data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +90 -23
  368. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +2 -2
  369. data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +1 -1
  370. data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_after.hpp +303 -0
  371. data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_at.hpp +296 -0
  372. data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/impl/co_composed.hpp → co_composed.hpp} +208 -61
  373. data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +49 -0
  374. data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +10 -201
  375. data/src/cxx_supportlib/vendor-modified/boost/asio/composed.hpp +415 -0
  376. data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +214 -48
  377. data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +3 -4
  378. data/src/cxx_supportlib/vendor-modified/boost/asio/default_completion_token.hpp +91 -0
  379. data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +9 -5
  380. data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +2 -2
  381. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
  382. data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_message.hpp → detail/completion_message.hpp} +14 -16
  383. data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_payload.hpp → detail/completion_payload.hpp} +30 -32
  384. data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_handler.hpp → detail/completion_payload_handler.hpp} +15 -13
  385. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +26 -32
  386. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +5 -1
  387. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +14 -118
  388. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +36 -33
  389. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +1 -1
  390. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +7 -5
  391. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +6 -4
  392. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +44 -35
  393. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
  394. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiation_base.hpp +64 -0
  395. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +0 -11
  396. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +20 -16
  397. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +0 -1
  398. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +4 -4
  399. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +23 -18
  400. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +9 -0
  401. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +1 -1
  402. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +1 -1
  403. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +11 -1
  404. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timed_cancel_op.hpp +363 -0
  405. data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +29 -51
  406. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +1 -1
  407. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +1 -1
  408. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +1 -1
  409. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +1 -1
  410. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +1 -1
  411. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +1 -1
  412. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +1 -1
  413. data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +1 -1
  414. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +2 -1
  415. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +2 -1
  416. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +2 -114
  417. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +2 -3
  418. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +27 -19
  419. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +0 -1
  420. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +17 -15
  421. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +2 -3
  422. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +4 -2
  423. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +3 -5
  424. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +12 -7
  425. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +1 -1
  426. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +38 -40
  427. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +3 -3
  428. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +5 -5
  429. data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +1 -1
  430. data/src/cxx_supportlib/vendor-modified/boost/asio/immediate.hpp +144 -0
  431. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +14 -7
  432. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +45 -14
  433. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +3 -3
  434. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_after.hpp +270 -0
  435. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_at.hpp +270 -0
  436. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +8 -0
  437. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +60 -166
  438. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +14 -7
  439. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +2 -2
  440. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +14 -7
  441. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +26 -177
  442. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +16 -82
  443. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +13 -286
  444. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +55 -18
  445. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +1 -1
  446. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +26 -185
  447. data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +16 -87
  448. data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +5 -5
  449. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +6 -6
  450. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
  451. data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +1 -1
  452. data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +12 -6
  453. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +1 -1
  454. data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +2 -2
  455. data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +127 -28
  456. data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +70 -20
  457. data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +114 -36
  458. data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +43 -3
  459. data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +2 -2
  460. data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +0 -1
  461. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
  462. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +10 -7
  463. data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +5 -5
  464. data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +2 -2
  465. data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +2 -2
  466. data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +1 -1
  467. data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +1 -1
  468. data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
  469. data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +147 -35
  470. data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +74 -22
  471. data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -0
  472. data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +4 -1
  473. data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +42 -11
  474. data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +15 -37
  475. data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +8 -8
  476. data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
  477. data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +151 -10
  478. data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +11 -9
  479. data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +611 -102
  480. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +1 -1
  481. data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +47 -47
  482. data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +25 -24
  483. data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocation_type.hpp +7 -7
  484. data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_list.hpp +2 -2
  485. data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_slist.hpp +2 -2
  486. data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +35 -1
  487. data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +14 -14
  488. data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +1 -1
  489. data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +55 -23
  490. data/src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp +1 -1
  491. data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_container.hpp +2 -2
  492. data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp +1 -1
  493. data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_pair.hpp +4 -4
  494. data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +8 -8
  495. data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +9 -9
  496. data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +4 -4
  497. data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +96 -10
  498. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +19 -4
  499. data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +1 -1
  500. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +17 -17
  501. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp +1 -1
  502. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +2 -2
  503. data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_resource.hpp +4 -4
  504. data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +86 -52
  505. data/src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp +4 -4
  506. data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +12 -0
  507. data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +145 -65
  508. data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +105 -22
  509. data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +2 -2
  510. data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +30 -22
  511. data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +19 -2
  512. data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +1 -1
  513. data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +15 -8
  514. data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +6 -5
  515. data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +15 -15
  516. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +1 -1
  517. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -1
  518. data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +3 -3
  519. data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +1 -1
  520. data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +2 -2
  521. data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +31 -24
  522. data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +45 -43
  523. data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +45 -33
  524. data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +5 -7
  525. data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +55 -47
  526. data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +3 -3
  527. data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +222 -73
  528. data/src/cxx_supportlib/vendor-modified/boost/core/detail/minstd_rand.hpp +58 -0
  529. data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +13 -13
  530. data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +53 -5
  531. data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +1 -0
  532. data/src/cxx_supportlib/vendor-modified/boost/core/pointer_in_range.hpp +49 -0
  533. data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +2 -0
  534. data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +7 -2
  535. data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +22 -34
  536. data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +141 -38
  537. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algorithm.hpp +8 -8
  538. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +1 -1
  539. data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +8 -6
  540. data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
  541. data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +22 -17
  542. data/src/cxx_supportlib/vendor-modified/boost/libs/random/src/random_device.cpp +3 -1
  543. data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +0 -1
  544. data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +53 -0
  545. data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +9 -1
  546. data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +6 -1
  547. data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
  548. data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/integral_wrapper.hpp +2 -1
  549. data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
  550. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +1 -1
  551. data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +4 -1
  552. data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +13 -1
  553. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +13 -1
  554. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +15 -0
  555. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +13 -1
  556. data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +15 -0
  557. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +22 -6
  558. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +38 -10
  559. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +111 -2
  560. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/cumulative_stats.hpp +177 -0
  561. data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +11 -1
  562. data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +33 -7
  563. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +12 -0
  564. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +15 -0
  565. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +12 -0
  566. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +14 -0
  567. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +19 -0
  568. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +12 -0
  569. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +15 -0
  570. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +12 -0
  571. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +14 -0
  572. data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +17 -0
  573. data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +1 -43
  574. data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
  575. data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +2 -2
  576. data/src/helper-scripts/backtrace-sanitizer.rb +2 -2
  577. data/src/helper-scripts/crash-watch.rb +1 -1
  578. data/src/helper-scripts/download_binaries/extconf.rb +2 -2
  579. data/src/helper-scripts/meteor-loader.rb +9 -4
  580. data/src/helper-scripts/node-loader.js +2 -2
  581. data/src/helper-scripts/prespawn +2 -2
  582. data/src/helper-scripts/rack-loader.rb +2 -2
  583. data/src/helper-scripts/rack-preloader.rb +2 -2
  584. data/src/helper-scripts/wsgi-loader.py +2 -2
  585. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +10 -2
  586. data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +2 -2
  587. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +8 -2
  588. data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +2 -2
  589. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +14 -2
  590. data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +2 -2
  591. data/src/nginx_module/Configuration.c +1 -1
  592. data/src/nginx_module/Configuration.h +1 -1
  593. data/src/nginx_module/ContentHandler.c +1 -1
  594. data/src/nginx_module/ContentHandler.h +1 -1
  595. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +2 -2
  596. data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
  597. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +2 -2
  598. data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +2 -2
  599. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +2 -2
  600. data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
  601. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +2 -2
  602. data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +2 -2
  603. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +2 -2
  604. data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
  605. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +7 -2
  606. data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
  607. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +13 -2
  608. data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
  609. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +6 -2
  610. data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
  611. data/src/nginx_module/StaticContentHandler.c +1 -1
  612. data/src/nginx_module/StaticContentHandler.h +1 -1
  613. data/src/nginx_module/ngx_http_passenger_module.c +2 -2
  614. data/src/nginx_module/ngx_http_passenger_module.h +1 -1
  615. data/src/nodejs_supportlib/phusion_passenger/line_reader.js +2 -2
  616. data/src/ruby_native_extension/extconf.rb +2 -2
  617. data/src/ruby_native_extension/passenger_native_support.c +2 -2
  618. data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +2 -2
  619. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +2 -2
  620. data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +2 -2
  621. data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +2 -2
  622. data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +2 -2
  623. data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +9 -2
  624. data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +2 -2
  625. data/src/ruby_supportlib/phusion_passenger/common_library.rb +2 -2
  626. data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +2 -2
  627. data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +2 -2
  628. data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +2 -2
  629. data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +2 -2
  630. data/src/ruby_supportlib/phusion_passenger/config/command.rb +2 -2
  631. data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +2 -2
  632. data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +8 -4
  633. data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +2 -2
  634. data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +2 -2
  635. data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +2 -2
  636. data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +2 -2
  637. data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +12 -2
  638. data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +2 -2
  639. data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +2 -2
  640. data/src/ruby_supportlib/phusion_passenger/config/main.rb +2 -2
  641. data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +14 -6
  642. data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +2 -2
  643. data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +2 -2
  644. data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +2 -2
  645. data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +2 -2
  646. data/src/ruby_supportlib/phusion_passenger/config/utils.rb +2 -2
  647. data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +2 -2
  648. data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +2 -2
  649. data/src/ruby_supportlib/phusion_passenger/constants.rb +2 -2
  650. data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +2 -2
  651. data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +12 -4
  652. data/src/ruby_supportlib/phusion_passenger/message_channel.rb +2 -2
  653. data/src/ruby_supportlib/phusion_passenger/message_client.rb +2 -2
  654. data/src/ruby_supportlib/phusion_passenger/native_support.rb +2 -2
  655. data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +10 -2
  656. data/src/ruby_supportlib/phusion_passenger/packaging.rb +2 -2
  657. data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +2 -2
  658. data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +2 -2
  659. data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +2 -2
  660. data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +34 -7
  661. data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +2 -2
  662. data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +2 -2
  663. data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +2 -2
  664. data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +2 -2
  665. data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +2 -2
  666. data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +2 -2
  667. data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +2 -2
  668. data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +2 -2
  669. data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +2 -2
  670. data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +2 -2
  671. data/src/ruby_supportlib/phusion_passenger/platform_info.rb +2 -2
  672. data/src/ruby_supportlib/phusion_passenger/plugin.rb +2 -2
  673. data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +14 -8
  674. data/src/ruby_supportlib/phusion_passenger/public_api.rb +2 -2
  675. data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +2 -2
  676. data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +2 -2
  677. data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +2 -2
  678. data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +2 -2
  679. data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -2
  680. data/src/ruby_supportlib/phusion_passenger/request_handler.rb +2 -2
  681. data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +2 -2
  682. data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +2 -2
  683. data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +2 -2
  684. data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +2 -2
  685. data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +2 -2
  686. data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +14 -3
  687. data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -2
  688. data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +2 -2
  689. data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +2 -2
  690. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +5 -3
  691. data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +3 -3
  692. data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +2 -6
  693. data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +3 -4
  694. data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +9 -3
  695. data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +2 -2
  696. data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +2 -2
  697. data/src/ruby_supportlib/phusion_passenger/utils/download.rb +2 -2
  698. data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +2 -2
  699. data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +2 -2
  700. data/src/ruby_supportlib/phusion_passenger/utils/json.rb +5 -1
  701. data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +2 -2
  702. data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +2 -2
  703. data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +2 -2
  704. data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +2 -2
  705. data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +2 -2
  706. data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +2 -2
  707. data/src/ruby_supportlib/phusion_passenger/utils.rb +7 -17
  708. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
  709. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/base.rb +1 -1
  710. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
  711. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +1 -1
  712. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +1 -1
  713. data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/version.rb +1 -1
  714. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/lock_file.rb +1 -1
  715. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +1 -1
  716. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +1 -1
  717. data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +1 -1
  718. data/src/ruby_supportlib/phusion_passenger.rb +8 -8
  719. data/src/schema_printer/SchemaPrinterMain.cpp +2 -2
  720. data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +2 -2
  721. metadata +23 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '090896f92fb435c62847f46a39df880b08d3081323c925b35be422bb701d44a4'
4
- data.tar.gz: 7c41513aef78b37d5ac93573afc01992f3d5ec6fe08101103ee0a0a2a8ab1cd4
3
+ metadata.gz: '0864392c22c6c48427a4ab0e8eeb4254fbb2f6cbb6d07c13570bc9f54b710dd6'
4
+ data.tar.gz: ecff7e5b78e2a08f93fb73c12126964d29cc80065aaa96e0153505db63f3c066
5
5
  SHA512:
6
- metadata.gz: 3c6daa23ca3426ebafa54f7d94b018467bbc6d2572799a50ddf111f0628673d5e308ead07dd8e7d06e9d6a8b63bbdc28090c1c581ef06e6a6fce1a143956a6ac
7
- data.tar.gz: 12130ca0f74963de002f8d1a777a2ce4563631a4e6ea7a654325efec072dd4e44e40989df4cbe9addad1b12664cdfd53d6ceeb9e76133f3ca169dc2b334ff478
6
+ metadata.gz: 24706e10441ff794e17f663197c57ad276b18588fc3f31fade19475ad834c7e08470d63d275639ba4a97bc4f76152af477c9fd1297ff637afe086c1957e78d71
7
+ data.tar.gz: 61d9e594cf3487de28fa37c19398408685d0e1a74d3ffcd5d388c3f0fc5dd59b1a173a814f4c77298a11de7394ea7d677cb353308d8b7bb70e39cfe16296f2c0
data/CHANGELOG CHANGED
@@ -1,4 +1,48 @@
1
- Release 6.0.23 (Not yet released)
1
+ Release 6.0.25 (Not yet released)
2
+ -------------
3
+ * Fixes compilation with clang 19 (latest Fedora update) by dropping a buggy stddev function from the moving average header. Closes GH-2580.
4
+ * [Standalone] Adds a config option to specify the stop timeout for Passenger: `--stop-timeout 120` or `PASSENGER_STOP_TIMEOUT=120`.
5
+ * [Standalone] Changes Passenger's (not apps') start timeout to 25s (from 15s), stop timeouts default to 60s.
6
+ * [Ruby] Fixes an issue where Bundler would try to re-exec the process name instead of the script. Closes GH-2567 and GH-2577.
7
+ * [Enterprise] Adds a temporary flag to allow reverting to previous routing behaviour, in order to mitigate possible performance regressions, this flag will become a no-op and eventually removed once the routing issues have been fixed. Closes GH-2579.
8
+ - Apache: PassengerOldRouting on
9
+ - Nginx: passenger_old_routing on;
10
+ - Standalone: --old-routing
11
+ * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
12
+ - cmake: 3.31.2 -> 3.31.3
13
+ - curl: 8.11.0 -> 8.11.1
14
+ - libiconv: 1.17 -> 1.18
15
+ - rubygems: 3.5.23 -> 3.6.2
16
+ - rubies:
17
+ - added 3.4.1
18
+
19
+
20
+ Release 6.0.24
21
+ -------------
22
+ * [Nginx] Upgrades preferred Nginx to 1.26.2 from 1.26.1.
23
+ * [Enterprise] Smarter rolling restarts for better performance and reliability. We changed the way we route requests. Instead of picking the least-busy process, we now first prioritize new processes first. During a rolling restart, this new behavior leads to more efficient utilization of application caches, faster validation of new rollouts, and faster recovery from problematic deployments. Closes GH-2551.
24
+ * Fix a regression from 6.0.10 where running `passenger-config system-properties` would throw an error. Closes GH-2565.
25
+ * [Enterprise] Fix a memory corruption-related crash that could occur during rolling restarting.
26
+ * [Ubuntu] Add packages for Ubuntu 24.10 "oracular".
27
+ * [Ruby] Specify rackup version to avoid broken 1.0 gem. Closes GH-2559.
28
+ * Fixes compatibility with Ruby apps whose Gemfile.lock depends on base64.
29
+ * Upgrades Boost from 1.85 -> 1.86.
30
+ * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
31
+ - ccache 4.10.1 -> 4.10.2
32
+ - cmake 3.30.1 -> 3.31.2
33
+ - curl 8.8.0 -> 8.11.0
34
+ - git 2.45.2 -> 2.47.1
35
+ - gnupg 2.4.5 -> 2.4.7
36
+ - libgpg_error 1.50 -> 1.51
37
+ - npth 1.7 -> 1.8
38
+ - openssl 3.3.1 -> 3.4.0
39
+ - rubygems 3.5.16 -> 3.5.23
40
+ - rubies:
41
+ - 3.2.4 -> 3.2.6
42
+ - 3.3.4 -> 3.3.6
43
+
44
+
45
+ Release 6.0.23
2
46
  -------------
3
47
  * [Enterprise] The rolling restart feature now replaces app processes in newest-to-oldest order, to make more efficient use of alive processes during the rolling-restart's duration. Closes GH-2551.
4
48
  * [Ruby] Improve Rack 3 compatibility.
@@ -158,12 +202,12 @@ Release 6.0.17
158
202
  * Changes minimum supported macOS version to 10.14 Mojave.
159
203
  * Adds support for a `PASSENGER_MAX_LOG_LINE_LENGTH_BYTES` environment variable. The default length remains at 8KB. Closes GH-2413.
160
204
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
161
- - curl: 7.86.0 7.87.0
162
- - git: 2.38.1 2.39.0
163
- - gnupg: 2.3.8 2.4.0
164
- - libksba: 1.6.2 1.6.3
165
- - openssl: 1.1.1s 3.0.7
166
- - rubygems: 3.3.26 3.4.3
205
+ - curl: 7.86.0 -> 7.87.0
206
+ - git: 2.38.1 -> 2.39.0
207
+ - gnupg: 2.3.8 -> 2.4.0
208
+ - libksba: 1.6.2 -> 1.6.3
209
+ - openssl: 1.1.1s -> 3.0.7
210
+ - rubygems: 3.3.26 -> 3.4.3
167
211
  - rubies: added 3.2.0
168
212
 
169
213
 
@@ -174,20 +218,20 @@ Release 6.0.16
174
218
  * Adds systemd private tmpdir workaround on Ubuntu/Debian. Closes GH-2397.
175
219
  * Downgrade jsoncpp to 1.8.1 from 1.9.5 to fix invalid json generation bug. Closes GH-2445.
176
220
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
177
- - cmake: 3.24.2 3.25.1
178
- - curl: 7.85.0 7.86.0
179
- - git 2.37.3 2.38.1
180
- - gnupg: 2.3.7 2.3.8
181
- - libgpg_error 1.45 1.46
182
- - libksba 1.6.1 1.6.2
183
- - openssl: 1.1.1q 1.1.1s
184
- - rubygems 3.3.22 3.3.26
185
- - s3cmd 2.2.0 2.3.0
186
- - zlib: 1.2.12 1.2.13
221
+ - cmake: 3.24.2 -> 3.25.1
222
+ - curl: 7.85.0 -> 7.86.0
223
+ - git 2.37.3 -> 2.38.1
224
+ - gnupg: 2.3.7 -> 2.3.8
225
+ - libgpg_error 1.45 -> 1.46
226
+ - libksba 1.6.1 -> 1.6.2
227
+ - openssl: 1.1.1q -> 1.1.1s
228
+ - rubygems 3.3.22 -> 3.3.26
229
+ - s3cmd 2.2.0 -> 2.3.0
230
+ - zlib: 1.2.12 -> 1.2.13
187
231
  - rubies:
188
- - 2.7.6 2.7.7
189
- - 3.0.4 3.0.5
190
- - 3.1.2 3.1.3
232
+ - 2.7.6 -> 2.7.7
233
+ - 3.0.4 -> 3.0.5
234
+ - 3.1.2 -> 3.1.3
191
235
 
192
236
 
193
237
  Release 6.0.15
@@ -204,16 +248,16 @@ Release 6.0.15
204
248
  * Improve Solaris support for 11.3 & 11.4.
205
249
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
206
250
 
207
- - ccache: 4.6 4.6.3
208
- - cmake: 3.23.1 3.24.2
209
- - curl: 7.82.0 7.85.0
210
- - git: 2.36.0 2.37.3
211
- - gnupg: 2.3.5 2.3.7
212
- - libiconv: 1.16 1.17
213
- - libksba: 1.6.0 1.6.1
214
- - openssl: 1.1.1n 1.1.1q
215
- - pinentry: 1.2.0 1.2.1
216
- - rubygems: 3.3.12 3.3.22
251
+ - ccache: 4.6 -> 4.6.3
252
+ - cmake: 3.23.1 -> 3.24.2
253
+ - curl: 7.82.0 -> 7.85.0
254
+ - git: 2.36.0 -> 2.37.3
255
+ - gnupg: 2.3.5 -> 2.3.7
256
+ - libiconv: 1.16 -> 1.17
257
+ - libksba: 1.6.0 -> 1.6.1
258
+ - openssl: 1.1.1n -> 1.1.1q
259
+ - pinentry: 1.2.0 -> 1.2.1
260
+ - rubygems: 3.3.12 -> 3.3.22
217
261
 
218
262
 
219
263
  Release 6.0.14
@@ -225,19 +269,19 @@ Release 6.0.14
225
269
  * Removed google apis from error pages for easier GDPR compliance.
226
270
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
227
271
 
228
- - cmake 3.22.3 3.23.1
229
- - git 2.35.1 2.36.0
230
- - gnupg 2.3.4 2.3.5
231
- - libgcrypt 1.9.4 1.10.1
232
- - libgpg_error 1.44 1.45
233
- - ntbtls 0.3.0 0.3.1
234
- - rubygems 3.3.9 3.3.12
235
- - zlib 1.2.11 1.2.12
272
+ - cmake 3.22.3 -> 3.23.1
273
+ - git 2.35.1 -> 2.36.0
274
+ - gnupg 2.3.4 -> 2.3.5
275
+ - libgcrypt 1.9.4 -> 1.10.1
276
+ - libgpg_error 1.44 -> 1.45
277
+ - ntbtls 0.3.0 -> 0.3.1
278
+ - rubygems 3.3.9 -> 3.3.12
279
+ - zlib 1.2.11 -> 1.2.12
236
280
  - ruby
237
- - 2.6.9 2.6.10
238
- - 2.7.5 2.7.6
239
- - 3.0.3 3.0.4
240
- - 3.1.1 3.1.2
281
+ - 2.6.9 -> 2.6.10
282
+ - 2.7.5 -> 2.7.6
283
+ - 3.0.3 -> 3.0.4
284
+ - 3.1.1 -> 3.1.2
241
285
 
242
286
 
243
287
  Release 6.0.13
@@ -246,7 +290,7 @@ Release 6.0.13
246
290
  * Fix compilation on FreeBSD 13. Closes GH-2402.
247
291
  * [Ruby] Fixes app process crash when ECONNRESET received.
248
292
  * Fix automated fetching of pcre source for installer scripts.
249
- * Bump preferred nginx 1.20.1 1.20.2.
293
+ * Bump preferred nginx 1.20.1 -> 1.20.2.
250
294
  * [Ruby] Add option to preload bundler. Closes GH-2409.
251
295
 
252
296
  - Apache: PassengerPreloadBundler
@@ -257,22 +301,22 @@ Release 6.0.13
257
301
  * [RPMs] EL8 RPMs are now built on Rocky linux, and should be compatible with Alma, Rocky, CentOS, and RHEL.
258
302
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
259
303
 
260
- - ccache 4.4.2 4.6
261
- - cmake 3.21.4 3.22.3
262
- - curl 7.79.1 7.82.0
263
- - git 2.33.1 2.35.1
264
- - gnupg 2.3.3 2.3.4
265
- - libgpg_error 1.42 1.44
266
- - ntbtls 0.2.0 0.3.0
267
- - openssl 1.1.1l 1.1.1n
268
- - rubygems 3.2.30 3.3.9
269
- - zstd 1.5.0 1.5.2
304
+ - ccache 4.4.2 -> 4.6
305
+ - cmake 3.21.4 -> 3.22.3
306
+ - curl 7.79.1 -> 7.82.0
307
+ - git 2.33.1 -> 2.35.1
308
+ - gnupg 2.3.3 -> 2.3.4
309
+ - libgpg_error 1.42 -> 1.44
310
+ - ntbtls 0.2.0 -> 0.3.0
311
+ - openssl 1.1.1l -> 1.1.1n
312
+ - rubygems 3.2.30 -> 3.3.9
313
+ - zstd 1.5.0 -> 1.5.2
270
314
  - ruby
271
315
  - dropped 2.4.10
272
316
  - dropped 2.5.9
273
- - 2.6.8 2.6.9
274
- - 2.7.4 2.7.5
275
- - 3.0.2 3.0.3
317
+ - 2.6.8 -> 2.6.9
318
+ - 2.7.4 -> 2.7.5
319
+ - 3.0.2 -> 3.0.3
276
320
  - added 3.1.1
277
321
 
278
322
 
@@ -290,13 +334,13 @@ Release 6.0.12
290
334
  * [Nginx] add new config option to choose the status code returned when application spawning fails. (passenger_spawn_exception_status_code).
291
335
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
292
336
 
293
- - ccache: 4.4.1 4.4.2
294
- - cmake: 3.21.2 3.21.4
295
- - curl: 7.78.0 7.79.1
296
- - git: 2.33.0 2.33.1
297
- - gnupg: 2.3.2 2.3.3
298
- - rubygems: 3.2.27 3.2.30
299
- - s3cmd: 2.1.0 2.2.0
337
+ - ccache: 4.4.1 -> 4.4.2
338
+ - cmake: 3.21.2 -> 3.21.4
339
+ - curl: 7.78.0 -> 7.79.1
340
+ - git: 2.33.0 -> 2.33.1
341
+ - gnupg: 2.3.2 -> 2.3.3
342
+ - rubygems: 3.2.27 -> 3.2.30
343
+ - s3cmd: 2.1.0 -> 2.2.0
300
344
 
301
345
 
302
346
  Release 6.0.11
@@ -307,19 +351,19 @@ Release 6.0.11
307
351
  * Fix compilation on GCC < 4.5.
308
352
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
309
353
 
310
- - ccache: 4.3 4.4.1
311
- - cmake: 3.20.5 3.21.2
312
- - curl: 7.77.0 7.78.0
313
- - git: 2.32.0 2.33.0
314
- - gnupg: 2.3.1 2.3.2
315
- - libgcrypt: 1.9.3 1.9.4
316
- - openssl: 1.1.1k 1.1.1l
317
- - pinentry: 1.1.1 1.2.0
318
- - rubygems: 3.2.21 3.2.27
354
+ - ccache: 4.3 -> 4.4.1
355
+ - cmake: 3.20.5 -> 3.21.2
356
+ - curl: 7.77.0 -> 7.78.0
357
+ - git: 2.32.0 -> 2.33.0
358
+ - gnupg: 2.3.1 -> 2.3.2
359
+ - libgcrypt: 1.9.3 -> 1.9.4
360
+ - openssl: 1.1.1k -> 1.1.1l
361
+ - pinentry: 1.1.1 -> 1.2.0
362
+ - rubygems: 3.2.21 -> 3.2.27
319
363
  - rubies:
320
- - 2.6.7 2.6.8
321
- - 2.7.3 2.7.4
322
- - 3.0.1 3.0.2
364
+ - 2.6.7 -> 2.6.8
365
+ - 2.7.3 -> 2.7.4
366
+ - 3.0.1 -> 3.0.2
323
367
 
324
368
 
325
369
  Release 6.0.10
@@ -329,11 +373,11 @@ Release 6.0.10
329
373
  * [Nginx] The preferred PCRE version is now 8.45 (previously 8.44).
330
374
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
331
375
 
332
- - cmake 3.20.3 3.20.5
333
- - git 2.31.1 2.32.0
334
- - libksba 1.5.1 1.6.0
335
- - rubygems 3.2.19 3.2.21
336
- - pcre 8.44 8.45
376
+ - cmake 3.20.3 -> 3.20.5
377
+ - git 2.31.1 -> 2.32.0
378
+ - libksba 1.5.1 -> 1.6.0
379
+ - rubygems 3.2.19 -> 3.2.21
380
+ - pcre 8.44 -> 8.45
337
381
 
338
382
 
339
383
  Release 6.0.9
@@ -344,25 +388,25 @@ Release 6.0.9
344
388
  * Remove prebuilt packages for Ubuntu Groovy.
345
389
  * Properly support HTTP 418. Contributed by Thomas Pfister.
346
390
  * Fix several C++ warnings about implicit copy operators/constructors.
347
- * Bump preferred nginx 1.18.0 1.20.1.
391
+ * Bump preferred nginx 1.18.0 -> 1.20.1.
348
392
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
349
393
 
350
- - ccache 4.2 4.3
351
- - cmake 3.19.7 3.20.3
352
- - curl 7.75.0 7.77.0
353
- - git 2.31.0 2.31.1
354
- - gnupg 2.2.27 2.3.1
355
- - libgcrypt 1.9.2 1.9.3
356
- - libksba 1.5.0 1.5.1
357
- - ntbTLS added 0.2.0
358
- - zlib 1.4.9 1.5.0
359
- - rubygems 3.2.15 3.2.19
394
+ - ccache 4.2 -> 4.3
395
+ - cmake 3.19.7 -> 3.20.3
396
+ - curl 7.75.0 -> 7.77.0
397
+ - git 2.31.0 -> 2.31.1
398
+ - gnupg 2.2.27 -> 2.3.1
399
+ - libgcrypt 1.9.2 -> 1.9.3
400
+ - libksba 1.5.0 -> 1.5.1
401
+ - ntbTLS added -> 0.2.0
402
+ - zlib 1.4.9 -> 1.5.0
403
+ - rubygems 3.2.15 -> 3.2.19
360
404
  - ruby:
361
- - 2.3.8 removed
362
- - 2.5.8 2.5.9
363
- - 2.6.6 2.6.7
364
- - 2.7.2 2.7.3
365
- - 3.0.0 3.0.1
405
+ - 2.3.8 -> removed
406
+ - 2.5.8 -> 2.5.9
407
+ - 2.6.6 -> 2.6.7
408
+ - 2.7.2 -> 2.7.3
409
+ - 3.0.0 -> 3.0.1
366
410
 
367
411
 
368
412
  Release 6.0.8
@@ -377,19 +421,19 @@ Release 6.0.8
377
421
  * No-longer build 32 bit prebuilt binaries, as HBB dropped support.
378
422
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
379
423
 
380
- - ccache_version: 4.0 4.2
381
- - cmake_version: 3.18.4 3.19.7
382
- - curl_version: 7.73.0 7.75.0
383
- - git_version: 2.29.1 2.31.0
384
- - gnupg_version: 2.2.23 2.2.27
385
- - libassuan_version: 2.5.4 2.5.5
386
- - libgcrypt_version: 1.8.7 1.9.2
387
- - libgpg_error_version: 1.39 1.42
388
- - libksba_version: 1.4.0 1.5.0
389
- - openssl_version: 1.1.1h 1.1.1k
390
- - pinentry_version: 1.1.0 1.1.1
391
- - rubygems_version: 3.1.4 3.2.15
392
- - zstd_version: 1.4.5 1.4.9
424
+ - ccache_version: 4.0 -> 4.2
425
+ - cmake_version: 3.18.4 -> 3.19.7
426
+ - curl_version: 7.73.0 -> 7.75.0
427
+ - git_version: 2.29.1 -> 2.31.0
428
+ - gnupg_version: 2.2.23 -> 2.2.27
429
+ - libassuan_version: 2.5.4 -> 2.5.5
430
+ - libgcrypt_version: 1.8.7 -> 1.9.2
431
+ - libgpg_error_version: 1.39 -> 1.42
432
+ - libksba_version: 1.4.0 -> 1.5.0
433
+ - openssl_version: 1.1.1h -> 1.1.1k
434
+ - pinentry_version: 1.1.0 -> 1.1.1
435
+ - rubygems_version: 3.1.4 -> 3.2.15
436
+ - zstd_version: 1.4.5 -> 1.4.9
393
437
  - ruby_versions + 3.0.0
394
438
 
395
439
 
@@ -458,9 +502,9 @@ Release 6.0.5
458
502
  * [Nginx] The preferred PCRE version is now 8.44 (previously 8.43).
459
503
  * Removed deprecated rubyforge gemspec property. Contributed by @olleolleolle.
460
504
  * Adds an option for specifying the attributes on the sticky session cookie:
461
- - Apache: PassengerStickySessionsCookieAttributes "SameSite=Lax; Secure;"
462
- - Nginx: passenger_sticky_sessions_cookie_attributes "SameSite=Lax; Secure;"
463
- - Standalone: --sticky-sessions-cookie-attributes "SameSite=Lax; Secure;"
505
+ - Apache: PassengerStickySessionsCookieAttributes "SameSite=Lax; Secure;"
506
+ - Nginx: passenger_sticky_sessions_cookie_attributes "SameSite=Lax; Secure;"
507
+ - Standalone: --sticky-sessions-cookie-attributes "SameSite=Lax; Secure;"
464
508
  * Updated various library versions used in precompiled binaries (used for e.g. gem installs):
465
509
 
466
510
  - ccache 3.7.9 (was 3.7.3)
@@ -570,7 +614,7 @@ Release 6.0.1
570
614
  Release 6.0.0
571
615
  -------------
572
616
 
573
- * Introduces support for *all* programming languages. Yes that's right... Java, Elixir, Go Passenger now supports them all! This effort is called "generic language support".
617
+ * Introduces support for *all* programming languages. Yes that's right... Java, Elixir, Go - Passenger now supports them all! This effort is called "generic language support".
574
618
  * Bumps the preferred Nginx version to 1.15.7.
575
619
  * Introduces anonymous usage telemetry, which helps us improve Passenger. Please read the docs on what data is collected and how to disable this.
576
620
  * [Nginx] Introduces a new option "passenger_request_buffering on|off", to allow disabling request body buffering. This is only supported in Nginx >= 1.15.3. Closes GH-2121.
@@ -922,7 +966,7 @@ Release 5.0.29
922
966
  * [Nginx] The preferred Nginx version is now 1.10.1 (previously 1.10.0).
923
967
  * [Nginx] The preferred PCRE version is now 8.39 (previously 8.34).
924
968
  * [Standalone] Passenger Standalone now supports /dev/stdout and /dev/stderr as log file path (via `--log-file` or Passengerfile.json). This is especially useful in Docker containers. In previous versions logging to those paths did not work, resulting in nothing getting logged at all.
925
- * Adds Ubuntu 16.04 "Xenial" packages, deprecates Ubuntu 15.10 Wily packages (in accordance with LTS support policy).
969
+ * Adds Ubuntu 16.04 "Xenial" packages, deprecates Ubuntu 15.10 "Wily" packages (in accordance with LTS support policy).
926
970
 
927
971
 
928
972
  Release 5.0.28
data/LICENSE CHANGED
@@ -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 a copy
4
4
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -57,4 +57,4 @@ Ruby users can also build a gem from the Git repository and install the gem.
57
57
 
58
58
  ## Legal
59
59
 
60
- "Passenger" and "Phusion Passenger" are registered trademarks of Phusion Holding B.V.
60
+ "Passenger" and "Phusion Passenger" are registered trademarks of Asynchronous B.V.
data/Rakefile CHANGED
@@ -1,8 +1,8 @@
1
1
  # Phusion Passenger - https://www.phusionpassenger.com/
2
- # Copyright (C) 2008-2017 Phusion Holding B.V.
2
+ # Copyright (c) 2008-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
  # This program is free software; you can redistribute it and/or modify
8
8
  # it under the terms of the GNU General Public License as published by
@@ -28,13 +28,17 @@ $LOAD_PATH.unshift("#{SOURCE_ROOT}/src/ruby_supportlib")
28
28
  if defined?(Bundler)
29
29
  clean_env = nil
30
30
 
31
- if Bundler.method_defined?(:with_unbundled_env)
31
+ if Bundler.respond_to?(:with_original_env)
32
+ Bundler.with_original_env do
33
+ clean_env = ENV.to_hash.dup
34
+ end
35
+ elsif Bundler.respond_to?(:with_unbundled_env)
32
36
  Bundler.with_unbundled_env do
33
- clean_env = ENV.to_hash
37
+ clean_env = ENV.to_hash.dup
34
38
  end
35
39
  else
36
40
  Bundler.with_clean_env do
37
- clean_env = ENV.to_hash
41
+ clean_env = ENV.to_hash.dup
38
42
  end
39
43
  end
40
44
  ENV.replace(clean_env)
data/bin/passenger CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env ruby
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
data/bin/passenger-config CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env ruby
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
  #!/usr/bin/env ruby
2
2
  # encoding: binary
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
@@ -122,6 +122,8 @@ class Installer < PhusionPassenger::AbstractInstaller
122
122
  end
123
123
 
124
124
  def run_steps
125
+ PlatformInfo.verbose = true if @verbose_depcheck
126
+
125
127
  if PhusionPassenger.build_system_dir.nil?
126
128
  # Invariant: PhusionPassenger.custom_packaged?
127
129
  if apache_module_available?
@@ -944,6 +946,9 @@ parser = OptionParser.new do |opts|
944
946
  opts.on("--force-colors", "Display colors even if stdout is not a TTY") do
945
947
  options[:colorize] = true
946
948
  end
949
+ opts.on("--verbose-depcheck", "Show more dependency checking-related logs") do
950
+ options[:verbose_depcheck] = true
951
+ end
947
952
  opts.on("--snippet", "Show just the Apache config snippet.") do
948
953
  options[:snippet] = true
949
954
  end
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env ruby
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
@@ -39,6 +39,7 @@ require 'digest/sha2'
39
39
  require 'optparse'
40
40
  require 'fileutils'
41
41
  require 'tmpdir'
42
+ PhusionPassenger.require_passenger_lib 'platform_info/compiler'
42
43
  PhusionPassenger.require_passenger_lib 'platform_info/ruby'
43
44
  PhusionPassenger.require_passenger_lib 'platform_info/openssl'
44
45
  PhusionPassenger.require_passenger_lib 'abstract_installer'
@@ -542,8 +543,18 @@ private
542
543
  end
543
544
 
544
545
  def build_nginx_configure_command(prefix, extra_configure_flags = nil)
545
- extra_cflags = "-Wno-error #{PlatformInfo.openssl_extra_cflags}".strip
546
- extra_ldflags = PlatformInfo.openssl_extra_ldflags
546
+ # When USE_ASAN is set, we compile our own code with AddressSanitizer but not Nginx.
547
+ # It's a third-party codebase we don't control so enabling AddressSanitizer for
548
+ # Nginx as well is more likely to hurt than help.
549
+ extra_cflags = [
550
+ "-Wno-error",
551
+ PlatformInfo.openssl_extra_cflags,
552
+ ].compact.join(" ").strip
553
+
554
+ extra_ldflags = [
555
+ PlatformInfo.openssl_extra_ldflags,
556
+ boolean_option('USE_ASAN') ? PlatformInfo.address_sanitizer_flags : nil,
557
+ ].compact.join(" ").strip
547
558
 
548
559
  command = "sh ./configure --prefix='#{prefix}' "
549
560
  command << "--with-http_ssl_module "
@@ -601,6 +612,10 @@ private
601
612
  end
602
613
  return digest.hexdigest
603
614
  end
615
+
616
+ def boolean_option(name)
617
+ ["1", "on", "true", "yes"].include?(ENV[name])
618
+ end
604
619
  end
605
620
 
606
621
  ORIG_ARGV = ARGV.dup
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env ruby
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
data/bin/passenger-status CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env ruby
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
data/build/agent.rb CHANGED
@@ -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
data/build/apache2.rb CHANGED
@@ -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
@@ -126,7 +126,7 @@ file(APACHE2_TARGET => dependencies) do
126
126
  PlatformInfo.apache2_module_cxx_ldflags,
127
127
  PlatformInfo.portability_cxx_ldflags,
128
128
  OPTIMIZE ? '-O' : nil,
129
- USE_ASAN ? "-shared-libasan" : nil
129
+ USE_ASAN ? PlatformInfo.address_sanitizer_flags : nil,
130
130
  ].compact
131
131
  )
132
132
  end