Разработчик Леннарт Финке представил проект интерактивной карты Python‑пакетов PyPI, в котором показаны около 100 тыс. пакетов PyPI и их зависимостей.
«PyPI, репозиторий пакетов Python Software Foundation, насчитывает более полумиллиона проектов с открытым исходным кодом. Поскольку я использую многие из них каждый день, мне показалось уместным получше узнать этот набор пакетов и выразить им свою признательность. Индексация на сайте обеспечивает удобный поиск и фильтрацию, что хорошо при поиске чего‑то конкретного. Однако я решил взглянуть на каждый пакет сразу, построить визуализацию и, возможно, даже обнаружить несколько интересных новых пакетов», — пояснил Финке.
Для визуализации и сбора метаданных использовался JSON API от PyPI, а также данные из копии репозитория на BigQuery.
«Поскольку мы хотим раскрыть внутреннюю структуру набора данных, мы фокусируемся на определяющей особенности открытого исходного кода и рассматриваем зависимости каждого пакета. Это дает естественную топологию направленного графа. На этот раз ад зависимостей действительно полезен! Я бы ожидал получить очень плотное облако, сосредоточенное вокруг наиболее распространённых пакетов, с небольшой кластеризацией. Примерно так и происходит», — добавил Финке.
Источник: habr.com