Последняя, двадцать первая, альфа сборка Miranda IM знаменовалась появлением встроенного в ядро XML парсерa. До этого каждый плагин, зачастую, использовал свой парсер. Так, к примеру, в плагине протокола MSN был встроен XML парсер ezXML, в плагине протокола Jabber был встроен свой парсер, ну а плагин Variables, кажется, использовал парсер Libxml.
Наличие кучи различных парсеров, с различным API, нужда в парсере во многих плагинах и вызвала появление XML парсера непосредственно в ядре Miranda IM. Необходимость в этом парсере была понятна давно, но требовалось выбрать либо готовый парсер с GNU/GPL совместимой лицензией, либо написать его с нуля. Так же проблемой стало то, что ядро Miranda IM было написано на С, и поиск парсера написаного на С был более сложным.
Долгие поиски подходяшего парсера, и неторопливость, в виду не критичной необходимости, растянула процесс на долгие месяцы. Наконец, 31 июля 2008 года, был сделан первый шаг. Ядро было переведено на С++ и был выбран парсер. Основой для парсера стала разработка др. Франка Вандер Бергена. Это лёгкий, быстрый парсер написанный на C++. Однако после интеграции этого парсера в ядро, над ним была проведена громадная работа. Было создано API для работы с парсером плагинами, а так же были внесены некоторые изменения в сам парсер.
Читать дальше »