Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 1 | Contributing |
| 2 | ============ |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 3 | |
| 4 | First of all, thank you for your interest in contributing to |
Laurens Van Houtven | dc06b70 | 2014-03-15 18:11:47 +0100 | [diff] [blame] | 5 | pyOpenSSL! |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 6 | |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 7 | Filing bug reports |
| 8 | ------------------ |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 9 | |
| 10 | Bug reports are very welcome. Please file them on the Github issue |
| 11 | tracker. Good bug reports come with extensive descriptions of the |
| 12 | error and how to reproduce it. Reporters are strongly encouraged to |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 13 | include an `SSCCE <http://www.sscce.org/>`_. |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 14 | |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 15 | Patches |
| 16 | ------- |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 17 | |
Laurens Van Houtven | dc06b70 | 2014-03-15 18:11:47 +0100 | [diff] [blame] | 18 | All patches to pyOpenSSL should be submitted in the form of pull |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 19 | requests to the main pyOpenSSL repository, ``pyca/pyopenssl``. These |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 20 | pull requests should satisfy the following properties: |
| 21 | |
| 22 | - Pull requests that involve code must follow the |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 23 | `Twisted Coding Standard`_. For example, ``methodNamesLikeThis``, |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 24 | three empty lines between module-level elements, and two empty lines |
| 25 | between class-level elements. |
| 26 | - Pull requests that introduce code must test all new behavior they |
| 27 | introduce, as well as previously untested or poorly tested behavior |
| 28 | that they touch. |
| 29 | - Pull requests are not allowed to break existing tests. |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 30 | - Pull requests that introduce features or fix bugs should note those |
| 31 | changes in the ``ChangeLog`` text file in the root of the repository. |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 32 | |
| 33 | Finally, pull requests must be reviewed before merging. This process |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 34 | mirrors the `cryptography code review process`_. Everyone can perform |
| 35 | reviews; this is a very valuable way to contribute, and is highly |
| 36 | encouraged. |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 37 | |
| 38 | All members of the pyca Github organization can merge pull requests, |
| 39 | of course keeping in mind all the requirements detailed in this |
| 40 | document as well as the pyca/cryptography merge requirements. |
| 41 | |
| 42 | The final responsibility for the reviewing of merged code lies with |
Laurens Van Houtven | dc06b70 | 2014-03-15 18:11:47 +0100 | [diff] [blame] | 43 | the person merging it; since pyOpenSSL is obviously a sensitive |
Laurens Van Houtven | 290aba1 | 2014-03-14 15:20:18 +0100 | [diff] [blame] | 44 | project from a security perspective, so reviewers are strongly |
| 45 | encouraged to take this review and merge process very seriously. |
| 46 | |
Laurens Van Houtven | 5a42298 | 2014-03-15 21:42:31 +0100 | [diff] [blame^] | 47 | .. _cryptography code review process: https://cryptography.io/en/latest/development/reviewing-patches/ |