Hello! On Fri, 6 Oct 2017, Vitaly Lipatov wrote: > (В ответ на комментарий №5) >> Действительно, было плохо, теперь проходит проверку (которую я, пользуясь >> моментом, ещё раз порекламирую): >> >> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf add 190330 >> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test '' >> python3-module-sip python3-module-PyQt5 && { hsh-run >> --mount=/proc,/dev/pts >> /usr/lib/rpm/check-python3-provs-importable.sh python3-module-PyQt5; echo >> $?; } >> ... >> 0 >> $ apt-repo --hsh-apt-config=/home/imz/.hasher/sisyphus/apt.conf test '' >> python3-module-PyQt4 && { hsh-run --mount=/proc,/dev/pts >> /usr/lib/rpm/check-python3-provs-importable.sh python3-module-PyQt4; echo >> $?; } >> ... >> PyQt4.uic.pyuic >> 123 >> $ hsh-shell --mount=/proc,/dev/pts >> [builder@localhost .in]$ python3 -c 'import PyQt4.uic.pyuic' >> Error: one input ui-file must be specified >> [builder@localhost .in]$ >> >> А это какой-то странный модуль попал в Provides. (И зависимости на >> python3-module-sip не хватило почему-то.) >> >> Возвращаясь к исходной проблеме. Интересно будет узнать, оно когда-то >> работало, >> а потом стало падать, или сразу было собрано в нерабочем виде. > > Какая-то сложная штука, я не понял, как применить. Проблема была в том, если > если обновить sip, то ломаются PyQt{4,5}. Это было всегда, но мантейнеры > ничего не указали в пакете, чтобы этого избежать. > > Я так понимаю, при сборке python-module-sip такая проверка ничего бы не дала, > если не проверять всех, кто использует его непосредственно: Да, по-моему, ты всё понял и рассказал. Спасибо, что разобрался и рассказал про причину падения! В этой штуке нет ничего сложного. Скрипт просто читатет список Provides указанного пакета и пробует каждый из них по очереди импортировать. Если случается ошибка, печатает название модуля. Пока что я просто предлагал вручную так проверять пакеты. Лучше в минимальном окружении в hasher, чтобы выловить больше проблем. (Потом можно будет сочинить службу проверки, работающую в режиме repocop. И потом, возможно, автоматизировать проверку при сборке пакета, что не очевидно, что полезно. В частности, этот случай -- это пример, почему.) Действительно, если дело в смене версии sip, то эта проверка при сборке пакетов с модулями ничего бы не дала. (А автоматизировать в сборочнице проверку всего, что имеет пересобираемый пакет в каестве зависимости -- пока такого механизма нет.) > $ epm whatdepends python-module-sip | grep -v sip > $ apt-cache whatdepends python-module-sip > qgis-python-2.18.13-alt1 > python-module-kde4-4.14.3-alt1 > python-module-qt-3.18.2-alt1.29855a84d8b6.4 > python-module-PyQt4-4.11.4-alt2.1.1 > kf5-kdelibs4support-devel-5.38.0-alt1.S1 > calibre-3.8.0-alt1 > python-module-projex_xqt-2.0.2-alt1.git20150111.1.1 > python-module-TraitsBackendQt-3.6.1-alt1.svn20110127.1 > puddletag-1.2.0-alt1 > ninja-ide-2.3-alt2 > luma-3.0.7-alt1 > hgview-1.9.0-alt1 > python-module-veusz-1.25.1-alt1 > python-module-qbzr-0.23.1-alt1 > kde4games-kajongg-15.4.3-alt1 > kde4-kate-4.14.7-alt2 > eric4-4.5.23-alt1 > > > -- > С уважением, > Виталий Липатов, > Etersoft > >