11 lines
881 B
Plaintext
11 lines
881 B
Plaintext
=== relates to: S5632
|
||
|
||
=== on 5 Mar 2020, 14:17:55 Nicolas Harraudeau wrote:
|
||
Even if it is possible to catch a class which is not a BaseException in python 2, this rule is still a bug for the following reasons:
|
||
|
||
* BaseException exists in Python 2 too. There is no reason not to use it. It is advised to use exceptions derived from BaseException since python 2.5 released in 2006.
|
||
* Python 2 is not maintained anymore and there are tools enabling developpers to migrate from python 2 to python 3. When developers migrate this will become a bug.
|
||
* We already have RSPEC-5632 as a Bug and nobody complains. Let’s remain consistent. If we change the rule to code smell we have to change this other rule too.
|
||
* old style classes are the only exception in python 2. Trying to raise a string or a list will fail in in both python 2 and python 3. This exception would be a corner case.
|
||
|