Nuitka: Nuitka8.1 with Sanic,RuntimeWarning: coroutine 'BaseEventLoop.create_server' was never awaited

I freeze a simple sanic project with nuitka on windows11, but it doesn’t work correctly。

  • Env: Windows11、Python3.7(64bit)、Nuitka8.1
  • Nuitka-Options:INFO: Used command line options: --follow-imports --standalone --mingw64 server.py
  • server.exe result

[2022-05-25 13:07:22 +0800] [11256] [ERROR] Experienced exception while trying to serve Traceback (most recent call last): File “D:\Projects\tavi\server.dist\sanic\mixins\runner.py”, line 578, in serve File “D:\Projects\tavi\server.dist\sanic\server\runners.py”, line 206, in serve_single File “D:\Projects\tavi\server.dist\sanic\server\runners.py”, line 129, in serve File “D:\Projects\tavi\server.dist\asyncio\base_events.py”, line 579, in run_until_complete File “D:\Projects\tavi\server.dist\sanic\app.py”, line 1560, in _startup File “D:\Projects\tavi\server.dist\sanic\touchup\service.py”, line 26, in run File “D:\Projects\tavi\server.dist\sanic\touchup\schemes\base.py”, line 20, in call File “D:\Projects\tavi\server.dist\sanic\touchup\schemes\ode.py”, line 24, in run File “D:\Projects\tavi\server.dist\inspect.py”, line 973, in getsource File “D:\Projects\tavi\server.dist\inspect.py”, line 955, in getsourcelines File “D:\Projects\tavi\server.dist\inspect.py”, line 786, in findsource OSError: could not get source code Traceback (most recent call last): File “D:\Projects\tavi\server.dist\server.py”, line 26, in <module> File “D:\Projects\tavi\server.dist\sanic\mixins\runner.py”, line 145, in run File “D:\Projects\tavi\server.dist\sanic\mixins\runner.py”, line 578, in serve File “D:\Projects\tavi\server.dist\sanic\server\runners.py”, line 206, in serve_single File “D:\Projects\tavi\server.dist\sanic\server\runners.py”, line 129, in serve File “D:\Projects\tavi\server.dist\asyncio\base_events.py”, line 579, in run_until_complete File “D:\Projects\tavi\server.dist\sanic\app.py”, line 1560, in _startup File “D:\Projects\tavi\server.dist\sanic\touchup\service.py”, line 26, in run File “D:\Projects\tavi\server.dist\sanic\touchup\schemes\base.py”, line 20, in call File “D:\Projects\tavi\server.dist\sanic\touchup\schemes\ode.py”, line 24, in run File “D:\Projects\tavi\server.dist\inspect.py”, line 973, in getsource File “D:\Projects\tavi\server.dist\inspect.py”, line 955, in getsourcelines File “D:\Projects\tavi\server.dist\inspect.py”, line 786, in findsource OSError: could not get source code sys:1: RuntimeWarning: coroutine ‘BaseEventLoop.create_server’ was never awaited RuntimeWarning: Enable tracemalloc to get the object allocation traceback

  • server.py
import asyncio
from multiprocessing import Manager,freeze_support
from sanic import Sanic
from sanic.response import text

freeze_support()

app = Sanic("MyHelloWorldApp")

@app.get("/")
async def hello_world(request):
    return text("Hello, world.")

async def task1(app):
    while True:
        await asyncio.sleep(1)
        print("Hello, world.")

@app.listener("main_process_start")
async def start(app,loop):
    print("main_process_start")
    app.ctx.manager = Manager().dict()

app.add_task(task1(app))
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=1337)
  • pip freeze

aiofiles==0.8.0 altgraph==0.17.2 future==0.18.2 httptools==0.4.0 importlib-metadata==4.11.4 multidict==6.0.2 Nuitka==0.8.1 ordered-set==4.1.0 pefile==2021.9.3 pyinstaller==5.1 pyinstaller-hooks-contrib==2022.5 pywin32-ctypes==0.2.0 sanic==22.3.2 sanic-routing==22.3.0 typing-extensions==4.2.0 websockets==10.3 zipp==3.8.0

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 15 (10 by maintainers)

Most upvoted comments

This will make it straight to 2.0.2 too, once released, hopefully soon.