<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>.manifest</filename>
    </added>
    <added>
      <filename>lib/scoped_search.rb</filename>
    </added>
    <added>
      <filename>lib/scoped_search/query_string_parser.rb</filename>
    </added>
    <added>
      <filename>scoped_search.gemspec</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,2 +1,3 @@
 .svn/
-.DS_Store
\ No newline at end of file
+.DS_Store
+scoped_search-*.gem
\ No newline at end of file</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -3,4 +3,68 @@ require 'rubygems'
 load 'test/tasks.rake'
  
 desc 'Default: run unit tests.'
-task :default =&gt; :test
\ No newline at end of file
+task :default =&gt; :test
+
+namespace :gem do
+
+  desc &quot;Sets the version and date of the gem&quot;
+  task :version do
+    
+    require 'date'
+    
+    new_version = ENV['VERSION']
+    raise &quot;VERSION is required&quot; unless /\d+(\.\d+)*/ =~ new_version
+    
+    spec_file = Dir['*.gemspec'].first
+    
+    spec = File.read(spec_file)
+    spec.gsub!(/^(\s*s\.version\s*=\s*)('|&quot;)(.+)('|&quot;)(\s*)$/) { &quot;#{$1}'#{new_version}'#{$5}&quot; }
+    spec.gsub!(/^(\s*s\.date\s*=\s*)('|&quot;)(.+)('|&quot;)(\s*)$/) { &quot;#{$1}'#{Date.today.strftime('%Y-%m-%d')}'#{$5}&quot; }    
+    File.open(spec_file, 'w') { |f| f &lt;&lt; spec }
+  end
+  
+  task :tag =&gt; [:version] do
+    
+    new_version = ENV['VERSION']
+    raise &quot;VERSION is required&quot; unless /\d+(\.\d+)*/ =~ new_version
+        
+    sh &quot;git add scoped_search.gemspec&quot;
+    sh &quot;git commit -m \&quot;Set gem version to #{new_version}\&quot;&quot;
+    sh &quot;git push origin&quot;    
+    sh &quot;git tag -a \&quot;scoped_search-#{new_version}\&quot; -m \&quot;Tagged version #{new_version}\&quot;&quot;
+    sh &quot;git push --tags&quot;
+  end
+
+  desc &quot;Builds a ruby gem for scoped_search&quot;
+  task :build =&gt; [:manifest] do
+    system %[gem build scoped_search.gemspec]
+  end
+
+  desc %{Update &quot;.manifest&quot; with the latest list of project filenames. Respect\
+  .gitignore by excluding everything that git ignores. Update `files` and\
+  `test_files` arrays in &quot;*.gemspec&quot; file if it's present.}
+  task :manifest do
+    list = Dir['**/*'].sort
+    spec_file = Dir['*.gemspec'].first
+    list -= [spec_file] if spec_file
+  
+    File.read('.gitignore').each_line do |glob|
+      glob = glob.chomp.sub(/^\//, '')
+      list -= Dir[glob]
+      list -= Dir[&quot;#{glob}/**/*&quot;] if File.directory?(glob) and !File.symlink?(glob)
+      puts &quot;excluding #{glob}&quot;
+    end
+ 
+    if spec_file
+      spec = File.read spec_file
+      spec.gsub! /^(\s* s.(test_)?files \s* = \s* )( \[ [^\]]* \] | %w\( [^)]* \) )/mx do
+        assignment = $1
+        bunch = $2 ? list.grep(/^test.*_test\.rb$/) : list
+        '%s%%w(%s)' % [assignment, bunch.join(' ')]
+      end
+      
+      File.open(spec_file,   'w') {|f| f &lt;&lt; spec }
+    end
+    File.open('.manifest', 'w') {|f| f &lt;&lt; list.join(&quot;\n&quot;) }
+  end
+end
\ No newline at end of file</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -9,9 +9,6 @@ New functionality:
 
 Refactoring:
 - Better separation of query building and query string parser
-- Distribute as gem instead of plugin
 
 Testing:
-- Add rake testing tasks
-- More tests for the query string parser
-- Rails inclusion &amp; activation tests
+- More tests for the query string parser
\ No newline at end of file</diff>
      <filename>TODO</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1 @@
-$:.unshift &quot;#{File.dirname(__FILE__)}/lib&quot;
-require 'active_record/scoped_search'
-require 'active_record/scoped_search/query_string_parser'
-ActiveRecord::Base.class_eval { extend ActiveRecord::ScopedSearch }
\ No newline at end of file
+require 'scoped_search'
\ No newline at end of file</diff>
      <filename>init.rb</filename>
    </modified>
    <modified>
      <diff>@@ -16,7 +16,7 @@ class ScopedSearchTest &lt; Test::Unit::TestCase
     SearchTestModel.searchable_on :string_field, :text_field
     assert SearchTestModel.respond_to?(:search_for)
     
-    assert_equal ActiveRecord::NamedScope::Scope, SearchTestModel.search_for.class
+    assert_equal ActiveRecord::NamedScope::Scope, SearchTestModel.search_for('test').class
     
   end
   </diff>
      <filename>test/query_building_test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,7 +1,7 @@
 require File.dirname(__FILE__) + '/test_helper'
 
 class String
-  include ActiveRecord::ScopedSearch::QueryStringParser
+  include ScopedSearch::QueryStringParser
 end
 
 class QueryStringParserTest &lt; Test::Unit::TestCase</diff>
      <filename>test/query_string_parser_test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,7 +2,7 @@ require 'test/unit'
 require 'rubygems'
 require 'active_record'
 
-require &quot;#{File.dirname(__FILE__)}/../init&quot;
+require &quot;#{File.dirname(__FILE__)}/../lib/scoped_search&quot;
 
 def setup_db
   ActiveRecord::Base.establish_connection(:adapter =&gt; &quot;sqlite3&quot;, :dbfile =&gt; &quot;:memory:&quot;)</diff>
      <filename>test/test_helper.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>lib/active_record/scoped_search.rb</filename>
    </removed>
    <removed>
      <filename>lib/active_record/scoped_search/query_string_parser.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>49cb513270717fe367454890b52815e602b24bf1</id>
    </parent>
  </parents>
  <author>
    <name>Willem van Bergen</name>
    <email>willem@vanbergen.org</email>
  </author>
  <url>http://github.com/wvanbergen/scoped_search/commit/f7d07d6a81801bb64d92e9a6bc27493668bd1109</url>
  <id>f7d07d6a81801bb64d92e9a6bc27493668bd1109</id>
  <committed-date>2008-09-03T22:59:07-07:00</committed-date>
  <authored-date>2008-09-03T22:59:07-07:00</authored-date>
  <message>Converted to gem</message>
  <tree>ae20ac2935e4aaa068ca169b48cd5690e979a084</tree>
  <committer>
    <name>Willem van Bergen</name>
    <email>willem@vanbergen.org</email>
  </committer>
</commit>
