mongrel 1.2.0.pre2-x86-mswin32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. data/COPYING +55 -0
  2. data/History.txt +68 -0
  3. data/LICENSE +55 -0
  4. data/Manifest.txt +69 -0
  5. data/README.txt +80 -0
  6. data/Rakefile +8 -0
  7. data/TODO +5 -0
  8. data/bin/mongrel_rails +284 -0
  9. data/examples/builder.rb +29 -0
  10. data/examples/camping/README +3 -0
  11. data/examples/camping/blog.rb +294 -0
  12. data/examples/camping/tepee.rb +149 -0
  13. data/examples/httpd.conf +474 -0
  14. data/examples/mime.yaml +3 -0
  15. data/examples/mongrel.conf +9 -0
  16. data/examples/monitrc +57 -0
  17. data/examples/random_thrash.rb +19 -0
  18. data/examples/simpletest.rb +52 -0
  19. data/examples/webrick_compare.rb +20 -0
  20. data/ext/http11/Http11Service.java +13 -0
  21. data/ext/http11/ext_help.h +15 -0
  22. data/ext/http11/extconf.rb +6 -0
  23. data/ext/http11/http11.c +534 -0
  24. data/ext/http11/http11_parser.c +1243 -0
  25. data/ext/http11/http11_parser.h +49 -0
  26. data/ext/http11/http11_parser.java.rl +159 -0
  27. data/ext/http11/http11_parser.rl +153 -0
  28. data/ext/http11/http11_parser_common.rl +54 -0
  29. data/ext/http11/org/jruby/mongrel/Http11.java +241 -0
  30. data/ext/http11/org/jruby/mongrel/Http11Parser.java +486 -0
  31. data/lib/1.8/http11.so +0 -0
  32. data/lib/1.9/http11.so +0 -0
  33. data/lib/mongrel.rb +366 -0
  34. data/lib/mongrel/camping.rb +107 -0
  35. data/lib/mongrel/cgi.rb +181 -0
  36. data/lib/mongrel/command.rb +220 -0
  37. data/lib/mongrel/configurator.rb +388 -0
  38. data/lib/mongrel/const.rb +110 -0
  39. data/lib/mongrel/debug.rb +203 -0
  40. data/lib/mongrel/gems.rb +22 -0
  41. data/lib/mongrel/handlers.rb +468 -0
  42. data/lib/mongrel/header_out.rb +28 -0
  43. data/lib/mongrel/http_request.rb +155 -0
  44. data/lib/mongrel/http_response.rb +166 -0
  45. data/lib/mongrel/init.rb +10 -0
  46. data/lib/mongrel/mime_types.yml +616 -0
  47. data/lib/mongrel/rails.rb +185 -0
  48. data/lib/mongrel/stats.rb +89 -0
  49. data/lib/mongrel/tcphack.rb +18 -0
  50. data/lib/mongrel/uri_classifier.rb +76 -0
  51. data/setup.rb +1585 -0
  52. data/tasks/gem.rake +28 -0
  53. data/tasks/native.rake +24 -0
  54. data/tasks/ragel.rake +20 -0
  55. data/test/mime.yaml +3 -0
  56. data/test/mongrel.conf +1 -0
  57. data/test/test_cgi_wrapper.rb +26 -0
  58. data/test/test_command.rb +86 -0
  59. data/test/test_conditional.rb +107 -0
  60. data/test/test_configurator.rb +87 -0
  61. data/test/test_debug.rb +25 -0
  62. data/test/test_handlers.rb +135 -0
  63. data/test/test_http11.rb +156 -0
  64. data/test/test_redirect_handler.rb +44 -0
  65. data/test/test_request_progress.rb +99 -0
  66. data/test/test_response.rb +127 -0
  67. data/test/test_stats.rb +35 -0
  68. data/test/test_uriclassifier.rb +261 -0
  69. data/test/test_ws.rb +117 -0
  70. data/test/testhelp.rb +71 -0
  71. data/tools/trickletest.rb +45 -0
  72. metadata +197 -0
@@ -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,197 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mongrel
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.0.pre2
5
+ platform: x86-mswin32
6
+ authors:
7
+ - Zed A. Shaw
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2010-03-18 00:00:00 -03:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: gem_plugin
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: 0.2.3
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: rubyforge
27
+ type: :development
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 2.0.3
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: gemcutter
37
+ type: :development
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 0.3.0
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: rake-compiler
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: 0.7.0
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: hoe
57
+ type: :development
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: 2.5.0
64
+ version:
65
+ description: |-
66
+ Mongrel is a small library that provides a very fast HTTP 1.1 server for Ruby web applications. It is not particular to any framework, and is intended to be just enough to get a web application running behind a more complete and robust web server.
67
+
68
+ What makes Mongrel so fast is the careful use of an Ragel extension to provide fast, accurate HTTP 1.1 protocol parsing. This makes the server scream without too many portability issues.
69
+
70
+ See http://mongrel.rubyforge.org for more information.
71
+ email:
72
+ - mongrel-users@rubyforge.org
73
+ executables:
74
+ - mongrel_rails
75
+ extensions: []
76
+
77
+ extra_rdoc_files:
78
+ - History.txt
79
+ - Manifest.txt
80
+ - README.txt
81
+ - LICENSE
82
+ files:
83
+ - COPYING
84
+ - History.txt
85
+ - LICENSE
86
+ - Manifest.txt
87
+ - README.txt
88
+ - Rakefile
89
+ - TODO
90
+ - bin/mongrel_rails
91
+ - examples/builder.rb
92
+ - examples/camping/README
93
+ - examples/camping/blog.rb
94
+ - examples/camping/tepee.rb
95
+ - examples/httpd.conf
96
+ - examples/mime.yaml
97
+ - examples/mongrel.conf
98
+ - examples/monitrc
99
+ - examples/random_thrash.rb
100
+ - examples/simpletest.rb
101
+ - examples/webrick_compare.rb
102
+ - ext/http11/ext_help.h
103
+ - ext/http11/extconf.rb
104
+ - ext/http11/http11.c
105
+ - ext/http11/http11_parser.c
106
+ - ext/http11/http11_parser.h
107
+ - ext/http11/http11_parser.java.rl
108
+ - ext/http11/http11_parser.rl
109
+ - ext/http11/http11_parser_common.rl
110
+ - ext/http11/Http11Service.java
111
+ - ext/http11/org/jruby/mongrel/Http11.java
112
+ - ext/http11/org/jruby/mongrel/Http11Parser.java
113
+ - lib/mongrel.rb
114
+ - lib/mongrel/camping.rb
115
+ - lib/mongrel/cgi.rb
116
+ - lib/mongrel/command.rb
117
+ - lib/mongrel/configurator.rb
118
+ - lib/mongrel/const.rb
119
+ - lib/mongrel/debug.rb
120
+ - lib/mongrel/gems.rb
121
+ - lib/mongrel/handlers.rb
122
+ - lib/mongrel/header_out.rb
123
+ - lib/mongrel/http_request.rb
124
+ - lib/mongrel/http_response.rb
125
+ - lib/mongrel/init.rb
126
+ - lib/mongrel/mime_types.yml
127
+ - lib/mongrel/rails.rb
128
+ - lib/mongrel/stats.rb
129
+ - lib/mongrel/tcphack.rb
130
+ - lib/mongrel/uri_classifier.rb
131
+ - setup.rb
132
+ - tasks/gem.rake
133
+ - tasks/native.rake
134
+ - tasks/ragel.rake
135
+ - test/mime.yaml
136
+ - test/mongrel.conf
137
+ - test/test_cgi_wrapper.rb
138
+ - test/test_command.rb
139
+ - test/test_conditional.rb
140
+ - test/test_configurator.rb
141
+ - test/test_debug.rb
142
+ - test/test_handlers.rb
143
+ - test/test_http11.rb
144
+ - test/test_redirect_handler.rb
145
+ - test/test_request_progress.rb
146
+ - test/test_response.rb
147
+ - test/test_stats.rb
148
+ - test/test_uriclassifier.rb
149
+ - test/test_ws.rb
150
+ - test/testhelp.rb
151
+ - tools/trickletest.rb
152
+ - lib/1.8/http11.so
153
+ - lib/1.9/http11.so
154
+ has_rdoc: true
155
+ homepage: http://mongrel.rubyforge.org/
156
+ licenses: []
157
+
158
+ post_install_message:
159
+ rdoc_options:
160
+ - --main
161
+ - README.txt
162
+ require_paths:
163
+ - lib
164
+ - ext
165
+ required_ruby_version: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - ">="
168
+ - !ruby/object:Gem::Version
169
+ version: 1.8.6
170
+ version:
171
+ required_rubygems_version: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ">"
174
+ - !ruby/object:Gem::Version
175
+ version: 1.3.1
176
+ version:
177
+ requirements: []
178
+
179
+ rubyforge_project: mongrel
180
+ rubygems_version: 1.3.5
181
+ signing_key:
182
+ specification_version: 3
183
+ summary: Mongrel is a small library that provides a very fast HTTP 1.1 server for Ruby web applications
184
+ test_files:
185
+ - test/test_http11.rb
186
+ - test/test_uriclassifier.rb
187
+ - test/test_response.rb
188
+ - test/test_configurator.rb
189
+ - test/test_conditional.rb
190
+ - test/test_handlers.rb
191
+ - test/test_redirect_handler.rb
192
+ - test/test_debug.rb
193
+ - test/test_request_progress.rb
194
+ - test/test_stats.rb
195
+ - test/test_command.rb
196
+ - test/test_ws.rb
197
+ - test/test_cgi_wrapper.rb