rake 13.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/macos.yml +22 -0
  3. data/.github/workflows/ubuntu-rvm.yml +28 -0
  4. data/.github/workflows/ubuntu.yml +20 -0
  5. data/.github/workflows/windows.yml +20 -0
  6. data/CONTRIBUTING.rdoc +43 -0
  7. data/Gemfile +10 -0
  8. data/History.rdoc +2359 -0
  9. data/MIT-LICENSE +21 -0
  10. data/README.rdoc +155 -0
  11. data/Rakefile +41 -0
  12. data/bin/bundle +105 -0
  13. data/bin/console +7 -0
  14. data/bin/rake +29 -0
  15. data/bin/rdoc +29 -0
  16. data/bin/rubocop +29 -0
  17. data/bin/setup +6 -0
  18. data/doc/command_line_usage.rdoc +158 -0
  19. data/doc/example/Rakefile1 +38 -0
  20. data/doc/example/Rakefile2 +35 -0
  21. data/doc/example/a.c +6 -0
  22. data/doc/example/b.c +6 -0
  23. data/doc/example/main.c +11 -0
  24. data/doc/glossary.rdoc +42 -0
  25. data/doc/jamis.rb +592 -0
  26. data/doc/proto_rake.rdoc +127 -0
  27. data/doc/rake.1 +156 -0
  28. data/doc/rakefile.rdoc +622 -0
  29. data/doc/rational.rdoc +151 -0
  30. data/exe/rake +27 -0
  31. data/lib/rake.rb +71 -0
  32. data/lib/rake/application.rb +824 -0
  33. data/lib/rake/backtrace.rb +24 -0
  34. data/lib/rake/clean.rb +78 -0
  35. data/lib/rake/cloneable.rb +17 -0
  36. data/lib/rake/cpu_counter.rb +107 -0
  37. data/lib/rake/default_loader.rb +15 -0
  38. data/lib/rake/dsl_definition.rb +195 -0
  39. data/lib/rake/early_time.rb +22 -0
  40. data/lib/rake/ext/core.rb +26 -0
  41. data/lib/rake/ext/string.rb +176 -0
  42. data/lib/rake/file_creation_task.rb +25 -0
  43. data/lib/rake/file_list.rb +435 -0
  44. data/lib/rake/file_task.rb +54 -0
  45. data/lib/rake/file_utils.rb +134 -0
  46. data/lib/rake/file_utils_ext.rb +134 -0
  47. data/lib/rake/invocation_chain.rb +57 -0
  48. data/lib/rake/invocation_exception_mixin.rb +17 -0
  49. data/lib/rake/late_time.rb +18 -0
  50. data/lib/rake/linked_list.rb +112 -0
  51. data/lib/rake/loaders/makefile.rb +54 -0
  52. data/lib/rake/multi_task.rb +14 -0
  53. data/lib/rake/name_space.rb +38 -0
  54. data/lib/rake/packagetask.rb +222 -0
  55. data/lib/rake/phony.rb +16 -0
  56. data/lib/rake/private_reader.rb +21 -0
  57. data/lib/rake/promise.rb +100 -0
  58. data/lib/rake/pseudo_status.rb +30 -0
  59. data/lib/rake/rake_module.rb +67 -0
  60. data/lib/rake/rake_test_loader.rb +27 -0
  61. data/lib/rake/rule_recursion_overflow_error.rb +20 -0
  62. data/lib/rake/scope.rb +43 -0
  63. data/lib/rake/task.rb +433 -0
  64. data/lib/rake/task_argument_error.rb +8 -0
  65. data/lib/rake/task_arguments.rb +109 -0
  66. data/lib/rake/task_manager.rb +328 -0
  67. data/lib/rake/tasklib.rb +12 -0
  68. data/lib/rake/testtask.rb +224 -0
  69. data/lib/rake/thread_history_display.rb +49 -0
  70. data/lib/rake/thread_pool.rb +163 -0
  71. data/lib/rake/trace_output.rb +23 -0
  72. data/lib/rake/version.rb +10 -0
  73. data/lib/rake/win32.rb +51 -0
  74. data/rake.gemspec +36 -0
  75. metadata +132 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 9da686fceba23353d1a9b4263d039b67c5e1ac76055165091a21e9c0cddbeffa
