On 10/7/20 7:21 AM, Kevin Wolf wrote:
Am 07.10.2020 um 01:58 hat John Snow geschrieben:
Use the "from ..." phrasing when re-raising errors to preserve their
initial context, to help aid debugging when things go wrong.

This also silences a pylint 2.6.0+ error.

Signed-off-by: John Snow <js...@redhat.com>

I don't really understand what this improves compared to the implicit
chaining we got before, but if pylint says so...

Reviewed-by: Kevin Wolf <kw...@redhat.com>


Yeah, it's a pretty minimal change. Depending on the context, I think it makes a bigger difference depending on how far away you are from the error you are re-raising, but I couldn't find a great real-world example for you right now.

In summary, it changes this line:

"During handling of the above exception, another exception occurred:"

to this one:

"The above exception was the direct cause of the following exception:"

Which disambiguates between wrapping an exception with a more semantically meaningful exception class, vs. your handler code itself faulted.

Minor change, I know. You are also allowed to use "from None" to suppress the chain. I use this in the QAPI series at one point because I felt the underlying error was not useful to see in the traceback.

I see the pylint change as forcing you not to rely on the implicit chaining. Eh, fine.

--js


Reply via email to