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.
Files changed (231) hide show
  1. data/{LICENSE → COPYING} +0 -0
  2. data/ChangeLog +5 -0
  3. data/ProjectInfo +55 -15
  4. data/README +32 -31
  5. data/Rakefile +0 -141
  6. data/bin/reap +2 -158
  7. data/data/reap/scaffold/COPYING +11 -0
  8. data/data/reap/scaffold/ChangeLog +0 -0
  9. data/data/reap/scaffold/INSTALL +0 -0
  10. data/data/reap/scaffold/ProjectInfo +78 -0
  11. data/data/reap/scaffold/README +0 -0
  12. data/data/reap/scaffold/Rakefile +146 -0
  13. data/data/reap/scaffold/Todo +0 -0
  14. data/data/reap/scaffold/setup.rb +1551 -0
  15. data/dev/Rakefile +60 -0
  16. data/dev/composite_task.rb +27 -0
  17. data/dev/compositepublisher.rb +24 -0
  18. data/dev/ftptools.rb +139 -0
  19. data/dev/license-each.rb +85 -0
  20. data/dev/publisher.rb +75 -0
  21. data/dev/rubyforgepublisher.rb +18 -0
  22. data/dev/sshpublisher.rb +47 -0
  23. data/dev/suby-cvs.rb +46 -0
  24. data/{data/site_ruby/reap/template.yaml → dev/template.rb} +15 -37
  25. data/lib/reap/bin/reap.rb +134 -0
  26. data/lib/reap/lint.rb +0 -0
  27. data/lib/reap/projectinfo.rb +20 -9
  28. data/lib/reap/readymade.rb +21 -0
  29. data/lib/reap/task.rb +119 -70
  30. data/lib/reap/{announce_task.rb → task/announce.rb} +20 -25
  31. data/lib/reap/{filemod_task.rb → task/fileperm.rb} +12 -16
  32. data/lib/reap/task/info.rb +20 -0
  33. data/lib/reap/task/install.rb +33 -0
  34. data/lib/reap/task/noop.rb +26 -0
  35. data/lib/reap/{package_task.rb → task/package.rb} +88 -71
  36. data/lib/reap/{publish_task.rb → task/publish.rb} +5 -13
  37. data/lib/reap/{rdoc_task.rb → task/rdoc.rb} +29 -22
  38. data/lib/reap/task/scaffold.rb +114 -0
  39. data/lib/reap/{test_task.rb → task/test.rb} +33 -26
  40. data/lib/reap/task/testext.rb +110 -0
  41. data/lib/reap/{web_publish_task.rb → task/webpublish.rb} +5 -11
  42. data/lib/reap/tasks.rb +12 -8
  43. data/lib/reap/test.rb +138 -0
  44. data/setup.rb +726 -534
  45. data/web/ProjectInfo +57 -0
  46. data/{pub/www → web}/images/appleboy.jpg +0 -0
  47. data/{pub → web/images}/grape.jpg +0 -0
  48. data/web/index.html +124 -0
  49. data/web/rdoc/classes/Object.html +121 -0
  50. data/{pub/www → web}/rdoc/classes/ProjectInfo.html +36 -36
  51. data/{pub/www/rdoc/classes/ProjectInfo.src/M000055.html → web/rdoc/classes/ProjectInfo.src/M000094.html} +3 -3
  52. data/{pub/www/rdoc/classes/ProjectInfo.src/M000056.html → web/rdoc/classes/ProjectInfo.src/M000095.html} +2 -1
  53. data/web/rdoc/classes/ProjectInfo.src/M000096.html +22 -0
  54. data/{pub/www/rdoc/classes/ProjectInfo.src/M000058.html → web/rdoc/classes/ProjectInfo.src/M000097.html} +1 -1
  55. data/{pub/www/rdoc/classes/ProjectInfo.src/M000059.html → web/rdoc/classes/ProjectInfo.src/M000098.html} +1 -1
  56. data/web/rdoc/classes/Reap.html +248 -0
  57. data/web/rdoc/classes/Reap.src/M000023.html +16 -0
  58. data/web/rdoc/classes/Reap.src/M000024.html +21 -0
  59. data/web/rdoc/classes/Reap.src/M000025.html +16 -0
  60. data/web/rdoc/classes/Reap.src/M000026.html +21 -0
  61. data/{pub/www/rdoc/classes/Reap/AnnounceTask.html → web/rdoc/classes/Reap/Announce.html} +22 -40
  62. data/web/rdoc/classes/Reap/Announce.src/M000030.html +18 -0
  63. data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000041.html → web/rdoc/classes/Reap/Announce.src/M000031.html} +13 -10
  64. data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000042.html → web/rdoc/classes/Reap/Announce.src/M000032.html} +2 -2
  65. data/{pub/www/rdoc/classes/Reap/InfoTask.html → web/rdoc/classes/Reap/Info.html} +23 -41
  66. data/{pub/www/rdoc/classes/Reap/RDocTask.src/M000002.html → web/rdoc/classes/Reap/Info.src/M000033.html} +4 -4
  67. data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000049.html → web/rdoc/classes/Reap/Info.src/M000034.html} +2 -2
  68. data/{pub/www/rdoc/classes/Reap/NoopTask.src/M000046.html → web/rdoc/classes/Reap/Info.src/M000035.html} +3 -3
  69. data/web/rdoc/classes/Reap/Install.html +193 -0
  70. data/web/rdoc/classes/Reap/Install.src/M000036.html +18 -0
  71. data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000040.html → web/rdoc/classes/Reap/Install.src/M000037.html} +6 -4
  72. data/web/rdoc/classes/Reap/Install.src/M000038.html +26 -0
  73. data/{pub/www/rdoc/classes/Reap/NoopTask.html → web/rdoc/classes/Reap/Noop.html} +23 -41
  74. data/web/rdoc/classes/Reap/Noop.src/M000027.html +18 -0
  75. data/{pub/www/rdoc/classes/Reap/NoopTask.src/M000045.html → web/rdoc/classes/Reap/Noop.src/M000028.html} +2 -2
  76. data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000050.html → web/rdoc/classes/Reap/Noop.src/M000029.html} +3 -3
  77. data/{pub/www/rdoc/classes/Reap/PackageTask.html → web/rdoc/classes/Reap/Package.html} +40 -68
  78. data/{pub/www/rdoc/classes/Reap/NoopTask.src/M000044.html → web/rdoc/classes/Reap/Package.src/M000055.html} +4 -4
  79. data/{pub/www/rdoc/classes/Reap/PackageTask.src/M000007.html → web/rdoc/classes/Reap/Package.src/M000056.html} +28 -13
  80. data/{pub/www/rdoc/classes/Reap/PackageTask.src/M000008.html → web/rdoc/classes/Reap/Package.src/M000057.html} +43 -32
  81. data/{pub/www/rdoc/classes/Reap/PackageTask.src/M000009.html → web/rdoc/classes/Reap/Package.src/M000058.html} +13 -3
  82. data/{pub/www/rdoc/classes/Reap/FilemodTask.html → web/rdoc/classes/Reap/Perm.html} +35 -53
  83. data/web/rdoc/classes/Reap/Perm.src/M000078.html +18 -0
  84. data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000029.html → web/rdoc/classes/Reap/Perm.src/M000079.html} +3 -3
  85. data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000030.html → web/rdoc/classes/Reap/Perm.src/M000080.html} +2 -2
  86. data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000031.html → web/rdoc/classes/Reap/Perm.src/M000081.html} +2 -2
  87. data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000032.html → web/rdoc/classes/Reap/Perm.src/M000082.html} +2 -2
  88. data/{pub/www/rdoc/classes/Reap/PublishTask.html → web/rdoc/classes/Reap/Publish.html} +23 -41
  89. data/web/rdoc/classes/Reap/Publish.src/M000070.html +18 -0
  90. data/{pub/www/rdoc/classes/Reap/PublishTask.src/M000025.html → web/rdoc/classes/Reap/Publish.src/M000071.html} +2 -2
  91. data/{pub/www/rdoc/classes/Reap/PublishTask.src/M000026.html → web/rdoc/classes/Reap/Publish.src/M000072.html} +3 -4
  92. data/{pub/www/rdoc/classes/Reap/RDocTask.html → web/rdoc/classes/Reap/RDoc.html} +23 -41
  93. data/web/rdoc/classes/Reap/RDoc.src/M000059.html +18 -0
  94. data/{pub/www/rdoc/classes/Reap/RDocTask.src/M000003.html → web/rdoc/classes/Reap/RDoc.src/M000060.html} +4 -5
  95. data/{pub/www/rdoc/classes/Reap/RDocTask.src/M000004.html → web/rdoc/classes/Reap/RDoc.src/M000061.html} +26 -9
  96. data/web/rdoc/classes/Reap/Task.html +396 -0
  97. data/web/rdoc/classes/Reap/Task.src/M000039.html +18 -0
  98. data/{pub/www/rdoc/classes/Reap/FilemodTask.src/M000027.html → web/rdoc/classes/Reap/Task.src/M000040.html} +3 -3
  99. data/web/rdoc/classes/Reap/Task.src/M000041.html +16 -0
  100. data/web/rdoc/classes/Reap/Task.src/M000042.html +16 -0
  101. data/{pub/www/rdoc/classes/Reap/NoopTask.src → web/rdoc/classes/Reap/Task.src}/M000043.html +3 -3
  102. data/web/rdoc/classes/Reap/Task.src/M000044.html +22 -0
  103. data/web/rdoc/classes/Reap/Task.src/M000045.html +16 -0
  104. data/web/rdoc/classes/Reap/Task.src/M000046.html +16 -0
  105. data/{pub/www/rdoc/classes/Reap/Task.src/M000034.html → web/rdoc/classes/Reap/Task.src/M000047.html} +2 -4
  106. data/{pub/www/rdoc/classes/Reap/Task.src/M000036.html → web/rdoc/classes/Reap/Task.src/M000048.html} +3 -3
  107. data/web/rdoc/classes/Reap/Task.src/M000049.html +16 -0
  108. data/web/rdoc/classes/Reap/Task.src/M000050.html +27 -0
  109. data/web/rdoc/classes/Reap/Task.src/M000051.html +19 -0
  110. data/{pub/www/rdoc/classes/Reap/Task.src/M000037.html → web/rdoc/classes/Reap/Task.src/M000052.html} +2 -2
  111. data/web/rdoc/classes/Reap/Task.src/M000053.html +18 -0
  112. data/web/rdoc/classes/Reap/Task.src/M000054.html +19 -0
  113. data/{pub/www/rdoc/classes/Reap/TestTask.html → web/rdoc/classes/Reap/Test.html} +47 -56
  114. data/web/rdoc/classes/Reap/Test.src/M000062.html +18 -0
  115. data/{pub/www/rdoc/classes/Reap/TestTask.src/M000016.html → web/rdoc/classes/Reap/Test.src/M000063.html} +5 -4
  116. data/{pub/www/rdoc/classes/Reap/TestTask.src/M000017.html → web/rdoc/classes/Reap/Test.src/M000064.html} +2 -2
  117. data/{pub/www/rdoc/classes/Reap/TestTask.src/M000018.html → web/rdoc/classes/Reap/Test.src/M000065.html} +2 -2
  118. data/{pub/www/rdoc/classes/Reap/TestTask.src/M000019.html → web/rdoc/classes/Reap/Test.src/M000066.html} +18 -4
  119. data/{pub/www/rdoc/classes/Reap/TestTask → web/rdoc/classes/Reap/Test}/TestResults.html +21 -19
  120. data/{pub/www/rdoc/classes/Reap/TestTask/TestResults.src/M000020.html → web/rdoc/classes/Reap/Test/TestResults.src/M000067.html} +2 -2
  121. data/{pub/www/rdoc/classes/Reap/TestTask/TestResults.src/M000021.html → web/rdoc/classes/Reap/Test/TestResults.src/M000068.html} +2 -2
  122. data/{pub/www/rdoc/classes/Reap/TestTask/TestResults.src/M000022.html → web/rdoc/classes/Reap/Test/TestResults.src/M000069.html} +2 -2
  123. data/web/rdoc/classes/Reap/TestExt.html +234 -0
  124. data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000048.html → web/rdoc/classes/Reap/TestExt.src/M000073.html} +4 -4
  125. data/web/rdoc/classes/Reap/TestExt.src/M000074.html +20 -0
  126. data/web/rdoc/classes/Reap/TestExt.src/M000075.html +49 -0
  127. data/web/rdoc/classes/Reap/TestExt.src/M000076.html +34 -0
  128. data/web/rdoc/classes/Reap/TestExt.src/M000077.html +27 -0
  129. data/{pub/www/rdoc/classes/Reap/WebPublishTask.html → web/rdoc/classes/Reap/WebPublish.html} +23 -41
  130. data/{pub/www/rdoc/classes/Reap/WebPublishTask.src/M000011.html → web/rdoc/classes/Reap/WebPublish.src/M000083.html} +4 -4
  131. data/{pub/www/rdoc/classes/Reap/WebPublishTask.src/M000012.html → web/rdoc/classes/Reap/WebPublish.src/M000084.html} +2 -2
  132. data/{pub/www/rdoc/classes/Reap/WebPublishTask.src/M000013.html → web/rdoc/classes/Reap/WebPublish.src/M000085.html} +2 -2
  133. data/web/rdoc/classes/ReapCommand.html +425 -0
  134. data/web/rdoc/classes/ReapCommand.src/M000001.html +16 -0
  135. data/{pub/www/rdoc/classes/Reap/AnnounceTask.src/M000039.html → web/rdoc/classes/ReapCommand.src/M000003.html} +4 -4
  136. data/web/rdoc/classes/ReapCommand.src/M000005.html +16 -0
  137. data/{pub/www/rdoc/classes/Reap/InfoTask.src/M000047.html → web/rdoc/classes/ReapCommand.src/M000007.html} +4 -4
  138. data/web/rdoc/classes/ReapCommand.src/M000009.html +16 -0
  139. data/web/rdoc/classes/ReapCommand.src/M000011.html +16 -0
  140. data/web/rdoc/classes/ReapCommand.src/M000013.html +18 -0
  141. data/web/rdoc/classes/ReapCommand.src/M000014.html +19 -0
  142. data/web/rdoc/classes/ReapCommand.src/M000015.html +19 -0
  143. data/web/rdoc/classes/ReapCommand.src/M000016.html +24 -0
  144. data/web/rdoc/classes/ReapCommand.src/M000018.html +29 -0
  145. data/web/rdoc/classes/Scaffold.html +211 -0
  146. data/web/rdoc/classes/Scaffold.src/M000086.html +16 -0
  147. data/web/rdoc/classes/Scaffold.src/M000087.html +28 -0
  148. data/web/rdoc/classes/Scaffold.src/M000088.html +32 -0
  149. data/web/rdoc/classes/Scaffold.src/M000089.html +18 -0
  150. data/{pub/www/rdoc/classes/RakeTask.html → web/rdoc/classes/UnitTestKernel.html} +28 -34
  151. data/web/rdoc/classes/UnitTestKernel.src/M000019.html +18 -0
  152. data/web/rdoc/classes/UnitTestKernel.src/M000020.html +18 -0
  153. data/web/rdoc/classes/UnitTestKernel.src/M000021.html +22 -0
  154. data/web/rdoc/classes/UnitTestKernel.src/M000022.html +22 -0
  155. data/{pub/www/rdoc/classes/Reap.html → web/rdoc/classes/UnitTesting.html} +48 -54
  156. data/web/rdoc/classes/UnitTesting.src/M000090.html +34 -0
  157. data/web/rdoc/classes/UnitTesting.src/M000091.html +18 -0
  158. data/web/rdoc/classes/UnitTesting/Failure.html +156 -0
  159. data/web/rdoc/classes/UnitTesting/Failure.src/M000092.html +18 -0
  160. data/web/rdoc/classes/UnitTesting/Failure.src/M000093.html +21 -0
  161. data/web/rdoc/created.rid +1 -0
  162. data/web/rdoc/files/ANN.html +107 -0
  163. data/{pub/www/rdoc/files/LICENSE.html → web/rdoc/files/COPYING.html} +3 -3
  164. data/web/rdoc/files/ChangeLog.html +144 -0
  165. data/web/rdoc/files/ProjectInfo.html +190 -0
  166. data/{pub/www → web}/rdoc/files/README.html +38 -35
  167. data/web/rdoc/files/Rakefile.html +101 -0
  168. data/web/rdoc/files/lib/reap/bin/reap_rb.html +129 -0
  169. data/web/rdoc/files/lib/reap/lint_rb.html +101 -0
  170. data/{pub/www → web}/rdoc/files/lib/reap/projectinfo_rb.html +3 -4
  171. data/web/rdoc/files/lib/reap/readymade_rb.html +123 -0
  172. data/{pub/www/rdoc/files/lib/reap/announce_task_rb.html → web/rdoc/files/lib/reap/task/announce_rb.html} +5 -5
  173. data/{pub/www/rdoc/files/lib/reap/filemod_task_rb.html → web/rdoc/files/lib/reap/task/fileperm_rb.html} +5 -5
  174. data/{pub/www/rdoc/files/lib/reap/rdoc_task_rb.html → web/rdoc/files/lib/reap/task/info_rb.html} +5 -5
  175. data/web/rdoc/files/lib/reap/task/install_rb.html +108 -0
  176. data/{pub/www/rdoc/files/lib/reap/noop_task_rb.html → web/rdoc/files/lib/reap/task/noop_rb.html} +5 -5
  177. data/{pub/www/rdoc/files/lib/reap/package_task_rb.html → web/rdoc/files/lib/reap/task/package_rb.html} +5 -5
  178. data/web/rdoc/files/lib/reap/task/publish_rb.html +108 -0
  179. data/web/rdoc/files/lib/reap/task/rdoc_rb.html +108 -0
  180. data/web/rdoc/files/lib/reap/task/scaffold_rb.html +107 -0
  181. data/{pub/www/rdoc/files/lib/reap/test_task_rb.html → web/rdoc/files/lib/reap/task/test_rb.html} +5 -5
  182. data/web/rdoc/files/lib/reap/task/testext_rb.html +109 -0
  183. data/{pub/www/rdoc/files/lib/reap/publish_task_rb.html → web/rdoc/files/lib/reap/task/webpublish_rb.html} +5 -5
  184. data/{pub/www → web}/rdoc/files/lib/reap/task_rb.html +11 -3
  185. data/{pub/www → web}/rdoc/files/lib/reap/tasks_rb.html +10 -9
  186. data/{pub/www/rdoc/files/lib/reap/info_task_rb.html → web/rdoc/files/lib/reap/test_rb.html} +6 -5
  187. data/web/rdoc/fr_class_index.html +47 -0
  188. data/web/rdoc/fr_file_index.html +51 -0
  189. data/web/rdoc/fr_method_index.html +124 -0
  190. data/{pub/www → web}/rdoc/index.html +0 -0
  191. data/{pub/www → web}/rdoc/rdoc-style.css +0 -0
  192. metadata +236 -158
  193. data/lib/reap/info_task.rb +0 -29
  194. data/lib/reap/noop_task.rb +0 -35
  195. data/lib/reap/ready_made.rb +0 -12
  196. data/pub/www/Reapfile +0 -99
  197. data/pub/www/index.html +0 -90
  198. data/pub/www/rdoc/classes/ProjectInfo.src/M000057.html +0 -18
  199. data/pub/www/rdoc/classes/RakeTask.src/M000051.html +0 -18
  200. data/pub/www/rdoc/classes/RakeTask.src/M000052.html +0 -18
  201. data/pub/www/rdoc/classes/RakeTask.src/M000053.html +0 -18
  202. data/pub/www/rdoc/classes/RakeTask.src/M000054.html +0 -18
  203. data/pub/www/rdoc/classes/Reap/FilemodTask.src/M000028.html +0 -18
  204. data/pub/www/rdoc/classes/Reap/PackageTask.src/M000005.html +0 -16
  205. data/pub/www/rdoc/classes/Reap/PackageTask.src/M000006.html +0 -24
  206. data/pub/www/rdoc/classes/Reap/PublishTask.src/M000023.html +0 -16
  207. data/pub/www/rdoc/classes/Reap/PublishTask.src/M000024.html +0 -18
  208. data/pub/www/rdoc/classes/Reap/RDocTask.src/M000001.html +0 -16
  209. data/pub/www/rdoc/classes/Reap/Task.html +0 -239
  210. data/pub/www/rdoc/classes/Reap/Task.src/M000033.html +0 -21
  211. data/pub/www/rdoc/classes/Reap/Task.src/M000035.html +0 -41
  212. data/pub/www/rdoc/classes/Reap/Task.src/M000038.html +0 -19
  213. data/pub/www/rdoc/classes/Reap/TestTask.src/M000014.html +0 -16
  214. data/pub/www/rdoc/classes/Reap/TestTask.src/M000015.html +0 -18
  215. data/pub/www/rdoc/classes/Reap/WebPublishTask.src/M000010.html +0 -16
  216. data/pub/www/rdoc/classes/ReapTask.html +0 -287
  217. data/pub/www/rdoc/classes/ReapTask.src/M000060.html +0 -18
  218. data/pub/www/rdoc/classes/ReapTask.src/M000061.html +0 -18
  219. data/pub/www/rdoc/classes/ReapTask.src/M000062.html +0 -18
  220. data/pub/www/rdoc/classes/ReapTask.src/M000063.html +0 -18
  221. data/pub/www/rdoc/classes/ReapTask.src/M000064.html +0 -18
  222. data/pub/www/rdoc/classes/ReapTask.src/M000065.html +0 -18
  223. data/pub/www/rdoc/classes/ReapTask.src/M000066.html +0 -18
  224. data/pub/www/rdoc/classes/ReapTask.src/M000067.html +0 -18
  225. data/pub/www/rdoc/classes/ReapTask.src/M000068.html +0 -18
  226. data/pub/www/rdoc/created.rid +0 -1
  227. data/pub/www/rdoc/files/lib/reap/ready_made_rb.html +0 -115
  228. data/pub/www/rdoc/files/lib/reap/web_publish_task_rb.html +0 -108
  229. data/pub/www/rdoc/fr_class_index.html +0 -41
  230. data/pub/www/rdoc/fr_file_index.html +0 -41
  231. data/pub/www/rdoc/fr_method_index.html +0 -94
File without changes
data/ChangeLog CHANGED
@@ -1,6 +1,11 @@
1
1
 
2
2
  = Reap ChangeLog
3
3
 
4
+ == 04
5
+
6
+ * Killed the Rake idea. Now a fully independent project,
7
+ and better than before.
8
+
4
9
  == 03
5
10
 
6
11
  * Major overhaul. Reap is no longer an independent project.
@@ -1,25 +1,65 @@
1
1
  --- %YAML:1.0
2
2
 
3
- TITLE : &title Reap
4
- NAME : &pkg reap
5
- VERSION : '03.01'
3
+ TITLE : Reap
4
+ NAME : reap
5
+ DATE : '2005-10-06'
6
+ SERIES : '4.0'
7
+ STATUS : 'beta/stable'
8
+
6
9
  AUTHOR : Thomas Sawyer
7
- EMAIL : &email transfire@gmail.com
10
+ EMAIL : transfire@gmail.com
8
11
  HOMEPAGE : "http://reap.rubyforge.org"
9
- SUMMARY : Rake extensions for project management assitance.
12
+ SUMMARY : Tools for Ruby project testing, management and assistance.
10
13
 
11
14
  DESCRIPTION: >
12
- The Reap extensions for Rake comprise a set of commonly
13
- needed tasks for Ruby package developers/deployers.
14
- Because of the commonality, Reap utilizes a YAML
15
- configuration file to harvest project information,
16
- significantly simplifying Rake usage. In fact,
17
- when using Reap, it will not be uncommon to see a
18
- Rakefile containinf nothing but require 'reap-all'.
15
+ Reap comprises a set of commonly needed tools for Ruby package
16
+ developers/deployers. Because of the commonality,
17
+ Reap utilizes a YAML configuration file to harvest project
18
+ information, significantly simplifying usage.
19
19
 
