Odbyło się wydanie przeglądarki internetowej , a także wersji mobilnej dla platformy Android. Ponadto, przygotowano aktualizację z długoterminowym wsparciem i . Wkrótce przejdzie do etapu przeniesie się do gałęzi Firefox 80, której premiera zaplanowana jest na 25 sierpnia.
:
- W menedżerze haseł dodano możliwość eksportu danych logowania w formacie CSV (pola tekstowe z separatorami, które można zaimportować do arkusza kalkulacyjnego). Podczas eksportu hasła są umieszczane w pliku w formie jawnej. W przyszłości planowane jest również wdrożenie funkcji importu haseł z wcześniej zapisanego pliku CSV (zakłada się, że użytkownik może potrzebować kopii zapasowej i przywracania zapisanych haseł lub przenoszenia haseł z innej przeglądarki).
- ustawienie umożliwiające włączenie dynamicznej izolacji Cookie w zależności od wyświetlanego w pasku adresu domeny («, gdy własne i zewnętrzne osadzenia są określane na podstawie podstawowej domeny witryny). Ustawienie to zostało zaproponowane w konfiguratorze w sekcji ustawień blokowania śledzenia, w rozwijanym bloku metod blokowania Cookie.
- Udoskonalone środki ochrony przed śledzeniem, automatycznie blokujące Cookie używane przez zewnętrzne liczniki. Dla witryn prowadzących śledzenie, Firefox teraz codziennie czyści Cookie i dane w wewnętrznych magazynach, na podstawie list systemów śledzenia z serwisu Disconnect.me.
- Dodano wstępną implementację ekranu z eksperymentalnymi ustawieniami «about:preferences#experimental», który zapewnia interfejs do włączania eksperymentalnych funkcji, podobny do about:flags w Chrome. Na razie ekran jest niedostępny i wymaga ustawienia parametru «browser.preferences.experimental» w about:config w celu włączenia. Z dostępnych do włączenia eksperymentalnych funkcji na razie oferowana jest tylko obsługa ««.
- Dla laptopów opartych na chipach AMD na platformie Windows 10
system kompozycji WebRender. WebRender napisany jest w języku Rust i pozwala na znaczne zwiększenie wydajności renderowania oraz zmniejszenie obciążenia CPU poprzez przeniesienie operacji renderowania zawartości strony na GPU, które realizowane są za pomocą shaderów w GPU. Wcześniej WebRender został włączony na platformie Windows 10 dla GPU Intel, APU AMD Raven Ridge, AMD Evergreen oraz w laptopach z kartami graficznymi NVIDIA. W Linux WebRender na razie dla kart Intel i AMD tylko w nocnych kompilacjach, a nie jest obsługiwany dla kart NVIDIA. Aby wymusić włączenie w about:config, należy aktywować ustawienia «gfx.webrender.all» i «gfx.webrender.enabled» lub uruchomić Firefox z ustawioną zmienną środowiskową MOZ_WEBRENDER=1. - Dla użytkowników z Niemiec na stronie nowej karty dodano nową sekcję z artykułami polecanymi przez serwis Pocket, które wcześniej były proponowane użytkownikom z USA i Wielkiej Brytanii. Personalizacja związana z doborem treści odbywa się po stronie klienta i bez przekazywania informacji o użytkownikach osobom trzecim (do przeglądarki ładowany jest cały zestaw polecanych linków na dany dzień, który jest rankingowany po stronie użytkownika na podstawie historii odwiedzin). Aby wyłączyć polecane treści Pocket, dostępna jest opcja w konfiguratorze (Firefox Home Content/Recommended by Pocket) oraz opcja «browser.newtabpage.activity-stream.feeds.topsites» w about:config.
- Dla systemów Linux z Wayland z powodu problemów ze stabilnością. domyślnie użycie mechanizmu DMABUF do renderowania wideo w tekstury. Aby włączyć, w about:config dostępna jest zmienna
«widget.wayland-dmabuf-video-textures.enabled». - Na stronie about:support pojawił się nowy przycisk «Clear Startup cache» do czyszczenia pamięci podręcznej wpływającej na uruchamianie przeglądarki. Przycisk może pomóc w rozwiązaniu niektórych problemów występujących przy uruchamianiu.
- Linki z atrybutem target="_blank" w tagach <a> i <area> teraz analogicznie do użycia atrybutu rel=»noopener», tzn. traktowane są jako strony niegodne zaufania. Dla stron otwieranych z tych linków nie ustawia się właściwości Window.opener i nie otwiera dostępu do kontekstu, z którego otwarto link.
- Dla iframe w atrybucie sandbox wprowadzono parametr «allow-top-navigation-by-user-activation», który pozwala na wykonywanie nawigacji po stronie rodzica z izolowanego iframe po wyraźnym kliknięciu użytkownika na linku, ale zabrania automatycznego przekierowania. Opcja jest użyteczna do wyświetlania banerów w iframe, umożliwiając przejścia do interesującej reklamy, ale blokując niepożądaną aktywność (np. automatyczne przekierowanie na inne strony).
- Dodano nowe nagłówki HTTP. (COEP) oraz (COOP), umożliwiający włączenie specjalnego trybu izolacji cross-origin dla bezpiecznego korzystania z uprawnionych operacji na stronie, które mogą być stosowane w atakach na zewnętrzne kanały, takich jak Spectre.
- Zwrócona obsługa obiektu (pozwalającego na tworzenie tablic w pamięci dzielonej), wyłączonego po wykryciu ataków klasy Spectre. W celu zapewnienia ochrony przed Spectre obiekt SharedArrayBuffer jest teraz dostępny tylko na stronach przetwarzanych w trybie izolacji cross-origin. W trybie izolacji cross-origin dozwolone jest również stosowanie nieograniczonych precyzyjnie timerów Performance.now().
Aby zdefiniować taką izolację, należy użyć wspomnianych nagłówków Cross-Origin-Embedder-Policy oraz Cross-Origin-Opener-Policy. - Zrealizowano metodę , który zwraca pierwszy wykonaną obietnicę z listy.
- Zrealizowano obiekt do definiowania słabych referencji (weak reference) do obiektów JavaScript, umożliwiających zachowanie referencji do obiektu, ale nieblokujących usunięcia związane obiektu przez zbieracz śmieci.
- Dodano nowe operatory logicznego przypisania: „«, «” i „“. Operator „x ??= y” wykonuje przypisanie tylko wtedy, gdy „x” przyjmuje wartość null lub undefined. Operator „x ||= y” wykonuje przypisanie tylko wtedy, gdy „x” ma wartość FALSE, a w „x &&= y” — TRUE.
- Obiekt , używany do organizacji synchronizacji blokad prymitywów, może być teraz stosowany nie tylko do pamięci dzielonej.
- Do konstruktora dodano wsparcie dla opcji dateStyle i timeStyle.
- W WebAssembly dodano wsparcie (dla bardziej efektywnego modelowania działania memcpy i memmove), (pamięć dzielona & Atomics) oraz (externref).
- W debuggerze JavaScript stosować , pozwalającym na śledzenie asynchronicznie wykonywanych zdarzeń, timeoutów oraz obietnic. Łańcuchy asynchronicznych wywołań wyświetlane są w debuggerze obok zwykłego stosu wywołań, a także są dostarczane dla błędów w konsoli webowej i zapytań w interfejsie inspekcji sieci.
- W konsoli webowej zapewniono wyświetlanie kodów stanu 4xx/5xx w formie błędów, co ułatwia ich wyróżnienie na ogólnym tle. W celu uproszczenia debugowania żądanie może być powtórzone lub przeglądane szczegóły dotyczące żądania i odpowiedzi.
- Błędy JavaScript są teraz wyświetlane nie tylko w konsoli webowej, ale także w debugerze JavaScript, z podświetleniem powiązanej z błędem linii w kodzie oraz z wyświetlaniem podpowiedzi z dodatkowymi informacjami o błędzie.
- Poprawiono niezawodność otwierania kodu źródłowego SCSS i CSS-in-JS w interfejsie inspekcji. Wszystkie panele poprawiły obsługę dopasowań do oryginalnego kodu źródłowego na podstawie mapy źródeł.
- Do narzędzi dla programistów webowych dodano nową zakładkę Application, która udostępnia narzędzia do inspekcji i debugowania service workerów oraz manifestów aplikacji webowych.
- W systemie inspekcji sieci połączono zakładki Messages i Responses.
- W trybie responsywnego designu (Responsive Design Mode) zapewniono symulację gestów dotykowych z przeciąganiem i przesuwaniem za pomocą ruchu myszy, jeśli włączono tryb symulacji ekranów dotykowych.
- będzie ostatnim wydaniem w tej gałęzi. Na początku sierpnia planowane jest stopniowe przenoszenie użytkowników na nową wersję, pod kodowym imieniem Fenix i testowaną pod nazwą Firefox Preview. Wydania Firefox 79 dla Androida opierają się na bazie kodowej Fenix. Nowa wersja silnik GeckoView, oparty na technologiach Firefox Quantum, oraz zestaw bibliotek , które już są używane do budowy przeglądarek i . GeckoView to wariant silnika Gecko, zrealizowany jako osobna biblioteka, którą można aktualizować niezależnie, a Android Components obejmują biblioteki z typowymi komponentami, zapewniającymi działanie kart, autouzupełnianie, podpowiedzi wyszukiwania i inne funkcje przeglądarki. Wymagana jest co najmniej wersja Android 5.0 (wsparcie dla Android 4.4.4 zostało zakończone). Domyślnie dostęp do about:config jest wyłączony.
Oprócz nowości i poprawek błędów w Firefox 79 , z których 15 oznaczono jako niebezpieczne. 12 luk (zebrano pod ) zostały spowodowane problemami z zarządzaniem pamięcią, takimi jak przepełnienia buforów oraz dostęp do już zwolnionych obszarów pamięci. Potencjalnie problemy te mogą prowadzić do wykonania kodu złośliwego przy otwieraniu specjalnie przygotowanych stron.
Źródło: opennet.ru
