Servo: Mettre à jour la Rust Toolchain moins souvent

Créé le 1 sept. 2018  ·  4Commentaires  ·  Source: servo/servo

En tant que contributeur occasionnel, je trouve ennuyeux d'avoir souvent besoin de recompiler tous les servos avant de pouvoir travailler sur quoi que ce soit. Sur ma machine, cela prend environ 45 minutes pour une version de débogage complète. Cette année, la version de la chaîne d'outils Rust a déjà été modifiée 11 fois ou toutes les trois semaines en moyenne. Tout à l'heure, la chaîne d'outils a été mise à jour au 2018-08-28 à partir du 2018-08-26. Je suppose que c'est à cause d'un problème avec la version précédente, mais rien n'est mentionné dans les PR.

Je préférerais que la chaîne d'outils ne soit que rarement mise à jour ou que des dépendances prédéfinies puissent être téléchargées. Je me rends compte que ce n'est probablement pas autant un problème si vous travaillez quotidiennement sur le servo, car le rapport entre les recompilations complètes et le travail sur le servo est bien meilleur.

Merci de votre attention et n'hésitez pas à fermer ce sujet si vous pensez que ce n'est pas un problème.

Commentaire le plus utile

Nous avons tendance à mettre à jour Servo lorsqu'il y a un changement de rupture causé par le dernier soir. Nous avons une version nocturne qui prend la dernière révision Servo et la dernière rustc nightly et vérifie si elle est construite ; si nous n'abordons pas la casse, nous perdons la vue sur toute casse ultérieure qui est introduite. Je ne vois pas de bon moyen d'éviter les mises à jour régulières de rustc tant que nous restons sur rustc tous les soirs.

Tous les 4 commentaires

Je pense que les dépendances pré-construites sont une bonne idée. Tout comme Firefox le fait.

Nous avons tendance à mettre à jour Servo lorsqu'il y a un changement de rupture causé par le dernier soir. Nous avons une version nocturne qui prend la dernière révision Servo et la dernière rustc nightly et vérifie si elle est construite ; si nous n'abordons pas la casse, nous perdons la vue sur toute casse ultérieure qui est introduite. Je ne vois pas de bon moyen d'éviter les mises à jour régulières de rustc tant que nous restons sur rustc tous les soirs.

Nous essayons de limiter l'utilisation du langage Rust instable ou des fonctionnalités de bibliothèque standard, qui ont tendance à provoquer des ruptures avec les nouveaux Nightlies : https://github.com/servo/servo/issues/5286.

De nos jours, la plupart des mises à jour de la chaîne d'outils sont dues à des modifications apportées aux API internes de rustc qui sont utilisées dans la caisse script_plugins pour implémenter un lint personnalisé pour la sécurité de l'enracinement GC.

Merci pour l'explication.

Cette page vous a été utile?
0 / 5 - 0 notes