URL: https://github.com/SSSD/sssd/pull/5845 Title: #5845: sss-analyze: Fix self imports
justin-stephenson commented: """ > @justin-stephenson, there is the circular import on the recent change exposed > with this PR: > > ``` > [root@master1 /]# sssctl analyze > NOTE: Tevent chain ID support missing, request analysis will be limited. > It is recommended to use the --logdir option against tevent chain ID > supported SSSD logs. > Traceback (most recent call last): > File "/usr/libexec/sssd/sss_analyze", line 3, in <module> > from sssd import sss_analyze > File "/usr/lib/python3/site-packages/sssd/sss_analyze.py", line 3, in > <module> > from sssd.modules import request > File "/usr/lib/python3/site-packages/sssd/modules/request.py", line 6, in > <module> > from sssd.sss_analyze import SubparsersAction > ImportError: cannot import name 'SubparsersAction' from partially initialized > module 'sssd.sss_analyze' (most likely due to a circular import) > (/usr/lib/python3/site-packages/sssd/sss_analyze.py) > Command '/usr/libexec/sssd/sss_analyze' failed with [1] > ``` I can fix this properly if I can push to your PR here. class SubparsersAction and class Option can be moved to a separate file(like parser.py), the Analyzer() instance can be passed as an argument to RequestAnalyzer setup_args() therefore we don't need to import Analyzer in modules/request """ See the full comment at https://github.com/SSSD/sssd/pull/5845#issuecomment-996048609
_______________________________________________ sssd-devel mailing list -- sssd-devel@lists.fedorahosted.org To unsubscribe send an email to sssd-devel-le...@lists.fedorahosted.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedorahosted.org/archives/list/sssd-devel@lists.fedorahosted.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure