<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/mongrel/gems.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -46,9 +46,9 @@ lib/mongrel.rb
 LICENSE
 Manifest
 mongrel-public_cert.pem
+mongrel.gemspec
 README
 setup.rb
-test/jruby_socket.rb
 test/mime.yaml
 test/mongrel.conf
 test/test_cgi_wrapper.rb</diff>
      <filename>Manifest</filename>
    </modified>
    <modified>
      <diff>@@ -1,13 +1,13 @@
 
 require 'rubygems'
-gem 'echoe', '&gt;=2.6.4'
+gem 'echoe', '&gt;=2.7'
 require 'echoe'
 
 e = Echoe.new(&quot;mongrel&quot;) do |p|
   p.summary = &quot;A small fast HTTP library and server that runs Rails, Camping, Nitro and Iowa apps.&quot;
   p.author =&quot;Zed A. Shaw&quot;
-  p.clean_pattern = ['ext/http11/*.{bundle,so,o,obj,pdb,lib,def,exp}', 'ext/http11/Makefile', 'pkg', 'lib/*.bundle', '*.gem', 'site/output', '.config', 'lib/http11.jar', 'ext/http11_java/classes', 'coverage']
-  p.rdoc_pattern = ['README', 'LICENSE', 'COPYING', 'lib/**/*.rb', 'doc/**/*.rdoc']
+  p.clean_pattern = ['ext/http11/*.{bundle,so,o,obj,pdb,lib,def,exp}', 'lib/*.{bundle,so,o,obj,pdb,lib,def,exp}', 'ext/http11/Makefile', 'pkg', 'lib/*.bundle', '*.gem', 'site/output', '.config', 'lib/http11.jar', 'ext/http11_java/classes', 'coverage']
+  p.rdoc_pattern = ['README', 'LICENSE', 'CHANGELOG', 'COPYING', 'lib/**/*.rb', 'doc/**/*.rdoc']
   p.ignore_pattern = /^(pkg|site|projects|doc|log)|CVS|\.log/
   p.ruby_version = '&gt;= 1.8.4'
   p.dependencies = ['gem_plugin &gt;=0.2.3', 'cgi_multipart_eof_fix &gt;=2.4']
@@ -15,14 +15,14 @@ e = Echoe.new(&quot;mongrel&quot;) do |p|
   p.need_tar_gz = false
   p.need_tgz = true
 
-  case RUBY_PLATFORM 
-  when /mswin/
-    p.certificate_chain = ['~/gem_certificates/mongrel-public_cert.pem', 
-      '~/gem_certificates/luislavena-mongrel-public_cert.pem']
-  else
+#  case RUBY_PLATFORM 
+#  when /mswin/
+#    p.certificate_chain = ['~/gem_certificates/mongrel-public_cert.pem', 
+#      '~/gem_certificates/luislavena-mongrel-public_cert.pem']
+#  else
     p.certificate_chain = ['~/p/configuration/gem_certificates/mongrel/mongrel-public_cert.pem', 
       '~/p/configuration/gem_certificates/evan_weaver-mongrel-public_cert.pem']
-  end
+#  end
 
   p.eval = proc do  
     case RUBY_PLATFORM
@@ -72,7 +72,7 @@ end
 #### XXX Hack around RubyGems and Echoe for pre-compiled extensions.
 
 def move_extensions
