8 points par GN⁺ 2026-04-14 | 2 commentaires | Partager sur WhatsApp
  • Le moteur web Servo, basé sur Rust, est publié sur crates.io en tant que crate v0.1.0, offrant une alternative légère et performante pour intégrer des technologies web dans des applications
  • Cette version permet d’intégrer directement Servo sous forme de bibliothèque, tandis que le navigateur de démonstration servoshell n’est pas distribué séparément
  • Depuis la première release sur GitHub en octobre 2025, cinq déploiements ont permis de stabiliser le processus de release
  • La version actuelle n’est pas encore la 1.0 finale, et la montée de version se poursuit progressivement en fonction de la stabilité de l’API et de la capacité à répondre aux besoins des utilisateurs
  • Une version LTS est également fournie, afin d’assurer les mises à jour de sécurité et l’accompagnement des migrations dans les environnements d’intégration à long terme

Release de Servo 0.1.0 et publication sur crates.io

  • L’équipe Servo a publié la version v0.1.0 de la crate servo, distribuée pour la première fois via crates.io
    • Cette release permet désormais d’intégrer Servo dans une application sous forme de bibliothèque
    • Le navigateur de démonstration servoshell n’est pas publié sur crates.io
  • Depuis la première release sur GitHub en octobre 2025, cinq déploiements ont permis d’atteindre une phase de stabilisation du processus de release
    • Le principal goulot d’étranglement actuel est le billet de blog rédigé chaque mois ; cette fois, la release a été effectuée sans l’attendre
    • La mise à jour mensuelle sera publiée séparément ultérieurement
  • Cette version n’est pas une version 1.0 finale, et la définition de ce que sera la 1.0 fait encore l’objet de discussions
    • La hausse de version reflète une confiance accrue dans la stabilité de l’API d’intégration et dans la capacité à répondre aux besoins des utilisateurs
  • Servo fournit cette fois également une version avec support à long terme (LTS)
    • Les releases mensuelles pouvant introduire des changements incompatibles, certains intégrateurs peuvent préférer des mises à niveau majeures tous les six mois
    • La version LTS fournit des mises à jour de sécurité et un guide de migration ; les détails sont précisés dans la section LTS du Servo Book

2 commentaires

 
click 2026-04-14

