hoe 2.3.2 → 2.3.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,14 @@
1
+ === 2.3.3 / 2009-08-07
2
+
3
+ * 6 minor enhancements:
4
+
5
+ * #plugin now uniq's contents. (asarih)
6
+ * Added extra warnings if manifest is borked.
7
+ * Added link to full doco.
8
+ * Deprecated plain string dependencies, auto-fill with '>= 0'.
9
+ * Improved doco with some code examples.
10
+ * Moved version check from package task to prerelease task.
11
+
1
12
  === 2.3.2 / 2009-06-30
2
13
 
3
14
  * 1 minor enhancement:
data/README.txt CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  * http://rubyforge.org/projects/seattlerb/
4
4
  * http://seattlerb.rubyforge.org/hoe/
5
+ * http://www.zenspider.com/~ryand/hoe.pdf
5
6
  * mailto:ryand-ruby@zenspider.com
6
7
 
7
8
  == DESCRIPTION:
data/lib/hoe.rb CHANGED
@@ -59,7 +59,7 @@ require 'hoe/rake'
59
59
 
60
60
  class Hoe
61
61
  # duh
62
- VERSION = '2.3.2'
62
+ VERSION = '2.3.3'
63
63
 
64
64
  @@plugins = [:clean, :debug, :deps, :flay, :flog, :package, :publish,
65
65
  :rcov, :signing, :test]
@@ -86,12 +86,14 @@ class Hoe
86
86
  }
87
87
 
88
88
  ##
89
- # True if you're a masochist developer. Used for building commands.
89
+ # True if you're a masochistic developer. Used for building commands.
90
90
 
91
91
  WINDOZE = /mswin|mingw/ =~ RUBY_PLATFORM unless defined? WINDOZE
92
92
 
93
93
  ##
94
94
  # *MANDATORY*: The author(s) of the package. (can be array)
95
+ #
96
+ # Use the #developer method to fill in both author and email cleanly.
95
97
 
96
98
  attr_accessor :author
97
99
 
@@ -113,11 +115,15 @@ class Hoe
113
115
 
114
116
  ##
115
117
  # *MANDATORY*: The author's email address(es). (can be array)
118
+ #
119
+ # Use the #developer method to fill in both author and email cleanly.
116
120
 
117
121
  attr_accessor :email
118
122
 
119
123
  ##
120
124
  # Optional: An array of rubygem dependencies.
125
+ #
126
+ # extra_deps << ['blah', '~> 1.0']
121
127
 
122
128
  attr_accessor :extra_deps
123
129
 
@@ -140,6 +146,8 @@ class Hoe
140
146
 
141
147
  ##
142
148
  # *MANDATORY*: The name of the release.
149
+ #
150
+ # Set via Hoe.spec.
143
151
 
144
152
  attr_accessor :name
145
153
 
@@ -165,6 +173,10 @@ class Hoe
165
173
 
166
174
  ##
167
175
  # Optional: A hash of extra values to set in the gemspec. Value may be a proc.
176
+ #
177
+ # spec_extras[:required_rubygems_version] = '>= 1.3.2'
178
+ #
179
+ # (tho, see #pluggable! if that's all you want to do)
168
180
 
169
181
  attr_accessor :spec_extras
170
182
 
@@ -245,6 +257,7 @@ class Hoe
245
257
 
246
258
  def self.plugin *names
247
259
  self.plugins.concat names
260
+ self.plugins.uniq!
248
261
  end
249
262
 
250
263
  ##
@@ -322,7 +335,7 @@ class Hoe
322
335
  s.homepage = Array(url).first
323
336
  s.rubyforge_project = rubyforge_name
324
337
  s.description = description
325
- s.files = File.read_utf("Manifest.txt").split(/\r?\n\r?/)
338
+ s.files = files = File.read_utf("Manifest.txt").split(/\r?\n\r?/)
326
339
  s.executables = s.files.grep(/^bin/) { |f| File.basename(f) }
327
340
  s.bindir = "bin"
328
341
  s.require_paths = dirs unless dirs.empty?
@@ -331,6 +344,8 @@ class Hoe
331
344
  s.post_install_message = post_install_message
332
345
  s.test_files = Dir[*self.test_globs]
333
346
 
347
+ missing "Manifest.txt" if files.empty?
348
+
334
349
  case author
335
350
  when Array
336
351
  s.authors = author
@@ -365,7 +380,9 @@ class Hoe
365
380
 
366
381
  unless self.version then
367
382
  spec.version = self.version = "0.borked"
368
- warn "Add 'VERSION = \"x.y.z\"' to your code or fix your hoe spec"
383
+ warn "** Add 'VERSION = \"x.y.z\"' to your code,"
384
+ warn " add a version to your hoe spec,"
385
+ warn " or fix your Manifest.txt"
369
386
  end
370
387
  end
371
388
 
@@ -495,7 +512,14 @@ class Hoe
495
512
  # Normalize the dependencies.
496
513
 
497
514
  def normalize_deps deps
498
- Array(deps).map { |o| String === o ? [o] : o }
515
+ Array(deps).map { |o|
516
+ if String === o then
517
+ warn "WAR\NING: HOE DEPRECATION: Add '>= 0' to the '#{o}' dependency."
518
+ [o, ">= 0"]
519
+ else
520
+ o
521
+ end
522
+ }
499
523
  end
