11 июня 2024 года состоялся релиз стабильной версии Firefox 127 c обновлённым инструментом создания снимков экрана, возможностью закрывать несколько повторяющихся вкладок и улучшением в коде резолвера DNS в Linux. Mozilla опубликовала сборки браузера для Windows, Linux и macOS. Проект Firefox 126 вышел в середине мая.
В новой версии браузера исправлены ранее обнаруженные ошибки, добавлены несколько дополнений для разработчиков и представлены некоторые новые функции для конечных пользователей.
Также в Firefox 127.0 устранены 22 уязвимости (11 уязвимостей помечены как опасные, из которых 9 вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти, потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц).
По данным OpenNET, основные изменения и дополнения в Firefox 127:
• в меню «V» со списком всех открытых вкладок и в контекстное меню вкладки добавлена кнопка для закрытия всех дублирующихся вкладок в текущем окне;
• включена автоматическая замена протокола HTTP на HTTPS для ресурсов в тегах img, audio и video, если эти теги используются на странице, открытой по HTTPS. Если загружаемые ресурсы недоступны по HTTPS, то они теперь не будут показаны со страниц, открытых по HTTPS;
• добавлена поддержка упреждающего определения IP-адресов хостов, не дожидаясь перехода пользователя по ссылке или запроса указанного на странице ресурса. Домены, которые нужно заранее отрезолвить в DNS, следует перечислить через элемент «link» с атрибутом ‘rel=»dns-prefetch»‘;
• с целью сокращения информации, которая может использоваться для косвенной идентификации пользователей, для 32-разрядных систем x86 в заголовке User-Agent, а также в JavaScript API navigator.platform и navigator.oscpu, теперь будет указываться архитектура x86_64;
• в инструменте для сохранения снимков экрана появилась поддержка создания скриншотов для файлов в формате SVG и XML, а также для служебных страниц «about:». Добавлена возможность управления созданием скриншотов с использованием клавиатурных комбинаций, реализована совместимость в темами оформления и режимом отображения с повышенной контрастностью (HCM, High Contrast Mode). Повышена производительность сохранения больших областей экрана;
• в about:config добавлены настройки toolkit.scrollbox.pagescroll.maxOverlapPercent и toolkit.scrollbox.pagescroll.maxOverlapLines, позволяющие изменить сдвиг страницы при прокрутке, указываемый в процентах и строках;
• на платформе Windows реализована возможность автоматического запуска Firefox после загрузки компьютера. Благодаря предварительной загрузке пользователю не нужно ждать при первом запуске приложения — браузер будет готов к работе мгновенно. Режим включается в секции настроек General/Startup или через уведомление, показываемое по аналогии с приглашением задействовать Firefox в качестве браузера по умолчанию;
• на платформах macOS и Windows реализована дополнительная защита доступа при использовании функции автозаполнения сохранённых паролей или при просмотре информации о паролях в менеджере паролей. Подобные операции с менеджером паролей потребуют подтверждения аутентификации в системе (например, ввод системного пароля, проверка отпечатка пальца, аутентификация по голосу или лицу);
• на платформе macOS по умолчанию включена навигация по элементам ввода клавишей табуляция, вместо использования специфичного для macOS режима клавиатурной навигации, не соответствующего поведению для других платформ (в настройках можно вернуть старый режим);
• в текстах для которых используется формат WebVTT (Web Video Text Tracks Format), добавлена поддержка символов, допустимых в разметке HTML. WebVTT применяется для организации вывода текста в определённые моменты времени, например, для показа субтитров;
• в API Clipboard включён по умолчанию интерфейс ClipboardItem и поддержка методов navigator.clipboard.read() и navigator.clipboard.write(), позволяющих web-приложению читать и записывать данные в буфер обмена. При попытке чтения данных из буфера обмена, записанных не текущим web-приложением, перед выполнением операции пользователю будет показан запрос на подтверждение действия;
• реализована экспериментальная поддержка выставления симметричного межбуквенного интервала через CSS-свойство letter-spacing. В новом режиме интервал выставляется не между текущим и следующим символом, а делится на две части, которые применяются до и после символа. Режим включается через настройку layout.css.letter-spacing.model в about:config;
• в атрибуте «href» тега «base», используемого для задания базового пути для относительных ссылок, запрещено использование схем «data:» и «javascript:»;
• в градиентах, созданных при помощи CSS-функций conic-gradient(), linear-gradient(), radial-gradient(), repeating-conic-gradient(), repeating-linear-gradient() и repeating-radial-gradient(), разрешено использовать тип «color-interpolation-method»;
• в объект Set, определяющий коллекцию значений, добавлены методы с реализацией типовых операций работы с множествами: Set.prototype.intersection(), Set.prototype.union(), Set.prototype.difference(), Set.prototype.symmetricDifference(), Set.prototype.isSubsetOf(), Set.prototype.isSupersetOf() и Set.prototype.isDisjointFrom();
• запрещена установка дополнений, XPI-файлы которых подписаны с использованием небезопасных алгоритмов (настройка PREF_XPI_WEAK_SIGNATURES_ALLOWED по умолчанию выставлена в значение false);
• в WebRTC включена поддержка протокола DTLS 1.3, основанного на TLS 1.3.
Источник: habr.com