<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -12,20 +12,37 @@ This project is for RSpec developers/contributors.
 
   git clone git://github.com/dchelimsky/rspec-dev.git
   cd rspec-dev
+  cp repos.yml.sample repos.yml
+
+Take a look at repos.yml, which is used to configure all of the other git
+repositories that you'll need to do rspec-rails development. The sample file
+is configured to point to public github urls for each repository. If you have
+forks of any of the repos, or if you are an rspec core committer, change the
+urls accordingly so that you'll be able to seamlessly push to github.
+
+Once that's confifigured:
+
   rake git:update
 
-== RUNNING EXAMPLES:
+== RUNNING SPECS:
+
+In order to run RSpec's full suite of specs (rake pre_commit) you must install
+the following gems:
+
+* cucumber  # BDD framework for automating scenarios
+* diff-lcs  # Required if you use the --diff switch
+* flexmock  # Mocking/stubbing framework
+* heckle    # Required if you use the --heckle switch
+* hoe       # Required in order to make releases at RubyForge
+* mocha     # Mocking/stubbing framework
+* nokogiri  # Used for parsing HTML from the HTML output formatter in RSpec's own specs
+* rake      # Runs the build script
+* rcov      # Verifies that the code is 100% covered by specs
+* rr        # Mocking/stubbing framework
 
-In order to run RSpec's full suite of examples (rake pre_commit) you must install the following gems:
+If you're on windows, you'll also need:
 
-* rake          # Runs the build script
-* rcov          # Verifies that the code is 100% covered by specs
-* syntax        # Required to highlight ruby code
-* diff-lcs      # Required if you use the --diff switch
 * win32console  # Required by the --colour switch if you're on Windows
-* hoe           # Required in order to make releases at RubyForge
-* heckle        # Required if you use the --heckle switch
-* hpricot       # Used for parsing HTML from the HTML output formatter in RSpec's own specs
 
 You can easily install all gems by using geminstaller.
 
@@ -36,12 +53,16 @@ You can easily install all gems by using geminstaller.
 Once those are all installed, you should be able to run the suite with the following steps:
 
   cd /path/to/rspec-dev
-  rake install_dependencies
   cd example_rails_app
-  export RSPEC_RAILS_VERSION=2.1.0
+  export RSPEC_RAILS_VERSION=2.3.2
   rake rspec:generate_sqlite3_config
   cd ..
   rake pre_commit
+  
+The rake pre_commit command runs all the specs and cucumber scenarios for
+rspec, and then for rspec-rails. The rspec-rails specs are run against all of
+the supported versions of rails defined in
+pre_commit/lib/pre_commit/rspec-rails.rb, near the top.
 
 Note that RSpec itself - once built - doesn't have any dependencies outside
 the Ruby core and stdlib - with a few exceptions:</diff>
      <filename>README.txt</filename>
    </modified>
    <modified>
      <diff>@@ -76,16 +76,6 @@ if git.repos_fetched?
     rm_rf 'doc/output'
   end
   
-  desc &quot;Installs dependencies for development environment&quot;
-  task :install_dependencies do
-    pre_commit.install_dependencies
-  end
-  
-  desc &quot;Updates dependencies for development environment&quot;
-  task :update_dependencies do
-    pre_commit.update_dependencies
-  end
-
   desc &quot;Build the website, but do not publish it&quot;
   task(:website) {core.website}
 
@@ -117,14 +107,11 @@ if git.repos_fetched?
       git.add_remotes
     end
   end
+else
+  puts &quot;Missing repos - check repos.yml and run 'rake git:update'&quot;
+  puts YAML.dump(git.repos)
 end
 
-# desc &quot;Run all specs and store html output in doc/output/report.html&quot;
-# Spec::Rake::SpecTask.new('spec_html') do |t|
-#   t.spec_files = FileList['spec/**/*_spec.rb']
-#   t.spec_opts = ['--format html:../../../../doc/output/report.html', '--format progress','--backtrace']
-# end
-
 def assign_version
   ENV[&quot;VERSION&quot;] or abort &quot;Must supply VERSION=x.y.z&quot;
 end</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,6 @@ task :pre_commit do
   tasks.pre_commit
 end
 
-desc &quot;Installs several versions of rails to run specs against&quot;
-task :install_dependencies do
-  tasks.install_dependencies
-end
-
-desc &quot;Updates the rails checkouts to run specs against&quot;
-task :update_dependencies do
-  tasks.update_dependencies
-end
-
 def tasks
   PreCommit::RspecOnRails.new(self)
 end
\ No newline at end of file</diff>
      <filename>example_rails_app/Multirails.rake</filename>
    </modified>
    <modified>
      <diff>@@ -92,7 +92,13 @@ module RSpec
       end
     end
 
