[devel] Q: duplicate gir/typelib self-provides

Yuri Sedunov aris на altlinux.org
Ср Ноя 11 19:45:22 MSK 2020


В Ср, 11/11/2020 в 19:00 +0300, Dmitry V. Levin пишет:
> Hi,
> 
> У нас в репозитории обнаружилось несколько пакетов, которые содержат
> сразу 2 разные версии одного и того же gir(...)/typelib(...) в
> Provides.
> Предполагаю, что во всех случаях это ошибки, поскольку сравнения
> версий в rpm
> работают не так, как ожидают люди, когда у пакета больше одной
> версии.
> Кто-нибудь знает, зачем это было сделано?
> 
> $ pkglist-query '[%{PROVIDENAME} %{NAME}
> %|PROVIDEFLAGS?{%{PROVIDEFLAGS:depflags}%{PROVIDEVERSION}}:{}|\n]' \
>   Sisyphus/{x86_64,noarch}/base.bloat/pkglist.classic |\
>   sed -rn -e 's/ \+$//' -e 's/^((gir|typelib)\(([^ ]+)) ([^ ]+) ([^
> ]+)$/\5 \4 \1/p' |\
>   sort -k2 |\
>   uniq -D -f1 |\
>   sed -rn -e 's/^([^ ]+) ([^ ]+) ([^ ]+)$/\2 \3 \1/p' |\
>   sort -k2,2 |\
>   column -t -N 'Package:,Provide Name:,Provide Version:'
> 
> Package:           Provide Name:       Provide Version:
> libcogl-gir-devel  gir(Cogl)           =1.0
> libcogl-gir-devel  gir(Cogl)           =2.0
> libcogl-gir-devel  gir(CoglPango)      =1.0
> libcogl-gir-devel  gir(CoglPango)      =2.0

$ rpmql libcogl-gir-devel
/usr/share/gir-1.0/Cogl-1.0.gir
/usr/share/gir-1.0/Cogl-2.0.gir
/usr/share/gir-1.0/CoglPango-1.0.gir
/usr/share/gir-1.0/CoglPango-2.0.gir

> libcogl-gir        typelib(Cogl)       =1.0
> libcogl-gir        typelib(Cogl)       =2.0
> libcogl-gir        typelib(CoglPango)  =1.0
> libcogl-gir        typelib(CoglPango)  =2.0

$ rpmql libcogl-gir
/usr/lib64/girepository-1.0/Cogl-1.0.typelib
/usr/lib64/girepository-1.0/Cogl-2.0.typelib
/usr/lib64/girepository-1.0/CoglPango-1.0.typelib
/usr/lib64/girepository-1.0/CoglPango-2.0.typelib

> libfolks-gir       typelib(Folks)      =0.14
> libfolks-gir       typelib(Folks)      =0.6

Это исправил.

-- 
Yuri N. Sedunov




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