Issue #4970 has been updated by Hiroshi Shirosaki.


r34669 (trunk): * lib/fileutils.rb: refactored FileUtil methods
seems to cause test errors with mingw32.

TestDir_M17N#test_filename_as_bytes_extutf8 = 0.12 s = E
TestDir_M17N#test_filename_extutf8_inteucjp_unrepresentable = 0.18 s = E


This patch reverts a line to the original code and fixes errors.

diff --git a/lib/fileutils.rb b/lib/fileutils.rb
index 8d1009b..46dfffb 100644
--- a/lib/fileutils.rb
+++ b/lib/fileutils.rb
@@ -1342,7 +1342,7 @@ private

     def entries
       opts = {}
-      opts[:encoding] = "UTF-8" if /mswin|mignw/ =~ RUBY_PLATFORM
+      opts[:encoding] = ::Encoding::UTF_8 if fu_windows?
       Dir.entries(path(), opts)\
           .reject {|n| n == '.' or n == '..' }\
           .map {|n| Entry_.new(prefix(), join(rel(), n.untaint)) }

----------------------------------------
Feature #4970: FileUtils refactored
https://bugs.ruby-lang.org/issues/4970

Author: Thomas Sawyer
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 2.0.0


I've been working with FileUtils a good bit, and concluded it could use some refactoring to make the code clearer and easier to work with. Here is the pull request:

  https://github.com/ruby/ruby/pull/30

Essentially, I have removed the method definition loops that occur at the end of the script and replaced them with a simple call (`define_command`) made for each command as it is defined. This allowed me to use `extend self` all the way through, rather than having to use `module_function` in FileUtils and `extend self` in the Verbose, NoWrite and DryRun "submodules".


-- 
http://bugs.ruby-lang.org/