From: dirkf Date: Fri, 26 Aug 2022 09:17:56 +0000 (+0100) Subject: [compat] Replace deficient ChainMap class in Py3.3 and earlier X-Git-Url: http://git.oshgnacknak.de/?a=commitdiff_plain;h=0f6422590e44e99e9b81cf2367666efe89fae3aa;p=youtube-dl [compat] Replace deficient ChainMap class in Py3.3 and earlier --- diff --git a/youtube_dl/compat.py b/youtube_dl/compat.py index 3002109ca..366a93924 100644 --- a/youtube_dl/compat.py +++ b/youtube_dl/compat.py @@ -3004,8 +3004,11 @@ except ImportError: # new class in collections try: from collections import ChainMap as compat_collections_chain_map + # Py3.3's ChainMap is deficient + if sys.version_info <= (3, 3): + raise ImportError except ImportError: - # Py < 3.3 + # Py <= 3.3 class compat_collections_chain_map(compat_collections_abc.MutableMapping): maps = [{}] @@ -3060,6 +3063,7 @@ except ImportError: def parents(self): return compat_collections_chain_map(*(self.maps[1:])) + # Pythons disagree on the type of a pattern (RegexObject, _sre.SRE_Pattern, Pattern, ...?) compat_re_Pattern = type(re.compile(''))