sprout 1.0.35.pre → 1.1.2.pre

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sprout might be problematic. Click here for more details.

Files changed (234) hide show
  1. data/Gemfile +1 -1
  2. data/Gemfile.lock +0 -2
  3. data/README.textile +1 -1
  4. data/VERSION +1 -1
  5. data/lib/sprout/concern.rb +5 -7
  6. data/lib/sprout/daemon.rb +183 -143
  7. data/lib/sprout/executable/base.rb +564 -0
  8. data/lib/sprout/executable.rb +1 -550
  9. data/lib/sprout/generator/base.rb +2 -3
  10. data/lib/sprout/generator.rb +2 -1
  11. data/lib/sprout/generators/ruby/templates/ruby_base.rb +1 -2
  12. data/lib/sprout/library.rb +3 -3
  13. data/lib/sprout/output_buffer.rb +35 -0
  14. data/lib/sprout/process_runner.rb +68 -17
  15. data/lib/sprout/progress_bar.rb +5 -5
  16. data/lib/sprout/remote_file_target.rb +1 -1
  17. data/lib/sprout/system/base_system.rb +3 -3
  18. data/lib/sprout/system/unix_system.rb +1 -1
  19. data/lib/sprout/{test/sprout_test_case.rb → test_helper.rb} +214 -14
  20. data/lib/sprout/version.rb +1 -1
  21. data/lib/sprout.rb +133 -2
  22. data/rakefile.rb +2 -0
  23. data/test/fixtures/examples/echo_inputs.rb +1 -2
  24. data/test/fixtures/executable/fdb.rb +7 -9
  25. data/test/fixtures/executable/flex3sdk_gem/fdb +49 -18
  26. data/test/fixtures/executable/mxmlc.rb +1 -2
  27. data/test/fixtures/executable/subclass/executable_subclass.rb +0 -1
  28. data/test/fixtures/executable/subclass/executable_superclass.rb +1 -2
  29. data/test/fixtures/specification/flex4sdk.rb +35 -24
  30. data/test/unit/archive_unpacker_test.rb +1 -1
  31. data/test/unit/boolean_param_test.rb +1 -1
  32. data/test/unit/daemon_test.rb +35 -3
  33. data/test/unit/executable_option_parser_test.rb +2 -3
  34. data/test/unit/executable_param_test.rb +1 -1
  35. data/test/unit/executable_test.rb +8 -15
  36. data/test/unit/fake_other_executable.rb +1 -2
  37. data/test/unit/file_param_test.rb +1 -1
  38. data/test/unit/file_target_test.rb +1 -1
  39. data/test/unit/files_param_test.rb +1 -1
  40. data/test/unit/generator_generator_test.rb +1 -1
  41. data/test/unit/generator_test.rb +1 -1
  42. data/test/unit/library_generator_test.rb +1 -1
  43. data/test/unit/library_test.rb +1 -1
  44. data/test/unit/osx_system_test.rb +1 -1
  45. data/test/unit/path_param_test.rb +1 -1
  46. data/test/unit/paths_param_test.rb +1 -1
  47. data/test/unit/platform_test.rb +1 -1
  48. data/test/unit/process_runner_test.rb +1 -1
  49. data/test/unit/rdoc_parser_test.rb +1 -1
  50. data/test/unit/remote_file_loader_test.rb +1 -1
  51. data/test/unit/remote_file_target_test.rb +1 -1
  52. data/test/unit/ruby_feature_test.rb +1 -1
  53. data/test/unit/ruby_generator_test.rb +1 -1
  54. data/test/unit/specification_test.rb +8 -1
  55. data/test/unit/sprout_test.rb +2 -2
  56. data/test/unit/string_param_test.rb +1 -1
  57. data/test/unit/string_test.rb +1 -1
  58. data/test/unit/strings_param_test.rb +1 -1
  59. data/test/unit/test_helper.rb +33 -1
  60. data/test/unit/tool_generator_test.rb +1 -1
  61. data/test/unit/unix_system_test.rb +1 -1
  62. data/test/unit/user_test.rb +1 -1
  63. data/test/unit/vista_system_test.rb +1 -1
  64. data/test/unit/win_nix_system_test.rb +1 -1
  65. data/test/unit/win_system_test.rb +1 -1
  66. data/test-stderr.log +1 -0
  67. data/test-stdout.log +237 -0
  68. metadata +15 -190
  69. data/doc/Dir.html +0 -288
  70. data/doc/Rake/Task.html +0 -184
  71. data/doc/Sprout/ArchiveUnpacker.html +0 -1246
  72. data/doc/Sprout/Base/ClassMethods.html +0 -434
  73. data/doc/Sprout/Base.html +0 -126
  74. data/doc/Sprout/Concern.html +0 -353
  75. data/doc/Sprout/Daemon/ClassMethods.html +0 -244
  76. data/doc/Sprout/Daemon/InstanceMethods.html +0 -601
  77. data/doc/Sprout/Daemon.html +0 -166
  78. data/doc/Sprout/Errors/ArchiveUnpackerError.html +0 -125
  79. data/doc/Sprout/Errors/DestinationExistsError.html +0 -133
  80. data/doc/Sprout/Errors/DuplicateMemberError.html +0 -132
  81. data/doc/Sprout/Errors/ExecutableError.html +0 -125
  82. data/doc/Sprout/Errors/ExecutableRegistrationError.html +0 -132
  83. data/doc/Sprout/Errors/ExecutionError.html +0 -121
  84. data/doc/Sprout/Errors/GeneratorError.html +0 -125
  85. data/doc/Sprout/Errors/InvalidArgumentError.html +0 -132
  86. data/doc/Sprout/Errors/LoadError.html +0 -121
  87. data/doc/Sprout/Errors/MissingArgumentError.html +0 -132
  88. data/doc/Sprout/Errors/MissingExecutableError.html +0 -132
  89. data/doc/Sprout/Errors/MissingGeneratorError.html +0 -132
  90. data/doc/Sprout/Errors/MissingTemplateError.html +0 -132
  91. data/doc/Sprout/Errors/ProcessRunnerError.html +0 -121
  92. data/doc/Sprout/Errors/RemoteFileLoaderError.html +0 -110
  93. data/doc/Sprout/Errors/SproutError.html +0 -114
  94. data/doc/Sprout/Errors/UnknownArchiveType.html +0 -122
  95. data/doc/Sprout/Errors/UsageError.html +0 -121
  96. data/doc/Sprout/Errors/ValidationError.html +0 -121
  97. data/doc/Sprout/Errors/VersionRequirementNotMetError.html +0 -121
  98. data/doc/Sprout/Errors.html +0 -101
  99. data/doc/Sprout/Executable/Boolean.html +0 -483
  100. data/doc/Sprout/Executable/ClassMethods.html +0 -417
  101. data/doc/Sprout/Executable/CollectionParam.html +0 -483
  102. data/doc/Sprout/Executable/FileParam.html +0 -484
  103. data/doc/Sprout/Executable/Files.html +0 -292
  104. data/doc/Sprout/Executable/InstanceMethods.html +0 -2006
  105. data/doc/Sprout/Executable/Number.html +0 -141
  106. data/doc/Sprout/Executable/Param.html +0 -2818
  107. data/doc/Sprout/Executable/ParameterFactory.html +0 -232
  108. data/doc/Sprout/Executable/Path.html +0 -223
  109. data/doc/Sprout/Executable/Paths.html +0 -253
  110. data/doc/Sprout/Executable/StringParam.html +0 -213
  111. data/doc/Sprout/Executable/Strings.html +0 -167
  112. data/doc/Sprout/Executable/Url.html +0 -160
  113. data/doc/Sprout/Executable/Urls.html +0 -170
  114. data/doc/Sprout/Executable.html +0 -173
  115. data/doc/Sprout/FileTarget.html +0 -1109
  116. data/doc/Sprout/Generator/Base.html +0 -1626
  117. data/doc/Sprout/Generator/Command.html +0 -690
  118. data/doc/Sprout/Generator/DirectoryManifest.html +0 -476
  119. data/doc/Sprout/Generator/FileManifest.html +0 -572
  120. data/doc/Sprout/Generator/Manifest.html +0 -377
  121. data/doc/Sprout/Generator/TemplateManifest.html +0 -196
  122. data/doc/Sprout/Generator.html +0 -689
  123. data/doc/Sprout/GeneratorGenerator.html +0 -1018
  124. data/doc/Sprout/Library.html +0 -1141
  125. data/doc/Sprout/LibraryGenerator.html +0 -309
  126. data/doc/Sprout/Log.html +0 -496
  127. data/doc/Sprout/MXMLC.html +0 -6373
  128. data/doc/Sprout/Platform.html +0 -714
  129. data/doc/Sprout/ProcessRunner.html +0 -1352
  130. data/doc/Sprout/ProgressBar.html +0 -376
  131. data/doc/Sprout/ProgressBarImpl.html +0 -2119
  132. data/doc/Sprout/ProgressBarManager.html +0 -434
  133. data/doc/Sprout/ProgressBarOutputStream.html +0 -416
  134. data/doc/Sprout/RDocParser.html +0 -211
  135. data/doc/Sprout/RemoteFileLoader.html +0 -172
  136. data/doc/Sprout/RemoteFileTarget.html +0 -679
  137. data/doc/Sprout/ReversedProgressBar.html +0 -194
  138. data/doc/Sprout/RubyFeature/ClassMethods.html +0 -1065
  139. data/doc/Sprout/RubyFeature.html +0 -155
  140. data/doc/Sprout/RubyGenerator.html +0 -764
  141. data/doc/Sprout/Specification.html +0 -767
  142. data/doc/Sprout/System/BaseSystem.html +0 -1455
  143. data/doc/Sprout/System/JavaSystem.html +0 -122
  144. data/doc/Sprout/System/OSXSystem.html +0 -335
  145. data/doc/Sprout/System/ThreadMock.html +0 -193
  146. data/doc/Sprout/System/UnixSystem.html +0 -584
  147. data/doc/Sprout/System/VistaSystem.html +0 -251
  148. data/doc/Sprout/System/WinNixSystem.html +0 -325
  149. data/doc/Sprout/System/WinSystem.html +0 -571
  150. data/doc/Sprout/System.html +0 -191
  151. data/doc/Sprout/ToolGenerator.html +0 -931
  152. data/doc/Sprout/VERSION.html +0 -128
  153. data/doc/Sprout.html +0 -144
  154. data/doc/SproutTestCase.html +0 -1412
  155. data/doc/String.html +0 -286
  156. data/doc/_index.html +0 -1035
  157. data/doc/class_list.html +0 -36
  158. data/doc/css/common.css +0 -1
  159. data/doc/css/full_list.css +0 -53
  160. data/doc/css/style.css +0 -310
  161. data/doc/file.README.html +0 -96
  162. data/doc/file.archive_unpacker.html +0 -288
  163. data/doc/file.base.html +0 -208
  164. data/doc/file.base_system.html +0 -278
  165. data/doc/file.boolean.html +0 -135
  166. data/doc/file.collection_param.html +0 -139
  167. data/doc/file.command.html +0 -126
  168. data/doc/file.concern.html +0 -136
  169. data/doc/file.daemon.html +0 -309
  170. data/doc/file.dir.html +0 -76
  171. data/doc/file.directory_manifest.html +0 -122
  172. data/doc/file.errors.html +0 -147
  173. data/doc/file.executable.html +0 -638
  174. data/doc/file.file_manifest.html +0 -109
  175. data/doc/file.file_param.html +0 -120
  176. data/doc/file.file_target.html +0 -140
  177. data/doc/file.files.html +0 -85
  178. data/doc/file.generator.html +0 -296
  179. data/doc/file.generator_class.html +0 -72
  180. data/doc/file.generator_generator.html +0 -137
  181. data/doc/file.generator_test.html +0 -92
  182. data/doc/file.generator_test_helper.html +0 -67
  183. data/doc/file.java_system.html +0 -62
  184. data/doc/file.library.html +0 -291
  185. data/doc/file.library_generator.html +0 -74
  186. data/doc/file.log.html +0 -100
  187. data/doc/file.manifest.html +0 -67
  188. data/doc/file.mxmlc.html +0 -740
  189. data/doc/file.number.html +0 -67
  190. data/doc/file.osx_system.html +0 -79
  191. data/doc/file.param.html +0 -491
  192. data/doc/file.parameter_factory.html +0 -119
  193. data/doc/file.path.html +0 -81
  194. data/doc/file.paths.html +0 -80
  195. data/doc/file.platform.html +0 -124
  196. data/doc/file.process_runner.html +0 -224
  197. data/doc/file.progress_bar.html +0 -390
  198. data/doc/file.rdoc_parser.html +0 -145
  199. data/doc/file.remote_file_loader.html +0 -117
  200. data/doc/file.remote_file_target.html +0 -176
  201. data/doc/file.ruby_base.html +0 -64
  202. data/doc/file.ruby_feature.html +0 -244
  203. data/doc/file.ruby_generator.html +0 -118
  204. data/doc/file.ruby_input.html +0 -62
  205. data/doc/file.ruby_test_case.html +0 -78
  206. data/doc/file.ruby_test_helper.html +0 -61
  207. data/doc/file.specification.html +0 -248
  208. data/doc/file.sprout.html +0 -64
  209. data/doc/file.sprout_test_case.html +0 -280
  210. data/doc/file.string.html +0 -72
  211. data/doc/file.string_param.html +0 -76
  212. data/doc/file.strings.html +0 -71
  213. data/doc/file.system.html +0 -86
  214. data/doc/file.template_manifest.html +0 -67
  215. data/doc/file.tool.html +0 -92
  216. data/doc/file.tool_generator.html +0 -90
  217. data/doc/file.unix_system.html +0 -128
  218. data/doc/file.url.html +0 -71
  219. data/doc/file.urls.html +0 -70
  220. data/doc/file.version.html +0 -71
  221. data/doc/file.vista_system.html +0 -69
  222. data/doc/file.win_nix_system.html +0 -88
  223. data/doc/file.win_system.html +0 -129
  224. data/doc/file_list.html +0 -230
  225. data/doc/frames.html +0 -13
  226. data/doc/index.html +0 -96
  227. data/doc/js/app.js +0 -202
  228. data/doc/js/full_list.js +0 -149
  229. data/doc/js/jquery.js +0 -154
  230. data/doc/method_list.html +0 -3355
  231. data/doc/top-level-namespace.html +0 -192
  232. data/lib/sprout/base.rb +0 -121
  233. data/lib/sprout/log.rb +0 -46
  234. data/test/unit/sprout_test_helper.rb +0 -33
