@@ -12,18 +12,18 @@ def self.create(app, port, host)
12
12
13
13
conf = Rack ::Handler ::Puma . config ( app , options )
14
14
conf . clamp
15
- events = ::Puma ::Events . stdio
15
+ logger = ( defined? ( ::Puma ::LogWriter ) ? :: Puma :: LogWriter : :: Puma :: Events ) . stdio
16
16
17
17
puma_ver = Gem ::Version . new ( ::Puma ::Const ::PUMA_VERSION )
18
18
require_relative "patches/puma_ssl" if ( Gem ::Version . new ( "4.0.0" ) ...Gem ::Version . new ( "4.1.0" ) ) . cover? puma_ver
19
19
20
- events . log "Starting Puma..."
21
- events . log "* Version #{ ::Puma ::Const ::PUMA_VERSION } , codename: #{ ::Puma ::Const ::CODE_NAME } "
22
- events . log "* Min threads: #{ conf . options [ :min_threads ] } , max threads: #{ conf . options [ :max_threads ] } "
20
+ logger . log "Starting Puma..."
21
+ logger . log "* Version #{ ::Puma ::Const ::PUMA_VERSION } , codename: #{ ::Puma ::Const ::CODE_NAME } "
22
+ logger . log "* Min threads: #{ conf . options [ :min_threads ] } , max threads: #{ conf . options [ :max_threads ] } "
23
23
24
- ::Puma ::Server . new ( conf . app , events , conf . options ) . tap do |s |
25
- s . binder . parse conf . options [ :binds ] , s . events
26
- s . min_threads , s . max_threads = conf . options [ :min_threads ] , conf . options [ :max_threads ]
24
+ ::Puma ::Server . new ( conf . app , defined? ( :: Puma :: LogWriter ) ? nil : logger , conf . options ) . tap do |s |
25
+ s . binder . parse conf . options [ :binds ] , s . respond_to? ( :log_writer ) ? s . log_writer : s . events
26
+ s . min_threads , s . max_threads = conf . options [ :min_threads ] , conf . options [ :max_threads ] if s . respond_to? ( :min_threads= )
27
27
end . run . join
28
28
end
29
29
end
0 commit comments