Hugo 0.13
The v0.13.0 release is the largest Hugo release to date. The release introduced some long sought after features (pagination, sequencing, data loading, tons of template improvements) as well as major internal improvements. In addition to the code changes, the Hugo community has grown significantly and now has over 3000 stars on GitHub, 134 contributors, 24 themes and 1000s of happy users.
This release represents 448 contributions by 65 contributors
A special shout out to @bep and @anthonyfok for their new role as Hugo maintainers and their tremendous contributions this release.
New major features
- Support for data files in YAML,
JSON, or TOML
located in the
data
directory (#885) - Support for dynamic content by loading JSON & CSV from remote sources via GetJson and GetCsv in short codes or other layout files (#748)
- Pagination support for home page, sections and taxonomies (#750)
- Universal sequencing support
- A new, generic Next/Prev functionality is added to all lists of pages (sections, taxonomies, etc.)
- Add in-section Next/Prev content pointers
Scratch
– a “scratchpad” for your node- and page-scoped variables- Cross Reference support to easily link documents together with the ref and relref shortcodes.
- Ace template engine support (#541)
- A new shortcode token of
{{< >}}
(raw HTML) alongside the existing{{% %}}
(Markdown) - A top level
Hugo
variable (on Page & Node) is added with various build information - Several new ways to order and group content:
ByPublishDate
GroupByPublishDate(format, order)
GroupByParam(key, order)
GroupByParamDate(key, format, order)
- Hugo has undergone a major refactoring, with a new handler system and a generic file system. This sounds and is technical, but will pave the way for new features and make Hugo even speedier
Notable enhancements to existing features
- The shortcode handling is rewritten for speed and better error messages.
- Several improvements to the template functions:
where
is now even more powerful and accepts SQL-like syntax with the operators==
,eq
;!=
,<>
,ne
;>=
,ge
;>
,gt
;<=
,le
;<
,lt
;in
,not in
where
template function now also accepts dot chaining key argument (e.g."Params.foo.bar"
)
- New template functions:
apply
chomp
delimit
sort
markdownify
in
andintersect
trim
replace
dateFormat
- Several configurable improvements related to Markdown
rendering:
- Configuration of footnote rendering
- Optional support for smart angled quotes, e.g.
"Hugo"
→ «Hugo» - Enable descriptive header IDs
- URLs in XML output is now correctly canonified (#725, #728, and part of #789)
Other improvements
- Internal change to use byte buffer pool significantly lowering memory usage and providing measurable performance improvements overall
- Changes to docs:
- A new Troubleshooting section is added
- It’s now searchable through Google Custom Search (#753)
- Some new great tutorials:
hugo new
now copies the content in addition to the front matter- Improved unit test coverage
- Fixed a lot of Windows-related path issues
- Improved error messages for template and rendering errors
- Enabled soft LiveReload of CSS and images (#490)
- Various fixes in RSS feed generation (#789)
HasMenuCurrent
andIsMenuCurrent
is now supported on Nodes- A bunch of bug fixes
Last Update: October 21, 2019
Improve this page
Improve this page