hoe 2.12.4 → 2.12.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. data.tar.gz.sig +0 -0
  2. data/History.txt +7 -0
  3. data/lib/hoe.rb +27 -31
  4. data/test/test_hoe.rb +29 -0
  5. metadata +9 -24
  6. metadata.gz.sig +0 -0
data.tar.gz.sig CHANGED
Binary file
data/History.txt CHANGED
@@ -1,3 +1,10 @@
1
+ === 2.12.5 / 2011-12-19
2
+
3
+ * 2 minor enhancements:
4
+
5
+ * Make hoe noisy about missing plugins again.
6
+ * Normalize dev/runtime deps: dev + runtime = runtime.
7
+
1
8
  === 2.12.4 / 2011-11-28
2
9
 
3
10
  * 3 bug fixes:
data/lib/hoe.rb CHANGED
@@ -68,7 +68,7 @@ class Hoe
68
68
  include Rake::DSL if defined?(Rake::DSL)
69
69
 
70
70
  # duh
71
- VERSION = '2.12.4'
71
+ VERSION = '2.12.5'
72
72
 
73
73
  @@plugins = [:clean, :debug, :deps, :flay, :flog, :newb, :package,
74
74
  :publish, :rcov, :gemcutter, :signing, :test]
@@ -372,24 +372,13 @@ class Hoe
372
372
  raise "Unknown dependency type: #{type}" unless
373
373
  [:runtime, :dev, :development, :developer].include? type
374
374
 
375
- # spec has already been defined. A task wants to add a dependency after.
376
- if spec then
377
- msg = if type == :runtime then
378
- :add_dependency
379
- else
380
- :add_development_dependency
381
- end
375
+ ary = if type == :runtime then
376
+ extra_deps
377
+ else
378
+ extra_dev_deps
379
+ end
382
380
 
383
- spec.send msg, name, version
384
- else
385
- ary = if type == :runtime then
386
- extra_deps
387
- else
388
- extra_dev_deps
389
- end
390
-
391
- ary << [name, version]
392
- end
381
+ ary << [name, version]
393
382
  end
394
383
 
395
384
  ##
@@ -406,6 +395,17 @@ class Hoe
406
395
  version = VERSION.split(/\./).first(2).join(".")
407
396
  dependency "hoe", "~> #{version}", :development
408
397
  end
398
+
399
+ runtime = extra_deps.map(&:first)
400
+ extra_dev_deps.reject! { |(name, v)| runtime.include? name }
401
+
402
+ extra_deps.each do |dep|
403
+ spec.add_dependency(*dep)
404
+ end
405
+
406
+ extra_dev_deps.each do |dep|
407
+ spec.add_development_dependency(*dep)
408
+ end
409
409
  end
410
410
 
411
411
  ##
@@ -455,14 +455,6 @@ class Hoe
455
455
  s.author = author
456
456
  end
457
457
 
458
- extra_deps.each do |dep|
459
- s.add_dependency(*dep)
460
- end
461
-
462
- extra_dev_deps.each do |dep|
463
- s.add_development_dependency(*dep)
464
- end
465
-
466
458
  s.extra_rdoc_files += s.files.grep(/txt$/)
467
459
  s.extra_rdoc_files.reject! { |f| f =~ %r%^(test|spec|vendor|template|data|tmp)/% }
468
460
  s.extra_rdoc_files += @extra_rdoc_files
@@ -626,8 +618,7 @@ class Hoe
626
618
  begin
627
619
  send "define_#{plugin}_tasks"
628
620
  rescue NoMethodError
629
- warn "warning: couldn't activate the #{plugin} plugin, skipping" if
630
- Rake.application.options.trace or $DEBUG
621
+ warn "warning: couldn't activate the #{plugin} plugin, skipping"
631
622
 
632
623
  bad << plugin
633
624
  next
@@ -703,9 +694,9 @@ class Hoe
703
694
  def post_initialize
704
695
  intuit_values
705
696
  validate_fields
706
- add_dependencies
707
697
  define_spec
708
698
  load_plugin_tasks
699
+ add_dependencies
709
700
  end
710
701
 
711
702
  ##
@@ -746,13 +737,18 @@ class Hoe
746
737
  end
747
738
 
748
739
  ##
749
- # Loads ~/.hoerc and yields the configuration and its path
740
+ # Loads ~/.hoerc, merges it with a .hoerc in the current pwd (if
741
+ # any) and yields the configuration and its path
750
742
 
751
743
  def with_config
752
744
  rc = File.expand_path("~/.hoerc")
753
745
  exists = File.exist? rc
754
746
  config = exists ? YAML.load_file(rc) : {}
