bpm 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) hide show
  1. data/.gitignore +4 -0
  2. data/.gitmodules +0 -0
  3. data/Gemfile +16 -0
  4. data/README.md +55 -0
  5. data/TODO.md +3 -0
  6. data/bin/bpm +8 -0
  7. data/bpm.gemspec +41 -0
  8. data/lib/bpm.rb +18 -0
  9. data/lib/bpm/cli.rb +6 -0
  10. data/lib/bpm/cli/base.rb +358 -0
  11. data/lib/bpm/cli/owner.rb +46 -0
  12. data/lib/bpm/credentials.rb +36 -0
  13. data/lib/bpm/default.json +9 -0
  14. data/lib/bpm/generator.rb +69 -0
  15. data/lib/bpm/init_generator.rb +43 -0
  16. data/lib/bpm/libgems_ext.rb +11 -0
  17. data/lib/bpm/libgems_ext/config_file.rb +33 -0
  18. data/lib/bpm/libgems_ext/dependency_installer.rb +150 -0
  19. data/lib/bpm/libgems_ext/installer.rb +39 -0
  20. data/lib/bpm/libgems_ext/libgems.rb +39 -0
  21. data/lib/bpm/libgems_ext/spec_fetcher.rb +11 -0
  22. data/lib/bpm/local.rb +76 -0
  23. data/lib/bpm/package.rb +277 -0
  24. data/lib/bpm/pipeline.rb +100 -0
  25. data/lib/bpm/pipeline/directive_processor.rb +47 -0
  26. data/lib/bpm/pipeline/generated_asset.rb +68 -0
  27. data/lib/bpm/pipeline/transport_processor.rb +32 -0
  28. data/lib/bpm/project.rb +427 -0
  29. data/lib/bpm/project_generator.rb +34 -0
  30. data/lib/bpm/remote.rb +104 -0
  31. data/lib/bpm/repository.rb +18 -0
  32. data/lib/bpm/server.rb +44 -0
  33. data/lib/bpm/version.rb +3 -0
  34. data/spec/cli/add_spec.rb +159 -0
  35. data/spec/cli/build_spec.rb +87 -0
  36. data/spec/cli/fetch_spec.rb +135 -0
  37. data/spec/cli/fetched_spec.rb +52 -0
  38. data/spec/cli/init_spec.rb +50 -0
  39. data/spec/cli/list_spec.rb +74 -0
  40. data/spec/cli/login_spec.rb +110 -0
  41. data/spec/cli/new_spec.rb +92 -0
  42. data/spec/cli/owner_spec.rb +114 -0
  43. data/spec/cli/push_spec.rb +73 -0
  44. data/spec/cli/remove_spec.rb +84 -0
  45. data/spec/cli/unpack_spec.rb +72 -0
  46. data/spec/cli/unyank_spec.rb +73 -0
  47. data/spec/cli/yank_spec.rb +73 -0
  48. data/spec/credentials_spec.rb +23 -0
  49. data/spec/fixtures/badrake-0.8.7.spd +0 -0
  50. data/spec/fixtures/builder-3.0.0.spd +0 -0
  51. data/spec/fixtures/bundler-1.1.pre.spd +0 -0
  52. data/spec/fixtures/coffee-1.0.1.pre.spd +0 -0
  53. data/spec/fixtures/core-test-0.4.9.spd +0 -0
  54. data/spec/fixtures/core-test/bin/cot +3 -0
  55. data/spec/fixtures/core-test/lib/main.js +1 -0
  56. data/spec/fixtures/core-test/package.json +46 -0
  57. data/spec/fixtures/core-test/resources/runner.css +1 -0
  58. data/spec/fixtures/core-test/tests/test.js +1 -0
  59. data/spec/fixtures/custom_generator-1.0.spd +0 -0
  60. data/spec/fixtures/custom_generator/lib/main.js +1 -0
  61. data/spec/fixtures/custom_generator/package.json +12 -0
  62. data/spec/fixtures/custom_generator/templates/init/project.json +19 -0
  63. data/spec/fixtures/custom_generator/templates/project/app.js +1 -0
  64. data/spec/fixtures/custom_generator/templates/project/lib/main.js +0 -0
  65. data/spec/fixtures/custom_generator/templates/project_generator.rb +20 -0
  66. data/spec/fixtures/hello_world/LICENSE +19 -0
  67. data/spec/fixtures/hello_world/README.md +21 -0
  68. data/spec/fixtures/hello_world/assets/bpm_packages.js +13 -0
  69. data/spec/fixtures/hello_world/assets/bpm_styles.css +14 -0
  70. data/spec/fixtures/hello_world/assets/papa-smurf.jpg +0 -0
  71. data/spec/fixtures/hello_world/hello_world.json +20 -0
  72. data/spec/fixtures/hello_world/lib/main.js +9 -0
  73. data/spec/fixtures/hello_world/packages/custom_package/assets/dummy.txt +1 -0
  74. data/spec/fixtures/hello_world/packages/custom_package/css/sample_styles.css +3 -0
  75. data/spec/fixtures/hello_world/packages/custom_package/custom_dir/basic-module.js +1 -0
  76. data/spec/fixtures/hello_world/packages/custom_package/lib/main.js +1 -0
  77. data/spec/fixtures/hello_world/packages/custom_package/package.json +22 -0
  78. data/spec/fixtures/hello_world/tests/main-test.js +8 -0
  79. data/spec/fixtures/highline-1.6.1.spd +0 -0
  80. data/spec/fixtures/ivory-0.0.1.spd +0 -0
  81. data/spec/fixtures/jquery-1.4.3.spd +0 -0
  82. data/spec/fixtures/optparse-1.0.1.spd +0 -0
  83. data/spec/fixtures/rake-0.8.6.spd +0 -0
  84. data/spec/fixtures/rake-0.8.7.spd +0 -0
  85. data/spec/fixtures/simple_hello/assets/bpm_packages.js +1 -0
  86. data/spec/fixtures/simple_hello/lib/main.js +1 -0
  87. data/spec/fixtures/spade-0.5.0.spd +0 -0
  88. data/spec/fixtures/src/README.txt +1 -0
  89. data/spec/fixtures/src/bundler-1.1.pre/.gitignore +22 -0
  90. data/spec/fixtures/src/bundler-1.1.pre/CHANGELOG.md +646 -0
  91. data/spec/fixtures/src/bundler-1.1.pre/ISSUES.md +47 -0
  92. data/spec/fixtures/src/bundler-1.1.pre/LICENSE +21 -0
  93. data/spec/fixtures/src/bundler-1.1.pre/README.md +29 -0
  94. data/spec/fixtures/src/bundler-1.1.pre/UPGRADING.md +103 -0
  95. data/spec/fixtures/src/bundler-1.1.pre/bin/bundle +20 -0
  96. data/spec/fixtures/src/bundler-1.1.pre/lib/bundler.js +23 -0
  97. data/spec/fixtures/src/bundler-1.1.pre/lib/bundler/definition.js +14 -0
  98. data/spec/fixtures/src/bundler-1.1.pre/lib/bundler/dependency.js +15 -0
  99. data/spec/fixtures/src/bundler-1.1.pre/lib/bundler/dsl.js +9 -0
  100. data/spec/fixtures/src/bundler-1.1.pre/lib/bundler/ui.js +6 -0
  101. data/spec/fixtures/src/bundler-1.1.pre/man/bundle-config.ronn +90 -0
  102. data/spec/fixtures/src/bundler-1.1.pre/man/bundle-exec.ronn +111 -0
  103. data/spec/fixtures/src/bundler-1.1.pre/man/bundle-install.ronn +314 -0
  104. data/spec/fixtures/src/bundler-1.1.pre/man/bundle-package.ronn +59 -0
  105. data/spec/fixtures/src/bundler-1.1.pre/man/bundle-update.ronn +176 -0
  106. data/spec/fixtures/src/bundler-1.1.pre/man/bundle.ronn +80 -0
  107. data/spec/fixtures/src/bundler-1.1.pre/man/gemfile.5.ronn +279 -0
  108. data/spec/fixtures/src/bundler-1.1.pre/man/index.txt +6 -0
  109. data/spec/fixtures/src/bundler-1.1.pre/package.json +19 -0
  110. data/spec/fixtures/src/coffee-1.0.1.pre/bin/cake +0 -0
  111. data/spec/fixtures/src/coffee-1.0.1.pre/bin/coffee +0 -0
  112. data/spec/fixtures/src/coffee-1.0.1.pre/lib/coffee.js +0 -0
  113. data/spec/fixtures/src/coffee-1.0.1.pre/lib/coffee/base.js +0 -0
  114. data/spec/fixtures/src/coffee-1.0.1.pre/lib/coffee/mocha/chai.js +0 -0
  115. data/spec/fixtures/src/coffee-1.0.1.pre/package.json +19 -0
  116. data/spec/fixtures/src/coffee-1.0.1.pre/qunit/coffee/test.js +0 -0
  117. data/spec/fixtures/src/coffee-1.0.1.pre/qunit/test.js +0 -0
  118. data/spec/fixtures/src/jquery/lib/main.js +7179 -0
  119. data/spec/fixtures/src/jquery/package.json +15 -0
  120. data/spec/fixtures/src/rake-0.8.6/CHANGES +436 -0
  121. data/spec/fixtures/src/rake-0.8.6/MIT-LICENSE +21 -0
  122. data/spec/fixtures/src/rake-0.8.6/README +196 -0
  123. data/spec/fixtures/src/rake-0.8.6/Rakefile +430 -0
  124. data/spec/fixtures/src/rake-0.8.6/TODO +20 -0
  125. data/spec/fixtures/src/rake-0.8.6/bin/rake +31 -0
  126. data/spec/fixtures/src/rake-0.8.6/doc/command_line_usage.rdoc +102 -0
  127. data/spec/fixtures/src/rake-0.8.6/doc/example/Rakefile1 +38 -0
  128. data/spec/fixtures/src/rake-0.8.6/doc/example/Rakefile2 +35 -0
  129. data/spec/fixtures/src/rake-0.8.6/doc/example/a.c +6 -0
  130. data/spec/fixtures/src/rake-0.8.6/doc/example/b.c +6 -0
  131. data/spec/fixtures/src/rake-0.8.6/doc/example/main.c +11 -0
  132. data/spec/fixtures/src/rake-0.8.6/doc/glossary.rdoc +51 -0
  133. data/spec/fixtures/src/rake-0.8.6/doc/jamis.rb +591 -0
  134. data/spec/fixtures/src/rake-0.8.6/doc/proto_rake.rdoc +127 -0
  135. data/spec/fixtures/src/rake-0.8.6/doc/rake.1.gz +0 -0
  136. data/spec/fixtures/src/rake-0.8.6/doc/rakefile.rdoc +534 -0
  137. data/spec/fixtures/src/rake-0.8.6/doc/rational.rdoc +151 -0
  138. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.4.14.rdoc +23 -0
  139. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.4.15.rdoc +35 -0
  140. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.5.0.rdoc +53 -0
  141. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.5.3.rdoc +78 -0
  142. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.5.4.rdoc +46 -0
  143. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.6.0.rdoc +141 -0
  144. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.7.0.rdoc +119 -0
  145. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.7.1.rdoc +59 -0
  146. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.7.2.rdoc +121 -0
  147. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.7.3.rdoc +47 -0
  148. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.8.0.rdoc +114 -0
  149. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.8.2.rdoc +165 -0
  150. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.8.3.rdoc +112 -0
  151. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.8.4.rdoc +147 -0
  152. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.8.5.rdoc +53 -0
  153. data/spec/fixtures/src/rake-0.8.6/doc/release_notes/rake-0.8.6.rdoc +55 -0
  154. data/spec/fixtures/src/rake-0.8.6/install.rb +88 -0
  155. data/spec/fixtures/src/rake-0.8.6/lib/rake.rb +2502 -0
  156. data/spec/fixtures/src/rake-0.8.6/lib/rake/alt_system.rb +108 -0
  157. data/spec/fixtures/src/rake-0.8.6/lib/rake/classic_namespace.rb +8 -0
  158. data/spec/fixtures/src/rake-0.8.6/lib/rake/clean.rb +33 -0
  159. data/spec/fixtures/src/rake-0.8.6/lib/rake/contrib/compositepublisher.rb +24 -0
  160. data/spec/fixtures/src/rake-0.8.6/lib/rake/contrib/ftptools.rb +153 -0
  161. data/spec/fixtures/src/rake-0.8.6/lib/rake/contrib/publisher.rb +75 -0
  162. data/spec/fixtures/src/rake-0.8.6/lib/rake/contrib/rubyforgepublisher.rb +18 -0
  163. data/spec/fixtures/src/rake-0.8.6/lib/rake/contrib/sshpublisher.rb +47 -0
  164. data/spec/fixtures/src/rake-0.8.6/lib/rake/contrib/sys.rb +209 -0
  165. data/spec/fixtures/src/rake-0.8.6/lib/rake/gempackagetask.rb +97 -0
  166. data/spec/fixtures/src/rake-0.8.6/lib/rake/loaders/makefile.rb +42 -0
  167. data/spec/fixtures/src/rake-0.8.6/lib/rake/packagetask.rb +184 -0
  168. data/spec/fixtures/src/rake-0.8.6/lib/rake/rake_test_loader.rb +5 -0
  169. data/spec/fixtures/src/rake-0.8.6/lib/rake/rdoctask.rb +209 -0
  170. data/spec/fixtures/src/rake-0.8.6/lib/rake/ruby182_test_unit_fix.rb +23 -0
  171. data/spec/fixtures/src/rake-0.8.6/lib/rake/runtest.rb +23 -0
  172. data/spec/fixtures/src/rake-0.8.6/lib/rake/tasklib.rb +23 -0
  173. data/spec/fixtures/src/rake-0.8.6/lib/rake/testtask.rb +161 -0
  174. data/spec/fixtures/src/rake-0.8.6/lib/rake/win32.rb +55 -0
  175. data/spec/fixtures/src/rake-0.8.6/package.json +18 -0
  176. data/spec/fixtures/src/rake-0.8.6/test/capture_stdout.rb +26 -0
  177. data/spec/fixtures/src/rake-0.8.7/CHANGES +440 -0
  178. data/spec/fixtures/src/rake-0.8.7/MIT-LICENSE +21 -0
  179. data/spec/fixtures/src/rake-0.8.7/README +196 -0
  180. data/spec/fixtures/src/rake-0.8.7/Rakefile +430 -0
  181. data/spec/fixtures/src/rake-0.8.7/TODO +20 -0
  182. data/spec/fixtures/src/rake-0.8.7/bin/rake +31 -0
  183. data/spec/fixtures/src/rake-0.8.7/doc/command_line_usage.rdoc +102 -0
  184. data/spec/fixtures/src/rake-0.8.7/doc/example/Rakefile1 +38 -0
  185. data/spec/fixtures/src/rake-0.8.7/doc/example/Rakefile2 +35 -0
  186. data/spec/fixtures/src/rake-0.8.7/doc/example/a.c +6 -0
  187. data/spec/fixtures/src/rake-0.8.7/doc/example/b.c +6 -0
  188. data/spec/fixtures/src/rake-0.8.7/doc/example/main.c +11 -0
  189. data/spec/fixtures/src/rake-0.8.7/doc/glossary.rdoc +51 -0
  190. data/spec/fixtures/src/rake-0.8.7/doc/jamis.rb +591 -0
  191. data/spec/fixtures/src/rake-0.8.7/doc/proto_rake.rdoc +127 -0
  192. data/spec/fixtures/src/rake-0.8.7/doc/rake.1.gz +0 -0
  193. data/spec/fixtures/src/rake-0.8.7/doc/rakefile.rdoc +534 -0
  194. data/spec/fixtures/src/rake-0.8.7/doc/rational.rdoc +151 -0
  195. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.4.14.rdoc +23 -0
  196. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.4.15.rdoc +35 -0
  197. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.5.0.rdoc +53 -0
  198. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.5.3.rdoc +78 -0
  199. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.5.4.rdoc +46 -0
  200. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.6.0.rdoc +141 -0
  201. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.7.0.rdoc +119 -0
  202. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.7.1.rdoc +59 -0
  203. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.7.2.rdoc +121 -0
  204. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.7.3.rdoc +47 -0
  205. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.0.rdoc +114 -0
  206. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.2.rdoc +165 -0
  207. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.3.rdoc +112 -0
  208. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.4.rdoc +147 -0
  209. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.5.rdoc +53 -0
  210. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.6.rdoc +55 -0
  211. data/spec/fixtures/src/rake-0.8.7/doc/release_notes/rake-0.8.7.rdoc +55 -0
  212. data/spec/fixtures/src/rake-0.8.7/install.rb +88 -0
  213. data/spec/fixtures/src/rake-0.8.7/lib/rake.rb +2506 -0
  214. data/spec/fixtures/src/rake-0.8.7/lib/rake/alt_system.rb +108 -0
  215. data/spec/fixtures/src/rake-0.8.7/lib/rake/classic_namespace.rb +8 -0
  216. data/spec/fixtures/src/rake-0.8.7/lib/rake/clean.rb +33 -0
  217. data/spec/fixtures/src/rake-0.8.7/lib/rake/contrib/compositepublisher.rb +24 -0
  218. data/spec/fixtures/src/rake-0.8.7/lib/rake/contrib/ftptools.rb +153 -0
  219. data/spec/fixtures/src/rake-0.8.7/lib/rake/contrib/publisher.rb +75 -0
  220. data/spec/fixtures/src/rake-0.8.7/lib/rake/contrib/rubyforgepublisher.rb +18 -0
  221. data/spec/fixtures/src/rake-0.8.7/lib/rake/contrib/sshpublisher.rb +47 -0
  222. data/spec/fixtures/src/rake-0.8.7/lib/rake/contrib/sys.rb +209 -0
  223. data/spec/fixtures/src/rake-0.8.7/lib/rake/gempackagetask.rb +97 -0
  224. data/spec/fixtures/src/rake-0.8.7/lib/rake/loaders/makefile.rb +42 -0
  225. data/spec/fixtures/src/rake-0.8.7/lib/rake/packagetask.rb +184 -0
  226. data/spec/fixtures/src/rake-0.8.7/lib/rake/rake_test_loader.rb +5 -0
  227. data/spec/fixtures/src/rake-0.8.7/lib/rake/rdoctask.rb +209 -0
  228. data/spec/fixtures/src/rake-0.8.7/lib/rake/ruby182_test_unit_fix.rb +23 -0
  229. data/spec/fixtures/src/rake-0.8.7/lib/rake/runtest.rb +23 -0
  230. data/spec/fixtures/src/rake-0.8.7/lib/rake/tasklib.rb +23 -0
  231. data/spec/fixtures/src/rake-0.8.7/lib/rake/testtask.rb +161 -0
  232. data/spec/fixtures/src/rake-0.8.7/lib/rake/win32.rb +55 -0
  233. data/spec/fixtures/src/rake-0.8.7/package.json +18 -0
  234. data/spec/fixtures/src/rake-0.8.7/test/capture_stdout.rb +26 -0
  235. data/spec/fixtures/src/spade/lib/main.js +1 -0
  236. data/spec/fixtures/src/spade/package.json +15 -0
  237. data/spec/fixtures/transporter/lib/main.js +3 -0
  238. data/spec/fixtures/transporter/packages/transport/lib/wrapper.js +5 -0
  239. data/spec/fixtures/transporter/packages/transport/package.json +21 -0
  240. data/spec/fixtures/transporter/transporter.json +18 -0
  241. data/spec/gauntlet_spec.rb +33 -0
  242. data/spec/package_spec.rb +319 -0
  243. data/spec/pipeline_spec.rb +213 -0
  244. data/spec/project_spec.rb +130 -0
  245. data/spec/spec_helper.rb +42 -0
  246. data/spec/support/cli.rb +93 -0
  247. data/spec/support/env.rb +18 -0
  248. data/spec/support/fake.rb +53 -0
  249. data/spec/support/fake_gem_server.rb +72 -0
  250. data/spec/support/fake_gemcutter.rb +50 -0
  251. data/spec/support/matchers.rb +32 -0
  252. data/spec/support/path.rb +63 -0
  253. data/spec/support/project.rb +43 -0
  254. data/templates/init/assets/bpm_packages.js +7 -0
  255. data/templates/init/assets/bpm_styles.css +7 -0
  256. data/templates/init/project.json +16 -0
  257. data/templates/project/LICENSE +19 -0
  258. data/templates/project/README.md +21 -0
  259. data/templates/project/app.js +1 -0
  260. data/templates/project/index.html +13 -0
  261. metadata +627 -0
