# -*- coding: utf-8 -*-
-# Copyright (c) 2013, 2014, 2015 Jack Kaliko <kaliko@azylum.org>
+# Copyright (c) 2013, 2014, 2015, 2020 kaliko <kaliko@azylum.org>
#
# This file is part of sima
#
# local import
from . import core, info
from .lib.logger import set_logger
-from .lib.meta import Meta
from .lib.simadb import SimaDB
from .utils.config import ConfMan
from .utils.startopt import StartOpt
-from .utils.utils import exception_log, SigHup
+from .utils.utils import exception_log, SigHup, MPDSimaException
# core plugins
from .plugins.core.history import History
from .plugins.core.mpdoptions import MpdOptions
core_plugins = [History, MpdOptions]
config['sima']['musicbrainzid'] = 'False'
for cplgn in core_plugins:
- logger.debug('Register core {name} ({doc})'.format(**cplgn.info()))
+ logger.debug('Register core %(name)s (%(doc)s)', cplgn.info())
sima.register_core_plugin(cplgn)
- logger.debug('core loaded, prioriy: {}'.format(' > '.join(map(str, sima.core_plugins))))
+ logger.debug('core loaded, prioriy: %s', ' > '.join(map(str, sima.core_plugins)))
# Loading internal plugins
load_plugins(sima, 'internal')
-
# Loading contrib plugins
load_plugins(sima, 'contrib')
- logger.info('plugins loaded, prioriy: {}'.format(' > '.join(map(str, sima.plugins))))
- # Set use of MusicBrainzIdentifier
- if not config.getboolean('sima', 'musicbrainzid'):
- logger.info('Disabling MusicBrainzIdentifier')
- Meta.use_mbid = False
+ logger.info('plugins loaded, prioriy: %s', ' > '.join(map(str, sima.plugins)))
# Run as a daemon
if config.getboolean('daemon', 'daemon'):
Catches Unhandled exception
"""
# pylint: disable=broad-except
+ logger = logging.getLogger('sima')
try:
start(sopt, restart)
except SigHup: # SigHup inherit from Exception
run(sopt, True)
+ except MPDSimaException as err:
+ logger.error(err)
+ sys.exit(2)
except Exception: # Unhandled exception
exception_log()