De release van de webbrowser Firefox 87 heeft plaatsgevonden. Bovendien is een update voor de long-term support tak 78.9.0 gepresenteerd. De tak Firefox 88 is nu in de bètafase, met een release gepland op 20 april.
Belangrijkste vernieuwingen:
- Bij het gebruik van de zoekfunctie en het activeren van de modus voor het markeren van alle gevonden overeenkomsten (Highlight All) worden nu labels op de scrollbalk weergegeven om de positie van de gevonden sleutels aan te geven.

- Zelden gebruikte elementen zijn uit het menu Bibliotheek verwijderd. In het menu Bibliotheek zijn alleen links naar bladwijzers, geschiedenis en downloads overgebleven (gesynchroniseerde tabbladen, recente bladwijzers en de Pocket-lijst zijn verwijderd). Op de screenshot hieronder is links de eerdere staat weergegeven en rechts de nieuwe staat in Firefox 87:


- Het menu Web Developer is aanzienlijk vereenvoudigd — afzonderlijke links naar tools (Inspector, Web Console, Debugger, Network Style Error, Performance, Storage Inspector, Accessibility en Application) zijn samengevoegd tot één item 'Web Developer Tools'.


- Het menu Help is vereenvoudigd, waarbij links naar ondersteuningspagina's, sneltoetsen en een overzichtstocht zijn verwijderd. Deze zijn nu beschikbaar op de algemene pagina 'Get Help'. De knop voor het importeren vanuit een andere browser is verwijderd.
- Er is een SmartBlock-mechanisme toegevoegd dat problemen op websites oplost die ontstaan door het blokkeren van externe scripts in de privé browse-modus of bij het inschakelen van de strikte blokkering van ongewenste inhoud. SmartBlock kan de prestaties van sommige websites aanzienlijk verbeteren, die traag zijn vanwege het onvermogen om tracking-scripts te laden. SmartBlock vervangt automatisch de gebruikte tracking-scripts door placeholders, wat een correcte laadtijd van de website waarborgt. Placeholders zijn beschikbaar voor enkele populaire gebruikerstracking-scripts die op de Disconnect-lijst staan, inclusief scripts met Facebook-, Twitter-, Yandex-, Vkontakte- en Google-widgets.
- De backspace-toets handler is standaard uitgeschakeld buiten invoervelden. De verwijdering van de handler is te verklaren doordat de backspace-toets vaak wordt gebruikt bij het typen in formulieren, maar buiten de focus van een invoerveld wordt deze behandeld als een terugkeer naar de vorige pagina, wat kan leiden tot verlies van getypte tekst door onbedoeld naar een andere pagina te navigeren. Om het oude gedrag te herstellen, is er in about:config een optie browser.backspace_action toegevoegd.
- De vorming van de HTTP-header Referer is gewijzigd. Standaard is de policy 'strict-origin-when-cross-origin' ingesteld, wat betekent dat paden en parameters worden weggelaten bij het verzenden van een verzoek naar andere hosts bij een HTTPS-verzoek, de Referer wordt verwijderd bij een overgang van HTTPS naar HTTP en de volledige Referer wordt doorgegeven voor interne navigaties binnen dezelfde website. Deze wijziging geldt voor reguliere navigatieverzoeken (het klikken op links), automatische redirects en bij het laden van externe bronnen (afbeeldingen, CSS, scripts). Bijvoorbeeld, bij een klik op een link naar een andere website via HTTPS wordt nu in plaats van 'Referer: https://www.example.com/pad/?argumenten' 'Referer: https://www.example.com/' verzonden.
- Voor een klein percentage van de gebruikers is de Fission-modus ingeschakeld met een verbeterde multiprocessingarchitectuur voor striktere isolatie van pagina's. Wanneer Fission is geactiveerd, worden pagina's van verschillende websites altijd in het geheugen van verschillende processen geplaatst, elk met zijn eigen geïsoleerde sandbox. Dit proces splitsen gebeurt niet op tabs, maar op domeinen, wat extra isolatie biedt tegen externe scripts en iframe-blokken. De Fission-modus kan handmatig worden ingeschakeld op de pagina about:preferences#experimental of via de variabele 'fission.autostart=true' in about:config. De activering kan worden gecontroleerd op de pagina about:support.
- De experimentele implementatie van de mechanismen voor het snel openen van TCP-verbindingen (TFO - TCP Fast Open, RFC 7413) is verwijderd. TFO maakt het mogelijk om het aantal stappen voor het tot stand brengen van een verbinding te verminderen door de eerste en tweede stap van het klassieke drie-staps proces te combineren in één verzoek en gegevens aan het begin van het verbindingsproces te verzenden. Standaard was de TCP Fast Open-modus uitgeschakeld en vereiste het een wijziging in about:config om te activeren (network.tcp.tcp_fastopen_enable).
- In overeenstemming met de wijzigingen in de specificaties is de aanwezigheid van het element in controles met behulp van de pseudo-klassen ':link', ':visited' en ':any-link' stopgezet.
- Niet-standaard waarden voor de CSS-parameter caption-side - left, right, top-outside en bottom-outside zijn verwijderd (voor herstel is de instelling layout.css.caption-side-non-standard.enabled beschikbaar).
- Standaard ingeschakeld zijn het evenement 'beforeinput' en de methode getTargetRanges(), waarmee webtoepassingen het bewerkingsgedrag kunnen overschrijven voordat de DOM-boom door de browser wordt gewijzigd, en meer controle over invoergebeurtenissen kunnen krijgen. Het evenement 'beforeinput' wordt verzonden naar de handler of een ander element met de 'contenteditable' attribuut voordat de waarde van het element wordt gewijzigd. De methode getTargetRanges(), die wordt geleverd door het inputEvent-object, retourneert een array met waarden die aangeven welk deel van de DOM zal worden gewijzigd als het invoergebeuren niet wordt geannuleerd.
- Voor webontwikkelaars is in de inspectiemodus de mogelijkheid geïmplementeerd om mediavragen 'prefers-color-scheme' te simuleren voor het testen van donkere en lichte thema's zonder de thema-instellingen in het besturingssysteem te wijzigen. Om de simulatie van het donkere en lichte thema in te schakelen, zijn er in de rechterbovenhoek van de ontwikkelaarstools knoppen met zon- en maanafbeeldingen toegevoegd.
- In de inspectiemodus is de mogelijkheid toegevoegd om de pseudo-klasse ':target' te activeren voor het geselecteerde element, vergelijkbaar met eerder ondersteunde pseudo-klassen zoals ':hover', ':active', ':focus', ':focus-within', ':focus-visible' en ':visited'.

