[tor-commits] [doctor/master] Note in table when unable to retrieve version

atagar at torproject.org atagar at torproject.org
Mon Dec 18 19:03:59 UTC 2017


commit eb4038354fa5242aea3910cbe88bbee35d406df8
Author: Damian Johnson <atagar at torproject.org>
Date:   Sat Dec 16 18:38:10 2017 -0800

    Note in table when unable to retrieve version
    
    When we exhausted retries we stacktrace. Better to say what's up in the table
    instead.
---
 package_versions.py | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/package_versions.py b/package_versions.py
index e7030db..2ea5883 100755
--- a/package_versions.py
+++ b/package_versions.py
@@ -10,7 +10,6 @@ Checks for outdated versions on the packages wiki...
 
 import collections
 import re
-import ssl
 import urllib2
 
 DEBIAN_VERSION = '<h1>Package: \S+ \(([0-9\.]+).*\)'
@@ -87,22 +86,27 @@ if __name__ == '__main__':
     print(DIV)
 
     for package in packages:
+      request, request_exc = None, None
+
       for i in range(3):
         try:
           request = urllib2.urlopen(package.url, timeout = 5).read()
           break
-        except (urllib2.HTTPError, ssl.SSLError):
-          pass
+        except Exception as exc:
+          request_exc = exc  # note exception and retry
 
-      match = re.search(package.regex, request)
-      current_version = match.group(1) if match else None
+      if request:
+        match = re.search(package.regex, request)
+        current_version = match.group(1) if match else None
 
-      if not current_version:
-        msg = 'unable to determine current version'
-      elif current_version == package.version:
-        msg = 'up to date'
+        if not current_version:
+          msg = 'unable to determine current version'
+        elif current_version == package.version:
+          msg = 'up to date'
+        else:
+          msg = 'current version is %s but wiki has %s' % (current_version, package.version)
       else:
-        msg = 'current version is %s but wiki has %s' % (current_version, package.version)
+        msg = 'unable to retrieve current version: %s' % request_exc
 
       print(COLUMN % (project, package.platform, package.version, msg))
 





More information about the tor-commits mailing list