[devel] дизъюнкция зависимостей

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Сб Сен 15 16:26:34 MSD 2007


On Sat, Sep 15, 2007 at 01:53:39PM +0400, Хихин Руслан wrote:
> Здравствуйте Alexey Tourbin
>   В сообщении от Суббота 15 сентября 2007 Alexey Tourbin написал(a):
>  > On Thu, Sep 13, 2007 at 12:08:25AM +0400, Хихин Руслан wrote:
>  > > Здравствуйте Alexey Tourbin
>  > >
>  > А зачем?  Мы обсуждали это на конференции.  Если явно указывать
>  > дизъюнкцию, то она получается "закрытой" во времени, к ней нельзя
>  > ничего присоединить.  Напр. Requires: gcc3.4|gcc4.1.
> Ну, при следующей пересборке пакета она легко присоединяется.

Как же туда присоединится gcc4.2?  Вручную?

>  > А можно длеать "открытую" дизъюнкцию на основе виртуальных
>  > зависимостей,
>  > типа Requires: /usr/bin/gcc.  К ней потом можно будет задним числом
>  > "подшить" gcc4.2, и скорее всего такая семантика более преемлема
>  > с точки зрения репозитария в целом.
> Не всегда зависимость определяется общим файлом - чаще - это различный 
> набор интерфейса.

Желательно чтобы общие интерфейсы предоставляли какое-то общее имя
в provides, на которое легко сослаться.  Такова логика построения
репозитария.  Хотя конечно она навязчива.

> Это мне понятно - дизъюнкционная зависимость и Provides это разные формы 
> отбражения одного и того-же. Вопрос стоит именно о возможности хранить 
> такую информацию не в куче пакетов, собираемых разными людьми, а в 

Это понятно.  Организационное неудобство.  С другой стороны, нет способа
указывать "глупые"/бессмысленные дизъюнкции типа что-угодно1|что-угодно2.

То есть имеются дополнительные ограничения на дизайн репозитария
по зависимостям.  Изредка эти ограничения неудобны, зато дают меньше
возможностей деградации.

> одном пакете. Особенно полезно с учётом того, что дизъюнкция 
> выполняется при первой истине. 

Мил человек.  Дизъюнкция это функция, причем ассоциативная (а также
коммутативная).  А у Вас дизъюнкция это процедура, которая ещё типа
должна выполнять какие-то эвристические действия при попытке ее
вычисления в зависимости от последовательности дизъюнктов.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20070915/58cdff99/attachment-0002.bin>


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