rake 10.0.1 → 10.0.2

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

Potentially problematic release.


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

@@ -2,7 +2,7 @@
2
2
 
3
3
  Rake is invoked from the command line using:
4
4
 
5
- % rake [<em>options</em> ...] [<em>VAR</em>=<em>VALUE</em>] [<em>targets</em> ...]
5
+ % rake [options ...] [VAR=VALUE ...] [targets ...]
6
6
 
7
7
  Options are:
8
8
 
@@ -15,11 +15,13 @@ Options are:
15
15
  Used in combination with the -T and -D options, will force
16
16
  those options to show all the tasks, even the ones without comments.
17
17
 
18
- [<tt>--backtrace</tt> _output_ (-n)]
18
+ [<tt>--backtrace</tt>{=_output_} (-n)]
19
19
  Enable a full backtrace (i.e. like --trace, but without the task
20
- tracing details). The backtrace output will be directed to stderr
21
- by default. If the options _output_ parameter is set to "stdout",
22
- then the output will be directed to standard output.
20
+ tracing details). The _output_ parameter is optional, but if
21
+ specified it controls where the backtrace output is sent. If
22
+ _output_ is <tt>stdout</tt>, then backtrace output is directed to
23
+ stardard output. If _output_ is <tt>stderr</tt>, or if it is
24
+ missing, then the backtrace output is sent to standard error.
23
25
 
24
26
  [<tt>--comments</tt>]
25
27
  Used in combination with the -W options to force the output to
@@ -123,9 +125,13 @@ Options are:
123
125
  are defined using the "desc" command. If a pattern is given, then
124
126
  only tasks matching the pattern are displayed.
125
127
 
126
- [<tt>--trace</tt> (-t)]
128
+ [<tt>--trace</tt>{=_output_} (-t)]
127
129
  Turn on invoke/execute tracing. Also enable full backtrace on
128
- errors.
130
+ errors. The _output_ parameter is optional, but if specified it
131
+ controls where the trace output is sent. If _output_ is
132
+ <tt>stdout</tt>, then trace output is directed to stardard output.
133
+ If _output_ is <tt>stderr</tt>, or if it is missing, then trace
134
+ output is sent to standard error.
129
135
 
130
136
  [<tt>--verbose</tt> (-v)]
131
137
  Echo the Sys commands to standard output.
