From 845acfe1ac7c156513d928b01e4acdad0c47f6ee Mon Sep 17 00:00:00 2001 From: MinchinWeb Date: Mon, 7 Jun 2021 21:46:15 -0600 Subject: [PATCH] Allow easy subclassing of Writer When you write a custom Writer, it gets called with `settings=None`. If you writer is simply a subclass of the built-in Writer, Pelican will through the error `CRITICAL: 'RELATIVE_URLS'`. The source of the error is from `Pelican._get_writer()` in `__init__.py`. --- pelican/writers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pelican/writers.py b/pelican/writers.py index 73f025b6..73ee4b33 100644 --- a/pelican/writers.py +++ b/pelican/writers.py @@ -25,7 +25,7 @@ class Writer: self._overridden_files = set() # See Content._link_replacer for details - if self.settings['RELATIVE_URLS']: + if "RELATIVE_URLS" in self.settings and self.settings['RELATIVE_URLS']: self.urljoiner = posix_join else: self.urljoiner = lambda base, url: urljoin(