Contributions are welcome and will be fully credited.
We accept contributions via Pull Requests on Github.
The current stable major version is v6. The v7 is under development.
This means any new feature MUST target v7 (master
branch).
The v6 (6.x
branch) is maintained only for bug fixes, node/edge updates or documentation improvements.
The code of conduct is described in CODE_OF_CONDUCT.md
-
PSR-2 Coding Standard - The easiest way to apply the conventions is to run PHP Code Sniffer as you code.
-
Add tests! - Your patch won't be accepted if it doesn't have tests.
-
Document any change in behaviour - Make sure the README and the documentation are kept up-to-date.
-
Consider our release cycle - We follow SemVer. Randomly breaking public APIs is not an option.
-
Create topic branches - Don't ask us to pull from your master branch.
-
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. No "WIP" or "Update Foo.php" commits - PR's will be rejected!
-
Ensure tests pass! - Please run the tests before submitting your pull request, and make sure they pass. We won't accept a patch until all tests pass.
-
Ensure no coding standards violations - Please run PHP Code Sniffer using the PSR-2 standard before submitting your pull request. A violation will cause the build to fail, so please make sure there are no violations. We can't accept a patch if the build fails.
$ ./vendor/bin/phpunit
You can install PHP Code Sniffer globally with composer.
$ composer global require squizlabs/php_codesniffer
Then you can cd
into the Facebook PHP SDK folder and run Code Sniffer against the src/
directory.
$ ~/.composer/vendor/bin/phpcs
Happy coding!