20
- DEPENDENCIES : &dep [ nano ]
21
- EXECUTABLES : &exe []
20
+ DISTRIBUTE : [ gem, tar.bz2, zip ] # tar.gz, tbz, tgz
21
+ DEPENDENCIES : [ facets ]
22
+ EXECUTABLES : [ reap ]
22
23
 
23
24
  RUBYFORGE:
24
25
  PROJECT: reap
25
- USERNAME: reap
26
+ USERNAME: transami
27
+
28
+ PUBLISH:
29
+ type : web
30
+ host : rubyforge.org
31
+ username : transami
32
+ dir : web
33
+
34
+ RDOC:
35
+ dir: 'web/rdoc'
36
+ include:
37
+ - 'A-Z*'
38
+ - 'lib/**/*'
39
+ exclude:
40
+ - 'lib/reap/data'
41
+
42
+ ANNOUNCE:
43
+ to : transfire@gmail.com # ruby-talk@ruby-lang.org
44
+ from : *email
45
+ domain : unit.rubyforge.org
46
+ server : smtp.gmail.com
47
+ port : 587
48
+ account : *email # transfire@gmail.com
49
+ authtype : login # cram_md5, plain
50
+ sectype : tls # ~, tls, ssl (not working yet)
51
+ file : ANN # which file contains announcement
52
+ slogan : REAP THE REWARDS!
53
+ links :
54
+ - http://reap.rubyforge.org
55
+ - http://roll.rubyforge.org
56
+
57
+ PERM:
58
+ filemod: 644
59
+ dirmod: 755
60
+ user: trans
61
+ group: users
62
+
63
+ NOOP:
64
+ MESSAGE: Hello Dude!
65
+
data/README CHANGED
@@ -4,13 +4,14 @@ User Friendly Project Assitant for Ruby
4
4
 
5
5
  == What's This?
6
6
 
7
- Reap is a user friendly project assistant for Ruby developers
8
- built on top of Rake. By organizing your project in a semi-formal
9
- manner (the same as setup.rb), Reap makes it easy to do the
7
+ Reap is a user friendly project assistant for Ruby developers.
8
+ By organizing your project in a conventional manner,
9
+ as promoted by setup.rb, Reap makes it easy to do the
10
10
  following tasks:
11
11
 
12
12
  * Generate RDocs.
13
13
  * Run unit tests.
14
+ * Extract tests for scripts.
14
15
  * Create Ruby Gem packages.
15
16
  * Create standard .tgz, tbz (bzip2) and/or .zip packages.
16
17
  * Publish documents to Rubyforge or other web sites.
@@ -19,7 +20,7 @@ following tasks:
19
20
  * Upload packages (coming soon!).
20
21
 
21
22
  If you have special needs that Reap doesn't accomodate,
22
- new task are farily easy to create. And we are always
23
+ new task are farily easy to create. And I am always
23
24
  happy to hear suggestions.
24
25
 
25
26
  == Installation
@@ -30,7 +31,7 @@ Install the ruby gem as you would any other:
30
31
 
31
32
  <tt>gem install reap</tt>
32
33
 
33
- Reap requires Nano Methods.
34
+ Reap requires Ruby Facets.
34
35
 
