From e7e39dd8868bed091431fe7d9d87a9dd460e7169 Mon Sep 17 00:00:00 2001 From: evanweaver Date: Thu, 1 Nov 2007 06:14:56 +0000 Subject: oops... gems is quite necessary git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@865 19e92222-5c0b-0410-8929-a290d50e31e9 --- Rakefile | 16 +++++++-------- TODO | 2 ++ bin/mongrel_rails | 2 +- lib/mongrel.rb | 2 +- lib/mongrel/gems.rb | 23 ++++++++++++++++++++++ .../lib/mongrel_experimental.rb | 2 +- site/src/news.include | 11 ++++++++++- site/src/news.page | 4 ++-- 8 files changed, 48 insertions(+), 14 deletions(-) create mode 100644 lib/mongrel/gems.rb diff --git a/Rakefile b/Rakefile index f6311b0..0e78e61 100644 --- a/Rakefile +++ b/Rakefile @@ -15,14 +15,14 @@ e = Echoe.new("mongrel") 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 @@ -198,8 +198,8 @@ namespace :site do FileList["**/*.tgz"].each {|tgz| mv tgz, "pkg/tars" } # XXX Hack, because only Luis can package for Win32 right now - # sh "cp ~/Downloads/mongrel-#{e.version}-mswin32.gem pkg/gems/" - # sh "cp ~/Downloads/mongrel_service-0.3.3-mswin32.gem pkg/gems/" + sh "cp ~/Downloads/mongrel-#{e.version}-mswin32.gem pkg/gems/" + sh "cp ~/Downloads/mongrel_service-0.3.3-mswin32.gem pkg/gems/" sh "rm -rf pkg/mongrel*" sh "gem generate_index -d pkg" sh "scp -r CHANGELOG pkg/* rubyforge.org:/var/www/gforge-projects/mongrel/releases/" diff --git a/TODO b/TODO index e138719..3e32555 100644 --- a/TODO +++ b/TODO @@ -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 --git a/bin/mongrel_rails b/bin/mongrel_rails index 4c73897..9d318e5 100644 --- a/bin/mongrel_rails +++ b/bin/mongrel_rails @@ -124,7 +124,7 @@ module Mongrel end config.run - config.log "Mongrel available at #{@address}:#{@port}" + config.log "Mongrel #{Mongrel::Const::MONGREL_VERSION} available at #{@address}:#{@port}" if config.defaults[:daemon] config.write_pid_file diff --git a/lib/mongrel.rb b/lib/mongrel.rb index c5d41fa..e0dcab1 100644 --- a/lib/mongrel.rb +++ b/lib/mongrel.rb @@ -348,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', ">=#{Mongrel::Const::MONGREL_VERSION}" diff --git a/lib/mongrel/gems.rb b/lib/mongrel/gems.rb new file mode 100644 index 0000000..4b34552 --- /dev/null +++ b/lib/mongrel/gems.rb @@ -0,0 +1,23 @@ +module Mongrel + module Gems + class << self + + alias :original_require :require + + def require(library, version = nil) + begin + original_require library + rescue LoadError, RuntimeError => e + unless respond_to? 'gem' + # ActiveSupport breaks 'require' by making it always return a true value + require 'rubygems' + gem library, version if version + retry + end + # Fail without reraising + end + end + + end + end +end \ No newline at end of file diff --git a/projects/mongrel_experimental/lib/mongrel_experimental.rb b/projects/mongrel_experimental/lib/mongrel_experimental.rb index 8577681..1825fe1 100644 --- a/projects/mongrel_experimental/lib/mongrel_experimental.rb +++ b/projects/mongrel_experimental/lib/mongrel_experimental.rb @@ -1,3 +1,3 @@ require 'uri_classifier' -STDERR.puts "** mongrel_experimental loaded" +STDERR.puts "** Mongrel_experimental loaded" diff --git a/site/src/news.include b/site/src/news.include index e85c08b..71c0195 100644 --- a/site/src/news.include +++ b/site/src/news.include @@ -1,7 +1,16 @@
+
Nov-1-2007
+
+
Mongrel 1.1, caffeinated edition
+ +

Mongrel 1.1 is out, with JRuby support. Mongrel_cluster is also updated to 1.0.4.

+ Download + more

+
+
Oct-29-2007
-
Mongrel 1.0.4 released
+
Mongrel 1.0.4, bugfix release

Mongrel 1.0.4 is out. It fixes three bugs that were introduced in 1.0.3.

Download diff --git a/site/src/news.page b/site/src/news.page index 38ceb2f..1636de1 100644 --- a/site/src/news.page +++ b/site/src/news.page @@ -7,9 +7,9 @@ ordering: 2 h1. Latest News -h2. Nov 1: Mongrel 1.1, Java edition +h2. Nov 1: Mongrel 1.1, caffeinated edition -Mongrel 1.1. It adds JRuby support. Mongrel_cluster is also updated to 1.0.4, with fixes for a Capistrano recipe bug. +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. -- cgit v1.2.3-24-ge0c7