We are using GitHub Actions as a continuous integration system.
For details, take a look at the following workflow configuration files:
workflows/integrate.yaml
workflows/prune.yaml
workflows/merge.yaml
workflows/release.yaml
workflows/renew.yaml
workflows/update.yaml
workflows/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 yamllint
to install yamllint
.
We are using friendsofphp/php-cs-fixer
to enforce coding standards in PHP files.
Run
$ make coding-standards
to 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-analysis
to run a dependency analysis.
We are using phpstan/phpstan
and vimeo/psalm
to statically analyze the code.
Run
$ make static-code-analysis
to run a static code analysis.
We are also using the baseline features of phpstan/phpstan
and vimeo/psalm
.
Run
$ make static-code-analysis-baseline
to 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 tests
to run all the tests.
Run
$ make
to enforce coding standards, run a static code analysis, and run tests!
💡 Run
$ make help
to display a list of available targets with corresponding descriptions.