Contribute and supportΒΆ

  • Do not be afraid to contribute with small and apparently insignificant improvements like correction to typos. Every change counts.

  • Read carefully the License of PyCryptodome. By submitting your code, you acknowledge that you accept to release it according to the BSD 2-clause license.

  • You must disclaim which parts of your code in your contribution were partially copied or derived from an existing source. Ensure that the original is licensed in a way compatible to the BSD 2-clause license.

  • You can propose changes in any way you find most convenient. However, the preferred approach is to:

    • Clone the main repository on GitHub.

    • Create a branch and modify the code.

    • Send a pull request upstream with a meaningful description.

  • Provide tests (in Crypto.SelfTest) along with code. If you fix a bug add a test that fails in the current version and passes with your change.

  • If your change breaks backward compatibility, highlight it and include a justification.

  • Ensure that your code complies to PEP8 and PEP257.

  • If you add or modify a public interface, make sure the relevant type stubs remain up to date.

  • Ensure that your code does not use constructs or includes modules not present in Python 2.6.

  • Add a short summary of the change to the file Changelog.rst.

  • Add your name to the list of contributors in the file AUTHORS.rst.

The PyCryptodome mailing list is hosted on Google Groups. You can mail any comment or question to pycryptodome@googlegroups.com.

Bug reports can be filed on the GitHub tracker.