Source code for flexget.plugins.operate.verbose_details

from loguru import logger

from flexget import plugin
from flexget.event import event

logger = logger.bind(name='details')


[docs] class PluginDetails:
[docs] def on_task_start(self, task, config): # Make a flag for tasks to declare if it is ok not to produce entries task.no_entries_ok = False
[docs] @plugin.priority(-512) def on_task_input(self, task, config): if not task.entries: if task.no_entries_ok: logger.verbose("Task didn't produce any entries.") else: logger.warning( "Task didn't produce any entries. " 'This is likely due to a misconfigured or non-functional input.' ) else: logger.verbose('Produced {} entries.', len(task.entries))
[docs] @plugin.priority(-512) def on_task_download(self, task, config): # Needs to happen as the first in download, so it runs after urlrewrites # and IMDB queue acceptance. logger.verbose( 'Summary - Accepted: {} (Rejected: {} Undecided: {} Failed: {})', len(task.accepted), len(task.rejected), len(task.undecided), len(task.failed), )
[docs] class NoEntriesOk: """Allows manually silencing the warning message for tasks that regularly produce no entries.""" schema = {'type': 'boolean'} # Run after details plugin task_start
[docs] @plugin.priority(127) def on_task_start(self, task, config): task.no_entries_ok = config
[docs] @event('plugin.register') def register_plugin(): plugin.register(PluginDetails, 'details', builtin=True, api_ver=2) plugin.register(NoEntriesOk, 'no_entries_ok', api_ver=2)