Skip to content

Tornado x msgpack-rpc-python 0.4.1 incompatibility when connection to Airsim simulator #4752

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

Open
tanyaspaul opened this issue Nov 27, 2022 · 0 comments

Comments

@tanyaspaul
Copy link

Hello there,

I have some dependencies issues with the API , when I try to connect to the Airsim simulator. I have this error :

Output exceeds the size limit. Open the full output data in a text editor

TypeError Traceback (most recent call last)
Cell In [15], line 2
1 # connect to the AirSim simulator
----> 2 client = airsim.MultirotorClient()
3 client.confirmConnection()
4 client.enableApiControl(True)

File ~/anaconda3/envs/py38/lib/python3.8/site-packages/airsim/client.py:1119, in MultirotorClient.init(self, ip, port, timeout_value)
1118 def init(self, ip = "", port = 41451, timeout_value = 3600):
-> 1119 super(MultirotorClient, self).init(ip, port, timeout_value)

File ~/anaconda3/envs/py38/lib/python3.8/site-packages/airsim/client.py:17, in VehicleClient.init(self, ip, port, timeout_value)
15 if (ip == ""):
16 ip = "127.0.0.1"
---> 17 self.client = msgpackrpc.Client(msgpackrpc.Address(ip, port), timeout = timeout_value, pack_encoding = 'utf-8', unpack_encoding = 'utf-8')

File ~/anaconda3/envs/py38/lib/python3.8/site-packages/msgpackrpc/client.py:15, in Client.init(self, address, timeout, loop, builder, reconnect_limit, pack_encoding, unpack_encoding)
12 session.Session.init(self, address, timeout, loop, builder, reconnect_limit, pack_encoding, unpack_encoding)
14 if timeout:
---> 15 loop.attach_periodic_callback(self.step_timeout, 1000)

File ~/anaconda3/envs/py38/lib/python3.8/site-packages/msgpackrpc/loop.py:39, in Loop.attach_periodic_callback(self, callback, callback_time)
36 self.dettach_periodic_callback()
38 self._periodic_callback = ioloop.PeriodicCallback(callback, callback_time, self._ioloop)
...
942 # at once, so it's ok to write even when not strictly
943 # necessary.
944 self._waker.wake()

TypeError: unsupported operand type(s) for *: 'ZMQIOLoop' and 'float'


However, when I check microsoft documentation they mention :
When making API call I get error#
If you are getting this error,

*TypeError: unsupported operand type(s) for : 'AsyncIOLoop' and 'float'

its probably due to upgraded version of tornado package with version > 5.0 in Python that conflicts with msgpack-rpc-python which requires tornado package < 5.0. To fix this >you can update the package like this:

pip install --upgrade msgpack-rpc-python

But this might break something (for example, PyTorch 0.4+) because it will uninstall newer tornado and re-install older one. To avoid this you should create new conda >environment.

Now it gets more tricky because when I check my dependencies I receive this error:

ERROR

  • ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
  • nbclassic 0.4.8 requires tornado>=6.1, but you have tornado 4.5.3 which is incompatible.
  • jupyter-server 1.21.0 requires tornado>=6.1.0, but you have tornado 4.5.3 which is incompatible.
  • jupyter-client 7.4.7 requires tornado>=6.2, but you have tornado 4.5.3 which is incompatible.
  • ipyparallel 8.4.1 requires tornado>=5.1, but you have tornado 4.5.3 which is incompatible.
  • ipykernel 6.15.2 requires tornado>=6.1, but you have tornado 4.5.3 which is incompatible.

HOWEVER when I try to upgrate tornado I get this error:

  • ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
    msgpack-rpc-python 0.4.1 requires tornado<5,>=3, but you have tornado 6.2 which is incompatible.

Background information:

  • Linux
  • Ubuntu 20.04
  • Coding in Visual Studio
  • Environement py38 (3.8.15)

I have been stuck on this for a while trying to fixe those dependencies problem but only circular solution.

Any help is appreciated!!

Thanks so much,

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