We should probably do this import either like you did the periscope one, or just wrap the import in a try except here and raise a DependencyError. The way you did in periscope plugin is probably nicer, since it reports the error when the user tries to configure the plugin, rather than just saying it's an unknown plugin.