mirror of
https://github.com/retailcrm/graphql-php.git
synced 2024-11-21 20:36:05 +03:00
1.5 KiB
1.5 KiB
Contributing to GraphQL PHP
Workflow
If your contribution requires significant or breaking changes, or if you plan to propose a major new feature, we recommend you to create an issue on the GitHub with a brief proposal and discuss it with us first.
For smaller contributions just use this workflow:
- Fork the project.
- Add your features and or bug fixes.
- Add tests. Tests are important for us.
- Check your changes using
composer check-all
. - Add an entry to the Changelog's Unreleases section.
- Send a pull request.
Setup the Development Environment
First, copy the URL of your fork and git clone
it to your local machine.
cd graphql-php
composer install
Running tests
./vendor/bin/phpunit
Some tests have annotation @see it('<description>')
. It is used for reference to same tests in graphql-js implementation with the same description.
Coding Standard
The coding standard of this project is based on Doctrine CS.
Run the inspections:
./vendor/bin/phpcs
Apply automatic code style fixes:
./vendor/bin/phpcbf
Static analysis
Based on PHPStan.
./vendor/bin/phpstan analyse --ansi --memory-limit 256M
Running benchmarks
Benchmarks are run via PHPBench.
./vendor/bin/phpbench run .