Выход Firefox 32-beta и Firefox 33-aurora

Firefox 32 перешёл на стадию бета-тестирования, что ознаменовало прекращение формирования базовой функциональности и сосредоточение всего внимания на выявлении ошибок и контроле качества. Одновременно сформирована aurora-ветка Firefox 33. Новые возможности Firefox 33 ещё точно не утверждены, так как на стадии тестирования aurora-ветки будет произведена оценка готовности для релиза тех или иных новшеств. Загрузить бета-выпуск можно на данной странице, а aurora-версию здесь. Релиз Firefox 32 намечен на 2 сентября, а Firefox 33 на 14 октября. Улучшения, ожидаемые в Firefox 33:

В Firefox встроена реализация аудио- и видеочата, построенного с использованием технологии WebRTC и доступного для вызова через меню. Реализация примечательна тем, что позволяет напрямую организовать канал связи между двумя браузерами с поддержкой WebRTC без передачи трафика через промежуточные серверы, без установки внешних плагинов, на любых устройствах и операционных системах. Код чата построен с использованием платформы OpenTok, предоставляющей средства для организации прямой передачи видео между пользовательскими системами. Для организации безопасного шифрованного P2P-соединения между браузерами применяются API PeerConnection и DataChannels с использованием шифрованного транспортного протокола DTLS-SRTP и системы организации установки сетевых соединений ICE. Для передачи контента применяются аудиокодек Opus и видеокодек VP8.

Интеграция поддержки видеокодека H.264 за счёт использования открытой компанией Cisco библиотеки OpenH264. Бинарную сборку библиотеки OpenH264 можно задействовать в сторонних продуктах без каких-либо ограничений и отчислений, так как компания Cisco в данном случае выступает лицензиатом MPEG LA. Проект Mozilla воспользовался данной особенностью и предоставил пользователям возможность загрузки подходящего для текущей операционной системы кодека с сайта Cisco (по умолчанию библиотека не входит в состав Firefox). Основными мотивами поддержки H.264 в Firefox является предоставление средств для работы с уже существующим накопленным в Сети контентом и обеспечение совместимости с другими браузерами, до момента широкого распространения свободного кодека Daala. Переработаны механизмы хранения строк и обработки строковых данных, что позволило сократить потребление памяти и увеличить производительность строковых операций. Ранее все символы в строке хранились в UTF-16 и занимали два байта, теперь символы диапазона Latin1 занимают один байт. В итоге, при открытии англоязычного интерфейса Gmail потребление памяти на хранение строк сократилось почти в два раза, с 11 до 6.4Мб. Для кириллицы выигрыш не столь ощутимый, но всё равно значительный с учётом того, что около 30% строковых данных на таких сайтах подпадают в диапазон Latin1 за счёт HTML-разметки и JavaScript-кода. 0_1406407672.png Кроме того, внесены оптимизации, позволившие хранить большую часть мелких строковых данных в inline, без выделения для них отдельных областей в куче. Помимо сокращения потребления памяти указанные изменения позволили добиться повышения прозводительности за счёт более быстрой обработки однобайтовых данных. Например, тест regexp-dna из состава Sunspider стал выполняться на 36% быстрее на системах x86/x64 и 48% на ARM. В тесте Kraken JSON ускорение составило 11% для x86/x64 и 20% для ARM;

Проведена работа по увеличению надёжности сохранения резервных копий внутренних БД и обеспечению гарантированного восстановления после сбоя; Добавлен новый бэкенд CSP (Content Security Policy), обеспечивающий интеграцию в web-браузер специального HTTP-заголовка для защиты от организации межсайтового скриптинга (XSS) и подстановки в страницы «IFRAME/JavaScript src» блоков; Расширены возможность поиска с вводом запроса в адресной строке; В JavaScript добавлена поддержка типа Symbol, определённого в спецификации ECMAScript 6 и применимого для идентификаторов свойств объектов; Представлен программный интерфейс DOMMatrix; Прекращена поддержка отладочного сервиса JSD (JavaScript Debugger Service) в пользу Debugger API; В инструменты для разработчиков добавлено средство для наглядной оценки перерисовываемых элементов и добавлен редактор кривых Безье; Улучшения в версии для платформы Android: Возможность восстановления случайно закрытой вкладки; Интерфейс для просмотра недавно закрытых вкладок; Функция закрытия сразу всех вкладок; Опция автоматического переключения на новую или приватную вкладку; Опция для очистки данных после завершения сеанса. Улучшения, представленные в бета-версии Firefox 32:

