Open nicknezis opened 2 years ago
Target files are all within the heron/instance/src/python/network/
. Documentation for asyncio
. Based on a very quick look at the code removing the asyncore
will require a complete rewrite of most of the following classes. We will need to get familiar with both libraries before attempting to work on them. It would be best to have someone familiar with both libraries onboard with this change.
Heron Client
This class inherits from asyncore.dispatcher
and overrides a lot of the routines provided in the parent class. The bulk of the work here will be replacing the channel reading methods.
Gateway Looper
This class appears to be wrapping the asyncore.dispatcher
. It reads off a channel
and then dispatches calls appropriately. This will require a comprehensive rewrite.
Protocol
This is the main class through which the asyncore.dispatcher
is interfaced with. There should not be too many changes here.
Tests
A comprehensive rewrite of this will be required.
According to updated Python lint tools, the
asyncore
module is deprecated as of Python 3.6. It will be removed in Python 3.12. This ticket is to track the migration.Some information about the removal can be found here: https://peps.python.org/pep-0594/ https://docs.python.org/3/library/asyncore.html