Uw plug-in uitgeven

Als uw plug-in eenmaal klaar is en u denkt dat de plug-in van nut zou kunnen zijn voor anderen, aarzel dan niet om het te uploaden naar Officiële Python plug-in opslagplaats. Op die pagina kunt u ook richtlijnen vinden voor het verpakken om de plug-in voor te bereiden om goed te werken met het installatieprogramma van plug-ins. Of, in het geval u uw eigen opslagplaats voor plug-ins zou willen inrichten, maak een eenvoudig XML-bestand dat de plug-ins en hun metadata vermeld, voor voorbeelden zie andere opslagplaatsen voor plug-ins.

Officiële Python plug-in opslagplaats

U vindt de officiële Python plug-in opslagplaats op http://plugins.qgis.org/.

Voor het gebruiken van de officiële opslagplaats moet u een OSGEO ID verkrijgen van het OSGEO webportaal.

Als u uw plug-in eenmaal heeft geüpload, zal die wordne gekeurd door een lid van de staf en zult u bericht ontvangen.

TODO:

Een koppeling naar het document voor governance invoegen

Rechten

Deze regels zijn geïmplementeerd in de officiële plug-in opslagplaats:

  • elke geregistreerde gebruiken mag een nieuwe plug-in toevoegen

  • staf-gebruikers mogen alle versies van plug-ins goed- of afkeuren

  • gebruikers die het speciale recht plugins.can_approve hebben krijgen de versies die zij uploaden automatisch goedgekeurd

  • gebruikers die het speciale recht plugins.can_approve hebben kunnen door anderen geüploade versies goedkeuren zo lang als zij in de lijst plug-in owners staan

  • een bepaalde plug-in kan worden verwijderd en bewerkt, alleen door staf-gebruikers en plug-in owners

  • als een gebruiker zonder het recht plugins.can_approve een nieuwe versie uploadt, wordt de versie van de plug-in automatisch niet goedgekeurd.

Beheer van ‘trust’

Stafleden kunnen het recht trust toekennen aan geselecteerde makers van plug-ins door het instellen van het recht plugins.can_approve door middel van de front-end toepassing.

De gedetailleerde weergave van plug-ins biedt directe koppelingen om trust toe te kennen aan de maker van de plug-in of de plug-in owners.

Validatie

Metadata van plug-ins worden automatisch geïmporteerd en gevalideerd vanuit het gecomprimeerde pakket als de plug-in wordt geüpload.

Hier zijn enkele regels voor validatie waarvan u op de hoogte zou moeten zijn wanneer u een plug-in zou willen uploaden naar de officiële opslagplaats:

  1. de naam van de hoofdmap die u plug-in bevat mag alleen ASCII-tekens bevatten (A-Z en a-z), cijfers en het teken underscore (_) en minus (-), ook mag het niet beginnen met een cijfer

  2. metadata.txt is vereist

  3. alle vereiste metadata vermeld in metadata table moeten aanwezig zijn

  4. het veld version voor metadata moet uniek zijn

Plug-in structuur

Op grond van de regels voor validatie moet het gecomprimeerde (.zip) pakket van uw plug-in een specifieke structuur hebben om als een functionele plug-in te worden gevalideerd. Omdat de plug-in zal worden uitgepakt binnen de map plug-ins van de gebruiker moet het zijn eigen map binnen het .zip-bestand hebben om niet te interfereren met andere plug-ins. Verplichte bestanden zijn: metadata.txt en __init__.py. Maar het zou leuk zijn om een README te hebben en natuurlijk een pictogram om de plug-in weer te geven (resources.qrc). Hieronder volgt een voorbeeld van hoe een plug-in.zip er uit zou moeten zien.

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