Circular import in some cases when importing from lp.registry.interfaces.person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
Low
|
Jonathan Lange |
Bug Description
lp.registry.
====
import _pythonpath
import functools
from zope.component import getUtility
from canonical.config import config
from lp.registry.
====
====
Traceback (most recent call last):
File "cronscripts/
from lp.registry.
File "/home/
from canonical.
File "/home/
from lp.bugs.
File "/home/
from lp.bugs.
File "/home/
from lp.bugs.
File "/home/
from lp.code.
File "/home/
from lp.registry.
ImportError: cannot import name IPerson
====
Related branches
- Michael Hudson-Doyle: Approve
- Curtis Hovey (community): Needs Fixing (code)
-
Diff: 258 lines (+37/-156)6 files modifiedlib/canonical/launchpad/doc/renamed-view.txt (+1/-1)
lib/canonical/launchpad/interfaces/__init__.py (+12/-146)
lib/lp/bugs/interfaces/__init__.py (+0/-5)
lib/lp/code/interfaces/webservice.py (+23/-0)
lib/lp/soyuz/interfaces/archive.py (+1/-0)
lib/lp/soyuz/interfaces/webservice.py (+0/-4)
Changed in launchpad-registry: | |
assignee: | Curtis Hovey (sinzui) → Jonathan Lange (jml) |
status: | Triaged → In Progress |
Changed in launchpad-registry: | |
milestone: | none → 10.11 |
tags: |
added: qa-ok removed: qa-needstesting |
tags: |
added: qa-ok removed: qa-bad |
Changed in launchpad-registry: | |
status: | Fix Committed → Fix Released |
I started a branch to remove the glob imports, but it will take many weeks to get this landed. All circular imports will be fixed when all all modules stop using the globs. This requires landing fixes to shipit and canoical-identify provider first, then update all launchpad call sites. The fourth step is not mechanical, I expect that somce modules must be broken up as I remove the globs from the __init__.py