Skip to content

Latest commit

 

History

History
78 lines (54 loc) · 2.74 KB

CONTRIBUTING.md

File metadata and controls

78 lines (54 loc) · 2.74 KB

CONTRIBUTING

Apigility and related modules (of which this is one) are open source and licensed as BSD-3-Clause. Contributions are welcome in the form of issue reports and pull requests.

All pull requests should include unit tests when applicable, and should follow our coding standards (more on these below); failure to do so may result in rejection of the pull request. If you need help writing tests, please ask on the developer mailing list and/or in IRC.

RESOURCES

If you wish to contribute to Apigility modules, please be sure to read/subscribe to the following resources:

If you are working on new features, refactoring an existing module, or proposing a new module, please send an email to the developer mailing list.

REPORTING POTENTIAL SECURITY ISSUES

If you have encountered a potential security vulnerability in any Apigility module, please report it to us at [email protected]. We will work with you to verify the vulnerability and patch it.

When reporting issues, please provide the following information:

  • Module(s) affected
  • A description indicating how to reproduce the issue
  • A summary of the security vulnerability and impact

We request that you contact us via the email address above and give the project contributors a chance to resolve the vulnerability and issue a new release prior to any public exposure; this helps protect Apigility users, and provides them with a chance to upgrade and/or update in order to protect their applications.

For sensitive email communications, please use our PGP key.

RUNNING TESTS

First, use Composer to install all dependencies:

$ composer install

To run tests, use the PHPUnit executable installed by Composer:

$ ./vendor/bin/phpunit

CODING STANDARDS

While Apigility uses Zend Framework 2 coding standards, in practice, we check standards using phpcs (which is installed via Composer with other dependencies). To check for CS issues:

$ ./vendor/bin/phpcs

This will report CS issues.

phpcs also provides a tool for automatically fixing many issues, phpcbf:

$ ./vendor/bin/phpcbf

If you use the tool and it fixes any files, make sure you run tests to confirm nothing was broken as a result, and then add and commit any changed files.