Skip to content

Latest commit

 

History

History
94 lines (59 loc) · 5.08 KB

CONTRIBUTING.md

File metadata and controls

94 lines (59 loc) · 5.08 KB

Contribuindo para o Vindi-Magento2

👏😁 Antes de mais nada, muito obrigado por sua contribuição 👍

Este projeto e todos os participantes estão sob o regimento do Código de Conduta Vindi. Ao participar, espera-se que você mantenha este código.

Contribuições são muito bem vindas e serão totalmente creditadas.

Nós valorizamos muito as contribuições por Pull Requests (PR) em GitHub, mas também adoramos sugestões de novas features. Por isso, fique à vontade para reportar um bug 🚨 e também para parabenizar 🎉 o projeto vindi-magento2!

Requisitos de um bom Pull Request (PR) para vindi-magento2

  • Branches separadas - Recomendamos que o PR não seja a partir da sua branch master.

  • Um PR por feature - Se você deseja ajudar em mais de uma feature, envie múltiplos PRs 😁.

  • Clareza - Além de uma boa descrição sobre a motivação e a solução proposta é possível incluir imagens ou animações que demonstrem quaisquer modificações visuais na interface.

Exemplo de Motivação com uma Solução Proposta:

Motivação

Fazer com que o pedido seja cancelado, caso o pagamento seja reprovado na primeira tentativa (compras avulsas ou primeiro ciclo de uma assinatura), mas atualmente o cliente recebe a informação que o pedido foi registrado com sucesso, e posteriormente recebe a informação de falha no pagamento no Magento.

Solução proposta

Adicionar o cancelamento automático de faturas na Vindi após a recusa de uma transação no Magento2, exceto: compras via Boleto ou pendente de revisões do Antifraude.

  • Foco - Um PR deve possuir um único objetivo bem definido. Evite mais de um viés (bug-fix, feature, refactoring) no mesmo PR.

  • Formatação de código - Não reformate código que não foi modificado. A reformatação de código deve ser feita exclusiva e obrigatoriamente nos trechos de código que foram afetados pelo contexto da sua alteração. Obs.: Gostamos muito do PSR-1 e PSR-2 😄

  • Fragmentação - Quando um PR for parte de uma tarefa e não entregar valor de forma isolada, será necessário explicitar na motivação quais são os objetivos da tarefa, e na solução proposta, os objetivos que foram concluídos no PR em questão e os que serão concluídos em PRs futuros.

Se você nunca criou um Pull Request (PR) na vida, seja bem vindo 🎉 😄 Aqui está um ótimo tutorial de como enviar um.

  1. Faça um fork do projeto, clone seu repositório (fork):

    # Clone repositório (fork) na pasta corrente
    git clone https://github.com/<seu-username>/vindi-magento2
    # Navegue ate a pasta recém clonada
    cd vindi-magento2
  2. Crie uma branch nova a partir da master que vai conter o "tipo/tópico" como nome da branch

  • tipos: feature e fix

    git checkout -b feature/cria_metodo_pagamento
  1. Faça um push da sua branch para seu repositório (fork)

    git push -u origin feature/cria_metodo_pagamento
  2. Abra um Pull Request com uma motivação e solução proposta bem claras.

Qualidade do código

Para garantir o controle da qualidade do código, disponibilizamos alguns testes via PHPUnit em Test/Unit.

Se você nunca utilizou o composer, seja bem vindo 🎉 😄 Aqui está o link do composer, depois instale as dependências do composer.json.

Se você nunca rodou testes funcionais com PHPUnit, seja bem vindo 🎉 😄 Aqui está o link da documentação oficial.

Rodando os Testes

./vendor/bin/phpunit -c dev/tests/unit/phpunit.xml.dist app/code/Vindi/Payment

Revisão da Comunidade

A revisão deve verificar se o PR atende aos requisitos abaixo, na ordem que são apresentados, e a decisão final ficaria com a equipe Vindi quanto à prioridade:

Correto

  • O código realmente faz o que o autor está propondo?
  • O tratamento de erros está adequado?

Seguro

  • As modificações introduzem vulnerabilidades de segurança?
  • Dados sensíveis estão sendo tratados da maneira correta?

Legível

  • O código está legível?
  • Métodos, classes e variáveis foram nomeadas apropriadamente?
  • Os padrões definidos pelo projeto ou pela equipe estão sendo respeitados?

Feliz desenvolvimento!