From 81330e7aadd99ce76ce7cfd086c2930c66895780 Mon Sep 17 00:00:00 2001 From: Adam Meehan Date: Sat, 6 Dec 2008 14:58:05 +1100 Subject: [PATCH] gemified using newgem with --simple option --- Rakefile | 59 +++++++++++++++++++++++++++++++----- TODO | 7 +++++ validates_timeliness.gemspec | 30 ++++++++++++++++++ 3 files changed, 88 insertions(+), 8 deletions(-) create mode 100644 TODO create mode 100644 validates_timeliness.gemspec diff --git a/Rakefile b/Rakefile index 11dd1bb..612eb44 100644 --- a/Rakefile +++ b/Rakefile @@ -1,14 +1,57 @@ -require 'rake' -require 'rake/testtask' -require 'rake/rdoctask' +require 'rubygems' +require 'rake/gempackagetask' +require 'rubygems/specification' +require 'date' require 'spec/rake/spectask' -spec_files = Rake::FileList["spec/**/*_spec.rb"] +GEM = "validates_timeliness" +GEM_VERSION = "1.0.0" +AUTHOR = "Adam Meehan" +EMAIL = "adam.meehan@gmail.com" +HOMEPAGE = "http://duckpunching.com" +SUMMARY = "Date and time validation plugin for Rails 2.x which allows custom formats" -desc "Run specs" -Spec::Rake::SpecTask.new do |t| - t.spec_files = spec_files - t.spec_opts = ["-c"] +spec = Gem::Specification.new do |s| + s.name = GEM + s.version = GEM_VERSION + s.platform = Gem::Platform::RUBY + s.has_rdoc = true + s.extra_rdoc_files = ["README.rdoc", "LICENSE", 'TODO'] + s.summary = SUMMARY + s.description = s.summary + s.author = AUTHOR + s.email = EMAIL + s.homepage = HOMEPAGE + + # Uncomment this to add a dependency + # s.add_dependency "foo" + + s.require_path = 'lib' + s.autorequire = GEM + s.files = %w(LICENSE README.rdoc Rakefile TODO) + Dir.glob("{lib,spec}/**/*") end task :default => :spec + +desc "Run specs" +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 +end + +desc "install the gem locally" +task :install => [:package] do + sh %{sudo gem install pkg/#{GEM}-#{GEM_VERSION}} +end + +desc "create a gemspec file" +task :make_spec do + File.open("#{GEM}.gemspec", "w") do |file| + file.puts spec.to_ruby + end +end diff --git a/TODO b/TODO new file mode 100644 index 0000000..6c7bad5 --- /dev/null +++ b/TODO @@ -0,0 +1,7 @@ +- :format option +- :with_date and :with_time options +- Merb and Data Mapper support + - does it have before_type_cast + - timezone handling + - view helper support +- valid formats could come from locale file diff --git a/validates_timeliness.gemspec b/validates_timeliness.gemspec new file mode 100644 index 0000000..3531977 --- /dev/null +++ b/validates_timeliness.gemspec @@ -0,0 +1,30 @@ +# -*- encoding: utf-8 -*- + +Gem::Specification.new do |s| + s.name = %q{validates_timeliness} + s.version = "1.0.0" + + s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= + s.authors = ["Adam Meehan"] + s.autorequire = %q{validates_timeliness} + s.date = %q{2008-12-06} + s.description = %q{Date and time validation plugin for Rails 2.x which allows custom formats} + s.email = %q{adam.meehan@gmail.com} + s.extra_rdoc_files = ["README.rdoc", "LICENSE", "TODO"] + s.files = ["LICENSE", "README.rdoc", "Rakefile", "TODO", "lib/validates_timeliness", "lib/validates_timeliness/core_ext", "lib/validates_timeliness/core_ext/date.rb", "lib/validates_timeliness/core_ext/date_time.rb", "lib/validates_timeliness/core_ext/time.rb", "lib/validates_timeliness/action_view", "lib/validates_timeliness/action_view/instance_tag.rb", "lib/validates_timeliness/locale", "lib/validates_timeliness/locale/en.yml", "lib/validates_timeliness/validation_methods.rb", "lib/validates_timeliness/active_record", "lib/validates_timeliness/active_record/attribute_methods.rb", "lib/validates_timeliness/active_record/multiparameter_attributes.rb", "lib/validates_timeliness/formats.rb", "lib/validates_timeliness/validator.rb", "lib/validates_timeliness/spec", "lib/validates_timeliness/spec/rails", "lib/validates_timeliness/spec/rails/matchers", "lib/validates_timeliness/spec/rails/matchers/validate_timeliness.rb", "lib/validates_timeliness.rb", "spec/core_ext", "spec/core_ext/dummy_time_spec.rb", "spec/validator_spec.rb", "spec/action_view", "spec/action_view/instance_tag_spec.rb", "spec/ginger_scenarios.rb", "spec/validation_methods_spec.rb", "spec/spec_helper.rb", "spec/formats_spec.rb", "spec/active_record", "spec/active_record/attribute_methods_spec.rb", "spec/active_record/multiparameter_attributes_spec.rb", "spec/time_travel", "spec/time_travel/time_travel.rb", "spec/time_travel/time_extensions.rb", "spec/time_travel/MIT-LICENSE", "spec/spec", "spec/spec/rails", "spec/spec/rails/matchers", "spec/spec/rails/matchers/validate_timeliness_spec.rb", "spec/resources", "spec/resources/person.rb", "spec/resources/sqlite_patch.rb", "spec/resources/schema.rb", "spec/resources/application.rb"] + s.has_rdoc = true + s.homepage = %q{http://duckpunching.com} + s.require_paths = ["lib"] + s.rubygems_version = %q{1.3.1} + s.summary = %q{Date and time validation plugin for Rails 2.x which allows custom formats} + + if s.respond_to? :specification_version then + current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION + s.specification_version = 2 + + if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then + else + end + else + end +end