reap 6.0.2 → 9.2.0

Sign up to get free protection for your applications and to get access to all the features.
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)