Доступен выпуск Firefox 68.
Основные изменения:
- Полностью переписан код адресной строки — вместо XUL применяются HTML и JavaScript. Внешние различия между старой (Awesome Bar) и новой (Quantum Bar) строкой заключаются лишь в том, что концы строк, не вмещающиеся в адресную строку, теперь затухают вместо обрезания (…), а для удаления записей из истории вместо Delete/Backspace нужно использовать Shift+Delete/Shift+Backspace. Новая адресная строка работает быстрее и позволяет расширять свои возможности с помощью дополнений.
- Страница управления дополнениями (about:addons) тоже была полностью переписана на Web API. Кнопки удаления/отключения переехали в меню. В свойствах дополнений можно увидеть запрашиваемые разрешения и примечания к выпуску. Добавлен отдельный раздел для отключённых дополнений (раньше они просто помещались в конец списка), а также раздел с рекомендуемыми дополнениями (каждая версия проходит тщательную проверку безопасности). Появилась возможность пожаловаться на вредоносное или слишком медленное дополнение.
- Код, отвечающий за восстановление предыдущего сеанса, переписан с JS на C++.
- Добавлена страница about:compat, где можно управлять «исправлениями», специфичными для конкретных сайтов. Это временные исправления для некорректно работающих сайтов (например, смена юзерагента или запуск скриптов, исправляющих работу в Firefox). about:compat упрощает просмотр активных исправлений и позволяет веб-разработчикам отключать их в целях тестирования.
- Доступ к настройкам синхронизации возможен прямо из главного меню.
- Тёмная тема в режиме чтения применяется не только к содержимому страницы, но и к интерфейсу (тулбарам, боковым панелям, элементам управления).
- Firefox будет пытаться автоматически исправлять ошибки HTTPS, вызванные сторонним антивирусным ПО. Firefox исторически использует собственное хранилище сертификатов вместо системного, что положительно отражается на безопасности, но требует от антивирусного ПО импортировать свой корневой сертификат в хранилище браузера, чем некоторые производители пренебрегают. Если браузер обнаруживает MitM-атаку (которая может быть вызвана антивирусом, пытающимся расшифровать и проверить трафик), то автоматически включит настройку security.enterprise_roots.enabled и попытается использовать сертификаты из системного хранилища (используются лишь сертификаты, добавленные туда сторонним ПО, сертификаты, поставляемые вместе с ОС, игнорируются). Если это помогло, то настройка останется включённой. Если пользователь явным образом отключит security.enterprise_roots.enabled, то браузер не будет предпринимать попытки её включить. В новом выпуске ESR эта настройка включена по умолчанию. Кроме того, в область уведомлений (слева от адресной строки) добавлен значок, свидетельствующий о том, что просматриваемый сайт использует сертификат, импортированный из системного хранилища. Разработчики отмечают, что использование системных сертификатов не влияет на безопасность (используются лишь сертификаты, добавленные в число системных сторонним ПО, а раз стороннее ПО получило право их туда добавить, то оно с тем же успехом могло бы добавить их и в хранилище Firefox).
- Запросы на разрешение пуш-уведомлений не будут показываться, пока пользователь явно не провзаимодействует со страницей.
- Доступ к камере и микрофону отныне может осуществляться только из безопасного контекста (т.е. со страниц, загруженных по протоколу HTTPS).
- Спустя 2 года, в стоп-лист (список символов, которые недопустимы в именах доменов) добавлен символ Κʻ / ĸ (U+0138, *Kra*). В прописном варианте он выглядит как латинская “k” или кирилистическая “к”, что могло сыграть на руку фишерам. Всё это время разработчики пытались решить вопрос через технический комитет Unicode (добавить этот символ в категорию «исторических»), но те, при выпуске очередной редакции стандарта, об этом забыли.
- В официальных сборках больше нельзя отключить многопроцессный режим. Однопроцессный режим (при котором интерфейс браузера и содержимое вкладок выполняются в одном процессе) менее безопасен и не тестируется в полном объёме, что может повлечь проблемы со стабильностью. Для любителей однопроцессного режима предусмотрены обходные пути.
- Изменено поведение при синхронизации настроек. Отныне по умолчанию синхронизируются лишь настройки, входящие в определённый разработчиками список. Вернуть прежнее поведение (синхронизировать абсолютно все изменённые настройки) можно через about:config.
- Реализованы следующие CSS-свойства: scroll-padding, scroll-margin, scroll-snap-align, counter-set, -webkit-line-clamp.
- Добавлена поддержка псевдоэлемента ::marker и его анимации.
- Включена по умолчанию поддержка примитива BigInt.
- window.open() теперь учитывает переданный параметр «noreferrer».
- Добавлена поддержка HTMLImageElement.decode() (загрузка изображений до их добавления в DOM).
- Множество улучшений в инструментах разработчиков.
- Локализации bn-BD и bn-IN объединены в бенгальскую (bn).
- Удалены локализации, оставшиеся без мейнтейнеров: ассамский (as), южноафриканский диалект английского (en-ZA), майтхили (mai), малаялам (ml), ория (or). Пользователи этих языков будут автоматически переключены на британский диалект английского (en-GB).
- API WebExtensions обзавёлся средствами для работы с юзерскриптами. Это потенциально может решить проблемы с безопасностью (в отличие от Greasemonkey/Violentmonkey/Tampermonkey каждый скрипт выполняется в собственной песочнице) и стабильностью (исключается гонка между загрузкой страницы и вставкой скрипта), а также позволяет выполнить скрипт на желаемой стадии загрузки страницы.
- Возвращена настройка view_source.tab, позволяющая открывать исходный код страницы в той же вкладке, а не в новой.
- Тёмная тема теперь может быть применена к служебным страницам браузера (например, странице настроек), за это отвечает настройка browser.in-content.dark-mode.
- На устройствах под управлением Windows 10 с видеокартами AMD включена поддержка WebRender.
- При новой установке в Windows 10 будет добавлен ярлык на панель задач.
- Windows-версия отныне использует службу фоновой интеллектуальной передачи (BITS).
Примечания к выпуску для разработчиков
Источник: linux.org.ru