@@ -0,0 +1,114 @@
1
+ = Rake 0.9.5 Released
2
+
3
+ Rake version 0.9.5 contains a number of bug fixes.
4
+
5
+ == Changes
6
+
7
+ === New Features (in 0.9.3)
8
+
9
+ * Multitask tasks now use a thread pool. Use -j to limit the number of
10
+ available threads.
11
+
12
+ * Use -m to turn regular tasks into multitasks (use at your own risk).
13
+
14
+ * You can now do "Rake.add_rakelib 'dir'" in your Rakefile to
15
+ programatically add rake task libraries.
16
+
17
+ * You can specific backtrace suppression patterns (see
18
+ --supress-backtrace)
19
+
20
+ * Directory tasks can now take prerequisites and actions
21
+
22
+ * Use --backtrace to request a full backtrace without the task trace.
23
+
24
+ * You can say "--backtrace=stdout" and "--trace=stdout" to route trace
25
+ output to standard output rather than standard error.
26
+
27
+ * Optional 'phony' target (enable with 'require 'rake/phony'") for
28
+ special purpose builds.
29
+
30
+ * Task#clear now clears task comments as well as actions and
31
+ prerequisites. Task#clear_comment will specifically target comments.
32
+
33
+ * The --all option will force -T and -D to consider all the tasks,
34
+ with and without descriptions.
35
+
36
+ === Bug Fixes (0.9.3)
37
+
38
+ * Semi-colons in windows rakefile paths now work.
39
+
40
+ * Improved Control-C support when invoking multiple test suites.
41
+
42
+ * egrep method now reads files in text mode (better support for
43
+ Windows)
44
+
45
+ * Better deprecation line number reporting.
46
+
47
+ * The -W option now works with all tasks, whether they have a
48
+ description or not.
49
+
50
+ * File globs in rake should not be sorted alphabetically, independent
51
+ of file system and platform.
52
+
53
+ * Numerous internal improvements.
54
+
55
+ * Documentation typos and fixes.
56
+
57
+ === Bug Fixes (0.9.4)
58
+
59
+ * Exit status with failing tests is not correctly set to non-zero.
60
+
61
+ * Simplified syntax for phony task (for older versions of RDoc).
62
+
63
+ * Stand alone FileList usage gets glob function (without loading in
64
+ extra dependencies)
65
+
66
+ === Bug Fixes (0.9.5)
67
+
68
+ * --trace and --backtrace no longer swallow following task names.
69
+
70
+ == What is Rake
71
+
72
+ Rake is a build tool similar to the make program in many ways. But
73
+ instead of cryptic make recipes, Rake uses standard Ruby code to
74
+ declare tasks and dependencies. You have the full power of a modern
75
+ scripting language built right into your build tool.
76
+
77
+ == Availability
78
+
79
+ The easiest way to get and install rake is via RubyGems ...
80
+
81
+ gem install rake (you may need root/admin privileges)
82
+
83
+ Otherwise, you can get it from the more traditional places:
84
+
85
+ Home Page:: http://github.com/jimweirich/rake
86
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
87
+ GitHub:: git://github.com/jimweirich/rake.git
88
+
89
+ == Thanks
90
+
91
+ As usual, it was input from users that drove a alot of these changes. The
92
+ following people either contributed patches, made suggestions or made
93
+ otherwise helpful comments. Thanks to ...
94
+
95
+ * Aaron Patterson
96
+ * Dylan Smith
97
+ * Jo Liss
98
+ * Jonas Pfenniger
99
+ * Kazuki Tsujimoto
100
+ * Michael Bishop
101
+ * Michael Elufimov
102
+ * NAKAMURA Usaku
103
+ * Ryan Davis
104
+ * Sam Grönblom
105
+ * Sam Phippen
106
+ * Sergio Wong
107
+ * Tay Ray Chuan
108
+ * grosser
109
+ * quix
110
+
111
+ Also, many thanks to Eric Hodel for assisting with getting this release
112
+ out the door.
113
+
114
+ -- Jim Weirich
@@ -0,0 +1,191 @@
1
+ = Rake 10.0.2 Released
2
+
3
+ "Jim, when will Rake reach version 1.0?"
4
+
5
+ Over the past several years I've been asked that question at
6
+ conferences, panels and over twitter. Due to historical reasons (or
7
+ maybe just plain laziness) Rake has (incorrectly) been treating the
8
+ second digit of the version as the major release number. So in my head
9
+ Rake was already at version 9.
10
+
11
+ Well, it's time to fix things. This next version of Rake drops old,
12
+ crufty, backwards compatibility hacks such as top level constants, DSL
13
+ methods defined in Object and numerous other features that are just no
14
+ longer desired. It's also time to drop the leading zero from the
15
+ version number as well and call this new version of rake what it
16
+ really is: Version 10.
17
+
18
+ So, welcome to Rake 10.0!
19
+
20
+ Rake 10 is actually feature identical to the latest version of Rake 9
21
+ (that would be the version spelled 0.9.3), *except* that Rake 10 drops
22
+ all the sundry deprecated features that have accumulated over the years.
23
+
24
+ If your Rakefile is up to date and current with all the new features
25
+ of Rake 10, you are ready to go. If your Rakefile still uses a few
26
+ deprecated feeatures, feel free to use Rake 9 (0.9.3) with the same
27
+ feature set. Just be aware that future features will be in Rake 10
28
+ family line.
29
+
30
+ == Changes in Version 10
31
+
32
+ As mentioned above, there are no new features in Rake 10. However,
33
+ there are a number of features missing:
34
+
35
+ * Classic namespaces are now gone. Rake is no longer able to reflect
36
+ the options settings in the global variables ($rakefile, $show_tasks,
37
+ $show_prereqs, $trace, $dryrun and $silent). The
38
+ <tt>--classic-namespace</tt> option is no longer supported.
39
+
40
+ * Global constants are no longer supported. This includes
41
+ <tt>Task</tt>, <tt>FileTask</tt>, <tt>FileCreationTask</tt> and
42
+ <tt>RakeApp</tt>). The constant missing hook to warn about using
43
+ global rake constants has been removed.
44
+
45
+ * The Rake DSL methods (task, file, directory, etc) are in their own
46
+ module (Rake::DSL). The stub versions of these methods (that printed
47
+ warnings) in Object have been removed. However, the DSL methods are
48
+ added to the top-level <tt>main</tt> object. Since <tt>main</tt> is
49
+ not in the inheritance tree, the presence of the DSL methods in main
50
+ should be low impact on other libraries.
51
+
52
+ If you want to use the Rake DSL commands from your own code, just
53
+ include <tt>Rake::DSL</tt> into your own classes and modules.
54
+
55
+ * The deprecated syntax for task arguments (the one using
56
+ <tt>:needs</tt>) has been removed.
57
+
58
+ * The <tt>--reduce-compat</tt> flag has been removed (it's not needed
59
+ anymore).
60
+
61
+ * The deprecated <tt>rake/sys.rb</tt> library has been removed.
62
+
63
+ * The deprecated <tt>rake/rdoctask.rb</tt> library has been removed.
64
+ RDoc supplies its own rake task now.
65
+
66
+ * The deprecated <tt>rake/gempackagetask.rb</tt> library has been
67
+ removed. Gem supplies its own package task now.
68
+
69
+ There is one small behavioral change:
70
+
71
+ * Non-file tasks now always report the current time as their time
72
+ stamp. This is different from the previous behavior where non-file
73
+ tasks reported current time only if there were no prerequisites, and
74
+ the max prerequisite timestamp otherwise. This lead to inconsistent
75
+ and surprising behavior when adding prerequisites to tasks that in
76
+ turn were prequisites to file tasks. The new behavior is more
77
+ consistent and predictable.
78
+
79
+ == Changes (from 0.9.3, 0.9.4, 0.9.5)
80
+
81
+ Since Rake 10 includes the changes from the last version of Rake 9,
82
+ we'll repeat the changes for versions 0.9.3 through 0.9.5 here.
83
+
84
+ === New Features (in 0.9.3)
85
+
86
+ * Multitask tasks now use a thread pool. Use -j to limit the number of
87
+ available threads.
88
+
89
+ * Use -m to turn regular tasks into multitasks (use at your own risk).
90
+
91
+ * You can now do "Rake.add_rakelib 'dir'" in your Rakefile to
92
+ programatically add rake task libraries.
93
+
94
+ * You can specific backtrace suppression patterns (see
95
+ --supress-backtrace)
96
+
97
+ * Directory tasks can now take prerequisites and actions
98
+
99
+ * Use --backtrace to request a full backtrace without the task trace.
100
+
101
+ * You can say "--backtrace=stdout" and "--trace=stdout" to route trace
102
+ output to standard output rather than standard error.
103
+
104
+ * Optional 'phony' target (enable with 'require 'rake/phony'") for
105
+ special purpose builds.
106
+
107
+ * Task#clear now clears task comments as well as actions and
108
+ prerequisites. Task#clear_comment will specifically target comments.
109
+
110
+ * The --all option will force -T and -D to consider all the tasks,
111
+ with and without descriptions.
112
+
113
+ === Bug Fixes (in 0.9.3)
114
+
115
+ * Semi-colons in windows rakefile paths now work.
116
+
117
+ * Improved Control-C support when invoking multiple test suites.
118
+
119
+ * egrep method now reads files in text mode (better support for
120
+ Windows)
121
+
122
+ * Better deprecation line number reporting.
123
+
124
+ * The -W option now works with all tasks, whether they have a
125
+ description or not.
126
+
127
+ * File globs in rake should not be sorted alphabetically, independent
128
+ of file system and platform.
129
+
130
+ * Numerous internal improvements.
131
+
132
+ * Documentation typos and fixes.
133
+
134
+ === Bug Fixes (in 0.9.4)
135
+
136
+ * Exit status with failing tests is not correctly set to non-zero.
137
+
138
+ * Simplified syntax for phony task (for older versions of RDoc).
139
+
140
+ * Stand alone FileList usage gets glob function (without loading in
141
+ extra dependencies)
142
+
143
+ === Bug Fixes (in 0.9.5)
144
+
145
+ * --trace and --backtrace no longer swallow following task names.
146
+
147
+ == What is Rake
148
+
149
+ Rake is a build tool similar to the make program in many ways. But
150
+ instead of cryptic make recipes, Rake uses standard Ruby code to
151
+ declare tasks and dependencies. You have the full power of a modern
152
+ scripting language built right into your build tool.
153
+
154
+ == Availability
155
+
156
+ The easiest way to get and install rake is via RubyGems ...
157
+
158
+ gem install rake (you may need root/admin privileges)
159
+
160
+ Otherwise, you can get it from the more traditional places:
161
+
162
+ Home Page:: http://github.com/jimweirich/rake
163
+ Download:: http://rubyforge.org/project/showfiles.php?group_id=50
164
+ GitHub:: git://github.com/jimweirich/rake.git
165
+
166
+ == Thanks
167
+
168
+ As usual, it was input from users that drove a lot of these changes. The
169
+ following people contributed patches, made suggestions or made
170
+ otherwise helpful comments. Thanks to ...
171
+
172
+ * Aaron Patterson
173
+ * Dylan Smith
174
+ * Jo Liss
175
+ * Jonas Pfenniger
176
+ * Kazuki Tsujimoto
177
+ * Michael Bishop
178
+ * Michael Elufimov
179
+ * NAKAMURA Usaku
180
+ * Ryan Davis
181
+ * Sam Grönblom
182
+ * Sam Phippen
183
+ * Sergio Wong
184
+ * Tay Ray Chuan
185
+ * grosser
186
+ * quix
187
+
188
+ Also, many thanks to Eric Hodel for assisting with getting this release
189
+ out the door.
190
+
191
+ -- Jim Weirich
@@ -337,7 +337,7 @@ module Rake
337
337
  options.show_all_tasks = value
338
338
  }
