Beëindigingen en verwijderingen in Chrome 99

De bètaversie van Chrome 99 is uitgebracht op 3 februari 2022 en zal naar verwachting begin maart 2022 de stabiele versie worden.

Verwijder de Battery Status API op onveilige oorsprong

Battery Status API wordt niet langer ondersteund op onveilige oorsprongen , zoals HTTP-pagina's of HTTPS-iframes die zijn ingebed in HTTP-pagina's. Met de Battery Status API hebben webontwikkelaars onder meer toegang tot het laadniveau van de batterij van een systeem en of deze wordt opgeladen. Het is een krachtige functie die al meer dan tien jaar bestaat en als zodanig oorspronkelijk werd ontworpen met verschillende beveiligingsbeperkingen.

Verwijder font-family -webkit-standaard

Deze versie van Chrome verwijdert de ondersteuning voor de font-family waarde "-webkit-standard" . Deze waarde is slechts een alias voor het eigen trefwoord "-webkit-body" en wordt alleen zichtbaar omdat deze is overgenomen van WebKit. Als u dit verwijdert, wordt de afstemming met de CSS-specificaties en met Firefox verbeterd.

Verwijder GamepadList

De methode navigator.getGamepads() retourneert nu een array met Gamepad objecten in plaats van een GamepadList . GamepadList wordt niet langer ondersteund in Chrome. Hiermee komt Chrome in lijn met de specificatie en met Gecko en Webkit. Voor informatie over gamepads in het algemeen, zie De Chrome-dinogame spelen met je gamepad .

Update WebCodecs zodat deze overeenkomen met de specificatie

Chrome heeft twee items verwijderd vanwege recente wijzigingen in de WebCodecs-specificatie.

De methode EncodedVideoChunkOutputCallback() gebruikt een EncodedVideoChunkMetadata woordenboek. Voorheen bevond een lid met de naam temporalLayerId zich op EncodedVideoChunkMetadata.temporalLayerId . In overeenstemming met de specificatie bevindt deze zich nu op EncodedVideoChunkMetadata.SvcOutputMetadata.temporalLayerId .

De specificatie vereist dat de VideoFrame() -constructor een tijdstempelargument ( VideoFrameInit.timestamp ) bevat voor CanvasImageSource typen die niet impliciet een tijdstempel hebben (bijvoorbeeld HTMLCanvasElement ). Als u de tijdstempel niet opneemt, zou dit moeten resulteren in een TypeError , maar Chrome heeft de tijdstempel voorheen standaard ingesteld op nul. Dit lijkt nuttig, maar is problematisch als u het VideoFrame vervolgens naar een VideoEncoder stuurt, waar tijdstempels worden gebruikt om de bitsnelheid te regelen.

Beëindigingsbeleid

Om het platform gezond te houden, verwijderen we soms API's van het webplatform die hun beloop hebben gehad. Er kunnen veel redenen zijn waarom we een API zouden verwijderen, zoals:

  • Ze worden vervangen door nieuwere API's.
  • Ze worden bijgewerkt om wijzigingen in de specificaties weer te geven om afstemming en consistentie met andere browsers te bewerkstelligen.
  • Het zijn vroege experimenten die nooit tot bloei zijn gekomen in andere browsers en die dus de ondersteuningslast voor webontwikkelaars kunnen vergroten.

Sommige van deze wijzigingen zullen gevolgen hebben voor een zeer klein aantal sites. Om problemen van tevoren op te lossen, proberen we ontwikkelaars hiervan vooraf op de hoogte te stellen, zodat ze de vereiste wijzigingen kunnen aanbrengen om hun sites draaiende te houden.

Chrome heeft momenteel een proces voor beëindiging en verwijdering van API's , in essentie:

  • Kondig het aan op de blink-dev mailinglijst.
  • Stel waarschuwingen in en geef tijdschalen in de Chrome DevTools Console wanneer er gebruik wordt gedetecteerd op de pagina.
  • Wacht, controleer en verwijder de functie zodra het gebruik afneemt.

Je kunt een lijst met alle verouderde functies vinden op chromestatus.com met behulp van het verouderde filter en verwijderde functies door het verwijderde filter toe te passen. We zullen ook proberen enkele van de veranderingen, redeneringen en migratiepaden in deze berichten samen te vatten.