[PyQt] Exceptions in Python Implementations of Virtuals
    Phil Thompson 
    phil at riverbankcomputing.com
       
    Tue Sep 30 17:23:08 BST 2014
    
    
  
Florian asked this question but it didn't result in any discussion, so 
I'd like to have another poke at it.
Currently, if an exception is raised by a Python re-implementation of a 
C++ virtual then the exception is printed and the application continues. 
A default result will be constructed by PyQt and returned to C++. 
Instead, should PyQt print the exception and then terminate (by calling 
qFatal())?
Some advantages...
- consistency in what happens when an unhandled exception is raised (ie. 
the application always terminates)
- such bugs become obvious and easy to find
Some disadvantages...
- incompatible with current behaviour
- may cause problems with applications that already try to handle such 
exceptions using exception hooks
If I make this change it will be for PyQt5 only. I don't plan to make 
the change configurable in any way.
Comments?
Phil
    
    
More information about the PyQt
mailing list