In v1.talkgroup I used to publish and comment on Hugo updates individually, but now I’m just going to drop them all in this one topic, and we can comment/breakout as desired.
Poll based watching
Hugo 0.85.0: Polled based alternative when watching for changes and some other nice improvements.
July 5, 2021
Go to Hugo Releases for the release downloads.
Hugo
0.85.0
is on the smaller side of releases, but the main new thing it brings should be important to those who need it: Poll based watching the filesystem for changes.Hugo uses Fsnotify to provide native file system notifications. This is still the default, but there may situations where this isn’t working. The file may not support it (e.g. NFS), or you get the “too many open files” error and cannot or do not want to increase the
ulimit
. Enable polling by passing the--poll
flag with an interval:hugo server --poll 700ms
You van even do “long polling” by passing a long interval:
hugo server --poll 24h
This release represents 23 contributions by 6 contributors to the main Hugo code base.@bep leads the Hugo development with a significant amount of contributions, but also a big shoutout to @raoulb, @jmooring, and @digitalcraftsman for their ongoing contributions.
Many have also been busy writing and fixing the documentation in hugoDocs, which has received 1 contributions by 1 contributors.
Hugo now has:
- 52755+ stars
- 431+ contributors
- 370+ themes
Enhancements
Other
- Move time notification to after any build errors 04dc469f @jhollowe #8403
- Log warning for metadata decode error 07919d1c @IveGotNorto #8519
- Make the –poll flag a duration e31b1d19 @bep #8720
- Regen CLI docs 43a23239 @bep
- Add polling as a fallback to native filesystem events in server watch 24ce98b6 @bep #8720#6849#7930
- Bump GitHub - yuin/goldmark: A markdown parser written in Go. Easy to extend, standard(CommonMark) compliant, well structured. v1.3.9 0019d60f @bep #8727
- Add module.import.noMounts config 40dfdd09 @bep #8708
- Use value type for module.Time 3a6dc6d3 @bep
- Add version time to “hugo config mounts” 6cd2110a @bep
- Add some more info to “hugo config mounts” 6a365c27 @bep
- Update to Minify v2.9.18 d9bdd37d @bep #8693
- Remove credit from release notes b2eaf4c8 @digitalcraftsman
- Rename Header(s) to Heading(s) in ToC struct a7e3da24 @bep
Fixes
Other
- Fix tab selection of disabled items in internal pagination template f75f9007 @raoulb
- Fix panic when theme has permalinks config e451b984 @bep #8724
- Fix Cloudflare vs Netlify cache dir issue 4c8552b1 @bep #8714
- Fix date format in schema and opengraph templates 34e4742f @jmooring #8671
- Fix Netlify default cache dir logic 6c8c0c8b @bep #8710
- Fix handling of invalid OS env config overrides 49fedbc5 @bep #8709
- Fix config handling with empty config entries after merge 19aa95fc @bep #8701
- Fix config loading for “hugo mod init” 923dd9d1 @bep #8697
- Fix language menu config regression 093dacab @bep #8672
- Fix merge of config with map[string]string values. 4a9d408f @bep #8679
Hugo 0.86.0: Cascade in Config
Hugo 0.86.0 adds cascade keyword to site config, much improved “active menu item” logic for section pages, and more.
July 21, 2021
Go to Hugo Releases for the release downloads.
This release is a set of smaller fixes and improvements. Some of the more notable:
You can now have a top level cascade (or one per language, if needed) section in your site configuration (e.g.
config.toml
). This way you can control default front matter values from outside of the content files.Hugo’s Menu system works well, but hasn’t been particularly easy to set the active menu state for section pages without a menu definition. We have had the option Section Menu for Lazy Bloggers. That helped for the common case, but we have now made it behave more sensible out of the box:
$page.HasMenuCurrent $sectionMenuEntry
will now always return true for any descendant of that section. To support this for menu definitions in the site config, we have added a newpageRef
option on MenuEntry:[[menus.main]] pageRef = "blog" # When pageRef is set, setting `url` is optional; it will be used as a fallback if the page is not found. url = "/blog"
Set
pageRef
to a value that site.GetPage understands, and the menu entry will be correctly connected to the page.This release represents 14 contributions by 2 contributors to the main Hugo code base. Many have also been busy writing and fixing the documentation in hugoDocs, which has received 1 contributions by 1 contributors.
Hugo now has:
- 53005+ stars
- 431+ contributors
- 370+ themes
Enhancements
Other
- Simplify “active menu” logic for section menus d831d2fc @bep #8776
- Make keepWhitespace = true default for HTML c19f65f9 @bep #8771
- Make FileMeta a struct 022c4795 @bep #8749
- Add tabindex=“0” to default wrapper f27e5424 @rhymes #7194
- Rename/reorder the hook methods 80566481 @bep #8755
- Support auto links in render hook ee3d2bb1 @bep #8755
- Adjust a test helper eb2a5003 @bep
- Add config.cascade 5cb52c23 @bep #8741
- Regenerate image golden testdata 30eea391 @bep #8729
Fixes
Other
- Fix panic on invalid config in “hugo mod get” and similar 351ed0f5 @bep #8773
- Fix Params case handling for menu items defined in site config 634481ba @bep #8775
- Fix default values when loading from config dir ae6cf93c @bep #8763
- Fix the deprecation error/warn log levels a70da2b7 @bep
- Fix transparency problem when converting 32-bit images to WebP 8f40f34c @bep #8729
Haha, I’m so behind on Hgo releases! I mean, I read them fresh, but then I forget to post…
Cascading configuration is hot, allowing more flexibility with importing datasets: they don’t need their own front matter, as site-specific context may be provided. Neat!