rake 0.4.11 → 13.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. checksums.yaml +7 -0
  2. data/History.rdoc +2454 -0
  3. data/MIT-LICENSE +1 -1
  4. data/README.rdoc +155 -0
  5. data/doc/command_line_usage.rdoc +171 -0
  6. data/doc/glossary.rdoc +40 -49
  7. data/doc/jamis.rb +135 -107
  8. data/doc/proto_rake.rdoc +22 -22
  9. data/doc/rake.1 +156 -0
  10. data/doc/rakefile.rdoc +428 -27
  11. data/doc/rational.rdoc +6 -6
  12. data/exe/rake +27 -0
  13. data/lib/rake/application.rb +847 -0
  14. data/lib/rake/backtrace.rb +25 -0
  15. data/lib/rake/clean.rb +57 -10
  16. data/lib/rake/cloneable.rb +17 -0
  17. data/lib/rake/cpu_counter.rb +122 -0
  18. data/lib/rake/default_loader.rb +15 -0
  19. data/lib/rake/dsl_definition.rb +196 -0
  20. data/lib/rake/early_time.rb +22 -0
  21. data/lib/rake/ext/core.rb +26 -0
  22. data/lib/rake/ext/string.rb +176 -0
  23. data/lib/rake/file_creation_task.rb +25 -0
  24. data/lib/rake/file_list.rb +435 -0
  25. data/lib/rake/file_task.rb +58 -0
  26. data/lib/rake/file_utils.rb +137 -0
  27. data/lib/rake/file_utils_ext.rb +135 -0
  28. data/lib/rake/invocation_chain.rb +57 -0
  29. data/lib/rake/invocation_exception_mixin.rb +17 -0
  30. data/lib/rake/late_time.rb +18 -0
  31. data/lib/rake/linked_list.rb +112 -0
  32. data/lib/rake/loaders/makefile.rb +54 -0
  33. data/lib/rake/multi_task.rb +14 -0
  34. data/lib/rake/name_space.rb +38 -0
  35. data/lib/rake/options.rb +31 -0
  36. data/lib/rake/packagetask.rb +124 -54
  37. data/lib/rake/phony.rb +16 -0
  38. data/lib/rake/private_reader.rb +21 -0
  39. data/lib/rake/promise.rb +100 -0
  40. data/lib/rake/pseudo_status.rb +30 -0
  41. data/lib/rake/rake_module.rb +67 -0
  42. data/lib/rake/rake_test_loader.rb +27 -0
  43. data/lib/rake/rule_recursion_overflow_error.rb +20 -0
  44. data/lib/rake/scope.rb +43 -0
  45. data/lib/rake/task.rb +434 -0
  46. data/lib/rake/task_argument_error.rb +8 -0
  47. data/lib/rake/task_arguments.rb +113 -0
  48. data/lib/rake/task_manager.rb +333 -0
  49. data/lib/rake/tasklib.rb +4 -16
  50. data/lib/rake/testtask.rb +110 -36
  51. data/lib/rake/thread_history_display.rb +49 -0
  52. data/lib/rake/thread_pool.rb +157 -0
  53. data/lib/rake/trace_output.rb +23 -0
  54. data/lib/rake/version.rb +10 -0
  55. data/lib/rake/win32.rb +17 -0
  56. data/lib/rake.rb +64 -992
  57. data/rake.gemspec +102 -0
  58. metadata +117 -89
  59. data/CHANGES +0 -153
  60. data/README +0 -209
  61. data/Rakefile +0 -215
  62. data/TODO +0 -19
  63. data/bin/rake +0 -8
  64. data/install.rb +0 -88
  65. data/lib/rake/contrib/compositepublisher.rb +0 -24
  66. data/lib/rake/contrib/ftptools.rb +0 -139
  67. data/lib/rake/contrib/publisher.rb +0 -75
  68. data/lib/rake/contrib/rubyforgepublisher.rb +0 -18
  69. data/lib/rake/contrib/sshpublisher.rb +0 -47
  70. data/lib/rake/contrib/sys.rb +0 -207
  71. data/lib/rake/gempackagetask.rb +0 -98
  72. data/lib/rake/rdoctask.rb +0 -128
  73. data/lib/rake/runtest.rb +0 -23
  74. data/test/contrib/testsys.rb +0 -47
  75. data/test/data/rbext/rakefile.rb +0 -3
  76. data/test/filecreation.rb +0 -26
  77. data/test/functional.rb +0 -82
  78. data/test/shellcommand.rb +0 -3
  79. data/test/testclean.rb +0 -13
  80. data/test/testfilelist.rb +0 -255
  81. data/test/testfileutils.rb +0 -83
  82. data/test/testftp.rb +0 -55
  83. data/test/testpackagetask.rb +0 -81
  84. data/test/testtasks.rb +0 -371
  85. data/test/testtesttask.rb +0 -71