-  Dir[&quot;ext/**/*.#{Config::CONFIG['DLEXT']}&quot;].each { |file| cp file, &quot;lib/&quot; }
+  Dir[&quot;ext/**/*.#{Config::CONFIG['DLEXT']}&quot;].each { |file| mv file, &quot;lib/&quot; }
 end
 
 def java_classpath_arg 
@@ -118,7 +118,9 @@ end
 def sub_project(project, *targets)
   targets.each do |target|
     Dir.chdir &quot;projects/#{project}&quot; do
-      sh %{rake --trace #{target.to_s} }
+      unless RUBY_PLATFORM =~ /mswin/
+        sh %{rake --trace #{target.to_s} }
+      end
     end
   end
 end
@@ -132,6 +134,7 @@ task :package_all =&gt; [:package] do
   sub_project(&quot;mongrel_upload_progress&quot;, :package)
   sub_project(&quot;mongrel_console&quot;, :package)
   sub_project(&quot;mongrel_cluster&quot;, :package)
+  sub_project(&quot;mongrel_experimental&quot;, :package)
   sub_project(&quot;mongrel_service&quot;, :package) if RUBY_PLATFORM =~ /mswin/
   sh(&quot;rake java package&quot;) unless RUBY_PLATFORM =~ /java/
   # sh(&quot;rake mswin package&quot;) unless RUBY_PLATFORM =~ /mswin/
@@ -151,6 +154,7 @@ task :install =&gt; [:install_requirements] do
   sub_project(&quot;mongrel_upload_progress&quot;, :install)
   sub_project(&quot;mongrel_console&quot;, :install)
   sub_project(&quot;mongrel_cluster&quot;, :install)  
+  sub_project(&quot;mongrel_experimental&quot;, :install)
   sub_project(&quot;mongrel_service&quot;, :install) if RUBY_PLATFORM =~ /mswin/
 end
 
@@ -162,6 +166,7 @@ task :uninstall =&gt; [:clean] do
   sub_project(&quot;mongrel_console&quot;, :uninstall)
   sub_project(&quot;gem_plugin&quot;, :uninstall)
   sub_project(&quot;fastthread&quot;, :uninstall)  
+  sub_project(&quot;mongrel_experimental&quot;, :uninstall)  
   sub_project(&quot;mongrel_service&quot;, :uninstall) if RUBY_PLATFORM =~ /mswin/
 end
 
@@ -174,6 +179,7 @@ task :clean do
   sub_project(&quot;mongrel_upload_progress&quot;, :clean)
   sub_project(&quot;mongrel_console&quot;, :clean)
   sub_project(&quot;mongrel_cluster&quot;, :clean) 
+  sub_project(&quot;mongrel_experimental&quot;, :clean)    
   sub_project(&quot;mongrel_service&quot;, :clean) if RUBY_PLATFORM =~ /mswin/
 end
 
@@ -192,8 +198,8 @@ namespace :site do
     FileList[&quot;**/*.tgz&quot;].each {|tgz| mv tgz, &quot;pkg/tars&quot; }
     
     # XXX Hack, because only Luis can package for Win32 right now
-    # sh &quot;cp ~/Downloads/mongrel-#{e.version}-mswin32.gem pkg/gems/&quot;
-    # sh &quot;cp ~/Downloads/mongrel_service-0.3.3-mswin32.gem pkg/gems/&quot;  
+    sh &quot;cp ~/Downloads/mongrel-#{e.version}-mswin32.gem pkg/gems/&quot;
+    sh &quot;cp ~/Downloads/mongrel_service-0.3.3-mswin32.gem pkg/gems/&quot;  
     sh &quot;rm -rf pkg/mongrel*&quot;
     sh &quot;gem generate_index -d pkg&quot;  
     sh &quot;scp -r CHANGELOG pkg/* rubyforge.org:/var/www/gforge-projects/mongrel/releases/&quot; </diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,5 @@
 
 v1.2. Rewrite and merge mongrel cluster and mongrel_rails into something small and maintainable. Remove gem_plugin entirely.
 
+v1.1.1. See if Java is setting the server version string in the request properly.
+</diff>
      <filename>TODO</filename>
    </modified>
    <modified>
      <diff>@@ -124,7 +124,7 @@ module Mongrel
       end
 
       config.run
-      config.log &quot;Mongrel available at #{@address}:#{@port}&quot;
+      config.log &quot;Mongrel #{Mongrel::Const::MONGREL_VERSION} available at #{@address}:#{@port}&quot;
 
       if config.defaults[:daemon]
         config.write_pid_file</diff>
      <filename>bin/mongrel_rails</filename>
    </modified>
    <modified>
      <diff>@@ -235,13 +235,21 @@ module Mongrel
 
     def configure_socket_options
       case RUBY_PLATFORM
-        when /linux/
-          # 9 is currently TCP_DEFER_ACCEPT
-          $tcp_defer_accept_opts = [Socket::SOL_TCP, 9, 1]
-          $tcp_cork_opts = [Socket::SOL_TCP, 3, 1]
+      when /linux/
+        # 9 is currently TCP_DEFER_ACCEPT
+        $tcp_defer_accept_opts = [Socket::SOL_TCP, 9, 1]
+        $tcp_cork_opts = [Socket::SOL_TCP, 3, 1]
+      when /freebsd(([1-4]\..{1,2})|5\.[0-4])/
+        # Do nothing, just closing a bug when freebsd &lt;= 5.4
+      when /freebsd/
+        # Use the HTTP accept filter if available.
+        # The struct made by pack() is defined in /usr/include/sys/socket.h as accept_filter_arg
+        unless `/sbin/sysctl -nq net.inet.accf.http`.empty?
+          $tcp_defer_accept_opts = [Socket::SOL_SOCKET, Socket::SO_ACCEPTFILTER, ['httpready', nil].pack('a16a240')]
+        end
       end
     end
-
+    
     # Runs the thing.  It returns the thread used so you can &quot;join&quot; it.  You can also
     # access the HttpServer::acceptor attribute to get the thread later.
     def run
@@ -340,4 +348,4 @@ end
 # in regular Mongrel.
 
 $LOAD_PATH.unshift 'projects/mongrel_experimental/lib/'
-Mongrel::Gems.require 'mongrel_experimental', '=1.1'
+Mongrel::Gems.require 'mongrel_experimental', &quot;&gt;=#{Mongrel::Const::MONGREL_VERSION}&quot;</diff>
      <filename>lib/mongrel.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,6 @@
 
 if respond_to?(:namespace)
-  # Cap 2
-  load 'mongrel_cluster/recipes_2' 
-else
-  # Cap 1
-  load 'mongrel_cluster/recipes_1'
+  require 'mongrel_cluster/recipes_2' # Cap 2
+else  
+  require 'mongrel_cluster/recipes_1' # Cap 1
 end</diff>
      <filename>projects/mongrel_cluster/lib/mongrel_cluster/recipes.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,3 @@
 
 require 'uri_classifier'
-STDERR.puts &quot;** mongrel_experimental loaded&quot;
+STDERR.puts &quot;** Mongrel_experimental loaded&quot;</diff>
      <filename>projects/mongrel_experimental/lib/mongrel_experimental.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,7 +1,16 @@
 &lt;dl&gt;
+  &lt;dt&gt;Nov-1-2007&lt;/dt&gt;
+  &lt;dd&gt;
+  &lt;h5&gt;&lt;a href=&quot;{relocatable: news.html}&quot;&gt;Mongrel 1.1, caffeinated edition&lt;/a&gt;&lt;/h5&gt;
+
+  &lt;p&gt;Mongrel 1.1 is out, with JRuby support. Mongrel_cluster is also updated to 1.0.4.&lt;/p&gt;
+  &lt;a href=&quot;http://rubyforge.org/frs/?group_id=1306&quot; title=&quot;Downloads&quot;&gt;Download&lt;/a&gt;
+  &lt;a href=&quot;{relocatable: news.html}&quot;&gt;&lt;img src=&quot;{relocatable: images/li4.gif}&quot; alt=&quot;more&quot; /&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;
+  &lt;/dd&gt;
+  
   &lt;dt&gt;Oct-29-2007&lt;/dt&gt;
   &lt;dd&gt;
-  &lt;h5&gt;&lt;a href=&quot;{relocatable: news.html}&quot;&gt;Mongrel 1.0.4 released&lt;/a&gt;&lt;/h5&gt;
+  &lt;h5&gt;&lt;a href=&quot;{relocatable: news.html}&quot;&gt;Mongrel 1.0.4, bugfix release&lt;/a&gt;&lt;/h5&gt;
 
   &lt;p&gt;Mongrel 1.0.4 is out. It fixes three bugs that were introduced in 1.0.3.&lt;/p&gt;
   &lt;a href=&quot;http://rubyforge.org/frs/?group_id=1306&quot; title=&quot;Downloads&quot;&gt;Download&lt;/a&gt;</diff>
      <filename>site/src/news.include</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,10 @@ ordering: 2
 
 h1. Latest News
 
+h2. Nov 1: Mongrel 1.1, caffeinated edition
+
+Mongrel 1.1 is out, with JRuby support. Mongrel_cluster is also updated to 1.0.4, with fixes for a Capistrano recipe bug. The URIClassifier has been updated; if you still need the old one (you don't), it's available in the mongrel_experimental gem.
+
 h2. Oct 29: Mongrel 1.0.4, spooky.
 
 Mongrel 1.0.4 is out. It fixes three bugs that were introduced in 1.0.3.</diff>
      <filename>site/src/news.page</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>test/jruby_socket.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>a39dea46464237e5a1f70f06c26a0e9c7f06bdd5</id>
    </parent>
    <parent>
      <id>9faeddbd36dd1aab53b10d777c1311a31ab1b423</id>
    </parent>
  </parents>
  <author>
    <name>evanweaver</name>
    <email>evanweaver@19e92222-5c0b-0410-8929-a290d50e31e9</email>
  </author>
  <url>http://github.com/pivotal/mongrel/commit/69370dc0501cccd972145a36b0e0aabfb831be7d</url>
  <id>69370dc0501cccd972145a36b0e0aabfb831be7d</id>
  <committed-date>2007-10-31T23:52:51-07:00</committed-date>
  <authored-date>2007-10-31T23:52:51-07:00</authored-date>
  <message>tag 1.1


git-svn-id: svn://rubyforge.org/var/svn/mongrel/tags/rel_1-1-0@867 19e92222-5c0b-0410-8929-a290d50e31e9</message>
  <tree>2c2ec0d9fd455089185229183863212248697d05</tree>
  <committer>
    <name>evanweaver</name>
    <email>evanweaver@19e92222-5c0b-0410-8929-a290d50e31e9</email>
  </committer>
</commit>
