Bug 48435

Summary: Сломалась сборка libopencolorio2.2
Product: Sisyphus Reporter: AEN <aen>
Component: libopencolorio2.2Assignee: thatman <thatman>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: major    
Priority: P5 CC: arseny, grenka, nenderus, rider, thatman
Version: unstable   
Hardware: x86   
OS: Linux   
Bug Depends on:    
Bug Blocks: 47809    

Description AEN 2023-11-14 10:24:36 MSK
Прошу исправить сборку libopencolorio2.2
Comment 1 AEN 2023-11-21 13:40:22 MSK
Стоит обновить, наверное
Comment 2 Денис Назаров 2023-11-21 22:22:39 MSK
Версия 2.3 с патчем https://patch-diff.githubusercontent.com/raw/AcademySoftwareFoundation/OpenColorIO/pull/1891.patch собирается.
Comment 3 AEN 2023-11-22 11:55:31 MSK
В spec openusd, например,
BuildRequires: libopencolorio2.2-devel , а новая BuildRequires: libopencolorio2.3-devel
Comment 4 Денис Назаров 2023-11-22 12:01:56 MSK
(Ответ для AEN на комментарий #3)
> В spec openusd, например,
> BuildRequires: libopencolorio2.2-devel , а новая BuildRequires:
> libopencolorio2.3-devel

Можно сделать просто libopencolorio-devel и к ней Provides/Obsoletes сделать на libopencolorio2.2-devel
Comment 5 AEN 2023-11-22 12:05:21 MSK
(Ответ для Денис Назаров на комментарий #4)
> (Ответ для AEN на комментарий #3)
> > В spec openusd, например,
> > BuildRequires: libopencolorio2.2-devel , а новая BuildRequires:
> > libopencolorio2.3-devel
> 
> Можно сделать просто libopencolorio-devel и к ней Provides/Obsoletes сделать
> на libopencolorio2.2-devel

Да!
Старый libopencolorio Вы удалили, спасибо
Comment 6 Денис Назаров 2023-11-22 12:10:45 MSK
(Ответ для AEN на комментарий #5)
> Да!
> Старый libopencolorio Вы удалили, спасибо

Пока ещё нет. Откуда-то при пересборке зависящих пакетов всплывает старый libopencolorio (2.2)
Comment 7 Anton Farygin 2023-11-22 12:12:26 MSK
https://beta.packages.altlinux.org/ru/sisyphus/srpms/libopencolorio2.2/what_depends/by_source

Кнопочка "раскрыть всё"
Comment 8 AEN 2023-11-22 12:36:29 MSK
(Ответ для Денис Назаров на комментарий #6)
> (Ответ для AEN на комментарий #5)
> > Да!
> > Старый libopencolorio Вы удалили, спасибо
> 
> Пока ещё нет. Откуда-то при пересборке зависящих пакетов всплывает старый
> libopencolorio (2.2)

Наверное, надо удалить libopencolorio2.2-devel?
Comment 9 Денис Назаров 2023-11-22 12:42:40 MSK
(Ответ для AEN на комментарий #8)
> Наверное, надо удалить libopencolorio2.2-devel?

Так и делаю. И не понимаю, откуда оно всплывает. Явное удаление сделано (https://packages.altlinux.org/ru/tasks/334843/), но вот на сборке OpenUSD и ниже по списку оно явно берёт 2.2. Хотя 2.3 provide и 2.2 и 2.0 и obsolete ниже по версиям.
Comment 10 Arseny Maslennikov 2023-11-22 15:13:45 MSK
(In reply to Денис Назаров from comment #9)
> (Ответ для AEN на комментарий #8)
> > Наверное, надо удалить libopencolorio2.2-devel?
> 
> Так и делаю. И не понимаю, откуда оно всплывает. Явное удаление сделано
> (https://packages.altlinux.org/ru/tasks/334843/), но вот на сборке OpenUSD и
> ниже по списку оно явно берёт 2.2. Хотя 2.3 provide и 2.2 и 2.0 и obsolete
> ниже по версиям.

Если пакет _по имени_ libopencolorio2.2-devel в репозитории на момент сборки openusd остался (а судя по логам сборочницы[1], это так; он должен будет отсутствовать на момент коммита задания), то apt вытащит именно его, а другой пакет c provides/obsoletes на это имя проигнорирует. Вот если оригинал из репозитория исчез и происходит обновление, то apt попробует обновиться на другой пакет, снабжённый provides+obsoletes (эту пару считает аналогом replaces).
Я сталкивался с таким, когда заменял llvm на llvm-common+llvmX.

Нужна ли каким-нибудь клиентам возможность собираться именно с libopencolorio2.2-devel или libopencolorio2.0-devel? Нельзя ли пересадить всех клиентов на общий libopencolorio-devel?

[1] https://git.altlinux.org/tasks/334843/build/600/aarch64/chroot_BR
Comment 11 Arseny Maslennikov 2023-11-22 15:16:17 MSK
(In reply to Arseny Maslennikov from comment #10)
> Если пакет _по имени_ libopencolorio2.2-devel в репозитории на момент сборки
> openusd остался (а судя по логам сборочницы[1], это так; он должен будет
> отсутствовать на момент коммита задания), <...>

Догадка: Может, так вышло из-за того, что удаляемый и добавляемый libopencolorio — это srpm с разными именами?
Comment 12 Денис Назаров 2023-11-22 15:19:49 MSK
(Ответ для Arseny Maslennikov на комментарий #10)
> Нужна ли каким-нибудь клиентам возможность собираться именно с
> libopencolorio2.2-devel или libopencolorio2.0-devel? Нельзя ли пересадить
> всех клиентов на общий libopencolorio-devel?

ibopencolorio2.0-devel уже давно нет (и не было судя по всему после появления 2.2).

(Ответ для Arseny Maslennikov на комментарий #11)
> Догадка: Может, так вышло из-за того, что удаляемый и добавляемый
> libopencolorio — это srpm с разными именами?

Не называть же srpm по старому с неправильным soname в названии (2.2, когда версия уже 2.3, да и soname лишний в имени srpm тут)
Comment 13 Arseny Maslennikov 2023-11-22 15:28:05 MSK
(In reply to Денис Назаров from comment #12)
> (Ответ для Arseny Maslennikov на комментарий #10)
> > Нужна ли каким-нибудь клиентам возможность собираться именно с
> > libopencolorio2.2-devel или libopencolorio2.0-devel? Нельзя ли пересадить
> > всех клиентов на общий libopencolorio-devel?
> 
> ibopencolorio2.0-devel уже давно нет (и не было судя по всему после
> появления 2.2).
> 
> (Ответ для Arseny Maslennikov на комментарий #11)
> > Догадка: Может, так вышло из-за того, что удаляемый и добавляемый
> > libopencolorio — это srpm с разными именами?
> 
> Не называть же srpm по старому с неправильным soname в названии (2.2, когда
> версия уже 2.3, да и soname лишний в имени srpm тут)

Это да, я бы на вашем месте тоже переименовал сурс-пакет.

Наверное, во всех клиентах (понятно, для начала в одном) надо попробовать в BR написать libopencolorio-devel >= 2.3, а не просто по имени. Возможные в среднедалёком будущем неожиданности, когда появится библиотека 2.4, всё равно будут пойманы при помощи setversion-зависимостей.
Comment 14 AEN 2023-11-22 18:25:48 MSK
Я бы удалил сперва пакет 22-devel.
Comment 15 Денис Назаров 2023-11-22 21:26:15 MSK
(Ответ для AEN на комментарий #14)
> Я бы удалил сперва пакет 22-devel.

Так просто не получится - текущая версия не перебирается, что бы собрать без devel-пакета.

Нашёл способ в 2 этапа сделать по-нормальному.
Comment 16 Repository Robot 2023-11-23 00:47:04 MSK
opencolorio-2.3.0-alt2 -> sisyphus:

 Wed Nov 22 2023 Nazarov Denis <nenderus@altlinux> 2.3.0-alt2
 - Rename devel subpackage (ALT #48435)
Comment 17 AEN 2023-11-23 01:38:56 MSK
Большое спасибо!