mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-12-12 14:22:34 +00:00
parent
2f97cc615b
commit
0b9c08b47b
3 changed files with 19 additions and 3 deletions
12
yt_dlp/compat/functools.py
Normal file
12
yt_dlp/compat/functools.py
Normal file
|
@ -0,0 +1,12 @@
|
|||
# flake8: noqa: F405
|
||||
from functools import * # noqa: F403
|
||||
|
||||
from .compat_utils import passthrough_module
|
||||
|
||||
passthrough_module(__name__, 'functools')
|
||||
del passthrough_module
|
||||
|
||||
try:
|
||||
cache # >= 3.9
|
||||
except NameError:
|
||||
cache = lru_cache(maxsize=None)
|
|
@ -7,11 +7,12 @@ import sys
|
|||
import traceback
|
||||
from zipimport import zipimporter
|
||||
|
||||
from .compat import compat_realpath
|
||||
from .compat import compat_realpath, functools
|
||||
from .utils import Popen, encode_compat_str, write_string
|
||||
from .version import __version__
|
||||
|
||||
|
||||
@functools.cache
|
||||
def detect_variant():
|
||||
if hasattr(sys, 'frozen'):
|
||||
prefix = 'mac' if sys.platform == 'darwin' else 'win'
|
||||
|
|
|
@ -11,7 +11,6 @@ import datetime
|
|||
import email.header
|
||||
import email.utils
|
||||
import errno
|
||||
import functools
|
||||
import gzip
|
||||
import hashlib
|
||||
import hmac
|
||||
|
@ -39,8 +38,8 @@ import urllib.parse
|
|||
import xml.etree.ElementTree
|
||||
import zlib
|
||||
|
||||
from .compat import asyncio, functools # Modules
|
||||
from .compat import (
|
||||
asyncio,
|
||||
compat_chr,
|
||||
compat_cookiejar,
|
||||
compat_etree_fromstring,
|
||||
|
@ -248,6 +247,7 @@ JSON_LD_RE = r'(?is)<script[^>]+type=(["\']?)application/ld\+json\1[^>]*>(?P<jso
|
|||
NUMBER_RE = r'\d+(?:\.\d+)?'
|
||||
|
||||
|
||||
@functools.cache
|
||||
def preferredencoding():
|
||||
"""Get preferred encoding.
|
||||
|
||||
|
@ -1883,6 +1883,7 @@ def platform_name():
|
|||
return res
|
||||
|
||||
|
||||
@functools.cache
|
||||
def get_windows_version():
|
||||
''' Get Windows version. None if it's not running on Windows '''
|
||||
if compat_os_name == 'nt':
|
||||
|
@ -2079,6 +2080,7 @@ class locked_file:
|
|||
return iter(self.f)
|
||||
|
||||
|
||||
@functools.cache
|
||||
def get_filesystem_encoding():
|
||||
encoding = sys.getfilesystemencoding()
|
||||
return encoding if encoding is not None else 'utf-8'
|
||||
|
@ -5092,6 +5094,7 @@ def jwt_decode_hs256(jwt):
|
|||
return payload_data
|
||||
|
||||
|
||||
@functools.cache
|
||||
def supports_terminal_sequences(stream):
|
||||
if compat_os_name == 'nt':
|
||||
from .compat import WINDOWS_VT_MODE # Must be imported locally
|
||||
|
|
Loading…
Reference in a new issue