Skip to main content

Highly concurrent networking library

Project description

Warning

New usages of eventlet are now heavily discouraged! Please read the following.

Eventlet was created almost 18 years ago, at a time where async features were absent from the CPython stdlib. With time eventlet evolved and CPython too, but since several years the maintenance activity of eventlet decreased leading to a growing gap between eventlet and the CPython implementation.

This gap is now too high and can lead you to unexpected side effects and bugs in your applications.

Eventlet now follows a new maintenance policy. Only maintenance for stability and bug fixing will be provided. No new features will be accepted, except those related to the asyncio migration. Usages in new projects are discouraged. Our goal is to plan the retirement of eventlet and to give you ways to move away from eventlet.

If you are looking for a library to manage async network programming, and if you do not yet use eventlet, then, we encourage you to use asyncio, which is the official async library of the CPython stdlib.

If you already use eventlet, we hope to enable migration to asyncio for some use cases; see Migrating off of Eventlet. Only new features related to the migration solution will be accepted.

If you have questions concerning maintenance goals or concerning the migration do not hesitate to open a new issue, we will be happy to answer them.

Eventlet

https://img.shields.io/pypi/v/eventlet https://img.shields.io/github/actions/workflow/status/eventlet/eventlet/test.yaml?branch=master https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg

Eventlet is a concurrent networking library for Python that allows you to change how you run your code, not how you write it.

It uses epoll or libevent for highly scalable non-blocking I/O. Coroutines ensure that the developer uses a blocking style of programming that is similar to threading, but provide the benefits of non-blocking I/O. The event dispatch is implicit, which means you can easily use Eventlet from the Python interpreter, or as a small part of a larger application.

It’s easy to get started using Eventlet, and easy to convert existing applications to use it. Start off by looking at the examples, common design patterns, and the list of basic API primitives.

Getting Eventlet

The easiest way to get Eventlet is to use pip:

pip install -U eventlet

To install latest development version once:

pip install -U https://github.com/eventlet/eventlet/archive/master.zip

Building the Docs Locally

To build a complete set of HTML documentation:

tox -e docs

The built html files can be found in doc/build/html afterward.

Supported Python versions

Python 3.8-3.13 are currently supported.

Project details


Download files

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

Source Distribution

eventlet-0.41.0.tar.gz (565.9 kB view details)

Uploaded Source

Built Distribution

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

eventlet-0.41.0-py3-none-any.whl (364.6 kB view details)

Uploaded Python 3

File details

Details for the file eventlet-0.41.0.tar.gz.

File metadata

  • Download URL: eventlet-0.41.0.tar.gz
  • Upload date:
  • Size: 565.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eventlet-0.41.0.tar.gz
Algorithm Hash digest
SHA256 35df85f0ccd3e73effb6fd9f1ceae46b500b966c7da1817289c323a307bd397b
MD5 51e248a3f3183e694bc1d8056515011b
BLAKE2b-256 d39032772ae7c9897554c56b9367b67478a3dc89c70d9b4d12e241746f6fdae3

See more details on using hashes here.

Provenance

The following attestation bundles were made for eventlet-0.41.0.tar.gz:

Publisher: publish.yaml on eventlet/eventlet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eventlet-0.41.0-py3-none-any.whl.

File metadata

  • Download URL: eventlet-0.41.0-py3-none-any.whl
  • Upload date:
  • Size: 364.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eventlet-0.41.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bc22396093cb4119ff7007776be6a5348a613ccd42eeb0f9519853a6efcbcabe
MD5 735f24d77b9ba2f4f70d95aa6d152fdb
BLAKE2b-256 c31cfebe9acf1b4f0d67603b231c28d6d17d647d68c90c1963fecdeb64046d6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for eventlet-0.41.0-py3-none-any.whl:

Publisher: publish.yaml on eventlet/eventlet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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