# -*- ruby -*-

require "rubygems"
require "hoe"
require './lib/rack/svelte/version.rb'

Hoe.plugin :gemspec
Hoe.plugin :minitest
Hoe.plugin :yard
Hoe.plugin :bundler
Hoe.plugin :git
Hoe.plugin :ignore

Hoe.spec "svelte-rack" do
  developer("So Awesome Man", "callme@1800aweso.me")

  license "MIT" # this should match the license in the README

  self.email                = 'support@bordee.com'

  self.name                 = 'svelte-rack'
  self.version              = Rack::Svelte::VERSION
  self.summary              = 'Rack middleware to render Svelte components to Javascript'
  self.description          = self.summary
  self.urls                 = ['https://github.com/bordeeinc/svelte-rack']
  self.testlib              = :minitest
  self.readme_file          = 'README.md'
  self.history_file         = 'History.txt'

  # third-party
  self.yard_title           = self.name
  self.yard_markup          = 'markdown'

  if Object.const_defined?('Yard')
    self.extra_deps += [
      ['svelte-ruby',               '~> 0.1'],
      ['rack',                      '~> 2.0']
    ]
  end

  self.extra_dev_deps += [
    ["hoe-yard",                  "~> 0.1"],
    ["hoe-ignore",                "~> 1.0"],
    ["hoe-bundler",               "~> 1.2"],
    ["hoe-gemspec",               "~> 1.0"],
    ["hoe-git",                   "~> 1.6"],
    ["minitest",                  "~> 5.9"],
    ["yard",                      "~> 0.8"],
    ["redcarpet",                 "~> 3.3"] # yard/markdown
  ]

  self.clean_globs += [
    '.yardoc',
    'vendor',
    'Gemfile.lock',
    '.bundle',
  ]

  self.spec_extras = {
    # Rack 2.0 require Ruby 2.2.2
    :required_ruby_version => '>= 2.2.2'
  }
end

# require rake tasks
current_dir = File.expand_path(File.dirname(__FILE__))
Dir.glob(File.join(current_dir, 'lib/tasks/*.rake')).each {|r| import r} 

# vim: syntax=ruby

#
# require 'rake'
# 
# begin
#   require 'jeweler'
#   Jeweler::Tasks.new do |gem|
#     gem.name = "rack-tidy"
#     gem.summary = %Q{Rack middleware for automatically cleaning markup using Tidy}
#     gem.description = %Q{Rack middleware for automatically cleaning markup using Tidy}
#     gem.email = "rbialek@gmail.com"
#     gem.homepage = "http://github.com/rbialek/rack-tidy"
#     gem.authors = ["Phil Misiowiec","Robert Bialek"]
#     gem.files = FileList['lib/**/*.rb']
#     gem.add_dependency 'rack', '>= 1.0.0'
#     gem.add_dependency 'tidy', '>= 1.1.2'
#   end
# 
# rescue LoadError
#   puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
# end
# 
# require 'rake/testtask'
# Rake::TestTask.new(:test) do |test|
#   test.libs << 'lib' << 'test'
#   test.pattern = 'test/**/*_test.rb'
#   test.verbose = true
# end
# 
# begin
#   require 'rcov/rcovtask'
#   Rcov::RcovTask.new do |test|
#     test.libs << 'test'
#     test.pattern = 'test/**/*_test.rb'
#     test.verbose = true
#   end
# rescue LoadError
#   task :rcov do
#     abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
#   end
# end
# 
# task :default => :test
# 
# require 'rake/rdoctask'
# Rake::RDocTask.new do |rdoc|
#   if File.exist?('VERSION')
#     version = File.read('VERSION')
#   else
#     version = ""
#   end
# 
#   rdoc.rdoc_dir = 'rdoc'
#   rdoc.title = "rack-tidy #{version}"
#   rdoc.rdoc_files.include('README*')
#   rdoc.rdoc_files.include('lib/**/*.rb')
# end