[Python-Dev] is the 'path' argument to an importer's find_module() just a hint?

Thomas Heller theller at ctypes.org
Mon Oct 27 21:03:32 CET 2008


Brett Cannon schrieb:
> I just discovered frozen packages set their __path__ simply to their
> name and not to a list as expected (http://bugs.python.org/issue4211).
> This made me think about the 'path' argument to find_module() and
> whether it can be treated as simply a hint or should always be
> seriously looked at.
> 
> Take frozen modules, for instance. If the 'path' argument is meant to
> always be considered then if a frozen module is within a package a
> check should be done to make sure that the parent package is in 'path'
> somewhere. But if it is simply a hint, then 'path' should be ignored
> and whether the module can be found should depend fully on
> imp.is_frozen().
> 
> So, what do people think? Should 'path' for find_module() always be
> taken into consideration, or only when it happens to be convenient?

At the moment I don't care about find_module for frozen modules/packages
(is someone still using these?), but all the code I remember that
manipulates a packages __path__ would most certainly break if it
finds a string instead of a list.

Thomas



More information about the Python-Dev mailing list