print some version and environment info on --verbose (+ py3 fixes)
authorFilippo Valsorda <filippo.valsorda@gmail.com>
Thu, 27 Dec 2012 00:45:40 +0000 (01:45 +0100)
committerFilippo Valsorda <filippo.valsorda@gmail.com>
Sun, 30 Dec 2012 18:50:33 +0000 (19:50 +0100)
README.md
youtube-dl
youtube_dl/__init__.py
youtube_dl/version.py

index 407b279704331ab291f4fe8698d9aec3d1d1c7f8..993aef49ea3872068b70cab7a9683035e1f3eda9 100644 (file)
--- a/README.md
+++ b/README.md
@@ -196,7 +196,7 @@ Bugs and suggestions should be reported at: <https://github.com/rg3/youtube-dl/i
 
 Please include:
 
-* Your exact command line, like `youtube-dl -t "http://www.youtube.com/watch?v=uHlDtZ6Oc3s&feature=channel_video_title"`. A common mistake is not to escape the `&`. Putting URLs in quotes should solve this problem.
+* Your exact command line, like `youtube-dl -t "http://www.youtube.com/watch?v=uHlDtZ6Oc3s&feature=channel_video_title"`. If possible re-run the command with `--verbose`, it is really helpful. A common mistake is not to escape the `&`. Putting URLs in quotes should solve this problem.
 * The output of `youtube-dl --version`
 * The output of `python --version`
 * The name and version of your Operating System ("Ubuntu 11.04 x64" or "Windows 7 x64" is usually enough).
index 9766d905e333fb79cc77856b41b6cad4a1cee463..e6f05c17327ed58f8db66e6dc7d2a38380355d61 100755 (executable)
@@ -64,7 +64,7 @@ if not 'signature' in versions_info:
     sys.exit(u'ERROR: the versions file is not signed or corrupted. Aborting.')
 signature = versions_info['signature']
 del versions_info['signature']
-if not rsa_verify(json.dumps(versions_info, sort_keys=True), signature, UPDATES_RSA_KEY):
+if not rsa_verify(json.dumps(versions_info, sort_keys=True).encode('utf-8'), signature, UPDATES_RSA_KEY):
     sys.exit(u'ERROR: the versions file signature is invalid. Aborting.')
 
 version = versions_info['versions'][versions_info['latest']]
index cc2f555b948908046c98e7ff7d8811daf1729973..092ff268cf2141256ac8e50c4d3483d79b97705a 100644 (file)
@@ -34,9 +34,10 @@ import socket
 import subprocess
 import sys
 import warnings
+import platform
 
 from .utils import *
-from .version import __version__
+from .version import __version__, __version_codename__
 from .FileDownloader import *
 from .InfoExtractors import *
 from .PostProcessor import *
@@ -81,7 +82,7 @@ def update_self(to_screen, verbose, filename):
         return
     signature = versions_info['signature']
     del versions_info['signature']
-    if not rsa_verify(json.dumps(versions_info, sort_keys=True), signature, UPDATES_RSA_KEY):
+    if not rsa_verify(json.dumps(versions_info, sort_keys=True).encode('utf-8'), signature, UPDATES_RSA_KEY):
         to_screen(u'ERROR: the versions file signature is invalid. Aborting.')
         return
 
@@ -602,6 +603,16 @@ def _real_main():
         })
 
     if opts.verbose:
+        fd.to_screen(u'[debug] youtube-dl version %s - %s' %(__version__, __version_codename__))
+        try:
+            sp = subprocess.Popen(['git', 'rev-parse', '--short', 'HEAD'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+            out, err = sp.communicate()
+            out = out.decode().strip()
+            if re.match('[0-9a-f]+', out):
+                fd.to_screen(u'[debug] Git HEAD: ' + out)
+        except:
+            pass
+        fd.to_screen(u'[debug] Python version %s - %s' %(platform.python_version(), platform.platform()))
         fd.to_screen(u'[debug] Proxy map: ' + str(proxy_handler.proxies))
 
     for extractor in extractors:
index d5986f5e64885aed3c8305c8cadac433df85701f..461a6785d4e1f01d0252e43d1c7bafbc665a8dd2 100644 (file)
@@ -1,2 +1,3 @@
 
 __version__ = '2012.12.11'
+__version_codename__ = ''