Suicide
17.11.2020, 20:16
Состоялся релиз web-браузера Firefox 83 (https://www.mozilla.org/en-US/firefox/83.0/releasenotes/). Кроме того, сформировано обновление ветки (https://www.mozilla.org/en-US/firefox/organizations/all/) с длительным сроком поддержки 78.5.0 (https://www.mozilla.org/en-US/firefox/78.5.0/releasenotes/). На стадию бета-тестирования (https://firefox.com/channel) перешла ветка Firefox 84, релиз которой намечен на 15 декабря.
Основные (https://www.mozilla.org/en-US/firefox/82.0/releasenotes/) новшества (https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/82):
По умолчанию включён (https://hacks.mozilla.org/2020/11/warp-improved-js-performance-in-firefox-83/) новый JIT-компилятор, развивавшийся (https://www.opennet.ru/opennews/art.shtml?num=53789) под кодовым именем Warp, который позволил заметно упростить архитектуру JIT, повысить отзывчивость, сократить время загрузки страницы и снизить потребление памяти. Проведённые тесты демонстрируют ускорение загрузки до 15%, повышение отзывчивости до 12% и снижение потребления памяти до 8%. Скорость прохождения теста Speedometer увеличилась на 10%. Тестирование на реальных сайтах показало сокращение времени загрузки Google Docs на 20%. Показатель SpeedIndex при открытии раздела Android в Reddit улучшился на 13%. Pdfpaint стал работать быстрее на 18%.
Производительность JavaScript-движка увеличена в основном за счёт сокращения внутренней информации о типах, отслеживаемой внутри движка, и применению техники кэширования промежуточного кода (CacheIR), ранее предложенной в "baseline" интерпретаторе байткода, который занимает промежуточную нишу между обычным интерпретатором и предварительным JIT-компилятором. Warp также позволил избавиться от дополнительных накладных расходов для кода Baseline/C++, исключил лишние перекомпиляции, вынес формирование промежуточного кода MIR (Middle-level IR) из основного потока в отдельный поток, снизил потребление памяти за счёт прекращения хранение данных о типах и группах объектов (ObjectGroups).
В разделе настроек "Конфиденциальность и безопасность" предложен режим "HTTPS Only (https://www.opennet.ru/opennews/art.shtml?num=53336)", при включении которого все выполняемые без шифрования запросы автоматически перенаправляются на защищённые варианты страниц ("http://" заменяется на "https://"). Предусмотрена возможность включения данного режима для всех окон или только для окон, открываемых в режиме приватного просмотра. По умолчанию режим перенаправления на HTTPS находится в отключённом состоянии. Для отдельного сайта режим можно включить через меню, показываемое при клике на изображении щита в адресной строке.
Если при включённом режиме проброс на https:// завершается таймаутом, пользователю показывается страница с ошибкой, на которой присутствует кнопка для выполнения запроса по http:// (https://antichat.live/). В случае сбоев при загрузке по "https://" cубресурсов, загружаемых при обработке страницы, подобные сбои игнорируются, но в web-консоль выводятся предупреждения, которые можно посмотреть через инструменты для web-разработчика.
https://www.opennet.ru/opennews/pics_base/0_1605623812.png (https://www.opennet.ru/opennews/pics_base/0_1605623805.png)
Добавлена поддержка масштабирования страниц щипком. Функция пока доступна только для систем с сенсорными экранами на базе ОС Windows и систем с тачпадами на базе macOS.
Добавлены горячие клавиши для быстрой перемотки видео, отображаемого в режиме "картинка в картинке". Для перемотки вперёд и назад с шагом в 15 секунд теперь достаточно нажать соответствующие клавиши управления курсором.
Улучшен интерфейс, отображаемый при включении совместного доступа к экрану в процессе проведения видеоконференции в Firefox. В интерфейсе теперь более явно обозначено, к каким устройствам и экранам предоставлен совместный доступ.
В адресной строке появилась возможность быстрого переключения на другую поисковую систему - список пиктограмм доступных поисковых систем теперь отображается в нижней части окна ещё до начала набора запроса (ранее список появлялся только после ввода первой буквы запроса). При клике на поисковой системе из списка, данная система становится активной и показывается перед полем ввода. Для того чтобы сразу начать поиск, как было раньше, нужно кликнуть на пиктограмме с нажатой клавишей Shift. Пользователю также предоставлена возможность определения произвольных псевдонимов для обращения к поисковым системам.
Кроме того, доступна функция "Tab-to-search", позволяющая через нажатие клавиши Tab в адресной строке перейти в режим поиска с выбором активной поисковой системы на основе набранных символов, если автодополнением предложена одна из установленных поисковых систем. Например, набрав "ya" будет предложено "yandex.ru", после чего можно нажать Tab и будет включён режим набора запроса в Yandex.
https://www.opennet.ru/opennews/pics_base/0_1605625713.png (https://www.opennet.ru/opennews/pics_base/0_1605625704.png)https://www.opennet.ru/opennews/pics_base/0_1605625732.png (https://www.opennet.ru/opennews/pics_base/0_1605625725.png)
Переработан интерфейс встроенного просмотрщика PDF-документов (заменены пиктограммы, использован светлый фон для панели с инструментами). Добавлена (https://support.mozilla.org/en-US/kb/view-pdf-files-firefox-or-choose-another-viewer) поддержка механизма AcroForm для заполнения форм ввода и сохранения результирующего PDF с введёнными пользователем данными.
https://www.opennet.ru/opennews/pics_base/0_1605626164.png (https://www.opennet.ru/opennews/pics_base/0_1605626157.png)
Для пользователей из Индии в англоязычной сборке на странице новой вкладки добавлена секция со статьями, рекомендованными сервисом Pocket (ранее подобные рекомендации были предложены для пользователей из США, Германии, Австрии, Бельгии и Швейцарии и Великобритании). Связанная с подбором контента персонализация выполняется на стороне клиента и без передачи сведений о пользователе третьим лицам (в браузер загружается весь список рекомендованных ссылок на текущий день, который ранжируется на стороне пользователя, отталкиваясь от данных истории посещений). Для отключения рекомендованного Pocket контента предусмотрена настройка в конфигураторе (Firefox Home Content/Recommended by Pocket) и опция "browser.newtabpage.activity-stream.feeds.topsites" в about:config.
Для устройств Apple, поставляемых с macOS Big Sur и оснащённых новыми CPU Apple, предоставлена возможность использования Firefox, применяя бинарный транслятор Rosetta 2 (https://en.wikipedia.org/wiki/Rosetta_(software)). В следующих версиях планируется предоставить родные сборки для CPU Apple M1 (https://www.apple.com/mac/m1/). В версии для macOS также обеспечено восстановление сеансов с минимизацией окон, позволяющей снизить потребление энергии.
Для пользователей Windows 7/8/8.1 и macOS 10.12-10.15 активирован движок композитинга WebRender, написанный на языке Rust и позволяющий добиться существенного увеличения скорости отрисовки и снижения нагрузки на CPU за счёт выноса на сторону GPU операций отрисовки содержимого страницы, которые реализованы через выполняемые в GPU шейдеры. Таким образом, WebRender теперь включён для всех версий Windows и macOS (кроме 10.16 Beta).
Для Linux в списке блокировки для WebRender остаются (https://wiki.mozilla.org/Platform/GFX/WebRender_Where) проприетарные драйверы NVIDIA, а также драйверы Intel при использовании экранных разрешений 3440x1440 и выше. На платформе Android движок WebRender включён для устройств с GPU Adreno 5xx (Google Pixel, Google Pixel 2/XL, Oneplus 5), Adreno 6xx (Google Pixel 3, Google Pixel 4, Oneplus 6), а также смартфонов Pixel 2 и Pixel 3.
Пользователи бинарных драйверов NVIDIA в Linux, которые вручную включили WebRender (gfx.webrender.all=true в about:config) и не пользуются композитингом, могут столкнуться с регрессией (https://bugzilla.mozilla.org/show_bug.cgi?id=1663273), которая выражается в том, что верхняя половина экрана превращается в закрашенный прямоугольник. Решить (https://bugzilla.mozilla.org/show_bug.cgi?id=1663152) проблему можно, либо включив композитинг, либо экспортировав любую из следующих переменных окружения: MOZ_GTK_TITLEBAR_DECORATION=system (к сожалению, она включает заголовок окна) или MOZ_X11_EGL=1 (эта опция выключает поддержку WebGL 2). Также можно отключить на время WebRender.
Добавлена CSS-функция conic-gradient() (https://developer.mozilla.org/en-US/docs/Web/CSS/conic-gradient()) для создания конусообразных градиентов, в которых изменение цвета производится вокруг центра, а не от центра к краю, что позволяет создавать эффекты в виде колеса меняющихся оттенков.
В инструментах для web-разработчиков в интерфейсе инспектирования страниц предоставлена метка "scroll" для отладки прокручиваемых переполнений содержимого (https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/How_to/Debug_Scrollable_Overflow). При клике на значок на странице подсвечиваются элементы, приводящие к переполнению.https://www.opennet.ru/opennews/pics_base/0_1605627786.png (https://media.prod.mdn.mozit.cloud/attachments/2020/10/19/17409/06e28312c1a198eab473a932fed8afbb/overflow_badge.png)
В версии (https://www.mozilla.org/en-US/firefox/android/83.0/releasenotes/) для платформы Android расширено число поддерживаемых дополнений. В число дополнений (https://addons.mozilla.org/android/), которые можно использовать в Firefox для Android, включены FoxyProxy, Bitwarden, AdGuard AdBlocker, Tomato Clock, LeechBlock NG, Web Archives и Ghostery.
Кроме новшеств и исправления ошибок в Firefox 83 устранена 31 уязвимость (https://www.mozilla.org/en-US/security/known-vulnerabilities/firefox/#firefox83), из которых 14 помечены (https://www.mozilla.org/en-US/security/advisories/mfsa2020-50/) как опасные. 12 уязвимостей (собраны под CVE-2020-26969 и CVE-2020-26968) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.
17.11.2020
https://www.opennet.ru/opennews/art.shtml?num=54101
Основные (https://www.mozilla.org/en-US/firefox/82.0/releasenotes/) новшества (https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/82):
По умолчанию включён (https://hacks.mozilla.org/2020/11/warp-improved-js-performance-in-firefox-83/) новый JIT-компилятор, развивавшийся (https://www.opennet.ru/opennews/art.shtml?num=53789) под кодовым именем Warp, который позволил заметно упростить архитектуру JIT, повысить отзывчивость, сократить время загрузки страницы и снизить потребление памяти. Проведённые тесты демонстрируют ускорение загрузки до 15%, повышение отзывчивости до 12% и снижение потребления памяти до 8%. Скорость прохождения теста Speedometer увеличилась на 10%. Тестирование на реальных сайтах показало сокращение времени загрузки Google Docs на 20%. Показатель SpeedIndex при открытии раздела Android в Reddit улучшился на 13%. Pdfpaint стал работать быстрее на 18%.
Производительность JavaScript-движка увеличена в основном за счёт сокращения внутренней информации о типах, отслеживаемой внутри движка, и применению техники кэширования промежуточного кода (CacheIR), ранее предложенной в "baseline" интерпретаторе байткода, который занимает промежуточную нишу между обычным интерпретатором и предварительным JIT-компилятором. Warp также позволил избавиться от дополнительных накладных расходов для кода Baseline/C++, исключил лишние перекомпиляции, вынес формирование промежуточного кода MIR (Middle-level IR) из основного потока в отдельный поток, снизил потребление памяти за счёт прекращения хранение данных о типах и группах объектов (ObjectGroups).
В разделе настроек "Конфиденциальность и безопасность" предложен режим "HTTPS Only (https://www.opennet.ru/opennews/art.shtml?num=53336)", при включении которого все выполняемые без шифрования запросы автоматически перенаправляются на защищённые варианты страниц ("http://" заменяется на "https://"). Предусмотрена возможность включения данного режима для всех окон или только для окон, открываемых в режиме приватного просмотра. По умолчанию режим перенаправления на HTTPS находится в отключённом состоянии. Для отдельного сайта режим можно включить через меню, показываемое при клике на изображении щита в адресной строке.
Если при включённом режиме проброс на https:// завершается таймаутом, пользователю показывается страница с ошибкой, на которой присутствует кнопка для выполнения запроса по http:// (https://antichat.live/). В случае сбоев при загрузке по "https://" cубресурсов, загружаемых при обработке страницы, подобные сбои игнорируются, но в web-консоль выводятся предупреждения, которые можно посмотреть через инструменты для web-разработчика.
https://www.opennet.ru/opennews/pics_base/0_1605623812.png (https://www.opennet.ru/opennews/pics_base/0_1605623805.png)
Добавлена поддержка масштабирования страниц щипком. Функция пока доступна только для систем с сенсорными экранами на базе ОС Windows и систем с тачпадами на базе macOS.
Добавлены горячие клавиши для быстрой перемотки видео, отображаемого в режиме "картинка в картинке". Для перемотки вперёд и назад с шагом в 15 секунд теперь достаточно нажать соответствующие клавиши управления курсором.
Улучшен интерфейс, отображаемый при включении совместного доступа к экрану в процессе проведения видеоконференции в Firefox. В интерфейсе теперь более явно обозначено, к каким устройствам и экранам предоставлен совместный доступ.
В адресной строке появилась возможность быстрого переключения на другую поисковую систему - список пиктограмм доступных поисковых систем теперь отображается в нижней части окна ещё до начала набора запроса (ранее список появлялся только после ввода первой буквы запроса). При клике на поисковой системе из списка, данная система становится активной и показывается перед полем ввода. Для того чтобы сразу начать поиск, как было раньше, нужно кликнуть на пиктограмме с нажатой клавишей Shift. Пользователю также предоставлена возможность определения произвольных псевдонимов для обращения к поисковым системам.
Кроме того, доступна функция "Tab-to-search", позволяющая через нажатие клавиши Tab в адресной строке перейти в режим поиска с выбором активной поисковой системы на основе набранных символов, если автодополнением предложена одна из установленных поисковых систем. Например, набрав "ya" будет предложено "yandex.ru", после чего можно нажать Tab и будет включён режим набора запроса в Yandex.
https://www.opennet.ru/opennews/pics_base/0_1605625713.png (https://www.opennet.ru/opennews/pics_base/0_1605625704.png)https://www.opennet.ru/opennews/pics_base/0_1605625732.png (https://www.opennet.ru/opennews/pics_base/0_1605625725.png)
Переработан интерфейс встроенного просмотрщика PDF-документов (заменены пиктограммы, использован светлый фон для панели с инструментами). Добавлена (https://support.mozilla.org/en-US/kb/view-pdf-files-firefox-or-choose-another-viewer) поддержка механизма AcroForm для заполнения форм ввода и сохранения результирующего PDF с введёнными пользователем данными.
https://www.opennet.ru/opennews/pics_base/0_1605626164.png (https://www.opennet.ru/opennews/pics_base/0_1605626157.png)
Для пользователей из Индии в англоязычной сборке на странице новой вкладки добавлена секция со статьями, рекомендованными сервисом Pocket (ранее подобные рекомендации были предложены для пользователей из США, Германии, Австрии, Бельгии и Швейцарии и Великобритании). Связанная с подбором контента персонализация выполняется на стороне клиента и без передачи сведений о пользователе третьим лицам (в браузер загружается весь список рекомендованных ссылок на текущий день, который ранжируется на стороне пользователя, отталкиваясь от данных истории посещений). Для отключения рекомендованного Pocket контента предусмотрена настройка в конфигураторе (Firefox Home Content/Recommended by Pocket) и опция "browser.newtabpage.activity-stream.feeds.topsites" в about:config.
Для устройств Apple, поставляемых с macOS Big Sur и оснащённых новыми CPU Apple, предоставлена возможность использования Firefox, применяя бинарный транслятор Rosetta 2 (https://en.wikipedia.org/wiki/Rosetta_(software)). В следующих версиях планируется предоставить родные сборки для CPU Apple M1 (https://www.apple.com/mac/m1/). В версии для macOS также обеспечено восстановление сеансов с минимизацией окон, позволяющей снизить потребление энергии.
Для пользователей Windows 7/8/8.1 и macOS 10.12-10.15 активирован движок композитинга WebRender, написанный на языке Rust и позволяющий добиться существенного увеличения скорости отрисовки и снижения нагрузки на CPU за счёт выноса на сторону GPU операций отрисовки содержимого страницы, которые реализованы через выполняемые в GPU шейдеры. Таким образом, WebRender теперь включён для всех версий Windows и macOS (кроме 10.16 Beta).
Для Linux в списке блокировки для WebRender остаются (https://wiki.mozilla.org/Platform/GFX/WebRender_Where) проприетарные драйверы NVIDIA, а также драйверы Intel при использовании экранных разрешений 3440x1440 и выше. На платформе Android движок WebRender включён для устройств с GPU Adreno 5xx (Google Pixel, Google Pixel 2/XL, Oneplus 5), Adreno 6xx (Google Pixel 3, Google Pixel 4, Oneplus 6), а также смартфонов Pixel 2 и Pixel 3.
Пользователи бинарных драйверов NVIDIA в Linux, которые вручную включили WebRender (gfx.webrender.all=true в about:config) и не пользуются композитингом, могут столкнуться с регрессией (https://bugzilla.mozilla.org/show_bug.cgi?id=1663273), которая выражается в том, что верхняя половина экрана превращается в закрашенный прямоугольник. Решить (https://bugzilla.mozilla.org/show_bug.cgi?id=1663152) проблему можно, либо включив композитинг, либо экспортировав любую из следующих переменных окружения: MOZ_GTK_TITLEBAR_DECORATION=system (к сожалению, она включает заголовок окна) или MOZ_X11_EGL=1 (эта опция выключает поддержку WebGL 2). Также можно отключить на время WebRender.
Добавлена CSS-функция conic-gradient() (https://developer.mozilla.org/en-US/docs/Web/CSS/conic-gradient()) для создания конусообразных градиентов, в которых изменение цвета производится вокруг центра, а не от центра к краю, что позволяет создавать эффекты в виде колеса меняющихся оттенков.
В инструментах для web-разработчиков в интерфейсе инспектирования страниц предоставлена метка "scroll" для отладки прокручиваемых переполнений содержимого (https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/How_to/Debug_Scrollable_Overflow). При клике на значок на странице подсвечиваются элементы, приводящие к переполнению.https://www.opennet.ru/opennews/pics_base/0_1605627786.png (https://media.prod.mdn.mozit.cloud/attachments/2020/10/19/17409/06e28312c1a198eab473a932fed8afbb/overflow_badge.png)
В версии (https://www.mozilla.org/en-US/firefox/android/83.0/releasenotes/) для платформы Android расширено число поддерживаемых дополнений. В число дополнений (https://addons.mozilla.org/android/), которые можно использовать в Firefox для Android, включены FoxyProxy, Bitwarden, AdGuard AdBlocker, Tomato Clock, LeechBlock NG, Web Archives и Ghostery.
Кроме новшеств и исправления ошибок в Firefox 83 устранена 31 уязвимость (https://www.mozilla.org/en-US/security/known-vulnerabilities/firefox/#firefox83), из которых 14 помечены (https://www.mozilla.org/en-US/security/advisories/mfsa2020-50/) как опасные. 12 уязвимостей (собраны под CVE-2020-26969 и CVE-2020-26968) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.
17.11.2020
https://www.opennet.ru/opennews/art.shtml?num=54101