jimweirich-rake 0.8.3 → 0.8.3.1
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.
- data/CHANGES +7 -3
- data/doc/release_notes/rake-0.8.3.rdoc +112 -0
- data/lib/rake.rb +1 -1
- data/test/test_application.rb +1 -1
- metadata +4 -3
data/CHANGES
CHANGED
@@ -3,9 +3,13 @@
|
|
3
3
|
|
4
4
|
== Version 0.8.3
|
5
5
|
|
6
|
-
* Enhanced the system directory detection in windows.
|
7
|
-
HOMEDRIVE/HOMEPATH and USERPROFILE if APPDATA isn't found.
|
8
|
-
supplied by James Tucker).
|
6
|
+
* Enhanced the system directory detection in windows. We now check
|
7
|
+
HOMEDRIVE/HOMEPATH and USERPROFILE if APPDATA isn't found. (Patch
|
8
|
+
supplied by James Tucker). Rake no long aborts if it can't find the
|
9
|
+
directory.
|
10
|
+
|
11
|
+
* Added fix to handle ruby installations in directories with spaces in
|
12
|
+
their name.
|
9
13
|
|
10
14
|
== Version 0.8.2
|
11
15
|
|
@@ -0,0 +1,112 @@
|
|
1
|
+
= Rake 0.8.3 Released
|
2
|
+
|
3
|
+
Rake version 0.8.3 is a bug-fix release of rake.
|
4
|
+
|
5
|
+
== Changes
|
6
|
+
|
7
|
+
=== Bug Fixes in Version 0.8.3
|
8
|
+
|
9
|
+
* Enhanced the system directory detection in windows. We now check
|
10
|
+
HOMEDRIVE/HOMEPATH and USERPROFILE if APPDATA isn't found. (Patch
|
11
|
+
supplied by James Tucker). Rake no long aborts if it can't find the
|
12
|
+
directory.
|
13
|
+
|
14
|
+
* Added fix to handle ruby installations in directories with spaces in
|
15
|
+
their name.
|
16
|
+
|
17
|
+
== What is Rake
|
18
|
+
|
19
|
+
Rake is a build tool similar to the make program in many ways. But
|
20
|
+
instead of cryptic make recipes, Rake uses standard Ruby code to
|
21
|
+
declare tasks and dependencies. You have the full power of a modern
|
22
|
+
scripting language built right into your build tool.
|
23
|
+
|
24
|
+
== Availability
|
25
|
+
|
26
|
+
The easiest way to get and install rake is via RubyGems ...
|
27
|
+
|
28
|
+
gem install rake (you may need root/admin privileges)
|
29
|
+
|
30
|
+
Otherwise, you can get it from the more traditional places:
|
31
|
+
|
32
|
+
Home Page:: http://rake.rubyforge.org/
|
33
|
+
Download:: http://rubyforge.org/project/showfiles.php?group_id=50
|
34
|
+
|
35
|
+
== Task Argument Examples
|
36
|
+
|
37
|
+
Prior to version 0.8.0, rake was only able to handle command line
|
38
|
+
arguments of the form NAME=VALUE that were passed into Rake via the
|
39
|
+
ENV hash. Many folks had asked for some kind of simple command line
|
40
|
+
arguments, perhaps using "--" to separate regular task names from
|
41
|
+
argument values on the command line. The problem is that there was no
|
42
|
+
easy way to associate positional arguments on the command line with
|
43
|
+
different tasks. Suppose both tasks :a and :b expect a command line
|
44
|
+
argument: does the first value go with :a? What if :b is run first?
|
45
|
+
Should it then get the first command line argument.
|
46
|
+
|
47
|
+
Rake 0.8.0 solves this problem by explicitly passing values directly
|
48
|
+
to the tasks that need them. For example, if I had a release task
|
49
|
+
that required a version number, I could say:
|
50
|
+
|
51
|
+
rake release[0.8.3]
|
52
|
+
|
53
|
+
And the string "0.8.3" will be passed to the :release task. Multiple
|
54
|
+
arguments can be passed by separating them with a comma, for example:
|
55
|
+
|
56
|
+
rake name[john,doe]
|
57
|
+
|
58
|
+
Just a few words of caution. The rake task name and its arguments
|
59
|
+
need to be a single command line argument to rake. This generally
|
60
|
+
means no spaces. If spaces are needed, then the entire rake +
|
61
|
+
argument string should be quoted. Something like this:
|
62
|
+
|
63
|
+
rake "name[billy bob, smith]"
|
64
|
+
|
65
|
+
(Quoting rules vary between operating systems and shells, so make sure
|
66
|
+
you consult the proper docs for your OS/shell).
|
67
|
+
|
68
|
+
=== Tasks that Expect Parameters
|
69
|
+
|
70
|
+
Parameters are only given to tasks that are setup to expect them. In
|
71
|
+
order to handle named parameters, the task declaration syntax for
|
72
|
+
tasks has been extended slightly.
|
73
|
+
|
74
|
+
For example, a task that needs a first name and last name might be
|
75
|
+
declared as:
|
76
|
+
|
77
|
+
task :name, :first_name, :last_name
|
78
|
+
|
79
|
+
The first argument is still the name of the task (:name in this case).
|
80
|
+
The next to argumements are the names of the parameters expected by
|
81
|
+
:name (:first_name and :last_name in the example).
|
82
|
+
|
83
|
+
To access the values of the paramters, the block defining the task
|
84
|
+
behaviour can now accept a second parameter:
|
85
|
+
|
86
|
+
task :name, :first_name, :last_name do |t, args|
|
87
|
+
puts "First name is #{args.first_name}"
|
88
|
+
puts "Last name is #{args.last_name}"
|
89
|
+
end
|
90
|
+
|
91
|
+
The first argument of the block "t" is always bound to the current
|
92
|
+
task object. The second argument "args" is an open-struct like object
|
93
|
+
that allows access to the task arguments. Extra command line
|
94
|
+
arguments to a task are ignored. Missing command line arguments are
|
95
|
+
given the nil value.
|
96
|
+
|
97
|
+
== Thanks
|
98
|
+
|
99
|
+
As usual, it was input from users that drove a alot of these changes. The
|
100
|
+
following people either contributed patches, made suggestions or made
|
101
|
+
otherwise helpful comments. Thanks to ...
|
102
|
+
|
103
|
+
* Edwin Pratomo
|
104
|
+
* Gavin Stark
|
105
|
+
* Adam Q. Salter
|
106
|
+
* Adam Majer
|
107
|
+
* Emanuel Inderm�hle
|
108
|
+
* Ittay Dror
|
109
|
+
* Bheeshmar Redheendran (for spending an afternoon with me debugging
|
110
|
+
windows issues)
|
111
|
+
|
112
|
+
-- Jim Weirich
|
data/lib/rake.rb
CHANGED
data/test/test_application.rb
CHANGED
@@ -109,7 +109,7 @@ class TestApplication < Test::Unit::TestCase
|
|
109
109
|
end
|
110
110
|
|
111
111
|
def test_finding_rakefile
|
112
|
-
|
112
|
+
assert_match(/[Rr]akefile/, @app.instance_eval { have_rakefile })
|
113
113
|
end
|
114
114
|
|
115
115
|
def test_not_finding_rakefile
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jimweirich-rake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.3
|
4
|
+
version: 0.8.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jim Weirich
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-09-
|
12
|
+
date: 2008-09-24 21:00:00 -07:00
|
13
13
|
default_executable: rake
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -40,13 +40,13 @@ extra_rdoc_files:
|
|
40
40
|
- doc/release_notes/rake-0.7.3.rdoc
|
41
41
|
- doc/release_notes/rake-0.8.0.rdoc
|
42
42
|
- doc/release_notes/rake-0.8.2.rdoc
|
43
|
+
- doc/release_notes/rake-0.8.3.rdoc
|
43
44
|
files:
|
44
45
|
- install.rb
|
45
46
|
- CHANGES
|
46
47
|
- MIT-LICENSE
|
47
48
|
- Rakefile
|
48
49
|
- README
|
49
|
-
- TAGS
|
50
50
|
- TODO
|
51
51
|
- bin/rake
|
52
52
|
- lib/rake/classic_namespace.rb
|
@@ -144,6 +144,7 @@ files:
|
|
144
144
|
- doc/release_notes/rake-0.7.3.rdoc
|
145
145
|
- doc/release_notes/rake-0.8.0.rdoc
|
146
146
|
- doc/release_notes/rake-0.8.2.rdoc
|
147
|
+
- doc/release_notes/rake-0.8.3.rdoc
|
147
148
|
has_rdoc: true
|
148
149
|
homepage: http://rake.rubyforge.org
|
149
150
|
post_install_message:
|