Previously, the documentation claimed the value of None for this purpose
even though False was used for certain defaults. The values False and
None cause warnings to be emitted from URLWrapper._from_settings though,
so the new way of inhibiting page generation is to set a *_SAVE_AS value
to the empty string.
PAGINATION_PATTERNS was hard coded so that all files had a ".html" extension. This fixes that and add a test to
ensure that the pagination code is not changing the filename incorrectly.
If a tag contains characters like <> or &, we currently generate invalid HTML.
This is easily fixed by sending the tag through the jinja escape filter.
(This bug is not theoretical, I hit it when using C++ template names for tags,
like "boost::variant<>".)
We already check if loop.length > 1 before outputting <section> and <ol>
tags, but we neglected to do the same check when outputting the corresponding
end tags.
Also, since I had to read the code when I touched it, simplified a conditional:
if (a) if (a and (b or not b and c))
can be simplified to
if (a) if (b or c)
Note the "b or not b", it was just too ugly to not fix.
The socket may remain in the TIME_WAIT state for some time after the
server shuts down, which prevents another instance of the server from
listening on the same port. This change allows the server to reuse the
address even when it's still waiting.
The smallest mark GitHub provides in the bundle is 32x32. Since they
explicitly say don't resize the mark, I asked them to provide a 16x16
so we could use it. I received the 16x16 in this commit from GitHub
support.
However, they suggested we use the 32x32 and use CSS rules to adjust
the size:
"...we use the 32px for both and employ css background and background-
size rules to handle retina displays. I recommend that technique,
since retina users will see a mess of pixels for icons that small."
This sounds like reasonable advice. Should we consider migrating the
notmyidea social icons to 32x32, with appropriate CSS to adjust the
sizes?
This allows the user to set PY and/or PELICAN environment variable
overrides, which will be respected by the Makefile and devserver.sh.
If, for example, the default Python on your system were Python 3 and
you wanted to run Make with Python 2, using bash you could run
`PY=python2 make`. Refs #915.
invoked before categories and tags lists are created
useful when e.g. modifying the list of articles to be generated
so that removed articles are not leaked in categories or tags
* Adds period tuple of (year, month, day) matching the time
period of the current archive. Note that this is done
to the archive context if period_archives.html doesn't exist.
* Adds tests to verify this.
* Adds documentation in themes.rst about period in period_archives.html.