puma 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puma might be problematic. Click here for more details.

data/History.txt CHANGED
@@ -1,3 +1,9 @@
1
+ === 2.0.1 / 2013-04-30
2
+
3
+ * 1 bug fix:
4
+
5
+ * Fix not starting on JRuby properly
6
+
1
7
  === 2.0.0 / 2013-04-29
2
8
 
3
9
  RailsConf 2013 edition!
data/lib/puma/cli.rb CHANGED
@@ -346,7 +346,7 @@ module Puma
346
346
 
347
347
  @config.load
348
348
 
349
- if @options[:workers]
349
+ if @options[:workers] > 0
350
350
  unsupported "worker mode not supported on JRuby and Windows",
351
351
  jruby? || windows?
352
352
  end
data/lib/puma/const.rb CHANGED
@@ -28,7 +28,7 @@ module Puma
28
28
  # too taxing on performance.
29
29
  module Const
30
30
 
31
- PUMA_VERSION = VERSION = "2.0.0".freeze
31
+ PUMA_VERSION = VERSION = "2.0.1".freeze
32
32
 
33
33
  FAST_TRACK_KA_TIMEOUT = 0.2
34
34
 
data/puma.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "puma"
5
- s.version = "2.0.0"
5
+ s.version = "2.0.1"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Evan Phoenix"]
9
- s.date = "2013-04-29"
9
+ s.date = "2013-04-30"
10
10
  s.description = "Puma is a simple, fast, and highly concurrent HTTP 1.1 server for Ruby web applications. It can be used with any application that supports Rack, and is considered the replacement for Webrick and Mongrel. It was designed to be the go-to server for [Rubinius](http://rubini.us), but also works well with JRuby and MRI. Puma is intended for use in both development and production environments.\n\nUnder the hood, 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 in a thread from an internal thread pool (which you can control). This allows Puma to provide real concurrency for your web application!\n\nWith Rubinius 2.0, Puma will utilize all cores on your CPU with real threads, meaning you won't have to spawn multiple processes to increase throughput. You can expect to see a similar benefit from JRuby.\n\nOn MRI, there is a Global Interpreter Lock (GIL) that ensures only one thread can be run 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 blocking IO to be run concurrently (EventMachine-based servers such as Thin turn off this ability, requiring you to use special libraries). Your mileage may vary. In order to get the best throughput, it is highly recommended that you use a Ruby implementation with real threads like [Rubinius](http://rubini.us) or [JRuby](http://jruby.org)."
11
11
  s.email = ["evan@phx.io"]
12
12
  s.executables = ["puma", "pumactl"]
metadata CHANGED
@@ -1,239 +1,201 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: puma
3
- version: !ruby/object:Gem::Version
4
- version: 2.0.0
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 2.0.1
6
6
  platform: ruby
7
- authors:
8
- - Evan Phoenix
7
+ authors:
8
+ - Evan Phoenix
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-29 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: rack
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '1.1'
22
- - - <
23
- - !ruby/object:Gem::Version
24
- version: '2.0'
25
- type: :runtime
26
- prerelease: false
27
- version_requirements: !ruby/object:Gem::Requirement
28
- none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
32
- version: '1.1'
33
- - - <
34
- - !ruby/object:Gem::Version
35
- version: '2.0'
36
- - !ruby/object:Gem::Dependency
37
- name: rdoc
38
- requirement: !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ~>
42
- - !ruby/object:Gem::Version
43
- version: '3.10'
44
- type: :development
45
- prerelease: false
46
- version_requirements: !ruby/object:Gem::Requirement
47
- none: false
48
- requirements:
49
- - - ~>
50
- - !ruby/object:Gem::Version
51
- version: '3.10'
52
- - !ruby/object:Gem::Dependency
53
- name: rake-compiler
54
- requirement: !ruby/object:Gem::Requirement
55
- none: false
56
- requirements:
57
- - - ~>
58
- - !ruby/object:Gem::Version
59
- version: 0.8.0
60
- type: :development
61
- prerelease: false
62
- version_requirements: !ruby/object:Gem::Requirement
63
- none: false
64
- requirements:
65
- - - ~>
66
- - !ruby/object:Gem::Version
67
- version: 0.8.0
68
- - !ruby/object:Gem::Dependency
69
- name: hoe
70
- requirement: !ruby/object:Gem::Requirement
71
- none: false
72
- requirements:
73
- - - ~>
74
- - !ruby/object:Gem::Version
75
- version: '3.5'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- none: false
80
- requirements:
81
- - - ~>
82
- - !ruby/object:Gem::Version
83
- version: '3.5'
84
- description: ! 'Puma is a simple, fast, and highly concurrent HTTP 1.1 server for
85
- Ruby web applications. It can be used with any application that supports Rack, and
86
- is considered the replacement for Webrick and Mongrel. It was designed to be the
87
- go-to server for [Rubinius](http://rubini.us), but also works well with JRuby and
88
- MRI. Puma is intended for use in both development and production environments.
89
12
 
90
-
91
- Under the hood, Puma processes requests using a C-optimized Ragel extension (inherited
92
- from Mongrel) that provides fast, accurate HTTP 1.1 protocol parsing in a portable
93
- way. Puma then serves the request in a thread from an internal thread pool (which
94
- you can control). This allows Puma to provide real concurrency for your web application!
95
-
96
-
97
- With Rubinius 2.0, Puma will utilize all cores on your CPU with real threads, meaning
98
- you won''t have to spawn multiple processes to increase throughput. You can expect
99
- to see a similar benefit from JRuby.
100
-
101
-
102
- On MRI, there is a Global Interpreter Lock (GIL) that ensures only one thread can
103
- be run at a time. But if you''re doing a lot of blocking IO (such as HTTP calls
104
- to external APIs like Twitter), Puma still improves MRI''s throughput by allowing
105
- blocking IO to be run concurrently (EventMachine-based servers such as Thin turn
106
- off this ability, requiring you to use special libraries). Your mileage may vary.
107
- In order to get the best throughput, it is highly recommended that you use a Ruby
108
- implementation with real threads like [Rubinius](http://rubini.us) or [JRuby](http://jruby.org).'
109
- email:
110
- - evan@phx.io
111
- executables:
112
- - puma
113
- - pumactl
114
- extensions:
115
- - ext/puma_http11/extconf.rb
116
- extra_rdoc_files:
117
- - History.txt
118
- - Manifest.txt
119
- files:
120
- - COPYING
121
- - Gemfile
122
- - History.txt
123
- - LICENSE
124
- - Manifest.txt
125
- - README.md
126
- - Rakefile
127
- - TODO
128
- - bin/puma
129
- - bin/pumactl
130
- - docs/config.md
131
- - docs/nginx.md
132
- - ext/puma_http11/PumaHttp11Service.java
133
- - ext/puma_http11/ext_help.h
134
- - ext/puma_http11/extconf.rb
135
- - ext/puma_http11/http11_parser.c
136
- - ext/puma_http11/http11_parser.h
137
- - ext/puma_http11/http11_parser.java.rl
138
- - ext/puma_http11/http11_parser.rl
139
- - ext/puma_http11/http11_parser_common.rl
140
- - ext/puma_http11/io_buffer.c
141
- - ext/puma_http11/mini_ssl.c
142
- - ext/puma_http11/org/jruby/puma/Http11.java
143
- - ext/puma_http11/org/jruby/puma/Http11Parser.java
144
- - ext/puma_http11/org/jruby/puma/MiniSSL.java
145
- - ext/puma_http11/puma_http11.c
146
- - lib/puma.rb
147
- - lib/puma/accept_nonblock.rb
148
- - lib/puma/app/status.rb
149
- - lib/puma/binder.rb
150
- - lib/puma/capistrano.rb
151
- - lib/puma/cli.rb
152
- - lib/puma/client.rb
153
- - lib/puma/compat.rb
154
- - lib/puma/configuration.rb
155
- - lib/puma/const.rb
156
- - lib/puma/control_cli.rb
157
- - lib/puma/daemon_ext.rb
158
- - lib/puma/delegation.rb
159
- - lib/puma/detect.rb
160
- - lib/puma/events.rb
161
- - lib/puma/io_buffer.rb
162
- - lib/puma/java_io_buffer.rb
163
- - lib/puma/jruby_restart.rb
164
- - lib/puma/minissl.rb
165
- - lib/puma/null_io.rb
166
- - lib/puma/rack_default.rb
167
- - lib/puma/rack_patch.rb
168
- - lib/puma/reactor.rb
169
- - lib/puma/server.rb
170
- - lib/puma/thread_pool.rb
171
- - lib/puma/util.rb
172
- - lib/rack/handler/puma.rb
173
- - puma.gemspec
174
- - tools/jungle/init.d/README.md
175
- - tools/jungle/init.d/puma
176
- - tools/jungle/init.d/run-puma
177
- - tools/jungle/upstart/README.md
178
- - tools/jungle/upstart/puma-manager.conf
179
- - tools/jungle/upstart/puma.conf
180
- - test/test_app_status.rb
181
- - test/test_cli.rb
182
- - test/test_config.rb
183
- - test/test_http10.rb
184
- - test/test_http11.rb
185
- - test/test_integration.rb
186
- - test/test_iobuffer.rb
187
- - test/test_minissl.rb
188
- - test/test_null_io.rb
189
- - test/test_persistent.rb
190
- - test/test_puma_server.rb
191
- - test/test_rack_handler.rb
192
- - test/test_rack_server.rb
193
- - test/test_thread_pool.rb
194
- - test/test_unix_socket.rb
195
- - test/test_ws.rb
13
+ date: 2013-04-30 00:00:00 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rack
17
+ version_requirements: &id001 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: "1.1"
23
+ - - <
24
+ - !ruby/object:Gem::Version
25
+ version: "2.0"
26
+ requirement: *id001
27
+ prerelease: false
28
+ type: :runtime
29
+ - !ruby/object:Gem::Dependency
30
+ name: rdoc
31
+ version_requirements: &id002 !ruby/object:Gem::Requirement
32
+ none: false
33
+ requirements:
34
+ - - ~>
35
+ - !ruby/object:Gem::Version
36
+ version: "3.10"
37
+ requirement: *id002
38
+ prerelease: false
39
+ type: :development
40
+ - !ruby/object:Gem::Dependency
41
+ name: rake-compiler
42
+ version_requirements: &id003 !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 0.8.0
48
+ requirement: *id003
49
+ prerelease: false
50
+ type: :development
51
+ - !ruby/object:Gem::Dependency
52
+ name: hoe
53
+ version_requirements: &id004 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ~>
57
+ - !ruby/object:Gem::Version
58
+ version: "3.5"
59
+ requirement: *id004
60
+ prerelease: false
61
+ type: :development
62
+ description: |-
63
+ Puma is a simple, fast, and highly concurrent HTTP 1.1 server for Ruby web applications. It can be used with any application that supports Rack, and is considered the replacement for Webrick and Mongrel. It was designed to be the go-to server for [Rubinius](http://rubini.us), but also works well with JRuby and MRI. Puma is intended for use in both development and production environments.
64
+
65
+ Under the hood, 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 in a thread from an internal thread pool (which you can control). This allows Puma to provide real concurrency for your web application!
66
+
67
+ With Rubinius 2.0, Puma will utilize all cores on your CPU with real threads, meaning you won't have to spawn multiple processes to increase throughput. You can expect to see a similar benefit from JRuby.
68
+
69
+ On MRI, there is a Global Interpreter Lock (GIL) that ensures only one thread can be run 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 blocking IO to be run concurrently (EventMachine-based servers such as Thin turn off this ability, requiring you to use special libraries). Your mileage may vary. In order to get the best throughput, it is highly recommended that you use a Ruby implementation with real threads like [Rubinius](http://rubini.us) or [JRuby](http://jruby.org).
70
+ email:
71
+ - evan@phx.io
72
+ executables:
73
+ - puma
74
+ - pumactl
75
+ extensions:
76
+ - ext/puma_http11/extconf.rb
77
+ extra_rdoc_files:
78
+ - History.txt
79
+ - Manifest.txt
80
+ files:
81
+ - COPYING
82
+ - Gemfile
83
+ - History.txt
84
+ - LICENSE
85
+ - Manifest.txt
86
+ - README.md
87
+ - Rakefile
88
+ - TODO
89
+ - bin/puma
90
+ - bin/pumactl
91
+ - docs/config.md
92
+ - docs/nginx.md
93
+ - ext/puma_http11/PumaHttp11Service.java
94
+ - ext/puma_http11/ext_help.h
95
+ - ext/puma_http11/extconf.rb
96
+ - ext/puma_http11/http11_parser.c
97
+ - ext/puma_http11/http11_parser.h
98
+ - ext/puma_http11/http11_parser.java.rl
99
+ - ext/puma_http11/http11_parser.rl
100
+ - ext/puma_http11/http11_parser_common.rl
101
+ - ext/puma_http11/io_buffer.c
102
+ - ext/puma_http11/mini_ssl.c
103
+ - ext/puma_http11/org/jruby/puma/Http11.java
104
+ - ext/puma_http11/org/jruby/puma/Http11Parser.java
105
+ - ext/puma_http11/org/jruby/puma/MiniSSL.java
106
+ - ext/puma_http11/puma_http11.c
107
+ - lib/puma.rb
108
+ - lib/puma/accept_nonblock.rb
109
+ - lib/puma/app/status.rb
110
+ - lib/puma/binder.rb
111
+ - lib/puma/capistrano.rb
112
+ - lib/puma/cli.rb
113
+ - lib/puma/client.rb
114
+ - lib/puma/compat.rb
115
+ - lib/puma/configuration.rb
116
+ - lib/puma/const.rb
117
+ - lib/puma/control_cli.rb
118
+ - lib/puma/daemon_ext.rb
119
+ - lib/puma/delegation.rb
120
+ - lib/puma/detect.rb
121
+ - lib/puma/events.rb
122
+ - lib/puma/io_buffer.rb
123
+ - lib/puma/java_io_buffer.rb
124
+ - lib/puma/jruby_restart.rb
125
+ - lib/puma/minissl.rb
126
+ - lib/puma/null_io.rb
127
+ - lib/puma/rack_default.rb
128
+ - lib/puma/rack_patch.rb
129
+ - lib/puma/reactor.rb
130
+ - lib/puma/server.rb
131
+ - lib/puma/thread_pool.rb
132
+ - lib/puma/util.rb
133
+ - lib/rack/handler/puma.rb
134
+ - puma.gemspec
135
+ - tools/jungle/init.d/README.md
136
+ - tools/jungle/init.d/puma
137
+ - tools/jungle/init.d/run-puma
138
+ - tools/jungle/upstart/README.md
139
+ - tools/jungle/upstart/puma-manager.conf
140
+ - tools/jungle/upstart/puma.conf
141
+ - test/test_app_status.rb
142
+ - test/test_cli.rb
143
+ - test/test_config.rb
144
+ - test/test_http10.rb
145
+ - test/test_http11.rb
146
+ - test/test_integration.rb
147
+ - test/test_iobuffer.rb
148
+ - test/test_minissl.rb
149
+ - test/test_null_io.rb
150
+ - test/test_persistent.rb
151
+ - test/test_puma_server.rb
152
+ - test/test_rack_handler.rb
153
+ - test/test_rack_server.rb
154
+ - test/test_thread_pool.rb
155
+ - test/test_unix_socket.rb
156
+ - test/test_ws.rb
196
157
  homepage: http://puma.io
197
158
  licenses: []
159
+
198
160
  post_install_message:
199
- rdoc_options:
200
- - --main
201
- - README.md
202
- require_paths:
203
- - lib
204
- required_ruby_version: !ruby/object:Gem::Requirement
161
+ rdoc_options:
162
+ - --main
163
+ - README.md
164
+ require_paths:
165
+ - lib
166
+ required_ruby_version: !ruby/object:Gem::Requirement
205
167
  none: false
206
- requirements:
207
- - - ! '>='
208
- - !ruby/object:Gem::Version
209
- version: 1.8.7
210
- required_rubygems_version: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - ">="
170
+ - !ruby/object:Gem::Version
171
+ version: 1.8.7
172
+ required_rubygems_version: !ruby/object:Gem::Requirement
211
173
  none: false
212
- requirements:
213
- - - ! '>='
214
- - !ruby/object:Gem::Version
215
- version: '0'
174
+ requirements:
175
+ - - ">="
176
+ - !ruby/object:Gem::Version
177
+ version: "0"
216
178
  requirements: []
179
+
217
180
  rubyforge_project: puma
218
- rubygems_version: 1.8.25
181
+ rubygems_version: 1.8.24
219
182
  signing_key:
220
183
  specification_version: 3
221
- summary: Puma is a simple, fast, and highly concurrent HTTP 1.1 server for Ruby web
222
- applications
223
- test_files:
224
- - test/test_app_status.rb
225
- - test/test_cli.rb
226
- - test/test_config.rb
227
- - test/test_http10.rb
228
- - test/test_http11.rb
229
- - test/test_integration.rb
230
- - test/test_iobuffer.rb
231
- - test/test_minissl.rb
232
- - test/test_null_io.rb
233
- - test/test_persistent.rb
234
- - test/test_puma_server.rb
235
- - test/test_rack_handler.rb
236
- - test/test_rack_server.rb
237
- - test/test_thread_pool.rb
238
- - test/test_unix_socket.rb
239
- - test/test_ws.rb
184
+ summary: Puma is a simple, fast, and highly concurrent HTTP 1.1 server for Ruby web applications
185
+ test_files:
186
+ - test/test_app_status.rb
187
+ - test/test_cli.rb
188
+ - test/test_config.rb
189
+ - test/test_http10.rb
190
+ - test/test_http11.rb
191
+ - test/test_integration.rb
192
+ - test/test_iobuffer.rb
193
+ - test/test_minissl.rb
194
+ - test/test_null_io.rb
195
+ - test/test_persistent.rb
196
+ - test/test_puma_server.rb
197
+ - test/test_rack_handler.rb
198
+ - test/test_rack_server.rb
199
+ - test/test_thread_pool.rb
200
+ - test/test_unix_socket.rb
201
+ - test/test_ws.rb