mirror of
https://github.com/clinton-hall/nzbToMedia.git
synced 2025-08-20 21:33:13 -07:00
Add Python 3.12 and fix Radarr handling (#1989)
* Added Python3.12 and future 3.13 * Fix Radarr result handling * remove py2.7 and py3.7 support
This commit is contained in:
parent
b802aca7e1
commit
f98d6fff65
173 changed files with 17498 additions and 21001 deletions
47
libs/common/setuptools/extern/__init__.py
vendored
47
libs/common/setuptools/extern/__init__.py
vendored
|
@ -1,3 +1,4 @@
|
|||
import importlib.util
|
||||
import sys
|
||||
|
||||
|
||||
|
@ -20,17 +21,10 @@ class VendorImporter:
|
|||
yield self.vendor_pkg + '.'
|
||||
yield ''
|
||||
|
||||
def find_module(self, fullname, path=None):
|
||||
"""
|
||||
Return self when fullname starts with root_name and the
|
||||
target module is one vendored through this importer.
|
||||
"""
|
||||
def _module_matches_namespace(self, fullname):
|
||||
"""Figure out if the target module is vendored."""
|
||||
root, base, target = fullname.partition(self.root_name + '.')
|
||||
if root:
|
||||
return
|
||||
if not any(map(target.startswith, self.vendored_names)):
|
||||
return
|
||||
return self
|
||||
return not root and any(map(target.startswith, self.vendored_names))
|
||||
|
||||
def load_module(self, fullname):
|
||||
"""
|
||||
|
@ -43,13 +37,6 @@ class VendorImporter:
|
|||
__import__(extant)
|
||||
mod = sys.modules[extant]
|
||||
sys.modules[fullname] = mod
|
||||
# mysterious hack:
|
||||
# Remove the reference to the extant package/module
|
||||
# on later Python versions to cause relative imports
|
||||
# in the vendor package to resolve the same modules
|
||||
# as those going through this importer.
|
||||
if sys.version_info >= (3, ):
|
||||
del sys.modules[extant]
|
||||
return mod
|
||||
except ImportError:
|
||||
pass
|
||||
|
@ -61,6 +48,20 @@ class VendorImporter:
|
|||
"distribution.".format(**locals())
|
||||
)
|
||||
|
||||
def create_module(self, spec):
|
||||
return self.load_module(spec.name)
|
||||
|
||||
def exec_module(self, module):
|
||||
pass
|
||||
|
||||
def find_spec(self, fullname, path=None, target=None):
|
||||
"""Return a module spec for vendored names."""
|
||||
return (
|
||||
importlib.util.spec_from_loader(fullname, self)
|
||||
if self._module_matches_namespace(fullname)
|
||||
else None
|
||||
)
|
||||
|
||||
def install(self):
|
||||
"""
|
||||
Install this importer into sys.meta_path if not already present.
|
||||
|
@ -69,5 +70,15 @@ class VendorImporter:
|
|||
sys.meta_path.append(self)
|
||||
|
||||
|
||||
names = 'six', 'packaging', 'pyparsing', 'ordered_set',
|
||||
names = (
|
||||
'packaging',
|
||||
'ordered_set',
|
||||
'more_itertools',
|
||||
'importlib_metadata',
|
||||
'zipp',
|
||||
'importlib_resources',
|
||||
'jaraco',
|
||||
'typing_extensions',
|
||||
'tomli',
|
||||
)
|
||||
VendorImporter(__name__, names, 'setuptools._vendor').install()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue