[devel] ACL in branches

Денис Смирнов =?iso-8859-1?q?mithraen_=CE=C1_altlinux=2Eru?=
Сб Мар 7 21:02:24 MSK 2009


On Sat, Mar 07, 2009 at 01:39:59PM +0300, Алексей Турбин wrote:

AT> А что касается X-сервера, то мейнтейнер вроде бы не очень комплексует,
AT> когда выкладывает новые сборки, в которых есть известные проблемы по
AT> сравнению с предыдущими сборками.  Эти проблемы ему даже обычно известны
AT> заранее.  Не похоже, чтобы дополнительные возможности предварительного
AT> тестирования могли радикально повлиять на политику мейнтейнера.  Он
AT> вроде сам немного тестирует перед выкладыванием.

Но в бранчи пакет должен перемещаться в тот момент, когда там известно что
нет критических проблем.

AT> Я считаю, что это действительно с трудом возможно и отчасти бесполезно.
AT> Потому что пакеты работают не изолированно.  В рантайме собственный код
AT> пакета комбинируется с кодом зависимостей пакета (причем транзитивно,
AT> то есть с зависимостями зависимостей и т.д.).  Пока Вы тестировали
AT> что-то одно, кто-то залил что-то другое.  И это может сделать Ваши
AT> усилия если не бесполезными, то лишенными гарантии.

Гарантии никто и никогда не даст. Но факты уровня "а вот там rm -rf /* в
%pre" -- выловятся _гарантировано_. И меня это устраивает.

AT> Кстати, поэтому имеет смысл налаживать автоматическое тестирование 
AT> при сборке пакета, что-то типа 'make test'.  Пусть кто-то хочет
AT> разломать Ваш пакет, но у Вас при сборке выполняется 'make test'.
AT> Тогда облом 'make test' при тестовой пересборке является индикатором,
AT> что новый входящий пакет не согласуется с Вашим существующим пакетом.

Да, это хорошая практика. Но не все так можно протестировать. Во многих
случаях тест, это apt-get upgrade на некритичной машинке с последующими
матюками.

AT> 1) Репозитарий пакетов в каждый момент времени может находится только
AT> в одном состоянии.
AT> 2) Возможны строго последовательные (сериализованные) переходы, при
AT> которых репозитарий переходит из одного состояния в другое состояние.
AT> 3) Каждый переход должен быть подготовлен на текущем состоянии
AT> репозитария.

AT> Последнее условие, в частности, запрещает копировать пакеты из одного
AT> бранча в другой.

Это делает невозможным bootstrap без разлома репозитория.

AT> Карманы почему плохо согласуются с моделью?  Потому что карманы дают
AT> множество параллельных состояний.  Не факт, что эти параллельные
AT> состояния удастся "состыковать" и привести к виду последовательных
AT> согласовнных транзакций.

Перемещение из кармана в Сизиф -- это тоже транзакция.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20090307/653cef0a/attachment-0001.bin>


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