Skip to main content

Python package that makes it easy to run fast asyncio code

Project description

asyncio-anywhere

Python package that makes it easy to run fast asyncio code

PyPI version Release Notes pytest Poetry

Are you trying to run async code in Python and getting the error "asyncio.run() cannot be called from a running event loop"? This package makes it easy to run asyncio-based async code in tricky execution environments:

  • IPython-based notebooks (JupyterLab, AWS Sagemaker, Databricks, etc)
  • trio applications
  • curio applications

It also seamlessly makes use of uvloop:

  • using dependency markers to only install it on supported operating systems
  • using uvloop without permanently the asyncio event loop policy

Non Features:

  • asyncio-where does not monkey-patch the asyncio module. We want to avoid doing this because it may cause problems in future Python versions

Usage

pip install asyncio-anywhere
import asyncio
from asyncio_anywhere import asyncio_run


async def myfunc():
    await asyncio.sleep(0.01)
    return "OK"


result = asyncio_run(myfunc())

print(result)

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

asyncio_anywhere-0.1.1.tar.gz (3.3 kB view hashes)

Uploaded Source

Built Distribution

asyncio_anywhere-0.1.1-py3-none-any.whl (4.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page