4
+ data.tar.gz: 3e650670e2aa77cd440555ac8283f14df42e465e3771c2a5e1da961de2dde444
5
+ SHA512:
6
+ metadata.gz: 4d555cfe77533730f79bad9d9a430dadd800df2986a32d8885dc078f0c4b481b1c4b9ea99d4a637c662e860ec75a8a74f10a4374d7b00aaf6631f09666b1720b
7
+ data.tar.gz: '03820d6035572fa9f3805f3190672265acd52dcfbc8bf8558351e1f4124031178ba70345647fae34a5770eaf32accb4ea337154f57055efbed2758c8862357f0'
@@ -0,0 +1,22 @@
1
+ name: macos
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: macos-latest
8
+ strategy:
9
+ matrix:
10
+ ruby: [ '2.6.x', '2.5.x', '2.4.x', '2.3.x' ]
11
+ steps:
12
+ - uses: actions/checkout@master
13
+ - name: Set up Ruby
14
+ uses: actions/setup-ruby@v1
15
+ with:
16
+ version: ${{ matrix.ruby }}
17
+ - name: Install dependencies
18
+ run: gem install minitest
19
+ - name: Run test
20
+ env:
21
+ COVERALLS: "yes"
22
+ run: ruby -Ilib exe/rake
@@ -0,0 +1,28 @@
1
+ name: ubuntu-rvm
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ matrix:
10
+ ruby: [ 'jruby-head', 'jruby-9.2.8.0', 'ruby-head', '2.2.10' ]
11
+ steps:
12
+ - uses: actions/checkout@master
13
+ - name: Set up RVM
14
+ run: |
15
+ curl -sSL https://get.rvm.io | bash
16
+ - name: Set up Ruby
17
+ run: |
18
+ source $HOME/.rvm/scripts/rvm
19
+ rvm install ${{ matrix.ruby }} --binary
20
+ rvm --default use ${{ matrix.ruby }}
21
+ - name: Install dependencies
22
+ run: |
23
+ source $HOME/.rvm/scripts/rvm
24
+ gem install minitest
25
+ - name: Run test
26
+ run: |
27
+ source $HOME/.rvm/scripts/rvm
28
+ ruby -Ilib exe/rake
@@ -0,0 +1,20 @@
1
+ name: ubuntu
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ matrix:
10
+ ruby: [ '2.6.x', '2.5.x', '2.4.x', '2.3.x' ]
11
+ steps:
12
+ - uses: actions/checkout@master
13
+ - name: Set up Ruby
14
+ uses: actions/setup-ruby@v1
15
+ with:
16
+ version: ${{ matrix.ruby }}
17
+ - name: Install dependencies
18
+ run: gem install minitest
19
+ - name: Run test
20
+ run: ruby -Ilib exe/rake
@@ -0,0 +1,20 @@
1
+ name: windows
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: windows-latest
8
+ strategy:
9
+ matrix:
10
+ ruby: [ '2.6.x', '2.5.x', '2.4.x' ]
11
+ steps:
12
+ - uses: actions/checkout@master
13
+ - name: Set up Ruby
14
+ uses: actions/setup-ruby@v1
15
+ with:
16
+ version: ${{ matrix.ruby }}
17
+ - name: Install dependencies
18
+ run: gem install minitest
19
+ - name: Run test
20
+ run: ruby -Ilib exe/rake
@@ -0,0 +1,43 @@
1
+ = Source Repository
2
+
3
+ Rake is currently hosted at github. The github web page is
4
+ https://github.com/ruby/rake . The public git clone URL is
5
+
6
+ https://github.com/ruby/rake.git
7
+
8
+ = Running the Rake Test Suite
9
+
10
+ If you wish to run the unit and functional tests that come with Rake:
11
+
12
+ * +cd+ into the top project directory of rake.
13
+ * Install gem dependency using bundler:
14
+
15
+ $ bundle install # Install bundler, minitest and rdoc
16
+
17
+ * Run the test suite
18
+
19
+ $ rake
20
+
21
+ = Rubocop
22
+
23
+ Rake uses Rubocop to enforce a consistent style on new changes being
24
+ proposed. You can check your code with Rubocop using:
25
+
26
+ $ ./bin/rubocop
27
+
28
+ = Issues and Bug Reports
29
+
30
+ Feel free to submit commits or feature requests. If you send a patch,
31
+ remember to update the corresponding unit tests. In fact, I prefer
32
+ new feature to be submitted in the form of new unit tests.
33
+
34
+ For other information, feel free to ask on the ruby-talk mailing list.
35
+
36
+ If you have found a bug in rake please try with the latest version of rake
37
+ before filing an issue. Also check History.rdoc for bug fixes that may have
38
+ addressed your issue.
39
+
40
+ When submitting pull requests please check the rake Travis-CI page for test
41
+ failures:
42
+
43
+ https://travis-ci.org/ruby/rake
data/Gemfile ADDED
@@ -0,0 +1,10 @@
1
+ source "https://rubygems.org"
2
+
3
+ gemspec
4
+
5
+ group :development do
6
+ gem "bundler"
7
+ gem "minitest"
8
+ gem "coveralls"
9
+ gem "rubocop"
10
+ end
@@ -0,0 +1,2359 @@
1
+ === 13.0.0
2
+
3
+ ==== Enhancements
4
+
5
+ * Follows recent changes on keyword arguments in ruby 2.7.
6
+ Pull Request #326 by nobu
7
+ * Make `PackageTask` be able to omit parent directory while packing files
8
+ Pull Request #310 by tonytonyjan
9
+ * Add order only dependency
10
+ Pull Request #269 by take-cheeze
11
+
12
+ ==== Compatibility changes
13
+
14
+ * Drop old ruby versions(< 2.2)
15
+
16
+ === 12.3.3
17
+
18
+ ==== Bug fixes
19
+
20
+ * Use the application's name in error message if a task is not found.
21
+ Pull Request #303 by tmatilai
22
+
23
+ ==== Enhancements:
24
+
25
+ * Use File.open explicitly.
26
+
27
+ === 12.3.2
28
+
29
+ ==== Bug fixes
30
+
31
+ * Fixed test fails caused by 2.6 warnings.
32
+ Pull Request #297 by hsbt
33
+
34
+ ==== Enhancements:
35
+
36
+ * Rdoc improvements.
37
+ Pull Request #293 by colby-swandale
38
+ * Improve multitask performance.
39
+ Pull Request #273 by jsm
40
+ * Add alias `prereqs`.
41
+ Pull Request #268 by take-cheeze
42
+
43
+ === 12.3.1
44
+
45
+ ==== Bug fixes
46
+
47
+ * Support did_you_mean >= v1.2.0 which has a breaking change on formatters.
48
+ Pull request #262 by FUJI Goro.
49
+
50
+ ==== Enhancements:
51
+
52
+ * Don't run task if it depends on already invoked but failed task.
53
+ Pull request #252 by Gonzalo Rodriguez.
54
+ * Make space trimming consistent for all task arguments.
55
+ Pull request #259 by Gonzalo Rodriguez.
56
+ * Removes duplicated inclusion of Rake::DSL in tests.
57
+ Pull request #254 by Gonzalo Rodriguez.
58
+ * Re-raise a LoadError that didn't come from require in the test loader.
59
+ Pull request #250 by Dylan Thacker-Smith.
60
+
61
+ === 12.3.0
62
+
63
+ ==== Compatibility Changes
64
+
65
+ * Bump `required_ruby_version` to Ruby 2.0.0. Rake has already
66
+ removed support for Ruby 1.9.x.
67
+
68
+ ==== Enhancements:
69
+
70
+ * Support `test-bundled-gems` task on ruby core.
71
+
72
+ === 12.2.1
73
+
74
+ ==== Bug fixes
75
+
76
+ * Fixed to break Capistrano::Application on capistrano3.
77
+
78
+ === 12.2.0
79
+
80
+ ==== Enhancements:
81
+
82
+ * Make rake easier to use as a library
83
+ Pull request #211 by @drbrain
84
+ * Fix quadratic performance in FileTask#out_of_date?
85
+ Pull request #224 by @doudou
86
+ * Clarify output when printing nested exception traces
87
+ Pull request #232 by @urbanautomaton
88
+
89
+ ==== Bug fixes
90
+
91
+ * Account for a file that match 2 or more patterns.
92
+ Pull request #231 by @styd
93
+
94
+ === 12.1.0
95
+
96
+ ==== Enhancements:
97
+
98
+ * Added did_you_mean feature for invalid rake task.
99
+ Pull request #221 by @xtina-starr
100
+ * Enabled to dependency chained by extensions. Pull request #39 by Petr Skocik.
101
+ * Make all of string literals to frozen objects on Ruby 2.4 or later.
102
+
103
+ ==== Bug fixes
104
+
105
+ * Typo fixes in rakefile.rdoc. Pull request #180 by Yuta Kurotaki.
106
+ * Fix unexpected behavior of file task with dryrun option.
107
+ Pull request #183 by @aycabta.
108
+ * Make LoadError from running tests more obvious. Pull request #195
109
+ by Eric Hodel.
110
+ * Fix unexpected TypeError with hash style option. Pull request #202
111
+ by Kuniaki IGARASHI.
112
+
113
+ === 12.0.0
114
+
115
+ ==== Compatibility Changes
116
+
117
+ * Removed arguments on clear #157 by Jesse Bowes
118
+ * Removed `rake/contrib` packages. These are extracted to `rake-contrib` gem.
119
+ * Removed deprecated method named `last\_comment`.
120
+
121
+ ==== Enhancements:
122
+
123
+ * Re-use trace option on `cleanup` task. #164 by Brian Henderson
124
+ * Actions adore keyword arguments #174 by Josh Cheek
125
+ * Rake::TaskArguments#key? alias of #has_key? #175 by Paul Annesley
126
+
127
+ === 11.3.0 / 2016-09-20
128
+
129
+ ==== Enhancements:
130
+
131
+ * Remove to reference `Fixnum` constant. Pull request #160 by nobu
132
+
133
+ === 11.2.2 / 2016-06-12
134
+
135
+ ==== Bug fixes
136
+
137
+ * Fix unexpected behavior with multiple dependencies on Rake::TestTask
138
+
139
+ === 11.2.1 / 2016-06-12
140
+
141
+ ==== Bug fixes
142
+
143
+ * Fix regression of dependencies handling on Rake::TestTask. Report #139
144
+
145
+ === 11.2.0 / 2016-06-11
146
+
147
+ ==== Bug fixes
148
+
149
+ * Fix unexpected cut-out behavior on task description using triple dots
150
+ and exclamation. Report #106 from Stephan Kämper and Pull request #134 by Lee
151
+ * Fix empty argument assignment with `with_defaults` option. Pull request #135
152
+ by bakunyo
153
+ * Ignore to use `hwprefs` on Darwin platform. Use sysctl now. Report #128
154
+
155
+ ==== Enhancements
156
+
157
+ * Spawn options for sh Pull equest #138 by Eric Hodel.
158
+ * Allow to specify dependencies(prerequisites) for Rake::TestTask
159
+ Pull request #117 by Tim Maslyuchenko
160
+ * Use Bundler task instead of hoe for gem release.
161
+ * Remove explicitly load to rubygems for Ruby 1.8.
162
+ * Unify to declare `Rake::VERSION`.
163
+ * Support xz format for PackageTask.
164
+
165
+ === 11.1.2 / 2016-03-28
166
+
167
+ ==== Bug fixes
168
+
169
+ * Remove `-W` option when Rake::TestTask#verbose enabled. It's misunderstanding
170
+ specification change with Rake 11. Partly revert #67
171
+
172
+ === 11.1.1 / 2016-03-14
173
+
174
+ ==== Bug fixes
175
+
176
+ * Use `-W` instead of `--verbose` when Rake::TestTask#verbose enabled.
177
+ JRuby doesn't have `--verbose` option.
178
+
179
+ === 11.1.0 / 2016-03-11
180
+
181
+ ==== Compatibility Changes
182
+
183
+ * Revert to remove `last\_comment`. It will remove Rake 12.
184
+
185
+ === 11.0.1 / 2016-03-09
186
+
187
+ ==== Bug fixes
188
+
189
+ * Fixed packaging manifest.
190
+
191
+ === 11.0.0 / 2016-03-09
192
+
193
+ ==== Bug fixes
194
+
195
+ * Correctly handle bad encoding in exception messages. Pull request #113
196
+ by Tomer Brisker
197
+ * Fix verbose option at TestTask. Pull request #67 by Mike Blumtritt
198
+
199
+ ==== Enhancements
200
+
201
+ * Make FileList#exclude more analogous to FileList#include.
202
+ * Use IO.open instead of Open3.popen3 for CPU counter.
203
+ * Make Rake::Task#already_invoked publicly accessible.
204
+ Pull request #93 by Joe Rafaniello
205
+ * Lookup prerequisites with same name outside of scope instead of
206
+ matching self. Pull request #96 by Sandy Vanderbleek
207
+ * Make FileList#pathmap behave like String#pathmap.
208
+ Pull request #61 by Daniel Tamai
209
+ * Add fetch method to task arguments.
210
+ Pull request #12 by Chris Keathley
211
+ * Use ruby warnings by default. Pull request #97 by Harold Giménez
212
+
213
+ ==== Compatibility Changes
214
+
215
+ * Removed to support Ruby 1.8.x
216
+ * Removed constant named `RAKEVERSION`
217
+ * Removed Rake::AltSystem
218
+ * Removed Rake::RubyForgePublisher
219
+ * Removed Rake::TaskManager#last\_comment. Use last\_description.
220
+ * Removed Rake::TaskLib#paste
221
+ * Removed Top-level SshDirPublisher, SshFreshDirPublisher, SshFilePublisher
222
+ and CompositePublisher from lib/rake/contrib/publisher.rb
223
+ * Removed "rake/runtest.rb"
224
+
225
+ === 10.5.0 / 2016-01-13
226
+
227
+ ==== Enhancements
228
+
229
+ * Removed monkey patching for Ruby 1.8. Pull request #46 by Pablo Herrero.
230
+ * Inheritance class of Rake::FileList returns always self class.
231
+ Pull request #74 by Thomas Scholz
232
+
233
+ === 10.4.2 / 2014-12-02
234
+
235
+ ==== Bug fixes
236
+
237
+ * Rake no longer edits ARGV. This allows you to re-exec rake from a rake
238
+ task. Pull requset #9 by Matt Palmer.
239
+ * Documented how Rake::DSL#desc handles sentences in task descriptions.
240
+ Issue #7 by Raza Sayed.
241
+ * Fixed test error on 1.9.3 with legacy RubyGems. Issue #8 by Matt Palmer.
242
+ * Deleted duplicated History entry. Pull request #10 by Yuji Yamamoto.
243
+
244
+ === 10.4.1 / 2014-12-01
245
+
246
+ ==== Bug fixes
247
+
248
+ * Reverted fix for #277 as it caused numerous issues for rake users.
249
+ rails/spring issue #366 by Gustavo Dutra.
250
+
251
+ === 10.4.0 / 2014-11-22
252
+
253
+ ==== Enhancements
254
+
255
+ * Upgraded to minitest 5. Pull request #292 by Teo Ljungberg.
256
+ * Added support for Pathname in rake tasks. Pull request #271 by Randy
257
+ Coulman.
258
+ * Rake now ignores falsy dependencies which allows for easier programmatic
259
+ creation of tasks. Pull request #273 by Manav.
260
+ * Rake no longer edits ARGV. This allows you to re-exec rake from a rake
261
+ task. Issue #277 by Matt Palmer.
262
+ * Etc.nprocessors is used for counting the number of CPUs.
263
+
264
+ ==== Bug fixes
265
+
266
+ * Updated rake manpage. Issue #283 by Nathan Long, pull request #291 by
267
+ skittleys.
268
+ * Add Rake::LATE to allow rebuilding of files that depend on deleted files.
269
+ Bug #286, pull request #287 by David Grayson.
270
+ * Fix relinking of files when repackaging. Bug #276 by Muenze.
271
+ * Fixed some typos. Pull request #280 by Jed Northridge.
272
+ * Try counting CPUs via cpuinfo if host_os was not matched. Pull request
273
+ #282 by Edouard B.
274
+
275
+ === 10.3.2 / 2014-05-15
276
+
277
+ ==== Bug fixes
278
+
279
+ * Rake no longer infinitely loops when showing exception causes that refer to
280
+ each other. Bug #272 by Chris Bandy.
281
+ * Fixed documentation typos. Bug #275 by Jake Worth.
282
+
283
+ === 10.3.1 / 2014-04-17
284
+
285
+ ==== Bug fixes
286
+
287
+ * Really stop reporting an error when cleaning already-deleted files. Pull
288
+ request #269 by Randy Coulman
289
+ * Fixed infinite loop when cleaning already-deleted files on windows.
290
+
291
+ === 10.3 / 2014-04-15
292
+
293
+ ==== Enhancements
294
+
295
+ * Added --build-all option to rake which treats all file prerequisites as
296
+ out-of-date. Pull request #254 by Andrew Gilbert.
297
+ * Added Rake::NameSpace#scope. Issue #263 by Jon San Miguel.
298
+
299
+ ==== Bug fixes
300
+
301
+ * Suppress org.jruby package files in rake error messages for JRuby users.
302
+ Issue #213 by Charles Nutter.
303
+ * Fixed typo, removed extra "h". Pull request #267 by Hsing-Hui Hsu.
304
+ * Rake no longer reports an error when cleaning already-deleted files. Pull
305
+ request #266 by Randy Coulman.
306
+ * Consume stderr while determining CPU count to avoid hang. Issue #268 by
307
+ Albert Sun.
308
+
309
+ === 10.2.2 / 2014-03-27
310
+
311
+ ==== Bug fixes
312
+
313
+ * Restored Ruby 1.8.7 compatibility
314
+
315
+ === 10.2.1 / 2014-03-25
316
+
317
+ ==== Bug fixes
318
+
319
+ * File tasks including a ':' are now top-level tasks again. Issue #262 by
320
+ Josh Holtrop.
321
+ * Use sysctl for CPU count for all BSDs. Pull request #261 by Joshua Stein.
322
+ * Fixed CPU detection for unknown platforms.
323
+
324
+ === 10.2.0 / 2014-03-24
325
+
326
+ ==== Enhancements
327
+
328
+ * Rake now requires Ruby 1.9 or newer. For me, this is a breaking change, but
329
+ it seems that Jim planned to release it with Rake 10.2. See also pull
330
+ request #247 by Philip Arndt.
331
+ * Rake now allows you to declare tasks under a namespace like:
332
+
333
+ task 'a:b' do ... end
334
+
335
+ Pull request #232 by Judson Lester.
336
+ * Task#source defaults to the first prerequisite in non-rule tasks. Pull
337
+ request #215 by Avdi Grimm.
338
+ * Rake now automatically rebuilds and reloads imported files. Pull request
339
+ #209 by Randy Coulman.
340
+ * The rake task arguments can contain escaped commas. Pull request #214 by
341
+ Filip Hrbek.
342
+ * Rake now prints the exception class on errors. Patch #251 by David Cornu.
343
+
344
+ ==== Bug fixes
345
+
346
+ * Fixed typos. Pull request #256 by Valera Rozuvan, #250 via Jake Worth, #260
347
+ by Zachary Scott.
348
+ * Fixed documentation for calling tasks with arguments. Pull request #235 by
349
+ John Varghese.
350
+ * Clarified `rake -f` usage message. Pull request #252 by Marco Pfatschbacher.
351
+ * Fixed a test failure on windows. Pull request #231 by Hiroshi Shirosaki.
352
+ * Fixed corrupted rake.1.gz. Pull request #225 by Michel Boaventura.
353
+ * Fixed bug in can\_detect\_signals? in test. Patch from #243 by Alexey
354
+ Borzenkov.
355
+
356
+ === 10.1.1
357
+
358
+ * Use http://github.com/jimweirich/rake instead of http://rake.rubyforge.org for
359
+ canonical project url.
360
+
361
+ === 10.1.0
362
+
363
+ ==== Changes
364
+
365
+ ===== New Features
366
+
367
+ * Add support for variable length task argument lists. If more actual
368
+ arguments are supplied than named arguments, then the extra
369
+ arguments values will be in args.extras.
370
+
371
+ * Application name is not displayed in the help banner. (Previously
372
+ "rake" was hardcoded, now rake-based applications can display their
373
+ own names).
374
+
375
+ ===== Bug Fixes
376
+
377
+ Bug fixes include:
378
+
379
+ * Fix backtrace suppression issues.
380
+
381
+ * Rules now explicit get task arguments passed to them.
382
+
383
+ * Rename FileList#exclude? to FileList#exclude\_from\_list? to avoid
384
+ conflict with new Rails method.
385
+
386
+ * Clean / Clobber tasks now report failure to remove files.
387
+
388
+ * Plus heaps of internal code cleanup.
389
+
390
+ ==== Thanks
391
+
392
+ As usual, it was input from users that drove a lot of these changes.
393
+ The following people contributed patches, made suggestions or made
394
+ otherwise helpful comments. Thanks to ...
395
+
396
+ * Michael Nikitochkin (general code cleanup)
397
+ * Vipul A M (general code cleanup)
398
+ * Dennis Bell (variable length task argument lists)
399
+ * Jacob Swanner (rules arguments)
400
+ * Rafael Rosa Fu (documentation typo)
401
+ * Stuart Nelson (install.rb fixes)
402
+ * Lee Hambley (application name in help banner)
403
+
404
+ -- Jim Weirich
405
+
406
+ === 10.0.3
407
+
408
+ "Jim, when will Rake reach version 1.0?"
409
+
410
+ Over the past several years I've been asked that question at
411
+ conferences, panels and over twitter. Due to historical reasons (or
412
+ maybe just plain laziness) Rake has (incorrectly) been treating the
413
+ second digit of the version as the major release number. So in my head
414
+ Rake was already at version 9.
415
+
416
+ Well, it's time to fix things. This next version of Rake drops old,
417
+ crufty, backwards compatibility hacks such as top level constants, DSL
418
+ methods defined in Object and numerous other features that are just no
419
+ longer desired. It's also time to drop the leading zero from the
420
+ version number as well and call this new version of rake what it
421
+ really is: Version 10.
422
+
423
+ So, welcome to Rake 10.0!
424
+
425
+ Rake 10 is actually feature identical to the latest version of Rake 9
426
+ (that would be the version spelled 0.9.3), *except* that Rake 10 drops
427
+ all the sundry deprecated features that have accumulated over the years.
428
+
429
+ If your Rakefile is up to date and current with all the new features
430
+ of Rake 10, you are ready to go. If your Rakefile still uses a few
431
+ deprecated feeatures, feel free to use Rake 9 (0.9.3) with the same
432
+ feature set. Just be aware that future features will be in Rake 10
433
+ family line.
434
+
435
+ ==== Changes
436
+
437
+ As mentioned above, there are no new features in Rake 10. However,
438
+ there are a number of features missing:
439
+
440
+ * Classic namespaces are now gone. Rake is no longer able to reflect
441
+ the options settings in the global variables ($rakefile, $show\_tasks,
442
+ $show\_prereqs, $trace, $dryrun and $silent). The
443
+ <tt>--classic-namespace</tt> option is no longer supported.
444
+
445
+ * Global constants are no longer supported. This includes
446
+ <tt>Task</tt>, <tt>FileTask</tt>, <tt>FileCreationTask</tt> and
447
+ <tt>RakeApp</tt>). The constant missing hook to warn about using
448
+ global rake constants has been removed.
449
+
450
+ * The Rake DSL methods (task, file, directory, etc) are in their own
451
+ module (Rake::DSL). The stub versions of these methods (that printed
452
+ warnings) in Object have been removed. However, the DSL methods are
453
+ added to the top-level <tt>main</tt> object. Since <tt>main</tt> is
454
+ not in the inheritance tree, the presence of the DSL methods in main
455
+ should be low impact on other libraries.
456
+
457
+ If you want to use the Rake DSL commands from your own code, just
458
+ include <tt>Rake::DSL</tt> into your own classes and modules.
459
+
460
+ * The deprecated syntax for task arguments (the one using
461
+ <tt>:needs</tt>) has been removed.
462
+
463
+ * The <tt>--reduce-compat</tt> flag has been removed (it's not needed
464
+ anymore).
465
+
466
+ * The deprecated <tt>rake/sys.rb</tt> library has been removed.
467
+
468
+ * The deprecated <tt>rake/rdoctask.rb</tt> library has been removed.
469
+ RDoc supplies its own rake task now.
470
+
471
+ * The deprecated <tt>rake/gempackagetask.rb</tt> library has been
472
+ removed. Gem supplies its own package task now.
473
+
474
+ There is one small behavioral change:
475
+
476
+ * Non-file tasks now always report the current time as their time
477
+ stamp. This is different from the previous behavior where non-file
478
+ tasks reported current time only if there were no prerequisites, and
479
+ the max prerequisite timestamp otherwise. This lead to inconsistent
480
+ and surprising behavior when adding prerequisites to tasks that in
481
+ turn were prequisites to file tasks. The new behavior is more
482
+ consistent and predictable.
483
+
484
+ ==== Changes (from 0.9.3, 0.9.4, 0.9.5)
485
+
486
+ Since Rake 10 includes the changes from the last version of Rake 9,
487
+ we'll repeat the changes for versions 0.9.3 through 0.9.5 here.
488
+
489
+ ===== New Features (in 0.9.3)
490
+
491
+ * Multitask tasks now use a thread pool. Use -j to limit the number of
492
+ available threads.
493
+
494
+ * Use -m to turn regular tasks into multitasks (use at your own risk).
495
+
496
+ * You can now do "Rake.add_rakelib 'dir'" in your Rakefile to
497
+ programatically add rake task libraries.
498
+
499
+ * You can specific backtrace suppression patterns (see
500
+ --suppress-backtrace)
501
+
502
+ * Directory tasks can now take prerequisites and actions
503
+
504
+ * Use --backtrace to request a full backtrace without the task trace.
505
+
506
+ * You can say "--backtrace=stdout" and "--trace=stdout" to route trace
507
+ output to standard output rather than standard error.
508
+
509
+ * Optional 'phony' target (enable with 'require 'rake/phony'") for
510
+ special purpose builds.
511
+
512
+ * Task#clear now clears task comments as well as actions and
513
+ prerequisites. Task#clear_comment will specifically target comments.
514
+
515
+ * The --all option will force -T and -D to consider all the tasks,
516
+ with and without descriptions.
517
+
518
+ ===== Bug Fixes (in 0.9.3)
519
+
520
+ * Semi-colons in windows rakefile paths now work.
521
+
522
+ * Improved Control-C support when invoking multiple test suites.
523
+
524
+ * egrep method now reads files in text mode (better support for
525
+ Windows)
526
+
527
+ * Better deprecation line number reporting.
528
+
529
+ * The -W option now works with all tasks, whether they have a
530
+ description or not.
531
+
532
+ * File globs in rake should not be sorted alphabetically, independent
533
+ of file system and platform.
534
+
535
+ * Numerous internal improvements.
536
+
537
+ * Documentation typos and fixes.
538
+
539
+ ===== Bug Fixes (in 0.9.4)
540
+
541
+ * Exit status with failing tests is not correctly set to non-zero.
542
+
543
+ * Simplified syntax for phony task (for older versions of RDoc).
544
+
545
+ * Stand alone FileList usage gets glob function (without loading in
546
+ extra dependencies)
547
+
548
+ ===== Bug Fixes (in 0.9.5)
549
+
550
+ * --trace and --backtrace no longer swallow following task names.
551
+
552
+ ==== Thanks
553
+
554
+ As usual, it was input from users that drove a lot of these changes. The
555
+ following people contributed patches, made suggestions or made
556
+ otherwise helpful comments. Thanks to ...
557
+
558
+ * Aaron Patterson
559
+ * Dylan Smith
560
+ * Jo Liss
561
+ * Jonas Pfenniger
562
+ * Kazuki Tsujimoto
563
+ * Michael Bishop
564
+ * Michael Elufimov
565
+ * NAKAMURA Usaku
566
+ * Ryan Davis
567
+ * Sam Grönblom
568
+ * Sam Phippen
569
+ * Sergio Wong
570
+ * Tay Ray Chuan
571
+ * grosser
572
+ * quix
573
+
574
+ Also, many thanks to Eric Hodel for assisting with getting this release
575
+ out the door.
576
+
577
+ -- Jim Weirich
578
+
579
+ === 10.0.2
580
+
581
+ ==== Changes
582
+
583
+ ===== Bug Fixes
584
+
585
+ * --trace and --backtrace no longer swallow following task names.
586
+
587
+ ==== Thanks
588
+
589
+ As usual, it was input from users that drove a lot of these changes. The
590
+ following people contributed patches, made suggestions or made
591
+ otherwise helpful comments. Thanks to ...
592
+
593
+ * Aaron Patterson
594
+ * Dylan Smith
595
+ * Jo Liss
596
+ * Jonas Pfenniger
597
+ * Kazuki Tsujimoto
598
+ * Michael Bishop
599
+ * Michael Elufimov
600
+ * NAKAMURA Usaku
601
+ * Ryan Davis
602
+ * Sam Grönblom
603
+ * Sam Phippen
604
+ * Sergio Wong
605
+ * Tay Ray Chuan
606
+ * grosser
607
+ * quix
608
+
609
+ Also, many thanks to Eric Hodel for assisting with getting this release
610
+ out the door.
611
+
612
+ -- Jim Weirich
613
+
614
+ === 10.0.1
615
+
616
+ ==== Changes
617
+
618
+ ===== Bug Fixes
619
+
620
+ * Exit status with failing tests is not correctly set to non-zero.
621
+
622
+ * Simplified syntax for phony task (for older versions of RDoc).
623
+
624
+ * Stand alone FileList usage gets glob function (without loading in
625
+ extra dependencies)
626
+
627
+ ==== Thanks
628
+
629
+ As usual, it was input from users that drove a lot of these changes. The
630
+ following people contributed patches, made suggestions or made
631
+ otherwise helpful comments. Thanks to ...
632
+
633
+ * Aaron Patterson
634
+ * Dylan Smith
635
+ * Jo Liss
636
+ * Jonas Pfenniger
637
+ * Kazuki Tsujimoto
638
+ * Michael Bishop
639
+ * Michael Elufimov
640
+ * NAKAMURA Usaku
641
+ * Ryan Davis
642
+ * Sam Grönblom
643
+ * Sam Phippen
644
+ * Sergio Wong
645
+ * Tay Ray Chuan
646
+ * grosser
647
+ * quix
648
+
649
+ Also, many thanks to Eric Hodel for assisting with getting this release
650
+ out the door.
651
+
652
+ -- Jim Weirich
653
+
654
+ === 10.0.0
655
+
656
+ "Jim, when will Rake reach version 1.0?"
657
+
658
+ Over the past several years I've been asked that question at
659
+ conferences, panels and over twitter. Due to historical reasons (or
660
+ maybe just plain laziness) Rake has (incorrectly) been treating the
661
+ second digit of the version as the major release number. So in my head
662
+ Rake was already at version 9.
663
+
664
+ Well, it's time to fix things. This next version of Rake drops old,
665
+ crufty, backwards compatibility hacks such as top level constants, DSL
666
+ methods defined in Object and numerous other features that are just no
667
+ longer desired. It's also time to drop the leading zero from the
668
+ version number as well and call this new version of rake what it
669
+ really is: Version 10.
670
+
671
+ So, welcome to Rake 10.0!
672
+
673
+ Rake 10 is actually feature identical to the latest version of Rake 9
674
+ (that would be the version spelled 0.9.3), *except* that Rake 10 drops
675
+ all the sundry deprecated features that have accumulated over the years.
676
+
677
+ If your Rakefile is up to date and current with all the new features
678
+ of Rake 10, you are ready to go. If your Rakefile still uses a few
679
+ deprecated feeatures, feel free to use Rake 9 (0.9.3) with the same
680
+ feature set. Just be aware that future features will be in Rake 10
681
+ family line.
682
+
683
+ ==== Changes in 10.0
684
+
685
+ As mentioned above, there are no new features in Rake 10. However,
686
+ there are a number of features missing:
687
+
688
+ * Classic namespaces are now gone. Rake is no longer able to reflect
689
+ the options settings in the global variables ($rakefile, $show\_tasks,
690
+ $show\_prereqs, $trace, $dryrun and $silent). The
691
+ <tt>--classic-namespace</tt> option is no longer supported.
692
+
693
+ * Global constants are no longer supported. This includes
694
+ <tt>Task</tt>, <tt>FileTask</tt>, <tt>FileCreationTask</tt> and
695
+ <tt>RakeApp</tt>). The constant missing hook to warn about using
696
+ global rake constants has been removed.
697
+
698
+ * The Rake DSL methods (task, file, directory, etc) are in their own
699
+ module (Rake::DSL). The stub versions of these methods (that printed
700
+ warnings) in Object have been removed. However, the DSL methods are
701
+ added to the top-level <tt>main</tt> object. Since <tt>main</tt> is
702
+ not in the inheritance tree, the presence of the DSL methods in main
703
+ should be low impact on other libraries.
704
+
705
+ If you want to use the Rake DSL commands from your own code, just
706
+ include <tt>Rake::DSL</tt> into your own classes and modules.
707
+
708
+ * The deprecated syntax for task arguments (the one using
709
+ <tt>:needs</tt>) has been removed.
710
+
711
+ * The <tt>--reduce-compat</tt> flag has been removed (it's not needed
712
+ anymore).
713
+
714
+ * The deprecated <tt>rake/sys.rb</tt> library has been removed.
715
+
716
+ * The deprecated <tt>rake/rdoctask.rb</tt> library has been removed.
717
+ RDoc supplies its own rake task now.
718
+
719
+ * The deprecated <tt>rake/gempackagetask.rb</tt> library has been
720
+ removed. Gem supplies its own package task now.
721
+
722
+ There is one small behavioral change:
723
+
724
+ * Non-file tasks now always report the current time as their time
725
+ stamp. This is different from the previous behavior where non-file
726
+ tasks reported current time only if there were no prerequisites, and
727
+ the max prerequisite timestamp otherwise. This lead to inconsistent
728
+ and surprising behavior when adding prerequisites to tasks that in
729
+ turn were prequisites to file tasks. The new behavior is more
730
+ consistent and predictable.
731
+
732
+ ==== Changes (from 0.9.3)
733
+
734
+ Since Rake 10 includes the changes from the last version of Rake 9,
735
+ we'll repeat the changes for version 0.9.3 here.
736
+
737
+ ===== New Features
738
+
739
+ * Multitask tasks now use a thread pool. Use -j to limit the number of
740
+ available threads.
741
+
742
+ * Use -m to turn regular tasks into multitasks (use at your own risk).
743
+
744
+ * You can now do "Rake.add_rakelib 'dir'" in your Rakefile to
745
+ programatically add rake task libraries.
746
+
747
+ * You can specific backtrace suppression patterns (see
748
+ --suppress-backtrace)
749
+
750
+ * Directory tasks can now take prerequisites and actions
751
+
752
+ * Use --backtrace to request a full backtrace without the task trace.
753
+
754
+ * You can say "--backtrace=stdout" and "--trace=stdout" to route trace
755
+ output to standard output rather than standard error.
756
+
757
+ * Optional 'phony' target (enable with 'require 'rake/phony'") for
758
+ special purpose builds.
759
+
760
+ * Task#clear now clears task comments as well as actions and
761
+ prerequisites. Task#clear_comment will specifically target comments.
762
+
763
+ * The --all option will force -T and -D to consider all the tasks,
764
+ with and without descriptions.
765
+
766
+ ===== Bug Fixes
767
+
768
+ * Semi-colons in windows rakefile paths now work.
769
+
770
+ * Improved Control-C support when invoking multiple test suites.
771
+
772
+ * egrep method now reads files in text mode (better support for
773
+ Windows)
774
+
775
+ * Better deprecation line number reporting.
776
+
777
+ * The -W option now works with all tasks, whether they have a
778
+ description or not.
779
+
780
+ * File globs in rake should not be sorted alphabetically, independent
781
+ of file system and platform.
782
+
783
+ * Numerous internal improvements.
784
+
785
+ * Documentation typos and fixes.
786
+
787
+
788
+ ==== Thanks
789
+
790
+ As usual, it was input from users that drove a lot of these changes. The
791
+ following people contributed patches, made suggestions or made
792
+ otherwise helpful comments. Thanks to ...
793
+
794
+ * Aaron Patterson
795
+ * Dylan Smith
796
+ * Jo Liss
797
+ * Jonas Pfenniger
798
+ * Kazuki Tsujimoto
799
+ * Michael Bishop
800
+ * Michael Elufimov
801
+ * NAKAMURA Usaku
802
+ * Ryan Davis
803
+ * Sam Grönblom
804
+ * Sam Phippen
805
+ * Sergio Wong
806
+ * Tay Ray Chuan
807
+ * grosser
808
+ * quix
809
+
810
+ Also, many thanks to Eric Hodel for assisting with getting this release
811
+ out the door.
812
+
813
+ -- Jim Weirich
814
+
815
+ === 0.9.6
816
+
817
+ Rake version 0.9.6 contains a number of fixes mainly for merging
818
+ Rake into the Ruby source tree and fixing tests.
819
+
820
+ ==== Changes
821
+
822
+ ===== Bug Fixes (0.9.6)
823
+
824
+ * Better trace output when using a multi-threaded Rakefile.
825
+ * Arg parsing is now consistent for tasks and multitasks.
826
+ * Skip exit code test in versions of Ruby that don't support it well.
827
+
828
+ Changes for better integration with the Ruby source tree:
829
+
830
+ * Fix version literal for Ruby source tree build.
831
+ * Better loading of libraries for testing in Ruby build.
832
+ * Use the ruby version provided by Ruby's tests.
833
+
834
+ ==== Thanks
835
+
836
+ As usual, it was input from users that drove a alot of these changes. The
837
+ following people either contributed patches, made suggestions or made
838
+ otherwise helpful comments. Thanks to ...
839
+
840
+ * Aaron Patterson
841
+ * Dylan Smith
842
+ * Jo Liss
843
+ * Jonas Pfenniger
844
+ * Kazuki Tsujimoto
845
+ * Michael Bishop
846
+ * Michael Elufimov
847
+ * NAKAMURA Usaku
848
+ * Ryan Davis
849
+ * Sam Grönblom
850
+ * Sam Phippen
851
+ * Sergio Wong
852
+ * Tay Ray Chuan
853
+ * grosser
854
+ * quix
855
+
856
+ Also, many thanks to Eric Hodel for assisting with getting this release
857
+ out the door.
858
+
859
+ -- Jim Weirich
860
+
861
+ === 0.9.5
862
+
863
+ Rake version 0.9.5 contains a number of bug fixes.
864
+
865
+ ==== Changes
866
+
867
+ ===== Bug Fixes (0.9.5)
868
+
869
+ * --trace and --backtrace no longer swallow following task names.
870
+
871
+ ==== Thanks
872
+
873
+ As usual, it was input from users that drove a alot of these changes. The
874
+ following people either contributed patches, made suggestions or made
875
+ otherwise helpful comments. Thanks to ...
876
+
877
+ * Aaron Patterson
878
+ * Dylan Smith
879
+ * Jo Liss
880
+ * Jonas Pfenniger
881
+ * Kazuki Tsujimoto
882
+ * Michael Bishop
883
+ * Michael Elufimov
884
+ * NAKAMURA Usaku
885
+ * Ryan Davis
886
+ * Sam Grönblom
887
+ * Sam Phippen
888
+ * Sergio Wong
889
+ * Tay Ray Chuan
890
+ * grosser
891
+ * quix
892
+
893
+ Also, many thanks to Eric Hodel for assisting with getting this release
894
+ out the door.
895
+
896
+ -- Jim Weirich
897
+
898
+ === 0.9.4
899
+
900
+ Rake version 0.9.4 contains a number of bug fixes.
901
+
902
+ ==== Changes
903
+
904
+ ===== Bug Fixes (0.9.4)
905
+
906
+ * Exit status with failing tests is not correctly set to non-zero.
907
+
908
+ * Simplified syntax for phony task (for older versions of RDoc).
909
+
910
+ * Stand alone FileList usage gets glob function (without loading in
911
+ extra dependencies)
912
+
913
+ ==== Thanks
914
+
915
+ As usual, it was input from users that drove a alot of these changes. The
916
+ following people either contributed patches, made suggestions or made
917
+ otherwise helpful comments. Thanks to ...
918
+
919
+ * Aaron Patterson
920
+ * Dylan Smith
921
+ * Jo Liss
922
+ * Jonas Pfenniger
923
+ * Kazuki Tsujimoto
924
+ * Michael Bishop
925
+ * Michael Elufimov
926
+ * NAKAMURA Usaku
927
+ * Ryan Davis
928
+ * Sam Grönblom
929
+ * Sam Phippen
930
+ * Sergio Wong
931
+ * Tay Ray Chuan
932
+ * grosser
933
+ * quix
934
+
935
+ Also, many thanks to Eric Hodel for assisting with getting this release
936
+ out the door.
937
+
938
+ -- Jim Weirich
939
+
940
+ === 0.9.3
941
+
942
+ Rake version 0.9.3 contains some new, backwards compatible features and
943
+ a number of bug fixes.
944
+
945
+ ==== Changes
946
+
947
+ ===== New Features
948
+
949
+ * Multitask tasks now use a thread pool. Use -j to limit the number of
950
+ available threads.
951
+
952
+ * Use -m to turn regular tasks into multitasks (use at your own risk).
953
+
954
+ * You can now do "Rake.add_rakelib 'dir'" in your Rakefile to
955
+ programatically add rake task libraries.
956
+
957
+ * You can specific backtrace suppression patterns (see
958
+ --suppress-backtrace)
959
+
960
+ * Directory tasks can now take prerequisites and actions
961
+
962
+ * Use --backtrace to request a full backtrace without the task trace.
963
+
964
+ * You can say "--backtrace=stdout" and "--trace=stdout" to route trace
965
+ output to standard output rather than standard error.
966
+
967
+ * Optional 'phony' target (enable with 'require 'rake/phony'") for
968
+ special purpose builds.
969
+
970
+ * Task#clear now clears task comments as well as actions and
971
+ prerequisites. Task#clear_comment will specifically target comments.
972
+
973
+ * The --all option will force -T and -D to consider all the tasks,
974
+ with and without descriptions.
975
+
976
+ ===== Bug Fixes
977
+
978
+ * Semi-colons in windows rakefile paths now work.
979
+
980
+ * Improved Control-C support when invoking multiple test suites.
981
+
982
+ * egrep method now reads files in text mode (better support for
983
+ Windows)
984
+
985
+ * Better deprecation line number reporting.
986
+
987
+ * The -W option now works with all tasks, whether they have a
988
+ description or not.
989
+
990
+ * File globs in rake should not be sorted alphabetically, independent
991
+ of file system and platform.
992
+
993
+ * Numerous internal improvements.
994
+
995
+ * Documentation typos and fixes.
996
+
997
+ ==== Thanks
998
+
999
+ As usual, it was input from users that drove a alot of these changes. The
1000
+ following people either contributed patches, made suggestions or made
1001
+ otherwise helpful comments. Thanks to ...
1002
+
1003
+ * Aaron Patterson
1004
+ * Dylan Smith
1005
+ * Jo Liss
1006
+ * Jonas Pfenniger
1007
+ * Kazuki Tsujimoto
1008
+ * Michael Bishop
1009
+ * Michael Elufimov
1010
+ * NAKAMURA Usaku
1011
+ * Ryan Davis
1012
+ * Sam Grönblom
1013
+ * Sam Phippen
1014
+ * Sergio Wong
1015
+ * Tay Ray Chuan
1016
+ * grosser
1017
+ * quix
1018
+
1019
+ Also, many thanks to Eric Hodel for assisting with getting this release
1020
+ out the door.
1021
+
1022
+ -- Jim Weirich
1023
+
1024
+ === Rake 0.9.2.2
1025
+
1026
+ Rake version 0.9.2.2 is mainly bug fixes.
1027
+
1028
+ ==== Changes
1029
+
1030
+ * The rake test loader now removes arguments it has processed. Issue #51
1031
+ * Rake::TaskArguments now responds to #values\_at
1032
+ * RakeFileUtils.verbose_flag = nil silences output the same as 0.8.7
1033
+ * Rake tests are now directory-independent
1034
+ * Rake tests are no longer require flexmock
1035
+ * Commands constant is no longer polluting top level namespace.
1036
+ * Show only the interesting portion of the backtrace by default (James M. Lawrence).
1037
+ * Added --reduce-compat option to remove backward compatible DSL hacks (James M. Lawrence).
1038
+
1039
+ ==== Thanks
1040
+
1041
+ As usual, it was input from users that drove a alot of these changes. The
1042
+ following people either contributed patches, made suggestions or made
1043
+ otherwise helpful comments. Thanks to ...
1044
+
1045
+ * James M. Lawrence (quix)
1046
+ * Roger Pack
1047
+ * Cezary Baginski
1048
+ * Sean Scot August Moon
1049
+ * R.T. Lechow
1050
+ * Alex Chaffee
1051
+ * James Tucker
1052
+ * Matthias Lüdtke
1053
+ * Santiago Pastorino
1054
+
1055
+ Also, bit thanks to Eric Hodel for assisting with getting this release
1056
+ out the door (where "assisting" includes, but is not by any means
1057
+ limited to, "pushing" me to get it done).
1058
+
1059
+ -- Jim Weirich
1060
+
1061
+ === 0.9.2
1062
+
1063
+ Rake version 0.9.2 has a few small fixes. See below for details.
1064
+
1065
+ ==== Changes
1066
+
1067
+ * Support for Ruby 1.8.6 was fixed.
1068
+ * Global DSL warnings now honor --no-deprecate
1069
+
1070
+ ==== Thanks
1071
+
1072
+ As usual, it was input from users that drove a alot of these changes. The
1073
+ following people either contributed patches, made suggestions or made
1074
+ otherwise helpful comments. Thanks to ...
1075
+
1076
+ * James M. Lawrence (quix)
1077
+ * Roger Pack
1078
+ * Cezary Baginski
1079
+ * Sean Scot August Moon
1080
+ * R.T. Lechow
1081
+ * Alex Chaffee
1082
+ * James Tucker
1083
+ * Matthias Lüdtke
1084
+ * Santiago Pastorino
1085
+
1086
+ Also, bit thanks to Eric Hodel for assisting with getting this release
1087
+ out the door (where "assisting" includes, but is not by any means
1088
+ limited to, "pushing" me to get it done).
1089
+
1090
+ -- Jim Weirich
1091
+
1092
+ === 0.9.1
1093
+
1094
+ Rake version 0.9.1 has a number of bug fixes and enhancments (see
1095
+ below for more details). Additionally, the internals have be slightly
1096
+ restructured and improved.
1097
+
1098
+ ==== Changes
1099
+
1100
+ Rake 0.9.1 adds back the global DSL methods, but with deprecation
1101
+ messages. This allows Rake 0.9.1 to be used with older rakefiles with
1102
+ warning messages.
1103
+
1104
+ ==== Thanks
1105
+
1106
+ As usual, it was input from users that drove a alot of these changes. The
1107
+ following people either contributed patches, made suggestions or made
1108
+ otherwise helpful comments. Thanks to ...
1109
+
1110
+ * James M. Lawrence (quix)
1111
+ * Roger Pack
1112
+ * Cezary Baginski
1113
+ * Sean Scot August Moon
1114
+ * R.T. Lechow
1115
+ * Alex Chaffee
1116
+ * James Tucker
1117
+ * Matthias Lüdtke
1118
+ * Santiago Pastorino
1119
+
1120
+ Also, bit thanks to Eric Hodel for assisting with getting this release
1121
+ out the door (where "assisting" includes, but is not by any means
1122
+ limited to, "pushing" me to get it done).
1123
+
1124
+ -- Jim Weirich
1125
+
1126
+ === 0.9.0
1127
+
1128
+ Rake version 0.9.0 has a number of bug fixes and enhancments (see
1129
+ below for more details). Additionally, the internals have be slightly
1130
+ restructured and improved.
1131
+
1132
+ ==== Changes
1133
+
1134
+ ===== New Features / Enhancements / Bug Fixes in Version 0.9.0
1135
+
1136
+ * Rake now warns when the deprecated :needs syntax used (and suggests
1137
+ the proper syntax in the warning).
1138
+
1139
+ * Moved Rake DSL commands to top level ruby object 'main'. Rake DSL
1140
+ commands are no longer private methods in Object. (Suggested by
1141
+ James M. Lawrence/quix)
1142
+
1143
+ * Rake now uses case-insensitive comparisons to find the Rakefile on Windows.
1144
+ Based on patch by Roger Pack.
1145
+
1146
+ * Rake now requires (instead of loads) files in the test task. Patch by Cezary
1147
+ Baginski.
1148
+
1149
+ * Fixed typos. Patches by Sean Scot August Moon and R.T. Lechow.
1150
+
1151
+ * Rake now prints the Rakefile directory only when it's different from the
1152
+ current directory. Patch by Alex Chaffee.
1153
+
1154
+ * Improved rakefile_location discovery on Windows. Patch by James Tucker.
1155
+
1156
+ * Rake now recognizes "Windows Server" as a windows system. Patch by Matthias
1157
+ Lüdtke
1158
+
1159
+ * Rake::RDocTask is deprecated. Use RDoc::Task from RDoc 2.4.2+ (require
1160
+ 'rdoc/task')
1161
+
1162
+ * Rake::GemPackageTask is deprecated. Use Gem::PackageTask (require
1163
+ 'rubygems/package\_task')
1164
+
1165
+ * Rake now outputs various messages to $stderr instead of $stdout.
1166
+
1167
+ * Rake no longer emits warnings for Config. Patch by Santiago Pastorino.
1168
+
1169
+ * Removed Rake's DSL methods from the top level scope. If you need to
1170
+ call 'task :xzy' in your code, include Rake::DSL into your class, or
1171
+ put the code in a Rake::DSL.environment do ... end block.
1172
+
1173
+ * Split rake.rb into individual files.
1174
+
1175
+ * Support for the --where (-W) flag for showing where a task is defined.
1176
+
1177
+ * Fixed quoting in test task.
1178
+ (http://onestepback.org/redmine/issues/show/44,
1179
+ http://www.pivotaltracker.com/story/show/1223138)
1180
+
1181
+ * Fixed the silent option parsing problem.
1182
+ (http://onestepback.org/redmine/issues/show/47)
1183
+
1184
+ * Fixed :verbose=>false flag on sh and ruby commands.
1185
+
1186
+ * Rake command line options may be given by default in a RAKEOPT
1187
+ environment variable.
1188
+
1189
+ * Errors in Rake will now display the task invocation chain in effect
1190
+ at the time of the error.
1191
+
1192
+ * Accepted change by warnickr to not expand test patterns in shell
1193
+ (allowing more files in the test suite).
1194
+
1195
+ * Fixed that file tasks did not perform prereq lookups in scope
1196
+ (Redmine #57).
1197
+
1198
+ ==== Thanks
1199
+
1200
+ As usual, it was input from users that drove a alot of these changes. The
1201
+ following people either contributed patches, made suggestions or made
1202
+ otherwise helpful comments. Thanks to ...
1203
+
1204
+ * James M. Lawrence (quix)
1205
+ * Roger Pack
1206
+ * Cezary Baginski
1207
+ * Sean Scot August Moon
1208
+ * R.T. Lechow
1209
+ * Alex Chaffee
1210
+ * James Tucker
1211
+ * Matthias Lüdtke
1212
+ * Santiago Pastorino
1213
+
1214
+ Also, bit thanks to Eric Hodel for assisting with getting this release
1215
+ out the door (where "assisting" includes, but is not by any means
1216
+ limited to, "pushing" me to get it done).
1217
+
1218
+ -- Jim Weirich
1219
+
1220
+
1221
+ === 0.8.7
1222
+
1223
+ Rake version 0.8.5 introduced greatly improved support for executing
1224
+ commands on Windows. The "sh" command now has the same semantics on
1225
+ Windows that it has on Unix based platforms.
1226
+
1227
+ Rake version 0.8.6 includes minor fixes the the RDoc generation.
1228
+ Rake version 0.8.7 includes a minor fix for JRuby running on windows.
1229
+
1230
+ ==== Changes
1231
+
1232
+ ===== New Features / Enhancements in Version 0.8.5
1233
+
1234
+ * Improved implementation of the Rake system command for Windows.
1235
+ (patch from James M. Lawrence/quix)
1236
+
1237
+ * Support for Ruby 1.9's improved system command. (patch from James
1238
+ M. Lawrence/quix)
1239
+
1240
+ * Rake now includes the configured extension when invoking an
1241
+ executable (Config::CONFIG['EXEEXT])
1242
+
1243
+ ===== Bug Fixes in Version 0.8.5
1244
+
1245
+ * Environment variable keys are now correctly cased (it matters in
1246
+ some implementations).
1247
+
1248
+ ==== Thanks
1249
+
1250
+ As usual, it was input from users that drove a alot of these changes. The
1251
+ following people either contributed patches, made suggestions or made
1252
+ otherwise helpful comments. Thanks to ...
1253
+
1254
+ * Charles Nutter
1255
+
1256
+ -- Jim Weirich
1257
+
1258
+ === 0.8.6
1259
+
1260
+ Rake version 0.8.5 introduced greatly improved support for executing
1261
+ commands on Windows. The "sh" command now has the same semantics on
1262
+ Windows that it has on Unix based platforms.
1263
+
1264
+ Rake version 0.8.5 includes minor fixes the the RDoc generation.
1265
+
1266
+ ==== Thanks
1267
+
1268
+ As usual, it was input from users that drove a alot of these changes. The
1269
+ following people either contributed patches, made suggestions or made
1270
+ otherwise helpful comments. Thanks to ...
1271
+
1272
+ * James M. Lawrence/quix
1273
+ * Luis Lavena
1274
+
1275
+ -- Jim Weirich
1276
+
1277
+ === 0.8.5
1278
+
1279
+ Rake version 0.8.5 is a new release of Rake with greatly improved
1280
+ support for executing commands on Windows. The "sh" command now has
1281
+ the same semantics on Windows that it has on Unix based platforms.
1282
+
1283
+ ==== Changes
1284
+
1285
+ ===== New Features / Enhancements in Version 0.8.5
1286
+
1287
+ * Improved implementation of the Rake system command for Windows.
1288
+ (patch from James M. Lawrence/quix)
1289
+
1290
+ * Support for Ruby 1.9's improved system command. (patch from James
1291
+ M. Lawrence/quix)
1292
+
1293
+ * Rake now includes the configured extension when invoking an
1294
+ executable (Config::CONFIG['EXEEXT])
1295
+
1296
+ ===== Bug Fixes in Version 0.8.5
1297
+
1298
+ * Environment variable keys are now correctly cased (it matters in
1299
+ some implementations).
1300
+
1301
+ ==== Thanks
1302
+
1303
+ As usual, it was input from users that drove a alot of these changes. The
1304
+ following people either contributed patches, made suggestions or made
1305
+ otherwise helpful comments. Thanks to ...
1306
+
1307
+ * James M. Lawrence/quix
1308
+ * Luis Lavena
1309
+
1310
+ -- Jim Weirich
1311
+
1312
+ === 0.8.4
1313
+
1314
+ Rake version 0.8.4 is a bug-fix release of rake.
1315
+
1316
+ NOTE: The version of Rake that comes with Ruby 1.9 has diverged
1317
+ slightly from the core Rake code base. Rake 0.8.4 will work
1318
+ with Ruby 1.9, but is not a strict upgrade for the Rake that
1319
+ comes with Ruby 1.9. A (near) future release of Rake will unify
1320
+ those two codebases.
1321
+
1322
+ ==== Letter Writing Campaign
1323
+
1324
+ Thanks to Aaron Patterson (@tenderlove) and Eric Hodel (@drbrain) for
1325
+ their encouraging support in organizing a letter writing campaign to
1326
+ lobby for the "Warning Free" release of rake 0.8.4. A special callout
1327
+ goes to Jonathan D. Lord, Sr (Dr. Wingnut) whose postcard was the
1328
+ first to actually reach me. (see
1329
+ http://tenderlovemaking.com/2009/02/26/we-need-a-new-version-of-rake/
1330
+ for details)
1331
+
1332
+ ==== Changes
1333
+
1334
+ ===== New Features / Enhancements in Version 0.8.4
1335
+
1336
+ * Case is preserved on rakefile names. (patch from James
1337
+ M. Lawrence/quix)
1338
+
1339
+ * Improved Rakefile case insensitivity testing (patch from Luis
1340
+ Lavena).
1341
+
1342
+ * Windows system dir search order is now: HOME, HOMEDRIVE + HOMEPATH,
1343
+ APPDATA, USERPROFILE (patch from Luis Lavena)
1344
+
1345
+ * MingGW is now recognized as a windows platform. (patch from Luis
1346
+ Lavena)
1347
+
1348
+ ===== Bug Fixes in Version 0.8.4
1349
+
1350
+ * Removed reference to manage_gem to fix the warning produced by the
1351
+ gem package task.
1352
+
1353
+ * Fixed stray ARGV option problem that was interfering with
1354
+ Test::Unit::Runner. (patch from Pivotal Labs)
1355
+
1356
+ ===== Infrastructure Improvements in Version 0.8.4
1357
+
1358
+ * Numerous fixes to the windows test suite (patch from Luis Lavena).
1359
+
1360
+ * Improved Rakefile case insensitivity testing (patch from Luis
1361
+ Lavena).
1362
+
1363
+ * Better support for windows paths in the test task (patch from Simon
1364
+ Chiang/bahuvrihi)
1365
+
1366
+ ==== Thanks
1367
+
1368
+ As usual, it was input from users that drove a alot of these changes. The
1369
+ following people either contributed patches, made suggestions or made
1370
+ otherwise helpful comments. Thanks to ...
1371
+
1372
+ * James M. Lawrence/quix
1373
+ * Luis Lavena
1374
+ * Pivotal Labs
1375
+ * Simon Chiang/bahuvrihi
1376
+
1377
+ -- Jim Weirich
1378
+
1379
+ === 0.8.3
1380
+
1381
+ Rake version 0.8.3 is a bug-fix release of rake.
1382
+
1383
+ ==== Changes
1384
+
1385
+ ===== Bug Fixes in Version 0.8.3
1386
+
1387
+ * Enhanced the system directory detection in windows. We now check
1388
+ HOMEDRIVE/HOMEPATH and USERPROFILE if APPDATA isn't found. (Patch
1389
+ supplied by James Tucker). Rake no long aborts if it can't find the
1390
+ directory.
1391
+
1392
+ * Added fix to handle ruby installations in directories with spaces in
1393
+ their name.
1394
+
1395
+ ==== Thanks
1396
+
1397
+ As usual, it was input from users that drove a alot of these changes. The
1398
+ following people either contributed patches, made suggestions or made
1399
+ otherwise helpful comments. Thanks to ...
1400
+
1401
+ * Edwin Pratomo
1402
+ * Gavin Stark
1403
+ * Adam Q. Salter
1404
+ * Adam Majer
1405
+ * Emanuel Indermühle
1406
+ * Ittay Dror
1407
+ * Bheeshmar Redheendran (for spending an afternoon with me debugging
1408
+ windows issues)
1409
+
1410
+ -- Jim Weirich
1411
+
1412
+
1413
+ === 0.8.2
1414
+
1415
+ Rake version 0.8.2 is a new release of rake that includes a number of
1416
+ new features and numerous bug fixes.
1417
+
1418
+ ==== Changes
1419
+
1420
+ ===== New Features in Version 0.8.2
1421
+
1422
+ * Switched from getoptlong to optparse (patches supplied by Edwin
1423
+ Pratomo).
1424
+
1425
+ * The -T option will now attempt to dynamically sense the size of the
1426
+ terminal. The -T output will only self-truncate if the output is a
1427
+ tty. However, if RAKE_COLUMNS is explicitly set, it will be honored
1428
+ in any case. (Patch provided by Gavin Stark).
1429
+
1430
+ * The following public methods have been added to rake task objects:
1431
+
1432
+ * task.clear -- Clear both the prerequisites and actions of the
1433
+ target rake task.
1434
+ * task.clear_prerequisites -- Clear all the existing prerequisites
1435
+ from the target rake task.
1436
+ * task.clear_actions -- Clear all the existing actions from the
1437
+ target rake task.
1438
+ * task.reenable -- Re-enable a task, allowing its actions to be
1439
+ executed again if the task is invoked.
1440
+
1441
+ * Changed RDoc test task to have no default template. This makes it
1442
+ easier for the tempate to pick up the template from the environment.
1443
+
1444
+ * Default values for task arguments can easily be specified with the
1445
+ :with_defaults method. (Idea for default argument merging supplied
1446
+ by (Adam Q. Salter)
1447
+
1448
+ ===== Bug Fixes in Version 0.8.2
1449
+
1450
+ * Fixed bug in package task so that it will include the subdir
1451
+ directory in the package for testing. (Bug found by Adam Majer)
1452
+
1453
+ * Fixed filename dependency order bug in test\_inspect\_pending and
1454
+ test\_to\_s\_pending. (Bug found by Adam Majer)
1455
+
1456
+ * Fixed check for file utils options to make them immune to the
1457
+ symbol/string differences. (Patch supplied by Edwin Pratomo)
1458
+
1459
+ * Fixed bug with rules involving multiple source, where only the first
1460
+ dependency of a rule has any effect (Patch supplied by Emanuel
1461
+ Indermühle)
1462
+
1463
+ * FileList#clone and FileList#dup have better sematics w.r.t. taint
1464
+ and freeze.
1465
+
1466
+ * Changed from using Mutex to Monitor. Evidently Mutex causes thread
1467
+ join errors when Ruby is compiled with -disable-pthreads. (Patch
1468
+ supplied by Ittay Dror)
1469
+
1470
+ * Fixed bug in makefile parser that had problems with extra spaces in
1471
+ file task names. (Patch supplied by Ittay Dror)
1472
+
1473
+ ==== Other changes in Version 0.8.2
1474
+
1475
+ * Added ENV var to rake's own Rakefile to prevent OS X from including
1476
+ extended attribute junk in the rake package tar file. (Bug found by
1477
+ Adam Majer)
1478
+
1479
+ * Added a performance patch for reading large makefile dependency
1480
+ files. (Patch supplied by Ittay Dror)
1481
+
1482
+ ==== Task Argument Examples
1483
+
1484
+ Prior to version 0.8.0, rake was only able to handle command line
1485
+ arguments of the form NAME=VALUE that were passed into Rake via the
1486
+ ENV hash. Many folks had asked for some kind of simple command line
1487
+ arguments, perhaps using "--" to separate regular task names from
1488
+ argument values on the command line. The problem is that there was no
1489
+ easy way to associate positional arguments on the command line with
1490
+ different tasks. Suppose both tasks :a and :b expect a command line
1491
+ argument: does the first value go with :a? What if :b is run first?
1492
+ Should it then get the first command line argument.
1493
+
1494
+ Rake 0.8.0 solves this problem by explicitly passing values directly
1495
+ to the tasks that need them. For example, if I had a release task
1496
+ that required a version number, I could say:
1497
+
1498
+ rake release[0.8.2]
1499
+
1500
+ And the string "0.8.2" will be passed to the :release task. Multiple
1501
+ arguments can be passed by separating them with a comma, for example:
1502
+
1503
+ rake name[john,doe]
1504
+
1505
+ Just a few words of caution. The rake task name and its arguments
1506
+ need to be a single command line argument to rake. This generally
1507
+ means no spaces. If spaces are needed, then the entire rake +
1508
+ argument string should be quoted. Something like this:
1509
+
1510
+ rake "name[billy bob, smith]"
1511
+
1512
+ (Quoting rules vary between operating systems and shells, so make sure
1513
+ you consult the proper docs for your OS/shell).
1514
+
1515
+ ===== Tasks that Expect Parameters
1516
+
1517
+ Parameters are only given to tasks that are setup to expect them. In
1518
+ order to handle named parameters, the task declaration syntax for
1519
+ tasks has been extended slightly.
1520
+
1521
+ For example, a task that needs a first name and last name might be
1522
+ declared as:
1523
+
1524
+ task :name, :first_name, :last_name
1525
+
1526
+ The first argument is still the name of the task (:name in this case).
1527
+ The next to argumements are the names of the parameters expected by
1528
+ :name (:first_name and :last_name in the example).
1529
+
1530
+ To access the values of the parameters, the block defining the task
1531
+ behaviour can now accept a second parameter:
1532
+
1533
+ task :name, :first_name, :last_name do |t, args|
1534
+ puts "First name is #{args.first_name}"
1535
+ puts "Last name is #{args.last_name}"
1536
+ end
1537
+
1538
+ The first argument of the block "t" is always bound to the current
1539
+ task object. The second argument "args" is an open-struct like object
1540
+ that allows access to the task arguments. Extra command line
1541
+ arguments to a task are ignored. Missing command line arguments are
1542
+ given the nil value.
1543
+
1544
+ ==== Thanks
1545
+
1546
+ As usual, it was input from users that drove a alot of these changes. The
1547
+ following people either contributed patches, made suggestions or made
1548
+ otherwise helpful comments. Thanks to ...
1549
+
1550
+ * Edwin Pratomo
1551
+ * Gavin Stark
1552
+ * Adam Q. Salter
1553
+ * Adam Majer
1554
+ * Emanuel Indermühle
1555
+ * Ittay Dror
1556
+ * Bheeshmar Redheendran (for spending an afternoon with me debugging
1557
+ windows issues)
1558
+
1559
+ -- Jim Weirich
1560
+
1561
+ === 0.8.0/0.8.1
1562
+
1563
+ Rake version 0.8.0 is a new release of rake that includes serveral new
1564
+ features.
1565
+
1566
+ ==== Changes
1567
+
1568
+ ===== New Features in Version 0.8.0
1569
+
1570
+ * Tasks can now receive command line parameters. See the examples
1571
+ below for more details.
1572
+
1573
+ * Comments are limited to 80 columns on output, but full comments can
1574
+ be seen by using the -D parameter. (feature suggested by Jamis
1575
+ Buck).
1576
+
1577
+ * Explicit exit(n) calls will now set the exit status to n. (patch
1578
+ provided by Stephen Touset).
1579
+
1580
+ * Rake is now compatible with Ruby 1.9.
1581
+
1582
+ Version 0.8.1 is a minor update that includes additional Ruby 1.9
1583
+ compatibility fixes.
1584
+
1585
+ ==== Task Argument Examples
1586
+
1587
+ Prior to version 0.8.0, rake was only able to handle command line
1588
+ arguments of the form NAME=VALUE that were passed into Rake via the
1589
+ ENV hash. Many folks had asked for some kind of simple command line
1590
+ arguments, perhaps using "--" to separate regular task names from
1591
+ argument values on the command line. The problem is that there was no
1592
+ easy way to associate positional arguments on the command line with
1593
+ different tasks. Suppose both tasks :a and :b expect a command line
1594
+ argument: does the first value go with :a? What if :b is run first?
1595
+ Should it then get the first command line argument.
1596
+
1597
+ Rake 0.8.0 solves this problem by explicitly passing values directly
1598
+ to the tasks that need them. For example, if I had a release task
1599
+ that required a version number, I could say:
1600
+
1601
+ rake release[0.8.0]
1602
+
1603
+ And the string "0.8.0" will be passed to the :release task. Multiple
1604
+ arguments can be passed by separating them with a comma, for example:
1605
+
1606
+ rake name[john,doe]
1607
+
1608
+ Just a few words of caution. The rake task name and its arguments
1609
+ need to be a single command line argument to rake. This generally
1610
+ means no spaces. If spaces are needed, then the entire rake +
1611
+ argument string should be quoted. Something like this:
1612
+
1613
+ rake "name[billy bob, smith]"
1614
+
1615
+ (Quoting rules vary between operating systems and shells, so make sure
1616
+ you consult the proper docs for your OS/shell).
1617
+
1618
+ ===== Tasks that Expect Parameters
1619
+
1620
+ Parameters are only given to tasks that are setup to expect them. In
1621
+ order to handle named parameters, the task declaration syntax for
1622
+ tasks has been extended slightly.
1623
+
1624
+ For example, a task that needs a first name and last name might be
1625
+ declared as:
1626
+
1627
+ task :name, :first_name, :last_name
1628
+
1629
+ The first argument is still the name of the task (:name in this case).
1630
+ The next to argumements are the names of the parameters expected by
1631
+ :name (:first_name and :last_name in the example).
1632
+
1633
+ To access the values of the parameters, the block defining the task
1634
+ behaviour can now accept a second parameter:
1635
+
1636
+ task :name, :first_name, :last_name do |t, args|
1637
+ puts "First name is #{args.first_name}"
1638
+ puts "Last name is #{args.last_name}"
1639
+ end
1640
+
1641
+ The first argument of the block "t" is always bound to the current
1642
+ task object. The second argument "args" is an open-struct like object
1643
+ that allows access to the task arguments. Extra command line
1644
+ arguments to a task are ignored. Missing command line arguments are
1645
+ given the nil value.
1646
+
1647
+ ==== Thanks
1648
+
1649
+ As usual, it was input from users that drove a alot of these changes. The
1650
+ following people either contributed patches, made suggestions or made
1651
+ otherwise helpful comments. Thanks to ...
1652
+
1653
+ * Jamis Buck (for comment formatting suggestions)
1654
+ * Stephen Touset (for exit status patch).
1655
+
1656
+ -- Jim Weirich
1657
+
1658
+
1659
+ === 0.7.3
1660
+
1661
+ Rake version 0.7.3 is a minor release that includes some refactoring to better
1662
+ support custom Rake applications.
1663
+
1664
+ ==== Changes
1665
+
1666
+ ===== New Features in Version 0.7.3
1667
+
1668
+ * Added the +init+ and +top_level+ methods to make the creation of custom Rake applications a bit easier. E.g.
1669
+
1670
+ gem 'rake', ">= 0.7.3"
1671
+ require 'rake'
1672
+
1673
+ Rake.application.init('myrake')
1674
+
1675
+ task :default do
1676
+ something_interesting
1677
+ end
1678
+
1679
+ Rake.application.top_level
1680
+
1681
+ ==== Thanks
1682
+
1683
+ As usual, it was input from users that drove a alot of these changes. The
1684
+ following people either contributed patches, made suggestions or made
1685
+ otherwise helpful comments. Thanks to ...
1686
+
1687
+ -- Jim Weirich
1688
+
1689
+
1690
+ === 0.7.2
1691
+
1692
+
1693
+ Version 0.7.2 supplies a bug fix and a few minor enhancements. In
1694
+ particular, the new version fixes an incompatibility with the soon to
1695
+ be released Ruby 1.8.6. We strongly recommend upgrading to Rake 0.7.2
1696
+ in order to be compatible with the new version of Ruby.
1697
+
1698
+ ==== Changes
1699
+
1700
+ ===== Bug Fixes in 0.7.2
1701
+
1702
+ There are quite a number of bug fixes in the new 0.7.2 version of
1703
+ Rake:
1704
+
1705
+ * Removed dependency on internal fu_xxx functions from FileUtils.
1706
+
1707
+ * Error messages are now send to stderr rather than stdout (from
1708
+ Payton Quackenbush).
1709
+
1710
+ * Better error handling on invalid command line arguments (from Payton
1711
+ Quackenbush).
1712
+
1713
+ * Fixed some bugs where the application object was going to the global
1714
+ appliation instead of using its own data.
1715
+
1716
+ * Fixed the method name leak from FileUtils (bug found by Glenn
1717
+ Vanderburg).
1718
+
1719
+ * Added test for noop, bad_option and verbose flags to sh command.
1720
+
1721
+ * Added a description to the gem task in GemPackageTask.
1722
+
1723
+ * Fixed a bug when rules have multiple prerequisites (patch by Joel
1724
+ VanderWerf)
1725
+
1726
+ * Added the handful of RakeFileUtils to the private method as well.
1727
+
1728
+ ===== New Features in 0.7.2
1729
+
1730
+ The following new features are available in Rake version 0.7.2:
1731
+
1732
+ * Added square and curly bracket patterns to FileList#include (Tilman
1733
+ Sauerbeck).
1734
+
1735
+ * FileLists can now pass a block to FileList#exclude to exclude files
1736
+ based on calculated values.
1737
+
1738
+ * Added plain filename support to rule dependents (suggested by Nobu
1739
+ Nakada).
1740
+
1741
+ * Added pathmap support to rule dependents. In other words, if a
1742
+ pathmap format (beginning with a '%') is given as a Rake rule
1743
+ dependent, then the name of the depend will be the name of the
1744
+ target with the pathmap format applied.
1745
+
1746
+ * Added a 'tasks' method to a namespace to get a list of tasks
1747
+ associated with the namespace.
1748
+
1749
+ * Added tar_command and zip_command options to the Package task.
1750
+
1751
+ * The clean task will no longer delete 'core' if it is a directory.
1752
+
1753
+ ===== Internal Rake Improvements
1754
+
1755
+ The following changes will are mainly internal improvements and
1756
+ refactorings and have little effect on the end user. But they may be
1757
+ of interest to the general public.
1758
+
1759
+ * Added rcov task and updated unit testing for better code coverage.
1760
+
1761
+ * Added a 'shame' task to the Rakefile.
1762
+
1763
+ * Added rake_extension to handle detection of extension collisions.
1764
+
1765
+ * Added a protected 'require "rubygems"' to test/test_application to
1766
+ unbreak cruisecontrol.rb.
1767
+
1768
+ * Removed rake\_dup. Now we just simply rescue a bad dup.
1769
+
1770
+ * Refactored the FileList reject logic to remove duplication.
1771
+
1772
+ * Removed if \_\_FILE\_\_ at the end of the rake.rb file.
1773
+
1774
+ ==== Thanks
1775
+
1776
+ As usual, it was input from users that drove a alot of these changes.
1777
+ The following people either contributed patches, made suggestions or
1778
+ made otherwise helpful comments. Thanks to ...
1779
+
1780
+ * Payton Quackenbush -- For several error handling improvements.
1781
+
1782
+ * Glenn Vanderburg -- For finding and fixing the method name leak from
1783
+ FileUtils.
1784
+
1785
+ * Joel VanderWerf -- for finding and fixing a bug in the handling of
1786
+ multiple prerequisites.
1787
+
1788
+ * Tilman Sauerbeck -- For some enhancing FileList to support more
1789
+ advanced file globbing.
1790
+
1791
+ * Nobu Nakada -- For suggesting plain file name support to rule dependents.
1792
+
1793
+ -- Jim Weirich
1794
+
1795
+ === 0.7.1
1796
+
1797
+ Version 0.7.1 supplies a bug fix and a few minor enhancements.
1798
+
1799
+ ==== Changes
1800
+
1801
+ ===== Bug Fixes in 0.7.1
1802
+
1803
+ * Changes in the exception reported for the FileUtils.ln caused
1804
+ safe_ln to fail with a NotImplementedError. Rake 0.7.1 will now
1805
+ catch that error or any StandardError and properly fall back to
1806
+ using +cp+.
1807
+
1808
+ ===== New Features in 0.7.1
1809
+
1810
+ * You can filter the results of the --task option by supplying an
1811
+ optional regular expression. This allows the user to easily find a
1812
+ particular task name in a long list of possible names.
1813
+
1814
+ * Transforming procs in a rule may now return a list of prerequisites.
1815
+ This allows more flexible rule formation.
1816
+
1817
+ * FileList and String now support a +pathmap+ melthod that makes the
1818
+ transforming paths a bit easier. See the API docs for +pathmap+ for
1819
+ details.
1820
+
1821
+ * The -f option without a value will disable the search for a
1822
+ Rakefile. This allows the Rakefile to be defined entirely in a
1823
+ library (and loaded with the -r option). The current working
1824
+ directory is not changed when this is done.
1825
+
1826
+ ==== Thanks
1827
+
1828
+ As usual, it was input from users that drove a alot of these changes.
1829
+ The following people either contributed patches, made suggestions or
1830
+ made otherwise helpful comments. Thanks to ...
1831
+
1832
+ * James Britt and Assaph Mehr for reporting and helping to debug the
1833
+ safe_ln issue.
1834
+
1835
+ -- Jim Weirich
1836
+
1837
+
1838
+ === 0.7.0
1839
+
1840
+ These changes for Rake have been brewing for a long time. Here they
1841
+ are, I hope you enjoy them.
1842
+
1843
+ ==== Changes
1844
+
1845
+ ===== New Features
1846
+
1847
+ * Name space support for task names (see below).
1848
+ * Prerequisites can be executed in parallel (see below).
1849
+ * Added safe_ln support for openAFS (via Ludvig Omholt).
1850
+ * RDoc defaults to internal (in-process) invocation. The old behavior
1851
+ is still available by setting the +external+ flag to true.
1852
+ * Rakefiles are now loaded with the expanded path to prevent
1853
+ accidental pollution from the Ruby load path.
1854
+ * Task objects my now be used in prerequisite lists directly.
1855
+ * Task objects (in addition to task names) may now be included in the
1856
+ prerequisite list of a task.
1857
+ * Internals cleanup and refactoring.
1858
+
1859
+ ===== Bug Fixes
1860
+
1861
+ * Compatibility fixes for Ruby 1.8.4 FileUtils changes.
1862
+
1863
+ ===== Namespaces
1864
+
1865
+ Tasks can now be nested inside their own namespaces. Tasks within one
1866
+ namespace will not accidentally interfer with tasks named in a different
1867
+ namespace.
1868
+
1869
+ For example:
1870
+
1871
+ namespace "main" do
1872
+ task :build do
1873
+ # Build the main program
1874
+ end
1875
+ end
1876
+
1877
+ namespace "samples" do
1878
+ task :build do
1879
+ # Build the sample programs
1880
+ end
1881
+ end
1882
+
1883
+ task :build_all => ["main:build", "samples:build"]
1884
+
1885
+ Even though both tasks are named :build, they are separate tasks in
1886
+ their own namespaces. The :build_all task (defined in the toplevel
1887
+ namespace) references both build tasks in its prerequisites.
1888
+
1889
+ You may invoke each of the individual build tasks with the following
1890
+ commands:
1891
+
1892
+ rake main:build
1893
+ rake samples:build
1894
+
1895
+ Or invoke both via the :build_all command:
1896
+
1897
+ rake build_all
1898
+
1899
+ Namespaces may be nested arbitrarily. Since the name of file tasks
1900
+ correspond to the name of a file in the external file system,
1901
+ FileTasks are not affected by the namespaces.
1902
+
1903
+ See the Rakefile format documentation (in the Rake API documents) for
1904
+ more information.
1905
+
1906
+ ===== Parallel Tasks
1907
+
1908
+ Sometimes you have several tasks that can be executed in parallel. By
1909
+ specifying these tasks as prerequisites to a +multitask+ task.
1910
+
1911
+ In the following example the tasks copy\_src, copy\_doc and copy\_bin
1912
+ will all execute in parallel in their own thread.
1913
+
1914
+ multitask :copy_files => [:copy_src, :copy_doc, :copy_bin] do
1915
+ puts "All Copies Complete"
1916
+ end
1917
+
1918
+ ==== Thanks
1919
+
1920
+ As usual, it was input from users that drove a alot of these changes.
1921
+ The following people either contributed patches, made suggestions or
1922
+ made otherwise helpful comments. Thanks to ...
1923
+
1924
+ * Doug Young (inspiration for the parallel task)
1925
+ * David Heinemeier Hansson (for --trace message enhancement and for
1926
+ pushing for namespace support).
1927
+ * Ludvig Omholt (for the openAFS fix)
1928
+
1929
+ -- Jim Weirich
1930
+
1931
+ === 0.6.1
1932
+
1933
+ * Rebuilt 0.6.0 gem without signing.
1934
+
1935
+ === 0.6.0
1936
+
1937
+ Its time for some long requested enhancements and lots of bug fixes
1938
+ ... And a whole new web page.
1939
+
1940
+ ==== New Web Page
1941
+
1942
+ The primary documentation for rake has moved from the RubyForge based
1943
+ wiki to its own Hieraki based web site. Constant spam on the wiki
1944
+ made it a difficult to keep clean. The new site will be easier to
1945
+ update and organize.
1946
+
1947
+ Check out the new documentation at: http://docs.rubyrake.org
1948
+
1949
+ We will be adding new documentation to the site as time goes on.
1950
+
1951
+ In addition to the new docs page, make sure you check out Martin
1952
+ Fowlers article on rake at http://martinfowler.com/articles/rake.html
1953
+
1954
+ ==== Changes
1955
+
1956
+ ===== New Features
1957
+
1958
+ * Multiple prerequisites on Rake rules now allowed. However, keep the
1959
+ following in mind:
1960
+
1961
+ 1. All the prerequisites of a rule must be available before a rule
1962
+ is triggered, where "enabled" means (a) an existing file, (b) a
1963
+ defined rule, or (c) another rule which also must be
1964
+ trigger-able.
1965
+ 2. Rules are checked in order of definition, so it is important to
1966
+ order your rules properly. If a file can be created by two
1967
+ different rules, put the more specific rule first (otherwise the
1968
+ more general rule will trigger first and the specific one will
1969
+ never be triggered).
1970
+ 3. The <tt>source</tt> method now returns the name of the first
1971
+ prerequisite listed in the rule. <tt>sources</tt> returns the
1972
+ names of all the rule prerequisites, ordered as they are defined
1973
+ in the rule. If the task has other prerequisites not defined in
1974
+ the rule (but defined in an explicit task definition), then they
1975
+ will _not_ be included in the sources list.
1976
+
1977
+ * FileLists may now use the egrep command. This popular enhancement
1978
+ is now a core part of the FileList object. If you want to get a
1979
+ list of all your to-dos, fixmes and TBD comments, add the following
1980
+ to your Rakefile.
1981
+
1982
+ desc "Look for TODO and FIXME tags in the code"
1983
+ task :todo do
1984
+ FileList['**/*.rb'].egrep /#.*(FIXME|TODO|TBD)/
1985
+ end
1986
+
1987
+ * The <tt>investigation</tt> method was added to task object to dump
1988
+ out some important values. This makes it a bit easier to debug Rake
1989
+ tasks.
1990
+
1991
+ For example, if you are having problems with a particular task, just
1992
+ print it out:
1993
+
1994
+ task :huh do
1995
+ puts Rake::Task['huh'].investigation
1996
+ end
1997
+
1998
+ * The Rake::TestTask class now supports a "ruby\_opts" option to pass
1999
+ arbitrary ruby options to a test subprocess.
2000
+
2001
+ ===== Some Incompatibilities
2002
+
2003
+ * When using the <tt>ruby</tt> command to start a Ruby subprocess, the
2004
+ Ruby interpreter that is currently running rake is used by default.
2005
+ This makes it easier to use rake in an environment with multiple
2006
+ ruby installation. (Previously, the first ruby command found in the
2007
+ PATH was used).
2008
+
2009
+ If you wish to chose a different Ruby interpreter, you can
2010
+ explicitly choose the interpreter via the <tt>sh</tt> command.
2011
+
2012
+ * The major rake classes (Task, FileTask, FileCreationTask, RakeApp)
2013
+ have been moved out of the toplevel scope and are now accessible as
2014
+ Rake::Task, Rake::FileTask, Rake::FileCreationTask and
2015
+ Rake::Application. If your Rakefile
2016
+ directly references any one of these tasks, you may:
2017
+
2018
+ 1. Update your Rakefile to use the new classnames
2019
+ 2. Use the --classic-namespace option on the rake command to get the
2020
+ old behavior,
2021
+ 3. Add <code>require 'rake/classic_namespace'</code> to the
2022
+ Rakefile to get the old behavior.
2023
+
2024
+ <tt>rake</tt> will print a rather annoying warning whenever a
2025
+ deprecated class name is referenced without enabling classic
2026
+ namespace.
2027
+
2028
+ ===== Bug Fixes
2029
+
2030
+ * Several unit tests and functional tests were fixed to run better
2031
+ under windows.
2032
+
2033
+ * Directory tasks are now a specialized version of a File task. A
2034
+ directory task will only be triggered if it doesn't exist. It will
2035
+ not be triggered if it is out of date w.r.t. any of its
2036
+ prerequisites.
2037
+
2038
+ * Fixed a bug in the Rake::GemPackageTask class so that the gem now
2039
+ properly contains the platform name.
2040
+
2041
+ * Fixed a bug where a prerequisite on a <tt>file</tt> task would cause
2042
+ an exception if the prerequisite did not exist.
2043
+
2044
+ ==== Thanks
2045
+
2046
+ As usual, it was input from users that drove a alot of these changes.
2047
+ The following people either contributed patches, made suggestions or
2048
+ made otherwise helpful comments. Thanks to ...
2049
+
2050
+ * Greg Fast (better ruby_opt test options)
2051
+ * Kelly Felkins (requested by better namespace support)
2052
+ * Martin Fowler (suggested Task.investigation)
2053
+ * Stuart Jansen (send initial patch for multiple prerequisites).
2054
+ * Masao Mutch (better support for non-ruby Gem platforms)
2055
+ * Philipp Neubeck (patch for file task exception fix)
2056
+
2057
+ -- Jim Weirich
2058
+
2059
+ === 0.5.4
2060
+
2061
+ Time for some minor bug fixes and small enhancements
2062
+
2063
+ ==== Changes
2064
+
2065
+ Here are the changes for version 0.5.4 ...
2066
+
2067
+ * Added double quotes to the test runner. This allows the location of
2068
+ the tests (and runner) to be in a directory path that contains
2069
+ spaces (e.g. "C:/Program Files/ruby/bin").
2070
+ * Added .svn to default ignore list. Now subversion project metadata
2071
+ is automatically ignored by Rake's FileList.
2072
+ * Updated FileList#include to support nested arrays and filelists.
2073
+ FileLists are flat lists of file names. Using a FileList in an
2074
+ include will flatten out the nested file names.
2075
+
2076
+ == Thanks
2077
+
2078
+ As usual, it was input from users that drove a alot of these changes.
2079
+ Thanks to ...
2080
+
2081
+ * Tilman Sauerbeck for the nested FileList suggestion.
2082
+ * Josh Knowles for pointing out the spaces in directory name problem.
2083
+
2084
+ -- Jim Weirich
2085
+
2086
+ === 0.5.3
2087
+
2088
+ Although it has only been two weeks since the last release, we have
2089
+ enough updates to the Rake program to make it time for another
2090
+ release.
2091
+
2092
+ ==== Changes
2093
+
2094
+ Here are the changes for version 0.5.3 ...
2095
+
2096
+ * FileLists have been extensively changed so that they mimic the
2097
+ behavior of real arrays even more closely. In particular,
2098
+ operations on FileLists that return a new collection (e.g. collect,
2099
+ reject) will now return a FileList rather than an array. In
2100
+ addition, several places where FileLists were not properly expanded
2101
+ before use have been fixed.
2102
+ * A method (+ext+) to simplify the handling of file extensions was
2103
+ added to String and to Array.
2104
+ * The 'testrb' script in test/unit tends to silently swallow syntax
2105
+ errors in test suites. Because of that, the default test loader is
2106
+ now a rake-provided script. You can still use 'testrb' by setting
2107
+ the loader flag in the test task to :testrb. (See the API documents
2108
+ for TestTask for all the loader flag values).
2109
+ * FileUtil methods (e.g. cp, mv, install) are now declared to be
2110
+ private. This will cut down on the interference with user defined
2111
+ methods of the same name.
2112
+ * Fixed the verbose flag in the TestTask so that the test code is
2113
+ controlled by the flag. Also shortened up some failure messages.
2114
+ (Thanks to Tobias Luetke for the suggestion).
2115
+ * Rules will now properly detect a task that can generate a source
2116
+ file. Previously rules would only consider source files that were
2117
+ already present.
2118
+ * Added an +import+ command that allows Rake to dynamically import
2119
+ dependendencies into a running Rake session. The +import+ command
2120
+ can run tasks to update the dependency file before loading them.
2121
+ Dependency files can be in rake or make format, allowing rake to
2122
+ work with tools designed to generate dependencies for make.
2123
+
2124
+ ==== Thanks
2125
+
2126
+ As usual, it was input from users that drove a alot of these changes.
2127
+ Thanks to ...
2128
+
2129
+ * Brian Gernhardt for the rules fix (especially for the patience to
2130
+ explain the problem to me until I got what he was talking about).
2131
+ * Stefan Lang for pointing out problems in the dark corners of the
2132
+ FileList implementation.
2133
+ * Alexey Verkhovsky pointing out the silently swallows syntax errors
2134
+ in tests.
2135
+ * Tobias Luetke for beautifying the test task output.
2136
+ * Sam Roberts for some of the ideas behind dependency loading.
2137
+
2138
+ -- Jim Weirich
2139
+
2140
+
2141
+ === 0.5.0
2142
+
2143
+ It has been a long time in coming, but we finally have a new version
2144
+ of Rake available.
2145
+
2146
+ ==== Changes
2147
+
2148
+ * Fixed documentation that was lacking the Rake module name (Tilman
2149
+ Sauerbeck).
2150
+ * Added tar.gz and tar.bz2 support to package task (Tilman Sauerbeck).
2151
+ * Recursive rules are now supported (Tilman Sauerbeck).
2152
+ * Added warning option for the Test Task (requested by Eric Hodel).
2153
+ * The jamis rdoc template is only used if it exists.
2154
+ * Added fix for Ruby 1.8.2 test/unit and rails problem.
2155
+ * Added contributed rake man file (Jani Monoses).
2156
+ * Added Brian Candler's fix for problems in --trace and --dry-run
2157
+ mode.
2158
+
2159
+ ==== Thanks
2160
+
2161
+ Lots of people provided input to this release. Thanks to Tilman
2162
+ Sauerbeck for numerous patches, documentation fixes and suggestions.
2163
+ And for also pushing me to get this release out. Also, thanks to
2164
+ Brian Candler for the finding and fixing --trace/dry-run fix. That
2165
+ was an obscure bug. Also to Eric Hodel for some good suggestions.
2166
+
2167
+ -- Jim Weirich
2168
+
2169
+ === 0.4.15
2170
+
2171
+ ==== Changes
2172
+
2173
+ Version 0.4.15 is a bug fix update for the Ruby 1.8.2 compatibility
2174
+ changes. This release includes:
2175
+
2176
+ * Fixed a bug that prevented the TESTOPTS flag from working with the
2177
+ revised for 1.8.2 test task.
2178
+ * Updated the docs on --trace to indicate that it also enables a full
2179
+ backtrace on errors.
2180
+ * Several fixes for new warnings generated.
2181
+
2182
+ ==== Mini-Roadmap
2183
+
2184
+ I will continue to issue Rake updates in the 0.4.xx series as new
2185
+ Ruby-1.8.2 issues become manifest. Once the codebase stabilizes, I
2186
+ will release a 0.5.0 version incorporating all the changes. If you
2187
+ are not using Ruby-1.8.2 and wish to avoid version churn, I recommend
2188
+ staying with a release prior to Rake-0.4.14.
2189
+
2190
+ === 0.4.14
2191
+
2192
+ Version 0.4.14 is a compatibility fix to allow Rake's test task to
2193
+ work under Ruby 1.8.2. A change in the Test::Unit autorun feature
2194
+ prevented Rake from running any tests. This release fixes the
2195
+ problem.
2196
+
2197
+ Rake 0.4.14 is the recommended release for anyone using Ruby 1.8.2.
2198
+
2199
+ === 0.4.13
2200
+
2201
+ * Fixed the dry-run flag so it is operating again.
2202
+ * Multiple arguments to sh and ruby commands will not be interpreted
2203
+ by the shell (patch provided by Jonathan Paisley).
2204
+
2205
+ === 0.4.12
2206
+
2207
+ * Added --silent (-s) to suppress the (in directory) rake message.
2208
+
2209
+ === 0.4.11
2210
+
2211
+ * Changed the "don't know how to rake" message (finally)
2212
+ * Changes references to a literal "Rakefile" to reference the global
2213
+ variable $rakefile (which contains the actual name of the rakefile).
2214
+
2215
+ === 0.4.10
2216
+
2217
+ * Added block support to the "sh" command, allowing users to take
2218
+ special actions on the result of the system call. E.g.
2219
+
2220
+ sh "shell_command" do |ok, res|
2221
+ puts "Program returned #{res.exitstatus}" if ! ok
2222
+ end
2223
+
2224
+ === 0.4.9
2225
+
2226
+ * Switched to Jamis Buck's RDoc template.
2227
+ * Removed autorequire from Rake's gem spec. This prevents the Rake
2228
+ libraries from loading while using rails.
2229
+
2230
+ === 0.4.8
2231
+
2232
+ * Added support for .rb versions of Rakefile.
2233
+ * Removed \\\n's from test task.
2234
+ * Fixed Ruby 1.9 compatibility issue with FileList.
2235
+
2236
+ === 0.4.7
2237
+
2238
+ * Fixed problem in FileList that caused Ruby 1.9 to go into infinite
2239
+ recursion. Since to_a was removed from Object, it does not need to
2240
+ added back into the list of methods to rewrite in FileList. (Thanks
2241
+ to Kent Sibilev for pointing this out).
2242
+
2243
+ === 0.4.6
2244
+ * Removed test version of ln in FileUtils that prevented safe_ln from
2245
+ using ln.
2246
+
2247
+ === 0.4.5
2248
+ * Upgraded comments in TestTask.
2249
+ * FileList to_s and inspect now automatically resolve pending changes.
2250
+ * FileList#exclude properly returns the FileList.
2251
+
2252
+ === 0.4.4
2253
+ * Fixed initialization problem with @comment.
2254
+ * Now using multi -r technique in TestTask. Switch Rakefile back to
2255
+ using the built-in test task macros because the rake runtime is no
2256
+ longer needed.
2257
+ * Added 'TEST=filename' and 'TESTOPTS=options' to the Test Task
2258
+ macros.
2259
+ * Allow a +test_files+ attribute in test tasks. This allows more
2260
+ flexibility in specifying test files.
2261
+
2262
+ === 0.4.3
2263
+ * Fixed Comment leakage.
2264
+
2265
+ === 0.4.2
2266
+ * Added safe_ln that falls back to a copy if a file link is not supported.
2267
+ * Package builder now uses safe\_ln.
2268
+
2269
+ === 0.4.1
2270
+ * Task comments are now additive, combined with "/".
2271
+ * Works with (soon to be released) rubygems 0.6.2 (or 0.7.0)
2272
+
2273
+ === 0.4.0
2274
+ * FileList now uses deferred loading. The file system is not searched
2275
+ until the first call that needs the file names.
2276
+ * VAR=VALUE options are now accepted on the command line and are
2277
+ treated like environment variables. The values may be tested in a
2278
+ Rakefile by referencing ENV['VAR'].
2279
+ * File.mtime is now used (instead of File.new().mtime).
2280
+
2281
+ === 0.3.2.x
2282
+
2283
+ * Removed some hidden dependencies on rubygems. Tests now will test
2284
+ gems only if they are installed.
2285
+ * Removed Sys from some example files. I believe that is that last
2286
+ reference to Sys outside of the contrib area.
2287
+ * Updated all copyright notices to include 2004.
2288
+
2289
+ === 0.3.2
2290
+
2291
+ * GEM Installation now works with the application stub.
2292
+
2293
+ === 0.3.1
2294
+
2295
+ * FileLists now automatically ignore CVS, .bak, !
2296
+ * GEM Installation now works.
2297
+
2298
+ === 0.3.0
2299
+
2300
+ Promoted 0.2.10.
2301
+
2302
+ === 0.2.10
2303
+ General
2304
+
2305
+ * Added title to Rake's rdocs
2306
+ * Contrib packages are no longer included in the documentation.
2307
+
2308
+ RDoc Issues
2309
+
2310
+ * Removed default for the '--main' option
2311
+ * Fixed rendering of the rdoc options
2312
+ * Fixed clean/clobber confusion with rerdoc
2313
+ * 'title' attribute added
2314
+
2315
+ Package Task Library Issues
2316
+
2317
+ * Version (or explicit :noversion) is required.
2318
+ * +package_file+ attribute is now writable
2319
+
2320
+ FileList Issues
2321
+
2322
+ * Dropped bang version of exclude. Now using ant-like include/exclude semantics.
2323
+ * Enabled the "yield self" idiom in FileList#initialize.
2324
+
2325
+ === 0.2.9
2326
+
2327
+ This version contains numerous changes as the RubyConf.new(2003)
2328
+ presentation was being prepared. The changes include:
2329
+
2330
+ * The monolithic rubyapp task library is in the process of being
2331
+ dropped in favor of lighter weight task libraries.
2332
+
2333
+ === 0.2.7
2334
+
2335
+ * Added "desc" for task descriptions.
2336
+ * -T will now display tasks with descriptions.
2337
+ * -P will display tasks and prerequisites.
2338
+ * Dropped the Sys module in favor of the 1.8.x FileUtils module. Sys
2339
+ is still supported in the contrib area.
2340
+
2341
+ === 0.2.6
2342
+
2343
+ * Moved to RubyForge
2344
+
2345
+ === 0.2.5
2346
+
2347
+ * Switched to standard ruby app builder.
2348
+ * Added no_match option to file matcher.
2349
+
2350
+ === 0.2.4
2351
+
2352
+ * Fixed indir, which neglected to actually change directories.
2353
+
2354
+ === 0.2.3
2355
+
2356
+ * Added rake module for a help target
2357
+ * Added 'for\_files' to Sys
2358
+ * Added a $rakefile constant
2359
+ * Added test for selecting proper rule with multiple targets.