<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>config/dependencies.rb</filename>
    </added>
    <added>
      <filename>merb/session/session.rb</filename>
    </added>
    <added>
      <filename>public/.htaccess</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,14 +1,9 @@
 require 'rubygems'
-Gem.clear_paths
-Gem.path.unshift(File.join(File.dirname(__FILE__), &quot;gems&quot;))
-
-require 'rake'
 require 'rake/rdoctask'
-require 'rake/testtask'
-require 'spec/rake/spectask'
-require 'fileutils'
+
 require 'merb-core'
-require 'rubigen'
+require 'merb-core/tasks/merb'
+
 include FileUtils
 
 # Load the basic runtime dependencies; this will include 
@@ -19,16 +14,22 @@ Merb.load_dependencies(:environment =&gt; init_env)
 # Get Merb plugins and dependencies
 Merb::Plugins.rakefiles.each { |r| require r } 
 
-desc &quot;start runner environment&quot;
+# Load any app level custom rakefile extensions from lib/tasks
+tasks_path = File.join(File.dirname(__FILE__), &quot;lib&quot;, &quot;tasks&quot;)
+rake_files = Dir[&quot;#{tasks_path}/*.rake&quot;]
+rake_files.each{|rake_file| load rake_file }
+
+desc &quot;Start runner environment&quot;
 task :merb_env do
   Merb.start_environment(:environment =&gt; init_env, :adapter =&gt; 'runner')
 end
 
+require 'spec/rake/spectask'
+require 'merb-core/test/tasks/spectasks'
+desc 'Default: run spec examples'
+task :default =&gt; 'spec'
+
 ##############################################################################
-# ADD YOUR CUSTOM TASKS BELOW
+# ADD YOUR CUSTOM TASKS IN /lib/tasks
+# NAME YOUR RAKE FILES file_name.rake
 ##############################################################################
-
-desc &quot;Add new files to subversion&quot;
-task :svn_add do
-   system &quot;svn status | grep '^\?' | sed -e 's/? *//' | sed -e 's/ /\ /g' | xargs svn add&quot;
-end</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,18 +1,15 @@
-# Merb.logger.info(&quot;Loaded DEVELOPMENT Environment...&quot;)
-# Merb::Config.use { |c|
-#   c[:exception_details] = true
-#   c[:reload_classes] = true
-#   c[:reload_time] = 0.5
-#   c[:log_auto_flush ] = true
-# }
-
 Merb.logger.info(&quot;Loaded DEVELOPMENT Environment...&quot;)
 Merb::Config.use { |c|
   c[:exception_details] = true
   c[:reload_templates] = true
   c[:reload_classes] = true
   c[:reload_time] = 0.5
-  c[:log_auto_flush ] = true
   c[:ignore_tampered_cookies] = true
+  c[:log_auto_flush ] = true
   c[:log_level] = :debug
+
+  c[:log_stream] = STDOUT
+  c[:log_file]   = nil
+  # Or redirect logging into a file:
+  # c[:log_file]  = Merb.root / &quot;log&quot; / &quot;development.log&quot;
 }</diff>
      <filename>config/environments/development.rb</filename>
    </modified>
    <modified>
      <diff>@@ -3,5 +3,8 @@ Merb::Config.use { |c|
   c[:exception_details] = false
   c[:reload_classes] = false
   c[:log_level] = :error
-  c[:log_file] = Merb.log_path + &quot;/production.log&quot;
-}
\ No newline at end of file
+  
+  c[:log_file]  = Merb.root / &quot;log&quot; / &quot;production.log&quot;
+  # or redirect logger using IO handle
+  # c[:log_stream] = STDOUT
+}</diff>
      <filename>config/environments/production.rb</filename>
    </modified>
    <modified>
      <diff>@@ -3,5 +3,9 @@ Merb::Config.use { |c|
   c[:exception_details] = true
   c[:reload_classes]  = false
   c[:log_auto_flush ] = true
-  c[:log_file] = Merb.log_path / 'merb_rake.log'
-}
\ No newline at end of file
+
+  c[:log_stream] = STDOUT
+  c[:log_file]   = nil
+  # Or redirect logging into a file:
+  # c[:log_file]  = Merb.root / &quot;log&quot; / &quot;development.log&quot;
+}</diff>
      <filename>config/environments/rake.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,7 +1,10 @@
 Merb.logger.info(&quot;Loaded STAGING Environment...&quot;)
 Merb::Config.use { |c|
   c[:exception_details] = false
-  c[:reload_classes] = false
-  c[:log_level] = :error
-  c[:log_file] = Merb.log_path + &quot;/staging.log&quot;
-}
\ No newline at end of file
+  c[:reload_classes]    = false
+  c[:log_level]         = :error
+
+  c[:log_file]  = Merb.root / &quot;log&quot; / &quot;staging.log&quot;
+  # or redirect logger using IO handle
+  # c[:log_stream] = STDOUT
+}</diff>
      <filename>config/environments/staging.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,12 @@
 Merb.logger.info(&quot;Loaded TEST Environment...&quot;)
 Merb::Config.use { |c|
-  c[:testing] = true
+  c[:testing]           = true
   c[:exception_details] = true
-  c[:log_auto_flush ] = true
-  c[:log_level] = :fatal
-  c[:log_file] = Merb.log_path / 'merb_test.log'
+  c[:log_auto_flush ]   = true
+  # log less in testing environment
+  c[:log_level]         = :error
+
+  c[:log_file]  = Merb.root / &quot;log&quot; / &quot;test.log&quot;
+  # or redirect logger using IO handle
+  # c[:log_stream] = STDOUT
 }</diff>
      <filename>config/environments/test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,40 +1,36 @@
