]> git.maquefel.me Git - brevno-suite/hugo/log
brevno-suite/hugo
6 months agoMisc webp performance work
Bjørn Erik Pedersen [Wed, 21 Jan 2026 09:44:22 +0000 (10:44 +0100)]
Misc webp performance work

*- Dynamic pool sizing for WebP and Katex based on CPU count
- WebP decode: use RGB (3 bytes) for opaque images instead of RGBA (4 bytes)
- Add new imaging.config with new encoder method option; this is default 4 (what we had before), if have tested with value 2 for a 30% speedup on my MacBook, but that does sacrifice quality in some cases (quality/speed trade-off 0-6)
- Track hasAlpha in decode response to enable RGB optimization
- Scale image processing workers (1->2) on high-core machines
- Add WebP benchmark test

On my MacBook Pro M1 Pro, I now get these numbers compared to Hugo v0.152.0:

```
goos: darwin
goarch: arm64
pkg: github.com/gohugoio/hugo/internal/warpc
cpu: Apple M1 Pro
        │ cmp152.bench │         fix-webpbench.bench         │
        │    sec/op    │    sec/op     vs base               │
Webp-10   162.6m ± 32%   145.3m ± 21%  -10.60% (p=0.026 n=6)

        │ cmp152.bench │          fix-webpbench.bench          │
        │     B/op     │     B/op       vs base                │
Webp-10   41.69Mi ± 0%   123.79Mi ± 0%  +196.92% (p=0.002 n=6)

        │ cmp152.bench │         fix-webpbench.bench         │
        │  allocs/op   │  allocs/op    vs base               │
Webp-10    9.963k ± 3%   18.797k ± 2%  +88.67% (p=0.002 n=6)
```

For general image resize benchmarks compared to Hugo v0.152.0 (note that that's not the result of this branch):

```bash
goos: darwin
goarch: arm64
pkg: github.com/gohugoio/hugo/resources/images
cpu: Apple M1 Pro
               │ cmp152.bench │         fix-webpbench.bench         │
               │    sec/op    │    sec/op     vs base               │
ImageResize-10   84.12m ± ∞ ¹   40.70m ± ∞ ¹  -51.61% (p=0.029 n=4)
¹ need >= 6 samples for confidence interval at level 0.95

               │ cmp152.bench  │         fix-webpbench.bench         │
               │     B/op      │     B/op       vs base              │
ImageResize-10   32.37Mi ± ∞ ¹   29.25Mi ± ∞ ¹  -9.64% (p=0.029 n=4)
¹ need >= 6 samples for confidence interval at level 0.95

               │ cmp152.bench │        fix-webpbench.bench         │
               │  allocs/op   │  allocs/op    vs base              │
ImageResize-10   11.34k ± ∞ ¹   12.03k ± ∞ ¹  +6.07% (p=0.029 n=4)
¹ need >= 6 samples for confidence interval at level 0.95
```

Closes #14370

6 months agohugolib: Fix multilingual alias generation
Joe Mooring [Sat, 17 Jan 2026 21:56:33 +0000 (13:56 -0800)]
hugolib: Fix multilingual alias generation

Closes #14388

6 months agoFix file mount specifity issue within the same module
Bjørn Erik Pedersen [Tue, 20 Jan 2026 10:00:27 +0000 (11:00 +0100)]
Fix file mount specifity issue within the same module

Fixes #14405

6 months agodeps: Upgrade github.com/gohugoio/gift v0.1.0 => v0.2.0
Bjørn Erik Pedersen [Tue, 20 Jan 2026 00:43:03 +0000 (01:43 +0100)]
deps: Upgrade github.com/gohugoio/gift v0.1.0 => v0.2.0

6 months agoMove from github.com/disintegration/gift to github.com/gohugoio/gift
Bjørn Erik Pedersen [Mon, 19 Jan 2026 10:50:06 +0000 (11:50 +0100)]
Move from github.com/disintegration/gift to github.com/gohugoio/gift

With some performance improvements upstream, there's improvements in memory usage. Note that the benchmark below is full site builds with image processing:

```
goos: darwin
goarch: arm64
pkg: github.com/gohugoio/hugo/resources/images
cpu: Apple M1 Pro
               │ benchcmp.bench │  feat-forkgift-14397.bench   │
               │     sec/op     │   sec/op     vs base         │
ImageResize-10      74.60m ± 4%   73.75m ± 4%  ~ (p=0.093 n=6)

               │ benchcmp.bench │     feat-forkgift-14397.bench      │
               │      B/op      │     B/op      vs base              │
ImageResize-10     32.38Mi ± 1%   29.31Mi ± 1%  -9.49% (p=0.002 n=6)

               │ benchcmp.bench │     feat-forkgift-14397.bench     │
               │   allocs/op    │  allocs/op   vs base              │
ImageResize-10      12.53k ± 1%   12.05k ± 1%  -3.82% (p=0.002 n=6)
```

Closes #14397

6 months agobuild(deps): bump github.com/alecthomas/chroma/v2 from 2.22.0 to 2.23.0
dependabot[bot] [Mon, 19 Jan 2026 09:09:40 +0000 (09:09 +0000)]
build(deps): bump github.com/alecthomas/chroma/v2 from 2.22.0 to 2.23.0

Bumps [github.com/alecthomas/chroma/v2](https://github.com/alecthomas/chroma) from 2.22.0 to 2.23.0.
- [Release notes](https://github.com/alecthomas/chroma/releases)
- [Commits](https://github.com/alecthomas/chroma/compare/v2.22.0...v2.23.0)

---
updated-dependencies:
- dependency-name: github.com/alecthomas/chroma/v2
  dependency-version: 2.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
6 months agowarpc: Fix typed nil return in Start
Shravani Totre [Sun, 18 Jan 2026 13:54:31 +0000 (19:24 +0530)]
warpc: Fix typed nil return in Start

Fixes a panic in Close() when initialization fails by ensuring Start returns a nil interface instead of a typed nil.

See #14372

6 months agoresources/images: Stabilize order of valid sources in error message
Joe Mooring [Sat, 17 Jan 2026 22:29:28 +0000 (14:29 -0800)]
resources/images: Stabilize order of valid sources in error message

Closes #14390

6 months agohugolib: Fix relative alias generation
Joe Mooring [Sat, 17 Jan 2026 09:33:44 +0000 (01:33 -0800)]
hugolib: Fix relative alias generation

Closes #14381

6 months agoAdd XMP and IPTC image metadata support
Bjørn Erik Pedersen [Fri, 16 Jan 2026 19:06:44 +0000 (20:06 +0100)]
Add XMP and IPTC image metadata support

Rename resources/images/exif to resources/images/meta and extend
metadata support to include XMP and IPTC fields. Deprecate .Exif
in favor of .Meta. Update imagemeta dependency and add configuration
options for metadata extraction.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Closes #13146

6 months agooutput: Add TestCanonical integration test
Bjørn Erik Pedersen [Tue, 13 Jan 2026 15:36:34 +0000 (16:36 +0100)]
output: Add TestCanonical integration test

6 months agoRename common/maps to common/hmaps (#14384)
Bjørn Erik Pedersen [Fri, 16 Jan 2026 10:47:46 +0000 (11:47 +0100)]
Rename common/maps to common/hmaps (#14384)

Go's stdlid now has a maps package, which is very useful. We have been using imports on the form `xmaps "maps"`, but auto import tools doesn't handle this, which is annoying.

I have been thinking about this for some time, but have been holding back because of all the import changes. However, now is a good time to do this, with very little unmerged code.

6 months agobuild(deps): bump golang.org/x/net from 0.48.0 to 0.49.0
dependabot[bot] [Thu, 15 Jan 2026 08:22:41 +0000 (08:22 +0000)]
build(deps): bump golang.org/x/net from 0.48.0 to 0.49.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.48.0 to 0.49.0.
- [Commits](https://github.com/golang/net/compare/v0.48.0...v0.49.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
6 months agobuild(deps): bump github.com/bep/lazycache from 0.8.0 to 0.8.1
dependabot[bot] [Wed, 14 Jan 2026 08:23:25 +0000 (08:23 +0000)]
build(deps): bump github.com/bep/lazycache from 0.8.0 to 0.8.1

Bumps [github.com/bep/lazycache](https://github.com/bep/lazycache) from 0.8.0 to 0.8.1.
- [Release notes](https://github.com/bep/lazycache/releases)
- [Commits](https://github.com/bep/lazycache/compare/v0.8.0...v0.8.1)

---
updated-dependencies:
- dependency-name: github.com/bep/lazycache
  dependency-version: 0.8.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
6 months agodeps: Upgrade github.com/alecthomas/chroma v2.21.1 => v2.22.0
Joe Mooring [Tue, 13 Jan 2026 19:36:16 +0000 (11:36 -0800)]
deps: Upgrade github.com/alecthomas/chroma v2.21.1 => v2.22.0

Closes #14368

6 months agoDecode webp.ImageConfig natively
Bjørn Erik Pedersen [Tue, 13 Jan 2026 11:28:47 +0000 (12:28 +0100)]
Decode webp.ImageConfig natively

This has 2 main benefits:

1. When you only need width/height, we don't need to spin up a WASM runtime.
2. When all processed images are cached in the file cache, we don't need to spin up a WASM runtime.

The above is only really visible for smaller sites, but it's annoying to potentially have a site building in 15ms take e.g. 200ms because of WASM startup time.

Fixes #14371

6 months agoreleaser: Prepare repository for 0.155.0-DEV
hugoreleaser [Sun, 11 Jan 2026 21:14:41 +0000 (21:14 +0000)]
releaser: Prepare repository for 0.155.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.154.5
hugoreleaser [Sun, 11 Jan 2026 20:53:23 +0000 (20:53 +0000)]
releaser: Bump versions for release of 0.154.5

[ci skip]

6 months agoFix some default site redirect woes
Bjørn Erik Pedersen [Sun, 11 Jan 2026 14:30:33 +0000 (15:30 +0100)]
Fix some default site redirect woes

* The fix for #14357 yesterday sadly had the assumption that default language/version/role always was the first site in the sites matrix. This is common, but not always true.
* Also, that fix forgot to add a redirect the other way when `defaultContentLanguageInSubdir` was disabled, e.g. from `/en/` to `/`.
* This commit also renames config option `DisableDefaultDimensionRedirect` to `DisableDefaultSiteRedirect`. This is stricly a breaking change, but it's only been out for a day, and the old name didn't make much sense.

Fixes #14361

6 months agohugolib: Fix newly created shortcodes not found during server rebuild
Rohan Hasabe [Sun, 11 Jan 2026 17:00:23 +0000 (12:00 -0500)]
hugolib: Fix newly created shortcodes not found during server rebuild

When a new shortcode file was added during `hugo server`, the shortcode
was detected but not properly registered in the template cache. This caused
subsequent content edits using the shortcode to fail with "template for
shortcode not found" until the server was restarted.

The issue was that when a shortcode was added, only a glob identity for
dependent content was added to the changes list, but not the shortcode
file's own pathInfo. This meant RefreshFiles filtered it out and never
inserted it into the shortcodesByName cache.

The fix adds the shortcode file's pathInfo to changes (in addition to the
glob for dependent content), and corrects the glob pattern from
`shortcodes/...` to `/_shortcodes/...` to match the actual path format.

Fixes #14207

6 months agotpl/tplimpl: Remove trailing slash from void elements
Joe Mooring [Sat, 10 Jan 2026 16:59:37 +0000 (08:59 -0800)]
tpl/tplimpl: Remove trailing slash from void elements

6 months agoreleaser: Prepare repository for 0.155.0-DEV
hugoreleaser [Sat, 10 Jan 2026 15:48:05 +0000 (15:48 +0000)]
releaser: Prepare repository for 0.155.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.154.4
hugoreleaser [Sat, 10 Jan 2026 15:24:22 +0000 (15:24 +0000)]
releaser: Bump versions for release of 0.154.4

[ci skip]

6 months agobuild(deps): bump github.com/goccy/go-yaml from 1.19.1 to 1.19.2
dependabot[bot] [Thu, 8 Jan 2026 08:26:57 +0000 (08:26 +0000)]
build(deps): bump github.com/goccy/go-yaml from 1.19.1 to 1.19.2

Bumps [github.com/goccy/go-yaml](https://github.com/goccy/go-yaml) from 1.19.1 to 1.19.2.
- [Release notes](https://github.com/goccy/go-yaml/releases)
- [Changelog](https://github.com/goccy/go-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/goccy/go-yaml/compare/v1.19.1...v1.19.2)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-yaml
  dependency-version: 1.19.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
6 months agotpl: Fix language resolution for markdown shortcodes
Barkın Balcı [Sat, 10 Jan 2026 14:45:03 +0000 (17:45 +0300)]
tpl: Fix language resolution for markdown shortcodes

Fixes #14098

6 months agoFor multiple dimensions setups, fix alias handling and multihost publish path
Bjørn Erik Pedersen [Fri, 9 Jan 2026 09:47:41 +0000 (10:47 +0100)]
For multiple dimensions setups, fix alias handling and multihost publish path

* The alias handling was left as is when we added new dimensions in v0.152.0, which meant that if you had `defaultContentVersionInSubDir=true` set, the alias page in the root would not be correctly created.
* Also, if you had multihost setup with multiple dimensions, the publish would be incorrect: The language key was added last instead of first.
* The home page alias handling is reworked and made more robust, which also fixes some subtle issues:

* It now supports redircects for multiple HTML output formats for the home page.
* We skip creating aliases for disabled home pages.
* With potentially multiple output formats with one of them canonical, we added a new  `Canonical` method to the `Page.OutputFormats`, which allows you to do this in a template:

```handlebars
{{ with .OutputFormats.Canonical }}<link rel="{{ .Rel }}" href="{{ .Permalink }}">{{ end }}
```

Fixes #14354
Fixes #14356

6 months agoreleaser: Prepare repository for 0.155.0-DEV
hugoreleaser [Tue, 6 Jan 2026 16:51:07 +0000 (16:51 +0000)]
releaser: Prepare repository for 0.155.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.154.3
hugoreleaser [Tue, 6 Jan 2026 16:30:17 +0000 (16:30 +0000)]
releaser: Bump versions for release of 0.154.3

[ci skip]

6 months agobuild(deps): bump github.com/yuin/goldmark from 1.7.13 to 1.7.16
dependabot[bot] [Tue, 6 Jan 2026 08:01:39 +0000 (08:01 +0000)]
build(deps): bump github.com/yuin/goldmark from 1.7.13 to 1.7.16

Bumps [github.com/yuin/goldmark](https://github.com/yuin/goldmark) from 1.7.13 to 1.7.16.
- [Release notes](https://github.com/yuin/goldmark/releases)
- [Commits](https://github.com/yuin/goldmark/compare/v1.7.13...v1.7.16)

---
updated-dependencies:
- dependency-name: github.com/yuin/goldmark
  dependency-version: 1.7.16
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
6 months agoreleaser: Prepare repository for 0.155.0-DEV
hugoreleaser [Fri, 2 Jan 2026 16:30:54 +0000 (16:30 +0000)]
releaser: Prepare repository for 0.155.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.154.2
hugoreleaser [Fri, 2 Jan 2026 16:08:44 +0000 (16:08 +0000)]
releaser: Bump versions for release of 0.154.2

[ci skip]

6 months agoFix alpha/fuzzy border issue with new webp decoder for images with with transparent...
Bjørn Erik Pedersen [Fri, 2 Jan 2026 15:22:25 +0000 (16:22 +0100)]
Fix alpha/fuzzy border issue with new webp decoder for images with with transparent background

Fixes #14339

6 months agosnap: Limit build platforms to amd64, arm64, ppc64el, and s390x
Joe Mooring [Fri, 2 Jan 2026 03:58:01 +0000 (19:58 -0800)]
snap: Limit build platforms to amd64, arm64, ppc64el, and s390x

The Node 24 Snap has dropped support for armhf and riscv64.

6 months agosnap: Update to core 24
Joe Mooring [Thu, 1 Jan 2026 23:51:32 +0000 (15:51 -0800)]
snap: Update to core 24

6 months agoreleaser: Prepare repository for 0.155.0-DEV
hugoreleaser [Thu, 1 Jan 2026 17:52:38 +0000 (17:52 +0000)]
releaser: Prepare repository for 0.155.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.154.1
hugoreleaser [Thu, 1 Jan 2026 17:32:20 +0000 (17:32 +0000)]
releaser: Bump versions for release of 0.154.1

[ci skip]

6 months agoAdd WASM licensing information to README
Bjørn Erik Pedersen [Thu, 1 Jan 2026 17:27:57 +0000 (18:27 +0100)]
Add WASM licensing information to README

Added a section on licensing for the Hugo project, detailing the licenses of bundled libraries.

6 months agoFix partial decorator detection in partial with blocks with outer range break or...
Bjørn Erik Pedersen [Thu, 1 Jan 2026 12:56:55 +0000 (13:56 +0100)]
Fix partial decorator detection in partial with blocks with outer range break or continue

E.g.:

```handlebars
{{- $items := slice "a" "b" "c" }}
  {{- range $items }}
    {{- with partial "b" . -}}
 {{break}}
{{- else }}
  else: {{ . -}}
{{- end }}
  {{- end }}
 ```

Fixes #14333

6 months agoreleaser: Prepare repository for 0.155.0-DEV
hugoreleaser [Wed, 31 Dec 2025 13:09:12 +0000 (13:09 +0000)]
releaser: Prepare repository for 0.155.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.154.0
hugoreleaser [Wed, 31 Dec 2025 12:45:55 +0000 (12:45 +0000)]
releaser: Bump versions for release of 0.154.0

[ci skip]

6 months agotpl/collections: Fix apply to work with built-in funcs like len
Bjørn Erik Pedersen [Wed, 31 Dec 2025 10:10:19 +0000 (11:10 +0100)]
tpl/collections: Fix apply to work with built-in funcs like len

Fixes #13418

6 months agoRemove Linode sponsor from README
Bjørn Erik Pedersen [Tue, 30 Dec 2025 18:54:11 +0000 (19:54 +0100)]
Remove Linode sponsor from README

Removed Linode sponsor link from the README.

6 months agohelpers: Limit verbose watch output for better readability
majiayu000 [Tue, 30 Dec 2025 06:44:27 +0000 (14:44 +0800)]
helpers: Limit verbose watch output for better readability

Limits the number of root groups shown in 'Watching for changes' output
to 10 maximum, with a summary message for remaining paths. This prevents
the message from becoming excessively long when watching sites with many
mount points.

Fixes #14277

Signed-off-by: majiayu000 <1835304752@qq.com>
6 months agotpl/reflect: Make the IsImageResource implementation less technical
Bjørn Erik Pedersen [Tue, 30 Dec 2025 17:05:13 +0000 (18:05 +0100)]
tpl/reflect: Make the IsImageResource implementation less technical

And closer to the documentation. The old one was correct, but a bit too tied to the internal implementation.

6 months agointernal/warpc: Increase WebP memory limit to 384 MiB
Joe Mooring [Tue, 30 Dec 2025 13:44:20 +0000 (05:44 -0800)]
internal/warpc: Increase WebP memory limit to 384 MiB

Closes #14309

6 months agobuild(deps): bump github.com/tetratelabs/wazero from 1.10.1 to 1.11.0
dependabot[bot] [Mon, 22 Dec 2025 08:01:23 +0000 (08:01 +0000)]
build(deps): bump github.com/tetratelabs/wazero from 1.10.1 to 1.11.0

Bumps [github.com/tetratelabs/wazero](https://github.com/tetratelabs/wazero) from 1.10.1 to 1.11.0.
- [Release notes](https://github.com/tetratelabs/wazero/releases)
- [Commits](https://github.com/tetratelabs/wazero/compare/v1.10.1...v1.11.0)

---
updated-dependencies:
- dependency-name: github.com/tetratelabs/wazero
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
6 months agoRevert "resources/page: Fix slugorcontentbasename for section pages"
Bjørn Erik Pedersen [Tue, 30 Dec 2025 11:57:00 +0000 (12:57 +0100)]
Revert "resources/page: Fix slugorcontentbasename for section pages"

This reverts commit 25c7c18f9f8862f756835d3ac3faa4f114c344f6.

See #14104
See #14325

6 months agoUpdate tpl/reflect/reflect.go
Bjørn Erik Pedersen [Sat, 27 Dec 2025 17:36:30 +0000 (18:36 +0100)]
Update tpl/reflect/reflect.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
6 months agoAdd reflect.Is{Page,Site,Resource,ImageResource}
Bjørn Erik Pedersen [Sat, 27 Dec 2025 10:20:33 +0000 (11:20 +0100)]
Add reflect.Is{Page,Site,Resource,ImageResource}

Fixes #14307

6 months agoAllow partials to work as decorators
Bjørn Erik Pedersen [Tue, 23 Dec 2025 13:08:19 +0000 (14:08 +0100)]
Allow partials to work as decorators

Fixes #13193

6 months agoreleaser: Prepare repository for 0.154.0-DEV
hugoreleaser [Tue, 30 Dec 2025 10:48:50 +0000 (10:48 +0000)]
releaser: Prepare repository for 0.154.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.153.5
hugoreleaser [Tue, 30 Dec 2025 10:27:17 +0000 (10:27 +0000)]
releaser: Bump versions for release of 0.153.5

[ci skip]

6 months agoimages: Add compression option to image config and clean up some of the options handling
Bjørn Erik Pedersen [Mon, 29 Dec 2025 16:00:49 +0000 (17:00 +0100)]
images: Add compression option to image config and clean up some of the options handling

The original idea of setting quality to 0 for lossless WebP was didn't allow a setting that made sense for both JPEG and WebP.

Note that the above didn't really work at all, so this should not break anything.

6 months agoconfig: Fix cascade per language in hugo.toml regression
Bjørn Erik Pedersen [Mon, 29 Dec 2025 19:48:12 +0000 (20:48 +0100)]
config: Fix cascade per language in hugo.toml regression

An onfurtunate side effect of the fix in v0.153.4.

Fixes #14321

6 months agoimages: Fix WebP quality and hint parameters being ignored
Simon Heimlicher [Mon, 29 Dec 2025 15:47:43 +0000 (16:47 +0100)]
images: Fix WebP quality and hint parameters being ignored

Fixes #14316

6 months agoreleaser: Prepare repository for 0.154.0-DEV
hugoreleaser [Sun, 28 Dec 2025 21:55:32 +0000 (21:55 +0000)]
releaser: Prepare repository for 0.154.0-DEV

[ci skip]

6 months agoreleaser: Bump versions for release of 0.153.4
hugoreleaser [Sun, 28 Dec 2025 21:34:16 +0000 (21:34 +0000)]
releaser: Bump versions for release of 0.153.4

[ci skip]

6 months agoSet cascade target to the content matrix if not set in the cascade itself
Bjørn Erik Pedersen [Sun, 28 Dec 2025 12:18:15 +0000 (13:18 +0100)]
Set cascade target to the content matrix if not set in the cascade itself

Fixes #14310

Co-authored-by: Joe Mooring <joe.mooring@veriphor.com>
7 months agoreleaser: Prepare repository for 0.154.0-DEV
hugoreleaser [Fri, 26 Dec 2025 16:33:20 +0000 (16:33 +0000)]
releaser: Prepare repository for 0.154.0-DEV

[ci skip]

7 months agoreleaser: Bump versions for release of 0.153.3
hugoreleaser [Fri, 26 Dec 2025 15:33:04 +0000 (15:33 +0000)]
releaser: Bump versions for release of 0.153.3

[ci skip]

7 months agobuild(deps): bump github.com/bep/imagemeta from 0.12.0 to 0.12.1
dependabot[bot] [Fri, 26 Dec 2025 08:01:22 +0000 (08:01 +0000)]
build(deps): bump github.com/bep/imagemeta from 0.12.0 to 0.12.1

Bumps [github.com/bep/imagemeta](https://github.com/bep/imagemeta) from 0.12.0 to 0.12.1.
- [Release notes](https://github.com/bep/imagemeta/releases)
- [Commits](https://github.com/bep/imagemeta/compare/v0.12.0...v0.12.1)

---
updated-dependencies:
- dependency-name: github.com/bep/imagemeta
  dependency-version: 0.12.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agoFix error with _content.gotmpl file with index.md siblings
Bjørn Erik Pedersen [Thu, 25 Dec 2025 11:03:55 +0000 (12:03 +0100)]
Fix error with _content.gotmpl file with index.md siblings

Regression introduced in Hugo 0.153.0.

Note that this is a very uncommon setup, but it worked before.

Fixes #14299

7 months agoreleaser: Prepare repository for 0.154.0-DEV
hugoreleaser [Mon, 22 Dec 2025 17:15:37 +0000 (17:15 +0000)]
releaser: Prepare repository for 0.154.0-DEV

[ci skip]

7 months agoreleaser: Bump versions for release of 0.153.2
hugoreleaser [Mon, 22 Dec 2025 16:53:01 +0000 (16:53 +0000)]
releaser: Bump versions for release of 0.153.2

[ci skip]

7 months agoFix "image: unknown format" error
Bjørn Erik Pedersen [Mon, 22 Dec 2025 10:27:06 +0000 (11:27 +0100)]
Fix "image: unknown format" error

Fixes #14295

7 months agomodules: Remove extended edition check
Bjørn Erik Pedersen [Sun, 21 Dec 2025 12:45:12 +0000 (13:45 +0100)]
modules: Remove extended edition check

With WebP support now in the standard Hugo binary, this warning has too many false positives.

Fixes #14284

7 months agomisc: Update edition comparison and guidance in README.md
Joe Mooring [Sat, 20 Dec 2025 20:16:44 +0000 (12:16 -0800)]
misc: Update edition comparison and guidance in README.md

7 months agoreleaser: Prepare repository for 0.154.0-DEV
hugoreleaser [Sat, 20 Dec 2025 15:38:51 +0000 (15:38 +0000)]
releaser: Prepare repository for 0.154.0-DEV

[ci skip]

7 months agoreleaser: Bump versions for release of 0.153.1
hugoreleaser [Sat, 20 Dec 2025 15:15:53 +0000 (15:15 +0000)]
releaser: Bump versions for release of 0.153.1

[ci skip]

7 months agoHandle PNG named *.webp
Bjørn Erik Pedersen [Sat, 20 Dec 2025 14:03:10 +0000 (15:03 +0100)]
Handle PNG named *.webp

Fixes #14288

7 months agoRevert deprecation logging for contentDir per language
Bjørn Erik Pedersen [Sat, 20 Dec 2025 12:58:50 +0000 (13:58 +0100)]
Revert deprecation logging for contentDir per language

It was accidentally introduced because we compile it to file mounts, and `lang` on file mounts is deprecated in favor of `sites.matrix`.

But contentDir per language is something we have had for a long time, and is to useful too to deprecate.

Fixes #14287

7 months agoimages: Add some more PNG tests
Bjørn Erik Pedersen [Sat, 20 Dec 2025 10:57:34 +0000 (11:57 +0100)]
images: Add some more PNG tests

To try to figure out #14288.

7 months agoFix panic when 404 is backed by a content file
Bjørn Erik Pedersen [Sat, 20 Dec 2025 10:26:33 +0000 (11:26 +0100)]
Fix panic when 404 is backed by a content file

Fixes #14283

7 months agointernal/warpc: Increase WebP memory limit to 256 MiB
Joe Mooring [Sat, 20 Dec 2025 11:16:36 +0000 (03:16 -0800)]
internal/warpc: Increase WebP memory limit to 256 MiB

Closes #14282

---------

Co-authored-by: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
7 months agoreleaser: Prepare repository for 0.154.0-DEV
hugoreleaser [Fri, 19 Dec 2025 10:35:25 +0000 (10:35 +0000)]
releaser: Prepare repository for 0.154.0-DEV

[ci skip]

7 months agoreleaser: Bump versions for release of 0.153.0
hugoreleaser [Fri, 19 Dec 2025 10:14:01 +0000 (10:14 +0000)]
releaser: Bump versions for release of 0.153.0

[ci skip]

7 months agohugoreleaser: Updage macospkgremote to increase notarization timeout
Bjørn Erik Pedersen [Fri, 19 Dec 2025 10:11:24 +0000 (11:11 +0100)]
hugoreleaser: Updage macospkgremote to increase notarization timeout

Apple's servers seems to be busy today.

7 months agoMerge commit '08e1ea5c709d3d49bdc3ce3c21e8fa05a33150d0'
Bjørn Erik Pedersen [Fri, 19 Dec 2025 09:07:30 +0000 (10:07 +0100)]
Merge commit '08e1ea5c709d3d49bdc3ce3c21e8fa05a33150d0'

7 months agoSquashed 'docs/' changes from 71f739460..1ad3c75ad
Bjørn Erik Pedersen [Fri, 19 Dec 2025 09:04:19 +0000 (10:04 +0100)]
Squashed 'docs/' changes from 71f739460..1ad3c75ad

1ad3c75ad theme: Run ncu -u to update dependencies (#3311)
2942d3753 content: Update version refs
e298fdfaf content: Remove ref to old version
c1fc876ea content: Improve taxonomic weight example
d706a013d content: Document additional functions
5751c37cc content: Standardize string function signatures
d65e6fae7 misc: Add data/docs.yaml to ignorePaths in cspell config
ba1f98a32 content: Improve collections.First/Last string examples
d7b5a2efd content: Improve collections.First/Last examples
e94e49db2 content: Add Smart Hugo to editor plugins
af204597a content: Clarify config description
9d1cb33cd content: Fix typo
dded23962 content: Clarify note on rare use case for PageRef method
8af9e3be4 content: Update the Homebrew installation description
be56390b3 content: Clarify command description
fa228e9f0 content: Clarify AsciiDoc extensions setting description
3a23a4af2 docs: Add best practices for manual summary marker placement
050d7c75e misc: Fix cspell configuration
74642b18d content: Miscellaneous edits
75a2c8425 content: Add missing reference definitions
6303f27e1 content: Improve description of the SITE.Home method
4dfbd647f Revert the minimal analytics changes (#3265)
c369e534d theme: Move tracking to turbo:load
88b451022 theme: Move tracking to turbo:render
7040dc5ee Move to minimalanalytics for GA tracking
4e8a523fb content: Update KaTeX link attributes to v0.16.25 (phase 2)
21046b942 content: Update KaTeX link attributes to v0.16.25 (phase 1)
b8df9d941 theme: Use Path for the glossary link destination
acd6c2954 theme: Use page Path when generating Markdown links
543f78340 content: Fix formatting
aef89d192 content: Correct page collection quick-reference data
08645236a content: Use RSS output format in shortcode lookup example
58654c106 content: Fix archetype lookup order
9f79bacc4 content: Describe valid uses of the nil keyword
41f139d14 theme: Remove the root view transition
6ab407bb9 content: Improve links on lang.Translate page
91e724065 content: Add missing fragments to links in the module mounts description
2f6b4a58c content: Clarify ByCount sort order
8594590b2 Update netlify.toml
811574060 content: Update version references
a12bcf7dd content: Update version references
23ca199ed Update netlify.toml
5d3da2351 content: Update version references
1617ee75b misc: Update Netlify config to build with v0.152.0
6467bda93 content: Remove outdated new-in badges
4b3ef4bd5 content: Improve description of default mount behavior
5a861f500 content: Revise partials.IncludeCached description and signature
2ad9d705a content: Correct the partials.IncludeCached signature
9f611b879 Update netlify.toml
ca21f5fbd content: Add warning about automatic summaries
2065fadde content: Update commit message guidelines
a0784f261 content: Remove outdated new-in badges
ce5a249f2 content: Remove Codeberg Pages documentation
3424b95f2 content: Update CLI docs
27fd350a6 content: Change KaTeX version references to 0.16.23
ba8c5fd3b content: Change MathJax version reference from v3 to v4
c83465222 content: Fix broken link
c6cde1074 content: Update version references
467277939 content: Fix typo
e424b6b19 content: Document new features in v0.151.0
a46898f79 Update netlify.toml
f8407c3b5 content: Enhance content view template details
974175690 content: Optionally disable whitespace trimming in fenced code blocks
25bffc4c4 Update netlify.toml
98e9ef5f0 theme: Move initColorScheme() to head
a1566495b theme: Preload fonts (#3209)
c0271d266 content: Add missing word in deploy-with-rsync.md
47099c4fa content: Remove outdated new-in badges
439b5c18b content: Fix collections.D seed example
d2486ba67 content: Update description of IsNode method
4de8815e9 content: Update description of the cascade front matter field
0801e9b3f content: Fix broken link
9bbbfb59d content: Update Netlify hosting guide and version refs
4f444fb53 misc: Update docs.yaml
a7a9a7563 Update module.md
a7909fe37 Update netlify.toml
47a2c2038 content: Update collections.D page to remove casting note
ecca5ef48 content: Update summaryLength description with default value
310e11195 content: Change alias example
bd6b53b5d content: Update minify config documentation
21bb0bb66 Update netlify.toml
68912f1a3 content: Update version reference
28a47a50f content: Fix missing link to latest release under Prebuilt Binaries
8eac2a120 theme: Revise inline code span styling
2e71b6d0a Adjust sponsor
d93340a78 content: Update documentation guide
9f6213ebe content: Fix glob pattern-alternatives syntax in cascade.md
1f61fd6be content: Add seed examples to collections.D
65385a5d0 content: Fix Cloudflare deploy not_found_handling value
4f70df235 content: Fix typo
fc216f2d9 content: Fix broken link
e98b340f2 Update cascade.md
e316dbf93 content: Update version references
f8e863e97 misc: Remove textlint config file
3b9c3e2a1 content: Miscellaneous updates related to v0.149.0
3ccc439fc Update netlify.toml
07f5140e8 Merge branch 'tempv0.149.0'
17f8d33d8 content: Add format option to transform.Unmarshal
a6a971596 content: Document the collections.D function
66eee712b content: Update front matter configuration example
863945e13 content: Update fmt.Println example
1d9a92bc7 theme: Don't exclude current section from related content
1386d8ed2 Update introduction.md
0ac89b015 content: Replace inline URLs with autolinks
54fad1e01 content: Fix typo
e09f6b0c5 content: Wrap calls to eturl shortcode in angle brackets
23efd9766 Merge commit 'bfa74537929f409fca841540b971125b7678963a'
e98754e72 resources/page: Add :sectionslug and :sectionslugs permalink tokens

git-subtree-dir: docs
git-subtree-split: 1ad3c75ad0e997d66598c1453db9989fde7d9680

7 months agoresources/images: Don't trust the file extension when decoding JPEG and PNG images
Bjørn Erik Pedersen [Thu, 18 Dec 2025 11:00:20 +0000 (12:00 +0100)]
resources/images: Don't trust the file extension when decoding JPEG and PNG images

Which is it behaved before we added the extended WebP support.

Testing on some sites shows that it's not uncommon to store JPEGs with PNG extensions and vice versa.
This an error situation that needs to be reported, but let us push that to a future Hugo version to reduce the noise in this one.

7 months agoAdd full filename to image processing error messages if possible
Bjørn Erik Pedersen [Thu, 18 Dec 2025 10:32:42 +0000 (11:32 +0100)]
Add full filename to image processing error messages if possible

Fixes #14278

7 months agotailwindcss: Add referece to skipInlineImportsNotFound when import not found in assets
Bjørn Erik Pedersen [Thu, 18 Dec 2025 08:03:22 +0000 (09:03 +0100)]
tailwindcss: Add referece to skipInlineImportsNotFound when import not found in assets

See #14273

7 months agobuild(deps): bump github.com/goccy/go-yaml from 1.19.0 to 1.19.1
dependabot[bot] [Thu, 18 Dec 2025 08:01:25 +0000 (08:01 +0000)]
build(deps): bump github.com/goccy/go-yaml from 1.19.0 to 1.19.1

Bumps [github.com/goccy/go-yaml](https://github.com/goccy/go-yaml) from 1.19.0 to 1.19.1.
- [Release notes](https://github.com/goccy/go-yaml/releases)
- [Changelog](https://github.com/goccy/go-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/goccy/go-yaml/compare/v1.19.0...v1.19.1)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-yaml
  dependency-version: 1.19.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agobuild(deps): bump github.com/alecthomas/chroma/v2 from 2.21.0 to 2.21.1
dependabot[bot] [Thu, 18 Dec 2025 08:01:35 +0000 (08:01 +0000)]
build(deps): bump github.com/alecthomas/chroma/v2 from 2.21.0 to 2.21.1

Bumps [github.com/alecthomas/chroma/v2](https://github.com/alecthomas/chroma) from 2.21.0 to 2.21.1.
- [Release notes](https://github.com/alecthomas/chroma/releases)
- [Commits](https://github.com/alecthomas/chroma/compare/v2.21.0...v2.21.1)

---
updated-dependencies:
- dependency-name: github.com/alecthomas/chroma/v2
  dependency-version: 2.21.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agoImprove error messages for template failures
Bjørn Erik Pedersen [Wed, 17 Dec 2025 17:18:03 +0000 (18:18 +0100)]
Improve error messages for template failures

7 months agoImprove error handling/messages in Hugo Pipes
Bjørn Erik Pedersen [Tue, 16 Dec 2025 15:25:37 +0000 (16:25 +0100)]
Improve error handling/messages in Hugo Pipes

Fixes #14257
Closes #14270

7 months agoFix some outdated front matter
Bjørn Erik Pedersen [Wed, 17 Dec 2025 16:21:11 +0000 (17:21 +0100)]
Fix some outdated front matter

Fixes #14271

7 months agobuild(deps): bump github.com/aws/aws-sdk-go-v2/service/cloudfront
dependabot[bot] [Wed, 17 Dec 2025 10:26:33 +0000 (10:26 +0000)]
build(deps): bump github.com/aws/aws-sdk-go-v2/service/cloudfront

Bumps [github.com/aws/aws-sdk-go-v2/service/cloudfront](https://github.com/aws/aws-sdk-go-v2) from 1.58.2 to 1.58.3.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.58.2...service/s3/v1.58.3)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/cloudfront
  dependency-version: 1.58.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agodeps: Upgrade github.com/alecthomas/chroma/v2 v2.20.0 => v2.21.0
Bjørn Erik Pedersen [Wed, 17 Dec 2025 08:58:35 +0000 (09:58 +0100)]
deps: Upgrade github.com/alecthomas/chroma/v2 v2.20.0 => v2.21.0

Closes #14266

7 months agobuild(deps): bump github.com/aws/aws-sdk-go-v2 from 1.40.1 to 1.41.0
dependabot[bot] [Wed, 10 Dec 2025 08:02:39 +0000 (08:02 +0000)]
build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.40.1 to 1.41.0

Bumps [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) from 1.40.1 to 1.41.0.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.40.1...v1.41.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2
  dependency-version: 1.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agobuild(deps): bump github.com/evanw/esbuild from 0.27.1 to 0.27.2
dependabot[bot] [Wed, 17 Dec 2025 08:01:18 +0000 (08:01 +0000)]
build(deps): bump github.com/evanw/esbuild from 0.27.1 to 0.27.2

Bumps [github.com/evanw/esbuild](https://github.com/evanw/esbuild) from 0.27.1 to 0.27.2.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.27.1...v0.27.2)

---
updated-dependencies:
- dependency-name: github.com/evanw/esbuild
  dependency-version: 0.27.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agoimages: Add a webp test with bg color
Bjørn Erik Pedersen [Wed, 17 Dec 2025 08:41:25 +0000 (09:41 +0100)]
images: Add a webp test with bg color

7 months agotpl/css: Deprecate libsass in favor of dartsass (note)
Bjørn Erik Pedersen [Tue, 16 Dec 2025 21:31:13 +0000 (22:31 +0100)]
tpl/css: Deprecate libsass in favor of dartsass (note)

The upstream library is now EOL and the repo is archived. Also, it's time for us to move away from the extended CGO build and for Hugo users not already done that, move to https://gohugo.io/functions/css/sass/#dart-sass

https://github.com/sass/libsass

Closes #14261

7 months agoEncode and Decode using the libwebp library via WASM with animation support
Bjørn Erik Pedersen [Tue, 16 Dec 2025 18:29:16 +0000 (19:29 +0100)]
Encode and Decode using the libwebp library via WASM with animation support

Fixes #10030
Fixes #8500
Fixes #12843
Fixes #8879
Fixes #12842

7 months agoconfig/allconfig: Correct error message
Joe Mooring [Mon, 15 Dec 2025 17:09:57 +0000 (09:09 -0800)]
config/allconfig: Correct error message

Closes #14259

7 months agotpl: Add missing functions to init files
Joe Mooring [Sat, 13 Dec 2025 17:32:26 +0000 (09:32 -0800)]
tpl: Add missing functions to init files

Closes #14249

7 months agogithub: Add some known humans to the AI whitelist
Bjørn Erik Pedersen [Sat, 13 Dec 2025 17:29:28 +0000 (18:29 +0100)]
github: Add some known humans to the AI whitelist

7 months agobuild(deps): bump golang.org/x/image from 0.33.0 to 0.34.0
dependabot[bot] [Wed, 10 Dec 2025 08:02:47 +0000 (08:02 +0000)]
build(deps): bump golang.org/x/image from 0.33.0 to 0.34.0

Bumps [golang.org/x/image](https://github.com/golang/image) from 0.33.0 to 0.34.0.
- [Commits](https://github.com/golang/image/compare/v0.33.0...v0.34.0)

---
updated-dependencies:
- dependency-name: golang.org/x/image
  dependency-version: 0.34.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agobuild(deps): bump golang.org/x/tools from 0.39.0 to 0.40.0
dependabot[bot] [Tue, 9 Dec 2025 08:03:17 +0000 (08:03 +0000)]
build(deps): bump golang.org/x/tools from 0.39.0 to 0.40.0

Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.39.0 to 0.40.0.
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](https://github.com/golang/tools/compare/v0.39.0...v0.40.0)

---
updated-dependencies:
- dependency-name: golang.org/x/tools
  dependency-version: 0.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agobuild(deps): bump github.com/tdewolff/minify/v2 from 2.24.7 to 2.24.8
dependabot[bot] [Tue, 9 Dec 2025 08:03:11 +0000 (08:03 +0000)]
build(deps): bump github.com/tdewolff/minify/v2 from 2.24.7 to 2.24.8

Bumps [github.com/tdewolff/minify/v2](https://github.com/tdewolff/minify) from 2.24.7 to 2.24.8.
- [Release notes](https://github.com/tdewolff/minify/releases)
- [Commits](https://github.com/tdewolff/minify/compare/v2.24.7...v2.24.8)

---
updated-dependencies:
- dependency-name: github.com/tdewolff/minify/v2
  dependency-version: 2.24.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>