<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>clickatell.gemspec</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,4 +1,6 @@
 doc/*
 website/*
 pkg/*
-.specification
\ No newline at end of file
+.specification
+pkg
+rdoc
\ No newline at end of file</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,12 @@
 == 0.5.0
+
 * Added support for mobile originated flag (courtesy Dan Weinand)
 * Added support for WAP push (experimental, courtesy Zhao Lu)
 * Updated specs to use Mocha instead of the built-in RSpec mocking
 * Improved specs in general
 
 == 0.4.1
+
 * Custom alphanumeric sender would not always be supported by default unless it was explicitly enabled using the req_feat parameter.
 
 == 0.4.0</diff>
      <filename>History.txt</filename>
    </modified>
    <modified>
      <diff>@@ -1,160 +1,66 @@
-require 'rubygems'
-require 'rake'
-require 'rake/clean'
-require 'rake/testtask'
-require 'rake/packagetask'
-require 'rake/gempackagetask'
-require 'rake/rdoctask'
-require 'rake/contrib/rubyforgepublisher'
-require 'fileutils'
-require 'hoe'
-begin
-  require 'spec/rake/spectask'
-rescue LoadError
-  puts 'To use rspec for testing you must install rspec gem:'
-  puts '$ sudo gem install rspec'
-  exit
-end
-
-include FileUtils
-require File.join(File.dirname(__FILE__), 'lib', 'clickatell', 'version')
-
-AUTHOR = 'Luke Redpath'
-EMAIL = &quot;contact[AT]lukeredpath.co.uk&quot;
-DESCRIPTION = &quot;Ruby interface to the Clickatell SMS gateway service.&quot;
-GEM_NAME = 'clickatell'
-
-@config_file = &quot;~/.rubyforge/user-config.yml&quot;
-@config = nil
-def rubyforge_username
-  unless @config
-    begin
-      @config = YAML.load(File.read(File.expand_path(@config_file)))
-    rescue
-      puts &lt;&lt;-EOS
-ERROR: No rubyforge config file found: #{@config_file}&quot;
-Run 'rubyforge setup' to prepare your env for access to Rubyforge
- - See http://newgem.rubyforge.org/rubyforge.html for more details
-      EOS
-      exit
-    end
-  end
-  @rubyforge_username ||= @config[&quot;username&quot;]
+require &quot;rubygems&quot;
+require &quot;rake/gempackagetask&quot;
+require &quot;rake/rdoctask&quot;
+require File.join(File.dirname(__FILE__), *%w[lib/clickatell/version])
+
+task :default =&gt; :spec
+
+require &quot;spec&quot;
+require &quot;spec/rake/spectask&quot;
+Spec::Rake::SpecTask.new do |t|
+  t.spec_opts = %w(--format specdoc --colour)
+  t.libs = [&quot;spec&quot;]
 end
 
-RUBYFORGE_PROJECT = 'clickatell' # The unix name for your project
-HOMEPATH = &quot;http://#{RUBYFORGE_PROJECT}.rubyforge.org&quot;
-DOWNLOAD_PATH = &quot;http://rubyforge.org/projects/#{RUBYFORGE_PROJECT}&quot;
+load File.join(File.dirname(__FILE__), *%w[clickatell.gemspec])
 
-NAME = &quot;clickatell&quot;
-REV = nil 
-VERS = Clickatell::VERSION::STRING + (REV ? &quot;.#{REV}&quot; : &quot;&quot;)
-CLEAN.include ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store']
-RDOC_OPTS = ['--quiet', '--title', 'clickatell documentation',
-    &quot;--opname&quot;, &quot;index.html&quot;,
-    &quot;--line-numbers&quot;, 
-    &quot;--main&quot;, &quot;RDOC_README.txt&quot;,
-    &quot;--inline-source&quot;]
-
-class Hoe
-  def extra_deps 
-    @extra_deps.reject { |x| Array(x).first == 'hoe' } 
-  end 
-end
-
-# Generate all the Rake tasks
-# Run 'rake -T' to see list of generated tasks (from gem root directory)
-hoe = Hoe.new(GEM_NAME, VERS) do |p|
-  p.author = AUTHOR 
-  p.description = DESCRIPTION
-  p.email = EMAIL
-  p.summary = DESCRIPTION
-  p.url = HOMEPATH
-  p.rubyforge_name = RUBYFORGE_PROJECT if RUBYFORGE_PROJECT
-  p.test_globs = [&quot;test/**/test_*.rb&quot;]
-  p.clean_globs |= CLEAN  #An array of file patterns to delete on clean.
-  
-  # == Optional
-  p.changes = p.paragraphs_of(&quot;History.txt&quot;, 0..1).join(&quot;\n\n&quot;)
-  #p.extra_deps = []     # An array of rubygem dependencies [name, version], e.g. [ ['active_support', '&gt;= 1.3.1'] ]
-  #p.spec_extras = {}    # A hash of extra values to set in the gemspec.
-end
-
-CHANGES = hoe.paragraphs_of('History.txt', 0..1).join(&quot;\n\n&quot;)
-PATH    = (RUBYFORGE_PROJECT == GEM_NAME) ? RUBYFORGE_PROJECT : &quot;#{RUBYFORGE_PROJECT}/#{GEM_NAME}&quot;
-hoe.remote_rdoc_dir = File.join(PATH.gsub(/^#{RUBYFORGE_PROJECT}\/?/,''), 'rdoc')
-
-desc 'Generate website files'
-task :website_generate do
-  Dir['website/**/*.txt'].each do |txt|
-    sh %{ ruby scripts/txt2html #{txt} &gt; #{txt.gsub(/txt$/,'html')} }
-  end
-  sh &quot;rake -s spec:html &gt; website/specs.html&quot;
+Rake::GemPackageTask.new($gemspec) do |pkg|
+  pkg.gem_spec = $gemspec
 end
 
-desc 'Upload website files to rubyforge'
-task :website_upload do
-  host = &quot;#{rubyforge_username}@rubyforge.org&quot;
-  remote_dir = &quot;/var/www/gforge-projects/#{PATH}/&quot;
-  local_dir = 'website'
-  sh %{rsync -aCv #{local_dir}/ #{host}:#{remote_dir}}
+Rake::RDocTask.new do |rd|
+  rd.main = &quot;RDOC_README.txt&quot;
+  rd.rdoc_files.include(&quot;lib/**/*.rb&quot;, *$gemspec.extra_rdoc_files)
+  rd.rdoc_dir = &quot;rdoc&quot;
 end
 
-desc 'Generate and upload website files'
-task :website =&gt; [:website_generate, :website_upload, :publish_docs]
+desc 'Clear out RDoc and generated packages'
+task :clean =&gt; [:clobber_rdoc, :clobber_package]
 
-desc 'Release the website and new gem version'
-task :deploy =&gt; [:check_version, :website, :release] do
-  puts &quot;Remember to create SVN tag:&quot;
-  puts &quot;svn copy svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/trunk &quot; +
-    &quot;svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/tags/REL-#{VERS} &quot;
-  puts &quot;Suggested comment:&quot;
-  puts &quot;Tagging release #{CHANGES}&quot;
-end
-
-desc 'Runs tasks website_generate and install_gem as a local deployment of the gem'
-task :local_deploy =&gt; [:website_generate, :install_gem]
-
-task :check_version do
-  unless ENV['VERSION']
-    puts 'Must pass a VERSION=x.y.z release version'
-    exit
-  end
-  unless ENV['VERSION'] == VERS
-    puts &quot;Please update your version.rb to match the release version, currently #{VERS}&quot;
-    exit
-  end
-end
-
-Rake::RDocTask.new('docs') do |rd|
-  rd.main = 'RDOC_README.txt'
-  rd.rdoc_files.include('RDOC_README.txt', 'History.txt', 'License.txt', 'lib/**/*.rb')
-  rd.rdoc_dir = 'doc'
-  rd.options &lt;&lt; '--style=http://clickatell.rubyforge.org/stylesheets/rdoc.css'
-  rd.options &lt;&lt; '--tab-width=2'
-  rd.options &lt;&lt; '--inline-source'
-  rd.options &lt;&lt; '--line-numbers'
-end
-
-namespace :spec do
-  desc &quot;Run the specs under spec&quot;
-  Spec::Rake::SpecTask.new('all') do |t|
-    t.spec_opts = ['--options', &quot;spec/spec.opts&quot;]
-    t.spec_files = FileList['spec/*_spec.rb']
-  end
-  
-  desc &quot;Run the specs under spec in specdoc format&quot;
-  Spec::Rake::SpecTask.new('doc') do |t|
-    t.spec_opts = ['--format', &quot;specdoc&quot;]
-    t.spec_files = FileList['spec/*_spec.rb']
-  end
-  
-  desc &quot;Run the specs in HTML format&quot;
-  Spec::Rake::SpecTask.new('html') do |t|
-    t.spec_files = FileList['spec/*_spec.rb']
-    t.spec_opts = ['--format', &quot;html:website/specs.html&quot;]
+begin
+  require &quot;rake/contrib/sshpublisher&quot;
+  namespace :rubyforge do
+    
+    desc &quot;Release gem and RDoc documentation to RubyForge&quot;
+    task :release =&gt; [&quot;rubyforge:release:gem&quot;, &quot;rubyforge:release:docs&quot;]
+    
+    namespace :release do
+      desc &quot;Release a new version of this gem&quot;
+      task :gem =&gt; [:package] do
+        require 'rubyforge'
+        rubyforge = RubyForge.new
+        rubyforge.configure
+        rubyforge.login
+        rubyforge.userconfig['release_notes'] = spec.summary
+        path_to_gem = File.join(File.dirname(__FILE__), &quot;pkg&quot;, &quot;#{spec.name}-#{spec.version}.gem&quot;)
+        puts &quot;Publishing #{spec.name}-#{spec.version.to_s} to Rubyforge...&quot;
+        rubyforge.add_release(spec.rubyforge_project, spec.name, spec.version.to_s, path_to_gem)
+      end
+    
+      desc &quot;Publish RDoc to RubyForge.&quot;
+      task :docs =&gt; [:rdoc] do
+        config = YAML.load(
+            File.read(File.expand_path('~/.rubyforge/user-config.yml'))
+        )
+ 
+        host = &quot;#{config['username']}@rubyforge.org&quot;
+        remote_dir = &quot;/var/www/gforge-projects/clickatell/&quot; # Should be the same as the rubyforge project name
+        local_dir = 'rdoc'
+ 
+        Rake::SshDirPublisher.new(host, remote_dir, local_dir).upload
+      end
+    end
   end
-end
-
-desc &quot;Default task is to run specs&quot;
-task :default =&gt; 'spec:all'
+rescue LoadError
+  puts &quot;Rake SshDirPublisher is unavailable or your rubyforge environment is not configured.&quot;
+end
\ No newline at end of file</diff>
      <filename>Rakefile</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>setup.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>afa7f5e7b925acccec2e18ef5b5cc1aad2592dbe</id>
    </parent>
  </parents>
  <author>
    <name>Luke Redpath</name>
    <email>contact@lukeredpath.co.uk</email>
  </author>
  <url>http://github.com/lukeredpath/clickatell/commit/f3431ba0acff9fcf35985de826d62c913a23b36e</url>
  <id>f3431ba0acff9fcf35985de826d62c913a23b36e</id>
  <committed-date>2009-06-25T04:02:00-07:00</committed-date>
  <authored-date>2009-06-25T04:02:00-07:00</authored-date>
  <message>Cleared a lot of gumph from the Rakefile courtesy of gem-this, and added
a gemspec file for github gem goodness.</message>
  <tree>58add6b5143f9f264580ca9c40a09eaf3b0ecf10</tree>
  <committer>
    <name>Luke Redpath</name>
    <email>contact@lukeredpath.co.uk</email>
  </committer>
</commit>
