dm-constraints 0.9.7 → 0.9.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +4 -0
- data/Manifest.txt +1 -5
- data/Rakefile +18 -19
- data/TODO +0 -3
- data/lib/dm-constraints/data_objects_adapter.rb +2 -0
- data/lib/dm-constraints/version.rb +1 -1
- data/lib/dm-constraints.rb +5 -5
- data/spec/integration/constraints_spec.rb +2 -2
- data/spec/spec.opts +0 -1
- data/spec/spec_helper.rb +11 -13
- data/tasks/install.rb +11 -18
- data/tasks/spec.rb +25 -0
- metadata +11 -14
- data/tasks/ci.rb +0 -68
- data/tasks/dm.rb +0 -63
- data/tasks/doc.rb +0 -20
- data/tasks/gemspec.rb +0 -23
- data/tasks/hoe.rb +0 -46
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
data/Rakefile
CHANGED
@@ -1,26 +1,25 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'spec'
|
3
|
-
require 'spec/rake/spectask'
|
4
1
|
require 'pathname'
|
2
|
+
require 'rubygems'
|
3
|
+
|
4
|
+
ROOT = Pathname(__FILE__).dirname.expand_path
|
5
|
+
JRUBY = RUBY_PLATFORM =~ /java/
|
6
|
+
WINDOWS = Gem.win_platform?
|
7
|
+
SUDO = (WINDOWS || JRUBY) ? '' : ('sudo' unless ENV['SUDOLESS'])
|
5
8
|
|
6
|
-
ROOT = Pathname(__FILE__).dirname.expand_path
|
7
9
|
require ROOT + 'lib/dm-constraints/version'
|
8
10
|
|
9
|
-
AUTHOR =
|
10
|
-
EMAIL =
|
11
|
-
GEM_NAME =
|
11
|
+
AUTHOR = 'Dirkjan Bussink'
|
12
|
+
EMAIL = 'd.bussink [a] gmail [d] com'
|
13
|
+
GEM_NAME = 'dm-constraints'
|
12
14
|
GEM_VERSION = DataMapper::Constraints::VERSION
|
13
|
-
GEM_DEPENDENCIES = [[
|
14
|
-
GEM_CLEAN = [
|
15
|
-
GEM_EXTRAS = { :has_rdoc => true, :extra_rdoc_files => %w[ README.txt LICENSE TODO ] }
|
15
|
+
GEM_DEPENDENCIES = [['dm-core', "~>#{GEM_VERSION}"]]
|
16
|
+
GEM_CLEAN = %w[ log pkg coverage ]
|
17
|
+
GEM_EXTRAS = { :has_rdoc => true, :extra_rdoc_files => %w[ README.txt LICENSE TODO History.txt ] }
|
16
18
|
|
17
|
-
PROJECT_NAME =
|
18
|
-
PROJECT_URL = "http://github.com/sam/dm-more/tree/master
|
19
|
-
PROJECT_DESCRIPTION = PROJECT_SUMMARY =
|
19
|
+
PROJECT_NAME = 'datamapper'
|
20
|
+
PROJECT_URL = "http://github.com/sam/dm-more/tree/master/#{GEM_NAME}"
|
21
|
+
PROJECT_DESCRIPTION = PROJECT_SUMMARY = 'DataMapper plugin constraining relationships'
|
20
22
|
|
21
|
-
|
22
|
-
require
|
23
|
-
|
24
|
-
require ROOT + 'tasks/dm'
|
25
|
-
require ROOT + 'tasks/doc'
|
26
|
-
require ROOT + 'tasks/ci'
|
23
|
+
[ ROOT, ROOT.parent ].each do |dir|
|
24
|
+
Pathname.glob(dir.join('tasks/**/*.rb').to_s).each { |f| require f }
|
25
|
+
end
|
@@ -69,6 +69,7 @@ module DataMapper
|
|
69
69
|
descendants.each do |model|
|
70
70
|
if model.storage_exists?(repository_name)
|
71
71
|
adapter = model.repository(repository_name).adapter
|
72
|
+
next unless adapter.respond_to?(:destroy_constraints_statements)
|
72
73
|
statements = adapter.destroy_constraints_statements(repository_name, model)
|
73
74
|
statements.each {|stmt| adapter.execute(stmt) }
|
74
75
|
end
|
@@ -79,6 +80,7 @@ module DataMapper
|
|
79
80
|
descendants = DataMapper::Resource.descendants.to_a if descendants.empty?
|
80
81
|
descendants.each do |model|
|
81
82
|
adapter = model.repository(repository_name).adapter
|
83
|
+
next unless adapter.respond_to?(:create_constraints_statements)
|
82
84
|
statements = adapter.create_constraints_statements(repository_name, model)
|
83
85
|
statements.each {|stmt| adapter.execute(stmt) }
|
84
86
|
end
|
data/lib/dm-constraints.rb
CHANGED
@@ -3,7 +3,7 @@ require 'rubygems'
|
|
3
3
|
require 'pathname'
|
4
4
|
|
5
5
|
# Add all external dependencies for the plugin here
|
6
|
-
gem 'dm-core', '~>0.9.
|
6
|
+
gem 'dm-core', '~>0.9.8'
|
7
7
|
require 'dm-core'
|
8
8
|
|
9
9
|
# Require plugin-files
|
@@ -18,12 +18,12 @@ module DataMapper
|
|
18
18
|
end
|
19
19
|
|
20
20
|
module Adapters
|
21
|
-
|
22
|
-
include DataMapper::Constraints::MysqlAdapter::SQL
|
21
|
+
if defined?(MysqlAdapter)
|
22
|
+
MysqlAdapter.send :include, DataMapper::Constraints::MysqlAdapter::SQL
|
23
23
|
end
|
24
24
|
|
25
|
-
|
26
|
-
include DataMapper::Constraints::PostgresAdapter::SQL
|
25
|
+
if defined?(PostgresAdapter)
|
26
|
+
PostgresAdapter.send :include, DataMapper::Constraints::PostgresAdapter::SQL
|
27
27
|
end
|
28
28
|
end
|
29
29
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'pathname'
|
2
2
|
require Pathname(__FILE__).dirname.expand_path.parent + 'spec_helper'
|
3
3
|
|
4
|
-
|
4
|
+
ADAPTERS.each do |adapter|
|
5
5
|
|
6
6
|
describe 'DataMapper::Constraints' do
|
7
7
|
|
@@ -57,7 +57,7 @@ require Pathname(__FILE__).dirname.expand_path.parent + 'spec_helper'
|
|
57
57
|
end
|
58
58
|
|
59
59
|
it "should not be able to create related objects with a failing foreign key constraint" do
|
60
|
-
s = Stable.
|
60
|
+
s = Stable.create
|
61
61
|
lambda { @c1 = Cow.create(:name => "Bea", :stable_id => s.id + 1) }.should raise_error
|
62
62
|
end
|
63
63
|
|
data/spec/spec.opts
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -1,27 +1,25 @@
|
|
1
|
+
require 'pathname'
|
1
2
|
require 'rubygems'
|
2
|
-
|
3
|
+
|
4
|
+
gem 'rspec', '~>1.1.11'
|
3
5
|
require 'spec'
|
4
|
-
require 'pathname'
|
5
6
|
|
6
|
-
gem 'dm-core', '~>0.9.
|
7
|
+
gem 'dm-core', '~>0.9.8'
|
7
8
|
require 'dm-core'
|
8
9
|
|
10
|
+
ADAPTERS = []
|
9
11
|
def load_driver(name, default_uri)
|
10
|
-
|
11
|
-
lib = "do_#{name}"
|
12
12
|
begin
|
13
|
-
gem lib, '~>0.9.7'
|
14
|
-
require lib
|
15
13
|
DataMapper.setup(name, ENV["#{name.to_s.upcase}_SPEC_URI"] || default_uri)
|
16
|
-
DataMapper::Repository.adapters[:default] =
|
17
|
-
name
|
18
|
-
rescue
|
19
|
-
warn "Could not load #{
|
14
|
+
DataMapper::Repository.adapters[:default] = DataMapper::Repository.adapters[name]
|
15
|
+
ADAPTERS << name
|
16
|
+
rescue LoadError => e
|
17
|
+
warn "Could not load do_#{name}: #{e}"
|
20
18
|
false
|
21
19
|
end
|
22
20
|
end
|
23
21
|
|
24
|
-
|
25
|
-
|
22
|
+
load_driver(:postgres, 'postgres://postgres@localhost/dm_core_test')
|
23
|
+
load_driver(:mysql, 'mysql://localhost/dm_core_test')
|
26
24
|
|
27
25
|
require Pathname(__FILE__).dirname.expand_path.parent + 'lib/dm-constraints'
|
data/tasks/install.rb
CHANGED
@@ -1,20 +1,13 @@
|
|
1
|
-
|
2
|
-
SUDO
|
1
|
+
def sudo_gem(cmd)
|
2
|
+
sh "#{SUDO} #{RUBY} -S gem #{cmd}", :verbose => false
|
3
|
+
end
|
4
|
+
|
5
|
+
desc "Install #{GEM_NAME} #{GEM_VERSION}"
|
6
|
+
task :install => [ :package ] do
|
7
|
+
sudo_gem "install --local pkg/#{GEM_NAME}-#{GEM_VERSION} --no-update-sources"
|
8
|
+
end
|
3
9
|
|
4
|
-
desc "
|
5
|
-
|
6
|
-
|
7
|
-
system %{gem install --no-rdoc --no-ri -l pkg/#{GEM_NAME}-#{GEM_VERSION}.gem}
|
8
|
-
end
|
9
|
-
namespace :dev do
|
10
|
-
desc 'Install for development (for windows)'
|
11
|
-
task :winstall => :gem do
|
12
|
-
warn "You can now call 'rake install' instead of 'rake dev:winstall'."
|
13
|
-
system %{gem install --no-rdoc --no-ri -l pkg/#{GEM_NAME}-#{GEM_VERSION}.gem}
|
14
|
-
end
|
15
|
-
end
|
16
|
-
else
|
17
|
-
task :install => :package do
|
18
|
-
sh %{#{SUDO} gem install --local pkg/#{GEM_NAME}-#{GEM_VERSION}.gem}
|
19
|
-
end
|
10
|
+
desc "Uninstall #{GEM_NAME} #{GEM_VERSION}"
|
11
|
+
task :uninstall => [ :clobber ] do
|
12
|
+
sudo_gem "uninstall #{GEM_NAME} -v#{GEM_VERSION} -Ix"
|
20
13
|
end
|
data/tasks/spec.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
begin
|
2
|
+
gem 'rspec', '~>1.1.11'
|
3
|
+
require 'spec'
|
4
|
+
require 'spec/rake/spectask'
|
5
|
+
|
6
|
+
task :default => [ :spec ]
|
7
|
+
|
8
|
+
desc 'Run specifications'
|
9
|
+
Spec::Rake::SpecTask.new(:spec) do |t|
|
10
|
+
t.spec_opts << '--options' << 'spec/spec.opts' if File.exists?('spec/spec.opts')
|
11
|
+
t.spec_files = Pathname.glob((ROOT + 'spec/**/*_spec.rb').to_s)
|
12
|
+
|
13
|
+
begin
|
14
|
+
gem 'rcov', '~>0.8'
|
15
|
+
t.rcov = JRUBY ? false : (ENV.has_key?('NO_RCOV') ? ENV['NO_RCOV'] != 'true' : true)
|
16
|
+
t.rcov_opts << '--exclude' << 'spec'
|
17
|
+
t.rcov_opts << '--text-summary'
|
18
|
+
t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse'
|
19
|
+
rescue LoadError
|
20
|
+
# rcov not installed
|
21
|
+
end
|
22
|
+
end
|
23
|
+
rescue LoadError
|
24
|
+
# rspec not installed
|
25
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dm-constraints
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dirkjan Bussink
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-
|
12
|
+
date: 2008-12-07 00:00:00 -08:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -18,21 +18,22 @@ dependencies:
|
|
18
18
|
version_requirement:
|
19
19
|
version_requirements: !ruby/object:Gem::Requirement
|
20
20
|
requirements:
|
21
|
-
- -
|
21
|
+
- - ~>
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0.9.
|
23
|
+
version: 0.9.8
|
24
24
|
version:
|
25
|
-
description: DataMapper plugin
|
25
|
+
description: DataMapper plugin constraining relationships
|
26
26
|
email:
|
27
|
-
- d.bussink
|
27
|
+
- d.bussink [a] gmail [d] com
|
28
28
|
executables: []
|
29
29
|
|
30
30
|
extensions: []
|
31
31
|
|
32
32
|
extra_rdoc_files:
|
33
|
-
- History.txt
|
34
|
-
- Manifest.txt
|
35
33
|
- README.txt
|
34
|
+
- LICENSE
|
35
|
+
- TODO
|
36
|
+
- History.txt
|
36
37
|
files:
|
37
38
|
- History.txt
|
38
39
|
- LICENSE
|
@@ -48,12 +49,8 @@ files:
|
|
48
49
|
- spec/integration/constraints_spec.rb
|
49
50
|
- spec/spec.opts
|
50
51
|
- spec/spec_helper.rb
|
51
|
-
- tasks/ci.rb
|
52
|
-
- tasks/dm.rb
|
53
|
-
- tasks/doc.rb
|
54
|
-
- tasks/gemspec.rb
|
55
|
-
- tasks/hoe.rb
|
56
52
|
- tasks/install.rb
|
53
|
+
- tasks/spec.rb
|
57
54
|
has_rdoc: true
|
58
55
|
homepage: http://github.com/sam/dm-more/tree/master/dm-constraints
|
59
56
|
post_install_message:
|
@@ -80,6 +77,6 @@ rubyforge_project: datamapper
|
|
80
77
|
rubygems_version: 1.3.1
|
81
78
|
signing_key:
|
82
79
|
specification_version: 2
|
83
|
-
summary: DataMapper plugin
|
80
|
+
summary: DataMapper plugin constraining relationships
|
84
81
|
test_files: []
|
85
82
|
|
data/tasks/ci.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
task 'ci:doc' => :doc
|
2
|
-
|
3
|
-
namespace :ci do
|
4
|
-
|
5
|
-
task :prepare do
|
6
|
-
rm_rf ROOT + "ci"
|
7
|
-
mkdir_p ROOT + "ci"
|
8
|
-
mkdir_p ROOT + "ci/doc"
|
9
|
-
mkdir_p ROOT + "ci/cyclomatic"
|
10
|
-
mkdir_p ROOT + "ci/token"
|
11
|
-
end
|
12
|
-
|
13
|
-
Spec::Rake::SpecTask.new("spec:unit" => :prepare) do |t|
|
14
|
-
t.spec_opts = ["--format", "specdoc", "--format", "html:#{ROOT}/ci/unit_rspec_report.html", "--diff"]
|
15
|
-
t.spec_files = Pathname.glob((ROOT + 'spec/unit/**/*_spec.rb').to_s)
|
16
|
-
unless ENV['NO_RCOV']
|
17
|
-
t.rcov = true
|
18
|
-
t.rcov_opts << '--exclude' << "spec,gems"
|
19
|
-
t.rcov_opts << '--text-summary'
|
20
|
-
t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse'
|
21
|
-
t.rcov_opts << '--only-uncovered'
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
Spec::Rake::SpecTask.new("spec:integration" => :prepare) do |t|
|
26
|
-
t.spec_opts = ["--format", "specdoc", "--format", "html:#{ROOT}/ci/integration_rspec_report.html", "--diff"]
|
27
|
-
t.spec_files = Pathname.glob((ROOT + 'spec/integration/**/*_spec.rb').to_s)
|
28
|
-
unless ENV['NO_RCOV']
|
29
|
-
t.rcov = true
|
30
|
-
t.rcov_opts << '--exclude' << "spec,gems"
|
31
|
-
t.rcov_opts << '--text-summary'
|
32
|
-
t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse'
|
33
|
-
t.rcov_opts << '--only-uncovered'
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
task :spec do
|
38
|
-
Rake::Task["ci:spec:unit"].invoke
|
39
|
-
mv ROOT + "coverage", ROOT + "ci/unit_coverage"
|
40
|
-
|
41
|
-
Rake::Task["ci:spec:integration"].invoke
|
42
|
-
mv ROOT + "coverage", ROOT + "ci/integration_coverage"
|
43
|
-
end
|
44
|
-
|
45
|
-
task :saikuro => :prepare do
|
46
|
-
system "saikuro -c -i lib -y 0 -w 10 -e 15 -o ci/cyclomatic"
|
47
|
-
mv 'ci/cyclomatic/index_cyclo.html', 'ci/cyclomatic/index.html'
|
48
|
-
|
49
|
-
system "saikuro -t -i lib -y 0 -w 20 -e 30 -o ci/token"
|
50
|
-
mv 'ci/token/index_token.html', 'ci/token/index.html'
|
51
|
-
end
|
52
|
-
|
53
|
-
task :publish do
|
54
|
-
out = ENV['CC_BUILD_ARTIFACTS'] || "out"
|
55
|
-
mkdir_p out unless File.directory? out
|
56
|
-
|
57
|
-
mv "ci/unit_rspec_report.html", "#{out}/unit_rspec_report.html"
|
58
|
-
mv "ci/unit_coverage", "#{out}/unit_coverage"
|
59
|
-
mv "ci/integration_rspec_report.html", "#{out}/integration_rspec_report.html"
|
60
|
-
mv "ci/integration_coverage", "#{out}/integration_coverage"
|
61
|
-
mv "ci/doc", "#{out}/doc"
|
62
|
-
mv "ci/cyclomatic", "#{out}/cyclomatic_complexity"
|
63
|
-
mv "ci/token", "#{out}/token_complexity"
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
#task :ci => %w[ ci:spec ci:doc ci:saikuro install ci:publish ] # yard-related tasks do not work yet
|
68
|
-
task :ci => %w[ ci:spec ci:saikuro install ]
|
data/tasks/dm.rb
DELETED
@@ -1,63 +0,0 @@
|
|
1
|
-
task :default => 'dm:spec'
|
2
|
-
task :spec => 'dm:spec'
|
3
|
-
task :rcov => 'dm:rcov'
|
4
|
-
|
5
|
-
namespace :spec do
|
6
|
-
task :unit => 'dm:spec:unit'
|
7
|
-
task :integration => 'dm:spec:integration'
|
8
|
-
end
|
9
|
-
|
10
|
-
namespace :rcov do
|
11
|
-
task :unit => 'dm:rcov:unit'
|
12
|
-
task :integration => 'dm:rcov:integration'
|
13
|
-
end
|
14
|
-
|
15
|
-
namespace :dm do
|
16
|
-
def run_spec(name, files, rcov)
|
17
|
-
Spec::Rake::SpecTask.new(name) do |t|
|
18
|
-
t.spec_opts << '--colour' << '--loadby' << 'random'
|
19
|
-
t.spec_files = Pathname.glob(ENV['FILES'] || files.to_s)
|
20
|
-
t.rcov = rcov
|
21
|
-
t.rcov_opts << '--exclude' << 'spec,environment.rb'
|
22
|
-
t.rcov_opts << '--text-summary'
|
23
|
-
t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse'
|
24
|
-
t.rcov_opts << '--only-uncovered'
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
unit_specs = ROOT + 'spec/unit/**/*_spec.rb'
|
29
|
-
integration_specs = ROOT + 'spec/integration/**/*_spec.rb'
|
30
|
-
all_specs = ROOT + 'spec/**/*_spec.rb'
|
31
|
-
|
32
|
-
desc "Run all specifications"
|
33
|
-
run_spec('spec', all_specs, false)
|
34
|
-
|
35
|
-
desc "Run all specifications with rcov"
|
36
|
-
run_spec('rcov', all_specs, true)
|
37
|
-
|
38
|
-
namespace :spec do
|
39
|
-
desc "Run unit specifications"
|
40
|
-
run_spec('unit', unit_specs, false)
|
41
|
-
|
42
|
-
desc "Run integration specifications"
|
43
|
-
run_spec('integration', integration_specs, false)
|
44
|
-
end
|
45
|
-
|
46
|
-
namespace :rcov do
|
47
|
-
desc "Run unit specifications with rcov"
|
48
|
-
run_spec('unit', unit_specs, true)
|
49
|
-
|
50
|
-
desc "Run integration specifications with rcov"
|
51
|
-
run_spec('integration', integration_specs, true)
|
52
|
-
end
|
53
|
-
|
54
|
-
desc "Run all comparisons with ActiveRecord"
|
55
|
-
task :perf do
|
56
|
-
sh ROOT + 'script/performance.rb'
|
57
|
-
end
|
58
|
-
|
59
|
-
desc "Profile DataMapper"
|
60
|
-
task :profile do
|
61
|
-
sh ROOT + 'script/profile.rb'
|
62
|
-
end
|
63
|
-
end
|
data/tasks/doc.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
# when yard's ready, it'll have to come back, but for now...
|
2
|
-
Rake::RDocTask.new("doc") do |t|
|
3
|
-
t.rdoc_dir = 'doc'
|
4
|
-
t.title = "DataMapper - Ruby Object Relational Mapper"
|
5
|
-
t.options = ['--line-numbers', '--inline-source', '--all']
|
6
|
-
t.rdoc_files.include("README.txt", "QUICKLINKS", "FAQ", "lib/**/**/*.rb")
|
7
|
-
end
|
8
|
-
|
9
|
-
begin
|
10
|
-
gem 'yard', '>=0.2.1'
|
11
|
-
require 'yard'
|
12
|
-
|
13
|
-
YARD::Rake::YardocTask.new("yardoc") do |t|
|
14
|
-
t.options << '--protected'
|
15
|
-
# t.options << '-q'
|
16
|
-
# t.files << '...anyglobshere...'
|
17
|
-
end
|
18
|
-
rescue Exception
|
19
|
-
# yard not installed
|
20
|
-
end
|
data/tasks/gemspec.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
desc "Generate gemspec"
|
2
|
-
task :gemspec do |x|
|
3
|
-
# Clean up extraneous files before checking manifest
|
4
|
-
%x[rake clean]
|
5
|
-
|
6
|
-
# Check the manifest before generating the gemspec
|
7
|
-
manifest = %x[rake check_manifest]
|
8
|
-
manifest.gsub!("(in /usr/local/projects/dm/dm-core)\n", "")
|
9
|
-
|
10
|
-
unless manifest.empty?
|
11
|
-
print "\n", "#"*68, "\n"
|
12
|
-
print <<-EOS
|
13
|
-
Manifest.txt is not up-to-date. Please review the changes below.
|
14
|
-
If the changes are correct, run 'rake check_manifest | patch'
|
15
|
-
and then run this command again.
|
16
|
-
EOS
|
17
|
-
print "#"*68, "\n\n"
|
18
|
-
puts manifest
|
19
|
-
else
|
20
|
-
%x[rake debug_gem > #{GEM_NAME}.gemspec]
|
21
|
-
puts "Successfully created gemspec for #{GEM_NAME}!"
|
22
|
-
end
|
23
|
-
end
|
data/tasks/hoe.rb
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
require 'hoe'
|
2
|
-
|
3
|
-
@config_file = "~/.rubyforge/user-config.yml"
|
4
|
-
@config = nil
|
5
|
-
RUBYFORGE_USERNAME = "unknown"
|
6
|
-
def rubyforge_username
|
7
|
-
unless @config
|
8
|
-
begin
|
9
|
-
@config = YAML.load(File.read(File.expand_path(@config_file)))
|
10
|
-
rescue
|
11
|
-
puts <<-EOS
|
12
|
-
ERROR: No rubyforge config file found: #{@config_file}
|
13
|
-
Run 'rubyforge setup' to prepare your env for access to Rubyforge
|
14
|
-
- See http://newgem.rubyforge.org/rubyforge.html for more details
|
15
|
-
EOS
|
16
|
-
exit
|
17
|
-
end
|
18
|
-
end
|
19
|
-
RUBYFORGE_USERNAME.replace @config["username"]
|
20
|
-
end
|
21
|
-
|
22
|
-
# Remove hoe dependency
|
23
|
-
class Hoe
|
24
|
-
def extra_dev_deps
|
25
|
-
@extra_dev_deps.reject! { |dep| dep[0] == "hoe" }
|
26
|
-
@extra_dev_deps
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
hoe = Hoe.new(GEM_NAME, GEM_VERSION) do |p|
|
31
|
-
|
32
|
-
p.developer(AUTHOR, EMAIL)
|
33
|
-
|
34
|
-
p.description = PROJECT_DESCRIPTION
|
35
|
-
p.summary = PROJECT_SUMMARY
|
36
|
-
p.url = PROJECT_URL
|
37
|
-
|
38
|
-
p.rubyforge_name = PROJECT_NAME if PROJECT_NAME
|
39
|
-
|
40
|
-
p.clean_globs |= ["{coverage,doc,log,tmp}", "**/*.{log,db}", "profile_results.*", "**/.DS_Store"]
|
41
|
-
|
42
|
-
GEM_DEPENDENCIES.each do |dep|
|
43
|
-
p.extra_deps << dep
|
44
|
-
end
|
45
|
-
|
46
|
-
end
|