Contributions via pull requests on GitHub are welcome and will be fully credited.
ZAPHYR follows the PSR-12 coding standard. The easiest way to apply the conventions is to install PHP Code Sniffer.
Your pull request won't be accepted if it doesn't have tests. Please use the composer test
command to run tests. This command will run the phpunit
tests, the phpstan analyse and also checks for
PSR12 conding standard:
$ composer test
Document any change in behaviour. Make sure the README.md
and any other relevant
documentation are kept up-to-date.
Consider the release cycle. ZAPHYR tries to follow SemVer v2.0.0. Randomly breaking public APIs is not an option.
One pull request per feature. If you want to do more than one thing, send multiple pull requests. Send coherent history. Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please squash them before submitting.
There are some rules for what a commit message should look like. Here is an example of a final commit message:
New: A super new feature
Most importantly, describe what is changed with the commit and not
what is has not been working (that is part of the bug report already).
* Bullet points are okay, too
* An asterisk is used for the bullet, it can be preceded by a single space.
A summary line starts with a keyword (e.g. New
) and a brief summary of what the
change does. Make sure to describe how the behavior is now, not how it used to be - in the end,
telling someone what was broken doesn't help anyone,
you want to tell what is working now.
Prefix the line with a keyword. Possible keywords are:
Keyword | Description |
---|---|
New | A new feature or element. Also small additions |
Changed | A change (which is not a bugfix) to an existing component |
Deprecated | A new deprecation of a feature or function |
Removed | Removal of a feature or function |
Fixed | A fix for a bug |
Security | A security fix |
Here you can go into detail about the how and why of the change. It should be brief, but yet descriptive so people reviewing your change get an idea what they need to look out for.
If you discover security related issues within a repository, please email security@zaphyr.org instead of using the issue tracker of a GitHub repository!
The ZAPHYR code of conduct is derived from the Ruby code of conduct. Any violations of the code of conduct may be reported to merloxx@zaphyr.org