gevent


Namegevent JSON
Version 1.3b1 PyPI version JSON
download
home_pagehttp://www.gevent.org/
SummaryCoroutine-based network library
upload_time2018-04-13 14:50:49
maintainerJason Madden
docs_urlNone
authorDenis Bilenko
requires_python>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*
licenseMIT
keywords greenlet coroutine cooperative multitasking light threads monkey
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ========
 gevent
========

gevent_ is a coroutine-based Python networking library.

Features include:

* Fast event loop based on libev_ or libuv_.
* 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 was written by `Denis Bilenko <http://denisbilenko.com/>`_.

Since version 1.1, gevent is maintained by `NextThought
<https://nextthought.com>`_ with help from the `contributors
<https://github.com/gevent/gevent/graphs/contributors>`_ and 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). 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

.. tip:: You need Pip 8.0 or later to install the binary wheels.

.. tip:: You need to install from source, not the manylinux wheels, to
         use the libuv backend.

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 <http://www.gevent.org/intro.html#installation-and-requirements>`_.

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


Development
===========

To install the latest development version::

  pip install setuptools cffi 'cython>=0.27' 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 a C compiler, Cython, and the Python development headers
   installed to build a checkout. Installing CFFI on CPython (it's
   standard on PyPy) allows building the CFFI backends 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::

  (env) $ pip install -e .
  (env) $ cd src/greentest
  (env) $ python ./testrunner.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
  python testrunner.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.

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

.. note:: On Debian, you will probably need ``libpythonX.Y-testsuite``
          installed to run all the tests.

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.

.. image:: https://travis-ci.org/gevent/gevent.svg?branch=master
   :target: https://travis-ci.org/gevent/gevent

.. image:: https://ci.appveyor.com/api/projects/status/q4kl21ng2yo2ixur?svg=true
   :target: https://ci.appveyor.com/project/denik/gevent

.. _gevent: http://www.gevent.org
.. _greenlet: http://pypi.python.org/pypi/greenlet
.. _libev: http://libev.schmorp.de/
.. _libuv: http://libuv.org/
.. _c-ares: http://c-ares.haxx.se/
.. _inspired by eventlet: http://blog.gevent.org/2010/02/27/why-gevent/
.. _use gevent: http://groups.google.com/group/gevent/browse_thread/thread/4de9703e5dca8271
.. _open source projects based on gevent: https://github.com/gevent/gevent/wiki/Projects
.. _Python Package Index: http://pypi.python.org/pypi/gevent
.. _the repository: https://github.com/gevent/gevent
.. _bug tracker: https://github.com/gevent/gevent/wiki/Projects
.. _mailing list: http://groups.google.com/group/gevent
.. _blog: http://blog.gevent.org
.. _twitter (@gevent): http://twitter.com/gevent
.. _coverage.py: https://pypi.python.org/pypi/coverage/
.. _coveralls.io: https://coveralls.io/github/gevent/gevent
.. _AppVeyor: https://ci.appveyor.com/project/denik/gevent
.. _what's new: http://www.gevent.org/whatsnew_1_3.html
.. _changelog: http://www.gevent.org/changelog.html



            

