mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2025-03-09 12:50:23 -05:00
Rename --no-plugins to --no-plugin-dirs
This commit is contained in:
parent
eb6cba8eb9
commit
b6c3d22dec
5 changed files with 25 additions and 17 deletions
|
@ -337,8 +337,12 @@ ## General Options:
|
|||
configuration files
|
||||
--plugin-dirs PATH Path to an additional directory to search
|
||||
for plugins. This option can be used
|
||||
multiple times to add multiple directories
|
||||
--no-plugins Disable plugin loading
|
||||
multiple times to add multiple directories.
|
||||
Use "default" to search the default plugin
|
||||
directories (default)
|
||||
--no-plugin-dirs Clear plugin directories to search,
|
||||
including defaults and those provided by
|
||||
previous --plugin-dirs
|
||||
--flat-playlist Do not extract a playlist's URL result
|
||||
entries; some entry metadata may be missing
|
||||
and downloading may be bypassed
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
load_plugins,
|
||||
load_all_plugins,
|
||||
register_plugin_spec,
|
||||
disable_plugins,
|
||||
clear_plugins,
|
||||
)
|
||||
|
||||
from yt_dlp.globals import (
|
||||
|
@ -236,8 +236,8 @@ def test_append_plugin_dirs(self):
|
|||
self.assertIn(f'{PACKAGE_NAME}.extractor.package', sys.modules.keys())
|
||||
self.assertIn('PackagePluginIE', plugin_ies.value)
|
||||
|
||||
def test_disable_plugins(self):
|
||||
disable_plugins()
|
||||
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())
|
||||
|
@ -248,13 +248,13 @@ def test_disable_plugins(self):
|
|||
self.assertNotIn(f'{PACKAGE_NAME}.postprocessor.normal', sys.modules.keys())
|
||||
self.assertNotIn('NormalPluginPP', plugin_pps.value)
|
||||
|
||||
def test_disable_plugins_already_loaded(self):
|
||||
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):
|
||||
disable_plugins()
|
||||
clear_plugins()
|
||||
|
||||
ies = load_plugins(EXTRACTOR_PLUGIN_SPEC)
|
||||
self.assertIn('NormalPluginIE', ies)
|
||||
|
|
|
@ -4095,12 +4095,15 @@ def get_encoding(stream):
|
|||
continue
|
||||
write_debug(f'{plugin_type} Plugins: {", ".join(sorted(display_list))}')
|
||||
|
||||
plugin_dirs_msg = 'none'
|
||||
if not plugin_dirs.value:
|
||||
write_debug('Plugins are disabled')
|
||||
plugin_dirs_msg = 'none (disabled)'
|
||||
else:
|
||||
loaded_plugin_directories = plugin_directories()
|
||||
if loaded_plugin_directories:
|
||||
write_debug(f'Plugin directories: {loaded_plugin_directories}')
|
||||
found_plugin_directories = plugin_directories()
|
||||
if found_plugin_directories:
|
||||
plugin_dirs_msg = ', '.join(found_plugin_directories)
|
||||
|
||||
write_debug(f'Plugin directories: {plugin_dirs_msg}')
|
||||
|
||||
@functools.cached_property
|
||||
def proxies(self):
|
||||
|
|
|
@ -416,13 +416,14 @@ def _alias_callback(option, opt_str, value, parser, opts, nargs):
|
|||
default=['default'],
|
||||
help=(
|
||||
'Path to an additional directory to search for plugins. '
|
||||
'This option can be used multiple times to add multiple directories'))
|
||||
'This option can be used multiple times to add multiple directories. '
|
||||
'Use "default" to search the default plugin directories (default)'))
|
||||
general.add_option(
|
||||
'--no-plugins',
|
||||
'--no-plugin-dirs',
|
||||
dest='plugin_dirs',
|
||||
action='store_const',
|
||||
const=[],
|
||||
help='Disable plugin loading')
|
||||
help='Clear plugin directories to search, including defaults and those provided by previous --plugin-dirs')
|
||||
general.add_option(
|
||||
'--flat-playlist',
|
||||
action='store_const', dest='extract_flat', const='in_playlist', default=False,
|
||||
|
|
|
@ -44,8 +44,8 @@
|
|||
__all__ = [
|
||||
'COMPAT_PACKAGE_NAME',
|
||||
'PACKAGE_NAME',
|
||||
'clear_plugins',
|
||||
'directories',
|
||||
'disable_plugins',
|
||||
'load_all_plugins',
|
||||
'load_plugins',
|
||||
'register_plugin_spec',
|
||||
|
@ -258,12 +258,12 @@ def register_plugin_spec(plugin_spec: PluginSpec):
|
|||
sys.meta_path.insert(0, PluginFinder(f'{PACKAGE_NAME}.{plugin_spec.module_name}'))
|
||||
|
||||
|
||||
def disable_plugins():
|
||||
def clear_plugins():
|
||||
if (
|
||||
all_plugins_loaded.value
|
||||
or any(len(plugin_spec.plugin_destination.value) != 0 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 disable plugins after loading plugins.')
|
||||
raise YoutubeDLError('Plugins have already been loaded. Cannot clear plugins after loading plugins.')
|
||||
|
||||
plugin_dirs.value = []
|
||||
|
|
Loading…
Reference in a new issue