mirror of
https://github.com/astral-sh/ruff.git
synced 2025-10-03 07:04:53 +00:00
38 lines
826 B
Markdown
38 lines
826 B
Markdown
# raise-vanilla-class (TRY002)
|
|
Derived from the **tryceratops** linter.
|
|
|
|
### What it does
|
|
Checks for bare exceptions.
|
|
|
|
## Why is this bad?
|
|
It's hard to capture generic exceptions making it hard for handling specific scenarios.
|
|
|
|
## Example
|
|
```py
|
|
def main_function():
|
|
if not cond:
|
|
raise Exception()
|
|
def consumer_func():
|
|
try:
|
|
do_step()
|
|
prepare()
|
|
main_function()
|
|
except Exception:
|
|
logger.error("I have no idea what went wrong!!")
|
|
```
|
|
|
|
## How it should be
|
|
```py
|
|
def main_function():
|
|
if not cond:
|
|
raise CustomException()
|
|
def consumer_func():
|
|
try:
|
|
do_step()
|
|
prepare()
|
|
main_function()
|
|
except CustomException:
|
|
logger.error("Main function failed")
|
|
except Exception:
|
|
logger.error("I have no idea what went wrong!!")
|
|
```
|