
le pilote NTFS de Paragon est ajouté au noyau Linux 5.15
Cela fait un bon moment déjà que Linus Torvalds attend que Paragon Software soumette son pilote NTFS pour qu'il soit ajouté au noyau Linux. C'est désormais chose faite, et Torvalds a finalement fusionné le nouveau pilote avec les sources du noyau Linux 5.15. Mais avant ça, il s'est plaint de l'utilisation de la fonction de demande de fusion de GitHub dans la soumission, en disant que GitHub "crée des fusions absolument inutiles". Apparemment, le créateur du noyau Linux n'aime pas beaucoup les fusions GitHub, voire pas du tout. Aussi, les avertissements du compilateur sont désormais traités comme des erreurs par défaut dans les constructions du noyau.
Au début du mois d'août, Torvalds a donné un coup de pouce à Paragon Software pour que l'entreprise soumette une "pull request" - une soumission réelle du code à fusionner dans les sources du noyau - afin que son pilote NTFS en lecture-écriture puisse être inclus dans la prochaine version 5.15, pour laquelle la fenêtre de fusion est actuellement ouverte. Pour rappel, NTFS est le système de fichiers natif de Windows et l'implémentation de Paragon améliorera l'interopérabilité, par rapport au pilote existant qui a un support d'écriture limité. Vendredi, Paragon a dûment soumis sa "pull request", en disant :
« La version actuelle fonctionne avec des fichiers normaux/compressés/spars et prend en charge l'acl, la relecture du journal NTFS ». Cela dit, l'entreprise est toujours en train de se familiariser avec le processus de soumission et Torvalds avait pas mal de commentaires à faire, destinés à améliorer les futures demandes d'extraction. Tout d'abord, le créateur du noyau Linux a déclaré que la demande d'extraction aurait dû être signée. « Dans un monde parfait, ce serait une signature PGP que je peux tracer directement jusqu'à vous à travers la chaîne de confiance, mais je n'ai jamais vraiment exigé cela », a-t-il dit.
Ensuite, il a noté que le code dans la demande d'extraction comprenait des commits de fusion effectués avec l'interface utilisateur Web de GitHub. « C'est une autre de ces choses que je ne veux *vraiment* pas voir - GitHub crée des fusions inutiles, et vous ne devriez jamais utiliser les interfaces GitHub pour fusionner quoi que ce soit », a-t-il déclaré. Il a ajouté : « [G]ithub est un site d'hébergement parfaitement bien, et il fait un certain nombre d'autres choses bien aussi, mais les fusions ne sont pas l'une de ces choses ». Par le passé, notamment en 2012, Torvalds s'était déjà plaint de certains aspects de GitHub.
« Je ne fais pas de demandes d'extraction GitHub. GitHub jette toutes les informations pertinentes, comme avoir même une adresse e-mail valide pour la personne qui fait la demande d'extraction. Le diffstat est également déficient et inutile », avait-il alors déclaré. Notez que la commande git request-pull est différente de la fonction pull request de GitHub. En outre, le dépôt de Paragon a des messages de commit qui manquent d'informations, comme "Merge branch 'torvalds:master' into master". À ce propos, Torvalds a déclaré samedi que "les fusions du noyau Linux doivent être faites *correctement*".
Il a ajouté : « Cela signifie des messages de commit appropriés avec des informations sur ce qui est fusionné et *pourquoi* vous fusionnez quelque chose. Mais cela signifie aussi des informations correctes sur l'auteur et le committer, etc. Tout cela, GitHub l'a complètement raté ». Malgré ces commentaires, Torvalds a néanmoins fusionné la soumission de Paragon. Il faut noter que ce pilote a déjà raté plusieurs fenêtres de fusion. « Le pull initial a souvent quelques bizarreries et je vais les accepter maintenant, mais pour la poursuite du développement, vous devez faire les choses correctement », a déclaré Torvalds.
En marge de l'ajout du pilote NTFS de Paragon au noyau Linux 5.15, Torvalds a aussi activé l'option de compilation "-Werror" par défaut pour toutes les constructions du noyau. L'indicateur de compilation "-Werror" traite tous les avertissements comme des erreurs de construction. En promouvant tous les avertissements en tant qu'erreurs, Torvalds oblige les développeurs à s'assurer que les avertissements de construction qui pourraient autrement passer inaperçus, ou seulement vaguement concernés par les développeurs, soient désormais traités en priorité étant donné qu'ils interrompent le processus de construction.
Torvalds a commenté ce changement : « Nous devrions vraiment toujours avoir une construction propre, et nous désactiverons les avertissements spécifiques trop enthousiastes si nécessaire, si nous ne pouvons pas les corriger. Mais alors que j'applique assez religieusement cela dans mon propre arbre, cela n'est pas appliqué par les différents robots de construction qui ne signalent pas nécessairement les avertissements. Donc cela fait simplement de '-Werror' un drapeau de compilateur par défaut ». De nombreux projets logiciels utilisent déjà "-Werror" par défaut pour assurer un meilleur contrôle de la qualité.
Ils veillent à ce que les avertissements soient traités, mais la plupart de ces projets ne sont pas de la taille du noyau Linux. Par ailleurs, ce patch ajoute aussi WERROR comme commutateur Kconfig. Cela permet de désactiver l'indicateur "-Werror" si de nouvelles versions du compilateur introduisent de nouveaux avertissements qui ne peuvent pas être immédiatement corrigés par le noyau ou d'autres problèmes sélectifs pour lesquels il n'est pas possible de créer un noyau sans avertissements. L'option WERROR est activée par défaut pour toutes les constructions du noyau.
Linus a terminé le message du correctif par : « J'espère que cela signifiera que je recevrai moins de demandes d'extraction contenant de nouveaux avertissements qui n'ont pas été remarqués par les divers automatismes que nous avons mis en place. Touchons du bois ».
Source : Linus Torvalds (1, 2)
Et vous ?



Voir aussi



Vous avez lu gratuitement 7 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.