-    private
+    def repos
+      @yaml ||= YAML.load_file(File.join(File.dirname(__FILE__), &quot;/../../repos.yml&quot;))
+      @yaml[:repos]
+    end
+
+  private
+
     def check_for_clean_repos(message)
       unless all_repos_clean?
         puts &quot;*** #{message} ***&quot;
@@ -111,11 +117,6 @@ module RSpec
       end
     end
     
-    def repos
-      @yaml = YAML.load_file(File.join(File.dirname(__FILE__), &quot;/../../repos.yml&quot;))
-      @yaml[:repos]
-    end
-
     def subprojects
       [
        {:name =&gt; &quot;TextMate Bundle&quot;, :path =&gt; 'RSpec.tmbundle',</diff>
      <filename>lib/rspec/git.rb</filename>
    </modified>
    <modified>
      <diff>@@ -305,32 +305,13 @@ class PreCommit::RspecOnRails &lt; PreCommit
     files.each {|file| rm_rf file}
   end
 
-  def install_dependencies
-    if File.exist?(&quot;#{RSPEC_DEV_ROOT}/example_rails_app/vendor/rails/.git&quot;)
-      puts &quot;Rails is already installed&quot;
-    else
-      if File.exist?(&quot;#{RSPEC_DEV_ROOT}/example_rails_app/vendor/rails&quot;)
-        sh &quot;rm -rf #{RSPEC_DEV_ROOT}/example_rails_app/vendor/rails&quot;
-      end
-      Dir.chdir &quot;#{RSPEC_DEV_ROOT}/example_rails_app/vendor&quot; do
-        puts &quot;cloning rails - this might take a while&quot;
-        sh &quot;git clone git://github.com/rails/rails.git&quot;
-      end
-    end
-  end
-
   def check_dependencies
-    unless File.exist?(&quot;#{RSPEC_DEV_ROOT}/example_rails_app/vendor/rails/.git&quot;)
-      raise &quot;Rails is not installed. Please run 'rake install_dependencies'&quot;
+    ['plugins/rspec/.git','plugins/rspec-rails/.git','rails/.git'].each do |dep|
+      unless File.exist?(&quot;#{RSPEC_DEV_ROOT}/example_rails_app/vendor/#{dep}&quot;)
+        name = dep.sub(/\/\.git/,'').split('/').last
+        raise &quot;#{name} is not installed. Please run 'rake git:update'&quot;
+      end
     end
   end
   
-  def update_dependencies
-    check_dependencies
-    Dir.chdir &quot;#{RSPEC_DEV_ROOT}/example_rails_app/vendor/rails&quot; do
-      sh &quot;git checkout master&quot;
-      sh &quot;git pull&quot;
-    end
-  end
-
 end</diff>
      <filename>pre_commit/lib/pre_commit/rspec-rails.rb</filename>
    </modified>
    <modified>
      <diff>@@ -84,18 +84,6 @@ class PreCommit::Rspec &lt; PreCommit
     end    
   end
 
-  def install_dependencies
-    Dir.chdir &quot;#{RSPEC_DEV_ROOT}/example_rails_app&quot; do
-      rake_sh(&quot;-f Multirails.rake install_dependencies&quot;)
-    end
-  end
-
-  def update_dependencies
-    Dir.chdir &quot;#{RSPEC_DEV_ROOT}/example_rails_app&quot; do
-      rake_sh(&quot;-f Multirails.rake update_dependencies&quot;)
-    end
-  end
-
   def pre_commit_rails
     Dir.chdir &quot;#{RSPEC_DEV_ROOT}/example_rails_app&quot; do
       rake = (RUBY_PLATFORM == &quot;i386-mswin32&quot;) ? &quot;rake.cmd&quot; : &quot;rake&quot;</diff>
      <filename>pre_commit/lib/pre_commit/rspec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>86da61f0f26feda5c296a92fd97b14a11ec0a38d</id>
    </parent>
  </parents>
  <author>
    <name>David Chelimsky</name>
    <email>dchelimsky@gmail.com</email>
  </author>
  <url>http://github.com/dchelimsky/rspec-dev/commit/e9c6b4ae555ddda67f4ba70acea21aed0a2d1158</url>
  <id>e9c6b4ae555ddda67f4ba70acea21aed0a2d1158</id>
  <committed-date>2009-06-24T21:25:38-07:00</committed-date>
  <authored-date>2009-06-24T21:25:38-07:00</authored-date>
  <message>remove obsolete stuff and update readme</message>
  <tree>28e7fea5c53d51ee7f4c401cd14c567e8c6b1ac1</tree>
  <committer>
    <name>David Chelimsky</name>
    <email>dchelimsky@gmail.com</email>
  </committer>
</commit>
