hoe 1.1.6 → 1.1.7
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +8 -0
- data/README.txt +1 -1
- data/bin/sow +1 -1
- data/lib/hoe.rb +24 -27
- metadata +8 -8
data/History.txt
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
= 1.1.7 2007-01-10
|
2
|
+
|
3
|
+
* extra_deps is now self-healing, and ensures no (direct) cycles.
|
4
|
+
* cleans check_manifest for CVS projects.
|
5
|
+
* rubyforge changes for config.
|
6
|
+
* Now uses rsync for publish_docs. YAY for fast!
|
7
|
+
* Bug #7193 fix spelling of 'synopsys'. Submitted by Jacob Atzen.
|
8
|
+
|
1
9
|
= 1.1.6 2006-11-29
|
2
10
|
|
3
11
|
* Fix release to work correctly with need_zip and need_tar.
|
data/README.txt
CHANGED
data/bin/sow
CHANGED
@@ -50,7 +50,7 @@ Dir.chdir project do
|
|
50
50
|
|
51
51
|
files = {
|
52
52
|
"History.txt" => "== 1.0.0 / #{Time.new.strftime("%Y-%m-%d")}\n\n* 1 major enhancement\n * Birthday!\n\n",
|
53
|
-
"README.txt" => "#{project}\n by #{X} (your name)\n #{X} (url)\n\n== DESCRIPTION:\n \n#{X} (describe your package)\n\n== FEATURES/PROBLEMS:\n \n* #{X} (list of features or problems)\n\n==
|
53
|
+
"README.txt" => "#{project}\n by #{X} (your name)\n #{X} (url)\n\n== DESCRIPTION:\n \n#{X} (describe your package)\n\n== FEATURES/PROBLEMS:\n \n* #{X} (list of features or problems)\n\n== SYNOPSIS:\n\n #{X} (code sample of usage)\n\n== REQUIREMENTS:\n\n* #{X} (list of requirements)\n\n== INSTALL:\n\n* #{X} (sudo gem install, anything else)\n\n== LICENSE:\n\n(The MIT License)\n\nCopyright (c) #{Time.new.strftime("%Y")} #{X}\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n",
|
54
54
|
"Manifest.txt" => "",
|
55
55
|
"bin/#{file_name}" => "",
|
56
56
|
"lib/#{file_name}.rb" => "class #{klass}\n VERSION = '1.0.0'\nend",
|
data/lib/hoe.rb
CHANGED
@@ -7,6 +7,7 @@ require 'rake/gempackagetask'
|
|
7
7
|
require 'rake/rdoctask'
|
8
8
|
require 'rake/testtask'
|
9
9
|
require 'rbconfig'
|
10
|
+
require 'rubyforge'
|
10
11
|
|
11
12
|
##
|
12
13
|
# hoe - a tool to help rake
|
@@ -22,7 +23,7 @@ require 'rbconfig'
|
|
22
23
|
# Use this as a minimal starting point:
|
23
24
|
#
|
24
25
|
# require 'hoe'
|
25
|
-
#
|
26
|
+
#
|
26
27
|
# Hoe.new("project_name", '1.0.0') do |p|
|
27
28
|
# p.rubyforge_name = "rf_project"
|
28
29
|
# # add other details here
|
@@ -31,7 +32,7 @@ require 'rbconfig'
|
|
31
32
|
# # add other tasks here
|
32
33
|
#
|
33
34
|
# === Tasks Provided:
|
34
|
-
#
|
35
|
+
#
|
35
36
|
# * announce - Generate email announcement file and post to rubyforge.
|
36
37
|
# * audit - Run ZenTest against the package
|
37
38
|
# * check_manifest - Verify the manifest
|
@@ -89,7 +90,7 @@ require 'rbconfig'
|
|
89
90
|
# * RUBY_FLAGS - Used to specify flags to ruby [has smart default].
|
90
91
|
|
91
92
|
class Hoe
|
92
|
-
VERSION = '1.1.
|
93
|
+
VERSION = '1.1.7'
|
93
94
|
|
94
95
|
rubyprefix = Config::CONFIG['prefix']
|
95
96
|
sitelibdir = Config::CONFIG['sitelibdir']
|
@@ -128,15 +129,24 @@ class Hoe
|
|
128
129
|
self.need_tar = true
|
129
130
|
self.need_zip = false
|
130
131
|
|
132
|
+
yield self if block_given?
|
133
|
+
|
134
|
+
hoe_deps = {
|
135
|
+
'rake' => ">= #{RAKEVERSION}",
|
136
|
+
'rubyforge' => ">= #{::RubyForge::VERSION}",
|
137
|
+
}
|
138
|
+
|
139
|
+
self.extra_deps = Array(extra_deps) # just in case user used = instead of <<
|
140
|
+
self.extra_deps = [extra_deps] unless
|
141
|
+
extra_deps.empty? or Array === extra_deps.first
|
131
142
|
if name == 'hoe' then
|
132
|
-
|
133
|
-
|
143
|
+
hoe_deps.each do |pkg, version|
|
144
|
+
extra_deps << [pkg, version]
|
145
|
+
end
|
134
146
|
else
|
135
|
-
extra_deps << ['hoe', ">= #{VERSION}"]
|
147
|
+
extra_deps << ['hoe', ">= #{VERSION}"] unless hoe_deps.has_key? name
|
136
148
|
end
|
137
149
|
|
138
|
-
yield self if block_given?
|
139
|
-
|
140
150
|
define_tasks
|
141
151
|
end
|
142
152
|
|
@@ -259,7 +269,6 @@ class Hoe
|
|
259
269
|
task :release => [:clean, :package] do |t|
|
260
270
|
v = ENV["VERSION"] or abort "Must supply VERSION=x.y.z"
|
261
271
|
abort "Versions don't match #{v} vs #{version}" if v != version
|
262
|
-
require 'rubyforge'
|
263
272
|
pkg = "pkg/#{name}-#{version}"
|
264
273
|
|
265
274
|
if $DEBUG then
|
@@ -271,7 +280,7 @@ class Hoe
|
|
271
280
|
puts "Logging in"
|
272
281
|
rf.login
|
273
282
|
|
274
|
-
c = rf.
|
283
|
+
c = rf.userconfig
|
275
284
|
c["release_notes"] = description if description
|
276
285
|
c["release_changes"] = changes if changes
|
277
286
|
c["preformatted"] = true
|
@@ -308,23 +317,11 @@ class Hoe
|
|
308
317
|
|
309
318
|
desc 'Publish RDoc to RubyForge'
|
310
319
|
task :publish_docs => [:clean, :docs] do
|
311
|
-
config = YAML.load(File.read(File.expand_path("~/.rubyforge/config.yml")))
|
312
|
-
|
313
|
-
|
314
|
-
project += "/#{name}" if rubyforge_name != name
|
320
|
+
config = YAML.load(File.read(File.expand_path("~/.rubyforge/user-config.yml")))
|
321
|
+
host = "#{config["username"]}@rubyforge.org"
|
322
|
+
remote_dir = "/var/www/gforge-projects/#{rubyforge_name}/#{name}"
|
315
323
|
local_dir = 'doc'
|
316
|
-
|
317
|
-
if rubyforge_name != name then
|
318
|
-
def pub.upload
|
319
|
-
begin
|
320
|
-
super
|
321
|
-
rescue
|
322
|
-
# project directory probably doesn't exist, transfer as a whole
|
323
|
-
sh %{scp -qr #{local_dir} #{host}:#{remote_dir}}
|
324
|
-
end
|
325
|
-
end
|
326
|
-
end
|
327
|
-
pub.upload
|
324
|
+
sh %{rsync -av --delete #{local_dir}/ #{host}:#{remote_dir}}
|
328
325
|
end
|
329
326
|
|
330
327
|
############################################################
|
@@ -384,7 +381,7 @@ class Hoe
|
|
384
381
|
files = []
|
385
382
|
Find.find '.' do |path|
|
386
383
|
next unless File.file? path
|
387
|
-
next if path =~
|
384
|
+
next if path =~ /\.svn|tmp$|CVS/
|
388
385
|
files << path[2..-1]
|
389
386
|
end
|
390
387
|
files = files.sort.join "\n"
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.0.
|
2
|
+
rubygems_version: 0.9.0.9
|
3
3
|
specification_version: 1
|
4
4
|
name: hoe
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 1.1.
|
7
|
-
date:
|
6
|
+
version: 1.1.7
|
7
|
+
date: 2007-01-10 00:00:00 -05:00
|
8
8
|
summary: Hoe is a way to write Rakefiles much easier and cleaner.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -50,20 +50,20 @@ requirements: []
|
|
50
50
|
|
51
51
|
dependencies:
|
52
52
|
- !ruby/object:Gem::Dependency
|
53
|
-
name:
|
53
|
+
name: rubyforge
|
54
54
|
version_requirement:
|
55
55
|
version_requirements: !ruby/object:Gem::Version::Requirement
|
56
56
|
requirements:
|
57
|
-
- - "
|
57
|
+
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
|
-
version: 0.
|
59
|
+
version: 0.4.0
|
60
60
|
version:
|
61
61
|
- !ruby/object:Gem::Dependency
|
62
|
-
name:
|
62
|
+
name: rake
|
63
63
|
version_requirement:
|
64
64
|
version_requirements: !ruby/object:Gem::Version::Requirement
|
65
65
|
requirements:
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.
|
68
|
+
version: 0.7.1
|
69
69
|
version:
|