requirements: bump min aiorpcx to 0.22.0
aiorpcx 0.20 changed the behaviour/API of TaskGroups. When used as a context manager, TaskGroups no longer propagate exceptions raised by their tasks. Instead, the calling code has to explicitly check the results of tasks and decide whether to re-raise any exceptions. This is a significant change, and so this commit introduces "OldTaskGroup", which should behave as the TaskGroup class of old aiorpcx. All existing usages of TaskGroup are replaced with OldTaskGroup. closes https://github.com/spesmilo/electrum/issues/7446
This commit is contained in:
@@ -38,7 +38,6 @@ import hashlib
|
||||
import functools
|
||||
|
||||
import aiorpcx
|
||||
from aiorpcx import TaskGroup
|
||||
from aiorpcx import RPCSession, Notification, NetAddress, NewlineFramer
|
||||
from aiorpcx.curio import timeout_after, TaskTimeout
|
||||
from aiorpcx.jsonrpc import JSONRPC, CodeMessageError
|
||||
@@ -47,7 +46,7 @@ import certifi
|
||||
|
||||
from .util import (ignore_exceptions, log_exceptions, bfh, MySocksProxy,
|
||||
is_integer, is_non_negative_integer, is_hash256_str, is_hex_str,
|
||||
is_int_or_float, is_non_negative_int_or_float)
|
||||
is_int_or_float, is_non_negative_int_or_float, OldTaskGroup)
|
||||
from . import util
|
||||
from . import x509
|
||||
from . import pem
|
||||
@@ -376,7 +375,7 @@ class Interface(Logger):
|
||||
# Dump network messages (only for this interface). Set at runtime from the console.
|
||||
self.debug = False
|
||||
|
||||
self.taskgroup = TaskGroup()
|
||||
self.taskgroup = OldTaskGroup()
|
||||
|
||||
async def spawn_task():
|
||||
task = await self.network.taskgroup.spawn(self.run())
|
||||
@@ -675,7 +674,7 @@ class Interface(Logger):
|
||||
async def request_fee_estimates(self):
|
||||
from .simple_config import FEE_ETA_TARGETS
|
||||
while True:
|
||||
async with TaskGroup() as group:
|
||||
async with OldTaskGroup() as group:
|
||||
fee_tasks = []
|
||||
for i in FEE_ETA_TARGETS:
|
||||
fee_tasks.append((i, await group.spawn(self.get_estimatefee(i))))
|
||||
|
||||
Reference in New Issue
Block a user