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

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

- Операциите за рисуване на елементи Canvas и WebGL са преместени в отделен процес, който поема операциите на GPU. Това изменение значително повиши стабилността и производителността на сайтовете, които използват WebGL и Canvas.
- Целият код, свързан с декодирането на видео, е преместен в нов процес RDD, което повиши сигурността чрез изолация на видео обработващите единици в отделен процес.
- В сборките за Linux и Android е включена защита от атаки, манипулиращи стека и купчината. Защитата е основана на използването на опцията „-fstack-clash-protection“, при задаването на която компилаторът вмъква проверъчни повиквания (probe) при всяко статично или динамично разпределение на паметта за стека, което позволява откриването на опити за препълване на стека и блокира атаките, свързани с манипулирането на стека и купчината чрез прехвърляне на потока на изпълнение през защитните страници на стека.
- В читателския режим е добавена възможност за преглеждане на HTML страници, запазени на локалния компютър.
- По подразбиране е активно поддържането на формат за изображения AVIF (AV1 Image Format), в който са внедрени технологии за вътрешно компресиране от видео кодирането AV1. Контейнерът за разпространение на компресираните данни в AVIF е напълно аналогичен на HEIF. AVIF поддържа както изображения в HDR (висок динамичен обхват) и цветно пространство с широка гама, така и в стандартен динамичен обхват (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([‘en’], {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




