WebKitGTK 2.5.1 стал первой версией нового цикла разработки. Релиз WebKitGTK 2.5.1 стал доступным поздже планируемых сроков из за проблем, связанных с переходом на CMake. Новая версия включает в себя несколько интересных функций, которые ранее не были доступными. Разработчики сообщили что полностью прекращают поддерживать совместимость с WebKit1.
С момента выхода WebKitGTK + 2.0 API сохранялась опциональная возможность использовать WebKit1, что требовало от разработчиков значительных усилий и сильно тормозило развитие проекта. В связи с этим было принято решение оставить WebKit1 в пределах ветки 2.4. На данный момент WebKitGTK+ 2.6 является стабильным и отказ в новой ветке от WebKit1 не будет столь болезненным.
Особенности выпуска WebKitGTK 2.5.1
В связи с изменениями в API разработчики приняли решение выпустить бинарную версию WebKit, чтобы пользователям не пришлось все перекомпилировать. Это еще одна причина, по которой затянулся выход движка. Новая бинарная версия - 4.0, так что для использования нового релиза вам придется обновить систему, чтобы поддерживалось использование файла конфигурации webkit2gtk-4.0.
Еще одна проблема, которая тормозила выход проекта, была связана с GObject DOM bindings API. С момента выхода WebKitGTK+ 2.5.1, GObject DOM bindings API разбито на стабильную и не стабильную части. Стабильная часть содержит более общие и часто используемые API, которые не нуждаются в изменении. Остальное будет считаться не стабильным и в случае необходимости вы можете использовать эту часть на свой страх и риск.
Разработчики считают, что такое решение намного лучше, чем просто удаление нестабильной части.
В WebKit2 GTK+ произошел ряд изменений, включая удаление WebKitWebViewGroup. Этот класс был введен только для того, чтобы добавлять пользовательские таблицы стилей. Но вскоре группировка страниц в WebKit2 будет упразднена. Пользовательские стили были перемещены в новый класс WebKitUserContentManager, благодаря чему будут поддерживаться еще и скрипты. Вот пример использования пользовательских таблиц стилей до и после:
Настройка до сих пор будет осуществляться при помощи WebKitWebView API.
Не забывайте, что с версии 2.5.1 WebKitGTK+ использует CMake, поэтому установка будет происходить несколько иначе.