diff --git a/couchpotato/core/loader.py b/couchpotato/core/loader.py index 36f5fca..b179f91 100644 --- a/couchpotato/core/loader.py +++ b/couchpotato/core/loader.py @@ -6,20 +6,20 @@ import traceback log = CPLog(__name__) -class Loader(object): +class Loader(object): plugins = {} providers = {} modules = {} - def addPath(self, root, base_path, priority, recursive=False): + def addPath(self, root, base_path, priority, recursive = False): for filename in os.listdir(os.path.join(root, *base_path)): path = os.path.join(os.path.join(root, *base_path), filename) if os.path.isdir(path) and filename[:2] != '__': if not u'__init__.py' in os.listdir(path): return - new_base_path = ''.join(s + '.' for s in base_path) + filename - self.paths[new_base_path.replace('.', '_')] = (priority, new_base_path, path) + new_base_path = ''.join(s + '.' for s in base_path) + filename + self.paths[new_base_path.replace('.', '_')] = (priority, new_base_path, path) if recursive: self.addPath(root, base_path + [filename], priority, recursive = True) @@ -98,14 +98,16 @@ class Loader(object): for cur_file in glob.glob(os.path.join(dir_name, '*')): name = os.path.basename(cur_file) - if os.path.isdir(os.path.join(dir_name, name)): + if os.path.isdir(os.path.join(dir_name, name)) and name != 'static': module_name = '%s.%s' % (module, name) self.addModule(priority, plugin_type, module_name, name) def loadSettings(self, module, name, save = True): + if not hasattr(module, 'config'): - log.warning('Skip loading settings for plugin %s as it has no config section' % module.__file__) + log.debug('Skip loading settings for plugin %s as it has no config section' % module.__file__) return False + try: for section in module.config: fireEvent('settings.options', section['name'], section) @@ -120,8 +122,9 @@ class Loader(object): return False def loadPlugins(self, module, name): + if not hasattr(module, 'start'): - log.warning('Skip startup for plugin %s as it has no start section' % module.__file__) + log.debug('Skip startup for plugin %s as it has no start section' % module.__file__) return False try: module.start() @@ -150,7 +153,7 @@ class Loader(object): m = getattr(m, sub) return m except ImportError: - log.warning("Skip loading module plugin '%s' as it seems not to be a module." % name) + log.debug('Skip loading module plugin %s: %s', (name, traceback.format_exc())) return None except: raise diff --git a/couchpotato/core/media/_base/library/__init__.py b/couchpotato/core/media/_base/library/__init__.py index 588a42d..553eff5 100644 --- a/couchpotato/core/media/_base/library/__init__.py +++ b/couchpotato/core/media/_base/library/__init__.py @@ -1,5 +1,4 @@ from couchpotato.core.event import addEvent -from couchpotato.core.logger import CPLog from couchpotato.core.plugins.base import Plugin diff --git a/couchpotato/core/providers/torrent/sceneaccess/main.py b/couchpotato/core/providers/torrent/sceneaccess/main.py index 166ded0..f3c6ebd 100644 --- a/couchpotato/core/providers/torrent/sceneaccess/main.py +++ b/couchpotato/core/providers/torrent/sceneaccess/main.py @@ -3,7 +3,7 @@ from couchpotato.core.helpers.encoding import tryUrlencode, toUnicode from couchpotato.core.helpers.variable import tryInt from couchpotato.core.logger import CPLog from couchpotato.core.providers.base import MultiProvider -from couchpotato.core.providers.movie.base import MovieProvider +from couchpotato.core.providers.info.base import MovieProvider from couchpotato.core.providers.torrent.base import TorrentProvider import traceback