unicorn 4.7.0 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. checksums.yaml +7 -0
  2. data/.document +0 -1
  3. data/.gitattributes +5 -0
  4. data/.gitignore +2 -2
  5. data/.manifest +14 -21
  6. data/.olddoc.yml +22 -0
  7. data/Application_Timeouts +7 -7
  8. data/DESIGN +2 -4
  9. data/Documentation/.gitignore +1 -3
  10. data/Documentation/unicorn.1 +222 -0
  11. data/Documentation/unicorn_rails.1 +207 -0
  12. data/FAQ +23 -6
  13. data/GIT-VERSION-FILE +1 -1
  14. data/GIT-VERSION-GEN +1 -1
  15. data/GNUmakefile +139 -92
  16. data/HACKING +13 -28
  17. data/ISSUES +82 -19
  18. data/KNOWN_ISSUES +18 -18
  19. data/LATEST +22 -44
  20. data/LICENSE +2 -2
  21. data/Links +24 -22
  22. data/NEWS +729 -0
  23. data/PHILOSOPHY +0 -6
  24. data/README +50 -48
  25. data/Rakefile +0 -44
  26. data/SIGNALS +12 -3
  27. data/Sandbox +11 -10
  28. data/TODO +0 -2
  29. data/TUNING +30 -9
  30. data/archive/.gitignore +3 -0
  31. data/archive/slrnpull.conf +4 -0
  32. data/bin/unicorn +4 -2
  33. data/bin/unicorn_rails +3 -3
  34. data/examples/big_app_gc.rb +1 -1
  35. data/examples/init.sh +36 -8
  36. data/examples/logrotate.conf +17 -2
  37. data/examples/nginx.conf +14 -14
  38. data/examples/unicorn.conf.minimal.rb +2 -2
  39. data/examples/unicorn.conf.rb +14 -6
  40. data/examples/unicorn.socket +11 -0
  41. data/examples/unicorn@.service +40 -0
  42. data/ext/unicorn_http/common_field_optimization.h +23 -5
  43. data/ext/unicorn_http/ext_help.h +0 -20
  44. data/ext/unicorn_http/extconf.rb +37 -1
  45. data/ext/unicorn_http/global_variables.h +1 -1
  46. data/ext/unicorn_http/httpdate.c +2 -2
  47. data/ext/unicorn_http/unicorn_http.c +940 -644
  48. data/ext/unicorn_http/unicorn_http.rl +167 -170
  49. data/ext/unicorn_http/unicorn_http_common.rl +1 -1
  50. data/lib/unicorn/configurator.rb +110 -46
  51. data/lib/unicorn/const.rb +2 -25
  52. data/lib/unicorn/http_request.rb +110 -31
  53. data/lib/unicorn/http_response.rb +17 -31
  54. data/lib/unicorn/http_server.rb +292 -199
  55. data/lib/unicorn/launcher.rb +1 -1
  56. data/lib/unicorn/oob_gc.rb +16 -6
  57. data/lib/unicorn/socket_helper.rb +58 -78
  58. data/lib/unicorn/stream_input.rb +9 -11
  59. data/lib/unicorn/tee_input.rb +16 -11
  60. data/lib/unicorn/tmpio.rb +10 -6
  61. data/lib/unicorn/util.rb +5 -4
  62. data/lib/unicorn/version.rb +1 -1
  63. data/lib/unicorn/worker.rb +99 -22
  64. data/lib/unicorn.rb +69 -42
  65. data/man/man1/unicorn.1 +124 -122
  66. data/man/man1/unicorn_rails.1 +113 -127
  67. data/t/.gitignore +0 -1
  68. data/t/GNUmakefile +3 -80
  69. data/t/README +4 -4
  70. data/t/t0002-parser-error.sh +3 -3
  71. data/t/t0011-active-unix-socket.sh +1 -1
  72. data/t/t0012-reload-empty-config.sh +2 -1
  73. data/t/t0300-no-default-middleware.sh +6 -1
  74. data/t/t0301-no-default-middleware-ignored-in-config.sh +25 -0
  75. data/t/t0301.ru +13 -0
  76. data/t/test-lib.sh +2 -2
  77. data/test/benchmark/README +14 -4
  78. data/test/benchmark/ddstream.ru +50 -0
  79. data/test/benchmark/readinput.ru +40 -0
  80. data/test/benchmark/uconnect.perl +66 -0
  81. data/test/exec/test_exec.rb +74 -20
  82. data/test/test_helper.rb +42 -33
  83. data/test/unit/test_ccc.rb +91 -0
  84. data/test/unit/test_droplet.rb +1 -1
  85. data/test/unit/test_http_parser.rb +49 -19
  86. data/test/unit/test_http_parser_ng.rb +98 -115
  87. data/test/unit/test_request.rb +11 -11
  88. data/test/unit/test_response.rb +31 -19
  89. data/test/unit/test_server.rb +89 -15
  90. data/test/unit/test_signals.rb +9 -9
  91. data/test/unit/test_socket_helper.rb +20 -14
  92. data/test/unit/test_tee_input.rb +10 -0
  93. data/test/unit/test_upload.rb +10 -15
  94. data/test/unit/test_util.rb +28 -3
  95. data/unicorn.gemspec +28 -23
  96. data/unicorn_1 +1 -0
  97. data/unicorn_rails_1 +1 -0
  98. metadata +64 -134
  99. data/.wrongdoc.yml +0 -10
  100. data/ChangeLog +0 -4694
  101. data/Documentation/GNUmakefile +0 -30
  102. data/Documentation/unicorn.1.txt +0 -178
  103. data/Documentation/unicorn_rails.1.txt +0 -175
  104. data/examples/git.ru +0 -13
  105. data/lib/unicorn/app/exec_cgi.rb +0 -154
  106. data/lib/unicorn/app/inetd.rb +0 -109
  107. data/lib/unicorn/ssl_client.rb +0 -11
  108. data/lib/unicorn/ssl_configurator.rb +0 -104
  109. data/lib/unicorn/ssl_server.rb +0 -42
  110. data/local.mk.sample +0 -59
  111. data/script/isolate_for_tests +0 -32
  112. data/t/hijack.ru +0 -42
  113. data/t/sslgen.sh +0 -71
  114. data/t/t0016-trust-x-forwarded-false.sh +0 -30
  115. data/t/t0017-trust-x-forwarded-true.sh +0 -30
  116. data/t/t0200-rack-hijack.sh +0 -27
  117. data/t/t0600-https-server-basic.sh +0 -48
  118. data/test/unit/test_http_parser_xftrust.rb +0 -38
  119. data/test/unit/test_sni_hostnames.rb +0 -47
