From: Alexey Tourbin <at@altlinux.ru>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: [devel] Re: QA: проблемы сборки mrtg, вызванные rpm-build-perl-0.5-alt1
Date: Mon, 13 Dec 2004 11:17:57 +0300
Message-ID: <20041213081757.GI27606@solemn.turbinal.org> (raw)
In-Reply-To: <41BD3F05.1090208@altlinux.ru>
[-- Attachment #1: Type: text/plain, Size: 5328 bytes --]
On Mon, Dec 13, 2004 at 09:04:37AM +0200, Andrei Bulava wrote:
> А вот в rpm-build-perl-0.5-alt1 такое свойство, как "заложенные в ДНК"
> ignore_reqs, если и есть, то шаблона с OS2 не содержит :-(
Шаблон для OS2 был забыт при переносе из perl.req в B/PerlReq.pm.
Это ошибка.
> Кстати, это попутно затрагивает вопрос "There's no way to skip a
> particular dependency so far.", упомянутый в драфте Perl policy for ALT
> Linux Team. Я видел прямолинейный и грубый хак, который был когда-то
> реализован мантейнером mrtg в Mandrake Linux - видимо, тоже не от
> хорошей жизни: в spec-файле добавляется %define __find_requires
> %SOURCEXXX, а сам SourceXXX представляет собой сценарий shell,
> вызывающий /usr/lib/rpm/find-requires $* | grep -v 'bad dependency' ;-)
Некоторое врмя назад я предлагал автоматизировать (или "легализовать")
именно такой способ:
Date: Wed, 26 May 2004 03:21:38 +0400
Subject: [devel] %NotRequires/%NotProvides RPM macros
> Теперь о второй неудовлетворённой зависимости, perl(Pod/Parser.pm) >=
> 1.040. apt-cache showpkg показывает, что perl(Pod/Parser.pm)
> предоставляется пакетом perl-base-5.8.4-alt2, но зависимость не может
> быть удовлетворена из-за разницы в формате версий, получаемых
> rpm-build-perl-0.5-alt1 и той версией rpm-build-perl, с которой
> собирался perl-base:
>
> $ rpm -q --provides perl-base|grep Pod/Parser\.pm
> perl(Pod/Parser.pm) = 0:1.14
Это обсуждалось и я писал об этом в этой рассылке. Это, подгтовка
perl-5.8.6-alt1 была закончена ещё вчера и он поступит в Sisyphus,
вероятно, в ближайший рабочий день. В этот же день рассосётся unmet
на Pod::Parser.
> Думаю, что данная проблема может (и, откровенно говоря, желательно
> должна) быть решена и без тотальной пересборки всех пакетов Sisyphus,
> содержащих сценарии Perl. Во-первых, я не вижу особого вреда в том, что
Тотальной пересборки не потребуется, отчасти даже потому, что перловые
зависимости с версиями относительно редки.
> Впрочем, если мотивы удаления Serial a.k.a. Epoch мне более-менее
> понятны (удаление избыточности), то относительно "version numbers now
> rounded to 3 digits after decimal point" "меня терзают смутные сомненья"
> (c). Отдаю себе отчёт, что для вас в этом вопросе моё частное мнение
> может ничего и не значить, но... я по своей природе консерватор и
> прагматик, поэтому мне нужна серьёзная мотивация для понимания
> необходимости такого серьёзного шага в ситуации, когда такой формат
Скажите, вы читали тред -- ?
Date: Wed, 1 Dec 2004 22:33:08 +0300
Subject: [devel] RFC: perl deps versioning
> версий не является общепринятым даже для пакета perl-base! Вот избранное
> из зависимостей, предоставляемых perl-base:
>
> perl(Attribute/Handlers.pm) = 0:0.78_01
> perl(Errno.pm) = 0:1.09_00
> perl(File/Compare.pm) = 0:1.1003
> perl(Filter/Util/Call.pm) = 0:1.0601
> perl(IPC/Open3.pm) = 0:1.0106
> perl(Pod/Html.pm) = 0:1.0502
> perl(SelfLoader.pm) = 0:1.0904
> perl(Text/Tabs.pm) = 0:98.112801
> perl(Text/Wrap.pm) = 0:2001.09291
>
> Глядя на "обрезание", произведённое в отношении зависимости
> perl(MRTG_lib.pm), предоставляемой пакетом mrtg-2.10.14-alt1, с
> perl(MRTG_lib.pm) = 0:2.100001 до perl(MRTG_lib.pm) = 2.100, я проверил,
> что же будет с mrtg-2.11.0. Оказалось, что rpm-build-perl-0.5-alt1
> найдёт предоставляемую зависимость как perl(MRTG_lib.pm) = 2.100 вместо
> действительной perl(MRTG_lib.pm) = 2.100015. Благо, ни для кого эти
> предоставлемые mrtg зависимости особой роли не играют, насколько мне
> известно.
Дело просто в том, что это "обрезание" необходимо -- для того, чтобы
уравнять requires и provides с точки зрения rpm, который не понимает
десятичной точки. Отсутствие обрезания также способно порождать
unmet'ы. Эти unmet'ы в некотором смысле и существовали, просто они не
были заметны из-за того, что разрыв между требуемыми и предоставляемыми
перловыми модулями был очень велик и не доходил до десятичной части.
Например, --
Provides: perl(Module.pm) = 3.10
Requires: perl(Module.pm) = 2.100
зависимости такого рогда были удовлетварены только благодаря целой
части.
> Я читал о том, что вы предварительно выяснили, каков более-менее
> общепринятый формат версий модулей CPAN, и полностью согласен с тем, что
> хаосу и бардаку (который, как оказалось, не до конца упорядочен даже в
> исходных кодах Perl) нужно положить конец. Со мной только одна беда - я
> прочувствовал программирование на своей шкуре до той степени, когда
Я всею скробью скорблю мировою,
Грудью дышу я всем воздухом мира...
> наступает осознание связи между MAJOR.MINOR.PATCH_LEVEL-версионингом и
> изменениями API, ABI или поведения функций, а также приходит понимание
> пропасти между системой отслеживания версионной целостности и радостным
> сваливанием JAR'ов, PM'ов и пр. в помойку, гордо именуемую lib, на
> головы несчастных мантейнеров... и при этом никак не владею умением
> донести своё понимание до других.
>
> В общем, мотивируйте меня, а дальше, если получится, то мы будем
> действовать сообща. "Массовая гипноиндукция, позитивная реморализация.
> Гипноизлучатели на трёх экваториальных спутниках" (c) ;-)
Уж давайте тогда и вы меня мотивируйте.
За пузырь...
> --
> // AB1002-UANIC
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2004-12-13 8:17 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-12-13 7:04 [devel] " Andrei Bulava
2004-12-13 8:17 ` Alexey Tourbin [this message]
2004-12-13 16:54 ` [devel] " Andrei Bulava
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20041213081757.GI27606@solemn.turbinal.org \
--to=at@altlinux.ru \
--cc=devel@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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