L'objectif de ce document est de décrire les anomalies que vous pourriez rencontrer lorsque vous apportez des contributions en raison de l'outil qui gère la copie de sources depuis et vers le dépôt interne de Google. Cet outil s'appelle Copybara.
Source de référence interne
Étant donné que la source de référence du code de ce dépôt est le dépôt interne de Google, Copybara effectue des transformations sur le code chaque fois qu'il est importé et exporté. Cela signifie que parfois, des modifications qui semblent normales peuvent parfois rompre en interne de manière surprenante.
État de la fusion des relations publiques et incohérences entre les différences
Étant donné que la source de référence est interne, les PR ne sont pas fusionnées directement. Elles sont importées dans le dépôt interne de Google où elles font l'objet de tests supplémentaires, puis cette modification interne est envoyée et attribuée à l'auteur de la demande d'extraction. En raison des transformations appliquées par Copybara, rien ne garantit que les différences seront identiques (par exemple, Copybara applique la mise en forme à l'importation).
Pour cette raison, Copybara ne marquera pas la demande d'extraction comme étant fusionnée, elle fermera la demande de suppression et appliquera séparément un commit qui devrait correspondre très précisément à celui-ci.
Dépendance à la TSL par copie
Comme implémenté actuellement, pour éviter tout commit temporaire non fonctionnel, XLA dépend de TSL non pas en téléchargeant une copie à l'aide du fichier http_archive
de Bazel, mais en demandant à Copybara de copier TSL dans le répertoire third_party
de XLA.