Nikola v7.8.5 is out!

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.8.5. It fixes some bugs and adds new features.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn Jupyter (IPython) Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (which is rebuilding only what has been changed).

Find out more at the website: https://getnikola.com/

Downloads

Install using pip install Nikola or download tarballs on GitHub and PyPI.

Changes

Math support changes

  • If you edited templates related to indexes and posts (index.tmpl, post.tmpl, index_helper.tmpl, post_helper.tmpl) in your templates, you should adjust them to use math_helper.tmpl.
  • If you are using KaTeX, you should remove the CSS snippet from your configuration (templates), as that is now handled by Nikola.

Features

  • Get rid of THEME_REVEAL_CONFIG_* settings, use global context instead (Issue #2485)
  • New emoji shortcode
  • Add SECTION_PATH support to move the section indexes to a user-defined location (Issue #2738)
  • Add a list of template variables to documentation (Issues #2328, #2712, #2259) and update the theming reference (Issue #2259)
  • Add {post_title} tag for Read More links (Issue #2709)
  • Include MathJax config only when needed (via Issue #2715)
  • Include KaTeX CSS automatically when needed (Issue #2715)
  • Split out math code into new math_helper.tmpl template (Issue #2715)
  • Added jpegoptim_progressive filter to convert jpeg images to progressive jpegs.

Bugfixes

  • Open 127.0.0.1 when using nikola serve -b and default 0.0.0.0 hostname to avoid resolution issues — the site is still available on all interfaces (Issue #2755)
  • Don't break animated GIFs in postprocessing (Issue #2750)
  • More robust shortcodes, no need to escape URLs in reSt, work better with LaTeX, etc.
  • No longer creates empty subarchive pages, and no longer create broken archive navigation links on day level (Issue #2734)
  • Fixes post scanner plugin order (Issue #2720)
  • Rename POSTS_SECTION_ARE_INDEXES to POSTS_SECTIONS_ARE_INDEXES
  • Make date ranges work in shortcode-based post lists (Issue #2690)
  • Read data files only if Nikola configuration exists (Issue #2708)
  • Make PAGE_INDEX work with PRETTY_URLS (Issue #2705)
  • Fix PHP posts/pages not rendering on Windows (Issue #2706)
  • Improving support for PostScanner plugins by asking them which compilers are unused (Issue #2496)

Nikola v7.8.4 is out!

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.8.4. It fixes some bugs and adds new features.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn Jupyter (IPython) Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (which is rebuilding only what has been changed).

Find out more at the website: https://getnikola.com/

Downloads

Install using pip install Nikola or download tarballs on GitHub and PyPI.

Changes

Features

  • Refactor RSS feed generation to allow better plugin access
  • Add Jupyter config as dependency for jupyter posts (by @knowsuchagency)
  • Make nikola plugin --list-installed more readable (Issue #2692)
  • Accept now in post-list date conditions
  • 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)
  • Add META_GENERATOR_TAG option in conf.py allowing the meta generator tag to be disabled (Issue #2628)
  • Add YUI_COMPRESSOR_EXECUTABLE, CLOSURE_COMPILER_EXECUTABLE, OPTIPNG_EXECUTABLE, JPEGOPTIM_EXECUTABLE and HTML_TIDY_EXECUTABLE to configure executables for built-in filters. (Issue #2615)
  • Allow setting custom GUID in feeds (Issue #2378)

Bugfixes

  • Remove misplaced and duplicated meta description tags (Issue #2694)
  • Fix crash if PAGE_INDEX is enabled and make them actually work (Issues #2646, #2702)
  • Ignore NEW_POST_DATE_PATH when creating pages (Issue #2699)
  • Ensure post.updated is timezone-aware (Issue #2698)
  • Pass previously missing post object and language to reST compiler and language to Markdown compiler (for shortcodes)
  • Fix crashes when rendering subcategories (Issue #2681)
  • Prevent writing cache files outside of the cache folder (Issue #2684)
  • Fix mimetype guessing in auto mode (Issue #2645)
  • Fix filters.html5lib_xmllike for laters html5lib (Issue #2648)
  • Skip the current post in post lists (Issue #2666)
  • Fix poor performance when compiling multiple markdown documents with the markdown compiler. (Issue #2660)
  • Fix crash if SHOW_INDEX_PAGE_NAVIGATION is True while INDEXES_STATIC is False. (Issue #2654)
  • Make NEW_POST_DATE_PATH follow rrule if it exists (Issue #2653)

Nikola v7.8.3 is out (emergency bugfix release)

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.8.3. This is an emergency bugfix release, which fixes a bug that prevented nikola new_page from working. There has also been a minor change to post sorting order (won’t affect most sites). The wheel packages have also been fixed (they now exist for Python 2 and 3, with correct doit versioning).

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn Jupyter (IPython) Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (which is rebuilding only what has been changed).

Find out more at the website: https://getnikola.com/

Downloads

Install using pip install Nikola or download tarballs on GitHub and PyPI.

Changes

Features

  • Sort posts chronologically with one unified function (easier to change). (Issue #2627)
  • Sort posts in the following order (most important last): source path (A-Z), title (A-Z), date (reverse chronological order), priority meta number (descending). (Issue #2627)

Bugfixes

  • Fix a bug that prevents nikola new_page from working (Issue #2631)