Comparar
Três formas de colocar um plugin ou tema premium em um projeto WordPress, linha a linha. O repositório é a terceira coluna; ele não substitui a licença do fornecedor, ele empacota o código que você tem licença para executar.
| Critério | Sites de download aleatórios e zips “nulled” | O portal do próprio fornecedor, zip manual | Este repositório Composer (composer.meteorgpl.com) |
|---|---|---|---|
| Integridade do código-fonte | Origem desconhecida, muitas vezes modificado; nada com que verificar um download. | O arquivo original, direto do fornecedor. | O código original, com um SHA-256 para cada versão, analisado em busca de malware antes da publicação. |
| Verificações de licença | Removidas ou desativadas por patch; o produto não pode ser registrado junto ao fornecedor. | Intactas; ativadas com a sua chave. | Intactas; ativadas com a sua própria chave comprada do fornecedor. |
| Versionamento e reprodutibilidade do composer.lock | Nenhum; o nome do arquivo é a única pista da versão. | Manual: baixar, descompactar, enviar; nenhum arquivo lock registra o que roda onde. | Tags semver; o composer.lock fixa a versão e a soma de verificação do dist, então todo ambiente instala os mesmos bytes. |
| Atualizações | Baixar de novo de qualquer lugar, com o mesmo risco a cada vez. | Pelo painel do WordPress com uma chave válida, ou outro zip manual. | composer update. |
| Reversão | Somente se você guardou o zip antigo. | Somente se o fornecedor ainda oferecer a versão antiga. | Toda versão publicada continua disponível. |
| Compatível com Bedrock e twelve-factor | Nenhum. | Plugins ficam fora do grafo de dependências; deploys exigem etapas manuais. | Dependências declaradas no composer.json, instaladas pelo build, sem código de terceiros copiado para o seu repositório. |
| Clareza jurídica | Procedência incerta, código modificado. | Os termos de licença do fornecedor. | Redistribuição de código GPL mais a licença do fornecedor que você compra; uma política de remoção publicada. |
| Suporte e direito a atualizações do fornecedor | Nenhum. | Com a licença. | Com a licença: ele continua com o fornecedor; o repositório não o substitui. |
| Automação de CI | Impossível sem fazer commit de zips. | Impossível sem fazer commit de zips ou automatizar logins no portal. | auth.json ou COMPOSER_AUTH no pipeline. |
| Custo | “Gratuito”, com risco de malware e sem suporte. | A licença do fornecedor. | A licença do fornecedor mais uma assinatura do repositório. |
O que é removido e por quê
A GPL abrange o código que um fornecedor declara sob ela. Arte, fontes, mídia, documentos e conteúdo de demonstração incluídos em um produto costumam ter licença própria, por isso o repositório não os redistribui: imagens rasterizadas são substituídas por espaços reservados do mesmo tamanho (os layouts continuam funcionando), fontes são removidas, exceto fontes de ícones, e áudio, vídeo, documentos, conteúdo de demonstração e arquivos compactados aninhados são removidos. A página do pacote informa a licença declarada e um perfil de licença; a página de licenciamento traz a política completa. Obtenha os recursos originais com o fornecedor usando a sua licença.
O que nunca é alterado
PHP, JavaScript, CSS e o restante do código são distribuídos como o fornecedor os escreveu. Verificações de licença, fluxos de ativação, verificações de atualização e a telemetria do fornecedor não são alterados, removidos nem substituídos por stubs. Arquivos que chegam com essas modificações são restaurados para o código original quando existe uma referência limpa e, caso contrário, não são publicados. Ative com a sua chave; o fornecedor continua sendo o seu ponto de suporte.