diff options
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | youtube_dl/__init__.py | 21 | ||||
| -rw-r--r-- | youtube_dl/utils.py | 6 | ||||
| -rw-r--r-- | youtube_dl/version.py | 1 | 
4 files changed, 18 insertions, 12 deletions
| @@ -43,7 +43,7 @@ youtube-dl.bash-completion: youtube_dl/*.py devscripts/bash-completion.in  	python devscripts/bash-completion.py  youtube-dl.tar.gz: all -	tar -czf youtube-dl.tar.gz -s "|^./|./youtube-dl/|" \ +	tar -czf youtube-dl.tar.gz -s "|^./|./youtube-dl/|" --exclude="updates_key.pem" \  		--exclude="*.pyc" --exclude="*.pyo" --exclude="*~" --exclude="youtube-dl.exe" \  		--exclude="wine-py2exe/" --exclude="py2exe.log" --exclude="*.kate-swp" \  		--exclude="build/" --exclude="dist/" --exclude="MANIFEST" --exclude=".git/" . diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index 092ff268c..4eb4101d2 100644 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -37,7 +37,7 @@ import warnings  import platform  from .utils import * -from .version import __version__, __version_codename__ +from .version import __version__  from .FileDownloader import *  from .InfoExtractors import *  from .PostProcessor import * @@ -62,7 +62,7 @@ def update_self(to_screen, verbose, filename):      try:          newversion = compat_urllib_request.urlopen(VERSION_URL).read().decode('utf-8').strip()      except: -        if verbose: to_screen(traceback.format_exc().decode()) +        if verbose: to_screen(enforce_unicode(traceback.format_exc()))          to_screen(u'ERROR: can\'t find the current version. Please try again later.')          return      if newversion == __version__: @@ -74,7 +74,7 @@ def update_self(to_screen, verbose, filename):          versions_info = compat_urllib_request.urlopen(JSON_URL).read().decode('utf-8')          versions_info = json.loads(versions_info)      except: -        if verbose: to_screen(traceback.format_exc().decode()) +        if verbose: to_screen(enforce_unicode(traceback.format_exc()))          to_screen(u'ERROR: can\'t obtain versions info. Please try again later.')          return      if not 'signature' in versions_info: @@ -110,7 +110,7 @@ def update_self(to_screen, verbose, filename):              newcontent = urlh.read()              urlh.close()          except (IOError, OSError) as err: -            if verbose: to_screen(traceback.format_exc().decode()) +            if verbose: to_screen(enforce_unicode(traceback.format_exc()))              to_screen(u'ERROR: unable to download latest version')              return @@ -123,7 +123,7 @@ def update_self(to_screen, verbose, filename):              with open(exe + '.new', 'wb') as outf:                  outf.write(newcontent)          except (IOError, OSError) as err: -            if verbose: to_screen(traceback.format_exc().decode()) +            if verbose: to_screen(enforce_unicode(traceback.format_exc()))              to_screen(u'ERROR: unable to write the new version')              return @@ -140,7 +140,7 @@ del "%s"              os.startfile(bat)          except (IOError, OSError) as err: -            if verbose: to_screen(traceback.format_exc().decode()) +            if verbose: to_screen(enforce_unicode(traceback.format_exc()))              to_screen(u'ERROR: unable to overwrite current version')              return @@ -151,7 +151,7 @@ del "%s"              newcontent = urlh.read()              urlh.close()          except (IOError, OSError) as err: -            if verbose: to_screen(traceback.format_exc().decode()) +            if verbose: to_screen(enforce_unicode(traceback.format_exc()))              to_screen(u'ERROR: unable to download latest version')              return @@ -164,7 +164,7 @@ del "%s"              with open(filename, 'wb') as outf:                  outf.write(newcontent)          except (IOError, OSError) as err: -            if verbose: to_screen(traceback.format_exc().decode()) +            if verbose: to_screen(enforce_unicode(traceback.format_exc()))              to_screen(u'ERROR: unable to overwrite current version')              return @@ -603,9 +603,10 @@ def _real_main():          })      if opts.verbose: -        fd.to_screen(u'[debug] youtube-dl version %s - %s' %(__version__, __version_codename__)) +        fd.to_screen(u'[debug] youtube-dl version ' + __version__)          try: -            sp = subprocess.Popen(['git', 'rev-parse', '--short', 'HEAD'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) +            sp = subprocess.Popen(['git', 'rev-parse', '--short', 'HEAD'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, +                                  cwd=os.path.dirname(os.path.abspath(__file__)))              out, err = sp.communicate()              out = out.decode().strip()              if re.match('[0-9a-f]+', out): diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index 7d6041929..9784abb24 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -154,6 +154,7 @@ std_headers = {      'Accept-Encoding': 'gzip, deflate',      'Accept-Language': 'en-us,en;q=0.5',  } +  def preferredencoding():      """Get preferred encoding. @@ -187,6 +188,11 @@ else:          with open(fn, 'w', encoding='utf-8') as f:              json.dump(obj, f) +# Some library functions return bytestring on 2.X and unicode on 3.X +def enforce_unicode(s, encoding='utf-8'): +    if type(s) != type(u''): +        return s.decode(encoding) +    return s  def htmlentity_transform(matchobj):      """Transforms an HTML entity to a character. diff --git a/youtube_dl/version.py b/youtube_dl/version.py index 461a6785d..d5986f5e6 100644 --- a/youtube_dl/version.py +++ b/youtube_dl/version.py @@ -1,3 +1,2 @@  __version__ = '2012.12.11' -__version_codename__ = '' | 
