Repository: getnikola/nikola

Issue:
Get rid of EXTRA_PLUGINS
It used to contain planetoid, mustache, whatever and ipython notebook support.

Some plugins are now out of core, notebooks are mature, so let's kill it.



Discussion:

Resolving patch:
diff --git a/nikola/nikola.py b/nikola/nikola.py
--- a/nikola/nikola.py
+++ b/nikola/nikola.py
@@ -170,9 +170,6 @@ class Nikola(object):
 
     Takes a site config as argument on creation.
     """
-    EXTRA_PLUGINS = [
-        'ipynb',
-    ]
 
     def __init__(self, **config):
         """Setup proper environment for running tasks."""
@@ -255,7 +252,6 @@ def __init__(self, **config):
             'DISABLED_PLUGINS': (),
             'EXTRA_PLUGINS_DIRS': [],
             'COMMENT_SYSTEM_ID': 'nikolademo',
-            'ENABLED_EXTRAS': (),
             'EXTRA_HEAD_DATA': '',
             'FAVICONS': {},
             'FEED_LENGTH': 10,
@@ -516,9 +512,7 @@ def __init__(self, **config):
         self.commands = {}
         # Activate all command plugins
         for plugin_info in self.plugin_manager.getPluginsOfCategory("Command"):
-            if (plugin_info.name in self.config['DISABLED_PLUGINS']
-                or (plugin_info.name in self.EXTRA_PLUGINS and
-                    plugin_info.name not in self.config['ENABLED_EXTRAS'])):
+            if plugin_info.name in self.config['DISABLED_PLUGINS']:
                 self.plugin_manager.removePluginFromCategory(plugin_info, "Command")
                 continue
 
@@ -530,9 +524,7 @@ def __init__(self, **config):
         # Activate all task plugins
         for task_type in ["Task", "LateTask"]:
             for plugin_info in self.plugin_manager.getPluginsOfCategory(task_type):
-                if (plugin_info.name in self.config['DISABLED_PLUGINS']
-                    or (plugin_info.name in self.EXTRA_PLUGINS and
-                        plugin_info.name not in self.config['ENABLED_EXTRAS'])):
+                if plugin_info.name in self.config['DISABLED_PLUGINS']:
                     self.plugin_manager.removePluginFromCategory(plugin_info, task_type)
                     continue
                 self.plugin_manager.activatePluginByName(plugin_info.name)
@@ -540,9 +532,7 @@ def __init__(self, **config):
 
         # Activate all multiplier plugins
         for plugin_info in self.plugin_manager.getPluginsOfCategory("TaskMultiplier"):
-            if (plugin_info.name in self.config['DISABLED_PLUGINS']
-                or (plugin_info.name in self.EXTRA_PLUGINS and
-                    plugin_info.name not in self.config['ENABLED_EXTRAS'])):
+            if plugin_info.name in self.config['DISABLED_PLUGINS']:
                 self.plugin_manager.removePluginFromCategory(plugin_info, task_type)
                 continue
             self.plugin_manager.activatePluginByName(plugin_info.name)
diff --git a/nikola/plugins/compile/markdown/__init__.py b/nikola/plugins/compile/markdown/__init__.py
--- a/nikola/plugins/compile/markdown/__init__.py
+++ b/nikola/plugins/compile/markdown/__init__.py
@@ -54,9 +54,7 @@ class CompileMarkdown(PageCompiler):
 
     def set_site(self, site):
         for plugin_info in site.plugin_manager.getPluginsOfCategory("MarkdownExtension"):
-            if (plugin_info.name in site.config['DISABLED_PLUGINS']
-                or (plugin_info.name in site.EXTRA_PLUGINS and
-                    plugin_info.name not in site.config['ENABLED_EXTRAS'])):
+            if plugin_info.name in site.config['DISABLED_PLUGINS']:
                 site.plugin_manager.removePluginFromCategory(plugin_info, "MarkdownExtension")
                 continue
 
diff --git a/nikola/plugins/compile/rest/__init__.py b/nikola/plugins/compile/rest/__init__.py
--- a/nikola/plugins/compile/rest/__init__.py
+++ b/nikola/plugins/compile/rest/__init__.py
@@ -115,9 +115,7 @@ def create_post(self, path, **kw):
 
     def set_site(self, site):
         for plugin_info in site.plugin_manager.getPluginsOfCategory("RestExtension"):
-            if (plugin_info.name in site.config['DISABLED_PLUGINS']
-                or (plugin_info.name in site.EXTRA_PLUGINS and
-                    plugin_info.name not in site.config['ENABLED_EXTRAS'])):
+            if plugin_info.name in site.config['DISABLED_PLUGINS']:
                 site.plugin_manager.removePluginFromCategory(plugin_info, "RestExtension")
                 continue
 


Test patch: