Brett Cannon <br...@python.org> added the comment:

To respond to Nick's "yes, there are two copies of importlib._bootstrap" 
leanings, distutils2 has actually run into issues with this because they 
initially made some assumptions about consistency in what importlib returned 
vs. what import does (Arfrever can explain better than I can since he keeps 
pointing it out to me =).

If using _frozen_importlib to bootstrap in importlib._bootstrap is looking bad, 
then I'm fine w/ simply having the tests for importlib and imp use 
importlib._bootstrap and otherwise just use _frozen_importlib for everything 
else since I have tried to be diligent to add any and all import-related tests 
to importlib. Except while developing the code should be exactly the same so 
hiding the details really won't make much of a difference in the very common 
case.

If we go this route, though, then we really should take this time to do a 
proper context manager/decorator/whatever that covers all import state 
(including uncaching modules and sys.path_importer_cache) that we might care 
about and put the solution into test.support (what issue #14715 is asking for 
and I think is reasonable). We should also then add to regrtest detection of 
stuff left in sys.path_importer_cache or sys.modules that do not come from 
_frozen_importlib (which should help with the sporadic test_imp failure).

----------
dependencies: +test.support.DirsOnSysPath should be replaced by 
importlib.test.util.import_state

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue14657>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to