35
36
  === Manual Install
36
37
 
@@ -39,7 +40,7 @@ To install manually follow the usual setup.eb steps:
39
40
  1. Download the compressed package.
40
41
  2. Unpack it.
41
42
  3. Change into the unpacked directory.
42
- 4. run <tt>./setup.rb</tt>
43
+ 4. run <tt>sudo ruby setup.rb</tt>
43
44
 
44
45
  You should be good to go.
45
46
 
@@ -48,27 +49,27 @@ You should be good to go.
48
49
  === Using a Reap Task
49
50
 
50
51
  Reap makes it pretty easy to use it's built-in tasks.
51
- Not only will it grab common data from a ProjectInfo
52
- YAML file if available, but it defines convenience methods
53
- to make writing Rakefiles easier. For instance, to create
54
- a "package" target all you generally need in your Rakefile is:
55
-
56
- require 'reap/tasks'
57
-
58
- include ReapTask
59
-
60
- package_task :package
61
-
62
- The reaon this can be so simple, is b/c Reap extrapolates the
63
- information it needs from a comon ProjectInfo file. You will
64
- of course need to create this file in you projects main directory.
65
- A template is provided and a command line tool to copy it to your
66
- current directory. Simply type:
52
+ Largely this is because it grabs common data from a ProjectInfo
53
+ (or Reapfile) as available. Some Reap tasks are
54
+ automatic b/c there are reasonable defaults, others
55
+ _require_ entries in the ProjectInfo file.
56
+
57
+ For instance, to create a "package" target you generally do not need
58
+ an entry in the ProjectInfo file. Reap will package up everything
59
+ in the typical directories and makes compressed versions in the
60
+ common formats. It will then place those in either ../leaf/
61
+ (for those or you using trunk/ branches/ layouts) or pkg/ otherwise.
62
+ The same holds for other tasks. Reap will do it's best to extrapolate
63
+ the needed information from the ProjectInfo file.
64
+
65
+ Of course no matter the level of content, you will of course need to
66
+ create this file in you projects main directory. A template is provided
67
+ and a command line tool to copy it to your current directory. Simply type:
67
68
 
68
69
  > reap template
69
70
 
70
71
  Then edit the ProjectInfo file. The fields are fairly self
71
- explanitiory. Apart from Reap such a file is nice to have on
72
+ explanitiory. Apart from Reap such a file is nice to have just on
72
73
  it's own merits too.
73
74
 
74
75
  === Building a Reap Task
@@ -83,22 +84,20 @@ means using ++||=++)
83
84
 
84
85
  Here's an, oh so simple, example:
85
86
 
86
- class MyOhSoSimpleTask < Reap::Task
87
-
88
- # This creates the convenience method
89
- register 'my_oh_so_simple'
87
+ class OhSoSimple < Reap::Task
90
88
 
91
- default_desc 'this is a custom reap task'
89
+ task_desc 'This is a custom reap task'
92
90
 
93
91
  attr_accessor :message
94
92
 
95
93
  def init
96
94
  @message ||= master['default'] || 'None Found!'
95
+ @another ||= section['another'] || 'Again!'
97
96
  end
98
97
 
99
98
  # run the target task
100
99
  def run
101
- puts @message
100
+ puts @message + "\n" + @another
102
101
  end
103
102
 
104
103
  end
@@ -106,10 +105,12 @@ Here's an, oh so simple, example:
106
105
  The corresponding settings in the ProjectInfo file (master) will then be:
107
106
 
108
107
  default: Default text, if any.
108
+ ohsosimple:
109
+ another: Your other message here.
109
110
 
110
- And to use it in your Rake file:
111
+ And to use it
111
112
 
112
- ReapTask::my_oh_so_simple_task :mytarget
113
+ > reap ohsosimple
113
114
 
114
115
  == Status
115
116
 
data/Rakefile CHANGED
@@ -1,141 +0,0 @@
1
-
2
- require 'reap/tasks'
3
-
4
- # Traditionally, a prebuilt rake task is utilized like this:
5
- #
6
- # Reap::PublishTask.new :mypublisher do |s|
7
- # s.type = 'web'
8
- # s.host = 'rubyforge.org'
9
- # s.username = 'transami'
10
- # s.dir = 'pub/www'
11
- # end
12
- #
13
- # Reap provides a way to use YAML and specilize methods to make
14
- # this even cleaner.
15
- #
16
- # publish_task( :mypublisher ) {"
17
- # type : web
18
- # host : rubyforge.org
19
- # username : transami
20
- # dir : pub/www
21
- # "}
22
- #
23
- # Of course, one can still use a traditional block with the
24
- # special methods.
25
- #
26
- # publish_task :mypublisher do |s|
27
- # s.type = 'web'
28
- # s.host = 'rubyforge.org'
29
- # s.username = 'transami'
30
- # s.dir = 'pub/www'
31
- # end
32
- #
33
- # But there is an additional advantage to the YAML approach. Reap prepends
34
- # the task YAML with the YAML in the ProjectInfo file. This way it is easy
35
- # to reuse master information in indivial tasks. For exmaple you might have
36
- # an# &author anchor defined in ProjectInfo.
37
- #
38
- # publish_task( :mypublisher ) {"
39
- # type : web
40
- # host : rubyforge.org
41
- # username : *author
42
- # dir : pub/www
43
- # "}
44
- #
45
- # This special method notation actually works for some prebuilt rake tasks too.
46
- # But do not expect the YAML to work /w them.
47
- #
48
-
49
- # template_task
50
-
51
- include ReapTask
52
-
53
- info_task( :info )
54
-
55
- publish_task :publish do"
56
- type : web
57
- host : rubyforge.org
58
- username : transami
59
- dir : www
60
- "end
61
-
62
- announce_task :announce do"
63
- to : transfire@gmail.com # ruby-talk@ruby-lang.org
64
- from : *email
65
- domain : reap.rubyforge.org
66
- server : smtp.gmail.com
67
- port : 587
68
- account : *email # transfire@gmail.com
69
- authtype : login # cram_md5, plain
70
- sectype : tls # ~, tls, ssl (not working yet)
71
- file : ANN # which file contains announcement
72
- slogan : REAP THE REWARDS!
73
- links :
74
- - http://reap.rubyforge.org
75
- - http://rake.rubyforge.org
76
- "end
77
-
78
- filemod_task :filemod do"
79
- filemod: 644
80
- dirmod: 755
81
- user: trans
82
- group: users
83
- "end
84
-
85
- test_task :test do"
86
- files:
87
- - 'test/**/tc*.rb'
88
- - 'test/**/test*.rb'
89
- - 'test/**/*test.rb'
90
- options: ~ # not used yet
91
- "end
92
-
93
- rdoc_task :rdoc do"
94
- title: *title
95
- dir: 'pub/www/rdoc'
96
- template: html
97
- options: ['--merge', '--all']
98
- main: README
99
- include:
100
- - 'README*'
101
- - 'LICEN*'
102
- - 'COPY*'
103
- - 'lib/**/*.rb'
104
- - 'bin/**/*.rb'
105
- exclude: []
106
- "end
107
-
108
- package_task :package do"
109
- dir: pkg
110
- include:
111
- - 'lib/**/*'
112
- - 'data/**/*'
113
- - 'ext/**/*'
114
- - 'bin/**/*'
115
- - 'bench/**/*'
116
- - 'test/**/*'
117
- - 'doc/**/*'
118
- - 'rdoc/**/*'
119
- - 'pub/**/*'
120
- - 'www/**/*'
121
- - 'demo/**/*'
122
- - 'samples/**/*'
123
- - 'examples/**/*'
124
- - 'bench/**/*'
125
- - 'setup.rb'
126
- - '[A-Z]*'
127
- exclude:
128
- - InstalledFiles
129
- autorequire: ~
130
- requirements: []
131
- dependencies: *dep #[]
132
- executables: *exe #[]
133
- gem: true
134
- zip: true
135
- gzip: true
136
- bzip2: true
137
- "end
138
-
139
- noop_task :noop do"
140
- message: 'Hello, World!'
141
- "end
data/bin/reap CHANGED
@@ -1,161 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require 'getoptlong'
4
- require 'rbconfig'
5
- require 'reap/tasks'
3
+ require 'reap/bin/reap'
6
4
 
7
- HELP1 = <<-HERE
8
-
9
- reap v#{::Reap::VERSION}
10
-
11
- USAGE: reap [options...] <command> [arguments...]
12
-
13
- COMMANDS:
14
-
15
- help
16
- Displays this help information.
17
-
18
- template
19
- Copies the ProjectInfo template into the current
20
- directory, if it doesn't already exist.
21
-
22
- HERE
23
-
24
- HELP2 = <<-HERE
25
- OPTIONS:
26
-
27
- -v --verbose
28
- Provides extra verbose processing information.
29
-
30
- -u --use <file>
31
- Use the specified configuration file rather than
32
- the default 'ProjectInfo'.
33
-
34
- -p --pretend (NOT YET IMPLEMENTED)
35
- Pretend, just to see what would happen, but don't
36
- actually do anything.
37
-
38
- --version
39
- Display the current version.
40
-
41
- --help
42
- Display this help information.
43
- HERE
44
-
45
-
46
- module Commands
47
- extend self
48
-
49
- DATA_DIR = 'site_ruby/reap'
50
- FILE_NAME = 'ProjectInfo'
51
-
52
- def version
53
- d = Reap::VERSION.to_i
54
- f = Reap::VERSION - d
55
- puts "%02d.%02d" % [ d, f ]
56
- end
57
-
58
- def help
59
- puts HELP1
60
-
61
- #Reap::Task.registry.each do |t|
62
- # puts " #{t.task_name}"
63
- # puts " #{t.task_desc}\n\n"
64
- #end
65
-
66
- puts HELP2
67
- end
68
-
69
- def tasks
70
- puts
71
- #Reap::Task.registry.each do |t|
72
- # puts " #{t.task_name}".ljust(20) + "#{t.task_desc}"
73
- #end
74
- puts
75
- end
76
-
77
- def template( file_name = ProjectInfo )
78
- #dir = File.dirname(File.dirname(__FILE__))
79
- dir = File.join( ::Config::CONFIG['datadir'], DATA_DIR )
80
-
81
- tmpf = File.join( dir, 'template.yaml' )
82
- unless File.file?( tmpf )
83
- puts tmpf
84
- raise "Tempfile is missing."
85
- end
86
-
87
- if File.directory?(filename)
88
- puts "#{filename} a directory. Cannot comply."
89
- return
90
- elsif File.file?(filename)
91
- puts "#{filename} already exists."
92
- return
93
- end
94
- # copy tmpf to Reapfile
95
- FileUtils.cp( tmpf, filename )
96
- puts "#{filename} created. You'll need to fill it out."
97
- end
98
-
99
- end
100
-
101
-
102
- # main
103
-
104
- cmd = nil
105
-
106
- opts = GetoptLong.new(
107
- [ "-v", "--verbose", GetoptLong::NO_ARGUMENT ],
108
- [ "-p", "--pretend", GetoptLong::NO_ARGUMENT ],
109
- [ "-d", "--debug", GetoptLong::NO_ARGUMENT ],
110
- [ "-u", "--use", GetoptLong::REQUIRED_ARGUMENT ],
111
- [ "--version", GetoptLong::NO_ARGUMENT ],
112
- [ "--help", GetoptLong::NO_ARGUMENT ]
113
- )
114
-
115
- opts.each do |o, a|
116
- case o
117
- when '-v'
118
- $VERBOSE = true
119
- when '-p'
120
- $PRETEND = true
121
- when '-u'
122
- config = a
123
- when '-d'
124
- $DEBUG = true
125
- when '--help'
126
- cmd = 'help'
127
- when '--version'
128
- cmd = 'version'
129
- end
130
- end
131
-
132
- cmd = cmd || ARGV[0]
133
- args = ARGV[1..-1]
134
- config = nil
135
-
136
- cmd = cmd.downcase if cmd
137
-
138
- case cmd
139
- when nil,'help'
140
- Commands.help
141
- exit 0
142
- when 'tasks'
143
- Commands.tasks
144
- exit 0
145
- when 'version'
146
- Commands.version
147
- exit 0
148
- when 'template'
149
- Commands.template
150
- end
151
-
152
- # Quick-build and run a task.
153
-
154
- c = cmd.downcase.to_s
155
- if ReapTask.respond_to?( "#{c}_task" )
156
- rt = ReapTask.send("#{c}_task") { ARGV.slice(1..-1).join(' ') }
157
- rt.run
158
- else
159
- puts "Unknown command. Try 'reap help' for assitance."
160
- exit 0
161
- end
5
+ ReapCommand.new.go