Vulture

Latest version: v2.14

Safety actively analyzes 714772 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 9

0.22

* Detect unreachable code after `return`, `break`, `continue` and
`raise` (thanks RJ722).
* Parse all variable and attribute names in new format strings.
* Extend ast whitelist.

0.21

* If an unused item is defined multiple times, report it multiple
times.
* Make size estimates for function calls more accurate.
* Create wheel files for Vulture (thanks RJ722).

0.20

* Report unused tuple assignments as dead code.
* Report attribute names that have the same names as variables as dead
code.
* Let Item class inherit from `object` (thanks RJ722).
* Handle names imported as aliases like all other used variable names.
* Rename Vulture.used\_vars to Vulture.used\_names.
* Use function for determining which imports to ignore.
* Only try to import each whitelist file once.
* Store used names and used attributes in sets instead of lists.
* Fix estimating the size of code containing ellipses (...).
* Refactor and simplify code.

0.19

* Don't ignore <span class="title-ref">\_\_foo</span> variable names.
* Use separate methods for determining whether to ignore classes and
functions.
* Only try to find a whitelist for each defined import once (thanks
roivanov).
* Fix finding the last child for many types of AST nodes.

0.18

* Make <span class="title-ref">--sort-by-size</span> faster and more
accurate (thanks RJ722).

0.17

* Add <span class="title-ref">get\_unused\_code()</span> method.
* Return with exit code 1 when syntax errors are found or files can't
be read.

Page 6 of 9

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.