diff --git a/tractor/devx/_debug.py b/tractor/devx/_debug.py index 1b22505..3bef7bd 100644 --- a/tractor/devx/_debug.py +++ b/tractor/devx/_debug.py @@ -836,22 +836,25 @@ async def pause( # runtime aware version which takes care of all . def pause_from_sync() -> None: print("ENTER SYNC PAUSE") - import greenback - __tracebackhide__ = True + try: + import greenback + __tracebackhide__ = True - actor: tractor.Actor = tractor.current_actor() - # task_can_release_tty_lock = trio.Event() + actor: tractor.Actor = tractor.current_actor() + # task_can_release_tty_lock = trio.Event() - # spawn bg task which will lock out the TTY, we poll - # just below until the release event is reporting that task as - # waiting.. not the most ideal but works for now ;) - greenback.await_( - actor._service_n.start(partial( - pause, - debug_func=None, - # release_lock_signal=task_can_release_tty_lock, - )) - ) + # spawn bg task which will lock out the TTY, we poll + # just below until the release event is reporting that task as + # waiting.. not the most ideal but works for now ;) + greenback.await_( + actor._service_n.start(partial( + pause, + debug_func=None, + # release_lock_signal=task_can_release_tty_lock, + )) + ) + except ModuleNotFoundError: + log.warning('NO GREENBACK FOUND') db, undo_sigint = mk_mpdb() Lock.local_task_in_debug = 'sync'