reap 6.0.2 → 9.2.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 (174) hide show
  1. data/CHANGES +6 -0
  2. data/COPYING +666 -395
  3. data/MANIFEST +139 -0
  4. data/NOTES +12 -0
  5. data/README +19 -163
  6. data/bin/reap-announce +7 -0
  7. data/bin/reap-check-load +8 -0
  8. data/bin/reap-check-syntax +7 -0
  9. data/bin/reap-clean +7 -0
  10. data/bin/reap-clobber +7 -0
  11. data/bin/reap-doc +7 -0
  12. data/bin/reap-doc-rdoc +7 -0
  13. data/bin/reap-doc-ri +7 -0
  14. data/bin/reap-init +69 -0
  15. data/bin/reap-inspect +7 -0
  16. data/bin/reap-install +8 -0
  17. data/bin/reap-install-gem +8 -0
  18. data/bin/reap-log +7 -0
  19. data/bin/reap-log-changes +8 -0
  20. data/bin/reap-log-notes +8 -0
  21. data/bin/reap-make +7 -0
  22. data/bin/reap-make-clean +7 -0
  23. data/bin/reap-make-distclean +7 -0
  24. data/bin/reap-make-extconf +7 -0
  25. data/bin/reap-make-static +8 -0
  26. data/bin/reap-package +8 -0
  27. data/bin/reap-package-gem +7 -0
  28. data/bin/reap-package-tgz +7 -0
  29. data/bin/reap-package-zip +7 -0
  30. data/bin/reap-prepare +7 -0
  31. data/bin/reap-publish +7 -0
  32. data/bin/reap-release +7 -0
  33. data/bin/reap-scaffold +8 -0
  34. data/bin/reap-scm-branch +7 -0
  35. data/bin/reap-scm-tag +7 -0
  36. data/bin/reap-spec +7 -0
  37. data/bin/reap-spec-doc +8 -0
  38. data/bin/reap-stamp +7 -0
  39. data/bin/reap-stats +7 -0
  40. data/bin/reap-test +7 -0
  41. data/bin/reap-test-cross +7 -0
  42. data/bin/reap-test-load +9 -0
  43. data/bin/reap-test-solo +7 -0
  44. data/bin/reap-uninstall +7 -0
  45. data/bin/reap-uninstall-gem +7 -0
  46. data/data/reap/base/CHANGES +19 -0
  47. data/data/reap/base/COPYING +674 -0
  48. data/data/reap/base/NOTES +12 -0
  49. data/data/reap/base/README +8 -0
  50. data/data/reap/build/rake/Rakefile +130 -0
  51. data/{forge/reference/installers → data/reap/build/rake}/setup.rb +155 -97
  52. data/data/reap/build/rake-lite/install.rb +79 -0
  53. data/data/reap/build/tasks/task/rdoc +211 -0
  54. data/data/reap/{setup.rb → build/tasks/task/setup} +248 -200
  55. data/data/reap/build/tasks/task/test +38 -0
  56. data/data/reap/init/meta/project.yaml +21 -0
  57. data/demo/README +15 -0
  58. data/demo/lib/foo/foo.rb +7 -0
  59. data/demo/meta/VERSION +1 -0
  60. data/demo/meta/project.yaml +21 -0
  61. data/lib/reap/application.rb +80 -0
  62. data/lib/reap/default.yaml +77 -0
  63. data/lib/reap/extensions/array.rb +50 -0
  64. data/lib/reap/extensions/hash.rb +63 -0
  65. data/lib/reap/extensions/string.rb +31 -0
  66. data/lib/reap/extensions.rb +6 -0
  67. data/lib/reap/iobject.rb +264 -0
  68. data/lib/reap/manager/announce.rb +193 -0
  69. data/lib/reap/manager/check.rb +109 -0
  70. data/lib/reap/manager/clean.rb +58 -0
  71. data/lib/reap/manager/gem.rb +200 -0
  72. data/lib/reap/manager/html.rb +69 -0
  73. data/lib/reap/manager/log.rb +214 -0
  74. data/lib/reap/manager/make.rb +109 -0
  75. data/lib/reap/manager/pack.rb +232 -0
  76. data/lib/reap/manager/publish.rb +72 -0
  77. data/lib/reap/manager/rdoc.rb +194 -0
  78. data/lib/reap/manager/release.rb +78 -0
  79. data/lib/reap/manager/rubyforge.rb +44 -0
  80. data/lib/reap/manager/scaffold.rb +138 -0
  81. data/lib/reap/manager/scm.rb +66 -0
  82. data/lib/reap/manager/site.rb +27 -0
  83. data/lib/reap/manager/spec.rb +94 -0
  84. data/lib/reap/manager/stats.rb +145 -0
  85. data/lib/reap/manager/svn.rb +76 -0
  86. data/lib/reap/manager/test.rb +389 -0
  87. data/lib/reap/manager.rb +74 -0
  88. data/lib/reap/metadata.rb +603 -0
  89. data/lib/reap/project.rb +165 -0
  90. data/lib/reap/settings.rb +67 -0
  91. data/lib/reap/systems/rubyforge.rb +737 -0
  92. data/lib/reap/systems/subversion.rb +333 -0
  93. data/lib/reap/utilities/fileutils.rb +304 -0
  94. data/lib/reap/utilities/netutils.rb +221 -0
  95. data/lib/reap/utilities/setuputils.rb +124 -0
  96. data/lib/reap/utilities/shellutils.rb +175 -0
  97. data/log/Changelog.txt +107 -0
  98. data/log/FIXME.txt +25 -0
  99. data/log/TODO.txt +72 -0
  100. data/meta/VERSION +1 -0
  101. data/meta/description +4 -0
  102. data/meta/project.yaml +20 -0
  103. data/task/man +14 -0
  104. data/task/rdoc +20 -0
  105. data/{data/reap/scaffold/standard/setup.rb → task/setup} +248 -200
  106. metadata +225 -153
  107. data/ProjectInfo +0 -105
  108. data/bin/reap +0 -5
  109. data/bin/rubytest +0 -5
  110. data/data/reap/install.rb +0 -62
  111. data/data/reap/scaffold/standard/COPYING +0 -403
  112. data/data/reap/scaffold/standard/ChangeLog +0 -0
  113. data/data/reap/scaffold/standard/INSTALL +0 -14
  114. data/data/reap/scaffold/standard/ProjectInfo +0 -77
  115. data/data/reap/scaffold/standard/README +0 -3
  116. data/data/reap/scaffold/standard/Rakefile +0 -10
  117. data/data/reap/scaffold/standard/TODO +0 -0
  118. data/data/reap/scaffold/subversion/trunk/COPYING +0 -403
  119. data/data/reap/scaffold/subversion/trunk/ChangeLog +0 -0
  120. data/data/reap/scaffold/subversion/trunk/INSTALL +0 -14
  121. data/data/reap/scaffold/subversion/trunk/ProjectInfo +0 -76
  122. data/data/reap/scaffold/subversion/trunk/README +0 -3
  123. data/data/reap/scaffold/subversion/trunk/Rakefile +0 -10
  124. data/data/reap/scaffold/subversion/trunk/TODO +0 -0
  125. data/data/reap/scaffold/subversion/trunk/setup.rb +0 -1568
  126. data/forge/ProjectInfo +0 -38
  127. data/forge/ProjectInfo.rb +0 -76
  128. data/forge/TODO +0 -10
  129. data/forge/installer.rb +0 -250
  130. data/forge/reference/Rakefile +0 -124
  131. data/forge/reference/Rakefile.htm +0 -69
  132. data/forge/reference/aRakefile +0 -60
  133. data/forge/reference/compositepublisher.rb +0 -24
  134. data/forge/reference/ftptools.rb +0 -139
  135. data/forge/reference/installers/package.rb +0 -629
  136. data/forge/reference/license-each.rb +0 -85
  137. data/forge/reference/publisher.rb +0 -75
  138. data/forge/reference/rubyforge.rb +0 -247
  139. data/forge/reference/rubyforgepublisher.rb +0 -18
  140. data/forge/reference/sshpublisher.rb +0 -47
  141. data/forge/reference/suby-cvs.rb +0 -46
  142. data/forge/scaffold.rb +0 -126
  143. data/forge/unit_runner/README +0 -6
  144. data/forge/unit_runner/commentrunner.rb +0 -62
  145. data/forge/unit_runner/cunit.rb +0 -17
  146. data/forge/unit_runner/forkedrunner.rb +0 -91
  147. data/forge/unit_runner/sample.rb +0 -16
  148. data/lib/reap/bin/reap.rb +0 -230
  149. data/lib/reap/bin/rubytest.rb +0 -53
  150. data/lib/reap/class/announce.rb +0 -220
  151. data/lib/reap/class/doap.rb +0 -80
  152. data/lib/reap/class/extest.rb +0 -146
  153. data/lib/reap/class/filer.rb +0 -62
  154. data/lib/reap/class/manifest.rb +0 -68
  155. data/lib/reap/class/package.rb +0 -576
  156. data/lib/reap/class/publish.rb +0 -152
  157. data/lib/reap/class/rdoc.rb +0 -123
  158. data/lib/reap/class/test.rb +0 -264
  159. data/lib/reap/projectinfo.rb +0 -208
  160. data/lib/reap/rake.rb +0 -42
  161. data/lib/reap/reap.rb +0 -89
  162. data/lib/reap/tasks.rb +0 -756
  163. data/lib/reap/taskutils.rb +0 -122
  164. data/note/LATEST +0 -44
  165. data/note/doap.xml +0 -28
  166. data/note/history/Rakefile-0.1 +0 -308
  167. data/sample/ProjectInfo +0 -96
  168. data/sample/Rakefile +0 -9
  169. data/sample/Reapfile +0 -11
  170. data/sample/task/demo.rb +0 -15
  171. data/setup.rb +0 -1568
  172. data/web/ProjectInfo.html +0 -75
  173. data/web/images/grape.jpg +0 -0
  174. data/web/index.html +0 -312
