Hi all, I am looking to rewrite the current transport layer of the Gremlin-Python client to use AIOHTTP [1] instead of Tornado. My plan is to keep the current abstract base class the same and simply rewrite the underlying functions to utilize AIOHTTP.
My plan is to use AIOHTTP v3.7.x, which supports Python 3.6+. This will deprecate support of older Python versions, but the current docker Python version for the repository is 3.6, so this should not pose a problem. I have done some prototyping and testing and found the rewrite fixed the following errors: - Event loop issues when using Tornado [2] - Heartbeat timeout support [3] - Multithreaded DriverRemoteConnection [4] - Build asyncio task errors [5] Because my plan is to rewrite the transport layer using the same abstract base class, we have the option of keeping the old Tornado library as is and deprecating it while making the AIOHTTP implementation the default implementation. Otherwise we can fully remove it. I am fine with either option but wanted to get some other opinions on it. Please let me know your thoughts around this and I will take it all into consideration before generating a pull request. [1] https://github.com/aio-libs/aiohttp [2] https://github.com/jupyter/notebook/issues/3397 [3] https://issues.apache.org/jira/browse/TINKERPOP-1886 [4] https://issues.apache.org/jira/browse/TINKERPOP-2388 [5] https://issues.apache.org/jira/browse/TINKERPOP-2484 -- *Lyndon Bauto* Senior Software Developer Bit Quill Technologies Inc. lynd...@bitquilltech.com https://www.bitquilltech.com