755
- yield(config, rc)
747
+ localrc = File.join Dir.pwd, '.hoerc'
748
+ exists = File.exist? localrc
749
+ localconfig = exists ? YAML.load_file(localrc) : {}
750
+
751
+ yield(config.merge(localconfig), rc)
756
752
  end
757
753
  end
758
754
 
data/test/test_hoe.rb CHANGED
@@ -70,6 +70,35 @@ class TestHoe < MiniTest::Unit::TestCase
70
70
  ENV['HOME'] = home
71
71
  end
72
72
 
73
+ def test_perproject_hoerc
74
+ overrides = {
75
+ 'exclude' => Regexp.union( Hoe::DEFAULT_CONFIG["exclude"], /\.hg/ ),
76
+ 'plugins' => ['tweedledee', 'tweedledum']
77
+ }
78
+ overrides_rcfile = File.join(Dir.pwd, '.hoerc')
79
+
80
+ home = ENV['HOME']
81
+ Hoe.files = nil
82
+
83
+ Dir.mktmpdir do |path|
84
+ ENV['HOME'] = path
85
+
86
+ open File.join(path, '.hoerc'), 'w' do |io|
87
+ io.write YAML.dump( Hoe::DEFAULT_CONFIG )
88
+ end
89
+ open overrides_rcfile, File::CREAT|File::EXCL|File::WRONLY do |io|
90
+ io.write YAML.dump( overrides )
91
+ end
92
+
93
+ hoeconfig = hoe.with_config {|config, _| config }
94
+
95
+ assert_equal Hoe::DEFAULT_CONFIG.merge(overrides), hoeconfig
96
+ end
97
+ ensure
98
+ File.delete overrides_rcfile if File.exist?( overrides_rcfile )
99
+ ENV['HOME'] = home
100
+ end
101
+
73
102
  def test_initialize_plugins_hoerc
74
103
  home = ENV['HOME']
75
104
  load_path = $LOAD_PATH.dup
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hoe
3
3
  version: !ruby/object:Gem::Version
4
- hash: 55
4
+ hash: 53
5
5
  prerelease:
6
6
  segments:
7
7
  - 2
8
8
  - 12
9
- - 4
10
- version: 2.12.4
9
+ - 5
10
+ version: 2.12.5
11
11
  platform: ruby
12
12
  authors:
13
13
  - Ryan Davis
@@ -36,7 +36,7 @@ cert_chain:
36
36
  FBHgymkyj/AOSqKRIpXPhjC6
37
37
  -----END CERTIFICATE-----
38
38
 
39
- date: 2011-11-28 00:00:00 Z
39
+ date: 2011-12-20 00:00:00 Z
40
40
  dependencies:
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
@@ -53,25 +53,10 @@ dependencies:
53
53
  version: "0.8"
54
54
  type: :runtime
55
55
  version_requirements: *id001
56
- - !ruby/object:Gem::Dependency
57
- name: rdoc
58
- prerelease: false
59
- requirement: &id002 !ruby/object:Gem::Requirement
60
- none: false
61
- requirements:
62
- - - ~>
63
- - !ruby/object:Gem::Version
64
- hash: 21
65
- segments:
66
- - 3
67
- - 9
68
- version: "3.9"
69
- type: :development
70
- version_requirements: *id002
71
56
  - !ruby/object:Gem::Dependency
72
57
  name: minitest
73
58
  prerelease: false
74
- requirement: &id003 !ruby/object:Gem::Requirement
59
+ requirement: &id002 !ruby/object:Gem::Requirement
75
60
  none: false
76
61
  requirements:
77
62
  - - ~>
@@ -82,11 +67,11 @@ dependencies:
82
67
  - 8
83
68
  version: "2.8"
84
69
  type: :development
85
- version_requirements: *id003
70
+ version_requirements: *id002
86
71
  - !ruby/object:Gem::Dependency
87
72
  name: rdoc
88
73
  prerelease: false
89
- requirement: &id004 !ruby/object:Gem::Requirement
74
+ requirement: &id003 !ruby/object:Gem::Requirement
90
75
  none: false
91
76
  requirements:
92
77
  - - ~>
@@ -97,7 +82,7 @@ dependencies:
97
82
  - 10
98
83
  version: "3.10"
99
84
  type: :development
100
- version_requirements: *id004
85
+ version_requirements: *id003
101
86
  description: |-
102
87
  Hoe is a rake/rubygems helper for project Rakefiles. It helps you
103
88
  manage and maintain, and release your project and includes a dynamic
@@ -189,7 +174,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
189
174
  requirements: []
190
175
 
191
176
  rubyforge_project: seattlerb
192
- rubygems_version: 1.8.10
177
+ rubygems_version: 1.8.12
193
178
  signing_key:
194
179
  specification_version: 3
195
180
  summary: Hoe is a rake/rubygems helper for project Rakefiles
metadata.gz.sig CHANGED
Binary file