Skip to content

Releases: gohugoio/hugo

v0.124.0

16 Mar 16:00
@bep bep
Compare
Choose a tag to compare

The new feature in this release is a new segments configuration section and a new --renderSegments flag/config key. This release also updates to Go 1.22.1 that fixes a security issue in the template package that Hugo uses (CVE-2023-45289, see golang/go#65697). We don't see how this could be exploited in Hugo, but we appreciate that Hugo users want to have a clean security report.

Bug fixes

Improvements

Dependency Updates

  • deps: Upgrade github.com/gohugoio/hugo-goldmark-extensions/passthrough v0.1.0 => v0.2.0 ba03114 @bep
  • build(deps): bump github.com/evanw/esbuild from 0.20.1 to 0.20.2 b1f8676 @dependabot[bot]
  • build(deps): bump golang.org/x/tools from 0.18.0 to 0.19.0 b4bff61 @dependabot[bot]
  • build(deps): bump github.com/tdewolff/minify/v2 from 2.20.17 to 2.20.19 d2cebee @dependabot[bot]
  • deps: Upgrade github.com/alecthomas/chroma/v2 to v2.13.0 be914ff @myitcv #11862
  • build(deps): bump golang.org/x/mod from 0.15.0 to 0.16.0 e626750 @dependabot[bot]

Documentation

Build Setup

v0.123.8

07 Mar 13:40
@bep bep
Compare
Choose a tag to compare

v0.123.7

01 Mar 16:31
@bep bep
Compare
Choose a tag to compare

What's Changed

  • hugofs: Fix vertical mount merge issue 2b2f2b7 @bep #12175
  • Fix and add integration test for the Bootstrap SCSS module for both Dart Sass and Libsass 0d6e593 @bep #12178
  • Fix resources.GetMatch, resources.Match, and resources.ByType to they don't normalize permalinks 7023cf0 @bep #12182
  • Make sure that sitemaps gets generated even if there is a content bundle with the same path 9dfa9e7 @bep #12183
  • resources/page: Make Taxonomy.Get and Taxonomy.Count case-insensitive 3f217fd @jmooring #12177

v0.123.6

28 Feb 18:42
@bep bep
Compare
Choose a tag to compare

What's Changed

  • Fix panic when cascading headless from site config to section that does not have an _index.md file fce8d82 @bep #12172
  • Fix assets vs data issue 4a502f7 @bep #12133
  • Fix draft for non-default content when content in default language does not exist be1dbba @bep #12132

v0.123.5

28 Feb 16:04
@bep bep
Compare
Choose a tag to compare

What's Changed

v0.123.4

26 Feb 16:49
@bep bep
Compare
Choose a tag to compare

v0.123.3

23 Feb 17:26
@bep bep
Compare
Choose a tag to compare

Bug fixes

v0.123.2

22 Feb 15:42
@bep bep
Compare
Choose a tag to compare

What's Changed

v0.123.1

21 Feb 08:38
@bep bep
Compare
Choose a tag to compare

v0.123.0

19 Feb 17:46
@bep bep
Compare
Choose a tag to compare

The work title for the v0.123.0 release has been "the million pages release", introducing a new memory limit that allows for a streaming build, shifting large objects out of memory when not in use. This release is also a rewrite of the Hugo core, fixing lots of long-lived bugs and adding some other exciting improvements (see below). There are some breaking changes that have been announced for a long time. Most sites will not be affected by this, but we recommend that you test your site with the new Hugo version before you set it up to build to production. Many people have contributed to this release, but a special shoutout goes to @bep and @jmooring, but also to @TiGR and @McShelby for their help testing and reporting bugs.

A list of notable new features:

  • You can now set a upper memory limit (default 25% of system memory) via the OS environment variable HUGO_MEMORYLIMIT (in gigabytes) allowing for much larger data/page sets and/or running on lower specced PCs. This is backed by a partitioned LRU cache used throughout Hugo. A cache that gets dynamically resized in low memory situations, allowing Go's Garbage Collector to free the memory. Note that for regular sized Hugo sites, the performance should be about the same as before.
  • New dependency tracker for partial server rebuilds. This quickly calculates the delta given a changed resource (e.g. a content file, template, JS file etc.) and supports transitive relations.
  • A new document store. Previously, a little simplified, we split the document store (where we store pages and resources) in a tree per language. This worked pretty well, but the structure made some operations harder than they needed to be. We have now restructured it into one Radix tree for all languages. Internally the language is considered to be a dimension of that tree, and the tree can be viewed in all dimensions concurrently. This makes some operations re. language simpler (e.g. finding translations is just a slice range), but the idea is that it should also be relatively inexpensive to add more dimensions if needed (e.g. role). With this we also introduce a new logical page Path which we will used going forward to support other content data sources.
  • Add warnidf template function, see docs
  • Add the [params] concept to front matter, see docs
  • Add images.Dither filter, see docs

Bug fixes

Improvements

Dependency Updates

  • build(deps): bump github.com/tdewolff/minify/v2 from 2.20.16 to 2.20.17 f54ba6f @dependabot[bot]
  • build(deps): bump github.com/evanw/esbuild from 0.20.0 to 0.20.1 4019b17 @dependabot[bot]
  • build(deps): bump golang.org/x/tools from 0.17.0 to 0.18.0 4a53fd5 @dependabot[bot]
  • build(deps): bump golang.org/x/net from 0.20.0 to 0.21.0 2d1681d @dependabot[bot]
  • build(deps): bump golang.org/x/mod from 0.14.0 to 0.15.0 301bafa @dependabot[bot]
  • build(deps): bump github.com/yuin/goldmark from 1.6.0 to 1.7.0 58d7f83 @dependabot[bot]
  • build(deps): bump github.com/getkin/kin-openapi from 0.122.0 to 0.123.0 54ad51e @dependabot[bot]
  • build(deps): bump github.com/tdewolff/minify/v2 from 2.20.13 to 2.20.16 bd1bcc0 @dependabot[bot]
  • build(deps): bump github.com/evanw/esbuild from 0.19.12 to 0.20.0 b332f24 @dependabot[bot]
  • deps: Update gocloud.dev/aws d8e1e82 @bep
  • build(deps): bump github.com/aws/aws-sdk-go from 1.48.6 to 1.50.7 4d98b0e @dependabot[bot]
  • build(deps): bump golang.org/x/image from 0.14.0 to 0.15.0 15b9976 @dependabot[bot]

Documentation

Build Setup