<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,17 @@
+== 0.9.12
+
+* Allow framework auto-detection to be disabled. Set
+  `Warbler.framework_detection = false` at the top of config/warble.rb
+  or uncomment the line from a newly generated config.
+* Add configuration option to set manifest file (thanks Tommy McGuire)
+* Mitigate RubyGems 1.3 compatibility issue (thanks Jens Norrgrann)
+* Add experimental `war:exploded` task. This allows you to deploy your
+  application in an exploded mode, thus allowing continual development
+  without re-warring and re-deploying. Feedback is appreciated if you
+  try this feature; it may not work in all application servers and for
+  applications other than Rails.
+* Upgrade to JRuby 1.1.5 and JRuby-Rack 0.9.3
+
 == 0.9.11
 
 * Auto-detect Rails and Merb and configure appropriately
@@ -74,4 +88,4 @@
   minimal, flexible, ruby-like way to bundle up all of your application files for deployment to a
   Java application server.
 * Bundled versions: goldspike-1.4-SNAPSHOT and jruby-complete-1.0.1
-* Works as both a gem (rake application) or a plugin
\ No newline at end of file
+* Works as both a gem (rake application) or a plugin</diff>
      <filename>History.txt</filename>
    </modified>
    <modified>
      <diff>@@ -56,7 +56,7 @@ The following items are set up for you:
 
 === Merb applications
 
-Merb applications are detected automatically, and the merb gem and its
+Merb applications are detected automatically, and the merb-core gem and its
 dependencies are packaged.
 
 === Other Rack-based applications
@@ -69,8 +69,12 @@ config/warble.rb.
 See http://github.com/nicksieger/jruby-rack/tree/master/examples for examples
 of how to configure Warbler to package Camping and Sinatra apps.
 
-=== Configuration auto-detect TODOs
+=== Configuration auto-detect notes
 
+* If you don't have database access in the environment where you package your
+  application, you may wish to set `Warbler.framework_detection` to false at
+  the top of config.rb. In this case you may need to specify additional
+  details such as booter, gems and other settings.
 * A more accurate way of detecting a Merb application's gems is needed. Until
   then, you will have to specify them in config/warble.rb. See below.
 * Is it possible to more generally detect what gems an application uses?</diff>
      <filename>README.txt</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,6 @@
+# Disable automatic framework detection by uncommenting/setting to false
+# Warbler.framework_detection = false
+
 # Warbler web application assembly configuration file
 Warbler::Config.new do |config|
   # Temporary directory where the application is staged</diff>
      <filename>generators/warble/templates/warble.rb</filename>
    </modified>
    <modified>
      <diff>@@ -147,12 +147,12 @@ module Warbler
     end
 
     def auto_detect_frameworks
-      auto_detect_rails || auto_detect_merb || auto_detect_rackup
+      !Warbler.framework_detection || auto_detect_rails || auto_detect_merb || auto_detect_rackup
     end
 
     def auto_detect_rails
       return false unless task = Warbler.project_application.lookup(&quot;environment&quot;)
-      task.invoke
+      task.invoke rescue nil
       return false unless defined?(::Rails)
       @dirs &lt;&lt; &quot;tmp&quot; if File.directory?(&quot;tmp&quot;)
       @webxml.booter = :rails
@@ -170,10 +170,10 @@ module Warbler
 
     def auto_detect_merb
       return false unless task = Warbler.project_application.lookup(&quot;merb_env&quot;)
-      task.invoke
+      task.invoke rescue nil
       return false unless defined?(::Merb)
       @webxml.booter = :merb
-      @gems[&quot;merb&quot;] = Merb::VERSION
+      @gems[&quot;merb-core&quot;] = Merb::VERSION # TODO: what should this be?
       true
     end
 </diff>
      <filename>lib/warbler/config.rb</filename>
    </modified>
    <modified>
      <diff>@@ -13,9 +13,12 @@ module Warbler
     def project_application
       @project_application || Rake.application
     end
+
+    attr_accessor :framework_detection
   end
