rake 0.8.3 → 0.8.4

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.

data/CHANGES CHANGED
@@ -1,6 +1,33 @@
1
1
 
2
2
  = Rake Changelog
3
3
 
4
+ == Version 0.8.4
5
+
6
+ * Preserve case when locating rakefiles (patch from James
7
+ M. Lawrence/quix)
8
+
9
+ * Better support for windows paths in the test task (patch from Simon
10
+ Chiang/bahuvrihi)
11
+
12
+ * Windows system dir search order is now: HOME, HOMEDRIVE + HOMEPATH,
13
+ APPDATA, USERPROFILE (patch from Luis Lavena)
14
+
15
+ * MingGW is now recognized as a windows platform. (patch from Luis
16
+ Lavena)
17
+
18
+ * Numerous fixes to the windows test suite (patch from Luis Lavena).
19
+
20
+ * Improved Rakefile case insensitivity testing (patch from Luis
21
+ Lavena).
22
+
23
+ * Fixed stray ARGV option problem that was interfering with
24
+ Test::Unit::Runner.
25
+
26
+ * Fixed default verbose mode (was accidently changed to false).
27
+
28
+ * Removed reference to manage_gem to fix the warning produced by the
29
+ gem package task.
30
+
4
31
  == Version 0.8.3
5
32
 
6
33
  * Enhanced the system directory detection in windows. We now check
data/README CHANGED
@@ -1,6 +1,6 @@
1
1
  = RAKE -- Ruby Make
2
2
 
3
- Supporting Rake version: 0.8.2
3
+ Supporting Rake version: 0.8.4
4
4
 
5
5
  This package contains Rake, a simple ruby build program with
6
6
  capabilities similar to make.
@@ -15,103 +15,126 @@ Rake has the following features:
15
15
 
16
16
  * Rake supports rule patterns to synthesize implicit tasks.
17
17
 
18
- * Flexible FileLists that act like arrays but know about manipulating
19
- file names and paths.
18
+ * Flexible FileLists that act like arrays but know about manipulating
19
+ file names and paths.
20
20
 
21
- * A library of prepackaged tasks to make building rakefiles easier.
21
+ * A library of prepackaged tasks to make building rakefiles easier. For example,
22
+ tasks for building tarballs, gems and RDoc output are provided.
22
23
 
23
- == Download
24
+ * Supports parallel execution of tasks.
24
25
 
25
- The latest version of rake can be found at
26
26
 
27
- * http://rubyforge.org/project/showfiles.php?group_id=50
28
-
29
- == Source Repository
27
+ == Installation
30
28
 
31
- Rake is currently hosted at github. The github web page is
32
- http://github.com/jimweirich/rake. The public git clone URL is
29
+ === Gem Installation
33
30
 
34
- * git://github.com/jimweirich/rake.git
31
+ Download and install rake with the following.
35
32
 
36
- == Installation
33
+ gem install rake
37
34
 
38
35
  === Normal Installation
39
36
 
40
- You can install rake with the following command.
37
+ You can download the source tarball of the latest version of Rake from
41
38
 
42
- % ruby install.rb
39
+ * http://rubyforge.org/project/showfiles.php?group_id=50
43
40
 
44
- from its distribution directory.
41
+ Extract the tarball and run
45
42
 
46
- === GEM Installation
43
+ % ruby install.rb
47
44
 
48
- Download and install rake with the following.
45
+ from its distribution directory.
49
46
 
50
- gem install --remote rake
47
+ == Usage
51
48
 
52
- === Running the Rake Test Suite
49
+ === Simple Example
53
50
 
54
- If you wish to run the unit and functional tests that come with Rake:
51
+ First, you must write a "Rakefile" file which contains the build rules. Here's
52
+ a simple example:
55
53
 
56
- * Install the 'session' gem in order to run the functional tests. adf
57
- asdf asdf
58
- * CD into the top project directory of rake.
59
- * Type one of the following:
54
+ task :default => [:test]
55
+
56
+ task :test do
57
+ ruby "test/unittest.rb"
58
+ end
60
59
 
