Changement dans le processus de développement et progrÚs dans l'évolution du navigateur Ladybird

Andreas Kling, le fondateur du navigateur web Ladybird, a annoncĂ© une modification du processus de dĂ©veloppement du projet. Ladybird va dĂ©sormais cesser d'accepter les pull requests publiques et privilĂ©gier l'intĂ©gration des modifications dans la base de code uniquement par l'intermĂ©diaire d'accompagnateurs. Tous les pull requests publics dĂ©jĂ  ouverts seront fermĂ©s. Le code source de Ladybird continuera d'ĂȘtre distribuĂ© sous la licence BSD. Les rapports de problĂšmes, les vulnĂ©rabilitĂ©s et les tests de fonctionnement avec les sites continueront d'ĂȘtre acceptĂ©s sans changement. Les passionnĂ©s externes pourront Ă©galement participer aux discussions sur le soutien des standards et l'architecture du projet.

Les raisons de l'arrĂȘt de l'acceptation des pull requests publiques incluent la prĂ©paration du premier alpha release, nĂ©cessitant une rĂ©partition des responsabilitĂ©s plus stricte pour les modifications apportĂ©es. Selon les crĂ©ateurs de Ladybird, le code doit ĂȘtre acceptĂ© uniquement de la part de personnes dignes de confiance et prĂȘtes Ă  assumer une responsabilitĂ© personnelle pour chaque ligne de code, en vĂ©rifiant si le code correspond Ă  l'architecture du projet et s'il pourra ĂȘtre maintenu Ă  l'avenir.

Parmi les problĂšmes posĂ©s par l'acceptation de modifications de tous les volontaires, on note une diminution de la confiance envers les auteurs des patches — en raison de la possibilitĂ© de gĂ©nĂ©rer des modifications par AI, la taille du patch ne reflĂšte plus l'effort et le temps de dĂ©veloppement investis. L'acceptation de patches externes facilite Ă©galement l'activitĂ© des malfaiteurs, qui gĂ©nĂšrent initialement des modifications fonctionnelles pour gagner la confiance avant d'introduire une vulnĂ©rabilitĂ© cachĂ©e dans le code.

On peut également mentionner le rapport de mai sur le développement de Ladybird. Parmi les réalisations récentes, on note :

  • Un compilateur JIT pour WebAssembly, basĂ© sur Cranelift (le passage de l'interprĂ©tation Ă  la compilation JIT a augmentĂ© les performances lors du test CoreMark par 8 fois et de 3 Ă  4 fois pour les micro-tests de fonctions individuelles);
  • Un nouveau bloqueur de contenu indĂ©sirable a Ă©tĂ© dĂ©veloppĂ©, basĂ© sur la bibliothĂšque adblock-rust du projet Brave et prenant en charge les filtres de type Adblock Plus et EasyList;
  • Le parser HTML a Ă©tĂ© réécrit en Rust;
  • Le code de dĂ©filement de contenu a Ă©tĂ© extrait du flux principal dans un processus de composition distinct et converti en un modĂšle de travail asynchrone;
  • L'API Media Source Extensions est dĂ©sormais activĂ©e par dĂ©faut et le fonctionnement avec la vidĂ©o en streaming a Ă©tĂ© amĂ©liorĂ©.
  • Un systĂšme de mise en cache de bytecode JavaScript sur disque a Ă©tĂ© ajoutĂ©;
  • Le ramasse-mottes a Ă©tĂ© dotĂ© d'un mode de nettoyage incrĂ©mentiel, Ă©liminant les longues interruptions des calculs et amĂ©liorant la rĂ©activitĂ© de l'interface;
  • Le support des CSS a Ă©tĂ© Ă©largi, avec la mise en Ɠuvre de requĂȘtes de conteneur (@container), de la dĂ©limitation de portĂ©e (@scope), « grid-template-columns: subgrid », « scroll-margin », « scroll-padding »;
  • API Permissions ajoutĂ©e;
  • Le protocole HSTS (HTTP Strict Transport Security) a Ă©tĂ© mis en Ɠuvre;
  • DĂ©tection automatique de l'encodage du texte assurĂ©e;
  • Les outils pour les dĂ©veloppeurs web ont Ă©tĂ© enrichis d'un support pour l'inspection des mises en page flexbox et grid;
  • CompatibilitĂ© amĂ©liorĂ©e avec Discord, Shopify, Reddit, ainsi qu'avec les sites utilisant des graphiques basĂ©s sur la bibliothĂšque TradingView.
  • L'interface utilisateur basĂ©e sur la bibliothĂšque Qt a Ă©tĂ© modernisĂ©e. Un mode d'affichage vertical des onglets a Ă©tĂ© mis en Ɠuvre. Ajout du support pour dĂ©placer les onglets avec la souris pour les regrouper, les dĂ©tacher ou les dĂ©placer dans une autre fenĂȘtre;

  • Au lieu des styles standard pour les panneaux et les boutons Qt, un design personnalisĂ© pour les onglets, la barre d’outils et la barre d’adresse a Ă©tĂ© rĂ©alisĂ©. FonctionnalitĂ© de restauration des onglets et fenĂȘtres rĂ©cemment fermĂ©s ajoutĂ©e. Fonction d'insertion de texte Ă  partir du presse-papiers via le bouton central de la souris mise en Ɠuvre.

Le navigateur Ladybird est développé par Andreas Kling, qui a travaillé auparavant chez Nokia sur le développement de KHTML, puis a été l'un des développeurs de Safari chez Apple. Le projet a initialement été créé comme une application pour le systÚme d'exploitation SerenityOS, mais a été séparé pour devenir un projet distinct à l'été 2024, avec un don de 1 million de dollars. Le navigateur est écrit en C++ (le projet de réécriture des composants en Rust a commencé) et est distribué sous licence BSD. Le projet développe son propre moteur LibWeb, son interpréteur JavaScript LibJS et des bibliothÚques associées.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster