[#64517] Fw: Re: Ruby and Rails to become Apache Incubator Project — Tetsuya Kitahata <kitahata@99.alumni.u-tokyo.ac.jp>

What do you think? >> Ruby developers

13 messages 2014/08/23

[#64615] [ruby-trunk - Feature #10181] [Open] New method File.openat() — oss-ruby-lang@...

Issue #10181 has been reported by Technorama Ltd..

10 messages 2014/08/28
[#64616] Re: [ruby-trunk - Feature #10181] [Open] New method File.openat() — Eric Wong <normalperson@...> 2014/08/28

I like this feature.

[#64671] Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...>

Why this fix solve your problem?

9 messages 2014/08/30
[#64672] Re: Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...> 2014/08/30

(2014/08/30 8:50), SASADA Koichi wrote:

[ruby-core:64641] Re: [ruby-trunk - Feature #10181] [Open] New method File.openat()

From: Joel VanderWerf <joelvanderwerf@...>
Date: 2014-08-29 08:37:00 UTC
List: ruby-core #64641
On 08/29/2014 01:21 AM, Eric Wong wrote:
> Joel VanderWerf <joelvanderwerf@gmail.com> wrote:
>> On 08/29/2014 12:55 AM, Eric Wong wrote:
>>> Joel VanderWerf <joelvanderwerf@gmail.com> wrote:
>>>> On 08/28/2014 02:53 PM, Eric Wong wrote:
>>>>> I like this feature.
>>>>>
>>>>> If matz approves, I assume you also want to add other *at functions?
>>>>> e.g. fstatat, renameat, unlinkat, mkdirat, etc.
>>>>
>>>> Hm, that suggests...
>>>>
>>>> Dir.at(...).open(...)
>>>> Dir.at(...).fstat(...)
>>>
>>> How would that be implemented?
>>
>> Couldn't Dir.at(...) return an object that wraps the fd of the dir?
>
> Yes, but it would need to cache the _same_ object every time it's called
> given that arg for a given thread.  Then it might not detect when that
> thread might actually want a different FD/object, and the cache can fill
> up or expire and we still end up with unpredictable behavior.

What if you always used it like this:

d = Dir.at()
d.open()
d.fstat()

so it's up to the caller to decide explicitly when to use the same 
object or not. It reflects the underlying fd-based API, doesn't it?

In This Thread