[Python-Dev] Breaking undocumented API

Georg Brandl g.brandl at gmx.net
Thu Nov 18 13:37:38 CET 2010


Am 18.11.2010 11:47, schrieb Michael Foord:
> On 17/11/2010 21:16, Éric Araujo wrote:
>>> Excluding a builtin name from __all__ sounds like a perfectly sensible
>>> idea, so even if it wasn't deliberate, I'd say it qualifies as
>>> fortuitous :)
>> But then, a tool that looks into __all__ to find for example what
>> objects to document will miss open.  I’d put open in __all__.
>>
> 
> "import *" would then override the builtin open. A good reason not to 
> use "import *" I guess, but also a good reason not to create names that 
> shadow builtins.

Heh.  Instead have fun with io.ioopen(), gzip.gzipopen(),
webbrowser.webbrowseropen(), etc.?  We do have namespace support for a reason.

Georg



More information about the Python-Dev mailing list