Why: The asyncio.py module exists but has limited support. The TODO comments mention missing features. Users working with async for and async with need better integration.
Description:
When iterating over async iterators or awaiting multiple async tasks, there's no clean way to show progress. tqdm should provide decorators and context managers that work with native coroutines and async generators.
Example use case:
python
from tqdm.asyncio import tqdm, tqdm_as_completed
async for item in tqdm(async_iterable, total=100):
await process(item)
Or for gathering many tasks
for task in tqdm_as_completed(tasks, total=len(tasks)):
result = await task
Why: The asyncio.py module exists but has limited support. The TODO comments mention missing features. Users working with async for and async with need better integration.
Description:
When iterating over async iterators or awaiting multiple async tasks, there's no clean way to show progress. tqdm should provide decorators and context managers that work with native coroutines and async generators.
Example use case:
python
from tqdm.asyncio import tqdm, tqdm_as_completed
async for item in tqdm(async_iterable, total=100):
await process(item)
Or for gathering many tasks
for task in tqdm_as_completed(tasks, total=len(tasks)):
result = await task