Чем отличаются версии друг от друга или политика версионирования Alto CMS

Т.к. несколько человек задали в личке похожие вопросы, то я решил объяснить несколько моментов связанных с номерами версий Alto CMS, почему они такие, чем отличаются друг от друга и как обновляться с одной версии на другую. Итак, сначала о том, какие версии бывают:
  • Мажорные — это когда меняется первое число в версии — 1.х, 2.х и т.д.
  • Минорные — 1.0.х, 1.1.х, ...
  • Фикс-версии — 1.0.7, 1.0.8, 1.0.9 и пр.
Фикс-версии — это, как правило, исправление всяческих ошибок и небольшие улучшения. Иногда фикс-версии могут быть и из четырех чисел (напр., 0.9.7.1) — это когда срочно исправляются какие-то ошибки (может быть исправлено всего одна строчка в коде движка). Когда выходит фикс-версия, то структура папок остается точно такой же, как и у предыдущей версии, а структура базы данных не меняется. Поэтому обновление движка вполне может быть выполнено просто копированием папок /engine/ и /common/ прямо поверх старых. Конечно, если вы строго следуете рекомендациям никогда не править конфиг-файлы прямо в папках плагинов.

Минорная версия — она отличается от фикс-версии тем, что, кроме значительных улучшений функционала, у нее (по сравнению с предыдущей минорной версией) может изменится структура папок и/или структура базы данных. Например, обновление с версии 0.9.х на 1.0, описываемый здесь, слегка заморочен, т.к. значительно изменилась структура папок.

Изменения структуры базы данных, как правило, записываются в виде SQL-команд в файлах в виде install/db/convert_AAA_to_BBB.sql, где AAA — это номер старой минорной версии, а BBB — номер новой минорной версии. Например:

install/db/convert_0.9.7_to_1.0.sqlобновление базы с 0.9.7 до 1.0
install/db/convert_1.0_to_1.1.sqlобновление базы с 1.0 до 1.1

Если вы переходите с одной минорной версии на другую (например, с 1.0 на 1.1) вручную, то вам обязательно нужно обновить структуру базы — найдите и выполните соответствующий SQL-скрипт в папке install/db/. Это можно сделать с помощью phpMyAdmin.

Мажорная версия — ... Ну, что тут сказать, новых мажорных версий у Alto CMS еще не было. Вот когда выйдет Alto CMS v.2.0 — тогда и поговорим о них :)

Похожие статьи

  • Как обновить сайт на Alto CMS 1.1.x
    Подготовка к обновлению Этот шаг не обязательный, но желательный, если вы его еще не делали — скопировать файлы конфигурации сайта и все файлы конфигурации всех плагинов и скинов в папку /app вашего сайта. Если вы...
  • Еще раз о политике версионирования и о поддержке разных версий
    Я уже частично затрагивал эту тему здесь. И сейчас хочу прояснить политику команды в отношении исправления ошибок и обновлений как самого движка, так и плагинов.
  • ВАЖНО: Критическое обновление
    В AltoCMS используется библиотека PHPMailer, в которой была обнаружена критическая уязвимость. В версии Альто 1.1.27 эта библиотека обновлена. Настоятельно рекомендуется обновить движок до версии 1.1.27! Или...
  • Версия 1.1.23 — небольшие исправления и чуть-чуть новенького
    Таки вышел релиз Alto CMS 1.1.23. Каких-то «прорывных» фишек в ней нет, она, главным образом, исправляет ряд обнаруженных ошибок и чуть-чуть добавляет некоторых новых возможностей для разработчиков. Вот список...

4 комментария

0
Спасибо!

А вот еще бы небольшой FAQ на предмет изменений по отношению к LS. Меня интересуют именно API сторона — разбираюсь как плагины писать. И все время разрываюсь — или под LS читать доки, или с Alto разбираться изначально. Вот и хотелось бы знать, какие ничтяки есть в альто и когда имеет смысл их использовать, а когда можно «сохранить совместимость с LS»… Под LS же модуля совместимости с плагинами от альты еще не изобрели? :)
0
Пишите под альто, для лс уже есть куча разработчиков. При том плагин совместимости конечно хорошо, но понятно что движки все больше имеют отличий между собой. А следовательно рано или поздно от него придется отказаться… Вроде бы для пользователя штука хорошая, я сам пользуюсь плагинами от лс, но для разработчика это как бы сколняет его не писать под альто, потому что сообщество лс вроде как больше, и вроде как есть этот плагин, если что пусть мол разработчики движка добиваются совместимости…
+1
Принцип организации плагинов что в LS, что в Alto одинаков. Но различия, конечно есть:
1) иная структура папок и шаблонов
2) вместо «блоков» используются виджеты.

Если про API (т.е. классы и их методы), то они во многом совпадают.

Подо что лучше писать — вопрос сложный. С одной стороны, под LS 1.x вроде как поздно, а под LS 2.0 — рано. С другой — я думаю, что немало ресурсов под LS 1.х еще долго будет оставаться, а, стало быть, расширения для них будут актуальны.

Если писать плагины под Alto, то под LS они работать почти наверняка не будут. А модуля совместимости Alto->LS точно не будет — нам не надо, разработчикам LS — тоже :)
+1
спасибо!

в общем то, склоняюсь больше к следованию все таки новому, вместо совместимости… использую 1.1 ветку.
но вот понимания отличий от ЛС нет… я и ЛС то не знаю еще, и в этом смысле было бы здорово чтобы у альты была самостоятельная документация, с развернутыми (даже) идеологическими выкладками… а так, разбираясь, так или иначе натыкаешься на ЛС — забыть бы про него уже тогда :)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.