metadata CHANGED
@@ -1,138 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
- name: !binary |-
3
- dW5pY29ybg==
2
+ name: unicorn
4
3
  version: !ruby/object:Gem::Version
5
- version: 4.7.0
6
- prerelease:
4
+ version: 6.0.0
7
5
  platform: ruby
8
6
  authors:
9
- - Unicorn hackers
7
+ - unicorn hackers
10
8
  autorequire:
11
9
  bindir: bin
12
10
  cert_chain: []
13
- date: 2013-11-04 00:00:00.000000000 Z
11
+ date: 2021-03-17 00:00:00.000000000 Z
14
12
  dependencies:
15
13
  - !ruby/object:Gem::Dependency
16
- name: !binary |-
17
- cmFjaw==
14
+ name: rack
18
15
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
16
  requirements:
21
- - - ! '>='
17
+ - - ">="
22
18
  - !ruby/object:Gem::Version
23
19
  version: '0'
24
- type: :runtime
20
+ type: :development
25
21
  prerelease: false
26
22
  version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
23
  requirements:
29
- - - ! '>='
24
+ - - ">="
30
25
  - !ruby/object:Gem::Version
31
26
  version: '0'
32
27
  - !ruby/object:Gem::Dependency
33
- name: !binary |-
34
- a2dpbw==
28
+ name: kgio
35
29
  requirement: !ruby/object:Gem::Requirement
36
- none: false
37
30
  requirements:
38
- - - !binary |-
39
- fj4=
31
+ - - "~>"
40
32
  - !ruby/object:Gem::Version
41
- version: !binary |-
42
- Mi42
33
+ version: '2.6'
43
34
  type: :runtime
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
46
- none: false
47
37
  requirements:
48
- - - !binary |-
49
- fj4=
38
+ - - "~>"
50
39
  - !ruby/object:Gem::Version
51
- version: !binary |-
52
- Mi42
40
+ version: '2.6'
53
41
  - !ruby/object:Gem::Dependency
54
- name: !binary |-
55
- cmFpbmRyb3Bz
42
+ name: raindrops
56
43
  requirement: !ruby/object:Gem::Requirement
57
- none: false
58
44
  requirements:
59
- - - !binary |-
60
- fj4=
45
+ - - "~>"
61
46
  - !ruby/object:Gem::Version
62
- version: !binary |-
63
- MC43
47
+ version: '0.7'
64
48
  type: :runtime
65
49
  prerelease: false
66
50
  version_requirements: !ruby/object:Gem::Requirement
67
- none: false
68
51
  requirements:
69
- - - !binary |-
70
- fj4=
52
+ - - "~>"
71
53
  - !ruby/object:Gem::Version
72
- version: !binary |-
73
- MC43
54
+ version: '0.7'
74
55
  - !ruby/object:Gem::Dependency
75
- name: !binary |-
76
- aXNvbGF0ZQ==
56
+ name: test-unit
77
57
  requirement: !ruby/object:Gem::Requirement
78
- none: false
79
58
  requirements:
80
- - - !binary |-
81
- fj4=
59
+ - - "~>"
82
60
  - !ruby/object:Gem::Version
83
- version: !binary |-
84
- My4y
61
+ version: '3.0'
85
62
  type: :development
86
63
  prerelease: false
87
64
  version_requirements: !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
90
- - - !binary |-
91
- fj4=
92
- - !ruby/object:Gem::Version
93
- version: !binary |-
94
- My4y
95
- - !ruby/object:Gem::Dependency
96
- name: !binary |-
97
- d3Jvbmdkb2M=
98
- requirement: !ruby/object:Gem::Requirement
99
- none: false
100
65
  requirements:
101
- - - !binary |-
102
- fj4=
66
+ - - "~>"
103
67
  - !ruby/object:Gem::Version
104
- version: !binary |-
105
- MS42LjE=
106
- type: :development
107
- prerelease: false
108
- version_requirements: !ruby/object:Gem::Requirement
109
- none: false
110
- requirements:
111
- - - !binary |-
112
- fj4=
113
- - !ruby/object:Gem::Version
114
- version: !binary |-
115
- MS42LjE=
116
- description: ! '\Unicorn is an HTTP server for Rack applications designed to only
117
- serve
118
-
68
+ version: '3.0'
69
+ description: |-
70
+ unicorn is an HTTP server for Rack applications designed to only serve
119
71
  fast clients on low-latency, high-bandwidth connections and take
120
-
121
72
  advantage of features in Unix/Unix-like kernels. Slow clients should
122
-
123
73
  only be served by placing a reverse proxy capable of fully buffering
124
-
125
- both the the request and response in between \Unicorn and slow clients.'
126
- email: !binary |-
127
- bW9uZ3JlbC11bmljb3JuQHJ1Ynlmb3JnZS5vcmc=
74
+ both the the request and response in between unicorn and slow clients.
75
+ email: unicorn-public@yhbt.net
128
76
  executables:
129
- - !binary |-
130
- dW5pY29ybg==
131
- - !binary |-
132
- dW5pY29ybl9yYWlscw==
77
+ - unicorn
78
+ - unicorn_rails
133
79
  extensions:
134
- - !binary |-
135
- ZXh0L3VuaWNvcm5faHR0cC9leHRjb25mLnJi
80
+ - ext/unicorn_http/extconf.rb
136
81
  extra_rdoc_files:
137
82
  - FAQ
138
83
  - README
@@ -146,7 +91,6 @@ extra_rdoc_files:
146
91
  - KNOWN_ISSUES
147
92
  - TODO
148
93
  - NEWS
149
- - ChangeLog
150
94
  - LATEST
151
95
  - lib/unicorn.rb
152
96
  - lib/unicorn/configurator.rb
@@ -157,26 +101,27 @@ extra_rdoc_files:
157
101
  - lib/unicorn/util.rb
158
102
  - lib/unicorn/oob_gc.rb
159
103
  - lib/unicorn/worker.rb
104
+ - unicorn_1
105
+ - unicorn_rails_1
160
106
  - ISSUES
161
107
  - Sandbox
162
108
  - Links
163
109
  - Application_Timeouts
164
110
  files:
165
- - .CHANGELOG.old
166
- - .document
167
- - .gitignore
168
- - .mailmap
169
- - .manifest
170
- - .wrongdoc.yml
111
+ - ".CHANGELOG.old"
112
+ - ".document"
113
+ - ".gitattributes"
114
+ - ".gitignore"
115
+ - ".mailmap"
116
+ - ".manifest"
117
+ - ".olddoc.yml"
171
118
  - Application_Timeouts
172
119
  - CONTRIBUTORS
173
120
  - COPYING
174
- - ChangeLog
175
121
  - DESIGN
176
122
  - Documentation/.gitignore
177
- - Documentation/GNUmakefile
178
- - Documentation/unicorn.1.txt
179
- - Documentation/unicorn_rails.1.txt
123
+ - Documentation/unicorn.1
124
+ - Documentation/unicorn_rails.1
180
125
  - FAQ
181
126
  - GIT-VERSION-FILE
182
127
  - GIT-VERSION-GEN
@@ -195,17 +140,20 @@ files:
195
140
  - Sandbox
196
141
  - TODO
197
142
  - TUNING
143
+ - archive/.gitignore
144
+ - archive/slrnpull.conf
198
145
  - bin/unicorn
199
146
  - bin/unicorn_rails
200
147
  - examples/big_app_gc.rb
201
148
  - examples/echo.ru
202
- - examples/git.ru
203
149
  - examples/init.sh
204
150
  - examples/logger_mp_safe.rb
205
151
  - examples/logrotate.conf
206
152
  - examples/nginx.conf
207
153
  - examples/unicorn.conf.minimal.rb
208
154
  - examples/unicorn.conf.rb
155
+ - examples/unicorn.socket
156
+ - examples/unicorn@.service
209
157
  - ext/unicorn_http/CFLAGS
210
158
  - ext/unicorn_http/c_util.h
211
159
  - ext/unicorn_http/common_field_optimization.h
@@ -217,8 +165,6 @@ files:
217
165
  - ext/unicorn_http/unicorn_http.rl
218
166
  - ext/unicorn_http/unicorn_http_common.rl
219
167
  - lib/unicorn.rb
220
- - lib/unicorn/app/exec_cgi.rb
221
- - lib/unicorn/app/inetd.rb
222
168
  - lib/unicorn/app/old_rails.rb
223
169
  - lib/unicorn/app/old_rails/static.rb
224
170
  - lib/unicorn/cgi_wrapper.rb
@@ -231,19 +177,14 @@ files:
231
177
  - lib/unicorn/oob_gc.rb
232
178
  - lib/unicorn/preread_input.rb
233
179
  - lib/unicorn/socket_helper.rb
234
- - lib/unicorn/ssl_client.rb
235
- - lib/unicorn/ssl_configurator.rb
236
- - lib/unicorn/ssl_server.rb
237
180
  - lib/unicorn/stream_input.rb
238
181
  - lib/unicorn/tee_input.rb
239
182
  - lib/unicorn/tmpio.rb
240
183
  - lib/unicorn/util.rb
241
184
  - lib/unicorn/version.rb
242
185
  - lib/unicorn/worker.rb
243
- - local.mk.sample
244
186
  - man/man1/unicorn.1
245
187
  - man/man1/unicorn_rails.1
246
- - script/isolate_for_tests
247
188
  - setup.rb
248
189
  - t/.gitignore
249
190
  - t/GNUmakefile
@@ -256,7 +197,6 @@ files:
256
197
  - t/env.ru
257
198
  - t/fails-rack-lint.ru
258
199
  - t/heartbeat-timeout.ru
259
- - t/hijack.ru
260
200
  - t/listener_names.ru
261
201
  - t/my-tap-lib.sh
262
202
  - t/oob_gc.ru
@@ -264,7 +204,6 @@ files:
264
204
  - t/pid.ru
265
205
  - t/preread_input.ru
266
206
  - t/rack-input-tests.ru
267
- - t/sslgen.sh
268
207
  - t/t0000-http-basic.sh
269
208
  - t/t0001-reload-bad-config.sh
270
209
  - t/t0002-config-conflict.sh
@@ -287,8 +226,6 @@ files:
287
226
  - t/t0014-rewindable-input-true.sh
288
227
  - t/t0014.ru
289
228
  - t/t0015-configurator-internals.sh
290
- - t/t0016-trust-x-forwarded-false.sh
291
- - t/t0017-trust-x-forwarded-true.sh
292
229
  - t/t0018-write-on-close.sh
293
230
  - t/t0019-max_header_len.sh
294
231
  - t/t0020-at_exit-handler.sh
@@ -297,9 +234,9 @@ files:
297
234
  - t/t0100-rack-input-tests.sh
298
235
  - t/t0116-client_body_buffer_size.sh
299
236
  - t/t0116.ru
300
- - t/t0200-rack-hijack.sh
301
237
  - t/t0300-no-default-middleware.sh
302
- - t/t0600-https-server-basic.sh
238
+ - t/t0301-no-default-middleware-ignored-in-config.sh
239
+ - t/t0301.ru
303
240
  - t/t9000-preread-input.sh
304
241
  - t/t9001-oob_gc.sh
305
242
  - t/t9002-oob_gc-path.sh
@@ -308,66 +245,59 @@ files:
308
245
  - test/aggregate.rb
309
246
  - test/benchmark/README
310
247
  - test/benchmark/dd.ru
248
+ - test/benchmark/ddstream.ru
249
+ - test/benchmark/readinput.ru
311
250
  - test/benchmark/stack.ru
251
+ - test/benchmark/uconnect.perl
312
252
  - test/exec/README
313
253
  - test/exec/test_exec.rb
314
254
  - test/test_helper.rb
255
+ - test/unit/test_ccc.rb
315
256
  - test/unit/test_configurator.rb
316
257
  - test/unit/test_droplet.rb
317
258
  - test/unit/test_http_parser.rb
318
259
  - test/unit/test_http_parser_ng.rb
319
- - test/unit/test_http_parser_xftrust.rb
320
260
  - test/unit/test_request.rb
321
261
  - test/unit/test_response.rb
322
262
  - test/unit/test_server.rb
323
263
  - test/unit/test_signals.rb
324
- - test/unit/test_sni_hostnames.rb
325
264
  - test/unit/test_socket_helper.rb
326
265
  - test/unit/test_stream_input.rb
327
266
  - test/unit/test_tee_input.rb
328
267
  - test/unit/test_upload.rb
329
268
  - test/unit/test_util.rb
330
269
  - unicorn.gemspec
331
- homepage: http://unicorn.bogomips.org/
270
+ - unicorn_1
271
+ - unicorn_rails_1
272
+ homepage: https://yhbt.net/unicorn/
332
273
  licenses:
333
- - !binary |-
334
- R1BMdjIr
335
- - !binary |-
336
- UnVieSAxLjg=
274
+ - GPL-2.0+
275
+ - Ruby-1.8
276
+ metadata: {}
337
277
  post_install_message:
338
- rdoc_options:
339
- - -t
340
- - ! 'Unicorn: Rack HTTP server for fast clients and Unix'
341
- - -W
342
- - http://bogomips.org/unicorn.git/tree/%s
278
+ rdoc_options: []
343
279
  require_paths:
344
280
  - lib
345
281
  required_ruby_version: !ruby/object:Gem::Requirement
346
- none: false
347
282
  requirements:
348
- - - ! '>='
283
+ - - ">="
349
284
  - !ruby/object:Gem::Version
350
- version: '0'
285
+ version: 1.9.3
351
286
  required_rubygems_version: !ruby/object:Gem::Requirement
352
- none: false
353
287
  requirements:
354
- - - ! '>='
288
+ - - ">="
355
289
  - !ruby/object:Gem::Version
356
290
  version: '0'
357
291
  requirements: []
358
- rubyforge_project: !binary |-
359
- bW9uZ3JlbA==
360
- rubygems_version: 1.8.23
292
+ rubygems_version: 3.0.2
361
293
  signing_key:
362
- specification_version: 3
294
+ specification_version: 4
363
295
  summary: Rack HTTP server for fast clients and Unix
364
296
  test_files:
365
297
  - test/unit/test_configurator.rb
366
298
  - test/unit/test_http_parser.rb
367
299
  - test/unit/test_http_parser_ng.rb
368
- - test/unit/test_http_parser_xftrust.rb
369
300
  - test/unit/test_request.rb
370
- - test/unit/test_response.rb
371
301
  - test/unit/test_server.rb
372
- - test/unit/test_sni_hostnames.rb
302
+ - test/unit/test_upload.rb
373
303
  - test/unit/test_util.rb
data/.wrongdoc.yml DELETED
@@ -1,10 +0,0 @@
1
- ---
2
- cgit_url: http://bogomips.org/unicorn.git
3
- git_url: git://bogomips.org/unicorn.git
4
- rdoc_url: http://unicorn.bogomips.org/
5
- changelog_start: v1.1.5
6
- merge_html:
7
- unicorn_1: Documentation/unicorn.1.html
8
- unicorn_rails_1: Documentation/unicorn_rails.1.html
9
- public_email: mongrel-unicorn@rubyforge.org
10
- private_email: unicorn@bogomips.org