[devel] Q: PEP-503/566 normalized names for python?

Anton Farygin rider на basealt.ru
Ср Сен 23 08:52:35 MSK 2020


On 22.09.2020 22:28, Igor Vlasenko wrote:
> On Tue, Sep 22, 2020 at 09:52:53PM +0300, Igor Vlasenko wrote:
>> Как понимаю, эти две системы зависимостей не мешают друг другу.
>> Кроме того, pythonXdist зависимости удобнее для BuildRequires:
>> а наши автоматичесике зависимости удобнее, чтобы отслеживать
>> косяки за апстримом.
>> Хорошо иметь и то, и другое.
> Это две системы зависимостей - по каноническому имени проекта
> (можно получить из setup.py)
> и по именам используемых модулей
> (можно получить анализом директив include)
>
> Проводя аналогию с perl.
> Есть пакет CPAN с каноническим именем libwww-perl.
> Зависимость на него можно выписать как
> BuildRequires: perl5dist(libwww-perl) (по имени) или
> BuildRequires: perl(LWP.pm) (по модулю).
>
> Для perl не нужно особого Provides, вида perl5dist(CPAN name)
> потому что все 30.000 пакетов perl называются perl-<CPAN name>,
> за исключением 24-х исторически сложившихся исключений.
> Поэтому в 99.99% случаев можно вместо perl5dist(CPAN name) писать просто
> perl-{CPAN name}.
>
> С python хуже. Можно глазами прочитать setup.py,
> но просто написать BuildRequires: python3-module-<normalized name>
> не выйдет в большинстве случаев.
> Нужно руками сопоставлять <normalized name> и <rpm name>.
> Наличие python3dist provides позволило бы
> 1) облегчить жизнь при создании нового пакета
> 2) использовать инструменты автогенерации BR: по setup.py.
> 3) доп. уровень совместимости со сторонними пакетами.
>
Мне эта идея нравится.

Кто реализует ?



Подробная информация о списке рассылки Devel