From: Brett Cannon Date: Mon, 9 Jul 2012 18:15:32 +0000 (-0400) Subject: Add a note about pkgutil and how some things do not work in the face of PEP 302 perme... X-Git-Tag: v3.3.0b2~258 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=903c27c177f54099e0c07e2244b0cce41e7aec54;p=python Add a note about pkgutil and how some things do not work in the face of PEP 302 permeating throughout import. --- diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst index e3eddc4298..e2deb9a6c1 100644 --- a/Doc/whatsnew/3.3.rst +++ b/Doc/whatsnew/3.3.rst @@ -1721,7 +1721,7 @@ Porting Python code * Because ``None`` is now inserted into :attr:`sys.path_importer_cache`, if you are clearing out entries in the dictionary of paths that do not have a finder, you will need to remove keys paired with values of ``None`` **and** - :class:`imp.NullImporter` to be backwards-compatible. This will need to extra + :class:`imp.NullImporter` to be backwards-compatible. This will lead to extra overhead on older versions of Python that re-insert ``None`` into :attr:`sys.path_importer_cache` where it repesents the use of implicit finders, but semantically it should not change anything. @@ -1731,6 +1731,12 @@ Porting Python code both the modification time and size of the source file the bytecode file was compiled from. +* :func:`pkgutil.iter_modules` and :func:`pkgutil.walk_packages` no longer work + with modules imported using the default import system. Both functions have + always relied on a non-standard method (``iter_modules()``) to be defined on + loaders to work and the import system now always provides a loader for + modules but does not implement the non-standard method. + Porting C code --------------