Hugo 0.20
Hugo 0.20 introduces the powerful and long sought after feature Custom Output Formats; Hugo isn’t just that “static HTML with an added RSS feed” anymore. Say hello to calendars, e-book formats, Google AMP, and JSON search indexes, to name a few ( #2828 ).
This release represents over 180 contributions by over 30 contributors to the main Hugo code base. Since last release Hugo has gained 1100 stars, 20 new contributors and 5 additional themes.
Hugo now has:
- 16300+ stars
- 495+ contributors
- 156+ themes
@bep still leads the Hugo development with his witty Norwegian humor, and once again contributed a significant amount of additions. Also a big shoutout to @digitalcraftsman for his relentless work on keeping the documentation and the themes site in pristine condition, and @moorereason and @bogem for their ongoing contributions.
Other Highlights
@bogem has also contributed TOML as an alternative and much simpler format for language/i18n files (#3200). A feature you will appreciate when you start to work on larger translations.
Also, there have been some important updates in the Emacs Org-mode handling: @chaseadamsio has fixed the newline-handling ( #3126 ) and @clockoon has added basic footnote support.
Worth mentioning is also the ongoing work that @rdwatters and @budparr is doing to re-do the gohugo.io site, including a total restructuring and partial rewrite of the documentation. It is getting close to finished, and it looks fantastic!
Notes
RSSdescription in the built-in template is changed from full.Contentto.Summary. This is a somewhat breaking change, but is what most people expect from their RSS feeds. If you want full content, please provide your own RSS template.- The deprecated
.RSSlinkis now removed. Use.RSSLink. RSSUriis deprecated and will be removed in a future Hugo version, replace it with an output format definition.- The deprecated
.Site.GetParamis now removed, use.Site.Param. - Hugo does no longer append missing trailing slash to
baseURLset as a command line parameter, making it consistent with how it behaves from site config. #3262
Enhancements
- Hugo
0.20is built with Go 1.8.1. - Add
.Site.Params.mainSectionsthat defaults to the section with the most pages. Plan is to get themes to use this instead of the hardcodedbloginwhereclauses. #3206 - File extension is now configurable. #320
- Improve
markdownifytemplate function performance. #3292 - Add taxonomy terms’ pages to
.Data.Pages#2826 - Change
RSSdescription from full.Contentto.Summary. - Ignore “.” dirs in
hugo --cleanDestinationDir#3202 - Allow
jekyll importto accept both2006-01-02and2006-1-2date format #2738 - Raise the default
rssLimit#3145 - Unify section list vs single template lookup order #3116
- Allow
applyto be used with the built-in Go template funcsprint,printfandprintln. #3139
Fixes
- Fix deadlock in
getJSON#3211 - Make sure empty terms pages are created. #2977
- Fix base template lookup order for sections #2995
URLfixes:- Fix pagination URLs with
baseURLwith sub-root andcanonifyUrls=false#1252 - Fix pagination URL for resources with “.” in name #2110 #2374 #1885
- Handle taxonomy names with period #3169
- Handle
uglyURLsambiguity inPermalink#3102 - Fix
Permalinkfor language-roots wrong whenuglyURLsistrue#3179 - Fix misc case issues for
URLs#1641 - Fix for taxonomies URLs when
uglyUrls=true#1989 - Fix empty
RSSLinkfor list pages with content page. #3131
- Fix pagination URLs with
- Correctly identify regular pages on the form “my_index_page.md” #3234
Exit -1onERRORin global logger #3239- Document hugo
help command#2349 - Fix internal
Hugoversion handling for bug fix releases. #3025 - Only return
RSSLinkfor pages that actually have a RSS feed. #1302
Improve this page