<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -41,9 +41,6 @@ require 'rack'
 require 'rack/adapter/loader'
 
 module Rack
-  module Handler
-    autoload :Thin, 'rack/handler/thin'
-  end
   module Adapter
     autoload :Rails, 'rack/adapter/rails'
   end</diff>
      <filename>lib/thin.rb</filename>
    </modified>
    <modified>
      <diff>@@ -34,12 +34,13 @@ module Thin
     # Turn into a runnable shell command
     def shellify
       shellified_options = @options.inject([]) do |args, (name, value)|
+        option_name = name.to_s.tr(&quot;_&quot;, &quot;-&quot;)
         case value
         when NilClass,
-             TrueClass then args &lt;&lt; &quot;--#{name}&quot;
+             TrueClass then args &lt;&lt; &quot;--#{option_name}&quot;
         when FalseClass
-        when Array     then value.each { |v| args &lt;&lt; &quot;--#{name}=#{v.inspect}&quot; }
-        else                args &lt;&lt; &quot;--#{name.to_s.tr('_', '-')}=#{value.inspect}&quot;
+        when Array     then value.each { |v| args &lt;&lt; &quot;--#{option_name}=#{v.inspect}&quot; }
+        else                args &lt;&lt; &quot;--#{option_name}=#{value.inspect}&quot;
         end
         args
       end</diff>
      <filename>lib/thin/command.rb</filename>
    </modified>
    <modified>
      <diff>@@ -92,7 +92,7 @@ module Thin
           opts.separator &quot;Cluster options:&quot;                                             
                                                                                       
           opts.on(&quot;-s&quot;, &quot;--servers NUM&quot;, &quot;Number of servers to start&quot;)                  { |num| @options[:servers] = num.to_i }
-          opts.on(&quot;-o&quot;, &quot;--only NUM&quot;, &quot;Send command to only one server of the cluster&quot;) { |only| @options[:only] = only }
+          opts.on(&quot;-o&quot;, &quot;--only NUM&quot;, &quot;Send command to only one server of the cluster&quot;) { |only| @options[:only] = only.to_i }
           opts.on(&quot;-C&quot;, &quot;--config FILE&quot;, &quot;Load options from config file&quot;)               { |file| @options[:config] = file }
           opts.on(      &quot;--all [DIR]&quot;, &quot;Send command to each config files in DIR&quot;)      { |dir| @options[:all] = dir } if Thin.linux?
         end</diff>
      <filename>lib/thin/runner.rb</filename>
    </modified>
    <modified>
      <diff>@@ -5,14 +5,14 @@ module Thin
   
   module VERSION #:nodoc:
     MAJOR    = 1
-    MINOR    = 0
+    MINOR    = 1
     TINY     = 1
     
     STRING   = [MAJOR, MINOR, TINY].join('.')
     
-    CODENAME = &quot;?&quot;.freeze
+    CODENAME = &quot;Super Disco Power Plus&quot;.freeze
     
-    RACK     = [0, 3].freeze # Latest Rack version that was tested
+    RACK     = [0, 1].freeze # Rack protocol version that was tested
   end
   
   NAME    = 'thin'.freeze</diff>
      <filename>lib/thin/version.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,7 +4,7 @@ describe Command do
   before do
     Command.script = 'thin'
     @command = Command.new(:start, :port =&gt; 3000, :daemonize =&gt; true, :log =&gt; 'hi.log',
-                           :require =&gt; %w(rubygems thin))
+                           :require =&gt; %w(rubygems thin), :no_epoll =&gt; true)
   end
   
   it 'should shellify command' do
@@ -17,4 +17,9 @@ describe Command do
     out = @command.shellify
     out.should include('--require=&quot;rubygems&quot;', '--require=&quot;thin&quot;')
   end
+
+  it 'should convert _ to - in option name' do
+    out = @command.shellify
+    out.should include('--no-epoll')
+  end
 end
\ No newline at end of file</diff>
      <filename>spec/command_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,10 +2,11 @@ require File.dirname(__FILE__) + '/spec_helper'
 
 describe Runner do
   it &quot;should parse options&quot; do
-    runner = Runner.new(%w(start --pid test.pid --port 5000))
+    runner = Runner.new(%w(start --pid test.pid --port 5000 -o 3000))
     
     runner.options[:pid].should == 'test.pid'
     runner.options[:port].should == 5000
+    runner.options[:only].should == 3000
   end
   
   it &quot;should parse specified command&quot; do
@@ -164,4 +165,4 @@ describe Runner, &quot;service&quot; do
     
     runner.run!
   end  
-end
\ No newline at end of file
+end</diff>
      <filename>spec/runner_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -63,7 +63,7 @@ module Matchers
   class ValidateWithLint
     def matches?(request)
       @request = request
-      Rack::Lint.new(proc{[200, {'Content-Type' =&gt; 'text/html'}, []]}).call(@request.env)
+      Rack::Lint.new(proc{[200, {'Content-Type' =&gt; 'text/html', 'Content-Length' =&gt; '0'}, []]}).call(@request.env)
       true
     rescue Rack::Lint::LintError =&gt; e
       @message = e.message
@@ -71,7 +71,7 @@ module Matchers
     end
     
     def failure_message(negation=nil)
-      &quot;should#{negation} validate with Rack Lint&quot;
+      &quot;should#{negation} validate with Rack Lint: #{@message}&quot;
     end
 
     def negative_failure_message</diff>
      <filename>spec/spec_helper.rb</filename>
    </modified>
    <modified>
      <diff>@@ -20,8 +20,8 @@ spec = Gem::Specification.new do |s|
 
   s.required_ruby_version = '&gt;= 1.8.5'
   
-  s.add_dependency        'rack',         '&gt;= 0.3.0'
-  s.add_dependency        'eventmachine', '&gt;= 0.12.0'
+  s.add_dependency        'rack',         '&gt;= 0.9.1'
+  s.add_dependency        'eventmachine', '&gt;= 0.12.4'
   unless WIN
     s.add_dependency      'daemons',      '&gt;= 1.0.9'
   end</diff>
      <filename>tasks/gem.rake</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>lib/rack/handler/thin.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>1b7c2e0c1ebee29ce342d3e4a9a333923310c9b5</id>
    </parent>
    <parent>
      <id>c8f4627bf046680abb85665f28ab926e36c931db</id>
    </parent>
  </parents>
  <author>
    <name>raggi</name>
    <email>jftucker@gmail.com</email>
  </author>
  <url>http://github.com/macournoyer/thin/commit/2a331bfbe8a4ae6c332094f333c4308449c11947</url>
  <id>2a331bfbe8a4ae6c332094f333c4308449c11947</id>
  <committed-date>2009-03-16T15:12:15-07:00</committed-date>
  <authored-date>2009-03-16T15:12:15-07:00</authored-date>
  <message>Merge commit 'origin/master' into async_for_rack

* commit 'origin/master':
  Add changelog entry for last commit and bump version number.
  Fix error when using only options
  Regenerate gemspec
  Require EventMachine 0.12.4
  Remove Thin handler, now part of Rack 0.9.1
  regenerate .gemspec
  Make Parser test work w/ new Lint Rack validator, add Content-Length.
  Name version Super Disco Power and bump to 1.1.0. Fix Rack protocol version to 0.1.
  Fix error when passing no_epoll option to a cluster.</message>
  <tree>b4c48dbeef21863bf877105703a069e3bdfcf516</tree>
  <committer>
    <name>raggi</name>
    <email>jftucker@gmail.com</email>
  </committer>
</commit>
