pcdshub / atef

PCDS Automated Test Execution Framework
https://pcdshub.github.io/atef/
Other
3 stars 10 forks source link

BUG: remove deleteLater() and setParent(None) calls #231

Closed tangkong closed 9 months ago

tangkong commented 9 months ago

Description

Remove deleteLater() and setParent(None) calls from cached widget deletion process, as they seem to cause segfaults and are not strictly necessary...

Motivation and Context

closes #230

How Has This Been Tested?

Interactively, I need to add (better) tests though (for a followup)

My interactive testing focused on making sure widgets were actually being deleted by garbage collection, despite not explicitly requesting it. To do this I held a weakref to widgets that were popped from the cache, and observed that these weakrefs weren't piling up as I loaded and popped widgets. This could be made more empirical of course, I'll hopefully fix that soon.

Where Has This Been Documented?

This PR

Pre-merge checklist

ZLLentz commented 9 months ago

Good ol promotion of RuntimeError to segfault, a classic

tangkong commented 9 months ago

I'm going to ask for a review as is. In trying to make a test I founds some other oddities that prevent me from making a test that doesn't grab the guts of qt. I'll try to address those in a separate PR.