Uvloop: Implement shutdown_default_executor()

Created on 31 May 2020  Â·  12Comments  Â·  Source: MagicStack/uvloop

  • uvloop version: 0.14.0
  • Python version: 3.9.0b1
  • Platform: Linux
  • Can you reproduce the bug with PYTHONASYNCIODEBUG in env?: yes
  • Does uvloop behave differently from vanilla asyncio? How?: yes – vanilla asyncio implements this method


Python 3.9 added a new mandatory method to the AbstractEventLoop interface, named shutdown_default_executor(). This method is crucial for asyncio.run() to work. If it's absent, asyncio.run() will fail with a NotImplementedError when performing the shutdown cleanup.

Related CPython issue: https://bugs.python.org/issue34037

Most helpful comment

It would be super nice to have this fix released! Can't wait to switch over Python 3.9.0 )

All 12 comments

Seeing as I added loop.shutdown_default_executor() to asyncio, I wouldn't mind working on this issue. Unless someone else specifically wants to work on this, feel free to assign me and I should be able to find the time within the next couple of weeks or so.

(Note that this would be my first issue for uvloop)

Kyle, feel free to work on this.

Sorry for the delay on this. I've been a bit otherwise occupied and had some local issues with installing cython in the virtual environment (due to an OS problem where libffi.so.6 was not present). I just resolved the issue earlier today and should have time to open a PR for this issue within the next week or so.

np!

Really nice to have this. How soon can we expect a new uvloop release?

I'll try to do one around 3.9 release. Sorry, i'm extremely busy these days.

Python 3.9.0 has been released already so it would be really nice to get this done.

It would be super nice to have this fix released! Can't wait to switch over Python 3.9.0 )

Thank you for uvloop! I'd love to see this released; if there's anything blocking the release I'd be happy to help :-)

I'm a bit busy with releasing EdgeDB b1. We should do that in a week or two and then it will be a priority for me to release uvloop (and migrate EdgeDB itself to 3.9).

Any updates?

EdgeDB b1 isn't out yet. I wouldn't expect anything to happen before that.

Was this page helpful?
0 / 5 - 0 ratings