Importchecker
What is importchecker?
Importchecker is a command line utility to find unused imports in Python
modules.
Its output is "grep-like" (and thus "emacs-friendly"), reporting both the
module's filenames and line numbers where names are imported that are not
actually used in the module.
Importchecker will not modify any of the source files. Whether the import
needs to be removed is left to the judgement of the developer.
Installation
The importchecker command line utility can be installed using the
pip
::
$ pip install importchecker
The command can then be invoked with either a directory or a Python file::
$ importchecker /path/to/a/source/tree
$ importchecker /path/to/a/source/tree/module.py
Buildout
Projects that make use of zc.buildout
_ for development might find the
following buildout.cfg.
snippet useful for using the importchecker on
the developed codebase::
[buildout]
...
parts = importchecker ...
...
[importchecker]
recipe = zc.recipe.egg
eggs = importchecker
arguments = "${buildout:directory}/src"
.. _zc.buildout
: https://pypi.org/project/zc.buildout/
Known issues
Changes
3.0 (2024-02-16)
-
Add support for Python 3.7, 3.8, 3.9, 3.10, 3.11.
-
Drop support for Python 2.7, 3.4, 3.5, 3.6.
2.0 (2018-02-22)
- The tests indicate
importchecker
still works for Python 2, but since
the AST structures can differ between Python 2 and Python 3, no support is
formally claimed.
1.2 (2018-02-21)
1.1 (2012-01-09)
-
Applied provided by wosc enabling running the import checker on
individual python modules not just directories.
-
Report the absolute path for modules when needed, relative paths (relative
to the current working directory, that is) when possible.
1.0 (2008-05-06)
Credits
- Martijn Faassen (original developer)
- Jan-Wijbrand Kolman (packaging)
- Philipp von Weitershausen
- various comitters on svn.zope.org.
Download