Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Typeerror: Cannot Create A Consistent Method Resolution Order (Mro) when trying to launch ldtp daemon via "#ldtp -s" #65

Open
amoom opened this issue Jul 18, 2024 · 1 comment

Comments

@amoom
Copy link

amoom commented Jul 18, 2024

trying to launch ldtp daemon via "ldtp -s" and get below error message

Traceback (most recent call last):
File "/usr/local/bin/ldtp", line 4, in
import('pkg_resources').run_script('ldtp==3.5.1', 'ldtp')
File "/usr/lib/python3.11/site-packages/pkg_resources/init.py", line 722, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python3.11/site-packages/pkg_resources/init.py", line 1561, in run_script
exec(code, namespace, namespace)
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/EGG-INFO/scripts/ldtp", line 23, in
import ldtpd
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/init.py", line 40, in
from xmlrpc_daemon import XMLRPCLdtpd
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/xmlrpc_daemon.py", line 25, in
import core
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/core.py", line 65, in
from combo_box import ComboBox
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/combo_box.py", line 286, in
class ComboBox(Utils, LayeredPane):
TypeError: Cannot create a consistent method resolution
order (MRO) for bases Utils, LayeredPane

which can be fixed by switching the order of base classes:
class ComboBox(Utils, LayeredPane):
to
class ComboBox(LayeredPane,Utils):

looks like a diamond Inheritance problem.

@amoom
Copy link
Author

amoom commented Jul 18, 2024

as well, same issue for core.py
put Utils to the end of param table:
class Ldtpd(ComboBox, Table, Menu, PageTabList, Text, Mouse, Generic, Value, Utils)

Traceback (most recent call last):
File "/usr/local/bin/ldtp", line 4, in
import('pkg_resources').run_script('ldtp==3.5.1', 'ldtp')
File "/usr/lib/python3.11/site-packages/pkg_resources/init.py", line 722, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python3.11/site-packages/pkg_resources/init.py", line 1561, in run_script
exec(code, namespace, namespace)
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/EGG-INFO/scripts/ldtp", line 23, in
import ldtpd
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/init.py", line 40, in
from xmlrpc_daemon import XMLRPCLdtpd
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/xmlrpc_daemon.py", line 25, in
import core
File "/usr/local/lib/python3.11/site-packages/ldtp-3.5.1-py3.11.egg/ldtpd/core.py", line 71, in
class Ldtpd(Utils, ComboBox, Table, Menu, PageTabList,
TypeError: Cannot create a consistent method resolution
order (MRO) for bases Utils, ComboBox, Table, Menu, PageTabList, Text, Mouse, Generic, Value

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant