From cb5f66ffe0e05ff0de0ad18604727d6dc87fe787 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20M=C3=A9taireau?= Date: Sat, 23 Mar 2013 19:56:45 -0700 Subject: [PATCH] Check all lists are not strings. --- pelican/settings.py | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/pelican/settings.py b/pelican/settings.py index fd6b9b40..da770775 100644 --- a/pelican/settings.py +++ b/pelican/settings.py @@ -234,14 +234,25 @@ def configure_settings(settings): settings['FILENAME_METADATA'] = ( _DEFAULT_CONFIG['FILENAME_METADATA']) - # Save people from accidentally setting site/css vs [site/css] - path_keys = ['STATIC_PATHS', 'THEME_STATIC_PATHS'] + # Save people from accidentally setting a string rather than a list + path_keys = ( + 'ARTICLE_EXCLUDES', + 'DEFAULT_METADATA', + 'DIRECT_TEMPLATES', + 'EXTRA_TEMPLATES_PATHS', + 'FILES_TO_COPY', + 'IGNORE_FILES', + 'JINJA_EXTENSIONS', + 'MARKUP', + 'PAGINATED_DIRECT_TEMPLATES', + 'PLUGINS', + 'STATIC_PATHS', + 'THEME_STATIC_PATHS',) for PATH_KEY in filter(lambda k: k in settings, path_keys): if isinstance(settings[PATH_KEY], six.string_types): logger.warn("Detected misconfiguration with %s setting (must " - "be a list of paths), falling back to the default" + "be a list), falling back to the default" % PATH_KEY) - settings[PATH_KEY] = \ - _DEFAULT_CONFIG[PATH_KEY] + settings[PATH_KEY] = _DEFAULT_CONFIG[PATH_KEY] return settings