mongrel 0.3.3 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +1 -1
- data/Rakefile +20 -2
- data/bin/mongrel_rails +7 -53
- data/doc/rdoc/classes/Mongrel.html +1 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.html +300 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000047.html +23 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000048.html +27 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000049.html +22 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000050.html +26 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000051.html +18 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000052.html +18 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000053.html +18 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000054.html +19 -0
- data/doc/rdoc/classes/Mongrel/Const.html +1 -1
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000022.html +6 -6
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000023.html +28 -28
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000024.html +26 -26
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000025.html +17 -17
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000026.html +24 -24
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000027.html +4 -4
- data/doc/rdoc/classes/Mongrel/Error404Handler.html +10 -10
- data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000047.html → M000055.html} +4 -4
- data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000048.html → M000056.html} +4 -4
- data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000033.html +4 -4
- data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000034.html +7 -7
- data/doc/rdoc/classes/Mongrel/HttpHandler.src/M000039.html +3 -3
- data/doc/rdoc/classes/Mongrel/HttpRequest.html +5 -5
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000049.html → M000057.html} +17 -17
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000040.html +7 -7
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000041.html +6 -6
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000042.html +5 -5
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000043.html +5 -4
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000044.html +6 -6
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000045.html +6 -7
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000046.html +6 -6
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000028.html +24 -24
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000029.html +48 -48
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000030.html +9 -9
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000031.html +4 -4
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000032.html +4 -4
- data/doc/rdoc/created.rid +1 -1
- data/doc/rdoc/files/README.html +2 -2
- data/doc/rdoc/files/lib/mongrel_rb.html +2 -1
- data/doc/rdoc/fr_class_index.html +1 -0
- data/doc/rdoc/fr_method_index.html +17 -9
- data/lib/mongrel.rb +89 -3
- data/lib/mongrel/command.rb +1 -1
- data/tools/rakehelp.rb +17 -9
- metadata +17 -7
@@ -10,9 +10,9 @@
|
|
10
10
|
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line
|
14
|
-
|
15
|
-
|
16
|
-
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 415</span>
|
14
|
+
415: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">register</span>(<span class="ruby-identifier">uri</span>, <span class="ruby-identifier">handler</span>)
|
15
|
+
416: <span class="ruby-ivar">@classifier</span>.<span class="ruby-identifier">register</span>(<span class="ruby-identifier">uri</span>, <span class="ruby-identifier">handler</span>)
|
16
|
+
417: <span class="ruby-keyword kw">end</span></pre>
|
17
17
|
</body>
|
18
18
|
</html>
|
@@ -10,9 +10,9 @@
|
|
10
10
|
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line
|
14
|
-
|
15
|
-
|
16
|
-
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 421</span>
|
14
|
+
421: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">unregister</span>(<span class="ruby-identifier">uri</span>)
|
15
|
+
422: <span class="ruby-ivar">@classifier</span>.<span class="ruby-identifier">unregister</span>(<span class="ruby-identifier">uri</span>)
|
16
|
+
423: <span class="ruby-keyword kw">end</span></pre>
|
17
17
|
</body>
|
18
18
|
</html>
|
data/doc/rdoc/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Thu Feb 16 02:01:03 EST 2006
|
data/doc/rdoc/files/README.html
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Wed Feb 15 08:10:57 EST 2006</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -158,7 +158,7 @@ example:
|
|
158
158
|
|
159
159
|
h = Mongrel::HttpServer.new("0.0.0.0", "3000")
|
160
160
|
h.register("/test", SimpleHandler.new)
|
161
|
-
h.register("/files", DirHandler.new("."))
|
161
|
+
h.register("/files", Mongrel::DirHandler.new("."))
|
162
162
|
h.run.join
|
163
163
|
</pre>
|
164
164
|
<p>
|
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Thu Feb 16 01:05:45 EST 2006</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -78,6 +78,7 @@
|
|
78
78
|
thread
|
79
79
|
stringio
|
80
80
|
timeout
|
81
|
+
cgi
|
81
82
|
</div>
|
82
83
|
</div>
|
83
84
|
|
@@ -22,6 +22,7 @@
|
|
22
22
|
<div id="index-entries">
|
23
23
|
<a href="classes/FactoryError.html">FactoryError</a><br />
|
24
24
|
<a href="classes/Mongrel.html">Mongrel</a><br />
|
25
|
+
<a href="classes/Mongrel/CGIWrapper.html">Mongrel::CGIWrapper</a><br />
|
25
26
|
<a href="classes/Mongrel/Const.html">Mongrel::Const</a><br />
|
26
27
|
<a href="classes/Mongrel/DirHandler.html">Mongrel::DirHandler</a><br />
|
27
28
|
<a href="classes/Mongrel/Error404Handler.html">Mongrel::Error404Handler</a><br />
|
@@ -22,10 +22,12 @@
|
|
22
22
|
<div id="index-entries">
|
23
23
|
<a href="classes/Mongrel/HeaderOut.html#M000034">[]= (Mongrel::HeaderOut)</a><br />
|
24
24
|
<a href="classes/Mongrel/DirHandler.html#M000027">add_mime_type (Mongrel::DirHandler)</a><br />
|
25
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000051">args (Mongrel::CGIWrapper)</a><br />
|
25
26
|
<a href="classes/Mongrel/DirHandler.html#M000023">can_serve (Mongrel::DirHandler)</a><br />
|
26
27
|
<a href="classes/PluginFactory.html#M000009">create (PluginFactory)</a><br />
|
27
28
|
<a href="classes/PluginFactory.html#M000008">derivativeClasses (PluginFactory)</a><br />
|
28
29
|
<a href="classes/PluginFactory.html#M000005">derivatives (PluginFactory)</a><br />
|
30
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000052">env_table (Mongrel::CGIWrapper)</a><br />
|
29
31
|
<a href="classes/Mongrel/HttpParser.html#M000019">error? (Mongrel::HttpParser)</a><br />
|
30
32
|
<a href="classes/Mongrel/HttpParser.html#M000018">execute (Mongrel::HttpParser)</a><br />
|
31
33
|
<a href="classes/PluginFactory.html#M000004">extend_object (PluginFactory)</a><br />
|
@@ -35,27 +37,30 @@
|
|
35
37
|
<a href="classes/Mongrel/HttpParser.html#M000020">finished? (Mongrel::HttpParser)</a><br />
|
36
38
|
<a href="classes/PluginFactory.html#M000012">getModuleName (PluginFactory)</a><br />
|
37
39
|
<a href="classes/PluginFactory.html#M000010">getSubclass (PluginFactory)</a><br />
|
40
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000048">header (Mongrel::CGIWrapper)</a><br />
|
38
41
|
<a href="classes/PluginFactory.html#M000003">included (PluginFactory)</a><br />
|
39
42
|
<a href="classes/PluginFactory.html#M000007">inherited (PluginFactory)</a><br />
|
40
43
|
<a href="classes/PluginFactory.html#M000011">loadDerivative (PluginFactory)</a><br />
|
41
44
|
<a href="classes/PluginFactory.html#M000002">log (PluginFactory)</a><br />
|
42
45
|
<a href="classes/PluginFactory.html#M000014">makeRequirePath (PluginFactory)</a><br />
|
43
|
-
<a href="classes/Mongrel/HttpParser.html#M000015">new (Mongrel::HttpParser)</a><br />
|
44
46
|
<a href="classes/Mongrel/DirHandler.html#M000022">new (Mongrel::DirHandler)</a><br />
|
47
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000047">new (Mongrel::CGIWrapper)</a><br />
|
48
|
+
<a href="classes/Mongrel/Error404Handler.html#M000055">new (Mongrel::Error404Handler)</a><br />
|
49
|
+
<a href="classes/Mongrel/HttpParser.html#M000015">new (Mongrel::HttpParser)</a><br />
|
50
|
+
<a href="classes/Mongrel/HttpServer.html#M000028">new (Mongrel::HttpServer)</a><br />
|
51
|
+
<a href="classes/Mongrel/HeaderOut.html#M000033">new (Mongrel::HeaderOut)</a><br />
|
45
52
|
<a href="classes/Mongrel/HttpResponse.html#M000040">new (Mongrel::HttpResponse)</a><br />
|
46
53
|
<a href="classes/Mongrel/URIClassifier.html#M000035">new (Mongrel::URIClassifier)</a><br />
|
47
|
-
<a href="classes/Mongrel/HeaderOut.html#M000033">new (Mongrel::HeaderOut)</a><br />
|
48
|
-
<a href="classes/Mongrel/Error404Handler.html#M000047">new (Mongrel::Error404Handler)</a><br />
|
49
54
|
<a href="classes/FactoryError.html#M000001">new (FactoryError)</a><br />
|
50
|
-
<a href="classes/Mongrel/
|
51
|
-
<a href="classes/Mongrel/HttpRequest.html#M000049">new (Mongrel::HttpRequest)</a><br />
|
55
|
+
<a href="classes/Mongrel/HttpRequest.html#M000057">new (Mongrel::HttpRequest)</a><br />
|
52
56
|
<a href="classes/Mongrel/HttpParser.html#M000021">nread (Mongrel::HttpParser)</a><br />
|
53
|
-
<a href="classes/Mongrel/
|
54
|
-
<a href="classes/Mongrel/HttpHandler.html#M000039">process (Mongrel::HttpHandler)</a><br />
|
57
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000049">out (Mongrel::CGIWrapper)</a><br />
|
55
58
|
<a href="classes/Mongrel/DirHandler.html#M000026">process (Mongrel::DirHandler)</a><br />
|
59
|
+
<a href="classes/Mongrel/Error404Handler.html#M000056">process (Mongrel::Error404Handler)</a><br />
|
60
|
+
<a href="classes/Mongrel/HttpHandler.html#M000039">process (Mongrel::HttpHandler)</a><br />
|
56
61
|
<a href="classes/Mongrel/HttpServer.html#M000029">process_client (Mongrel::HttpServer)</a><br />
|
57
|
-
<a href="classes/Mongrel/HttpServer.html#M000031">register (Mongrel::HttpServer)</a><br />
|
58
62
|
<a href="classes/Mongrel/URIClassifier.html#M000036">register (Mongrel::URIClassifier)</a><br />
|
63
|
+
<a href="classes/Mongrel/HttpServer.html#M000031">register (Mongrel::HttpServer)</a><br />
|
59
64
|
<a href="classes/PluginFactory.html#M000013">requireDerivative (PluginFactory)</a><br />
|
60
65
|
<a href="classes/Mongrel/HttpResponse.html#M000042">reset (Mongrel::HttpResponse)</a><br />
|
61
66
|
<a href="classes/Mongrel/HttpParser.html#M000016">reset (Mongrel::HttpParser)</a><br />
|
@@ -67,8 +72,11 @@
|
|
67
72
|
<a href="classes/Mongrel/HttpResponse.html#M000044">send_header (Mongrel::HttpResponse)</a><br />
|
68
73
|
<a href="classes/Mongrel/HttpResponse.html#M000043">send_status (Mongrel::HttpResponse)</a><br />
|
69
74
|
<a href="classes/Mongrel/HttpResponse.html#M000041">start (Mongrel::HttpResponse)</a><br />
|
70
|
-
<a href="classes/Mongrel/
|
75
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000050">status (Mongrel::CGIWrapper)</a><br />
|
76
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000053">stdinput (Mongrel::CGIWrapper)</a><br />
|
77
|
+
<a href="classes/Mongrel/CGIWrapper.html#M000054">stdoutput (Mongrel::CGIWrapper)</a><br />
|
71
78
|
<a href="classes/Mongrel/URIClassifier.html#M000037">unregister (Mongrel::URIClassifier)</a><br />
|
79
|
+
<a href="classes/Mongrel/HttpServer.html#M000032">unregister (Mongrel::HttpServer)</a><br />
|
72
80
|
</div>
|
73
81
|
</div>
|
74
82
|
</body>
|
data/lib/mongrel.rb
CHANGED
@@ -3,6 +3,8 @@ require 'http11'
|
|
3
3
|
require 'thread'
|
4
4
|
require 'stringio'
|
5
5
|
require 'timeout'
|
6
|
+
require 'cgi'
|
7
|
+
|
6
8
|
|
7
9
|
# Mongrel module containing all of the classes (include C extensions) for running
|
8
10
|
# a Mongrel web server. It contains a minimalist HTTP server with just enough
|
@@ -110,7 +112,7 @@ module Mongrel
|
|
110
112
|
SERVER_SOFTWARE='SERVER_SOFTWARE'
|
111
113
|
|
112
114
|
# Current Mongrel version (used for SERVER_SOFTWARE and other response headers).
|
113
|
-
MONGREL_VERSION='Mongrel 0.
|
115
|
+
MONGREL_VERSION='Mongrel 0.3.4'
|
114
116
|
|
115
117
|
# The standard empty 404 response for bad requests. Use Error4040Handler for custom stuff.
|
116
118
|
ERROR_404_RESPONSE="HTTP/1.1 404 Not Found\r\nConnection: close\r\nServer: #{MONGREL_VERSION}\r\n\r\nNOT FOUND"
|
@@ -243,7 +245,8 @@ module Mongrel
|
|
243
245
|
end
|
244
246
|
|
245
247
|
def send_status
|
246
|
-
|
248
|
+
status = "HTTP/1.1 #{@status} #{HTTP_STATUS_CODES[@status]}\r\nContent-Length: #{@body.length}\r\nConnection: close\r\n"
|
249
|
+
@socket.write(status)
|
247
250
|
end
|
248
251
|
|
249
252
|
def send_header
|
@@ -254,7 +257,6 @@ module Mongrel
|
|
254
257
|
|
255
258
|
def send_body
|
256
259
|
@body.rewind
|
257
|
-
|
258
260
|
# connection: close is also added to ensure that the client does not pipeline.
|
259
261
|
@socket.write(@body.read)
|
260
262
|
end
|
@@ -590,4 +592,88 @@ module Mongrel
|
|
590
592
|
end
|
591
593
|
|
592
594
|
|
595
|
+
# The beginning of a complete wrapper around Mongrel's internal HTTP processing
|
596
|
+
# system but maintaining the original Ruby CGI module. Use this only as a crutch
|
597
|
+
# to get existing CGI based systems working. It should handle everything, but please
|
598
|
+
# notify me if you see special warnings. This work is still very alpha so I need
|
599
|
+
# testers to help work out the various corner cases.
|
600
|
+
|
601
|
+
class CGIWrapper < ::CGI
|
602
|
+
public :env_table
|
603
|
+
attr_reader :options
|
604
|
+
|
605
|
+
def initialize(request, response, *args)
|
606
|
+
@request = request
|
607
|
+
@response = response
|
608
|
+
@args = *args
|
609
|
+
@input = StringIO.new(request.body)
|
610
|
+
@options = {}
|
611
|
+
super(*args)
|
612
|
+
end
|
613
|
+
|
614
|
+
# The header is typically called to send back the header. In our case we
|
615
|
+
# collect it into a hash for later usage. Options passed to this function
|
616
|
+
# are capitalized properly (unlike CGI), sanitized and then just stored.
|
617
|
+
def header(options = "text/html")
|
618
|
+
if options.class == Hash
|
619
|
+
# passing in a header so need to keep the status around and other options
|
620
|
+
@options = @options.merge(options)
|
621
|
+
else
|
622
|
+
@options["Content-Type"] = options
|
623
|
+
end
|
624
|
+
|
625
|
+
# doing this fakes out the cgi library to think the headers are empty
|
626
|
+
# we then do the real headers in the out function call later
|
627
|
+
""
|
628
|
+
end
|
629
|
+
|
630
|
+
# The dumb thing is people can call header or this or both and in any order.
|
631
|
+
# So, we just reuse header and then finalize the HttpResponse the right way.
|
632
|
+
# Status is taken from the various options and converted to what Mongrel needs
|
633
|
+
# via the CGIWrapper.status function.
|
634
|
+
def out(options = "text/html")
|
635
|
+
header(options)
|
636
|
+
@response.start status do |head, out|
|
637
|
+
@options.each {|k,v| head[k.capitalize] = v}
|
638
|
+
out.write(yield || "")
|
639
|
+
end
|
640
|
+
end
|
641
|
+
|
642
|
+
# Computes the status once, but lazily so that people who call header twice
|
643
|
+
# don't get penalized. Because CGI insists on including the options status
|
644
|
+
# message in the status we have to do a bit of parsing.
|
645
|
+
def status
|
646
|
+
if not @status
|
647
|
+
@status = @options["Status"] || @options["status"]
|
648
|
+
|
649
|
+
if @status
|
650
|
+
@status[0 ... @status.index(' ')] || "200"
|
651
|
+
else
|
652
|
+
@status = "200"
|
653
|
+
end
|
654
|
+
end
|
655
|
+
end
|
656
|
+
|
657
|
+
# Used to wrap the normal args variable used inside CGI.
|
658
|
+
def args
|
659
|
+
@args
|
660
|
+
end
|
661
|
+
|
662
|
+
# Used to wrap the normal env_table variable used inside CGI.
|
663
|
+
def env_table
|
664
|
+
@request.params
|
665
|
+
end
|
666
|
+
|
667
|
+
# Used to wrap the normal stdinput variable used inside CGI.
|
668
|
+
def stdinput
|
669
|
+
@input
|
670
|
+
end
|
671
|
+
|
672
|
+
# The stdoutput should be completely bypassed but we'll drop a warning just in case
|
673
|
+
def stdoutput
|
674
|
+
STDERR.puts "WARNING: Your program is doing something not expected. Please tell Zed that stdoutput was used and what software you are running. Thanks."
|
675
|
+
@response.body
|
676
|
+
end
|
677
|
+
end
|
678
|
+
|
593
679
|
end
|
data/lib/mongrel/command.rb
CHANGED
data/tools/rakehelp.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
def make(makedir)
|
3
3
|
Dir.chdir(makedir) do
|
4
|
-
sh 'make'
|
4
|
+
sh(PLATFORM =~ /win32/ ? 'nmake' : 'make')
|
5
5
|
end
|
6
6
|
end
|
7
7
|
|
@@ -64,14 +64,14 @@ def setup_extension(dir, extension)
|
|
64
64
|
end
|
65
65
|
|
66
66
|
|
67
|
-
def
|
67
|
+
def base_gem_spec(pkg_name, pkg_version, author, summary, executables, test_file)
|
68
68
|
pkg_version = pkg_version
|
69
69
|
pkg_name = pkg_name
|
70
70
|
pkg_file_name = "#{pkg_name}-#{pkg_version}"
|
71
|
-
|
72
|
-
spec = Gem::Specification.new do |s|
|
71
|
+
Gem::Specification.new do |s|
|
73
72
|
s.name = pkg_name
|
74
73
|
s.version = pkg_version
|
74
|
+
s.required_ruby_version = '>= 1.8.3'
|
75
75
|
s.platform = Gem::Platform::RUBY
|
76
76
|
s.author = author
|
77
77
|
s.summary = summary
|
@@ -90,14 +90,22 @@ def setup_gem(pkg_name, pkg_version, author, summary, executables, test_file)
|
|
90
90
|
|
91
91
|
s.executables = executables
|
92
92
|
s.bindir = "bin"
|
93
|
-
|
94
|
-
if block_given?
|
95
|
-
yield s
|
96
|
-
end
|
97
93
|
end
|
98
|
-
|
94
|
+
end
|
95
|
+
|
96
|
+
def setup_gem(pkg_name, pkg_version, author, summary, executables, test_file)
|
97
|
+
spec = base_gem_spec(pkg_name, pkg_version, author, summary, executables, test_file)
|
98
|
+
yield spec if block_given?
|
99
|
+
|
99
100
|
Rake::GemPackageTask.new(spec) do |p|
|
100
101
|
p.gem_spec = spec
|
101
102
|
p.need_tar = true
|
102
103
|
end
|
103
104
|
end
|
105
|
+
|
106
|
+
def setup_win32_gem(pkg_name, pkg_version, author, summary, executables, test_file)
|
107
|
+
spec = base_gem_spec(pkg_name, pkg_version, author, summary, executables, test_file)
|
108
|
+
yield spec if block_given?
|
109
|
+
|
110
|
+
Gem::Builder.new(spec).build
|
111
|
+
end
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
|
|
3
3
|
specification_version: 1
|
4
4
|
name: mongrel
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.3.
|
7
|
-
date: 2006-02-
|
6
|
+
version: 0.3.4
|
7
|
+
date: 2006-02-16 00:00:00 -05:00
|
8
8
|
summary: A small fast HTTP library and server that runs Rails, Camping, and Nitro apps.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -18,9 +18,9 @@ bindir: bin
|
|
18
18
|
has_rdoc: true
|
19
19
|
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
20
|
requirements:
|
21
|
-
- - "
|
21
|
+
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version:
|
23
|
+
version: 1.8.3
|
24
24
|
version:
|
25
25
|
platform: ruby
|
26
26
|
signing_key:
|
@@ -50,6 +50,8 @@ files:
|
|
50
50
|
- doc/rdoc/classes/PluginFactory.html
|
51
51
|
- doc/rdoc/classes/PluginFactory.src
|
52
52
|
- doc/rdoc/classes/FactoryError.src/M000001.html
|
53
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.html
|
54
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src
|
53
55
|
- doc/rdoc/classes/Mongrel/Const.html
|
54
56
|
- doc/rdoc/classes/Mongrel/DirHandler.html
|
55
57
|
- doc/rdoc/classes/Mongrel/DirHandler.src
|
@@ -69,14 +71,22 @@ files:
|
|
69
71
|
- doc/rdoc/classes/Mongrel/HttpServer.src
|
70
72
|
- doc/rdoc/classes/Mongrel/URIClassifier.html
|
71
73
|
- doc/rdoc/classes/Mongrel/URIClassifier.src
|
74
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000047.html
|
75
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000048.html
|
76
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000049.html
|
77
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000050.html
|
78
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000051.html
|
79
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000052.html
|
80
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000053.html
|
81
|
+
- doc/rdoc/classes/Mongrel/CGIWrapper.src/M000054.html
|
72
82
|
- doc/rdoc/classes/Mongrel/DirHandler.src/M000022.html
|
73
83
|
- doc/rdoc/classes/Mongrel/DirHandler.src/M000023.html
|
74
84
|
- doc/rdoc/classes/Mongrel/DirHandler.src/M000024.html
|
75
85
|
- doc/rdoc/classes/Mongrel/DirHandler.src/M000025.html
|
76
86
|
- doc/rdoc/classes/Mongrel/DirHandler.src/M000026.html
|
77
87
|
- doc/rdoc/classes/Mongrel/DirHandler.src/M000027.html
|
78
|
-
- doc/rdoc/classes/Mongrel/Error404Handler.src/
|
79
|
-
- doc/rdoc/classes/Mongrel/Error404Handler.src/
|
88
|
+
- doc/rdoc/classes/Mongrel/Error404Handler.src/M000055.html
|
89
|
+
- doc/rdoc/classes/Mongrel/Error404Handler.src/M000056.html
|
80
90
|
- doc/rdoc/classes/Mongrel/HeaderOut.src/M000033.html
|
81
91
|
- doc/rdoc/classes/Mongrel/HeaderOut.src/M000034.html
|
82
92
|
- doc/rdoc/classes/Mongrel/HttpHandler.src/M000039.html
|
@@ -87,7 +97,7 @@ files:
|
|
87
97
|
- doc/rdoc/classes/Mongrel/HttpParser.src/M000019.html
|
88
98
|
- doc/rdoc/classes/Mongrel/HttpParser.src/M000020.html
|
89
99
|
- doc/rdoc/classes/Mongrel/HttpParser.src/M000021.html
|
90
|
-
- doc/rdoc/classes/Mongrel/HttpRequest.src/
|
100
|
+
- doc/rdoc/classes/Mongrel/HttpRequest.src/M000057.html
|
91
101
|
- doc/rdoc/classes/Mongrel/HttpResponse.src/M000040.html
|
92
102
|
- doc/rdoc/classes/Mongrel/HttpResponse.src/M000041.html
|
93
103
|
- doc/rdoc/classes/Mongrel/HttpResponse.src/M000042.html
|