From ded1f6d130d3b54ee0b97d56d98cab82af2038c4 Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Wed, 12 Sep 2018 17:16:56 +0100 Subject: [PATCH] Update to aiorpcx 0.8.0 --- electrumx/server/controller.py | 4 ++-- electrumx/server/mempool.py | 2 +- electrumx/server/peers.py | 8 ++++---- setup.py | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/electrumx/server/controller.py b/electrumx/server/controller.py index 733b9d9..b42ac2b 100644 --- a/electrumx/server/controller.py +++ b/electrumx/server/controller.py @@ -80,8 +80,8 @@ class Controller(ServerBase): '''Start the RPC server and wait for the mempool to synchronize. Then start serving external clients. ''' - if not (0, 7, 3) <= aiorpcx_version < (0, 8): - raise RuntimeError('aiorpcX version 0.7.x required with x >= 3') + if not (0, 8, 0) <= aiorpcx_version < (0, 9): + raise RuntimeError('aiorpcX version 0.8.x required') env = self.env min_str, max_str = env.coin.SESSIONCLS.protocol_min_max_strings() diff --git a/electrumx/server/mempool.py b/electrumx/server/mempool.py index 98453a3..ee86c38 100644 --- a/electrumx/server/mempool.py +++ b/electrumx/server/mempool.py @@ -305,7 +305,7 @@ class MemPool(object): async def keep_synchronized(self, synchronized_event): '''Keep the mempool synchronized with the daemon.''' - async with TaskGroup(wait=any) as group: + async with TaskGroup() as group: await group.spawn(self._refresh_hashes(synchronized_event)) await group.spawn(self._refresh_histogram(synchronized_event)) await group.spawn(self._logging(synchronized_event)) diff --git a/electrumx/server/peers.py b/electrumx/server/peers.py index ad36dbf..72b71e4 100644 --- a/electrumx/server/peers.py +++ b/electrumx/server/peers.py @@ -290,10 +290,10 @@ class PeerManager(object): peer.features['server_version'] = server_version ptuple = protocol_tuple(protocol_version) - # FIXME: Make concurrent preserving the exception - await self._send_headers_subscribe(session, peer, ptuple) - await self._send_server_features(session, peer) - await self._send_peers_subscribe(session, peer) + async with TaskGroup() as g: + await g.spawn(self._send_headers_subscribe(session, peer, ptuple)) + await g.spawn(self._send_server_features(session, peer)) + await g.spawn(self._send_peers_subscribe(session, peer)) async def _send_headers_subscribe(self, session, peer, ptuple): message = 'blockchain.headers.subscribe' diff --git a/setup.py b/setup.py index f3a4cf8..fb96b5b 100644 --- a/setup.py +++ b/setup.py @@ -12,7 +12,7 @@ setuptools.setup( # "blake256" package is required to sync Decred network. # "xevan_hash" package is required to sync Xuez network. # "groestlcoin_hash" package is required to sync Groestlcoin network. - install_requires=['aiorpcX>=0.7.3,<0.8', 'attrs', + install_requires=['aiorpcX>=0.8.0,<0.9', 'attrs', 'plyvel', 'pylru', 'aiohttp >= 2'], packages=setuptools.find_packages(include=('electrumx*',)), description='ElectrumX Server',