depcheck

Python code quality package that helps in defining and restricting how components of your code may interact


Keywords
dependencies, hexagonal, architecture, jdepend, deptrac, clean-architecture, hexagonal-architecture, layered-architecture
License
MIT
Install
pip install depcheck==0.2.0

Documentation

Depcheck: Dependency Checker

Depcheck is a command line code-quality tool which supports adopting a layered architecture by making it possible to specify dependency constraints between packages of your own Python application. The tool aims to achieve the same goals as Deptrac in PHP and JDepend in Java

Install

  • Via poetry (recommended): Install with poetry add depcheck
  • Via pip: Install from Pypi via pip install depcheck

Usage

To run via CLI you run:

depcheck <root_dir> -f <config_file>

# Or, with poetry
poetry run depcheck <root_dir> -f <config_file>

The example directory demonstrates how the tool works.

cd example

poetry run depcheck example -f .depcheck.ok.yml  # This should be correct
poetry run depcheck example -f .depcheck.errors.yml  # This should give errors

To understand how to configure the tool, look inside the YML files. The -f argument is optional. Implicitly, the tool will look for .depcheck.yml.

NOTE: Package directories should contain __init__.py to be recognized as a package!

Contributing

All contributions are welcomed! See our CONTRIBUTING.md document.