v0.156.0

gohugoio/hugov0.156.0Feb 18, 2026by bep

AI Summary

Significantly improves performance for `collections.Where` and `collections.Sort`. It also deprecates and removes several site methods and template functions.

Key Highlights

  • Speed up `collections.Where` and `collections.Sort` performance.
  • Deprecate `Site.AllPages`, `Site.BuildDrafts`, `Site.Languages`, `Site.Data`, `Site.Sites`.
  • Remove deprecated functions from v0.136.0.
  • Upgrade to Go 1.26.

Breaking Changes

  • Remove `Site.AllPages`.
  • Remove `Site.BuildDrafts`.
  • Remove `Site.Languages`.
  • Remove `Site.Data`.
  • Remove `Page.Sites`.
  • Remove `Site.Sites`.
  • Remove `data.GetCSV`/`getCSV`.
  • Remove `data.GetJSON`/`getJSON`.
  • Remove `crypto.FNV32a` (use `hash.FNV32a`).
  • Remove `resources.Babel` (use `js.Babel`).
  • Remove `resources.PostCSS` (use `css.PostCSS`).
  • Remove `resources.ToCSS` (use `css.Sass`).
  • Remove `Page.NextPage` (use `Page.Next`).
  • Remove `Page.PrevPage` (use `Page.Prev`).
  • Remove `Paginator.PageSize` (use `Paginator.PagerSize`).
  • Remove `Site.LastChange` (use `Site.Lastmod`).
  • Remove `Site.Author` (use `Site.Params.Author`).
  • Remove `Site.Authors` (use `Site.Params.Authors`).
  • Remove `Site.Social` (use `Site.Params.Social`).
  • Remove `Site.IsMultiLingual` (use `hugo.IsMultilingual`).
  • Remove `Sites.First` (use `Sites.Default`).
  • Remove `paginate` (use `pagination.pagerSize`).
  • Remove `paginatePath` (use `pagination.path`).
  • Remove `getjson` cache.
  • Remove `getcsv` cache.

New Features

  • Performance improvements for collection filtering and sorting.

Full Release Notes

