Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Contributing #201

Closed
williamespindola opened this issue Jun 6, 2018 · 19 comments
Closed

Contributing #201

williamespindola opened this issue Jun 6, 2018 · 19 comments

Comments

@williamespindola
Copy link
Contributor

williamespindola commented Jun 6, 2018

É importante manter algumas regras, aqui é um punhado do que a própria comunidade PHP usa nos projetos, algumas coisas podem parecer "chatas", mas quando mais alinhado estiver o código, todos se beneficiarão.

Este seria o conteúdo nosso arquivo CONTRIBUTING.md

Contribuindo

Contribuições são bem vindas e sempre são devidamente creditadas. Você pode facilmente enviar suas contribuições través de pull requests no Github.

Devido a limitação de tempo, nem sempre estamos disponíveis para responder rapidamente como queríamos, por favor não leve para o lado pessoal.

Antes de enviar qualquer feature ou bug fix:

  • Verifique se isto ja não foi solicitado ou ja esta relacionado com alguma issue (aberta ou fechada) e se alguém ja esta trabalhando nisto;
    • Se não existir, abra uma issue e notifique todos que você esta trabalhando nisto;
    • Se existir, crie um comentário para notificar todos que você esta trabalhando nisto;
  • Certifique-se de que o que você precisa ainda não está pronto

Antes de enviar um Pull Request

** Você deve conhecer sobre PHP-FIG** nós usamos padrões como PSR-2 Coding Standard - Verifique o estilo do código com: vendor/bin/php-cs-fixer fix.

  • Adicione testes - Seu path não será aceito se não tiver testes.

  • Documente qualquer comportamento - Tenha certeza que README.md e qualquer outro documento relevante esteja atualizado.

  • Considere nosso ciclo de lançamento - Nós seguimos SemVer v2.0.0. Quebrar aleatoriamente APIs públicas não é uma opção.

  • Um pull request por feature - Se você quiser fazer mais de uma coisa, envie várias pull requests.

  • ** Envie um histórico coerente** - Tenha certeza que cada commit em seu pull request seja significativo. Se você tivesse que fazer vários commits intermediários enquanto desenvolvendo, or favor execute um squash antes de submeter.

Executando destes

$ composer test

Bom código!

@fernandosjp
Copy link
Contributor

Bem legal @williamespindola! Vou colocar como referência um contributing.md de um projeto aberto que usamos aqui na Fundação Lemann. Ele é um pouco diferente do seu, é mais high-level mas tem uns pontos que acho bem interessante:

  1. Define a visão do produto
  2. Explica o processo de construção do produto (aqui dentro desse processo fala de coding standard e code review)
  3. Explica formas de contribuição (necessidades do usuário, código, documentação)

https://github.com/metabase/metabase/blob/master/docs/contributing.md

@ghost
Copy link

ghost commented Jun 7, 2018 via email

@farribeiro
Copy link
Contributor

@JDias Poderia reorganizar seu comentário?

@ghost
Copy link

ghost commented Jun 7, 2018

@farribeiro !?!?

@farribeiro
Copy link
Contributor

farribeiro commented Jun 7, 2018

@ghost
Copy link

ghost commented Jun 7, 2018 via email

@ghost
Copy link

ghost commented Jun 7, 2018

Voltando ao assunto, eu seria favorável a ter um "contrib" em um branch experimental, labs.
Assim outros podem "se inspirar". (que talvez essas rules não precisassem se aplicar?)
faz sentido?

https://github.com/ezrec/AROS-mirror/tree/ABI_V1/binaries/logo-contest

@williamespindola
Copy link
Contributor Author

williamespindola commented Jun 8, 2018

@JDias e @fernandosjp Logo mais teremos, ainda não tenho visão do produto para colocar pontos como estes, por isto foquei na parte técnica e padronização que a comunidade ja usa. Logo mais quando as contribuições começarem a andar adicionamos estes pontos. Até porque exemplificar como criar algumas coisas com usando a estrutura de código que temos hoje é retrabalho. Muita coisa precisa ser refatorada.

@williamespindola
Copy link
Contributor Author

Obrigado pelo PR @farribeiro

@MarceloCajueiro
Copy link
Contributor

O @eberfreitas está trabalhando num doc bem detalhado sobre contribuição. Em breve colocaremos ele aqui numa versão que vai requerer evolução contínua.

@JDias não precisa de um branch sem regra. A pessoa pode usar um fork para fazer as suas brincadeiras e testes e só abrir issue e pull request do que testou e viu funcionando. O que acha?

@williamespindola logo logo vamos ter o manual do produto, inclusive com ilustrações de como usar. Vai facilitar muito a questão de ter a visão de produto.

@ghost
Copy link

ghost commented Jun 9, 2018

Olá @MarceloCajueiro , isso sim, com certeza.

O que falei vai na linha de uma referência que fizeram ao "contributing" do ruby.

O que comentei é que as vezes alguem desenvolve algo interessante, mas inacabado.

Na referência a pessoa explica os custos implícitos de aceitar, mas o caso deles não é o i-educar.

A comunidade do i-educar é muito menor.

O que sugeri é que houvesse a possibilidade de receber contribuições inacabadas, pois as vezes o código explicar melhor do que o texto.

E alguém com mais traquejo em testes, formating, documentação podem elaborar.

No caso do ruby o volume de "avaliação e refino" da contribuição seria alto, por causa do tamanho do volume, que não acredito que seja o caso do i-educar...

Por exemplo, se alguém portar um pedaço do i-educar para o laravel ou fizer um tema, conjunto de views, para o i-educar, ou coisas assim, mesmo que inacabados servem de indicação. (Inspiração)

Talvez apenas um txt com link para os repos aonde estão acontecendo as brincadeiras?

@ghost
Copy link

ghost commented Jun 9, 2018

Apesar desse repo ser da portabilis/i-educar acho que o escopo deveria ser o sistema de gerenciamento de escolas, não o código do i-educar, mas isso é uma decisão "pessoal" que vocês tem que refletir, acho.

@MarceloCajueiro
Copy link
Contributor

@JDias sim, faz sentido ter coisas inacabadas em aberto, até para pedir ajuda. Vamos pensar em como organizar isso.

@JDias já sobre discussões, aqui vamos discutir ambos os assuntos, código e gestão escolar. Em breve teremos um fórum onde vamos poderemos categorizar melhor.

O Github é um catalizador de desenvolvedores. É inevitável que o foco aqui não seja o código. O código é um meio para o produto final. Sem um código de qualidade, com poucos bugs e fácil manutenibilidade, não se tem um sistema de gestão bom.

Vamos todos avançando em todos os assuntos necessários.

@ghost
Copy link

ghost commented Jun 9, 2018

eu comentei um vez com a @carolinesalib (que eu vou ser eternamente grato por ter me falado sobre o laravel :) ) sobre forum, vou colocar novamente aqui o que eu vi que achei interessante @MarceloCajueiro

usando o github como forum:

https://github.com/laravelbrasil/forum

ou, se quiser algo mais robusto eu gostei do:

https://github.com/discourse/discourse

esses foram os que eu vi, pode ser que tenha opções melhores.

@williamespindola
Copy link
Contributor Author

williamespindola commented Jun 9, 2018

Tem mais um ponto que quero propor para o Contributing. Vi que o pessoal esta fazendo prs com muitos commits. Seria legal se os commits fossem atomicos, ou seja cada commit representa uma funcionalidade, um valor, algo que seja entregavel e funcional. Isto ajuda até na entrega das features.
Isto ajuda muito na hora de trabalhar com os pull requests aqui no github.
Este artigo é muito bom e fala como escrever melhor uma mensagem de commit https://chris.beams.io/posts/git-commit/

@farribeiro
Copy link
Contributor

Gostou do meu jeito de commitar?

@eberfreitas
Copy link
Contributor

Como o @MarceloCajueiro comentou aqui andei trabalhando numa versão do guia de contribução usando um bocado do que foi discutido por aqui e outras fontes.

Se puderem, dêem uma olhara em #219. Obrigado!

@farribeiro
Copy link
Contributor

Fechar ISSUE... CONTRIBUITING.md já foi aplicado!

@farribeiro
Copy link
Contributor

Vlw

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants