[Rake-devel] Fix for infinite loop bug

Lionel Thiry lthiry at skynet.be
Mon May 2 13:39:20 EDT 2005


Daniel Berger a écrit :
> Hi all,
> The failure you see occurs with or without this change, so it's 
> unrelated.  The test in question is:
> 
> assert t.prerequisites.is_a?(FileList)
> 
> I haven't provided any test cases yet because it appears there are still 
> other places where rake.rb goes into an infinite loop (running 
> testtasks.rb confirms this).  I think it's coming from 
> create_timed_files atm.
> 
> I'll patch 'em as I see 'em.
> 
> Regards,
> 
> Dan

Found it!

In test/filecreation.rb, at line 19, it is:
  File.new(name).mtime
Replace it with:
  File.stat(name).mtime

And there is no more loop.

Explanation (AFAIK):
File.new(name) creates a IO object that isn't closed just after requiring mtime. 
It will be closed when the garbarge collector collects it, as explained here 
http://www.ruby-doc.org/core/classes/IO.html#M001187 . But until then, further 
IO manipulation are impossible, hence all the permission denied in the 
create_timed_files loop.


I've put in attachment the output of the now working unittest. A lot of tests 
still fails on my computer (win2k), but it doesn't loop anymore.

-- 
Lionel Thiry

Personal website: http://users.skynet.be/lthiry/
-------------- next part --------------
C:\usr\ruby\lib\ruby\gems\1.8\gems\rake-0.5.4> rake
(in C:/usr/ruby/lib/ruby/gems/1.8/gems/rake-0.5.4)
UNABLE TO RUN FUNCTIONAL TESTS
No Session Found
Loaded suite c:/usr/ruby/lib/ruby/gems/1.8/gems/rake-0.5.4/lib/rake/rake_test_loader
Started
EEEEEEEEEEEE......EE........................................EEEE....-e:1:in `exit': no implicit conversion from nil to integer (TypeError)
	from -e:1
FE.EF.......E....EEEEEEEEEEEE...............
Finished in 0.671 seconds.

  1) Error:
test_dry_run(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/default
    ./test/functional.rb:77:in `chdir'
    ./test/functional.rb:77:in `test_dry_run'

  2) Error:
test_dry_run_bug(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/dryrun
    ./test/functional.rb:86:in `chdir'
    ./test/functional.rb:86:in `test_dry_run_bug'

  3) Error:
test_env_availabe_at_task_scope(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/default
    ./test/functional.rb:54:in `chdir'
    ./test/functional.rb:54:in `test_env_availabe_at_task_scope'

  4) Error:
test_env_availabe_at_top_scope(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/default
    ./test/functional.rb:48:in `chdir'
    ./test/functional.rb:48:in `test_env_availabe_at_top_scope'

  5) Error:
test_imports(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/imports
    ./test/functional.rb:104:in `chdir'
    ./test/functional.rb:104:in `test_imports'

  6) Error:
test_multi_desc(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/multidesc
    ./test/functional.rb:60:in `chdir'
    ./test/functional.rb:60:in `test_multi_desc'

  7) Error:
test_nosearch(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/nosearch
    ./test/functional.rb:72:in `chdir'
    ./test/functional.rb:72:in `test_nosearch'

  8) Error:
test_rake_default(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/default
    ./test/functional.rb:36:in `chdir'
    ./test/functional.rb:36:in `test_rake_default'

  9) Error:
test_rake_error_on_bad_task(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/default
    ./test/functional.rb:42:in `chdir'
    ./test/functional.rb:42:in `test_rake_error_on_bad_task'

 10) Error:
test_rbext(FunctionalTest):
NameError: uninitialized constant Session::Shell
    ./test/functional.rb:125:in `rake'
    ./test/functional.rb:67:in `test_rbext'
    ./test/functional.rb:67:in `chdir'
    ./test/functional.rb:67:in `test_rbext'

 11) Error:
test_rules_chaining_to_file_task(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/chains
    ./test/functional.rb:115:in `chdir'
    ./test/functional.rb:115:in `test_rules_chaining_to_file_task'

 12) Error:
test_trace_bug(FunctionalTest):
Errno::ENOENT: No such file or directory - test/data/dryrun
    ./test/functional.rb:95:in `chdir'
    ./test/functional.rb:95:in `test_trace_bug'

 13) Error:
test_directory(TestDirectoryTask):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:710:in `remove_dir'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:702:in `foreach'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:702:in `remove_dir'
    ./lib/rake.rb:558:in `remove_dir'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:663:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:679:in `rm_rf'
    ./lib/rake.rb:563:in `rm_rf'
    ./lib/rake.rb:558:in `rm_rf'
    ./test/testtasks.rb:158:in `setup'

 14) Error:
test_directory(TestDirectoryTask):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:710:in `remove_dir'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:702:in `foreach'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:702:in `remove_dir'
    ./lib/rake.rb:558:in `remove_dir'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:663:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:679:in `rm_rf'
    ./lib/rake.rb:563:in `rm_rf'
    ./lib/rake.rb:558:in `rm_rf'
    ./test/testtasks.rb:162:in `teardown'

 15) Error:
test_file_depends_on_task_depend_on_file(TestFileTask):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:618:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:634:in `rm_f'
    ./test/testtasks.rb:83:in `setup'

 16) Error:
test_file_need(TestFileTask):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:618:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:634:in `rm_f'
    ./test/testtasks.rb:83:in `setup'

 17) Error:
test_file_times_new_depends_on_old(TestFileTask):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:618:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:634:in `rm_f'
    ./test/testtasks.rb:83:in `setup'

 18) Error:
test_file_times_old_depends_on_new(TestFileTask):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:618:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:617:in `rm'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:634:in `rm_f'
    ./test/testtasks.rb:83:in `setup'

 19) Failure:
test_ruby(TestFileUtils)
    [./test/testfileutils.rb:101:in `test_ruby'
     ./test/testfileutils.rb:99:in `call'
     ./lib/rake.rb:492:in `sh'
     ./lib/rake.rb:563:in `sh'
     ./lib/rake.rb:558:in `sh'
     ./lib/rake.rb:510:in `ruby'
     ./lib/rake.rb:563:in `ruby'
     ./lib/rake.rb:558:in `ruby'
     ./test/testfileutils.rb:99:in `test_ruby'
     ./test/testfileutils.rb:95:in `verbose'
     ./test/testfileutils.rb:95:in `test_ruby']:
