mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2025-03-09 12:50:23 -05:00
refactor: remove clear_plugins
This commit is contained in:
parent
4a544353af
commit
b4ba18f913
2 changed files with 0 additions and 39 deletions
|
@ -17,7 +17,6 @@
|
||||||
load_plugins,
|
load_plugins,
|
||||||
load_all_plugins,
|
load_all_plugins,
|
||||||
register_plugin_spec,
|
register_plugin_spec,
|
||||||
clear_plugins,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
from yt_dlp.globals import (
|
from yt_dlp.globals import (
|
||||||
|
@ -30,8 +29,6 @@
|
||||||
plugin_specs,
|
plugin_specs,
|
||||||
)
|
)
|
||||||
|
|
||||||
from yt_dlp.utils import YoutubeDLError
|
|
||||||
|
|
||||||
|
|
||||||
EXTRACTOR_PLUGIN_SPEC = PluginSpec(
|
EXTRACTOR_PLUGIN_SPEC = PluginSpec(
|
||||||
module_name='extractor',
|
module_name='extractor',
|
||||||
|
@ -236,29 +233,6 @@ def test_append_plugin_dirs(self):
|
||||||
self.assertIn(f'{PACKAGE_NAME}.extractor.package', sys.modules.keys())
|
self.assertIn(f'{PACKAGE_NAME}.extractor.package', sys.modules.keys())
|
||||||
self.assertIn('PackagePluginIE', plugin_ies.value)
|
self.assertIn('PackagePluginIE', plugin_ies.value)
|
||||||
|
|
||||||
def test_clear_plugins(self):
|
|
||||||
clear_plugins()
|
|
||||||
ies = load_plugins(EXTRACTOR_PLUGIN_SPEC)
|
|
||||||
self.assertEqual(ies, {})
|
|
||||||
self.assertNotIn(f'{PACKAGE_NAME}.extractor.normal', sys.modules.keys())
|
|
||||||
self.assertNotIn('NormalPluginIE', plugin_ies.value)
|
|
||||||
|
|
||||||
pps = load_plugins(POSTPROCESSOR_PLUGIN_SPEC)
|
|
||||||
self.assertEqual(pps, {})
|
|
||||||
self.assertNotIn(f'{PACKAGE_NAME}.postprocessor.normal', sys.modules.keys())
|
|
||||||
self.assertNotIn('NormalPluginPP', plugin_pps.value)
|
|
||||||
|
|
||||||
def test_clear_plugins_already_loaded(self):
|
|
||||||
register_plugin_spec(EXTRACTOR_PLUGIN_SPEC)
|
|
||||||
register_plugin_spec(POSTPROCESSOR_PLUGIN_SPEC)
|
|
||||||
load_all_plugins()
|
|
||||||
|
|
||||||
with self.assertRaises(YoutubeDLError):
|
|
||||||
clear_plugins()
|
|
||||||
|
|
||||||
ies = load_plugins(EXTRACTOR_PLUGIN_SPEC)
|
|
||||||
self.assertIn('NormalPluginIE', ies)
|
|
||||||
|
|
||||||
def test_get_plugin_spec(self):
|
def test_get_plugin_spec(self):
|
||||||
register_plugin_spec(EXTRACTOR_PLUGIN_SPEC)
|
register_plugin_spec(EXTRACTOR_PLUGIN_SPEC)
|
||||||
register_plugin_spec(POSTPROCESSOR_PLUGIN_SPEC)
|
register_plugin_spec(POSTPROCESSOR_PLUGIN_SPEC)
|
||||||
|
|
|
@ -23,7 +23,6 @@
|
||||||
)
|
)
|
||||||
|
|
||||||
from .utils import (
|
from .utils import (
|
||||||
YoutubeDLError,
|
|
||||||
get_executable_path,
|
get_executable_path,
|
||||||
get_system_config_dirs,
|
get_system_config_dirs,
|
||||||
get_user_config_dirs,
|
get_user_config_dirs,
|
||||||
|
@ -45,7 +44,6 @@
|
||||||
'COMPAT_PACKAGE_NAME',
|
'COMPAT_PACKAGE_NAME',
|
||||||
'PACKAGE_NAME',
|
'PACKAGE_NAME',
|
||||||
'PluginSpec',
|
'PluginSpec',
|
||||||
'clear_plugins',
|
|
||||||
'directories',
|
'directories',
|
||||||
'load_all_plugins',
|
'load_all_plugins',
|
||||||
'load_plugins',
|
'load_plugins',
|
||||||
|
@ -255,14 +253,3 @@ def register_plugin_spec(plugin_spec: PluginSpec):
|
||||||
if plugin_spec.module_name not in plugin_specs.value:
|
if plugin_spec.module_name not in plugin_specs.value:
|
||||||
plugin_specs.value[plugin_spec.module_name] = plugin_spec
|
plugin_specs.value[plugin_spec.module_name] = plugin_spec
|
||||||
sys.meta_path.insert(0, PluginFinder(f'{PACKAGE_NAME}.{plugin_spec.module_name}'))
|
sys.meta_path.insert(0, PluginFinder(f'{PACKAGE_NAME}.{plugin_spec.module_name}'))
|
||||||
|
|
||||||
|
|
||||||
def clear_plugins():
|
|
||||||
if (
|
|
||||||
all_plugins_loaded.value
|
|
||||||
or any(plugin_spec.plugin_destination.value for plugin_spec in plugin_specs.value.values())
|
|
||||||
):
|
|
||||||
# note: we can't detect all cases when plugins are loaded (e.g. if spec isn't registered)
|
|
||||||
raise YoutubeDLError('Plugins have already been loaded. Cannot clear plugins after loading plugins.')
|
|
||||||
|
|
||||||
plugin_dirs.value = []
|
|
||||||
|
|
Loading…
Reference in a new issue