Rust est né pour créer Servo, mais au final Servo n’en est qu’à la v0.1.0 alors que Rust a connu un succès énorme.
On dirait bien que les moteurs de navigateur sont particulièrement difficiles.

 
GN⁺ 2026-04-14
Avis sur Hacker News
  • J’ai rassemblé quelques points de référence
    La documentation docs.rs est encore en cours de build, mais la documentation des versions RC récentes est déjà consultable
    L’exemple d’intégration de Servo du projet Slint montre bien comment utiliser l’embedding API, et cela semble facilement transposable à d’autres frameworks GUI basés sur wgpu
    Stylo et WebRender sont également publiés sur crates.io, et peuvent aussi être utiles de manière indépendante
    À l’avenir, les mises à jour devraient suivre un cycle de publication mensuel

    • Slint est vraiment un super projet. En revanche, le fait de ne pas pouvoir insérer dynamiquement des widgets dans le code était un frein pour mon cas d’usage
  • J’ai créé avec ce crate un outil CLI de rendu de pages web en image, "servo-shot"
    Après cargo build, on peut l’exécuter avec la commande ./target/debug/servo-shot https://news.ycombinator.com/
    L’image générée est visible ici

    • En regardant le code, on dirait que les LLM aussi préfèrent un style Rust simple et de haut niveau. Ils évitent de se battre avec le borrow checker en utilisant des types valeur comme String, des smart pointers à comptage de références, et des clones sans trop se priver. En venant de Python, TypeScript ou Java, cette approche me semble bien plus productive
    • Très bel exemple. Je me demande simplement s’il faut configurer quelque chose de spécifique pour la gestion des cookies. Je ne sais pas trop s’il suffit de passer un pointeur vers le cookiejar
    • Vraiment utile. J’ai l’impression que je pourrais l’utiliser immédiatement. Je me demande si Servo est 100 % Rust, sans dépendances système externes (par ex. si rustls suffit à lui seul). J’aimerais aussi savoir si le rendu JavaScript ou WebGL fonctionne. Le support d’apps 3D comme ThreeJS correspondrait parfaitement à mon cas d’usage
  • Le vrai benchmark des capacités de programmation de l’IA, c’est la vitesse à laquelle elle peut construire une infrastructure sûre et moderne dont tout le monde a besoin mais que personne ne finance
    Si Anthropic veut promouvoir Mythos, ce serait intéressant de publier quelque chose comme un journal des contributions à Servo. Ce serait bien plus aligné avec un véritable objectif de sécurité de l’infrastructure
    Donner un accès illimité au modèle aux contributeurs clés de Servo ou de Rust, puis observer les progrès à chaque release, me semblerait beaucoup plus pertinent

    • On n’a pas besoin d’infrastructure codée à la vibe
    • Cela dit, Servo a une politique interdisant les contributions IA, donc ce n’est peut-être pas le meilleur candidat pour ce type d’expérience
    • Le vrai problème de ce genre d’infrastructure, ce n’est pas le développement initial mais la continuité de la maintenance. Les LLM sont bons pour les prototypes rapides, mais faibles quand il s’agit d’entretenir durablement de gros projets anciens
    • Et si on prenait comme benchmark la reproduction de Chromium ? Reproduire Rust lui-même serait aussi intéressant. Plus il y aura de langages proches de Rust, mieux ce sera pour l’humanité
    • Au final, ce qui compte, c’est de financer les projets importants, surtout lorsque de grandes entreprises en tirent profit
  • Si vous utilisez un navigateur pour générer des PDF, le crate Rust Typst mérite d’être regardé
    Il peut être utilisé en CLI quelle que soit la langue, et même s’il faut un peu de temps pour s’habituer à sa syntaxe DSL, avec l’IA cela va assez vite aujourd’hui

    • Je l’ai utilisé aujourd’hui pour de l’automatisation de rapports, et Claude Code m’a bien aidé. J’ai parfois dû lui montrer directement la documentation Typst, mais dans l’ensemble c’était correct
    • Je le vois souvent mentionné comme alternative à LaTeX ; cette fois, il faut vraiment que je m’y intéresse
    • J’ai récemment déployé avec Typst un système automatisé de génération de lettres PDF. En venant de (La)TeX, j’ai été surpris par la rapidité. C’est suffisamment rapide pour tenir dans le cycle d’une requête HTTP. La syntaxe était aussi facile à apprendre. Ce n’est pas aussi raffiné que TeX, mais c’est largement assez pratique. En revanche, il ne semble pas encore y avoir de remplaçant pour les fonctions graphiques type TikZ
  • Je me demandais s’il existait un tableau, à la manière de caniuse.com, pour voir la liste des RFC implémentées dans Servo. Il y a bien une page « experimental features », mais elle manque de détails

  • Je me demandais concrètement ce que Servo peut faire. Quand on parle de « technologies web », est-ce que cela veut dire qu’on peut embarquer un navigateur web dans une application desktop ?

    • C’est un moteur de navigateur alternatif, comme Ladybird
    • Oui. Servo est un moteur de webview embarquable, un peu comme Chromium Embedded Framework (CEF).
      Electron = Node.js + CEF
      Tauri = Rust + webview
      Tauri maintient une branche expérimentale qui utilise Servo comme webview intégrée. Pour l’instant, il dépend des webviews système (Edge sur Windows, Safari sur macOS, webkit-gtk sur Linux)
  • En voyant la phrase « pas encore en 1.0 et la signification est encore en discussion », je me suis demandé s’il était vraiment possible pour ce crate d’atteindre un jour la version 1.0

    • Le problème central de la gestion de versions en Rust, c’est la signification des versions 0.x. Une 0.3.5 est compatible avec une 0.3.6, mais pas avec une 0.4.0 ni une 1.0.0. Autrement dit, quand le major est à 0, le minor joue en pratique le rôle de major. Beaucoup de projets restent donc bloqués en 0.x. C’est un problème lié au fait que Cargo ne suit pas cette partie de semver. Personnellement, c’est l’un de mes plus gros griefs, même si la communauté Rust ne semble pas vraiment y voir un souci
    • Beaucoup de bibliothèques Rust adoptent le 0-based versioning. Ce lien l’explique mieux
    • Si vous voulez migrer les apps Microsoft vers Servo ? Facile — il suffit de monter l’usage mémoire de base à 5 Go. Là, ce sera adopté tout de suite (sur un ton ironique)
  • Je me demandais s’il y avait une intégration Tauri, et j’ai trouvé quelque chose appelé tauri-runtime-verso. En revanche, je ne sais toujours pas ce que cela vaut en taille ou en performances par rapport à Electron. Cela pourrait m’être utile pour distribuer mon appli sur Linux/flathub

  • Je me demande à quoi ce crate peut servir

  • Quand Servo sera prêt, j’ai l’intention de l’intégrer à mon cher qutebrowser