> On Aug 28, 2017, at 3:59 PM, Thomas Kluyver <tho...@kluyver.me.uk> wrote:
> 
> The difference I see with the "return None" question is that there we
> have an alternative (return NotImplemented) which is just as simple for
> both sides, but avoids the identified issue with a buggy backend. The
> only argument there seems to be for using None is about semantics - and
> that's not a great argument, because 'practicality beats purity'.
> 
> With the questions over sdist/wheel consistency, there's a complexity
> cost, for the spec and for frontends, in deciding that they can't. So
> we're weighing a trade-off: do we force ourselves to resolve the
> notimplemented question so that frontends can do sdist-wheel+fallback,
> or do we leave it up to frontends and risk some bugs which we might
> otherwise have prevented.


I think the best option is to just export an exception that a frontend can 
catch. That gives like 95% of the benefit of either mechanism for an extra 5% 
of work. If a backend is unwilling to add a:

class UnsupportedOperation(Exception):
    pass

To their backend, then they’re likely not a backend that we should be spending 
a whole lot of time or effort trying to support. Two copy/pasteable lines of 
code is a tiny price to pay. I haven’t talked to Nick, but I’d be surprised if 
he was against this, since it’s basically what he wanted with a more specific 
exception (which is good practice anyways).

—
Donald Stufft



_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to