Firefox 78
Доступен Firefox 78.
- В диалоговое окно загрузки PDF-файлов добавлен пункт «Открыть в Firefox».
- Добавлена возможность отключить показ топа сайтов при щелчке по адресной строке (
browser.urlbar.suggest.topsites
). - Пункты меню «Закрыть вкладки справа» и «Закрыть другие вкладки» перемещены в отдельное подменю. Если пользователь закрыл несколько вкладок разом (например, с помощью «Закрыть другие вкладки»), то пункт меню «Восстановить закрытую вкладку» восстановит их все, а не только одну. До этого пользователям, случайно закрывшим кучу вкладок, приходилось восстанавливать их по одной.
- Переработан внешний вид режима чтения. Боковая панель заменена на компактный плавающий тулбар, дизайн которого лучше вписывается в интерфейс браузера.
- Firefox предотвратит запуск экранной заставки, если в этот момент осуществляется звонок через WebRTC.
- Решена давняя проблема, возникающая когда пользователь пытается вставить длинный текст (например, пароль, сгенерированный менеджером паролей) в поле, имеющее ограниченную длину (maxlength). Предыдущие версии Firefox молча обрезали пароль до указанной длины, что при регистрации приводило к отправке на сервер «урезанного» пароля, в то время, как пользователь был уверен, что его пароль имеет большую длину. Разумеется, в дальнейшем пользователь не мог залогиниться с длинным паролем. Теперь Firefox будет визуально выделять поле, куда вставлен чрезмерно длинный текст, и предупреждать пользователя о том, что тот должен ввести более короткую строку.
- При наборе текста в адресной строке, кроме предложений от поискового движка будут также предлагаться прошлые поисковые запросы (
browser.urlbar.maxHistoricalSearchSuggestions
). Например, если пользователь ранее искал через адресную строку «привет медвед», то при наборе слова «привет» ему будет предложено поискать «привет медвед»). - Если пользователь вставил в адресную строку домен без указания протокола, Firefox попытается подключиться к нему не только по HTTP, как прежде, но и по HTTPS (на случай, если сервер не поддерживает HTTP).
- Адреса, оканчивающиеся на .example, .internal, .invalid, .local, .localhost, , test, больше не вызывают переход в поисковик, вместо этого браузер попытается их открыть (эти суффиксы часто используются при разработке).
- Безопасность и приватность:
- На страницу about: protections добавлены сведения о том, сколько засвеченных в утечках паролей пользователь сменил на безопасные, а также о том, что конкретный пароль засвечен в какой-либо утечке (и его следует сменить).
- Добавлена настройка
layout.css.font-visibility.level
, позволяющая указать, о каких имеющихся в системе шрифтах браузер будет сообщать веб-страницам (шрифты разделены на три группы: только базовые системные, базовые + шрифты из языковых пакетов, все шрифты). В дальнейшем планируется провести тесты, чтобы определить оптимальный вариант, который не портил бы отображение страниц, но и не раскрывал слишком много сведений обо всех установленных шрифтах). - Когда пользователь вводит в адресную строку одно слово, Firefox на основе эвристик определяет, может ли это быть доменным именем в локальной сети, и посылает DNS-серверу запрос, чтобы проверить, есть ли в сети такой домен (чтобы первым пунктом в выпадающем списке предложить перейти на этот домен). Для параноидально настроенных пользователей добавлена настройка, управляющая этим поведением (
browser.urlbar.dnsResolveSingleWordsAfterSearch
). - От разработчиков TorBrowser принят патч, позволяющий полностью отключить использование DNS (
network.dns.disabled
). - Повторно отключена поддержка TLS 1.0 и 1.1 (её отключали в Firefox 74, но потом включили обратно из-за того, что в условиях пандемии доступность веб-ресурсов приобрела очень важное значение). Если сервер не поддерживает TLS 1.2, пользователь увидит сообщение об ошибке установки защищённого соединения и кнопку, включающую поддержку устаревших протоколов (в будущем их поддержка будет полностью удалена). Chrome и Edgium в июле тоже отключают поддержку старых (TLS 1.0 появился в 1999, а TLS 1.1 — в 2006 году) протоколов, поскольку те не поддерживают современные быстрые и надёжные алгоритмы (ECDHE, AEAD), зато требуют поддержки старых и слабых (TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SHA1, MD5). Из Internet Explorer и Edge поддержка TLS 1.0/1.1 будет удалена в сентябре.
- Отключена поддержка шифров TLS_DHE_RSA_WITH_AES_128_CBC_SHA и TLS_DHE_RSA_WITH_AES_256_CBC_SHA. Firefox оставался последним, браузером с их поддержкой.
- Повышены минимальные системные требования. Отныне это GNU libc 2.17, libstdc++ 4.8.1 и GTK+ 3.14.
- Это последний мажорный выпуск, поддерживающий macOS 10.9, 10.10 и 10.11. Пользователям этих операционных систем рекомендуется перейти на Firefox ESR 78.x, где поддержка указанных версий macOS сохранится в течение года.
- Множество улучшений для людей с ограниченными возможностями:
- При использовании JAWS нажатие стрелки вниз в HTML-элементе ввода, содержащим список данных, больше не приводит к некорректному перемещению курсора на следующий элемент.
- Экранные чтецы больше не тормозят и не зависают при попадании в фокус индикатора совместного использования микрофона/камеры/экрана.
- Значительно ускорена загрузка таблиц, содержащих тысячи строк.
- Элементы текстового ввода с пользовательскими стилями теперь правильно отображают контур фокуса.
- При открытии инструментов разработчиков экранные чтецы больше не переключаются ошибочно в режим просмотра документа.
- Сокращено количество анимаций (при наведении на вкладку, раскрытии строки поиска и др.), чтобы облегчить жизнь людям с мигренью и эпилепсией.
- Все пользователи из Великобритании получат рекомендации от Pocket на странице новой вкладки.
CSS:
- JavaScript:
- Реализована поддержка API Intl.ListFormat.
- Конструктор Intl.NumberFormat () обзавёлся поддержкой опций, предложенных в рамках Intl.NumberFormat Unified API.
- Из V8 (JS-движок Chromium) портирована свежая версия движка регулярных выражений Irregexp, что позволило реализовать все недостающие элементы ECMAScript 2018 (утверждения Lookbehind, RegExp.prototype.dotAll, экранирование классов символов Unicode, именованные группы). Предыдущая версия была заимствована в 2014 году (до этого в Firefox был свой собственный движок), с тех пор разработчикам приходилось поддерживать форк, портируя изменения из Chromium. Теперь же реализована обвязка, позволяющая перенести Irregexp в виде модуля, который практически не требует адаптации. Большую работу провели разработчики V8, которые сократили зависимость Irregexp от V8. В свою очередь, разработчики Firefox передали в апстрим патчи, исправляющие падения, улучшающие качество кода, и устраняющие несоответствия спецификации JavaScript.
- Всем объектам-прототипам DOM добавлено свойство Symbol.toStringTag.
- Улучшена сборка мусора объектов WeakMap.
- Метод window.external.AddSearchProvider отныне является заглушкой в соответствии со спецификацией.
- DOM: реализован метод ParentNode.replaceChildren ().
- WebAssembly: отныне функции могут возвращать сразу несколько значений.
- Инструменты разработчика.
>>> Примечания к выпуску для разработчиков
>>> Все закрытые в этом выпуске ошибки
>>> Подробности