Skip to content

Latest commit

 

History

History
97 lines (57 loc) · 1.92 KB

CONTRIBUTING.md

File metadata and controls

97 lines (57 loc) · 1.92 KB

CONTRIBUTING

We are using GitHub Actions as a continuous integration system.

For details, see workflows/continuous-integration.yml.

Coding Standards

We are using friendsofphp/php-cs-fixer to enforce coding standards.

Run

$ make coding-standards

to automatically fix coding standard violations.

Dependency Analysis

We are using maglnet/composer-require-checker to prevent the use of unknown symbols in production code.

Run

$ make dependency-analysis

to run a dependency analysis.

Static Code Analysis

We are using phpstan/phpstan to statically analyze the code.

Run

$ make static-code-analysis

to run a static code analysis.

We are also using the baseline feature of phpstan/phpstan.

Run

$ make static-code-analysis-baseline

to regenerate the baseline in ../phpstan-baseline.neon.

❗ Ideally, the baseline should shrink over time.

Tests

We are using phpunit/phpunit to drive the development.

Run

$ make tests

to run all the tests.

Mutation Tests

We are using infection/infection to ensure a minimum quality of the tests.

Enable pcov or Xdebug and run

$ make mutation-tests

to run mutation tests.

Extra lazy?

Run

$ make

to enforce coding standards, run a dependency analysis, run a static code analysis, and run tests!

Help

💡 Run

$ make help

to display a list of available targets with corresponding descriptions.