From 6f840e4b4c5f9e5f515d4be45a76eb61dfede508 Mon Sep 17 00:00:00 2001 From: albertosottile Date: Mon, 29 Oct 2018 15:39:46 +0100 Subject: [PATCH] Add custom error message if Twisted is not installed Fixes #206. --- syncplay/messages_de.py | 1 + syncplay/messages_en.py | 1 + syncplay/messages_it.py | 1 + syncplay/messages_ru.py | 1 + syncplay/ui/ConfigurationGetter.py | 5 +++++ 5 files changed, 9 insertions(+) diff --git a/syncplay/messages_de.py b/syncplay/messages_de.py index 318f0a3..978685b 100755 --- a/syncplay/messages_de.py +++ b/syncplay/messages_de.py @@ -116,6 +116,7 @@ de = { "empty-error": "{} darf nicht leer sein", # Configuration "media-player-error": "Player-Fehler: \"{}\"", # Error line "unable-import-gui-error": "Konnte die GUI-Bibliotheken nicht importieren. PySide muss installiert sein, damit die grafische Oberfläche funktioniert.", + "unable-import-twisted-error": "Could not import Twisted. Please install Twisted v12.1.0 or later.", #To do: translate "arguments-missing-error": "Notwendige Argumente fehlen, siehe --help", diff --git a/syncplay/messages_en.py b/syncplay/messages_en.py index 267cbce..acf5c37 100755 --- a/syncplay/messages_en.py +++ b/syncplay/messages_en.py @@ -115,6 +115,7 @@ en = { "empty-error": "{} can't be empty", # Configuration "media-player-error": "Media player error: \"{}\"", # Error line "unable-import-gui-error": "Could not import GUI libraries. If you do not have PySide installed then you will need to install it for the GUI to work.", + "unable-import-twisted-error": "Could not import Twisted. Please install Twisted v12.1.0 or later.", "arguments-missing-error": "Some necessary arguments are missing, refer to --help", diff --git a/syncplay/messages_it.py b/syncplay/messages_it.py index 0b804aa..2ecff68 100755 --- a/syncplay/messages_it.py +++ b/syncplay/messages_it.py @@ -115,6 +115,7 @@ it = { "empty-error": "Il campo {} non può esssere vuoto", # Configuration "media-player-error": "Errore media player: \"{}\"", # Error line "unable-import-gui-error": "Non è possibile importare le librerie di interfaccia grafica. Hai bisogno di PySide per poter utilizzare l'interfaccia grafica.", + "unable-import-twisted-error": "Non è possibile importare Twisted. Si prega di installare Twisted v12.1. o superiore.", "arguments-missing-error": "Alcuni argomenti obbligatori non sono stati trovati. Fai riferimento a --help", diff --git a/syncplay/messages_ru.py b/syncplay/messages_ru.py index a94b54f..18eeebe 100755 --- a/syncplay/messages_ru.py +++ b/syncplay/messages_ru.py @@ -116,6 +116,7 @@ ru = { "empty-error": "{} не может быть пустым.", # Configuration "media-player-error": "Ошибка проигрывателя: \"{}\"", # Error line "unable-import-gui-error": "Невозможно импортировать библиотеки GUI (графического интерфейса). Необходимо установить PySide, иначе графический интерфейс не будет работать.", + "unable-import-twisted-error": "Could not import Twisted. Please install Twisted v12.1.0 or later.", #To do: translate "arguments-missing-error": "Некоторые необходимые аргументы отсутствуют, обратитесь к --help", diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py index c6896c6..aadc2e0 100755 --- a/syncplay/ui/ConfigurationGetter.py +++ b/syncplay/ui/ConfigurationGetter.py @@ -496,6 +496,11 @@ class ConfigurationGetter(object): import appnope appnope.nope() except ImportError: + try: + from twisted.trial import unittest + except: + print(getMessage("unable-import-twisted-error")) + sys.exit() print(getMessage("unable-import-gui-error")) self._config['noGui'] = True if self._config['file'] and self._config['file'][:2] == "--":