For a better community, please read and follow the code of conduct.
It is great to include examples in your issues, like what fails or what you want to achieve.
There are two branches available, master
and develop
. All stable changes will go into the master
, and all unstables to develop
.
As a result, you always have to make changes on develop
, and merge back to the same branch, in the case of any PRs. Any requests to merge into master
directly is likely to be rejected.
For the development process, install dependencies first:
composer install
Make unit-tests for the new code. Make sure all current tests pass by invoking PHPUnit:
./vendor/bin/phpunit
We will be thankful if you update the related documentations along with any changes.
We use Phan static analyser.
Newly-added code must have no errors reported by Phan. You may suppress an error, if you think it's not applicable. Globally suppressing errors is not a good idea, so make sure you make the suppression as limited and small as possible.
To run Phan, do:
You should use the PSR-2 and PSR-12 style guides in your code.
This project follows the semantic versioning guidelines.