61
- rake # If you have a version of rake installed
62
- ruby -Ilib bin/rake # If you do not have a version of rake installed.
60
+ This Rakefile has two tasks:
63
61
 
64
- == Online Resources
62
+ * A task named "test", which - upon invocation - will run a unit test file in
63
+ Ruby.
64
+ * A task named "default". This task does nothing by itself, but it has exactly
65
+ one dependency, namely the "test" task. Invoking the "default" task will
66
+ cause Rake to invoke the "test" task as well.
65
67
 
66
- == Rake References
68
+ Running the "rake" command without any options will cause it to run the
69
+ "default" task in the Rakefile:
67
70
 
68
- * Rake Documentation Home: http://docs.rubyrake.org
69
- * Rake Project Page: http://rubyforge.org/projects/rake
70
- * Rake API Documents: http://rake.rubyforge.org
71
- * Rake Source Code Repo: http://github.com/jimweirich/rake
72
- * Rake Git Repo Clone URL: git://github.com/jimweirich/rake.git
71
+ % ls
72
+ Rakefile test/
73
+ % rake
74
+ (in /home/some_user/Projects/rake)
75
+ ruby test/unittest.rb
76
+ ....unit test output here...
73
77
 
74
- == Presentations and Articles about Rake
78
+ Type "rake --help" for all available options.
75
79
 
76
- * Jim Weirich's 2003 RubyConf presentation: http://onestepback.org/articles/buildingwithrake/
77
- * Martin Fowler's article on Rake: http://martinfowler.com/articles/rake.html
78
80
 
79
- === Road Map
81
+ === More Information
80
82
 
