<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,4 +1,5 @@
 require 'spec/rake/spectask'
+require 'rake/gempackagetask'
 
 task :default =&gt; :spec
 
@@ -7,3 +8,54 @@ Spec::Rake::SpecTask.new(:spec) do |t|
   t.spec_opts = ['--options', &quot;\&quot;#{File.dirname(__FILE__)}/spec/spec.opts\&quot;&quot;]
   t.spec_files = FileList['spec/**/*_spec.rb']
 end
+
+spec = Gem::Specification.new do |s|
+    s.name      =   &quot;couch_potato&quot;
+    s.version   =   &quot;0.1&quot;
+    s.author    =   &quot;Alexander Lang&quot;
+    s.email     =   &quot;alex@upstream-berlin.com&quot;
+    s.homepage  = 'http://github.com/langalex/couch_potato'
+    s.summary   =   &quot;a couchdb persistence layer in ruby&quot;
+    s.files     =   ['init.rb', 'Readme.textile', 'MIT-LICENSE.txt', 'CREDITS'] + Dir[&quot;{lib,spec}/**/*&quot;]
+    s.require_paths  &lt;&lt;  &quot;lib&quot;
+    s.add_dependency 'json'
+    s.add_dependency 'validatable'
+    s.add_dependency 'activesupport'
+    s.add_dependency 'jchris-couchrest', '&gt;=0.9.12'
+end
+
+::Rake::GemPackageTask.new(spec) { |p| p.gem_spec = spec }
+
+desc &quot;Update Github Gemspec&quot;
+task :gemspec do
+  skip_fields = %w(new_platform original_platform)
+  integer_fields = %w(specification_version)
+
+  result = &quot;Gem::Specification.new do |s|\n&quot;
+  spec.instance_variables.each do |ivar|
+    value = spec.instance_variable_get(ivar)
+    name  = ivar.split(&quot;@&quot;).last
+    next if skip_fields.include?(name) || value.nil? || value == &quot;&quot; || (value.respond_to?(:empty?) &amp;&amp; value.empty?)
+    if name == &quot;dependencies&quot;
+      value.each do |d|
+        dep, *ver = d.to_s.split(&quot; &quot;)
+        result &lt;&lt;  &quot;  s.add_dependency #{dep.inspect}, [#{ /\(([^\,]*)/ . match(ver.join(&quot; &quot;))[1].inspect}]\n&quot;
+      end
+    else        
+      case value
+      when Array
+        value =  name != &quot;files&quot; ? value.inspect : value.inspect.split(&quot;,&quot;).join(&quot;,\n&quot;)
+      when Fixnum
+        # leave as-is
+      when String
+        value = value.to_i if integer_fields.include?(name)
+        value = value.inspect
+      else
+        value = value.to_s.inspect
+      end
+      result &lt;&lt; &quot;  s.#{name} = #{value}\n&quot;
+    end
+  end
+  result &lt;&lt; &quot;end&quot;
+  File.open(File.join(File.dirname(__FILE__), &quot;#{spec.name}.gemspec&quot;), &quot;w&quot;){|f| f &lt;&lt; result}
+end
\ No newline at end of file</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,17 +1,66 @@
-require 'rubygems'
-Gem::manage_gems
-require 'rake/gempackagetask'
-spec = Gem::Specification.new do |s|
-    s.name      =   &quot;couch_potato&quot;
-    s.version   =   &quot;0.1&quot;
-    s.author    =   &quot;Alexander Lang&quot;
-    s.email     =   &quot;alex @nospam@ upstream-berlin.com&quot;
-    s.homepage  = 'http://github.com/langalex/couch_potato'
-    s.summary   =   &quot;a couchdb persistence layer in ruby&quot;
-    s.files     =   FileList['lib/**/*.rb', 'spec/*', 'init.rb', 'Readme.textile', 'MIT-LICENSE.txt', 'CREDITS'].to_a
-    s.require_paths  &lt;&lt;  &quot;lib&quot;
-    s.add_dependency('json')
-    s.add_dependency('validatable')
-    s.add_dependency('activesupport')
-    s.add_dependency 'jchris-couchrest', '&gt;=0.9.12'
-end
+Gem::Specification.new do |s|
+  s.add_dependency &quot;json&quot;, [&quot;&gt;= 0&quot;]
+  s.add_dependency &quot;validatable&quot;, [&quot;&gt;= 0&quot;]
+  s.add_dependency &quot;activesupport&quot;, [&quot;&gt;= 0&quot;]
+  s.add_dependency &quot;jchris-couchrest&quot;, [&quot;&gt;= 0.9.12&quot;]
+  s.require_paths = [&quot;lib&quot;, &quot;lib&quot;]
+  s.date = &quot;Mon Oct 27 00:00:00 +0100 2008&quot;
+  s.authors = [&quot;Alexander Lang&quot;]
+  s.name = &quot;couch_potato&quot;
+  s.required_rubygems_version = &quot;&gt;= 0&quot;
+  s.files = [&quot;init.rb&quot;,
+ &quot;Readme.textile&quot;,
+ &quot;MIT-LICENSE.txt&quot;,
+ &quot;CREDITS&quot;,
+ &quot;lib/core_ext&quot;,
+ &quot;lib/core_ext/object.rb&quot;,
+ &quot;lib/core_ext/time.rb&quot;,
+ &quot;lib/couch_potato&quot;,
+ &quot;lib/couch_potato/active_record&quot;,
+ &quot;lib/couch_potato/active_record/compatibility.rb&quot;,
+ &quot;lib/couch_potato/ordering.rb&quot;,
+ &quot;lib/couch_potato/persistence&quot;,
+ &quot;lib/couch_potato/persistence/belongs_to_property.rb&quot;,
+ &quot;lib/couch_potato/persistence/bulk_save_queue.rb&quot;,
+ &quot;lib/couch_potato/persistence/callbacks.rb&quot;,
+ &quot;lib/couch_potato/persistence/collection.rb&quot;,
+ &quot;lib/couch_potato/persistence/external_collection.rb&quot;,
+ &quot;lib/couch_potato/persistence/external_has_many_property.rb&quot;,
+ &quot;lib/couch_potato/persistence/find.rb&quot;,
+ &quot;lib/couch_potato/persistence/finder.rb&quot;,
+ &quot;lib/couch_potato/persistence/inline_collection.rb&quot;,
+ &quot;lib/couch_potato/persistence/inline_has_many_property.rb&quot;,
+ &quot;lib/couch_potato/persistence/json.rb&quot;,
+ &quot;lib/couch_potato/persistence/properties.rb&quot;,
+ &quot;lib/couch_potato/persistence/simple_property.rb&quot;,
+ &quot;lib/couch_potato/persistence.rb&quot;,
+ &quot;lib/couch_potato/versioning.rb&quot;,
+ &quot;lib/couch_potato.rb&quot;,
+ &quot;spec/attributes_spec.rb&quot;,
+ &quot;spec/belongs_to_spec.rb&quot;,
+ &quot;spec/callbacks_spec.rb&quot;,
+ &quot;spec/create_spec.rb&quot;,
+ &quot;spec/destroy_spec.rb&quot;,
+ &quot;spec/find_spec.rb&quot;,
+ &quot;spec/finder_spec.rb&quot;,
+ &quot;spec/has_many_spec.rb&quot;,
+ &quot;spec/inline_collection_spec.rb&quot;,
+ &quot;spec/ordering_spec.rb&quot;,
+ &quot;spec/property_spec.rb&quot;,
+ &quot;spec/reload_spec.rb&quot;,
+ &quot;spec/spec.opts&quot;,
+ &quot;spec/spec_helper.rb&quot;,
+ &quot;spec/update_spec.rb&quot;,
+ &quot;spec/versioning_spec.rb&quot;]
+  s.has_rdoc = &quot;false&quot;
+  s.specification_version = 2
+  s.loaded = &quot;false&quot;
+  s.email = &quot;alex@upstream-berlin.com&quot;
+  s.required_ruby_version = &quot;&gt;= 0&quot;
+  s.bindir = &quot;bin&quot;
+  s.rubygems_version = &quot;1.2.0&quot;
+  s.homepage = &quot;http://github.com/langalex/couch_potato&quot;
+  s.platform = &quot;ruby&quot;
+  s.summary = &quot;a couchdb persistence layer in ruby&quot;
+  s.version = &quot;0.1&quot;
+end
\ No newline at end of file</diff>
      <filename>couch_potato.gemspec</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>14b79ea2d00f6cace204df22034d5de9cd49062c</id>
    </parent>
  </parents>
  <author>
    <name>Alexander Lang</name>
    <email>alex@skywalker.(none)</email>
  </author>
  <url>http://github.com/langalex/couch_potato/commit/dc02324fc9e2d7092ddd369f62200fec08266272</url>
  <id>dc02324fc9e2d7092ddd369f62200fec08266272</id>
  <committed-date>2008-10-27T15:07:11-07:00</committed-date>
  <authored-date>2008-10-27T15:07:11-07:00</authored-date>
  <message>stole rake task from jchris-couchrest to generate github compatible gemspec, generated new gemspec with that.</message>
  <tree>58b2579f5e3a6c80247610f753478ceaf753cc1b</tree>
  <committer>
    <name>Alexander Lang</name>
    <email>alex@skywalker.(none)</email>
  </committer>
</commit>
