hoe 2.6.0 → 2.6.1

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.tar.gz.sig CHANGED
Binary file
@@ -1,3 +1,10 @@
1
+ === 2.6.1 / 2010-06-02
2
+
3
+ * 2 bug fixes:
4
+
5
+ * Fix up hoe to be happy when rubyforge is missing or misconfigured
6
+ * Fixed dep tasks to deal with broken rubygems changes RF#27847 (mjwillson)
7
+
1
8
  === 2.6.0 / 2010-03-27
2
9
 
3
10
  * 6 minor enhancements:
data/lib/hoe.rb CHANGED
@@ -58,7 +58,7 @@ require 'hoe/rake'
58
58
 
59
59
  class Hoe
60
60
  # duh
61
- VERSION = '2.6.0'
61
+ VERSION = '2.6.1'
62
62
 
63
63
  @@plugins = [:clean, :debug, :deps, :flay, :flog, :newb, :package,
64
64
  :publish, :rcov, :rubyforge, :gemcutter, :signing, :test]
@@ -386,7 +386,7 @@ class Hoe
386
386
 
387
387
  unless self.version then
388
388
  version = nil
389
- version_re = /VERSION += +([\"\'])([\d][\d\w\.]+)\1/
389
+ version_re = /VERSION += +([\"\'])([\d][\w\.]+)\1/
390
390
 
391
391
  spec.files.each do |file|
392
392
  next unless File.exist? file
@@ -34,7 +34,7 @@ module Hoe::Deps
34
34
  puts " dependents:"
35
35
  unless deps.empty? then
36
36
  deps.sort_by { |spec| spec.full_name }.each do |spec|
37
- vers = spec.dependencies.find {|s| s.name == name }.requirement_list
37
+ vers = spec.dependencies.find {|s| s.name == name}.requirements_list
38
38
  puts " %-*s - %s" % [max, spec.full_name, vers.join(", ")]
39
39
  end
40
40
  else
@@ -50,8 +50,7 @@ module Hoe::Deps
50
50
  abort "Couldn't find gem: #{self.name}" unless gem
51
51
 
52
52
  deps = self.dependent_upon self.name
53
-
54
- email = deps.map { |s| s.email }.flatten.sort.uniq
53
+ email = deps.map { |s| s.email }.compact.flatten.sort.uniq
55
54
  email = email.map { |s| s.split(/,\s*/) }.flatten.sort.uniq
56
55
 
57
56
  email.map! { |s| # don't you people realize how easy this is?
@@ -64,6 +63,8 @@ module Hoe::Deps
64
63
  bad.empty?
65
64
 
66
65
  puts good.join(", ")
66
+
67
+ warn "Warning: couldn't extract any email addresses" if good.empty?
67
68
  end
68
69
 
69
70
  desc "Fetch all the dependent gems of this gem into tarballs"
@@ -128,10 +129,22 @@ module Hoe::Deps
128
129
  return @@index if @@index
129
130
 
130
131
  dump = unless File.exist? '.source_index' then
132
+ warn "Fetching full index and caching. This can take a while."
131
133
  url = GEMURL + "Marshal.#{Gem.marshal_version}.Z"
132
134
  dump = Gem::RemoteFetcher.fetcher.fetch_path url
133
135
  dump = Gem.inflate dump
136
+
137
+ warn "stripping index to latest gems"
138
+ ary = Marshal.load dump
139
+
140
+ h = {}
141
+ Hash[ary].values.sort.each { |spec| h[spec.name] = spec }
142
+ ary = h.map { |k,v| [v.full_name, v] }
143
+
144
+ dump = Marshal.dump ary
145
+
134
146
  open '.source_index', 'wb' do |io| io.write dump end
147
+
135
148
  dump
136
149
  else
137
150
  open '.source_index', 'rb' do |io| io.read end
@@ -144,7 +157,7 @@ module Hoe::Deps
144
157
  # Return the latest rubygems.
145
158
 
146
159
  def get_latest_gems
147
- @@cache ||= get_source_index.latest_specs
160
+ @@cache ||= Hash[*get_source_index.flatten].values
148
161
  end
149
162
 
150
163
  ##
@@ -41,11 +41,15 @@ module Hoe::RubyForge
41
41
 
42
42
  if Hoe.plugins.include? :publish then
43
43
  path = File.expand_path("~/.rubyforge/user-config.yml")
44
- config = YAML.load(File.read(path))
45
- base = "/var/www/gforge-projects"
46
- dir = "#{base}/#{rubyforge_name}/#{remote_rdoc_dir}"
47
-
48
- rdoc_locations << "#{config["username"]}@rubyforge.org:#{dir}"
44
+ config = YAML.load(File.read(path)) rescue nil
45
+ if config then
46
+ base = "/var/www/gforge-projects"
47
+ dir = "#{base}/#{rubyforge_name}/#{remote_rdoc_dir}"
48
+
49
+ rdoc_locations << "#{config["username"]}@rubyforge.org:#{dir}"
50
+ else
51
+ warn "Couldn't read #{path}. Run `rubyforge setup`."
52
+ end
49
53
  end
50
54
  end
51
55
  end
@@ -53,8 +53,10 @@ class TestHoe < MiniTest::Unit::TestCase
53
53
 
54
54
  deps = spec.dependencies.sort_by { |dep| dep.name }
55
55
 
56
- expected = [["hoe", :development, ">= #{Hoe::VERSION}"],
57
- ["rubyforge", :development, ">= #{::RubyForge::VERSION}"]]
56
+ expected = [["hoe", :development, ">= #{Hoe::VERSION}"]]
57
+
58
+ expected << ["rubyforge", :development, ">= #{::RubyForge::VERSION}"] if
59
+ defined? ::RubyForge
58
60
 
59
61
  assert_equal expected, deps.map { |dep|
60
62
  [dep.name, dep.type, dep.requirement.to_s]
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hoe
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 21
4
5
  prerelease: false
5
6
  segments:
6
7
  - 2
7
8
  - 6
8
- - 0
9
- version: 2.6.0
9
+ - 1
10
+ version: 2.6.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Ryan Davis
@@ -35,30 +36,34 @@ cert_chain:
35
36
  FBHgymkyj/AOSqKRIpXPhjC6
36
37
  -----END CERTIFICATE-----
37
38
 
38
- date: 2010-03-27 00:00:00 -07:00
39
+ date: 2010-06-03 00:00:00 -07:00
39
40
  default_executable:
40
41
  dependencies:
41
42
  - !ruby/object:Gem::Dependency
42
43
  name: rubyforge
43
44
  prerelease: false
44
45
  requirement: &id001 !ruby/object:Gem::Requirement
46
+ none: false
45
47
  requirements:
46
48
  - - ">="
47
49
  - !ruby/object:Gem::Version
50
+ hash: 7
48
51
  segments:
49
52
  - 2
50
53
  - 0
51
- - 3
52
- version: 2.0.3
54
+ - 4
55
+ version: 2.0.4
53
56
  type: :runtime
54
57
  version_requirements: *id001
55
58
  - !ruby/object:Gem::Dependency
56
59
  name: rake
57
60
  prerelease: false
58
61
  requirement: &id002 !ruby/object:Gem::Requirement
62
+ none: false
59
63
  requirements:
60
64
  - - ">="
61
65
  - !ruby/object:Gem::Version
66
+ hash: 49
62
67
  segments:
63
68
  - 0
64
69
  - 8
@@ -70,14 +75,16 @@ dependencies:
70
75
  name: minitest
71
76
  prerelease: false
72
77
  requirement: &id003 !ruby/object:Gem::Requirement
78
+ none: false
73
79
  requirements:
74
80
  - - ">="
75
81
  - !ruby/object:Gem::Version
82
+ hash: 15
76
83
  segments:
77
84
  - 1
78
- - 5
85
+ - 6
79
86
  - 0
80
- version: 1.5.0
87
+ version: 1.6.0
81
88
  type: :development
82
89
  version_requirements: *id003
83
90
  description: |-
@@ -146,18 +153,22 @@ rdoc_options:
146
153
  require_paths:
147
154
  - lib
148
155
  required_ruby_version: !ruby/object:Gem::Requirement
156
+ none: false
149
157
  requirements:
150
158
  - - ">="
151
159
  - !ruby/object:Gem::Version
160
+ hash: 23
152
161
  segments:
153
162
  - 1
154
163
  - 3
155
164
  - 6
156
165
  version: 1.3.6
157
166
  required_rubygems_version: !ruby/object:Gem::Requirement
167
+ none: false
158
168
  requirements:
159
169
  - - ">="
160
170
  - !ruby/object:Gem::Version
171
+ hash: 25
161
172
  segments:
162
173
  - 1
163
174
  - 3
@@ -166,7 +177,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
166
177
  requirements: []
167
178
 
168
179
  rubyforge_project: seattlerb
169
- rubygems_version: 1.3.6
180
+ rubygems_version: 1.3.7
170
181
  signing_key:
171
182
  specification_version: 3
172
183
  summary: Hoe is a rake/rubygems helper for project Rakefiles
metadata.gz.sig CHANGED
Binary file