Skip to content

Python 3.9 support #365

Closed
Closed

Description

@gaby

Now that Python 3.9 has been officially been release. Is support for Python 3.9 in the near timeline?

Changes: https://docs.python.org/3.9/whatsnew/3.9.html

Activity

  1. greatvovan commented on Oct 16, 2020

    @greatvovan

    Version 0.14.0 throws NotImplementedError in the very end of the program, after successful execution:

    Traceback (most recent call last):
      File "/Users/vryabtsev/PycharmProjects/fastapi/benchmark2.py", line 43, in <module>
        asyncio.run(main())
      File "/Users/vryabtsev/.pyenv/versions/3.9.0/lib/python3.9/asyncio/runners.py", line 49, in run
        loop.run_until_complete(loop.shutdown_default_executor())
      File "uvloop/loop.pyx", line 1456, in uvloop.loop.Loop.run_until_complete
      File "/Users/vryabtsev/.pyenv/versions/3.9.0/lib/python3.9/asyncio/events.py", line 253, in shutdown_default_executor
        raise NotImplementedError
    NotImplementedError
    
    Process finished with exit code 1
    

    Somehow AbstractEventLoop.shutdown_default_executor gets called here, which causes the exception.

  2. sileht commented on Nov 11, 2020

    @sileht

    It's fixed here I guess, #353.

  3. added a commit that references this issue on Dec 3, 2020
  4. mhxie commented on Dec 16, 2020

    @mhxie

    I have the same issue here. And the benchmark shows that using the Python 3.9 echo server with uvloop 0.14.0 is performing even worse than the default asyncio server. Any idea on this?

  5. Pyvonix commented on Jan 7, 2021

    @Pyvonix

    Python 3.9.1 and uvloop 0.14.0 (in django context):

    /usr/lib/python3.9/asyncio/runners.py, line 49, in run:

        loop.run_until_complete(loop.shutdown_default_executor())
    

    uvloop/loop.pyx, line 1456, in uvloop.loop.Loop.run_until_complete:

        <source code not available>

    /usr/lib/python3.9/asyncio/events.py, line 253, in shutdown_default_executor:

        raise NotImplementedError

    The problem is always present.

  6. Tinche commented on Jan 8, 2021

    @Tinche

    Also, can we get 3.9 wheels up on PyPI? 😇

  7. gaby commented on Jan 31, 2021

    @gaby
    Author

    Any news on this?

  8. fantix commented on Jan 31, 2021

    @fantix
    Member

    Yes - this is on my priority list and I'm hoping to help in getting a release for 3.9 soon!

  9. adamantike commented on Oct 5, 2021

    @adamantike

    @fantix, with 0.15.0 release notes mentioning Python 3.9 fixes, and 0.16.0 release notes mentioning Python 3.10 support, should this issue be considered fixed?

    With the following simple Dockerfile, I no longer get the NotImplementedError exception on version 0.15.0 onwards:

    FROM python:3.9
    
    RUN pip install --no-cache-dir uvloop==0.15.0
    
    RUN echo "\
    import asyncio\n\
    import uvloop\n\
    \n\
    async def main():\n\
        ...\n\
    \n\
    uvloop.install()\n\
    asyncio.run(main())\n\
    " > /main.py
    
    CMD ["python", "/main.py"]
  10. fantix commented on Oct 5, 2021

    @fantix
    Member

    Oh yes, thanks for the reminder! Closing now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions