[Python-Dev] [Python-3000-checkins] r45617 - in python/branches/p3yk/Lib/plat-mac/lib-scriptpackages: CodeWarrior/CodeWarrior_suite.py CodeWarrior/init.py Explorer/init.py Finder/Containers_and_folders.py Finder/Files.py Finder/Finder_Basics.py Finder (original) (raw)

Phillip J. Eby pje at telecommunity.com
Fri Apr 21 18:45:19 CEST 2006


At 06:26 PM 4/21/2006 +0200, Thomas Wouters wrote:

On 4/21/06, guido.van.rossum <<mailto:python-3000-checkins at python.org>python-3000-checkins at python.org> wrote:

The hardest part was fixing two mutual recursive imports; somehow changing "import foo" into "from . import foo" where foo and bar import each other AND both are imported from init.py caused things to break. Bah. Hm, this is possibly a flaw in the explicit relative import mechanism.

Actually, this sounds rather like a problem that happens in Python 2.4 as well.

If you have a package 'foo' containing modules 'bar' and 'baz', and foo/init.py imports both bar and baz, then 'import foo.bar' will fail inside of baz. You have to use 'from foo import bar' or it doesn't work. We run into this a lot in Chandler, which tries to expose package APIs from the package init modules.



More information about the Python-Dev mailing list