data/doc/jamis.rb CHANGED
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module RDoc
2
3
  module Page
3
4
 
@@ -182,30 +183,39 @@ h3, h4, h5, h6 {
182
183
 
183
184
  CSS
184
185
 
185
- BODY = <<HTML
186
+ XHTML_PREAMBLE = %{<?xml version="1.0" encoding="%charset%"?>
187
+ <!DOCTYPE html
188
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
189
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
190
+ }
191
+
192
+ HEADER = XHTML_PREAMBLE + <<ENDHEADER
186
193
  <html>
187
194
  <head>
188
195
  <title>%title%</title>
189
196
  <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
190
197
  <link rel="stylesheet" href="%style_url%" type="text/css" media="screen" />
191
198
 
192
- <script type="text/javascript" language="JavaScript">
193
- <!--
199
+ <script language="JavaScript" type="text/javascript">
200
+ // <![CDATA[
201
+
194
202
  function toggleSource( id )
195
203
  {
196
204
  var elem
197
205
  var link
198
206
 
199
- if( document.all )
207
+ if( document.getElementById )
208
+ {
209
+ elem = document.getElementById( id )
210
+ link = document.getElementById( "l_" + id )
211
+ }
212
+ else if ( document.all )
200
213
  {
201
214
  elem = eval( "document.all." + id )
202
215
  link = eval( "document.all.l_" + id )
203
216
  }
204
217
  else
205
- {
206
- elem = document.getElementById( id )
207
- link = document.getElementById( "l_" + id )
208
- }
218
+ return false;
209
219
 
210
220
  if( elem.style.display == "block" )
211
221
  {
@@ -223,89 +233,12 @@ BODY = <<HTML
223
233
  {
224
234
  window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
225
235
  }
226
- //-->
236
+ // ]]>
227
237
  </script>
228
238
  </head>
229
239
 
230
240
  <body>
231
- !INCLUDE! <!-- banner header -->
232
-
233
- <div id="content">
234
- IF:diagram
235
- <table cellpadding='0' cellspacing='0' border='0' width="100%"><tr><td align="center">
236
- %diagram%
237
- </td></tr></table>
238
- ENDIF:diagram
239
-
240
- IF:description
241
- <div class="description">%description%</div>
242
- ENDIF:description
243
-
244
- IF:requires
245
- <div class="sectiontitle">Required Files</div>
246
- <ul>
247
- START:requires
248
- <li>HREF:aref:name:</li>
249
- END:requires
250
- </ul>
251
- ENDIF:requires
252
-
253
- IF:methods
254
- <div class="sectiontitle">Methods</div>
255
- <ul>
256
- START:methods
257
- <li>HREF:aref:name:</li>
258
- END:methods
259
- </ul>
260
- ENDIF:methods
261
-
262
- IF:constants
263
- <div class="sectiontitle">Constants</div>
264
- <table border='0' cellpadding='5'>
265
- START:constants
266
- <tr valign='top'>
267
- <td class="attr-name">%name%</td>
268
- <td>=</td>
269
- <td class="attr-value">%value%</td>
270
- </tr>
271
- IF:desc
272
- <tr valign='top'>
273
- <td>&nbsp;</td>
274
- <td colspan="2" class="attr-desc">%desc%</td>
275
- </tr>
276
- ENDIF:desc
277
- END:constants
278
- </table>
279
- ENDIF:constants
280
-
281
- IF:attributes
282
- <div class="sectiontitle">Attributes</div>
283
- <table border='0' cellpadding='5'>
284
- START:attributes
285
- <tr valign='top'>
286
- <td class='attr-rw'>
287
- IF:rw
288
- [%rw%]
289
- ENDIF:rw
290
- </td>
291
- <td class='attr-name'>%name%</td>
292
- <td class='attr-desc'>%a_desc%</td>
293
- </tr>
294
- END:attributes
295
- </table>
296
- ENDIF:attributes
297
-
298
- IF:classlist
299
- <div class="sectiontitle">Classes and Modules</div>
300
- %classlist%
301
- ENDIF:classlist
302
-
303
- !INCLUDE! <!-- method descriptions -->
304
-
305
- </div>
306
- </body>
307
- </html>
308
- HTML
241
+ ENDHEADER
309
242
 
310
243
  FILE_PAGE = <<HTML
311
244
  <table border='0' cellpadding='0' cellspacing='0' width="100%" class='banner'>
@@ -318,7 +251,7 @@ FILE_PAGE = <<HTML
318
251
  <td>Path:</td>
319
252
  <td>%full_path%
320
253
  IF:cvsurl
321
- &nbsp;(<a href="%cvsurl%">CVS</a>)
254
+ &nbsp;(<a href="%cvsurl%">CVS</a>)
322
255
  ENDIF:cvsurl
323
256
  </td>
324
257
  </tr>
@@ -374,6 +307,44 @@ HTML
374
307
  ###################################################################
375
308
 
376
309
  METHOD_LIST = <<HTML
310
+ <div id="content">
311
+ IF:diagram
312
+ <table cellpadding='0' cellspacing='0' border='0' width="100%"><tr><td align="center">
313
+ %diagram%
314
+ </td></tr></table>
315
+ ENDIF:diagram
316
+
317
+ IF:description
318
+ <div class="description">%description%</div>
319
+ ENDIF:description
320
+
321
+ IF:requires
322
+ <div class="sectiontitle">Required Files</div>
323
+ <ul>
324
+ START:requires
325
+ <li>HREF:aref:name:</li>
326
+ END:requires
327
+ </ul>
328
+ ENDIF:requires
329
+
330
+ IF:toc
331
+ <div class="sectiontitle">Contents</div>
332
+ <ul>
333
+ START:toc
334
+ <li><a href="#%href%">%secname%</a></li>
335
+ END:toc
336
+ </ul>
337
+ ENDIF:toc
338
+
339
+ IF:methods
340
+ <div class="sectiontitle">Methods</div>
341
+ <ul>
342
+ START:methods
343
+ <li>HREF:aref:name:</li>
344
+ END:methods
345
+ </ul>
346
+ ENDIF:methods
347
+
377
348
  IF:includes
378
349
  <div class="sectiontitle">Included Modules</div>
379
350
  <ul>
@@ -383,6 +354,57 @@ END:includes
383
354
  </ul>
384
355
  ENDIF:includes
385
356
 
357
+ START:sections
358
+ IF:sectitle
359
+ <div class="sectiontitle"><a nem="%secsequence%">%sectitle%</a></div>
360
+ IF:seccomment
361
+ <div class="description">
362
+ %seccomment%
363
+ </div>
364
+ ENDIF:seccomment
365
+ ENDIF:sectitle
366
+
367
+ IF:classlist
368
+ <div class="sectiontitle">Classes and Modules</div>
369
+ %classlist%
370
+ ENDIF:classlist
371
+
372
+ IF:constants
373
+ <div class="sectiontitle">Constants</div>
374
+ <table border='0' cellpadding='5'>
375
+ START:constants
376
+ <tr valign='top'>
377
+ <td class="attr-name">%name%</td>
378
+ <td>=</td>
379
+ <td class="attr-value">%value%</td>
380
+ </tr>
381
+ IF:desc
382
+ <tr valign='top'>
383
+ <td>&nbsp;</td>
384
+ <td colspan="2" class="attr-desc">%desc%</td>
385
+ </tr>
386
+ ENDIF:desc
387
+ END:constants
388
+ </table>
389
+ ENDIF:constants
390
+
391
+ IF:attributes
392
+ <div class="sectiontitle">Attributes</div>
393
+ <table border='0' cellpadding='5'>
394
+ START:attributes
395
+ <tr valign='top'>
396
+ <td class='attr-rw'>
397
+ IF:rw
398
+ [%rw%]
399
+ ENDIF:rw
400
+ </td>
401
+ <td class='attr-name'>%name%</td>
402
+ <td class='attr-desc'>%a_desc%</td>
403
+ </tr>
404
+ END:attributes
405
+ </table>
406
+ ENDIF:attributes
407
+
386
408
  IF:method_list
387
409
  START:method_list
388
410
  IF:methods
@@ -415,8 +437,8 @@ END:aka
415
437
  ENDIF:aka
416
438
  IF:sourcecode
417
439
  <div class="sourcecode">
418
- <p class="source-link">[ <a href="javascript:toggleSource('%aref%-source')" id="l_%aref%-source">show source</a> ]</p>
419
- <div id="%aref%-source" class="dyn-source">
440
+ <p class="source-link">[ <a href="javascript:toggleSource('%aref%_source')" id="l_%aref%_source">show source</a> ]</p>
441
+ <div id="%aref%_source" class="dyn-source">
420
442
  <pre>
421
443
  %sourcecode%
422
444
  </pre>
@@ -428,14 +450,28 @@ END:methods
428
450
  ENDIF:methods
429
451
  END:method_list
430
452
  ENDIF:method_list
453
+ END:sections
454
+ </div>
431
455
  HTML
432
456
 
433
- =begin
434
- =end
457
+ FOOTER = <<ENDFOOTER
458
+ </body>
459
+ </html>
460
+ ENDFOOTER
461
+
462
+ BODY = HEADER + <<ENDBODY
463
+ !INCLUDE! <!-- banner header -->
464
+
465
+ <div id="bodyContent">
466
+ #{METHOD_LIST}
467
+ </div>
468
+
469
+ #{FOOTER}
470
+ ENDBODY
435
471
 
436
472
  ########################## Source code ##########################
437
473
 
438
- SRC_PAGE = <<HTML
474
+ SRC_PAGE = XHTML_PREAMBLE + <<HTML
439
475
  <html>
440
476
  <head><title>%title%</title>
441
477
  <meta http-equiv="Content-Type" content="text/html; charset=%charset%">
@@ -467,7 +503,7 @@ FR_INDEX_BODY = <<HTML
467
503
  !INCLUDE!
468
504
  HTML
469
505
 
470
- FILE_INDEX = <<HTML
506
+ FILE_INDEX = XHTML_PREAMBLE + <<HTML
471
507
  <html>
472
508
  <head>
473
509
  <meta http-equiv="Content-Type" content="text/html; charset=%charset%">
@@ -475,7 +511,7 @@ FILE_INDEX = <<HTML
475
511
  <!--
476
512
  body {
477
513
  background-color: #EEE;
478
- font-family: #{FONTS};
514
+ font-family: #{FONTS};
479
515
  color: #000;
480
516
  margin: 0px;
481
517
  }
@@ -494,6 +530,7 @@ FILE_INDEX = <<HTML
494
530
  a {
495
531
  color: #00F;
496
532
  text-decoration: none;
533
+ white-space: nowrap;
497
534
  }
498
535
  a:hover {
499
536
  color: #77F;
@@ -516,8 +553,8 @@ HTML
516
553
  CLASS_INDEX = FILE_INDEX
517
554
  METHOD_INDEX = FILE_INDEX
518
555
 
519
- INDEX = <<HTML
520
- <html>
556
+ INDEX = XHTML_PREAMBLE + <<HTML
557
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
521
558
  <head>
522
559
  <title>%title%</title>
523
560
  <meta http-equiv="Content-Type" content="text/html; charset=%charset%">
@@ -549,16 +586,7 @@ ENDIF:inline_source
549
586
  </html>
550
587
  HTML
551
588
 
552
- # and a blank page to use as a target
553
- BLANK = %{
554
- <html><body bgcolor="white"></body></html>
555
- }
556
-
557
- def write_extra_pages
558
- template = TemplatePage.new(BLANK)
559
- File.open("blank.html", "w") { |f| template.write_html_on(f, {}) }
560
- end
561
-
562
589
  end
563
590
  end
564
591
 
592
+
data/doc/proto_rake.rdoc CHANGED
@@ -4,54 +4,54 @@ This is the original 100 line prototype rake program.
4
4
 
5
5
  ---
6
6
  #!/usr/bin/env ruby
7
-
7
+
8
8
  require 'ftools'
9
-
9
+
10
10
  class Task
11
11
  TASKS = Hash.new
12
-
12
+
13
13
  attr_reader :prerequisites
14
-
14
+
15
15
  def initialize(task_name)
16
16
  @name = task_name
17
17
  @prerequisites = []
18
18
  @actions = []
19
19
  end
20
-
20
+
21
21
  def enhance(deps=nil, &block)
22
22
  @prerequisites |= deps if deps
23
23
  @actions << block if block_given?
24
24
  self
25
25
  end
26
-
26
+
27
27
  def name
28
28
  @name.to_s
29
29
  end
30
-
30
+
31
31
  def invoke
32
32
  @prerequisites.each { |n| Task[n].invoke }
33
33
  execute if needed?
34
34
  end
35
-
35
+
36
36
  def execute
37
37
  return if @triggered
38
38
  @triggered = true
39
39
  @actions.collect { |act| result = act.call(self) }.last
40
40
  end
41
-
41
+
42
42
  def needed?
43
43
  true
44
44
  end
45
-
45
+
46
46
  def timestamp
47
47
  Time.now
48
48
  end
49
-
49
+
50
50
  class << self
51
51
  def [](task_name)
52
52
  TASKS[intern(task_name)] or fail "Don't know how to rake #{task_name}"
53
53
  end
54
-
54
+
55
55
  def define_task(args, &block)
56
56
  case args
57
57
  when Hash
@@ -66,18 +66,18 @@ This is the original 100 line prototype rake program.
66
66
  deps = deps.collect {|d| intern(d) }
67
67
  get(task_name).enhance(deps, &block)
68
68
  end
69
-
69
+
70
70
  def get(task_name)
71
71
  name = intern(task_name)
72
72
  TASKS[name] ||= self.new(name)
73
73
  end
74
-
74
+
75
75
  def intern(task_name)
76
76
  (Symbol === task_name) ? task_name : task_name.intern
77
77
  end
78
78
  end
79
79
  end
80
-
80
+
81
81
  class FileTask < Task
82
82
  def needed?
83
83
  return true unless File.exist?(name)
@@ -85,25 +85,25 @@ This is the original 100 line prototype rake program.
85
85
  return false if latest_prereq.nil?
86
86
  timestamp < latest_prereq
87
87
  end
88
-
88
+
89
89
  def timestamp
90
90
  File.new(name.to_s).mtime
91
91
  end
92
92
  end
93
-
93
+
94
94
  def task(args, &block)
95
95
  Task.define_task(args, &block)
96
96
  end
97
-
97
+
98
98
  def file(args, &block)
99
99
  FileTask.define_task(args, &block)
100
100
  end
101
-
101
+
102
102
  def sys(cmd)
103
103
  puts cmd
104
104
  system(cmd) or fail "Command Failed: [#{cmd}]"
105
105
  end
106
-
106
+
107
107
  def rake
108
108
  begin
109
109
  here = Dir.pwd
@@ -119,9 +119,9 @@ This is the original 100 line prototype rake program.
119
119
  rescue Exception => ex
120
120
  puts "rake aborted ... #{ex.message}"
121
121
  puts ex.backtrace.find {|str| str =~ /Rakefile/ } || ""
122
- end
122
+ end
123
123
  end
124
-
124
+
125
125
  if __FILE__ == $0 then
126
126
  rake
127
127
  end
data/doc/rake.1 ADDED
@@ -0,0 +1,156 @@
1
+ .Dd June 12, 2016
2
+ .Dt RAKE 1
3
+ .Os rake 11.2.2
4
+ .Sh NAME
5
+ .Nm rake
6
+ .Nd make-like build utility for Ruby
7
+ .Sh SYNOPSIS
8
+ .Nm
9
+ .Op Fl f Ar rakefile
10
+ .Op Ar options
11
+ .Ar targets ...
12
+ .Sh DESCRIPTION
13
+ .Nm
14
+ is a
15
+ .Xr make 1 Ns -like
16
+ build utility for Ruby.
17
+ Tasks and dependencies are specified in standard Ruby syntax.
18
+ .Sh OPTIONS
19
+ .Bl -tag -width Ds
20
+ .It Fl m , Fl -multitask
21
+ Treat all tasks as multitasks.
22
+ .It Fl B , Fl -build-all
23
+ Build all prerequisites, including those which are up\-to\-date.
24
+ .It Fl j , Fl -jobs Ar num_jobs
25
+ Specifies the maximum number of tasks to execute in parallel (default is number of CPU cores + 4).
26
+ .El
27
+ .Ss Modules
28
+ .Bl -tag -width Ds
29
+ .It Fl I , Fl -libdir Ar libdir
30
+ Include
31
+ .Ar libdir
32
+ in the search path for required modules.
33
+ .It Fl r , Fl -require Ar module
34
+ Require
35
+ .Ar module
36
+ before executing
37
+ .Pa rakefile .
38
+ .El
39
+ .Ss Rakefile location
40
+ .Bl -tag -width Ds
41
+ .It Fl f , Fl -rakefile Ar filename
42
+ Use
43
+ .Ar filename
44
+ as the rakefile to search for.
45
+ .It Fl N , Fl -no-search , Fl -nosearch
46
+ Do not search parent directories for the Rakefile.
47
+ .It Fl G , Fl -no-system , Fl -nosystem
48
+ Use standard project Rakefile search paths, ignore system wide rakefiles.
49
+ .It Fl R , Fl -rakelib Ar rakelibdir , Fl -rakelibdir Ar rakelibdir
50
+ Auto-import any .rake files in
51
+ .Ar rakelibdir
52
+ (default is
53
+ .Sq rakelib )
54
+ .It Fl g , Fl -system
55
+ Use system-wide (global) rakefiles (usually
56
+ .Pa ~/.rake/*.rake ) .
57
+ .El
58
+ .Ss Debugging
59
+ .Bl -tag -width Ds
60
+ .It Fl -backtrace Ns = Ns Ar out
61
+ Enable full backtrace.
62
+ .Ar out
63
+ can be
64
+ .Dv stderr
65
+ (default) or
66
+ .Dv stdout .
67
+ .It Fl t , Fl -trace Ns = Ns Ar out
68
+ Turn on invoke/execute tracing, enable full backtrace.
69
+ .Ar out
70
+ can be
71
+ .Dv stderr
72
+ (default) or
73
+ .Dv stdout .
74
+ .It Fl -suppress-backtrace Ar pattern
75
+ Suppress backtrace lines matching regexp
76
+ .Ar pattern .
77
+ Ignored if
78
+ .Fl -trace
79
+ is on.
80
+ .It Fl -rules
81
+ Trace the rules resolution.
82
+ .It Fl n , Fl -dry-run
83
+ Do a dry run without executing actions.
84
+ .It Fl T , Fl -tasks Op Ar pattern
85
+ Display the tasks (matching optional
86
+ .Ar pattern )
87
+ with descriptions, then exit.
88
+ .It Fl D , Fl -describe Op Ar pattern
89
+ Describe the tasks (matching optional
90
+ .Ar pattern ) ,
91
+ then exit.
92
+ .It Fl W , Fl -where Op Ar pattern
93
+ Describe the tasks (matching optional
94
+ .Ar pattern ) ,
95
+ then exit.
96
+ .It Fl P , Fl -prereqs
97
+ Display the tasks and dependencies, then exit.
98
+ .It Fl e , Fl -execute Ar code
99
+ Execute some Ruby code and exit.
100
+ .It Fl p , Fl -execute-print Ar code
101
+ Execute some Ruby code, print the result, then exit.
102
+ .It Fl E , Fl -execute-continue Ar code
103
+ Execute some Ruby code, then continue with normal task processing.
104
+ .El
105
+ .Ss Information
106
+ .Bl -tag -width Ds
107
+ .It Fl v , Fl -verbose
108
+ Log message to standard output.
109
+ .It Fl q , Fl -quiet
110
+ Do not log messages to standard output.
111
+ .It Fl s , Fl -silent
112
+ Like
113
+ .Fl -quiet ,
114
+ but also suppresses the
115
+ .Sq in directory
116
+ announcement.
117
+ .It Fl X , Fl -no-deprecation-warnings
118
+ Disable the deprecation warnings.
119
+ .It Fl -comments
120
+ Show commented tasks only
121
+ .It Fl A , Fl -all
122
+ Show all tasks, even uncommented ones (in combination with
123
+ .Fl T
124
+ or
125
+ .Fl D )
126
+ .It Fl -job-stats Op Ar level
127
+ Display job statistics.
128
+ If
129
+ .Ar level
130
+ is
131
+ .Sq history ,
132
+ displays a complete job list.
133
+ .It Fl V , Fl -version
134
+ Display the program version.
135
+ .It Fl h , Fl H , Fl -help
136
+ Display a help message.
137
+ .El
138
+ .Sh SEE ALSO
139
+ The complete documentation for
140
+ .Nm rake
141
+ has been installed at
142
+ .Pa /usr/share/doc/rake-doc/html/index.html .
143
+ It is also available online at
144
+ .Lk https://ruby.github.io/rake .
145
+ .Sh AUTHORS
146
+ .An -nosplit
147
+ .Nm
148
+ was written by
149
+ .An Jim Weirich Aq Mt jim@weirichhouse.org .
150
+ .Pp
151
+ This manual was created by
152
+ .An Caitlin Matos Aq Mt caitlin.matos@zoho.com
153
+ for the Debian project (but may be used by others).
154
+ It was inspired by the manual by
155
+ .An Jani Monoses Aq Mt jani@iv.ro
156
+ for the Ubuntu project.