[New-bugs-announce] [issue17099] Raise ValueError when __loader__ not defined for importlib.find_loader()

Brett Cannon report at bugs.python.org
Fri Feb 1 14:44:37 CET 2013


New submission from Brett Cannon:

If __loader__ is None then ValueError is raised, but if it is not defined then AttributeError is raised instead. Probably should harmonize around ValueError even in the missing attribute case since __loader__ = None is equivalent to the attribute not existing.

I'm on the fence about considering this a bug, though, since the docs say if __loader__ == None then ValueError but does not directly mention what happens if the attribute is missing. Since anyone who has written code for this probably is catching both attributes (if at all since all but three modules coming from Python will have __loader__ defined ATM), it should be fine, but it is still a change in API/semantics that doesn't contradict the docs.

----------
components: Library (Lib)
messages: 181079
nosy: brett.cannon, ncoghlan, theller
priority: normal
severity: normal
stage: test needed
status: open
title: Raise ValueError when __loader__ not defined for importlib.find_loader()
type: behavior
versions: Python 3.3, Python 3.4

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue17099>
_______________________________________


More information about the New-bugs-announce mailing list