mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-04 04:57:07 -05:00 
			
		
		
		
	[compat] Work around kwargs bugs in old 2.6 Python releases (Fixes #3813)
This commit is contained in:
		@@ -288,6 +288,14 @@ if sys.version_info < (3, 0) and sys.platform == 'win32':
 | 
			
		||||
else:
 | 
			
		||||
    compat_getpass = getpass.getpass
 | 
			
		||||
 | 
			
		||||
# Old 2.6 and 2.7 releases require kwargs to be bytes
 | 
			
		||||
try:
 | 
			
		||||
    (lambda x: x)(**{'x': 0})
 | 
			
		||||
except TypeError:
 | 
			
		||||
    def compat_kwargs(kwargs):
 | 
			
		||||
        return dict((bytes(k), v) for k, v in kwargs.items())
 | 
			
		||||
else:
 | 
			
		||||
    compat_kwargs = lambda kwargs: kwargs
 | 
			
		||||
 | 
			
		||||
__all__ = [
 | 
			
		||||
    'compat_HTTPError',
 | 
			
		||||
@@ -299,6 +307,7 @@ __all__ = [
 | 
			
		||||
    'compat_html_entities',
 | 
			
		||||
    'compat_html_parser',
 | 
			
		||||
    'compat_http_client',
 | 
			
		||||
    'compat_kwargs',
 | 
			
		||||
    'compat_ord',
 | 
			
		||||
    'compat_parse_qs',
 | 
			
		||||
    'compat_print',
 | 
			
		||||
 
 | 
			
		||||
@@ -8,6 +8,7 @@ import sys
 | 
			
		||||
from .compat import (
 | 
			
		||||
    compat_expanduser,
 | 
			
		||||
    compat_getenv,
 | 
			
		||||
    compat_kwargs,
 | 
			
		||||
)
 | 
			
		||||
from .utils import (
 | 
			
		||||
    get_term_width,
 | 
			
		||||
@@ -112,7 +113,7 @@ def parseOpts(overrideArguments=None):
 | 
			
		||||
        'conflict_handler': 'resolve',
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    parser = optparse.OptionParser(**kw)
 | 
			
		||||
    parser = optparse.OptionParser(**compat_kwargs(kw))
 | 
			
		||||
 | 
			
		||||
    general = optparse.OptionGroup(parser, 'General Options')
 | 
			
		||||
    general.add_option(
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user