Releases: getpelican/pelican
Releases · getpelican/pelican
Pelican 4.0.1
- Refactor
pelican.server
logging - Fix bug in which all static files were processed as "draft"
- Bug fixes for Invoke/Makefile automation, Importer, and other miscellanea
If upgrading from 3.7.x or earlier, please note that slug-related settings in 4.0+ use {slug}
and/or {lang}
rather than %s
. If %s
-style settings are encountered, Pelican will emit a warning and fall back to the default setting. Some user-submitted themes might try to format setting values but fail upon site build with a TypeError
. In such cases, the theme needs to be updated. For example, instead of TAG_FEED_ATOM|format(tag.slug)
, use TAG_FEED_ATOM.format(slug=tag.slug)
Pelican 4.0
- Replace
develop_server.sh
script withpelican --listen
- Improved copy/link behavior for large static files (e.g., videos)
- New
{static}
syntax to link to static content; content linked to by
{static}
and{attach}
is automatically copied over even if not in
STATIC_PATHS
- Pages can now have
draft
status - Show current settings via new
--print-settings
flag - New signals:
feed_generated
andpage_generated_write_page
- Replace Fabric with Invoke and
fabfile.py
template withtasks.py
- New
ARTICLE_TRANSLATION_ID
andPAGE_TRANSLATION_ID
settings to
specify metadata attributes used to identify/disable translations - HTML reader now parses multiple occurrences of metadata tags as a list
- New Blogger XML backup importer
- Wordpress importer now updates file links to point to local copies if the
files were downloaded with--wp-attach
. - Many bug fixes, tweaks, and other enhancements
Pelican 3.7.1
- Fix locale issues in Quickstart script
- Specify encoding for README and CHANGELOG in setup.py
Pelican 3.7.0
- Atom feeds output
<content>
in addition to<summary>
- Atom feeds use
<published>
for the original publication date and
<updated>
for modifications - Simplify Atom feed ID generation and support URL fragments
- Produce category feeds with category-specific titles
- RSS feeds now default to summary instead of full content —
setRSS_FEED_SUMMARY_ONLY = False
to revert to previous behavior - Replace
MD_EXTENSIONS
withMARKDOWN
setting - Replace
JINJA_EXTENSIONS
with more-robustJINJA_ENVIRONMENT
setting - Improve summary truncation logic to handle special characters and tags that
span multiple lines, using HTML parser instead of regular expressions - Include summary when looking for intra-site link substitutions
- Link to authors and index via
{author}name
and{index}
syntax - Override widget names via
LINKS_WIDGET_NAME
andSOCIAL_WIDGET_NAME
- Add
INDEX_SAVE_AS
option to override defaultindex.html
value - Remove
PAGES
context variable for themes in favor ofpages
SLUG_SUBSTITUTIONS
now accepts 3-tuple elements, allowing URL slugs to
contain non-alphanumeric characters- Tag and category slugs can be controlled with greater precision using the
TAG_SUBSTITUTIONS
andCATEGORY_SUBSTITUTIONS
settings - Author slugs can be controlled with greater precision using the
AUTHOR_SUBSTITUTIONS
setting DEFAULT_DATE
can be defined as a string- Use
mtime
instead ofctime
whenDEFAULT_DATE = 'fs'
- Add
--fatal=errors|warnings
option for use with continuous integration - When using generator-level caching, ensure previously-cached files are
processed instead of just new files - Add Python and Pelican version information to debug output
- Improve compatibility with Python 3.5
- Comply with and enforce PEP8 guidelines
- Replace tables in settings documentation with
data::
directives