diff --git a/README.md b/README.md
deleted file mode 100644
index 4fe9bcd..0000000
--- a/README.md
+++ /dev/null
@@ -1,79 +0,0 @@
-# Ruby Holidays Gem
-
-A set of functions to deal with holidays in Ruby.
-
-Extends Ruby's built-in Date class and supports custom holiday definition lists.
-
-### Installation
-
-To install the gem from RubyForge:
-
- gem install holidays
-
-Or, download the source .tgz file from http://rubyforge.org/holidays and
-extract it somewhere in your include path.
-
-
-### Using the Holidays class
-Get all holidays on April 25, 2008 in Australia.
-
- date = Date.civil(2008,4,25)
-
- Holidays.on(date, :au)
- => [{:name => 'ANZAC Day',...}]
-
-Get holidays that are observed on July 2, 2007 in British Columbia, Canada.
-
- date = Date.civil(2007,7,2)
-
- Holidays.on(date, :ca_bc, :observed)
- => [{:name => 'Canada Day',...}]
-
-Get all holidays in July, 2008 in Canada and the US.
-
- from = Date.civil(2008,7,1)
- to = Date.civil(2008,7,31)
-
- Holidays.between(from, to, :ca, :us)
- => [{:name => 'Canada Day',...}
- {:name => 'Independence Day',...}]
-
-Get informal holidays in February.
-
- from = Date.civil(2008,2,1)
- to = Date.civil(2008,2,15)
-
- Holidays.between(from, to)
- => [{:name => 'Valentine\'s Day',...}]
-
-
-### Extending Ruby's Date class
-Check which holidays occur in Iceland on January 1, 2008.
-
- d = Date.civil(2008,7,1)
-
- d.holidays(:is)
- => [{:name => 'Nýársdagur'}...]
-
-Lookup Canada Day in different regions.
-
- d = Date.civil(2008,7,1)
-
- d.holiday?(:ca) # Canada
- => true
-
- d.holiday?(:ca_bc) # British Columbia, Canada
- => true
-
- d.holiday?(:fr) # France
- => false
-
-### Credits and code
-
-* Project page: http://code.dunae.ca/holidays
-* Source: http://code.dunae.ca/svn/holidays
-* Docs: http://code.dunae.ca/holidays/doc
-
-By Alex Dunae (dunae.ca, e-mail 'code' at the same domain), 2007-08.
-
-Made on Vancouver Island.
\ No newline at end of file
diff --git a/README b/README.rdoc
similarity index 78%
rename from README
rename to README.rdoc
index ceeb60a..f950b4f 100644
--- a/README
+++ b/README.rdoc
@@ -1,76 +1,77 @@
= Ruby Holidays Gem
A set of functions to deal with holidays in Ruby.
-
+
Extends Ruby's built-in Date class and supports custom holiday definition lists.
-
+
=== Installation
-
-To install the gem from RubyForge:
-
- gem install holidays
-
-Or, download the source .tgz file from http://rubyforge.org/holidays and
+
+To install the gem from GitHub:
+
+ gem sources -a http://gems.github.com
+ gem install holidays
+
+Or, download the source .tgz file from http://rubyforge.org/holidays and
extract it somewhere in your include path.
-
+
=== Examples
-
+
For more information, see the notes at the top of the Holidays module.
-
+
==== Using the Holidays class
Get all holidays on April 25, 2008 in Australia.
date = Date.civil(2008,4,25)
-
+
Holidays.on(date, :au)
=> [{:name => 'ANZAC Day',...}]
-
+
Get holidays that are observed on July 2, 2007 in British Columbia, Canada.
date = Date.civil(2007,7,2)
-
+
Holidays.on(date, :ca_bc, :observed)
=> [{:name => 'Canada Day',...}]
-
+
Get all holidays in July, 2008 in Canada and the US.
from = Date.civil(2008,7,1)
- to = Date.civil(2008,7,31)
-
+ to = Date.civil(2008,7,31)
+
Holidays.between(from, to, :ca, :us)
=> [{:name => 'Canada Day',...}
{:name => 'Independence Day',...}]
-
+
Get informal holidays in February.
from = Date.civil(2008,2,1)
- to = Date.civil(2008,2,15)
-
+ to = Date.civil(2008,2,15)
+
Holidays.between(from, to)
=> [{:name => 'Valentine\'s Day',...}]
-
-
+
+
==== Extending Ruby's Date class
Check which holidays occur in Iceland on January 1, 2008.
d = Date.civil(2008,7,1)
-
+
d.holidays(:is)
=> [{:name => 'Nýársdagur'}...]
-
+
Lookup Canada Day in different regions.
d = Date.civil(2008,7,1)
-
- d.holiday?(:ca) # Canada
+
+ d.holiday?(:ca) # Canada
=> true
-
- d.holiday?(:ca_bc) # British Columbia, Canada
+
+ d.holiday?(:ca_bc) # British Columbia, Canada
=> true
-
- d.holiday?(:fr) # France
+
+ d.holiday?(:fr) # France
=> false
-
+
=== Credits and code
-
+
* Project page: http://code.dunae.ca/holidays
-* Source: http://code.dunae.ca/svn/holidays
+* Source: http://github.com/alexdunae/holidays
* Docs: http://code.dunae.ca/holidays/doc
-
+
By Alex Dunae (dunae.ca, e-mail 'code' at the same domain), 2007-08.
-
-Made on Vancouver Island.
\ No newline at end of file
+
+Made on Vancouver Island.
diff --git a/rakefile.rb b/rakefile.rb
index db84d28..841af08 100644
--- a/rakefile.rb
+++ b/rakefile.rb
@@ -1,113 +1,113 @@
-require 'rake'
-require 'rake/testtask'
-require 'rake/rdoctask'
-require 'rake/gempackagetask'
-require 'yaml'
-require 'fileutils'
-require 'lib/holidays'
-require 'data/build_defs'
-
-desc 'Run all tests'
-task :test => ["test:lib", "test:defs"]
-
-namespace :test do
- desc 'Run the unit tests.'
- Rake::TestTask.new(:lib) do |t|
- t.libs << 'lib'
- t.test_files = FileList['test/defs/test*.rb'].exclude('test_helper.rb')
- t.verbose = false
- end
-
- desc 'Run the definition tests.'
- Rake::TestTask.new(:defs) do |t|
- t.libs << 'lib'
- t.test_files = FileList['test/test*.rb'].exclude('test_helper.rb')
- t.verbose = false
- end
-end
-
-task :doc => ["defs:manifest", :rdoc]
-
-desc 'Generate documentation.'
-Rake::RDocTask.new(:rdoc) do |rdoc|
- rdoc.rdoc_dir = 'doc'
- rdoc.title = 'Ruby Holidays Gem'
- rdoc.options << '--all' << '--inline-source' << '--line-numbers'
- rdoc.options << '--charset' << 'utf-8'
- #rdoc.template = 'extras/rdoc_template.rb'
- rdoc.rdoc_files.include('README')
- rdoc.rdoc_files.include('data/SYNTAX')
- rdoc.rdoc_files.include('lib/holidays/MANIFEST')
- rdoc.rdoc_files.include('REFERENCES')
- rdoc.rdoc_files.include('CHANGELOG')
- rdoc.rdoc_files.include('LICENSE')
- rdoc.rdoc_files.include('lib/*.rb')
-end
-
-spec = Gem::Specification.new do |s|
- s.name = 'holidays'
- s.version = '0.9.3'
- s.author = 'Alex Dunae'
- s.homepage = 'http://code.dunae.ca/holidays'
- s.platform = Gem::Platform::RUBY
- s.description = <<-EOF
- A collection of Ruby methods to deal with statutory and other holidays. You deserve a holiday!
- EOF
- s.summary = 'A collection of Ruby methods to deal with statutory and other holidays. You deserve a holiday!'
- s.files = FileList["{lib}/**/*", "{data}/**/*", "*.rb"].to_a
- s.test_files = FileList['test/defs/test*.rb'].exclude('test_helper.rb')
- s.has_rdoc = true
- s.extra_rdoc_files = ['README', 'data/SYNTAX', 'lib/holidays/MANIFEST', 'REFERENCES', 'CHANGELOG', 'LICENSE']
- s.rdoc_options << '--all' << '--inline-source' << '--line-numbers' << '--charset' << 'utf-8'
-end
-
-desc 'Build the gem.'
-Rake::GemPackageTask.new(spec) do |pkg|
- pkg.need_zip = true
- pkg.need_tar = true
-end
-
-desc 'Definition file tasks'
-namespace :defs do
- DATA_PATH = 'data'
-
- desc 'Build holiday definition files'
- task :build_all do
- # load the index
- def_index = YAML.load_file("#{DATA_PATH}/index.yaml")
-
- # create a dir for the generated tests
- FileUtils.mkdir_p('test/defs')
-
- def_index['defs'].each do |region, files|
- puts "Building #{region} definition module:"
- files = files.collect { |f| "#{DATA_PATH}/#{f}" }
- files.uniq!
-
- module_src, test_src = parse_holiday_defs(region, files)
- File.open("lib/holidays/#{region.downcase.to_s}.rb","w") do |file|
- file.puts module_src
- end
- unless test_src.empty?
- File.open("test/defs/test_defs_#{region.downcase.to_s}.rb","w") do |file|
- file.puts test_src
- end
- end
- puts "Done.\n\n"
- end
- end
-
- desc 'Build the definition manifest.'
- task :manifest do
- File.open("lib/holidays/MANIFEST","w") do |file|
- file.puts <<-EOH
-==== Regional definitions
-The following definition files are included in this installation:
-
- EOH
- FileList.new('lib/holidays/*.rb').each do |str|
- file.puts('* ' + str.gsub(/^lib\/|\.rb$/, ''))
- end
- end
- end
+require 'rake'
+require 'rake/testtask'
+require 'rake/rdoctask'
+require 'rake/gempackagetask'
+require 'yaml'
+require 'fileutils'
+require 'lib/holidays'
+require 'data/build_defs'
+
+desc 'Run all tests'
+task :test => ["test:lib", "test:defs"]
+
+namespace :test do
+ desc 'Run the unit tests.'
+ Rake::TestTask.new(:lib) do |t|
+ t.libs << 'lib'
+ t.test_files = FileList['test/defs/test*.rb'].exclude('test_helper.rb')
+ t.verbose = false
+ end
+
+ desc 'Run the definition tests.'
+ Rake::TestTask.new(:defs) do |t|
+ t.libs << 'lib'
+ t.test_files = FileList['test/test*.rb'].exclude('test_helper.rb')
+ t.verbose = false
+ end
+end
+
+task :doc => ["defs:manifest", :rdoc]
+
+desc 'Generate documentation.'
+Rake::RDocTask.new(:rdoc) do |rdoc|
+ rdoc.rdoc_dir = 'doc'
+ rdoc.title = 'Ruby Holidays Gem'
+ rdoc.options << '--all' << '--inline-source' << '--line-numbers'
+ rdoc.options << '--charset' << 'utf-8'
+ #rdoc.template = 'extras/rdoc_template.rb'
+ rdoc.rdoc_files.include('README.rdoc')
+ rdoc.rdoc_files.include('data/SYNTAX')
+ rdoc.rdoc_files.include('lib/holidays/MANIFEST')
+ rdoc.rdoc_files.include('REFERENCES')
+ rdoc.rdoc_files.include('CHANGELOG')
+ rdoc.rdoc_files.include('LICENSE')
+ rdoc.rdoc_files.include('lib/*.rb')
+end
+
+spec = Gem::Specification.new do |s|
+ s.name = 'holidays'
+ s.version = '0.9.3'
+ s.author = 'Alex Dunae'
+ s.homepage = 'http://code.dunae.ca/holidays'
+ s.platform = Gem::Platform::RUBY
+ s.description = <<-EOF
+ A collection of Ruby methods to deal with statutory and other holidays. You deserve a holiday!
+ EOF
+ s.summary = 'A collection of Ruby methods to deal with statutory and other holidays. You deserve a holiday!'
+ s.files = FileList["{lib}/**/*", "{data}/**/*", "*.rb"].to_a
+ s.test_files = FileList['test/defs/test*.rb'].exclude('test_helper.rb')
+ s.has_rdoc = true
+ s.extra_rdoc_files = ['README.rdoc', 'data/SYNTAX', 'lib/holidays/MANIFEST', 'REFERENCES', 'CHANGELOG', 'LICENSE']
+ s.rdoc_options << '--all' << '--inline-source' << '--line-numbers' << '--charset' << 'utf-8'
+end
+
+desc 'Build the gem.'
+Rake::GemPackageTask.new(spec) do |pkg|
+ pkg.need_zip = true
+ pkg.need_tar = true
+end
+
+desc 'Definition file tasks'
+namespace :defs do
+ DATA_PATH = 'data'
+
+ desc 'Build holiday definition files'
+ task :build_all do
+ # load the index
+ def_index = YAML.load_file("#{DATA_PATH}/index.yaml")
+
+ # create a dir for the generated tests
+ FileUtils.mkdir_p('test/defs')
+
+ def_index['defs'].each do |region, files|
+ puts "Building #{region} definition module:"
+ files = files.collect { |f| "#{DATA_PATH}/#{f}" }
+ files.uniq!
+
+ module_src, test_src = parse_holiday_defs(region, files)
+ File.open("lib/holidays/#{region.downcase.to_s}.rb","w") do |file|
+ file.puts module_src
+ end
+ unless test_src.empty?
+ File.open("test/defs/test_defs_#{region.downcase.to_s}.rb","w") do |file|
+ file.puts test_src
+ end
+ end
+ puts "Done.\n\n"
+ end
+ end
+
+ desc 'Build the definition manifest.'
+ task :manifest do
+ File.open("lib/holidays/MANIFEST","w") do |file|
+ file.puts <<-EOH
+==== Regional definitions
+The following definition files are included in this installation:
+
+ EOH
+ FileList.new('lib/holidays/*.rb').each do |str|
+ file.puts('* ' + str.gsub(/^lib\/|\.rb$/, ''))
+ end
+ end
+ end
end
\ No newline at end of file