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 ?
Quel est votre avis sur le sujet ?
Que pensez-vous de l'avis de Torvalds sur l'interface utilisateur Web de GitHub ?
Êtes-vous du même avis que lui ? Utilisiez-vous GitHub pour les fusions ? Si oui, partagez votre expérience.
Voir aussi
Torvalds veut un nouveau pilote NTFS dans le noyau et a choisi le pilote NTFS de Paragon Software
Paragon Software libère son pilote NTFS pour Linux avec une bien meilleure performance que le pilote actuel, mais l'entreprise a du mal à intégrer les codes du développement collaboratif
Un nouveau contrôleur de mémoire pour le noyau Linux promet des économies de mémoire significatives, notamment au niveau de la RAM, pour toutes les plateformes Linux