Skip to content

Commit 01e5e97

Browse files
committed
fix deadlock
1 parent d40b224 commit 01e5e97

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
44

55
## Commands
66

7-
All commands likely require running python from a particular environment. If this is not specified in an agent instruction file, then prompt the user.
7+
All commands likely require running python from a particular environment. If this is not specified in an agent instruction file, then prompt the user. Run `python` directly from the requested environment (don't use `conda run` since it eats stdout from its subprocesses).
88

99
### Testing
1010
- **Run all tests**: `python -m pytest coorx/tests`

coorx/events.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class CallbackRegistry:
2424
def __init__(self):
2525
# List of (is_weakref, callback or weakref) tuples
2626
self._callbacks: list[tuple[bool, Callable]] = []
27-
self.lock = threading.Lock()
27+
self.lock = threading.RLock() # Use reentrant lock to allow add() to call remove()
2828

2929
def _real_callbacks(self):
3030
"""Return (callback, is_weakref, maybe_weakref) tuples for all live callbacks."""

0 commit comments

Comments
 (0)