|
| 1 | +# Contributors Guide |
| 2 | + |
| 3 | +Interested in contributing? Awesome! Before you do though, please read our |
| 4 | +[Code of Conduct](https://slackhq.github.io/code-of-conduct). We take it very seriously, and expect that you will as |
| 5 | +well. |
| 6 | + |
| 7 | +There are many ways you can contribute! :heart: |
| 8 | + |
| 9 | +### Bug Reports and Fixes :bug: |
| 10 | +- If you find a bug, please search for it in the [Issues](https://github.com/slackapi/bolt-python/issues), and if it isn't already tracked, |
| 11 | + [create a new issue](https://github.com/slackapi/bolt-python/issues/new). Fill out the "Bug Report" section of the issue template. Even if an Issue is closed, feel free to comment and add details, it will still |
| 12 | + be reviewed. |
| 13 | +- Issues that have already been identified as a bug (note: able to reproduce) will be labelled `bug`. |
| 14 | +- If you'd like to submit a fix for a bug, [send a Pull Request](#creating_a_pull_request) and mention the Issue number. |
| 15 | + - Include tests that isolate the bug and verifies that it was fixed. |
| 16 | + |
| 17 | +### New Features :bulb: |
| 18 | +- If you'd like to add new functionality to this project, describe the problem you want to solve in a [new Issue](https://github.com/slackapi/bolt-python/issues/new). |
| 19 | +- Issues that have been identified as a feature request will be labelled `enhancement`. |
| 20 | +- If you'd like to implement the new feature, please wait for feedback from the project |
| 21 | + maintainers before spending too much time writing the code. In some cases, `enhancement`s may |
| 22 | + not align well with the project objectives at the time. |
| 23 | + |
| 24 | +### Tests :mag:, Documentation :books:, Miscellaneous :sparkles: |
| 25 | +- If you'd like to improve the tests, you want to make the documentation clearer, you have an |
| 26 | + alternative implementation of something that may have advantages over the way its currently |
| 27 | + done, or you have any other change, we would be happy to hear about it! |
| 28 | + - If its a trivial change, go ahead and [send a Pull Request](#creating_a_pull_request) with the changes you have in mind. |
| 29 | + - If not, [open an Issue](https://github.com/slackapi/bolt-python/issues/new) to discuss the idea first. |
| 30 | + |
| 31 | +If you're new to our project and looking for some way to make your first contribution, look for |
| 32 | +Issues labelled `good first contribution`. |
| 33 | + |
| 34 | +## Requirements |
| 35 | + |
| 36 | +For your contribution to be accepted: |
| 37 | + |
| 38 | +- [x] You must have signed the [Contributor License Agreement (CLA)](https://cla-assistant.io/slackapi/bolt-python). |
| 39 | +- [x] The test suite must be complete and pass. |
| 40 | +- [x] The changes must be approved by code review. |
| 41 | +- [x] Commits should be atomic and messages must be descriptive. Related issues should be mentioned by Issue number. |
| 42 | + |
| 43 | +If the contribution doesn't meet the above criteria, you may fail our automated checks or a maintainer will discuss it with you. You can continue to improve a Pull Request by adding commits to the branch from which the PR was created. |
| 44 | + |
| 45 | +[Interested in knowing more about about pull requests at Slack?](https://slack.engineering/on-empathy-pull-requests-979e4257d158#.awxtvmb2z) |
| 46 | + |
| 47 | +## Creating a Pull Request |
| 48 | + |
| 49 | +1. :fork_and_knife: Fork the repository on GitHub. |
| 50 | +2. :runner: Clone/fetch your fork to your local development machine. It's a good idea to run the tests just |
| 51 | + to make sure everything is in order. |
| 52 | +3. :herb: Create a new branch and check it out. |
| 53 | +4. :crystal_ball: Make your changes and commit them locally. Magic happens here! |
| 54 | +5. :arrow_heading_up: Push your new branch to your fork. (e.g. `git push username fix-issue-16`). |
| 55 | +6. :inbox_tray: Open a Pull Request on github.com from your new branch on your fork to `main` in this |
| 56 | + repository. |
| 57 | + |
| 58 | +## Maintainers |
| 59 | + |
| 60 | +There are more details about processes and workflow in the [Maintainer's Guide](./maintainers_guide.md). |
0 commit comments