
I don't have any context here, but "return NotImplemented" is a very narrow idiom intended only for binary operators (e.g. __add__) when the interpreter should give the other operand a chance (e.g. __radd__) or use a default implementation. In pretty much any other context, if you have an operation that returns an regular value or an error value, the error value should be None. (Exceptions include e.g. returning a non-negative int or -1 for errors, or True for success and False for errors.) On Fri, Aug 25, 2017 at 6:53 PM, xoviat <xoviat@gmail.com> wrote:
Oh, BDFL, will you settle whether we should raise an exception or return Notimplemented?
On Aug 25, 2017 8:28 PM, "Greg Ewing" <greg.ewing@canterbury.ac.nz> wrote:
xoviat wrote:
I mean how is opening a file different than attempting to build an sdist?
1. Opening a file is a very common operation.
2. Most file opens are expected to succeed, and if one doesn't, the appropriate place to deal with that is almost never at the site of the open call, but somewhere further up.
In contrast, there's probably only about one place in any given frontend where the backend's build_sdist method gets invoked, and it's unlikely the ability to let a not-implemented exception bubble up from that point would be of great use.
-- Greg
_______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig
-- --Guido van Rossum (python.org/~guido)