Communauté

Commencer à contribuer

Nous aimerions que vous contribuiez à notre code source et que vous aidiez à améliorer encore iText 7 Community !

Contribution à iText 7 Community

Nous aimerions que vous contribuiez à notre code source et que vous aidiez à améliorer encore iText 7 Community ! Voici les lignes directrices que nous aimerions que vous suiviez :

Vous avez une question ou un problème ?

Si vous avez des questions sur la façon d’utiliser iText 7 Community, veuillez les adresser à Stack Overflow.

Si vous êtes client et bénéficiez d’un accord de soutien, vous pouvez également accéder directement à notre JIRA et à nos développeurs.

Vous avez rencontré un problème ?

Si vous rencontrez un bogue dans le code source ou une erreur dans les documents, vous pouvez nous aider en soumettant une demande de tirage avec une correction.

Veuillez consulter les lignes directrices de soumission ci-dessous.

Vous souhaitez mettre en œuvre une fonction ?

Si vous souhaitez mettre en œuvre une nouvelle fonction, considérez le type de modification dont il s’agit :

  • Les modifications majeures que vous souhaitez apporter au projet doivent d’abord être discutées afin que nous puissions mieux coordonner nos efforts, éviter la duplication du travail et vous aider à élaborer la modification afin qu’elle soit acceptée avec succès dans le projet. Contactez-nous à l’adresse community@itextpdf.com.
  • Les petites modifications peuvent être élaborées et soumises au référentiel GitHub en tant que demande de tirage.

Lignes directrices de soumission

Soumission d’une question ou d’un problème

Avant de soumettre votre question ou votre problème, effectuez une recherche sur Stack Overflow. Il est possible que votre question ait déjà reçu une réponse.

Si votre problème semble être un bogue et n’a pas été signalé, posez une question sur Stack Overflow pour vérifier qu’il s’agit bien d’un bogue et non pas d’une erreur dans votre code. Aidez-nous à optimiser les efforts que nous consacrons à la correction des problèmes et à l’ajout de nouvelles fonctions en ne signalant pas plusieurs fois les mêmes problèmes. En fournissant les informations suivantes, vous augmenterez les chances de voir votre problème traité rapidement :

  • Comment poser de bonnes questions ?
  • Vue d’ensemble du problème : si une erreur est renvoyée, une trace d’appels non-miniaturisée peut s’avérer utile.
  • Motivation ou cas d’utilisation : expliquez pourquoi il s’agit d’un bogue pour vous.
  • Version(s) d’iText : s’agit-il d’une régression ?
  • Système d’exploitation : s’agit-il d’un problème sous Windows ou Linux, ou peut-être sous Mac ?
  • Reproduire l’erreur : fournissez un exemple court, autonome et correct (compilable), également appelé exemple minimal, complet et vérifiable.
  • Problèmes connexes : un problème semblable a-t-il déjà été signalé ?
  • Suggérer une correction : si vous ne pouvez pas corriger le bogue vous-même, vous pouvez peut-être signaler ce qui pourrait causer le problème (ligne de code ou validation).
  • Marquer la question : ajoutez la balise itext7 à votre question pour que nous puissions la trouver.

Si vous recevez de l’aide, aidez les autres. C’est la règle du bon karma !

Soumission d’une demande de tirage

Avant de soumettre votre demande de tirage, tenez compte des lignes directrices suivantes :

  • Effectuez une recherche sur GitHub pour voir s’il existe une demande de tirage ouverte ou fermée liée à votre soumission afin d’éviter faire des efforts inutiles.
  • Vérifiez que la modification que vous proposez n’a pas déjà été prise en compte dans la branche développement.
  • N’envoyez pas une demande de tirage distincte pour chaque fichier que vous modifiez.
  • Veuillez signer le contrat de licence de contributeur d’iText (iText Contributor License Agreement, iCLA) avant d’envoyer toute demande de tirage concernant une modification de plus de 20 lignes de code significatives (sans compter les accolades et tout autre sucre syntaxique). Nous ne pouvons pas accepter de code sans ce contrat.
  • Dupliquez le référentiel d’iText sur GitHub.
  • Clonez votre duplication d’iText sur votre ordinateur local.
  • Apportez vos modifications, y compris les cas de test appropriés.
  • Suivez nos règles de codage.
  • Validez vos modifications en utilisant un message de validation descriptif selon nos conventions de message de validation.
  • Le moment pourrait être opportun pour ajuster vos validations (si vous souhaitez ou devez le faire) avec git rebase --interactive.
  • Élaborez vos modifications localement pour garantir la réussite de tous les tests.
  • Transférez vos modifications à votre compte GitHub.
  • Créer une demande de tirage dans GitHub.

La « duplication principale » doit être votre référentiel, et la « duplication de base» doit être le référentiel officiel d’iText 7.

  • Si nous suggérons des changements, procédez comme suit :
    • Effectuez les mises à jour nécessaires.
    • Au besoin, ajustez vos validations grâce à un rebasage interactif.
    • Refaites les tests et assurez-vous qu’ils sont toujours satisfaisants.
    • Forcez la transmission de type push vers votre référentiel GitHub. Cela mettra à jour votre demande de tirage.

C’est tout ! Merci de votre contribution !

Après la fusion de votre demande de tirage

Après la fusion de votre demande de tirage, vous pouvez supprimer votre duplication en toute sécurité et recevoir les modifications du référentiel principal (en amont).

Règles de codage

Afin de garantir la cohérence de l’ensemble du code source, gardez ces règles à l’esprit lorsque vous travaillez :

  • Nous développons d’abord en Java, puis passons à .NET, de sorte que nous préférons les soumissions de code en Java. Néanmoins, cela ne vous empêche pas de faire une bonne demande de tirage vers le port .NET.
  • Tout le code Java doit être Java 7. Désolé, pas d’expressions lambda ni d’autres éléments du langage Java 8.
  • Toutes les fonctions ou corrections de bogues doivent être testées par un ou plusieurs tests unitaires.
  • Toutes les méthodes API publiques doivent être documentées avec JavaDoc. Pour savoir comment nous documentons nos API, veuillez consulter les javadocs existants.
  • Nous suivons les règles contenues dans les conventions de code d’Oracle pour le langage de programmation Java, ainsi que la règle suivante :
    • Renvoyez tout code à la ligne tous les 100 caractères.

Lignes directrices de la validation Git

Nous avons des lignes directrices sur la façon de formater nos messages de validation Git. Cela permet d’obtenir des messages plus lisibles et faciles à suivre lors de la consultation de l’historique du projet. Mais nous utilisons aussi les messages de validation Git pour générer le journal des modifications d’iText 7 Community.

Ces lignes directrices sont extraites de l’article de blog de Chris Beams How to Write a Git Commit Message (Comment écrire un message de validation Git).

Format des messages de validation

Chaque message de validation comprend un objet, un corps et un pied de page :

<objet>
<LIGNE BLANCHE>
<corps>
<LIGNE BLANCHE>
<pied de page>

Aucune ligne du message de validation ne doit dépasser 72 caractères. Cela permet d’obtenir un message plus facile à lire sur GitHub et dans les différents outils Git.

Objet

L’objet contient une description succincte de la modification :

Corps

Le pied de page contient des informations sur les modifications importantes et est également l’endroit où faire référence aux questions JIRA ou GitHub que cette validation clôture.

Signature de l’iCLA

Veuillez signer le contrat de licence de contributeur d’iText (iText Contributor License Agreement, iCLA) avant d’envoyer toute demande de tirage. Pour qu’une modification de code importante (plus de 20 lignes de code significatives) soit acceptée, l’iCLA doit être signé. Nous promettons qu’il s’agit d’un processus rapide !

Vous devrez signer (numériquement) le formulaire, puis l’envoyer par courrier électronique, télécopie ou courrier postal.

Code de conduite des contributeurs

Veuillez noter que ce projet est lancé avec un code de conduite des contributeurs. En participant à ce projet, vous acceptez d’en respecter les conditions.

Nous utilisons le réseau Stack Exchange pour le soutien gratuit et GitHub pour l’hébergement du code. En utilisant ces services, vous acceptez de respecter leurs conditions :

Contribuer à la communauté open source

Nous aimerions que vous contribuiez à notre code source et que vous aidiez à améliorer encore iText 7 Community !

Commencer à contribuer
Contact

Vous avez d'autres questions ?

Nous y répondrons avec plaisir. Contactez-nous et nous reviendrons vers vous sous peu.

Contactez-nous
Restez à jour

Rejoignez plus de 11 000 abonnés et devenez un expert iText PDF en vous tenant au courant de nos nouveaux produits, mises à jour, conseils, solutions techniques et événements.

Abonnez-vous