Skip to content

fix(gui): release closed editor and project view signal references - #5

Draft
lukisch wants to merge 2 commits into
mainfrom
fix/minimap-signal-lifetime-20261015
Draft

lukisch wants to merge 2 commits into
mainfrom
fix/minimap-signal-lifetime-20261015

Conversation

@lukisch

@lukisch lukisch commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Closed CodeEditor and ProjectView instances remain alive because persistent signal lambdas capture widgets in their own QObject graphs. Replace the two Minimap closures and the ProjectView Commit-button closure with named bound receiver methods. The button wrapper deliberately discards its checked argument before opening the dialog.

Both new collection regressions fail before their respective fixes and pass afterward. They verify Minimap cache invalidation and content, Commit-button dispatch without extra arguments, and garbage collection of closed widgets. A separate 30-editor diagnostic retained 30/30 original editors and released 30/30 with bound receivers; the ProjectView comparison retained 3/3 originally and released 3/3 after disconnecting the closure.

Validation at the current revision on Windows Python3.12 (Qt version was not captured in those test commands; the current test interpreter reports PySide6.11.1): 30 tests pass across ProjectView, Minimap, Minimap performance, multi-cursor and multiline highlighting. Ruff and git diff --check pass. No tests disabled, dependency pin, version or workflow changes.

Native CI at previous head 189edf6 passed the Minimap collection regression on Linux310/311 and Windows312, but all twelve full-suite cells failed; Windows312 reported 361 passed/1 skipped before process exit1. Linux/macOS smoke assertions passed then processes crashed during shutdown. Thus this PR fixes demonstrated retention bugs; complete native crash resolution remains unproven. New exact-head CI is required for the ProjectView addition.

Based directly on main 69e312c, independent of #3 and diagnostic #4. Author model: gpt-6.1-sol (Codex). Independent review pending. Draft only; merges disabled. No release or runtime mirror change.

Generated-with: gpt-6.1-sol (Codex)
@github-actions

Copy link
Copy Markdown

Welcome! 👋 Thanks for your first pull request in this repository.

A maintainer will review it soon. Please make sure:

  • Your changes are tested
  • Documentation is updated if needed
  • The PR description explains what and why

Thanks for contributing!

Generated-with: gpt-6.1-sol (Codex)
@lukisch lukisch changed the title fix(editor): release minimap signal receiver references fix(gui): release closed editor and project view signal references Oct 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant