Skip to main content

Coroutine-based network library

Project description

gevent is a coroutine-based Python networking library.

Features include:

  • Fast event loop based on libev.

  • Lightweight execution units based on greenlet.

  • Familiar API that re-uses concepts from the Python standard library.

  • Cooperative sockets with SSL support.

  • DNS queries performed through c-ares or a threadpool.

  • Ability to use standard library and 3rd party modules written for standard blocking sockets

gevent is inspired by eventlet but features more consistent API, simpler implementation and better performance. Read why others use gevent and check out the list of the open source projects based on gevent.

gevent is licensed under the MIT license.

See what’s new in the latest major release.

Check out the detailed changelog for this version.

Get gevent

gevent runs on Python >= 2.7, Python >= 3.4, or PyPy >= 5.5 (including PyPy2 and PyPy3) (Note: PyPy is not supported in Windows). On all platforms, installing setuptools is required (this is done automatically if working in a virtual environment).

You can use pip to install gevent:

pip install gevent

Download the latest release from Python Package Index or clone the repository.

Read the documentation online at http://www.gevent.org. Additional installation information can be found here.

Post feedback and issues on the bug tracker, mailing list, blog and twitter (@gevent).

Development

To install the latest development version:

pip install setuptools 'cython>=0.25' git+git://github.com/gevent/gevent.git#egg=gevent

To hack on gevent (using a virtualenv):

$ git clone https://github.com/gevent/gevent.git
$ cd gevent
$ virtualenv env
$ source env/bin/activate
(env) $ pip install -r dev-requirements.txt

Running Tests

There are a few different ways to run the tests. To simply run the tests on one version of Python during development, try this:

python setup.py develop
cd src/greentest
PYTHONPATH=.. python testrunner.py --config known_failures.py

Before submitting a pull request, it’s a good idea to run the tests across all supported versions of Python, and to check the code quality using prospector. This is what is done on Travis CI. Locally it can be done using tox:

pip install tox
tox

The testrunner accepts a --coverage argument to enable code coverage metrics through the coverage.py package. That would go something like this:

cd src/greentest
PYTHONPATH=.. python testrunner.py --config known_failures.py --coverage
coverage combine
coverage html -i
<open htmlcov/index.html>

Builds on Travis CI automatically submit updates to coveralls.io to monitor test coverage.

https://coveralls.io/repos/gevent/gevent/badge.svg?branch=master&service=github

Likewise, builds on Travis CI will automatically submit updates to landscape.io to monitor code health (adherence to PEP8, absence of common code smells, etc).

Code Health

Continuous integration

A test suite is run for every push and pull request submitted. Travis CI is used to test on Linux, and AppVeyor runs the builds on Windows.

