Излезе уеб браузърът Firefox 86. Освен това, бе създадено обновление на версията с дългосрочна поддръжка 78.8.0. Версията Firefox 87 е преместена в бета-тестиране, като нейният релиз е насрочен за 23 март.
Основни нововъведения:
- В строгия режим на блокиране на нежелано съдържание (strict) е активиран режимът на пълна защита на бисквитките (Total Cookie Protection), при който за всеки сайт се използва отделно изолирано хранилище за бисквитки. Предложеният метод за изолация не позволява използването на бисквитки за проследяване на движението между сайтове, тъй като всички бисквитки, зададени от качвани на сайта външни скриптове, сега са обвързани с основния сайт и не се предават при достъп до тези скриптове от други сайтове. По изключение възможността за междусайтово предаване на бисквитки е запазена за услуги, които не са свързани с проследяването на потребителите, например, използвани за единична автентикация. Информацията за блокираните и разрешените междусайтови бисквитки се показва в менюто, което се извежда при натискане на символа на щита в адресната лента.

- За всички потребители е активиран нов интерфейс за преглед на документа преди печат и е осигурена интеграция с системните настройки на принтера. Новият интерфейс работи по аналогия с режима на читателя и води до отваряне на прегледа в текущия раздел с подмяна на съществуващото съдържание. В страничната лента са предложени инструменти за избор на принтер, настройка на формата на страницата, промяна на параметрите за печат и управление на включването на печат на заглавия и фон.

- Операциите по рендериране на елементи Canvas и WebGL са преместени в отделен процес, отговорен за прехвърлянето на операциите на GPU. Тази промяна значително повиши стабилността и производителността на сайтове, които използват WebGL и Canvas.
- Целият код, свързан с декодиране на видео, е преместен в новия процес RDD, което позволи повишаване на сигурността чрез изолиране на обработчиците на видео в отделен процес.
- В сборките за Linux и Android е включена защита от атаки, която манипулира стека и купа. Защитата се основава на използването на опцията "-fstack-clash-protection", при която компилаторът вмъква проверъчни извиквания (probe) при всяко статично или динамично разпределение на памет за стека, които позволяват откриването на преливане на стека и блокират методите на атаки, свързани с манипулации на стека и купа, свързани с прехвърляне на изпълнителния поток през защитните страници на стека.
- В режима на четене се появи възможност за преглед на HTML страници, запазени на локалната система.
- Поддръжката на формата за изображения AVIF (AV1 Image Format) е включена по подразбиране, при който се използват технологии за вътрешно стисване от формата за кодиране на видео AV1. Контейнерът за разпространение на компресираните данни в AVIF е напълно аналогичен на HEIF. AVIF поддържа както HDR (High Dynamic Range) изображения и цветови пространства с широка гама, така и стандартен динамичен диапазон (SDR). По-рано за включване на AVIF беше необходимо да се зададе параметърът "image.avif.enabled" в about:config.
- Поддръжката за едновременно отваряне на няколко прозорци с видео в режима на Picture-in-Picture е включена.

- Поддръжката на експерименталния режим SSB (Site Specific Browser), който позволяваше създаването на отделен ярлык за сайт за стартиране без елементи на браузерния интерфейс, с отделна икона на панела с инструменти, подобно на пълноценни приложения на ОС, е прекратена. Като причина за спирането на поддръжката се посочват нерешени проблеми, съмнителна полза за потребителите на десктоп системи, ограниченост на ресурсите и желание да се насочат ресурсите към разработването на основните продукти.
- За WebRTC (PeerConnections) е прекратена поддръжката на протокола DTLS 1.0 (Datagram Transport Layer Security), който се основава на TLS 1.1 и се използваше в WebRTC за предаване на звук и видео. Вместо DTLS 1.0 се препоръчва използването на DTLS 1.2, който се основава на TLS 1.2 (спецификацията DTLS 1.3, базирана на TLS 1.3, все още не е готова).
- В CSS е включена функцията image-set(), позволяваща да се избере изображение от набор от варианти с различно разрешение, най-подходящо за текущите параметри на екрана и пропускателната способност на мрежовото свързване. background-image: image-set( "cat.png" 1dppx, "cat-2x.png" 2dppx, "cat-print.png" 600dpi);
- В CSS свойството «list-style-image», предназначено за определяне на изображение за маркери в списък, позволява указване на всякакви форми на изображения чрез CSS.
- В CSS е добавен псевдокласът «:autofill», който позволява проследяване на автоматичното попълване на полета в таг input от браузъра (при ръчно попълване селекторът не сработва). input:autofill { border: 3px solid blue; }
- В JavaScript по подразбиране е включен вграденият обект Intl.DisplayNames, чрез който може да се получат локализирани наименования на езици, страни, валути, дати и т.н. let currencyNames = new Intl.DisplayNames([‘bg’], {type: ‘currency’}); currencyNames.of(‘USD’); // «US Dollar» currencyNames.of(‘EUR’); // «Euro»
- В DOM е осигурен нулиране на стойността на свойството «Window.name» на празна стойност при зареждане на страница с друга таб. домейна и възстановяване на старата стойност при натискане на бутона «назад» и връщане към старата страница.
- В инструменти за уеб разработка е добавен инструмент, който извежда предупреждение при задаване на стойности за отстъп(и) (margin или padding) в CSS за вътрешни елементи на таблици.

- В панела с инструменти за уеб разработка е осигурено показването на броя на грешките на текущата страница. При кликване на червения индикатор с броя на грешките, може веднага да се премине към уеб конзолата за преглед на списъка с грешки.

Освен нововъведения и корекции на грешки, във Firefox 86 са отстранени 25 уязвимости, от които 18 са маркирани като опасни. 15 уязвимости (събрани под CVE-2021-23979 и CVE-2021-23978) са причинени от проблеми с паметта, като препълване на буфери и достъп до вече освободени области на паметта. Потенциално, тези проблеми могат да доведат до изпълнение на код от злонамерени лица при отваряне на специално оформени страници.
Бета-версия Firefox 87 впечатляващо се отличава с деактивиране по подразбиране на обработчика за клавиша Backspace извън контекста на формите за въвеждане. Премахването на обработчика се дължи на факта, че клавишът Backspace се използва активно при въвеждане на текст във формите, но извън фокуса на формата за въвеждане той се обработва като връщане на предишната страница, което може да доведе до загуба на набрания текст поради неправилно прехвърляне на друга страница. За възстановяване на предишното поведение в about:config е добавена опцията browser.backspace_action. Освен това, когато се използва функцията за търсене на страницата, до лентата за превъртане сега се показват етикети за индикация на позицията на намерените ключови думи. Менюто Web Developer е значително опростено и рядко използваните елементи от менюто Library са премахнати.
Източник: opennet.ru




