iMastersDev/oportunidades

Garantir que códigos PHP sigam PSR2

Closed this issue · 3 comments

Em algum momento (não lembro a issue, ou se foi apenas no hangout) definimos que os códigos seriam PSR2 https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md

Acredito que uma maneira de garantirmos isso primeiro é colocar o php_codesniffer nas nossas máquinas de desenvolvimento.

Já existem alguns componentes prontos no Packagist para isso, como o https://packagist.org/packages/squizlabs/php_codesniffer

Um problema é que ele não tem como padrão a PSR2 como standard default.

Por isso fiz o seguinte: https://packagist.org/packages/rogeriopradoj/php-code-sniffer

Se concordarem, vou colocar ele no nosso composer json no require-dev, blz?

Vi que não faz muito sentido fazer um fork igual fiz: melhor usar o oficial, https://packagist.org/packages/squizlabs/php_codesniffer

E na hora de executar o comando, definir o padrão que será usado, assim:

$ bin/phpcs src --standard=PSR2

Pessoal, vocês que já usam integração contínua e ferramentas do tipo: a execução dessa verificação PHPCS deveria ser verificada/garantida automaticamente em que momento:

  • dentro dos testes do PHPUnit, como um parâmetro a mais no phpunit.xml?
  • ou em algum script que rodará automaticamente em alguma fase do projeto, como no Makefile que o @augustohp criou?

O ideal acho que é termos um target de ci no Makefile... no phpunit.xml só os outúts de coverage mesmo.

Se utilizássemos o phing, isto estaria no build.xml, portanto a melhor a alternativa deve ser, na minha opinião, o Makefile ou o travis.yml