reap 9.3.5 → 9.4.0
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/CHANGES +10 -0
- data/MANIFEST +37 -21
- data/NOTES +13 -11
- data/bin/reap-announce +40 -2
- data/bin/reap-check-load +20 -2
- data/bin/reap-check-syntax +20 -2
- data/bin/reap-clean +24 -2
- data/bin/reap-clobber +17 -2
- data/bin/reap-doc +12 -2
- data/bin/reap-doc-rdoc +17 -2
- data/bin/reap-doc-ri +16 -2
- data/bin/reap-doc-spec +18 -0
- data/bin/reap-init +9 -0
- data/bin/reap-inspect +20 -2
- data/bin/reap-install +13 -2
- data/bin/reap-install-gem +14 -2
- data/bin/reap-log +15 -2
- data/bin/reap-log-changes +15 -2
- data/bin/reap-log-notes +20 -2
- data/bin/reap-make +16 -2
- data/bin/reap-make-clean +10 -2
- data/bin/reap-make-distclean +18 -2
- data/bin/reap-make-extconf +14 -2
- data/bin/reap-make-static +14 -2
- data/bin/reap-package +25 -2
- data/bin/reap-package-gem +14 -2
- data/bin/reap-package-tgz +14 -2
- data/bin/reap-package-zip +14 -2
- data/bin/reap-prepare +21 -2
- data/bin/reap-publish +25 -2
- data/bin/reap-release +22 -2
- data/bin/reap-rollout +32 -2
- data/bin/reap-scaffold +16 -2
- data/bin/reap-scm-branch +13 -2
- data/bin/reap-scm-tag +13 -2
- data/bin/reap-spec +14 -2
- data/bin/reap-stats +21 -2
- data/bin/reap-test +14 -2
- data/bin/reap-test-cross +23 -2
- data/bin/reap-test-load +17 -2
- data/bin/reap-test-solo +19 -2
- data/bin/reap-uninstall +14 -2
- data/bin/reap-uninstall-gem +17 -2
- data/bin/reap-version +10 -2
- data/lib/reap/announcement.rb +136 -0
- data/lib/reap/application.rb +3 -1
- data/lib/reap/default.yaml +12 -12
- data/lib/reap/defaults.rb +49 -0
- data/lib/reap/emailer.rb +189 -0
- data/lib/reap/extensions.rb +1 -2
- data/lib/reap/hosts.rb +4 -0
- data/lib/reap/hosts/host.rb +69 -0
- data/lib/reap/hosts/mailinglist.rb +83 -0
- data/lib/reap/{systems → hosts}/rubyforge.rb +72 -60
- data/lib/reap/hosts/rubytalk.rb +39 -0
- data/lib/reap/iobject.rb +5 -3
- data/lib/reap/metadata.rb +31 -4
- data/lib/reap/project.rb +101 -41
- data/lib/reap/project/announce.rb +50 -180
- data/lib/reap/project/check.rb +1 -1
- data/lib/reap/project/gem.rb +32 -68
- data/lib/reap/project/log.rb +12 -7
- data/lib/reap/project/make.rb +0 -1
- data/lib/reap/project/package.rb +228 -75
- data/lib/reap/project/rdoc.rb +9 -8
- data/lib/reap/project/release.rb +52 -6
- data/lib/reap/project/scm.rb +40 -25
- data/lib/reap/project/spec.rb +3 -3
- data/lib/reap/project/test.rb +1 -2
- data/lib/reap/project/version.rb +18 -4
- data/lib/reap/runmodes.rb +24 -0
- data/lib/reap/settings.rb +3 -14
- data/lib/reap/systems.rb +4 -0
- data/lib/reap/systems/git.rb +0 -0
- data/lib/reap/systems/hg.rb +0 -0
- data/lib/reap/systems/{subversion.rb → svn.rb} +47 -16
- data/lib/reap/systems/system.rb +53 -0
- data/lib/reap/tool.rb +38 -0
- data/lib/reap/utilities.rb +43 -86
- data/log/{Changelog.txt → changelog.rdoc} +56 -0
- data/log/fixme.rdoc +25 -0
- data/log/todo.rdoc +85 -0
- data/meta/project.yaml +13 -2
- data/meta/version +1 -0
- data/setup.rb +74 -64
- data/task/allshare.rb +109 -0
- data/task/clean +13 -0
- data/task/compile +28 -0
- data/task/configure +372 -0
- data/task/install +1481 -0
- data/test/case/test_init.rb +32 -0
- data/test/case/test_scaffold.rb +32 -0
- data/test/data/scaffold/meta/project.yaml +28 -0
- data/test/lib/case_testable.rb +23 -0
- metadata +64 -31
- data/bin/reap-spec-doc +0 -8
- data/demo/README +0 -15
- data/demo/lib/foo/foo.rb +0 -7
- data/demo/meta/VERSION +0 -1
- data/demo/meta/project.yaml +0 -21
- data/lib/reap/project/rubyforge.rb +0 -71
- data/lib/reap/project/svn.rb +0 -76
- data/log/Fixme.txt +0 -22
- data/log/Todo.txt +0 -84
- data/meta/VERSION +0 -1
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require './test/lib/case_testable'
|
3
|
+
|
4
|
+
module Reap
|
5
|
+
module TestCases
|
6
|
+
|
7
|
+
class TestInit < Test::Unit::TestCase
|
8
|
+
|
9
|
+
include CaseTestable
|
10
|
+
|
11
|
+
def setup
|
12
|
+
super
|
13
|
+
@dir = File.join(TEMPDIR, 'init')
|
14
|
+
FileUtils.rm_r @dir if File.exist?(@dir)
|
15
|
+
FileUtils.mkdir_p(@dir)
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_init
|
19
|
+
Dir.chdir(@dir) do
|
20
|
+
silently do
|
21
|
+
system "reap-init"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
assert(File.exist?('.reap'))
|
25
|
+
assert(File.exist?('meta/project.yaml'))
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require './test/lib/case_testable'
|
3
|
+
|
4
|
+
module Reap
|
5
|
+
module TestCases
|
6
|
+
|
7
|
+
class TestScaffold < Test::Unit::TestCase
|
8
|
+
|
9
|
+
include CaseTestable
|
10
|
+
|
11
|
+
def setup
|
12
|
+
super
|
13
|
+
@dir = File.join(TEMPDIR, 'scaffold')
|
14
|
+
FileUtils.rm_r(@dir) if File.exist?(@dir)
|
15
|
+
FileUtils.cp_r(FIXTURE + '/scaffold', @dir)
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_scaffold
|
19
|
+
Dir.chdir(@dir) do
|
20
|
+
silently do
|
21
|
+
system "reap-scaffold"
|
22
|
+
end
|
23
|
+
|
24
|
+
assert(File.exist?('README'), "README does not exist")
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
@@ -0,0 +1,28 @@
|
|
1
|
+
---
|
2
|
+
project : foo
|
3
|
+
|
4
|
+
contact : Your Name <email@email.com>
|
5
|
+
license : GPLv3
|
6
|
+
created : 2008-02-21
|
7
|
+
homepage : http://orphans.rubyforge.org
|
8
|
+
repository : http://orphans.rubyforge.org/svn
|
9
|
+
|
10
|
+
# Title. This defaults to project capitalized, if not given.
|
11
|
+
title : Project Title
|
12
|
+
|
13
|
+
# One line description.
|
14
|
+
brief : One line description
|
15
|
+
|
16
|
+
# Detailed description.
|
17
|
+
description: >
|
18
|
+
Detailed description...Little rabbit Foo Foo was hoping
|
19
|
+
through the forest. Picking up field mice and bopping
|
20
|
+
them on the head.
|
21
|
+
|
22
|
+
# Directories to exclude from package.
|
23
|
+
exclude : [ work, doc, ri ]
|
24
|
+
|
25
|
+
# List of dependenices with version constraints.
|
26
|
+
dependency :
|
27
|
+
- [facets, '>= 2.3.0']
|
28
|
+
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'test/unit' # can I load test case only?
|
2
|
+
require 'facets/kernel/silence'
|
3
|
+
require 'tmpdir'
|
4
|
+
require 'fileutils'
|
5
|
+
|
6
|
+
module Reap
|
7
|
+
module TestCases
|
8
|
+
|
9
|
+
module CaseTestable
|
10
|
+
|
11
|
+
FIXTURE = "test/data"
|
12
|
+
TEMPDIR = File.join(Dir.tmpdir, 'reap', 'test')
|
13
|
+
|
14
|
+
def setup
|
15
|
+
FileUtils.rm_r TEMPDIR if File.exist?(TEMPDIR)
|
16
|
+
FileUtils.mkdir_p TEMPDIR
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: reap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.
|
4
|
+
version: 9.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas Sawyer <transfire@gmail.com>
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-
|
12
|
+
date: 2008-04-04 00:00:00 -04:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -19,12 +19,13 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 2.
|
22
|
+
version: 2.4.1
|
23
23
|
version:
|
24
|
-
description: Reap is a Ruby project
|
24
|
+
description: Reap is a Ruby-oriented project assitant applicaiton. It provides tools developers commonly require to manage projects, from scaffolding thru packaging and releasing.
|
25
25
|
email: transfire@gmail.com
|
26
26
|
executables:
|
27
27
|
- reap-package-tgz
|
28
|
+
- reap-doc-spec
|
28
29
|
- reap-package-gem
|
29
30
|
- reap-uninstall
|
30
31
|
- reap-log
|
@@ -59,7 +60,6 @@ executables:
|
|
59
60
|
- reap-release
|
60
61
|
- reap-make
|
61
62
|
- reap-doc-rdoc
|
62
|
-
- reap-spec-doc
|
63
63
|
- reap-test-solo
|
64
64
|
- reap-scm-branch
|
65
65
|
- reap-doc-ri
|
@@ -67,13 +67,26 @@ executables:
|
|
67
67
|
- reap-doc
|
68
68
|
extensions: []
|
69
69
|
|
70
|
-
extra_rdoc_files:
|
71
|
-
|
70
|
+
extra_rdoc_files:
|
71
|
+
- README
|
72
|
+
- Rakefile
|
73
|
+
- MANIFEST
|
74
|
+
- NOTES
|
75
|
+
- CHANGES
|
76
|
+
- COPYING
|
72
77
|
files:
|
73
78
|
- Rakefile
|
74
79
|
- MANIFEST
|
75
80
|
- test
|
76
|
-
- test/
|
81
|
+
- test/case
|
82
|
+
- test/case/test_scaffold.rb
|
83
|
+
- test/case/test_init.rb
|
84
|
+
- test/lib
|
85
|
+
- test/lib/case_testable.rb
|
86
|
+
- test/data
|
87
|
+
- test/data/scaffold
|
88
|
+
- test/data/scaffold/meta
|
89
|
+
- test/data/scaffold/meta/project.yaml
|
77
90
|
- test/unit
|
78
91
|
- test/unit/lib
|
79
92
|
- test/unit/lib/reap
|
@@ -85,20 +98,15 @@ files:
|
|
85
98
|
- setup.rb
|
86
99
|
- meta
|
87
100
|
- meta/project.yaml
|
101
|
+
- meta/version
|
88
102
|
- meta/unixname
|
89
|
-
- meta/VERSION
|
90
103
|
- meta/description
|
91
|
-
-
|
92
|
-
-
|
93
|
-
-
|
94
|
-
-
|
95
|
-
-
|
96
|
-
-
|
97
|
-
- demo/meta/VERSION
|
98
|
-
- demo/lib
|
99
|
-
- demo/lib/foo
|
100
|
-
- demo/lib/foo/foo.rb
|
101
|
-
- demo/log
|
104
|
+
- task
|
105
|
+
- task/allshare.rb
|
106
|
+
- task/configure
|
107
|
+
- task/install
|
108
|
+
- task/clean
|
109
|
+
- task/compile
|
102
110
|
- lib
|
103
111
|
- lib/reap
|
104
112
|
- lib/reap/default.yaml
|
@@ -110,14 +118,26 @@ files:
|
|
110
118
|
- lib/reap/extensions/array.rb
|
111
119
|
- lib/reap/extensions/string.rb
|
112
120
|
- lib/reap/systems
|
113
|
-
- lib/reap/systems/
|
114
|
-
- lib/reap/systems/
|
121
|
+
- lib/reap/systems/system.rb
|
122
|
+
- lib/reap/systems/git.rb
|
123
|
+
- lib/reap/systems/svn.rb
|
124
|
+
- lib/reap/systems/hg.rb
|
115
125
|
- lib/reap/application.rb
|
126
|
+
- lib/reap/runmodes.rb
|
116
127
|
- lib/reap/project.rb
|
128
|
+
- lib/reap/emailer.rb
|
117
129
|
- lib/reap/iobject.rb
|
130
|
+
- lib/reap/hosts.rb
|
131
|
+
- lib/reap/systems.rb
|
118
132
|
- lib/reap/settings.rb
|
119
133
|
- lib/reap/extensions.rb
|
134
|
+
- lib/reap/tool.rb
|
120
135
|
- lib/reap/metadata.rb
|
136
|
+
- lib/reap/hosts
|
137
|
+
- lib/reap/hosts/mailinglist.rb
|
138
|
+
- lib/reap/hosts/host.rb
|
139
|
+
- lib/reap/hosts/rubyforge.rb
|
140
|
+
- lib/reap/hosts/rubytalk.rb
|
121
141
|
- lib/reap/project
|
122
142
|
- lib/reap/project/release.rb
|
123
143
|
- lib/reap/project/rdoc.rb
|
@@ -126,7 +146,6 @@ files:
|
|
126
146
|
- lib/reap/project/test.rb
|
127
147
|
- lib/reap/project/site.rb
|
128
148
|
- lib/reap/project/version.rb
|
129
|
-
- lib/reap/project/rubyforge.rb
|
130
149
|
- lib/reap/project/html.rb
|
131
150
|
- lib/reap/project/stats.rb
|
132
151
|
- lib/reap/project/gem.rb
|
@@ -134,12 +153,13 @@ files:
|
|
134
153
|
- lib/reap/project/clean.rb
|
135
154
|
- lib/reap/project/publish.rb
|
136
155
|
- lib/reap/project/spec.rb
|
137
|
-
- lib/reap/project/svn.rb
|
138
156
|
- lib/reap/project/scm.rb
|
139
157
|
- lib/reap/project/package.rb
|
140
158
|
- lib/reap/project/check.rb
|
141
159
|
- lib/reap/project/announce.rb
|
160
|
+
- lib/reap/defaults.rb
|
142
161
|
- lib/reap/utilities.rb
|
162
|
+
- lib/reap/announcement.rb
|
143
163
|
- data
|
144
164
|
- data/reap
|
145
165
|
- data/reap/init
|
@@ -158,16 +178,18 @@ files:
|
|
158
178
|
- data/reap/base/meta
|
159
179
|
- data/reap/base/meta/version
|
160
180
|
- data/reap/base/meta/unixname.erb
|
181
|
+
- data/reap/base/site
|
161
182
|
- data/reap/base/lib
|
162
183
|
- data/reap/base/data
|
163
184
|
- data/reap/base/bin
|
164
185
|
- data/reap/base/COPYING
|
165
186
|
- log
|
166
|
-
- log/
|
167
|
-
- log/
|
168
|
-
- log/
|
187
|
+
- log/todo.rdoc
|
188
|
+
- log/changelog.rdoc
|
189
|
+
- log/fixme.rdoc
|
169
190
|
- bin
|
170
191
|
- bin/reap-package-tgz
|
192
|
+
- bin/reap-doc-spec
|
171
193
|
- bin/reap-package-gem
|
172
194
|
- bin/reap-uninstall
|
173
195
|
- bin/reap-log
|
@@ -202,7 +224,6 @@ files:
|
|
202
224
|
- bin/reap-release
|
203
225
|
- bin/reap-make
|
204
226
|
- bin/reap-doc-rdoc
|
205
|
-
- bin/reap-spec-doc
|
206
227
|
- bin/reap-test-solo
|
207
228
|
- bin/reap-scm-branch
|
208
229
|
- bin/reap-doc-ri
|
@@ -212,8 +233,12 @@ files:
|
|
212
233
|
has_rdoc: true
|
213
234
|
homepage: http://reap.rubyforge.org
|
214
235
|
post_install_message:
|
215
|
-
rdoc_options:
|
216
|
-
|
236
|
+
rdoc_options:
|
237
|
+
- --inline-source
|
238
|
+
- --title
|
239
|
+
- Reap
|
240
|
+
- --main
|
241
|
+
- README
|
217
242
|
require_paths:
|
218
243
|
- lib
|
219
244
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -236,7 +261,15 @@ signing_key:
|
|
236
261
|
specification_version: 2
|
237
262
|
summary: Ruby Project Assistant
|
238
263
|
test_files:
|
239
|
-
- test/
|
264
|
+
- test/case
|
265
|
+
- test/case/test_scaffold.rb
|
266
|
+
- test/case/test_init.rb
|
267
|
+
- test/lib
|
268
|
+
- test/lib/case_testable.rb
|
269
|
+
- test/data
|
270
|
+
- test/data/scaffold
|
271
|
+
- test/data/scaffold/meta
|
272
|
+
- test/data/scaffold/meta/project.yaml
|
240
273
|
- test/unit
|
241
274
|
- test/unit/lib
|
242
275
|
- test/unit/lib/reap
|
data/bin/reap-spec-doc
DELETED
data/demo/README
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
= Foo Demo of Reap
|
2
|
-
|
3
|
-
This is a demonstration project for playing with reap.
|
4
|
-
|
5
|
-
== On Testing
|
6
|
-
|
7
|
-
At this point Reap does not have unit tests. Reap is so predominatly
|
8
|
-
FileIO as well as configurable that it can be tricky to get strong
|
9
|
-
test coverage. So for now at least, I'm using the old fashion method
|
10
|
-
of beta testers.
|
11
|
-
|
12
|
-
To facilitate this, we have this demo project that can by played with,
|
13
|
-
and the trust --dryrun option. Always use the --dryrun option first,
|
14
|
-
until one is confident in an reap's action.
|
15
|
-
|
data/demo/lib/foo/foo.rb
DELETED
data/demo/meta/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.0.1 alpha (2008-02-07)
|
data/demo/meta/project.yaml
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
---
|
2
|
-
project : foo
|
3
|
-
|
4
|
-
title : Foo
|
5
|
-
brief : A Very Fooy Project
|
6
|
-
description: >
|
7
|
-
Foo foo went hopping thru the forest.
|
8
|
-
|
9
|
-
author : Thomas Sawyer <transfire@gmail.com>
|
10
|
-
created : "2008-02-09"
|
11
|
-
homepage : "http://orphans.rubyforge.org"
|
12
|
-
repository : "http://orphans.rubyforge.org/svn"
|
13
|
-
slogan : Footastic
|
14
|
-
|
15
|
-
exclude : [ pkg, work, doc, ri ]
|
16
|
-
|
17
|
-
dependency :
|
18
|
-
- [facets, ">= 2.1.0"]
|
19
|
-
|
20
|
-
libpath: lib/foo
|
21
|
-
|
@@ -1,71 +0,0 @@
|
|
1
|
-
require 'reap/systems/rubyforge'
|
2
|
-
|
3
|
-
module Reap
|
4
|
-
|
5
|
-
class Project
|
6
|
-
|
7
|
-
# Returns Rubyforge system object.
|
8
|
-
|
9
|
-
def rubyforge(options = nil)
|
10
|
-
options = configure_options(options, 'rubyforge')
|
11
|
-
|
12
|
-
rubyforge_options = {}
|
13
|
-
rubyforge_options[:dryrun] = dryrun?
|
14
|
-
rubyforge_options[:trace] = trace?
|
15
|
-
rubyforge_options[:project] = options['project'] || metadata.project
|
16
|
-
rubyforge_options[:username] = options['username'] || ENV['RUBYFORGE_USERNAME']
|
17
|
-
rubyforge_options[:group_id] = options['group']
|
18
|
-
rubyforge_options[:password] = options['password'] || ENV['RUBYFORGE_PASSWORD']
|
19
|
-
|
20
|
-
unless rubyforge_options[:password]
|
21
|
-
abort "Please provide --password=xxxxxxx."
|
22
|
-
end
|
23
|
-
|
24
|
-
Rubyforge.new(rubyforge_options)
|
25
|
-
end
|
26
|
-
|
27
|
-
# Release packages to rubyforge.
|
28
|
-
|
29
|
-
def rubyforge_release(options)
|
30
|
-
release_options = configure_options(options, 'release')
|
31
|
-
|
32
|
-
store = 'pkg'
|
33
|
-
version = metadata.version
|
34
|
-
|
35
|
-
release_options['version'] = version
|
36
|
-
release_options['store'] = store
|
37
|
-
|
38
|
-
changelog = release_options['changelog'] #|| DEFAULT['release']['changelog'] || DEFAULT['rubyforge']['changelog']
|
39
|
-
notelog = release_options['notelog'] #|| DEFAULT['release']['notelog'] || DEFAULT['rubyforge']['notelog']
|
40
|
-
|
41
|
-
changelog = Dir.glob(changelog.to_s, File::FNM_CASEFOLD).first
|
42
|
-
notelog = Dir.glob(notelog.to_s, File::FNM_CASEFOLD).first
|
43
|
-
|
44
|
-
release_options['changelog'] = changelog if File.exist?(changelog)
|
45
|
-
release_options['notelog'] = notelog if File.exist?(notelog)
|
46
|
-
|
47
|
-
files = release_options['files'] || []
|
48
|
-
|
49
|
-
if files.empty?
|
50
|
-
files = Dir[File.join(store, '*')].select do |file|
|
51
|
-
/#{version}[.]/ =~ file
|
52
|
-
end
|
53
|
-
release_options['files'] = files
|
54
|
-
#files = Dir.glob(File.join(store,"#{name}-#{version}*"))
|
55
|
-
end
|
56
|
-
|
57
|
-
# Not going to do dryrun in Rubyforge class b/c it still requires logging in.
|
58
|
-
if dryrun?
|
59
|
-
files.each do |file|
|
60
|
-
puts "release #{file}"
|
61
|
-
end
|
62
|
-
else
|
63
|
-
host = rubyforge(options)
|
64
|
-
host.release(release_options)
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
end
|
69
|
-
|
70
|
-
end
|
71
|
-
|