Либа asyncer от небезизвестного tiangolo.
Это очень маленькая библиотека на 4 функции, которые чутка упрощают жизнь в async-мире.
Собственно, список фунок:
1. .
runnify. По факту, просто asyncio.run, но с корректными типами и возвращаемыми аргументами.2. .
create_task_group / .soonify - на мой взгляд, самое полезное, что есть в либе. Позволяет легко и без бойлерплейтов запускать одновременно пачку тасков на выполнение. Чуть подробней - в доке. Такую же фичу для for-циклов обещают в 3.11 или 3.12 питоне, кажется, но пока живем так.3. .
asyncify / .syncify - обертки для запуска синхронного кода из асинхронного, и наоборот. (нет, syncify это не совсем runnify, есть отличия)Также все эти функи корректно обрабатывают типы аргументов и возвращаемых значений, так что mypy/pylance/etc будут ругаться на код с этим обертками, если где-то допустить обертку. Ну и подсказки, конечно, тоже подтягиваются.