[Tiny Feature] Re-enable ASan leak detection after fixing #266/#275 #286

Closed
opened 2026-03-08 03:20:15 +00:00 by john · 0 comments
Owner

Context

The ASan test suite currently runs with detect_leaks=0 because CPython has intentional lifetime leaks (interned strings, type objects, small int cache) that flood LeakSanitizer output. However, this also suppresses detection of real leaks like #266 (UIEntity self-reference cycle) and #275 (unbalanced Py_INCREF in entity init).

Proposal

After fixing #266 and #275:

  1. Re-enable detect_leaks=1 in ASAN_OPTIONS
  2. Add LSAN suppressions for known CPython intentional leaks (already in sanitizers/asan.supp)
  3. Validate that real McRogueFace leaks are detected while CPython noise is suppressed
  • #266 (UIEntity self-reference cycle leak)
  • #275 (UIEntity unbalanced Py_INCREF)
  • #279 (memory safety audit meta-issue)
## Context The ASan test suite currently runs with `detect_leaks=0` because CPython has intentional lifetime leaks (interned strings, type objects, small int cache) that flood LeakSanitizer output. However, this also suppresses detection of real leaks like #266 (UIEntity self-reference cycle) and #275 (unbalanced Py_INCREF in entity init). ## Proposal After fixing #266 and #275: 1. Re-enable `detect_leaks=1` in `ASAN_OPTIONS` 2. Add LSAN suppressions for known CPython intentional leaks (already in `sanitizers/asan.supp`) 3. Validate that real McRogueFace leaks are detected while CPython noise is suppressed ## Related - #266 (UIEntity self-reference cycle leak) - #275 (UIEntity unbalanced Py_INCREF) - #279 (memory safety audit meta-issue)
john closed this issue 2026-04-10 05:09:19 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
john/McRogueFace#286
No description provided.