@@ -1,192 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta name="Content-Type" content="text/html; charset=utf-8" />
6
- <title>Top Level Namespace</title>
7
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
-
10
- <script type="text/javascript" charset="utf-8">
11
- relpath = '';
12
- if (relpath != '') relpath += '/';
13
- </script>
14
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
-
17
- </head>
18
- <body>
19
- <script type="text/javascript" charset="utf-8">
20
- if (window.top.frames.main) document.body.className = 'frames';
21
- </script>
22
-
23
- <div id="header">
24
- <div id="menu">
25
-
26
- <a href="_index.html">Index</a> &raquo;
27
-
28
-
29
- <span class="title">Top Level Namespace</span>
30
-
31
-
32
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
33
- </div>
34
-
35
- <div id="search">
36
- <a id="class_list_link" href="#">Class List</a>
37
- <a id="method_list_link" href="#">Method List</a>
38
- <a id ="file_list_link" href="#">File List</a>
39
- </div>
40
-
41
- <div class="clear"></div>
42
- </div>
43
-
44
- <iframe id="search_frame"></iframe>
45
-
46
- <div id="content"><h1>Top Level Namespace
47
-
48
-
49
-
50
- </h1>
51
-
52
- <dl class="box">
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
- </dl>
62
- <div class="clear"></div>
63
-
64
- <h2>Defined Under Namespace</h2>
65
- <p class="children">
66
-
67
-
68
- <strong class="modules">Modules:</strong> <span class='object_link'><a href="Sprout.html" title="Sprout (module)">Sprout</a></span>, <span class='object_link'><a href="SproutTestCase.html" title="SproutTestCase (module)">SproutTestCase</a></span>
69
-
70
-
71
-
72
- <strong class="classes">Classes:</strong> <span class='object_link'><a href="Dir.html" title="Dir (class)">Dir</a></span>, <span class='object_link'><a href="String.html" title="String (class)">String</a></span>
73
-
74
-
75
- </p>
76
-
77
-
78
-
79
-
80
- <h2>
81
- Instance Method Summary
82
- <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
83
- </h2>
84
-
85
- <ul class="summary">
86
-
87
- <li class="public ">
88
- <span class="summary_signature">
89
-
90
- <a href="#library-instance_method" title="#library (instance method)">- (Object) <strong>library</strong>(pkg_name, name = nil, version = nil) </a>
91
-
92
-
93
-
94
- </span>
95
-
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
- <span class="summary_desc"><div class='inline'>
104
- <p>From within a Rakefile, you can load libraries by calling this method:.</p>
105
- </div></span>
106
-
107
- </li>
108
-
109
-
110
- </ul>
111
-
112
-
113
-
114
-
115
- <div id="instance_method_details" class="method_details_list">
116
- <h2>Instance Method Details</h2>
117
-
118
-
119
- <div class="method_details first">
120
- <p class="signature first" id="library-instance_method">
121
-
122
- - (<tt>Object</tt>) <strong>library</strong>(pkg_name, name = nil, version = nil)
123
-
124
-
125
-
126
- </p><div class="docstring">
127
- <div class="discussion">
128
-
129
- <p>From within a Rakefile, you can load libraries by calling this method:</p>
130
-
131
- <pre class="code"><span class='id library'>library</span> <span class='symbol'>:asunit4</span></pre>
132
-
133
- <p>Or, if you would like to specify which registered library to pull from the
134
- identified package (by name):</p>
135
-
136
- <pre class="code"><span class='id library'>library</span> <span class='symbol'>:asunit4</span><span class='comma'>,</span> <span class='symbol'>:src</span></pre>
137
-
138
- <p>Or, if you'd like to specify version requirements:</p>
139
-
140
- <pre class="code"><span class='id library'>library</span> <span class='symbol'>:asunit4</span><span class='comma'>,</span> <span class='symbol'>:swc</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>&gt;= 4.2.pre</span><span class='tstring_end'>'</span></span></pre>
141
-
142
- <p>It's important to note that libraries must also be defined in your Gemfile
143
- like:</p>
144
-
145
- <pre class="code"><span class='id gem'>gem</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>asunit4</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&gt;= 4.2.pre</span><span class='tstring_end'>&quot;</span></span></pre>
146
-
147
- <p>Libraries are generally then added to compiler tasks as Rake dependencies
148
- like:</p>
149
-
150
- <pre class="code"><span class='id mxmlc'>mxmlc</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>bin/SomeRunner.swf</span><span class='tstring_end'>'</span></span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span><span class='symbol'>:asunit4</span><span class='rbracket'>]</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id t'>t</span><span class='op'>|</span>
151
- <span class='id t'>t</span><span class='period'>.</span><span class='id input'>input</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>src/SomeRunner.as</span><span class='tstring_end'>'</span></span>
152
- <span class='id t'>t</span><span class='period'>.</span><span class='id source_path'>source_path</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>test</span><span class='tstring_end'>'</span></span>
153
- <span class='kw'>end</span></pre>
154
-
155
-
156
- </div>
157
- </div>
158
- <div class="tags">
159
-
160
- </div><table class="source_code">
161
- <tr>
162
- <td>
163
- <pre class="lines">
164
-
165
-
166
- 251
167
- 252
168
- 253</pre>
169
- </td>
170
- <td>
171
- <pre class="code"><span class="info file"># File 'lib/sprout/library.rb', line 251</span>
172
-
173
- <span class='kw'>def</span> <span class='id library'>library</span> <span class='id pkg_name'>pkg_name</span><span class='comma'>,</span> <span class='id name'>name</span><span class='op'>=</span><span class='kw'>nil</span><span class='comma'>,</span> <span class='id version'>version</span><span class='op'>=</span><span class='kw'>nil</span>
174
- <span class='const'>Sprout</span><span class='op'>::</span><span class='const'>Library</span><span class='period'>.</span><span class='id define_task'>define_task</span> <span class='id name'>name</span><span class='comma'>,</span> <span class='id pkg_name'>pkg_name</span><span class='comma'>,</span> <span class='id version'>version</span>
175
- <span class='kw'>end</span></pre>
176
- </td>
177
- </tr>
178
- </table>
179
- </div>
180
-
181
- </div>
182
-
183
- </div>
184
-
185
- <div id="footer">
186
- Generated on Wed Dec 22 11:58:37 2010 by
187
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
188
- 0.6.3 (ruby-1.9.2).
189
- </div>
190
-
191
- </body>
192
- </html>
data/lib/sprout/base.rb DELETED
@@ -1,121 +0,0 @@
1
- # External tools and std libs:
2
- require 'rake'
3
- require 'delegate'
4
-
5
- # Core, Process and Platform support:
6
- require 'sprout/version'
7
- require 'sprout/progress_bar'
8
- require 'sprout/dir'
9
- require 'sprout/string'
10
- require 'sprout/concern'
11
- require 'sprout/log'
12
- require 'sprout/errors'
13
- require 'sprout/platform'
14
- require 'sprout/process_runner'
15
- require 'sprout/system'
16
- require 'sprout/ruby_feature'
17
-
18
- ##
19
- # This is a fix for Issue #106
20
- # http://code.google.com/p/projectsprouts/issues/detail?id=106
21
- # Which is created because the new version (1.0.1) of RubyGems
22
- # includes open-uri, while older versions do not.
23
- # When open-uri is included twice, we get a bunch of nasty
24
- # warnings because constants are being overwritten.
25
- gem_version = Gem::Version.new(Gem::RubyGemsVersion)
26
- if(gem_version != Gem::Version.new('1.0.1'))
27
- require 'open-uri'
28
- end
29
-
30
- # File, Archive and Network support:
31
- require 'sprout/archive_unpacker'
32
- require 'sprout/file_target'
33
- require 'sprout/remote_file_loader'
34
- require 'sprout/remote_file_target'
35
-
36
- # External Packaging and distribution support:
37
- require 'sprout/rdoc_parser'
38
- require 'sprout/specification'
39
- require 'sprout/executable'
40
- require 'sprout/daemon'
41
-
42
- # Generators
43
- require 'sprout/generator'
44
-
45
- # Libraries
46
- require 'sprout/library'
47
-
48
- module Sprout
49
-
50
- ##
51
- # This is the badly-named module that we use to hang our globally-accessible
52
- # interface from.
53
- #
54
- # @see: Sprout::Base::ClassMethods
55
- module Base
56
- extend Concern
57
-
58
- module ClassMethods
59
-
60
- ##
61
- # Returns the system-specific path to the writeable cache directory
62
- # where Sprouts will look for downloaded archives.
63
- #
64
- # puts ">> Sprout Cache: #{Sprout::Base.cache}"
65
- #
66
- def cache
67
- File.join(sprout_home, 'cache')
68
- end
69
-
70
- ##
71
- # Returns the location where the currently-running version of Sprouts
72
- # will write files and generators and their templates.
73
- #
74
- # puts ">> Sprout home: #{Sprout::Base.sprout_home}"
75
- #
76
- def sprout_home
77
- File.join(current_system.application_home('sprouts'), Sprout::VERSION::MAJOR_MINOR)
78
- end
79
-
80
- ##
81
- # Returns the location where Sprouts will look for generators and their
82
- # templates.
83
- #
84
- # puts ">> Generator Cache: #{Sprout::Base.generator_cache}"
85
- #
86
- def generator_cache
87
- File.join cache, 'generators'
88
- end
89
-
90
- ##
91
- # Return the Sprout::System that is currently being used to
92
- # determine features like the cache path and how external processes
93
- # are executed.
94
- #
95
- # system = Sprout::Base.current_system
96
- # puts ">> System: #{system.inspect}"
97
- #
98
- def current_system
99
- Sprout::System.create
100
- end
101
-
102
- ##
103
- # Get the file name from the 'caller' property of
104
- # a Ruby exception.
105
- #
106
- # Note: It's a real bummer that this string is colon delimited -
107
- # The value on Windows often includes a colon...
108
- # Once again, Windows is dissed by fundamental Ruby decisions.
109
- def file_from_caller caller_string
110
- parts = caller_string.split(':')
111
- str = parts.shift
112
- while(parts.size > 0 && !File.exists?(str))
113
- str << ":#{parts.shift}"
114
- end
115
- str
116
- end
117
-
118
- end
119
- end
120
- end
121
-
data/lib/sprout/log.rb DELETED
@@ -1,46 +0,0 @@
1
-
2
- module Sprout
3
- class Log
4
- @@debug = false
5
- @@output = ''
6
- @@printout = ''
7
-
8
- def Log.debug=(debug)
9
- @@debug = debug
10
- end
11
-
12
- def Log.debug
13
- return @@debug
14
- end
15
-
16
- def Log.puts(msg)
17
- @@output << msg + "\n"
18
- Log.flush
19
- end
20
-
21
- def Log.print(msg)
22
- @@printout << msg
23
- Log.flush_print
24
- end
25
-
26
- def Log.printf(msg)
27
- @@printout << msg
28
- Log.flush_print
29
- end
30
-
31
- def Log.flush_print
32
- if(!Log.debug)
33
- $stdout.printf @@printout
34
- @@printout = ''
35
- end
36
- end
37
-
38
- def Log.flush
39
- if(!Log.debug)
40
- $stdout.printf @@output
41
- @@output = ''
42
- end
43
- end
44
- end
45
- end
46
-
@@ -1,33 +0,0 @@
1
- require "rubygems"
2
- require "bundler"
3
-
4
- Bundler.setup :default, :development
5
-
6
- # These require statments *must* be in this order:
7
- # http://bit.ly/bCC0Ew
8
- # Somewhat surprised they're not being required by Bundler...
9
- require 'shoulda'
10
- require 'mocha'
11
-
12
- lib = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib'))
13
- $:.unshift lib unless $:.include? lib
14
-
15
- require 'sprout'
16
-
17
- $:.unshift File.expand_path(File.join(File.dirname(__FILE__), '..'))
18
-
19
- require 'unit/fake_process_runner'
20
- require 'unit/fake_executable_task'
21
- require 'sprout/test/sprout_test_case'
22
-
23
- class Test::Unit::TestCase
24
-
25
- # Only clear registrations in the Sprout core
26
- # project - not in child projects
27
- def teardown
28
- Sprout::Executable.clear_entities!
29
- Sprout::Library.clear_entities!
30
- Sprout::Generator.clear_entities!
31
- end
32
- end
33
-