> I do not consider this a feature; that EINTR is exposed as an
> exception from the API is a bug.
select() currently works as specified; you are proposing a
compatibility-breaking change to the API, not a bugfix.
We're left with the fact that the API is inconvenient: but we now have
the selectors module and can advocate that instead of breaking existing
code during a feature freeze period.
(or we can retry on EINTR, which has the benefit of not creating new
situations to deal with in existing code)
> The user now only has one thing to deal with instead of two: an empty
> list being returned; something they should already have been dealing
> with.
Returning an empty list when no timeout has been passed has never been a
feature of select(), which is why users are not expected to be dealing
with it. |