16.5. Déblocage de votre plugin

Une fois que votre plugin est prêt et que vous pensez qu’il pourrait être utile à certaines personnes, n’hésitez pas à le télécharger sur Dépôt officiel des extensions QGIS. Sur cette page, vous trouverez également des instructions sur la façon de préparer le plugin pour qu’il fonctionne bien avec l’installateur de plugin. Si vous souhaitez créer votre propre dépôt de plugins, vous pouvez également créer un simple fichier XML qui répertoriera les plugins et leurs métadonnées.

Veuillez porter une attention particulière aux suggestions suivantes :

16.5.1. Métadonnées et noms

  • éviter d’utiliser un nom trop similaire aux plugins existants

  • si votre plugin a une fonctionnalité similaire à un plugin existant, veuillez expliquer les différences dans le champ À propos, afin que l’utilisateur sache lequel utiliser sans avoir besoin de l’installer et de le tester

  • éviter de répéter « plugin » dans le nom du plugin lui-même

  • utilisez le champ description dans les métadonnées pour une description d’une ligne, le champ À propos pour des instructions plus détaillées

  • inclure un dépôt de code, un système de suivi des bogues et une page d’accueil ; cela augmentera considérablement les possibilités de collaboration et peut être fait très facilement avec l’une des infrastructures web disponibles (GitHub, GitLab, Bitbucket, etc.)

  • choisissez les balises avec soin : évitez celles qui ne sont pas informatives (par exemple le vecteur) et préférez celles qui sont déjà utilisées par d’autres (voir le site du plugin)

  • ajouter une icône appropriée, ne pas laisser celle par défaut ; voir l’interface QGIS pour une suggestion du style à utiliser

16.5.2. Code et aide

  • ne pas inclure les fichiers générés (ui_*.py, resources_rc.py, fichiers d’aide générés…) et les trucs inutiles (par exemple .gitignore) dans le dépôt

  • ajouter le plugin au menu approprié (Vecteur, Raster, Web, Base de données)

  • le cas échéant (plugins effectuant des analyses), envisagez d’ajouter le plugin en tant que sous-plugin du cadre Processing : cela permettra aux utilisateurs de l’exécuter en lot, de l’intégrer dans des flux de travail plus complexes et vous libérera de la charge de concevoir une interface

  • inclure au moins une documentation minimale et, si cela est utile pour tester et comprendre, des échantillons de données.

16.5.3. Dépôt officiel des extensions QGIS

Vous trouverez le dépôt officiel des extensions QGIS ici : https://plugins.qgis.org/.

Pour pouvoir utiliser le dépôt officiel, vous devez obtenir un identifiant OSGEO sur le portail web de l’OSGEO <https://www.osgeo.org/community/getting-started-osgeo/osgeo_userid/>`_.

Une fois que vous aurez téléchargé votre plugin, il sera approuvé par un membre du personnel et vous en serez informé.

A FAIRE :

Insérer un lien vers le document de gouvernance

16.5.3.1. Autorisations

Ces règles ont été mises en œuvre dans le dépôt officiel des plugins :

  • chaque utilisateur enregistré peut ajouter un nouveau plugin

  • Les utilisateurs du staff peuvent approuver ou désapprouver toutes les versions de plugin

  • les utilisateurs qui ont la permission spéciale plugins.can_approve voient les versions qu’ils téléchargent automatiquement approuvées

  • les utilisateurs qui ont la permission spéciale plugins.can_approve peuvent approuver les versions téléchargées par d’autres tant qu’ils sont dans la liste des propriétaires du plugin

  • un plugin particulier ne peut être supprimé et édité que par les utilisateurs du staff et les propriétaires du plugin

  • si un utilisateur sans permission plugins.can_approve télécharge une nouvelle version, la version du plugin n’est pas automatiquement approuvée.

16.5.3.2. Gestion de la confiance

Les membres du staff peuvent accorder la confiance à des créateurs de plugins sélectionnés en définissant la permission plugins.can_approve via l’application frontale.

La vue détaillée du plugin offre des liens directs pour accorder la confiance au créateur du plugin ou aux propriétaires du plugin.

16.5.3.3. Validation

Les métadonnées du plugin sont automatiquement importées et validées à partir du paquet compressé lorsque le plugin est téléchargé.

Voici quelques règles de validation que vous devez connaître lorsque vous souhaitez télécharger un plugin sur le dépôt officiel :

  1. le nom du dossier principal contenant votre plugin doit contenir uniquement des caractères ASCII (A-Z et a-z), des chiffres et les caractères de soulignement (_) et moins (-), il ne peut pas non plus commencer par un chiffre

  2. metadata.txt est requis

  3. toutes les métadonnées requises énumérées dans metadata table doivent être présentes

  4. le champ de métadonnées de la version doit être unique

16.5.3.4. Structure de l’extension

Selon les règles de validation, le paquet compressé (.zip) de votre plugin doit avoir une structure spécifique pour être validé comme plugin fonctionnel. Comme le plugin sera décompressé dans le dossier plugins des utilisateurs, il doit avoir son propre répertoire dans le fichier .zip pour ne pas interférer avec les autres plugins. Les fichiers obligatoires sont : metadata.txt et __init__.py. Mais il serait bon d’avoir un README et bien sûr une icône pour représenter le plugin (resources.qrc). Voici un exemple de ce à quoi devrait ressembler un plugin.zip.

plugin.zip
  pluginfolder/
  |-- i18n
  |   |-- translation_file_de.ts
  |-- img
  |   |-- icon.png
  |   `-- iconsource.svg
  |-- __init__.py
  |-- Makefile
  |-- metadata.txt
  |-- more_code.py
  |-- main_code.py
  |-- README
  |-- resources.qrc
  |-- resources_rc.py
  `-- ui_Qt_user_interface_file.ui