On Mon, Nov 15, 2010 at 03:15:43PM +0600, REAL wrote: R> Если будут у библиотеки клиенты, которых собираю не я, я буду R> пробовать просить мейнтейнеров добавить этих клиентов в общий shared R> task ;) R> Не получится - буду брать в руки shared libs policy, никуда не R> денешься :-D Повторяю еще раз. Уже наверное как минимум в десятый раз в этой рассылке. shared libs policy была предназначена не решить задачу "облегчить мантейнерам обновление libfoo в Сизифе", а задачу "облегчить пользователю точечное обновление". Сделай ты хоть сто shared task'ов -- но после смены soversion у библиотеки пользователь физически не сможет поставить одно приложение старой версии, а другое -- новой, если они оба хотят эту библиотеку. Повторяю еще раз для тех кто читать не умеет. Полезность soversion никак не связана с количеством мантейнеров у пакетов, и даже напрямую не связана с количеством этих самых пакетов. Если есть приложение A и B, и пользователь хочет поставить A из p5, а B из свеженького Сизифа -- он в пролете, в случае если мантейнер забил на shared libs policy. Это первое. Второе -- когда пользователь запустит apt-get dist-upgrade, и по каким-то причинам обновление B потянет за собой нетривиальные изменения -- с большой вероятностью ему предложат _вынести_ B, ибо из-за обновления библиотеки -- старый B в системе оставить уже нельзя. Если же мантейнер слишком умный, и пользуется схемой с compat, то вероятнее всего в этой ситуации тупой apt предложит вынести вообще всех, кто зависел от этой библиотеки (поставить в систему одновременно новую библиотеку и compat у него ума обычно не хватает). Посему фактом несоблюдения shared libs policy мантейнер декларирует что: а) он считает что пользователь не в праве делать точечные обновления отдельных приложений среди тех, которые используют его библиотеку; б) если пользователь не умеет упражняться с apt'ом при обновлении системы -- пущай идет лесом, нам такие пользователи не нужны. Или пусть переустанавливает систему. apt это для крутых хакеров, которые могут разобраться как заставить его выполнить обновление корректно. А думать при этом о shared task'ах и прочем -- очень характерно, в случае если пакеты собираются только для себя, и пользователи мантейнеру не нужны. _тогда_ -- да, это критерий :) Я не утверждаю что это плохо. Просто я сторонник называть вещи своими именами. Пакет собранный без соблюдения этих правил -- априори крив. Если мантейнер не считает нужным это исправлять, потому что у него есть более приоритетные задачи -- его право. Ссылаться же при этом на то, что делать криво это на самом деле правильно -- некрасиво. -- С уважением, Денис http://mithraen.ru/ ----------------------------------------------------------------------------