Forums / National / Russian / Идеи / Админка: переустановка / обновление плагинов (реализовано).

возможность переустановить плагин в один клик и прочее...

Trustmaster
#32944 2012-01-26 13:42

На сколько понимаю просто сбрасывает настройки плагина к настройкам по умолчанию. Почему ее перевели как "Обновить" не понятно.

Совершенно неверно. Кнопка "Обновить" делает следующее:

  1. Вычисляет разницу между установленной в базе версией плагина и версией setup-файла.
  2. Удаляет текущие хукочасти плагина и устанавливает все заново. Это нужно, если в плагине появились новые части или если старые были удалены / изменилась мета-информация (например, используемые хуки).
  3. Обновляет конфигурацию. Добавляет новые опции, если таковые появились. Удаляет опции, которые были удалены из плагина. Изменяет и сбрасывает те опции, для которых изменился тип. Остальные опции оставляет неизменными.
  4. То же самое производит с конфигурацией структуры.
  5. Обновляет маски Auth/lock для members и guests.
  6. Выполняет PHP и SQL патчи из папки setup последовательно, исходя из различий установленной и новой версии.
  7. Обновляет версию плагина в базе и очищает кеш.

Добавлено 9 минут спустя:

По поводу предложений.

1. Это не нужно. Это не genoa и переустанавливать каждый раз не надо. Кнопка Update применяет разность между релизами, а не сносит всё и ставит заново. Для более тонких вещей, помимо конфигурации, хуков и авторизации, учитесь писать SQL и PHP патчи для перехода к новым версиям без потери данных. Примеров в стандартных модулях и плагинах предостаточно.

2. Речь идёт полном контроле версий для каждого файла или о контроле версий для расширений целиком? Если второе, то это уже работает. Просто нужно добавить отображение обеих версий (установленная и текущая) и уведомление об обновлении в админке.

3. См. пункт первый и объяснение работы обновления выше.

 

Думаю в виду планов сделать некий общий репозиторий модулей, есть смысл обсудить и проработать механизм "удобной" установки / управления модулями. 

В идеале некая система типа пакетов в *nix системах, когда каждый пакет имеет версию и зависимости от других.

Скачивание и установка расширений прямо из админки планируется уже давно. Трудно точно сказать, когда, но будет.

Каждое расширение уже с первых релизов Сиены имеет версию и зависимости от других. Работает это не так удобно, как менеджеры пакетов в *nix системах, но постепенно идёт к этому.

Добавлено 2 минуты спустя:

См. "Примечание для разработчиков расширений" здесь.

May the Source be with you!
This post was edited by Trustmaster (2012-01-26 13:55, 12 years ago)