Wydanie Chrome 75

Firma Google przedstawiła wydanie przeglądarki internetowej Chrome 75. Jednocześnie dostępne stabilne wydanie projektu open source Chromium, będącego podstawą Chrome. Przeglądarka Chrome wyróżnia się z użyciem logo Google, możliwością pobierania modułu Flash na żądanie, wbudowanym systemem przesyłania powiadomień w przypadku awarii, modułami do odtwarzania chronionych treści wideo (DRM), systemem automatycznej instalacji aktualizacji oraz przesyłaniem podczas wyszukiwania parametrów RLZ. Następna wersja Chrome 76 jest zaplanowana na 30 lipca.

Podstawowe zmiany do Chrome 75:

  • W metodzie canvas.getContext() dodano flaga „desynchronized” do przetwarzania kontekstów Canvas (2D lub WebGL) z wykorzystaniem alternatywnego systemu renderowania, zapewniającego minimalne opóźnienia poprzez ominięcie standardowego mechanizmu aktualizacji DOM i bezpośrednie wyjście przez OpenGL;
  • Rozszerzono API Web Share (obiekt navigator.share), za pomocą którego można zamiast listy pojedynczych przycisków wygenerować zjednoczony przycisk do publikacji w mediach społecznościowych, odpowiednich dla odwiedzającego. W nowej wersji w API dodano możliwość wywołania standardowego okna dialogowego do przesyłania plików do innych aplikacji (np. na Androidzie wyświetla się blok do wysyłania przez e-mail, Bluetooth itd.);
  • Zrealizowano możliwość rozdzielania grup cyfr w literach cyfrowych znakiem podkreślenia. Na przykład, aby poprawić czytelność dużych liczb w kodzie, można podać 1_000_000_000, a ta liczba zostanie przetworzona jako 1000000000;
  • Dla wszystkich użytkowników wersji desktopowej jest teraz włączony domyślnie tryb ścisłej izolacji witryn, w którym strony z różnych hostów zawsze są umieszczane w pamięci różnych procesów, z każdą z nich korzystającą z własnego piaskownicy. Główną cechą trybu ścisłej izolacji jest podział nie według zakładek, ale według domen, tj. jeśli wcześniej zawartość ładowana z innych domen skryptów, iframe i popupów była wykonywana w tym samym procesie co podstawowa witryna, to teraz będą one podzielone na różne procesy;
  • Dodatki, które znalazły się na czarnej liście, będą teraz całkowicie usuwane, a nie wyłączane z przejściem w tryb nieaktywny.
  • W wbudowanym menedżerze zadań Chrome (Ustawienia > Więcej narzędzi > Menedżer zadań) zapewniono wyświetlanie obsługujących Service worker;
  • W metodzie window.open() dodano atrybut „noreferrer„, który pozwala otworzyć stronę bez wypełniania nagłówka Referer;
  • Dodano dyrektywy CSP (Content Security Policy) „script-src-attr”, „script-src-elem”, „style-src-attr” i „style-src-elem”, zapewniające funkcjonalność dyrektyw script i style, ale z możliwością zastosowania do poszczególnych obsługujących zdarzenia, elementów lub atrybutów;
  • W API Uwierzytelniania w sieci dodano wsparcie FIDO CTAP2 PIN do korzystania z przypisanego przez użytkownika kodu PIN do autoryzacji operacji przy użyciu kluczy obsługujących protokół FIDO CTAP2. W konfiguratorze w sekcji „Zaawansowane” pojawił się punkt „Zarządzaj kluczami zabezpieczeń”, w którym można przypisać kod PIN do ochrony kluczy umieszczonych na pamięci USB, a także opcja resetowania klucza (czyszczenia wszystkich danych i PIN);
  • W API Web Animations dodano obiekty
    AnimationEffect i KeyframeEffect, które umożliwiają interaktywne zarządzanie animowanymi elementami i czasowaniem (czas trwania, opóźnienia).
    Dodatkowo dodano nowy konstruktor Animation(), który oferuje szersze możliwości zarządzania animacją. Wcześniej API Web Animations pozwalało na tworzenie animacji za pomocą metody Element.animate(), zwracającej już utworzony obiekt Animation. Teraz programista może zarządzać jego tworzeniem przez jawne wywołanie konstruktora, w którym na przykład można określić obiekt KeyframeEffect;
  • Dodano opcję HTMLVideoElement.playsInline, który wymusza na przeglądarce odtwarzanie wideo w obszarze odtwarzania elementu (na przykład dla wykrycia metody odtwarzania w trybie pełnoekranowym);
  • W metodzie MediaStreamTrack.getCapabilities() wprowadzono możliwość uzyskania zakresu dopuszczalnych wartości dla właściwości związanych z urządzeniami audio (częstotliwość próbkowania, opóźnienia, liczba kanałów itp.);
  • W WebRTC dodano API RTCDtlsTransport do pozyskiwania informacji o aktywnych transportach, takich jak korzystanie z SCTP lub DTLS (Datagram Transport Layer Security), przez które są wysyłane lub odbierane pakiety RTP i RTCP. Dodano również interfejs RTCIceTransport, który dostarcza informacje o stanie transportów
    ICE, używanych w obiekcie RTCPeerConnection;
  • W nagłówku Cache-Control wprowadzono dyrektywę „stale-while-revalidate„, która pozwala na określenie dodatkowego okna czasowego, w którym przeglądarka może korzystać z zasobu z przestarzałym czasem asynchronicznego ponownego sprawdzenia aktualności;
  • Dodano możliwość Scroll Snap Stop dla określenia przywiązania do elementów podczas inercyjnego przewijania (na przykład szeroki gest przewijania przy wyborze w liście obrazów spowoduje wybór nie ostatniego elementu, a następnego);
  • W wersji na Androida poprawiono interfejs automatycznego uzupełniania danych logowania w formularzach uwierzytelniania. Blok z podpowiedzią jest teraz wyświetlany bezpośrednio nad ekranową klawiaturą i przy kliknięciu pokazuje możliwe zapisane opcje zamiast klawiatury ekranowej, nie zasłaniając formularza wprowadzania;
  • Dodano eksperymentalne wsparcie dla trybu czytania (Reader Mode), w którym wyświetlany jest tylko istotny tekst, a wszystkie towarzyszące elementy sterujące, banery, menu, panele nawigacyjne i inne niezwiązane z treścią części strony są ukrywane. Włączenie wsparcia dla nowego trybu odbywa się za pomocą opcji chrome://flags/#enable-reader-mode, po czym w rozwijanym menu pojawia się pozycja do jego używania;
  • W silniku JavaScript V8 wprowadzono tryb jawnego buforowania wyników kompilacji WebAssembly (przy ponownym otwieraniu strony wcześniej przetworzone komponenty WebAssembly będą uruchamiane z pamięci podręcznej). W
    WebAssembly dodano również nowe instrukcje memory.copy, memory.fill, table.copy, memory.init i table.init do kopiowania, wypełniania i inicjowania dużych obszarów pamięci;
  • Dodano wsparcie dla bezpośredniego przetwarzania skryptów w locie w miarę ich ładowania z sieci bez angażowania głównego wątku Chromu. Wcześniej wątek najpierw był przyjmowany w głównym wątku, skąd był przekazywany do parsera. Tego typu organizacja prowadziła do tego, że przekazywanie mogło być blokowane przez inne zadania wykonywane w głównym wątku, takie jak analiza HTML i wykonywanie innych skryptów JavaScript. Teraz to przekazywanie zostało zniesione;
  • Ulepszenia w narzędziach dla programistów webowych:
    • W trybie inspekcji CSS zapewniono autouzupełnianie nazw i podstawowych wartości funkcji, które można stosować w właściwościach CSS (na przykład „filter: blur(1px)”). Proponowane wartości od razu odzwierciedlają się w przeglądanym układzie strony;
      Wydanie Chrome 75
    • W konsoli komend, wywoływanej wciśnięciem Ctrl+Shift+P, zrealizowano polecenie „Clear Site Data” do usuwania wszystkich danych związanych ze stroną (odpowiednik wywołania menu Application > Clear Storage), w tym Service workers, localStorage, sessionStorage, IndexedDB, Web SQL, Cookies, Cache i Application Cache;
    • Dodano możliwość przeglądania wszystkich istniejących baz danych IndexedDB (wcześniej w zakładce Aplikacja > IndexedDB można było zobaczyć bazy danych dla bieżącej domeny, co uniemożliwiało, na przykład, inspekcję użycia IndexedDB w blokach ładowanych przez iframe);

      Wydanie Chrome 75
    • W interfejsie analizy sieci w podpowiedzi, wyświetlanej po najechaniu na pola w kolumnie „Rozmiar”, teraz wyświetlany jest rozmiar zasobu w jego oryginalnej postaci, bez kompresji;

      Wydanie Chrome 75
    • W panelu debugowania zapewniono oddzielne wyświetlanie informacji o stanie punktów zatrzymania, związanych z poszczególnymi częściami złożonych wyrażeń w linii (punkty zatrzymania inline), na przykład, ustawionych w łańcuchu wywołań metod;

      Wydanie Chrome 75
    • W panelach analizy IndexedDB i Cache zrealizowano wyświetlanie liczników ogólnej liczby zasobów w bazie danych lub pamięci podręcznej;
      Wydanie Chrome 75
  • W eksperymentalnych wersjach Canary dodano wsparcie
    odwołania do DNS przez HTTPS (DoH, DNS over HTTPS), które można aktywować w chrome://flags#dns-over-https. DoH może okazać się przydatne w celu uniknięcia wycieków informacji o żądanych nazwach hostów przez serwery DNS dostawcy, w walce z atakami MITM i modyfikacją ruchu DNS, przeciwdziałania blokadom na poziomie DNS lub organizowania pracy w przypadku braku możliwości bezpośredniego dostępu do serwerów DNS (na przykład, podczas pracy przez proxy);

Oprócz wprowadzenia nowości i poprawy błędów w nowej wersji usunięto 42 podatności. Wiele luk zostało wykrytych w wyniku automatycznego testowania narzędziami AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Krytycznych problemów, które pozwalają obejść wszystkie poziomy ochrony przeglądarki i wykonać kod w systemie poza środowiskiem sandbox, nie wykryto. W ramach programu wypłaty nagród za odkrycie podatności dla bieżącej wersji firma Google wypłaciła 13 nagród o łącznej wartości 9000 dolarów USA (jedna nagroda $5000, dwie nagrody $1000 i cztery nagrody $500). Wartość 7 nagród nie została jeszcze określona.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster