[devel] Q: duplicate osgi() self-provides

Dmitry V. Levin ldv на altlinux.org
Чт Ноя 12 16:00:06 MSK 2020


On Thu, Nov 12, 2020 at 02:01:40PM +0200, Igor Vlasenko wrote:
> On Wed, Nov 11, 2020 at 07:34:26PM +0300, Dmitry V. Levin wrote:
> > Hi,
> > 
> > У нас в репозитории обнаружилось 76 пакетов, которые содержат сразу две
> > разных версии одного и того же osgi(...) в Provides.
> > Предполагаю, что во всех случаях это ошибки, поскольку сравнения версий в
> > rpm работают не так, как ожидают люди, когда у пакета больше одной версии.
> 
> Все это нужно для работы механизма зависимостей osgi.
> Там всегда явное указание версий в requires и диапазоны в provides.
> Та же ситуация, что с mono и qml.

Получается, что произошло массовая подмена понятия версионирования
интерфейсов.  У интерфейса не может быть одновременно несколько разных
версий, это несколько разных интерфейсов.  На примере libc,

$ rpmquery --provides glibc-core |grep '^libc[^=]*$'
libc.so.6(ALT_2.24)(64bit)  
libc.so.6(GLIBC_2.10)(64bit)  
libc.so.6(GLIBC_2.11)(64bit)  
libc.so.6(GLIBC_2.12)(64bit)  
libc.so.6(GLIBC_2.13)(64bit)  
libc.so.6(GLIBC_2.14)(64bit)  
libc.so.6(GLIBC_2.15)(64bit)  
libc.so.6(GLIBC_2.16)(64bit)  
libc.so.6(GLIBC_2.17)(64bit)  
libc.so.6(GLIBC_2.18)(64bit)  
libc.so.6(GLIBC_2.2.5)(64bit)  
libc.so.6(GLIBC_2.2.6)(64bit)  
libc.so.6(GLIBC_2.22)(64bit)  
libc.so.6(GLIBC_2.23)(64bit)  
libc.so.6(GLIBC_2.24)(64bit)  
libc.so.6(GLIBC_2.25)(64bit)  
libc.so.6(GLIBC_2.26)(64bit)  
libc.so.6(GLIBC_2.27)(64bit)  
libc.so.6(GLIBC_2.28)(64bit)  
libc.so.6(GLIBC_2.29)(64bit)  
libc.so.6(GLIBC_2.3)(64bit)  
libc.so.6(GLIBC_2.3.2)(64bit)  
libc.so.6(GLIBC_2.3.3)(64bit)  
libc.so.6(GLIBC_2.3.4)(64bit)  
libc.so.6(GLIBC_2.30)(64bit)  
libc.so.6(GLIBC_2.4)(64bit)  
libc.so.6(GLIBC_2.5)(64bit)  
libc.so.6(GLIBC_2.6)(64bit)  
libc.so.6(GLIBC_2.7)(64bit)  
libc.so.6(GLIBC_2.8)(64bit)  
libc.so.6(GLIBC_2.9)(64bit)  

Это не 31 версия у интерфейса libc.so.6, это 31 интерфейс у libc.so.6.

Теперь надо думать, как это неправильное понимание версионирования
аккуратно исправить.


-- 
ldv


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