http://wiki.rosalab.com/ru/index.php?title=%D0%91%D0%BB%D0%BE%D0%B3:%D0%A2%D0%BE%D1%87%D0%BA%D0%B0_%D0%A0%D0%BE%D1%81%D1%8B/ABF_-_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B1%D1%8D%D0%BA%D0%B5%D0%BD%D0%B4,_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B4%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD_%D0%B8_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B5_%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8&feed=atom&action=historyБлог:Точка Росы/ABF - новый бэкенд, новый дизайн и новые возможности - История изменений2024-03-29T15:20:21ZИстория изменений этой страницы в викиMediaWiki 1.26.4http://wiki.rosalab.com/ru/index.php?title=%D0%91%D0%BB%D0%BE%D0%B3:%D0%A2%D0%BE%D1%87%D0%BA%D0%B0_%D0%A0%D0%BE%D1%81%D1%8B/ABF_-_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B1%D1%8D%D0%BA%D0%B5%D0%BD%D0%B4,_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B4%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD_%D0%B8_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B5_%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8&diff=12613&oldid=prevStanislav.fomin в 14:57, 5 февраля 20152015-02-05T14:57:40Z<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='ru'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Предыдущая</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Версия 14:57, 5 февраля 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1" >Строка 1:</td>
<td colspan="2" class="diff-lineno">Строка 1:</td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><!-- Смело пишите здесь свою заметку</del>. <del class="diffchange diffchange-inline">Можно использовать все возможности вики</del>, <del class="diffchange diffchange-inline">включать картинки и другие статьи </del>— <del class="diffchange diffchange-inline">все они автоматически отреплицируются наружу --></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">Как наверняка заметили пользователи ABF, у нашей системы сборки недавно сильно изменился внешний вид</ins>. <ins class="diffchange diffchange-inline">Но вряд ли многие догадываются</ins>, <ins class="diffchange diffchange-inline">что изменение дизайна </ins>— <ins class="diffchange diffchange-inline">это не самоцель, а следствие серьезных изменений в структуре бэкенда ABF.</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">Как наверняка заметили пользователи </del>ABF, <del class="diffchange diffchange-inline">у нашей системы сборки недавно сильно изменился внешний вид</del>. <del class="diffchange diffchange-inline">Но вряд ли многие догадываются</del>, что <del class="diffchange diffchange-inline">изменение дизайна - это </del>не <del class="diffchange diffchange-inline">самоцель</del>, <del class="diffchange diffchange-inline">а следствие серьезных изменений в структуре бэкенда ABF</del>.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">В частности, </ins>ABF <ins class="diffchange diffchange-inline">теперь использует популярные фреймворки [http://getbootstrap.com/ Bootstrap 3] и [https://angularjs.org/ AngularJS]. Переход на них был продиктован отнюдь не данью моде</ins>, <ins class="diffchange diffchange-inline">а необходимостью избавиться от самописных наработок, перенеся тем самым ряд задач с разработчиков ABF на разработчиков фреймворков и позволив первым больше внимания уделять функционалу, связанному с непосредственными обязанностями ABF — разработкой и сборкой проектов под Linux</ins>. <ins class="diffchange diffchange-inline">Подобная необходимость замены собственных велосипедов на стандартные решения рано или поздно встает перед многими проектами, и мы решили</ins>, что <ins class="diffchange diffchange-inline">лучше с этим процессом </ins>не <ins class="diffchange diffchange-inline">затягивать — пока все еще помнят</ins>, <ins class="diffchange diffchange-inline">как все самописные вещи устроены и работают</ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">В частности, ABF теперь использует популярные фреймворки [http://getbootstrap.com/ Bootstrap 3] и [https://angularjs.org/ AngularJS]. Переход на них был продиктован отнюдь не данью моде, а необходимостью избавиться от самописных наработок, перенеся тем самым ряд задач с разработчиков ABF на разработчиков фреймворков и позволив первым больше внимания уделять функционалу, связанному с непосредственными обязанностями ABF - разработкой и сборкой проектов под Linux. Подобная необходимость замены собственных велосипедов на стандартные решения рано или поздно встает перед многими проектами, и мы решили, что лучше с этим процессом не затягивать - пока все еще помнят, как все самописные вещи устроены и работают.</del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Процесс переезда на новые технологии занял более полугода, и в начале февраля мы сочли качество нового ABF достаточным для <ins class="diffchange diffchange-inline">«выхода </ins>в <ins class="diffchange diffchange-inline">свет» </ins>и представления широкой публике.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Процесс переезда на новые технологии занял более полугода, и в начале февраля мы сочли качество нового ABF достаточным для <del class="diffchange diffchange-inline">"выхода </del>в <del class="diffchange diffchange-inline">свет" </del>и представления широкой публике.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[[File:New ABF2.png|.png|640px|center]]</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[[File:New ABF2.png|.png|640px|center]]</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Визуальные изменения в интерфейсе серьезны, а глаз разработчиков за полгода общения с ним успел замылиться, поэтому новые идеи и комментарии от пользователей относительно внешнего вида <del class="diffchange diffchange-inline">приветсвуются</del>. <del class="diffchange diffchange-inline"> </del>Если у вас есть более-менее глобальные предложения, то лучше оформлять их в виде идей на страничке [https://abf.io/abf/abf-ideas/issues ABF Ideas], а сообщения о мелких недочетах лучше отправлять с помощью [https://abf.io/contact <del class="diffchange diffchange-inline">соответсвующей </del>формы] на сайте.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Визуальные изменения в интерфейсе серьезны, а глаз разработчиков за полгода общения с ним успел замылиться, поэтому новые идеи и комментарии от пользователей относительно внешнего вида <ins class="diffchange diffchange-inline">приветствуются</ins>. Если у вас есть более-менее глобальные предложения, то лучше оформлять их в виде идей на страничке [https://abf.io/abf/abf-ideas/issues ABF Ideas], а сообщения о мелких недочетах лучше отправлять с помощью [https://abf.io/contact <ins class="diffchange diffchange-inline">соответствующей </ins>формы] на сайте.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Помните, что визуальные изменения дизайна <del class="diffchange diffchange-inline">- </del>это только вершина айсберга, внутренности ABF также подверглись серьезной переработке. Несмотря на обилие внутренних тестов (мы придерживаемся принципов Behavior Driven Development и пишем тесты на RSpec), мы допускаем возможность наличия ряда ошибок и регрессий. К слову, за первый день эксплуатации нового ABF мы по запросам пользователей уже исправили проблемы с подключением контейнеров, пересозданием сборок, отправкой pull <del class="diffchange diffchange-inline">request'ов </del>через веб-интерфейс, автоматическим выбором целевых репозиториев в некоторых специфических случаях и несколько других проблем, не смертельных с точки зрения функционала разработки и сборки, но неудобных и неприятных с точки зрения пользователя Web-интерфйеса.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Помните, что визуальные изменения дизайна <ins class="diffchange diffchange-inline">— </ins>это только вершина айсберга, внутренности ABF также подверглись серьезной переработке. Несмотря на обилие внутренних тестов (мы придерживаемся принципов <ins class="diffchange diffchange-inline">''</ins>Behavior Driven Development<ins class="diffchange diffchange-inline">'' </ins>и пишем тесты на RSpec), мы допускаем возможность наличия ряда ошибок и регрессий. К слову, за первый день эксплуатации нового ABF мы по запросам пользователей уже исправили проблемы с подключением контейнеров, пересозданием сборок, отправкой pull <ins class="diffchange diffchange-inline">request’ов </ins>через веб-интерфейс, автоматическим выбором целевых репозиториев в некоторых специфических случаях и несколько других проблем, не смертельных с точки зрения функционала разработки и сборки, но неудобных и неприятных с точки зрения пользователя Web-интерфйеса.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Есть и несколько новых заметных изменений в новом интерфейсе ABF по сравнению с предыдущим:</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Есть и несколько новых заметных изменений в новом интерфейсе ABF по сравнению с предыдущим:</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* для времени и даты теперь предпочтительным является отображение абсолютного значения <del class="diffchange diffchange-inline">- </del>'''2014-06-10 14:02'''. Относительное значение отображается рядом, если позволяет место <del class="diffchange diffchange-inline">- </del>'''2014-06-10 14:02 (8 months ago)''';</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* для времени и даты теперь предпочтительным является отображение абсолютного значения <ins class="diffchange diffchange-inline">— </ins>'''2014-06-10 14:02'''. Относительное значение отображается рядом, если позволяет место <ins class="diffchange diffchange-inline">— </ins>'''2014-06-10 14:02 (8 months ago)''';</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* на странице Advisories появилась колонка с именем проекта <del class="diffchange diffchange-inline">- </del>очень полезно, <del class="diffchange diffchange-inline">т.к. </del>по тексту некоторых advisories сложно понять, к какому пакету/проекту они относятся;</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* на странице Advisories появилась колонка с именем проекта <ins class="diffchange diffchange-inline">— </ins>очень полезно, <ins class="diffchange diffchange-inline">так как </ins>по тексту некоторых advisories сложно понять, к какому пакету/проекту они относятся;</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>* если проект является форком другого, то это будет отображено в меню на странице проекта:</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>* если проект является форком другого, то это будет отображено в меню на странице проекта:</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[[File:New ABF parent project.png|.png|640px|center]]</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[[File:New ABF parent project.png|.png|640px|center]]</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>* если в строке браузера ввести ссылку на несуществующий проект, то отобразится страница '''404''', но содержимое строки адреса очищено не будет (как это было в старом ABF, когда в строке адреса вы получали '''http://abf.io/404.html'''). Так что если вы ошиблись парой символов, то исправить это можно гораздо проще;</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>* если в строке браузера ввести ссылку на несуществующий проект, то отобразится страница '''404''', но содержимое строки адреса очищено не будет (как это было в старом ABF, когда в строке адреса вы получали '''http://abf.io/404.html'''). Так что если вы ошиблись парой символов, то исправить это можно гораздо проще;</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* при создании новой сборки содержимое колонки <del class="diffchange diffchange-inline">"Build </del>for <del class="diffchange diffchange-inline">platform" </del>динамически изменяется в зависимости от того, что выбрано в поле <del class="diffchange diffchange-inline">"Save </del>to <del class="diffchange diffchange-inline">repository"</del>. Например, если мы собираем пакет для репозитория rosa2014.1/main, то ABF разрешит подключить только репозитории платформы rosa2014.1:</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* при создании новой сборки содержимое колонки <ins class="diffchange diffchange-inline">«Build </ins>for <ins class="diffchange diffchange-inline">platform» </ins>динамически изменяется в зависимости от того, что выбрано в поле <ins class="diffchange diffchange-inline">«Save </ins>to <ins class="diffchange diffchange-inline">repository»</ins>. Например, если мы собираем пакет для репозитория <ins class="diffchange diffchange-inline"><tt></ins>rosa2014.1/main<ins class="diffchange diffchange-inline"></tt></ins>, то ABF разрешит подключить только репозитории платформы <ins class="diffchange diffchange-inline"><tt></ins>rosa2014.1<ins class="diffchange diffchange-inline"></tt></ins>:</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[[File:New ABF new build.png|.png|640px|center]]</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[[File:New ABF new build.png|.png|640px|center]]</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Наконец, главное нововведение в новом ABF <del class="diffchange diffchange-inline">- </del>это проекты-алиасы (<del class="diffchange diffchange-inline">"aliases"</del>), имеющие общий Git-репозиторий. То есть теперь можно иметь два проекта <del class="diffchange diffchange-inline">'''</del>vanya/old_project<del class="diffchange diffchange-inline">''' </del>и <del class="diffchange diffchange-inline">'''</del>petya/new_project<del class="diffchange diffchange-inline">''' </del>с различными описаниями, владельцами, привязками к платформам/репозиториям и так далее, но с общим Git-репозиорием. Так что все изменения, которые происходят в коде проекта <del class="diffchange diffchange-inline">'''</del>vanya/old_project<del class="diffchange diffchange-inline">''' </del>автоматически попадают в код <del class="diffchange diffchange-inline">'''</del>petya/new_project<del class="diffchange diffchange-inline">'''</del>.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Наконец, главное нововведение в новом ABF <ins class="diffchange diffchange-inline">— </ins>это проекты-алиасы (<ins class="diffchange diffchange-inline">«aliases»</ins>), имеющие общий Git-репозиторий. То есть теперь можно иметь два проекта <ins class="diffchange diffchange-inline"><tt></ins>vanya/old_project<ins class="diffchange diffchange-inline"></tt> </ins>и <ins class="diffchange diffchange-inline"><tt></ins>petya/new_project<ins class="diffchange diffchange-inline"></tt> </ins>с различными описаниями, владельцами, привязками к платформам/репозиториям и так далее, но с общим Git-репозиорием. Так что все изменения, которые происходят в коде проекта <ins class="diffchange diffchange-inline"><tt></ins>vanya/old_project<ins class="diffchange diffchange-inline"></tt> </ins>автоматически попадают в код <ins class="diffchange diffchange-inline"><tt></ins>petya/new_project<ins class="diffchange diffchange-inline"></tt></ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Создать проект-алиас можно нажав на кнопку <del class="diffchange diffchange-inline">"Fork" </del>и выбрав <del class="diffchange diffchange-inline">соответсвующую </del>опцию <del class="diffchange diffchange-inline">- </del>если у вас достаточно прав, но вам предоставят на выбор возможность склонировать проект либо сделать ему алиас. Однако помните, что для создания алиаса необходимо иметь права не только на создание проектов в целевой группе, но и иметь права администратора в группе, к которой принадлежит исходный проект. Посмотреть список алиасов проекта можно на странице его свойств. При удалении одного из алиасов Git-репозиторий не удаляется, пока есть хотя бы один привязанный к нему проект.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Создать проект-алиас можно нажав на кнопку <ins class="diffchange diffchange-inline">«Fork» </ins>и выбрав <ins class="diffchange diffchange-inline">соответствующую </ins>опцию <ins class="diffchange diffchange-inline">— </ins>если у вас достаточно прав, но вам предоставят на выбор возможность склонировать проект либо сделать ему алиас. Однако помните, что для создания алиаса необходимо иметь права не только на создание проектов в целевой группе, но и иметь права администратора в группе, к которой принадлежит исходный проект. Посмотреть список алиасов проекта можно на странице его свойств. При удалении одного из алиасов Git-репозиторий не удаляется, пока есть хотя бы один привязанный к нему проект.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Пользоваться этой новой возможностью надо с аккуратностью <del class="diffchange diffchange-inline">- </del>ведь если забыть о существовании алиаса, то можно невзначай навредить соседнему проекту. Впрочем, предназначен новый функционал в первую очередь для разработчиков дистрибутивов (у которых порой возникает необходимость автоматически синхронизировать изменения в сотнях и даже тысячах проектов из <del class="diffchange diffchange-inline">разнгых </del>платформ), и большинству пользователей вряд ли пригодится.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Пользоваться этой новой возможностью надо с аккуратностью <ins class="diffchange diffchange-inline">— </ins>ведь если забыть о существовании алиаса, то можно невзначай навредить соседнему проекту. Впрочем, предназначен новый функционал в первую очередь для разработчиков дистрибутивов (у которых порой возникает необходимость автоматически синхронизировать изменения в сотнях и даже тысячах проектов из <ins class="diffchange diffchange-inline">разных </ins>платформ), и большинству пользователей вряд ли пригодится.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><poll>  </div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><poll></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>ALTERNATIVE</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>ALTERNATIVE</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>OPEN_RESULTS</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>OPEN_RESULTS</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>UNSAFE_ID=good-news-<del class="diffchange diffchange-inline">2013</del>-<del class="diffchange diffchange-inline">09</del>-<del class="diffchange diffchange-inline">30</del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>UNSAFE_ID=good-news-<ins class="diffchange diffchange-inline">abf</ins>-<ins class="diffchange diffchange-inline">2015</ins>-<ins class="diffchange diffchange-inline">03-03</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Надеюсь, эта новость вас…</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Надеюсь, эта новость вас…</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Ввела в экстаз <tt>^_^</tt></div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Ввела в экстаз <tt>^_^</tt></div></td></tr>
</table>Stanislav.fominhttp://wiki.rosalab.com/ru/index.php?title=%D0%91%D0%BB%D0%BE%D0%B3:%D0%A2%D0%BE%D1%87%D0%BA%D0%B0_%D0%A0%D0%BE%D1%81%D1%8B/ABF_-_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B1%D1%8D%D0%BA%D0%B5%D0%BD%D0%B4,_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B4%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD_%D0%B8_%D0%BD%D0%BE%D0%B2%D1%8B%D0%B5_%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8&diff=12612&oldid=prevDenis.silakov: Created page with "<!-- Смело пишите здесь свою заметку. Можно использовать все возможности вики, включать картинки ..."2015-02-05T12:18:03Z<p>Created page with "<!-- Смело пишите здесь свою заметку. Можно использовать все возможности вики, включать картинки ..."</p>
<p><b>Новая страница</b></p><div><!-- Смело пишите здесь свою заметку. Можно использовать все возможности вики, включать картинки и другие статьи — все они автоматически отреплицируются наружу --><br />
<br />
Как наверняка заметили пользователи ABF, у нашей системы сборки недавно сильно изменился внешний вид. Но вряд ли многие догадываются, что изменение дизайна - это не самоцель, а следствие серьезных изменений в структуре бэкенда ABF.<br />
<br />
В частности, ABF теперь использует популярные фреймворки [http://getbootstrap.com/ Bootstrap 3] и [https://angularjs.org/ AngularJS]. Переход на них был продиктован отнюдь не данью моде, а необходимостью избавиться от самописных наработок, перенеся тем самым ряд задач с разработчиков ABF на разработчиков фреймворков и позволив первым больше внимания уделять функционалу, связанному с непосредственными обязанностями ABF - разработкой и сборкой проектов под Linux. Подобная необходимость замены собственных велосипедов на стандартные решения рано или поздно встает перед многими проектами, и мы решили, что лучше с этим процессом не затягивать - пока все еще помнят, как все самописные вещи устроены и работают.<br />
<br />
Процесс переезда на новые технологии занял более полугода, и в начале февраля мы сочли качество нового ABF достаточным для "выхода в свет" и представления широкой публике.<br />
<br />
[[File:New ABF2.png|.png|640px|center]]<br />
<br />
Визуальные изменения в интерфейсе серьезны, а глаз разработчиков за полгода общения с ним успел замылиться, поэтому новые идеи и комментарии от пользователей относительно внешнего вида приветсвуются. Если у вас есть более-менее глобальные предложения, то лучше оформлять их в виде идей на страничке [https://abf.io/abf/abf-ideas/issues ABF Ideas], а сообщения о мелких недочетах лучше отправлять с помощью [https://abf.io/contact соответсвующей формы] на сайте.<br />
<br />
Помните, что визуальные изменения дизайна - это только вершина айсберга, внутренности ABF также подверглись серьезной переработке. Несмотря на обилие внутренних тестов (мы придерживаемся принципов Behavior Driven Development и пишем тесты на RSpec), мы допускаем возможность наличия ряда ошибок и регрессий. К слову, за первый день эксплуатации нового ABF мы по запросам пользователей уже исправили проблемы с подключением контейнеров, пересозданием сборок, отправкой pull request'ов через веб-интерфейс, автоматическим выбором целевых репозиториев в некоторых специфических случаях и несколько других проблем, не смертельных с точки зрения функционала разработки и сборки, но неудобных и неприятных с точки зрения пользователя Web-интерфйеса.<br />
<br />
<br />
Есть и несколько новых заметных изменений в новом интерфейсе ABF по сравнению с предыдущим:<br />
* для времени и даты теперь предпочтительным является отображение абсолютного значения - '''2014-06-10 14:02'''. Относительное значение отображается рядом, если позволяет место - '''2014-06-10 14:02 (8 months ago)''';<br />
* на странице Advisories появилась колонка с именем проекта - очень полезно, т.к. по тексту некоторых advisories сложно понять, к какому пакету/проекту они относятся;<br />
* если проект является форком другого, то это будет отображено в меню на странице проекта:<br />
[[File:New ABF parent project.png|.png|640px|center]]<br />
* если в строке браузера ввести ссылку на несуществующий проект, то отобразится страница '''404''', но содержимое строки адреса очищено не будет (как это было в старом ABF, когда в строке адреса вы получали '''http://abf.io/404.html'''). Так что если вы ошиблись парой символов, то исправить это можно гораздо проще;<br />
* при создании новой сборки содержимое колонки "Build for platform" динамически изменяется в зависимости от того, что выбрано в поле "Save to repository". Например, если мы собираем пакет для репозитория rosa2014.1/main, то ABF разрешит подключить только репозитории платформы rosa2014.1:<br />
<br />
[[File:New ABF new build.png|.png|640px|center]]<br />
<br />
Наконец, главное нововведение в новом ABF - это проекты-алиасы ("aliases"), имеющие общий Git-репозиторий. То есть теперь можно иметь два проекта '''vanya/old_project''' и '''petya/new_project''' с различными описаниями, владельцами, привязками к платформам/репозиториям и так далее, но с общим Git-репозиорием. Так что все изменения, которые происходят в коде проекта '''vanya/old_project''' автоматически попадают в код '''petya/new_project'''.<br />
<br />
Создать проект-алиас можно нажав на кнопку "Fork" и выбрав соответсвующую опцию - если у вас достаточно прав, но вам предоставят на выбор возможность склонировать проект либо сделать ему алиас. Однако помните, что для создания алиаса необходимо иметь права не только на создание проектов в целевой группе, но и иметь права администратора в группе, к которой принадлежит исходный проект. Посмотреть список алиасов проекта можно на странице его свойств. При удалении одного из алиасов Git-репозиторий не удаляется, пока есть хотя бы один привязанный к нему проект.<br />
<br />
Пользоваться этой новой возможностью надо с аккуратностью - ведь если забыть о существовании алиаса, то можно невзначай навредить соседнему проекту. Впрочем, предназначен новый функционал в первую очередь для разработчиков дистрибутивов (у которых порой возникает необходимость автоматически синхронизировать изменения в сотнях и даже тысячах проектов из разнгых платформ), и большинству пользователей вряд ли пригодится.<br />
<br />
<poll> <br />
ALTERNATIVE<br />
OPEN_RESULTS<br />
UNSAFE_ID=good-news-2013-09-30<br />
Надеюсь, эта новость вас…<br />
Ввела в экстаз <tt>^_^</tt><br />
Порадовала <tt>:)</tt><br />
Оставила равнодушным <tt>-_-</tt><br />
Огорчила <tt>:(</tt><br />
</poll><br />
<br />
[[Category:ToROSAPoint]]<br />
{{wl-publish: 2015-02-05 16:18:03 +0400 | Denis.silakov }}</div>Denis.silakov