From 72a02e087cef1acd5d100097f6cf313eb05a7692 Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Wed, 9 Dec 2020 15:14:08 +0100 Subject: [PATCH] Update optional pydrive requirement Bugfix cover url download for Wand insted of Pillow Fix for gdrive with unknown certificates --- cps/gdriveutils.py | 3 ++- cps/helper.py | 7 ++++--- optional-requirements.txt | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/cps/gdriveutils.py b/cps/gdriveutils.py index 7a86e020..e35cc876 100644 --- a/cps/gdriveutils.py +++ b/cps/gdriveutils.py @@ -21,6 +21,7 @@ import os import json import shutil import chardet +import ssl from flask import Response, stream_with_context from sqlalchemy import create_engine @@ -216,7 +217,7 @@ def listRootFolders(): drive = getDrive(Gdrive.Instance().drive) folder = "'root' in parents and mimeType = 'application/vnd.google-apps.folder' and trashed = false" fileList = drive.ListFile({'q': folder}).GetList() - except ServerNotFoundError as e: + except (ServerNotFoundError, ssl.SSLError) as e: log.info("GDrive Error %s" % e) fileList = [] return fileList diff --git a/cps/helper.py b/cps/helper.py index fdc51d6b..e5197fb0 100644 --- a/cps/helper.py +++ b/cps/helper.py @@ -63,6 +63,7 @@ log = logger.create() try: from wand.image import Image + from wand.exceptions import MissingDelegateError use_IM = True except (ImportError, RuntimeError) as e: log.debug('Cannot import Image, generating covers from non jpg files will not work: %s', e) @@ -585,9 +586,9 @@ def save_cover_from_url(url, book_path): requests.exceptions.Timeout) as ex: log.info(u'Cover Download Error %s', ex) return False, _("Error Downloading Cover") -# except UnidentifiedImageError as ex: -# log.info(u'File Format Error %s', ex) -# return False, _("Cover Format Error") + except MissingDelegateError as ex: + log.info(u'File Format Error %s', ex) + return False, _("Cover Format Error") def save_cover_from_filestorage(filepath, saved_filename, img): diff --git a/optional-requirements.txt b/optional-requirements.txt index 60dc726f..acb99c76 100644 --- a/optional-requirements.txt +++ b/optional-requirements.txt @@ -7,7 +7,7 @@ oauth2client>=4.0.0,<4.1.4 uritemplate>=3.0.0,<3.1.0 pyasn1-modules>=0.0.8,<0.3.0 pyasn1>=0.1.9,<0.5.0 -PyDrive>=1.3.1,<1.4.0 +PyDrive2>=1.3.1,<1.8.0 PyYAML>=3.12 rsa==3.4.2,<4.1.0 six>=1.10.0,<1.15.0