339
339
  ],
340
- ['--backtrace [OUT]', "Enable full backtrace. OUT can be stderr (default) or stdout.",
340
+ ['--backtrace=[OUT]', "Enable full backtrace. OUT can be stderr (default) or stdout.",
341
341
  lambda { |value|
342
342
  options.backtrace = true
343
343
  select_trace_output(options, 'backtrace', value)
@@ -457,7 +457,7 @@ module Rake
457
457
  select_tasks_to_show(options, :tasks, value)
458
458
  }
459
459
  ],
460
- ['--trace', '-t [OUT]', "Turn on invoke/execute tracing, enable full backtrace. OUT can be stderr (default) or stdout.",
460
+ ['--trace=[OUT]', '-t', "Turn on invoke/execute tracing, enable full backtrace. OUT can be stderr (default) or stdout.",
461
461
  lambda { |value|
462
462
  options.trace = true
463
463
  options.backtrace = true
@@ -385,7 +385,7 @@ module Rake
385
385
  end
386
386
 
387
387
  # Get a sorted list of files matching the pattern. This method
388
- # should be prefered to Dir[pattern] and Dir.glob[pattern] because
388
+ # should be prefered to Dir[pattern] and Dir.glob(pattern) because
389
389
  # the files returned are guaranteed to be sorted.
390
390
  def glob(pattern, *args)
391
391
  Dir.glob(pattern, *args).sort
@@ -3,7 +3,7 @@ module Rake
3
3
  NUMBERS = [
4
4
  MAJOR = 10,
5
5
  MINOR = 0,
6
- BUILD = 1,
6
+ BUILD = 2,
7
7
  ]
8
8
  end
9
9
  VERSION = Version::NUMBERS.join('.')
@@ -302,6 +302,37 @@ class TestRakeApplication < Rake::TestCase
302
302
  assert @app.options.trace
303
303
  end
304
304
 
305
+ def test_handle_options_trace_default_is_stderr
306
+ ARGV.clear
307
+ ARGV << "--trace"
308
+
309
+ @app.handle_options
310
+
311
+ assert_equal STDERR, @app.options.trace_output
312
+ assert @app.options.trace
313
+ end
314
+
315
+ def test_handle_options_trace_overrides_to_stdout
316
+ ARGV.clear
317
+ ARGV << "--trace=stdout"
318
+
319
+ @app.handle_options
320
+
321
+ assert_equal STDOUT, @app.options.trace_output
322
+ assert @app.options.trace
323
+ end
324
+
325
+ def test_handle_options_trace_does_not_eat_following_task_names
326
+ assert !@app.options.trace
327
+
328
+ ARGV.clear
329
+ ARGV << "--trace" << "sometask"
330
+
331
+ @app.handle_options
332
+ assert ARGV.include?("sometask")
333
+ assert @app.options.trace
334
+ end
335
+
305
336
  def test_good_run
306
337
  ran = false
307
338
 
@@ -227,7 +227,7 @@ class TestRakeApplicationOptions < Rake::TestCase
227
227
  end
228
228
 
229
229
  def test_trace_with_stdout
230
- flags('--trace=stdout', '-tstdout', '-t stdout') do |opts|
230
+ flags('--trace=stdout', '-tstdout') do |opts|
231
231
  assert opts.trace, "should enable trace option"
232
232
  assert opts.backtrace, "should enabled backtrace option"
233
233
  assert_equal $stdout, opts.trace_output
@@ -237,7 +237,7 @@ class TestRakeApplicationOptions < Rake::TestCase
237
237
  end
238
238
 
239
239
  def test_trace_with_stderr
240
- flags('--trace=stderr', '-tstderr', '-t stderr') do |opts|
240
+ flags('--trace=stderr', '-tstderr') do |opts|
241
241
  assert opts.trace, "should enable trace option"
242
242
  assert opts.backtrace, "should enabled backtrace option"
243
243
  assert_equal $stderr, opts.trace_output
@@ -253,13 +253,21 @@ class TestRakeApplicationOptions < Rake::TestCase
253
253
  assert_match(/un(known|recognized).*\btrace\b.*xyzzy/i, ex.message)
254
254
  end
255
255
 
256
+ def test_trace_with_following_task_name
257
+ flags(['--trace', 'taskname'], ['-t', 'taskname']) do |opts|
258
+ assert opts.trace, "should enable trace option"
259
+ assert opts.backtrace, "should enabled backtrace option"
260
+ assert_equal $stderr, opts.trace_output
261
+ assert Rake::FileUtilsExt.verbose_flag
262
+ assert_equal ['taskname'], @app.top_level_tasks
263
+ end
264
+ end
256
265
 
257
266
  def test_backtrace
258
267
  flags('--backtrace') do |opts|
259
268
  assert opts.backtrace, "should enable backtrace option"
260
269
  assert_equal $stderr, opts.trace_output
261
270
  assert ! opts.trace, "should not enable trace option"
262
- assert ! Rake::FileUtilsExt.verbose_flag
263
271
  end
264
272
  end
265
273
 
@@ -268,7 +276,6 @@ class TestRakeApplicationOptions < Rake::TestCase
268
276
  assert opts.backtrace, "should enable backtrace option"
269
277
  assert_equal $stdout, opts.trace_output
270
278
  assert ! opts.trace, "should not enable trace option"
271
- assert ! Rake::FileUtilsExt.verbose_flag
272
279
  end
273
280
  end
274
281
 
@@ -277,7 +284,6 @@ class TestRakeApplicationOptions < Rake::TestCase
277
284
  assert opts.backtrace, "should enable backtrace option"
278
285
  assert_equal $stderr, opts.trace_output
279
286
  assert ! opts.trace, "should not enable trace option"
280
- assert ! Rake::FileUtilsExt.verbose_flag
281
287
  end
282
288
  end
283
289
 
@@ -288,6 +294,15 @@ class TestRakeApplicationOptions < Rake::TestCase
288
294
  assert_match(/un(known|recognized).*\bbacktrace\b.*xyzzy/i, ex.message)
289
295
  end
290
296
 
297
+ def test_backtrace_with_following_task_name
298
+ flags(['--backtrace', 'taskname']) do |opts|
299
+ assert ! opts.trace, "should enable trace option"
300
+ assert opts.backtrace, "should enabled backtrace option"
301
+ assert_equal $stderr, opts.trace_output
302
+ assert_equal ['taskname'], @app.top_level_tasks
303
+ end
304
+ end
305
+
291
306
  def test_trace_rules
292
307
  flags('--rules') do |opts|
293
308
  assert opts.trace_rules
@@ -1,10 +1,6 @@
1
1
  require File.expand_path('../helper', __FILE__)
2
2
  require 'fileutils'
3
3
 
4
- def load_phony
5
- load File.dirname(__FILE__) + "/../lib/rake/phony.rb"
6
- end
7
-
8
4
  class TestRakeFileTask < Rake::TestCase
9
5
  include Rake
10
6
 
@@ -119,4 +115,8 @@ class TestRakeFileTask < Rake::TestCase
119
115
  assert( ! File.exist?(NEWFILE), "NEWFILE should be deleted")
120
116
  end
121
117
 
118
+ def load_phony
119
+ load File.join(@orig_PWD, "lib/rake/phony.rb")
120
+ end
121
+
122
122
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.0.1
4
+ version: 10.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-14 00:00:00.000000000 Z
12
+ date: 2012-11-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
@@ -66,8 +66,10 @@ extra_rdoc_files:
66
66
  - doc/release_notes/rake-0.9.2.rdoc
67
67
  - doc/release_notes/rake-0.9.3.rdoc
68
68
  - doc/release_notes/rake-0.9.4.rdoc
69
+ - doc/release_notes/rake-0.9.5.rdoc
69
70
  - doc/release_notes/rake-10.0.0.rdoc
70
71
  - doc/release_notes/rake-10.0.1.rdoc
72
+ - doc/release_notes/rake-10.0.2.rdoc
71
73
  files:
72
74
  - .gemtest
73
75
  - install.rb
@@ -206,8 +208,10 @@ files:
206
208
  - doc/release_notes/rake-0.9.2.rdoc
207
209
  - doc/release_notes/rake-0.9.3.rdoc
208
210
  - doc/release_notes/rake-0.9.4.rdoc
211
+ - doc/release_notes/rake-0.9.5.rdoc
209
212
  - doc/release_notes/rake-10.0.0.rdoc
210
213
  - doc/release_notes/rake-10.0.1.rdoc
214
+ - doc/release_notes/rake-10.0.2.rdoc
211
215
  homepage: http://rake.rubyforge.org
212
216
  licenses: []
213
217
  post_install_message: