La base de code du noyau Linux compte plus de 3000 sections de commentaires TODO dont certaines datent de plus d'une décennie

https://linux.developpez.com/actu/289353/La-base-de-code-du-noyau-Linux-compte-plus-de-3000-sections-de-commentaires-TODO-dont-certaines-datent-de-plus-d-une-decennie-de-quoi-conclure-de-sa-mauvaise-qualite/

Après plus d’un quart de siècle d’existence, le noyau Linux est de plus en plus important dans le monde de la technologie. La dernière parution (il y a 2 ans) de l’état de développement du noyau par la Linux Foundation dresse un tableau des chiffres clés…

Le rapport qui couvrait le développement du noyau Linux jusqu’à la version 4.13 faisait état de ce qu’en dehors du marché des PC où il a du mal à se frayer un chemin, Linux domine presque tous les marchés, y compris le cloud, le mobile, l’embarqué et celui des supercalculateurs. « En 2017, le système d’exploitation Linux exécute 90 % des charges de travail du cloud public, détient 62 % de part sur le marché de l’embarqué et 99 % de part de marché en ce qui concerne les supercalculateurs. Linux gère 82 % des smartphones dans le monde et neuf des dix premiers clouds publics », y était-il indiqué par Jonathan Corbet (développeur Linux et éditeur de LWN.net) et Greg Kroah-Hartman de la fondation Linux.

« Cependant, la croissance soutenue de cet écosystème open source et l’incroyable succès de Linux en général ne serait pas possible sans le développement continu du noyau Linux. De nouvelles versions livrées régulièrement toutes les neuf ou dix semaines fournissent des mises à jour stables aux utilisateurs de Linux, chacune avec de nouvelles fonctionnalités significatives, une prise en charge améliorée des périphériques et des performances améliorées. Le taux de changement dans le noyau est élevé et augmente, avec plus de 12 000 correctifs dans chaque nouvelle version du noyau. Chacune de ces versions contient le travail de plus de 1600 développeurs représentant plus de 200 sociétés », pouvait-on y lire.

En 2018, le dépôt du noyau Linux était rendu à 782 487 commits au total et comptait un peu plus de 19 000 auteurs différents. Le référentiel pour sa part était constitué de 61 725 fichiers soit environ 25 584 633 lignes. Ceci c’était sans compter la documentation, les fichiers de construction Kconfig et autres assistants/utilitaires. En 2018, 49 647 commits ont ajouté 2 229 836 lignes de code et 2 004 759 lignes de code ont été perdues, soit un gain net de seulement 225 077 lignes.

Les chiffres parlent d’eux-mêmes : le noyau Linux c’est du costaud ; c’est même « l’un des plus grands projets logiciels au monde » si l’on se réfère à une affirmation de Greg Kroah-Hartman lors d’une présentation au Festival CoreOS de Berlin en 2016.

Ce qu’il faudra aussi retenir à propos de Linux est qu’à date le projet représente « plus de 3000 sections de commentaires dont certains datent de plus de 10 ans. »

Que l’on retrouve des sections de commentaires TODO vieilles de plus d’une dizaine d’années (personne n’a revu ces sections pendant cette période) au sein d’une base de code qui continue de faire ses preuves au quotidien peut être interprété comme un signe de qualité. De l’autre côté, le fait pour lesdites sections de ne pas encore avoir été revu soulève des questionnements. En effet, une base de code fonctionnelle n’est pas parfaite ; c’est la raison pour laquelle un développeur fera apparaître une section de commentaire TODO, mais c’est bien là le signe qu’il y a un détail qui coince et qui, sur le long terme, pourrait être à l’origine d’une catastrophe surtout pour ce qui est des systèmes critiques. L’analogie est peut-être mal choisie, mais la situation s’apparente à celle d’un ascenseur laissé des décennies sans surveillance parce qu’il joue encore son rôle et personne n’a remarqué de défaillance.

Source : GitHub