Currently calvin-base uses kademia which depends on rpcudp but since this dependency is implicit, it uses the latest. The problem is that originally kademia used rpcudp-2.0 (based on twisted with python-2.x) but the current version of rpcudp is 3.0 and it used asyncio (python-3.x).
The suggestion is to put a hard version requirement on rpcudp==2.0 eventhough it's not directly called by Calvin
We are aware of the issue, and it is fixed in commit 71987576522f4ef17d9ef25eb1a0e2436499ff38 on the develop branch. It will make its way to master during the next release.
Currently calvin-base uses kademia which depends on rpcudp but since this dependency is implicit, it uses the latest. The problem is that originally kademia used rpcudp-2.0 (based on twisted with python-2.x) but the current version of rpcudp is 3.0 and it used asyncio (python-3.x). The suggestion is to put a hard version requirement on rpcudp==2.0 eventhough it's not directly called by Calvin