misplaced-bare-raise / E0704ΒΆ
Message emitted:
The raise statement is not inside an except clause
Description:
Used when a bare raise is not used inside an except clause. This generates an error, since there are no active exceptions to be reraised. An exception to this rule is represented by a bare raise inside a finally clause, which might work, as long as an exception is raised inside the try block, but it is nevertheless a code smell that must not be relied upon.
Problematic code:
def validate_positive(x):
if x <= 0:
raise # [misplaced-bare-raise]
Correct code:
def validate_positive(x):
if x <= 0:
raise ValueError(f"{x} is not positive")
Created by the exceptions checker.