DependencyDetective
version
DependencyDetective is a powerful tool for analyzing Python project dependencies. It scans your project to identify installed packages, compare them with requirements.txt (if it exists), and analyze usage across files. This tool helps maintain clean and efficient Python projects by providing insights into package usage and potential issues.
pip install dependency-detectivedependency-detective /path/to/your/project [options]Optional arguments:
--requirements, -r: Specify a custom path to the requirements.txt file (default: requirements.txt)--output, -o: Specify an output file for the analysis report--new-requirements, -n: Generate a new requirements.txt with only necessary packages--exclude, -e: Specify directories to exclude from analysis (default: venv .venv env .env)--verbose, -v: Enable verbose loggingdependency-detective /path/to/your/project -r custom_requirements.txt -o analysis_report.txt -n new_requirements.txt -e venv example_dirThis command will:
/path/to/your/projectcustom_requirements.txt as the requirements fileanalysis_report.txtnew_requirements.txt with only necessary packagesvenv and example_dir directories from the analysisDependencyDetective generates a report that includes:
The new requirements file (if requested) will contain only the packages directly used in your project, helping to minimize unnecessary dependencies.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.