Cette action GitHub, gradle-dependency-diff-action
, simplifie le processus d'identification des changements de dépendance gradle introduits par les demandes de traction. Parce que la résolution de dépendance transitive de Gradle peut entraîner des altérations imprévues, cette action fournit une représentation visuelle de ces changements cachés.
Le problème: les changements de dépendance cachés
La résolution de dépendance transitive de Gradle signifie que la mise à jour d'une bibliothèque unique peut déclencher des mises à jour dans ses dépendances. Par exemple, la mise à niveau de la bibliothèque «Tink» pourrait mettre à jour par inadvertance «Protobuf-Java» à une version potentiellement incompatible. Ce n'est pas toujours évident à partir d'un code diff.
La solution: gradle-dependency-diff-action
Cette action résout cela en comparant les dépendances gradles entre la branche de base et la branche de demande de traction. Il met en évidence ces différences, empêchant des problèmes inattendus. L'action offre plusieurs méthodes de notification:
comment utiliser
project-report
: Ajouter le plugin project-report
à votre projet Gradle: <code class="language-gradle">plugins { //... id 'project-report' // HERE ! }</code>
<code class="language-yaml">name: CI on: pull_request: jobs: dependencies-diff: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-java@v4 with: distribution: temurin java-version: 17 - uses: be-hase/gradle-dependency-diff-action@v1</code>
Détails techniques
L'action exploite la tâche dependencyReport
(fournie par le plugin project-report
) pour générer des rapports de dépendance pour les deux branches. dependency-tree-diff
est ensuite utilisé pour créer un Diff lisible par l'homme de ces rapports. La tâche dependencyReport
a été choisie au-dessus de la tâche dependencies
en raison de sa prise en charge supérieure pour les configurations multi-projets.
Résumé
gradle-dependency-diff-action
est un outil précieux pour améliorer le processus d'examen du code en rendant les changements de dépendance à gradle cachés visibles. En identifiant de manière proactive ces problèmes potentiels, les développeurs peuvent éviter les problèmes d'intégration et garantir la fusion de la demande de traction plus fluide. Essayez-le!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!