"Glass_saga (Masaki Matsushita)" <glass.saga / gmail.com> wrote:
> Feature #7148: Improved Tempfile w/o DelegateClass
> https://bugs.ruby-lang.org/issues/7148

I would still like this for 2.3.0, just hit a snag with IO.copy_stream
using Tempfile :x

Also, Charles hit a similar problem not long ago, too:
[ruby-core:68700] [Bug #11015]

> Author: Glass_saga (Masaki Matsushita)
> Status: Open
> Priority: Normal
> Assignee: 
> Category: lib
> Target version: 
> 
> 
> I propose improved Tempfile without DelegateClass().
> Present Tempfile has following problems.
> 
> 1) confusing inspect
> 
> t = Tempfile.new("foo") #=> #<File:/tmp/foo20121012-6762-12w11to>
> t.is_a? File #=> false
> 
> 2) #dup doesn't duplicate IO
> 
> t = Tempfile.new("foo")
> t.dup.close
> t.read #=> IOError: closed stream
> 
> 3) finalizer performs unlink even when it has been duplicated
> 
> t = Tempfile.new("foo")
> path = t.path #=> "/tmp/foo20121012-7533-1q537gq"
> File.exist? path #=> true
> tt = t.dup
> t = nil
> GC.start
> File.exist? path #=> false