@@ -0,0 +1,221 @@
1
+ # = TITLE:
2
+ #
3
+ # Networking Utility Functions
4
+ #
5
+ # = COPYING:
6
+ #
7
+ # Copyright (c) 2007,2008 Tiger Ops
8
+ #
9
+ # This file is part of the Reap program.
10
+ #
11
+ # Reap is free software: you can redistribute it and/or modify
12
+ # it under the terms of the GNU General Public License as published by
13
+ # the Free Software Foundation, either version 3 of the License, or
14
+ # (at your option) any later version.
15
+ #
16
+ # Reap is distributed in the hope that it will be useful,
17
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
+ # GNU General Public License for more details.
20
+ #
21
+ # You should have received a copy of the GNU General Public License
22
+ # along with Reap. If not, see <http://www.gnu.org/licenses/>.
23
+
24
+ require 'net/smtp'
25
+ require 'timeout'
26
+ begin
27
+ require 'openssl'
28
+ rescue LoadError
29
+ end
30
+
31
+ #
32
+ module Reap
33
+ module Utilities
34
+
35
+ module NetUtils
36
+
37
+ # Email function to easily send out an email.
38
+ #
39
+ # Settings:
40
+ #
41
+ # subject Subject of email message.
42
+ # from Message FROM address [email].
43
+ # to Email address to send announcemnt.
44
+ # server Email server to route message.
45
+ # port Email server's port.
46
+ # port_secure Email server's port.
47
+ # domain Email server's domain name.
48
+ # account Email account name if needed.
49
+ # password Password for login..
50
+ # login Login type: plain, cram_md5 or login [plain].
51
+ # secure Uses TLS security, true or false? [false]
52
+ # message Mesage to send -or-
53
+ # file File that contains message.
54
+
55
+ def email(message, settings)
56
+ settings ||= {}
57
+ settings.rekey
58
+
59
+ server = settings[:server]
60
+ account = settings[:account] || ENV['EMAIL_ACCOUNT']
61
+ passwd = settings[:password] || ENV['EMAIL_PASSWORD']
62
+ login = settings[:login]
63
+ subject = settings[:subject]
64
+ mail_to = settings[:to] || settings[:mail_to]
65
+ mail_from = settings[:from] || settings[:mail_from]
66
+ secure = settings[:secure]
67
+ domain = settings[:domain] || server
68
+
69
+ port = (settings[:port_secure] || 465) if secure
70
+ port = (settings[:port] || 25) unless secure
71
+
72
+ account ||= mail_from
73
+ login ||= :plain
74
+
75
+ login = login.to_sym
76
+
77
+ #mail_to = nil if mail_to.empty?
78
+
79
+ raise ArgumentError, "missing email field -- server" unless server
80
+ raise ArgumentError, "missing email field -- account" unless account
81
+ raise ArgumentError, "missing email field -- subject" unless subject
82
+ raise ArgumentError, "missing email field -- to" unless mail_to
83
+ raise ArgumentError, "missing email field -- from" unless mail_from
84
+
85
+ passwd ||= password("#{account} password:")
86
+
87
+ mail_to = [mail_to].flatten.compact
88
+
89
+ msg = ""
90
+ msg << "From: #{mail_from}\n"
91
+ msg << "To: #{mail_to.join(';')}\n"
92
+ msg << "Subject: #{subject}\n"
93
+ msg << ""
94
+ msg << message
95
+
96
+ if secure
97
+ Net::SMTP.send(:include, Net::SMTP::TLS)
98
+ Net::SMTP.enable_tls #if secure #if Net::SMTP.respond_to?(:enable_tls) and secure
99
+ end
100
+
101
+ begin
102
+ Net::SMTP.start(server, port, domain, account, passwd, login) do |smtp|
103
+ smtp.send_message(msg, mail_from, mail_to)
104
+ end
105
+ puts "Email sent successfully to #{mail_to.join(';')}."
106
+ return true
107
+ rescue => e
108
+ if trace?
109
+ raise e
110
+ else
111
+ abort "Email delivery failed."
112
+ end
113
+ end
114
+ end
115
+
116
+ end
117
+
118
+ end
119
+ end
120
+
121
+
122
+ module Net #:nodoc: all
123
+ class SMTP
124
+ module TLS
125
+
126
+ def self.included(base)
127
+ base.extend(ClassMethods)
128
+
129
+ @usetls = base.use_tls?
130
+ end
131
+
132
+ module ClassMethods
133
+ def self.extended(base)
134
+ base.disable_tls
135
+ end
136
+
137
+ def enable_tls()
138
+ @@usetls = true
139
+ end
140
+
141
+ def disable_tls()
142
+ @@usetls = false
143
+ end
144
+
145
+ def use_tls?()
146
+ @@usetls
147
+ end
148
+ end
149
+
150
+ def use_tls?()
151
+ @usetls
152
+ end
153
+
154
+ def enable_tls()
155
+ @usetls = true
156
+ end
157
+
158
+ def disable_tls()
159
+ @usetls = false
160
+ end
161
+
162
+ def use_tls?()
163
+ @usetls
164
+ end
165
+
166
+ private
167
+ def do_start(helodomain, user, secret, authtype)
168
+ raise IOError('SMTP session already started') if @started
169
+ check_auth_args user, secret, authtype if user or secret
170
+
171
+ sock = timeout(@open_timeout) {TCPSocket.open(@address, @port) }
172
+ @socket = Net::InternetMessageIO.new(sock)
173
+ @socket.read_timeout = @read_timeout
174
+ @socket.debug_output = STDERR
175
+
176
+ check_response(critical {recv_response() } )
177
+ do_helo(helodomain)
178
+
179
+ if @@usetls
180
+ raise 'openssl is not installed' unless defined?(OpenSSL)
181
+ ssl = OpenSSL::SSL::SSLSocket.new(sock)
182
+ starttls
183
+ ssl.sync_close = true
184
+ ssl.connect
185
+
186
+ @socket = Net::InternetMessageIO.new(ssl)
187
+ @socket.read_timeout = @read_timeout
188
+ @socket.debug_output = STDERR
189
+ do_helo(helodomain)
190
+ end
191
+
192
+ authenticate user, secret, authtype if user
193
+ @started = true
194
+ ensure
195
+ @socket.close if not @started and @socket and not @socket.closed?
196
+ end
197
+
198
+ def do_helo(helodomain)
199
+ begin
200
+ if @esmtp
201
+ ehlo helodomain
202
+ else
203
+ helo helodomain
204
+ end
205
+ rescue Net::ProtocolError
206
+ if @esmtp
207
+ @esmtp = false
208
+ @error_occured = false
209
+ retry
210
+ end
211
+ raise
212
+ end
213
+ end
214
+
215
+ def starttls
216
+ getok('STARTTLS')
217
+ end
218
+ end
219
+
220
+ end
221
+ end
@@ -0,0 +1,124 @@
1
+ # = TITLE:
2
+ #
3
+ # Setup DSL
4
+ #
5
+ # = SYNOPSIS:
6
+ #
7
+ # Mixen used to setup a package, eg. a manual install.
8
+ #
9
+ # = COPYING:
10
+ #
11
+ # Copyright (c) 2007,2008 Tiger Ops
12
+ #
13
+ # This file is part of the Reap program.
14
+ #
15
+ # Reap is free software: you can redistribute it and/or modify
16
+ # it under the terms of the GNU General Public License as published by
17
+ # the Free Software Foundation, either version 3 of the License, or
18
+ # (at your option) any later version.
19
+ #
20
+ # Reap is distributed in the hope that it will be useful,
21
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
22
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23
+ # GNU General Public License for more details.
24
+ #
25
+ # You should have received a copy of the GNU General Public License
26
+ # along with Reap. If not, see <http://www.gnu.org/licenses/>.
27
+
28
+ #
29
+ module Reap
30
+ module Utilities
31
+
32
+ # = Setup DSL
33
+ #
34
+ # Setup utilities provides a convenient way to install
35
+ # a ruby project via setup.rb.
36
+
37
+ module SetupUtils
38
+
39
+ # Installation to a prefix destination using setup.rb.
40
+ # Some package types may need this.
41
+
42
+ def prefix_install(prefix)
43
+ mkdir_p(prefix)
44
+
45
+ unless setup_rb
46
+ raise "Setup.rb is missing. Forced to abort."
47
+ end
48
+ # mock install
49
+ cmd = ''
50
+ cmd << 'ruby setup.rb '
51
+ cmd << '-q ' unless project.verbose?
52
+ cmd << 'config --installdirs=std ; '
53
+ cmd << 'ruby setup.rb '
54
+ cmd << '-q ' unless project.verbose?
55
+ cmd << "install --prefix=#{prefix}"
56
+ sh cmd
57
+ end
58
+
59
+ # If setup.rb is not found add a copy to the project.
60
+ # FIXME
61
+
62
+ def setup_rb
63
+ unless File.exist?('setup.rb')
64
+ f = File.join(libdir,'vendor','setup.rb')
65
+ if File.exist?(f)
66
+ cp(f,'.')
67
+ else
68
+ raise "setup.rb is not avaialble"
69
+ end
70
+ end
71
+ true
72
+ end
73
+
74
+ # # Setup and install. This builds and installs a project
75
+ # # using setup.rb or install.rb. If neither exist setup.rb
76
+ # # will be created for the purpose.
77
+ # #
78
+ # # options Command line options to add to shell command.
79
+ # # script Install script, default is install.rb or setup.rb
80
+ # #--
81
+ # # source Location of source. (Defaults to current directory)
82
+ # #++
83
+ #
84
+ # def setup(keys={})
85
+ #
86
+ # options = keys['options']
87
+ # script = keys['script']
88
+ # #source = keys.source || Dir.pwd
89
+ #
90
+ # options = [options].flatten.compact
91
+ #
92
+ # if script
93
+ # exe = script + ' '
94
+ # exe << options.join(' ')
95
+ # elsif File.exist?('install.rb')
96
+ # exe = 'ruby install.rb '
97
+ # exe << options.join(' ')
98
+ # elsif File.exist?('setup.rb') or setup_rb
99
+ # exe = 'ruby setup.rb '
100
+ # exe << '-q ' unless verbose?
101
+ # exe << options.join(' ')
102
+ # exe << ' all'
103
+ # else
104
+ # puts "Script setup.rb or install.rb is missing."
105
+ # return nil
106
+ # end
107
+ #
108
+ # # SHELLS OUT!
109
+ #
110
+ # #Dir.chdir(source) do
111
+ # #begin
112
+ # success = sh(exe)
113
+ # puts "Installation complete!" if success
114
+ # #rescue Errno::EACCES
115
+ # # puts "Permission denied"
116
+ # # exit -1
117
+ # #end
118
+ # #end
119
+ # end
120
+
121
+ end
122
+
123
+ end
124
+ end
@@ -0,0 +1,175 @@
1
+ # = TITLE:
2
+ #
3
+ # ShellUtils
4
+ #
5
+ # = COPYING:
6
+ #
7
+ # Copyright (c) 2007,2008 Tiger Ops
8
+ #
9
+ # This file is part of the Reap program.
10
+ #
11
+ # Reap is free software: you can redistribute it and/or modify
12
+ # it under the terms of the GNU General Public License as published by
13
+ # the Free Software Foundation, either version 3 of the License, or
14
+ # (at your option) any later version.
15
+ #
16
+ # Reap is distributed in the hope that it will be useful,
17
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
+ # GNU General Public License for more details.
20
+ #
21
+ # You should have received a copy of the GNU General Public License
22
+ # along with Reap. If not, see <http://www.gnu.org/licenses/>.
23
+
24
+ require 'reap/extensions'
25
+
26
+ module Reap
27
+ module Utilities
28
+
29
+ module OptionUtils
30
+ attr_accessor :dryrun
31
+ attr_accessor :trace
32
+ attr_accessor :force
33
+ attr_accessor :verbose
34
+
35
+ def dryrun? ; @dryrun ; end
36
+ def trace? ; @trace ; end
37
+ def force? ; @force ; end
38
+ def verbose? ; @verbose ; end
39
+ end
40
+
41
+ #
42
+
43
+ module ShellUtils
44
+ include OptionUtils
45
+
46
+ # Internal status report.
47
+ # Only output if dryrun or trace mode.
48
+
49
+ def status(message)
50
+ puts message if dryrun? or trace?
51
+ end
52
+
53
+ # Shell runner.
54
+
55
+ def sh(cmd)
56
+ if dryrun?
57
+ puts cmd
58
+ true
59
+ else
60
+ puts "--> system call: #{cmd}" if trace?
61
+ system(cmd)
62
+ end
63
+ end
64
+
65
+ # Convenient method to get simple console reply.
66
+
67
+ def ask(question, answers=nil)
68
+ print "#{question}"
69
+ print " [#{answers}] " if answers
70
+ until inp = $stdin.gets ; sleep 1 ; end
71
+ inp.strip
72
+ end
73
+
74
+ # Ask for a password. (FIXME: only for unix so far)
75
+
76
+ def password(prompt=nil)
77
+ msg ||= "Enter Password: "
78
+ inp = ''
79
+
80
+ print "#{prompt} "
81
+
82
+ begin
83
+ #system "stty -echo"
84
+ #inp = gets.chomp
85
+ until inp = $stdin.gets
86
+ sleep 1
87
+ end
88
+ ensure
89
+ #system "stty echo"
90
+ end
91
+
92
+ return inp.chomp
93
+ end
94
+
95
+ # # No fuss access to ARGV. This shows up as #commandline in the reap api.
96
+ # #
97
+ # # Ratch uses '=' for parameterized flags b/c this make parsing stupid simple
98
+ # # and that's a good thing!!! However you can use value! if need be.
99
+ #
100
+ # def commandline
101
+ # @commandline ||= ArgVector.new(ARGV)
102
+ # end
103
+ #
104
+ # alias_method :argument_vector, :commandline
105
+ #
106
+ # # Duplicate of ARGV.
107
+ #
108
+ # def argv
109
+ # @argv ||= ARGV.dup
110
+ # end
111
+ #
112
+ # # Convert command line argv to args.
113
+ # #
114
+ # # TODO Is this implmented as expected?
115
+ #
116
+ # def command_parameters
117
+ # argv.to_params
118
+ # end
119
+
120
+ # # Debug mode.
121
+ #
122
+ # def debug?
123
+ # @debug ||= %w{--debug}.any?{|a| argv.delete(a)}
124
+ # end
125
+ #
126
+ # #
127
+ #
128
+ # def verbose?
129
+ # @verbose ||= %w{--verbose}.any?{|a| argv.delete(a)}
130
+ # end
131
+ #
132
+ # #
133
+ #
134
+ # def verbose!
135
+ # @verbose = true
136
+ # end
137
+ #
138
+ # #
139
+ #
140
+ # def trace?
141
+ # @trace ||= %w{--trace}.any?{|a| argv.delete(a)}
142
+ # end
143
+ #
144
+ # #
145
+ #
146
+ # def trace!
147
+ # @trace = true
148
+ # end
149
+ #
150
+ # #
151
+ #
152
+ # def noharm?
153
+ # @noharm ||= %w{--dryrun --dry-run --noharm}.any?{|a| argv.delete(a)}
154
+ # end
155
+ # alias_method :dryrun?, :noharm? ; module_function :dryrun?
156
+ #
157
+ # #
158
+ #
159
+ # def noharm!
160
+ # @noharm = true
161
+ # end
162
+ # alias_method :dryrun!, :noharm! ; module_function :dryrun!
163
+ #
164
+ # # Force mode.
165
+ #
166
+ # def force?
167
+ # @force ||= %w{--force}.any?{|a| argv.delete(a)}
168
+ # end
169
+ #
170
+ # def force! ; @force = true ; end
171
+
172
+ end
173
+
174
+ end
175
+ end
data/log/Changelog.txt ADDED
@@ -0,0 +1,107 @@
1
+ = Subversion Changelog
2
+
3
+ == 2008-02-06 transami
4
+
5
+ * Added logs. (106)
6
+ * Added some work/scrap for old extest script. (105)
7
+ * Added reap-init which is used to create .reap and meta/project files. (104)
8
+ * Added some scaffolding files. (103)
9
+ * Move where load error is triggered if no .reap file found. (102)
10
+ * Only remove old stage is alrady exists. (101)
11
+ * Added default title attribute for rdoc. (100)
12
+ * Announce now uses README as tempalte by default and subs "please see" clauses for files. (99)
13
+ * Fixed scaffold.rb to be at least amrginally useful now. (98)
14
+ * Fixed dryrun? mode for generating changelog xsl. (97)
15
+ * Improved release task's ability to select the correct packages. (96)
16
+ * reap-scaffold is used to fully scaffold a project AFTER .reap and project files are in place. (95)
17
+ * Added data/reap/init for initial .reap and meta/project files. (94)
18
+ * Added .roll file. (93)
19
+ * Minor fix so that if .reap is an empty file configuration will be {}. (92)
20
+ * Loadpath and libpath are no longer the same project attribute.
21
+ * Rolls uses libpath to point directory to the directory that contains the library files. (eg. lib/foo)
22
+ * Loadpath is the traditional location that is usually a directory about the libpath. (eg. lib) (91)
23
+ * Updated manager.rb to reflect scaffold rather then prefab. (90)
24
+ * out_of_date? return true if no comparison files are found. (89)
25
+ * Moved reap-prefab binary to reap-scaffold. (88)
26
+ * Renamed prefab to scaffold. (87)
27
+ * Added ability for rdoc to generate for different target groups. (86)
28
+ * Use shell out to testrb for normal unit testing. (85)
29
+ * Update prefab.rb. (84)
30
+
31
+ == 2008-02-05 transami
32
+
33
+ * Removed meta/config.yaml, since .reap now takes its place. (83)
34
+ * Added work/outdated. (82)
35
+ * Finish organization of work directory. (81)
36
+ * Additional organization of work directory. (80)
37
+ * Orgainze work directory a bit. (79)
38
+
39
+ == 2008-02-04 transami
40
+
41
+ * VERSION 9.1.2 (78)
42
+ * Improved changelog production (cont.) (77)
43
+ * Fixed a reference to the package directory (pkg/). (76)
44
+ * Reworked change log a bit, simplifying configuration. (75)
45
+ * Package direcotory is now fixed as pkg/.
46
+ * Reap offers a lot optional configuration, but project directories are (mostly) better as standards.
47
+ * If there proves a real need for an excpetion to this, we can revisit it later.
48
+ * The #package_directory field really did not belong in the Project class anyway. (74)
49
+ * Added work/future direcotory to diff between old code being help for reference. (73)
50
+ * SVN text-based changelog is not built from the XML (using REXML). (72)
51
+ * Removed old crufy code from manager.rb. (71)
52
+ * Project#package_name no longer supports template argument. (70)
53
+ * Improved DEFAULT for a number of tools. (69)
54
+ * Clean no longer confirms file removeals. (68)
55
+ * Fixed misspelling of rubyopt in spec.rb. (67)
56
+ * Improved DEFAULT settings for rdoc.rb. (66)
57
+ * Make will create the Makefile if needed for all make commands. (65)
58
+ * Limit check tools to ruby code. (Maybe add C support in future). (64)
59
+ * Added ARGV to shell out of install/setup command. (63)
60
+
61
+ == 2008-02-01 transami
62
+
63
+ * VERSION 9.1.0 (62)
64
+ * Stamp now puts parenthesis around date. (61)
65
+ * Fixed release and made package direcorty setting part of Project info. (60)
66
+ * Fixed reubyforge release so changelog and notelog were used. (59)
67
+ * Created NOTES for release notes. (58)
68
+ * Moved rubyforge.rb to systems directory. (57)
69
+ * Added manifest generation when packaging. (56)
70
+ * Continued improvments across the board. (55)
71
+ * Move scrap utils libs to new work/lib directory. (54)
72
+ * Added work/lib/reap/. (53)
73
+ * Added work/lib directory. (52)
74
+ * Added subversion system. (51)
75
+ * Moved ads to ads directory. (50)
76
+
77
+ == 2008-01-31 transami
78
+
79
+ * Moved MANIFEST and VERSION to toplevel. (49)
80
+ * Adjusted project file. (48)
81
+ * Added premature exits for task that arn't quite ready yet. (47)
82
+ * Moved setup.rb and install.rb to subdirectories. (46)
83
+ * Fleshed out skeleton directories in data/. (45)
84
+ * Require notes.rb changed to log.rb. (44)
85
+ * Renamed notes.rb to log.rb. (43)
86
+ * Update package and rdoc tasks to access configuration better. (42)
87
+ * Added spec tasks. (41)
88
+ * Update notes.rb for log tasks. Will rename. (40)
89
+ * Clean up tasks. (39)
90
+ * Update VERSION to 9.0.0 beta. (38)
91
+ * Added remaining binaries. (37)
92
+ * Okay, final naming organization of binaries. (36)
93
+ * Added doc/ads directory. (35)
94
+ * Fixed misspelling of syntax. (34)
95
+ * Moved reap-load and reap-sytax to reap-check-load and reap-check-syntax. (33)
96
+ * Renamed reap-gem to reap-install-gem (32)
97
+ * Cleaned make.rb code a bit. (31)
98
+ * Harmonized how options are merged. (30)
99
+
100
+ == 2008-01-29 transami
101
+
102
+ * Added make commands. (29)
103
+
104
+ == 2008-01-27 transami
105
+
106
+ * initial import (28)
107
+
data/log/FIXME.txt ADDED
@@ -0,0 +1,25 @@
1
+
2
+ = FIXME
3
+
4
+ file://lib/reap/manager/check.rb
5
+ * FIXME: This isn't routing output to dev/null as expected. (60)
6
+
7
+ file://lib/reap/manager/gem.rb
8
+ * FIXME (156)
9
+
10
+ file://lib/reap/manager/log.rb
11
+ * FIXME Should each label of note be written to it's own file? (22)
12
+
13
+ file://lib/reap/manager/pack.rb
14
+ * FIXME: will type, name and version always be right? (155)
15
+ * FIXME: will type, name and version always be right? (170)
16
+ * FIXME: Not yet ready for use. (129)
17
+
18
+ file://lib/reap/manager/prefab.rb
19
+ * FIXME: RubyGems has a new way to do this. Use that instead and fix Rolls to use it too. (97)
20
+ * FIXME: Make safer (currently this is not available) (66)
21
+ * FIXME: This doesn't yet work b/c reap doesn't work unless
22
+ a project file is already in place. (28)
23
+
24
+ file://lib/reap/utilities/setuputils.rb
25
+ * FIXME (60)