A command line utility to check for obsolete, missing and transitive dependencies in a poetry managed python project.
Project description
deptry
deptry is a command line tool to check for issues with dependencies in a poetry managed Python project. It checks for four types of issues:
- Obsolete dependencies: Dependencies which are added to your project's dependencies, but which are not used within the codebase.
- Missing dependencies: Modules that are imported within your project, but no corresponding package is found in the environment.
- Transitive dependencies: Packages from which code is imported, but the package (A) itself is not in your projects dependencies. Instead, another package (B) is in your list of dependencies, which depends on (A). Package (A) should be added to your project's list of dependencies.
- Misplaced dependencies: Development dependencies that should be included as regular dependencies.
deptry detects these issues by scanning the imported modules within all Python files in a directory and its subdirectories, and comparing those to the dependencies listed in pyproject.toml.
Documentation: https://fpgmaas.github.io/deptry/
Quickstart
Installation
deptry can be added to your project with
poetry add --group dev deptry
or for older versions of poetry:
poetry add --dev deptry
Warning deptry is still in the early phases of development. Although we will do our best not to introduce any backwards-incompatible changes, at this stage this can not be guaranteed. For one-off testing of your project's dependencies, this is no issue. However, if you plan to use deptry in a CI/CD pipeline, it is a good idea to pin the version.
Prerequisites
In order to check for obsolete imports, deptry requires a pyproject.toml file to be present in the directory passed as the first argument, and it requires the corresponding environment to be activated.
Usage
To scan your project for obsolete imports, run
deptry .
deptry can be configured by using additional command line arguments, or
by adding a [tool.deptry]
section in pyproject.toml.
For more information, see the documentation.
Repository initiated with fpgmaas/cookiecutter-poetry.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.