Skip to content

RecursionError: maximum recursion depth exceeded #358

@ericwb

Description

@ericwb

I tested out vulture on a project I maintain (Bandit). Unfortunately, the first result I got was a RecursionError. It's not clear to me if this is by-design or an edge case bug. Bandit itself does static analysis using an AST and vulture seems to trip up when inspecting the visitor logic.

To reproduce:

pip install vulture
git clone https://github.com/PyCQA/bandit
cd bandit
vulture .
  File "/Users/ericwb/workspace/reflex-web/venv/lib/python3.12/site-packages/vulture/core.py", line 721, in generic_visit
    self.visit(value)
  File "/Users/ericwb/workspace/reflex-web/venv/lib/python3.12/site-packages/vulture/core.py", line 687, in visit
    return self.generic_visit(node)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/ericwb/workspace/reflex-web/venv/lib/python3.12/site-packages/vulture/core.py", line 721, in generic_visit
    self.visit(value)
  File "/Users/ericwb/workspace/reflex-web/venv/lib/python3.12/site-packages/vulture/core.py", line 672, in visit
    visitor(node)
  File "/Users/ericwb/workspace/reflex-web/venv/lib/python3.12/site-packages/vulture/core.py", line 521, in visit_BinOp
    utils.is_ast_string(node.left)
RecursionError: maximum recursion depth exceeded

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions