Les développeurs du noyau Linux se préparent pour la première mise à niveau de sa chaîne d’outils Rust depuis la fusion initiale du code Rust dans Linux 6.1.
Le code a initialement fusionné dans Linux 6.1 et continue à ce jour de cibler Rust 1.62 tandis que le plan est de mettre à niveau vers la dernière version stable actuelle, Rust 1.68.2.
En ce qui concerne cette grande mise à jour du code Rust dans le noyau Linux principal, le message de correctif de Miguel Ojeda explique :
“Le noyau ne prend actuellement en charge qu’une seule version de Rust (plutôt qu’un minimum) compte tenu de notre utilisation de certaines fonctionnalités Rust”instables”qui ne promettent pas de rétrocompatibilité.
Le but est d’atteindre un point où nous pouvons déclarer une version minimale pour la chaîne d’outils. Par exemple, en attendant certaines des fonctionnalités à stabiliser. Par conséquent, la première version minimale de Rust que le noyau prendra en charge est”dans le futur”.
# Politique de mise à jour
Étant donné que nous devrons éventuellement atteindre cette version minimale, il serait idéal de mettre à jour le compilateur de temps en temps le temps d’être aussi proche que possible de cet objectif et de trouver les problèmes plus tôt. À l’extrême, nous pourrions mettre à niveau dès qu’une nouvelle version de Rust est sortie. Bien sûr, la mise à niveau si souvent est en contraste frappant avec ce dont on aurait normalement besoin pour GCC et LLVM, surtout compte tenu du calendrier de publication: 6 semaines pour Rust contre six mois pour LLVM et un an pour GCC.
Cela dit, il n’y a pas non plus d’avantage particulier à mettre à jour lentement : les développeurs du noyau dans les distributions”stables”ne seront probablement pas en mesure d’utiliser leur chaîne d’outils Rust fournie par la distribution pour le noyau de toute façon. Au lieu de cela, en mettant régulièrement à niveau vers la dernière version, les développeurs de noyau utilisant des distributions Linux qui suivent la dernière version de Rust peuvent être en mesure d’utiliser celles-ci plutôt que celles fournies par Rust, en particulier si leur gestionnaire de packages permet d’épingler/de retenir/de rétrograder la version pour certains jours pendant les fenêtres où la version peut ne pas correspondre. Par exemple, Arch, Fedora, Gentoo et openSUSE fournissent et suivent tous la dernière version de Rust au fur et à mesure de leur sortie toutes les 6 semaines.
Ensuite, lorsque la version minimale sera atteinte, nous arrêterons la mise à niveau et déciderons de la largeur de la fenêtre de support. Par exemple, un an de versions Rust. Nous voudrons probablement commencer petit, puis l’élargir au fil du temps, tout comme le noyau l’a fait à l’origine pour LLVM.”
Plus de détails sur cette politique de mise à niveau formulée dans le troisième patch.
Ainsi avec cette série de correctifs est la mise à niveau du noyau vers Rust 1.68.2.