Description of problem: When no DNS resolver is configured, such as in the RPM mock build environment, the “eventlet” package does not even import successfully. Version-Release number of selected component (if applicable): 0.32.0-2.fc36 How reproducible: Steps to Reproduce: 1. $ mock -r fedora-rawhide-x86_64 --clean 2. $ mock -r fedora-rawhide-x86_64 -i python3-eventlet 3. $ mock -r fedora-rawhide-x86_64 --shell 4. <mock-chroot> sh-5.1# python3 -c 'import eventlet' Actual results: Traceback (most recent call last): File "<string>", line 1, in <module> File "/usr/lib/python3.10/site-packages/eventlet/__init__.py", line 17, in <module> from eventlet import convenience File "/usr/lib/python3.10/site-packages/eventlet/convenience.py", line 7, in <module> from eventlet.green import socket File "/usr/lib/python3.10/site-packages/eventlet/green/socket.py", line 21, in <module> from eventlet.support import greendns File "/usr/lib/python3.10/site-packages/eventlet/support/greendns.py", line 411, in <module> resolver = ResolverProxy(hosts_resolver=HostsResolver()) File "/usr/lib/python3.10/site-packages/eventlet/support/greendns.py", line 325, in __init__ self.clear() File "/usr/lib/python3.10/site-packages/eventlet/support/greendns.py", line 328, in clear self._resolver = dns.resolver.Resolver(filename=self._filename) File "/usr/lib/python3.10/site-packages/dns/resolver.py", line 734, in __init__ self.read_resolv_conf(filename) File "/usr/lib/python3.10/site-packages/dns/resolver.py", line 826, in read_resolv_conf raise NoResolverConfiguration dns.resolver.NoResolverConfiguration: Resolver configuration could not be read or specified no nameservers. Expected results: (no output) Additional info: This works fine in python-eventlet-0.31.1-1.fc35 and earlier. The change breaks any Fedora package that uses eventlet in its tests. One example is python-engineio.
Relevant: https://github.com/eventlet/eventlet/issues/462#issuecomment-950614323
From that upstream issue, I found that > export EVENTLET_NO_GREENDNS=yes is a workaround for testing python-engineio.
Not limited to Fedora, affects pip installations just as well.
Fix by @dtantsur released in 0.33.0. This is opposite of single patch release, contains few big changes.
Not sure why needinfo on me? I'm not an eventlet maintainer, just provided a fix for the problem that broke us.
Sorry, I don't know this software, it did set flag automatically with @mention.
This bug appears to have been reported against 'rawhide' during the Fedora 36 development cycle. Changing version to 36.
(In reply to Sergey Shepelev from comment #4) > Fix by @dtantsur released in 0.33.0. This is opposite of single > patch release, contains few big changes. I can confirm this fixes the issue in F36+.