diff --git a/requirements.txt b/requirements.txt
index 58d74c97e088fd0fd603005a7c8048bdb9303abd..64846e8609fdeb828c30fbb48c74eba36b58d493 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,4 @@
 ucoinpy>=0.13
-quamash
+https://github.com/Insoleet/quamash.git@qeventloop
 asynctest
 networkx
\ No newline at end of file
diff --git a/src/sakia/core/app.py b/src/sakia/core/app.py
index 9aa906e29e5fbf21d78d9756f6e8abbd9ba018ef..877976190e5cfe72de29109c9ddffa3e1026b85b 100644
--- a/src/sakia/core/app.py
+++ b/src/sakia/core/app.py
@@ -524,3 +524,5 @@ class Application(QObject):
                 self.version_requested.emit()
         except (aiohttp.errors.ClientError, aiohttp.errors.TimeoutError) as e:
             logging.debug("Could not connect to github : {0}".format(str(e)))
+        except Exception as e:
+            pass
diff --git a/src/sakia/main.py b/src/sakia/main.py
index 65844f363335e26a36e549b38bc3f29c00c1f34a..07e123a3564df1677321b198a4197f1bd80d12b0 100755
--- a/src/sakia/main.py
+++ b/src/sakia/main.py
@@ -16,7 +16,7 @@ import jsonschema
 # To force cx_freeze import
 import PyQt5.QtSvg
 
-from quamash import QEventLoop
+from quamash import QEventLoopSelector
 from PyQt5.QtWidgets import QApplication
 from sakia.gui.mainwindow import MainWindow
 from sakia.core.app import Application
@@ -61,7 +61,7 @@ if __name__ == '__main__':
     # activate ctrl-c interrupt
     signal.signal(signal.SIGINT, signal.SIG_DFL)
     sakia = QApplication(sys.argv)
-    loop = QEventLoop(sakia)
+    loop = QEventLoopSelector(sakia)
     loop.set_exception_handler(async_exception_handler)
     asyncio.set_event_loop(loop)
 
diff --git a/src/sakia/tests/functional/process_cfg_community/test_add_community.py b/src/sakia/tests/functional/process_cfg_community/test_add_community.py
index 7f97a3dee9b3712bbb078818bf49b5db67ad7ebd..48d8b0ad758347f71ee324d59ec7f5ac96fd80ed 100644
--- a/src/sakia/tests/functional/process_cfg_community/test_add_community.py
+++ b/src/sakia/tests/functional/process_cfg_community/test_add_community.py
@@ -31,8 +31,10 @@ class ProcessAddCommunity(unittest.TestCase, QuamashTest):
         self.password_asker = PasswordAskerDialog(self.account)
         self.password_asker.password = "testsakia"
         self.password_asker.remember = True
+        super().setUp()
 
     def tearDown(self):
+        super().tearDown()
         self.tearDownQuamash()
 
     @unittest.skipIf(sys.platform== "darwin", "Test not working on OSX, but feature is OK")
diff --git a/src/sakia/tests/quamash_utils.py b/src/sakia/tests/quamash_utils.py
index ae7610528fbec45516a6238d4dca54d9fdd28a99..a359319d252f0b79c8d054cf6090e3a87195ddbe 100644
--- a/src/sakia/tests/quamash_utils.py
+++ b/src/sakia/tests/quamash_utils.py
@@ -9,7 +9,7 @@ _application_ = []
 class QuamashTest:
     def setUpQuamash(self):
         self.qapplication = get_application()
-        self.lp = quamash.QEventLoop(self.qapplication)
+        self.lp = quamash.QEventLoopSelector(self.qapplication)
         asyncio.set_event_loop(self.lp)
         self.lp.set_exception_handler(lambda l, c: unitttest_exception_handler(self, l, c))
         self.exceptions = []