-
Task
-
Resolution: Done
-
Low
-
None
core/analytics.py contains some importlib magic that treats the protocol of an ExternalIntegration as a module name, and imports the module. This kind of flexibility isn't actually necessary, since we don't add new analytics modules at runtime – we do it in a new release. So we can get rid of this importlib magic and try something more like what we do with other types of integrations – have a registry that associates a value for ExternalIntegration.protocol with a class, and then do a registry lookup.
This is a little harder than 'trivial' because we currently have one analytics module in core and one in circulation; we need to make sure that analytics module gets added to the registry before it's looked up.