500
524
 
501
525
  ##
@@ -38,8 +38,6 @@ module Hoe::Package
38
38
 
39
39
  def define_package_tasks
40
40
  Gem::PackageTask.new spec do |pkg|
41
- abort "Fix your version before you release" if
42
- spec.version.version =~ /borked/
43
41
  pkg.need_tar = @need_tar
44
42
  pkg.need_zip = @need_zip
45
43
  end
@@ -53,7 +51,10 @@ module Hoe::Package
53
51
  task :release => [:prerelease, :release_to, :postrelease]
54
52
 
55
53
  # no doco, invisible hook
56
- task :prerelease
54
+ task :prerelease do
55
+ abort "Fix your version before you release" if
56
+ spec.version.version =~ /borked/
57
+ end
57
58
 
58
59
  # no doco, invisible hook
59
60
  task :release_to => :release_to_rubyforge
@@ -66,6 +66,8 @@ class TestHoe < MiniTest::Unit::TestCase
66
66
  before = Hoe.plugins.dup
67
67
  Hoe.plugin :first, :second
68
68
  assert_equal before + [:first, :second], Hoe.plugins
69
+ Hoe.plugin :first, :second
70
+ assert_equal before + [:first, :second], Hoe.plugins
69
71
  ensure
70
72
  # FIX: maybe add Hoe.reset
71
73
  Hoe.plugins.replace before
metadata CHANGED
@@ -1,36 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hoe
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.2
4
+ version: 2.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
8
8
  autorequire:
9
9
  bindir: bin
10
- cert_chain:
11
- - |
12
- -----BEGIN CERTIFICATE-----
13
- MIIDPjCCAiagAwIBAgIBADANBgkqhkiG9w0BAQUFADBFMRMwEQYDVQQDDApyeWFu
14
- ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
15
- GRYDY29tMB4XDTA5MDMwNjE4NTMxNVoXDTEwMDMwNjE4NTMxNVowRTETMBEGA1UE
16
- AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
17
- JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
18
- b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
19
- taCPaLmfYIaFcHHCSY4hYDJijRQkLxPeB3xbOfzfLoBDbjvx5JxgJxUjmGa7xhcT
20
- oOvjtt5P8+GSK9zLzxQP0gVLS/D0FmoE44XuDr3iQkVS2ujU5zZL84mMNqNB1znh
21
- GiadM9GHRaDiaxuX0cIUBj19T01mVE2iymf9I6bEsiayK/n6QujtyCbTWsAS9Rqt
22
- qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
23
- gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
24
- HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBBQUAA4IB
25
- AQAY59gYvDxqSqgC92nAP9P8dnGgfZgLxP237xS6XxFGJSghdz/nI6pusfCWKM8m
26
- vzjjH2wUMSSf3tNudQ3rCGLf2epkcU13/rguI88wO6MrE0wi4ZqLQX+eZQFskJb/
27
- w6x9W1ur8eR01s397LSMexySDBrJOh34cm2AlfKr/jokKCTwcM0OvVZnAutaovC0
28
- l1SVZ0ecg88bsWHA0Yhh7NFxK1utWoIhtB6AFC/+trM0FQEB/jZkIS8SaNzn96Rl
29
- n0sZEf77FLf5peR8TP/PtmIg7Cyqz23sLM4mCOoTGIy5OcZ8TdyiyINUHtb5ej/T
30
- FBHgymkyj/AOSqKRIpXPhjC6
31
- -----END CERTIFICATE-----
10
+ cert_chain: []
32
11
 
33
- date: 2009-06-30 00:00:00 -07:00
12
+ date: 2009-08-07 00:00:00 -07:00
34
13
  default_executable:
35
14
  dependencies:
36
15
  - !ruby/object:Gem::Dependency
@@ -41,7 +20,7 @@ dependencies:
41
20
  requirements:
42
21
  - - ">="
43
22
  - !ruby/object:Gem::Version
44
- version: 1.0.3
23
+ version: 1.0.4
45
24
  version:
46
25
  - !ruby/object:Gem::Dependency
47
26
  name: rake
@@ -137,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
137
116
  requirements: []
138
117
 
139
118
  rubyforge_project: seattlerb
140
- rubygems_version: 1.3.4
119
+ rubygems_version: 1.3.5
141
120
  signing_key:
142
121
  specification_version: 3
143
122
  summary: Hoe is a rake/rubygems helper for project Rakefiles
data.tar.gz.sig DELETED
@@ -1 +0,0 @@
1
- 5��X����Q�Dv&J��=/G4��X�����Z�O�# A�Ѩ�)�/�f����Gy6���6����Z"Tt|�(IW�c��� ���W���ʈ��l�鈐?E���P_t��2�Hf��4��}NE�h_i�d*-b *j�L00���Z�'�ԚI*�:O)9�P��'����cS}��,��tȖ�Ŝ<yG�c�"R�I�'C{�H� ں�Zqx"I����G%s�&��q&�����F�
metadata.gz.sig DELETED
Binary file