From d8e7cdd0728bfccefe82f6d1f703d1aaefaa07d5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Piotr=20Ma=C5=9Blanka?= <piotr.maslanka@henrietta.com.pl>
Date: Tue, 24 Nov 2020 21:50:32 +0100
Subject: [PATCH] v1.2.10

---
 CHANGELOG.md                               | 1 +
 coolamqp/__init__.py                       | 2 +-
 coolamqp/uplink/listener/epoll_listener.py | 9 +++++++--
 coolamqp/uplink/listener/thread.py         | 1 +
 4 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 629d5e6..70c46fe 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,3 +4,4 @@ have been made so far, between releases.
 
 # v1.2.10
 
+* made CoolAMQP importable on Windows
diff --git a/coolamqp/__init__.py b/coolamqp/__init__.py
index 0588f2a..c7ac77f 100644
--- a/coolamqp/__init__.py
+++ b/coolamqp/__init__.py
@@ -1 +1 @@
-__version__ = '1.2.10_a2'
+__version__ = '1.2.10'
diff --git a/coolamqp/uplink/listener/epoll_listener.py b/coolamqp/uplink/listener/epoll_listener.py
index 7e38a02..e84e5d0 100644
--- a/coolamqp/uplink/listener/epoll_listener.py
+++ b/coolamqp/uplink/listener/epoll_listener.py
@@ -14,8 +14,13 @@ from coolamqp.uplink.listener.base_listener import BaseListener
 
 logger = logging.getLogger(__name__)
 
-RO = select.EPOLLIN | select.EPOLLHUP | select.EPOLLERR
-RW = RO | select.EPOLLOUT
+try:
+    RO = select.EPOLLIN | select.EPOLLHUP | select.EPOLLERR
+    RW = RO | select.EPOLLOUT
+except AttributeError:
+    # epoll listener will be unusable anyway
+    RO = 0
+    RW = 1
 
 
 class EpollSocket(BaseSocket):
diff --git a/coolamqp/uplink/listener/thread.py b/coolamqp/uplink/listener/thread.py
index f66530e..69424de 100644
--- a/coolamqp/uplink/listener/thread.py
+++ b/coolamqp/uplink/listener/thread.py
@@ -20,6 +20,7 @@ def get_listener_class():   # type: () -> tp.Type[BaseListener]
 
     try:
         import select
+        select.EPOLLIN
         select.epoll
     except AttributeError:
         return SelectListener   # we're running on a platform that doesn't support epoll
-- 
GitLab