#5467 current style of implementation of Tracker classes leads to cyclic imports
Closed: Fixed None Opened 8 years ago by mkubik.

# ipa console
(Custom IPA interactive Python console)
>>> from ipatests.test_xmlrpc.test_group_plugin import GroupTracker
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/ipatests/test_xmlrpc/test_group_plugin.py", line 35, in <module>
    from ipatests.test_xmlrpc.test_user_plugin import UserTracker
  File "/usr/lib/python2.7/site-packages/ipatests/test_xmlrpc/test_user_plugin.py", line 42, in <module>
    from ipatests.test_xmlrpc.test_group_plugin import GroupTracker
ImportError: cannot import name GroupTracker

Currently the tracker class is implemented in the test module of its respective plugin. This creates a possibility of circular imports as shown in the stack trace.


master:

  • 17f9ca1 Separated Tracker implementations into standalone package

Metadata Update from @mkubik:
- Issue assigned to mkubik
- Issue set to the milestone: FreeIPA 4.3

7 years ago

Login to comment on this ticket.

Metadata