Rakefile in foursquare-oauth-0.2.2 vs Rakefile in foursquare-oauth-0.2.3
- old
+ new
@@ -2,51 +2,59 @@
require 'rake/gempackagetask'
require 'rubygems/specification'
require 'date'
require 'spec/rake/spectask'
-spec = Gem::Specification.new do |s|
- s.name = "foursquare-oauth"
- s.version = '0.2.2'
- s.authors = ['Jeremy Welch', 'Thomas Hanley', 'Elise Wood']
- s.email = "hello@jeremyrwelch.com"
- s.homepage = "http://github.com/glytch/Foursquare"
- s.description = s.summary = "A simple Ruby wrapper for the Foursquare API"
- s.post_install_message = "NOTE: This version of the Foursquare Gem has significant changes to the way methods are called. Please review the examples in the README"
-
- s.platform = Gem::Platform::RUBY
- s.has_rdoc = true
- s.extra_rdoc_files = ["README.rdoc", "History"]
-
- s.require_path = 'lib'
- s.autorequire = 'foursquare'
- s.files = %w(README.rdoc Rakefile History) + Dir.glob("{lib,spec,script,examples}/**/*")
-
- s.add_dependency('httparty', '0.4.3')
- s.add_dependency('oauth', '0.3.6')
- s.add_dependency('hashie', '0.1.5')
-end
+begin
+ require 'jeweler'
+ Jeweler::Tasks.new do |s|
+ s.name = "foursquare-oauth"
+ s.version = '0.2.3'
+ s.authors = ['Jeremy Welch', 'Thomas Hanley', 'Elise Wood']
+ s.email = "hello@jeremyrwelch.com"
+ s.homepage = "http://github.com/glytch/Foursquare"
+ s.description = s.summary = "A simple Ruby wrapper for the Foursquare API"
+ s.post_install_message = "NOTE: This version of the Foursquare Gem has significant changes to the way methods are called. Please review the examples in the README"
-task :default => :spec
+ s.platform = Gem::Platform::RUBY
+ s.has_rdoc = true
+ s.extra_rdoc_files = ["README.rdoc", "History"]
-desc "Run specs"
+ s.require_path = 'lib'
+ s.autorequire = 'foursquare'
+ s.files = %w(README.rdoc Rakefile History) + Dir.glob("{lib,spec,script,examples}/**/*")
+
+ s.add_dependency('httparty', '0.5.0')
+ s.add_dependency('oauth', '0.3.6')
+ s.add_dependency('hashie', '0.1.5')
+ end
+rescue LoadError
+ puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
+end
+
Spec::Rake::SpecTask.new do |t|
t.spec_files = FileList['spec/**/*_spec.rb']
- t.spec_opts = %w(-fs --color)
end
-
-Rake::GemPackageTask.new(spec) do |pkg|
- pkg.gem_spec = spec
+desc "Run all examples with RCov"
+Spec::Rake::SpecTask.new('rcov') do |t|
+ t.spec_files = FileList['spec/**/*_spec.rb']
+ t.rcov = true
end
-desc "install the gem locally"
-task :install => [:package] do
- sh %{sudo gem install pkg/#{GEM}-#{GEM_VERSION}}
+desc 'Confirm that gemspec is $SAFE'
+task :safe do
+ require 'yaml'
+ require 'rubygems/specification'
+ data = File.read('rack-oauth.gemspec')
+ spec = nil
+ if data !~ %r{!ruby/object:Gem::Specification}
+ Thread.new { spec = eval("$SAFE = 3\n#{data}") }.join
+ else
+ spec = YAML.load(data)
+ end
+ spec.validate
+ puts spec
+ puts "OK"
end
-desc "create a gemspec file"
-task :make_spec do
- File.open("foursquare.gemspec", "w") do |file|
- file.puts spec.to_ruby
- end
-end
+task :default => :spec
\ No newline at end of file