1

I am trying to add a web ui to a discord bot using Quart. From what I've seen the appropriate way to do this is to from a instance of discord.Bot create a task and to run it. I'm currently doing it this way

def start():
    bot.loop.create_task(app.run_task("0.0.0.0"))
    load_commands()
    print(f"loaded commands: {loaded_commands}")
    bot.run(TOKEN)

however when this is run I get the following error

Task exception was never retrieved
future: <Task finished name='Task-1' coro=<serve() done, defined at /var/home/nullrequest/.local/share/virtualenvs/lunbot-ldM1Y48e/lib/python3.10/site-packages/hypercorn/asyncio/__init__.py:9> exception=TypeError("BaseEventLoop.create_server() got an unexpected keyword argument 'loop'")>
Traceback (most recent call last):
  File "/var/home/nullrequest/.local/share/virtualenvs/lunbot-ldM1Y48e/lib/python3.10/site-packages/hypercorn/asyncio/__init__.py", line 39, in serve
    await worker_serve(app, config, shutdown_trigger=shutdown_trigger)
  File "/var/home/nullrequest/.local/share/virtualenvs/lunbot-ldM1Y48e/lib/python3.10/site-packages/hypercorn/asyncio/run.py", line 128, in worker_serve
    await asyncio.start_server(
  File "/usr/lib64/python3.10/asyncio/streams.py", line 84, in start_server
    return await loop.create_server(factory, host, port, **kwds)
TypeError: BaseEventLoop.create_server() got an unexpected keyword argument 'loop'
Task was destroyed but it is pending!
task: <Task pending name='Task-3' coro=<Lifespan.handle_lifespan() running at /var/home/nullrequest/.local/share/virtualenvs/lunbot-ldM1Y48e/lib/python3.10/site-packages/hypercorn/asyncio/lifespan.py:30> wait_for=<Future pending cb=[Task.task_wakeup()]>>

I am using python 3.10rc1 if that makes any difference.

dev
  • 95
  • 2
  • 12

1 Answers1

-1

I have same error. Python 3.10 released on 04.10.2021. May be however it depends on the version of interpreter.

for message in client.iter_history(chat.id):
    if message.from_user.id == user_id:
        # My code...

My traceback:

Traceback (most recent call last):
  File "D:\freelance\messagesParser\main.py", line 74, in <module>
    main(sys.argv)
  File "D:\freelance\messagesParser\main.py", line 64, in main
    messages[chat] = get_messages(client, chat, **user_data)
  File "D:\freelance\messagesParser\main.py", line 22, in get_messages
    for message in client.iter_history(chat.id):
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\sync.py", line 59, in async_to_sync_wra
p
    return loop.run_until_complete(consume_generator(coroutine))
  File "C:\Program Files\Python310\lib\asyncio\base_events.py", line 641, in run_until_complete
    return future.result()
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\sync.py", line 34, in consume_generator

    return types.List([i async for i in coroutine])
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\sync.py", line 34, in <listcomp>
    return types.List([i async for i in coroutine])
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\methods\messages\iter_history.py", line
 79, in iter_history
    messages = await self.get_history(
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\methods\messages\get_history.py", line
86, in get_history
    messages = await utils.parse_messages(
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\utils.py", line 91, in parse_messages
    parsed_messages.append(await types.Message._parse(client, message, users, chats, replies=0))
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\types\messages_and_media\message.py", l
ine 619, in _parse
    sticker = await types.Sticker._parse(
  File "D:\freelance\messagesParser\venv\lib\site-packages\pyrogram\types\messages_and_media\sticker.py", l
ine 135, in _parse
    set_name = await Sticker._get_sticker_set_name(client.send, input_sticker_set_id)
  File "D:\freelance\messagesParser\venv\lib\site-packages\async_lru.py", line 237, in wrapped
    return (yield from asyncio.shield(fut, loop=_loop))
TypeError: shield() got an unexpected keyword argument 'loop'