* [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек @ 2012-04-06 11:21 Alexey Morozov 2012-04-06 19:35 ` Sergey Vlasov 0 siblings, 1 reply; 6+ messages in thread From: Alexey Morozov @ 2012-04-06 11:21 UTC (permalink / raw) To: ALT Linux Team development discussions Здравствуйте! Имеем http://git.altlinux.org/tasks/index/sisyphus/failed/68729/build/400/i586/log Пакет (kdevelop) собирается хорошо, однако, при попытке его установки происходит ошибка libkdev4cmakecommon.so>= set:mgEG3imLZ9Xjq7yCq68U5lK6pjHRJ8oUXGqZJRXc2OibNKQlZo1KH7X4IvF56TUonEZ8VyAe42LDX8gS76xyryImKSxM66oUEQqGfxsNqO30J1eOmGA6Z0yLLnB5A6Ke0zGC0 а собирающийся _в рамках этой же сборки_ kdevelop-libs предоставляет: Provides: libkdev4cmakecommon.so = set:mdRMryV7HjpwPhy64p0ghRnTlb8StEYCDkJK3VCRdPewbZwKSk3s1s1nIJcCeI7rlrPmMQFUIdFZq1mRaCSpngDStECW090bGLHeQZshqrvZKwyceLQ8OuKdl4qj3vunJemTQM5lpj5sHKdsqK3KU8DZx29eu8zLImfymlzwXWruOvNeK5vLTLCL5dIDZqJASEY32SI9fbdNK9QRo5MYmgxbY0w4wmhWZ83SRZvAwxV1gN3bCWBBiqCAsNkVQIPO3cTn6rE6Nqujc0OUxirgnCOBbi7iD4PmCssWAfs226GBl7SZywPVE4h8ZogtwqePl3xfh9t3iSSCskFIhSIy1IIrT76MaGhNuNKf7TXu4He1lsVeGHCb3PIibZerqKKGKPKm912P7JRsgHAg2QLG84fjkdQhRNic8G2Kv6EautmL4b7VkMgMEzvNG0e0bESWUDuOFQZF53ovgYxbnIRb0wrAjTLXDy1GQqOFx6OZk4WWU8A4BkAcUX7ObUkGZec3NZK5tjkb0GYdciwMz2zj2b4D8F5lHAbxgAgVIbdcMyNqZbiYfRYdvKcZbFMZn0NgZ9oJoL83oc1gCwkTOnZo8Mwme7366kdmeuq0BGr6lMInZtxRLR7U9FU9V5PTzn0ru90A7C8a9UZhf2cboTlnzZwy4x8tyuE8x1ojhLy5kc2p6IvqiJHAhznO38V1Du и так со всеми .so-шками, входящими в kdevelop-libs. Товарищи учёные, как говорится, объясните явление! P.S. Два дня назад в локальном хэшере это, кажется, собиралось и даже дист-агрейдилось. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек 2012-04-06 11:21 [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек Alexey Morozov @ 2012-04-06 19:35 ` Sergey Vlasov 2012-04-07 4:09 ` Alexey Morozov 0 siblings, 1 reply; 6+ messages in thread From: Sergey Vlasov @ 2012-04-06 19:35 UTC (permalink / raw) To: devel [-- Attachment #1: Type: text/plain, Size: 2004 bytes --] On Fri, Apr 06, 2012 at 06:21:57PM +0700, Alexey Morozov wrote: > Имеем http://git.altlinux.org/tasks/index/sisyphus/failed/68729/build/400/i586/log > > Пакет (kdevelop) собирается хорошо, однако, при попытке его установки происходит ошибка > libkdev4cmakecommon.so>= set:mgEG3imLZ9Xjq7yCq68U5lK6pjHRJ8oUXGqZJRXc2OibNKQlZo1KH7X4IvF56TUonEZ8VyAe42LDX8gS76xyryImKSxM66oUEQqGfxsNqO30J1eOmGA6Z0yLLnB5A6Ke0zGC0 > > а собирающийся _в рамках этой же сборки_ kdevelop-libs предоставляет: > Provides: libkdev4cmakecommon.so = set:mdRMryV7HjpwPhy64p0ghRnTlb8StEYCDkJK3VCRdPewbZwKSk3s1s1nIJcCeI7rlrPmMQFUIdFZq1mRaCSpngDStECW090bGLHeQZshqrvZKwyceLQ8OuKdl4qj3vunJemTQM5lpj5sHKdsqK3KU8DZx29eu8zLImfymlzwXWruOvNeK5vLTLCL5dIDZqJASEY32SI9fbdNK9QRo5MYmgxbY0w4wmhWZ83SRZvAwxV1gN3bCWBBiqCAsNkVQIPO3cTn6rE6Nqujc0OUxirgnCOBbi7iD4PmCssWAfs226GBl7SZywPVE4h8ZogtwqePl3xfh9t3iSSCskFIhSIy1IIrT76MaGhNuNKf7TXu4He1lsVeGHCb3PIibZerqKKGKPKm912P7JRsgHAg2QLG84fjkdQhRNic8G2Kv6EautmL4b7VkMgMEzvNG0e0bESWUDuOFQZF53ovgYxbnIRb0wrAjTLXDy1GQqOFx6OZk4WWU8A4BkAcUX7ObUkGZec3NZK5tjkb0GYdciwMz2zj2b4D8F5lHAbxgAgVIbdcMyNqZbiYfRYdvKcZbFMZn0NgZ9oJoL83oc1gCwkTOnZo8Mwme7366kdmeuq0BGr6lMInZtxRLR7U9FU9V5PTzn0ru90A7C8a9UZhf2cboTlnzZwy4x8tyuE8x1ojhLy5kc2p6IvqiJHAhznO38V1Du > > и так со всеми .so-шками, входящими в kdevelop-libs. > > Товарищи учёные, как говорится, объясните явление! Создаётся впечатление, что apt запутывается в имеющейся в этом задании мешанине пакетов, содержащих вроде бы одни и те же библиотеки, но разных версий (kdevelop-libs, kdevelop-pre4.4-libs, и ещё откуда-то берётся kdevelop-unstable-libs). Возможно, поможет добавление в пакет kdevelop-base явной зависимости на kdevelop-libs вида Requires: %name-libs = %epoch:%version-%release (и аналогично в kdevelop-pre4.4-base). Вообще rpm по поводу отсутствия этой зависимости выдаёт предупреждения: warning: kdevelop-base: non-strict dependency on kdevelop-libs warning: kdevelop-pre4.4-base: non-strict dependency on kdevelop-pre4.4-libs [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек 2012-04-06 19:35 ` Sergey Vlasov @ 2012-04-07 4:09 ` Alexey Morozov 2012-04-07 14:03 ` Sergey Vlasov 0 siblings, 1 reply; 6+ messages in thread From: Alexey Morozov @ 2012-04-07 4:09 UTC (permalink / raw) To: devel Доброго утра! On 6 апреля 2012 23:35:12 Sergey Vlasov wrote: > Создаётся впечатление, что apt запутывается в имеющейся в этом задании > мешанине пакетов, содержащих вроде бы одни и те же библиотеки, но > разных версий (kdevelop-libs, kdevelop-pre4.4-libs, и ещё откуда-то > берётся kdevelop-unstable-libs). Возможно, поможет добавление в пакет > kdevelop-base явной зависимости на kdevelop-libs вида > > Requires: %name-libs = %epoch:%version-%release Ну, после подчистки задания (оставил только kdevelop-4.3.0 & Co) и выставления явной зависимости на kdevelop-libs, диагностика при инсталляции несколько изменилась, теперь я вообще отказываюсь что-либо понимать :) При попытке автоматической инсталляции -debuginfo пакетов выдаётся такое http://git.altlinux.org/tasks/index/sisyphus/failed/68729/logs/events.6.1.log : The following extra packages will be installed: kdevelop-base kdevelop-common kdevelop-libs kdevelop-okteta kdevelop-okteta-debuginfo kdevplatform kdevplatform-libs kdevplatform-libs-debuginfo The following packages will be REPLACED: kdevplatform-unstable-common (by kdevplatform-libs) The following packages will be REMOVED: libkdevplatformdebugger4-unstable libkdevplatformdebugger4-unstable-debuginfo libkdevplatformdocumentation4-unstable libkdevplatformdocumentation4-unstable-debuginfo libkdevplatforminterfaces4-unstable libkdevplatforminterfaces4-unstable-debuginfo libkdevplatformlanguage4-unstable libkdevplatformlanguage4-unstable-debuginfo libkdevplatformoutputview4-unstable libkdevplatformoutputview4-unstable-debuginfo libkdevplatformproject4-unstable libkdevplatformproject4-unstable-debuginfo libkdevplatformshell4-unstable libkdevplatformshell4-unstable-debuginfo libkdevplatformutil4-unstable libkdevplatformutil4-unstable-debuginfo libkdevplatformvcs4-unstable libkdevplatformvcs4-unstable-debuginfo libsublime4-unstable libsublime4-unstable-debuginfo The following NEW packages will be installed: kdevelop-base kdevelop-common kdevelop-libs kdevelop-okteta kdevelop-okteta-debuginfo kdevplatform kdevplatform-libs kdevplatform-libs-debuginfo 0 upgraded, 8 newly installed, 1 replaced, 20 removed and 0 not upgraded. Need to get 0B/17.1MB of archives. After unpacking 15.1MB of additional disk space will be used. В общем, пока как и ожидалось. Однако, следом: Executing RPM (hsh-rpmi-print-files -e -r /tmp/.private/bee9/hasher/aptbox --nodeps)... hsh-rpmi-print-files: cannot erase packages: libkdevplatformshell4-unstable-debuginfo libsublime4-unstable-debuginfo libkdevplatformshell4-unstable libsublime4-unstable libkdevplatformvcs4-unstable-debuginfo libkdevplatformvcs4-unstable libkdevplatformproject4-unstable-debuginfo libkdevplatformlanguage4-unstable-debuginfo libkdevplatformdebugger4-unstable-debuginfo libkdevplatformutil4-unstable-debuginfo libkdevplatformproject4-unstable libkdevplatformlanguage4-unstable libkdevplatformdebugger4-unstable libkdevplatformutil4-unstable libkdevplatformoutputview4-unstable-debuginfo libkdevplatformoutputview4-unstable libkdevplatformdocumentation4-unstable-debuginfo libkdevplatforminterfaces4-unstable-debuginfo libkdevplatformdocumentation4-unstable libkdevplatforminterfaces4-unstable Чтобы rpm -e --nodeps не выносил пакеты, а довольствовался лишь мозгом - такое, признаться, вижу впервые :) АМ ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек 2012-04-07 4:09 ` Alexey Morozov @ 2012-04-07 14:03 ` Sergey Vlasov 2012-04-07 15:38 ` Alexey Morozov 0 siblings, 1 reply; 6+ messages in thread From: Sergey Vlasov @ 2012-04-07 14:03 UTC (permalink / raw) To: devel [-- Attachment #1: Type: text/plain, Size: 2665 bytes --] On Sat, Apr 07, 2012 at 11:09:50AM +0700, Alexey Morozov wrote: > Ну, после подчистки задания (оставил только kdevelop-4.3.0 & Co) и выставления > явной зависимости на kdevelop-libs, диагностика при инсталляции несколько > изменилась, теперь я вообще отказываюсь что-либо понимать :) > > При попытке автоматической инсталляции -debuginfo пакетов выдаётся такое > http://git.altlinux.org/tasks/index/sisyphus/failed/68729/logs/events.6.1.log : [...] > Executing RPM (hsh-rpmi-print-files -e -r /tmp/.private/bee9/hasher/aptbox --nodeps)... > hsh-rpmi-print-files: cannot erase packages: libkdevplatformshell4-unstable-debuginfo libsublime4-unstable-debuginfo libkdevplatformshell4-unstable libsublime4-unstable libkdevplatformvcs4-unstable-debuginfo libkdevplatformvcs4-unstable libkdevplatformproject4-unstable-debuginfo libkdevplatformlanguage4-unstable-debuginfo libkdevplatformdebugger4-unstable-debuginfo libkdevplatformutil4-unstable-debuginfo libkdevplatformproject4-unstable libkdevplatformlanguage4-unstable libkdevplatformdebugger4-unstable libkdevplatformutil4-unstable libkdevplatformoutputview4-unstable-debuginfo libkdevplatformoutputview4-unstable libkdevplatformdocumentation4-unstable-debuginfo libkdevplatforminterfaces4-unstable-debuginfo libkdevplatformdocumentation4-unstable libkdevplatforminterfaces4-unstable > > Чтобы rpm -e --nodeps не выносил пакеты, а довольствовался лишь мозгом - такое, > признаться, вижу впервые :) На самом деле hsh-rpmi-print-files в принципе не может удалять пакеты и отказывается делать это. Вопрос в том, откуда на этом шаге вообще может возникать запрос на удаление пакетов. Вообще при проверке check-install установка пакетов в chroot с базовой системой выполняется в два этапа: 1) Устанавливаются все пакеты, которые требуются по зависимостям для у становки тестируемого пакета, за исключением самого этого пакета: hsh-install -- "$N=$EVR" "$N-" 2) Устанавливается сам тестируемый пакет: hsh-install -- "$N=$EVR" В данном случае при выполнении второй установки обнаруживается, что во время первой установки в chroot оказались установлены пакеты *-unstable не от той версии kdevplatform, которая нужна (да и вместо kdevplatform-libs установился kdevplatform-unstable-common). Каким образом такое могло произойти - apt его знает. Насколько я понял, все эти пакеты *-unstable предполагалось в конечном итоге удалить из Сизифа; тогда, возможно, проще будет сначала их удалить явным образом, а потом уже собирать новую версию (попробовать сначала в одном задании, если не пройдёт с похожими ошибками - придётся сначала выносить отдельным заданием). [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек 2012-04-07 14:03 ` Sergey Vlasov @ 2012-04-07 15:38 ` Alexey Morozov 2012-04-07 18:52 ` Sergey Vlasov 0 siblings, 1 reply; 6+ messages in thread From: Alexey Morozov @ 2012-04-07 15:38 UTC (permalink / raw) To: devel Добрый вечер! On 7 апреля 2012 18:03:56 Sergey Vlasov wrote: > Насколько я понял, все эти пакеты *-unstable предполагалось в конечном > итоге удалить из Сизифа; тогда, возможно, проще будет сначала их > удалить явным образом, а потом уже собирать новую версию (попробовать > сначала в одном задании, если не пройдёт с похожими ошибками - > придётся сначала выносить отдельным заданием). Ну, здесь есть два аспекта. Первое - я не совсем понимаю, как удалять пакеты из Сизифа: for dp in libkdevplatformshell4-unstable-debuginfo \ libsublime4-unstable-debuginfo libkdevplatformvcs4-unstable-debuginfo \ libkdevplatformproject4-unstable-debuginfo \ libkdevplatformlanguage4-unstable-debuginfo \ libkdevplatformdebugger4-unstable-debuginfo \ libkdevplatformutil4-unstable-debuginfo \ libkdevplatformoutputview4-unstable-debuginfo \ libkdevplatformdocumentation4-unstable-debuginfo \ libkdevplatforminterfaces4-unstable-debuginfo; do ssh git.alt build del $dp; done new task #68928: owner=morozov repo=sisyphus girar-task add: Invalid request to delete nonexistent package `libkdevplatformshell4-unstable-debuginfo' from `sisyphus' removing task #68928 ... done new task #68929: owner=morozov repo=sisyphus girar-task add: Invalid request to delete nonexistent package `libsublime4- unstable-debuginfo' from `sisyphus' removing task #68929 ... done new task #68930: owner=morozov repo=sisyphus girar-task add: Invalid request to delete nonexistent package `libkdevplatformvcs4-unstable-debuginfo' from `sisyphus' removing task #68930 ... done Я так понимаю, удалить отдельные подпакеты нельзя? И как это сделать в рамках одной транзакции со сборкой? Второй момент связан вот с чем. Да, действительно, схема со стабильным и нестабильным kdevelop оказалась не слишком удачной, и в 4.3.0 я хотел удалить {kdevelop,kdevplatform}-unstable-*. Однако, совсем отказываться от пре-релизов тоже не хотелось бы, в 4.3.60+ уже сейчас есть всякие заманушки. Кроме этого, я считаю важным, что установленные пакеты пре-релизных версий не должны автоматически апгрейдиться до следующего пре-релиза. Например, если у человека установлен, например, пакет kdevelop-4.2.80 (с соотв. kdevplatform), то при появлении в репозитории kdevelop-4.3.0 и kdevelop-4.3.60 dist-upgrade должен происходить до 4.3.0, а не до 4.3.60 (и в локальном хэшере так и было, чес- слово :)). Поэтому я решил, что нестабильные сборки будут нести в имени некоторый уникальный для данной нестабильной ветки суффикс (для 4.3.60+ это -pre4.4), а следующая стабильная версия, когда она будет готова, должна такие пакеты обсолетить. Помимо этого, соотв. пакеты должны "во веки веков" обсолетить ещё и {kdevelop,kdevplatform}-unstable Поэтому переводить ситуацию целиком на ручное управление очень не хочется. Но, с другой стороны, запихнуть в Sisyphus стабильный kdevelop тоже актуально. С уважением, Алексей Морозов ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек 2012-04-07 15:38 ` Alexey Morozov @ 2012-04-07 18:52 ` Sergey Vlasov 0 siblings, 0 replies; 6+ messages in thread From: Sergey Vlasov @ 2012-04-07 18:52 UTC (permalink / raw) To: devel [-- Attachment #1: Type: text/plain, Size: 2557 bytes --] On Sat, Apr 07, 2012 at 10:38:54PM +0700, Alexey Morozov wrote: > Добрый вечер! > > On 7 апреля 2012 18:03:56 Sergey Vlasov wrote: > > > Насколько я понял, все эти пакеты *-unstable предполагалось в конечном > > итоге удалить из Сизифа; тогда, возможно, проще будет сначала их > > удалить явным образом, а потом уже собирать новую версию (попробовать > > сначала в одном задании, если не пройдёт с похожими ошибками - > > придётся сначала выносить отдельным заданием). [...] > Я так понимаю, удалить отдельные подпакеты нельзя? И как это сделать в рамках > одной транзакции со сборкой? Удаление производится по имени исходного пакета, удаляются все собранные из него бинарные пакеты. Добавление запроса на удаление пакета в задание: ssh git.alt task add [<task_id> [<before_subtask_id>]] del <package> Или от этого unstable зависит что-то важное, что не хотелось бы удалять? Хотя, если удалять в том же задании, в котором собирается новая версия, заменяющая пакет, такое задание должно пройти. > Второй момент связан вот с чем. Да, действительно, схема со стабильным и > нестабильным kdevelop оказалась не слишком удачной, и в 4.3.0 я хотел удалить > {kdevelop,kdevplatform}-unstable-*. Однако, совсем отказываться от пре-релизов > тоже не хотелось бы, в 4.3.60+ уже сейчас есть всякие заманушки. Кроме этого, > я считаю важным, что установленные пакеты пре-релизных версий не должны > автоматически апгрейдиться до следующего пре-релиза. Например, если у человека > установлен, например, пакет kdevelop-4.2.80 (с соотв. kdevplatform), то при > появлении в репозитории kdevelop-4.3.0 и kdevelop-4.3.60 dist-upgrade должен > происходить до 4.3.0, а не до 4.3.60 (и в локальном хэшере так и было, чес- > слово :)). > > Поэтому я решил, что нестабильные сборки будут нести в имени некоторый > уникальный для данной нестабильной ветки суффикс (для 4.3.60+ это -pre4.4), а > следующая стабильная версия, когда она будет готова, должна такие пакеты > обсолетить. Помимо этого, соотв. пакеты должны "во веки веков" обсолетить ещё > и {kdevelop,kdevplatform}-unstable При такой схеме в стабильных версиях будут постепенно накапливаться Obsoletes на -preX.Y. > Поэтому переводить ситуацию целиком на ручное управление очень не хочется. Но, > с другой стороны, запихнуть в Sisyphus стабильный kdevelop тоже актуально. Возможно, проблема сейчас возникает из-за недостаточно жёстких зависимостей в старом unstable (типа той, про которую выдавалось предупреждение при сборке новых пакетов). [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-04-07 18:52 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2012-04-06 11:21 [devel] Магия хэшей-кодов в зависимостях разделяемых библиотек Alexey Morozov 2012-04-06 19:35 ` Sergey Vlasov 2012-04-07 4:09 ` Alexey Morozov 2012-04-07 14:03 ` Sergey Vlasov 2012-04-07 15:38 ` Alexey Morozov 2012-04-07 18:52 ` Sergey Vlasov
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git