[workflows/ci.yml] Restore test support for Py 3.2

This commit is contained in:
dirkf
2023-06-29 15:27:12 +01:00
parent 58fc5bde47
commit 2500300c2a
6 changed files with 328 additions and 30 deletions

View File

@@ -5,7 +5,6 @@ from __future__ import unicode_literals
__license__ = 'Public Domain'
import codecs
import io
import os
import random
@@ -17,6 +16,7 @@ from .options import (
)
from .compat import (
compat_getpass,
compat_register_utf8,
compat_shlex_split,
workaround_optparse_bug9161,
)
@@ -46,10 +46,8 @@ from .YoutubeDL import YoutubeDL
def _real_main(argv=None):
# Compatibility fixes for Windows
if sys.platform == 'win32':
# https://github.com/ytdl-org/youtube-dl/issues/820
codecs.register(lambda name: codecs.lookup('utf-8') if name == 'cp65001' else None)
# Compatibility fix for Windows
compat_register_utf8()
workaround_optparse_bug9161()

View File

@@ -31,13 +31,17 @@ try:
compat_str, compat_basestring, compat_chr = (
unicode, basestring, unichr
)
from .casefold import casefold as compat_casefold
except NameError:
compat_str, compat_basestring, compat_chr = (
str, str, chr
)
# casefold
try:
compat_str.casefold
compat_casefold = lambda s: s.casefold()
except AttributeError:
from .casefold import casefold as compat_casefold
try:
import collections.abc as compat_collections_abc
@@ -3137,6 +3141,15 @@ else:
compat_open = open
# compat_register_utf8
def compat_register_utf8():
if sys.platform == 'win32':
# https://github.com/ytdl-org/youtube-dl/issues/820
from codecs import register, lookup
register(
lambda name: lookup('utf-8') if name == 'cp65001' else None)
legacy = [
'compat_HTMLParseError',
'compat_HTMLParser',
@@ -3203,6 +3216,7 @@ __all__ = [
'compat_print',
'compat_re_Match',
'compat_re_Pattern',
'compat_register_utf8',
'compat_setenv',
'compat_shlex_quote',
'compat_shlex_split',