This release brings significant speedups of [collections.Where](https://gohugo.io/functions/collections/where/#article) and [collections.Sort](https://gohugo.io/functions/collections/sort/#article) – but this is mostly a "spring cleaning" release, to make the API cleaner and simpler to understand/document.

## Deprecated 

* Site.AllPages is Deprecated
* Site.BuildDrafts is Deprecated
* Site.Languages is Deprecated
* Site.Data is deprecated, use  hugo.Data
* Page.Sites and Site.Sites is Deprecated, use hugo.Sites

See [this topic](https://discourse.gohugo.io/t/deprecations-in-v0-156-0/56732) for more info.

## Removed

These have all been deprecated at least since `v0.136.0` and any usage have been logged as an error for a long time:

Template functions
- data.GetCSV / getCSV (use resources.GetRemote)
- data.GetJSON / getJSON (use resources.GetRemote)
- crypto.FNV32a (use hash.FNV32a)
- resources.Babel (use js.Babel)
- resources.PostCSS (use css.PostCSS)
- resources.ToCSS (use css.Sass)

Page methods:
- .Page.NextPage (use .Page.Next)
- .Page.PrevPage (use .Page.Prev)

Paginator:
- .Paginator.PageSize (use .Paginator.PagerSize)

Site methods:
- .Site.LastChange (use .Site.Lastmod)
- .Site.Author (use .Site.Params.Author)
- .Site.Authors (use .Site.Params.Authors)
- .Site.Social (use .Site.Params.Social)
- .Site.IsMultiLingual (use hugo.IsMultilingual)
- .Sites.First (use .Sites.Default)

Site config:
- paginate (use pagination.pagerSize)
- paginatePath (use pagination.path)

File caches:
- getjson cache
- getcsv cache

## Notes

* Remove items deprecated <= v0.136.0 (note) af5051e7 @bep 
* hugolib: Move site.Data to hugo.Data, deprecate Site.AllPages/BuildDrafts/Languages 86aa6252 @bep #14521 
* hugolib: Add Page.Sites to Site.Sites deprecation notice 4148eded @jmooring #14532 
* resources/page: Deprecate cascade._target in favor of cascade.target 828ee720 @jmooring #14341 
* tpl/tplimpl: Throw error when calling gist shortcode 4384f9b8 @jmooring #14491 
* tpl/tplimpl: Throw error when calling twitter/twitter_simple shortcodes 55d136dd @jmooring #14488 

## Bug fixes

* tpl/internal: Replace deprecated parser.ParseDir and doc.New 4a641d15 @bep #14513 
* commands: Fix --panicOnWarning flag having no effect with module version warnings 3f9d0ad2 @bep #14524 
* paths: Fix handling of _ as a path name 32027e50 @khayyamsaleem #14344 
* docs: Fix lineNos default value in docs.yaml 498431d6 @jmooring 
* hugolib: Fix term title when taxonomy name contains spaces 773664b8 @bep #13422 

## Improvements


* hugolib: Simplify sites collection bba2aed3 @bep 
* hugolib: Adjust hugo.Sites.Default 29b8e17d @bep #14531 
* Move common/hugo/HugoInfo to resources/page 3c823408 @bep 
* hugolib: Add hugo.Sites and .Site.IsDefault(), modify .Site.Sites ab62320d @jmooring #14479 #14481 
* output: Remove unused method 8d19f5a7 @bep #14522 
* Update AI assistance guidelines in CONTRIBUTING.md 77294735 @bep 
* tpl/collections: Speed up where and sort performance 47e39af2 @bep 
* commands: Skip chmod for files without owner-write permission 7850e7ce @jmooring #14507 
*  tpl/collections: Add some more benchmarks for where and sort 2e5132d8 @bep 
* all: Change site to project where appropriate 19ab3f58 @jmooring #14504 
* markup/highlight: Allow lineNos to be true, false, "inline", or "table" 3158a512 @jmooring #13481 
* Upgrade to Go 1.26 b358a65c @bep 
* tpl: Move from md5 to xxhash for some in memory keys 8ae5e1a8 @bep 
* testscripts/commands: Update 'future' date to far future e2776593 @toddy15 #14486 

## Dependency Updates

* build(deps): bump google.golang.org/api from 0.255.0 to 0.267.0 d8ec0eee @dependabot[bot] 
* build(deps): bump github.com/bep/textandbinarywriter 21be4afd @dependabot[bot] 
* build(deps): bump github.com/bep/simplecobra from 0.6.1 to 0.7.0 e549016b @dependabot[bot] 
* build(deps): bump github.com/bep/tmc from 0.5.1 to 0.6.0 a392906b @dependabot[bot] 
* build(deps): bump github.com/gohugoio/hugo-goldmark-extensions/extras 86786c91 @dependabot[bot] 
* build(deps): bump github.com/gohugoio/hugo-goldmark-extensions/passthrough 7a7308ae @dependabot[bot] 
* build(deps): bump golang.org/x/tools from 0.41.0 to 0.42.0 2d1d7312 @dependabot[bot] 
* build(deps): bump github.com/bep/helpers from 0.6.0 to 0.7.0 b26fbf80 @dependabot[bot] 
* build(deps): bump golang.org/x/image from 0.35.0 to 0.36.0 73583091 @dependabot[bot] 

## Build Setup

* snap: Stop building for ppc64el and s390x e6f01bb4 @jmooring #14519 
* Reapply "release: Support alpha, beta, and RC releases" de0c9f3e @jmooring #14466 

## Documentation

* docs: Regenerate docs.yaml 8b7b6af9 @bep 
* docker: Add full tar and openssh-client to support GitHub Actions 71377148 @jmooring #14502