+  self.framework_detection = true
 
-  # Warbler Rake task.  Allows defining multiple configurations inside the same 
+  # Warbler Rake task.  Allows defining multiple configurations inside the same
   # Rakefile by using different task names.
   class Task &lt; Rake::TaskLib
     COPY_PROC = proc {|t| cp t.prerequisites.last, t.name }
@@ -114,7 +117,7 @@ module Warbler
             end
             require 'erb'
             erb = ERB.new(File.open(erb) {|f| f.read })
-            File.open(&quot;#{config.staging_dir}/WEB-INF/web.xml&quot;, &quot;w&quot;) do |f| 
+            File.open(&quot;#{config.staging_dir}/WEB-INF/web.xml&quot;, &quot;w&quot;) do |f|
               f &lt;&lt; erb.result(erb_binding(config.webxml))
             end
           end
@@ -284,7 +287,7 @@ module Warbler
       matched = Gem.source_index.search(gem)
       fail &quot;gem '#{gem}' not installed&quot; if matched.empty?
       spec = matched.last
-      
+
       gem_name = &quot;#{spec.name}-#{spec.version}&quot;
       unless spec.platform.nil? || spec.platform == Gem::Platform::RUBY
         [spec.platform, spec.original_platform].each do |p|</diff>
      <filename>lib/warbler/task.rb</filename>
    </modified>
    <modified>
      <diff>@@ -107,10 +107,4 @@ describe Warbler::Config do
     config.webxml.a[&quot;b&amp;&quot;].c = &quot;123&lt;hi&gt;456&quot;
     config.webxml.context_params['a.b&amp;amp;.c'].should == &quot;123&amp;lt;hi&amp;gt;456&quot;
   end
-
-  #it &quot;should automatically gems used by the web application&quot; do
-  #  gem &quot;actionpack&quot;
-  #  config = Warbler::Config.new
-  #  config.gems.should include(&quot;actionpack&quot;)
-  #end
 end</diff>
      <filename>spec/warbler/config_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -333,6 +333,20 @@ describe Warbler::Task do
     config.gems.should be_empty
   end
 
+  it &quot;should not try to autodetect frameworks when Warbler.framework_detection is false&quot; do
+    begin
+      Warbler.framework_detection = false
+      task :environment
+      config = Warbler::Config.new
+      config.webxml.booter.should_not == :rails
+      t = Rake::Task['environment']
+      class &lt;&lt; t; public :instance_variable_get; end
+      t.instance_variable_get(&quot;@already_invoked&quot;).should == false
+    ensure
+      Warbler.framework_detection = true
+    end
+  end
+
   it &quot;should auto-detect a Merb application&quot; do
     task :merb_env do
       merb = Module.new
@@ -341,7 +355,7 @@ describe Warbler::Task do
     end
     @config = Warbler::Config.new
     @config.webxml.booter.should == :merb
-    @config.gems[&quot;merb&quot;].should == &quot;0.9.3&quot;
+    @config.gems[&quot;merb-core&quot;].should == &quot;0.9.3&quot;
     @config.gems.keys.should_not include(&quot;rails&quot;)
   end
 </diff>
      <filename>spec/warbler/task_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>8bba464d99cb261448c5c7ca477133af85cc8ba6</id>
    </parent>
  </parents>
  <author>
    <name>Nick Sieger</name>
    <email>nick@nicksieger.com</email>
  </author>
  <url>http://github.com/lackac/warbler/commit/81fc974234d1dc61ae1cc094747f4fa9ba236ece</url>
  <id>81fc974234d1dc61ae1cc094747f4fa9ba236ece</id>
  <committed-date>2008-11-09T10:00:34-08:00</committed-date>
  <authored-date>2008-11-09T10:00:34-08:00</authored-date>
  <message>Add ability to turn off framework detection; update history file</message>
  <tree>b78e35d27950186d9ff20c8d75883f98b40439de</tree>
  <committer>
    <name>Nick Sieger</name>
    <email>nick@nicksieger.com</email>
  </committer>
</commit>