-# Make the app's &quot;gems&quot; directory a place where gems are loaded from
-Gem.clear_paths
-Gem.path.unshift(Merb.root / &quot;gems&quot;)
+# Go to http://wiki.merbivore.com/pages/init-rb
 
 # Autoload from lib
 $LOAD_PATH.unshift(Merb.root / &quot;lib&quot;)
 Merb.push_path(:lib, Merb.root / &quot;lib&quot;) # uses **/*.rb as path glob.
 
+require 'config/dependencies.rb'
+ 
+use_orm :datamapper
+use_test :rspec
+use_template_engine :erb
+ 
 Merb::Config.use do |c|
+  c[:use_mutex] = false
+  
   c[:session_id_key] = 'panda'
   c[:session_secret_key]  = '4d5e9b90d9e92c236a2300d718059aef3a9b9cbe'
   c[:session_store] = 'cookie'
 end
-
-use_orm :datamapper
-
-# Load Panda config
-require &quot;config&quot; / &quot;panda_init&quot;
-
-# Gem dependencies
-dependency 'merb-assets'
-dependency 'merb-mailer'
-dependency 'merb_helpers'
-dependency 'uuid'
-dependency 'amazon_sdb'
-dependency 'activesupport'
-dependency 'rvideo'
-dependency 'dm-timestamps'
-
-# Dependencies in lib - not autoloaded in time so require them explicitly
-require 'simple_db'
-require 'local_store'
-
-# Check panda config
-Panda::Config.check
-
+ 
+Merb::BootLoader.before_app_loads do
+  # This will get executed after dependencies have been loaded but before your app's classes have loaded.
+  
+  # Load Panda config
+  require &quot;config&quot; / &quot;panda_init&quot;
+  
+  # Check panda config
+  Panda::Config.check
+end
+ 
 Merb::BootLoader.after_app_loads do
+  # This will get executed after your app's classes have been loaded.
+  
   unless Merb.environment =~ /test/
     require &quot;config&quot; / &quot;aws&quot;
     require &quot;config&quot; / &quot;mailer&quot;
@@ -52,5 +48,4 @@ Merb::BootLoader.after_app_loads do
   LocalStore.ensure_directories_exist
   
   Profile.warn_if_no_encodings unless Merb.env =~ /test/
-  
 end</diff>
      <filename>config/init.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>e2f90cf25d8209555e4cdff6582e70408557819e</id>
    </parent>
  </parents>
  <author>
    <name>Martyn Loughran</name>
    <email>martyn@new-bamboo.co.uk</email>
  </author>
  <url>http://github.com/twinge/panda/commit/12c9f097d8545ed93ef05d60a45fae3498878b6b</url>
  <id>12c9f097d8545ed93ef05d60a45fae3498878b6b</id>
  <committed-date>2008-10-22T04:44:32-07:00</committed-date>
  <authored-date>2008-10-22T04:07:07-07:00</authored-date>
  <message>Merb RC2 (updated with merb-gen).

* Left out new thor tasks since they don't seem to be working. Unused anyway.</message>
  <tree>c9bcceaa28c8eee8fc5cd079e7062ab950973052</tree>
  <committer>
    <name>Martyn Loughran</name>
    <email>martyn@new-bamboo.co.uk</email>
  </committer>
</commit>
