Mozilla прекращает поддержку встраивания web-движка Gecko в другие приложения

Один из авторов модуля по внедрению движка рендеринга HTML Mozilla Gecko объявил в списке рассылки mozilla.dev.embedding о том, что развитие и поддержка возможности встраивания web-движка Gecko в сторонние приложения полностью прекращается. Ранее существовало несколько способов бинарного (в качестве библиотеки) встраивания Gecko: gtkmozembed, javaxpcom, компонент ActiveX и виджет NSView.

Поводом для данного события послужили следующие факты и выводы:

  • Встраивание Gecko в другие программы всегда являлось достаточно трудной задачей. Кроме этого, разработчики Mozilla никогда полностью не могли до конца решить эту проблему, поэтому программистам каждого приложения, которое пользовалось Gecko, приходилось тратить много времени, пытаясь приладить движок.
  • Web-браузер Firefox является ключевым продуктом проекта Mozilla, а усилия по поддержке Gecko как встраиваемой библиотеки отнимают у компании ресурсы и время;
  • Для работы Gecko в других приложениях разработчикам Mozilla приходится поддерживать набор API, а также обеспечивать бинарную совместимость, что сильно препятствует развитию Firefox;
  • В связи с тем, что разработка Firefox идёт в направлении приложения с множеством процессов, разработчики Mozilla видят встраиваемую версию Gecko совсем иначе, нежели та версия, которая сейчас существует: компания хочет, чтобы приложения, которые использует Gecko, просто превратились в контейнеры для отдельного процесса Mozilla Firefox.

Принимая во внимание вышеперечисленные факты, разработчики Mozilla приняли следующие решения:

  • Поддержка компонента gtkmozembed полностью прекращается, ибо он не обеспечивает полноценной поддержки множества технологий, без которых невозможно функционирование Firefox: профили, сертификаты, выплывающие запросы (например, о сохранении пароля).
  • Модуль javaxpcom полностью удаляется из исходного кода.
  • Удаляется поддержка компонента ActiveX и плагина, а также кода IDispatch, который обеспечивал взаимодействие ActiveX с объектной моделью web-браузера.

Тем не менее, в обращении было подчёркнуто, что если найдутся желающие поддерживать данную возможность, то компания может выделить для них отдельный репозиторий исходного кода. Сама же компания перестаёт заниматься и поддерживать эту возможность. В ближайшем будущем разработка Firefox будет сосредоточена на возможности рендеринга страниц в отдельном процессе, и когда этот процесс будет завершён, Mozilla рассмотрит возможность встраивания Gecko, используя новую парадигму.

В связи с данными изменениями остро стоит вопрос о судьбе множества приложений, которые использовали Gecko: Camino, Songbird, K-Meleon, DevHelp, Wine и Sugar. В качестве наиболее простого выхода из сложившейся ситуации некоторые разработчики сторонник проектов рассматривают возможность перехода на использование движка WebKit.

©  OpenNet