This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author eric.snow
Recipients brett.cannon, eric.snow, ncoghlan, vstinner
Date 2016-03-17.00:48:10
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
Ah, you're talking about deleting Lib/test/  Doing so makes it a namespace package.  The loader we use for namespace packages [1] does not have a get_filename() method.  So the problem to solve is supporting namespace packages in Lib/

Regarding your patch, it's okay, but not the best option.  Using spec.submodule_search_locations like you are isn't ideal, but works.  However, you should be able to leave the is_package() call alone.

TBH, the better option is to use importlib.util.module_from_spec() instead, since it does the right thing for you, like setting __path__.

FWIW, I get the same as you by deleting those files and running the following:

  ./python Lib/ Lib/test

Date User Action Args
2016-03-17 00:48:10eric.snowsetrecipients: + eric.snow, brett.cannon, ncoghlan, vstinner
2016-03-17 00:48:10eric.snowsetmessageid: <>
2016-03-17 00:48:10eric.snowlinkissue26569 messages
2016-03-17 00:48:10eric.snowcreate