HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

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

12074 articles Page 455/1208 Sans filtre

A flaky test exposed a Redis client use-after-free

Des tests flakys ont commencé à échouer après une mise à jour de la gem Redis, bloquant la branche principale et poussant l'équipe à exclure temporairement certains tests. Après des investigations initiales axées sur des conditions de concurrence, l'équipe a constaté que des commandes subscribe atteignaient ActionCable mais n'étaient pas reçues par Redis, et des erreurs inhabituelles de double free sont apparues. Un core dump obtenu grâce à un plugin a permis d'identifier un crash dans le code hiredis (extension C) avec un appel à memmove utilisant une taille manifestement corrompue, suggérant une corruption mémoire. En reconstruisant Ruby avec ASAN, les ingénieurs ont rapidement détecté un use-after-free causé par la coexistence de threads lecteur et écrivain où le thread lecteur libérait le buffer du writer. L'équipe a désactivé l'extension C pour Redis et créé un test reproductible signalé en amont, et attribue la résolution au croisement d'outils adéquats, d'une bonne méthode et d'un peu de chance.

PCjs Machines

Un projet JavaScript émule des matériels et logiciels anciens pour reproduire l'expérience des CPU lents, des écrans basse résolution et des effets sonores primitifs dans le navigateur. La collection couvre des machines classiques et compatibles IBM, ainsi que des mini‑ordinateurs, des calculatrices programmables, des terminaux et des jeux d'arcade. Le site permet d'explorer et d'interagir avec de nombreux logiciels publics, shareware et autres exemples historiques, dont des titres célèbres des années 1970 à 1995. Le projet est open source et hébergé sur GitHub, avec des ressources supplémentaires et de la documentation accessibles via un explorateur en ligne. Le créateur remercie les visiteurs et invite à en apprendre davantage ou à contribuer à ces efforts de préservation modeste.

Pico W firmware creates driverless USB WiFi bridge (Layer-2)

Le firmware transforme un Raspberry Pi Pico W en adaptateur Wi‑Fi USB sans pilote en exposant une interface CDC‑NCM compatible Windows, Linux et macOS. Il crée un pont transparent de niveau 2 entre le module sans fil Infineon CYW43439 et l'interface USB en mode gadget Ethernet, car la puce ne peut pas servir de passerelle USB‑Wi‑Fi directement. La solution prend en charge IPv4 et IPv6 sans NAT ni sous‑réseau privé, propose une console de gestion hors‑bande via CDC‑ACM et supporte WPA2‑PSK, WPA3‑SAE et les réseaux ouverts. Les débits moyens observés sont d'environ 4,75 Mbit/s, limités par l'interface USB 1.1 à 12 Mbps, ce qui rend l'usage surtout pertinent en dépannage plutôt qu'en remplacement d'une clé Wi‑Fi bon marché. Le code source en C basé sur le PicoSDK, les instructions de compilation et un fichier UF2 précompilé sont disponibles sur GitLab, et deux ports série (/dev/ttyACM0 pour gestion et /dev/ttyACM1 pour debug) facilitent la configuration et le diagnostic.

'VPNs are lawful technical tools,' says EU Court in landmark copyright ruling

La Cour de justice de l'Union européenne a reconnu les VPN comme des outils techniques licites et a rendu un arrêt important en juillet 2026. L'affaire concernait la publication en ligne des manuscrits d'Anne Frank et la question du contournement des géo‑blocages par des utilisateurs. La Cour a estimé que la possibilité de contournement n'entraîne pas automatiquement l'inefficacité des géo‑blocages si le site utilise des mesures à la pointe de la technique. En conséquence, les fournisseurs de VPN ne peuvent pas être tenus responsables des actes de contournement commis par leurs utilisateurs. Le jugement place l'obligation sur les éditeurs de mettre en œuvre des protections techniques efficaces et confirme la légitimité de l'usage des VPN par les internautes.

Laguna S 2.1

Le nouveau modèle est un mélange d'experts de 118 milliards de paramètres avec 8 milliards activés par token et une fenêtre de contexte allant jusqu'à 1 million de tokens, entraîné et lancé en moins de neuf semaines. Il obtient des résultats compétitifs sur des tâches long‑horizon, atteignant 70,2 % sur Terminal‑Bench 2.1 en mode réflexion et 40,4 % sur DeepSWE en pool harness, se positionnant favorablement face à modèles beaucoup plus grands. Toutes les trajectoires d'évaluation finales sont publiées et des études de cas montrent des réalisations variées, notamment la construction d'un moteur de rendu HTML/CSS autonome, l'optimisation d'un agent harness (−71 % d'allocations, +5,2 % de vitesse) et une redécouverte d'une famille de solutions pour le problème d'Erdős #397. Le modèle propose deux modes de "thinking" (off/max) qui améliorent nettement les performances mais présente des limites connues comme la sur‑adaptation aux definitions d'outils, des erreurs d'échappement JSON pour arguments imbriqués et des durées de réflexion parfois excessives. La base de pré‑entraînement est inchangée par rapport à la série XS, les gains proviennent du post‑entraînement (SFT puis RL, RL en FP8), d'infrastructures et de curricula ciblés, et le modèle est disponible en poids ouverts sur Hugging Face ainsi que via plusieurs services et outils d'hébergement.

Gemini last models: temperature, top_p, and top_k are deprecated and ignored

La page tente de vous rediriger automatiquement vers une URL d'autorisation OAuth2 de Google. La requête demande des autorisations incluant openid, l'adresse e-mail, le profil utilisateur et des accès liés aux profils de développeurs et aux récompenses. Le flux utilise le type de réponse "code" avec un accès en ligne, indiquant l'utilisation du flux d'autorisation par code. Le paramètre d'état contient un jeton CSRF et une URL de retour vers la documentation du modèle Gemini, tandis que prompt=none et auto_signin=True indiquent une tentative de connexion silencieuse. Si la redirection n'a pas lieu automatiquement, il est proposé de cliquer sur le lien pour poursuivre l'authentification.

Map of the world's great castles and fortresses

Il s'agit d'une carte interactive gratuite recensant 2 438 châteaux, forteresses et palais dans 130 pays, chaque repère proposant une photo, un siècle de fondation, un récit et des coordonnées précises. La base est entièrement construite à partir de données ouvertes (Wikidata, Wikimedia Commons, OpenFreeMap et Natural Earth) et l'atlas sélectionne les sites les plus significatifs vérifiés par photo, article Wikipedia en anglais et coordonnées. Le corpus comprend 940 châteaux, 390 forteresses, 690 palais et 418 ruines, et l'interface permet de parcourir les lieux par pays, par type et par popularité. Parmi les sites les plus couverts figurent le palais de Versailles, la Cité interdite, le Kremlin et l'Alhambra, la notoriété étant évaluée par le nombre d'éditions linguistiques de Wikipedia. Le jeu de données complet est téléchargeable en GeoJSON ou CSV sous licence CC0, et pour ajouter un lieu il faut améliorer sa fiche Wikidata (coordonnées, photo Commons et article en anglais) pour qu'il soit inclus lors de la prochaine mise à jour.

Ten ways a check passes while the thing it checks is broken

Un audit d'une journée a montré que de graves défauts peuvent rester masqués derrière des vérifications qui passent, et l'auteur recense dix mécanismes par lesquels un contrôle reste vert tout en étant inefficace. Parmi ces mécanismes figurent des tests incapables d'échouer, des dialectes de vérification incompatibles avec la production, des contrôles qui regardent la source au lieu du rendu, des mesures qui évaluent la mauvaise propriété, et des jeux de tests construits pour confirmer l'hypothèse. D'autres échecs viennent de plans expérimentaux qui effacent l'effet recherché, de silencements d'erreurs avalés par des catch, de prose qui diverge des données, de remplacements de fichier qui n'ont jamais eu lieu et de copies en cache qui ne correspondent pas à la version modifiée. Les remèdes qui ont réellement trouvé les problèmes incluent poser d'autres questions et exécuter de nouveaux instruments, écrire des assertions tirées des affirmations du texte, utiliser des données antérieures à la question, exercer les fonctions plutôt qu'inspecter les rapports et vérifier l'artéfact immuable produit par le déploiement. La leçon générale est que chaque contrôle est un instrument avec une portée limitée : répéter le même audit n'interroge pas la même chose que varier la méthode, et il faut rendre les outils incapables de mentir en exigeant des signaux positifs, des comptes de correspondance et une inspection humaine quand nécessaire.