passenger 6.0.23 → 6.0.24
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.
Potentially problematic release.
This version of passenger might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG +26 -1
- data/Rakefile +7 -3
- data/bin/passenger-install-apache2-module +5 -0
- data/bin/passenger-install-nginx-module +17 -2
- data/build/apache2.rb +1 -1
- data/build/basics.rb +10 -4
- data/build/cxx_tests.rb +18 -7
- data/build/support/cxx_dependency_map.rb +40 -6
- data/build/test_basics.rb +4 -12
- data/package.json +1 -1
- data/passenger.gemspec +1 -1
- data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +8 -0
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +8 -0
- data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +9 -0
- data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +9 -0
- data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +63 -50
- data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +19 -9
- data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +8 -0
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +8 -0
- data/src/agent/Core/ApplicationPool/Group/Verification.cpp +8 -0
- data/src/agent/Core/ApplicationPool/Group.h +15 -5
- data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +5 -0
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +11 -1
- data/src/agent/Core/ApplicationPool/Pool.h +0 -2
- data/src/agent/Core/ApplicationPool/Process.h +22 -6
- data/src/agent/Core/ApplicationPool/Session.h +6 -1
- data/src/agent/Core/Config.h +7 -3
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Core/CoreMain.cpp +10 -17
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -53
- data/src/agent/Core/SpawningKit/Handshake/Session.h +3 -0
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +5 -2
- data/src/agent/Core/SpawningKit/SmartSpawner.h +6 -2
- data/src/agent/Core/SpawningKit/Spawner.h +4 -0
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +88 -9
- data/src/agent/Shared/Fundamentals/AbortHandler.h +2 -0
- data/src/agent/Shared/Fundamentals/Initialization.cpp +9 -3
- data/src/agent/Shared/Fundamentals/Initialization.h +3 -3
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +6 -7
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/agent/Watchdog/WatchdogMain.cpp +4 -7
- data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +5 -3
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +3 -0
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +3 -0
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +2 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringMap.h +0 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +1 -1
- data/src/cxx_supportlib/SafeLibev.h +1 -3
- data/src/cxx_supportlib/ServerKit/Hooks.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +0 -1
- data/src/cxx_supportlib/ServerKit/HttpServer.h +15 -10
- data/src/cxx_supportlib/ServerKit/Server.h +0 -6
- data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +2 -0
- data/src/cxx_supportlib/Utils/SpeedMeter.h +0 -3
- data/src/cxx_supportlib/oxt/implementation.cpp +11 -0
- data/src/cxx_supportlib/oxt/system_calls.cpp +10 -3
- data/src/cxx_supportlib/oxt/thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +35 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +74 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +88 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +91 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +105 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +90 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_after.hpp +303 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_at.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/impl/co_composed.hpp → co_composed.hpp} +208 -61
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +10 -201
- data/src/cxx_supportlib/vendor-modified/boost/asio/composed.hpp +415 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +214 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/default_completion_token.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_message.hpp → detail/completion_message.hpp} +14 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_payload.hpp → detail/completion_payload.hpp} +30 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/{experimental/detail/channel_handler.hpp → detail/completion_payload_handler.hpp} +15 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +14 -118
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +36 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +7 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +44 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiation_base.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +20 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +23 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timed_cancel_op.hpp +363 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +29 -51
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +2 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +27 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +17 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +12 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +38 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/immediate.hpp +144 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +45 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_after.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_at.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +60 -166
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +26 -177
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +16 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +13 -286
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +55 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +26 -185
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +16 -87
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +12 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +127 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +70 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +114 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +43 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +147 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +74 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +42 -11
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +15 -37
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +151 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +11 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +611 -102
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +47 -47
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +25 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocation_type.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_list.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_slist.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +35 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +55 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_container.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_pair.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +96 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +19 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_resource.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +86 -52
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +145 -65
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +105 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +30 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +19 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +15 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +31 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +45 -43
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +45 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +5 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +55 -47
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +222 -73
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/minstd_rand.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +53 -5
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/pointer_in_range.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +22 -34
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +141 -38
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algorithm.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +22 -17
- data/src/cxx_supportlib/vendor-modified/boost/libs/random/src/random_device.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/integral_wrapper.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +22 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +38 -10
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +111 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/cumulative_stats.hpp +177 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +33 -7
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +1 -43
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +6 -2
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +10 -0
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +12 -4
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +32 -5
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +0 -4
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +5 -1
- data/src/ruby_supportlib/phusion_passenger/utils.rb +5 -15
- data/src/ruby_supportlib/phusion_passenger.rb +5 -5
- metadata +21 -8
@@ -1,6 +1,6 @@
|
|
1
1
|
//
|
2
|
-
//
|
3
|
-
//
|
2
|
+
// detail/completion_message.hpp
|
3
|
+
// ~~~~~~~~~~~~~~~~~~~~~~~~~~
|
4
4
|
//
|
5
5
|
// Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
6
6
|
//
|
@@ -8,8 +8,8 @@
|
|
8
8
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
9
9
|
//
|
10
10
|
|
11
|
-
#ifndef
|
12
|
-
#define
|
11
|
+
#ifndef BOOST_ASIO_DETAIL_COMPLETION_MESSAGE_HPP
|
12
|
+
#define BOOST_ASIO_DETAIL_COMPLETION_MESSAGE_HPP
|
13
13
|
|
14
14
|
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
|
15
15
|
# pragma once
|
@@ -24,17 +24,16 @@
|
|
24
24
|
|
25
25
|
namespace boost {
|
26
26
|
namespace asio {
|
27
|
-
namespace experimental {
|
28
27
|
namespace detail {
|
29
28
|
|
30
29
|
template <typename Signature>
|
31
|
-
class
|
30
|
+
class completion_message;
|
32
31
|
|
33
32
|
template <typename R>
|
34
|
-
class
|
33
|
+
class completion_message<R()>
|
35
34
|
{
|
36
35
|
public:
|
37
|
-
|
36
|
+
completion_message(int)
|
38
37
|
{
|
39
38
|
}
|
40
39
|
|
@@ -46,11 +45,11 @@ public:
|
|
46
45
|
};
|
47
46
|
|
48
47
|
template <typename R, typename Arg0>
|
49
|
-
class
|
48
|
+
class completion_message<R(Arg0)>
|
50
49
|
{
|
51
50
|
public:
|
52
51
|
template <typename T0>
|
53
|
-
|
52
|
+
completion_message(int, T0&& t0)
|
54
53
|
: arg0_(static_cast<T0&&>(t0))
|
55
54
|
{
|
56
55
|
}
|
@@ -68,11 +67,11 @@ private:
|
|
68
67
|
};
|
69
68
|
|
70
69
|
template <typename R, typename Arg0, typename Arg1>
|
71
|
-
class
|
70
|
+
class completion_message<R(Arg0, Arg1)>
|
72
71
|
{
|
73
72
|
public:
|
74
73
|
template <typename T0, typename T1>
|
75
|
-
|
74
|
+
completion_message(int, T0&& t0, T1&& t1)
|
76
75
|
: arg0_(static_cast<T0&&>(t0)),
|
77
76
|
arg1_(static_cast<T1&&>(t1))
|
78
77
|
{
|
@@ -94,11 +93,11 @@ private:
|
|
94
93
|
};
|
95
94
|
|
96
95
|
template <typename R, typename... Args>
|
97
|
-
class
|
96
|
+
class completion_message<R(Args...)>
|
98
97
|
{
|
99
98
|
public:
|
100
99
|
template <typename... T>
|
101
|
-
|
100
|
+
completion_message(int, T&&... t)
|
102
101
|
: args_(static_cast<T&&>(t)...)
|
103
102
|
{
|
104
103
|
}
|
@@ -122,10 +121,9 @@ private:
|
|
122
121
|
};
|
123
122
|
|
124
123
|
} // namespace detail
|
125
|
-
} // namespace experimental
|
126
124
|
} // namespace asio
|
127
125
|
} // namespace boost
|
128
126
|
|
129
127
|
#include <boost/asio/detail/pop_options.hpp>
|
130
128
|
|
131
|
-
#endif //
|
129
|
+
#endif // BOOST_ASIO_DETAIL_COMPLETION_MESSAGE_HPP
|
@@ -1,6 +1,6 @@
|
|
1
1
|
//
|
2
|
-
//
|
3
|
-
//
|
2
|
+
// detail/completion_payload.hpp
|
3
|
+
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
4
4
|
//
|
5
5
|
// Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
6
6
|
//
|
@@ -8,8 +8,8 @@
|
|
8
8
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
9
9
|
//
|
10
10
|
|
11
|
-
#ifndef
|
12
|
-
#define
|
11
|
+
#ifndef BOOST_ASIO_DETAIL_COMPLETION_PAYLOAD_HPP
|
12
|
+
#define BOOST_ASIO_DETAIL_COMPLETION_PAYLOAD_HPP
|
13
13
|
|
14
14
|
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
|
15
15
|
# pragma once
|
@@ -18,7 +18,7 @@
|
|
18
18
|
#include <boost/asio/detail/config.hpp>
|
19
19
|
#include <boost/asio/detail/type_traits.hpp>
|
20
20
|
#include <boost/system/error_code.hpp>
|
21
|
-
#include <boost/asio/
|
21
|
+
#include <boost/asio/detail/completion_message.hpp>
|
22
22
|
|
23
23
|
#if defined(BOOST_ASIO_HAS_STD_VARIANT)
|
24
24
|
# include <variant>
|
@@ -30,17 +30,16 @@
|
|
30
30
|
|
31
31
|
namespace boost {
|
32
32
|
namespace asio {
|
33
|
-
namespace experimental {
|
34
33
|
namespace detail {
|
35
34
|
|
36
35
|
template <typename... Signatures>
|
37
|
-
class
|
36
|
+
class completion_payload;
|
38
37
|
|
39
38
|
template <typename R>
|
40
|
-
class
|
39
|
+
class completion_payload<R()>
|
41
40
|
{
|
42
41
|
public:
|
43
|
-
explicit
|
42
|
+
explicit completion_payload(completion_message<R()>)
|
44
43
|
{
|
45
44
|
}
|
46
45
|
|
@@ -52,11 +51,11 @@ public:
|
|
52
51
|
};
|
53
52
|
|
54
53
|
template <typename Signature>
|
55
|
-
class
|
54
|
+
class completion_payload<Signature>
|
56
55
|
{
|
57
56
|
public:
|
58
|
-
|
59
|
-
: message_(static_cast<
|
57
|
+
completion_payload(completion_message<Signature>&& m)
|
58
|
+
: message_(static_cast<completion_message<Signature>&&>(m))
|
60
59
|
{
|
61
60
|
}
|
62
61
|
|
@@ -67,18 +66,18 @@ public:
|
|
67
66
|
}
|
68
67
|
|
69
68
|
private:
|
70
|
-
|
69
|
+
completion_message<Signature> message_;
|
71
70
|
};
|
72
71
|
|
73
72
|
#if defined(BOOST_ASIO_HAS_STD_VARIANT)
|
74
73
|
|
75
74
|
template <typename... Signatures>
|
76
|
-
class
|
75
|
+
class completion_payload
|
77
76
|
{
|
78
77
|
public:
|
79
78
|
template <typename Signature>
|
80
|
-
|
81
|
-
: message_(static_cast<
|
79
|
+
completion_payload(completion_message<Signature>&& m)
|
80
|
+
: message_(static_cast<completion_message<Signature>&&>(m))
|
82
81
|
{
|
83
82
|
}
|
84
83
|
|
@@ -93,25 +92,25 @@ public:
|
|
93
92
|
}
|
94
93
|
|
95
94
|
private:
|
96
|
-
std::variant<
|
95
|
+
std::variant<completion_message<Signatures>...> message_;
|
97
96
|
};
|
98
97
|
|
99
98
|
#else // defined(BOOST_ASIO_HAS_STD_VARIANT)
|
100
99
|
|
101
100
|
template <typename R1, typename R2>
|
102
|
-
class
|
101
|
+
class completion_payload<R1(), R2(boost::system::error_code)>
|
103
102
|
{
|
104
103
|
public:
|
105
|
-
typedef
|
106
|
-
typedef
|
104
|
+
typedef completion_message<R1()> void_message_type;
|
105
|
+
typedef completion_message<R2(boost::system::error_code)> error_message_type;
|
107
106
|
|
108
|
-
|
107
|
+
completion_payload(void_message_type&&)
|
109
108
|
: message_(0, boost::system::error_code()),
|
110
109
|
empty_(true)
|
111
110
|
{
|
112
111
|
}
|
113
112
|
|
114
|
-
|
113
|
+
completion_payload(error_message_type&& m)
|
115
114
|
: message_(static_cast<error_message_type&&>(m)),
|
116
115
|
empty_(false)
|
117
116
|
{
|
@@ -121,7 +120,7 @@ public:
|
|
121
120
|
void receive(Handler& handler)
|
122
121
|
{
|
123
122
|
if (empty_)
|
124
|
-
|
123
|
+
completion_message<R1()>(0).receive(handler);
|
125
124
|
else
|
126
125
|
message_.receive(handler);
|
127
126
|
}
|
@@ -132,25 +131,25 @@ private:
|
|
132
131
|
};
|
133
132
|
|
134
133
|
template <typename Sig1, typename Sig2>
|
135
|
-
class
|
134
|
+
class completion_payload<Sig1, Sig2>
|
136
135
|
{
|
137
136
|
public:
|
138
|
-
typedef
|
139
|
-
typedef
|
137
|
+
typedef completion_message<Sig1> message_1_type;
|
138
|
+
typedef completion_message<Sig2> message_2_type;
|
140
139
|
|
141
|
-
|
140
|
+
completion_payload(message_1_type&& m)
|
142
141
|
: index_(1)
|
143
142
|
{
|
144
143
|
new (&storage_.message_1_) message_1_type(static_cast<message_1_type&&>(m));
|
145
144
|
}
|
146
145
|
|
147
|
-
|
146
|
+
completion_payload(message_2_type&& m)
|
148
147
|
: index_(2)
|
149
148
|
{
|
150
149
|
new (&storage_.message_2_) message_2_type(static_cast<message_2_type&&>(m));
|
151
150
|
}
|
152
151
|
|
153
|
-
|
152
|
+
completion_payload(completion_payload&& other)
|
154
153
|
: index_(other.index_)
|
155
154
|
{
|
156
155
|
switch (index_)
|
@@ -168,7 +167,7 @@ public:
|
|
168
167
|
}
|
169
168
|
}
|
170
169
|
|
171
|
-
~
|
170
|
+
~completion_payload()
|
172
171
|
{
|
173
172
|
switch (index_)
|
174
173
|
{
|
@@ -215,10 +214,9 @@ private:
|
|
215
214
|
#endif // defined(BOOST_ASIO_HAS_STD_VARIANT)
|
216
215
|
|
217
216
|
} // namespace detail
|
218
|
-
} // namespace experimental
|
219
217
|
} // namespace asio
|
220
218
|
} // namespace boost
|
221
219
|
|
222
220
|
#include <boost/asio/detail/pop_options.hpp>
|
223
221
|
|
224
|
-
#endif //
|
222
|
+
#endif // BOOST_ASIO_DETAIL_COMPLETION_PAYLOAD_HPP
|
@@ -1,6 +1,6 @@
|
|
1
1
|
//
|
2
|
-
//
|
3
|
-
//
|
2
|
+
// detail/completion_payload_handler.hpp
|
3
|
+
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
4
4
|
//
|
5
5
|
// Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
6
6
|
//
|
@@ -8,8 +8,8 @@
|
|
8
8
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
9
9
|
//
|
10
10
|
|
11
|
-
#ifndef
|
12
|
-
#define
|
11
|
+
#ifndef BOOST_ASIO_DETAIL_COMPLETION_PAYLOAD_HANDLER_HPP
|
12
|
+
#define BOOST_ASIO_DETAIL_COMPLETION_PAYLOAD_HANDLER_HPP
|
13
13
|
|
14
14
|
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
|
15
15
|
# pragma once
|
@@ -17,20 +17,18 @@
|
|
17
17
|
|
18
18
|
#include <boost/asio/detail/config.hpp>
|
19
19
|
#include <boost/asio/associator.hpp>
|
20
|
-
#include <boost/asio/experimental/detail/channel_payload.hpp>
|
21
20
|
|
22
21
|
#include <boost/asio/detail/push_options.hpp>
|
23
22
|
|
24
23
|
namespace boost {
|
25
24
|
namespace asio {
|
26
|
-
namespace experimental {
|
27
25
|
namespace detail {
|
28
26
|
|
29
27
|
template <typename Payload, typename Handler>
|
30
|
-
class
|
28
|
+
class completion_payload_handler
|
31
29
|
{
|
32
30
|
public:
|
33
|
-
|
31
|
+
completion_payload_handler(Payload&& p, Handler& h)
|
34
32
|
: payload_(static_cast<Payload&&>(p)),
|
35
33
|
handler_(static_cast<Handler&&>(h))
|
36
34
|
{
|
@@ -41,29 +39,33 @@ public:
|
|
41
39
|
payload_.receive(handler_);
|
42
40
|
}
|
43
41
|
|
42
|
+
Handler& handler()
|
43
|
+
{
|
44
|
+
return handler_;
|
45
|
+
}
|
46
|
+
|
44
47
|
//private:
|
45
48
|
Payload payload_;
|
46
49
|
Handler handler_;
|
47
50
|
};
|
48
51
|
|
49
52
|
} // namespace detail
|
50
|
-
} // namespace experimental
|
51
53
|
|
52
54
|
template <template <typename, typename> class Associator,
|
53
55
|
typename Payload, typename Handler, typename DefaultCandidate>
|
54
56
|
struct associator<Associator,
|
55
|
-
|
57
|
+
detail::completion_payload_handler<Payload, Handler>,
|
56
58
|
DefaultCandidate>
|
57
59
|
: Associator<Handler, DefaultCandidate>
|
58
60
|
{
|
59
61
|
static typename Associator<Handler, DefaultCandidate>::type get(
|
60
|
-
const
|
62
|
+
const detail::completion_payload_handler<Payload, Handler>& h) noexcept
|
61
63
|
{
|
62
64
|
return Associator<Handler, DefaultCandidate>::get(h.handler_);
|
63
65
|
}
|
64
66
|
|
65
67
|
static auto get(
|
66
|
-
const
|
68
|
+
const detail::completion_payload_handler<Payload, Handler>& h,
|
67
69
|
const DefaultCandidate& c) noexcept
|
68
70
|
-> decltype(Associator<Handler, DefaultCandidate>::get(h.handler_, c))
|
69
71
|
{
|
@@ -76,4 +78,4 @@ struct associator<Associator,
|
|
76
78
|
|
77
79
|
#include <boost/asio/detail/pop_options.hpp>
|
78
80
|
|
79
|
-
#endif //
|
81
|
+
#endif // BOOST_ASIO_DETAIL_COMPLETION_PAYLOAD_HANDLER_HPP
|
@@ -127,29 +127,7 @@
|
|
127
127
|
# define BOOST_ASIO_HAS_USER_DEFINED_LITERALS 1
|
128
128
|
# define BOOST_ASIO_HAS_ALIGNOF 1
|
129
129
|
# define BOOST_ASIO_ALIGNOF(T) alignof(T)
|
130
|
-
|
131
|
-
#if !defined(BOOST_ASIO_HAS_STD_ALIGN)
|
132
|
-
# if !defined(BOOST_ASIO_DISABLE_STD_ALIGN)
|
133
|
-
# if defined(__clang__)
|
134
|
-
# if defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
|
135
|
-
# define BOOST_ASIO_HAS_STD_ALIGN 1
|
136
|
-
# elif (__cplusplus >= 201103)
|
137
|
-
# define BOOST_ASIO_HAS_STD_ALIGN 1
|
138
|
-
# endif // (__cplusplus >= 201103)
|
139
|
-
# elif defined(__GNUC__)
|
140
|
-
# if (__GNUC__ >= 6)
|
141
|
-
# if (__cplusplus >= 201103) || defined(__GXX_EXPERIMENTAL_CXX0X__)
|
142
|
-
# define BOOST_ASIO_HAS_STD_ALIGN 1
|
143
|
-
# endif // (__cplusplus >= 201103) || defined(__GXX_EXPERIMENTAL_CXX0X__)
|
144
|
-
# endif // (__GNUC__ >= 6)
|
145
|
-
# endif // defined(__GNUC__)
|
146
|
-
# if defined(BOOST_ASIO_MSVC)
|
147
|
-
# if (_MSC_VER >= 1700)
|
148
|
-
# define BOOST_ASIO_HAS_STD_ALIGN 1
|
149
|
-
# endif // (_MSC_VER >= 1700)
|
150
|
-
# endif // defined(BOOST_ASIO_MSVC)
|
151
|
-
# endif // !defined(BOOST_ASIO_DISABLE_STD_ALIGN)
|
152
|
-
#endif // !defined(BOOST_ASIO_HAS_STD_ALIGN)
|
130
|
+
# define BOOST_ASIO_HAS_STD_ALIGN 1
|
153
131
|
# define BOOST_ASIO_HAS_STD_SYSTEM_ERROR 1
|
154
132
|
# define BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT noexcept(true)
|
155
133
|
# define BOOST_ASIO_HAS_STD_ARRAY 1
|
@@ -363,6 +341,19 @@
|
|
363
341
|
# endif // !defined(BOOST_ASIO_DISABLE_VARIADIC_LAMBDA_CAPTURES)
|
364
342
|
#endif // !defined(BOOST_ASIO_HAS_VARIADIC_LAMBDA_CAPTURES)
|
365
343
|
|
344
|
+
// Support for inline variables.
|
345
|
+
#if !defined(BOOST_ASIO_HAS_INLINE_VARIABLES)
|
346
|
+
# if !defined(BOOST_ASIO_DISABLE_INLINE_VARIABLES)
|
347
|
+
# if (__cplusplus >= 201703) && (__cpp_inline_variables >= 201606)
|
348
|
+
# define BOOST_ASIO_HAS_INLINE_VARIABLES 1
|
349
|
+
# define BOOST_ASIO_INLINE_VARIABLE inline
|
350
|
+
# endif // (__cplusplus >= 201703) && (__cpp_inline_variables >= 201606)
|
351
|
+
# endif // !defined(BOOST_ASIO_DISABLE_INLINE_VARIABLES)
|
352
|
+
#endif // !defined(BOOST_ASIO_HAS_INLINE_VARIABLES)
|
353
|
+
#if !defined(BOOST_ASIO_INLINE_VARIABLE)
|
354
|
+
# define BOOST_ASIO_INLINE_VARIABLE
|
355
|
+
#endif // !defined(BOOST_ASIO_INLINE_VARIABLE)
|
356
|
+
|
366
357
|
// Default alignment.
|
367
358
|
#if defined(__STDCPP_DEFAULT_NEW_ALIGNMENT__)
|
368
359
|
# define BOOST_ASIO_DEFAULT_ALIGN __STDCPP_DEFAULT_NEW_ALIGNMENT__
|
@@ -384,7 +375,9 @@
|
|
384
375
|
# if defined(BOOST_ASIO_HAS_CLANG_LIBCXX)
|
385
376
|
# if (_LIBCPP_STD_VER > 14) && defined(_LIBCPP_HAS_ALIGNED_ALLOC) \
|
386
377
|
&& !defined(_LIBCPP_MSVCRT) && !defined(__MINGW32__)
|
387
|
-
# if defined(
|
378
|
+
# if defined(__ANDROID__) && (__ANDROID_API__ >= 28)
|
379
|
+
# define BOOST_ASIO_HAS_STD_ALIGNED_ALLOC 1
|
380
|
+
# elif defined(__APPLE__)
|
388
381
|
# if defined(__MAC_OS_X_VERSION_MIN_REQUIRED)
|
389
382
|
# if (__MAC_OS_X_VERSION_MIN_REQUIRED >= 101500)
|
390
383
|
# define BOOST_ASIO_HAS_STD_ALIGNED_ALLOC 1
|
@@ -554,9 +547,9 @@
|
|
554
547
|
# define BOOST_ASIO_HAS_STD_INVOKE_RESULT 1
|
555
548
|
# endif // (_MSC_VER >= 1911 && _MSVC_LANG >= 201703)
|
556
549
|
# else // defined(BOOST_ASIO_MSVC)
|
557
|
-
# if (__cplusplus >= 201703)
|
550
|
+
# if (__cplusplus >= 201703) && (__cpp_lib_is_invocable >= 201703)
|
558
551
|
# define BOOST_ASIO_HAS_STD_INVOKE_RESULT 1
|
559
|
-
# endif // (__cplusplus >= 201703)
|
552
|
+
# endif // (__cplusplus >= 201703) && (__cpp_lib_is_invocable >= 201703)
|
560
553
|
# endif // defined(BOOST_ASIO_MSVC)
|
561
554
|
# endif // !defined(BOOST_ASIO_DISABLE_STD_INVOKE_RESULT)
|
562
555
|
#endif // !defined(BOOST_ASIO_HAS_STD_INVOKE_RESULT)
|
@@ -1297,7 +1290,10 @@
|
|
1297
1290
|
// Support the co_await keyword on compilers known to allow it.
|
1298
1291
|
#if !defined(BOOST_ASIO_HAS_CO_AWAIT)
|
1299
1292
|
# if !defined(BOOST_ASIO_DISABLE_CO_AWAIT)
|
1300
|
-
# if
|
1293
|
+
# if (__cplusplus >= 202002) \
|
1294
|
+
&& (__cpp_impl_coroutine >= 201902) && (__cpp_lib_coroutine >= 201902)
|
1295
|
+
# define BOOST_ASIO_HAS_CO_AWAIT 1
|
1296
|
+
# elif defined(BOOST_ASIO_MSVC)
|
1301
1297
|
# if (_MSC_VER >= 1928) && (_MSVC_LANG >= 201705) && !defined(__clang__)
|
1302
1298
|
# define BOOST_ASIO_HAS_CO_AWAIT 1
|
1303
1299
|
# elif (_MSC_FULL_VER >= 190023506)
|
@@ -1408,11 +1404,9 @@
|
|
1408
1404
|
// Standard library support for snprintf.
|
1409
1405
|
#if !defined(BOOST_ASIO_HAS_SNPRINTF)
|
1410
1406
|
# if !defined(BOOST_ASIO_DISABLE_SNPRINTF)
|
1411
|
-
# if defined(
|
1412
|
-
#
|
1413
|
-
#
|
1414
|
-
# endif // (__clang_major__ >= 14)
|
1415
|
-
# endif // defined(__apple_build_version__)
|
1407
|
+
# if defined(__APPLE__)
|
1408
|
+
# define BOOST_ASIO_HAS_SNPRINTF 1
|
1409
|
+
# endif // defined(__APPLE__)
|
1416
1410
|
# endif // !defined(BOOST_ASIO_DISABLE_SNPRINTF)
|
1417
1411
|
#endif // !defined(BOOST_ASIO_HAS_SNPRINTF)
|
1418
1412
|
|
@@ -104,7 +104,11 @@ public:
|
|
104
104
|
void move_construct(implementation_type& impl,
|
105
105
|
implementation_type& other_impl)
|
106
106
|
{
|
107
|
-
|
107
|
+
if (other_impl.might_have_pending_waits)
|
108
|
+
{
|
109
|
+
scheduler_.move_timer(timer_queue_,
|
110
|
+
impl.timer_data, other_impl.timer_data);
|
111
|
+
}
|
108
112
|
|
109
113
|
impl.expiry = other_impl.expiry;
|
110
114
|
other_impl.expiry = time_type();
|
@@ -17,121 +17,12 @@
|
|
17
17
|
|
18
18
|
#include <boost/asio/detail/config.hpp>
|
19
19
|
#include <boost/asio/detail/memory.hpp>
|
20
|
-
#include <boost/asio/detail/noncopyable.hpp>
|
21
20
|
#include <boost/asio/detail/recycling_allocator.hpp>
|
22
|
-
#include <boost/asio/detail/thread_info_base.hpp>
|
23
21
|
#include <boost/asio/associated_allocator.hpp>
|
24
22
|
|
25
23
|
#include <boost/asio/detail/push_options.hpp>
|
26
24
|
|
27
|
-
|
28
|
-
namespace asio {
|
29
|
-
namespace detail {
|
30
|
-
|
31
|
-
inline void* default_allocate(std::size_t s,
|
32
|
-
std::size_t align = BOOST_ASIO_DEFAULT_ALIGN)
|
33
|
-
{
|
34
|
-
#if !defined(BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING)
|
35
|
-
return boost::asio::detail::thread_info_base::allocate(
|
36
|
-
boost::asio::detail::thread_context::top_of_thread_call_stack(),
|
37
|
-
s, align);
|
38
|
-
#else // !defined(BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING)
|
39
|
-
return boost::asio::aligned_new(align, s);
|
40
|
-
#endif // !defined(BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING)
|
41
|
-
}
|
42
|
-
|
43
|
-
inline void default_deallocate(void* p, std::size_t s)
|
44
|
-
{
|
45
|
-
#if !defined(BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING)
|
46
|
-
boost::asio::detail::thread_info_base::deallocate(
|
47
|
-
boost::asio::detail::thread_context::top_of_thread_call_stack(), p, s);
|
48
|
-
#else // !defined(BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING)
|
49
|
-
(void)s;
|
50
|
-
boost::asio::aligned_delete(p);
|
51
|
-
#endif // !defined(BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING)
|
52
|
-
}
|
53
|
-
|
54
|
-
template <typename T>
|
55
|
-
class default_allocator
|
56
|
-
{
|
57
|
-
public:
|
58
|
-
typedef T value_type;
|
59
|
-
|
60
|
-
template <typename U>
|
61
|
-
struct rebind
|
62
|
-
{
|
63
|
-
typedef default_allocator<U> other;
|
64
|
-
};
|
65
|
-
|
66
|
-
default_allocator() noexcept
|
67
|
-
{
|
68
|
-
}
|
69
|
-
|
70
|
-
template <typename U>
|
71
|
-
default_allocator(const default_allocator<U>&) noexcept
|
72
|
-
{
|
73
|
-
}
|
74
|
-
|
75
|
-
T* allocate(std::size_t n)
|
76
|
-
{
|
77
|
-
return static_cast<T*>(default_allocate(sizeof(T) * n, alignof(T)));
|
78
|
-
}
|
79
|
-
|
80
|
-
void deallocate(T* p, std::size_t n)
|
81
|
-
{
|
82
|
-
default_deallocate(p, sizeof(T) * n);
|
83
|
-
}
|
84
|
-
};
|
85
|
-
|
86
|
-
template <>
|
87
|
-
class default_allocator<void>
|
88
|
-
{
|
89
|
-
public:
|
90
|
-
typedef void value_type;
|
91
|
-
|
92
|
-
template <typename U>
|
93
|
-
struct rebind
|
94
|
-
{
|
95
|
-
typedef default_allocator<U> other;
|
96
|
-
};
|
97
|
-
|
98
|
-
default_allocator() noexcept
|
99
|
-
{
|
100
|
-
}
|
101
|
-
|
102
|
-
template <typename U>
|
103
|
-
default_allocator(const default_allocator<U>&) noexcept
|
104
|
-
{
|
105
|
-
}
|
106
|
-
};
|
107
|
-
|
108
|
-
template <typename Allocator>
|
109
|
-
struct get_default_allocator
|
110
|
-
{
|
111
|
-
typedef Allocator type;
|
112
|
-
|
113
|
-
static type get(const Allocator& a)
|
114
|
-
{
|
115
|
-
return a;
|
116
|
-
}
|
117
|
-
};
|
118
|
-
|
119
|
-
template <typename T>
|
120
|
-
struct get_default_allocator<std::allocator<T>>
|
121
|
-
{
|
122
|
-
typedef default_allocator<T> type;
|
123
|
-
|
124
|
-
static type get(const std::allocator<T>&)
|
125
|
-
{
|
126
|
-
return type();
|
127
|
-
}
|
128
|
-
};
|
129
|
-
|
130
|
-
} // namespace detail
|
131
|
-
} // namespace asio
|
132
|
-
} // namespace boost
|
133
|
-
|
134
|
-
#define BOOST_ASIO_DEFINE_HANDLER_PTR(op) \
|
25
|
+
#define BOOST_ASIO_DEFINE_TAGGED_HANDLER_PTR(purpose, op) \
|
135
26
|
struct ptr \
|
136
27
|
{ \
|
137
28
|
Handler* h; \
|
@@ -145,11 +36,11 @@ struct get_default_allocator<std::allocator<T>>
|
|
145
36
|
{ \
|
146
37
|
typedef typename ::boost::asio::associated_allocator< \
|
147
38
|
Handler>::type associated_allocator_type; \
|
148
|
-
typedef typename ::boost::asio::detail::
|
149
|
-
associated_allocator_type>::type default_allocator_type; \
|
39
|
+
typedef typename ::boost::asio::detail::get_recycling_allocator< \
|
40
|
+
associated_allocator_type, purpose>::type default_allocator_type; \
|
150
41
|
BOOST_ASIO_REBIND_ALLOC(default_allocator_type, op) a( \
|
151
|
-
::boost::asio::detail::
|
152
|
-
associated_allocator_type>::get( \
|
42
|
+
::boost::asio::detail::get_recycling_allocator< \
|
43
|
+
associated_allocator_type, purpose>::get( \
|
153
44
|
::boost::asio::get_associated_allocator(handler))); \
|
154
45
|
return a.allocate(1); \
|
155
46
|
} \
|
@@ -164,11 +55,11 @@ struct get_default_allocator<std::allocator<T>>
|
|
164
55
|
{ \
|
165
56
|
typedef typename ::boost::asio::associated_allocator< \
|
166
57
|
Handler>::type associated_allocator_type; \
|
167
|
-
typedef typename ::boost::asio::detail::
|
168
|
-
associated_allocator_type>::type default_allocator_type; \
|
58
|
+
typedef typename ::boost::asio::detail::get_recycling_allocator< \
|
59
|
+
associated_allocator_type, purpose>::type default_allocator_type; \
|
169
60
|
BOOST_ASIO_REBIND_ALLOC(default_allocator_type, op) a( \
|
170
|
-
::boost::asio::detail::
|
171
|
-
associated_allocator_type>::get( \
|
61
|
+
::boost::asio::detail::get_recycling_allocator< \
|
62
|
+
associated_allocator_type, purpose>::get( \
|
172
63
|
::boost::asio::get_associated_allocator(*h))); \
|
173
64
|
a.deallocate(static_cast<op*>(v), 1); \
|
174
65
|
v = 0; \
|
@@ -177,6 +68,11 @@ struct get_default_allocator<std::allocator<T>>
|
|
177
68
|
} \
|
178
69
|
/**/
|
179
70
|
|
71
|
+
#define BOOST_ASIO_DEFINE_HANDLER_PTR(op) \
|
72
|
+
BOOST_ASIO_DEFINE_TAGGED_HANDLER_PTR( \
|
73
|
+
::boost::asio::detail::thread_info_base::default_tag, op ) \
|
74
|
+
/**/
|
75
|
+
|
180
76
|
#define BOOST_ASIO_DEFINE_TAGGED_HANDLER_ALLOCATOR_PTR(purpose, op) \
|
181
77
|
struct ptr \
|
182
78
|
{ \
|