Skip to content

aiodns can probably be enabled on windows, now that it ships with c-ares already built #8121

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
1 task done
JinEnMok opened this issue Jan 31, 2024 · 5 comments · Fixed by #10823
Closed
1 task done

Comments

@JinEnMok
Copy link

Is your feature request related to a problem?

The aiodns library from the [speedup] bundle is currently disabled on Windows per this line .

However, aiodns currently ships with pycares, which bundles a binary of c-ares by default. I was just now able to install it on Win10 with pip.

Describe the solution you'd like

It seems there's no need to exclude Windows from the aiodns speedup. Looks like changing https://github.com/aio-libs/aiohttp/blob/master/setup.cfg#L64 would be sufficient, but I'm by no means experienced, so I'd rather not mess with the repo myself.

Describe alternatives you've considered

There seems to be some requests to get rid of aiodns entirely in favour of pydns, but maybe till then we can use it like this?

Related component

Client

Additional context

No response

Code of Conduct

  • I agree to follow the aio-libs Code of Conduct
@webknjaz
Copy link
Member

webknjaz commented Feb 1, 2024

You can still use it, the dependency helper (speedups extra) doesn't influence anything short of what's pulled in on install. If it's present in the env, it'll be used.

@JinEnMok
Copy link
Author

JinEnMok commented Feb 1, 2024

Should be an easy fix then, especially if it's strongly recommended for performance reason.

@webknjaz
Copy link
Member

webknjaz commented Feb 1, 2024

You could make a PR to see how our CI likes it.

@Dreamsorcerer
Copy link
Member

It installs, but loads of the tests fail and then on one of the tests it appears to hang.

@bdraco thinks it may work on the selector event loop (which is not the default), so if someone wants to add some conditional checks around that to support it, we can look at including it by default. But, currently, it looks like installing it will just break everything for most users.

@bdraco
Copy link
Member

bdraco commented Sep 5, 2024

bdraco added a commit that referenced this issue May 2, 2025
As of aiodns 3.3.0 SelectorEventLoop is no longer required when using
pycares 4.7.0 or later

closes #8121
bdraco added a commit that referenced this issue May 3, 2025
…aiodns from being installed on Windows (#10825)

Co-authored-by: J. Nick Koston <[email protected]>
closes #8121
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants