Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Traceback when trying to parse except handler with invalid exception type #135

Closed
wvffle opened this issue Sep 1, 2020 · 1 comment
Closed

Comments

@wvffle
Copy link

wvffle commented Sep 1, 2020

I just ran into a problem where I made a typo and did:

try:
    # ...
except (MyException, NotImplemented):
    pass

As you can clearly see, it should be NotImplementedError but instead of telling me that, bugbear did traceback:

Traceback (most recent call last):
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/bin/flake8", line 8, in <module>
    sys.exit(main())
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/main/cli.py", line 22, in main
    app.run(argv)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/main/application.py", line 360, in run
    self._run(argv)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/main/application.py", line 348, in _run
    self.run_checks()
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/main/application.py", line 262, in run_checks
    self.file_checker_manager.run()
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/checker.py", line 334, in run
    self.run_serial()
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/checker.py", line 318, in run_serial
    checker.run_checks()
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/checker.py", line 598, in run_checks
    self.run_ast_checks()
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/flake8/checker.py", line 505, in run_ast_checks
    for (line_number, offset, text, _) in runner:
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 36, in run
    visitor.visit(self.tree)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 156, in visit
    super().visit(node)
  File "/usr/lib/python3.8/ast.py", line 363, in visit
    return visitor(node)
  File "/usr/lib/python3.8/ast.py", line 371, in generic_visit
    self.visit(item)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 156, in visit
    super().visit(node)
  File "/usr/lib/python3.8/ast.py", line 363, in visit
    return visitor(node)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 288, in visit_ClassDef
    self.generic_visit(node)
  File "/usr/lib/python3.8/ast.py", line 371, in generic_visit
    self.visit(item)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 156, in visit
    super().visit(node)
  File "/usr/lib/python3.8/ast.py", line 363, in visit
    return visitor(node)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 278, in visit_AsyncFunctionDef
    self.generic_visit(node)
  File "/usr/lib/python3.8/ast.py", line 371, in generic_visit
    self.visit(item)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 156, in visit
    super().visit(node)
  File "/usr/lib/python3.8/ast.py", line 363, in visit
    return visitor(node)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 269, in visit_For
    self.generic_visit(node)
 File "/usr/lib/python3.8/ast.py", line 371, in generic_visit
    self.visit(item)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 156, in visit
    super().visit(node)
  File "/usr/lib/python3.8/ast.py", line 363, in visit
    return visitor(node)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 292, in visit_Try
    self.generic_visit(node)
  File "/usr/lib/python3.8/ast.py", line 371, in generic_visit
    self.visit(item)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 156, in visit
    super().visit(node)
  File "/usr/lib/python3.8/ast.py", line 363, in visit
    return visitor(node)
  File "/root/.cache/pre-commit/repo66mtzu3l/py_env-python3.8/lib/python3.8/site-packages/bugbear.py", line 185, in visit_ExceptHandler
    if issubclass(
TypeError: issubclass() arg 2 must be a class or tuple of classes
@ambv
Copy link
Member

ambv commented Sep 1, 2020

Good catch, we'll fix it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants