Alterator/releases/platform13
Platform 1.3
Текущий статус: завершено
Завершение: 21 октября
Изменения
- Ядро (alterator)
- Новый сервис alteratord. Выделена в отдельный провесс часть alterator, занимающая обслуживанием запросов к бакендам. alterator-fbi и alterator-standalone работают с alteratord, сами они теперь содержат только ту часть кода которая занимается интерфейсом. alterator-wizardface (инсталлятор) работает по старой схеме поскольку модуль alterator-vm не готов к работе через alteratord.
- Старая система constraints, заменена типами. Теперь у данных с которыми оперируют бакенды есть типы и они автоматически проверяются в alteratord на корректность. Все модули которые использовали constraints переписаны на новую систему. Имеется набор стандартных типов. Система расширяемая (через модули guile). Во всех интерфейсах ошибки о типах автоматически "связываются" с метками соответствующих полей.
- Из ядра убран backend3.sh, предтеча alterator-sh-functions.
- Переделана система нативных бакендов (backend2). Теперь каждый нативный бакенд - модуль guile.
- В режиме отладки автоматически экспортируется переменная ALTERATOR_DEBUG и тем самым активизируются функции write_debug из alterator-sh-functions.
- alterator-autoinstall вошёл в состав alterator.
- Переписана поддержка gettext (код стал переносимым на разные платформы)
- В сборочной системе появилось новое правило "verify-module". При помощи него можно проверить свой модуль на наличие устаревших конструкций.
- Также в сборочную систему добавлена возможность автоматически "забирать" файлы справки из alterator-l10n.
- Интерфейс (qt):
- Все вызовы woo-catch/message рекомендуется заменить на catch/message. В последнем есть поддержка types (связывание ошибок с метками соответствующих полей).
- Появилась предварительная версия библиотеки высокоуровневых функций для работы с формами. Например form-read/message - автоматическое заполнение формы, form-write/message - автоматическое "считывание" параметров формы и отсылка информации бакенду. Пример работы с функциями можно посмотреть в модулях alterator-sysconfig (настройка proxy), alterator-datetime и alterator-xinetd. API библиотеки может ещё меняться.
- Функции для работы с эффектами, объявления атрибутов и виджетов вынесены из /std/base и оформлены как библиотеки guile, убраны дублирующие функции.
- Интерфейс (html):
- Объединились три пакета: ahttpd, alterator-fbi и alterator-ahttpd.
- Убран сервис configd. Вместо этого теперь используется единый сервис alteratord, а вся логика работы с интерфейсом переместилась в ahttpd.
- Во все стандартные workflow добавлена поддержка ошибок о типах.
- Убрана поддержку local:a, /html/help, html/styles.
- Тестирование:
- В alterator-sh-functions появилась библиотека alterator-unit-test-functions. В её составе есть ряд функций облегчающих тестирование бакендов, например стандартный тест на проверку корректности посылки enum.
- Добавлены юнит-тесты в С библиотеку vhttpd.
- Добавлены юнит-тесты на все стандартные типы в alterator.
- Добавлены юнит-тесты в два новых модуля (alterator-alternatives, alterator-squid).
- Обновлены существующие юнит-тесты (alterator-postfix-restrictions, alterator-control).
- alterator-qa - инфраструктура для проверки состояния модулей. Модули проверяются на устаревшие конструкции, проверяются юнит-тесты, отчёты выводятся на экран.
- Переписанные модули:
- alterator-samba
- alterator-squid
- alterator-postfix-restrictions (объединён с alterator-postfix-sasl)
- alterator-dhcp
- alterator-proxy (стал частью alterator-sysconfig)
- Новые (в том числе восстановленные) модули:
- alterator-mirror - создание и обслуживание локальных зеркал репозитариев.
- alterator-nut - управление ИБП.