Skip to content

Commit 32b028d

Browse files
committed
Ignore AttributeError on eventlet import
running on python 3.12, we get this error, we should ignore it until eventlet is fixed ``` ImportError while loading conftest '/home/runner/work/python-driver/python-driver/tests/integration/conftest.py'. tests/integration/__init__.py:16: in <module> from cassandra.cluster import Cluster cassandra/cluster.py:103: in init cassandra.cluster from cassandra.io.eventletreactor import EventletConnection cassandra/io/eventletreactor.py:18: in <module> import eventlet .test-venv/lib/python3.12/site-packages/eventlet/__init__.py:17: in <module> from eventlet import convenience .test-venv/lib/python3.12/site-packages/eventlet/convenience.py:7: in <module> from eventlet.green import socket .test-venv/lib/python3.12/site-packages/eventlet/green/socket.py:21: in <module> from eventlet.support import greendns .test-venv/lib/python3.12/site-packages/eventlet/support/greendns.py:45: in <module> from eventlet.green import ssl .test-venv/lib/python3.12/site-packages/eventlet/green/ssl.py:25: in <module> _original_wrap_socket = __ssl.wrap_socket E AttributeError: module 'ssl' has no attribute 'wrap_socket' ``` Ref: eventlet/eventlet#812
1 parent b9035ba commit 32b028d

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

cassandra/cluster.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@
101101

102102
try:
103103
from cassandra.io.eventletreactor import EventletConnection
104-
except ImportError:
104+
except (ImportError, AttributeError): # AttributeError was add for handling python 3.12 https://github.com/eventlet/eventlet/issues/812
105105
EventletConnection = None
106106

107107
try:
@@ -115,9 +115,11 @@
115115
def _is_eventlet_monkey_patched():
116116
if 'eventlet.patcher' not in sys.modules:
117117
return False
118-
import eventlet.patcher
119-
return eventlet.patcher.is_monkey_patched('socket')
120-
118+
try:
119+
import eventlet.patcher
120+
return eventlet.patcher.is_monkey_patched('socket')
121+
except (ImportError, AttributeError): # AttributeError was add for handling python 3.12 https://github.com/eventlet/eventlet/issues/812
122+
return False
121123

122124
def _is_gevent_monkey_patched():
123125
if 'gevent.monkey' not in sys.modules:

0 commit comments

Comments
 (0)