Skip to main content

PyPI Latest Release Supported Python versions Build Licence Code of conduct Discord channel

FawltyDeps

FawltyDeps is a dependency checker for Python that finds undeclared and/or unused 3rd-party dependencies in your Python project. The name is inspired by the Monty Python-adjacent Fawlty Towers sitcom.

📝 Full documentation available at: tweag.github.io/FawltyDeps

FawltyDeps demo

We invite you to join our Discord channel! It's a great place to ask questions, share your ideas, and collaborate with other contributors.

Key Concepts

  • undeclared dependency: a package that's used (in particular, imported) by a project and which lacks a corresponding declaration to ensure that it's available. For example, you import numpy, but you've forgotten to include numpy in your requirements.txt. Pragmatically, this means the project is prone to runtime errors.
  • unused dependency: a package that's declared as necessary for a project but which is never used by project code. For example, you have numpy listed in your requirements.txt, but you never actually import numpy. Pragmatically, this means that project installation may consume more space than needed and will be more likely to break with future software releases; in short, these are costs paid for no benefit.

Your project dependencies may look like this:

But FawltyDeps is all about helping you get to this perfect green spot:

Installation

The library is distributed with PyPI, so simply:

pip install fawltydeps

or any other way to install Python packages from PyPI should be enough to make it available in your environment.

Consider adding fawltydeps to your development dependencies, to help you catch undeclared and unused dependencies in your projects.

Usage

To check the project in the current directory run:

fawltydeps

This will find imports in all the Python code under the current directory, extract dependencies declared by your project, and then report undeclared and unused dependencies.

Development

For details on setting up your development environment, please refer to the contributing guidelines of how to set up your development environment in our CONTRIBUTING.md file.

Metadata

Release files for fawltydeps 0.20.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fawltydeps 0.20.0
File Size Uploaded
fawltydeps-0.20.0.tar.gz 48.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fawltydeps 0.20.0
File Interpreter ABI Platform
fawltydeps-0.20.0-py3-none-any.whl Python 3 none any Details

Total release size: 106.3 kB

Release files / fawltydeps-0.20.0.tar.gz

Download URL fawltydeps-0.20.0.tar.gz
Size 48.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ad080b284a2278c9940540b643483aff8b57794a1362735d3024c270810c0182
BLAKE2b-256 checksum
How to use checksums
b183c84f7f6500d15f0f1e56eb1dde7cc42c7ab3dd536d8d6363b4937c89e79b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.13.2 Linux/6.12.28

Release files / fawltydeps-0.20.0-py3-none-any.whl

Download URL fawltydeps-0.20.0-py3-none-any.whl
Size 57.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d3bfb260c54135ec5dfa2583a7381c45d2759deb23f6de6f4905da9adac67512
BLAKE2b-256 checksum
How to use checksums
cf953c90282ffeab315db5250d15685a3d80be29d7c8036f4ea8ff753ff6ae02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.13.2 Linux/6.12.28

Release history Release notifications | RSS feed

This release

0.20.0 This release

2 release files

0.19.0

2 release files

0.18.0

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.3

2 release files

0.13.2

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page