@@ -0,0 +1,119 @@
1
+ = Rake 0.7.0 Released
2
+
3
+ These changes for Rake have been brewing for a long time. Here they
4
+ are, I hope you enjoy them.
5
+
6
+ == Changes
7
+
8
+ === New Features
9
+
10
+ * Name space support for task names (see below).
11
+
12
+ * Prerequisites can be executed in parallel (see below).
13
+
14
+ * Added safe_ln support for openAFS (via Ludvig Omholt).
15
+
16
+ * RDoc defaults to internal (in-process) invocation. The old behavior
17
+ is still available by setting the +external+ flag to true.
18
+
19
+ * Rakefiles are now loaded with the expanded path to prevent
20
+ accidental polution from the Ruby load path.
21
+
22
+ * Task objects my now be used in prerequisite lists directly.
23
+
24
+ * Task objects (in addition to task names) may now be included in the
25
+ prerequisite list of a task.
26
+
27
+ * Internals cleanup and refactoring.
28
+
29
+ === Bug Fixes
30
+
31
+ * Compatibility fixes for Ruby 1.8.4 FileUtils changes.
32
+
33
+ === Namespaces
34
+
35
+ Tasks can now be nested inside their own namespaces. Tasks within one
36
+ namespace will not accidently interfer with tasks named in a different
37
+ namespace.
38
+
39
+ For example:
40
+
41
+ namespace "main" do
42
+ task :build do
43
+ # Build the main program
44
+ end
45
+ end
46
+
47
+ namespace "samples" do
48
+ task :build do
49
+ # Build the sample programs
50
+ end
51
+ end
52
+
53
+ task :build_all => ["main:build", "samples:build"]
54
+
55
+ Even though both tasks are named :build, they are separate tasks in
56
+ their own namespaces. The :build_all task (defined in the toplevel
57
+ namespace) references both build tasks in its prerequisites.
58
+
59
+ You may invoke each of the individual build tasks with the following
60
+ commands:
61
+
62
+ rake main:build
63
+ rake samples:build
64
+
65
+ Or invoke both via the :build_all command:
66
+
67
+ rake build_all
68
+
69
+ Namespaces may be nested arbitrarily. Since the name of file tasks
70
+ correspond to the name of a file in the external file system,
71
+ FileTasks are not affected by the namespaces.
72
+
73
+ See the Rakefile format documentation (in the Rake API documents) for
74
+ more information.
75
+
76
+ === Parallel Tasks
77
+
78
+ Sometimes you have several tasks that can be executed in parallel. By
79
+ specifying these tasks as prerequisites to a +multitask+ task.
80
+
81
+ In the following example the tasks copy_src, copy_doc and copy_bin
82
+ will all execute in parallel in their own thread.
83
+
84
+ multitask :copy_files => [:copy_src, :copy_doc, :copy_bin] do
85
+ puts "All Copies Complete"
86
+ end
87
+
88
+ == What is Rake
89
+
90
+ Rake is a build tool similar to the make program in many ways. But
91
+ instead of cryptic make recipes, Rake uses standard Ruby code to
92
+ declare tasks and dependencies. You have the full power of a modern
93
+ scripting language built right into your build tool.
94
+
95
+ == Availability
96
+
97
+ The easiest way to get and install rake is via RubyGems ...
98
+
99
+ gem install rake (you may need root/admin privileges)
100
+
101
+ Otherwise, you can get it from the more traditional places:
102
+
103
+ Home Page:: http://rake.rubyforge.org/
104
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
105
+
106
+ == Thanks
107
+
108
+ As usual, it was input from users that drove a alot of these changes.
109
+ The following people either contributed patches, made suggestions or
110
+ made otherwise helpful comments. Thanks to ...
111
+
112
+ * Doug Young (inspriation for the parallel task)
113
+
114
+ * David Heinemeier Hansson (for --trace message enhancement and for
115
+ pushing for namespace support).
116
+
117
+ * Ludvig Omholt (for the openAFS fix)
118
+
119
+ -- Jim Weirich
@@ -0,0 +1,59 @@
1
+ = Rake 0.7.1 Released
2
+
3
+ Version 0.7.1 supplies a bug fix and a few minor enhancements.
4
+
5
+ == Changes
6
+
7
+ === Bug Fixes in 0.7.1
8
+
9
+ * Changes in the exception reported for the FileUtils.ln caused
10
+ safe_ln to fail with a NotImplementedError. Rake 0.7.1 will now
11
+ catch that error or any StandardError and properly fall back to
12
+ using +cp+.
13
+
14
+ === New Features in 0.7.1
15
+
16
+ * You can filter the results of the --task option by supplying an
17
+ optional regular expression. This allows the user to easily find a
18
+ particular task name in a long list of possible names.
19
+
20
+ * Transforming procs in a rule may now return a list of prerequisites.
21
+ This allows more flexible rule formation.
22
+
23
+ * FileList and String now support a +pathmap+ melthod that makes the
24
+ transforming paths a bit easier. See the API docs for +pathmap+ for
25
+ details.
26
+
27
+ * The -f option without a value will disable the search for a
28
+ Rakefile. This allows the Rakefile to be defined entirely in a
29
+ library (and loaded with the -r option). The current working
30
+ directory is not changed when this is done.
31
+
32
+ == What is Rake
33
+
34
+ Rake is a build tool similar to the make program in many ways. But
35
+ instead of cryptic make recipes, Rake uses standard Ruby code to
36
+ declare tasks and dependencies. You have the full power of a modern
37
+ scripting language built right into your build tool.
38
+
39
+ == Availability
40
+
41
+ The easiest way to get and install rake is via RubyGems ...
42
+
43
+ gem install rake (you may need root/admin privileges)
44
+
45
+ Otherwise, you can get it from the more traditional places:
46
+
47
+ Home Page:: http://rake.rubyforge.org/
48
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
49
+
50
+ == Thanks
51
+
52
+ As usual, it was input from users that drove a alot of these changes.
53
+ The following people either contributed patches, made suggestions or
54
+ made otherwise helpful comments. Thanks to ...
55
+
56
+ * James Britt and Assaph Mehr for reporting and helping to debug the
57
+ safe_ln issue.
58
+
59
+ -- Jim Weirich
@@ -0,0 +1,121 @@
1
+ = Rake 0.7.2 Released
2
+
3
+ Version 0.7.2 supplies a bug fix and a few minor enhancements. In
4
+ particular, the new version fixes an incompatibility with the soon to
5
+ be released Ruby 1.8.6. We strongly recommend upgrading to Rake 0.7.2
6
+ in order to be compatible with the new version of Ruby.
7
+
8
+ == Changes
9
+
10
+ === Bug Fixes in 0.7.2
11
+
12
+ There are quite a number of bug fixes in the new 0.7.2 version of
13
+ Rake:
14
+
15
+ * Removed dependency on internal fu_xxx functions from FileUtils.
16
+
17
+ * Error messages are now send to stderr rather than stdout (from
18
+ Payton Quackenbush).
19
+
20
+ * Better error handling on invalid command line arguments (from Payton
21
+ Quackenbush).
22
+
23
+ * Fixed some bugs where the application object was going to the global
24
+ appliation instead of using its own data.
25
+
26
+ * Fixed the method name leak from FileUtils (bug found by Glenn
27
+ Vanderburg).
28
+
29
+ * Added test for noop, bad_option and verbose flags to sh command.
30
+
31
+ * Added a description to the gem task in GemPackageTask.
32
+
33
+ * Fixed a bug when rules have multiple prerequisites (patch by Joel
34
+ VanderWerf)
35
+
36
+ * Added the handful of RakeFileUtils to the private method as well.
37
+
38
+ === New Features in 0.7.2
39
+
40
+ The following new features are available in Rake version 0.7.2:
41
+
42
+ * Added square and curly bracket patterns to FileList#include (Tilman
43
+ Sauerbeck).
44
+
45
+ * FileLists can now pass a block to FileList#exclude to exclude files
46
+ based on calculated values.
47
+
48
+ * Added plain filename support to rule dependents (suggested by Nobu
49
+ Nakada).
50
+
51
+ * Added pathmap support to rule dependents. In other words, if a
52
+ pathmap format (beginning with a '%') is given as a Rake rule
53
+ dependent, then the name of the depend will be the name of the
54
+ target with the pathmap format applied.
55
+
56
+ * Added a 'tasks' method to a namespace to get a list of tasks
57
+ associated with the namespace.
58
+
59
+ * Added tar_command and zip_command options to the Package task.
60
+
61
+ * The clean task will no longer delete 'core' if it is a directory.
62
+
63
+ === Internal Rake Improvements
64
+
65
+ The following changes will are mainly internal improvements and
66
+ refactorings and have little effect on the end user. But they may be
67
+ of interest to the general public.
68
+
69
+ * Added rcov task and updated unit testing for better code coverage.
70
+
71
+ * Added a 'shame' task to the Rakefile.
72
+
73
+ * Added rake_extension to handle detection of extension collisions.
74
+
75
+ * Added a protected 'require "rubygems"' to test/test_application to
76
+ unbreak cruisecontrol.rb.
77
+
78
+ * Removed rake_dup. Now we just simply rescue a bad dup.
79
+
80
+ * Refactored the FileList reject logic to remove duplication.
81
+
82
+ * Removed if __FILE__ at the end of the rake.rb file.
83
+
84
+ == What is Rake
85
+
86
+ Rake is a build tool similar to the make program in many ways. But
87
+ instead of cryptic make recipes, Rake uses standard Ruby code to
88
+ declare tasks and dependencies. You have the full power of a modern
89
+ scripting language built right into your build tool.
90
+
91
+ == Availability
92
+
93
+ The easiest way to get and install rake is via RubyGems ...
94
+
95
+ gem install rake (you may need root/admin privileges)
96
+
97
+ Otherwise, you can get it from the more traditional places:
98
+
99
+ Home Page:: http://rake.rubyforge.org/
100
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
101
+
102
+ == Thanks
103
+
104
+ As usual, it was input from users that drove a alot of these changes.
105
+ The following people either contributed patches, made suggestions or
106
+ made otherwise helpful comments. Thanks to ...
107
+
108
+ * Payton Quackenbush -- For several error handling improvements.
109
+
110
+ * Glenn Vanderburg -- For finding and fixing the method name leak from
111
+ FileUtils.
112
+
113
+ * Joel VanderWerf -- for finding and fixing a bug in the handling of
114
+ multiple prerequisites.
115
+
116
+ * Tilman Sauerbeck -- For some enhancing FileList to support more
117
+ advanced file globbing.
118
+
119
+ * Nobu Nakada -- For suggesting plain file name support to rule dependents.
120
+
121
+ -- Jim Weirich
@@ -0,0 +1,47 @@
1
+ = Rake 0.7.3 Released
2
+
3
+ Rake version 0.7.3 is a minor release that includes some refactoring to better
4
+ support custom Rake applications.
5
+
6
+ == Changes
7
+
8
+ === New Features in Version 0.7.3
9
+
10
+ * Added the +init+ and +top_level+ methods to make the creation of custom Rake applications a bit easier. E.g.
11
+
12
+ gem 'rake', ">= 0.7.3"
13
+ require 'rake'
14
+
15
+ Rake.application.init('myrake')
16
+
17
+ task :default do
18
+ something_interesting
19
+ end
20
+
21
+ Rake.application.top_level
22
+
23
+ == What is Rake
24
+
25
+ Rake is a build tool similar to the make program in many ways. But instead of
26
+ cryptic make recipes, Rake uses standard Ruby code to declare tasks and
27
+ dependencies. You have the full power of a modern scripting language built
28
+ right into your build tool.
29
+
30
+ == Availability
31
+
32
+ The easiest way to get and install rake is via RubyGems ...
33
+
34
+ gem install rake (you may need root/admin privileges)
35
+
36
+ Otherwise, you can get it from the more traditional places:
37
+
38
+ Home Page:: http://rake.rubyforge.org/
39
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
40
+
41
+ == Thanks
42
+
43
+ As usual, it was input from users that drove a alot of these changes. The
44
+ following people either contributed patches, made suggestions or made
45
+ otherwise helpful comments. Thanks to ...
46
+
47
+ -- Jim Weirich
@@ -0,0 +1,114 @@
1
+ = Rake 0.8.0/0.8.1 Released
2
+
3
+ Rake version 0.8.0 is a new release of rake that includes serveral new
4
+ features.
5
+
6
+ == Changes
7
+
8
+ === New Features in Version 0.8.0
9
+
10
+ * Tasks can now receive command line parameters. See the examples
11
+ below for more details.
12
+
13
+ * Comments are limited to 80 columns on output, but full comments can
14
+ be seen by using the -D parameter. (feature suggested by Jamis
15
+ Buck).
16
+
17
+ * Explicit exit(n) calls will now set the exit status to n. (patch
18
+ provided by Stephen Touset).
19
+
20
+ * Rake is now compatible with Ruby 1.9.
21
+
22
+ Version 0.8.1 is a minor update that includes additional Ruby 1.9
23
+ compatibility fixes.
24
+
25
+ == What is Rake
26
+
27
+ Rake is a build tool similar to the make program in many ways. But
28
+ instead of cryptic make recipes, Rake uses standard Ruby code to
29
+ declare tasks and dependencies. You have the full power of a modern
30
+ scripting language built right into your build tool.
31
+
32
+ == Availability
33
+
34
+ The easiest way to get and install rake is via RubyGems ...
35
+
36
+ gem install rake (you may need root/admin privileges)
37
+
38
+ Otherwise, you can get it from the more traditional places:
39
+
40
+ Home Page:: http://rake.rubyforge.org/
41
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
42
+
43
+ == Task Argument Examples
44
+
45
+ Prior to version 0.8.0, rake was only able to handle command line
46
+ arguments of the form NAME=VALUE that were passed into Rake via the
47
+ ENV hash. Many folks had asked for some kind of simple command line
48
+ arguments, perhaps using "--" to separate regular task names from
49
+ argument values on the command line. The problem is that there was no
50
+ easy way to associate positional arguments on the command line with
51
+ different tasks. Suppose both tasks :a and :b expect a command line
52
+ argument: does the first value go with :a? What if :b is run first?
53
+ Should it then get the first command line argument.
54
+
55
+ Rake 0.8.0 solves this problem by explicitly passing values directly
56
+ to the tasks that need them. For example, if I had a release task
57
+ that required a version number, I could say:
58
+
59
+ rake release[0.8.0]
60
+
61
+ And the string "0.8.0" will be passed to the :release task. Multiple
62
+ arguments can be passed by separating them with a comma, for example:
63
+
64
+ rake name[john,doe]
65
+
66
+ Just a few words of caution. The rake task name and its arguments
67
+ need to be a single command line argument to rake. This generally
68
+ means no spaces. If spaces are needed, then the entire rake +
69
+ argument string should be quoted. Something like this:
70
+
71
+ rake "name[billy bob, smith]"
72
+
73
+ (Quoting rules vary between operating systems and shells, so make sure
74
+ you consult the proper docs for your OS/shell).
75
+
76
+ === Tasks that Expect Parameters
77
+
78
+ Parameters are only given to tasks that are setup to expect them. In
79
+ order to handle named parameters, the task declaration syntax for
80
+ tasks has been extended slightly.
81
+
82
+ For example, a task that needs a first name and last name might be
83
+ declared as:
84
+
85
+ task :name, :first_name, :last_name
86
+
87
+ The first argument is still the name of the task (:name in this case).
88
+ The next to argumements are the names of the parameters expected by
89
+ :name (:first_name and :last_name in the example).
90
+
91
+ To access the values of the paramters, the block defining the task
92
+ behaviour can now accept a second parameter:
93
+
94
+ task :name, :first_name, :last_name do |t, args|
95
+ puts "First name is #{args.first_name}"
96
+ puts "Last name is #{args.last_name}"
97
+ end
98
+
99
+ The first argument of the block "t" is always bound to the current
100
+ task object. The second argument "args" is an open-struct like object
101
+ that allows access to the task arguments. Extra command line
102
+ arguments to a task are ignored. Missing command line arguments are
103
+ given the nil value.
104
+
105
+ == Thanks
106
+
107
+ As usual, it was input from users that drove a alot of these changes. The
108
+ following people either contributed patches, made suggestions or made
109
+ otherwise helpful comments. Thanks to ...
110
+
111
+ * Jamis Buck (for comment formatting suggestions)
112
+ * Stephen Touset (for exit status patch).
113
+
114
+ -- Jim Weirich