home.social

#пакеты_python — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #пакеты_python, aggregated by home.social.

fetched live
  1. Зачем PyPI закреплять префиксы пакетов за организациями

    Имя пакета в реестре часто оказывается первым сигналом того, что компоненту можно доверять. Разработчик видит название вроде google-cloud-storage , opentelemetry-sdk или apache-airflow-providers-slack раньше, чем открывает исходный код, и ожидает, что знакомый префикс указывает на известный проект. В PyPI это ожидание пока ничем не подтверждено: реестр формально не связывает общее начало имени с его владельцем, поэтому любой свободный вариант может зарегистрировать посторонний пользователь. В конце июня 2026 года в Python-сообществе приняли PEP 752 (мы писали об этом здесь ). Он предлагает закреплять за организацией не отдельные имена, а префикс и все будущие проекты, которые ему соответствуют. Если PyPI реализует этот механизм, то пакет с именем вроде “google-cloud-new-service” сможет опубликовать только та организация, которой принадлежит право на этот префикс или которой разрешили пользоваться этим правом. На первый взгляд, решение очевидное. Однако общий префикс не всегда означает, что все пакеты принадлежат одному издателю. Иногда он обозначает семейство официальных библиотек, а иногда экосистему сторонних дополнений. Меня зовут Артем Максимов, я отвечаю за аналитику продуктов в CodeScoring. Вместе с дата-инженером Артемом Ивановым в этой статье мы разбираемся, какую проблему решает PEP 752, где проходит его граница и что нам показывает база данных CodeScoring.

    habr.com/ru/companies/codescor

    #pypi #python #pep_752 #пакетные_репозитории #безопасность_зависимостей #неймсквоттинг #пространства_имен #цепочка_поставки_по #пакеты_python #open_source

  2. Как включить в пакет Python файлы не на Python

    При задействовании setuptools один из подходов к включению в пакет файлов не на Python — это использовать файл MANIFEST.in. Он содержит директивы, определяющие, как обращаться с подходящим набором файлов. Итак, нужно включить в пакет все файлы в каталоге src/ и рекурсивно исключить некоторые сгенерированные Python. Для этого создайте в корневом каталоге проекта файл MANIFEST.in со следующим содержанием:

    habr.com/ru/articles/816251/

    #пакеты_python #manifest #Дэйн_Хиллард #Публикация_пакетов #MANIFESTin #datajson #setuptools #автоматизация