Skip to main content

CLI tool for detecting unused dependencies in Python projects

Project description

Unclaimed Libraries

Python Version License CLI

Unclaimed Libraries – это CLI‑инструмент для поиска неиспользуемых зависимостей в Python‑проектах. Он анализирует pyproject.toml, просматривает все импорты в коде, отфильтровывает стандартную библиотеку и локальные модули, а также обращается к PyPI, чтобы пропустить пакеты, предназначенные только для разработки (линтеры, тестовые фреймворки, CLI‑утилиты и т.д.).

✨ Возможности

  • Точное обнаружение – обрабатывает import, from ... import, динамические импорты (importlib.import_module, __import__).

  • 🧠 Умная фильтрация – автоматически игнорирует:

    • модули стандартной библиотеки Python
    • локальные модули/пакеты (включая namespace packages)
    • пакеты для разработки (линтеры, тесты, статические анализаторы, CLI‑помощники) – используя классификаторы PyPI.

📦 Установка

pip install unclaimed-libraries

Or using uv:

uv add unclaimed-libraries

🚀 Использование

# Анализ текущей папки
unclib

# Анализ конкретного проекта
unclib /path/to/myproject

# Исключить дополнительные каталоги
unclib . --exclude legacy scripts

🙋 Как внести вклад

Приветствуются issues и pull request’ы! Пожалуйста, сначала создайте issue для обсуждения значительных изменений.

Распространяется под лицензией MIT. Подробности в файле LICENSE.

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

unclaimed_libraries-0.1.1.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

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

unclaimed_libraries-0.1.1-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file unclaimed_libraries-0.1.1.tar.gz.

File metadata

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

File hashes

Hashes for unclaimed_libraries-0.1.1.tar.gz
Algorithm Hash digest
SHA256 912b8cbf3d7f1d8bd1d63018c6e97fee8ddca3c774a6625c21435080f6241d51
MD5 32263c9bff2d9e41437895cd0541890c
BLAKE2b-256 2184ace30bccd695562f0838664f75b9de4ca4681842474f75a1ea34ef55402f

See more details on using hashes here.

Provenance

The following attestation bundles were made for unclaimed_libraries-0.1.1.tar.gz:

Publisher: workflow.yml on AndrewMedvedev/unclaimed-libraries

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

File details

Details for the file unclaimed_libraries-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for unclaimed_libraries-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 af4cc3cbb57f0e1c7de88220502a47c46f1d20d6d336e672334c3d4829d8765b
MD5 a2c5b3655e961addc6ed42b8b9defca8
BLAKE2b-256 9e25f1898e54735cc62ac7b53b5800d71803d90c1c76ca99b049875da309be26

See more details on using hashes here.

Provenance

The following attestation bundles were made for unclaimed_libraries-0.1.1-py3-none-any.whl:

Publisher: workflow.yml on AndrewMedvedev/unclaimed-libraries

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