Project

General

Profile

Actions

Bug #11973

closed

IO#advise should raise NotImplementedError on platforms that do not support that call

Added by cremes (Chuck Remes) over 8 years ago. Updated over 8 years ago.

Status:
Rejected
Assignee:
-
Target version:
-
[ruby-core:72797]

Description

Right now IO#advise returns nil when passed legal arguments even on platforms that do not support that POSIX function (like OS X). To be consistent with other calls in core, I think that IO#advise should raise NotImplementedError for unsupported platforms.

A similar topic on IO#advise was recently discussed in https://bugs.ruby-lang.org/issues/11806#note-6.

To support this idea, I'd like to point to how File#link behaves in a similar situation on platforms that do not support hard links in the filesystem. It raises NotImplementedError.

https://github.com/ruby/ruby/blob/trunk/file.c#L2723

I am bringing up this issue so we can make Ruby behave more consistently and behave in a consistent manner when trying to access functions on unsupported platforms.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0