Requests is under active development, and contributions are more than welcome!
Check for open issues or open a fresh issue to start a discussion around a bug. There is a Contributor Friendly tag for issues that should be ideal for people who are not very familiar with the codebase yet.
Fork the repository on GitHub and start making your changes to a new branch.
Write a test which shows that the bug was fixed.
Send a pull request and bug the maintainer until it gets merged and published. :) Make sure to add yourself to AUTHORS.
As of v1.0.0, Requests has now entered a feature freeze. Requests for new features and Pull Requests implementing those features will not be accepted.
You’ll need to install py.test in order to run the Requests’ test suite:
$ venv .venv
$ source .venv/bin/activate
$ make
$ python setup.py test
============================= test session starts ==============================
platform darwin -- Python 3.4.4, pytest-3.0.6, py-1.4.32, pluggy-0.4.0
...
collected 445 items
tests/test_hooks.py ...
tests/test_lowlevel.py ............
tests/test_requests.py ...........................................................
tests/test_structures.py ....................
tests/test_testserver.py ...........
tests/test_utils.py ..s...........................................................
============== 442 passed, 1 skipped, 2 xpassed in 46.48 seconds ===============
You can also run $ make tests
to run against all supported Python versions, using tox/detox.
Requests currently supports the following versions of Python:
Python 2.7
Python 3.4
Python 3.5
Python 3.6
Python 3.7
PyPy
Google AppEngine is not officially supported although support is available with the Requests-Toolbelt.