<123> expected but was
<1>.

 20) Error:
test_sh(TestFileUtils):
RuntimeError: Command failed with status (1): [test/shellcommand.rb]
    ./lib/rake.rb:485:in `sh'
    ./lib/rake.rb:484:in `call'
    ./lib/rake.rb:492:in `sh'
    ./lib/rake.rb:563:in `sh'
    ./lib/rake.rb:558:in `sh'
    ./test/testfileutils.rb:56:in `test_sh'
    ./test/testfileutils.rb:56:in `verbose'
    ./test/testfileutils.rb:56:in `test_sh'

 21) Error:
test_sh_multiple_arguments(TestFileUtils):
RuntimeError: Command failed with status (1): [test $RAKE_TEST_SH = someval]
    ./lib/rake.rb:485:in `sh'
    ./lib/rake.rb:484:in `call'
    ./lib/rake.rb:492:in `sh'
    ./lib/rake.rb:563:in `sh'
    ./lib/rake.rb:558:in `sh'
    ./test/testfileutils.rb:63:in `test_sh_multiple_arguments'
    ./test/testfileutils.rb:63:in `verbose'
    ./test/testfileutils.rb:63:in `test_sh_multiple_arguments'

 22) Failure:
test_sh_special_handling(TestFileUtils)
    [./test/testfileutils.rb:81:in `test_sh_special_handling'
     ./test/testfileutils.rb:80:in `call'
     ./lib/rake.rb:492:in `sh'
     ./lib/rake.rb:563:in `sh'
     ./lib/rake.rb:558:in `sh'
     ./test/testfileutils.rb:80:in `test_sh_special_handling'
     ./test/testfileutils.rb:79:in `verbose'
     ./test/testfileutils.rb:79:in `test_sh_special_handling']:
<false> is not true.

 23) Error:
test_create(TestMakefileLoader):
Errno::ENOENT: No such file or directory - test/data/sample.mf
    ./lib/rake/loaders/makefile.rb:11:in `initialize'
    ./lib/rake/loaders/makefile.rb:11:in `open'
    ./lib/rake/loaders/makefile.rb:11:in `load'
    ./test/test_makefile_loader.rb:11:in `test_create'

 24) Error:
test_create_by_string(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 25) Error:
test_create_with_source(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 26) Error:
test_multiple_rules1(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 27) Error:
test_multiple_rules2(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 28) Error:
test_precedence_rule_vs_implicit(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 29) Error:
test_proc_dependent(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 30) Error:
test_recursive_overflow(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 31) Error:
test_recursive_rules(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 32) Error:
test_rule_and_no_action_task(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 33) Error:
test_single_dependent(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 34) Error:
test_string_close_matches(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

 35) Error:
test_too_many_dependents(TestRules):
Errno::EACCES: Permission denied - testdata/new
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `unlink'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:687:in `remove_file'
    ./lib/rake.rb:558:in `remove_file'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:664:in `rm_r'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `each'
    c:/usr/ruby/lib/ruby/1.8/fileutils.rb:655:in `rm_r'
    ./lib/rake.rb:563:in `rm_r'
    ./lib/rake.rb:558:in `rm_r'
    ./test/testtasks.rb:271:in `teardown'
    ./test/testtasks.rb:271:in `each'
    ./lib/rake.rb:750:in `send'
    ./lib/rake.rb:750:in `each'
    ./test/testtasks.rb:271:in `teardown'

111 tests, 296 assertions, 2 failures, 33 errors
rake aborted!
Command failed with status (1): [ruby -Ilib -w "c:/usr/ruby/lib/ruby/gems/1...]

Process rake exited with code 1
C:\usr\ruby\lib\ruby\gems\1.8\gems\rake-0.5.4> 


More information about the Rake-devel mailing list