123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189 |
- Metadata-Version: 2.0
- Name: gevent
- Version: 1.2.2
- Summary: Coroutine-based network library
- Home-page: http://www.gevent.org/
- Author: Jason Madden
- Author-email: jason@nextthought.com
- License: MIT
- Keywords: greenlet coroutine cooperative multitasking light threads monkey
- Platform: UNKNOWN
- Classifier: License :: OSI Approved :: MIT License
- Classifier: Programming Language :: Python :: 2.7
- Classifier: Programming Language :: Python :: 3.3
- Classifier: Programming Language :: Python :: 3.4
- Classifier: Programming Language :: Python :: 3.5
- Classifier: Programming Language :: Python :: 3.6
- Classifier: Programming Language :: Python :: Implementation :: CPython
- Classifier: Programming Language :: Python :: Implementation :: PyPy
- Classifier: Operating System :: MacOS :: MacOS X
- Classifier: Operating System :: POSIX
- Classifier: Operating System :: Microsoft :: Windows
- Classifier: Topic :: Internet
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
- Classifier: Intended Audience :: Developers
- Classifier: Development Status :: 4 - Beta
- Requires-Dist: greenlet (>=0.4.10)
- ========
- gevent
- ========
- 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
- .. tip:: You need Pip 8.0 or later to install the binary wheels.
- 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 '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
- .. note::
- You must have Cython, GNU Make, 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.
- BSD based systems like FreeBSD and OpenBSD often have BSD Make on
- the PATH as the default ``make`` command, but building gevent from a
- source checkout (not a source tarball distributed on PyPI) requires
- GNU Make. GNU Make is often called ``gmake``. If you experience
- Makefile-related problems building gevent from source on one of
- these platforms, you can set the ``MAKE`` environment variable to
- the executable that invokes GNU Make. For example::
- $ MAKE=gmake python ./setup.py install
- 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.
- .. image:: https://coveralls.io/repos/gevent/gevent/badge.svg?branch=master&service=github
- :target: https://coveralls.io/github/gevent/gevent?branch=master
- 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).
- .. image:: https://landscape.io/github/gevent/gevent/master/landscape.svg?style=flat
- :target: https://landscape.io/github/gevent/gevent/master
- :alt: Code Health
- .. 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/
- .. _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_2.html
- .. _changelog: http://www.gevent.org/changelog.html
- .. _landscape.io: https://landscape.io/github/gevent/gevent
|