[issue6706] asyncore's accept() is broken

Giampaolo Rodola' report at bugs.python.org
Sat Sep 25 13:43:41 CEST 2010

Giampaolo Rodola' <g.rodola at gmail.com> added the comment:

> I'm not convinced hiding operating system bugs is a good idea.

Do you propose to let the error raise then?
The point of frameworks such as asyncore and twisted is to hide all system-specific errors as much as possible and provide a portable interface across all platforms.
AFAICT, the whole point of this issue is that there should be only one way for an asyncore-based server to accept an incoming connection, possibly avoiding the user to deal with low-level details such as catching EWOULDBLOCK/ECONNABORTED/... in his application, and looking for accept() returning None is one possibility.

As I said, in a better designed framework the user shouldn't be supposed to call accept() at all, but that's how asyncore is designed.


Python tracker <report at bugs.python.org>

More information about the Python-bugs-list mailing list