puma-simon 3.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (157) hide show
  1. checksums.yaml +7 -0
  2. data/.github/issue_template.md +20 -0
  3. data/.gitignore +18 -0
  4. data/.hoeignore +12 -0
  5. data/.travis.yml +29 -0
  6. data/DEPLOYMENT.md +91 -0
  7. data/Gemfile +12 -0
  8. data/History.md +1254 -0
  9. data/LICENSE +26 -0
  10. data/Manifest.txt +78 -0
  11. data/README.md +353 -0
  12. data/Rakefile +158 -0
  13. data/Release.md +9 -0
  14. data/bin/puma +10 -0
  15. data/bin/puma-wild +31 -0
  16. data/bin/pumactl +12 -0
  17. data/docs/nginx.md +80 -0
  18. data/docs/signals.md +43 -0
  19. data/docs/systemd.md +197 -0
  20. data/examples/CA/cacert.pem +23 -0
  21. data/examples/CA/newcerts/cert_1.pem +19 -0
  22. data/examples/CA/newcerts/cert_2.pem +19 -0
  23. data/examples/CA/private/cakeypair.pem +30 -0
  24. data/examples/CA/serial +1 -0
  25. data/examples/config.rb +200 -0
  26. data/examples/plugins/redis_stop_puma.rb +46 -0
  27. data/examples/puma/cert_puma.pem +19 -0
  28. data/examples/puma/client-certs/ca.crt +19 -0
  29. data/examples/puma/client-certs/ca.key +27 -0
  30. data/examples/puma/client-certs/client.crt +19 -0
  31. data/examples/puma/client-certs/client.key +27 -0
  32. data/examples/puma/client-certs/client_expired.crt +19 -0
  33. data/examples/puma/client-certs/client_expired.key +27 -0
  34. data/examples/puma/client-certs/client_unknown.crt +19 -0
  35. data/examples/puma/client-certs/client_unknown.key +27 -0
  36. data/examples/puma/client-certs/generate.rb +78 -0
  37. data/examples/puma/client-certs/keystore.jks +0 -0
  38. data/examples/puma/client-certs/server.crt +19 -0
  39. data/examples/puma/client-certs/server.key +27 -0
  40. data/examples/puma/client-certs/server.p12 +0 -0
  41. data/examples/puma/client-certs/unknown_ca.crt +19 -0
  42. data/examples/puma/client-certs/unknown_ca.key +27 -0
  43. data/examples/puma/csr_puma.pem +11 -0
  44. data/examples/puma/keystore.jks +0 -0
  45. data/examples/puma/puma_keypair.pem +15 -0
  46. data/examples/qc_config.rb +13 -0
  47. data/ext/puma_http11/PumaHttp11Service.java +17 -0
  48. data/ext/puma_http11/ext_help.h +15 -0
  49. data/ext/puma_http11/extconf.rb +15 -0
  50. data/ext/puma_http11/http11_parser.c +1069 -0
  51. data/ext/puma_http11/http11_parser.h +65 -0
  52. data/ext/puma_http11/http11_parser.java.rl +161 -0
  53. data/ext/puma_http11/http11_parser.rl +147 -0
  54. data/ext/puma_http11/http11_parser_common.rl +54 -0
  55. data/ext/puma_http11/io_buffer.c +155 -0
  56. data/ext/puma_http11/mini_ssl.c +457 -0
  57. data/ext/puma_http11/org/jruby/puma/Http11.java +234 -0
  58. data/ext/puma_http11/org/jruby/puma/Http11Parser.java +473 -0
  59. data/ext/puma_http11/org/jruby/puma/MiniSSL.java +339 -0
  60. data/ext/puma_http11/puma_http11.c +500 -0
  61. data/gemfiles/2.1-Gemfile +12 -0
  62. data/lib/puma.rb +15 -0
  63. data/lib/puma/accept_nonblock.rb +23 -0
  64. data/lib/puma/app/status.rb +66 -0
  65. data/lib/puma/binder.rb +402 -0
  66. data/lib/puma/cli.rb +220 -0
  67. data/lib/puma/client.rb +434 -0
  68. data/lib/puma/cluster.rb +510 -0
  69. data/lib/puma/commonlogger.rb +106 -0
  70. data/lib/puma/compat.rb +14 -0
  71. data/lib/puma/configuration.rb +364 -0
  72. data/lib/puma/const.rb +224 -0
  73. data/lib/puma/control_cli.rb +259 -0
  74. data/lib/puma/convenient.rb +23 -0
  75. data/lib/puma/daemon_ext.rb +31 -0
  76. data/lib/puma/delegation.rb +11 -0
  77. data/lib/puma/detect.rb +13 -0
  78. data/lib/puma/dsl.rb +486 -0
  79. data/lib/puma/events.rb +152 -0
  80. data/lib/puma/io_buffer.rb +7 -0
  81. data/lib/puma/java_io_buffer.rb +45 -0
  82. data/lib/puma/jruby_restart.rb +83 -0
  83. data/lib/puma/launcher.rb +410 -0
  84. data/lib/puma/minissl.rb +221 -0
  85. data/lib/puma/null_io.rb +42 -0
  86. data/lib/puma/plugin.rb +115 -0
  87. data/lib/puma/plugin/tmp_restart.rb +35 -0
  88. data/lib/puma/rack/backports/uri/common_193.rb +33 -0
  89. data/lib/puma/rack/builder.rb +298 -0
  90. data/lib/puma/rack/urlmap.rb +91 -0
  91. data/lib/puma/rack_default.rb +7 -0
  92. data/lib/puma/reactor.rb +210 -0
  93. data/lib/puma/runner.rb +171 -0
  94. data/lib/puma/server.rb +949 -0
  95. data/lib/puma/single.rb +112 -0
  96. data/lib/puma/state_file.rb +29 -0
  97. data/lib/puma/tcp_logger.rb +39 -0
  98. data/lib/puma/thread_pool.rb +297 -0
  99. data/lib/puma/util.rb +128 -0
  100. data/lib/rack/handler/puma.rb +78 -0
  101. data/puma.gemspec +52 -0
  102. data/test/ab_rs.rb +22 -0
  103. data/test/config.rb +2 -0
  104. data/test/config/app.rb +9 -0
  105. data/test/config/plugin.rb +1 -0
  106. data/test/config/settings.rb +2 -0
  107. data/test/config/state_file_testing_config.rb +14 -0
  108. data/test/hello-bind.ru +2 -0
  109. data/test/hello-delay.ru +3 -0
  110. data/test/hello-map.ru +3 -0
  111. data/test/hello-post.ru +4 -0
  112. data/test/hello-stuck.ru +1 -0
  113. data/test/hello-tcp.ru +5 -0
  114. data/test/hello.ru +1 -0
  115. data/test/hijack.ru +6 -0
  116. data/test/hijack2.ru +5 -0
  117. data/test/lobster.ru +4 -0
  118. data/test/shell/run.sh +24 -0
  119. data/test/shell/t1.rb +19 -0
  120. data/test/shell/t1_conf.rb +3 -0
  121. data/test/shell/t2.rb +17 -0
  122. data/test/shell/t2_conf.rb +6 -0
  123. data/test/shell/t3.rb +25 -0
  124. data/test/shell/t3_conf.rb +5 -0
  125. data/test/slow.ru +4 -0
  126. data/test/ssl_config.rb +4 -0
  127. data/test/test_app_status.rb +93 -0
  128. data/test/test_binder.rb +31 -0
  129. data/test/test_cli.rb +209 -0
  130. data/test/test_config.rb +95 -0
  131. data/test/test_events.rb +161 -0
  132. data/test/test_helper.rb +50 -0
  133. data/test/test_http10.rb +27 -0
  134. data/test/test_http11.rb +186 -0
  135. data/test/test_integration.rb +247 -0
  136. data/test/test_iobuffer.rb +39 -0
  137. data/test/test_minissl.rb +29 -0
  138. data/test/test_null_io.rb +49 -0
  139. data/test/test_persistent.rb +245 -0
  140. data/test/test_puma_server.rb +626 -0
  141. data/test/test_puma_server_ssl.rb +222 -0
  142. data/test/test_rack_handler.rb +57 -0
  143. data/test/test_rack_server.rb +138 -0
  144. data/test/test_tcp_logger.rb +39 -0
  145. data/test/test_tcp_rack.rb +36 -0
  146. data/test/test_thread_pool.rb +250 -0
  147. data/test/test_unix_socket.rb +35 -0
  148. data/test/test_web_server.rb +88 -0
  149. data/tools/jungle/README.md +9 -0
  150. data/tools/jungle/init.d/README.md +59 -0
  151. data/tools/jungle/init.d/puma +421 -0
  152. data/tools/jungle/init.d/run-puma +18 -0
  153. data/tools/jungle/upstart/README.md +61 -0
  154. data/tools/jungle/upstart/puma-manager.conf +31 -0
  155. data/tools/jungle/upstart/puma.conf +69 -0
  156. data/tools/trickletest.rb +45 -0
  157. metadata +297 -0