Задействована по умолчанию новая подсистема локального кэширования HTTP-запросов, в которой представлено много улучшений, в том числе оптимизированная для первой отрисовки система приоритезации запрсоов, поддержка предварительной загрузки для ускорения отображения больших объемов контента, режим отложенной записи для исключения блокировок при первой отрисовке, поддержание пула наиболее часто используемых заголовков HTTP-ответов, быстрая проверка наличия данных в кэше по индексу, более продвинутый алгоритм вытеснения устаревших данных из кэша, защита от повреждения кэша из-за краха браузера, более низкое потребление памяти; Интеграция сборщика мусора Generational Garbage Collector, который позволяет достигнуть более высокой производительности и уменьшить потребление памяти в ситуации хранения большого числа объектов, живущих короткое время; Включена поддержка механизма привязки открытых ключей (Public Key Pinning), позволяющего явно определить сертификаты каких удостоверяющих центров допустимо использовать для заданного сайта. Если для установки защищённого соединения применён валидный сертификат выписанный иным удостоверяющим центом, соединение будет отвергнуто из-за подозрения в MITM-атаке с использованием поддельного сертификата; Поддержка соединения к HTTP-прокси с использованием защищённого канала связи (HTTPS); Прекращено доверие для некоторых 1014-разрядных корневых сертификатов; Увеличена производительность менеджера дополнений и системы управления паролями; В панели поиска обеспечено отображения числа найденных на странице совпадений; В менеджере паролей добавлена возможность просмотра метаданных логина; Vibration API приведён в соответствие со спецификациями W3C; Вместо экспериментальной возможности »-moz-background-inline-policy» представлено CSS-свойство «box-decoration-break»; Реализована поддержка свойства navigator.languages и события languagechange; Включена по умолчанию поддержка CSS-свойства mix-blend-mode, предоставляющего средства для смешивания HTML-элементов; Включена по умолчанию поддержка липкого позиционирования CSS — position: sticky, позволяющего определить, чтобы при скроллинге часть блока оставалась видимой, пока сам блок полностью не выйдет за пределы экрана (например, сделать, чтобы заголовок с пояснениями по столбцам для длинной таблицы был виден, пока видна хоть одна ячейка таблицы); Включена по умолчанию поддержка метода drawFocusIfNeeded, обеспечивающего вывод области фокуса для canvas; Реализован представленный спецификации ECMAScript 6 встроенные методы Array.from (), Array.prototype.copyWithin () и Number.isSafeInteger (); Экспериментальная реализация атрибута «srcset» для тега «img src», дающего возможность определить серию вариантов изображений, оптимизированных для различных типов устройств, экранных разрешений и уровня масштабирования. Для включения следует установить опцию dom.image.srcset.enable=true; Поддержка API Encrypted Media Extensions, развиваемого организацией W3C и реализующего элементы поддержки DRM (Digital Rights Management) для организации защиты от копирования видеоконтента, встраиваемого в web-страницы через HTML5-тег video. Указанный API позволит в будущих выпусках воплотить в жизнь план по добавлению в Firefox системы для загрузки проприетарного закрытого модуля CDM (Content Decryption Module), необходимого для отображения зашифрованного контента; Улучшения в инструментах для web-разработчиков: Поддержка экранов свервысокого разрешения (HiDPI); Кнопка выбора элемента страницы перенесена в левый верхний угол, чтобы быть ближе ко вкладке инспектирования; 0_1403088402.png Добавлена кнопка для создания скриншота всей страницы; 0_1403088460.png Новый инструмент Web Audio Editor для инспектирования графа AudioContext и изменения свойств узлов AudioNodes; 0_1403088564.png В режиме инспектирования добавлена возможность просмотра стилей, применяемых по умолчанию браузером; 0_1403088632.png Выделение скрытых узлов («display: none») при просмотре разметки в markup-view; 0_1403088664.png Отображение подсказки с размером узла; 0_1403088232.png Поддержка вывода всплывающей подсказки с отображением начертания выбранного шрифта; 0_1403088755.png В редакторе кода Scratchpad обеспечено автодоплнение JavaScript на основе предположении о типах и реализован вывод inline-подсказок со сведениями из документации; 0_1406399927.png 0_1403088901.png Улучшения в версии для платформы Android: Возможность восстановления случайно закрытой вкладки; Поддержка переключения между языками локализации интерфейса без выхода из браузера; Поддержка автодополнения URI в системе ввода Swype; Опция для быстрого переключения на вкладку в процессе открытия новой или приватной вкладки; Средства для управления очисткой содержимого истории посещений.

© OpenNet