Raw data

            {
    "maintainer": "Jason Madden", 
    "docs_url": null, 
    "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*", 
    "maintainer_email": "jason@nextthought.com", 
    "cheesecake_code_kwalitee_id": null, 
    "keywords": "greenlet coroutine cooperative multitasking light threads monkey", 
    "upload_time": "2018-04-13 14:50:49", 
    "author": "Denis Bilenko", 
    "home_page": "http://www.gevent.org/", 
    "download_url": "https://pypi.python.org/packages/6a/ce/dfa807a393fbb2b19f2dbb88558de94a7bf13236254136ead762a1e14fc1/gevent-1.3b1.tar.gz", 
    "platform": "", 
    "version": "1.3b1", 
    "cheesecake_documentation_id": null, 
    "description": "========\n gevent\n========\n\ngevent_ is a coroutine-based Python networking library.\n\nFeatures include:\n\n* Fast event loop based on libev_ or libuv_.\n* Lightweight execution units based on greenlet_.\n* Familiar API that re-uses concepts from the Python standard library.\n* Cooperative sockets with SSL support.\n* DNS queries performed through c-ares_ or a threadpool.\n* Ability to use standard library and 3rd party modules written for standard blocking sockets\n\ngevent is `inspired by eventlet`_ but features more consistent API,\nsimpler implementation and better performance. Read why others `use\ngevent`_ and check out the list of the `open source projects based on\ngevent`_.\n\ngevent was written by `Denis Bilenko <http://denisbilenko.com/>`_.\n\nSince version 1.1, gevent is maintained by `NextThought\n<https://nextthought.com>`_ with help from the `contributors\n<https://github.com/gevent/gevent/graphs/contributors>`_ and is\nlicensed under the MIT license.\n\nSee `what's new`_ in the latest major release.\n\nCheck out the detailed changelog_ for this version.\n\nGet gevent\n==========\n\ngevent runs on Python >= 2.7, Python >= 3.4, or PyPy >= 5.5 (including\nPyPy2 and PyPy3). On all platforms, installing setuptools is required\n(this is done automatically if working in a virtual environment).\n\nYou can use pip to install gevent::\n\n    pip install gevent\n\n.. tip:: You need Pip 8.0 or later to install the binary wheels.\n\n.. tip:: You need to install from source, not the manylinux wheels, to\n         use the libuv backend.\n\nDownload the latest release from `Python Package Index`_ or clone `the repository`_.\n\nRead the documentation online at http://www.gevent.org. Additional\ninstallation information can be found `here <http://www.gevent.org/intro.html#installation-and-requirements>`_.\n\nPost feedback and issues on the `bug tracker`_, `mailing list`_, blog_\nand `twitter (@gevent)`_.\n\n\nDevelopment\n===========\n\nTo install the latest development version::\n\n  pip install setuptools cffi 'cython>=0.27' git+git://github.com/gevent/gevent.git#egg=gevent\n\nTo hack on gevent (using a virtualenv)::\n\n  $ git clone https://github.com/gevent/gevent.git\n  $ cd gevent\n  $ virtualenv env\n  $ source env/bin/activate\n  (env) $ pip install -r dev-requirements.txt\n\n.. note::\n\n   You must have a C compiler, Cython, and the Python development headers\n   installed to build a checkout. Installing CFFI on CPython (it's\n   standard on PyPy) allows building the CFFI backends for testing, and\n   tox is the command used to test multiple versions of Python.\n\n\nRunning Tests\n-------------\n\nThere are a few different ways to run the tests. To simply run the\ntests on one version of Python during development, try this::\n\n  (env) $ pip install -e .\n  (env) $ cd src/greentest\n  (env) $ python ./testrunner.py\n\nBefore submitting a pull request, it's a good idea to run the tests\nacross all supported versions of Python, and to check the code quality\nusing prospector. This is what is done on Travis CI. Locally it\ncan be done using tox::\n\n  pip install tox\n  tox\n\nThe testrunner accepts a ``--coverage`` argument to enable code\ncoverage metrics through the `coverage.py`_ package. That would go\nsomething like this::\n\n  cd src/greentest\n  python testrunner.py --coverage\n  coverage combine\n  coverage html -i\n  <open htmlcov/index.html>\n\nBuilds on Travis CI automatically submit updates to `coveralls.io`_ to\nmonitor test coverage.\n\n.. image:: https://coveralls.io/repos/gevent/gevent/badge.svg?branch=master&service=github\n   :target: https://coveralls.io/github/gevent/gevent?branch=master\n\n.. note:: On Debian, you will probably need ``libpythonX.Y-testsuite``\n          installed to run all the tests.\n\nContinuous integration\n----------------------\n\nA test suite is run for every push and pull request submitted. Travis\nCI is used to test on Linux, and `AppVeyor`_ runs the builds on\nWindows.\n\n.. image:: https://travis-ci.org/gevent/gevent.svg?branch=master\n   :target: https://travis-ci.org/gevent/gevent\n\n.. image:: https://ci.appveyor.com/api/projects/status/q4kl21ng2yo2ixur?svg=true\n   :target: https://ci.appveyor.com/project/denik/gevent\n\n.. _gevent: http://www.gevent.org\n.. _greenlet: http://pypi.python.org/pypi/greenlet\n.. _libev: http://libev.schmorp.de/\n.. _libuv: http://libuv.org/\n.. _c-ares: http://c-ares.haxx.se/\n.. _inspired by eventlet: http://blog.gevent.org/2010/02/27/why-gevent/\n.. _use gevent: http://groups.google.com/group/gevent/browse_thread/thread/4de9703e5dca8271\n.. _open source projects based on gevent: https://github.com/gevent/gevent/wiki/Projects\n.. _Python Package Index: http://pypi.python.org/pypi/gevent\n.. _the repository: https://github.com/gevent/gevent\n.. _bug tracker: https://github.com/gevent/gevent/wiki/Projects\n.. _mailing list: http://groups.google.com/group/gevent\n.. _blog: http://blog.gevent.org\n.. _twitter (@gevent): http://twitter.com/gevent\n.. _coverage.py: https://pypi.python.org/pypi/coverage/\n.. _coveralls.io: https://coveralls.io/github/gevent/gevent\n.. _AppVeyor: https://ci.appveyor.com/project/denik/gevent\n.. _what's new: http://www.gevent.org/whatsnew_1_3.html\n.. _changelog: http://www.gevent.org/changelog.html\n\n\n", 
    "lcname": "gevent", 
    "bugtrack_url": "", 
    "github": false, 
    "name": "gevent", 
    "license": "MIT", 
    "summary": "Coroutine-based network library", 
    "split_keywords": [
        "greenlet", 
        "coroutine", 
        "cooperative", 
        "multitasking", 
        "light", 
        "threads", 
        "monkey"
    ], 
    "author_email": "denis.bilenko@gmail.com", 
    "urls": [
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T14:50:27", 
            "comment_text": "", 
            "python_version": "cp27", 
            "url": "https://pypi.python.org/packages/a6/9a/9011e7c81ed99a428159a23907b22b8c7d7d58ebdf604757d8824ef25234/gevent-1.3b1-cp27-cp27m-macosx_10_6_intel.whl", 
            "md5_digest": "e4827a8e8a512bdf725b9ec50c0c8040", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp27-cp27m-macosx_10_6_intel.whl", 
            "packagetype": "bdist_wheel", 
            "path": "a6/9a/9011e7c81ed99a428159a23907b22b8c7d7d58ebdf604757d8824ef25234/gevent-1.3b1-cp27-cp27m-macosx_10_6_intel.whl", 
            "digests": {
                "sha256": "86b6cf0a5f9d88ff85c6e9c595e5fdc8cb38249efe660cf6fbe0eeb50df241e9", 
                "md5": "e4827a8e8a512bdf725b9ec50c0c8040"
            }, 
            "sha256_digest": "86b6cf0a5f9d88ff85c6e9c595e5fdc8cb38249efe660cf6fbe0eeb50df241e9", 
            "size": 2969357
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T14:52:48", 
            "comment_text": "", 
            "python_version": "cp27", 
            "url": "https://pypi.python.org/packages/42/b3/4c67a3e160b895accac883d18f7c48df4a4fab4daa426b038bf6be75e097/gevent-1.3b1-cp27-cp27m-win_amd64.whl", 
            "md5_digest": "f48cf69ed9642bb71b00dcecca686ef5", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp27-cp27m-win_amd64.whl", 
            "packagetype": "bdist_wheel", 
            "path": "42/b3/4c67a3e160b895accac883d18f7c48df4a4fab4daa426b038bf6be75e097/gevent-1.3b1-cp27-cp27m-win_amd64.whl", 
            "digests": {
                "sha256": "2b2be6b0991c17826f4f7a6ee0be3a62ae2825c92158d9a8ae567b399452a579", 
                "md5": "f48cf69ed9642bb71b00dcecca686ef5"
            }, 
            "sha256_digest": "2b2be6b0991c17826f4f7a6ee0be3a62ae2825c92158d9a8ae567b399452a579", 
            "size": 1980185
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T14:52:05", 
            "comment_text": "", 
            "python_version": "cp34", 
            "url": "https://pypi.python.org/packages/11/89/cc0677f6bd9a1668c5e9e6f9e20a0e70f9a2168d1120261111d98bad8050/gevent-1.3b1-cp34-cp34m-macosx_10_6_intel.whl", 
            "md5_digest": "ba7564976da2e42ee0ecef89a423286f", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp34-cp34m-macosx_10_6_intel.whl", 
            "packagetype": "bdist_wheel", 
            "path": "11/89/cc0677f6bd9a1668c5e9e6f9e20a0e70f9a2168d1120261111d98bad8050/gevent-1.3b1-cp34-cp34m-macosx_10_6_intel.whl", 
            "digests": {
                "sha256": "c541e1d4f738c9760335a988b47527b0e816d62ce88eb09a61382e551b96dea5", 
                "md5": "ba7564976da2e42ee0ecef89a423286f"
            }, 
            "sha256_digest": "c541e1d4f738c9760335a988b47527b0e816d62ce88eb09a61382e551b96dea5", 
            "size": 2975135
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T14:57:19", 
            "comment_text": "", 
            "python_version": "cp35", 
            "url": "https://pypi.python.org/packages/7b/b5/75e1d597bee2cdd889583550db60a3fa7a66e24c6682b0fe51c06f2676a1/gevent-1.3b1-cp35-cp35m-macosx_10_6_intel.whl", 
            "md5_digest": "a1bdfcdea8ce83bff1c5121b4bc1813e", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp35-cp35m-macosx_10_6_intel.whl", 
            "packagetype": "bdist_wheel", 
            "path": "7b/b5/75e1d597bee2cdd889583550db60a3fa7a66e24c6682b0fe51c06f2676a1/gevent-1.3b1-cp35-cp35m-macosx_10_6_intel.whl", 
            "digests": {
                "sha256": "dbbe5285ce4d788b8b4643a7ee74544999537661b882b269a3a7bc1cff24b695", 
                "md5": "a1bdfcdea8ce83bff1c5121b4bc1813e"
            }, 
            "sha256_digest": "dbbe5285ce4d788b8b4643a7ee74544999537661b882b269a3a7bc1cff24b695", 
            "size": 2978031
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T15:01:26", 
            "comment_text": "", 
            "python_version": "cp36", 
            "url": "https://pypi.python.org/packages/38/a7/b43a77a78dea16e4e68570c8df9d6884610fff1865324eaad166d6908fe6/gevent-1.3b1-cp36-cp36m-macosx_10_6_intel.whl", 
            "md5_digest": "f5fb46aa1a165b2cb58c8c0bddfc3518", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp36-cp36m-macosx_10_6_intel.whl", 
            "packagetype": "bdist_wheel", 
            "path": "38/a7/b43a77a78dea16e4e68570c8df9d6884610fff1865324eaad166d6908fe6/gevent-1.3b1-cp36-cp36m-macosx_10_6_intel.whl", 
            "digests": {
                "sha256": "967c8df8192ab388e985e964f7c7608dc4a967c081c7b042228c56aeac276e78", 
                "md5": "f5fb46aa1a165b2cb58c8c0bddfc3518"
            }, 
            "sha256_digest": "967c8df8192ab388e985e964f7c7608dc4a967c081c7b042228c56aeac276e78", 
            "size": 2961931
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T14:53:26", 
            "comment_text": "", 
            "python_version": "cp36", 
            "url": "https://pypi.python.org/packages/bb/50/65f6bf44ceda7fb9e01512f2d3c8f5bc785b55ed0bbe6e39fa3a1a66012f/gevent-1.3b1-cp36-cp36m-win_amd64.whl", 
            "md5_digest": "026afc2061b363d11e506856420dffc3", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp36-cp36m-win_amd64.whl", 
            "packagetype": "bdist_wheel", 
            "path": "bb/50/65f6bf44ceda7fb9e01512f2d3c8f5bc785b55ed0bbe6e39fa3a1a66012f/gevent-1.3b1-cp36-cp36m-win_amd64.whl", 
            "digests": {
                "sha256": "0141b44a1eea5c3d2dec9e75da3bf0a51153bc6f9ef6e631a1e18460541d2ac1", 
                "md5": "026afc2061b363d11e506856420dffc3"
            }, 
            "sha256_digest": "0141b44a1eea5c3d2dec9e75da3bf0a51153bc6f9ef6e631a1e18460541d2ac1", 
            "size": 1966011
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T15:03:58", 
            "comment_text": "", 
            "python_version": "cp37", 
            "url": "https://pypi.python.org/packages/df/0f/41e53c47c10531b87261e9e03475132418ca2ec96eff56a15b7e124a433a/gevent-1.3b1-cp37-cp37m-macosx_10_9_x86_64.whl", 
            "md5_digest": "6fbe84858f95718ed10b6b3fe876176e", 
            "downloads": 0, 
            "filename": "gevent-1.3b1-cp37-cp37m-macosx_10_9_x86_64.whl", 
            "packagetype": "bdist_wheel", 
            "path": "df/0f/41e53c47c10531b87261e9e03475132418ca2ec96eff56a15b7e124a433a/gevent-1.3b1-cp37-cp37m-macosx_10_9_x86_64.whl", 
            "digests": {
                "sha256": "ebeb962bd19c4297067e50c8786115900022564b90a91a13adc77296c6698df3", 
                "md5": "6fbe84858f95718ed10b6b3fe876176e"
            }, 
            "sha256_digest": "ebeb962bd19c4297067e50c8786115900022564b90a91a13adc77296c6698df3", 
            "size": 2118921
        }, 
        {
            "has_sig": false, 
            "upload_time": "2018-04-13T14:50:49", 
            "comment_text": "", 
            "python_version": "source", 
            "url": "https://pypi.python.org/packages/6a/ce/dfa807a393fbb2b19f2dbb88558de94a7bf13236254136ead762a1e14fc1/gevent-1.3b1.tar.gz", 
            "md5_digest": "3b009d082500150007514567a241276c", 
            "downloads": 0, 
            "filename": "gevent-1.3b1.tar.gz", 
            "packagetype": "sdist", 
            "path": "6a/ce/dfa807a393fbb2b19f2dbb88558de94a7bf13236254136ead762a1e14fc1/gevent-1.3b1.tar.gz", 
            "digests": {
                "sha256": "e2808a40a5747c13e634edbdd42032dfe5f930a39eddd6f235703886cdf486bc", 
                "md5": "3b009d082500150007514567a241276c"
            }, 
            "sha256_digest": "e2808a40a5747c13e634edbdd42032dfe5f930a39eddd6f235703886cdf486bc", 
            "size": 4518571
        }
    ], 
    "_id": null, 
    "cheesecake_installability_id": null
}