hoe 2.12.4 → 2.12.5

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.
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