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