@@ -0,0 +1,31 @@
1
+ # /etc/init/puma-manager.conf - manage a set of Pumas
2
+
3
+ # This example config should work with Ubuntu 12.04+. It
4
+ # allows you to manage multiple Puma instances with
5
+ # Upstart, Ubuntu's native service management tool.
6
+ #
7
+ # See puma.conf for how to manage a single Puma instance.
8
+ #
9
+ # Use "stop puma-manager" to stop all Puma instances.
10
+ # Use "start puma-manager" to start all instances.
11
+ # Use "restart puma-manager" to restart all instances.
12
+ # Crazy, right?
13
+ #
14
+
15
+ description "Manages the set of puma processes"
16
+
17
+ # This starts upon bootup and stops on shutdown
18
+ start on runlevel [2345]
19
+ stop on runlevel [06]
20
+
21
+ # Set this to the number of Puma processes you want
22
+ # to run on this machine
23
+ env PUMA_CONF="/etc/puma.conf"
24
+
25
+ pre-start script
26
+ for i in `cat $PUMA_CONF`; do
27
+ app=`echo $i | cut -d , -f 1`
28
+ logger -t "puma-manager" "Starting $app"
29
+ start puma app=$app
30
+ done
31
+ end script
@@ -0,0 +1,69 @@
1
+ # /etc/init/puma.conf - Puma config
2
+
3
+ # This example config should work with Ubuntu 12.04+. It
4
+ # allows you to manage multiple Puma instances with
5
+ # Upstart, Ubuntu's native service management tool.
6
+ #
7
+ # See puma-manager.conf for how to manage all Puma instances at once.
8
+ #
9
+ # Save this config as /etc/init/puma.conf then manage puma with:
10
+ # sudo start puma app=PATH_TO_APP
11
+ # sudo stop puma app=PATH_TO_APP
12
+ # sudo status puma app=PATH_TO_APP
13
+ #
14
+ # or use the service command:
15
+ # sudo service puma {start,stop,restart,status}
16
+ #
17
+
18
+ description "Puma Background Worker"
19
+
20
+ # no "start on", we don't want to automatically start
21
+ stop on (stopping puma-manager or runlevel [06])
22
+
23
+ # change apps to match your deployment user if you want to use this as a less privileged user (recommended!)
24
+ setuid apps
25
+ setgid apps
26
+
27
+ respawn
28
+ respawn limit 3 30
29
+
30
+ instance ${app}
31
+
32
+ script
33
+ # this script runs in /bin/sh by default
34
+ # respawn as bash so we can source in rbenv/rvm
35
+ # quoted heredoc to tell /bin/sh not to interpret
36
+ # variables
37
+
38
+ # source ENV variables manually as Upstart doesn't, eg:
39
+ #. /etc/environment
40
+
41
+ exec /bin/bash <<'EOT'
42
+ # set HOME to the setuid user's home, there doesn't seem to be a better, portable way
43
+ export HOME="$(eval echo ~$(id -un))"
44
+
45
+ if [ -d "/usr/local/rbenv/bin" ]; then
46
+ export PATH="/usr/local/rbenv/bin:/usr/local/rbenv/shims:$PATH"
47
+ elif [ -d "$HOME/.rbenv/bin" ]; then
48
+ export PATH="$HOME/.rbenv/bin:$HOME/.rbenv/shims:$PATH"
49
+ elif [ -f /etc/profile.d/rvm.sh ]; then
50
+ source /etc/profile.d/rvm.sh
51
+ elif [ -f /usr/local/rvm/scripts/rvm ]; then
52
+ source /etc/profile.d/rvm.sh
53
+ elif [ -f "$HOME/.rvm/scripts/rvm" ]; then
54
+ source "$HOME/.rvm/scripts/rvm"
55
+ elif [ -f /usr/local/share/chruby/chruby.sh ]; then
56
+ source /usr/local/share/chruby/chruby.sh
57
+ if [ -f /usr/local/share/chruby/auto.sh ]; then
58
+ source /usr/local/share/chruby/auto.sh
59
+ fi
60
+ # if you aren't using auto, set your version here
61
+ # chruby 2.0.0
62
+ fi
63
+
64
+ cd $app
65
+ logger -t puma "Starting server: $app"
66
+
67
+ exec bundle exec puma -C config/puma.rb
68
+ EOT
69
+ end script
@@ -0,0 +1,45 @@
1
+ require 'socket'
2
+ require 'stringio'
3
+
4
+ def do_test(st, chunk)
5
+ s = TCPSocket.new('127.0.0.1',ARGV[0].to_i);
6
+ req = StringIO.new(st)
7
+ nout = 0
8
+ randstop = rand(st.length / 10)
9
+ STDERR.puts "stopping after: #{randstop}"
10
+
11
+ begin
12
+ while data = req.read(chunk)
13
+ nout += s.write(data)
14
+ s.flush
15
+ sleep 0.1
16
+ if nout > randstop
17
+ STDERR.puts "BANG! after #{nout} bytes."
18
+ break
19
+ end
20
+ end
21
+ rescue Object => e
22
+ STDERR.puts "ERROR: #{e}"
23
+ ensure
24
+ s.close
25
+ end
26
+ end
27
+
28
+ content = "-" * (1024 * 240)
29
+ st = "GET / HTTP/1.1\r\nHost: www.zedshaw.com\r\nContent-Type: text/plain\r\nContent-Length: #{content.length}\r\n\r\n#{content}"
30
+
31
+ puts "length: #{content.length}"
32
+
33
+ threads = []
34
+ ARGV[1].to_i.times do
35
+ t = Thread.new do
36
+ size = 100
37
+ puts ">>>> #{size} sized chunks"
38
+ do_test(st, size)
39
+ end
40
+
41
+ t.abort_on_exception = true
42
+ threads << t
43
+ end
44
+
45
+ threads.each {|t| t.join}
metadata ADDED
@@ -0,0 +1,297 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: puma-simon
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.7.1
5
+ platform: ruby
6
+ authors:
7
+ - Evan Phoenix
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-02-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rdoc
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake-compiler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.8.0
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.8.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: hoe
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.6'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.6'
55
+ description: Puma is a simple, fast, threaded, and highly concurrent HTTP 1.1 server
56
+ for Ruby/Rack applications. Puma is intended for use in both development and production
57
+ environments. It's great for highly concurrent Ruby implementations such as Rubinius
58
+ and JRuby as well as as providing process worker support to support CRuby well.
59
+ email:
60
+ - evan@phx.io
61
+ executables:
62
+ - puma
63
+ - pumactl
64
+ extensions:
65
+ - ext/puma_http11/extconf.rb
66
+ extra_rdoc_files: []
67
+ files:
68
+ - ".github/issue_template.md"
69
+ - ".gitignore"
70
+ - ".hoeignore"
71
+ - ".travis.yml"
72
+ - DEPLOYMENT.md
73
+ - Gemfile
74
+ - History.md
75
+ - LICENSE
76
+ - Manifest.txt
77
+ - README.md
78
+ - Rakefile
79
+ - Release.md
80
+ - bin/puma
81
+ - bin/puma-wild
82
+ - bin/pumactl
83
+ - docs/nginx.md
84
+ - docs/signals.md
85
+ - docs/systemd.md
86
+ - examples/CA/cacert.pem
87
+ - examples/CA/newcerts/cert_1.pem
88
+ - examples/CA/newcerts/cert_2.pem
89
+ - examples/CA/private/cakeypair.pem
90
+ - examples/CA/serial
91
+ - examples/config.rb
92
+ - examples/plugins/redis_stop_puma.rb
93
+ - examples/puma/cert_puma.pem
94
+ - examples/puma/client-certs/ca.crt
95
+ - examples/puma/client-certs/ca.key
96
+ - examples/puma/client-certs/client.crt
97
+ - examples/puma/client-certs/client.key
98
+ - examples/puma/client-certs/client_expired.crt
99
+ - examples/puma/client-certs/client_expired.key
100
+ - examples/puma/client-certs/client_unknown.crt
101
+ - examples/puma/client-certs/client_unknown.key
102
+ - examples/puma/client-certs/generate.rb
103
+ - examples/puma/client-certs/keystore.jks
104
+ - examples/puma/client-certs/server.crt
105
+ - examples/puma/client-certs/server.key
106
+ - examples/puma/client-certs/server.p12
107
+ - examples/puma/client-certs/unknown_ca.crt
108
+ - examples/puma/client-certs/unknown_ca.key
109
+ - examples/puma/csr_puma.pem
110
+ - examples/puma/keystore.jks
111
+ - examples/puma/puma_keypair.pem
112
+ - examples/qc_config.rb
113
+ - ext/puma_http11/PumaHttp11Service.java
114
+ - ext/puma_http11/ext_help.h
115
+ - ext/puma_http11/extconf.rb
116
+ - ext/puma_http11/http11_parser.c
117
+ - ext/puma_http11/http11_parser.h
118
+ - ext/puma_http11/http11_parser.java.rl
119
+ - ext/puma_http11/http11_parser.rl
120
+ - ext/puma_http11/http11_parser_common.rl
121
+ - ext/puma_http11/io_buffer.c
122
+ - ext/puma_http11/mini_ssl.c
123
+ - ext/puma_http11/org/jruby/puma/Http11.java
124
+ - ext/puma_http11/org/jruby/puma/Http11Parser.java
125
+ - ext/puma_http11/org/jruby/puma/MiniSSL.java
126
+ - ext/puma_http11/puma_http11.c
127
+ - gemfiles/2.1-Gemfile
128
+ - lib/puma.rb
129
+ - lib/puma/accept_nonblock.rb
130
+ - lib/puma/app/status.rb
131
+ - lib/puma/binder.rb
132
+ - lib/puma/cli.rb
133
+ - lib/puma/client.rb
134
+ - lib/puma/cluster.rb
135
+ - lib/puma/commonlogger.rb
136
+ - lib/puma/compat.rb
137
+ - lib/puma/configuration.rb
138
+ - lib/puma/const.rb
139
+ - lib/puma/control_cli.rb
140
+ - lib/puma/convenient.rb
141
+ - lib/puma/daemon_ext.rb
142
+ - lib/puma/delegation.rb
143
+ - lib/puma/detect.rb
144
+ - lib/puma/dsl.rb
145
+ - lib/puma/events.rb
146
+ - lib/puma/io_buffer.rb
147
+ - lib/puma/java_io_buffer.rb
148
+ - lib/puma/jruby_restart.rb
149
+ - lib/puma/launcher.rb
150
+ - lib/puma/minissl.rb
151
+ - lib/puma/null_io.rb
152
+ - lib/puma/plugin.rb
153
+ - lib/puma/plugin/tmp_restart.rb
154
+ - lib/puma/rack/backports/uri/common_193.rb
155
+ - lib/puma/rack/builder.rb
156
+ - lib/puma/rack/urlmap.rb
157
+ - lib/puma/rack_default.rb
158
+ - lib/puma/reactor.rb
159
+ - lib/puma/runner.rb
160
+ - lib/puma/server.rb
161
+ - lib/puma/single.rb
162
+ - lib/puma/state_file.rb
163
+ - lib/puma/tcp_logger.rb
164
+ - lib/puma/thread_pool.rb
165
+ - lib/puma/util.rb
166
+ - lib/rack/handler/puma.rb
167
+ - puma.gemspec
168
+ - test/ab_rs.rb
169
+ - test/config.rb
170
+ - test/config/app.rb
171
+ - test/config/plugin.rb
172
+ - test/config/settings.rb
173
+ - test/config/state_file_testing_config.rb
174
+ - test/hello-bind.ru
175
+ - test/hello-delay.ru
176
+ - test/hello-map.ru
177
+ - test/hello-post.ru
178
+ - test/hello-stuck.ru
179
+ - test/hello-tcp.ru
180
+ - test/hello.ru
181
+ - test/hijack.ru
182
+ - test/hijack2.ru
183
+ - test/lobster.ru
184
+ - test/shell/run.sh
185
+ - test/shell/t1.rb
186
+ - test/shell/t1_conf.rb
187
+ - test/shell/t2.rb
188
+ - test/shell/t2_conf.rb
189
+ - test/shell/t3.rb
190
+ - test/shell/t3_conf.rb
191
+ - test/slow.ru
192
+ - test/ssl_config.rb
193
+ - test/test_app_status.rb
194
+ - test/test_binder.rb
195
+ - test/test_cli.rb
196
+ - test/test_config.rb
197
+ - test/test_events.rb
198
+ - test/test_helper.rb
199
+ - test/test_http10.rb
200
+ - test/test_http11.rb
201
+ - test/test_integration.rb
202
+ - test/test_iobuffer.rb
203
+ - test/test_minissl.rb
204
+ - test/test_null_io.rb
205
+ - test/test_persistent.rb
206
+ - test/test_puma_server.rb
207
+ - test/test_puma_server_ssl.rb
208
+ - test/test_rack_handler.rb
209
+ - test/test_rack_server.rb
210
+ - test/test_tcp_logger.rb
211
+ - test/test_tcp_rack.rb
212
+ - test/test_thread_pool.rb
213
+ - test/test_unix_socket.rb
214
+ - test/test_web_server.rb
215
+ - tools/jungle/README.md
216
+ - tools/jungle/init.d/README.md
217
+ - tools/jungle/init.d/puma
218
+ - tools/jungle/init.d/run-puma
219
+ - tools/jungle/upstart/README.md
220
+ - tools/jungle/upstart/puma-manager.conf
221
+ - tools/jungle/upstart/puma.conf
222
+ - tools/trickletest.rb
223
+ homepage: http://puma.io
224
+ licenses:
225
+ - BSD-3-Clause
226
+ metadata: {}
227
+ post_install_message:
228
+ rdoc_options:
229
+ - "--main"
230
+ - README.md
231
+ require_paths:
232
+ - lib
233
+ required_ruby_version: !ruby/object:Gem::Requirement
234
+ requirements:
235
+ - - ">="
236
+ - !ruby/object:Gem::Version
237
+ version: 1.9.3
238
+ required_rubygems_version: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - ">="
241
+ - !ruby/object:Gem::Version
242
+ version: '0'
243
+ requirements: []
244
+ rubyforge_project: puma
245
+ rubygems_version: 2.6.10
246
+ signing_key:
247
+ specification_version: 3
248
+ summary: Puma is a simple, fast, threaded, and highly concurrent HTTP 1.1 server for
249
+ Ruby/Rack applications
250
+ test_files:
251
+ - test/ab_rs.rb
252
+ - test/config.rb
253
+ - test/config/app.rb
254
+ - test/config/plugin.rb
255
+ - test/config/settings.rb
256
+ - test/config/state_file_testing_config.rb
257
+ - test/hello-bind.ru
258
+ - test/hello-delay.ru
259
+ - test/hello-map.ru
260
+ - test/hello-post.ru
261
+ - test/hello-stuck.ru
262
+ - test/hello-tcp.ru
263
+ - test/hello.ru
264
+ - test/hijack.ru
265
+ - test/hijack2.ru
266
+ - test/lobster.ru
267
+ - test/shell/run.sh
268
+ - test/shell/t1.rb
269
+ - test/shell/t1_conf.rb
270
+ - test/shell/t2.rb
271
+ - test/shell/t2_conf.rb
272
+ - test/shell/t3.rb
273
+ - test/shell/t3_conf.rb
274
+ - test/slow.ru
275
+ - test/ssl_config.rb
276
+ - test/test_app_status.rb
277
+ - test/test_binder.rb
278
+ - test/test_cli.rb
279
+ - test/test_config.rb
280
+ - test/test_events.rb
281
+ - test/test_helper.rb
282
+ - test/test_http10.rb
283
+ - test/test_http11.rb
284
+ - test/test_integration.rb
285
+ - test/test_iobuffer.rb
286
+ - test/test_minissl.rb
287
+ - test/test_null_io.rb
288
+ - test/test_persistent.rb
289
+ - test/test_puma_server.rb
290
+ - test/test_puma_server_ssl.rb
291
+ - test/test_rack_handler.rb
292
+ - test/test_rack_server.rb
293
+ - test/test_tcp_logger.rb
294
+ - test/test_tcp_rack.rb
295
+ - test/test_thread_pool.rb
296
+ - test/test_unix_socket.rb
297
+ - test/test_web_server.rb