▶ VIDEO Google for Developers

Que se passe-t-il lorsqu'on transmet un triangle à la fonction d'aire de l'union de formes ?

Une fonction TypeScript conçue pour calculer l'aire d'une union de formes échoue à gérer le cas du triangle, générant une valeur de retour undefined plutôt qu'une erreur de compilation ou un résultat calculé. Cette négligence met en lumière une faille critique de la sécurité des types : ajouter un nouveau type de forme à l'union sans mettre à jour le switch provoque des échecs d'exécution silencieux. Ce scénario illustre comment des lacunes logiques émergent facilement lors de l'extension des définitions de types sans mises à jour d'implémentation correspondantes, entraînant des comportements imprévisibles dans le code de production.

◉ RSS Hacker News

Pourquoi bambu_networking viole l'AGPL dans Bambu Studio

Bambu Studio, un programme sous licence AGPL v3 dérivé de PrusaSlicer, intègre un composant propriétaire nommé bambu_networking en tant que bibliothèque chargée dynamiquement plutôt que comme un plugin standard. Le code source public révèle que l'application code en dur des noms et versions spécifiques de bibliothèque, établissant une interface binaire d'application définie qui permet au module propriétaire d'exécuter des fonctions sur le thread principal de l'interface utilisateur. Ce couplage étroit et le rôle du plugin dans la gestion de l'authentification, de la télémétrie et des transferts de fichiers suggèrent que le composant fait partie intégrante du programme, déclenchant les exigences de l'AGPL v3 qui imposent la publication du code source correspondant pour la bibliothèque fermée. L'analyse indique que l'architecture actuelle de Bambu Lab viole probablement la licence en refusant de divulguer le code source de cette dépendance d'exécution essentielle.