We are using GitHub Actions as a continuous integration system.
For details, take a look at the following workflow configuration files:
workflows/integrate.yamlworkflows/merge.yamlworkflows/prune.yamlworkflows/release.yamlworkflows/renew.yamlworkflows/triage.yaml
We are using ergebnis/composer-normalize to normalize composer.json.
We are using yamllint to enforce coding standards in YAML files.
If you do not have yamllint installed yet, run
brew install yamllintto install yamllint.
We are using friendsofphp/php-cs-fixer to enforce coding standards in PHP files.
Run
make coding-standardsto automatically fix coding standard violations.
We are using maglnet/composer-require-checker to prevent the use of unknown symbols in production code.
Run
make dependency-analysisto run a dependency analysis.
We are using phpstan/phpstan and vimeo/psalm to statically analyze the code.
Run
make static-code-analysisto run a static code analysis.
We are also using the baseline features of phpstan/phpstan and vimeo/psalm.
Run
make static-code-analysis-baselineto regenerate the baselines in ../phpstan-baseline.neon and ../psalm-baseline.xml.
❗ Ideally, the baselines should shrink over time.
We are using phpunit/phpunit to drive the development.
Run
make teststo run all the tests.
We are using infection/infection to ensure a minimum quality of the tests.
Enable pcov or Xdebug and run
make mutation-teststo run mutation tests.
Run
maketo enforce coding standards, run a static code analysis, and run tests!
💡 Run
make helpto display a list of available targets with corresponding descriptions.