skip to navigation
skip to content

gevent 1.1.2

Coroutine-based network library

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.6, Python >= 3.3, or PyPy >= 4.0.1 (but not PyPy3) (Note: PyPy is not supported in Windows). On all platforms, installing setuptools is recommended (this is done automatically if working in a virtual environment).

You can use pip to install gevent:

pip install gevent

Note: You need Pip 8.0 or later to install the binary wheels for 1.1.

Important: Version 1.1 will be the last gevent series to support Python 2.6. Future major releases will only support Python 2.7 and above.

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.23.4' 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

Note

You must have Cython, a C compiler, and the Python development headers installed to build a checkout. Installing CFFI on CPython (it’s standard on PyPy) allows building the CFFI backend for testing, and tox is the command used to test multiple versions of Python.

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 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 pep8 and pyflakes. 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 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.

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.

 
File Type Py Version Uploaded on Size
gevent-1.1.2-cp26-cp26m-macosx_10_11_intel.whl (md5) Python Wheel cp26 2016-07-21 713KB
gevent-1.1.2-cp27-cp27m-macosx_10_6_intel.whl (md5) Python Wheel cp27 2016-07-21 744KB
gevent-1.1.2-cp27-cp27m-manylinux1_x86_64.whl (md5) Python Wheel cp27 2016-07-21 1MB
gevent-1.1.2-cp27-cp27m-win32.whl (md5) Python Wheel cp27 2016-07-21 347KB
gevent-1.1.2-cp27-cp27m-win_amd64.whl (md5) Python Wheel cp27 2016-07-21 377KB
gevent-1.1.2-cp27-cp27mu-manylinux1_x86_64.whl (md5) Python Wheel cp27 2016-07-21 1MB
gevent-1.1.2-cp33-cp33m-manylinux1_x86_64.whl (md5) Python Wheel cp33 2016-07-21 1MB
gevent-1.1.2-cp33-cp33m-win32.whl (md5) Python Wheel cp33 2016-07-21 348KB
gevent-1.1.2-cp33-cp33m-win_amd64.whl (md5) Python Wheel cp33 2016-07-21 375KB
gevent-1.1.2-cp34-cp34m-macosx_10_6_intel.whl (md5) Python Wheel cp34 2016-07-21 747KB
gevent-1.1.2-cp34-cp34m-manylinux1_x86_64.whl (md5) Python Wheel cp34 2016-07-21 1MB
gevent-1.1.2-cp34-cp34m-win32.whl (md5) Python Wheel cp34 2016-07-21 348KB
gevent-1.1.2-cp34-cp34m-win_amd64.whl (md5) Python Wheel cp34 2016-07-21 375KB
gevent-1.1.2-cp35-cp35m-macosx_10_6_intel.whl (md5) Python Wheel cp35 2016-07-21 746KB
gevent-1.1.2-cp35-cp35m-manylinux1_x86_64.whl (md5) Python Wheel cp35 2016-07-21 1MB
gevent-1.1.2-cp35-cp35m-win32.whl (md5) Python Wheel cp35 2016-07-21 340KB
gevent-1.1.2-cp35-cp35m-win_amd64.whl (md5) Python Wheel cp35 2016-07-21 373KB
gevent-1.1.2-pp253-pypy_41-macosx_10_11_x86_64.whl (md5) Python Wheel pp253 2016-07-21 372KB
gevent-1.1.2.tar.gz (md5) Source 2016-07-21 1MB
gevent-1.1.2.win-amd64-py2.7.exe (md5) MS Windows installer 2.7 2016-07-21 600KB
gevent-1.1.2.win-amd64-py3.3.exe (md5) MS Windows installer 3.3 2016-07-21 597KB
gevent-1.1.2.win-amd64-py3.4.exe (md5) MS Windows installer 3.4 2016-07-21 596KB
gevent-1.1.2.win-amd64-py3.5.exe (md5) MS Windows installer 3.5 2016-07-21 511KB
gevent-1.1.2.win32-py2.7.exe (md5) MS Windows installer 2.7 2016-07-21 543KB
gevent-1.1.2.win32-py3.4.exe (md5) MS Windows installer 3.4 2016-07-21 540KB
gevent-1.1.2.win32-py3.5.exe (md5) MS Windows installer 3.5 2016-07-21 471KB