This release fixes two grave bugs in TOML metadata support (sorry!).
The built-in themes have also been cleaned up and include less unused
assets. In addition, taxonomies now support translations. HTML meta
tags are also possible metadata sources. The default metadata format
to generate can now be changed.

In an effort to improve interoperability with other static site
generators, make importing data easier, and help with world
domination, Nikola v7.8.7 ships with support for the following
metadata formats:

The release also fixes two important bugs, one that crashes when
trying to detect locale in some edge cases, and another which made
some themes quietly leak template files. If you’re using a
Jinja2-based theme that does not have its own parent file, please
force a rebuild (nikola build -a).

Add RSS_COPYRIGHT, RSS_COPYRIGHT_PLAIN, and
RSS_COPYRIGHT_FORMATS options in conf.py which can be disabled
by specifying copyright_=False to generic_rss_renderer, or
overriden by specifying an explicit value.

Write PID of detached nikola serve process to a file called
nikolaserve.pid

Append file name (generated from title) if nikola new_post
receives directory name as path (Issue #2651)

Add a require_all_tags parameter to the post-list directive to
show only posts that have all specified tags. (Issue #2665)

Minor API change: The compile_string compiler method (partially
internal) now takes a post argument and returns between two and four
values, adding shortcode_deps and shortcode support. See issues
#2623 and #2624.

Allow posts to set custom URL_TYPE by using the url_type
meta tag (useful for HTML fragments inserted using JavaScript)

Plugins can depend on other plugins being installed (Issue #2533)

The destination folder in POSTS and PAGES can now be
translated (Issue #2116)

Pass post object and lang to post compilers (Issue #2531)

Pass url_type into template's context.

Make thumbnail naming configurable with IMAGE_THUMBNAIL_FORMAT.

There is a new plugin category Taxonomy which allows to easily
create new taxonomies. All of the existing taxonomies (authors,
archives, indexes, page index, sections, tags, and categories)
have been converted to the new system. (Issue #2107)

Tag and category pages are now more separated. The prefix for
category pages can be changed and the folder can be modified
independently of the tags' folder. (Issue #1535)

Writing the tag cloud data file can now be disabled. Will be
disabled by default in the future. (Issue #1535)

The utils.config_changed function now takes an optional extra
argument, identifier, used to identify the source of a specific
dependency save. As such, ALL your files will be rebuilt after
upgrading. (Issue #1526 via #1521)

New option GALLERY_FOLDERS replacing GALLERY_PATH (Issue #1511)

New PANDOC_OPTIONS option (Issue #1492)

New tab-width option in code-block directive (Issue #1514)

New option TAG_PAGES_DESCRIPTIONS for optionally making individual
tag pages more unique and interesting (Issue #1486)

New option LISTINGS_FOLDERS (which replaces LISTINGS_FOLDER) which
allows to separate input and output folder names for listings, and
allows to have more than one listings folder (Issue #1499)

Added a CONTENT_FOOTER_FORMATS config option. It is used to format
the CONTENT_FOOTER variable properly, for compatibility with
the Translatable Settings feature. The variable takes a dict, the keys
of which are languages, and values are (args, kwargs). (Issue #1112)

The init command and the importers now always output to the CWD.
Previously, if you had a conf.py file higher in the directory structure,
Nikola would put the output of those commands in the directory that contained
the file. (Issue #1132)

Files with non-ASCII characters in filenames are copied only when needed, and
not every build (Issue #1129)

Split Twitter Cards and Open Graph, enable the latter by default

Load html5shiv.js from remote or local server depending on USE_CDN option

Fix dependency issue in listings (Issue #1032)

Logging configuration has been fixed. The stderr handler can now
only be set to DEBUG or INFO (any higher levels are corrected as INFO), and
unwanted (i.e. DEBUG) messages are not shown, as intended. (Issue #1111)

Catch keyboard exit while serving so traceback does not show (Issue #1124)

Added a DEMOTE_HEADERS option (on by default; previously implemented by
the Markdown and reST compilers) to have consenting compilers produce
documents with headers lower by one than the one defined (Issue #891)

isso comments are now supported (Issue #905)

Gallery titles are used in more places (Issue #902)

Gallery titles also are used in breadcrumbs (Issue #902)

tagindex.tmpl is used for tag indexes instead of index.tmpl (Issues #930, #933)

Added SASS_COMPILER option (defaults to sass) to add support for alternate compilers like sassc (Issue #940)