Project

General

Profile

Bug #7958

include FileUtils::Verbose gives NoMethodError when installing files with a different mode

Added by drbrain (Eric Hodel) about 8 years ago. Updated almost 8 years ago.

Status:
Closed
Priority:
Normal
Target version:
ruby -v:
ruby 2.1.0dev (2013-02-26 trunk 39490) [x86_64-darwin12.2.1]
Backport:
[ruby-core:52890]

Description

=begin
Seems like (({fu_stream_blksize})) isn't included when (({FileUtils::Verbose})) is. Changing to plain FileUtils works, though.

$ cat test.rb
require 'fileutils'
require 'tmpdir'

include FileUtils::Verbose

Dir.mktmpdir 'test' do |dir|
install FILE, dir, mode: 0600
install FILE, dir, mode: 0640
end

$ ~/.rubies/trunk/bin/ruby -v test.rb
ruby 2.1.0dev (2013-02-26 trunk 39490) [x86_64-darwin12.2.1]
install -c -m 0600 test.rb /var/folders/87/twjsm89x01161gp5d9qwlx2m0000gn/T/test20130225-53176-197q6me
install -c -m 0640 test.rb /var/folders/87/twjsm89x01161gp5d9qwlx2m0000gn/T/test20130225-53176-197q6me
/Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:898:in compare_stream': undefined methodfu_stream_blksize' for main:Object (NoMethodError)
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:882:in block (2 levels) in compare_file'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:881:in
open'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:881:in block in compare_file'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:880:in
open'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:880:in compare_file'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:926:in
block in install'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:1620:in block in fu_each_src_dest'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:1633:in
fu_each_src_dest0'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:1618:in fu_each_src_dest'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:925:in
install'
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/fileutils.rb:137:in install'
from test.rb:8:in
block in '
from /Users/drbrain/.rubies/trunk/lib/ruby/2.1.0/tmpdir.rb:88:in mktmpdir'
from test.rb:6:in
'
=end


Files

fileutils.rb.verbose_install_fix.patch (477 Bytes) fileutils.rb.verbose_install_fix.patch drbrain (Eric Hodel), 02/26/2013 10:24 AM
fileutils.rb.verbose_install_fix.2.patch (23.4 KB) fileutils.rb.verbose_install_fix.2.patch drbrain (Eric Hodel), 02/27/2013 07:14 AM
fileutils.patch (1.81 KB) fileutils.patch trans (Thomas Sawyer), 03/01/2013 05:29 PM

Related issues

Related to Ruby master - Feature #4970: FileUtils refactoredClosed07/04/2011Actions
Related to Backport200 - Backport #7992: Backport r39544 - Fixes FileUtils bug #7958Closednagachika (Tomoyuki Chikanaga)03/01/2013Actions

Also available in: Atom PDF