81
- * If you want to see how to invoke rake to build your projects, read on.
82
- * If you want to see the format of a Rakefile, see
83
+ * For details on Rake's command-line invocation, read
84
+ doc/command_line_usage.rdoc[http://rake.rubyforge.org/files/doc/command_line_usage_rdoc.html]
85
+ * For details on writing Rakefiles, see
83
86
  doc/rakefile.rdoc[http://rake.rubyforge.org/files/doc/rakefile_rdoc.html].
84
- * If you want to see the original announcement of rake, see
87
+ * For the original announcement of Rake, see
85
88
  doc/rational.rdoc[http://rake.rubyforge.org/files/doc/rational_rdoc.html].
86
- * If you want to see a glossary of terms, see
89
+ * For a glossary of terms, see
87
90
  doc/glossary.rdoc[http://rake.rubyforge.org/files/doc/glossary_rdoc.html].
88
91
 
89
- == Simple Example
90
92
 
91
- Once installed, you can run rake as follows ...
93
+ == Development
94
+
95
+ === Source Repository
96
+
97
+ Rake is currently hosted at github. The github web page is
98
+ http://github.com/jimweirich/rake. The public git clone URL is
99
+
100
+ * git://github.com/jimweirich/rake.git
92
101
 
93
- % rake [options ...] [VAR=VALUE ...] [tasks...]
102
+ === Running the Rake Test Suite
94
103
 
95
- Type "rake --help" for an up-to-date option summary.
104
+ If you wish to run the unit and functional tests that come with Rake:
96
105
 
97
- Invoking <tt>rake</tt> without any options or targets causes rake to
98
- look for a rakefile and invoke the default task in that rakefile.
106
+ * Install the 'session' gem in order to run the functional tests.
107
+ * CD into the top project directory of rake.
108
+ * Type one of the following:
99
109
 
100
- For example, given a simple rakefile like this ...
110
+ rake # If you have a version of rake installed
111
+ ruby -Ilib bin/rake # If you do not have a version of rake installed.
101
112
 
102
- task :default => [:test]
113
+ === Issues and Bug Reports
103
114
 
104
- task :test do
105
- ruby "test/unittest.rb"
106
- end
115
+ Bugs, features requests and other issues can be logged at
107
116
 
108
- The command
117
+ * http://onestepback.org/redmine/projects/show/rake
109
118
 
110
- $ rake
119
+ You will need an account to before you can post issues. Register at
120
+ http://onestepback.org/redmine/account/register. Or you can send me
121
+ an email (at jim dot weirich at gmail dot com)
111
122
 
112
- will invoke the +default+ task. As +default+ satisfies its
113
- prerequisites, the +test+ task will run the unit tests for the
114
- package.
123
+
124
+ == Online Resources
125
+
126
+ === Rake References
127
+
128
+ * Rake Documentation Home: http://docs.rubyrake.org
129
+ * Rake Project Page: http://rubyforge.org/projects/rake
130
+ * Rake API Documents: http://rake.rubyforge.org
131
+ * Rake Source Code Repo: http://github.com/jimweirich/rake
132
+ * Rake Git Repo Clone URL: git://github.com/jimweirich/rake.git
133
+
134
+ === Presentations and Articles about Rake
135
+
136
+ * Jim Weirich's 2003 RubyConf presentation: http://onestepback.org/articles/buildingwithrake/
137
+ * Martin Fowler's article on Rake: http://martinfowler.com/articles/rake.html
115
138
 
116
139
  == Other Make Reinvisionings ...
117
140
 
@@ -153,127 +176,15 @@ new feature to be submitted in the form of new unit tests.
153
176
 
154
177
  For other information, feel free to ask on the ruby-talk mailing list
155
178
  (which is mirrored to comp.lang.ruby) or contact
156
- mailto:jim@weirichhouse.org.
157
-
158
- ----
159
-
160
- = Usage
161
-
162
- Rake is invoked from the command line using:
163
-
164
- % rake [<em>options</em> ...] [<em>VAR</em>=<em>VALUE</em>] [<em>targets</em> ...]
165
-
166
- Options are:
167
-
168
- [<tt><em>name</em>=<em>value</em></tt>]
169
- Set the environment variable <em>name</em> to <em>value</em>
170
- during the execution of the <b>rake</b> command. You can access
171
- the value by using ENV['<em>name</em>'].
172
-
173
- [<tt>--classic-namespace</tt> (-n)]
174
- Import the Task, FileTask, and FileCreateTask into the top-level
175
- scope to be compatible with older versions of Rake. Alternatively
176
- you can include the line <code>require
177
- 'rake/classic_namespace'</code> in your Rakefile to get the
178
- classic behavior.
179
-
180
- [<tt>--describe</tt> _pattern_ (-D)]
181
- Describe the tasks (matching optional PATTERN), then exit.
182
-
183
- [<tt>--dry-run</tt> (-n)]
184
- Do a dry run. Print the tasks invoked and executed, but do not
185
- actually execute any of the actions.
186
-
187
- [<tt>--execute</tt> _code_ (-e)]
188
- Execute some Ruby code and exit.
189
-
190
- [<tt>--execute-print</tt> _code_ (-p)]
191
- Execute some Ruby code, print the result, and exit.
192
-
193
- [<tt>--execute-continue</tt> _code_ (-p)]
194
- Execute some Ruby code, then continue with normal task processing.
195
-
196
- [<tt>--help</tt> (-H)]
197
- Display some help text and exit.
198
-
199
- [<tt>--libdir</tt> _directory_ (-I)]
200
- Add _directory_ to the list of directories searched for require.
201
-
202
- [<tt>--nosearch</tt> (-N)]
203
- Do not search for a Rakefile in parent directories.
204
-
205
- [<tt>--prereqs</tt> (-P)]
206
- Display a list of all tasks and their immediate prerequisites.
207
-
208
- [<tt>--quiet</tt> (-q)]
209
- Do not echo commands from FileUtils.
210
-
211
- [<tt>--rakefile</tt> _filename_ (-f)]
212
- Use _filename_ as the name of the rakefile. The default rakefile
213
- names are +rakefile+ and +Rakefile+ (with +rakefile+ taking
214
- precedence). If the rakefile is not found in the current
215
- directory, +rake+ will search parent directories for a match. The
216
- directory where the Rakefile is found will become the current
217
- directory for the actions executed in the Rakefile.
218
-
219
- [<tt>--rakelibdir</tt> _rakelibdir_ (-R)]
220
- Auto-import any .rake files in RAKELIBDIR. (default is 'rakelib')
221
-
222
- [<tt>--require</tt> _name_ (-r)]
223
- Require _name_ before executing the Rakefile.
224
-
225
- [<tt>--rules</tt>]
226
- Trace the rules resolution.
227
-
228
- [<tt>--silent (-s)]
229
- Like --quiet, but also suppresses the 'in directory' announcement.
230
-
231
- [<tt>--system</tt> (-g)]
232
- Use the system wide (global) rakefiles. The project Rakefile is
233
- ignored. By default, the system wide rakefiles are used only if no
234
- project Rakefile is found. On Unix-like system, the system wide
235
- rake files are located in $HOME/.rake. On a windows system they
236
- are stored in $APPDATA/Rake.
237
-
238
- [<tt>--no-system</tt> (-G)]
239
- Use the project level Rakefile, ignoring the system-wide (global)
240
- rakefiles.
241
-
242
- [<tt>--tasks</tt> (-T)]
243
- Display a list of the major tasks and their comments. Comments
244
- are defined using the "desc" command.
245
-
246
- [<tt>--trace</tt> (-t)]
247
- Turn on invoke/execute tracing. Also enable full backtrace on
248
- errors.
249
-
250
- [<tt>--usage</tt> (-h)]
251
- Display a usage message and exit.
252
-
253
- [<tt>--verbose</tt> (-v)]
254
- Echo the Sys commands to standard output.
255
-
256
- [<tt>--version</tt> (-V)]
257
- Display the program version and exit.
258
-
259
- In addition, any command line option of the form
260
- <em>VAR</em>=<em>VALUE</em> will be added to the environment hash
261
- <tt>ENV</tt> and may be tested in the Rakefile.
262
-
263
- ---
264
-
265
- = Rakefile Format
266
-
267
- See doc/rakefile.rdoc[http://rake.rubyforge.org/files/doc/rakefile_rdoc.html]
268
- for details on the Rakefile format.
179
+ jim dot weirich at gmail.com.
269
180
 
270
181
  ---
271
182
 
272
183
  = Other stuff
273
184
 
274
- Author:: Jim Weirich <jim@weirichhouse.org>
185
+ Author:: Jim Weirich <jim.weirich@gmail.com>
275
186
  Requires:: Ruby 1.8.0 or later
276
- License:: Copyright 2003, 2004 by Jim Weirich.
187
+ License:: Copyright 2003-2008 by Jim Weirich.
277
188
  Released under an MIT-style license. See the LICENSE file
278
189
  included in the distribution.
279
190
 
data/Rakefile CHANGED
@@ -130,13 +130,11 @@ end
130
130
 
131
131
  rd = Rake::RDocTask.new("rdoc") { |rdoc|
132
132
  rdoc.rdoc_dir = 'html'
133
- # rdoc.template = 'kilmer'
134
- # rdoc.template = 'css2'
135
133
  rdoc.template = 'doc/jamis.rb'
136
134
  rdoc.title = "Rake -- Ruby Make"
137
135
  rdoc.options << '--line-numbers' << '--inline-source' <<
138
- '--main' << 'README' <<
139
- '--title' << 'Rake -- Ruby Make'
136
+ '--main' << 'README' <<
137
+ '--title' << 'Rake -- Ruby Make'
140
138
  rdoc.rdoc_files.include('README', 'MIT-LICENSE', 'TODO', 'CHANGES')
141
139
  rdoc.rdoc_files.include('lib/**/*.rb', 'doc/**/*.rdoc')
142
140
  rdoc.rdoc_files.exclude(/\bcontrib\b/)
@@ -0,0 +1,102 @@
1
+ = Rake Command Line Usage
2
+
3
+ Rake is invoked from the command line using:
4
+
5
+ % rake [<em>options</em> ...] [<em>VAR</em>=<em>VALUE</em>] [<em>targets</em> ...]
6
+
7
+ Options are:
8
+
9
+ [<tt><em>name</em>=<em>value</em></tt>]
10
+ Set the environment variable <em>name</em> to <em>value</em>
11
+ during the execution of the <b>rake</b> command. You can access
12
+ the value by using ENV['<em>name</em>'].
13
+
14
+ [<tt>--classic-namespace</tt> (-n)]
15
+ Import the Task, FileTask, and FileCreateTask into the top-level
16
+ scope to be compatible with older versions of Rake. Alternatively
17
+ you can include the line <code>require
18
+ 'rake/classic_namespace'</code> in your Rakefile to get the
19
+ classic behavior.
20
+
21
+ [<tt>--describe</tt> _pattern_ (-D)]
22
+ Describe the tasks (matching optional PATTERN), then exit.
23
+
24
+ [<tt>--dry-run</tt> (-n)]
25
+ Do a dry run. Print the tasks invoked and executed, but do not
26
+ actually execute any of the actions.
27
+
28
+ [<tt>--execute</tt> _code_ (-e)]
29
+ Execute some Ruby code and exit.
30
+
31
+ [<tt>--execute-print</tt> _code_ (-p)]
32
+ Execute some Ruby code, print the result, and exit.
33
+
34
+ [<tt>--execute-continue</tt> _code_ (-p)]
35
+ Execute some Ruby code, then continue with normal task processing.
36
+
37
+ [<tt>--help</tt> (-H)]
38
+ Display some help text and exit.
39
+
40
+ [<tt>--libdir</tt> _directory_ (-I)]
41
+ Add _directory_ to the list of directories searched for require.
42
+
43
+ [<tt>--nosearch</tt> (-N)]
44
+ Do not search for a Rakefile in parent directories.
45
+
46
+ [<tt>--prereqs</tt> (-P)]
47
+ Display a list of all tasks and their immediate prerequisites.
48
+
49
+ [<tt>--quiet</tt> (-q)]
50
+ Do not echo commands from FileUtils.
51
+
52
+ [<tt>--rakefile</tt> _filename_ (-f)]
53
+ Use _filename_ as the name of the rakefile. The default rakefile
54
+ names are +rakefile+ and +Rakefile+ (with +rakefile+ taking
55
+ precedence). If the rakefile is not found in the current
56
+ directory, +rake+ will search parent directories for a match. The
57
+ directory where the Rakefile is found will become the current
58
+ directory for the actions executed in the Rakefile.
59
+
60
+ [<tt>--rakelibdir</tt> _rakelibdir_ (-R)]
61
+ Auto-import any .rake files in RAKELIBDIR. (default is 'rakelib')
62
+
63
+ [<tt>--require</tt> _name_ (-r)]
64
+ Require _name_ before executing the Rakefile.
65
+
66
+ [<tt>--rules</tt>]
67
+ Trace the rules resolution.
68
+
69
+ [<tt>--silent (-s)</tt>]
70
+ Like --quiet, but also suppresses the 'in directory' announcement.
71
+
72
+ [<tt>--system</tt> (-g)]
73
+ Use the system wide (global) rakefiles. The project Rakefile is
74
+ ignored. By default, the system wide rakefiles are used only if no
75
+ project Rakefile is found. On Unix-like system, the system wide
76
+ rake files are located in $HOME/.rake. On a windows system they
77
+ are stored in $APPDATA/Rake.
78
+
79
+ [<tt>--no-system</tt> (-G)]
80
+ Use the project level Rakefile, ignoring the system-wide (global)
81
+ rakefiles.
82
+
83
+ [<tt>--tasks</tt> (-T)]
84
+ Display a list of the major tasks and their comments. Comments
85
+ are defined using the "desc" command.
86
+
87
+ [<tt>--trace</tt> (-t)]
88
+ Turn on invoke/execute tracing. Also enable full backtrace on
89
+ errors.
90
+
91
+ [<tt>--usage</tt> (-h)]
92
+ Display a usage message and exit.
93
+
94
+ [<tt>--verbose</tt> (-v)]
95
+ Echo the Sys commands to standard output.
96
+
97
+ [<tt>--version</tt> (-V)]
98
+ Display the program version and exit.
99
+
100
+ In addition, any command line option of the form
101
+ <em>VAR</em>=<em>VALUE</em> will be added to the environment hash
102
+ <tt>ENV</tt> and may be tested in the Rakefile.