Liberando seu complemento

Uma vez que o seu complemento estiver pronto e você achar que o complemento pode ser útil para algumas pessoas, não hesite em enviá-lo para Repositório oficial de complementos python. Nessa página você pode encontrar também pacotes de orientações sobre como preparar o complemento para funcionar bem com o instalador de complementos. Ou no caso de você gostaria de criar o seu próprio repositório de complementos, criando um arquivo XML simples que irá listar os complementos e seus metadados, para exemplos, ver outros repositórios de complementos.

Por favor tenha um cuidado especial com estas sugestões

Metadados e nome

  • evitar o uso de um nome muito semelhante ao de complementos existentes

  • Se seu complemento tem a funcionalda semelhante a de um complemento já existente, por favor explique as diferenças n campo Sobre, então o usuário saberá qual usar sem a necessidade de intalá-lo e testar.

  • evitar repetir “plugin” no nome do complemento

  • use o campo de descriçao em metadados para a descrição de 1 linha, e no campo Sobre para instruções mais detalhadas

  • Adicione um repositório de código, um rastreador de erros, e uma página inicial; isso vai melhorar muito a possibilidade de colaboração, e pode ser feito muito facilmente com uma das infra-estruturas disponíveis na web (GitHub, GitLab, Bitbucket, etc.)

  • Escolha etiquetas com cuidado, evite as não informativas (por exemplo vetor) e prefira as usualmente usada pelos outros (veja o website de complementos)

  • Adicione um ícone próprio, não deixe o padrão; veja a interface QGIS por sugestão de estilos para usar

Código e ajuda

  • não adicione arquivos gerados (ui_*.py, resources_rc.py, generated help files…) coisas inúteis (por exemplo. .gitignore) no repositório

  • Adicione o complemento no menu apropriado (Vector, Raster, Web, Database)

  • quando apropriado (complements realizando análises), considere acrescentar o complemento como uma sub=complemento do quadro de processamento: isso vai permitir que os usuários executem em lote, para integrá-lo em fluxos de trabalho mais complexos, e vai livrá-lo do fardo de projetar uma interface

  • Adicione no mínimo uma pequena documentação, se for útil para teste e entendimento, dados de exemplo

Repositório oficial de complementos python

Você pode encontrar o repositório oficial de complementos python emt http://plugins.qgis.org/.

Para usar o repositório oficial, deve obter uma ID OSGEO do portal web OSGEO.

Depois de carregado o seu complemento será aprovado por um membro da equipe e você será notificado.

TODO:

Insira um link para o documento de governança.

Permissões

Estas regras foram implementadas no repositório oficial de complementos:

  • todos os usuários registrados podem adicionar um novo plugin

  • A equipe de usuários podem aprovar ou reprovar todas as versões do plugin

  • Os usuários que têm permissão especial plugins.can_approve automaticamente têm suas versões de extensão aprovado

  • usuários que têm a permissão especial plugins.can_approve pode aprovar versões carregadas por outros, enquanto eles estão na lista do proprietários de complementos

  • um complemento específico pode ser apagado e editado apenas pela equipe de usuários e pelos proprietários do complemento

  • se um usuário sem permissão plugins.can_approve carrega uma nova versão, a versão do plugin é automaticamente não aprovado.

Gerenciamento de confiança

Os membros da equipe podem conceder permissão para criadores de complementos selecionado definindo permissão plugins.can_approve através da aplicação front-end.

A visão de detalhes do complemento oferece links diretos para conceder permissão para o criador do complemento ou o proprietários do complemento.

Validação

Metadados do complemento são automaticamente importados e validados a partir do pacote compactado quando o complemento é carregado.

Aqui estão algumas regras de validação que você deve estar ciente quando desejar fazer o upload de um complemento no repositório oficial:

  1. o nome de sua pasta principal contendo seu complementeo deve conter apenas caracteres ASCII (A-Z e a-z), números e os caracteres underscore (_) e menos (-), e também não pode iniciar com um número.

  2. metadata.txt é necessário

  3. todos metadados requeridos e que devem estar presentes estão listados em metadata table

  4. o campo versão metadados deve ser exclusivo

Estrutura dos complementos

Seguindo as regras de validação, o pacote compactado (.zip) de seu plugin deve ter uma estrutura específica para ser validado como um plugin funcional. Como o plugin será descompactado dentro da pasta de plugins de usuários ele deve ter seu próprio diretório dentro do arquivo .zip para não interfirir em outros plugins. Arquivos obrigatórios: metadata.txt e __init__.py. Seria melhor se tivesse um README e também um ícone representando o plugin (resources.qrc). A seguir, um exemplo de como um plugin.zip deve se parecer.

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