From c542e7faafae65e0d94d5548ea647ff23049a67d Mon Sep 17 00:00:00 2001 From: winton Date: Mon, 28 Jun 2010 15:33:24 -0700 Subject: [PATCH] Using Bundler instead of Require --- Gemfile | 23 ++++++++++++++++ MIT-LICENSE => LICENSE | 0 README.markdown => README.md | 0 Rakefile | 47 +++++++++++++++++++++++++++++--- bin/gem_template | 3 +- lib/gem_template.rb | 3 +- lib/gem_template/gem_template.rb | 0 lib/gem_template/version.rb | 3 ++ require.rb | 36 ------------------------ spec/spec_helper.rb | 21 ++++++++++++-- 10 files changed, 89 insertions(+), 47 deletions(-) create mode 100644 Gemfile rename MIT-LICENSE => LICENSE (100%) rename README.markdown => README.md (100%) delete mode 100644 lib/gem_template/gem_template.rb create mode 100644 lib/gem_template/version.rb delete mode 100644 require.rb diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..a356077 --- /dev/null +++ b/Gemfile @@ -0,0 +1,23 @@ +source "http://rubygems.org" + +v = { + :bundler => '=0.9.26', + :rake => '=0.8.7', + :rspec => '=1.3.0' +} + +group :gemspec do + gem 'bundler', v[:bundler] +end + +group :gemspec_dev do + gem 'rspec', v[:rspec] +end + +group :rake do + gem 'rake', v[:rake], :require => %w(rake rake/gempackagetask) + gem 'rspec', v[:rspec], :require => %w(spec/rake/spectask) +end + +group :spec do +end \ No newline at end of file diff --git a/MIT-LICENSE b/LICENSE similarity index 100% rename from MIT-LICENSE rename to LICENSE diff --git a/README.markdown b/README.md similarity index 100% rename from README.markdown rename to README.md diff --git a/Rakefile b/Rakefile index 3f74644..d9e8a30 100644 --- a/Rakefile +++ b/Rakefile @@ -1,7 +1,46 @@ -require "#{File.dirname(__FILE__)}/require" -Require.rakefile! +require 'rubygems' +require 'bundler' -# You can delete this after you use it +Bundler.require(:rake) + +def gemspec + @gemspec ||= begin + file = File.expand_path('../gem_template.gemspec', __FILE__) + eval(File.read(file), binding, file) + end +end + +if defined?(Rake::GemPackageTask) + Rake::GemPackageTask.new(gemspec) do |pkg| + pkg.gem_spec = gemspec + end + task :gem => :gemspec +end + +if defined?(Spec::Rake::SpecTask) + desc "Run specs" + Spec::Rake::SpecTask.new do |t| + t.spec_files = FileList['spec/**/*_spec.rb'] + t.spec_opts = %w(-fs --color) + t.warning = true + end + task :spec +end + +desc "Install gem locally" +task :install => :package do + sh %{gem install pkg/#{gemspec.name}-#{gemspec.version}} +end + +desc "Validate the gemspec" +task :gemspec do + gemspec.validate +end + +task :package => :gemspec +task :default => :spec + +# DELETE AFTER USING desc "Rename project" task :rename do name = ENV['NAME'] || File.basename(Dir.pwd) @@ -17,7 +56,7 @@ task :rename do Dir["**/*"].each do |path| next if path.include?('Rakefile') if File.file?(path) - `sed -i "" 's/gem_template/#{name}/g' #{path}` + `sed -i 's/gem_template/#{name}/g' #{path}` end end end \ No newline at end of file diff --git a/bin/gem_template b/bin/gem_template index 5a781fe..ec26d8a 100755 --- a/bin/gem_template +++ b/bin/gem_template @@ -1,4 +1,3 @@ #!/usr/bin/env ruby -require File.expand_path("#{File.dirname(__FILE__)}/../require") -Require.bin! \ No newline at end of file +require File.expand_path(File.dirname(__FILE__) + "/../lib/gem_template") \ No newline at end of file diff --git a/lib/gem_template.rb b/lib/gem_template.rb index 6b51539..68ec676 100644 --- a/lib/gem_template.rb +++ b/lib/gem_template.rb @@ -1,2 +1 @@ -require File.expand_path("#{File.dirname(__FILE__)}/../require") -Require.lib! \ No newline at end of file +require 'gem_template/version' \ No newline at end of file diff --git a/lib/gem_template/gem_template.rb b/lib/gem_template/gem_template.rb deleted file mode 100644 index e69de29..0000000 diff --git a/lib/gem_template/version.rb b/lib/gem_template/version.rb new file mode 100644 index 0000000..34fada2 --- /dev/null +++ b/lib/gem_template/version.rb @@ -0,0 +1,3 @@ +module GemTemplate + VERSION = "0.1.0" unless defined?(::GemTemplate::VERSION) +end \ No newline at end of file diff --git a/require.rb b/require.rb deleted file mode 100644 index f36284a..0000000 --- a/require.rb +++ /dev/null @@ -1,36 +0,0 @@ -require 'rubygems' -gem 'require' -require 'require' - -Require do - gem :require, '=0.2.7' - gem(:rake, '=0.8.7') { require 'rake' } - gem :rspec, '=1.3.0' - - gemspec do - author 'Winton Welsh' - dependencies do - gem :require - end - email 'mail@wintoni.us' - name 'gem_template' - homepage "http://github.com/winton/#{name}" - summary "" - version '0.1.0' - end - - bin { require 'lib/gem_template' } - lib { require 'lib/gem_template/gem_template' } - - rakefile do - gem(:rake) { require 'rake/gempackagetask' } - gem(:rspec) { require 'spec/rake/spectask' } - require 'require/tasks' - end - - spec_helper do - require 'require/spec_helper' - require 'lib/gem_template' - require 'pp' - end -end \ No newline at end of file diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 7fece95..54e627a 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,5 +1,20 @@ -require File.expand_path("#{File.dirname(__FILE__)}/../require") -Require.spec_helper! +require 'rubygems' +require 'bundler' + +Bundler.require(:spec) + +require 'lib/gem_template' +require 'pp' Spec::Runner.configure do |config| -end \ No newline at end of file +end + +SPEC = File.expand_path("#{Bundler.root}/spec") +$:.unshift File.expand_path("#{Bundler.root}/lib") + +# For use with rspec textmate bundle +def debug(object) + puts "
"
+  puts object.pretty_inspect.gsub('<', '<').gsub('>', '>')
+  puts "
" +end