ppc64le/linux/: greenlet-3.1.1 metadata and description

Homepage Simple index

Lightweight in-process concurrent programming

author Alexey Borzenkov
author_email [email protected]
classifiers
  • Development Status :: 5 - Production/Stable
  • Intended Audience :: Developers
  • License :: OSI Approved :: MIT License
  • Natural Language :: English
  • Programming Language :: C
  • Programming Language :: Python
  • Programming Language :: Python :: 3
  • Programming Language :: Python :: 3 :: Only
  • Programming Language :: Python :: 3.7
  • Programming Language :: Python :: 3.8
  • Programming Language :: Python :: 3.9
  • Programming Language :: Python :: 3.10
  • Programming Language :: Python :: 3.11
  • Programming Language :: Python :: 3.12
  • Programming Language :: Python :: 3.13
  • Operating System :: OS Independent
  • Topic :: Software Development :: Libraries :: Python Modules
  • Environment :: MetaData :: IBM Python Ecosystem
description_content_type text/x-rst
dynamic summary
keywords greenlet coroutine concurrency threads cooperative
license MIT License
license_file AUTHORS
maintainer Jason Madden
maintainer_email [email protected]
project_urls
  • Bug Tracker, https://github.com/python-greenlet/greenlet/issues
  • Source Code, https://github.com/python-greenlet/greenlet/
  • Documentation, https://greenlet.readthedocs.io/
provides_extras test
requires_dist
  • Sphinx; extra == "docs"
  • furo; extra == "docs"
  • objgraph; extra == "test"
  • psutil; extra == "test"
requires_python >=3.7
File Tox results History
greenlet-3.1.1-cp310-cp310-linux_ppc64le.whl
Size
571 KB
Type
Python Wheel
Python
3.10
greenlet-3.1.1-cp311-cp311-linux_ppc64le.whl
Size
532 KB
Type
Python Wheel
Python
3.11
greenlet-3.1.1-cp312-cp312-linux_ppc64le.whl
Size
545 KB
Type
Python Wheel
Python
3.12
greenlet-3.1.1-cp313-cp313-linux_ppc64le.whl
Size
594 KB
Type
Python Wheel
Python
3.13
greenlet-3.1.1-cp39-cp39-linux_ppc64le.whl
Size
527 KB
Type
Python Wheel
Python
3.9

Greenlets are lightweight coroutines for in-process concurrent programming.

The “greenlet” package is a spin-off of Stackless, a version of CPython that supports micro-threads called “tasklets”. Tasklets run pseudo-concurrently (typically in a single or a few OS-level threads) and are synchronized with data exchanges on “channels”.

A “greenlet”, on the other hand, is a still more primitive notion of micro-thread with no implicit scheduling; coroutines, in other words. This is useful when you want to control exactly when your code runs. You can build custom scheduled micro-threads on top of greenlet; however, it seems that greenlets are useful on their own as a way to make advanced control flow structures. For example, we can recreate generators; the difference with Python’s own generators is that our generators can call nested functions and the nested functions can yield values too. (Additionally, you don’t need a “yield” keyword. See the example in test_generator.py).

Greenlets are provided as a C extension module for the regular unmodified interpreter.

Who is using Greenlet?

There are several libraries that use Greenlet as a more flexible alternative to Python’s built in coroutine support:

Getting Greenlet

The easiest way to get Greenlet is to install it with pip:

pip install greenlet

Source code archives and binary distributions are available on the python package index at https://pypi.org/project/greenlet

The source code repository is hosted on github: https://github.com/python-greenlet/greenlet

Documentation is available on readthedocs.org: https://greenlet.readthedocs.io

Export Classification Notice

The software hosted on this website consists of publicly available open‑source packages. To the extent U.S. export regulations apply, software that is publicly available as described in 15 C.F.R. §§ 734.7 (for non-encryption software) or 742.15(b) (for encryption software) is not subject to the Export Administration Regulations (EAR). Users are responsible for complying with all applicable export laws and regulations.