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