Firefox 64 для разработчиков

В этой статье перечислены ключевые изменения, которые касаются разработчиков. Firefox 64 был выпущен 11 декабря 2018 года.

Изменения для веб-разработчиков

Инструменты разработчика

Удалено

  • Окончательно удалена панель разработчика (GCLI) (Firefox bug 1429421). Её интерфейс был удалён в Firefox 62, а теперь удалён и оставшийся код.

HTML

Без изменений.

CSS

Удалено

SVG

Без изменений.

JavaScript

API

DOM

Сервис-воркеры

Media, Web Audio и WebRTC

Удалено

  • Свойство Window.event, добавленное в Firefox 63 для разрешения проблем веб-совместимости, скрыто за отключённой в релизных версиях настройкой dom.window.event.enabled, поскольку вскрылись иные затруднения (Firefox bug 1493869). На самом деле, это было сделано в одном из минорных обновлений Firefox 63, мы просто обращаем на это ваше внимание.
  • Удалён интерфейс LocalMediaStream и его метод stop() (Firefox bug 1258143). См. Stopping a video stream, чтобы узнать, как остановить поток целиком.
  • Удалены интерфейсы AudioStreamTrack и VideoStreamTrack, поскольку они уже некоторое время объявлены устаревшими (Firefox bug 1377146). Их функции перенесены в MediaStreamTrack; дорожки отныне идентифицируются по значению свойств kind, таких, как audio или video.

Безопасность

  • Прекращено доверие сертификатам, выданным удостоверяющими центрами Symantec (см. Firefox bug 1409257; также см. подробности в обсуждении Mozilla's Plan for Symantec Roots).
  • Теперь можно использовать Referrer-Policy для управления ресурсами, полученными через таблицы стилей (Firefox bug 1330487) — см. Integration with CSS для получения подробных сведений.

Плагины

Без изменений.

WebDriver (Marionette)

Изменения API

  • Удалены устаревшие конечные точки без префикса Marionette:, L10n: или Addon: (включая singeTap) (Firefox bug 1504478, Firefox bug 1504940).

Исправленные ошибки

  • Синтезированные события Shift с использованием WebDriver:PerformActions не создавали заглавные буквы (Firefox bug 1405370).
  • WebDriver:Navigate мог вызвать бесконечное зависание, если низлежащий процесс контента вкладки менялся много раз во время навигации (Firefox bug 1504807).
  • Для улучшения производительности и сокращения количества потребляемой памяти страница, в новой вкладке или окне будет загружаться не about:newtab, а about:blank (Firefox bug 1506643).
  • Отключено по умолчанию предложение использовать панель блокировки контента, показ которого препятствует взаимодействию с элементами интерфейса (Firefox bug 1488826).

Изменения для разработчиков дополнений

Изменения API

Меню

  • Добавлен новый API browser.menus.overrideContext(), который может быть вызван из события DOM contextmenu и позволяет скрыть все пункты меню по умолчанию, чтобы создать собственное контекстное меню на страницах, относящихся к дополнению. Это контекстное меню может состоять из нескольких пунктов меню верхнего уровня дополнения и может включать элементы контекстного меню вкладок или закладок из других дополнений. См. блог для получения подробных сведений.

    • Реализован browser.menus.overrideContext() ((Firefox bug 1280347).
    • Реализована опция showDefaults: false, позволяющая скрывать из контекстного меню пункты по умолчанию (Firefox bug 1367160).
    • documentURLPatterns теперь может соответствовать адресу moz-extension://, даже если используется browser.menus.overrideContext(). Таким образом, он может надёжно ограничивать пользовательские пункты меню для определённых документов (Firefox bug 1498896).
  • С помощью нового свойства viewTypes в menus.create() и menus.update() можно ограничить места появления контекстного меню в дополнении (Firefox bug 1416839).

  • menus.update() теперь позволяет обновить значок существующего пункта меню (Firefox bug 1414566).

  • С помощью нового свойства button menus.OnClickData дополнения могут определять, какая кнопка мыши использована для выбора пункта меню (Firefox bug 1469148).

Окна

  • Метод windows.create() обзавёлся опцией cookieStoreId, которая определяет CookieStoreId для всех вкладок, созданных при открытии окна (Firefox bug 1393570).

Конфиденциальность

  • Свойство cookieConfig privacy.websites — это объект, который может принимать свойство behavior. Это свойство теперь может, в свою очередь, принимать новое значение — reject_trackers, которое указывает дополнению отвергать куки, связанными с отслеживанием (Firefox bug 1493057).

API devtools.panels

Изменения манифеста

  • Новое свойство pinned ключа манифеста page_action позволяет дополнениям управлять тем, должны ли при установке их действия на странице быть прикреплены к адресной строке или нет (Firefox bug 1494135).
  • В Windows наличие ключей NativeMessagingHosts сначала будет проверяться в 32-разрядном представлении реестра (Wow6432Node)); следует использовать то, что подходит для вашего приложения (Firefox bug 1494709).
  • Объект search_provider поля chrome_settings_overrides отныне может включать новые свойства — suggest_url, suggest_url_post_params (Firefox bug 1486819) и search_url_post_params.

Предыдущие версии