
L'élément déclencheur immédiat a été un bogue découvert dans Bcachefs, un système de fichiers Linux relativement nouveau qui est en cours de préparation pour une utilisation courante dans le noyau. Le développeur de Bcachefs, Kent Overstreet, a introduit des modifications pour prendre en charge les noms de fichiers insensibles à la casse, mais ces changements ont entraîné des problèmes. Ce qui a visiblement déclenché la colère de Linus Torvalds.
À la suite des modifications introduites par Kent Overstreet, il a été découvert que sa prise en charge des cas de figure (la partie qui permet à un système de fichiers de traiter « File.txt » et « file.txt » comme un seul et même fichier) était défectueuse. Un correctif a été soumis pour le noyau Linux 6.15.
À première vue, il s'agit d'un simple rapport de bogue de routine. Mais pour Linus Torvalds, il ne s'agit pas d'un petit problème technique. Selon lui, il s'agit d'un symptôme d'un problème beaucoup plus profond que les développeurs de systèmes de fichiers ne cessent d'ignorer. Son argument principal : la normalisation de la casse ne devrait même pas exister. Le message de Linus Torvalds ne concernait pas seulement un bogue. Il s'agit de l'idée en elle-même.

Le problème de Bcachefs n'est pas non plus la première fois que les systèmes de fichiers Linux rencontrent des problèmes de normalisation de la casse. Par le passé, il y a eu des problèmes tels que le comportement de la normalisation de la casse avec les emojis et d'autres caractères Unicode spéciaux.
Les incohérences et les risques liés au standard informatique Unicode
La discussion déclenchée par le développeur du système de fichier Bcachefs a ravivé un débat plus large sur la pertinence des systèmes de fichiers insensibles à la casse. Certains membres de la communauté estiment que cette fonctionnalité (l'insensibilité à la casse) est nécessaire pour assurer la compatibilité avec des systèmes comme Windows, tandis que d'autres, comme Linus Torvalds, considèrent que cela introduit des risques de sécurité et de cohérence.
Linus Torvalds a mis en lumière certaines incohérences liées à Unicode et aux caractères non imprimables. Ces incohérences peuvent entraîner des erreurs de correspondance des noms de fichiers et, par conséquent, nuire à la fiabilité du système. Il souligne que les « points de code ignorables » d'Unicode peuvent faire en sorte que deux noms de fichiers apparaissent différents à un utilisateur, mais sont traités comme étant identiques par un système de fichiers.
Par exemple, les emojis ❤ et ❤️ sont deux caractères Unicode distincts, mais la normalisation naïve de la casse peut les traiter à tort comme identiques. Il a déclaré : « ainsi, chaque programme en mode utilisateur qui vérifie qu'il ne touche pas aux chemins spéciaux est susceptible d'être trompé et de faire des choses qu'il a explicitement vérifié qu'il ne devait pas faire. Et non, ce n'est pas quelque chose d'inhabituel ou d'étrange. Des tas de programmes font cela ».
Cependant, certains membres de la communauté ne partagent pas son avis. « Le problème est que l'insensibilité à la casse est gênante pour les codeurs, mais pratique pour les utilisateurs. Parfois, je trouve tout aussi pratique de taper "torvalds" que "Torvalds". Cela devrait-il désigner deux personnes différentes ? La sensibilité à la casse est un artefact de la manière dont les éléments du langage sont codés », a écrit un utilisateur. Il a ajouté :

Linus Torvalds souvent critiqué pour ses prises de position jugées brutales
Linus Torvalds est le créateur du noyau Linux et dirige la maintenance du projet depuis plus de 30 ans. Il est extrêmement investi dans la...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.