OutWiker 3.2.0.922 beta

OutWiker 3.2.0.922 beta

Выложил новую бета-версию OutWiker под номером 3.2.0.922. Эта версия относится к тем версиям, когда мне пришлось с ней заметно повозиться, а вот с точки зрения пользователя не должно ничего поменяться. За эти два месяца работа шла в двух направлениях.



Во-первых, в первом приближении сформировался API для плагинов. Еще в записи о прошлой версии я писал, что раньше подразумевалось, что плагины могут использовать все модули и классы из внутренностей OutWiker, а потом все-таки решил выделить отдельный модуль с API, который должны использовать плагины и желательно, чтобы никуда кроме этого модуля они не лезли. Конечно, из-за особенностей Python невозможно им запретить трогать что-то еще, ограничить их можно только на уровне соглашений, но если плагины используют что-то, что для них не предназначено, и в очередной будущей версии OutWiker они сломались, то виноват в этом разработчик этого плагина (хе-хе, как будто сейчас кто-то кроме меня пишет плагины :)). На данный момент элементы API специально подобраны так, чтобы покрыть все потребности имеющихся плагинов, и все плагины переписаны под использование этого API. На самом деле пришлось повозиться, чтобы сделать API более-менее логичным и не очень низкоуровневым. Сейчас код написан так, чтобы старые версии плагинов продолжали работать, а вот уже после релиза OutWiker 3.2 можно будет подумать о том, чтобы провести еще один большой рефакторинг и еще раз перестроить структуру модулей внутри OutWiker, что сломает совместимость со старыми версиями плагинов (но не теми, что перешли на новый API). На самом деле первые шаги для такого рефакторинга я уже начал делать, но только в той мере, что не ломает обратную совместимость.

Второе направление, с которым я возился, связано с деплоем OutWiker на сайт. Сейчас все страницы плагинов и страница с информацией о текущей версии OutWiker формируются с помощью скриптов, которые берут информацию из списков изменений по каждому плагину. Эти списки сохранены в отдельных файлах. Но после выхода новой версии мне приходилось вручную через веб-интерфейс вставлять новые версии страниц сайта, а это долго и меторно, особенно, когда обновляется большое количество страниц плагинов (как сейчас). В свое время я специально выбирал движок для сайта, который хранит страницы в файлах, а не в БД, чтобы можно было бы скриптами закачивать новые версии страниц. До сих пор я этим практически не пользовался, и вот теперь эта особенность пригодилась. Пришлось немного поразбираться в формате хранения страниц движком, но там оказалось все достаточно просто, и теперь при выкладывании новой версии новые версии страниц автоматически загружаются на сайт. Из технических особенностей здесь можно отметить лишь то, что на самом деле перед выкладыванием новой версии страницы, сначала скачивается через SSH старая версия страницы, берется оттуда разная метаинформация и подставляется в новую версию страницы, а потом файл снова закачивается через SSH. Не очень интеллектуально, но работает.

Пожалуй, на этом все. Как обычно, скачать новую версию OutWiker можете на этой странице. Лучше скачивайте версию сразу с плагинами, они уже адаптированы под новый API.

Подписывайтесь на OutWiker в социальных сетях:

PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.

Пожалуйста, оцените запись

УжасноПлохоТак себеХорошоОтлично (Количество голосов: 1, средняя оценка: 5,00)
Загрузка...

Leave a comment

Subscribe without commenting