reap 03.01 → 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/{LICENSE → COPYING} +0 -0
- data/ChangeLog +5 -0
- data/ProjectInfo +55 -15
- data/README +32 -31
- data/Rakefile +0 -141
- data/bin/reap +2 -158
- data/data/reap/scaffold/COPYING +11 -0
- data/data/reap/scaffold/ChangeLog +0 -0
- data/data/reap/scaffold/INSTALL +0 -0
- data/data/reap/scaffold/ProjectInfo +78 -0
- data/data/reap/scaffold/README +0 -0
- data/data/reap/scaffold/Rakefile +146 -0
- data/data/reap/scaffold/Todo +0 -0
- data/data/reap/scaffold/setup.rb +1551 -0
- data/dev/Rakefile +60 -0
- data/dev/composite_task.rb +27 -0
- data/dev/compositepublisher.rb +24 -0
- data/dev/ftptools.rb +139 -0
- data/dev/license-each.rb +85 -0
- data/dev/publisher.rb +75 -0
- data/dev/rubyforgepublisher.rb +18 -0
- data/dev/sshpublisher.rb +47 -0
- data/dev/suby-cvs.rb +46 -0
- data/{data/site_ruby/reap/template.yaml → dev/template.rb} +15 -37
- data/lib/reap/bin/reap.rb +134 -0
- data/lib/reap/lint.rb +0 -0
- data/lib/reap/projectinfo.rb +20 -9
- data/lib/reap/readymade.rb +21 -0
- data/lib/reap/task.rb +119 -70
- data/lib/reap/{announce_task.rb → task/announce.rb} +20 -25
- data/lib/reap/{filemod_task.rb → task/fileperm.rb} +12 -16
- data/lib/reap/task/info.rb +20 -0
- data/lib/reap/task/install.rb +33 -0
- data/lib/reap/task/noop.rb +26 -0
- data/lib/reap/{package_task.rb → task/package.rb} +88 -71
- data/lib/reap/{publish_task.rb → task/publish.rb} +5 -13
- data/lib/reap/{rdoc_task.rb → task/rdoc.rb} +29 -22
- data/lib/reap/task/scaffold.rb +114 -0
- data/lib/reap/{test_task.rb → task/test.rb} +33 -26
- data/lib/reap/task/testext.rb +110 -0
- data/lib/reap/{web_publish_task.rb → task/webpublish.rb} +5 -11
- data/lib/reap/tasks.rb +12 -8
- data/lib/reap/test.rb +138 -0
- data/setup.rb +726 -534
- data/web/ProjectInfo +57 -0
- data/{pub/www → web}/images/appleboy.jpg +0 -0
- data/{pub → web/images}/grape.jpg +0 -0
- data/web/index.html +124 -0
- data/web/rdoc/classes/Object.html +121 -0
- data/{pub/www → web}/rdoc/classes/ProjectInfo.html +36 -36
- data/{pub/www/rdoc/classes/ProjectInfo.src/M000055.html → web/rdoc/classes/ProjectInfo.src/M000094.html} +3 -3
- data/{pub/www/rdoc/classes/ProjectInfo.src/M000056.html → web/rdoc/classes/ProjectInfo.src/M000095.html} +2 -1
- data/web/rdoc/classes/ProjectInfo.src/M000096.html +22 -0
- data/{pub/www/rdoc/classes/ProjectInfo.src/M000058.html → web/rdoc/classes/ProjectInfo.src/M000097.html} +1 -1
- data/{pub/www/rdoc/classes/ProjectInfo.src/M000059.html → web/rdoc/classes/ProjectInfo.src/M000098.html} +1 -1
- data/web/rdoc/classes/Reap.html +248 -0
- data/web/rdoc/classes/Reap.src/M000023.html +16 -0
- data/web/rdoc/classes/Reap.src/M000024.html +21 -0
- data/web/rdoc/classes/Reap.src/M000025.html +16 -0
- data/web/rdoc/classes/Reap.src/M000026.html +21 -0
- data/{pub/www/rdoc/classes/Reap/AnnounceTask.html → web/rdoc/classes/Reap/Announce.html} +22 -40
- data/web/rdoc/classes/Reap/Announce.src/M000030.html +18 -0
- data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000041.html → web/rdoc/classes/Reap/Announce.src/M000031.html} +13 -10
- data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000042.html → web/rdoc/classes/Reap/Announce.src/M000032.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/InfoTask.html → web/rdoc/classes/Reap/Info.html} +23 -41
- data/{pub/www/rdoc/classes/Reap/RDocTask.src/M000002.html → web/rdoc/classes/Reap/Info.src/M000033.html} +4 -4
- data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000049.html → web/rdoc/classes/Reap/Info.src/M000034.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/NoopTask.src/M000046.html → web/rdoc/classes/Reap/Info.src/M000035.html} +3 -3
- data/web/rdoc/classes/Reap/Install.html +193 -0
- data/web/rdoc/classes/Reap/Install.src/M000036.html +18 -0
- data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000040.html → web/rdoc/classes/Reap/Install.src/M000037.html} +6 -4
- data/web/rdoc/classes/Reap/Install.src/M000038.html +26 -0
- data/{pub/www/rdoc/classes/Reap/NoopTask.html → web/rdoc/classes/Reap/Noop.html} +23 -41
- data/web/rdoc/classes/Reap/Noop.src/M000027.html +18 -0
- data/{pub/www/rdoc/classes/Reap/NoopTask.src/M000045.html → web/rdoc/classes/Reap/Noop.src/M000028.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000050.html → web/rdoc/classes/Reap/Noop.src/M000029.html} +3 -3
- data/{pub/www/rdoc/classes/Reap/PackageTask.html → web/rdoc/classes/Reap/Package.html} +40 -68
- data/{pub/www/rdoc/classes/Reap/NoopTask.src/M000044.html → web/rdoc/classes/Reap/Package.src/M000055.html} +4 -4
- data/{pub/www/rdoc/classes/Reap/PackageTask.src/M000007.html → web/rdoc/classes/Reap/Package.src/M000056.html} +28 -13
- data/{pub/www/rdoc/classes/Reap/PackageTask.src/M000008.html → web/rdoc/classes/Reap/Package.src/M000057.html} +43 -32
- data/{pub/www/rdoc/classes/Reap/PackageTask.src/M000009.html → web/rdoc/classes/Reap/Package.src/M000058.html} +13 -3
- data/{pub/www/rdoc/classes/Reap/FilemodTask.html → web/rdoc/classes/Reap/Perm.html} +35 -53
- data/web/rdoc/classes/Reap/Perm.src/M000078.html +18 -0
- data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000029.html → web/rdoc/classes/Reap/Perm.src/M000079.html} +3 -3
- data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000030.html → web/rdoc/classes/Reap/Perm.src/M000080.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000031.html → web/rdoc/classes/Reap/Perm.src/M000081.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000032.html → web/rdoc/classes/Reap/Perm.src/M000082.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/PublishTask.html → web/rdoc/classes/Reap/Publish.html} +23 -41
- data/web/rdoc/classes/Reap/Publish.src/M000070.html +18 -0
- data/{pub/www/rdoc/classes/Reap/PublishTask.src/M000025.html → web/rdoc/classes/Reap/Publish.src/M000071.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/PublishTask.src/M000026.html → web/rdoc/classes/Reap/Publish.src/M000072.html} +3 -4
- data/{pub/www/rdoc/classes/Reap/RDocTask.html → web/rdoc/classes/Reap/RDoc.html} +23 -41
- data/web/rdoc/classes/Reap/RDoc.src/M000059.html +18 -0
- data/{pub/www/rdoc/classes/Reap/RDocTask.src/M000003.html → web/rdoc/classes/Reap/RDoc.src/M000060.html} +4 -5
- data/{pub/www/rdoc/classes/Reap/RDocTask.src/M000004.html → web/rdoc/classes/Reap/RDoc.src/M000061.html} +26 -9
- data/web/rdoc/classes/Reap/Task.html +396 -0
- data/web/rdoc/classes/Reap/Task.src/M000039.html +18 -0
- data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000027.html → web/rdoc/classes/Reap/Task.src/M000040.html} +3 -3
- data/web/rdoc/classes/Reap/Task.src/M000041.html +16 -0
- data/web/rdoc/classes/Reap/Task.src/M000042.html +16 -0
- data/{pub/www/rdoc/classes/Reap/NoopTask.src → web/rdoc/classes/Reap/Task.src}/M000043.html +3 -3
- data/web/rdoc/classes/Reap/Task.src/M000044.html +22 -0
- data/web/rdoc/classes/Reap/Task.src/M000045.html +16 -0
- data/web/rdoc/classes/Reap/Task.src/M000046.html +16 -0
- data/{pub/www/rdoc/classes/Reap/Task.src/M000034.html → web/rdoc/classes/Reap/Task.src/M000047.html} +2 -4
- data/{pub/www/rdoc/classes/Reap/Task.src/M000036.html → web/rdoc/classes/Reap/Task.src/M000048.html} +3 -3
- data/web/rdoc/classes/Reap/Task.src/M000049.html +16 -0
- data/web/rdoc/classes/Reap/Task.src/M000050.html +27 -0
- data/web/rdoc/classes/Reap/Task.src/M000051.html +19 -0
- data/{pub/www/rdoc/classes/Reap/Task.src/M000037.html → web/rdoc/classes/Reap/Task.src/M000052.html} +2 -2
- data/web/rdoc/classes/Reap/Task.src/M000053.html +18 -0
- data/web/rdoc/classes/Reap/Task.src/M000054.html +19 -0
- data/{pub/www/rdoc/classes/Reap/TestTask.html → web/rdoc/classes/Reap/Test.html} +47 -56
- data/web/rdoc/classes/Reap/Test.src/M000062.html +18 -0
- data/{pub/www/rdoc/classes/Reap/TestTask.src/M000016.html → web/rdoc/classes/Reap/Test.src/M000063.html} +5 -4
- data/{pub/www/rdoc/classes/Reap/TestTask.src/M000017.html → web/rdoc/classes/Reap/Test.src/M000064.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/TestTask.src/M000018.html → web/rdoc/classes/Reap/Test.src/M000065.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/TestTask.src/M000019.html → web/rdoc/classes/Reap/Test.src/M000066.html} +18 -4
- data/{pub/www/rdoc/classes/Reap/TestTask → web/rdoc/classes/Reap/Test}/TestResults.html +21 -19
- data/{pub/www/rdoc/classes/Reap/TestTask/TestResults.src/M000020.html → web/rdoc/classes/Reap/Test/TestResults.src/M000067.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/TestTask/TestResults.src/M000021.html → web/rdoc/classes/Reap/Test/TestResults.src/M000068.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/TestTask/TestResults.src/M000022.html → web/rdoc/classes/Reap/Test/TestResults.src/M000069.html} +2 -2
- data/web/rdoc/classes/Reap/TestExt.html +234 -0
- data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000048.html → web/rdoc/classes/Reap/TestExt.src/M000073.html} +4 -4
- data/web/rdoc/classes/Reap/TestExt.src/M000074.html +20 -0
- data/web/rdoc/classes/Reap/TestExt.src/M000075.html +49 -0
- data/web/rdoc/classes/Reap/TestExt.src/M000076.html +34 -0
- data/web/rdoc/classes/Reap/TestExt.src/M000077.html +27 -0
- data/{pub/www/rdoc/classes/Reap/WebPublishTask.html → web/rdoc/classes/Reap/WebPublish.html} +23 -41
- data/{pub/www/rdoc/classes/Reap/WebPublishTask.src/M000011.html → web/rdoc/classes/Reap/WebPublish.src/M000083.html} +4 -4
- data/{pub/www/rdoc/classes/Reap/WebPublishTask.src/M000012.html → web/rdoc/classes/Reap/WebPublish.src/M000084.html} +2 -2
- data/{pub/www/rdoc/classes/Reap/WebPublishTask.src/M000013.html → web/rdoc/classes/Reap/WebPublish.src/M000085.html} +2 -2
- data/web/rdoc/classes/ReapCommand.html +425 -0
- data/web/rdoc/classes/ReapCommand.src/M000001.html +16 -0
- data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000039.html → web/rdoc/classes/ReapCommand.src/M000003.html} +4 -4
- data/web/rdoc/classes/ReapCommand.src/M000005.html +16 -0
- data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000047.html → web/rdoc/classes/ReapCommand.src/M000007.html} +4 -4
- data/web/rdoc/classes/ReapCommand.src/M000009.html +16 -0
- data/web/rdoc/classes/ReapCommand.src/M000011.html +16 -0
- data/web/rdoc/classes/ReapCommand.src/M000013.html +18 -0
- data/web/rdoc/classes/ReapCommand.src/M000014.html +19 -0
- data/web/rdoc/classes/ReapCommand.src/M000015.html +19 -0
- data/web/rdoc/classes/ReapCommand.src/M000016.html +24 -0
- data/web/rdoc/classes/ReapCommand.src/M000018.html +29 -0
- data/web/rdoc/classes/Scaffold.html +211 -0
- data/web/rdoc/classes/Scaffold.src/M000086.html +16 -0
- data/web/rdoc/classes/Scaffold.src/M000087.html +28 -0
- data/web/rdoc/classes/Scaffold.src/M000088.html +32 -0
- data/web/rdoc/classes/Scaffold.src/M000089.html +18 -0
- data/{pub/www/rdoc/classes/RakeTask.html → web/rdoc/classes/UnitTestKernel.html} +28 -34
- data/web/rdoc/classes/UnitTestKernel.src/M000019.html +18 -0
- data/web/rdoc/classes/UnitTestKernel.src/M000020.html +18 -0
- data/web/rdoc/classes/UnitTestKernel.src/M000021.html +22 -0
- data/web/rdoc/classes/UnitTestKernel.src/M000022.html +22 -0
- data/{pub/www/rdoc/classes/Reap.html → web/rdoc/classes/UnitTesting.html} +48 -54
- data/web/rdoc/classes/UnitTesting.src/M000090.html +34 -0
- data/web/rdoc/classes/UnitTesting.src/M000091.html +18 -0
- data/web/rdoc/classes/UnitTesting/Failure.html +156 -0
- data/web/rdoc/classes/UnitTesting/Failure.src/M000092.html +18 -0
- data/web/rdoc/classes/UnitTesting/Failure.src/M000093.html +21 -0
- data/web/rdoc/created.rid +1 -0
- data/web/rdoc/files/ANN.html +107 -0
- data/{pub/www/rdoc/files/LICENSE.html → web/rdoc/files/COPYING.html} +3 -3
- data/web/rdoc/files/ChangeLog.html +144 -0
- data/web/rdoc/files/ProjectInfo.html +190 -0
- data/{pub/www → web}/rdoc/files/README.html +38 -35
- data/web/rdoc/files/Rakefile.html +101 -0
- data/web/rdoc/files/lib/reap/bin/reap_rb.html +129 -0
- data/web/rdoc/files/lib/reap/lint_rb.html +101 -0
- data/{pub/www → web}/rdoc/files/lib/reap/projectinfo_rb.html +3 -4
- data/web/rdoc/files/lib/reap/readymade_rb.html +123 -0
- data/{pub/www/rdoc/files/lib/reap/announce_task_rb.html → web/rdoc/files/lib/reap/task/announce_rb.html} +5 -5
- data/{pub/www/rdoc/files/lib/reap/filemod_task_rb.html → web/rdoc/files/lib/reap/task/fileperm_rb.html} +5 -5
- data/{pub/www/rdoc/files/lib/reap/rdoc_task_rb.html → web/rdoc/files/lib/reap/task/info_rb.html} +5 -5
- data/web/rdoc/files/lib/reap/task/install_rb.html +108 -0
- data/{pub/www/rdoc/files/lib/reap/noop_task_rb.html → web/rdoc/files/lib/reap/task/noop_rb.html} +5 -5
- data/{pub/www/rdoc/files/lib/reap/package_task_rb.html → web/rdoc/files/lib/reap/task/package_rb.html} +5 -5
- data/web/rdoc/files/lib/reap/task/publish_rb.html +108 -0
- data/web/rdoc/files/lib/reap/task/rdoc_rb.html +108 -0
- data/web/rdoc/files/lib/reap/task/scaffold_rb.html +107 -0
- data/{pub/www/rdoc/files/lib/reap/test_task_rb.html → web/rdoc/files/lib/reap/task/test_rb.html} +5 -5
- data/web/rdoc/files/lib/reap/task/testext_rb.html +109 -0
- data/{pub/www/rdoc/files/lib/reap/publish_task_rb.html → web/rdoc/files/lib/reap/task/webpublish_rb.html} +5 -5
- data/{pub/www → web}/rdoc/files/lib/reap/task_rb.html +11 -3
- data/{pub/www → web}/rdoc/files/lib/reap/tasks_rb.html +10 -9
- data/{pub/www/rdoc/files/lib/reap/info_task_rb.html → web/rdoc/files/lib/reap/test_rb.html} +6 -5
- data/web/rdoc/fr_class_index.html +47 -0
- data/web/rdoc/fr_file_index.html +51 -0
- data/web/rdoc/fr_method_index.html +124 -0
- data/{pub/www → web}/rdoc/index.html +0 -0
- data/{pub/www → web}/rdoc/rdoc-style.css +0 -0
- metadata +236 -158
- data/lib/reap/info_task.rb +0 -29
- data/lib/reap/noop_task.rb +0 -35
- data/lib/reap/ready_made.rb +0 -12
- data/pub/www/Reapfile +0 -99
- data/pub/www/index.html +0 -90
- data/pub/www/rdoc/classes/ProjectInfo.src/M000057.html +0 -18
- data/pub/www/rdoc/classes/RakeTask.src/M000051.html +0 -18
- data/pub/www/rdoc/classes/RakeTask.src/M000052.html +0 -18
- data/pub/www/rdoc/classes/RakeTask.src/M000053.html +0 -18
- data/pub/www/rdoc/classes/RakeTask.src/M000054.html +0 -18
- data/pub/www/rdoc/classes/Reap/FilemodTask.src/M000028.html +0 -18
- data/pub/www/rdoc/classes/Reap/PackageTask.src/M000005.html +0 -16
- data/pub/www/rdoc/classes/Reap/PackageTask.src/M000006.html +0 -24
- data/pub/www/rdoc/classes/Reap/PublishTask.src/M000023.html +0 -16
- data/pub/www/rdoc/classes/Reap/PublishTask.src/M000024.html +0 -18
- data/pub/www/rdoc/classes/Reap/RDocTask.src/M000001.html +0 -16
- data/pub/www/rdoc/classes/Reap/Task.html +0 -239
- data/pub/www/rdoc/classes/Reap/Task.src/M000033.html +0 -21
- data/pub/www/rdoc/classes/Reap/Task.src/M000035.html +0 -41
- data/pub/www/rdoc/classes/Reap/Task.src/M000038.html +0 -19
- data/pub/www/rdoc/classes/Reap/TestTask.src/M000014.html +0 -16
- data/pub/www/rdoc/classes/Reap/TestTask.src/M000015.html +0 -18
- data/pub/www/rdoc/classes/Reap/WebPublishTask.src/M000010.html +0 -16
- data/pub/www/rdoc/classes/ReapTask.html +0 -287
- data/pub/www/rdoc/classes/ReapTask.src/M000060.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000061.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000062.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000063.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000064.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000065.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000066.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000067.html +0 -18
- data/pub/www/rdoc/classes/ReapTask.src/M000068.html +0 -18
- data/pub/www/rdoc/created.rid +0 -1
- data/pub/www/rdoc/files/lib/reap/ready_made_rb.html +0 -115
- data/pub/www/rdoc/files/lib/reap/web_publish_task_rb.html +0 -108
- data/pub/www/rdoc/fr_class_index.html +0 -41
- data/pub/www/rdoc/fr_file_index.html +0 -41
- data/pub/www/rdoc/fr_method_index.html +0 -94
data/dev/suby-cvs.rb
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
#!/usr/bin/ruby
|
|
2
|
+
|
|
3
|
+
DEBUG = false
|
|
4
|
+
URI = "-dtransami@cvs.suby.berlios.de:/cvsroot/suby"
|
|
5
|
+
|
|
6
|
+
cmd = nil
|
|
7
|
+
|
|
8
|
+
case ARGV[0]
|
|
9
|
+
when 'checkout', 'co'
|
|
10
|
+
if ARGV[1] and ARGV[1] != ''
|
|
11
|
+
cmd = %Q{cvs -z3 #{URI} co "#{ARGV[1]}"}
|
|
12
|
+
else
|
|
13
|
+
puts "no module given"
|
|
14
|
+
cmd = nil
|
|
15
|
+
end
|
|
16
|
+
when 'commit'
|
|
17
|
+
if ARGV[1] and ARGV[1] != ''
|
|
18
|
+
cmd = %Q{cvs -z3 #{URI} commit -m "#{ARGV[1]}"}
|
|
19
|
+
else
|
|
20
|
+
puts "no commit message given"
|
|
21
|
+
cmd = nil
|
|
22
|
+
end
|
|
23
|
+
when 'update'
|
|
24
|
+
cmd = %Q{cvs -z3 #{URI} update}
|
|
25
|
+
when 'add'
|
|
26
|
+
if ARGV[1]
|
|
27
|
+
cmd = %Q{cvs -z3 #{URI} add #{ARGV[1..-1].join(' ')}}
|
|
28
|
+
else
|
|
29
|
+
puts "no files given to add"
|
|
30
|
+
cmd = nil
|
|
31
|
+
end
|
|
32
|
+
when 'remove'
|
|
33
|
+
if ARGV[1]
|
|
34
|
+
cmd = %Q{cvs -z3 #{URI} remove #{ARGV[1..-1].join(' ')}}
|
|
35
|
+
else
|
|
36
|
+
puts "no file given to remove"
|
|
37
|
+
cmd = nil
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
if DEBUG
|
|
42
|
+
puts cmd
|
|
43
|
+
elsif cmd
|
|
44
|
+
`#{cmd}`
|
|
45
|
+
end
|
|
46
|
+
|
|
@@ -1,48 +1,33 @@
|
|
|
1
1
|
--- %YAML:1.0
|
|
2
2
|
|
|
3
|
-
TITLE: &title Your
|
|
4
|
-
NAME: &pkg
|
|
3
|
+
TITLE: &title Your Package
|
|
4
|
+
NAME: &pkg your_package_name
|
|
5
5
|
VERSION: '0.0.1'
|
|
6
6
|
AUTHOR: Your Name
|
|
7
|
-
EMAIL: youremail@address.com
|
|
7
|
+
EMAIL: &email youremail@address.com
|
|
8
8
|
HOMEPAGE: "http://your_package_name.rubyforge.org"
|
|
9
9
|
SUMMARY: One line summary
|
|
10
|
-
|
|
11
10
|
DESCRIPTION: >
|
|
12
|
-
Multline description
|
|
13
|
-
goes here.
|
|
11
|
+
Multline description goes here.
|
|
14
12
|
|
|
15
13
|
RUBYFORGE:
|
|
16
|
-
PROJECT:
|
|
14
|
+
PROJECT: 'your_project_name'
|
|
17
15
|
USERNAME: your_rubyforge_username
|
|
18
16
|
|
|
19
|
-
PUBLISH:
|
|
20
|
-
- HOST: rubyforge
|
|
21
|
-
TYPE: web
|
|
22
|
-
USERNAME: your_username
|
|
23
|
-
DIR: www
|
|
24
|
-
|
|
25
|
-
#=================================================
|
|
26
|
-
# Usually the following defaults are sufficiant
|
|
27
|
-
#=================================================
|
|
28
|
-
|
|
29
17
|
TEST:
|
|
30
18
|
FILES:
|
|
31
|
-
- 'test/**/
|
|
32
|
-
|
|
33
|
-
- 'test/**/*test.rb'
|
|
34
|
-
OPTIONS: ~ # not used yet
|
|
19
|
+
- 'test/**/tc_*.rb'
|
|
20
|
+
OPTIONS: ~
|
|
35
21
|
|
|
36
22
|
RDOC:
|
|
37
23
|
TITLE: *title
|
|
38
|
-
DIR: '
|
|
39
|
-
TEMPLATE: html
|
|
40
|
-
OPTIONS: ['--merge', '--all']
|
|
24
|
+
DIR: 'doc' #'rdoc'
|
|
25
|
+
TEMPLATE: html #ruby-red
|
|
26
|
+
OPTIONS: ['--merge', '--promiscuous', '--all']
|
|
41
27
|
MAIN: README
|
|
42
28
|
INCLUDE:
|
|
43
29
|
- 'README'
|
|
44
30
|
- 'LICEN*'
|
|
45
|
-
- 'COPY*'
|
|
46
31
|
- 'lib/**/*.rb'
|
|
47
32
|
- 'bin/**/*.rb'
|
|
48
33
|
EXCLUDE: []
|
|
@@ -51,8 +36,6 @@ PACKAGE:
|
|
|
51
36
|
DIR: pkg
|
|
52
37
|
INCLUDE:
|
|
53
38
|
- 'lib/**/*'
|
|
54
|
-
- 'data/**/*'
|
|
55
|
-
- 'ext/**/*'
|
|
56
39
|
- 'bin/**/*'
|
|
57
40
|
- 'bench/**/*'
|
|
58
41
|
- 'test/**/*'
|
|
@@ -63,16 +46,10 @@ PACKAGE:
|
|
|
63
46
|
- 'demo/**/*'
|
|
64
47
|
- 'samples/**/*'
|
|
65
48
|
- 'examples/**/*'
|
|
66
|
-
- 'bench/**/*'
|
|
67
49
|
- 'setup.rb'
|
|
68
50
|
- '[A-Z]*'
|
|
69
51
|
EXCLUDE:
|
|
70
52
|
- InstalledFiles
|
|
71
|
-
AUTOREQUIRE: ~
|
|
72
|
-
REQUIREMENTS: []
|
|
73
|
-
DEPENDENCIES: []
|
|
74
|
-
EXECUTABLES: []
|
|
75
|
-
GEM: true
|
|
76
53
|
ZIP: true
|
|
77
54
|
GZIP: true
|
|
78
55
|
BZIP2: true
|
|
@@ -84,11 +61,12 @@ ANNOUNCE:
|
|
|
84
61
|
SERVER: smtp.your_email_server.com
|
|
85
62
|
PORT: 25
|
|
86
63
|
ACCOUNT: email_account_name
|
|
87
|
-
AUTHTYPE: login #cram_md5
|
|
88
|
-
|
|
89
|
-
FILE: ANN # which file contains announcement
|
|
64
|
+
AUTHTYPE: login #cram_md5 #plain
|
|
65
|
+
FILE: ANN #which file contains tha announcement text
|
|
90
66
|
SLOGAN: ALL YOUR BASE ARE BELONG TO RUBY!
|
|
91
67
|
INFO:
|
|
92
68
|
- http://your_homepage.org
|
|
93
|
-
|
|
69
|
+
|
|
70
|
+
GEMSPEC:
|
|
71
|
+
ACTIVE: true
|
|
94
72
|
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
|
|
2
|
+
require 'facets'
|
|
3
|
+
require 'rbconfig'
|
|
4
|
+
require 'carat/shellcommand'
|
|
5
|
+
require 'reap/tasks'
|
|
6
|
+
|
|
7
|
+
INFO_FILES = [ 'ProjectInfo', 'Reapfile', 'projectinfo', 'reapfile' ]
|
|
8
|
+
|
|
9
|
+
Reap.register
|
|
10
|
+
|
|
11
|
+
module Reap
|
|
12
|
+
Version = "2005-10-06"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
class ReapCommand < ShellCommand
|
|
16
|
+
|
|
17
|
+
# Options
|
|
18
|
+
|
|
19
|
+
# verbose mode
|
|
20
|
+
def __verbose ; $VERBOSE = true ; end
|
|
21
|
+
alias_method :_V, :__verbose
|
|
22
|
+
|
|
23
|
+
# debug mode (under construction)
|
|
24
|
+
def __debug; $DEBUG = true ; end
|
|
25
|
+
alias_method :_D, :__debug
|
|
26
|
+
|
|
27
|
+
# pretend mode (under construction)
|
|
28
|
+
def __pretend; $PRETEND = true ; end
|
|
29
|
+
alias_method :_P, :__pretend
|
|
30
|
+
|
|
31
|
+
# option to display version
|
|
32
|
+
def __version ; version ; end
|
|
33
|
+
alias_method :_v, :__version
|
|
34
|
+
|
|
35
|
+
# option to display help
|
|
36
|
+
def __help ; help ; end
|
|
37
|
+
alias_method :_h, :__help
|
|
38
|
+
|
|
39
|
+
# option to display tasks
|
|
40
|
+
def __tasks; tasks ; end
|
|
41
|
+
alias_method :_t, :__tasks
|
|
42
|
+
|
|
43
|
+
# option for require
|
|
44
|
+
#def __require(r); @require = r ; end
|
|
45
|
+
#alias_method :_r, :__require
|
|
46
|
+
|
|
47
|
+
# Commands
|
|
48
|
+
|
|
49
|
+
# default action
|
|
50
|
+
def default
|
|
51
|
+
tasks
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
# display version
|
|
55
|
+
def version
|
|
56
|
+
puts "Reap v.#{Reap::Version}"
|
|
57
|
+
exit 0
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# display help
|
|
61
|
+
def help
|
|
62
|
+
puts HELP
|
|
63
|
+
exit 0
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# list available tasks
|
|
67
|
+
def tasks
|
|
68
|
+
Reap.initialize #_all
|
|
69
|
+
puts
|
|
70
|
+
Reap.tasks.each do |name,task|
|
|
71
|
+
puts " #{name}".ljust(20) + "#{task.task_desc}"
|
|
72
|
+
end
|
|
73
|
+
puts
|
|
74
|
+
exit 0
|
|
75
|
+
end
|
|
76
|
+
alias_method :ls, :tasks
|
|
77
|
+
|
|
78
|
+
# copy the file from lib/data to the current dir.
|
|
79
|
+
def template
|
|
80
|
+
if INFO_FILES.any?{ |f| File.exists?(f) }
|
|
81
|
+
puts "Project file already exists."
|
|
82
|
+
exit 0
|
|
83
|
+
end
|
|
84
|
+
filename = 'ProjectInfo'
|
|
85
|
+
dir = File.join( ::Config::CONFIG['datadir'], 'reap', 'scaffold' )
|
|
86
|
+
f = File.join( dir, filename )
|
|
87
|
+
raise "ProjectInfo template file #{f} is missing." unless File.file?( f )
|
|
88
|
+
# copy
|
|
89
|
+
FileUtils.cp( f, filename )
|
|
90
|
+
puts "#{filename} created. You'll need to fill it out."
|
|
91
|
+
exit 0
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
Reap.registry.each do |sym,taskclass|
|
|
95
|
+
define_method(sym) do |*args|
|
|
96
|
+
taskclass.new.run(*args)
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
HELP = <<-HERE
|
|
104
|
+
|
|
105
|
+
reap v#{::Reap::Version}
|
|
106
|
+
|
|
107
|
+
USAGE: reap [options...] <command> [arguments...]
|
|
108
|
+
|
|
109
|
+
COMMANDS:
|
|
110
|
+
|
|
111
|
+
scaffold
|
|
112
|
+
Copies a ProjectInfo template into the current
|
|
113
|
+
directory, if it doesn't already exist. If it does
|
|
114
|
+
exist will build the project directory based on it.
|
|
115
|
+
This will not destroy any structure already in place!
|
|
116
|
+
|
|
117
|
+
help
|
|
118
|
+
Displays this help information.
|
|
119
|
+
|
|
120
|
+
OPTIONS:
|
|
121
|
+
|
|
122
|
+
-v --version
|
|
123
|
+
Display the current version.
|
|
124
|
+
|
|
125
|
+
-V --verbose
|
|
126
|
+
Provides extra verbose processing information.
|
|
127
|
+
|
|
128
|
+
-D --debug
|
|
129
|
+
Provides extra verbose processing information.
|
|
130
|
+
|
|
131
|
+
-h --help
|
|
132
|
+
Display this help information.
|
|
133
|
+
|
|
134
|
+
HERE
|
data/lib/reap/lint.rb
ADDED
|
File without changes
|
data/lib/reap/projectinfo.rb
CHANGED
|
@@ -1,29 +1,40 @@
|
|
|
1
1
|
|
|
2
2
|
require 'yaml'
|
|
3
|
-
require '
|
|
4
|
-
require '
|
|
5
|
-
require '
|
|
3
|
+
require 'facet/hash/traverse'
|
|
4
|
+
require 'facet/string/tabto'
|
|
5
|
+
require 'facet/dir/self/ascend'
|
|
6
6
|
|
|
7
7
|
module ProjectInfo
|
|
8
8
|
extend self
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
INFO_FILES = [ 'ProjectInfo', 'ReapFile', 'projectinfo', 'reapfile' ]
|
|
11
11
|
|
|
12
|
-
def
|
|
13
|
-
|
|
12
|
+
def add_info_file( f )
|
|
13
|
+
INFO_FILES.unshift( f )
|
|
14
14
|
end
|
|
15
15
|
|
|
16
16
|
def info_stream
|
|
17
|
+
dir = Dir.pwd
|
|
17
18
|
unless @info_stream
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
Dir.ascend(Dir.pwd) do |d|
|
|
20
|
+
Dir.chdir(d)
|
|
21
|
+
info_file = INFO_FILES.find{ |f| File.file?( f ) }
|
|
22
|
+
if info_file
|
|
23
|
+
@info_stream = File.read( info_file )
|
|
24
|
+
puts "(in #{d})" unless dir == Dir.pwd
|
|
25
|
+
break
|
|
26
|
+
end
|
|
20
27
|
end
|
|
21
28
|
end
|
|
22
29
|
@info_stream
|
|
23
30
|
end
|
|
24
31
|
|
|
25
32
|
def info
|
|
26
|
-
|
|
33
|
+
if info_stream
|
|
34
|
+
@info ||= YAML::load(info_stream).traverse{ |k,v| [k.downcase, v] }
|
|
35
|
+
else
|
|
36
|
+
{}
|
|
37
|
+
end
|
|
27
38
|
end
|
|
28
39
|
|
|
29
40
|
# not using at the moment
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
|
|
2
|
+
# This loads in the reap tasks and setsup
|
|
3
|
+
# some tasks that are typically ready to go
|
|
4
|
+
# without additional paramaters.
|
|
5
|
+
|
|
6
|
+
require 'reap/task/announce'
|
|
7
|
+
require 'reap/task/extract_tests'
|
|
8
|
+
require 'reap/task/fileperm'
|
|
9
|
+
require 'reap/task/info'
|
|
10
|
+
require 'reap/task/install'
|
|
11
|
+
require 'reap/task/package'
|
|
12
|
+
require 'reap/task/publish'
|
|
13
|
+
require 'reap/task/rdoc'
|
|
14
|
+
require 'reap/task/test'
|
|
15
|
+
|
|
16
|
+
rdoc_task( :rdoc )
|
|
17
|
+
tests_task( :test )
|
|
18
|
+
install_task( :install )
|
|
19
|
+
info_task( :info )
|
|
20
|
+
package_task( :package )
|
|
21
|
+
extract_tests_task( :exttests )
|
data/lib/reap/task.rb
CHANGED
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
|
|
2
|
-
require 'rake'
|
|
3
|
-
require 'rake/tasklib'
|
|
4
|
-
|
|
5
2
|
require 'rbconfig'
|
|
6
3
|
require 'fileutils'
|
|
7
4
|
|
|
8
|
-
|
|
9
|
-
require '
|
|
5
|
+
require 'facet/fileutils/safe_ln'
|
|
6
|
+
require 'facet/string/tabto'
|
|
7
|
+
require 'facet/module/basename'
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
require 'carat/filelist'
|
|
12
10
|
|
|
13
|
-
|
|
14
|
-
extend self
|
|
15
|
-
end
|
|
11
|
+
require 'reap/projectinfo'
|
|
16
12
|
|
|
17
13
|
# Base class for reap tasks.
|
|
18
14
|
#
|
|
@@ -45,69 +41,122 @@ end
|
|
|
45
41
|
#
|
|
46
42
|
module Reap
|
|
47
43
|
|
|
48
|
-
|
|
49
|
-
# @registry ||= {}
|
|
50
|
-
# @registry[name.to_s.downcase] = klass
|
|
51
|
-
#end
|
|
44
|
+
def self.registry ; @registry ; end
|
|
52
45
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
46
|
+
def self.register
|
|
47
|
+
@registry ||= {}
|
|
48
|
+
ObjectSpace.each_object(Class) { |klass|
|
|
49
|
+
if klass < ::Reap::Task
|
|
50
|
+
if klass.verify
|
|
51
|
+
@registry[klass.basename.downcase] = klass
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
}
|
|
55
|
+
end
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
def self.tasks ; @tasks ; end
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
59
|
+
def self.initialize
|
|
60
|
+
@tasks ||= {}
|
|
61
|
+
registry.each do |name, klass|
|
|
62
|
+
@tasks[name] = klass.new
|
|
64
63
|
end
|
|
64
|
+
end
|
|
65
65
|
|
|
66
|
-
def master
|
|
67
|
-
::ProjectInfo.info
|
|
68
|
-
end
|
|
69
66
|
|
|
70
|
-
|
|
67
|
+
class Task
|
|
71
68
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
69
|
+
include ::Config
|
|
70
|
+
include ::FileUtils
|
|
71
|
+
|
|
72
|
+
RUBY = CONFIG['ruby_install_name']
|
|
73
|
+
|
|
74
|
+
# class methods
|
|
75
|
+
|
|
76
|
+
def self.task_desc ; '(no desciption given)' ; end
|
|
77
|
+
def self.task_name ; basename.downcase ; end
|
|
78
|
+
|
|
79
|
+
def self.section_required( val ) ; @section_required = val ;end
|
|
80
|
+
def self.section_required? ; @section_required ; end
|
|
81
|
+
|
|
82
|
+
def self.verify
|
|
83
|
+
assume = true
|
|
84
|
+
if section_required?
|
|
85
|
+
assume = ::ProjectInfo.info.key?(task_name)
|
|
79
86
|
end
|
|
87
|
+
assume
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# instance methods
|
|
91
|
+
|
|
92
|
+
def task_name ; self.class.task_name ; end
|
|
93
|
+
def task_desc ; self.class.task_desc ; end
|
|
80
94
|
|
|
81
|
-
|
|
95
|
+
def master ; ::ProjectInfo.info ; end
|
|
82
96
|
|
|
83
|
-
|
|
84
|
-
task_desc = @desc || default_desc
|
|
97
|
+
def section ; @section ; end
|
|
85
98
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
99
|
+
def section_required? ; self.class.section_required? ; end
|
|
100
|
+
|
|
101
|
+
def initialize
|
|
102
|
+
sect = master[task_name]
|
|
103
|
+
if sect.is_a?(Array)
|
|
104
|
+
sect.each do |s|
|
|
105
|
+
section_parameters_set( s )
|
|
106
|
+
init
|
|
90
107
|
end
|
|
91
108
|
else
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
run
|
|
95
|
-
end
|
|
109
|
+
section_parameters_set( sect || {} )
|
|
110
|
+
init
|
|
96
111
|
end
|
|
97
112
|
end
|
|
98
113
|
|
|
99
|
-
def
|
|
100
|
-
|
|
114
|
+
def section_parameters_set( s )
|
|
115
|
+
@section = s
|
|
116
|
+
@section.each { |k,v| send("#{k}=", v) }
|
|
117
|
+
end
|
|
101
118
|
|
|
102
119
|
def init
|
|
103
|
-
raise "not implemented"
|
|
120
|
+
raise "not implemented for '#{task_name}' task"
|
|
104
121
|
end
|
|
105
122
|
|
|
106
|
-
def
|
|
107
|
-
|
|
108
|
-
iy['task'] || {}
|
|
123
|
+
def run( *args )
|
|
124
|
+
raise "no action defined for task #{task_name}"
|
|
109
125
|
end
|
|
110
126
|
|
|
127
|
+
# task support methods
|
|
128
|
+
|
|
129
|
+
def sh( arg )
|
|
130
|
+
puts arg
|
|
131
|
+
system arg unless $PRETEND
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
# o = nil
|
|
135
|
+
# o = yld.call(self) if yld
|
|
136
|
+
# if String === o
|
|
137
|
+
# begin
|
|
138
|
+
# section( o ).each { |k,v| send("#{k}=", v ) }
|
|
139
|
+
# end
|
|
140
|
+
# end
|
|
141
|
+
#
|
|
142
|
+
# init
|
|
143
|
+
#
|
|
144
|
+
# task_name ||= default_name
|
|
145
|
+
# task_desc = @desc || default_desc
|
|
146
|
+
#
|
|
147
|
+
# if subtask
|
|
148
|
+
# desc task_desc
|
|
149
|
+
# task task_name => subtask do
|
|
150
|
+
# run
|
|
151
|
+
# end
|
|
152
|
+
# else
|
|
153
|
+
# desc task_desc
|
|
154
|
+
# task task_name do
|
|
155
|
+
# run
|
|
156
|
+
# end
|
|
157
|
+
# end
|
|
158
|
+
# end
|
|
159
|
+
|
|
111
160
|
end #class Task
|
|
112
161
|
|
|
113
162
|
end #module Reap
|
|
@@ -116,23 +165,23 @@ end #module Reap
|
|
|
116
165
|
##
|
|
117
166
|
# Convenience methods for built-in rake tasks
|
|
118
167
|
##
|
|
119
|
-
module RakeTask
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
end
|
|
168
|
+
# module RakeTask
|
|
169
|
+
# extend self
|
|
170
|
+
#
|
|
171
|
+
# def gem_package_task(*args,&blk)
|
|
172
|
+
# ::Rake::GemPackageTask.new(*args,&blk)
|
|
173
|
+
# end
|
|
174
|
+
#
|
|
175
|
+
# def package_task(*args,&blk)
|
|
176
|
+
# ::Rake::PackageTask.new(*args,&blk)
|
|
177
|
+
# end
|
|
178
|
+
#
|
|
179
|
+
# def test_task(*args,&blk)
|
|
180
|
+
# ::Rake::TestTask.new(*args,&blk)
|
|
181
|
+
# end
|
|
182
|
+
#
|
|
183
|
+
# def rdoc_task(*args,&blk)
|
|
184
|
+
# ::Rake::RDocTask.new(*args,&blk)
|
|
185
|
+
# end
|
|
186
|
+
#
|
|
187
|
+
# end
|