At 12:24 PM 9/8/2006 -0600, Jeremy Kloth wrote:
> >From PEP 302:
>
>   The load_module() method has a few responsibilities that it must
>     fulfill *before* it runs any code:
>
>     - If there is an existing module object named 'fullname' in
>       sys.modules, the loader *must* use that existing module.
>       (Otherwise, the reload() builtin will not work correctly.)
>       If a module named 'fullname' does not exist in sys.modules,
>       the loader must create a new module object and add it to
>       sys.modules.
>(emphasis on must)
>
>The current implementation always reloads the module if it exists.

Yes, that's the *intent* of the above paragraph.  An importer that 
*doesn't* reload under these circumstances will break the reload() builtin.


>   This
>problem exists in both the 0.6 and 0.7 series.  Since pkgutil is in Python
>2.5, this is an issue there as well.

Unless I've misunderstood you, this is not a problem, it's the correct and 
intended behavior.  When a loader is asked to load a module that's in 
sys.modules, it's supposed to *reload* it.  Otherwise, the reload() builtin 
won't work.

_______________________________________________
Distutils-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to