@ItIt

Как решить ошибку python. RuntimeWarning: coroutine 'some_name' was never awaited?

При запуске проги те бота выходит следующая ошибка:
<coroutine object main at 0x107465310>
sys:1: RuntimeWarning: coroutine 'main' was never awaited
RuntimeWarning: Enable tracemalloc to get the object allocation traceback


Main функция:
async def main(**kwargs):
    bot = Bot(os.environ.get("TOKEN"))
    dp = Dispatcher(bot)

    await register_handlers(dp)

    update = types.Update.to_object(kwargs)
    await process_event(update, dp)

    return 'ok'


Файл запуска setup.py
from os import path

here = path.abspath(path.dirname(__file__))

setup(
    name="bot",
    packages=["bot"],
    entry_points={
        "console_scripts": [
            "bot = bot.bot:main",
            ],
        },
    )

Пробовал разные методны решения, ничего не помогло, может быть кто сталкивался с подобной проблемой?
  • Вопрос задан
  • 3650 просмотров
Пригласить эксперта
Ответы на вопрос 1
gnifajio
@gnifajio
Совершенствуюсь каждый день
Данная ошибка возникает, когда вызывается корутина (асинхронная функция), но не ждется ее завершение. В вашем случае это функция main.

Чтобы решить эту проблему, нужно дождаться завершения функции main. Для этого вы можете использовать конструкцию await main() или asyncio.run(main()).

После этого запустите бота снова и проверьте, что ошибка больше не возникает.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы