Contribuer au projet WebRTC

Accord de licence

WebRTC accepte les correctifs/relevés de fonctionnalités et les corrections de bugs !

Pour les contributeurs externes à Google, suivez les instructions indiquées dans le Contrat de licence Contributeur Google Individual. Dans tous les cas, les contributeurs doivent signer un contrat de licence de contributeur avant qu'une contribution ne puisse être acceptée. Veuillez conclure le contrat pour une personne physique ou une entreprise, le cas échéant.

Contributions

Si vous envisagez d'ajouter un nouvel échantillon ou de modifier de façon importante un échantillon existant, nous vous recommandons de commencer par créer un problème dans lequel nous pourrons en discuter.

Lorsque vous créez un échantillon ou mettez à jour un échantillon, assurez-vous de créer ou de mettre à jour des tests existants. Tous les tests de ce dépôt sont implémentés en tant que tests dans l'interface utilisateur Nightwatch.JS. Veillez donc à suivre la même conception dans votre propre environnement.

Instructions

Contribuer à votre premier correctif

Vous devez vous préparer pour importer votre première LM:

  • Examiner et créer le code
  • Remplir le contrat Contributor (voir ci-dessus)
  • Si vous n'avez jamais envoyé de code, vous devez ajouter votre nom ou celui de votre organisation au cas où le contrat de contributeur sera signé par le nom de votre organisation et vos coordonnées dans le fichier AUTHORS (AUTORISATIONS).
  • Accédez à la page https://webrtc.googlesource.com/new-password et connectez-vous à l'aide de votre compte de messagerie. Il doit s'agir du compte renvoyé par git config user.email.
  • Exécutez ensuite la commande suivante: git cl creds-check. Si vous rencontrez des erreurs, demandez de l'aide sur discussion-webrtc.

Vous n'aurez pas besoin de répéter la commande ci-dessus. Vous pouvez ensuite l'importer:

Importer votre premier correctif

Maintenant que votre compte est configuré, vous pouvez effectuer l'importation:

  • Procéder comme suit :

    • En supposant que vous soyez sur la branche principale :
      • git checkout -b my-work-branch
    • Effectuer des modifications, créer en local et exécuter des tests en local

      • git commit -am "Changed x, and it is working"
      • git cl upload

      Un éditeur de texte s'ouvre, affichant tous les messages de commit locaux, vous permettant de le modifier avant qu'il ne devienne la description de la LM.

      Indiquez correctement la valeur du bug. Veuillez spécifier le préfixe de l'outil de suivi des problèmes et le numéro de problème, séparés par un deux-points, par exemple webrtc:123 ou chromium:12345. Si vous n'avez pas de préfixe de l'outil de suivi des problèmes ni de numéro d'incident, ajoutez simplement None.

      Enregistrez et fermez le fichier pour procéder à l'importation sur le serveur de vérification du code WebRTC.

      La commande imprime un lien de la façon suivante : https://webrtc-review.googlesource.com/c/src/+/53121. Si tout fonctionne correctement,

  • Cliquez sur ce lien CL.

  • Si vous n'êtes pas connecté, cliquez sur le bouton "Se connecter" en haut à droite et connectez-vous avec votre adresse e-mail.

  • Cliquez sur "Démarrer l'examen" et ajoutez un examinateur. Les examinateurs se trouvent dans le dossier OWNERS de votre dépôt (il vous faut le plus proche de vos modifications).

  • Répondez aux commentaires des examinateurs:

    • Effectuer des modifications, créer en local et exécuter des tests en local
      • git commit -am "Fixed X and Y"
      • git cl upload
  • Une fois que l'examinateur (LGTM) approuve le correctif, demandez-lui de l'intégrer à la file d'attente des commits.

REMARQUE: Sous Windows, vous devez exécuter la commande ci-dessus dans une interface système Git bash pour que gclient puisse trouver le fichier .gitcookies.

Trybots

Si vous travaillez beaucoup dans WebRTC, vous pouvez demander des droits d'essai. Cela signifie que vous pouvez exécuter les trybots, qui effectuent tous les tests sur toutes les plates-formes. Pour cela, signalez un bug sur bugs.webrtc.org et demandez à l'équipe EngProd de vous accorder des droits d'essai.

Pour exécuter une tâche d'essai, importez une LM comme décrit ci-dessus, puis cliquez sur un dry run ou sur "Choosebots" dans l'interface utilisateur de Gerrit. Vous devez disposer des droits de test. Sinon, demandez à l'examinateur de lancer les bots pour vous.