https://travis-ci.org/gevent/gevent.svg?branch=master https://ci.appveyor.com/api/projects/status/q4kl21ng2yo2ixur?svg=true

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gevent-1.2.0.tar.gz (2.8 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

gevent-1.2.0-cp36-cp36m-win_amd64.whl (632.5 kB view details)

Uploaded CPython 3.6mWindows x86-64

gevent-1.2.0-cp36-cp36m-win32.whl (607.0 kB view details)

Uploaded CPython 3.6mWindows x86

gevent-1.2.0-cp36-cp36m-manylinux1_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.6m

gevent-1.2.0-cp36-cp36m-macosx_10_12_x86_64.whl (775.8 kB view details)

Uploaded CPython 3.6mmacOS 10.12+ x86-64

gevent-1.2.0-cp35-cp35m-win_amd64.whl (632.3 kB view details)

Uploaded CPython 3.5mWindows x86-64

gevent-1.2.0-cp35-cp35m-win32.whl (606.1 kB view details)

Uploaded CPython 3.5mWindows x86

gevent-1.2.0-cp35-cp35m-manylinux1_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.5m

gevent-1.2.0-cp35-cp35m-macosx_10_12_x86_64.whl (775.0 kB view details)

Uploaded CPython 3.5mmacOS 10.12+ x86-64

gevent-1.2.0-cp34-cp34m-win_amd64.whl (632.4 kB view details)

Uploaded CPython 3.4mWindows x86-64

gevent-1.2.0-cp34-cp34m-win32.whl (608.4 kB view details)

Uploaded CPython 3.4mWindows x86

gevent-1.2.0-cp34-cp34m-manylinux1_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.4m

gevent-1.2.0-cp34-cp34m-macosx_10_12_x86_64.whl (787.6 kB view details)

Uploaded CPython 3.4mmacOS 10.12+ x86-64

gevent-1.2.0-cp33-cp33m-win_amd64.whl (631.5 kB view details)

Uploaded CPython 3.3mWindows x86-64

gevent-1.2.0-cp33-cp33m-win32.whl (608.4 kB view details)

Uploaded CPython 3.3mWindows x86

gevent-1.2.0-cp33-cp33m-manylinux1_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.3m

gevent-1.2.0-cp27-cp27mu-manylinux1_x86_64.whl (1.6 MB view details)

Uploaded CPython 2.7mu

gevent-1.2.0-cp27-cp27m-win_amd64.whl (635.8 kB view details)

Uploaded CPython 2.7mWindows x86-64

gevent-1.2.0-cp27-cp27m-win32.whl (608.3 kB view details)

Uploaded CPython 2.7mWindows x86

gevent-1.2.0-cp27-cp27m-manylinux1_x86_64.whl (1.6 MB view details)

Uploaded CPython 2.7m

gevent-1.2.0-cp27-cp27m-macosx_10_12_x86_64.whl (796.8 kB view details)

Uploaded CPython 2.7mmacOS 10.12+ x86-64

File details

Details for the file gevent-1.2.0.tar.gz.

File metadata

  • Download URL: gevent-1.2.0.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gevent-1.2.0.tar.gz
Algorithm Hash digest
SHA256 fec7aaa513bec624634a67eb3c85baffa7e1781b1b76680493224a6a5aed6edf
MD5 c3cfdfc8d1e97a1b0e279ae8c7a0405a
BLAKE2b-256 5217fe47f6e565c7ac22886dbd15dc45f63707b76b255e8f41675043ba1db4a3

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 92400ae152ba52eef4f895efa29637b138ea17f3adef76f595c35f49004df691
MD5 a1d90ab2fba3aa92acfc836aae45a9b3
BLAKE2b-256 aa08f8f63460cf401697254b79f84682dbc4bc0980955d4a40bd4ac3d6d8d447

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 ec09cfc92c68ce4642093d296614e0740d88118bdba4a19e9699187001ba04c4
MD5 2f5bb958002be7de7478809c8ce52f01
BLAKE2b-256 1d445ebf182f0bc43befe2d08050407daa86116c08eebcebc5130e7e65d2e8eb

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1917595f26087b99a02f82455c5df0934e8205b7b373c81ef9c3f329b7b058fe
MD5 99c9ca3e65ea24842567985256006c21
BLAKE2b-256 114df75d916c96d593ba936c40ddd0ece3292e1f041ee6b6f1f15fa76dbc9000

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp36-cp36m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp36-cp36m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 93f754de4aedd26e455445805d5b2395dfe6822dd6834fa679538d802082e76e
MD5 29e30f87bb9e105f1bbc456a51feecaf
BLAKE2b-256 f6d9a6ecc01997c83e7aec87296c97516e354458659363ff7d7bc41633c23eed

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 5a5028307e9cee859afc076b9362fab430413a9c1581a74c0c76f865bef8044a
MD5 aa2f978708d47bbd8220812477b68f95
BLAKE2b-256 230822d9f2f055b7d07824b5aa2964329eb5e41e75a3aa42f557690bc8d52112

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 32421c08e15a48400c1aaebce6e8e619f1b165c8aa1e095cc74e7e94ea2470b7
MD5 bbd02ea365cf9ef8d4204bd107c0b366
BLAKE2b-256 b4d9b64c62bc4963a819d37b4f246e4082d5e18b0af45c19ad8ba4eec84a20b1

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 f1f37eab43e00304bab0e56c4db9158725dfc656eb106cfa0b38bb57a9123aee
MD5 d39974a0588ead02d44d7aae15448d37
BLAKE2b-256 3258ea5ba697453ba34d8d9869640a36350ca3ac988047f4bd55f5355ef09e8d

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp35-cp35m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp35-cp35m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 878ac3e553c07fdd5aca031ee0da801012e1d86e7e19c7e86ab6bdc190bc0d74
MD5 9440947262525d569676a075bce4796c
BLAKE2b-256 312e299c5e3eef4e642f5ca3c7e7db54d475d343101f298e9084148fbd788e0d

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 1df938856e9dd3fe337b0010aa619fa08580c4699ee666e302a32b73852f2ef5
MD5 5d5d762362804dbcb31dc50e92e3e92f
BLAKE2b-256 ea6f1d5067661c0c75833f0072dc3ee2f9993a508efce6fa7d3d3899dddb9573

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 9477b8fc1bd43555ac5c8d671767312739ea4f8319a35b0e4856aa7e6e1366bd
MD5 4a98a43eef4725cdf979ae6e5f0cb7dc
BLAKE2b-256 5d6853108c267ae447de93247b6e9a48c8443e0694a8e4e500893958abcbe505

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 25c08d425a1af244a0827bf4cc3737dd83b42c441478a8985fd12d18240c3201
MD5 7d8b37520abaf176664398ed2790b641
BLAKE2b-256 148babd2e2b97a835d5f82b795f8e825994a7ca79d4b27cb208c4b0041c6b4c3

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp34-cp34m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp34-cp34m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ec151373816009783851a348fe9d3d2ab98b2b540ce7e13a0a5606088bab0d71
MD5 11ede1ce1042bfe08e274f2790520f6d
BLAKE2b-256 b4fcb98d5336f534a3530e97f6205203588a343352d402463585e37921685378

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp33-cp33m-win_amd64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp33-cp33m-win_amd64.whl
Algorithm Hash digest
SHA256 d0f4f48fde8e51b03afcd2939199f9346207497407942afcc662995ac425cab9
MD5 0f680cec994bab1e4a43873f020be059
BLAKE2b-256 038c83f7d8df1b0e949846771ce3bf71c1afd009b8d3b7abac3ab7a9d3b70eb2

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp33-cp33m-win32.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp33-cp33m-win32.whl
Algorithm Hash digest
SHA256 12b6757febd45b938d142fbbbea4f02d739eff533c53c797a016dc61d7cb7bbb
MD5 1833f38270f469dfcd08e75bd8b16936
BLAKE2b-256 6948981ce4eb0af2737ab3d70e53f0cadaf9a6920eb2e13695a1c38560d63c77

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp33-cp33m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp33-cp33m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 eca5d077f9ccec9b3471a4e8b977d596e64b6158897c1e0ee3ecc6a36c13838a
MD5 b3b18148204ff7f1c99a3708df639358
BLAKE2b-256 ec3b7e7ca94f3efc2c7763ad498a9766840fd4c0145bf155516696a2737bee63

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 922402467b4c3b9bfb3b0dff67a67bb844a42caed2afa1b12e5d64b537b83a9d
MD5 60eb1787d3620efa72180f200de30e51
BLAKE2b-256 eca06bc3a7aa5945ac26ff44775cd2df59fc89904392715aaa2af78065af0806

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 6abcb7c9a8666e9e9b80b454877294be127899e6458b21d53be94a14f9df9e73
MD5 b00fcd60d509fe0ec563ab85eb445d29
BLAKE2b-256 2b7c26f18d700e57d5da3b41a7f6dced2fab41fe83c034e6dedbe8dd3f265911

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 dd2f9fbf393b12925cf7d64babd3c7c6500ef0a0a2850e9501fffcb5e1d024ea
MD5 ef007cb4b5ba7c2e611de57f7393e173
BLAKE2b-256 2d38910c119f8011e0ba16bb11b6762c50857ac97d0da3282ce05fa53487ca56

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 b93f03dd5f59919423cc73cbcdd1d99983c02f0944811968e5d8e9a28887d61e
MD5 f19260f0fd2ffe1b7d5633b346f0f667
BLAKE2b-256 527ef84f1f8bdf3acbdf3b973d9050bd2f55485afe59fb18965913fe85ff4b00

See more details on using hashes here.

File details

Details for the file gevent-1.2.0-cp27-cp27m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for gevent-1.2.0-cp27-cp27m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 74889fce5da09ea5fbfdfaef16da21889f0c2e9b001c1ff80a99d78d027c781d
MD5 0b96bf5fa60cbd86557faaa9583396bc
BLAKE2b-256 7cbe67317ffd61674727732a3779d34f9d88361211d69576d251095366865334

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page