Chrome 77-versie

Google heeft een nieuwe versie van de internetbrowser Chrome uitgebracht. Tegelijkertijd is er een nieuwe release van het open-source Chromium-project – de basis van Chrome – beschikbaar. De volgende release staat gepland voor 22 oktober.

In de nieuwe versie:

  • Het afzonderlijk markeren van sites met certificaten op EV-niveau (Extended Validation) is stopgezet. Informatie over het gebruik van EV-certificaten wordt nu alleen weergegeven in het vervolgkeuzemenu dat wordt weergegeven wanneer u op het beveiligde verbindingspictogram klikt. De naam van het door de certificeringsinstantie geverifieerde bedrijf waaraan het EV-certificaat is gekoppeld, wordt niet meer weergegeven in de adresbalk;
  • Verhoogde isolatie van site-handlers. Extra bescherming voor cross-site gegevens, zoals cookies en HTTP-bronnen, ontvangen van sites van derden die worden beheerd door aanvallers. Isolatie werkt zelfs als een aanvaller een fout in het weergaveproces ontdekt en probeert code in de context ervan uit te voeren;
  • Er is een nieuwe pagina toegevoegd die nieuwe gebruikers verwelkomt (chrome://welcome/), die wordt weergegeven in plaats van de standaardinterface voor het openen van een nieuw tabblad na de eerste keer opstarten van Chrome. Op de pagina kunt u een bladwijzer maken voor populaire Google-services (GMail, YouTube, Maps, News en Translate), snelkoppelingen toevoegen aan de pagina 'Nieuw tabblad', verbinding maken met een Google-account om Chrome-synchronisatie in te schakelen en Chrome instellen als de standaardoproep op het systeem .
  • Het nieuwe tabbladmenu, weergegeven in de rechterbovenhoek, heeft nu de mogelijkheid om een ​​achtergrondafbeelding te laden, evenals opties voor het selecteren van een thema en het instellen van een blok met snelkoppelingen voor snelle navigatie (meest bezochte sites, handmatige gebruikersselectie en blokken verbergen met snelkoppelingen). De instellingen zijn momenteel als experimenteel gepositioneerd en vereisen activering via de vlaggen “chrome://flags/#ntp-customization-menu-v2” en “chrome://flags/#chrome-colors-custom-color-picker”;
  • Er is een animatie van het sitepictogram in de koptekst van het tabblad weergegeven, wat aangeeft dat de pagina bezig is met laden;
    De vlag "--guest" toegevoegd, waarmee u Chrome kunt starten vanaf de opdrachtregel in de gastinlogmodus (zonder verbinding te maken met een Google-account, zonder browseractiviteit op schijf op te slaan en zonder de sessie op te slaan);
  • Het opschonen van vlaggen in chrome://flags, dat begon in de laatste release, gaat door. In plaats van vlaggen wordt het nu aanbevolen om regelsets te gebruiken om browsergedrag te configureren;
  • Er is een knop 'Verzenden naar uw apparaten' toegevoegd aan het contextmenu van de pagina, het tabblad en de adresbalk, waarmee u een link naar een ander apparaat kunt sturen met behulp van Chrome Sync. Nadat u een bestemmingsapparaat hebt geselecteerd dat aan hetzelfde account is gekoppeld en de link heeft verzonden, wordt er een melding weergegeven op het doelapparaat om de link te openen;
  • In de Android-versie is de pagina met de lijst met gedownloade bestanden volledig opnieuw ontworpen, waarbij in plaats van een vervolgkeuzemenu met inhoudssecties knoppen zijn toegevoegd om de algemene lijst te filteren op inhoudstype, en miniaturen van gedownloade afbeeldingen worden nu over de gehele breedte van het scherm getoond;
  • Er zijn nieuwe statistieken toegevoegd om de snelheid van het laden en weergeven van inhoud in de browser te evalueren, waardoor de webontwikkelaar kan bepalen hoe snel de hoofdinhoud van de pagina beschikbaar wordt voor de gebruiker. Eerder aangeboden tools voor weergavecontrole maakten het mogelijk om alleen het feit te beoordelen dat het renderen was begonnen, maar niet de gereedheid van de pagina als geheel. Chrome 77 biedt een nieuwe Largest Contentful Paint API, waarmee u de weergavetijd van grote (voor de gebruiker zichtbare) elementen in het zichtbare gebied kunt achterhalen, zoals afbeeldingen, video's, blokelementen en pagina-achtergronden;
  • De PerformanceEventTiming API toegevoegd, die informatie geeft over de vertraging vóór de eerste gebruikersinteractie (bijvoorbeeld het indrukken van een toets op het toetsenbord of de muis, klikken of de aanwijzer verplaatsen). De nieuwe API is een subset van de EventTiming API die aanvullende informatie biedt om de responsiviteit van de interface te meten en te optimaliseren;
  • Nieuwe functies toegevoegd voor formulieren die het gemakkelijker maken om uw eigen niet-standaard formulierbesturingselementen te gebruiken (niet-standaard invoervelden, knoppen, enz.). De nieuwe "formdata"-gebeurtenis maakt het mogelijk om JavaScript-handlers te gebruiken om gegevens aan het formulier toe te voegen wanneer het wordt verzonden, zonder dat de gegevens in verborgen invoerelementen hoeven te worden opgeslagen.
    De tweede nieuwe functie is ondersteuning voor het maken van aangepaste elementen die aan een formulier zijn gekoppeld en die fungeren als ingebouwde formulierbesturingselementen, inclusief mogelijkheden zoals het inschakelen van invoervalidatie en het activeren van gegevens die naar de server worden verzonden. Er is een eigenschap formAssociated geïntroduceerd om een ​​element te markeren als een formulierinterfacecomponent, en er is een aanroep AttachInternals() toegevoegd om toegang te krijgen tot aanvullende methoden voor formuliercontrole, zoals setFormValue() en setValidity();
  • In de Origin Trials-modus (experimentele functies die afzonderlijke activering vereisen) is een nieuwe Contact Picker API toegevoegd, waarmee de gebruiker vermeldingen uit het adresboek kan selecteren en bepaalde details daarover naar de site kan overbrengen. Bij de aanvraag wordt een lijst met eigenschappen bepaald die moeten worden verkregen (bijvoorbeeld volledige naam, e-mailadres, telefoonnummer). Deze eigenschappen worden duidelijk weergegeven aan de gebruiker, die de uiteindelijke beslissing neemt om de gegevens al dan niet over te dragen. De API kan bijvoorbeeld worden gebruikt in een webmailclient om ontvangers voor een verzonden brief te selecteren, in een webapplicatie met de VoIP-functie om een ​​oproep naar een specifiek nummer te initiëren of in een sociaal netwerk om reeds geregistreerde vrienden te zoeken. .
    Origin Trial impliceert de mogelijkheid om met de gespecificeerde API te werken vanuit applicaties gedownload van localhost of 127.0.0.1, of na registratie en ontvangst van een speciaal token dat een beperkte tijd geldig is voor een specifieke site;
  • Voor formulieren is het attribuut “enterkeyhint” geïmplementeerd, waarmee u het gedrag kunt definiëren wanneer u op de Enter-toets op het virtuele toetsenbord drukt. Het attribuut kan de waarden enter, done, go, next, previous, search en send aannemen;
  • Een documentdomeinregel toegevoegd die de toegang tot de eigenschap “document.domain” regelt. Standaard is toegang toegestaan, maar als deze wordt geweigerd, zal een poging om de waarde van “document.domain” te wijzigen resulteren in een fout;
  • Er is een LayoutShift-aanroep toegevoegd aan de Performance API om veranderingen in de positie van DOM-elementen op het scherm bij te houden.
    De grootte van de HTTP “Referer” header is beperkt tot 4 KB; als deze waarde wordt overschreden, wordt de inhoud afgekapt tot de domeinnaam;
  • Het url-argument in de functie registerProtocolHandler() is beperkt tot het gebruik van alleen de schema's http:// en https:// en staat nu de schema's "data:" en "blob:" niet toe;
  • Ondersteuning toegevoegd voor het opmaken van eenheden, valuta's, wetenschappelijke en compacte notaties aan de Intl.NumberFormat-methode (bijvoorbeeld "Intl.NumberFormat('en', {style: 'unit', unit: 'meter-per-second'}") ;
  • Nieuwe CSS-eigenschappen overscroll-behavior-inline en overscroll-behaviour-block toegevoegd om het scrollgedrag te controleren wanneer de logische grens van het scrollgebied wordt bereikt;
  • De CSS-eigenschap witruimte ondersteunt nu de waarde break-spaces;
  • Service Workers hebben ondersteuning toegevoegd voor HTTP Basic-authenticatie en het weergeven van een standaarddialoogvenster voor het invoeren van inlogparameters;
  • De Web MIDI API kan nu alleen worden gebruikt in de context van een beveiligde verbinding (https, lokaal bestand of localhost);
  • De WebVR 1.1 API is verouderd verklaard en vervangen door de WebXR Device API, die toegang geeft tot componenten voor het creëren van virtuele en augmented reality en het werk verenigt met verschillende klassen apparaten, van stationaire virtual reality-helmen tot oplossingen op basis van mobiele apparaten.
    In de ontwikkelaarstools is de mogelijkheid toegevoegd om CSS-eigenschappen van een DOM-knooppunt naar het klembord te kopiëren via het contextmenu, opgeroepen door met de rechtermuisknop op een knooppunt in de DOM-boom te klikken. Er is een interface toegevoegd (Show Rendering/Layout Shift Regions) om lay-outverschuivingen bij te houden als gevolg van het ontbreken van tijdelijke aanduidingen voor advertenties en afbeeldingen (bij het laden van de volgende afbeelding verschuift de tekst tijdens het bekijken). Het auditdashboard is bijgewerkt naar de Lighthouse 5.1-release. Automatisch overschakelen naar het donkere DevTools-thema ingeschakeld bij gebruik van een donker thema in het besturingssysteem. In de netwerkinspectiemodus is een vlag toegevoegd voor het laden van een bron uit de prefetch-cache. Ondersteuning toegevoegd voor het weergeven van pushberichten en meldingen in het applicatiepaneel. In de webconsole worden bij het bekijken van een voorbeeld van objecten nu privévelden van klassen weergegeven;
  • In de V8 JavaScript-engine is de opslag van statistieken over de typen operanden die in verschillende bewerkingen worden gebruikt geoptimaliseerd (hiermee kunt u de uitvoering van deze bewerkingen optimaliseren, rekening houdend met specifieke typen). Om het geheugengebruik te verminderen, worden typebewuste vectoren nu pas in het geheugen geplaatst nadat een bepaalde hoeveelheid bytecode is uitgevoerd, waardoor de noodzaak voor optimalisaties voor functies met een korte levensduur wordt geëlimineerd. Met deze wijziging kunt u 1-2% geheugen besparen in de versie voor desktopsystemen en 5-6% voor mobiele apparaten;
  • Verbeterde schaalbaarheid van WebAssembly-achtergrondcompilatie - hoe meer processorkernen in het systeem, hoe groter het voordeel van extra optimalisaties. Op een 24-core Xeon-machine werd de compilatietijd voor de Epic ZenGarden-demo-app bijvoorbeeld gehalveerd;

Naast innovaties en bugfixes elimineert de nieuwe versie 52 kwetsbaarheden. Veel van de kwetsbaarheden zijn geïdentificeerd als resultaat van geautomatiseerd testen met behulp van de tools AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer en AFL. Eén probleem (CVE-2019-5870) wordt als kritiek aangemerkt, d.w.z. Hiermee kunt u alle niveaus van browserbeveiliging omzeilen en code uitvoeren op het systeem buiten de sandbox-omgeving. Details over de kritieke kwetsbaarheid zijn nog niet bekendgemaakt; het is alleen bekend dat deze kan leiden tot toegang tot een reeds vrijgemaakt geheugengebied in de multimediagegevensverwerkingscode. Als onderdeel van het programma om contante beloningen uit te betalen voor het ontdekken van kwetsbaarheden voor de huidige release, betaalde Google 38 beloningen ter waarde van $33500 (één beloning van $7500, vier beloningen van $3000, drie beloningen van $2000, vier beloningen van $1000 en acht beloningen van $500). De omvang van de 18 beloningen is nog niet vastgesteld.

Bron: linux.org.ru

Voeg een reactie