Skip to main content

A dependency linter for Python projects

Project description

python-dependency-linter

A dependency linter for Python projects. Define rules for which modules can depend on what, and catch violations.

Installation

pip install python-dependency-linter

Or with uv:

uv add python-dependency-linter

Quick Start

Create .python-dependency-linter.yaml in your project root:

rules:
  - name: domain-isolation
    modules: contexts.*.domain
    description: Domain layer must not depend on application or infrastructure
    allow:
      standard_library: [dataclasses, typing]
      third_party: [pydantic]
      local: [contexts.*.domain]

Run:

pdl check

Documentation

For full documentation, visit heumsi.github.io/python-dependency-linter.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_dependency_linter-0.7.2.tar.gz (66.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_dependency_linter-0.7.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file python_dependency_linter-0.7.2.tar.gz.

File metadata

  • Download URL: python_dependency_linter-0.7.2.tar.gz
  • Upload date:
  • Size: 66.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for python_dependency_linter-0.7.2.tar.gz
Algorithm Hash digest
SHA256 8d00ecb5ab26905dceae022ad780d781c7249458b2b6483e31b5686cecfbe4b7
MD5 7c7d58fc2290778211d139c1a98fdefc
BLAKE2b-256 44b9a8841c4748e1148a6c3abef29ad266d0ba77a9bee3e8c9a8bf3a2c0c580e

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_dependency_linter-0.7.2.tar.gz:

Publisher: publish.yaml on heumsi/python-dependency-linter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_dependency_linter-0.7.2-py3-none-any.whl.

File metadata

File hashes

Hashes for python_dependency_linter-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6fd7f225e73df7e097899cb2c65c9838253f6923de8c42c2053d11b36ca5ed6f
MD5 50adbdbc5925d058164f965ad4c6a6ae
BLAKE2b-256 8c8c1cf7e65657f6f861e216ea8d1275a227a79002057ba5adab321406d44326

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_dependency_linter-0.7.2-py3-none-any.whl:

Publisher: publish.yaml on heumsi/python-dependency-linter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page