Доступен выпуск Firefox 47.
- При отсутствии Flash-плагина включается автоматическая замена старого кода <embed> на страницах, встраивающих видео с YouTube, на новый <iframe>, что позволяет просматривать видео средствами HTML5.
- Поддержка алгоритмов ChaCha20/Poly1305.
- На достаточно производительных компьютерах задействован видеокодек VP9.
- Удалена поддержка FUEL (Firefox User Extension Library). Прекращена поддержка дополнений, которые её использовали. Разработчикам этих дополнений следует перейти на использование SDK.
- Настройка
browser.sessionstore.restore_on_demand
будет сброшена в значение по умолчанию (true), чтобы избежать проблем с производительностью в многопоточном режиме работы. - Возможность отключить кэширование HTTPS-страниц при навигации кнопками «Вперёд/Назад».
- При нажатии на кнопку добавления закладки («звёздочка») открывается окно с выбором места размещения закладки. В Firefox 48 раздел неотсортированных закладок будет переименован в «Другие закладки», что более точно отражает его смысл. В Firefox 49 в основном меню закладок появится подборка из 5 свежих закладок, которые были добавлены последними.
- Новая боковая панель, содержащая список вкладок, синхронизированных с другими устройствами.
- В версии браузера для Windows и Mac OS добавлен ещё один проприетарный модуль. Модуль, предоставленный корпорацией Google, позволяет просматривать защищённое содержимое, требующее наличия плагина Silverlight (1265270). Доступны сборки EME-free (без проприетарных модулей).
- Переход к обязательному подписыванию дополнений в очередной раз отложен, поскольку разработчики не успели выпустить небрендированную версию браузера (без логотипа и торговой марки Firefox).
- Прекращена поддержка Firefox ESR 38.x.
- Латгальская локализация.
Инструменты разработчика:
- Консоль научилась определять незавершённый ввод и переключаться в многострочный режим.
- Новый инструмент about:performance для оценки производительности браузера и его дополнений. Там же можно отключить системные дополнения Hello и Pocket.
- Возможность задать собственное значение User Agent в режиме адаптивного дизайна.
- Отображение 5 ближайших путей от текущего узла к корню сборщика мусора в инструменте оценки потребления памяти.
- Отладка сервис-воркеров и Push API:
- Инструмент about:debugging# для просмотра/отладки всех зарегистрированных сервис-воркеров и имитации пуш-уведомлений.
- Отображение кэшированных запросов в сетевом мониторинге.
- Просмотр в инспекторе хранилища содержимого, сохранённого с помощью Cache API.
- Фильтрация записей в инспекторе хранилища.
- В отладчике обновлён стиль точек останова.
- Для облегчения отладки расширений, при использовании панели инструментов браузера панели не прячутся автоматически.
- Отключён просмотр шрифтов в инспекторе. Можно включить обратно с помощью настройки
devtools.fontinspector.enabled
, но в будущем он будет заменён более функциональным инструментом. - Инструмент 3D-просмотра вынесен в отдельное дополнение.
- Обновлена тема для разработчиков.
CSS:
- Поддержка псевдоэлемента ::backdrop (1064843).
- Регистронезависимый модификатор
i
(наподобие[foo=bar i]
) у селекторов атрибутов (888190). - Свойство clip-path обзавелось экспериментальной поддержкой polygon(), ellipse() и circle() на элементах HTML (inset() и path() не поддерживаются). Соответствующая настройка
layout.css.clip-path-shapes.enabled
пока отключена (1075457). Интерполяция (и анимация) этих значений пока не поддерживается. - CSS Grid:
- align-content: normal у контейнеров отныне ведёт себя, как
stretch
(1237754). - Изменён порядок следования значений
column
/row
у свойств grid, grid-template и grid-gap (1251999).
- align-content: normal у контейнеров отныне ведёт себя, как
- @media поддерживает display-mode (1104916).
- У свойств text-align и text-align-last значение
true
переименовано вunsafe
(1250342). - Элементы с атрибутом
dir
будут иметьunicode-bidi:isolate
.
JavaScript:
- Методы Object.values() и Object.entries() из спецификации ES2017/ES8 (1232639).
- Устаревший old Proxy API (Proxy.create и Proxy.createFunction) выдаёт предупреждения в консоль и будет удалён в будущем. Вместо него следует использовать стандартный объект Proxy (892903).
- В соответствии со спецификацией ES2016/ES7 удалена ловушка Proxy enumerate для объявлений for...in (1246318).
- Методы Array.prototype.indexOf() и Array.prototype.lastIndexOf() (и их эквиваленты TypedArray) больше не возвращают -0 (1242043).
API/DOM:
- Свойство Document.scrollingElement; соответствующая настройка
document.scrollingElement.enabled
пока отключена (1153322). - IndexedDB: метод IDBKeyRange.includes() (1251498).
- Сервис-воркеры и связанные с ним API:
- Поддержка RequestInit.referrer, указывающего, что все захватываемые запросы должны соответствовать значению изначального Referrer-а (1251448).
- Поддержка свойства Request.referrerPolicy (1251872).
- В Firefox ESR отключена поддержка сервис-воркеров и Push (1232029).
- WebRTC: свойство credentialType, представляющее собой строку, указывающую на то, пароль это или токен. В настоящий момент поддерживается лишь
password
. - Cache.add() и Cache.addAll() выбрасывают исключение TypeError, если статус ответа не входит в диапазон 200—299 (1244764).
- API установки и управления приложениями (navigator.mozApps.*) отныне работают лишь в Firefox OS (1238576).
- Методы Web Crypto API могут использовать алгоритм RSA-PSS (1191936); также, в PBKDF2 реализована поддержка хеширования по алгоритму SHA-2.
- Permissions API обзавёлся методом Permissions.revoke() (1197461).
- Browser API, расширяющий возможности <iframe> путём создания фреймов для отображения веб-содержимого (ранее он был доступен лишь в Firefox OS) (1238160).
- Обновлён синтаксис метода requestPermission() (1241278).
- Объекты TextTrack поддерживают события cuechange.
- Убраны префиксы у Fullscreen API (и изменены некоторые имена) (743198).
Audio/Video:
- Воспроизведение WAV-файлов, сжатых с помощью алгоритма u-law (851530).
Безопасность:
- Ссылки с протоколом view-source:, расположенные на веб-страницах, больше не открывают просмотр исходного кода страницы (1172165).
- Удалён белый список плагинов, запускающихся автоматически: автозапуск теперь возможен только для Flash (1263630).
- Различные исправления безопасности.
Изменения, не отражённые в примечаниях к выпуску:
- В режим чтения добавлена функцию зачитывания текста при помощи синтезированной речи.
- Добавлена, пока отключённая, возможность блокировать загрузку нежелательного («хакерские» утилиты, программы просмотра сохранённых паролей) и подозрительного программного обеспечения.
- Добавлена, пока отключённая, поддержка U2F (открытого протокола универсальной 2-факторной аутентификации с использованием USB-токенов).
- Добавлена, пока отключённая, возможность средствами защиты от отслеживания блокировать адреса тех SWF с популярных сайтов, которые были замечены в попытках получить список шрифтов или совершить другие подозрительные действия.
- Распространение blocklist и отозванных сертификатов постепенно переходит на новый бэкэнд под названием Kinto.
>>> Подробности