Mozilla FireFox

Релиз Firefox 50

Доступен релиз web-браузера Firefox 50, а также мобильной версии Firefox 50 для платформы Android. В ближайшие часы ожидается обновление прошлой ветки с длительным сроком поддержки 45.5. Выпуск SeaMonkey в очередной раз пропущен. В скором времени на стадию бета-тестирования перейдёт ветка Firefox 51 и будет отделён Firefox Developer Edition 52. В соответствии с шестинедельным циклом разработки релиз Firefox 51 намечен на 24 января, а Firefox 52 на 7 марта.

Основные новшества:

  • В системе поиска на странице добавлен режим поиска с совпадением только слов целиком;
  • Добавлена настройка, позволяющая использовать клавиатурную комбинацию Ctrl+Tab для цикличного обхода вкладок в порядке обращения к ним;
  • В режим читателя (Reader Mode) добавлена возможность вывода на печать;
  • В браузер встроен набор пиктограмм Emoji, который не требует наличия в системе специальных шрифтов и может применяться в Linux;
  • Многопроцессный режим включен для систем с проверенными дополнениями, а позднее активирован для систем с любыми дополнениями;
  • В список доверительных корневых сертификатов добавлен сертификат контролируемого сообществом удостоверяющего центра Let’s Encrypt;
  • Добавлена защита от загрузки различных типов исполняемых файлов для Windows, macOS и Linux;
  • Увеличена производительность расширений SDK и расширений, использующих загрузчик модулей SDK;
  • В Windows и macOS добавлена возможность просмотра защищённого видео в формате WebM через CDM-модуль (Content Decryption Module) Widevine без необходимости установки дополнительных плагинов;
  • Расширен охват WebGL, который теперь доступен для 98% пользователей Windows 7 и более новых версий;
  • Заблокировано использование устаревших выпусков libavcodec (старее 54.35.1);
  • Продолжено усовершенствование API WebExtensions для разработки дополнений, совместимых с браузером Chrome. Из новых программных интерфейсов отмечается расширение API для работы с историей посещений, в webNavigation API добавлен фильтр событий, реализованы полноценные средства для отладки дополнений через интерфейс about:debugging;
  • Для обеспечения совместимости с завязанными на WebKit мобильными приложениями для тега input добавлена поддержка атрибута webkitdirectory и свойства HTMLInputElement.webkitDirectory, через которые можно установить флаг, разрешающий выбирать только директории;
  • Прекращена поддержка нестандартных псевдоклассов ":-moz-full-screen-ancestor" и CSS-свойства "box-sizing: padding-box". Снят префикс "-moz-" с псевдокласса ":any-link :any-link";
  • Реализовано JavaScript-свойство Symbol.hasInstance, определённое в спецификации ES2015;
  • Реализован JavaScript-метод Object.getOwnPropertyDescriptors(), определённый в спецификации ES2017;
  • Добавлено расширение WebGL EXT_shader_texture_lod;
  • По умолчанию отключена поддержка протокола SPDY, на смену которому пришёл HTTP/2.0;
  • Добавлена поддержка HTTP-заголовка "X-Content-Type-Options: nosniff", который выдаётся сервером для запрета сниффинга MIME-типов, заявленных в заголовке Content-Type;
  • В HTTP-заголовок [[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-CookieSet-Cookie]] добавлена поддержка служебных префиксов "__Host-" и "__Secure-";
  • Добавлена поддержка HTTP-заголовка Referrer-Policy, через который можно определить какие данные, возвращать через заголовок Referrer;
  • В Content Security Policy (CSP) представлена директива sandbox, через которую можно включить такие ограничения, как запрет всплывающих окон, использования плагинов и запуска внешних или всех скриптов;
  • В консоли для web-разработчиков появилась поддержка формата Source Map, позволяющего сопоставить объединённый в один файл JavaScript-код c оригинальными файлами, из которых он был сформирован. Source Map в web-консоли пока отключен по умолчанию (включается через devtools.sourcemap.locations.enabled в about:config), но при включении каждое сообщение дополнительно снабжается ссылкой на файл-источник и строку кода;
  • В web-консоли включено отображение стека трассировки сетевых запросов;
  • Включён по умолчанию инструмент инспектирования потребления памяти, позволяющий создавать слепки распределения памяти в разные моменты работы web-приложения. Инструмент удобен для поиска и исправления утечек памяти;
  • В инструмент для мониторинга сетевой активности добавлен столбец "Cause", в котором приводится информация о том, как сетевой запрос был инициирован, его типе и трассировке стека предшествующих ему операций;
  • Обновлён интерфейс для просмотра данных в формате JSON (JSON Viewer). Пустые массивы теперь показываются как "[]" вместо "[0]" по аналогии с пустыми объектами ("{}"), для свойств объектов добавлено отображение разделителей столбцов;
  • В интерфейсе инспектирования хранилища (Storage Inspector) добавлена возможность удаления элементов indexedDB из контекстного меню;
  • На странице about:debugging#workers, предоставляющей средства управления зарегистрированными Service Workers, добавлено отображение подписок на push-уведомления и возможность отправки тестовых уведомлений;
  • Обновлены пиктограммы в средствах для разработчиков;
    Было:


    Стало:

  • При отладке кода WebAssembly появилась подсветка синтаксиса;
  • В состав финального релиза не вошли ранее представленные в тестовых выпусках Firefox 50 средства для показа всех совпадений в результате поиска и наработки инициативы по переносу из Tor Browser возможностей для усиления защиты персональной информации;
  • В выпуске для платформы Android выполнено перемещение недавно закрытых вкладок в панель работы с историей посещений и добавлена возможность отображения потокового видео в формате HLS (HTTP Live Streaming);
Кроме новшеств и исправления ошибок в Firefox 50 устранена серия уязвимостей, из которых несколько помечены как критические, т.е. могут привести к выполнению кода злоумышленника при открытии специально оформленных страниц. В настоящее время информация с подробностями об исправленных проблемах безопасности недоступна, ожидается, что перечень уязвимостей будет опубликован в течение нескольких часов.
Firefox — Notes (50.0)
OpenNews: Релиз Firefox 50
 
Последнее редактирование:

Candellmans

Команда форума
Сообщения
6,837
Реакции
9,000
Релиз Firefox 79

29.07.20
Состоялся релиз web-браузера Firefox 79, а также мобильной версии Firefox 68.11 для платформы Android. Кроме того, сформировано обновление веток с длительным сроком поддержки 68.11.0 и 78.1.0. В ближайшее время на стадию бета-тестирования перейдёт ветка Firefox 80, релиз которой намечен на 25 августа.

Основные новшества:
  • В менеджере паролей добавлена возможность экспорта учётных данных в формате CSV (текстовые поля с разделителями, которые можно импортировать в табличный процессор). При экспорте пароли помещаются в файл в открытом виде. В дальнейшем также планируется реализовать функцию импорта паролей из сохранённого ранее CSV-файла (подразумевается, что пользователю может потребоваться резервное копирование и восстановление сохранённых паролей или перенос паролей из другого браузера).

  • 1628486 - Enable Dynamic FPI in Nightly
  • Добавлена настройка для включения динамической изоляции Cookie по отображаемому в адресной строке домену ("Dynamic First Party Isolation", когда свои и сторонние вставки определяются на основе базового домена сайта). Настройка предложена в конфигураторе в секции настройки блокировки отслеживания перемещений в выпадающем блоке методов блокировки Cookie.


  • Улучшены средства защиты от отслеживания, автоматически блокирующие Cookie, используемые сторонними счётчиками. Для сайтов, осуществляющих отслеживание, Firefox теперь ежедневно очищает Cookie и данные во внутренних хранилищах, на основании списков систем отслеживания из сервиса Disconnect.me.
  • Добавлена предварительная реализация экрана с экспериментальными настройками "about:preferences#experimental", предоставляющего интерфейс для включения экспериментальных возможностей, похожий на about:flags в Chrome. По умолчанию экран пока недоступен и требует для включения установки параметра "browser.preferences.experimental" в about:config. Из доступных для включения экспериментальных возможностей пока предлагается только поддержка "CSS Masonry Layout".


  • Для ноутбуков на базе чипов AMD на платформе Windows 10 включена система композитинга WebRender. WebRender написан на языке Rust и позволяет добиться существенного увеличения скорости отрисовки и снижения нагрузки на CPU за счёт выноса на сторону GPU операций отрисовки содержимого страницы, которые реализованы через выполняемые в GPU шейдеры. Ранее WebRender был включён на платформе Windows 10 для GPU Intel, APU AMD Raven Ridge, AMD Evergreen и на ноутбуках с видеокартами NVIDIA. В Linux WebRender пока активируется для карт Intel и AMD только в ночных сборках, и не поддерживается для карт NVIDIA. Для принудительного включения в about:config следует активировать настройки "gfx.webrender.all" и "gfx.webrender.enabled" или запустить Firefox с выставленной переменной окружения MOZ_WEBRENDER=1.
  • Для пользователей из Германии на странице новой вкладки добавлена новая секция со статьями, рекомендованными сервисом Pocket, которые ранее были предложены для пользователей из США и Великобритании. Связанная с подбором контента персонализация выполняется на стороне клиента и без передачи сведений о пользователе третьим лицам (в браузер загружается весь список рекомендованных ссылок на текущий день, который ранжируется на стороне пользователя, отталкиваясь от данных истории посещений). Для отключения рекомендованного Pocket контента предусмотрена настройка в конфигураторе (Firefox Home Content/Recommended by Pocket) и опция "browser.newtabpage.activity-stream.feeds.topsites" в about:config.
  • Для Linux-систем с Wayland из-за проблем со стабильностью отключено по умолчанию использование механизма DMABUF для отрисовки видео в текстуры. Для включения в abоut:config предусмотрена переменная "widget.wayland-dmabuf-video-textures.enabled".
  • На странице about:support появилась новая кнопка "Сlear Startup cache" для очистки кэшей, влияющих на загрузку браузера. Кнопка может способствовать решению некоторых проблем, возникающих при запуске.


  • Ссылки с атрибутом target="_blank" в тегах <a> и <area> теперь обрабатываются по аналогии с использованием атрибута rel="noopener", т.е. воспринимаются как не заслуживающие доверия страницы. Для открытых по данным ссылкам страниц не выставляется свойство Window.opener и не открывается доступ к контексту из которого была открыта ссылка.
  • Для iframe в атрибуте sandbox реализован параметр "allow-top-navigation-by-user-activation", разрешающий выполнять навигацию по родительской странице из изолированного iframe при явном клике пользователя на ссылке, но запрещающая автоматический редирект. Опция полезна для размещения баннеров в iframe, позволяя совершать переходы на заинтересовавшую рекламу, но блокируя нежелательную активность (например, автоматический проброс на другие страницы).
  • Добавлены новые HTTP-заголовки Cross-Origin-Embedder-Policy (COEP) и Cross-Origin-Opener-Policy (COOP), позволяющие включить особый режим изоляции cross-origin для безопасного использования на странице привилегированных операций, которые могут применяться для осуществления атак по сторонним каналам, таким как Spectre.
  • Возвращена поддержка объекта SharedArrayBuffer (позволяет создавать массивы в разделяемой памяти), отключённого после выявления атак класса Spectre. Для обеспечения защиты от Spectre объект SharedArrayBuffer теперь доступен только на страницах, обрабатываемых в режиме cross-origin изоляции. В режиме cross-origin изоляции также теперь разрешено применять не урезанные по точности таймеры Performance.now(). Для определения подобной изоляции следует использовать вышеупомянутые заголовки Cross-Origin-Embedder-Policy и Cross-Origin-Opener-Policy.
  • Реализован метод Promise.any(), который возвращает первый выполненный Promise из списка.
  • Реализован объект WeakRef для определения слабых ссылок (weak reference) на объекты JavaScript, позволяющие сохранить ссылку на объект, но не блокирующие удаление связанного объекта сборщиком мусора.
  • Добавлены новые операторы логического присвоения: "??=", "&&=" и "||=". Оператор "x ??= y" выполняет присвоение, только если "x" принимает значение null или undefined. Оператор "x ||= y" выполняет присвоение, только если "x" имеет значение FALSE, а в "x &&= y" - TRUE.
  • Объект Atomics, используемый для организации синхронизации блокировок примитивов, теперь может применяться не только к разделяемой памяти.
  • В конструктор Intl.DateTimeFormat() добавлна подержка опций dateStyle и timeStyle.
  • В WebAssembly добавлена поддержка пакетных операций с памятью (для более эффективного моделирования работы memcpy и memmove), многопоточности (Shared memory & Atomics) и ссылочных типов (externref).


  • В отладчике JavaScript предложен стек асинхронных вызовов, позволяющий отслеживать асинхронно выполняемые события, таймауты и promise. Цепочки асинхронных вызовов отображаются в отладчике наряду с обычным стеком вызовов, а также приводятся для ошибок в web-консоли и запросов в интерфейсе инспектирования сети.


  • В web-консоли обеспечено отображение кодов состояния 4xx/5xx в форме ошибок, что упрощает их выделение на общем фоне. Для упрощения отладки запрос может быть повторён или просмотрены детали о запросе и ответе.


  • Ошибки JavaScript теперь показываются не только в web-консоли, но и в JavaScript-отладчике с подсветкой связанной с ошибкой строки в коде и показом всплывающей подсказкой с дополнительной информацией об ошибке.
  • Повышена надёжность открытия исходных текстов SCSS и CSS-in-JS в интерфейсе инспектирования. Во всех панелях улучшена обработка сопоставлений с оригинальным исходным кодом на основе source map.
  • В инструменты для web-разработчиков добавлена новая панель Application, предоставляющая средства для инспектирования и отладки service worker и манифестов web-приложений.
  • В системе инспектирования сети объединены вкладки Messages и Responses.
  • В режиме адаптивного дизайна (Responsive Design Mode) обеспечена симуляция жестов касания с перетаскиванием и скольжения при помощи движения мыши, если включён режим симуляции сенсорных экранов.
  • Firefox 68.11 для Android станет последним выпуском в ветке. В начале августа планируется постепенный перевод пользователей на новую редакцию, развиваемую под кодовым именем Fenix и проходившую тестирование под именем Firefox Preview. Сборки Firefox 79 для Android переведены на кодовую базу Fenix. Новая редакция использует движок GeckoView, построенный на базе технологий Firefox Quantum, и набор библиотек Mozilla Android Components, которые уже применяются для построения браузеров Firefox Focus и Firefox Lite. GeckoView является вариантом движка Gecko, оформленном в виде отдельной библиотеки, которую можно обновлять независимо, а Android Components включает библиотеки с типовыми компонентами, обеспечивающими работу вкладок, автодополнения ввода, поисковых подсказок и других возможностей браузера. Для работы требуется как минимум Android 5.0 (поддержка Android 4.4.4 прекращена). По умолчанию отключён доступ к about:config.
Кроме новшеств и исправления ошибок в Firefox 79 устранена 21 уязвимость, из которых 15 помечены как опасные. 12 уязвимостей (собраны под CVE-2020-15659) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.


OpenNet
 
Сверху Снизу