# HG changeset patch # User Ludovic Chabant # Date 1409120338 25200 # Node ID 95590732e4c939aa6d316a2bd7295fba840766f8 # Parent c8c522dacfea4ece58201a809cf4a7ae8eb8a927 More robust Markdown configuration handling. diff -r c8c522dacfea -r 95590732e4c9 piecrust/formatting/markdownformatter.py --- a/piecrust/formatting/markdownformatter.py Tue Aug 26 23:18:32 2014 -0700 +++ b/piecrust/formatting/markdownformatter.py Tue Aug 26 23:18:58 2014 -0700 @@ -18,11 +18,18 @@ if self._extensions is not None: return - extensions = self.app.config.get('markdown/extensions') + config = self.app.config.get('markdown') + if config is None: + config = {} + elif not isinstance(config, dict): + raise Exception("The `markdown` configuration setting must be " + "a dictionary.") + + extensions = config.get('extensions') if extensions is None: extensions = [] # Compatibility with PieCrust 1.x - if self.app.config.get('markdown/use_markdown_extra'): + if config.get('use_markdown_extra'): extensions.append('extra') self._extensions = extensions