Release Chrome 74

Das Unternehmen Google hat Release des Web-Browsers Chrome 74. Gleichzeitig verfĂŒgbar stabile Ausgabe des Open-Source-Projekts Chromium, das die Grundlage von Chrome bildet. Der Browser Chrome unterscheidet sich der Verwendung von Google-Logos, der Möglichkeit, das Flash-Modul auf Anfrage hochzuladen, der VerfĂŒgbarkeit eines Benachrichtigungssystems im Falle eines Absturzes, Modulen zur Wiedergabe von geschĂŒtzten Video-Inhalten, einem System zur automatischen Installation von Updates und der Übertragung bei der Suche von RLZ-Parametern. Die nĂ€chste Version von Chrome 75 ist fĂŒr den 4. Juni geplant.

Haupt- Änderungen in Chrome 74:

  • Bei Eintritt des onUnload-Ereignisses, das beim Schließen der Seite ausgelöst wird, (Angabe der minimalen WortlĂ€nge fĂŒr Trennungen sowie der Anzahl der Zeichen vor und nach dem Bindestrich). werden Pop-ups angezeigt (der Aufruf von window.open() wird blockiert), was den Benutzern helfen wird, sich vor dem erzwungenen Öffnen von Werbeseiten nach dem Schließen verdĂ€chtiger Websites zu schĂŒtzen;
  • Im JavaScript-Engine wurde gibt es jetzt einen neuen Modus JIT-less (Flagge „—jitless“), der es ermöglicht, JavaScript ohne Verwendung von JIT (nur Interpreter wird verwendet) und ohne Zuweisung von ausfĂŒhrbarem Speicher wĂ€hrend der AusfĂŒhrung des Codes auszufĂŒhren. Das Deaktivieren von JIT kann fĂŒr eine erhöhte Sicherheit bei der Arbeit mit potenziell gefĂ€hrlichen Webanwendungen nĂŒtzlich sein sowie fĂŒr die Bereitstellung auf Plattformen, die die Verwendung von JIT verbieten (zum Beispiel in iOS, auf einigen Smart TVs und Spielkonsolen). Bei der Deaktivierung von JIT sinkt die Leistung der AusfĂŒhrung von JavaScript um 40 % im Speedometer 2.0-Test und um 80 % im Web Tooling Benchmark-Test, aber bei der Simulation der Arbeit mit YouTube wurde ein RĂŒckgang der Leistung von nur 6 % festgestellt. Der Speicherverbrauch wird dabei nur geringfĂŒgig um 1.7 % reduziert;
  • In V8 wurden auch viele neue Optimierungen vorgeschlagen. Zum Beispiel wurde die AusfĂŒhrung von Funktionsaufrufen, bei denen die Anzahl der tatsĂ€chlich ĂŒbergebenen Parameter von der beim Definieren der Funktion angegebenen Anzahl der Argumente abweicht, um 60 % beschleunigt. Der Zugriff auf DOM-Eigenschaften wurde durch die Funktion get beschleunigt, was sich positiv auf die Leistung des Angular-Frameworks ausgewirkt hat. Die Verarbeitung von JavaScript-Parsing wurde beschleunigt: Die Optimierung des UTF-8-Decoders hat die Leistung des Parsers im Streaming-Modus (Parsing wĂ€hrend des Ladens) um 8 % gesteigert, wĂ€hrend die Beseitigung ĂŒberflĂŒssiger Deduplication-Operationen einen weiteren Zuwachs von 10.5 % gebracht hat;
  • Es wurden Maßnahmen zur Senkung des Speicherverbrauchs der JavaScript-Engine ergriffen.
    Es wurde ein Code zur Bereinigung des Bytecode-Cache hinzugefĂŒgt, der ungefĂ€hr 15 % der gesamten Heap-GrĂ¶ĂŸe ausmacht. Dem Garbage Collector wurde eine Phase hinzugefĂŒgt, um selten kompilierte Bytecodes aus dem Cache fĂŒr verwendete Funktionen oder Funktionen, die nur bei der Initialisierung aufgerufen werden, auszudrĂ€ngen. Die Entscheidung zur Bereinigung erfolgt basierend auf neuen ZĂ€hlern, die die letzte Zugriffszeit auf den Bytecode berĂŒcksichtigen. Diese Änderung hat es ermöglicht, den Speicherverbrauch um 5–15 % zu reduzieren, ohne die Leistung negativ zu beeinflussen. DarĂŒber hinaus wurde im Bytecode-Compiler die Generierung von absichtlich ungenutztem Code ausgeschlossen, z. B. Code, der nach return oder break folgt (wenn es keinen Jump-Übergang gibt).

    Release Chrome 74
  • FĂŒr WebAssembly wurde UnterstĂŒtzung fĂŒr Threads und atomare Operationen (API WebAssembly Threads und WebAssembly Atomics);
  • FĂŒr die isolierte Bereitstellung von Skripten wurde die UnterstĂŒtzung fĂŒr den Header „#!“ hinzugefĂŒgt, der den Interpreter fĂŒr die AusfĂŒhrung bestimmt. Zum Beispiel könnte eine JavaScript-Datei Ă€hnlich wie folgt aussehen:

    #!/usr/bin/env node
    console.log(42);

  • In CSS wurde eine neue Media-Abfrage „prefers-reduced-motion„ hinzugefĂŒgt, die es der Website ermöglicht, den Zustand der Einstellungen im Betriebssystem im Hinblick auf die Deaktivierung von Animationseffekten zu bestimmen. Mit dieser Abfrage kann der Website-Besitzer plötzliche Fehler verarbeiten und nĂŒtzliche Details zur Fehlersuche anzeigen, wie z. B. einen Stack-Trace. Die Fehlermeldung wurde vereinfacht – es reicht aus, auf den Link zu klicken. erfahren, dass der Benutzer Animationseffekte deaktiviert hat und auch verschiedene Animationsmöglichkeiten auf der Website deaktivieren, z. B. die Wackel-Animation von SchaltflĂ€chen, die zur Aufmerksamkeitserregung verwendet werden;
  • ZusĂ€tzlich zur in Chrome 72 erschienenen Möglichkeit zur Definition von öffentlichen Feldern wurde die UnterstĂŒtzung fĂŒr die Kennzeichnung von Feldern als privat implementiert, wodurch der Zugriff auf ihre Werte nur innerhalb der Klasse möglich ist. Um ein Feld als privat zu kennzeichnen, sollte vor dem Feldnamen das Zeichen „#“ angegeben werden. Wie bei öffentlichen Feldern erfordern private Eigenschaften keine explizite Verwendung des Konstruktors.
  • Der HTTP-Header Feature-Policy, der das Verhalten von APIs und die Aktivierung bestimmter Funktionen steuert (z. B. kann der synchroner Modus von XMLHttpRequest aktiviert oder das Geolocation-API deaktiviert werden), wurde um JavaScript-API zur Kontrolle der AktivitĂ€t einzelner Funktionen erweitert. FĂŒr Entwickler wurden zwei neue Methoden document.featurePolicy und frame.featurePolicy vorgeschlagen, die drei Funktionen bieten:
    allowedFeatures() zur Abfrage der fĂŒr die aktuelle Domain zulĂ€ssigen Funktionen, allowsFeature() zur selektiven ÜberprĂŒfung der Aktivierung bestimmter Funktionen und getAllowlistForFeature() zur Anzeige einer Liste von Domains, fĂŒr die die angegebene Funktion auf der aktuellen Seite aktiviert ist;
  • Experimentelle UnterstĂŒtzung fĂŒr den „chrome://flags#enable-text-fragment-anchor“-Modus hinzugefĂŒgt, Scroll-To-Text, mit dem es möglich ist, Links zu einzelnen Wörtern oder Phrasen zu erstellen, ohne dass im Dokument explizit mit dem Tag „a name“ oder der Eigenschaft „id“ darauf verwiesen wird. Um den Link zu ĂŒbermitteln, wird ein spezieller Parameter „#targetText=“ angeboten, in dem der Text fĂŒr die Weiterleitung angegeben werden kann. Es ist zulĂ€ssig, ein Muster anzugeben, das Phrasen enthĂ€lt, die den Anfang und das Ende des Abschnitts unter Verwendung eines Kommas als Trennzeichen angeben (zum Beispiel „example.com#targetText=startwords, endwords“);
  • Eine Option wurde zum AudioContext-Konstruktor hinzugefĂŒgt, sampleRate, die es ermöglicht, die verwendete Abtastrate fĂŒr Audiooperationen ĂŒber die Web Audio API festzulegen;
  • UnterstĂŒtzung der Klasse hinzugefĂŒgt Intl.Locale, das Methoden zur Analyse und Verarbeitung von lokalisierten Spracheinstellungen, Regionen und Schriftarten bereitstellt, sowie zum Lesen und Schreiben von Unicode-Erweiterungstags und zum Speichern benutzerdefinierter Lokalisierungseinstellungen im serialisierten Format;
  • Mechanismus (SXG). Wir erinnern daran, dass SXG es dem EigentĂŒmer einer Website ermöglicht, bestimmte Seiten auf einer anderen Website durch digitale Signatur zu autorisieren, sodass beim Zugriff auf diese Seiten auf der zweiten Website der Browser dem Benutzer die URL der ursprĂŒnglichen Website anzeigt, obwohl die Seite von einem anderen Host geladen wurde. (SXG) wurde um Funktionen zur zur Information Fehlerbehandlung von Inhaltsanbietern beim Laden von signierten Inhalten, wie z.B. Probleme mit der Zertifikatsverifikation, erweitert. Die Fehlerbehandlung erfolgt ĂŒber die API-Erweiterungen Network Error Logging. Erinnern wir uns daran, dass SXG das Öffnen eines Links in einem neuen Tab oder in einem neuen Container. es dem Inhaber einer Webseite ermöglicht, durch digitale Signaturen die Veröffentlichung bestimmter Seiten auf einer anderen Webseite zu autorisieren, sodass beim Zugriff auf diese Seiten auf der zweiten Webseite der Browser dem Benutzer die URL der ursprĂŒnglichen Webseite anzeigt, obwohl die Seite von einem anderen Host geladen wurde;
  • In die Klasse TextEncoder wurde die Methode encodeInto(), die es ermöglicht, einen kodierten String direkt in einen zuvor reservierten Buffer zu schreiben, eingefĂŒgt. Die Methode encodeInto() ist eine leistungsstarke Alternative zu der Methode encode(), die bei jedem Zugriff eine Buffer-Zuweisung erfordert.
  • Im Service Worker ist sichergestellt wird der Aufruf von client.postMessage() bis zur Bereitschaft des Dokuments gepuffert. Nachrichten, die ĂŒber client.postMessage() gesendet werden, werden bis zur Phase der Ereignisgenerierung DOMContentLoaded, der Festlegung von onmessage oder dem Aufruf von startMessages(); zurĂŒckgehalten.
  • GemĂ€ĂŸ den Anforderungen der CSS-Transitions-Spezifikation Methoden text(), arrayBuffer() und stream() hinzugefĂŒgt, um bestimmte Datentypen zu lesen; werden die Ereignisse transitionrun, transitioncancel, transitionstart und transitionend generiert, wenn die CSS-Transition in die Warteschlange gestellt, abgebrochen, gestartet oder beendet wird.
  • Beim Angeben eines falschen MIME-Typs oder einer falschen Zeichencodierung fĂŒr die XMLHttpRequest mit overrideMimeType() wird jetzt auf UTF-8 anstelle von Latin-1 zurĂŒckgegriffen;
  • Die Eigenschaft „allow-downloads-without-user-activation“ wurde fĂŒr veraltet erklĂ€rt und wird in einer der nĂ€chsten Versionen entfernt. Damit war es möglich, Dateien automatisch herunterzuladen, wĂ€hrend ein iframe verarbeitet wird. In Zukunft wird es erforderlich sein, dass ein Benutzer auf derselben Seite klickt, um den Download zu starten, da dies hĂ€ufig fĂŒr Missbrauch, erzwungene Downloads und die EinfĂŒgung schadhafter Software auf dem Computer des Benutzers verwendet wurde. UrsprĂŒnglich war geplant, diese Eigenschaft in Chrome 74 zu entfernen, aber die Entfernung wurde verschoben bis Chrome 76 verschoben.
  • FĂŒr die Windows-Plattform wurde ein optionales dunkles Design des Benutzerinterfaces angeboten (im letzten Release wurde ein dunkles Design fĂŒr macOS vorbereitet). Da das dunkle Design fast identisch mit dem Aussehen im Inkognito-Modus ist, wurde zur Hervorhebung des privaten Arbeitsmodus ein spezieller Indikator anstelle des Profilbilds hinzugefĂŒgt;
  • FĂŒr Unternehmensbenutzer wurde die Möglichkeit hinzugefĂŒgt, Chrome Browser Cloud Management um die Browsereinstellungen der Benutzer ĂŒber die Google Admin-Konsole zu verwalten;

    Release Chrome 74

Neben Neuerungen und Fehlerbehebungen wurden in der neuen Version 39 SicherheitsanfĂ€lligkeiten. Viele dieser Schwachstellen wurden durch automatisiertes Testen mit Werkzeugen festgestellt, AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer und AFL. Kritische Probleme, die es ermöglichen, alle Sicherheitsebenen des Browsers zu umgehen und Code außerhalb der Sandboxing-Umgebung im System auszufĂŒhren, wurden nicht entdeckt. Im Rahmen des Programms zur Auszahlung von PrĂ€mien fĂŒr die Entdeckung von SicherheitsanfĂ€lligkeiten hat Google fĂŒr die aktuelle Version insgesamt 19 PrĂ€mien in Höhe von 26.837 US-Dollar ausgeschĂŒttet (vier PrĂ€mien in Höhe von 3.000 Dollar, vier PrĂ€mien in Höhe von 2.000 Dollar, eine PrĂ€mie in Höhe von 1.337 Dollar, vier PrĂ€mien in Höhe von 1.000 Dollar, drei PrĂ€mien in Höhe von 500 Dollar). Die Höhe von 4 PrĂ€mien ist noch nicht festgelegt.

Quelle: opennet.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster