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

Dmitry V. Levin ldv на altlinux.org
Ср Ноя 11 19:00:30 MSK 2020


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
libcogl-gir        typelib(Cogl)       =1.0
libcogl-gir        typelib(Cogl)       =2.0
libcogl-gir        typelib(CoglPango)  =1.0
libcogl-gir        typelib(CoglPango)  =2.0
libfolks-gir       typelib(Folks)      =0.14
libfolks-gir       typelib(Folks)      =0.6


-- 
ldv


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