Compare commits

..

4 Commits

Author SHA1 Message Date
Tyler Goodlet af3c14b250 Flip to `collapse_eg()` use in `.trionics.gather_contexts()` 2025-06-15 23:29:13 -04:00
Tyler Goodlet 7de7fd0afd Use `Channel.aid: Aid` throughout `.ipc._server` 2025-06-15 22:05:51 -04:00
Tyler Goodlet 79888a31a4 Report `enable_stack_on_sig` on `stackscope` import failure 2025-06-15 22:05:17 -04:00
Tyler Goodlet de16a9ac6f Drop stale comment from inter-peer suite 2025-06-15 22:04:01 -04:00
4 changed files with 11 additions and 16 deletions

View File

@ -410,7 +410,6 @@ def test_peer_canceller(
''' '''
async def main(): async def main():
async with tractor.open_nursery( async with tractor.open_nursery(
# NOTE: to halt the peer tasks on ctxc, uncomment this.
debug_mode=debug_mode, debug_mode=debug_mode,
) as an: ) as an:
canceller: Portal = await an.start_actor( canceller: Portal = await an.start_actor(

View File

@ -238,7 +238,8 @@ def enable_stack_on_sig(
import stackscope import stackscope
except ImportError: except ImportError:
log.error( log.error(
'`stackscope` not installed for use in debug mode!' '`stackscope` not installed for use in debug mode!\n'
'`Ignoring {enable_stack_on_sig!r} call!\n'
) )
return None return None

View File

@ -143,7 +143,7 @@ async def maybe_wait_on_canced_subs(
log.cancel( log.cancel(
'Waiting on cancel request to peer..\n' 'Waiting on cancel request to peer..\n'
f'c)=>\n' f'c)=>\n'
f' |_{chan.uid}\n' f' |_{chan.aid}\n'
) )
# XXX: this is a soft wait on the channel (and its # XXX: this is a soft wait on the channel (and its
@ -156,7 +156,7 @@ async def maybe_wait_on_canced_subs(
# local runtime here is now cancelled while # local runtime here is now cancelled while
# (presumably) in the middle of msg loop processing. # (presumably) in the middle of msg loop processing.
chan_info: str = ( chan_info: str = (
f'{chan.uid}\n' f'{chan.aid}\n'
f'|_{chan}\n' f'|_{chan}\n'
f' |_{chan.transport}\n\n' f' |_{chan.transport}\n\n'
) )
@ -279,7 +279,7 @@ async def maybe_wait_on_canced_subs(
log.runtime( log.runtime(
f'Peer IPC broke but subproc is alive?\n\n' f'Peer IPC broke but subproc is alive?\n\n'
f'<=x {chan.uid}@{chan.raddr}\n' f'<=x {chan.aid}@{chan.raddr}\n'
f' |_{proc}\n' f' |_{proc}\n'
) )
@ -460,7 +460,7 @@ async def handle_stream_from_peer(
# drop ref to channel so it can be gc-ed and disconnected # drop ref to channel so it can be gc-ed and disconnected
con_teardown_status: str = ( con_teardown_status: str = (
f'IPC channel disconnected:\n' f'IPC channel disconnected:\n'
f'<=x uid: {chan.uid}\n' f'<=x uid: {chan.aid}\n'
f' |_{pformat(chan)}\n\n' f' |_{pformat(chan)}\n\n'
) )
chans.remove(chan) chans.remove(chan)
@ -468,7 +468,7 @@ async def handle_stream_from_peer(
# TODO: do we need to be this pedantic? # TODO: do we need to be this pedantic?
if not chans: if not chans:
con_teardown_status += ( con_teardown_status += (
f'-> No more channels with {chan.uid}' f'-> No more channels with {chan.aid}'
) )
server._peers.pop(uid, None) server._peers.pop(uid, None)
@ -519,7 +519,7 @@ async def handle_stream_from_peer(
and and
(ctx_in_debug := pdb_lock.ctx_in_debug) (ctx_in_debug := pdb_lock.ctx_in_debug)
and and
(pdb_user_uid := ctx_in_debug.chan.uid) (pdb_user_uid := ctx_in_debug.chan.aid)
): ):
entry: tuple|None = local_nursery._children.get( entry: tuple|None = local_nursery._children.get(
tuple(pdb_user_uid) tuple(pdb_user_uid)

View File

@ -40,7 +40,7 @@ from typing import (
import trio import trio
from tractor._state import current_actor from tractor._state import current_actor
from tractor.log import get_logger from tractor.log import get_logger
# from ._beg import collapse_eg from ._beg import collapse_eg
if TYPE_CHECKING: if TYPE_CHECKING:
@ -151,13 +151,8 @@ async def gather_contexts(
) )
async with ( async with (
# collapse_eg(), collapse_eg(),
trio.open_nursery( trio.open_nursery() as tn,
# strict_exception_groups=False,
# ^XXX^ TODO? soo roll our own then ??
# -> since we kinda want the "if only one `.exception` then
# just raise that" interface?
) as tn,
): ):
for mngr in mngrs: for mngr in mngrs:
tn.start_soon( tn.start_soon(