[devel] Q: PEP-503/566 normalized names for python?
Dmitry V. Levin
ldv на altlinux.org
Ср Сен 23 09:30:40 MSK 2020
On Tue, Sep 22, 2020 at 08:06:01PM +0300, Igor Vlasenko wrote:
> Уважаемые господа,
>
> Обсуждал с rider@ недостаточный охват python* пакетов сервисом watch,
> вспомнил, что там не хватает сервиса pypi watch,
> а написать его мешает тот факт, что у нас
> до сих пор не реализованы канонические имена
> для исходных питоньих модулей.
> Так называемые "normalized names"
> сначала https://www.python.org/dev/peps/pep-0503/
> потом https://www.python.org/dev/peps/pep-0566/
>
> В rpm-based дистрибутивах (SuSE,Mandriva,Fedora) уже сложился
> стандарт их применения:
> 1) в бинарных файлах есть pythonNNdist(normalizedname) Provides.
> Пример из OpenSuSE:
> $ rpmquery --provides -p python3-ZEO-5.2.1-3.5.noarch.rpm | grep dist
> python3.8dist(zeo) = 5.2.1
> python3dist(zeo) = 5.2.1
>
> И что хорошо, normalized names в пакет руками добавлять не нужно.
> Эти имена используются в egg-info, их легко получить оттуда.
> если добавить в rpm-build-pythonN pythonNdist.prov,
> который будет генерировать Provides: python3dist(normalizedname).
> При чем готовый код для prov можно подсмотреть из той же Fedora.
>
> 2) рекомендовать называть пакет
> pythonN-module-normalizedname.
А не лучше ли вместо этих балластных provides, как в вашем примере из
OpenSuSE, просто обязать все без исключения бинарные пакеты из pypi
называться python3-module-normalizedname?
> А то у нас бардак. Проект с именем PyFoo и normalized name pyfoo
> может быть упакетван как
> python3-module-foo
> python3-module-pyfoo
> python3-module-Foo
> python3-module-PyFoo
А какова сейчас в Сизифе доля неправильно названных пакетов для python3?
--
ldv
Подробная информация о списке рассылки Devel