HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

Les meilleurs longs formats de Hacker News, relus plus calmement.

12026 articles Page 629/1203 Sans filtre

Weave: Merging based on language structure and not lines

Ce pilote de fusion sémantique au niveau des entités pour Git évite les conflits quand plusieurs agents modifient différentes fonctions dans un même fichier. Il remplace la fusion ligne par ligne de Git par une fusion par fonction et par classe en analysant le code avec tree-sitter et sem-core. La solution est organisée en trois couches — pilote de fusion, état CRDT pour que les agents revendiquent des entités, et serveur MCP pour connecter des outils via le Model Context Protocol — afin de couvrir la fusion locale et la coordination multi‑agent. Le projet prend en charge 28 langages et plusieurs formats de données et affiche des bilans de tests incluant 31 scénarios réussis, 83 gains en situation réelle, zéro régression pour C, Python et Go, 4 917 fusions de fichiers testées et plus de 1 500 téléchargements. L'installation se fait rapidement via brew et une commande de configuration, après quoi les merges Git s'exécutent sans conflit lorsque les modifications portent sur des entités distinctes.

(Re//Verse 2026) Taxonomy and Deobfuscation of a Real World Binary Obfuscator [pdf]

La plateforme propose des outils d'assistance au développement basés sur l'intelligence artificielle pour améliorer l'écriture de code et automatiser des tâches allant du signalement d'un problème jusqu'à sa fusion. Elle intègre des workflows pour développeurs comprenant l'automatisation via Actions, des environnements instantanés avec Codespaces, la planification et le suivi via Issues, et la gestion des revues de code. La sécurité applicative est prise en charge par des fonctionnalités avancées permettant de détecter et corriger les vulnérabilités ainsi que de protéger les secrets pour prévenir les fuites. Le site centralise de nombreuses ressources et contenus (documentation, blog, marketplace, études de cas) et propose des filtres par taille d'entreprise, cas d'usage et secteur d'activité. Des offres et add-ons destinés aux entreprises sont disponibles, et l'interface inclut des fonctions pratiques comme les recherches enregistrées, le retour d'expérience et les paramètres d'apparence.

Python 3.14 garbage collection rigamarole

En octobre 2025, CPython 3.14 a introduit un ramasse‑miettes incrémental qui remplaçait la collecte générationnelle traditionnelle afin de réduire les pauses maximales. Des utilisateurs ont signalé une "pression mémoire" et l'équipe Python a finalement réverti ces changements dans la version 3.14.5. L'article explique le fonctionnement de la gestion mémoire en CPython, en commençant par le comptage de références et en montrant pourquoi les cycles nécessitent un ramasse‑miettes supplémentaire. Des tests comparant localement 3.14.4 (GC incrémental) et 3.14.5 (GC traditionnel) montrent que l'incrémental réduit les latences de pause mais peut conserver davantage d'objets anciens et donc augmenter l'utilisation mémoire dans certains workloads. L'auteur note que la fonctionnalité n'était pas basculable par l'utilisateur, n'a pas suivi le processus PEP habituel et que ces limitations ont contribué à la décision de revenir en arrière.

Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI

Cette version standardise l'empaquetage via l'acceptation de PEP 783, permettant de publier des roues PyEmscripten sur PyPI et de les installer à l'exécution. Le schéma de versionnement passe à une numérotation basée sur la version Python (par exemple 314.x pour Python 3.14) et les changements binaires s'aligneront désormais sur les mises à jour annuelles de Python. Plusieurs modules standard comme sqlite3 et lzma sont réintégrés, OpenSSL est retiré entraînant une implémentation ssl sans TLS et des limitations de hashlib, tandis que compression.zstd est ajouté. Le runtime devient un module ES natif (pyodide.asm.mjs), ce qui impose l'utilisation de workers de type "module" et des adaptations pour les bundlers et les service workers. Les interopérations JavaScript sont améliorées (JsBigInt, gestion explicite des ressources et meilleur support des objets array-like) et un support expérimental des sockets en Node.js est fourni, avec des guides et outils mis à jour pour la publication de paquets.

FreeOberon – Open-Source, Cross-Platform, Free Pascal/Turbo Pascal-Like Language

Oberon est un langage de programmation généraliste, descendant direct de Pascal et Modula-2, conçu pour être plus simple et plus puissant. L'environnement présenté est un IDE multiplateforme au style pseudo-graphique classique, distribué pour Windows, macOS et Linux. Le projet inclut également Fob, un compilateur Oberon en console, et la version 1.1.0-alpha.7 a été publiée le 11 janvier 2023. Sur Linux l'installation nécessite Allegro, Git et GCC et consiste à télécharger l'archive ou le dépôt GitHub, décompresser, renommer le répertoire et exécuter install.sh, tandis que sur Windows il suffit d'extraire l'archive dans un chemin sans caractères non latins et lancer l'exécutable. Pour développer, on édite des modules Oberon dans l'IDE, on appuie sur F9 pour compiler et exécuter, les sources sont enregistrées dans Programs, les exécutables dans bin, et les erreurs ouvrent le fichier concerné en indiquant la position.

Building a serial and VGA "everything console"

L'auteur a acheté une console IBM 1U d'occasion légèrement abîmée pour la transformer en terminal portable et éviter d'emmener des CRT ou des ordinateurs portables occupés. Il a choisi un boîtier émulateur de terminal VT100 de Tattler Solutions alimentable par USB, mais celui-ci ne supporte pas les claviers combinés USB comme l'UltraNav d'IBM. Il a donc remplacé le clavier par un modèle slimline Perixx compatible et modifié le plateau inférieur avec colle silane, supports métalliques, Velcro et guides de câbles pour fixer le clavier et organiser les connexions. Il a ajouté une multiprise USB, des boîtiers de commutation USB/VGA et une gestion soignée des câbles pour permettre deux modes d'usage (vers l'émulateur ou vers des périphériques externes) tout en alimentant le boîtier VT100. Après ajustement de la hauteur du clavier avec des équerres en Z et des cales pour éviter le contact avec l'écran, il a testé la console sur une POWER9 et un AT&T 3B2/310 et prévoit d'autres améliorations comme un loquet, une poignée et des fixations plus solides.

Every Frame Perfect

L'objectif « chaque image est parfaite » de Wayland s'applique aussi aux interfaces graphiques, ce qui signifie qu'une capture d'écran prise à n'importe quel instant doit avoir du sens. Un rendu cohérent à tout moment renforce la confiance des utilisateurs, car une interface soignée suggère que les développeurs ont pris le temps de peaufiner à la fois l'UI et le code. Concrètement, cela implique d'éviter les flashes blancs entre écrans, les contenus partiellement chargés, les relayouts visibles et les messages contradictoires dans différentes parties de l'interface. Les animations mal conçues — désynchronisations entre composants, transitions hachées ou éléments qui n'évoluent pas ensemble — produisent des images imparfaites qui créent de la confusion. Les développeurs doivent donc penser non seulement aux états initial et final, mais aussi à chaque image d'une transition pour faire de l'interface un instrument précis et fiable.

Pac-Man, but You're the Ghost

L'auteur exprime une certaine empathie pour les fantômes de Pac-Man qui patrouillent le labyrinthe puis deviennent chassés quand le joueur mange une pastille de puissance. Il a conçu un petit jeu permettant au joueur d'incarner enfin le camp des fantômes. Le jeu intègre l'IA de Pac-Man et demande d'attraper Pac-Man avant qu'il ne nettoie entièrement le labyrinthe. La particularité est que si Pac-Man mange une pastille de puissance, les rôles s'inversent temporairement et ce sont les fantômes qui prennent la fuite. Le jeu est jouable en ligne pour ceux qui souhaitent l'essayer.

GLM 5.2 Is Out

L'entreprise regrette les récentes restrictions soudaines imposées à certains modèles de pointe. Elle affirme que la science et le développement de l'AGI doivent rester ouverts, globaux et non réservés à une minorité. GLM-5.2 est présenté comme le modèle open source le plus performant de Zhipu, offrant une fenêtre de contexte réellement utilisable d'un million de tokens et de solides capacités pour les tâches à long horizon. Le modèle sert également de moteur principal pour le développement du modèle de codage domestique le plus avancé. GLM-5.2 sera rendu disponible ce soir à 17h21 pour tous les utilisateurs du GLM Coding Plan et l'API sera activée la semaine prochaine.