Hugo 0.19 Released: Native Emacs Org-mode Support and Lots of Improvement!
More than 180 contributions by 50 contributors in two months is impressive. The new Hugo 0.19 has plenty of fixes, enhancements and new features.
Grab the binary of your choice here.
Release Notes
We’re happy to announce the first release of Hugo in 2017.
This release represents over 180 contributions by over 50 contributors to the main Hugo code base. Since last release Hugo has gained 1450 stars, 35 new contributors and 15 additional themes.
Hugo now has:
- 15200+ stars
- 470+ contributors
- 151+ themes
Furthermore, Hugo has its own Twitter account (@gohugoio) where we share bite-sized news and themes from the Hugo community.
@bep
leads the Hugo development and once again contributed a significant amount of additions. Also a big shoutout to
@chaseadamsio
for the Emacs Org-mode support,
@digitalcraftsman
for his relentless work on keeping the documentation and the themes site in pristine condition,
@fj
for his work on revising the params
handling in Hugo, and
@moorereason
and
@bogem
for their ongoing contributions.
Highlights
Hugo 0.19
brings native Emacs Org-mode content support (
#1483
), big thanks to
@chaseadamsio
.
Also, a considerably amount of work have been put into cleaning up the Hugo source code, in an issue titled Refactor the globals out of site build. This is not immediately visible to the Hugo end user, but will speed up future development.
Hugo 0.18
was bringing full-parallel page rendering, so workarounds depending on rendering order did not work anymore, and pages with duplicate target paths (common examples would be /index.md
or /about/index.md
) would now conflict with the home page or the section listing.
With Hugo 0.19
, you can control this behaviour by turning off page types you do not want (
#2534
). In its most extreme case, if you put the below setting in your config.toml
, you will get nothing!:
disableKinds = ["page", "home", "section", "taxonomy", "taxonomyTerm", "RSS", "sitemap", "robotsTXT", "404"]
Other New Features
- Add ability to sort pages by frontmatter parameters, enabling easy custom “top 10” page lists. #3022
- Add
truncate
template function #2882 - Add
now
function, which replaces the now deprecated.Now
#2882 - Make RSS item limit configurable #3035
Enhancements
- Enhance
.Param
to permit arbitrarily nested parameter references #2598 - Use
Page.Params
more consistently when adding metadata #3033 - The
sectionPagesMenu
feature (“Section menu for the lazy blogger”) is now integrated with the section content pages. #2974 - Hugo
0.19
is compiled with Go 1.8! - Make template funcs like
findRE
and friends more liberal in what argument types they accept #3018 #2822 - Improve generation of OpenGraph date tags #2979
Notes
sourceRelativeLinks
is now deprecated and will be removed in Hugo0.21
if no one is stepping up to the plate and fixes and maintains this feature. #3028
Fixes
- Fix
.Site.LastChange
on sites where the default sort order is not chronological. #2909 - Fix regression of
.Truncated
evaluation in manual summaries. #2989 - Fix
preserveTaxonomyNames
regression #3070 - Fix issue with taxonomies when only some have content page #2992
- Fix instagram shortcode panic on invalid ID #3048
- Fix subtle data race in
getJSON
#3045 - Fix deadlock in cached partials #2935
- Avoid double-encoding of paginator URLs #2177
- Allow tilde in URLs #2177
- Fix
.Site.Pages
handling on live reloads #2869 UniqueID
now correctly uses the fill file path from the content root to calculate the hash, and is finally … unique!- Discard current language based on
.Lang()
, go get translations correct for paginated pages. #2972 - Fix infinite loop in template AST handling for recursive templates #2927
- Fix issue with watching when config loading fails #2603
- Correctly flush the imageConfig on live-reload #3016
- Fix parsing of TOML arrays in frontmatter #2752
Docs
- Add tutorial “How to use Google Firebase to host a Hugo site” #3007
- Improve documentation for menu rendering #3056
- Revise GitHub Pages deployment tutorial #2930