| @@ -1,0 +1,60 @@ | ||
| 1 | +# Contributing to CMB2 | |
| 2 | + | |
| 3 | +Thank you for your interest in contributing back to CMB2. Please help us review your issues and/or merge your pull requests by following the below guidelines. | |
| 4 | + | |
| 5 | +#### NOTE: The issues section is for bug reports and feature requests only. | |
| 6 | +_Support is not offered for this library, and the likelihood that the maintainers will respond is very low. If you need help, please use [stackoverflow](http://stackoverflow.com/search?q=cmb), or the [wordpress.org plugin forums](http://wordpress.org/support/plugin/cmb2)._ | |
| 7 | + | |
| 8 | +Before reporting a bug | |
| 9 | +--- | |
| 10 | +1. Please review the [documentation](https://github.com/CMB2/CMB2/wiki). Most questions revolve around the [field types](https://github.com/CMB2/CMB2/wiki/Field-Types), [field parameters](https://github.com/CMB2/CMB2/wiki/Field-Parameters), or are addressed in the [troubleshooting](https://github.com/CMB2/CMB2/wiki/Troubleshooting) section. | |
| 11 | +2. Search [issues](https://github.com/CMB2/CMB2/issues) to see if the issue has been previously reported. | |
| 12 | +3. Install the [`develop`](https://github.com/CMB2/CMB2/tree/develop) version of CMB2 and test there. | |
| 13 | + | |
| 14 | + | |
| 15 | +How to report a bug | |
| 16 | +--- | |
| 17 | +1. Specify the version number for both WordPress and CMB2. | |
| 18 | +3. Describe the problem in detail. Explain what happened, and what you expected would happen. | |
| 19 | +4. Provide a small test-case and a link to a [gist](https://gist.github.com/) containing your entire metabox registration code. | |
| 20 | +5. If helpful, include a screenshot. Annotate the screenshot for clarity. | |
| 21 | + | |
| 22 | + | |
| 23 | +How to contribute to CMB2 | |
| 24 | +--- | |
| 25 | +All contributions welcome. If you would like to submit a pull request, please follow the steps below. | |
| 26 | + | |
| 27 | +1. Make sure you have a GitHub account. | |
| 28 | +2. Fork the repository on GitHub. | |
| 29 | +3. **Check out the [`develop`](https://github.com/CMB2/CMB2/tree/develop) version of CMB2.** If you submit to the master branch, the PR will be closed with a link back to this document. | |
| 30 | +4. **Verify your issue still exists in the [`develop`](https://github.com/CMB2/CMB2/tree/develop) branch.** | |
| 31 | +5. Make changes to your clone of the repository. | |
| 32 | + 1. Please follow the [WordPress code standards](https://make.wordpress.org/core/handbook/coding-standards). | |
| 33 | + 2. If possible, and if applicable, please also add/update unit tests for your changes. | |
| 34 | + 3. Please add documentation to any new functions, methods, actions and filters. | |
| 35 | + 4. When committing, reference your issue (if present) and include a note about the fix. | |
| 36 | +6. [Submit a pull request](https://help.github.com/articles/creating-a-pull-request/). | |
| 37 | + | |
| 38 | +**Note:** You may gain more ground and avoid unecessary effort if you first open an issue with the proposed changes, but this step is not necessary. | |
| 39 | + | |
| 40 | +Translations | |
| 41 | +--- | |
| 42 | +If you are looking to provide language translation files, Please do so via [WordPress Plugin Translations](https://translate.wordpress.org/projects/wp-plugins/cmb2). | |
| 43 | + | |
| 44 | +Creating/Running Tests | |
| 45 | +--- | |
| 46 | +We use PHPUnit and the WordPress test suite for our unit/integration tests. | |
| 47 | + | |
| 48 | +1. You can install the WordPress test suite [using the installer](https://github.com/CMB2/CMB2/blob/develop/tests/bin/install-wp-tests.sh#L3): `bash tests/bin/install-wp-tests.sh wordpress_test root ''`. (this will install the test suite in the temp folder on your computer, using a test database with those given credentials) | |
| 49 | +1. Install PHPUnit via composer, `composer install`. | |
| 50 | +1. Once Composer and the WordPress test sutie are installed, you can run phpunit via `./vendor/bin/phpunit` in the CMB2 directory. | |
| 51 | + | |
| 52 | +Additional Resources | |
| 53 | +--- | |
| 54 | + | |
| 55 | +* [CMB2 Documentation Wiki](https://github.com/CMB2/CMB2/wiki) | |
| 56 | +* [CMB2 Snippet Library](https://github.com/CMB2/CMB2-Snippet-Library) | |
| 57 | +* [CMB2 API Documentation](http://cmb2.io/api/) | |
| 58 | +* [General GitHub Documentation](http://help.github.com/) | |
| 59 | +* [GitHub Pull Request documentation](http://help.github.com/send-pull-requests/) | |
| 60 | +* [PHPUnit Tests Guide](http://phpunit.de/manual/current/en/writing-tests-for-phpunit.html) | |