diff --git a/mopidy/__main__.py b/mopidy/__main__.py index cd3042c7..faee896c 100644 --- a/mopidy/__main__.py +++ b/mopidy/__main__.py @@ -144,7 +144,15 @@ def load_extensions(): extensions = [] for entry_point in pkg_resources.iter_entry_points('mopidy.extension'): logger.debug('Loading extension %s', entry_point.name) - extension_class = entry_point.load() + + try: + extension_class = entry_point.load() + except pkg_resources.DistributionNotFound as ex: + logger.info( + 'Disabled extension %s: Dependency %s not found', + entry_point.name, ex) + continue + extension = extension_class() # TODO Validate configuration, filter out disabled extensions diff --git a/setup.py b/setup.py index cff6ce23..8d3d6d5a 100644 --- a/setup.py +++ b/setup.py @@ -45,12 +45,12 @@ setup( 'mopidy-scan = mopidy.scanner:main', ], b'mopidy.extension': [ - 'http = mopidy.frontends.http:Extension', - 'lastfm = mopidy.frontends.lastfm:Extension', + 'http = mopidy.frontends.http:Extension [http]', + 'lastfm = mopidy.frontends.lastfm:Extension [lastfm]', 'local = mopidy.backends.local:Extension', 'mpd = mopidy.frontends.mpd:Extension', 'mpris = mopidy.frontends.mpris:Extension', - 'spotify = mopidy.backends.spotify:Extension', + 'spotify = mopidy.backends.spotify:Extension [spotify]', 'stream = mopidy.backends.stream:Extension', ], },