From c1fe7df02d3bb835b5b0f3b8cda6b543b405dbac Mon Sep 17 00:00:00 2001 From: Bas Stottelaar Date: Thu, 27 Nov 2014 02:05:45 +0100 Subject: [PATCH 1/2] Catch SSL errors which probably relate to self-signed certificates --- headphones/request.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/headphones/request.py b/headphones/request.py index 165e8227..22ba09bf 100644 --- a/headphones/request.py +++ b/headphones/request.py @@ -75,6 +75,10 @@ def request_response(url, method="get", auto_raise=True, response.raise_for_status() return response + except requests.exceptions.SSLError: + logger.error("Unable to connect to remote host because of a SSL " \ + "error. It's likely the remote certificate is untrusted by your " \ + "system. This check can be disabled (advanced users only).") except requests.ConnectionError: logger.error( "Unable to connect to remote host. Check if the remote " From 38529e6809ef1a0c746c9a09c183c3ec2bc17abc Mon Sep 17 00:00:00 2001 From: Bas Stottelaar Date: Thu, 27 Nov 2014 01:50:32 +0100 Subject: [PATCH 2/2] Log exact write check error to log (debug) --- headphones/postprocessor.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/headphones/postprocessor.py b/headphones/postprocessor.py index cd95d5be..238703da 100755 --- a/headphones/postprocessor.py +++ b/headphones/postprocessor.py @@ -329,9 +329,10 @@ def doPostProcessing(albumid, albumpath, release, tracks, downloaded_track_list, headphones.CONFIG.MOVE_FILES: try: - with open(downloaded_track, "a+b"): - pass - except IOError: + with open(downloaded_track, "a+b") as fp: + fp.seek(0) + except IOError as e: + logger.debug("Write check exact error: %s", e) logger.error("Track file is not writeable. This is required " \ "for some post processing steps: %s. Not continuing.", downloaded_track.decode(headphones.SYS_ENCODING, "replace"))