From c4750c51798f4e517450f08db0f0bdeb5babd4eb Mon Sep 17 00:00:00 2001 From: MSP-Greg Date: Sat, 23 Sep 2023 09:23:39 -0500 Subject: [PATCH] Update Puma docs to 6.4.0 (#69) --- index.html | 4 +- puma/IO.html | 6 +- puma/IO/WaitReadable.html | 6 +- puma/IOError.html | 4 +- puma/Object.html | 4 +- puma/Puma.html | 58 +- puma/Puma/App.html | 6 +- puma/Puma/App/Status.html | 16 +- puma/Puma/Binder.html | 74 +-- puma/Puma/CLI.html | 24 +- puma/Puma/Client.html | 338 ++++++----- puma/Puma/Cluster.html | 62 +- puma/Puma/Cluster/Worker.html | 16 +- puma/Puma/Cluster/WorkerHandle.html | 46 +- puma/Puma/CommonLogger.html | 40 +- puma/Puma/Configuration.html | 150 ++--- puma/Puma/Configuration/ConfigMiddleware.html | 18 +- puma/Puma/ConnectionError.html | 6 +- puma/Puma/Const.html | 170 +++--- puma/Puma/ControlCLI.html | 69 ++- puma/Puma/DSL.html | 537 +++++++++++------- puma/Puma/ErrorLogger.html | 32 +- puma/Puma/Events.html | 24 +- puma/Puma/HttpParser.html | 22 +- puma/Puma/HttpParserError.html | 6 +- puma/Puma/HttpParserError501.html | 6 +- puma/Puma/IOBuffer.html | 20 +- puma/Puma/JRubyRestart.html | 8 +- puma/Puma/JSONSerialization.html | 22 +- .../JSONSerialization/SerializationError.html | 6 +- puma/Puma/Launcher.html | 86 +-- puma/Puma/Launcher/BundlePruner.html | 28 +- puma/Puma/LogWriter.html | 50 +- puma/Puma/LogWriter/DefaultFormatter.html | 8 +- puma/Puma/LogWriter/PidFormatter.html | 8 +- puma/Puma/MiniSSL.html | 32 +- puma/Puma/MiniSSL/Context.html | 90 +-- puma/Puma/MiniSSL/ContextBuilder.html | 14 +- puma/Puma/MiniSSL/Engine.html | 66 +-- puma/Puma/MiniSSL/SSLContext.html | 73 ++- puma/Puma/MiniSSL/SSLError.html | 6 +- puma/Puma/MiniSSL/Server.html | 20 +- puma/Puma/MiniSSL/Socket.html | 38 +- puma/Puma/NullIO.html | 34 +- puma/Puma/Plugin.html | 14 +- puma/Puma/PluginLoader.html | 12 +- puma/Puma/PluginRegistry.html | 16 +- puma/Puma/Rack.html | 6 +- puma/Puma/Rack/Builder.html | 28 +- puma/Puma/Rack/Options.html | 10 +- puma/Puma/Rack/URLMap.html | 20 +- puma/Puma/RackHandler.html | 16 +- puma/Puma/Reactor.html | 20 +- puma/Puma/Request.html | 40 +- puma/Puma/Runner.html | 106 ++-- puma/Puma/SdNotify.html | 42 +- puma/Puma/SdNotify/NotifyError.html | 6 +- puma/Puma/Server.html | 423 +++++++++----- puma/Puma/Single.html | 18 +- puma/Puma/StateFile.html | 14 +- puma/Puma/ThreadPool.html | 198 +++++-- puma/Puma/ThreadPool/Automaton.html | 24 +- puma/Puma/ThreadPool/ForceShutdown.html | 6 +- puma/Puma/UnknownPlugin.html | 6 +- puma/Puma/UnsupportedBackend.html | 6 +- puma/Puma/UnsupportedOption.html | 6 +- puma/Puma/UserFileDefaultOptions.html | 26 +- puma/Puma/Util.html | 18 +- puma/Puma/Util/HeaderHash.html | 34 +- puma/Rack.html | 6 +- puma/Rack/Handler.html | 8 +- puma/Rack/Handler/Puma.html | 6 +- puma/Rackup.html | 6 +- puma/Rackup/Handler.html | 8 +- puma/Rackup/Handler/Puma.html | 6 +- puma/StandardError.html | 4 +- puma/_index.html | 6 +- puma/constant_list.html | 1 + puma/file.5.0-Upgrade.html | 4 +- puma/file.6.0-Upgrade.html | 4 +- puma/file.CONTRIBUTING.html | 4 +- puma/file.History.html | 65 ++- puma/file.README.html | 45 +- puma/file.SECURITY.html | 4 +- puma/file.architecture.html | 4 +- puma/file.compile_options.html | 4 +- puma/file.deployment.html | 4 +- puma/file.fork_worker.html | 4 +- puma/file.kubernetes.html | 17 +- puma/file.nginx.html | 4 +- puma/file.plugins.html | 4 +- puma/file.rails_dev_mode.html | 4 +- puma/file.restart.html | 4 +- puma/file.signals.html | 4 +- puma/file.stats.html | 4 +- puma/file.systemd.html | 4 +- puma/file.testing_benchmarks_local_files.html | 4 +- puma/file.testing_test_rackup_ci_files.html | 4 +- puma/index.html | 45 +- puma/method_list.html | 11 + puma/top-level-namespace.html | 4 +- puma/y_index.html | 6 +- 102 files changed, 2163 insertions(+), 1617 deletions(-) diff --git a/index.html b/index.html index 338129e..d16d063 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,7 @@

Speed & Concurrency

- Current Release: 6.3.0 + Current Release: 6.4.0

@@ -95,7 +95,7 @@

Resources

  • - Documentation: 6.3.0 + Documentation: 6.4.0
  • Documentation: 5.6.7 diff --git a/puma/IO.html b/puma/IO.html index 9716d4a..0acbd3a 100644 --- a/puma/IO.html +++ b/puma/IO.html @@ -8,7 +8,7 @@ -Class: IO — Puma-6.3.0 +Class: IO — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -82,7 +82,7 @@

    Class: IO

    Defined in: - lib/puma/client.rb + lib/puma/client.rb diff --git a/puma/IO/WaitReadable.html b/puma/IO/WaitReadable.html index 8d3c08d..88b867d 100644 --- a/puma/IO/WaitReadable.html +++ b/puma/IO/WaitReadable.html @@ -8,7 +8,7 @@ -Module: IO::WaitReadable — Puma-6.3.0 +Module: IO::WaitReadable — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (W) » IO » WaitReadable ▲ @@ -71,7 +71,7 @@

    Module: IO::WaitReadable

    Defined in: - lib/puma/client.rb + lib/puma/client.rb diff --git a/puma/IOError.html b/puma/IOError.html index 932b0c4..a7dd722 100644 --- a/puma/IOError.html +++ b/puma/IOError.html @@ -8,7 +8,7 @@ -Exception: IOError — Puma-6.3.0 +Exception: IOError — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/Object.html b/puma/Object.html index a4ae8f1..5649904 100644 --- a/puma/Object.html +++ b/puma/Object.html @@ -8,7 +8,7 @@ -Class: Object — Puma-6.3.0 +Class: Object — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/Puma.html b/puma/Puma.html index 2ae052b..fff565d 100644 --- a/puma/Puma.html +++ b/puma/Puma.html @@ -8,7 +8,7 @@ -Module: Puma — Puma-6.3.0 +Module: Puma — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -124,7 +124,7 @@

    Module: Puma

    Defined in: - lib/rack/handler/puma.rb,
    ext/puma_http11/mini_ssl.c,
    ext/puma_http11/puma_http11.c,
    lib/puma.rb,
    lib/puma/binder.rb,
    lib/puma/cli.rb,
    lib/puma/client.rb,
    lib/puma/cluster.rb,
    lib/puma/commonlogger.rb,
    lib/puma/configuration.rb,
    lib/puma/const.rb,
    lib/puma/control_cli.rb,
    lib/puma/detect.rb,
    lib/puma/dsl.rb,
    lib/puma/error_logger.rb,
    lib/puma/events.rb,
    lib/puma/io_buffer.rb,
    lib/puma/jruby_restart.rb,
    lib/puma/json_serialization.rb,
    lib/puma/launcher.rb,
    lib/puma/log_writer.rb,
    lib/puma/minissl.rb,
    lib/puma/null_io.rb,
    lib/puma/plugin.rb,
    lib/puma/reactor.rb,
    lib/puma/request.rb,
    lib/puma/runner.rb,
    lib/puma/sd_notify.rb,
    lib/puma/server.rb,
    lib/puma/single.rb,
    lib/puma/state_file.rb,
    lib/puma/thread_pool.rb,
    lib/puma/util.rb,
    lib/puma/app/status.rb,
    lib/puma/cluster/worker.rb,
    lib/puma/cluster/worker_handle.rb,
    lib/puma/launcher/bundle_pruner.rb,
    lib/puma/minissl/context_builder.rb,
    lib/puma/rack/builder.rb
    + lib/rack/handler/puma.rb,
    ext/puma_http11/mini_ssl.c,
    ext/puma_http11/puma_http11.c,
    lib/puma.rb,
    lib/puma/binder.rb,
    lib/puma/cli.rb,
    lib/puma/client.rb,
    lib/puma/cluster.rb,
    lib/puma/commonlogger.rb,
    lib/puma/configuration.rb,
    lib/puma/const.rb,
    lib/puma/control_cli.rb,
    lib/puma/detect.rb,
    lib/puma/dsl.rb,
    lib/puma/error_logger.rb,
    lib/puma/events.rb,
    lib/puma/io_buffer.rb,
    lib/puma/jruby_restart.rb,
    lib/puma/json_serialization.rb,
    lib/puma/launcher.rb,
    lib/puma/log_writer.rb,
    lib/puma/minissl.rb,
    lib/puma/null_io.rb,
    lib/puma/plugin.rb,
    lib/puma/reactor.rb,
    lib/puma/request.rb,
    lib/puma/runner.rb,
    lib/puma/sd_notify.rb,
    lib/puma/server.rb,
    lib/puma/single.rb,
    lib/puma/state_file.rb,
    lib/puma/thread_pool.rb,
    lib/puma/util.rb,
    lib/puma/app/status.rb,
    lib/puma/cluster/worker.rb,
    lib/puma/cluster/worker_handle.rb,
    lib/puma/launcher/bundle_pruner.rb,
    lib/puma/minissl/context_builder.rb,
    lib/puma/rack/builder.rb
    @@ -161,12 +161,12 @@

    Constant Summary

    - # File 'lib/puma/detect.rb', line 9
    ::Process.respond_to? :fork
    + # File 'lib/puma/detect.rb', line 9
    ::Process.respond_to? :fork
  • HAS_NATIVE_IO_WAIT =
    - # File 'lib/puma/detect.rb', line 11
    ::IO.public_instance_methods(false).include? :wait_readable
    + # File 'lib/puma/detect.rb', line 11
    ::IO.public_instance_methods(false).include? :wait_readable
  • HAS_SSL = @@ -177,12 +177,12 @@

    Constant Summary

    - # File 'lib/puma.rb', line 27
    const_defined?(:MiniSSL, false) && MiniSSL.const_defined?(:Engine, false)
    + # File 'lib/puma.rb', line 27
    const_defined?(:MiniSSL, false) && MiniSSL.const_defined?(:Engine, false)
  • HAS_UNIX_SOCKET =
    - # File 'lib/puma.rb', line 29
    Object.const_defined?(:UNIXSocket) && !IS_WINDOWS
    + # File 'lib/puma.rb', line 29
    Object.const_defined?(:UNIXSocket) && !IS_WINDOWS
  • HTTP_STATUS_CODES = @@ -196,7 +196,7 @@

    Constant Summary

    - # File 'lib/puma/const.rb', line 17
    {
    +    # File 'lib/puma/const.rb', line 17    
    {
       100 => 'Continue',
       101 => 'Switching Protocols',
       102 => 'Processing',
    @@ -263,12 +263,12 @@ 

    Constant Summary

  • IS_JRUBY =
    - # File 'lib/puma/detect.rb', line 13
    Object.const_defined? :JRUBY_VERSION
    + # File 'lib/puma/detect.rb', line 13
    Object.const_defined? :JRUBY_VERSION
  • IS_LINUX =
    - # File 'lib/puma/detect.rb', line 20
    !(IS_OSX || IS_WINDOWS)
    + # File 'lib/puma/detect.rb', line 20
    !(IS_OSX || IS_WINDOWS)
  • IS_MRI = @@ -288,23 +288,23 @@

    Constant Summary

    - # File 'lib/puma/detect.rb', line 23
    (RUBY_ENGINE == 'ruby' || RUBY_ENGINE.nil?)
    + # File 'lib/puma/detect.rb', line 23
    (RUBY_ENGINE == 'ruby' || RUBY_ENGINE.nil?)
  • IS_OSX =
    - # File 'lib/puma/detect.rb', line 15
    RUBY_PLATFORM.include? 'darwin'
    + # File 'lib/puma/detect.rb', line 15
    RUBY_PLATFORM.include? 'darwin'
  • IS_WINDOWS =
    - # File 'lib/puma/detect.rb', line 17
    !!(RUBY_PLATFORM =~ /mswin|ming|cygwin/) ||
    +    # File 'lib/puma/detect.rb', line 17    
    !!(RUBY_PLATFORM =~ /mswin|ming|cygwin/) ||
     IS_JRUBY && RUBY_DESCRIPTION.include?('mswin')
  • Plugins =
    - # File 'lib/puma/plugin.rb', line 74
    PluginRegistry.new
    + # File 'lib/puma/plugin.rb', line 74
    PluginRegistry.new
  • STATUS_WITH_NO_ENTITY_BODY = @@ -315,7 +315,7 @@

    Constant Summary

    - # File 'lib/puma/const.rb', line 84
    {
    +    # File 'lib/puma/const.rb', line 84    
    {
       204 => true,
       205 => true,
       304 => true
    @@ -430,7 +430,7 @@ 

    Class Attribute Details

    .abstract_unix_socket?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -466,7 +466,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -499,7 +499,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -518,7 +518,7 @@

    .jruby?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -553,7 +553,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -572,7 +572,7 @@

    .osx?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -591,7 +591,7 @@

    .ssl?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -610,7 +610,7 @@

    .stats_object=(val) (writeonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -629,7 +629,7 @@

    .windows?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -649,7 +649,7 @@

    Class Method Details

    .set_thread_name(name)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -668,7 +668,7 @@

    .stats

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -703,7 +703,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -739,7 +739,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -758,7 +758,7 @@

    #stats_object (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/App.html b/puma/Puma/App.html index 0efc00e..83b84b1 100644 --- a/puma/Puma/App.html +++ b/puma/Puma/App.html @@ -8,7 +8,7 @@ -Module: Puma::App — Puma-6.3.0 +Module: Puma::App — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (A) » Puma » App ▲ @@ -77,7 +77,7 @@

    Module: Puma::App

    Defined in: - lib/puma/app/status.rb + lib/puma/app/status.rb diff --git a/puma/Puma/App/Status.html b/puma/Puma/App/Status.html index 33fa545..1627763 100644 --- a/puma/Puma/App/Status.html +++ b/puma/Puma/App/Status.html @@ -8,7 +8,7 @@ -Class: Puma::App::Status — Puma-6.3.0 +Class: Puma::App::Status — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » App » @@ -78,7 +78,7 @@

    Class: Puma::App::Status

    Defined in: - lib/puma/app/status.rb + lib/puma/app/status.rb @@ -99,7 +99,7 @@

    Constant Summary

  • OK_STATUS =
    - # File 'lib/puma/app/status.rb', line 9
    '{ "status": "ok" }'.freeze
    + # File 'lib/puma/app/status.rb', line 9
    '{ "status": "ok" }'.freeze
  • @@ -170,7 +170,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -191,7 +191,7 @@

    Instance Method Details

    #authenticate(env) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -218,7 +218,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -291,7 +291,7 @@

    #rack_response(status, body, content_type = 'application/json') (private)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Binder.html b/puma/Puma/Binder.html index be4df90..0523af8 100644 --- a/puma/Puma/Binder.html +++ b/puma/Puma/Binder.html @@ -8,7 +8,7 @@ -Class: Puma::Binder — Puma-6.3.0 +Class: Puma::Binder — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (B) » Puma » Binder ▲ @@ -87,7 +87,7 @@

    Class: Puma::Binder

    Defined in: - lib/puma/binder.rb + lib/puma/binder.rb @@ -98,7 +98,7 @@

    Constant Summary

  • RACK_VERSION =
    - # File 'lib/puma/binder.rb', line 20
    [1,6].freeze
    + # File 'lib/puma/binder.rb', line 20
    [1,6].freeze
  • Const - Included

    @@ -401,7 +401,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -464,7 +464,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -497,7 +497,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -532,7 +532,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -565,7 +565,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -582,7 +582,7 @@

    #ios (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -615,7 +615,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -648,7 +648,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -681,7 +681,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -698,7 +698,7 @@

    #loopback_addresses (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -736,7 +736,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -769,7 +769,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -787,7 +787,7 @@

    Instance Method Details

    #add_ssl_listener(host, port, ctx, optimize_for_latency = true, backlog = 1024)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -808,7 +808,7 @@

    return end - host = host[1..-2] if host[0..0] == '[' + host = host[1..-2] if host&.start_with? '[' s = TCPServer.new(host, port) if optimize_for_latency s.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) @@ -842,7 +842,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -857,7 +857,7 @@

    return end - host = host[1..-2] if host and host[0..0] == '[' + host = host[1..-2] if host&.start_with? '[' tcp_server = TCPServer.new(host, port) if optimize_for_latency @@ -885,7 +885,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -935,7 +935,7 @@

    #close

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -954,7 +954,7 @@

    #close_listeners

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1004,7 +1004,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1053,7 +1053,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1075,7 +1075,7 @@

    #env(sock)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1094,7 +1094,7 @@

    #inherit_ssl_listener(fd, ctx)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1127,7 +1127,7 @@

    #inherit_tcp_listener(host, port, fd)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1149,7 +1149,7 @@

    #inherit_unix_listener(path, fd)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1176,7 +1176,7 @@

    #loc_addr_str(io) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1200,7 +1200,7 @@

    #localhost_authority

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1219,7 +1219,7 @@

    #localhost_authority_context

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1246,7 +1246,7 @@

    #parse(binds, log_writer = nil, log_msg = 'Listening')

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1419,7 +1419,7 @@

    #redirects_for_restart

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1456,7 +1456,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1493,7 +1493,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1525,7 +1525,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/CLI.html b/puma/Puma/CLI.html index cae85c1..093605f 100644 --- a/puma/Puma/CLI.html +++ b/puma/Puma/CLI.html @@ -8,7 +8,7 @@ -Class: Puma::CLI — Puma-6.3.0 +Class: Puma::CLI — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » CLI ▲ @@ -77,7 +77,7 @@

    Class: Puma::CLI

    Defined in: - lib/puma/cli.rb + lib/puma/cli.rb @@ -169,7 +169,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -227,7 +227,7 @@

    Instance Attribute Details

    #launcher (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -245,7 +245,7 @@

    Instance Method Details

    #configure_control_url(command_line_arg) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -275,7 +275,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -301,9 +301,9 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    # File 'lib/puma/cli.rb', line 95
    @@ -360,6 +360,10 @@ 

    $LOAD_PATH.unshift(*arg.split(':')) end + o.on "--idle-timeout SECONDS", "Number of seconds until the next request before automatic shutdown" do |arg| + user_config.idle_timeout arg + end + o.on "-p", "--port PORT", "Define the TCP port to bind to", "Use -b for more advanced options" do |arg| user_config.bind "tcp://#{Configuration::DEFAULTS[:tcp_host]}:#{arg}" @@ -474,7 +478,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Client.html b/puma/Puma/Client.html index 8d10cb3..448188f 100644 --- a/puma/Puma/Client.html +++ b/puma/Puma/Client.html @@ -8,7 +8,7 @@ -Class: Puma::Client — Puma-6.3.0 +Class: Puma::Client — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » Client ▲ @@ -73,15 +73,6 @@

    Class: Puma::Client

    Super Chains via Extension / Inclusion / Inheritance - - -
    Class Chain:
    -
    - self, - Forwardable -
    - -
    Instance Chain:
    @@ -99,7 +90,7 @@

    Class: Puma::Client

    Defined in: - lib/puma/client.rb + lib/puma/client.rb @@ -130,7 +121,7 @@

    Constant Summary

    - # File 'lib/puma/client.rb', line 48
    %w[compress deflate gzip].freeze
    + # File 'lib/puma/client.rb', line 47
    %w[compress deflate gzip].freeze

  • CHUNK_SIZE_INVALID = @@ -141,12 +132,17 @@

    Constant Summary

    - # File 'lib/puma/client.rb', line 51
    /[^\h]/.freeze
    + # File 'lib/puma/client.rb', line 50
    /[^\h]/.freeze
  • CHUNK_VALID_ENDING =
    - # File 'lib/puma/client.rb', line 52
    "\r\n".freeze
    + # File 'lib/puma/client.rb', line 51
    Const::LINE_END
    +
  • +
  • + CHUNK_VALID_ENDING_SIZE = +
    + # File 'lib/puma/client.rb', line 52
    CHUNK_VALID_ENDING.bytesize
  • CONTENT_LENGTH_VALUE_INVALID = @@ -157,7 +153,7 @@

    Constant Summary

    - # File 'lib/puma/client.rb', line 55
    /[^\d]/.freeze
    + # File 'lib/puma/client.rb', line 55
    /[^\d]/.freeze
  • EmptyBody = @@ -168,12 +164,12 @@

    Constant Summary

    - # File 'lib/puma/client.rb', line 61
    NullIO.new
    + # File 'lib/puma/client.rb', line 61
    NullIO.new
  • TE_ERR_MSG =
    - # File 'lib/puma/client.rb', line 57
    'Invalid Transfer-Encoding'
    + # File 'lib/puma/client.rb', line 57
    'Invalid Transfer-Encoding'
  • Const - Included

    @@ -293,6 +289,15 @@

    Instance Attribute Summary

    Returns true if the persistent connection can be closed immediately without waiting for the configured idle/shutdown timeout.

  • +
  • + + #closed? ⇒ Boolean + + readonly +
    +

    Remove in ::Puma 7?

    +
    +
  • #env @@ -543,11 +548,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 66
    +
    # File 'lib/puma/client.rb', line 65
     
     def initialize(io, env=nil)
    @@ -599,11 +604,11 @@ 

    Instance Attribute Details

    #body (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -635,11 +640,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 323
    +
    # File 'lib/puma/client.rb', line 325
     
     def can_close?
    @@ -651,15 +656,44 @@ 

    +
    +

    + #closed?Boolean (readonly) +

    +
    +
    + +

    Remove in ::Puma 7?

    + +
    +
    +
    + +
    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/client.rb', line 113
    +
    +
    +def closed?
    +  @to_io.closed?
    +end
    +
    +
    +
    +
    +

    #env (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -673,11 +707,11 @@ 

    #expect_proxy_proto=(val) (writeonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 328
    +
    # File 'lib/puma/client.rb', line 330
     
     def expect_proxy_proto=(val)
    @@ -699,11 +733,11 @@ 

    #hijacked (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -717,11 +751,11 @@ 

    #http_content_length_limit=(value) (writeonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 109
    +
    # File 'lib/puma/client.rb', line 108
     
     attr_writer :peerip, :http_content_length_limit
    @@ -734,11 +768,11 @@ 

    #http_content_length_limit_exceeded (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -752,11 +786,11 @@ 

    #in_data_phase (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 134
    +
    # File 'lib/puma/client.rb', line 136
     
     def in_data_phase
    @@ -771,11 +805,11 @@ 

    #inspect (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 122
    +
    # File 'lib/puma/client.rb', line 124
     
     def inspect
    @@ -790,11 +824,11 @@ 

    #io (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -808,11 +842,11 @@ 

    #io_buffer (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -836,15 +870,15 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 117
    +
    # File 'lib/puma/client.rb', line 119
     
     def io_ok?
    -  @to_io.is_a?(::BasicSocket) && !closed?
    +  @to_io.is_a?(::BasicSocket) && !closed?
     end
     
    @@ -855,11 +889,11 @@

    #listener (rw)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 111
    +
    # File 'lib/puma/client.rb', line 110
     
     attr_accessor :remote_addr_header, :listener
    @@ -872,11 +906,11 @@ 

    #peerip (rw)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 297
    +
    # File 'lib/puma/client.rb', line 299
     
     def peerip
    @@ -899,11 +933,11 @@ 

    #peerip=(value) (rw)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 109
    +
    # File 'lib/puma/client.rb', line 108
     
     attr_writer :peerip, :http_content_length_limit
    @@ -916,11 +950,11 @@ 

    #ready (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -934,11 +968,11 @@ 

    #remote_addr_header (rw)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 111
    +
    # File 'lib/puma/client.rb', line 110
     
     attr_accessor :remote_addr_header, :listener
    @@ -951,11 +985,11 @@ 

    #tempfile (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -969,11 +1003,11 @@ 

    #timeout_at (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -987,11 +1021,11 @@ 

    #to_io (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 106
    +
    # File 'lib/puma/client.rb', line 105
     
     attr_reader :env, :to_io, :body, :io, :timeout_at, :ready, :hijacked,
    @@ -1006,11 +1040,11 @@ 

    Instance Method Details

    #above_http_content_limit(value) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 620
    +
    # File 'lib/puma/client.rb', line 628
     
     def above_http_content_limit(value)
    @@ -1032,11 +1066,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 128
    +
    # File 'lib/puma/client.rb', line 130
     
     def call
    @@ -1052,11 +1086,11 @@ 

    #close

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 187
    +
    # File 'lib/puma/client.rb', line 189
     
     def close
    @@ -1075,11 +1109,11 @@ 

    #decode_chunk(chunk) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 515
    +
    # File 'lib/puma/client.rb', line 517
     
     def decode_chunk(chunk)
    @@ -1114,7 +1148,7 @@ 

    while !io.eof? line = io.gets - if line.end_with?("\r\n") + if line.end_with?(CHUNK_VALID_ENDING) # Puma doesn't process chunk extensions, but should parse if they're # present, which is the reason for the semicolon regex chunk_hex = line.strip[/\A[^;]+/] @@ -1126,13 +1160,19 @@

    @in_last_chunk = true @body.rewind rest = io.read - last_crlf_size = "\r\n".bytesize - if rest.bytesize < last_crlf_size + if rest.bytesize < CHUNK_VALID_ENDING_SIZE @buffer = nil - @partial_part_left = last_crlf_size - rest.bytesize + @partial_part_left = CHUNK_VALID_ENDING_SIZE - rest.bytesize return false else - @buffer = rest[last_crlf_size..-1] + # if the next character is a CRLF, set buffer to everything after that CRLF + start_of_rest = if rest.start_with?(CHUNK_VALID_ENDING) + CHUNK_VALID_ENDING_SIZE + else # we have started a trailer section, which we do not support. skip it! + rest.index(CHUNK_VALID_ENDING*2) + CHUNK_VALID_ENDING_SIZE*2 + end + + @buffer = rest[start_of_rest..-1] @buffer = nil if @buffer.empty? set_ready return true @@ -1187,11 +1227,11 @@

    #eagerly_finish

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 274
    +
    # File 'lib/puma/client.rb', line 276
     
     def eagerly_finish
    @@ -1208,11 +1248,11 @@ 

    #finish(timeout)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 280
    +
    # File 'lib/puma/client.rb', line 282
     
     def finish(timeout)
    @@ -1228,11 +1268,11 @@ 

    #peer_family

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 309
    +
    # File 'lib/puma/client.rb', line 311
     
     def peer_family
    @@ -1253,11 +1293,11 @@ 

    #read_body (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 423
    +
    # File 'lib/puma/client.rb', line 425
     
     def read_body
    @@ -1313,11 +1353,11 @@ 

    #read_chunked_body (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 468
    +
    # File 'lib/puma/client.rb', line 470
     
     def read_chunked_body
    @@ -1353,11 +1393,11 @@ 

    #reset(fast_check = true)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 147
    +
    # File 'lib/puma/client.rb', line 149
     
     def reset(fast_check=true)
    @@ -1408,11 +1448,11 @@ 

    #set_ready (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 612
    +
    # File 'lib/puma/client.rb', line 620
     
     def set_ready
    @@ -1431,11 +1471,11 @@ 

    #set_timeout(val)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 138
    +
    # File 'lib/puma/client.rb', line 140
     
     def set_timeout(val)
    @@ -1450,11 +1490,11 @@ 

    #setup_body (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 341
    +
    # File 'lib/puma/client.rb', line 343
     
     def setup_body
    @@ -1501,8 +1541,8 @@ 

    cl = @env[CONTENT_LENGTH] if cl - # cannot contain characters that are not \d - if CONTENT_LENGTH_VALUE_INVALID.match? cl + # cannot contain characters that are not \d, or be empty + if CONTENT_LENGTH_VALUE_INVALID.match?(cl) || cl.empty? raise HttpParserError, "Invalid Content-Length: #{cl.inspect}" end else @@ -1547,11 +1587,11 @@

    #setup_chunked_body(body) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 493
    +
    # File 'lib/puma/client.rb', line 495
     
     def setup_chunked_body(body)
    @@ -1586,11 +1626,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 143
    +
    # File 'lib/puma/client.rb', line 145
     
     def timeout
    @@ -1619,11 +1659,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 285
    +
    # File 'lib/puma/client.rb', line 287
     
     def timeout!
    @@ -1639,11 +1679,11 @@ 

    #try_to_finish

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 219
    +
    # File 'lib/puma/client.rb', line 221
     
     def try_to_finish
    @@ -1716,11 +1756,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 197
    +
    # File 'lib/puma/client.rb', line 199
     
     def try_to_parse_proxy_protocol
    @@ -1769,11 +1809,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 511
    +
    # File 'lib/puma/client.rb', line 513
     
     def write_chunk(str)
    @@ -1788,11 +1828,11 @@ 

    #write_error(status_code)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/client.rb', line 290
    +
    # File 'lib/puma/client.rb', line 292
     
     def write_error(status_code)
    diff --git a/puma/Puma/Cluster.html b/puma/Puma/Cluster.html
    index 6caf2f9..86c12f8 100644
    --- a/puma/Puma/Cluster.html
    +++ b/puma/Puma/Cluster.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::Cluster — Puma-6.3.0
    +Class: Puma::Cluster — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » Cluster ▲ @@ -108,7 +108,7 @@

    Class: Puma::Cluster

    Defined in: - lib/puma/cluster.rb,
    lib/puma/cluster/worker.rb,
    lib/puma/cluster/worker_handle.rb
    + lib/puma/cluster.rb,
    lib/puma/cluster/worker.rb,
    lib/puma/cluster/worker_handle.rb
    @@ -384,7 +384,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -410,7 +410,7 @@

    Instance Attribute Details

    #all_workers_booted?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -429,7 +429,7 @@

    #next_worker_index (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -451,7 +451,7 @@

    #preload?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -477,7 +477,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -526,7 +526,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -544,7 +544,7 @@

    Instance Method Details

    #check_workers

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -591,7 +591,7 @@

    #cull_start_index(diff)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -615,7 +615,7 @@

    #cull_workers

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -660,7 +660,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -682,7 +682,7 @@

    #halt

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -702,7 +702,7 @@

    #phased_restart(refork = false)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -726,7 +726,7 @@

    #redirect_io

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -747,7 +747,7 @@

    #reload_worker_directory

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -768,7 +768,7 @@

    #restart

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -788,7 +788,7 @@

    #run

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -970,7 +970,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1036,7 +1036,7 @@

    #single_worker_warning (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1076,7 +1076,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1105,7 +1105,7 @@

    #spawn_workers

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1150,7 +1150,7 @@

    #start_phased_restart

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1177,7 +1177,7 @@

    #stop

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1197,7 +1197,7 @@

    #stop_blocked

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1219,7 +1219,7 @@

    #stop_workers

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1265,7 +1265,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1301,7 +1301,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1339,7 +1339,7 @@

    #worker(index, master)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1376,7 +1376,7 @@

    #workers_to_cull(diff)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Cluster/Worker.html b/puma/Puma/Cluster/Worker.html index 32f88e0..8957e41 100644 --- a/puma/Puma/Cluster/Worker.html +++ b/puma/Puma/Cluster/Worker.html @@ -8,7 +8,7 @@ -Class: Puma::Cluster::Worker — Puma-6.3.0 +Class: Puma::Cluster::Worker — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (W) » Puma » Cluster » @@ -105,7 +105,7 @@

    Class: Puma::Cluster::Worker

    Defined in: - lib/puma/cluster/worker.rb + lib/puma/cluster/worker.rb @@ -248,7 +248,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -277,7 +277,7 @@

    Instance Attribute Details

    #index (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -294,7 +294,7 @@

    #master (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -312,7 +312,7 @@

    Instance Method Details

    #run

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -451,7 +451,7 @@

    #spawn_worker(idx) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Cluster/WorkerHandle.html b/puma/Puma/Cluster/WorkerHandle.html index 1abd8f3..b6f95d0 100644 --- a/puma/Puma/Cluster/WorkerHandle.html +++ b/puma/Puma/Cluster/WorkerHandle.html @@ -8,7 +8,7 @@ -Class: Puma::Cluster::WorkerHandle — Puma-6.3.0 +Class: Puma::Cluster::WorkerHandle — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (W) » Puma » Cluster » @@ -81,7 +81,7 @@

    Class: Puma::Cluster::WorkerHandle

    Defined in: - lib/puma/cluster/worker_handle.rb + lib/puma/cluster/worker_handle.rb @@ -240,7 +240,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -270,7 +270,7 @@

    Instance Attribute Details

    #booted?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -289,7 +289,7 @@

    #index (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -306,7 +306,7 @@

    #last_checkin (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -323,7 +323,7 @@

    #last_status (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -340,7 +340,7 @@

    #phase (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -373,7 +373,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -390,7 +390,7 @@

    #pid (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -423,7 +423,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -440,7 +440,7 @@

    #signal (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -457,7 +457,7 @@

    #started_at (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -474,7 +474,7 @@

    #term?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -494,7 +494,7 @@

    Instance Method Details

    #boot!

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -514,7 +514,7 @@

    #hup

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -534,7 +534,7 @@

    #kill

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -554,7 +554,7 @@

    #ping!(status)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -598,7 +598,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -621,7 +621,7 @@

    #term (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -649,7 +649,7 @@

    #term!

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -668,7 +668,7 @@

    #uptime

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/CommonLogger.html b/puma/Puma/CommonLogger.html index 0015c62..93cc575 100644 --- a/puma/Puma/CommonLogger.html +++ b/puma/Puma/CommonLogger.html @@ -8,7 +8,7 @@ -Class: Puma::CommonLogger — Puma-6.3.0 +Class: Puma::CommonLogger — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » CommonLogger ▲ @@ -77,7 +77,7 @@

    Class: Puma::CommonLogger

    Defined in: - lib/puma/commonlogger.rb + lib/puma/commonlogger.rb @@ -102,7 +102,7 @@

    Constant Summary

  • CONTENT_LENGTH =
    - # File 'lib/puma/commonlogger.rb', line 30
    'Content-Length'
    + # File 'lib/puma/commonlogger.rb', line 30
    'Content-Length'
  • FORMAT = @@ -117,12 +117,12 @@

    Constant Summary

  • - # File 'lib/puma/commonlogger.rb', line 24
    %{%s - %s [%s] "%s %s%s %s" %d %s %0.4f\n}
    + # File 'lib/puma/commonlogger.rb', line 24
    %{%s - %s [%s] "%s %s%s %s" %d %s %0.4f\n}

  • HIJACK_FORMAT =
    - # File 'lib/puma/commonlogger.rb', line 26
    %{%s - %s [%s] "%s %s%s %s" HIJACKED -1 %0.4f\n}
    + # File 'lib/puma/commonlogger.rb', line 26
    %{%s - %s [%s] "%s %s%s %s" HIJACKED -1 %0.4f\n}
  • HTTP_VERSION = @@ -133,42 +133,42 @@

    Constant Summary

    - # File 'lib/puma/commonlogger.rb', line 32
    Const::HTTP_VERSION
    + # File 'lib/puma/commonlogger.rb', line 32
    Const::HTTP_VERSION
  • HTTP_X_FORWARDED_FOR =
    - # File 'lib/puma/commonlogger.rb', line 33
    Const::HTTP_X_FORWARDED_FOR
    + # File 'lib/puma/commonlogger.rb', line 33
    Const::HTTP_X_FORWARDED_FOR
  • LOG_TIME_FORMAT =
    - # File 'lib/puma/commonlogger.rb', line 28
    '%d/%b/%Y:%H:%M:%S %z'
    + # File 'lib/puma/commonlogger.rb', line 28
    '%d/%b/%Y:%H:%M:%S %z'
  • PATH_INFO =
    - # File 'lib/puma/commonlogger.rb', line 34
    Const::PATH_INFO
    + # File 'lib/puma/commonlogger.rb', line 34
    Const::PATH_INFO
  • QUERY_STRING =
    - # File 'lib/puma/commonlogger.rb', line 35
    Const::QUERY_STRING
    + # File 'lib/puma/commonlogger.rb', line 35
    Const::QUERY_STRING
  • REMOTE_ADDR =
    - # File 'lib/puma/commonlogger.rb', line 36
    Const::REMOTE_ADDR
    + # File 'lib/puma/commonlogger.rb', line 36
    Const::REMOTE_ADDR
  • REMOTE_USER =
    - # File 'lib/puma/commonlogger.rb', line 37
    'REMOTE_USER'
    + # File 'lib/puma/commonlogger.rb', line 37
    'REMOTE_USER'
  • REQUEST_METHOD =
    - # File 'lib/puma/commonlogger.rb', line 38
    Const::REQUEST_METHOD
    + # File 'lib/puma/commonlogger.rb', line 38
    Const::REQUEST_METHOD
  • @@ -233,7 +233,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -254,7 +254,7 @@

    Instance Method Details

    #call(env)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -285,7 +285,7 @@

    #extract_content_length(headers) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -305,7 +305,7 @@

    #log(env, status, header, began_at) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -339,7 +339,7 @@

    #log_hijacking(env, status, header, began_at) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -370,7 +370,7 @@

    #write(msg) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Configuration.html b/puma/Puma/Configuration.html index 1e3126f..363c9ae 100644 --- a/puma/Puma/Configuration.html +++ b/puma/Puma/Configuration.html @@ -8,7 +8,7 @@ -Class: Puma::Configuration — Puma-6.3.0 +Class: Puma::Configuration — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » Configuration ▲ @@ -83,7 +83,7 @@

    Class: Puma::Configuration

    Defined in: - lib/puma/configuration.rb + lib/puma/configuration.rb @@ -125,15 +125,17 @@

    Constant Summary

  • DEFAULTS =
    - # File 'lib/puma/configuration.rb', line 129
    {
    +    # File 'lib/puma/configuration.rb', line 129    
    {
       auto_trim_time: 30,
       binds: ['tcp://0.0.0.0:9292'.freeze],
       clean_thread_locals: false,
       debug: false,
       early_hints: nil,
       environment: 'development'.freeze,
    -  # Number of seconds to wait until we get the first data for the request
    +  # Number of seconds to wait until we get the first data for the request.
       first_data_timeout: 30,
    +  # Number of seconds to wait until the next request before shutting down.
    +  idle_timeout: nil,
       io_selector_backend: :auto,
       log_requests: false,
       logger: STDOUT,
    @@ -341,11 +343,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 174
    +
    # File 'lib/puma/configuration.rb', line 176
     
     def initialize(user_options={}, default_options = {}, &block)
    @@ -375,11 +377,11 @@ 

    Class Method Details

    .random_token (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 381
    +
    # File 'lib/puma/configuration.rb', line 383
     
     def self.random_token
    @@ -396,11 +398,11 @@ 

    .temp_path

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 331
    +
    # File 'lib/puma/configuration.rb', line 333
     
     def self.temp_path
    @@ -429,11 +431,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 276
    +
    # File 'lib/puma/configuration.rb', line 278
     
     def app_configured?
    @@ -448,11 +450,11 @@ 

    #options (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 192
    +
    # File 'lib/puma/configuration.rb', line 194
     
     attr_reader :options, :plugins
    @@ -465,11 +467,11 @@ 

    #plugins (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 192
    +
    # File 'lib/puma/configuration.rb', line 194
     
     attr_reader :options, :plugins
    @@ -490,11 +492,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 287
    +
    # File 'lib/puma/configuration.rb', line 289
     
     def app
    @@ -524,11 +526,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 257
    +
    # File 'lib/puma/configuration.rb', line 259
     
     def clamp
    @@ -543,11 +545,11 @@ 

    #config_files

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 242
    +
    # File 'lib/puma/configuration.rb', line 244
     
     def config_files
    @@ -571,11 +573,11 @@ 

    #configure

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 194
    +
    # File 'lib/puma/configuration.rb', line 196
     
     def configure
    @@ -601,11 +603,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 300
    +
    # File 'lib/puma/configuration.rb', line 302
     
     def environment
    @@ -620,11 +622,11 @@ 

    #final_options

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 327
    +
    # File 'lib/puma/configuration.rb', line 329
     
     def final_options
    @@ -639,11 +641,11 @@ 

    #flatten

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 208
    +
    # File 'lib/puma/configuration.rb', line 210
     
     def flatten
    @@ -658,11 +660,11 @@ 

    #flatten!

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 212
    +
    # File 'lib/puma/configuration.rb', line 214
     
     def flatten!
    @@ -678,11 +680,11 @@ 

    #initialize_copy(other)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 202
    +
    # File 'lib/puma/configuration.rb', line 204
     
     def initialize_copy(other)
    @@ -699,11 +701,11 @@ 

    #load

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 236
    +
    # File 'lib/puma/configuration.rb', line 238
     
     def load
    @@ -720,11 +722,11 @@ 

    #load_plugin(name)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 304
    +
    # File 'lib/puma/configuration.rb', line 306
     
     def load_plugin(name)
    @@ -739,11 +741,11 @@ 

    #load_rackup (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 363
    +
    # File 'lib/puma/configuration.rb', line 365
     
     def load_rackup
    @@ -772,11 +774,11 @@ 

    #puma_default_options

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 217
    +
    # File 'lib/puma/configuration.rb', line 219
     
     def puma_default_options
    @@ -793,11 +795,11 @@ 

    #puma_options_from_env

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 223
    +
    # File 'lib/puma/configuration.rb', line 225
     
     def puma_options_from_env
    @@ -828,11 +830,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 342
    +
    # File 'lib/puma/configuration.rb', line 344
     
     def rack_builder
    @@ -864,11 +866,11 @@ 

    #rackup

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 280
    +
    # File 'lib/puma/configuration.rb', line 282
     
     def rackup
    @@ -908,11 +910,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 311
    +
    # File 'lib/puma/configuration.rb', line 313
     
     def run_hooks(key, arg, log_writer, hook_data = nil)
    diff --git a/puma/Puma/Configuration/ConfigMiddleware.html b/puma/Puma/Configuration/ConfigMiddleware.html
    index d33f9eb..b162431 100644
    --- a/puma/Puma/Configuration/ConfigMiddleware.html
    +++ b/puma/Puma/Configuration/ConfigMiddleware.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::Configuration::ConfigMiddleware — Puma-6.3.0
    +Class: Puma::Configuration::ConfigMiddleware — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » Configuration » @@ -78,7 +78,7 @@

    Class: Puma::Configuration::ConfigMiddleware

    Defined in: - lib/puma/configuration.rb + lib/puma/configuration.rb @@ -129,11 +129,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 263
    +
    # File 'lib/puma/configuration.rb', line 265
     
     def initialize(config, app)
    @@ -150,11 +150,11 @@ 

    Instance Method Details

    #call(env)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/configuration.rb', line 268
    +
    # File 'lib/puma/configuration.rb', line 270
     
     def call(env)
    diff --git a/puma/Puma/ConnectionError.html b/puma/Puma/ConnectionError.html
    index 443c82b..d7784cb 100644
    --- a/puma/Puma/ConnectionError.html
    +++ b/puma/Puma/ConnectionError.html
    @@ -8,7 +8,7 @@
     
     
     
    -Exception: Puma::ConnectionError — Puma-6.3.0
    +Exception: Puma::ConnectionError — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » ConnectionError ▲ @@ -101,7 +101,7 @@

    Exception: Puma::ConnectionError

    Defined in: - lib/puma/client.rb + lib/puma/client.rb diff --git a/puma/Puma/Const.html b/puma/Puma/Const.html index dc7b629..f74ec73 100644 --- a/puma/Puma/Const.html +++ b/puma/Puma/Const.html @@ -8,7 +8,7 @@ -Module: Puma::Const — Puma-6.3.0 +Module: Puma::Const — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » Const ▲ @@ -82,7 +82,7 @@

    Module: Puma::Const

    Defined in: - lib/puma/const.rb + lib/puma/const.rb @@ -113,17 +113,17 @@

    Constant Summary

    - # File 'lib/puma/const.rb', line 285
    /\A(rack\.|status\z)/.freeze
    + # File 'lib/puma/const.rb', line 285
    /\A(rack\.|status\z)/.freeze

  • CGI_VER =
    - # File 'lib/puma/const.rb', line 224
    "CGI/1.2"
    + # File 'lib/puma/const.rb', line 224
    "CGI/1.2"
  • CHUNKED =
    - # File 'lib/puma/const.rb', line 265
    "chunked"
    + # File 'lib/puma/const.rb', line 265
    "chunked"
  • CHUNK_SIZE = @@ -134,57 +134,57 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 140
    16 * 1024
    + # File 'lib/puma/const.rb', line 140
    16 * 1024
  • CLOSE =
    - # File 'lib/puma/const.rb', line 251
    "close"
    + # File 'lib/puma/const.rb', line 251
    "close"
  • CLOSE_CHUNKED =
    - # File 'lib/puma/const.rb', line 263
    "0\r\n\r\n"
    + # File 'lib/puma/const.rb', line 263
    "0\r\n\r\n"
  • CODE_NAME =
    - # File 'lib/puma/const.rb', line 104
    "Mugi No Toki Itaru"
    + # File 'lib/puma/const.rb', line 104
    "The Eagle of Durango"
  • COLON =
    - # File 'lib/puma/const.rb', line 267
    ": "
    + # File 'lib/puma/const.rb', line 267
    ": "
  • CONNECTION_CLOSE =
    - # File 'lib/puma/const.rb', line 259
    "Connection: close\r\n"
    + # File 'lib/puma/const.rb', line 259
    "Connection: close\r\n"
  • CONNECTION_KEEP_ALIVE =
    - # File 'lib/puma/const.rb', line 260
    "Connection: Keep-Alive\r\n"
    + # File 'lib/puma/const.rb', line 260
    "Connection: Keep-Alive\r\n"
  • CONTENT_LENGTH =
    - # File 'lib/puma/const.rb', line 118
    "CONTENT_LENGTH"
    + # File 'lib/puma/const.rb', line 118
    "CONTENT_LENGTH"
  • CONTENT_LENGTH2 =
    - # File 'lib/puma/const.rb', line 254
    "content-length"
    + # File 'lib/puma/const.rb', line 254
    "content-length"
  • CONTENT_LENGTH_S =
    - # File 'lib/puma/const.rb', line 255
    "Content-Length: "
    + # File 'lib/puma/const.rb', line 255
    "Content-Length: "
  • CONTINUE =
    - # File 'lib/puma/const.rb', line 245
    "100-continue"
    + # File 'lib/puma/const.rb', line 245
    "100-continue"
  • DQUOTE = @@ -195,17 +195,17 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 278
    "\""
    + # File 'lib/puma/const.rb', line 278
    "\""
  • EARLY_HINTS =
    - # File 'lib/puma/const.rb', line 275
    "rack.early_hints"
    + # File 'lib/puma/const.rb', line 275
    "rack.early_hints"
  • ERROR_RESPONSE =
    - # File 'lib/puma/const.rb', line 124
    {
    +    # File 'lib/puma/const.rb', line 124    
    {
       # Indicate that we couldn't parse the request
       400 => "HTTP/1.1 400 Bad Request\r\n\r\n",
       # The standard empty 404 response for bad requests.  Use Error4040Handler for custom stuff.
    @@ -223,117 +223,117 @@ 

    Constant Summary

  • FAST_TRACK_KA_TIMEOUT =
    - # File 'lib/puma/const.rb', line 108
    0.2
    + # File 'lib/puma/const.rb', line 108
    0.2
  • GATEWAY_INTERFACE =
    - # File 'lib/puma/const.rb', line 223
    "GATEWAY_INTERFACE"
    + # File 'lib/puma/const.rb', line 223
    "GATEWAY_INTERFACE"
  • HALT_COMMAND =
    - # File 'lib/puma/const.rb', line 227
    "!"
    + # File 'lib/puma/const.rb', line 227
    "!"
  • HEAD =
    - # File 'lib/puma/const.rb', line 150
    "HEAD"
    + # File 'lib/puma/const.rb', line 150
    "HEAD"
  • HIJACK =
    - # File 'lib/puma/const.rb', line 272
    "rack.hijack"
    + # File 'lib/puma/const.rb', line 272
    "rack.hijack"
  • HIJACK_IO =
    - # File 'lib/puma/const.rb', line 273
    "rack.hijack_io"
    + # File 'lib/puma/const.rb', line 273
    "rack.hijack_io"
  • HIJACK_P =
    - # File 'lib/puma/const.rb', line 271
    "rack.hijack?"
    + # File 'lib/puma/const.rb', line 271
    "rack.hijack?"
  • HTTP =
    - # File 'lib/puma/const.rb', line 237
    "http"
    + # File 'lib/puma/const.rb', line 237
    "http"
  • HTTPS =
    - # File 'lib/puma/const.rb', line 238
    "https"
    + # File 'lib/puma/const.rb', line 238
    "https"
  • HTTPS_KEY =
    - # File 'lib/puma/const.rb', line 240
    "HTTPS"
    + # File 'lib/puma/const.rb', line 240
    "HTTPS"
  • HTTP_10_200 =
    - # File 'lib/puma/const.rb', line 249
    "HTTP/1.0 200 OK\r\n"
    + # File 'lib/puma/const.rb', line 249
    "HTTP/1.0 200 OK\r\n"
  • HTTP_11 =
    - # File 'lib/puma/const.rb', line 220
    "HTTP/1.1"
    + # File 'lib/puma/const.rb', line 220
    "HTTP/1.1"
  • HTTP_11_100 =
    - # File 'lib/puma/const.rb', line 247
    "HTTP/1.1 100 Continue\r\n\r\n"
    + # File 'lib/puma/const.rb', line 247
    "HTTP/1.1 100 Continue\r\n\r\n"
  • HTTP_11_200 =
    - # File 'lib/puma/const.rb', line 248
    "HTTP/1.1 200 OK\r\n"
    + # File 'lib/puma/const.rb', line 248
    "HTTP/1.1 200 OK\r\n"
  • HTTP_CONNECTION =
    - # File 'lib/puma/const.rb', line 243
    "HTTP_CONNECTION"
    + # File 'lib/puma/const.rb', line 243
    "HTTP_CONNECTION"
  • HTTP_EXPECT =
    - # File 'lib/puma/const.rb', line 244
    "HTTP_EXPECT"
    + # File 'lib/puma/const.rb', line 244
    "HTTP_EXPECT"
  • HTTP_HEADER_DELIMITER =
    - # File 'lib/puma/const.rb', line 279
    Regexp.escape("(),/:;<=>?@[]{}\\").freeze
    + # File 'lib/puma/const.rb', line 279
    Regexp.escape("(),/:;<=>?@[]{}\\").freeze
  • HTTP_HOST =
    - # File 'lib/puma/const.rb', line 210
    "HTTP_HOST"
    + # File 'lib/puma/const.rb', line 210
    "HTTP_HOST"
  • HTTP_VERSION =
    - # File 'lib/puma/const.rb', line 242
    "HTTP_VERSION"
    + # File 'lib/puma/const.rb', line 242
    "HTTP_VERSION"
  • HTTP_X_FORWARDED_FOR =
    - # File 'lib/puma/const.rb', line 203
    "HTTP_X_FORWARDED_FOR"
    + # File 'lib/puma/const.rb', line 203
    "HTTP_X_FORWARDED_FOR"
  • HTTP_X_FORWARDED_PROTO =
    - # File 'lib/puma/const.rb', line 206
    "HTTP_X_FORWARDED_PROTO"
    + # File 'lib/puma/const.rb', line 206
    "HTTP_X_FORWARDED_PROTO"
  • HTTP_X_FORWARDED_SCHEME =
    - # File 'lib/puma/const.rb', line 205
    "HTTP_X_FORWARDED_SCHEME"
    + # File 'lib/puma/const.rb', line 205
    "HTTP_X_FORWARDED_SCHEME"
  • HTTP_X_FORWARDED_SSL =
    - # File 'lib/puma/const.rb', line 204
    "HTTP_X_FORWARDED_SSL"
    + # File 'lib/puma/const.rb', line 204
    "HTTP_X_FORWARDED_SSL"
  • IANA_HTTP_METHODS = @@ -344,7 +344,7 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 158
    %w[
    +    # File 'lib/puma/const.rb', line 158    
    %w[
       ACL
       BASELINE-CONTROL
       BIND
    @@ -389,7 +389,7 @@ 

    Constant Summary

  • ILLEGAL_HEADER_KEY_REGEX =
    - # File 'lib/puma/const.rb', line 280
    /[\x00-\x20#{DQUOTE}#{HTTP_HEADER_DELIMITER}]/.freeze
    + # File 'lib/puma/const.rb', line 280
    /[\x00-\x20#{DQUOTE}#{HTTP_HEADER_DELIMITER}]/.freeze
  • ILLEGAL_HEADER_VALUE_REGEX = @@ -400,12 +400,12 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 282
    /[\x00-\x08\x0A-\x1F]/.freeze
    + # File 'lib/puma/const.rb', line 282
    /[\x00-\x08\x0A-\x1F]/.freeze
  • KEEP_ALIVE =
    - # File 'lib/puma/const.rb', line 252
    "keep-alive"
    + # File 'lib/puma/const.rb', line 252
    "keep-alive"
  • LINE_END = @@ -416,22 +416,22 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 201
    "\r\n"
    + # File 'lib/puma/const.rb', line 201
    "\r\n"
  • LOCALHOST =
    - # File 'lib/puma/const.rb', line 213
    "localhost"
    + # File 'lib/puma/const.rb', line 213
    "localhost"
  • LOCALHOST_IPV4 =
    - # File 'lib/puma/const.rb', line 214
    "127.0.0.1"
    + # File 'lib/puma/const.rb', line 214
    "127.0.0.1"
  • LOCALHOST_IPV6 =
    - # File 'lib/puma/const.rb', line 215
    "::1"
    + # File 'lib/puma/const.rb', line 215
    "::1"
  • MAX_BODY = @@ -442,7 +442,7 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 147
    MAX_HEADER
    + # File 'lib/puma/const.rb', line 147
    MAX_HEADER
  • MAX_HEADER = @@ -453,97 +453,97 @@

    Constant Summary

  • - # File 'lib/puma/const.rb', line 144
    1024 * (80 + 32)
    + # File 'lib/puma/const.rb', line 144
    1024 * (80 + 32)
  • NEWLINE =
    - # File 'lib/puma/const.rb', line 269
    "\n"
    + # File 'lib/puma/const.rb', line 269
    "\n"
  • PATH_INFO =
    - # File 'lib/puma/const.rb', line 120
    "PATH_INFO"
    + # File 'lib/puma/const.rb', line 120
    "PATH_INFO"
  • PORT_443 =
    - # File 'lib/puma/const.rb', line 212
    "443"
    + # File 'lib/puma/const.rb', line 212
    "443"
  • PORT_80 =
    - # File 'lib/puma/const.rb', line 211
    "80"
    + # File 'lib/puma/const.rb', line 211
    "80"
  • PROXY_PROTOCOL_V1_REGEX =
    - # File 'lib/puma/const.rb', line 287
    /^PROXY (?:TCP4|TCP6|UNKNOWN) ([^\r]+)\r\n/.freeze
    + # File 'lib/puma/const.rb', line 287
    /^PROXY (?:TCP4|TCP6|UNKNOWN) ([^\r]+)\r\n/.freeze
  • PUMA_CONFIG =
    - # File 'lib/puma/const.rb', line 234
    "puma.config"
    + # File 'lib/puma/const.rb', line 234
    "puma.config"
  • PUMA_PEERCERT =
    - # File 'lib/puma/const.rb', line 235
    "puma.peercert"
    + # File 'lib/puma/const.rb', line 235
    "puma.peercert"
  • PUMA_SERVER_STRING =
    - # File 'lib/puma/const.rb', line 106
    ["puma", PUMA_VERSION, CODE_NAME].join(" ").freeze
    + # File 'lib/puma/const.rb', line 106
    ["puma", PUMA_VERSION, CODE_NAME].join(" ").freeze
  • PUMA_SOCKET =
    - # File 'lib/puma/const.rb', line 233
    "puma.socket"
    + # File 'lib/puma/const.rb', line 233
    "puma.socket"
  • PUMA_TMP_BASE =
    - # File 'lib/puma/const.rb', line 122
    "puma"
    + # File 'lib/puma/const.rb', line 122
    "puma"
  • PUMA_VERSION =
    - # File 'lib/puma/const.rb', line 103
    VERSION = "6.3.0"
    + # File 'lib/puma/const.rb', line 103
    VERSION = "6.4.0"
  • QUERY_STRING =
    - # File 'lib/puma/const.rb', line 117
    "QUERY_STRING"
    + # File 'lib/puma/const.rb', line 117
    "QUERY_STRING"
  • RACK_AFTER_REPLY =
    - # File 'lib/puma/const.rb', line 232
    "rack.after_reply"
    + # File 'lib/puma/const.rb', line 232
    "rack.after_reply"
  • RACK_INPUT =
    - # File 'lib/puma/const.rb', line 230
    "rack.input"
    + # File 'lib/puma/const.rb', line 230
    "rack.input"
  • RACK_URL_SCHEME =
    - # File 'lib/puma/const.rb', line 231
    "rack.url_scheme"
    + # File 'lib/puma/const.rb', line 231
    "rack.url_scheme"
  • REMOTE_ADDR =
    - # File 'lib/puma/const.rb', line 202
    "REMOTE_ADDR"
    + # File 'lib/puma/const.rb', line 202
    "REMOTE_ADDR"
  • REQUEST_METHOD =
    - # File 'lib/puma/const.rb', line 149
    "REQUEST_METHOD"
    + # File 'lib/puma/const.rb', line 149
    "REQUEST_METHOD"
  • REQUEST_PATH =
    - # File 'lib/puma/const.rb', line 116
    "REQUEST_PATH"
    + # File 'lib/puma/const.rb', line 116
    "REQUEST_PATH"
  • REQUEST_URI = @@ -554,37 +554,37 @@

    Constant Summary

    - # File 'lib/puma/const.rb', line 115
    "REQUEST_URI"
    + # File 'lib/puma/const.rb', line 115
    "REQUEST_URI"
  • RESTART_COMMAND =
    - # File 'lib/puma/const.rb', line 228
    "R"
    + # File 'lib/puma/const.rb', line 228
    "R"
  • SERVER_NAME =
    - # File 'lib/puma/const.rb', line 208
    "SERVER_NAME"
    + # File 'lib/puma/const.rb', line 208
    "SERVER_NAME"
  • SERVER_PORT =
    - # File 'lib/puma/const.rb', line 209
    "SERVER_PORT"
    + # File 'lib/puma/const.rb', line 209
    "SERVER_PORT"
  • SERVER_PROTOCOL =
    - # File 'lib/puma/const.rb', line 219
    "SERVER_PROTOCOL"
    + # File 'lib/puma/const.rb', line 219
    "SERVER_PROTOCOL"
  • SERVER_SOFTWARE =
    - # File 'lib/puma/const.rb', line 222
    "SERVER_SOFTWARE"
    + # File 'lib/puma/const.rb', line 222
    "SERVER_SOFTWARE"
  • STOP_COMMAND =
    - # File 'lib/puma/const.rb', line 226
    "?"
    + # File 'lib/puma/const.rb', line 226
    "?"
  • SUPPORTED_HTTP_METHODS = @@ -595,32 +595,32 @@

    Constant Summary

    - # File 'lib/puma/const.rb', line 154
    %w[HEAD GET POST PUT DELETE OPTIONS TRACE PATCH].freeze
    + # File 'lib/puma/const.rb', line 154
    %w[HEAD GET POST PUT DELETE OPTIONS TRACE PATCH].freeze
  • TRANSFER_ENCODING =
    - # File 'lib/puma/const.rb', line 256
    "transfer-encoding"
    + # File 'lib/puma/const.rb', line 256
    "transfer-encoding"
  • TRANSFER_ENCODING2 =
    - # File 'lib/puma/const.rb', line 257
    "HTTP_TRANSFER_ENCODING"
    + # File 'lib/puma/const.rb', line 257
    "HTTP_TRANSFER_ENCODING"
  • TRANSFER_ENCODING_CHUNKED =
    - # File 'lib/puma/const.rb', line 262
    "Transfer-Encoding: chunked\r\n"
    + # File 'lib/puma/const.rb', line 262
    "Transfer-Encoding: chunked\r\n"
  • UNSPECIFIED_IPV4 =
    - # File 'lib/puma/const.rb', line 216
    "0.0.0.0"
    + # File 'lib/puma/const.rb', line 216
    "0.0.0.0"
  • UNSPECIFIED_IPV6 =
    - # File 'lib/puma/const.rb', line 217
    "::"
    + # File 'lib/puma/const.rb', line 217
    "::"
  • WRITE_TIMEOUT = @@ -631,7 +631,7 @@

    Constant Summary

    - # File 'lib/puma/const.rb', line 112
    10
    + # File 'lib/puma/const.rb', line 112
    10
  • diff --git a/puma/Puma/ControlCLI.html b/puma/Puma/ControlCLI.html index dce693a..dacc023 100644 --- a/puma/Puma/ControlCLI.html +++ b/puma/Puma/ControlCLI.html @@ -8,7 +8,7 @@ -Class: Puma::ControlCLI — Puma-6.3.0 +Class: Puma::ControlCLI — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » ControlCLI ▲ @@ -77,7 +77,7 @@

    Class: Puma::ControlCLI

    Defined in: - lib/puma/control_cli.rb + lib/puma/control_cli.rb @@ -105,7 +105,7 @@

    Constant Summary

    - # File 'lib/puma/control_cli.rb', line 17
    {
    +    # File 'lib/puma/control_cli.rb', line 15    
    {
       'gc'       => nil,
       'gc-stats' => nil,
       'halt'              => 'SIGQUIT',
    @@ -133,7 +133,7 @@ 

    Constant Summary

    - # File 'lib/puma/control_cli.rb', line 37
    %w[info reopen-log worker-count-down worker-count-up].freeze
    + # File 'lib/puma/control_cli.rb', line 35
    %w[info reopen-log worker-count-down worker-count-up].freeze
  • PRINTABLE_COMMANDS = @@ -153,7 +153,7 @@

    Constant Summary

    - # File 'lib/puma/control_cli.rb', line 40
    %w[gc-stats stats thread-backtraces].freeze
    + # File 'lib/puma/control_cli.rb', line 38
    %w[gc-stats stats thread-backtraces].freeze
  • @@ -220,11 +220,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 42
    +
    # File 'lib/puma/control_cli.rb', line 40
     
     def initialize(argv, stdout=STDOUT, stderr=STDERR)
    @@ -314,6 +314,9 @@ 

    end if @config_file + require_relative 'configuration' + require_relative 'log_writer' + config = Puma::Configuration.new({ config_files: [@config_file] }, {}) config.load @state ||= config.options[:state] @@ -336,11 +339,11 @@

    Instance Method Details

    #message(msg)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 142
    +
    # File 'lib/puma/control_cli.rb', line 143
     
     def message(msg)
    @@ -355,11 +358,11 @@ 

    #prepare_configuration

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 146
    +
    # File 'lib/puma/control_cli.rb', line 147
     
     def prepare_configuration
    @@ -368,6 +371,8 @@ 

    raise "State file not found: #{@state}" end + require_relative 'state_file' + sf = Puma::StateFile.new sf.load @state @@ -388,11 +393,11 @@

    #run

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 270
    +
    # File 'lib/puma/control_cli.rb', line 277
     
     def run
    @@ -418,32 +423,36 @@ 

    #send_request

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 164
    +
    # File 'lib/puma/control_cli.rb', line 167
     
     def send_request
       uri = URI.parse @control_url
     
    +  host = uri.host
    +
       # create server object by scheme
       server =
         case uri.scheme
         when 'ssl'
           require 'openssl'
    +      host = host[1..-2] if host&.start_with? '['
           OpenSSL::SSL::SSLSocket.new(
    -        TCPSocket.new(uri.host, uri.port),
    +        TCPSocket.new(host, uri.port),
             OpenSSL::SSL::SSLContext.new)
             .tap { |ssl| ssl.sync_close = true }  # default is false
             .tap(&:connect)
         when 'tcp'
    -      TCPSocket.new uri.host, uri.port
    +      host = host[1..-2] if host&.start_with? '['
    +      TCPSocket.new host, uri.port
         when 'unix'
           # check for abstract UNIXSocket
           UNIXSocket.new(@control_url.start_with?('unix://@') ?
    -        "\0#{uri.host}#{uri.path}" : "#{uri.host}#{uri.path}")
    +        "\0#{host}#{uri.path}" : "#{host}#{uri.path}")
         else
           raise "Invalid scheme: #{uri.scheme}"
         end
    @@ -500,11 +509,11 @@ 

    #send_signal

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 231
    +
    # File 'lib/puma/control_cli.rb', line 238
     
     def send_signal
    @@ -554,11 +563,11 @@ 

    #start (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/control_cli.rb', line 286
    +
    # File 'lib/puma/control_cli.rb', line 293
     
     def start
    diff --git a/puma/Puma/DSL.html b/puma/Puma/DSL.html
    index 3b26b67..ca99f9e 100644
    --- a/puma/Puma/DSL.html
    +++ b/puma/Puma/DSL.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::DSL — Puma-6.3.0
    +Class: Puma::DSL — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (D) » Puma » DSL ▲ @@ -77,7 +77,7 @@

    Class: Puma::DSL

    Defined in: - lib/puma/dsl.rb + lib/puma/dsl.rb @@ -132,7 +132,7 @@

    Constant Summary

  • ON_WORKER_KEY =
    - # File 'lib/puma/dsl.rb', line 52
    [String, Symbol].freeze
    + # File 'lib/puma/dsl.rb', line 52
    [String, Symbol].freeze
  • @@ -335,6 +335,14 @@

    Instance Method Summary

    The default value for http_content_length_limit is nil.

    +
  • + + #idle_timeout(seconds) + +
    +

    If a new request is not received within this number of seconds, begin shutting down.

    +
    +
  • #inject(&blk) @@ -414,6 +422,22 @@

    Instance Method Summary

    Code to run before doing a restart.

  • +
  • + + #on_thread_exit(&block) + +
    +

    Code to run immediately before a thread exits.

    +
    +
  • +
  • + + #on_thread_start(&block) + +
    +

    Code to run immediately before a thread starts.

    +
    +
  • #on_worker_boot(key = nil, &block) @@ -728,7 +752,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -765,7 +789,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -847,7 +871,7 @@

    Instance Method Details

    #_load_from(path)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -871,7 +895,7 @@

    #_offer_plugins

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -915,7 +939,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -962,11 +986,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1106
    +
    # File 'lib/puma/dsl.rb', line 1153
     
     def add_pem_values_to_options_store(opts)
    @@ -1000,11 +1024,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 686
    +
    # File 'lib/puma/dsl.rb', line 698
     
     alias_method :after_worker_boot, :after_worker_fork
    @@ -1044,11 +1068,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 680
    +
    # File 'lib/puma/dsl.rb', line 692
     
     def after_worker_fork(&block)
    @@ -1094,7 +1118,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1143,11 +1167,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 613
    +
    # File 'lib/puma/dsl.rb', line 625
     
     def before_fork(&block)
    @@ -1218,7 +1242,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1267,7 +1291,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1293,11 +1317,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 332
    +
    # File 'lib/puma/dsl.rb', line 338
     
     def clean_thread_locals(which=true)
    @@ -1312,7 +1336,7 @@ 

    #clear_binds!

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1338,11 +1362,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 424
    +
    # File 'lib/puma/dsl.rb', line 430
     
     def custom_logger(custom_logger)
    @@ -1364,11 +1388,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 430
    +
    # File 'lib/puma/dsl.rb', line 436
     
     def debug
    @@ -1383,7 +1407,7 @@ 

    #default_host

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1418,11 +1442,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 739
    +
    # File 'lib/puma/dsl.rb', line 785
     
     def directory(dir)
    @@ -1451,11 +1475,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 341
    +
    # File 'lib/puma/dsl.rb', line 347
     
     def drain_on_shutdown(which=true)
    @@ -1470,11 +1494,11 @@ 

    #early_hints(answer = true)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 451
    +
    # File 'lib/puma/dsl.rb', line 457
     
     def early_hints(answer=true)
    @@ -1505,11 +1529,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 352
    +
    # File 'lib/puma/dsl.rb', line 358
     
     def environment(environment)
    @@ -1545,11 +1569,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 816
    +
    # File 'lib/puma/dsl.rb', line 862
     
     def extra_runtime_dependencies(answer = [])
    @@ -1578,11 +1602,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 326
    +
    # File 'lib/puma/dsl.rb', line 320
     
     def first_data_timeout(seconds)
    @@ -1613,11 +1637,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 364
    +
    # File 'lib/puma/dsl.rb', line 370
     
     def force_shutdown_after(val=:forever)
    @@ -1671,11 +1695,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1023
    +
    # File 'lib/puma/dsl.rb', line 1070
     
     def fork_worker(after_requests=1000)
    @@ -1690,7 +1714,7 @@ 

    #get(key, default = nil)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1716,11 +1740,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1066
    +
    # File 'lib/puma/dsl.rb', line 1113
     
     def http_content_length_limit(limit)
    @@ -1731,11 +1755,44 @@ 

    +
    +

    + #idle_timeout(seconds) +

    +
    +
    + +

    If a new request is not received within this number of seconds, begin shutting down.

    + +
    +
    +
    +

    See Also:

    + + +
    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/dsl.rb', line 332
    +
    +
    +def idle_timeout(seconds)
    +  @options[:idle_timeout] = Integer(seconds)
    +end
    +
    +
    +
    +
    +

    #inject(&blk)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1774,11 +1831,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1049
    +
    # File 'lib/puma/dsl.rb', line 1096
     
     def io_selector_backend(backend)
    @@ -1800,7 +1857,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1820,11 +1877,11 @@

    #log_formatter(&block)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 468
    +
    # File 'lib/puma/dsl.rb', line 474
     
     def log_formatter(&block)
    @@ -1846,11 +1903,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 419
    +
    # File 'lib/puma/dsl.rb', line 425
     
     def log_requests(which=true)
    @@ -1881,11 +1938,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 760
    +
    # File 'lib/puma/dsl.rb', line 806
     
     def lowlevel_error_handler(obj=nil, &block)
    @@ -1909,11 +1966,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1030
    +
    # File 'lib/puma/dsl.rb', line 1077
     
     def max_fast_inline(num_of_requests)
    @@ -1928,11 +1985,11 @@ 

    #mutate_stdout_and_stderr_to_sync_on_write(enabled = true)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1053
    +
    # File 'lib/puma/dsl.rb', line 1100
     
     def mutate_stdout_and_stderr_to_sync_on_write(enabled=true)
    @@ -1963,11 +2020,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 694
    +
    # File 'lib/puma/dsl.rb', line 706
     
     def on_booted(&block)
    @@ -2018,11 +2075,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 716
    +
    # File 'lib/puma/dsl.rb', line 728
     
     def on_refork(key = nil, &block)
    @@ -2055,11 +2112,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 386
    +
    # File 'lib/puma/dsl.rb', line 392
     
     def on_restart(&block)
    @@ -2071,6 +2128,86 @@ 

    +
    +

    + #on_thread_exit(&block) +

    +
    +
    + +

    Code to run immediately before a thread exits. The worker does not accept new requests until this code finishes.

    + +

    This hook is useful for cleaning up thread local resources when a thread is trimmed.

    + +

    This can be called multiple times to add several hooks.

    + +
    +
    +
    +
    +

    Examples:

    +
    on_thread_exit do
    +  puts 'On thread exit...'
    +end
    +
    + +
    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/dsl.rb', line 761
    +
    +
    +def on_thread_exit(&block)
    +  @options[:before_thread_exit] ||= []
    +  @options[:before_thread_exit] << block
    +end
    +
    +
    +
    +
    + +
    +

    + #on_thread_start(&block) +

    +
    +
    + +

    Code to run immediately before a thread starts. The worker does not start new threads until this code finishes.

    + +

    This hook is useful for doing something when a thread starts.

    + +

    This can be called multiple times to add several hooks.

    + +
    +
    +
    +
    +

    Examples:

    +
    on_thread_start do
    +  puts 'On thread start...'
    +end
    +
    + +
    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/dsl.rb', line 744
    +
    +
    +def on_thread_start(&block)
    +  @options[:before_thread_start] ||= []
    +  @options[:before_thread_start] << block
    +end
    +
    +
    +
    +
    +

    #on_worker_boot(key = nil, &block) @@ -2101,11 +2238,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 630
    +
    # File 'lib/puma/dsl.rb', line 642
     
     def on_worker_boot(key = nil, &block)
    @@ -2148,11 +2285,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 664
    +
    # File 'lib/puma/dsl.rb', line 676
     
     def on_worker_fork(&block)
    @@ -2195,11 +2332,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 648
    +
    # File 'lib/puma/dsl.rb', line 660
     
     def on_worker_shutdown(key = nil, &block)
    @@ -2227,11 +2364,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 729
    +
    # File 'lib/puma/dsl.rb', line 775
     
     def out_of_band(&block)
    @@ -2260,11 +2397,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 320
    +
    # File 'lib/puma/dsl.rb', line 326
     
     def persistent_timeout(seconds)
    @@ -2293,11 +2430,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 405
    +
    # File 'lib/puma/dsl.rb', line 411
     
     def pidfile(path)
    @@ -2319,7 +2456,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -2352,7 +2489,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -2394,11 +2531,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 749
    +
    # File 'lib/puma/dsl.rb', line 795
     
     def preload_app!(answer=true)
    @@ -2413,11 +2550,11 @@ 

    #process_hook(options_key, key, block, meth) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1122
    +
    # File 'lib/puma/dsl.rb', line 1169
     
     def process_hook(options_key, key, block, meth)
    @@ -2472,11 +2609,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 783
    +
    # File 'lib/puma/dsl.rb', line 829
     
     def prune_bundler(answer=true)
    @@ -2509,11 +2646,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 930
    +
    # File 'lib/puma/dsl.rb', line 977
     
     def queue_requests(answer=true)
    @@ -2542,11 +2679,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 413
    +
    # File 'lib/puma/dsl.rb', line 419
     
     def quiet(which=true)
    @@ -2568,11 +2705,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 447
    +
    # File 'lib/puma/dsl.rb', line 453
     
     def rack_url_scheme(scheme=nil)
    @@ -2603,11 +2740,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 440
    +
    # File 'lib/puma/dsl.rb', line 446
     
     def rackup(path)
    @@ -2643,11 +2780,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 799
    +
    # File 'lib/puma/dsl.rb', line 845
     
     def raise_exception_on_sigterm(answer=true)
    @@ -2676,11 +2813,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 397
    +
    # File 'lib/puma/dsl.rb', line 403
     
     def restart_command(cmd)
    @@ -2695,7 +2832,7 @@ 

    #set_default_host(host)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -2734,11 +2871,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 981
    +
    # File 'lib/puma/dsl.rb', line 1028
     
     def set_remote_address(val=:socket)
    @@ -2785,11 +2922,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 938
    +
    # File 'lib/puma/dsl.rb', line 985
     
     def shutdown_debug(val=true)
    @@ -2811,11 +2948,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 595
    +
    # File 'lib/puma/dsl.rb', line 607
     
     def silence_fork_callback_warning
    @@ -2851,11 +2988,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 590
    +
    # File 'lib/puma/dsl.rb', line 602
     
     def silence_single_worker_warning
    @@ -2883,6 +3020,10 @@ 

    When using the options hash parameter, the reuse: value is either true, which sets reuse ‘on’ with default values, or a hash, with :size and/or :timeout keys, each with integer values.

    +

    The cert: options hash parameter can be the path to a certificate file including all intermediate certificates in PEM format.

    + +

    The cert_pem: options hash parameter can be String containing the cerificate and all intermediate certificates in PEM format.

    +

    @@ -2920,11 +3061,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 540
    +
    # File 'lib/puma/dsl.rb', line 552
     
     def ssl_bind(host, port, opts = {})
    @@ -2954,11 +3095,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 550
    +
    # File 'lib/puma/dsl.rb', line 562
     
     def state_path(path)
    @@ -2995,11 +3136,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 560
    +
    # File 'lib/puma/dsl.rb', line 572
     
     def state_permission(permission)
    @@ -3029,11 +3170,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 462
    +
    # File 'lib/puma/dsl.rb', line 468
     
     def stdout_redirect(stdout=nil, stderr=nil, append=false)
    @@ -3089,11 +3230,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1091
    +
    # File 'lib/puma/dsl.rb', line 1138
     
     def supported_http_methods(methods)
    @@ -3132,11 +3273,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 829
    +
    # File 'lib/puma/dsl.rb', line 875
     
     def tag(string)
    @@ -3170,11 +3311,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 484
    +
    # File 'lib/puma/dsl.rb', line 490
     
     def threads(min, max)
    @@ -3225,11 +3366,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 952
    +
    # File 'lib/puma/dsl.rb', line 999
     
     def wait_for_less_busy_worker(val=0.005)
    @@ -3244,11 +3385,11 @@ 

    #warn_if_in_single_mode(hook_name) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 1133
    +
    # File 'lib/puma/dsl.rb', line 1180
     
     def warn_if_in_single_mode(hook_name)
    @@ -3300,11 +3441,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 879
    +
    # File 'lib/puma/dsl.rb', line 926
     
     def worker_boot_timeout(timeout)
    @@ -3347,11 +3488,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 842
    +
    # File 'lib/puma/dsl.rb', line 888
     
     def worker_check_interval(interval)
    @@ -3399,11 +3540,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 906
    +
    # File 'lib/puma/dsl.rb', line 953
     
     def worker_culling_strategy(strategy)
    @@ -3446,11 +3587,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 888
    +
    # File 'lib/puma/dsl.rb', line 935
     
     def worker_shutdown_timeout(timeout)
    @@ -3478,7 +3619,7 @@ 

    Verifies that all workers have checked in to the master process within the given timeout. If not the worker process will be restarted. This is not a request timeout, it is to protect against a hung or dead process. Setting this value will not protect against slow requests.

    -

    The minimum value is 6 seconds, the default value is 60 seconds.

    +

    This value must be greater than worker_check_interval. The default value is 60 seconds.

    @@ -3493,11 +3634,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 858
    +
    # File 'lib/puma/dsl.rb', line 905
     
     def worker_timeout(timeout)
    @@ -3543,11 +3684,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/dsl.rb', line 572
    +
    # File 'lib/puma/dsl.rb', line 584
     
     def workers(count)
    diff --git a/puma/Puma/ErrorLogger.html b/puma/Puma/ErrorLogger.html
    index e01e4f8..252335b 100644
    --- a/puma/Puma/ErrorLogger.html
    +++ b/puma/Puma/ErrorLogger.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::ErrorLogger — Puma-6.3.0
    +Class: Puma::ErrorLogger — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (E) » Puma » ErrorLogger ▲ @@ -87,7 +87,7 @@

    Class: Puma::ErrorLogger

    Defined in: - lib/puma/error_logger.rb + lib/puma/error_logger.rb @@ -119,12 +119,12 @@

    Constant Summary

  • LOG_QUEUE =
    - # File 'lib/puma/error_logger.rb', line 16
    Queue.new
    + # File 'lib/puma/error_logger.rb', line 16
    Queue.new
  • REQUEST_FORMAT =
    - # File 'lib/puma/error_logger.rb', line 14
    %{"%s %s%s" - (%s)}
    + # File 'lib/puma/error_logger.rb', line 14
    %{"%s %s%s" - (%s)}
  • Const - Included

    @@ -309,7 +309,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -331,7 +331,7 @@

    Class Method Details

    .stdio

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -351,7 +351,7 @@

    Instance Attribute Details

    #ioerr (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -383,7 +383,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -426,7 +426,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -445,7 +445,7 @@

    #internal_write(str) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -474,7 +474,7 @@

    #request_dump(req)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -494,7 +494,7 @@

    #request_headers(req)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -522,7 +522,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -541,7 +541,7 @@

    #request_title(req)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -567,7 +567,7 @@

    #title(options = {})

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Events.html b/puma/Puma/Events.html index d276644..c668a08 100644 --- a/puma/Puma/Events.html +++ b/puma/Puma/Events.html @@ -8,7 +8,7 @@ -Class: Puma::Events — Puma-6.3.0 +Class: Puma::Events — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (E) » Puma » Events ▲ @@ -77,7 +77,7 @@

    Class: Puma::Events

    Defined in: - lib/puma/events.rb + lib/puma/events.rb @@ -169,7 +169,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -196,7 +196,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -215,7 +215,7 @@

    #fire_on_booted!

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -234,7 +234,7 @@

    #fire_on_restart!

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -253,7 +253,7 @@

    #fire_on_stopped!

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -272,7 +272,7 @@

    #on_booted(&block)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -291,7 +291,7 @@

    #on_restart(&block)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -310,7 +310,7 @@

    #on_stopped(&block)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -336,7 +336,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/HttpParser.html b/puma/Puma/HttpParser.html index 3192743..2c26aef 100644 --- a/puma/Puma/HttpParser.html +++ b/puma/Puma/HttpParser.html @@ -8,7 +8,7 @@ -Class: Puma::HttpParser — Puma-6.3.0 +Class: Puma::HttpParser — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (H) » Puma » HttpParser ▲ @@ -77,7 +77,7 @@

    Class: Puma::HttpParser

    Defined in: - ext/puma_http11/puma_http11.c + ext/puma_http11/puma_http11.c @@ -178,7 +178,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -209,7 +209,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -238,7 +238,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -268,7 +268,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -300,7 +300,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -351,7 +351,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -381,7 +381,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -410,7 +410,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/HttpParserError.html b/puma/Puma/HttpParserError.html index c4b0178..06f5bd4 100644 --- a/puma/Puma/HttpParserError.html +++ b/puma/Puma/HttpParserError.html @@ -8,7 +8,7 @@ -Exception: Puma::HttpParserError — Puma-6.3.0 +Exception: Puma::HttpParserError — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (H) » Puma » HttpParserError ▲ @@ -104,7 +104,7 @@

    Exception: Puma::HttpParserError

    Defined in: - ext/puma_http11/puma_http11.c + ext/puma_http11/puma_http11.c diff --git a/puma/Puma/HttpParserError501.html b/puma/Puma/HttpParserError501.html index 17f6eea..1c16acd 100644 --- a/puma/Puma/HttpParserError501.html +++ b/puma/Puma/HttpParserError501.html @@ -8,7 +8,7 @@ -Exception: Puma::HttpParserError501 — Puma-6.3.0 +Exception: Puma::HttpParserError501 — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (H) » Puma » HttpParserError501 ▲ @@ -104,7 +104,7 @@

    Exception: Puma::HttpParserError501

    Defined in: - lib/puma/client.rb + lib/puma/client.rb diff --git a/puma/Puma/IOBuffer.html b/puma/Puma/IOBuffer.html index ef34556..7045f2e 100644 --- a/puma/Puma/IOBuffer.html +++ b/puma/Puma/IOBuffer.html @@ -8,7 +8,7 @@ -Class: Puma::IOBuffer — Puma-6.3.0 +Class: Puma::IOBuffer — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (I) » Puma » IOBuffer ▲ @@ -101,7 +101,7 @@

    Class: Puma::IOBuffer

    Defined in: - lib/puma/io_buffer.rb + lib/puma/io_buffer.rb @@ -181,7 +181,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -201,7 +201,7 @@

    Instance Attribute Details

    #empty?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -221,7 +221,7 @@

    Instance Method Details

    #append(*strs)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -245,7 +245,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -281,7 +281,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -305,7 +305,7 @@

    #reset Also known as: #clear

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -325,7 +325,7 @@

    #to_s

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/JRubyRestart.html b/puma/Puma/JRubyRestart.html index 09f2c6a..fe2fbbe 100644 --- a/puma/Puma/JRubyRestart.html +++ b/puma/Puma/JRubyRestart.html @@ -8,7 +8,7 @@ -Module: Puma::JRubyRestart — Puma-6.3.0 +Module: Puma::JRubyRestart — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (J) » Puma » JRubyRestart ▲ @@ -81,7 +81,7 @@

    Module: Puma::JRubyRestart

    Defined in: - lib/puma/jruby_restart.rb + lib/puma/jruby_restart.rb @@ -115,7 +115,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/JSONSerialization.html b/puma/Puma/JSONSerialization.html index bc9b9ba..31bb052 100644 --- a/puma/Puma/JSONSerialization.html +++ b/puma/Puma/JSONSerialization.html @@ -8,7 +8,7 @@ -Module: Puma::JSONSerialization — Puma-6.3.0 +Module: Puma::JSONSerialization — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (J) » Puma » JSONSerialization ▲ @@ -77,7 +77,7 @@

    Module: Puma::JSONSerialization

    Defined in: - lib/puma/json_serialization.rb + lib/puma/json_serialization.rb @@ -100,12 +100,12 @@

    Constant Summary

  • BACKSLASH =
    - # File 'lib/puma/json_serialization.rb', line 22
    /\\/
    + # File 'lib/puma/json_serialization.rb', line 22
    /\\/
  • CHAR_TO_ESCAPE =
    - # File 'lib/puma/json_serialization.rb', line 24
    Regexp.union QUOTE, BACKSLASH, CONTROL_CHAR_TO_ESCAPE
    + # File 'lib/puma/json_serialization.rb', line 24
    Regexp.union QUOTE, BACKSLASH, CONTROL_CHAR_TO_ESCAPE
  • CONTROL_CHAR_TO_ESCAPE = @@ -116,12 +116,12 @@

    Constant Summary

  • - # File 'lib/puma/json_serialization.rb', line 23
    /[\x00-\x1F]/
    + # File 'lib/puma/json_serialization.rb', line 23
    /[\x00-\x1F]/

  • QUOTE =
    - # File 'lib/puma/json_serialization.rb', line 21
    /"/
    + # File 'lib/puma/json_serialization.rb', line 21
    /"/
  • @@ -159,7 +159,7 @@

    Class Method Details

    .generate(value)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -181,7 +181,7 @@

    .serialize_object_key(output, value) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -205,7 +205,7 @@

    .serialize_string(output, value) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -235,7 +235,7 @@

    .serialize_value(output, value) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/JSONSerialization/SerializationError.html b/puma/Puma/JSONSerialization/SerializationError.html index 33e8651..ef4e88c 100644 --- a/puma/Puma/JSONSerialization/SerializationError.html +++ b/puma/Puma/JSONSerialization/SerializationError.html @@ -8,7 +8,7 @@ -Exception: Puma::JSONSerialization::SerializationError — Puma-6.3.0 +Exception: Puma::JSONSerialization::SerializationError — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » JSONSerialization » @@ -105,7 +105,7 @@

    Exception: Puma::JSONSerialization::SerializationError

    Defined in: - lib/puma/json_serialization.rb + lib/puma/json_serialization.rb diff --git a/puma/Puma/Launcher.html b/puma/Puma/Launcher.html index a930824..eb8c140 100644 --- a/puma/Puma/Launcher.html +++ b/puma/Puma/Launcher.html @@ -8,7 +8,7 @@ -Class: Puma::Launcher — Puma-6.3.0 +Class: Puma::Launcher — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (L) » Puma » Launcher ▲ @@ -83,7 +83,7 @@

    Class: Puma::Launcher

    Defined in: - lib/puma/launcher.rb,
    lib/puma/launcher/bundle_pruner.rb
    + lib/puma/launcher.rb,
    lib/puma/launcher/bundle_pruner.rb
    @@ -418,7 +418,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -504,7 +504,7 @@

    Instance Attribute Details

    #binder (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -521,7 +521,7 @@

    #clustered?Boolean (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -540,7 +540,7 @@

    #config (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -575,7 +575,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -594,7 +594,7 @@

    #environment (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -613,7 +613,7 @@

    #events (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -630,7 +630,7 @@

    #log_writer (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -647,7 +647,7 @@

    #options (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -664,7 +664,7 @@

    #prune_bundler?Boolean (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -683,7 +683,7 @@

    #restart_args (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -707,7 +707,7 @@

    #restart_dir (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -740,7 +740,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -766,7 +766,7 @@

    #title (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -788,7 +788,7 @@

    Instance Method Details

    #close_binder_listeners

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -819,7 +819,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -839,7 +839,7 @@

    #do_forceful_stop (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -859,7 +859,7 @@

    #do_graceful_stop (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -879,7 +879,7 @@

    #do_restart(previous_env) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -901,7 +901,7 @@

    #do_run_finished(previous_env) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -929,7 +929,7 @@

    #generate_restart_data (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -989,7 +989,7 @@

    #get_env (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1023,7 +1023,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1043,7 +1043,7 @@

    #log(str) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1062,7 +1062,7 @@

    #log_config (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1093,7 +1093,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1116,7 +1116,7 @@

    #prune_bundler! (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1143,7 +1143,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1168,7 +1168,7 @@

    #reload_worker_directory (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1194,7 +1194,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1214,7 +1214,7 @@

    #restart! (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1260,7 +1260,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1291,7 +1291,7 @@

    #set_process_title (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1310,7 +1310,7 @@

    #set_rack_environment (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1330,7 +1330,7 @@

    #setup_signals (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1417,7 +1417,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1443,7 +1443,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1477,7 +1477,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1504,7 +1504,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1536,7 +1536,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Launcher/BundlePruner.html b/puma/Puma/Launcher/BundlePruner.html index 10e5b58..b16f779 100644 --- a/puma/Puma/Launcher/BundlePruner.html +++ b/puma/Puma/Launcher/BundlePruner.html @@ -8,7 +8,7 @@ -Class: Puma::Launcher::BundlePruner — Puma-6.3.0 +Class: Puma::Launcher::BundlePruner — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (B) » Puma » Launcher » @@ -78,7 +78,7 @@

    Class: Puma::Launcher::BundlePruner

    Defined in: - lib/puma/launcher/bundle_pruner.rb + lib/puma/launcher/bundle_pruner.rb @@ -183,7 +183,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -205,7 +205,7 @@

    Instance Method Details

    #extra_runtime_deps_paths (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -232,7 +232,7 @@

    #log(str) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -251,7 +251,7 @@

    #paths_to_require_after_prune (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -270,7 +270,7 @@

    #prune

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -315,7 +315,7 @@

    #puma_require_paths (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -334,7 +334,7 @@

    #puma_wild_path (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -354,7 +354,7 @@

    #require_paths_for_gem(gem_spec) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -373,7 +373,7 @@

    #require_rubygems_min_version! (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -397,7 +397,7 @@

    #spec_for_gem(gem_name) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -416,7 +416,7 @@

    #with_unbundled_env (private)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/LogWriter.html b/puma/Puma/LogWriter.html index 5113568..7242c1e 100644 --- a/puma/Puma/LogWriter.html +++ b/puma/Puma/LogWriter.html @@ -8,7 +8,7 @@ -Class: Puma::LogWriter — Puma-6.3.0 +Class: Puma::LogWriter — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (L) » Puma » LogWriter ▲ @@ -84,7 +84,7 @@

    Class: Puma::LogWriter

    Defined in: - lib/puma/log_writer.rb + lib/puma/log_writer.rb @@ -105,12 +105,12 @@

    Constant Summary

  • DEFAULT =
    - # File 'lib/puma/log_writer.rb', line 44
    new(STDOUT, STDERR)
    + # File 'lib/puma/log_writer.rb', line 44
    new(STDOUT, STDERR)
  • LOG_QUEUE =
    - # File 'lib/puma/log_writer.rb', line 26
    Queue.new
    + # File 'lib/puma/log_writer.rb', line 26
    Queue.new
  • @@ -283,7 +283,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -309,7 +309,7 @@

    Class Method Details

    .null

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -329,7 +329,7 @@

    .stdio

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -355,7 +355,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -375,7 +375,7 @@

    Instance Attribute Details

    #custom_logger (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -392,7 +392,7 @@

    #debug?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -411,7 +411,7 @@

    #formatter (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -428,7 +428,7 @@

    #stderr (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -446,7 +446,7 @@

    #stdout (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -483,7 +483,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -502,7 +502,7 @@

    #debug(str) (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -539,7 +539,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -565,7 +565,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -585,7 +585,7 @@

    #format(str)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -604,7 +604,7 @@

    #internal_write(str) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -640,7 +640,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -670,7 +670,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -710,7 +710,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -739,7 +739,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -758,7 +758,7 @@

    #write(str)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/LogWriter/DefaultFormatter.html b/puma/Puma/LogWriter/DefaultFormatter.html index c0a8ee8..09035e0 100644 --- a/puma/Puma/LogWriter/DefaultFormatter.html +++ b/puma/Puma/LogWriter/DefaultFormatter.html @@ -8,7 +8,7 @@ -Class: Puma::LogWriter::DefaultFormatter — Puma-6.3.0 +Class: Puma::LogWriter::DefaultFormatter — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (D) » Puma » LogWriter » @@ -78,7 +78,7 @@

    Class: Puma::LogWriter::DefaultFormatter

    Defined in: - lib/puma/log_writer.rb + lib/puma/log_writer.rb @@ -98,7 +98,7 @@

    Instance Method Details

    #call(str)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/LogWriter/PidFormatter.html b/puma/Puma/LogWriter/PidFormatter.html index 08dcc64..b594a6f 100644 --- a/puma/Puma/LogWriter/PidFormatter.html +++ b/puma/Puma/LogWriter/PidFormatter.html @@ -8,7 +8,7 @@ -Class: Puma::LogWriter::PidFormatter — Puma-6.3.0 +Class: Puma::LogWriter::PidFormatter — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (P) » Puma » LogWriter » @@ -78,7 +78,7 @@

    Class: Puma::LogWriter::PidFormatter

    Defined in: - lib/puma/log_writer.rb + lib/puma/log_writer.rb @@ -98,7 +98,7 @@

    Instance Method Details

    #call(str)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/MiniSSL.html b/puma/Puma/MiniSSL.html index f9818c3..d7aff9b 100644 --- a/puma/Puma/MiniSSL.html +++ b/puma/Puma/MiniSSL.html @@ -8,7 +8,7 @@ -Module: Puma::MiniSSL — Puma-6.3.0 +Module: Puma::MiniSSL — Puma-6.4.0 @@ -50,7 +50,7 @@
    - # File 'lib/puma/minissl.rb', line 18
    IS_JRUBY ||
    +    # File 'lib/puma/minissl.rb', line 18    
    IS_JRUBY ||
             ((OPENSSL_VERSION[/ \d\.\d\.\d+/].split('.').map(&:to_i) <=> [1,1,1]) != -1 &&
     (OPENSSL_LIBRARY_VERSION[/ \d\.\d\.\d+/].split('.').map(&:to_i) <=> [1,1,1]) !=-1)
    @@ -129,17 +129,17 @@

    Constant Summary

    - # File 'ext/puma_http11/mini_ssl.c', line 709
    rb_str_new2(OpenSSL_version(OPENSSL_VERSION))
    + # File 'ext/puma_http11/mini_ssl.c', line 764
    rb_str_new2(OpenSSL_version(OPENSSL_VERSION))
  • OPENSSL_NO_SSL3 =
    - # File 'lib/puma/minissl.rb', line 199
    false
    + # File 'lib/puma/minissl.rb', line 199
    false
  • OPENSSL_NO_TLS1 =
    - # File 'lib/puma/minissl.rb', line 200
    false
    + # File 'lib/puma/minissl.rb', line 200
    false
  • OPENSSL_NO_TLS1_1 = @@ -150,7 +150,7 @@

    Constant Summary

  • - # File 'ext/puma_http11/mini_ssl.c', line 730
    Qtrue
    + # File 'ext/puma_http11/mini_ssl.c', line 785
    Qtrue
  • OPENSSL_VERSION = @@ -161,7 +161,7 @@

    Constant Summary

  • - # File 'ext/puma_http11/mini_ssl.c', line 705
    rb_str_new2(OPENSSL_VERSION_TEXT)
    + # File 'ext/puma_http11/mini_ssl.c', line 760
    rb_str_new2(OPENSSL_VERSION_TEXT)
  • VERIFICATION_FLAGS = @@ -172,7 +172,7 @@

    Constant Summary

  • - # File 'lib/puma/minissl.rb', line 388
    {
    +    # File 'lib/puma/minissl.rb', line 388    
    {
       "USE_CHECK_TIME"       => 0x2,
       "CRL_CHECK"            => 0x4,
       "CRL_CHECK_ALL"        => 0x8,
    @@ -199,17 +199,17 @@ 

    Constant Summary

  • VERIFY_FAIL_IF_NO_PEER_CERT =
    - # File 'lib/puma/minissl.rb', line 384
    2
    + # File 'lib/puma/minissl.rb', line 384
    2
  • VERIFY_NONE =
    - # File 'lib/puma/minissl.rb', line 382
    0
    + # File 'lib/puma/minissl.rb', line 382
    0
  • VERIFY_PEER =
    - # File 'lib/puma/minissl.rb', line 383
    1
    + # File 'lib/puma/minissl.rb', line 383
    1
  • @@ -229,11 +229,11 @@

    Class Method Details

    .check

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 674
    +
    # File 'ext/puma_http11/mini_ssl.c', line 729
     
     VALUE noop(VALUE self) {
    diff --git a/puma/Puma/MiniSSL/Context.html b/puma/Puma/MiniSSL/Context.html
    index 2ccd0e3..3f6aa24 100644
    --- a/puma/Puma/MiniSSL/Context.html
    +++ b/puma/Puma/MiniSSL/Context.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::MiniSSL::Context — Puma-6.3.0
    +Class: Puma::MiniSSL::Context — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » MiniSSL » @@ -78,7 +78,7 @@

    Class: Puma::MiniSSL::Context

    Defined in: - lib/puma/minissl.rb + lib/puma/minissl.rb @@ -389,7 +389,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -417,7 +417,7 @@

    Instance Attribute Details

    #ca (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -434,7 +434,7 @@

    #ca=(ca) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -454,7 +454,7 @@

    #cert (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -471,7 +471,7 @@

    #cert=(cert) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -491,7 +491,7 @@

    #cert_pem (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -522,7 +522,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -543,7 +543,7 @@

    #cipher_suites (rw) Also known as: #ssl_cipher_list

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -561,7 +561,7 @@

    #cipher_suites=(list) (rw) Also known as: #ssl_cipher_list=

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -588,7 +588,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -605,7 +605,7 @@

    #key=(key) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -625,7 +625,7 @@

    #key_password_command (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -642,7 +642,7 @@

    #key_password_command=(key_password_command) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -661,7 +661,7 @@

    #key_pem (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -692,7 +692,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -719,7 +719,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -736,7 +736,7 @@

    #keystore=(keystore) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -756,7 +756,7 @@

    #keystore_pass (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -773,7 +773,7 @@

    #keystore_type (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -804,7 +804,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -824,7 +824,7 @@

    #no_tlsv1 (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -857,7 +857,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -877,7 +877,7 @@

    #no_tlsv1_1 (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -910,7 +910,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -930,7 +930,7 @@

    #protocols (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -947,7 +947,7 @@

    #protocols=(list) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -967,7 +967,7 @@

    #reuse (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1002,7 +1002,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1037,7 +1037,7 @@

    #reuse_cache_size (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1054,7 +1054,7 @@

    #reuse_timeout (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1071,7 +1071,7 @@

    #ssl_cipher_filter (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1095,7 +1095,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1112,7 +1112,7 @@

    #truststore (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1129,7 +1129,7 @@

    #truststore=(truststore) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1153,7 +1153,7 @@

    #truststore_pass (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1170,7 +1170,7 @@

    #truststore_type (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1201,7 +1201,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1221,7 +1221,7 @@

    #verification_flags (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1238,7 +1238,7 @@

    #verify_mode (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1263,7 +1263,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1297,7 +1297,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1324,7 +1324,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/MiniSSL/ContextBuilder.html b/puma/Puma/MiniSSL/ContextBuilder.html index 3130361..1c427a8 100644 --- a/puma/Puma/MiniSSL/ContextBuilder.html +++ b/puma/Puma/MiniSSL/ContextBuilder.html @@ -8,7 +8,7 @@ -Class: Puma::MiniSSL::ContextBuilder — Puma-6.3.0 +Class: Puma::MiniSSL::ContextBuilder — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (C) » Puma » MiniSSL » @@ -78,7 +78,7 @@

    Class: Puma::MiniSSL::ContextBuilder

    Defined in: - lib/puma/minissl/context_builder.rb + lib/puma/minissl/context_builder.rb @@ -139,7 +139,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -160,7 +160,7 @@

    Instance Attribute Details

    #log_writer (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -177,7 +177,7 @@

    #params (readonly, private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -195,7 +195,7 @@

    Instance Method Details

    #context

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/MiniSSL/Engine.html b/puma/Puma/MiniSSL/Engine.html index 55575a1..3a12aff 100644 --- a/puma/Puma/MiniSSL/Engine.html +++ b/puma/Puma/MiniSSL/Engine.html @@ -8,7 +8,7 @@ -Class: Puma::MiniSSL::Engine — Puma-6.3.0 +Class: Puma::MiniSSL::Engine — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (E) » Puma » MiniSSL » @@ -78,7 +78,7 @@

    Class: Puma::MiniSSL::Engine

    Defined in: - ext/puma_http11/mini_ssl.c + ext/puma_http11/mini_ssl.c @@ -156,11 +156,11 @@

    Class Method Details

    .client

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 455
    +
    # File 'ext/puma_http11/mini_ssl.c', line 510
     
     VALUE engine_init_client(VALUE klass) {
    @@ -189,11 +189,11 @@ 

    .server(sslctx)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 437
    +
    # File 'ext/puma_http11/mini_ssl.c', line 492
     
     VALUE engine_init_server(VALUE self, VALUE sslctx) {
    @@ -223,11 +223,11 @@ 

    Instance Attribute Details

    #init?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 613
    +
    # File 'ext/puma_http11/mini_ssl.c', line 668
     
     VALUE engine_init(VALUE self) {
    @@ -247,11 +247,11 @@ 

    Instance Method Details

    #extract

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 574
    +
    # File 'ext/puma_http11/mini_ssl.c', line 629
     
     VALUE engine_extract(VALUE self) {
    @@ -285,11 +285,11 @@ 

    #inject(str)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 473
    +
    # File 'ext/puma_http11/mini_ssl.c', line 528
     
     VALUE engine_inject(VALUE self, VALUE str) {
    @@ -317,11 +317,11 @@ 

    #peercert

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 621
    +
    # File 'ext/puma_http11/mini_ssl.c', line 676
     
     VALUE engine_peercert(VALUE self) {
    @@ -375,11 +375,11 @@ 

    #read

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 524
    +
    # File 'ext/puma_http11/mini_ssl.c', line 579
     
     VALUE engine_read(VALUE self) {
    @@ -418,11 +418,11 @@ 

    #shutdown

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 597
    +
    # File 'ext/puma_http11/mini_ssl.c', line 652
     
     VALUE engine_shutdown(VALUE self) {
    @@ -469,11 +469,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 667
    +
    # File 'ext/puma_http11/mini_ssl.c', line 722
     
     static VALUE
    @@ -491,11 +491,11 @@ 

    #write(str)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 552
    +
    # File 'ext/puma_http11/mini_ssl.c', line 607
     
     VALUE engine_write(VALUE self, VALUE str) {
    diff --git a/puma/Puma/MiniSSL/SSLContext.html b/puma/Puma/MiniSSL/SSLContext.html
    index b96f8a9..c7c6a49 100644
    --- a/puma/Puma/MiniSSL/SSLContext.html
    +++ b/puma/Puma/MiniSSL/SSLContext.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::MiniSSL::SSLContext — Puma-6.3.0
    +Class: Puma::MiniSSL::SSLContext — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » MiniSSL » @@ -78,7 +78,7 @@

    Class: Puma::MiniSSL::SSLContext

    Defined in: - ext/puma_http11/mini_ssl.c + ext/puma_http11/mini_ssl.c @@ -100,11 +100,11 @@

    Constructor Details

    .new(mini_ssl_ctx)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'ext/puma_http11/mini_ssl.c', line 222
    +
    # File 'ext/puma_http11/mini_ssl.c', line 228
     
     VALUE
    @@ -114,7 +114,7 @@ 

    VALUE key, cert, ca, verify_mode, ssl_cipher_filter, no_tlsv1, no_tlsv1_1, verification_flags, session_id_bytes, cert_pem, key_pem, key_password_command, key_password; BIO *bio; - X509 *x509; + X509 *x509 = NULL; EVP_PKEY *pkey; pem_password_cb *password_cb = NULL; const char *password = NULL; @@ -186,16 +186,65 @@

    } if (!NIL_P(cert_pem)) { + X509 *ca = NULL; + unsigned long err; + bio = BIO_new(BIO_s_mem()); BIO_puts(bio, RSTRING_PTR(cert_pem)); + + /** + * Much of this pulled as a simplified version of the `use_certificate_chain_file` method + * from openssl's `ssl_rsa.c` file. + */ + + /* first read the cert as the first item in the pem file */ x509 = PEM_read_bio_X509(bio, NULL, NULL, NULL); + if (NULL == x509) { + BIO_free_all(bio); + raise_param_error("PEM_read_bio_X509", "cert_pem"); + } - if (SSL_CTX_use_certificate(ctx, x509) != 1) { - BIO_free(bio); - raise_file_error("SSL_CTX_use_certificate", RSTRING_PTR(cert_pem)); + /* Add the cert to the context */ + /* 1 is success - otherwise check the error codes */ + if (1 != SSL_CTX_use_certificate(ctx, x509)) { + BIO_free_all(bio); + raise_param_error("SSL_CTX_use_certificate", "cert_pem"); + } + + X509_free(x509); /* no longer need our reference */ + + /* Now lets load up the rest of the certificate chain */ + /* 1 is success 0 is error */ + if (0 == SSL_CTX_clear_chain_certs(ctx)) { + BIO_free_all(bio); + raise_param_error("SSL_CTX_clear_chain_certs","cert_pem"); + } + + while (1) { + ca = PEM_read_bio_X509(bio, NULL, NULL, NULL); + + if (NULL == ca) { + break; + } + + if (0 == SSL_CTX_add0_chain_cert(ctx, ca)) { + BIO_free_all(bio); + raise_param_error("SSL_CTX_add0_chain_cert","cert_pem"); + } + /* don't free ca - its now owned by the context */ + } + + /* ca is NULL - so its either the end of the file or an error */ + err = ERR_peek_last_error(); + + /* If its the end of the file - then we are done, in any case free the bio */ + BIO_free_all(bio); + + if ((ERR_GET_LIB(err) == ERR_LIB_PEM) && (ERR_GET_REASON(err) == PEM_R_NO_START_LINE)) { + ERR_clear_error(); + } else { + raise_param_error("PEM_read_bio_X509","cert_pem"); } - X509_free(x509); - BIO_free(bio); } if (!NIL_P(key_pem)) { diff --git a/puma/Puma/MiniSSL/SSLError.html b/puma/Puma/MiniSSL/SSLError.html index 85836e3..7524c67 100644 --- a/puma/Puma/MiniSSL/SSLError.html +++ b/puma/Puma/MiniSSL/SSLError.html @@ -8,7 +8,7 @@ -Exception: Puma::MiniSSL::SSLError — Puma-6.3.0 +Exception: Puma::MiniSSL::SSLError — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » MiniSSL » @@ -105,7 +105,7 @@

    Exception: Puma::MiniSSL::SSLError

    Defined in: - lib/puma.rb,
    ext/puma_http11/mini_ssl.c
    + lib/puma.rb,
    ext/puma_http11/mini_ssl.c
    diff --git a/puma/Puma/MiniSSL/Server.html b/puma/Puma/MiniSSL/Server.html index 995115f..f5c05c9 100644 --- a/puma/Puma/MiniSSL/Server.html +++ b/puma/Puma/MiniSSL/Server.html @@ -8,7 +8,7 @@ -Class: Puma::MiniSSL::Server — Puma-6.3.0 +Class: Puma::MiniSSL::Server — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » MiniSSL » @@ -78,7 +78,7 @@

    Class: Puma::MiniSSL::Server

    Defined in: - lib/puma/minissl.rb + lib/puma/minissl.rb @@ -153,7 +153,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -191,7 +191,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -210,7 +210,7 @@

    #closed?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -229,7 +229,7 @@

    #to_io (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -249,7 +249,7 @@

    Instance Method Details

    #accept

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -271,7 +271,7 @@

    #accept_nonblock

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -293,7 +293,7 @@

    #close

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/MiniSSL/Socket.html b/puma/Puma/MiniSSL/Socket.html index 4b26326..682937a 100644 --- a/puma/Puma/MiniSSL/Socket.html +++ b/puma/Puma/MiniSSL/Socket.html @@ -8,7 +8,7 @@ -Class: Puma::MiniSSL::Socket — Puma-6.3.0 +Class: Puma::MiniSSL::Socket — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » MiniSSL » @@ -78,7 +78,7 @@

    Class: Puma::MiniSSL::Socket

    Defined in: - lib/puma/minissl.rb + lib/puma/minissl.rb @@ -218,7 +218,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -259,7 +259,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -278,7 +278,7 @@

    #closed?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -297,7 +297,7 @@

    #peeraddr (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -316,7 +316,7 @@

    #peercert (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -360,7 +360,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -379,7 +379,7 @@

    #to_io (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -406,7 +406,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -423,7 +423,7 @@

    #close

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -453,7 +453,7 @@

    #engine_read_all

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -476,7 +476,7 @@

    #flush

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -495,7 +495,7 @@

    #read_nonblock(size, *_)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -545,7 +545,7 @@

    #readpartial(size)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -584,7 +584,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -602,7 +602,7 @@

    #write(data) Also known as: #syswrite, #<<

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -649,7 +649,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/NullIO.html b/puma/Puma/NullIO.html index d4bde81..1ee2a45 100644 --- a/puma/Puma/NullIO.html +++ b/puma/Puma/NullIO.html @@ -8,7 +8,7 @@ -Class: Puma::NullIO — Puma-6.3.0 +Class: Puma::NullIO — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (N) » Puma » NullIO ▲ @@ -77,7 +77,7 @@

    Class: Puma::NullIO

    Defined in: - lib/puma/null_io.rb + lib/puma/null_io.rb @@ -198,7 +198,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -217,7 +217,7 @@

    #eof?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -236,7 +236,7 @@

    #sync (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -255,7 +255,7 @@

    #sync=(v) (rw)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -274,7 +274,7 @@

    Instance Method Details

    #close

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -292,7 +292,7 @@

    #each

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -310,7 +310,7 @@

    #flush

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -329,7 +329,7 @@

    #gets

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -348,7 +348,7 @@

    #puts(*ary)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -373,7 +373,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -392,7 +392,7 @@

    #rewind

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -410,7 +410,7 @@

    #size

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -429,7 +429,7 @@

    #string

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -448,7 +448,7 @@

    #write(*ary)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Plugin.html b/puma/Puma/Plugin.html index 2944a04..ae2bef0 100644 --- a/puma/Puma/Plugin.html +++ b/puma/Puma/Plugin.html @@ -8,7 +8,7 @@ -Class: Puma::Plugin — Puma-6.3.0 +Class: Puma::Plugin — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (P) » Puma » Plugin ▲ @@ -77,7 +77,7 @@

    Class: Puma::Plugin

    Defined in: - lib/puma/plugin.rb + lib/puma/plugin.rb @@ -98,7 +98,7 @@

    Constant Summary

    - # File 'lib/puma/plugin.rb', line 81
    /
    +    # File 'lib/puma/plugin.rb', line 81    
    /
       \A       # start of string
       .+       # file path (one or more characters)
       (?=      # stop previous match when
    @@ -141,7 +141,7 @@ 

    Class Method Details

    .create(&blk)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -166,7 +166,7 @@

    .extract_name(ary)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -189,7 +189,7 @@

    Instance Method Details

    #in_background(&blk)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/PluginLoader.html b/puma/Puma/PluginLoader.html index 155906d..b6eebf1 100644 --- a/puma/Puma/PluginLoader.html +++ b/puma/Puma/PluginLoader.html @@ -8,7 +8,7 @@ -Class: Puma::PluginLoader — Puma-6.3.0 +Class: Puma::PluginLoader — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (P) » Puma » PluginLoader ▲ @@ -77,7 +77,7 @@

    Class: Puma::PluginLoader

    Defined in: - lib/puma/plugin.rb + lib/puma/plugin.rb @@ -123,7 +123,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -157,7 +157,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -182,7 +182,7 @@

    #fire_starts(launcher)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/PluginRegistry.html b/puma/Puma/PluginRegistry.html index 2331b0d..624b989 100644 --- a/puma/Puma/PluginRegistry.html +++ b/puma/Puma/PluginRegistry.html @@ -8,7 +8,7 @@ -Class: Puma::PluginRegistry — Puma-6.3.0 +Class: Puma::PluginRegistry — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (P) » Puma » PluginRegistry ▲ @@ -77,7 +77,7 @@

    Class: Puma::PluginRegistry

    Defined in: - lib/puma/plugin.rb + lib/puma/plugin.rb @@ -133,7 +133,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -154,7 +154,7 @@

    Instance Method Details

    #add_background(blk)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -187,7 +187,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -222,7 +222,7 @@

    #fire_background

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -246,7 +246,7 @@

    #register(name, cls)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Rack.html b/puma/Puma/Rack.html index af136b7..b256bf3 100644 --- a/puma/Puma/Rack.html +++ b/puma/Puma/Rack.html @@ -8,7 +8,7 @@ -Module: Puma::Rack — Puma-6.3.0 +Module: Puma::Rack — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (R) » Puma » Rack ▲ @@ -79,7 +79,7 @@

    Module: Puma::Rack

    Defined in: - lib/puma/rack/urlmap.rb,
    lib/puma/rack/builder.rb
    + lib/puma/rack/urlmap.rb,
    lib/puma/rack/builder.rb
    diff --git a/puma/Puma/Rack/Builder.html b/puma/Puma/Rack/Builder.html index 366e716..303e4d9 100644 --- a/puma/Puma/Rack/Builder.html +++ b/puma/Puma/Rack/Builder.html @@ -8,7 +8,7 @@ -Class: Puma::Rack::Builder — Puma-6.3.0 +Class: Puma::Rack::Builder — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (B) » Puma » Rack » @@ -78,7 +78,7 @@

    Class: Puma::Rack::Builder

    Defined in: - lib/puma/rack/builder.rb + lib/puma/rack/builder.rb @@ -212,7 +212,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -241,7 +241,7 @@

    Class Method Details

    .app(default_app = nil, &block)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -260,7 +260,7 @@

    .new_from_string(builder_script, file = "(rackup)")

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -280,7 +280,7 @@

    .parse_file(config, opts = Options.new)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -312,7 +312,7 @@

    Instance Method Details

    #call(env)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -331,7 +331,7 @@

    #generate_map(default_app, mapping) (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -378,7 +378,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -417,7 +417,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -436,7 +436,7 @@

    #to_app

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -482,7 +482,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -520,7 +520,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Rack/Options.html b/puma/Puma/Rack/Options.html index 1d0099f..dc2ed49 100644 --- a/puma/Puma/Rack/Options.html +++ b/puma/Puma/Rack/Options.html @@ -8,7 +8,7 @@ -Class: Puma::Rack::Options — Puma-6.3.0 +Class: Puma::Rack::Options — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (O) » Puma » Rack » @@ -78,7 +78,7 @@

    Class: Puma::Rack::Options

    Defined in: - lib/puma/rack/builder.rb + lib/puma/rack/builder.rb @@ -103,7 +103,7 @@

    Instance Method Details

    #handler_opts(options)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -141,7 +141,7 @@

    #parse!(args)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Rack/URLMap.html b/puma/Puma/Rack/URLMap.html index 2682610..16ef2ff 100644 --- a/puma/Puma/Rack/URLMap.html +++ b/puma/Puma/Rack/URLMap.html @@ -8,7 +8,7 @@ -Class: Puma::Rack::URLMap — Puma-6.3.0 +Class: Puma::Rack::URLMap — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (U) » Puma » Rack » @@ -78,7 +78,7 @@

    Class: Puma::Rack::URLMap

    Defined in: - lib/puma/rack/urlmap.rb + lib/puma/rack/urlmap.rb @@ -103,12 +103,12 @@

    Constant Summary

  • INFINITY =
    - # File 'lib/puma/rack/urlmap.rb', line 18
    1.0 / 0.0
    + # File 'lib/puma/rack/urlmap.rb', line 18
    1.0 / 0.0
  • NEGATIVE_INFINITY =
    - # File 'lib/puma/rack/urlmap.rb', line 17
    -1.0 / 0.0
    + # File 'lib/puma/rack/urlmap.rb', line 17
    -1.0 / 0.0
  • @@ -160,7 +160,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -180,7 +180,7 @@

    Instance Method Details

    #call(env)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -238,7 +238,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -265,7 +265,7 @@

    #remap(map)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -285,7 +285,7 @@

    end location = location.chomp('/') - match = Regexp.new("^#{Regexp.quote(location).gsub('/', '/+')}(.*)", nil, 'n') + match = Regexp.new("^#{Regexp.quote(location).gsub('/', '/+')}(.*)", Regexp::NOENCODING) [host, location, match, app] }.sort_by do |(host, location, _, _)| diff --git a/puma/Puma/RackHandler.html b/puma/Puma/RackHandler.html index 9f8860d..1220441 100644 --- a/puma/Puma/RackHandler.html +++ b/puma/Puma/RackHandler.html @@ -8,7 +8,7 @@ -Module: Puma::RackHandler — Puma-6.3.0 +Module: Puma::RackHandler — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (R) » Puma » RackHandler ▲ @@ -79,7 +79,7 @@

    Module: Puma::RackHandler

    Defined in: - lib/rack/handler/puma.rb + lib/rack/handler/puma.rb @@ -90,7 +90,7 @@

    Constant Summary

  • DEFAULT_OPTIONS =
    - # File 'lib/rack/handler/puma.rb', line 6
    {
    +    # File 'lib/rack/handler/puma.rb', line 6    
    {
       :Verbose => false,
       :Silent  => false
     }
    @@ -128,7 +128,7 @@

    Instance Method Details

    #config(app, options = {})

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -213,7 +213,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -245,7 +245,7 @@

    #set_host_port_to_config(host, port, config)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -282,7 +282,7 @@

    #valid_options

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Reactor.html b/puma/Puma/Reactor.html index f0cac5b..e7fe7a4 100644 --- a/puma/Puma/Reactor.html +++ b/puma/Puma/Reactor.html @@ -8,7 +8,7 @@ -Class: Puma::Reactor — Puma-6.3.0 +Class: Puma::Reactor — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (R) » Puma » Reactor ▲ @@ -77,7 +77,7 @@

    Class: Puma::Reactor

    Defined in: - lib/puma/reactor.rb + lib/puma/reactor.rb @@ -182,7 +182,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -218,7 +218,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -248,7 +248,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -277,7 +277,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -303,7 +303,7 @@

    #select_loop (private)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -364,7 +364,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -395,7 +395,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Request.html b/puma/Puma/Request.html index 1925e9f..b80de47 100644 --- a/puma/Puma/Request.html +++ b/puma/Puma/Request.html @@ -8,7 +8,7 @@ -Module: Puma::Request — Puma-6.3.0 +Module: Puma::Request — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (R) » Puma » Request ▲ @@ -91,7 +91,7 @@

    Module: Puma::Request

    Defined in: - lib/puma/request.rb + lib/puma/request.rb @@ -131,12 +131,12 @@

    Constant Summary

    - # File 'lib/puma/request.rb', line 20
    1_024 * 256
    + # File 'lib/puma/request.rb', line 20
    1_024 * 256

  • CUSTOM_STAT =
    - # File 'lib/puma/request.rb', line 32
    'CUSTOM'
    + # File 'lib/puma/request.rb', line 32
    'CUSTOM'
  • IO_BODY_MAX = @@ -147,7 +147,7 @@

    Constant Summary

  • - # File 'lib/puma/request.rb', line 24
    1_024 * 64
    + # File 'lib/puma/request.rb', line 24
    1_024 * 64
  • IO_BUFFER_LEN_MAX = @@ -158,12 +158,12 @@

    Constant Summary

  • - # File 'lib/puma/request.rb', line 28
    1_024 * 512
    + # File 'lib/puma/request.rb', line 28
    1_024 * 512
  • SOCKET_WRITE_ERR_MSG =
    - # File 'lib/puma/request.rb', line 30
    "Socket timeout writing data"
    + # File 'lib/puma/request.rb', line 30
    "Socket timeout writing data"
  • Const - Included

    @@ -374,7 +374,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -441,7 +441,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -573,7 +573,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -632,7 +632,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -678,7 +678,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -805,7 +805,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -839,7 +839,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -885,7 +885,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1027,7 +1027,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1178,7 +1178,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1247,7 +1247,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1351,7 +1351,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Runner.html b/puma/Puma/Runner.html index d95ae77..dd87985 100644 --- a/puma/Puma/Runner.html +++ b/puma/Puma/Runner.html @@ -8,7 +8,7 @@ -Class: Puma::Runner — Puma-6.3.0 +Class: Puma::Runner — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (R) » Puma » Runner ▲ @@ -86,7 +86,7 @@

    Class: Puma::Runner

    Defined in: - lib/puma/runner.rb + lib/puma/runner.rb @@ -259,7 +259,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -287,11 +287,11 @@

    Instance Attribute Details

    #app (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 168
    +
    # File 'lib/puma/runner.rb', line 172
     
     def app
    @@ -306,7 +306,7 @@ 

    #development?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -335,7 +335,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -352,11 +352,11 @@

    #redirected_io?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 120
    +
    # File 'lib/puma/runner.rb', line 124
     
     def redirected_io?
    @@ -371,11 +371,11 @@ 

    #ruby_engine (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 90
    +
    # File 'lib/puma/runner.rb', line 94
     
     def ruby_engine
    @@ -398,7 +398,7 @@ 

    #test?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -434,11 +434,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 85
    +
    # File 'lib/puma/runner.rb', line 89
     
     def close_control_listeners
    @@ -453,7 +453,7 @@ 

    #debug(str)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -479,11 +479,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 203
    +
    # File 'lib/puma/runner.rb', line 207
     
     def debug_loaded_extensions(str)
    @@ -500,11 +500,11 @@ 

    #ensure_output_directory_exists(path, io_name) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 179
    +
    # File 'lib/puma/runner.rb', line 183
     
     def ensure_output_directory_exists(path, io_name)
    @@ -521,7 +521,7 @@ 

    #error(str)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -540,11 +540,11 @@

    #load_and_bind

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 151
    +
    # File 'lib/puma/runner.rb', line 155
     
     def load_and_bind
    @@ -571,7 +571,7 @@ 

    #log(str)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -590,11 +590,11 @@

    #output_header(mode)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 102
    +
    # File 'lib/puma/runner.rb', line 106
     
     def output_header(mode)
    @@ -623,11 +623,11 @@ 

    #redirect_io

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 124
    +
    # File 'lib/puma/runner.rb', line 128
     
     def redirect_io
    @@ -665,9 +665,9 @@ 

    #start_control

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    # File 'lib/puma/runner.rb', line 61
    @@ -689,7 +689,11 @@ 

    control = Puma::Server.new app, nil, { min_threads: 0, max_threads: 1, queue_requests: false, log_writer: @log_writer } - control.binder.parse [str], nil, 'Starting control server' + begin + control.binder.parse [str], nil, 'Starting control server' + rescue Errno::EADDRINUSE, Errno::EACCES => e + raise e, "Error: Control server address '#{str}' is already in use. Original error: #{e.message}" + end control.run thread_name: 'ctl' @control = control @@ -703,11 +707,11 @@

    #start_server

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 172
    +
    # File 'lib/puma/runner.rb', line 176
     
     def start_server
    @@ -724,11 +728,11 @@ 

    #stats (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 189
    +
    # File 'lib/puma/runner.rb', line 193
     
     def stats
    @@ -768,7 +772,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -787,11 +791,11 @@

    #utc_iso8601(val) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/runner.rb', line 185
    +
    # File 'lib/puma/runner.rb', line 189
     
     def utc_iso8601(val)
    @@ -806,7 +810,7 @@ 

    #wakeup!

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/SdNotify.html b/puma/Puma/SdNotify.html index 933cd8a..d0dd3c2 100644 --- a/puma/Puma/SdNotify.html +++ b/puma/Puma/SdNotify.html @@ -8,7 +8,7 @@ -Module: Puma::SdNotify — Puma-6.3.0 +Module: Puma::SdNotify — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -261,7 +261,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -310,7 +310,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -329,7 +329,7 @@

    .fdstore(unset_env = false)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -363,7 +363,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -428,7 +428,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -460,7 +460,7 @@

    .ready(unset_env = false)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -479,7 +479,7 @@

    .reloading(unset_env = false)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -516,7 +516,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -535,7 +535,7 @@

    .stopping(unset_env = false)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -554,7 +554,7 @@

    .watchdog(unset_env = false) (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/SdNotify/NotifyError.html b/puma/Puma/SdNotify/NotifyError.html index 02abb19..e404802 100644 --- a/puma/Puma/SdNotify/NotifyError.html +++ b/puma/Puma/SdNotify/NotifyError.html @@ -8,7 +8,7 @@ -Exception: Puma::SdNotify::NotifyError — Puma-6.3.0 +Exception: Puma::SdNotify::NotifyError — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (N) » Puma » SdNotify » @@ -102,7 +102,7 @@

    Exception: Puma::SdNotify::NotifyError

    Defined in: - lib/puma/sd_notify.rb + lib/puma/sd_notify.rb diff --git a/puma/Puma/Server.html b/puma/Puma/Server.html index 644c0aa..dd14fd6 100644 --- a/puma/Puma/Server.html +++ b/puma/Puma/Server.html @@ -8,7 +8,7 @@ -Class: Puma::Server — Puma-6.3.0 +Class: Puma::Server — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » Server ▲ @@ -70,15 +70,6 @@

    Class: Puma::Server

    Super Chains via Extension / Inclusion / Inheritance - - -
    Class Chain:
    -
    - self, - Forwardable -
    - -
    Instance Chain:
    @@ -97,7 +88,7 @@

    Class: Puma::Server

    Defined in: - lib/puma/server.rb + lib/puma/server.rb @@ -141,17 +132,17 @@

    Constant Summary

    - # File 'lib/puma/server.rb', line 618
    [:backlog, :running, :pool_capacity, :max_threads, :requests_count].freeze
    + # File 'lib/puma/server.rb', line 625
    [:backlog, :running, :pool_capacity, :max_threads, :requests_count].freeze
  • THREAD_LOCAL_KEY =
    - # File 'lib/puma/server.rb', line 54
    :puma_server
    + # File 'lib/puma/server.rb', line 49
    :puma_server
  • UNPACK_TCP_STATE_FROM_TCP_INFO =
    - # File 'lib/puma/server.rb', line 185
    "C".freeze
    + # File 'lib/puma/server.rb', line 181
    "C".freeze
  • Const - Included

    @@ -317,6 +308,12 @@

    Instance Attribute Summary rw +
  • + + #connected_ports + + readonly +
  • #early_hints @@ -425,6 +422,21 @@

    Instance Attribute SummaryInstance Method Summary

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 144
    +
    # File 'lib/puma/server.rb', line 140
     
     def closed_socket_supported?
    @@ -741,11 +760,11 @@ 

    .current (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 132
    +
    # File 'lib/puma/server.rb', line 128
     
     def current
    @@ -779,11 +798,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 138
    +
    # File 'lib/puma/server.rb', line 134
     
     def tcp_cork_supported?
    @@ -799,11 +818,11 @@ 

    Instance Attribute Details

    #app (rw)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 48
    +
    # File 'lib/puma/server.rb', line 46
     
     attr_accessor :app
    @@ -829,11 +848,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 44
    +
    # File 'lib/puma/server.rb', line 42
     
     attr_reader :auto_trim_time, :early_hints, :first_data_timeout,
    @@ -848,11 +867,11 @@ 

    #backlog (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 210
    +
    # File 'lib/puma/server.rb', line 206
     
     def backlog
    @@ -867,11 +886,11 @@ 

    #binder (rw)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 49
    +
    # File 'lib/puma/server.rb', line 47
     
     attr_accessor :binder
    @@ -880,6 +899,25 @@ 

    +
    +

    + #connected_ports (readonly) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/server.rb', line 652
    +
    +
    +def connected_ports
    +  @binder.connected_ports
    +end
    +
    +
    +
    +
    +

    #early_hints (readonly) @@ -897,11 +935,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 44
    +
    # File 'lib/puma/server.rb', line 42
     
     attr_reader :auto_trim_time, :early_hints, :first_data_timeout,
    @@ -916,11 +954,11 @@ 

    #events (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 39
    +
    # File 'lib/puma/server.rb', line 37
     
     attr_reader :events
    @@ -946,11 +984,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 44
    +
    # File 'lib/puma/server.rb', line 42
     
     attr_reader :auto_trim_time, :early_hints, :first_data_timeout,
    @@ -978,11 +1016,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 44
    +
    # File 'lib/puma/server.rb', line 42
     
     attr_reader :auto_trim_time, :early_hints, :first_data_timeout,
    @@ -997,11 +1035,11 @@ 

    #log_writer (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 38
    +
    # File 'lib/puma/server.rb', line 36
     
     attr_reader :log_writer
    @@ -1021,11 +1059,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 40
    +
    # File 'lib/puma/server.rb', line 38
     
     attr_reader :min_threads, :max_threads  # for #stats
    @@ -1045,11 +1083,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 40
    +
    # File 'lib/puma/server.rb', line 38
     
     attr_reader :min_threads, :max_threads  # for #stats
    @@ -1075,11 +1113,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 44
    +
    # File 'lib/puma/server.rb', line 42
     
     attr_reader :auto_trim_time, :early_hints, :first_data_timeout,
    @@ -1103,11 +1141,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 228
    +
    # File 'lib/puma/server.rb', line 224
     
     def pool_capacity
    @@ -1135,11 +1173,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 44
    +
    # File 'lib/puma/server.rb', line 42
     
     attr_reader :auto_trim_time, :early_hints, :first_data_timeout,
    @@ -1170,11 +1208,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 41
    +
    # File 'lib/puma/server.rb', line 39
     
     attr_reader :requests_count             # @version 5.0.0
    @@ -1187,11 +1225,11 @@ 

    #running (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 215
    +
    # File 'lib/puma/server.rb', line 211
     
     def running
    @@ -1206,11 +1244,11 @@ 

    #shutting_down?Boolean (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 612
    +
    # File 'lib/puma/server.rb', line 619
     
     def shutting_down?
    @@ -1243,11 +1281,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 623
    +
    # File 'lib/puma/server.rb', line 630
     
     def stats
    @@ -1262,11 +1300,11 @@ 

    #thread (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 37
    +
    # File 'lib/puma/server.rb', line 35
     
     attr_reader :thread
    @@ -1276,15 +1314,73 @@ 

    Instance Method Details

    -
    +

    + #add_ssl_listener(host, port, ctx, optimize_for_latency = true, backlog = 1024) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/server.rb', line 642
    +
    +
    +def add_ssl_listener(host, port, ctx, optimize_for_latency = true,
    +                     backlog = 1024)
    +  @binder.add_ssl_listener host, port, ctx, optimize_for_latency, backlog
    +end
    +
    +
    +
    +
    + +
    +

    + #add_tcp_listener(host, port, optimize_for_latency = true, backlog = 1024) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/server.rb', line 638
    +
    +
    +def add_tcp_listener(host, port, optimize_for_latency = true, backlog = 1024)
    +  @binder.add_tcp_listener host, port, optimize_for_latency, backlog
    +end
    +
    +
    +
    +
    + +
    +

    + #add_unix_listener(path, umask = nil, mode = nil, backlog = 1024) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/server.rb', line 647
    +
    +
    +def add_unix_listener(path, umask = nil, mode = nil, backlog = 1024)
    +  @binder.add_unix_listener path, umask, mode, backlog
    +end
    +
    +
    +
    +
    + +
    +

    #begin_restart(sync = false)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 607
    +
    # File 'lib/puma/server.rb', line 614
     
     def begin_restart(sync=false)
    @@ -1298,7 +1394,7 @@ 

    - #client_error(e, client) + #client_error(e, client, requests = 1)

    @@ -1307,29 +1403,29 @@

    - [ GitHub ] + [ GitHub ]
    
       
    # File 'lib/puma/server.rb', line 507
     
    -def client_error(e, client)
    +def client_error(e, client, requests = 1)
       # Swallow, do not log
       return if [ConnectionError, EOFError].include?(e.class)
     
    -  lowlevel_error(e, client.env)
       case e
       when MiniSSL::SSLError
    +    lowlevel_error(e, client.env)
         @log_writer.ssl_error e, client.io
       when HttpParserError
    -    client.write_error(400)
    +    response_to_error(client, requests, e, 400)
         @log_writer.parse_error e, client
       when HttpParserError501
    -    client.write_error(501)
    +    response_to_error(client, requests, e, 501)
         @log_writer.parse_error e, client
       else
    -    client.write_error(500)
    +    response_to_error(client, requests, e, 500)
         @log_writer.unknown_error e, nil, "Read"
       end
     end
    @@ -1345,15 +1441,15 @@ 

    -

    See additional method definition at line 187.

    +

    See additional method definition at line 183.

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 204
    +
    # File 'lib/puma/server.rb', line 200
     
     def closed_socket?(socket)
    @@ -1386,15 +1482,15 @@ 

    6 == Socket::IPPROTO_TCP 3 == TCP_CORK 1/0 == turn on/off

    -

    See additional method definition at line 159.

    +

    See additional method definition at line 155.

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 177
    +
    # File 'lib/puma/server.rb', line 173
     
     def cork_socket(socket)
    @@ -1421,11 +1517,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 550
    +
    # File 'lib/puma/server.rb', line 557
     
     def graceful_shutdown
    @@ -1465,11 +1561,11 @@ 

    #halt(sync = false)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 602
    +
    # File 'lib/puma/server.rb', line 609
     
     def halt(sync=false)
    @@ -1488,7 +1584,7 @@ 

    This method is for internal use only.
    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1521,11 +1617,11 @@

    #handle_servers

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 312
    +
    # File 'lib/puma/server.rb', line 308
     
     def handle_servers
    @@ -1549,8 +1645,12 @@ 

    while @status == :run || (drain && shutting_down?) begin - ios = IO.select sockets, nil, nil, (shutting_down? ? 0 : nil) - break unless ios + ios = IO.select sockets, nil, nil, (shutting_down? ? 0 : @idle_timeout) + unless ios + @status = :stop unless shutting_down? + break + end + ios.first.each do |sock| if sock == check break if handle_check @@ -1612,11 +1712,11 @@

    #inherit_binder(bind)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 126
    +
    # File 'lib/puma/server.rb', line 122
     
     def inherit_binder(bind)
    @@ -1638,7 +1738,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1660,7 +1760,7 @@

    backtrace = e.backtrace.nil? ? '<no backtrace available>' : e.backtrace.join("\n") [status, {}, ["Puma caught this error: #{e.message} (#{e.class})\n#{backtrace}"]] else - [status, {}, ["An unhandled lowlevel error occurred. The application logs may have details.\n"]] + [status, {}, [""]] end end

    @@ -1672,11 +1772,11 @@

    #notify_safely(message) (private)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 579
    +
    # File 'lib/puma/server.rb', line 586
     
     def notify_safely(message)
    @@ -1714,7 +1814,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -1783,7 +1883,7 @@

    end true rescue StandardError => e - client_error(e, client) + client_error(e, client, requests) # The ensure tries to close client down requests > 0 ensure @@ -1827,11 +1927,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 296
    +
    # File 'lib/puma/server.rb', line 292
     
     def reactor_wakeup(client)
    @@ -1854,6 +1954,27 @@ 

    +
    +

    + #response_to_error(client, requests, err, status_code) (private) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/server.rb', line 548
    +
    +
    +def response_to_error(client, requests, err, status_code)
    +  status, headers, res_body = lowlevel_error(err, client.env, status_code)
    +  prepare_response(status, headers, res_body, requests, client)
    +  client.write_error(status_code)
    +end
    +
    +
    +
    +
    +

    #run(background = true, thread_name: 'srv') @@ -1867,11 +1988,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 238
    +
    # File 'lib/puma/server.rb', line 234
     
     def run(background=true, thread_name: 'srv')
    @@ -1922,11 +2043,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 597
    +
    # File 'lib/puma/server.rb', line 604
     
     def stop(sync=false)
    @@ -1945,15 +2066,15 @@ 

    -

    See additional method definition at line 168.

    +

    See additional method definition at line 164.

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/server.rb', line 180
    +
    # File 'lib/puma/server.rb', line 176
     
     def uncork_socket(socket)
    @@ -1980,7 +2101,7 @@ 

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Single.html b/puma/Puma/Single.html index 99b7325..2c59eef 100644 --- a/puma/Puma/Single.html +++ b/puma/Puma/Single.html @@ -8,7 +8,7 @@ -Class: Puma::Single — Puma-6.3.0 +Class: Puma::Single — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » Single ▲ @@ -101,7 +101,7 @@

    Class: Puma::Single

    Defined in: - lib/puma/single.rb + lib/puma/single.rb @@ -238,7 +238,7 @@

    Instance Attribute Details

    #stats (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -260,7 +260,7 @@

    Instance Method Details

    #halt

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -279,7 +279,7 @@

    #restart

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -298,7 +298,7 @@

    #run

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -341,7 +341,7 @@

    #stop

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -360,7 +360,7 @@

    #stop_blocked

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/StateFile.html b/puma/Puma/StateFile.html index a893185..78c35a2 100644 --- a/puma/Puma/StateFile.html +++ b/puma/Puma/StateFile.html @@ -8,7 +8,7 @@ -Class: Puma::StateFile — Puma-6.3.0 +Class: Puma::StateFile — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (S) » Puma » StateFile ▲ @@ -77,7 +77,7 @@

    Class: Puma::StateFile

    Defined in: - lib/puma/state_file.rb + lib/puma/state_file.rb @@ -102,7 +102,7 @@

    Constant Summary

  • ALLOWED_FIELDS =
    - # File 'lib/puma/state_file.rb', line 16
    %w!control_url control_auth_token pid running_from!
    + # File 'lib/puma/state_file.rb', line 16
    %w!control_url control_auth_token pid running_from!
  • @@ -148,7 +148,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -168,7 +168,7 @@

    Instance Method Details

    #load(path)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -199,7 +199,7 @@

    #save(path, permission = nil)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/ThreadPool.html b/puma/Puma/ThreadPool.html index b8e3040..1ca601c 100644 --- a/puma/Puma/ThreadPool.html +++ b/puma/Puma/ThreadPool.html @@ -8,7 +8,7 @@ -Class: Puma::ThreadPool — Puma-6.3.0 +Class: Puma::ThreadPool — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (T) » Puma » ThreadPool ▲ @@ -88,7 +88,7 @@

    Class: Puma::ThreadPool

    Defined in: - lib/puma/thread_pool.rb + lib/puma/thread_pool.rb @@ -121,7 +121,7 @@

    Constant Summary

    - # File 'lib/puma/thread_pool.rb', line 26
    5
    + # File 'lib/puma/thread_pool.rb', line 26
    5

  • @@ -261,6 +261,18 @@

    Instance Method Summary

    #with_mutex(&block) +
  • + + #trigger_before_thread_exit_hooks + + private +
  • +
  • + + #trigger_before_thread_start_hooks + + private +
  • #trigger_out_of_band_hook @@ -297,9 +309,9 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    # File 'lib/puma/thread_pool.rb', line 34
    @@ -324,6 +336,8 @@ 

    @block = block @out_of_band = options[:out_of_band] @clean_thread_locals = options[:clean_thread_locals] + @before_thread_start = options[:before_thread_start] + @before_thread_exit = options[:before_thread_exit] @reaping_time = options[:reaping_time] @auto_trim_time = options[:auto_trim_time] @@ -357,11 +371,11 @@

    Class Method Details

    .clean_thread_locals

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 80
    +
    # File 'lib/puma/thread_pool.rb', line 82
     
     def self.clean_thread_locals
    @@ -395,11 +409,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 99
    +
    # File 'lib/puma/thread_pool.rb', line 101
     
     def busy_threads
    @@ -414,11 +428,11 @@ 

    #pool_capacity (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 93
    +
    # File 'lib/puma/thread_pool.rb', line 95
     
     def pool_capacity
    @@ -433,11 +447,11 @@ 

    #spawned (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 78
    +
    # File 'lib/puma/thread_pool.rb', line 80
     
     attr_reader :spawned, :trim_requested, :waiting
    @@ -450,11 +464,11 @@ 

    #trim_requested (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 78
    +
    # File 'lib/puma/thread_pool.rb', line 80
     
     attr_reader :spawned, :trim_requested, :waiting
    @@ -467,11 +481,11 @@ 

    #waiting (readonly)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 78
    +
    # File 'lib/puma/thread_pool.rb', line 80
     
     attr_reader :spawned, :trim_requested, :waiting
    @@ -492,11 +506,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 189
    +
    # File 'lib/puma/thread_pool.rb', line 223
     
     def <<(work)
    @@ -523,11 +537,11 @@ 

    #auto_reap!(timeout = @reaping_time)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 331
    +
    # File 'lib/puma/thread_pool.rb', line 365
     
     def auto_reap!(timeout=@reaping_time)
    @@ -543,11 +557,11 @@ 

    #auto_trim!(timeout = @auto_trim_time)

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 326
    +
    # File 'lib/puma/thread_pool.rb', line 360
     
     def auto_trim!(timeout=@auto_trim_time)
    @@ -570,11 +584,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 88
    +
    # File 'lib/puma/thread_pool.rb', line 90
     
     def backlog
    @@ -596,11 +610,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 284
    +
    # File 'lib/puma/thread_pool.rb', line 318
     
     def reap
    @@ -633,11 +647,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 354
    +
    # File 'lib/puma/thread_pool.rb', line 388
     
     def shutdown(timeout=-1)
    @@ -704,16 +718,17 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 107
    +
    # File 'lib/puma/thread_pool.rb', line 109
     
     def spawn_thread
       @spawned += 1
     
    +  trigger_before_thread_start_hooks
       th = Thread.new(@spawned) do |spawned|
         Puma.set_thread_name '%s tp %03i' % [@name, spawned]
         todo  = @todo
    @@ -732,6 +747,7 @@ 

    @spawned -= 1 @workers.delete th not_full.signal + trigger_before_thread_exit_hooks Thread.exit end @@ -771,6 +787,62 @@

    +
    +

    + #trigger_before_thread_exit_hooks (private) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/thread_pool.rb', line 184
    +
    +
    +def trigger_before_thread_exit_hooks
    +  return unless @before_thread_exit&.any?
    +
    +  @before_thread_exit.each do |b|
    +    begin
    +      b.call
    +    rescue Exception => e
    +      STDERR.puts "WARNING before_thread_exit hook failed with exception (#{e.class}) #{e.message}"
    +    end
    +  end
    +  nil
    +end
    +
    +
    +
    +
    + +
    +

    + #trigger_before_thread_start_hooks (private) +

    + [ GitHub ] +
    +
    
    +  
    +
    # File 'lib/puma/thread_pool.rb', line 169
    +
    +
    +def trigger_before_thread_start_hooks
    +  return unless @before_thread_start&.any?
    +
    +  @before_thread_start.each do |b|
    +    begin
    +      b.call
    +    rescue Exception => e
    +      STDERR.puts "WARNING before_thread_start hook failed with exception (#{e.class}) #{e.message}"
    +    end
    +  end
    +  nil
    +end
    +
    +
    +
    +
    +

    #trigger_out_of_band_hook (private) @@ -791,11 +863,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 166
    +
    # File 'lib/puma/thread_pool.rb', line 200
     
     def trigger_out_of_band_hook
    @@ -826,11 +898,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 272
    +
    # File 'lib/puma/thread_pool.rb', line 306
     
     def trim(force=false)
    @@ -867,11 +939,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 248
    +
    # File 'lib/puma/thread_pool.rb', line 282
     
     def wait_for_less_busy_worker(delay_s)
    @@ -917,11 +989,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 231
    +
    # File 'lib/puma/thread_pool.rb', line 265
     
     def wait_until_not_full
    @@ -955,11 +1027,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 338
    +
    # File 'lib/puma/thread_pool.rb', line 372
     
     def with_force_shutdown
    @@ -997,11 +1069,11 @@ 

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 182
    +
    # File 'lib/puma/thread_pool.rb', line 216
     
     def with_mutex(&block)
    diff --git a/puma/Puma/ThreadPool/Automaton.html b/puma/Puma/ThreadPool/Automaton.html
    index 65d1341..97f8b57 100644
    --- a/puma/Puma/ThreadPool/Automaton.html
    +++ b/puma/Puma/ThreadPool/Automaton.html
    @@ -8,7 +8,7 @@
     
     
     
    -Class: Puma::ThreadPool::Automaton — Puma-6.3.0
    +Class: Puma::ThreadPool::Automaton — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (A) » Puma » ThreadPool » @@ -78,7 +78,7 @@

    Class: Puma::ThreadPool::Automaton

    Defined in: - lib/puma/thread_pool.rb + lib/puma/thread_pool.rb @@ -124,11 +124,11 @@

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 300
    +
    # File 'lib/puma/thread_pool.rb', line 334
     
     def initialize(pool, timeout, thread_name, message)
    @@ -148,11 +148,11 @@ 

    Instance Method Details

    #start!

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 308
    +
    # File 'lib/puma/thread_pool.rb', line 342
     
     def start!
    @@ -175,11 +175,11 @@ 

    #stop

    - [ GitHub ] + [ GitHub ]
    -
    
    +  
    
       
    -
    # File 'lib/puma/thread_pool.rb', line 320
    +
    # File 'lib/puma/thread_pool.rb', line 354
     
     def stop
    diff --git a/puma/Puma/ThreadPool/ForceShutdown.html b/puma/Puma/ThreadPool/ForceShutdown.html
    index 88687f3..350e8f2 100644
    --- a/puma/Puma/ThreadPool/ForceShutdown.html
    +++ b/puma/Puma/ThreadPool/ForceShutdown.html
    @@ -8,7 +8,7 @@
     
     
     
    -Exception: Puma::ThreadPool::ForceShutdown — Puma-6.3.0
    +Exception: Puma::ThreadPool::ForceShutdown — Puma-6.4.0
     
     
     
    @@ -50,7 +50,7 @@
       
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (F) » Puma » ThreadPool » @@ -102,7 +102,7 @@

    Exception: Puma::ThreadPool::ForceShutdown

    Defined in: - lib/puma/thread_pool.rb + lib/puma/thread_pool.rb diff --git a/puma/Puma/UnknownPlugin.html b/puma/Puma/UnknownPlugin.html index 6c1ba1c..2418b4c 100644 --- a/puma/Puma/UnknownPlugin.html +++ b/puma/Puma/UnknownPlugin.html @@ -8,7 +8,7 @@ -Exception: Puma::UnknownPlugin — Puma-6.3.0 +Exception: Puma::UnknownPlugin — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (U) » Puma » UnknownPlugin ▲ @@ -101,7 +101,7 @@

    Exception: Puma::UnknownPlugin

    Defined in: - lib/puma/plugin.rb + lib/puma/plugin.rb diff --git a/puma/Puma/UnsupportedBackend.html b/puma/Puma/UnsupportedBackend.html index 73ccdce..19fefde 100644 --- a/puma/Puma/UnsupportedBackend.html +++ b/puma/Puma/UnsupportedBackend.html @@ -8,7 +8,7 @@ -Exception: Puma::UnsupportedBackend — Puma-6.3.0 +Exception: Puma::UnsupportedBackend — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (U) » Puma » UnsupportedBackend ▲ @@ -104,7 +104,7 @@

    Exception: Puma::UnsupportedBackend

    Defined in: - lib/puma/reactor.rb + lib/puma/reactor.rb diff --git a/puma/Puma/UnsupportedOption.html b/puma/Puma/UnsupportedOption.html index 3bfb514..59fb423 100644 --- a/puma/Puma/UnsupportedOption.html +++ b/puma/Puma/UnsupportedOption.html @@ -8,7 +8,7 @@ -Exception: Puma::UnsupportedOption — Puma-6.3.0 +Exception: Puma::UnsupportedOption — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (U) » Puma » UnsupportedOption ▲ @@ -101,7 +101,7 @@

    Exception: Puma::UnsupportedOption

    Defined in: - lib/puma/const.rb + lib/puma/const.rb diff --git a/puma/Puma/UserFileDefaultOptions.html b/puma/Puma/UserFileDefaultOptions.html index 5f9299f..ef4d4c2 100644 --- a/puma/Puma/UserFileDefaultOptions.html +++ b/puma/Puma/UserFileDefaultOptions.html @@ -8,7 +8,7 @@ -Class: Puma::UserFileDefaultOptions — Puma-6.3.0 +Class: Puma::UserFileDefaultOptions — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (U) » Puma » UserFileDefaultOptions ▲ @@ -77,7 +77,7 @@

    Class: Puma::UserFileDefaultOptions

    Defined in: - lib/puma/configuration.rb + lib/puma/configuration.rb @@ -203,7 +203,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -225,7 +225,7 @@

    Instance Attribute Details

    #default_options (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -242,7 +242,7 @@

    #file_options (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -259,7 +259,7 @@

    #user_options (readonly)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -277,7 +277,7 @@

    Instance Method Details

    #[](key)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -296,7 +296,7 @@

    #[]=(key, value)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -315,7 +315,7 @@

    #all_of(key)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -346,7 +346,7 @@

    #fetch(key, default_value = nil)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -369,7 +369,7 @@

    #final_options

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -390,7 +390,7 @@

    #finalize_values

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Util.html b/puma/Puma/Util.html index a9290d4..d4dc168 100644 --- a/puma/Puma/Util.html +++ b/puma/Puma/Util.html @@ -8,7 +8,7 @@ -Module: Puma::Util — Puma-6.3.0 +Module: Puma::Util — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (U) » Puma » Util ▲ @@ -77,7 +77,7 @@

    Module: Puma::Util

    Defined in: - lib/puma/util.rb + lib/puma/util.rb @@ -88,7 +88,7 @@

    Constant Summary

  • DEFAULT_SEP =
    - # File 'lib/puma/util.rb', line 42
    /[&;] */n
    + # File 'lib/puma/util.rb', line 42
    /[&;] */n
  • @@ -139,7 +139,7 @@

    Class Method Details

    .escape(s, encoding = nil) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -165,7 +165,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -203,7 +203,7 @@

    .pipe (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -229,7 +229,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -248,7 +248,7 @@

    .unescape(s, encoding = nil) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Puma/Util/HeaderHash.html b/puma/Puma/Util/HeaderHash.html index 15d745a..f225916 100644 --- a/puma/Puma/Util/HeaderHash.html +++ b/puma/Puma/Util/HeaderHash.html @@ -8,7 +8,7 @@ -Class: Puma::Util::HeaderHash — Puma-6.3.0 +Class: Puma::Util::HeaderHash — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (H) » Puma » Util » @@ -102,7 +102,7 @@

    Class: Puma::Util::HeaderHash

    Defined in: - lib/puma/util.rb + lib/puma/util.rb @@ -237,7 +237,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -257,7 +257,7 @@

    Class Attribute Details

    .to_hash (readonly, mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -279,7 +279,7 @@

    Class Method Details

    .[](k) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -298,7 +298,7 @@

    .[]=(k, v) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -320,7 +320,7 @@

    .delete(k) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -342,7 +342,7 @@

    .each (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -370,7 +370,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -396,7 +396,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -415,7 +415,7 @@

    .initialize(hash = {}) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -443,7 +443,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -467,7 +467,7 @@

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -484,7 +484,7 @@

    .merge(other) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -504,7 +504,7 @@

    .merge!(other) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    @@ -524,7 +524,7 @@

    .replace(other) (mod_func)

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Rack.html b/puma/Rack.html index 828fd18..8b0d9d3 100644 --- a/puma/Rack.html +++ b/puma/Rack.html @@ -8,7 +8,7 @@ -Module: Rack — Puma-6.3.0 +Module: Rack — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -76,7 +76,7 @@

    Module: Rack

    Defined in: - lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    + lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    diff --git a/puma/Rack/Handler.html b/puma/Rack/Handler.html index 9509d8f..9b83584 100644 --- a/puma/Rack/Handler.html +++ b/puma/Rack/Handler.html @@ -8,7 +8,7 @@ -Module: Rack::Handler — Puma-6.3.0 +Module: Rack::Handler — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (H) » Rack » Handler ▲ @@ -77,7 +77,7 @@

    Module: Rack::Handler

    Defined in: - lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    + lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    @@ -98,7 +98,7 @@

    Class Method Details

    .default(options = {})

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Rack/Handler/Puma.html b/puma/Rack/Handler/Puma.html index f665d4d..d8aa71e 100644 --- a/puma/Rack/Handler/Puma.html +++ b/puma/Rack/Handler/Puma.html @@ -8,7 +8,7 @@ -Module: Rack::Handler::Puma — Puma-6.3.0 +Module: Rack::Handler::Puma — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (P) » Rack » Handler » @@ -82,7 +82,7 @@

    Module: Rack::Handler::Puma

    Defined in: - lib/rack/handler/puma.rb + lib/rack/handler/puma.rb diff --git a/puma/Rackup.html b/puma/Rackup.html index 19eaf24..939df49 100644 --- a/puma/Rackup.html +++ b/puma/Rackup.html @@ -8,7 +8,7 @@ -Module: Rackup — Puma-6.3.0 +Module: Rackup — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -76,7 +76,7 @@

    Module: Rackup

    Defined in: - lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    + lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    diff --git a/puma/Rackup/Handler.html b/puma/Rackup/Handler.html index 13d6c25..dcebbf5 100644 --- a/puma/Rackup/Handler.html +++ b/puma/Rackup/Handler.html @@ -8,7 +8,7 @@ -Module: Rackup::Handler — Puma-6.3.0 +Module: Rackup::Handler — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (H) » Rackup » Handler ▲ @@ -77,7 +77,7 @@

    Module: Rackup::Handler

    Defined in: - lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    + lib/puma/rack_default.rb,
    lib/rack/handler/puma.rb
    @@ -98,7 +98,7 @@

    Class Method Details

    .default(options = {})

    - [ GitHub ] + [ GitHub ]
    
       
    diff --git a/puma/Rackup/Handler/Puma.html b/puma/Rackup/Handler/Puma.html index 6ba388e..4b3ce91 100644 --- a/puma/Rackup/Handler/Puma.html +++ b/puma/Rackup/Handler/Puma.html @@ -8,7 +8,7 @@ -Module: Rackup::Handler::Puma — Puma-6.3.0 +Module: Rackup::Handler::Puma — Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 » Index (P) » Rackup » Handler » @@ -82,7 +82,7 @@

    Module: Rackup::Handler::Puma

    Defined in: - lib/rack/handler/puma.rb + lib/rack/handler/puma.rb diff --git a/puma/StandardError.html b/puma/StandardError.html index ea17949..c00ee49 100644 --- a/puma/StandardError.html +++ b/puma/StandardError.html @@ -8,7 +8,7 @@ -Exception: StandardError — Puma-6.3.0 +Exception: StandardError — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/_index.html b/puma/_index.html index 09da80a..62fa453 100644 --- a/puma/_index.html +++ b/puma/_index.html @@ -8,7 +8,7 @@ -Puma-6.3.0 +Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 »
    @@ -59,7 +59,7 @@ 123456789_123456789_123456789_123456789_123456789_
    -

    Puma-6.3.0

    +

    Puma-6.4.0

    File Listing

      diff --git a/puma/constant_list.html b/puma/constant_list.html index 3152e71..fdcbb1b 100644 --- a/puma/constant_list.html +++ b/puma/constant_list.html @@ -41,6 +41,7 @@
    • CHUNK_SIZEPuma::Const
    • CHUNK_SIZE_INVALIDPuma::Client
    • CHUNK_VALID_ENDINGPuma::Client
    • +
    • CHUNK_VALID_ENDING_SIZEPuma::Client
    • CHUNKEDPuma::Const
    • CLOSEPuma::Const
    • CLOSE_CHUNKEDPuma::Const
    • diff --git a/puma/file.5.0-Upgrade.html b/puma/file.5.0-Upgrade.html index e52a975..14d7b0f 100644 --- a/puma/file.5.0-Upgrade.html +++ b/puma/file.5.0-Upgrade.html @@ -8,7 +8,7 @@ -File: 5.0-Upgrade — Puma-6.3.0 +File: 5.0-Upgrade — Puma-6.4.0 @@ -50,7 +50,7 @@
      diff --git a/puma/file.6.0-Upgrade.html b/puma/file.6.0-Upgrade.html index 70df1f9..4e8aa75 100644 --- a/puma/file.6.0-Upgrade.html +++ b/puma/file.6.0-Upgrade.html @@ -8,7 +8,7 @@ -File: 6.0-Upgrade — Puma-6.3.0 +File: 6.0-Upgrade — Puma-6.4.0 @@ -50,7 +50,7 @@
      diff --git a/puma/file.CONTRIBUTING.html b/puma/file.CONTRIBUTING.html index 894db8c..093a47f 100644 --- a/puma/file.CONTRIBUTING.html +++ b/puma/file.CONTRIBUTING.html @@ -8,7 +8,7 @@ -File: CONTRIBUTING — Puma-6.3.0 +File: CONTRIBUTING — Puma-6.4.0 @@ -50,7 +50,7 @@
      diff --git a/puma/file.History.html b/puma/file.History.html index 9f508b3..4ff3bb5 100644 --- a/puma/file.History.html +++ b/puma/file.History.html @@ -8,7 +8,7 @@ -File: History — Puma-6.3.0 +File: History — Puma-6.4.0 @@ -50,7 +50,7 @@
      @@ -61,6 +61,43 @@ 123456789_123456789_123456789_123456789_123456789_
      +

      6.4.0 / 2023-09-21

      + +
        +
      • Features

        + +
          +
        • on_thread_exit hook (#2920)
        • +
        • on_thread_start_hook (#3195)
        • +
        • Shutdown on idle (#3209, #2580)
        • +
        • New error message when control server port taken (#3204)
        • +
      • +
      • Refactor

        + +
          +
        • Remove Forwardable dependency (#3191, #3190)
        • +
        • Update URLMap Regexp usage for Ruby v3.3 (#3165)
        • +
      • +
      • Bugfixes

        + +
          +
        • Bring the cert_pem: parameter into parity with the cert: parameter to ssl_bind. (#3174)
        • +
        • Fix using control server with IPv6 host (#3181)
        • +
        • control_cli.rb - add require_relative 'log_writer' (#3187)
        • +
        • Fix cases where fallback Rack response wasn't sent to the client (#3094)
        • +
      • +
      + +

      6.3.1 / 2023-08-18

      + +
        +
      • Security + +
          +
        • Address HTTP request smuggling vulnerabilities with zero-length Content Length header and trailer fields (GHSA-68xg-gqqm-vgj8)
        • +
      • +
      +

      6.3.0 / 2023-05-31

        @@ -78,7 +115,7 @@

        6.3.0 / 2023-05-31

      • Handle malformed request path (#3155, #3148)
      • Misc lib file fixes - trapping additional errors, CI helper (#3129)
      • Fixup req form data file upload with "r\n" line endings (#3137)
      • -
      • Restore rack 1.6 compatibility Restore rack 1.6 compatibility (#3156)
      • +
      • Restore rack 1.6 compatibility (#3156)
    • Refactor

      @@ -248,6 +285,26 @@

      6.0.0 / 2022-10-14

  • +

    5.6.7 / 2023-08-18

    + +
      +
    • Security + +
        +
      • Address HTTP request smuggling vulnerabilities with zero-length Content Length header and trailer fields (GHSA-68xg-gqqm-vgj8)
      • +
    • +
    + +

    5.6.6 / 2023-06-21

    + +
      +
    • Bugfix + +
        +
      • Prevent loading with rack 3 (#3166)
      • +
    • +
    +

    5.6.5 / 2022-08-23

      @@ -314,7 +371,7 @@

      5.6.0 / 2022-01-25

    • Remove yaml (psych) requirement in StateFile (#2784)
    • Allow culling of oldest workers, previously was only youngest (#2773, #2794)
    • Add worker_check_interval configuration option (#2759)
    • -
    • Always send lowlevel_error response to client (#2731, #2341)
    • +
    • Always send lowlevel_error response to client (#2731, #2341)
    • Support for cert_pem and key_pem with ssl_bind DSL (#2728)
  • Bugfixes

    diff --git a/puma/file.README.html b/puma/file.README.html index d60f9d6..b7321a4 100644 --- a/puma/file.README.html +++ b/puma/file.README.html @@ -8,7 +8,7 @@ -File: README — Puma-6.3.0 +File: README — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -67,7 +67,7 @@

    Puma: A Ruby Web Server Built For Parallelism

    -

    Actions +

    Actions Code Climate StackOverflow

    @@ -75,11 +75,18 @@

    Puma: A Ruby Web Server Built For Parallelism

    Built For Speed & Parallelism

    -

    Puma processes requests using a C-optimized Ragel extension (inherited from Mongrel) that provides fast, accurate HTTP 1.1 protocol parsing in a portable way. Puma then serves the request using a thread pool. Each request is served in a separate thread, so truly parallel Ruby implementations (JRuby, Rubinius) will use all available CPU cores.

    +

    Puma is a server for Rack-powered HTTP applications written in Ruby. It is:

    + +
      +
    • Multi-threaded. Each request is served in a separate thread. This helps you serve more requests per second with less memory use.
    • +
    • Multi-process. "Pre-forks" in cluster mode, using less memory per-process thanks to copy-on-write memory.
    • +
    • Standalone. With SSL support, zero-downtime rolling restarts and a built-in request bufferer, you can deploy Puma without any reverse proxy.
    • +
    • Battle-tested. Our HTTP parser is inherited from Mongrel and has over 15 years of production use. Puma is currently the most popular Ruby webserver, and is the default server for Ruby on Rails.
    • +

    Originally designed as a server for Rubinius, Puma also works well with Ruby (MRI) and JRuby.

    -

    On MRI, there is a Global VM Lock (GVL) that ensures only one thread can run Ruby code at a time. But if you're doing a lot of blocking IO (such as HTTP calls to external APIs like Twitter), Puma still improves MRI's throughput by allowing IO waiting to be done in parallel.

    +

    On MRI, there is a Global VM Lock (GVL) that ensures only one thread can run Ruby code at a time. But if you're doing a lot of blocking IO (such as HTTP calls to external APIs like Twitter), Puma still improves MRI's throughput by allowing IO waiting to be done in parallel. Truly parallel Ruby implementations (TruffleRuby, JRuby) don't have this limitation.

    Quick Start

    @@ -159,6 +166,8 @@

    Clustered mode

    Note that threads are still used in clustered mode, and the -t thread flag setting is per worker, so -w 2 -t 16:16 will spawn 32 threads in total, with 16 in each worker process.

    +

    For an in-depth discussion of the tradeoffs of thread and process count settings, [see our docs]#workers-per-pod-and-other-config-issues).

    +

    In clustered mode, Puma can "preload" your application. This loads all the application code prior to forking. Preloading reduces total memory usage of your application via an operating system feature called copy-on-write.

    If the WEB_CONCURRENCY environment variable is set to a value > 1 (and --prune-bundler has not been specified), preloading will be enabled by default. Otherwise, you can use the --preload flag from the command line:

    @@ -237,26 +246,28 @@

    Self-signed SSL certificates (via the localhost gem is loaded in a development environment:

    -
    # Add the gem to your Gemfile
    -group(:development) do
    +

    Add the gem to your Gemfile:

    + +
    group(:development) do
       gem 'localhost'
    -end
    +end
    -# And require it implicitly using bundler -require "bundler" -Bundler.require(:default, ENV["RACK_ENV"].to_sym) +

    And require it implicitly using bundler:

    -# Alternatively, you can require the gem in config.ru: -require './app' -require 'localhost' -run Sinatra::Application
    +
    require "bundler"
    +Bundler.require(:default, ENV["RACK_ENV"].to_sym)
    + +

    Alternatively, you can require the gem in your configuration file, either config/puma/development.rb, config/puma.rb, or set via the -C cli option:

    + +
    require 'localhost'
    +# configuration methods (from Puma::DSL) as needed

    Additionally, Puma must be listening to an SSL socket:

    -
    $ puma -b 'ssl://localhost:9292' config.ru
    +
    $ puma -b 'ssl://localhost:9292' -C config/use_local_host.rb
     
     # The following options allow you to reach Puma over HTTP as well:
    -$ puma -b ssl://localhost:9292 -b tcp://localhost:9393 config.ru
    +$ puma -b ssl://localhost:9292 -b tcp://localhost:9393 -C config/use_local_host.rb
     

    Controlling SSL Cipher Suites

    diff --git a/puma/file.SECURITY.html b/puma/file.SECURITY.html index a399594..ac4884d 100644 --- a/puma/file.SECURITY.html +++ b/puma/file.SECURITY.html @@ -8,7 +8,7 @@ -File: SECURITY — Puma-6.3.0 +File: SECURITY — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.architecture.html b/puma/file.architecture.html index e27fee1..b51074e 100644 --- a/puma/file.architecture.html +++ b/puma/file.architecture.html @@ -8,7 +8,7 @@ -File: Architecture — Puma-6.3.0 +File: Architecture — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.compile_options.html b/puma/file.compile_options.html index b9a6f43..8d1eee6 100644 --- a/puma/file.compile_options.html +++ b/puma/file.compile_options.html @@ -8,7 +8,7 @@ -File: Compile Options — Puma-6.3.0 +File: Compile Options — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.deployment.html b/puma/file.deployment.html index cd865d9..c178315 100644 --- a/puma/file.deployment.html +++ b/puma/file.deployment.html @@ -8,7 +8,7 @@ -File: Deployment engineering for Puma — Puma-6.3.0 +File: Deployment engineering for Puma — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.fork_worker.html b/puma/file.fork_worker.html index 53f69a2..74d8029 100644 --- a/puma/file.fork_worker.html +++ b/puma/file.fork_worker.html @@ -8,7 +8,7 @@ -File: Fork-Worker Cluster Mode [Experimental] — Puma-6.3.0 +File: Fork-Worker Cluster Mode [Experimental] — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.kubernetes.html b/puma/file.kubernetes.html index ffe2fc5..40906be 100644 --- a/puma/file.kubernetes.html +++ b/puma/file.kubernetes.html @@ -8,7 +8,7 @@ -File: Kubernetes — Puma-6.3.0 +File: Kubernetes — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -128,6 +128,19 @@

    Graceful shutdown and pod termination

    More discussions and links to relevant articles can be found in https://github.com/puma/puma/issues/2343.

    +

    Workers Per Pod, and Other Config Issues

    + +

    With containerization, you will have to make a decision about how "big" to make each pod. Should you run 2 pods with 50 workers each? 25 pods, each with 4 workers? 100 pods, with each Puma running in single mode? Each scenario represents the same total amount of capacity (100 Puma processes that can respond to requests), but there are tradeoffs to make.

    + +
      +
    • Worker counts should be somewhere between 4 and 32 in most cases. You want more than 4 in order to minimize time spent in request queueing for a free Puma worker, but probably less than ~32 because otherwise autoscaling is working in too large of an increment or they probably won't fit very well into your nodes.
    • +
    • Unless you have a very I/O-heavy application (50%+ time spent waiting on IO), use the default thread count (5 for MRI). Using higher numbers of threads with low I/O wait (<50%) will lead to additional request queueing time (latency!) and additional memory usage.
    • +
    • More processes per pod reduces memory usage per process, because of copy-on-write memory and because the cost of the single master process is "amortized" over more child processes.
    • +
    • Don't run less than 4 processes per pod if you can. Low numbers of processes per pod will lead to high request queueing, which means you will have to run more pods.
    • +
    • If multithreaded, allocate 1 CPU per worker. If single threaded, allocate 0.75 cpus per worker. Most web applications spend about 25% of their time in I/O - but when you're running multi-threaded, your Puma process will have higher CPU usage and should be able to fully saturate a CPU core.
    • +
    • Most Puma processes will use about ~512MB-1GB per worker, and about 1GB for the master process. However, you probably shouldn't bother with setting memory limits lower than around 2GB per process, because most places you are deploying will have 2GB of RAM per CPU. A sensible memory limit for a Puma configuration of 4 child workers might be something like 8 GB (1 GB for the master, 7GB for the 4 children).
    • +
    +

  • diff --git a/puma/file.nginx.html b/puma/file.nginx.html index baffe78..0cf448b 100644 --- a/puma/file.nginx.html +++ b/puma/file.nginx.html @@ -8,7 +8,7 @@ -File: Nginx configuration example file — Puma-6.3.0 +File: Nginx configuration example file — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.plugins.html b/puma/file.plugins.html index ada3f26..cb683b1 100644 --- a/puma/file.plugins.html +++ b/puma/file.plugins.html @@ -8,7 +8,7 @@ -File: Plugins — Puma-6.3.0 +File: Plugins — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.rails_dev_mode.html b/puma/file.rails_dev_mode.html index e84ee29..cb41c69 100644 --- a/puma/file.rails_dev_mode.html +++ b/puma/file.rails_dev_mode.html @@ -8,7 +8,7 @@ -File: Running Puma in Rails Development Mode — Puma-6.3.0 +File: Running Puma in Rails Development Mode — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.restart.html b/puma/file.restart.html index 0e04884..e2c3cb5 100644 --- a/puma/file.restart.html +++ b/puma/file.restart.html @@ -8,7 +8,7 @@ -File: Restart — Puma-6.3.0 +File: Restart — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.signals.html b/puma/file.signals.html index 45cc58d..a1b3381 100644 --- a/puma/file.signals.html +++ b/puma/file.signals.html @@ -8,7 +8,7 @@ -File: Signals — Puma-6.3.0 +File: Signals — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.stats.html b/puma/file.stats.html index e2486fa..b76739d 100644 --- a/puma/file.stats.html +++ b/puma/file.stats.html @@ -8,7 +8,7 @@ -File: Stats — Puma-6.3.0 +File: Stats — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.systemd.html b/puma/file.systemd.html index 0f128be..1f3523c 100644 --- a/puma/file.systemd.html +++ b/puma/file.systemd.html @@ -8,7 +8,7 @@ -File: systemd — Puma-6.3.0 +File: systemd — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.testing_benchmarks_local_files.html b/puma/file.testing_benchmarks_local_files.html index a9f175d..ad35c7c 100644 --- a/puma/file.testing_benchmarks_local_files.html +++ b/puma/file.testing_benchmarks_local_files.html @@ -8,7 +8,7 @@ -File: Testing - benchmark/local files — Puma-6.3.0 +File: Testing - benchmark/local files — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/file.testing_test_rackup_ci_files.html b/puma/file.testing_test_rackup_ci_files.html index 1c24736..b5de826 100644 --- a/puma/file.testing_test_rackup_ci_files.html +++ b/puma/file.testing_test_rackup_ci_files.html @@ -8,7 +8,7 @@ -File: Testing - test/rackup/ci-*.ru files — Puma-6.3.0 +File: Testing - test/rackup/ci-*.ru files — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/index.html b/puma/index.html index d60f9d6..b7321a4 100644 --- a/puma/index.html +++ b/puma/index.html @@ -8,7 +8,7 @@ -File: README — Puma-6.3.0 +File: README — Puma-6.4.0 @@ -50,7 +50,7 @@
    @@ -67,7 +67,7 @@

    Puma: A Ruby Web Server Built For Parallelism

    -

    Actions +

    Actions Code Climate StackOverflow

    @@ -75,11 +75,18 @@

    Puma: A Ruby Web Server Built For Parallelism

    Built For Speed & Parallelism

    -

    Puma processes requests using a C-optimized Ragel extension (inherited from Mongrel) that provides fast, accurate HTTP 1.1 protocol parsing in a portable way. Puma then serves the request using a thread pool. Each request is served in a separate thread, so truly parallel Ruby implementations (JRuby, Rubinius) will use all available CPU cores.

    +

    Puma is a server for Rack-powered HTTP applications written in Ruby. It is:

    + +
      +
    • Multi-threaded. Each request is served in a separate thread. This helps you serve more requests per second with less memory use.
    • +
    • Multi-process. "Pre-forks" in cluster mode, using less memory per-process thanks to copy-on-write memory.
    • +
    • Standalone. With SSL support, zero-downtime rolling restarts and a built-in request bufferer, you can deploy Puma without any reverse proxy.
    • +
    • Battle-tested. Our HTTP parser is inherited from Mongrel and has over 15 years of production use. Puma is currently the most popular Ruby webserver, and is the default server for Ruby on Rails.
    • +

    Originally designed as a server for Rubinius, Puma also works well with Ruby (MRI) and JRuby.

    -

    On MRI, there is a Global VM Lock (GVL) that ensures only one thread can run Ruby code at a time. But if you're doing a lot of blocking IO (such as HTTP calls to external APIs like Twitter), Puma still improves MRI's throughput by allowing IO waiting to be done in parallel.

    +

    On MRI, there is a Global VM Lock (GVL) that ensures only one thread can run Ruby code at a time. But if you're doing a lot of blocking IO (such as HTTP calls to external APIs like Twitter), Puma still improves MRI's throughput by allowing IO waiting to be done in parallel. Truly parallel Ruby implementations (TruffleRuby, JRuby) don't have this limitation.

    Quick Start

    @@ -159,6 +166,8 @@

    Clustered mode

    Note that threads are still used in clustered mode, and the -t thread flag setting is per worker, so -w 2 -t 16:16 will spawn 32 threads in total, with 16 in each worker process.

    +

    For an in-depth discussion of the tradeoffs of thread and process count settings, [see our docs]#workers-per-pod-and-other-config-issues).

    +

    In clustered mode, Puma can "preload" your application. This loads all the application code prior to forking. Preloading reduces total memory usage of your application via an operating system feature called copy-on-write.

    If the WEB_CONCURRENCY environment variable is set to a value > 1 (and --prune-bundler has not been specified), preloading will be enabled by default. Otherwise, you can use the --preload flag from the command line:

    @@ -237,26 +246,28 @@

    Self-signed SSL certificates (via the localhost gem is loaded in a development environment:

    -
    # Add the gem to your Gemfile
    -group(:development) do
    +

    Add the gem to your Gemfile:

    + +
    group(:development) do
       gem 'localhost'
    -end
    +end
    -# And require it implicitly using bundler -require "bundler" -Bundler.require(:default, ENV["RACK_ENV"].to_sym) +

    And require it implicitly using bundler:

    -# Alternatively, you can require the gem in config.ru: -require './app' -require 'localhost' -run Sinatra::Application
    +
    require "bundler"
    +Bundler.require(:default, ENV["RACK_ENV"].to_sym)
    + +

    Alternatively, you can require the gem in your configuration file, either config/puma/development.rb, config/puma.rb, or set via the -C cli option:

    + +
    require 'localhost'
    +# configuration methods (from Puma::DSL) as needed

    Additionally, Puma must be listening to an SSL socket:

    -
    $ puma -b 'ssl://localhost:9292' config.ru
    +
    $ puma -b 'ssl://localhost:9292' -C config/use_local_host.rb
     
     # The following options allow you to reach Puma over HTTP as well:
    -$ puma -b ssl://localhost:9292 -b tcp://localhost:9393 config.ru
    +$ puma -b ssl://localhost:9292 -b tcp://localhost:9393 -C config/use_local_host.rb
     

    Controlling SSL Cipher Suites

    diff --git a/puma/method_list.html b/puma/method_list.html index 8586906..f7832ce 100644 --- a/puma/method_list.html +++ b/puma/method_list.html @@ -48,8 +48,11 @@
  • #add_backgroundPuma::PluginRegistry
  • #add_pem_values_to_options_storePuma::DSL
  • #add_ssl_listenerPuma::Binder
  • +
  • #add_ssl_listenerPuma::Server
  • #add_tcp_listenerPuma::Binder
  • +
  • #add_tcp_listenerPuma::Server
  • #add_unix_listenerPuma::Binder
  • +
  • #add_unix_listenerPuma::Server
  • #addrPuma::MiniSSL::Server
  • #after_worker_bootPuma::DSL
  • #after_worker_forkPuma::DSL
  • @@ -119,6 +122,7 @@
  • #close_binder_listenersPuma::Launcher
  • #close_control_listenersPuma::Runner
  • #close_listenersPuma::Binder
  • +
  • #closed?Puma::Client
  • #closed?Puma::MiniSSL::Server
  • #closed?Puma::MiniSSL::Socket
  • #closed?Puma::NullIO
  • @@ -132,6 +136,7 @@
  • #configure_control_urlPuma::CLI
  • #connected_portsPuma::Binder
  • #connected_portsPuma::Launcher
  • +
  • #connected_portsPuma::Server
  • #connection_errorPuma::LogWriter
  • #contextPuma::MiniSSL::ContextBuilder
  • #cork_socketPuma::Server
  • @@ -247,6 +252,7 @@
  • #http_content_length_limit=Puma::Client
  • #http_content_length_limit_exceededPuma::Client
  • #hupPuma::Cluster::WorkerHandle
  • +
  • #idle_timeoutPuma::DSL
  • #illegal_header_key?Puma::Request
  • #illegal_header_value?Puma::Request
  • #in_backgroundPuma::Plugin
  • @@ -386,6 +392,8 @@
  • #on_restartPuma::DSL
  • #on_restartPuma::Events
  • #on_stoppedPuma::Events
  • +
  • #on_thread_exitPuma::DSL
  • +
  • #on_thread_startPuma::DSL
  • #on_worker_bootPuma::DSL
  • #on_worker_forkPuma::DSL
  • #on_worker_shutdownPuma::DSL
  • @@ -491,6 +499,7 @@
  • #resetPuma::Client
  • #resetPuma::HttpParser
  • #resetPuma::IOBuffer
  • +
  • #response_to_errorPuma::Server
  • #restartPuma::Cluster
  • #restartPuma::Launcher
  • #restartPuma::Single
  • @@ -628,6 +637,8 @@
  • #to_ioPuma::MiniSSL::Server
  • #to_ioPuma::MiniSSL::Socket
  • #to_sPuma::IOBuffer
  • +
  • #trigger_before_thread_exit_hooksPuma::ThreadPool
  • +
  • #trigger_before_thread_start_hooksPuma::ThreadPool
  • #trigger_out_of_band_hookPuma::ThreadPool
  • #trimPuma::ThreadPool
  • #trim_requestedPuma::ThreadPool
  • diff --git a/puma/top-level-namespace.html b/puma/top-level-namespace.html index fd9b5fc..afc1af6 100644 --- a/puma/top-level-namespace.html +++ b/puma/top-level-namespace.html @@ -8,7 +8,7 @@ -Top Level Namespace — Puma-6.3.0 +Top Level Namespace — Puma-6.4.0 @@ -50,7 +50,7 @@
    diff --git a/puma/y_index.html b/puma/y_index.html index 09da80a..62fa453 100644 --- a/puma/y_index.html +++ b/puma/y_index.html @@ -8,7 +8,7 @@ -Puma-6.3.0 +Puma-6.4.0 @@ -50,7 +50,7 @@
    Home » - Puma-6.3.0 » + Puma-6.4.0 »
    @@ -59,7 +59,7 @@ 123456789_123456789_123456789_123456789_123456789_
    -

    Puma-6.3.0

    +

    Puma-6.4.0

    File Listing