Contributing to lambda-handlers

Looking for a useful open source project to contribute to? Want your contributions to be warmly welcomed and acknowledged? Welcome! You have found the right place.

Contributions can be made in a number of ways, a few examples are:

  • Code patches via pull requests
  • Documentation improvements
  • Bug reports and patch reviews

Installing for Development

The first step when contributing to any project is getting it set up on your local machine. We aim to make this as simple as possible.

Account Requirements:

Base System Requirements:

  • Python3.6+
  • pipenv
  • bash or a bash compatible shell (should be auto-installed on Linux / Mac)

Once you have verified that you system matches the base requirements you can start to get the project working by following these steps:

  1. Fork the project on GitHub.
  2. Clone your fork to your local file system: git clone https://github.com/$GITHUB_ACCOUNT/lambda-handlers.git
  3. cd lambda-handlers
  4. make install-dev

This will install lambda-handlers in development mode which binds the module to your clone of the git repository. This will also install pre-commit git hooks, which will run checks and tests before you commit.

Running the tests

To run the tests, it is recommended that you use tox.

Tox is already installed when you ran make install-dev. Then the test suite can be run for lambda-handlers by running the command tox in the root of your repository.

It will attempt to run the tests against all of the Python versions we support. So don't be concerned if you are missing some and they fail. The rest will be verified by Travis when you submit a pull request.

Making a contribution

Congrats! You're now ready to make a contribution! Use the following as a guide to help you reach a successful pull-request:

  1. Check the issues page on GitHub to see if the task you want to complete is listed there.
    • If it's listed there, write a comment letting others know you are working on it.
    • If it's not listed in GitHub issues, go ahead and log a new issue. Then add a comment letting everyone know you have it under control.
      • If you're not sure if it's something that is good for the project and want immediate feedback, you can post a new issue and discuss it here.
  2. Create an issue branch for your local work git checkout -b issue/$ISSUE-NUMBER.
  3. Do your magic here.
  4. Ensure your code matches the code guidelines used by the project.
  5. Submit a pull request to the main project repository via GitHub.

Thanks for the contribution! It will quickly get reviewed, and, once accepted, will result in your name being added to the acknowledgments list :).

Thank you!

We can not tell you how thankful we are for the hard work done by contributors like you.

Thank you!

~The development team