То что PC-BSD 10.0-RELEASE вышел немного комом в общем- то не секрет. Такое бывает. Этому были свои причины. После последнего общения с Крисом мы, вроде как, эти причины окончательно выяснили и взялись исправлять и причины и следствия.
Битва с багами
Наконец то началась эпичная битва с багами! Чинится все. От старых известных проблем до косметики! Не упустите свой шанс. Если Вы знаете о проблеме (даже мелкой) потратьте три минуты на багтрекер - http://trac.pcbsd.org/ Лучшего времени для этого пока что не было.Система формирования релизов
Внимание! Все изложенное ниже носит исключительно предварительный характер!По результатам общения с Крисом мы, вроде как, выработали систему формирования релизов. Она пока что обсуждается, но в общих чертах, думаю, уже сформировалась. Основная проблема- отсутствие времени на стабилизацию перед релизом. Да чего там, стабилизации, как таковой, вообще не было. Надеюсь, мы придумали компромиссный вариант который устроит большинство и в то же время позволит держать темп развития.
Итак:
Формирование нового релиза
- При формировании нового релиза будут всегда явно присутствовать стадии беты и релиз кандидата. (Это было и раньше. Дальше- интереснее)
- На стадии беты будут стабилизироваться и отбираться возможности, которые будут включены в релиз (feature freeze). К моменту конца бета фазы все возможности должны быть зафиксированы
- В релиз кандидаты будут включаться только исправления. Никаких новых функций, как это было в 10.0
Вообщем- то все написанное выше и так должно бы соблюдаться. Но теперь это будет задекларировано явно. И, вроде как, будет соблюдаться. Плюс образы беты и релиз кандидатов должны быть лучше анонсированы, чтобы об их существовании как минимум знали.
Обновление production ветки
Тут я остановлюсь немного подробнее. Как многие уже знают, одной из новых фич 10.0 стало появление двух наборов пакетов - Production и Edge. Первый позиционируется как стабильный набор, второй- как эксперементальный (немного похоже на Debian testing). Это позволит с одной стороны иметь стабильную ветку "поставил и забыл" для организаций, родственников и просто обычных людей. С другой- сохранить что- то похожее на Rolling release для тех кто хочет всего и сразу и готов мирится с эпизодическими багами.
Но при таком подходе есть небольшой нюанс. Связан он, в в том числе с апстримом. Перед релизом FreeBSD порты замораживаются. Это стабильно приводит, в том числе, к тому что только где- то через месяц после релиза в порты попадает новая версия KDE. В 10.0-RELEASE присутствует KDE 4.10. В Area51 на данный момент уже KDE 4.12. Более того, сразу после релиза был добавлен Cinnamon 2.0 (обновление должно уже быть доступно в Edge). Короче говоря, нужно было придумать что- то чтобы с одной стороны пользователи production ветки использовали как можно более стабильную систему, с другой же не считали себя обделенными. Вроде как придумали:
- Один раз в среднем в три месяца уже стабильные новшества скопом переносятся из edge в production
- Перед этим переносом ветка Edge стабилизируется. Длится это две недели- месяц. Во время стабилизации принимается решение о том что именно уже стабильно и будет переносится. Для новшеств, запланированных к переносу в production на протяжении периода стабилизации запрещены кардинальные изменения (только починка багов)
- Во время стабилизации должно быть выпущено хотя бы одно- два обновления edge для того чтобы пользователи могли протестировать изменения
- Единственный путь для того чтобы какое- то новшество попало в production- это перенос из edge как описано выше (т.е. раз в три месяца). Короче говоря production остается неизменной три месяца. ВСЕ новые фичи только в edge. В production ветку будут переносится только исправления.
- Каждый такой перенос будет сказываться на версии production ветки. Результат каждого такого переноса будет именоваться обновлением (Update). Обновления будут нумероваться. Соответственно, версия production ветки будет вроде этой - PC-BSD 10.0 RELEASE Update 1. Если хотите, можете провести аналогию с сервис паками Windows.
- Установочные образы будут заново формироваться для каждого обновления.
Выглядеть это должно как- то так:
Учитывая что обычно между релизами FreeBSD проходит приблизительно год и месяц, то мы будем иметь три обновления Update 1 - Update 3 для каждого релиза. В конце цикла все наработки отправляются в новый релиз.
И еще...
Сейчас в списках рассылки происходит довольно активное шевеление. Думаю, нас ждут перемены к лучшему (я надеюсь). Некоторые новые идеи и веяния я опишу уже в следующем посте.
Немає коментарів:
Дописати коментар