Skip to content

Commit

Permalink
merge with mainline rake-0.8.7
Browse files Browse the repository at this point in the history
Conflicts:
	Rakefile
	lib/rake.rb
  • Loading branch information
quix committed May 27, 2009
2 parents 432e088 + 00fb2aa commit 99a302e
Show file tree
Hide file tree
Showing 7 changed files with 154 additions and 19 deletions.
13 changes: 13 additions & 0 deletions CHANGES
@@ -1,6 +1,19 @@

= Rake Changelog

== Version 0.8.7

* Fixed EXEEXT for JRuby on windows.

== Version 0.8.6

* Minor fixes to the RDoc generation (removed dependency on darkfish
and removed inline source option).

== Version 0.8.5

* Better support for the system command on Windows.

== Version 0.8.4

* Preserve case when locating rakefiles (patch from James
Expand Down
4 changes: 4 additions & 0 deletions CHANGES.drake
@@ -1,6 +1,10 @@

= Drake Changelog

== Version 0.8.7.0.2.3

* update from mainline branch

== Version 0.8.4.1.2.1

* update dependency >= comp_tree-0.7.3
Expand Down
2 changes: 1 addition & 1 deletion README
Expand Up @@ -58,7 +58,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

= RAKE -- Ruby Make -- <em>master branch</em>

Supporting Rake version: 0.8.4
Supporting Rake version: 0.8.6

This package contains Rake, a simple ruby build program with
capabilities similar to make.
Expand Down
12 changes: 8 additions & 4 deletions Rakefile 100644 → 100755
Expand Up @@ -146,13 +146,17 @@ rescue LoadError => ex
DARKFISH_ENABLED = false
end

BASE_RDOC_OPTIONS = [
'--line-numbers',
'--main', 'README',
'--title', 'Drake: Distributed Rake',
]

rd = Rake::RDocTask.new("rdoc") do |rdoc|
rdoc.rdoc_dir = 'html'
rdoc.template = 'doc/jamis.rb'
rdoc.title = "Drake: Distributed Rake"
rdoc.options << '--line-numbers' << '--inline-source' <<
'--main' << 'README' <<
'--title' << 'Drake: Distributed Rake'
rdoc.options = BASE_RDOC_OPTIONS.dup
rdoc.options << '-SHN' << '-f' << 'darkfish' if DARKFISH_ENABLED
rdoc.rdoc_files.include('README', 'MIT-LICENSE', 'TODO', 'CHANGES')
rdoc.rdoc_files.include('lib/**/*.rb', 'doc/**/*.rdoc')
Expand Down Expand Up @@ -220,7 +224,7 @@ else

s.has_rdoc = true
s.extra_rdoc_files = rd.rdoc_files.reject { |fn| fn =~ /\.rb$/ }.to_a
s.rdoc_options = rd.options
s.rdoc_options = BASE_RDOC_OPTIONS

#### Author and project details.

Expand Down
55 changes: 55 additions & 0 deletions doc/release_notes/rake-0.8.6.rdoc
@@ -0,0 +1,55 @@
= Rake 0.8.6 Released

Rake version 0.8.5 introduced greatly improved support for executing
commands on Windows. The "sh" command now has the same semantics on
Windows that it has on Unix based platforms.

Rake version 0.8.6 includes minor fixes the the RDoc generation.

== Changes

=== New Features / Enhancements in Version 0.8.5

* Improved implementation of the Rake system command for Windows.
(patch from James M. Lawrence/quix)

* Support for Ruby 1.9's improved system command. (patch from James
M. Lawrence/quix)

* Rake now includes the configured extension when invoking an
executable (Config::CONFIG['EXEEXT])

=== Bug Fixes in Version 0.8.5

* Environment variable keys are now correctly cased (it matters in
some implementations).

== What is Rake

Rake is a build tool similar to the make program in many ways. But
instead of cryptic make recipes, Rake uses standard Ruby code to
declare tasks and dependencies. You have the full power of a modern
scripting language built right into your build tool.

== Availability

The easiest way to get and install rake is via RubyGems ...

gem install rake (you may need root/admin privileges)

Otherwise, you can get it from the more traditional places:

Home Page:: http://rake.rubyforge.org/
Download:: http://rubyforge.org/project/showfiles.php?group_id=50
GitHub:: git://github.com/jimweirich/rake.git

== Thanks

As usual, it was input from users that drove a alot of these changes. The
following people either contributed patches, made suggestions or made
otherwise helpful comments. Thanks to ...

* James M. Lawrence/quix
* Luis Lavena

-- Jim Weirich
55 changes: 55 additions & 0 deletions doc/release_notes/rake-0.8.7.rdoc
@@ -0,0 +1,55 @@
= Rake 0.8.7 Released

Rake version 0.8.5 introduced greatly improved support for executing
commands on Windows. The "sh" command now has the same semantics on
Windows that it has on Unix based platforms.

Rake version 0.8.6 includes minor fixes the the RDoc generation.
Rake version 0.8.7 includes a minor fix for JRuby running on windows.

== Changes

=== New Features / Enhancements in Version 0.8.5

* Improved implementation of the Rake system command for Windows.
(patch from James M. Lawrence/quix)

* Support for Ruby 1.9's improved system command. (patch from James
M. Lawrence/quix)

* Rake now includes the configured extension when invoking an
executable (Config::CONFIG['EXEEXT])

=== Bug Fixes in Version 0.8.5

* Environment variable keys are now correctly cased (it matters in
some implementations).

== What is Rake

Rake is a build tool similar to the make program in many ways. But
instead of cryptic make recipes, Rake uses standard Ruby code to
declare tasks and dependencies. You have the full power of a modern
scripting language built right into your build tool.

== Availability

The easiest way to get and install rake is via RubyGems ...

gem install rake (you may need root/admin privileges)

Otherwise, you can get it from the more traditional places:

Home Page:: http://rake.rubyforge.org/
Download:: http://rubyforge.org/project/showfiles.php?group_id=50
GitHub:: git://github.com/jimweirich/rake.git

== Thanks

As usual, it was input from users that drove a alot of these changes. The
following people either contributed patches, made suggestions or made
otherwise helpful comments. Thanks to ...

* Charles Nutter

-- Jim Weirich
32 changes: 18 additions & 14 deletions lib/rake.rb
Expand Up @@ -29,7 +29,7 @@
# as a library via a require statement, but it can be distributed
# independently as an application.

RAKEVERSION = '0.8.5.0.2.2'
RAKEVERSION = '0.8.7.0.2.3'

require 'rbconfig'
require 'fileutils'
Expand Down Expand Up @@ -282,7 +282,7 @@ def original_dir

end

# ##########################################################################
####################################################################
# Mixin for creating easily cloned objects.
#
module Cloneable
Expand Down Expand Up @@ -459,7 +459,7 @@ def to_s

module Rake

# #########################################################################
###########################################################################
# A Task is the basic unit of work in a Rakefile. Tasks have associated
# actions (possibly more than one) and a list of prerequisites. When
# invoked, a task will first ensure that all of its prerequisites have an
Expand Down Expand Up @@ -784,7 +784,7 @@ def scope_name(scope, task_name)
end # class Rake::Task


# #########################################################################
###########################################################################
# A FileTask is a task that includes time based dependencies. If any of a
# FileTask's prerequisites have a timestamp that is later than the file
# represented by this task, then the file must be rebuilt (using the
Expand Down Expand Up @@ -826,7 +826,7 @@ def scope_name(scope, task_name)
end
end # class Rake::FileTask

# #########################################################################
###########################################################################
# A FileCreationTask is a file task that when used as a dependency will be
# needed if and only if the file has not been created. Once created, it is
# not re-triggered if any of its dependencies are newer, nor does trigger
Expand All @@ -845,7 +845,7 @@ def timestamp
end
end

# #########################################################################
###########################################################################
# Same as a regular task, but the immediate prerequisites are done in
# parallel using Ruby threads.
#
Expand All @@ -860,7 +860,7 @@ def invoke_prerequisites(args, invocation_chain)
end
end # module Rake

# ###########################################################################
## ###########################################################################
# Task Definition Functions ...

# Declare a basic task.
Expand Down Expand Up @@ -979,14 +979,18 @@ def import(*fns)
end
end

# ###########################################################################
#############################################################################
# This a FileUtils extension that defines several additional commands to be
# added to the FileUtils utility functions.
#
module FileUtils
RUBY_EXT = ((Config::CONFIG['ruby_install_name'] =~ /\.(com|cmd|exe|bat|rb|sh)$/) ?
"" :
Config::CONFIG['EXEEXT'])

RUBY = File.join(
Config::CONFIG['bindir'],
Config::CONFIG['ruby_install_name'] + Config::CONFIG['EXEEXT']).
Config::CONFIG['ruby_install_name'] + RUBY_EXT).
sub(/.*\s.*/m, '"\&"')

OPT_TABLE['sh'] = %w(noop verbose)
Expand Down Expand Up @@ -1083,7 +1087,7 @@ def split_all(path)
end
end

# ###########################################################################
#############################################################################
# RakeFileUtils provides a custom version of the FileUtils methods that
# respond to the <tt>verbose</tt> and <tt>nowrite</tt> commands.
#
Expand Down Expand Up @@ -1214,7 +1218,7 @@ def rake_check_options(options, *optdecl)
extend self
end

# ###########################################################################
#############################################################################
# Include the FileUtils file manipulation functions in the top level module,
# but mark them private so that they don't unintentionally define methods on
# other objects.
Expand All @@ -1226,7 +1230,7 @@ def rake_check_options(options, *optdecl)
######################################################################
module Rake

# #########################################################################
###########################################################################
# A FileList is essentially an array with a few helper methods defined to
# make file manipulation a bit easier.
#
Expand Down Expand Up @@ -1634,7 +1638,7 @@ def each_dir_parent(dir) # :nodoc:
# Alias FileList to be available at the top level.
FileList = Rake::FileList

# ###########################################################################
#############################################################################
module Rake

# Default Rakefile loader used by +import+.
Expand All @@ -1661,7 +1665,7 @@ def to_s
EARLY = EarlyTime.instance
end # module Rake

# ###########################################################################
#############################################################################
# Extensions to time to allow comparisons with an early time class.
#
class Time
Expand Down

0 comments on commit 99a302e

Please sign in to comment.