- In de inspectiemodus is de verwerking van inactieve CSS-regels verbeterd. In het bijzonder wordt de eigenschap 'table-layout' nu inactief voor elementen die geen tabellen zijn, en de eigenschappen 'scroll-padding-*' worden gemarkeerd als inactief voor elementen die geen scrollen ondersteunen. De foutieve markering van de eigenschap 'text-overflow' voor bepaalde waarden is verwijderd.
Naast vernieuwingen en foutoplossingen zijn in Firefox 87 12 kwetsbaarheden verholpen, waarvan er 7 als gevaarlijk zijn gemarkeerd. 6 kwetsbaarheden (samengevoegd onder CVE-2021-23988 en CVE-2021-23987) zijn veroorzaakt door geheugenproblemen, zoals buffer-overflows en het openen van al vrijgegeven geheugenruimten. Deze problemen kunnen potentieel leiden tot de uitvoering van kwaadaardige code bij het openen van speciaal opgemaakte pagina's.
De in bèta-testfase getreden versie van Firefox 88 is opmerkelijk vanwege de ondersteuning voor pinch-to-zoom op touchpads in Linux met grafische omgevingen op basis van het Wayland-protocol en het standaard inschakelen van ondersteuning voor het afbeeldingsformaat AVIF (AV1 Image Format), dat gebruikmaakt van intra-frame compressietechnologieën uit het video-codeerformaat AV1.
Bron: opennet.ru






