Hugo Updates & Release Notes

Last updated: May 1, 2026

Get this feed:
  • Apr 30, 2026
    • Date parsed from source:
      Apr 30, 2026
    • First seen by Releasebot:
      May 1, 2026
    Hugo logo

    Hugo

    v0.161.1

    Hugo adds security and resource-handling improvements with updated retry behavior and child-process permissions.

    What's Changed

    • resources: Honor Retry-After header in resources.GetRemote retries
    • warpc: Move to parson.c in https://github.com/kgabis/parson
    • config/security: Add AllowChildProcess to security.node.permissions
    • config/security: Restrict default http.urls "@" deny to userinfo

    Contributors

    bep

    Original source
  • Apr 28, 2026
    • Date parsed from source:
      Apr 28, 2026
    • First seen by Releasebot:
      Apr 29, 2026
    Hugo logo

    Hugo

    v0.161.0

    Hugo ships security hardening and more flexible content controls, adding nested vars support in css.Build and css.Sass, slice-based permalinks, and a broader filename identifier scheme. It also tightens Node tool execution and HTTP URL defaults while fixing i18n and other release issues.

    This release contains two security hardening fixes:

    • We now run the Node tools PostCSS, Babel and TailwindCSS, by default, with the --permission flag with the permissions defined in security.node.permissions. This means that you need Node >= 22 installed and that css.TailwindCSS now requires that the Tailwind CSS CLI must be installed as a Node.js package. The standalone executable is no longer supported
    • We have made the defaults in security.http.urls more restrictive.

    But there are some notable new features, as well:

    Nested vars support in css.Build and css.Sass

    A practical example in css.Build would be to have something like this in hugo.toml :

    [params.style]
    primary = "#000000"
    background = "#ffffff"
    [params.style.dark]
    primary = "#ffffff"
    background = "#000000"

    And in the stylesheet:

    @import "hugo:vars";
    @import "hugo:vars/dark" (prefers-color-scheme: dark): root {
    color-scheme: light dark;
    }

    Slice-based permalinks config

    The permalinks configuration is now much more flexible (the old setup still works). It uses the same target matchers as in the cascade config, meaning you can now do:

    permalinks:

    • target:
      kind: page
      path: "/books/**"
      pattern: /books/:year/:slug/
    • target:
      kind: section
      path: "/{books,books/**}"
      pattern: /libros/:sections[1:]
    • target:
      kind: page
      pattern: /other/:slug/

    The above example isn't great, but it at least shows the gist of it.

    A more flexible scheme for identifiers in filenames

    What we had before was e.g. content/mypost.en.md which told Hugo that the content files was in English. With the new setup you could also name the file content/mypost.language_en.md. This alone doesn't sound very useful, but this allows you to use more prefixes:

    Prefix | Description | Relevant for
    language_ | Language | Content and layout files.
    role_ | Role | Content and layout files.
    version_ | Version | Content and layout files.
    outputformat_ | Output format | Layout files.
    mediatype_ | Media type | Layout files.
    kind_ | Page kind | Layout files.
    layout_ | Layout | Layout files.

    All Changes

    • langs/i18n: Fix translation lookup when using language variants
    • create: Fix non-deterministic conflict detection in hugo new content
    • commands: Fix environment isolation for configuration settings
    • Fix filename dimension identifiers (role_X, version_X) to replace mount config
    • Fix it so we never auto-fallback to page resources in other roles/versions
    • css: Support nested hugo:vars/ imports
    • github: Update GitHub actions versions
    • hugolib: Do not render aliases if the page is not rendered
    • langs/i18n: Improve default content language fallback
    • helpers: Remove unused code
    • common/constants: Remove unused consts
    • common/paths: Remove unused code
    • tests: Update Ruby setup action to v1.305.0
    • langs: Use Language.Locale as primary localization key
    • config/security: Add "! " negation to Whitelist, harden default http.urls
    • Harden Node tool execution with --permission flag
    • tpl/collections: Honor the Eqer interface in where comparisons
    • modules: Ignore non-require blocks in go.mod rewrite
    • Replace the concurrent map with an identical upstream version
    • Add slice-based permalinks config with PageMatcher target
    • commands: Add missing import
    • Revert "common/hugo: Deprecate extended and extended_withdeploy editions"
    • Adjust the SECURITY.md slightly
    • resources/page: Add passing test for Issue
    • Add a more flexible filename identifier scheme that also allows setting roles and versions
    • common/hugo: Deprecate extended and extended_withdeploy editions
    • parser/pageparser: Add a parser fuzz test
    • Replace deprecated .Site.Sites/.Page.Sites with hugo.Sites intests
    • agents: Add a note about having the issue ID in test names
    • build(deps): bump github.com/getkin/kin-openapi from 0.135.0 to 0.137.0
    • build(deps): bump github.com/mattn/go-isatty from 0.0.21 to 0.0.22
    • build(deps): bump github.com/tdewolff/minify/v2 from 2.24.12 to 2.24.13
    • build(deps): bump github.com/magefile/mage from 1.17.1 to 1.17.2
    • deps: Upgrade github.com/bep/imagemeta v0.17.1 => v0.17.2
    • build(deps): bump github.com/aws/aws-sdk-go-v2/service/cloudfront
    • build(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.21
    • build(deps): bump github.com/bep/mclib
    • build(deps): bump google.golang.org/api from 0.267.0 to 0.276.0
    • build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.41.5 to 1.41.6
    • build(deps): bump github.com/getkin/kin-openapi from 0.134.0 to 0.135.0
    • build(deps): bump github.com/bep/goportabletext from 0.1.0 to 0.2.0
    • build(deps): bump golang.org/x/image from 0.38.0 to 0.39.0
    • deps: Upgrade github.com/bep/imagemeta v0.17.0 => v0.17.1
    • build(deps): bump golang.org/x/tools from 0.43.0 to 0.44.0
    • build(deps): bump github.com/evanw/esbuild from 0.27.4 to 0.28.0
    • build(deps): bump github.com/aws/aws-sdk-go-v2 from 1.41.1 to 1.41.5
    • build(deps): bump github.com/pelletier/go-toml/v2 from 2.2.4 to 2.3.0
    • build(deps): bump github.com/tdewolff/minify/v2 from 2.24.11 to 2.24.12
    Original source
  • All of your release notes in one feed

    Join Releasebot and get updates from Hugo and hundreds of other software products.

    Create account
  • Apr 8, 2026
    • Date parsed from source:
      Apr 8, 2026
    • First seen by Releasebot:
      Apr 9, 2026
    Hugo logo

    Hugo

    v0.160.1

    Hugo fixes panics, shortcode context leaks, and multilingual root section creation in a bug-fix release.

    What's Changed

    • Fix panic when passthrough elements are used in headings #14677
    • Fix panic on edit of legacy mapped template names that's also a valid path in the new setup #14740
    • Fix RenderShortcodes leaking context markers when indented #12457
    • Strip nested page context markers from standalone RenderShortcodes #14732
    • Rename deprecated cascade._target to cascade.target in tests
    • Fix auto-creation of root sections in multilingual sites #14681
    • readme: Fix links

    Contributors

    bep and chicks-net

    Original source
  • Apr 4, 2026
    • Date parsed from source:
      Apr 4, 2026
    • First seen by Releasebot:
      Apr 5, 2026
    Hugo logo

    Hugo

    v0.160.0

    Hugo adds CSS custom property injection for css.Build and expands render hook .Position support for more accurate output, alongside bug fixes for link escaping and partial quotes plus updated docs and dependency bumps.

    Now you can inject CSS vars, e.g. from the configuration, into your stylesheets when building with css.Build. Also, now all the render hooks has a .Position method, now also more accurate and effective.

    Bug fixes

    • Fix some recently introduced Position issues #14710
    • markup/goldmark: Fix double-escaping of ampersands in link URLs #14715
    • tpl: Fix stray quotes from partial decorator in script context #14711

    Improvements

    • all: Replace NewIntegrationTestBuilder with Test/TestE/TestRunning
    • tpl/css: Support @import "hugo:vars" for CSS custom properties in css.Build #14699
    • Improve and extend .Position handling in Goldmark render hooks #14663
    • markup/goldmark: Clean up test

    Dependency Updates

    • build(deps): bump github.com/magefile/mage from 1.16.1 to 1.17.1
    • build(deps): bump github.com/go-jose/go-jose/v4 from 4.1.3 to 4.1.4
    • build(deps): bump golang.org/x/image from 0.37.0 to 0.38.0

    Documentation

    • readme: Revise edition descriptions and installation instructions
    Original source
  • Mar 31, 2026
    • Date parsed from source:
      Mar 31, 2026
    • First seen by Releasebot:
      Apr 1, 2026
    Hugo logo

    Hugo

    v0.159.2

    Hugo fixes a Markdown XSS issue and adds release archives for non-extended-withdeploy builds.

    Note that the security fix below is not a potential threat if you either:

    • Trust your Markdown content files.
    • Have custom render hook template for links and images.

    EDIT IN: This release also adds release archives for non-extended-withdeploy builds.

    What's Changed

    • Fix potential content XSS by escaping dangerous URLs in Markdown links and images 479fe6c @bep
    • resources/page: Fix shared reader in Source.ValueAsOpenReadSeekCloser df520e3 @jmooring #14684

    Contributors

    jmooring and bep

    Original source
  • Mar 26, 2026
    • Date parsed from source:
      Mar 26, 2026
    • First seen by Releasebot:
      Mar 27, 2026
    Hugo logo

    Hugo

    v0.159.1

    Hugo fixes SVG minification so namespaced attributes like x-bind are preserved, helping AlpineJS-powered sites work correctly out of the box.

    The regression fixed in this release isn't new, but it's so subtle that we thought we'd release this sooner rather than later. For some time now, the minifier we use have stripped namespaced attributes in SVGs, which broke dynamic constructs using e.g. AlpineJS' x-bind: namespace (library used by Hugo's documentation site).

    To fix this, the upstream library has hadded a keepNamespaces slice option. It was not possible to find a default that would make all happy, so we opted for an option that at least would make AlpineJS sites work out of the box:

    [minify.tdewolff.svg] keepNamespaces = ['' , 'x-bind']
    

    What's Changed

    • minifiers: Keep x-bind and blank namespace in SVG minification 42289d7 @bep #14669

    Contributors

    bep

    Assets 31

    • hugo_0.159.1_checksums.txt sha256:8cc9333f340afa9a734e07d69a9d89e78044b9d9a156bf84d270409b9cc0ceaa 2.87 KB 14 hours ago
    • hugo_0.159.1_darwin-universal.pkg sha256:a539929efc1042c7a6637e3b005be22b1ee6787bb2ccf5f363e5aaec89d440f0 34.2 MB 14 hours ago
    • hugo_0.159.1_dragonfly-amd64.tar.gz sha256:6b2c5fe9412a14fdbf2949d64fe67227f11c8fa9cdef9b4fbf2fc8383a4f498e 17.5 MB 14 hours ago
    • hugo_0.159.1_freebsd-amd64.tar.gz sha256:9ab3c8078a0dc623e06da3556a75a9269edfa7b82c3ef438d7da6e462ee60e6c 17.5 MB 14 hours ago
    • hugo_0.159.1_Linux-64bit.tar.gz sha256:297e18fa21e4796d80a3270c1234873f5a979cb9a329a0c93d9888a1b39f106c 17.6 MB 14 hours ago
    • hugo_0.159.1_linux-amd64.deb sha256:aeb4a3fdb5835fcce75be34193ad95faf4809645222b5fd74c500125960fc050 18.3 MB 14 hours ago
    • hugo_0.159.1_linux-amd64.tar.gz sha256:297e18fa21e4796d80a3270c1234873f5a979cb9a329a0c93d9888a1b39f106c 17.6 MB 14 hours ago
    • hugo_0.159.1_linux-arm.tar.gz sha256:e84f1ed44cc8f31e02df1fd2dfc5a282e13f2badf8fd84eafb8a2684df387b8e 16.3 MB 14 hours ago
    • hugo_0.159.1_linux-arm64.deb sha256:6c9dd58a6a19d942c48a691ddbac42fb64eb5738adb69639b58788d95d4d9c44 16.8 MB 14 hours ago
    • hugo_0.159.1_linux-arm64.tar.gz sha256:9786a2ec695b607560a3bf7dbfe1666db6ea320bb1cdabffdb7a4c191fd6a8d8 16.2 MB 14 hours ago
    • hugo_0.159.1_netbsd-amd64.tar.gz sha256:0d23252a06744b6edd29a8fd08b85af646934711050e262b133bb3732b931295 17.5 MB 14 hours ago
    • hugo_0.159.1_openbsd-amd64.tar.gz sha256:35abfff4e5d8c4da6faa712f8aee9033e05c07c161a0145660dff051d5aba408 17.5 MB 14 hours ago
    • hugo_0.159.1_solaris-amd64.tar.gz sha256:60230f525cdc9ed9104641cf93f92f2ff48b6318ec96d20dbd0f7efa2eed93c7 17.5 MB 14 hours ago
    • hugo_0.159.1_windows-amd64.zip sha256:13ab323475cb2719a264b93f0daaa39db21100a922f51dee018df487020797b0 18.2 MB 14 hours ago
    • hugo_0.159.1_windows-arm64.zip sha256:3912cd9ed262c7a14c414e9ff368da013bd3aaaedbc9b8c4178f48486eb1e237 16.5 MB 14 hours ago
    • hugo_extended_0.159.1_darwin-universal.pkg sha256:8f8d93ac3562e688b2a86af3d0b07685e2d54993c5451d7b594571975692ab6f 35.7 MB 14 hours ago
    • hugo_extended_0.159.1_Linux-64bit.tar.gz sha256:cded0ffbc7540c5cee330c2ad24d678a0d4a693e9c590cc05c1d1d5556a21aa4 18.3 MB 14 hours ago
    • hugo_extended_0.159.1_linux-amd64.deb sha256:55eacfba3a71c3e847850ce0be31a31130fa4ecd71f8136bffa7dc80cf9c5313 19.1 MB 14 hours ago
    • hugo_extended_0.159.1_linux-amd64.tar.gz sha256:cded0ffbc7540c5cee330c2ad24d678a0d4a693e9c590cc05c1d1d5556a21aa4 18.3 MB 14 hours ago
    • hugo_extended_0.159.1_linux-arm64.deb sha256:184f8dc27afb48200a2cfd6ee2b5e38680d56ad9484595e7e1b1cba2bf43719a 17.5 MB 14 hours ago
    • hugo_extended_0.159.1_linux-arm64.tar.gz sha256:210c5e22631fa6a6bad3b6c623f8997a70d2ac306d61ca326d5f31753165779d 16.9 MB 14 hours ago
    • hugo_extended_0.159.1_windows-amd64.zip sha256:8d3df3a3ad0cb23fd567dc5b6c2ad63f56e6894042bf4d40806b5c2d4614de89 19.2 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_darwin-universal.pkg sha256:cfe14978b9233a6ddad4aeca514d062cc4b4aa9565fb82e49d5d15d9234bc119 52.6 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_Linux-64bit.tar.gz sha256:81de435b65a06f2879c0fd158412822cbcfcd638dcc36256da5e002067b40975 27 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_linux-amd64.deb sha256:e42ca72f2f138e0970926779551f88a9d8dcc4cdd4fc7575b41b93adbdb3a172 28.1 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_linux-amd64.tar.gz sha256:81de435b65a06f2879c0fd158412822cbcfcd638dcc36256da5e002067b40975 27 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_linux-arm64.deb sha256:10b439cb3882e3496d7ea8db83fadaca1fe2b0486694dda90a74036cb2858ce1 25.6 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_linux-arm64.tar.gz sha256:5c3a3198fb47945b2743ba34d9a63b8d9241314a45fc88735735a942868401a5 24.7 MB 14 hours ago
    • hugo_extended_withdeploy_0.159.1_windows-amd64.zip sha256:05c6a4b0c79be0485c5cb3c8ed8b098f26feafd55ae53cede68055e4677c49fb 28.2 MB 14 hours ago
    • Source code (zip) 15 hours ago
    • Source code (tar.gz) 15 hours ago

    8 people reacted: šŸ‘ 5 šŸŽ‰ 1 ā¤ļø 2

    Original source
  • Mar 23, 2026
    • Date parsed from source:
      Mar 23, 2026
    • First seen by Releasebot:
      Mar 24, 2026
    Hugo logo

    Hugo

    v0.159.0

    Hugo improves and simplifies Node.js and npm dependency management for multi-module setups, adds safer page-not-found handling, preserves non-content files in convert output, and ships several fixes, dependency updates, and docs refreshes.

    This release greatly improves and simplifies management of Node.js/npm dependencies in a multi-module setup. See this page for more information.

    Note

    • Replace deprecated site.Data with hugo.Data in tests a8fca59 @bep
    • Replace deprecated excludeFiles and includeFiles with files in tests 182b104 @bep
    • Replace deprecated :filename with :contentbasename in the permalinks test eb11c3d @bep

    Bug fixes

    • tpl/tplimpl: Fix Vimeo shortcode test eaf4c75 @jmooring #14649

    Improvements

    • create: Return error instead of panic when page not found 807cae1 @mango766 #14112
    • commands: Preserve non-content files in convert output c4fb61d @xndvaz #4621
    • npm: Use workspaces to simplify hugo mod npm pack d88a29e @bep
    • commands: Close cpu profile file when StartCPUProfile fails 9dd9c76 @buley
    • Remove the AI Watchdog workflow for now 3315a86 @bep
    • Remove 'bep' from PR user logins skip list 3824484 @bep
    • tpl/tplimpl: Comment out the Vimeo simple shortcode tests 7813c5c @bep #14649

    Dependency Updates

    • build(deps): bump github.com/olekukonko/tablewriter from 1.1.3 to 1.1.4 (#14641) 3ff9b7f @dependabot [bot]
    • build(deps): bump github.com/yuin/goldmark from 1.7.16 to 1.7.17 be93ccd @dependabot [bot]
    • build(deps): bump github.com/magefile/mage from 1.15.0 to 1.16.1 2669bca @dependabot [bot]
    • build(deps): bump golang.org/x/image from 0.36.0 to 0.37.0 753d447 @dependabot [bot]
    • build(deps): bump google.golang.org/grpc from 1.78.0 to 1.79.3 4f39d72 @dependabot [bot]

    Documentation

    • docs: Update docs.yaml d2043cf @bep
    • commands: Update docs linke to Node.js docs 4f3c398 @bep
    Original source
  • Mar 16, 2026
    • Date parsed from source:
      Mar 16, 2026
    • First seen by Releasebot:
      Mar 17, 2026
    Hugo logo

    Hugo

    v0.158.0

    Hugo releases css.Build for fast CSS bundling, transformation, and minification, plus a new strings.ReplacePairs utility. The update also shifts language configuration toward locale-based options and deprecates older settings, with numerous bug fixes and improvements across templates, resources, and Hugo libraries.

    Notes

    Deprecations

    The methods and config options are deprecated and will be removed in a future Hugo release.

    Also see this article

    Language configuration

    • languageCode → Use locale instead.
    • languages..languageCode → Use languages..locale instead.
    • languages..languageName → Use languages..label instead.
    • languages..languageDirection → Use languages..direction instead.

    Language methods

    • .Site.LanguageCode → Use .Site.Language.Locale instead.
    • .Language.LanguageCode → Use .Language.Locale instead.
    • .Language.LanguageName → Use .Language.Label instead.
    • .Language.LanguageDirection → Use .Language.Direction instead.

    Bug fixes

    • tpl/css: Fix external source maps e431f90 @bep #14620
    • hugolib: Fix server no watch 59e0446 @jmooring #14615
    • resources: Fix context canceled on GetRemote with per-request timeout 842d8f1 @bep #14611
    • tpl/tplimpl: Prefer early suffixes when media type matches 4eafd9e @bep #13877 #14601
    • all: Run go fix ./... e310822 @bep
    • internal/warpc: Fix SIGSEGV in Close() when dispatcher fails to start c9b88e4 @bep #14536
    • Fix index out of range panic in fileEventsContentPaths f797f84 @bep #14573

    Improvements

    • resources: Re-publish on transformation cache hit 3c980c0 @bep #14629
    • create/skeletons: Use css.Build in theme skeleton 404ac00 @jmooring #14626
    • tpl/css: Add a test case for rebuilds on CSS options changes 06fcb72 @bep
    • hugolib: Allow regular pages to cascade to self 9b5f1d4 @jmooring #14627
    • tpl/css: Allow the user to override single loader entries 623722b @bep #14623
    • tpl/css: Make default loader resolution for CSS @import and url() always behave the same a7cbcf1 @bep #14619
    • internal/js: Add default mainFields for CSS builds 36cdb2c @jmooring #14614
    • Add css.Build 3e3b849 @bep #14609 #14613
    • resources: Use full path for Exif etc. decoding error/warning messages c47ec23 @bep #12693
    • Move to new locales library and upgrade CLDR from v36.1 to v48.1 4652ae4 @bep
    • tpl/strings: Add strings.ReplacePairs function 13a95b9 @jmooring #14594
    • github: Remove pull_request_template.md 54c8048 @bep
    • testing: Make commands tests pass in Go 1.26.1 157bfdd @bep
    • refactor: Deprecate language configuration and template methods d4f2122 @jmooring #14269
    • Replace Exif with Meta in tests 991d2f9 @bep
    • resources: Improve getImageOps error message e857777 @jmooring #14571
    • resources/images: Add IsImageResourceWithMeta etc. tests for bmp and gif 44dc384 @bep #14568

    Dependency Updates

    • deps: Upgrade github.com/evanw/esbuild v0.27.3 => v0.27.4 0e46a97 @bep
    • build(deps): bump github.com/getkin/kin-openapi from 0.133.0 to 0.134.0 c27d9e8 @dependabot [bot]
    • build(deps): bump golang.org/x/tools from 0.42.0 to 0.43.0 098eac5 @dependabot [bot]
    • build(deps): bump gocloud.dev from 0.44.0 to 0.45.0 87f8de8 @dependabot [bot]
    • build(deps): bump golang.org/x/sync from 0.19.0 to 0.20.0 67ef6c6 @dependabot [bot]
    • build(deps): bump golang.org/x/net from 0.50.0 to 0.51.0 (#14569) b29c2f7 @dependabot [bot]
    • build(deps): bump github.com/tdewolff/minify/v2 from 2.24.9 to 2.24.10 (#14585) e91d191 @dependabot [bot]
    • build(deps): bump github.com/bep/imagemeta from 0.15.0 to 0.17.0 (#14584) a8a54bd @dependabot [bot]
    Original source
  • Feb 25, 2026
    • Date parsed from source:
      Feb 25, 2026
    • First seen by Releasebot:
      Feb 26, 2026
    Hugo logo

    Hugo

    v0.157.0

    GitInfo support for Hugo Modules enables per-version content with runnable demos. This release adds Page.GitInfo for Git module content, fixes menu refs and imaging docs, and improves section pages and requests while adding partial AVIF/HEIF/HEIC support.

    The notable new feature is GitInfo support for Hugo Modules. See this repo for a runnable demo where multiple versions of the same content is mounted into different versions.

    Bug fixes

    • Fix menu pageRef resolution in multidimensional setups
    • docs: Regen and fix the imaging docshelper output
    • hugolib: Fix automatic section pages not replaced by sites.complements

    Improvements

    • Handle GitInfo for modules where Origin is not set when running go list
    • commands: Update link to highlighting style examples
    • Add AVIF, HEIF and HEIC partial support (only metadata for now)
    • resources/images: Adjust WebP processing defaults
    • Add Page.GitInfo support for content from Git modules
    • Add per-request timeout option to resources.GetRemote
    • Update AI Watchdog action version in workflow
    • config: Skip taxonomy entries with empty keys or values
    • Add guideline for brevity in code and comments
    • modules: Include JSON error info from go mod download in error messages

    Dependency Updates

    • build(deps): bump github.com/tdewolff/minify/v2 from 2.24.8 to 2.24.9
    • build(deps): bump github.com/bep/imagemeta from 0.14.0 to 0.15.0
    Original source
  • Feb 18, 2026
    • Date parsed from source:
      Feb 18, 2026
    • First seen by Releasebot:
      Feb 19, 2026
    Hugo logo

    Hugo

    v0.156.0

    This release speeds up collections and streamlines the API with wide deprecations and cleanups, plus targeted fixes and improvements across templates, hugolib, and site handling. It shifts data under hugo.Data, adds Sites concepts, and boosts where and sort performance for faster builds.

    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 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) af5051e @bep
    • hugolib: Move site.Data to hugo.Data, deprecate Site.AllPages/BuildDrafts/Languages 86aa625 @bep #14521
    • hugolib: Add Page.Sites to Site.Sites deprecation notice 4148ede @jmooring #14532
    • resources/page: Deprecate cascade._target in favor of cascade.target 828ee72 @jmooring #14341
    • tpl/tplimpl: Throw error when calling gist shortcode 4384f9b @jmooring #14491
    • tpl/tplimpl: Throw error when calling twitter/twitter_simple shortcodes 55d136d @jmooring #14488

    Bug fixes

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

    Improvements

    • hugolib: Simplify sites collection bba2aed @bep
    • hugolib: Adjust hugo.Sites.Default 29b8e17 @bep #14531
    • Move common/hugo/HugoInfo to resources/page 3c82340 @bep
    • hugolib: Add hugo.Sites and .Site.IsDefault(), modify .Site.Sites ab62320 @jmooring #14479 #14481
    • output: Remove unused method 8d19f5a @bep #14522
    • Update AI assistance guidelines in CONTRIBUTING.md 7729473 @bep
    • tpl/collections: Speed up where and sort performance 47e39af @bep
    • commands: Skip chmod for files without owner-write permission 7850e7c @jmooring #14507
    • tpl/collections: Add some more benchmarks for where and sort 2e5132d @bep
    • all: Change site to project where appropriate 19ab3f5 @jmooring #14504
    • markup/highlight: Allow lineNos to be true, false, "inline", or "table" 3158a51 @jmooring #13481
    • Upgrade to Go 1.26 b358a65 @bep
    • tpl: Move from md5 to xxhash for some in memory keys 8ae5e1a @bep
    • testscripts/commands: Update 'future' date to far future e277659 @toddy15 #14486

    Dependency Updates

    • build(deps): bump google.golang.org/api from 0.255.0 to 0.267.0 d8ec0ee @dependabot [bot]
    • build(deps): bump github.com/bep/textandbinarywriter 21be4af @dependabot [bot]
    • build(deps): bump github.com/bep/simplecobra from 0.6.1 to 0.7.0 e549016 @dependabot [bot]
    • build(deps): bump github.com/bep/tmc from 0.5.1 to 0.6.0 a392906 @dependabot [bot]
    • build(deps): bump github.com/gohugoio/hugo-goldmark-extensions/extras 86786c9 @dependabot [bot]
    • build(deps): bump github.com/gohugoio/hugo-goldmark-extensions/passthrough 7a7308a @dependabot [bot]
    • build(deps): bump golang.org/x/tools from 0.41.0 to 0.42.0 2d1d731 @dependabot [bot]
    • build(deps): bump github.com/bep/helpers from 0.6.0 to 0.7.0 b26fbf8 @dependabot [bot]
    • build(deps): bump golang.org/x/image from 0.35.0 to 0.36.0 7358309 @dependabot [bot]

    Build Setup

    • snap: Stop building for ppc64el and s390x e6f01bb @jmooring #14519
    • Reapply "release: Support alpha, beta, and RC releases" de0c9f3 @jmooring #14466

    Documentation

    • docs: Regenerate docs.yaml 8b7b6af @bep
    • docker: Add full tar and openssh-client to support GitHub Actions 7137714 @jmooring #14502

    Contributors

    jmooring, bep, and 3 other contributors

    Assets 31

    11 people reacted

    Original source
  • Feb 8, 2026
    • Date parsed from source:
      Feb 8, 2026
    • First seen by Releasebot:
      Feb 8, 2026
    Hugo logo

    Hugo

    v0.155.3

    What's Changed

    • hugolib: Don't render default site redirect for non-primary isHTML output formats
    • server: Fix stuck server global error logging
    • build(deps): bump github.com/evanw/esbuild from 0.27.2 to 0.27.3
    • server: Fix panic when the server browser error handler tried to use a config in a state of flux

    Contributors

    bep and dependabot

    Original source
  • Feb 2, 2026
    • Date parsed from source:
      Feb 2, 2026
    • First seen by Releasebot:
      Feb 3, 2026
    Hugo logo

    Hugo

    v0.155.2

    Release notes

    Note that the bug fix below is for the two new dimensions introduced in v0.153.0 (version and role), multiple languages worked fine. Also, changes to the first version and role also worked, which had me head-scratching for a while. Oh, well, enjoy.

    • Fix template change detection for multi-version sites #14461

    • resources/image: Add some image decode/encode debug logging #14337 #14460

    Original source
  • Jan 11, 2026
    • Date parsed from source:
      Jan 11, 2026
    • First seen by Releasebot:
      Jan 12, 2026
    Hugo logo

    Hugo

    v0.154.5

    What's Changed

    • Fix some default site redirect woes
    • hugolib: Fix newly created shortcodes not found during server rebuild
    • tpl/tplimpl: Remove trailing slash from void elements

    Contributors

    jmooring, bep, and Hasaber8

    Original source
  • Jan 6, 2026
    • Date parsed from source:
      Jan 6, 2026
    • First seen by Releasebot:
      Jan 7, 2026
    Hugo logo

    Hugo

    v0.154.3

    What's Changed

    • build(deps): bump github.com/yuin/goldmark from 1.7.13 to 1.7.16

    Contributors

    dependabot

    Original source
  • Dec 31, 2025
    • Date parsed from source:
      Dec 31, 2025
    • First seen by Releasebot:
      Jan 7, 2026
    Hugo logo

    Hugo

    v0.154.1

    Hugo ships a small but useful update with WASM licensing notes and a fix for partial decorator detection, alongside fresh builds and deployable assets for multiple platforms. This marks an actual product update with new capabilities and improved stability.

    What's Changed

    • Add WASM licensing information to README 8f3527f @bep
    • Fix partial decorator detection in partial with blocks with outer range break or continue 09048aa @bep #14333

    Contributors

    bep

    Assets

    • hugo_0.154.1_checksums.txt
      sha256:5ec1fde4cebacf30fbacc6150c4215f3d4573c03db5feb053c4470e72d52cbbe
      2.87 KB
      last week
    • hugo_0.154.1_darwin-universal.pkg
      sha256:5c89b79a0846fecad19254f359e0846e49c3dc41ff79e6ef14cbbe345224bb2b
      34.9 MB
      last week
    • hugo_0.154.1_dragonfly-amd64.tar.gz
      sha256:d2606f7e83062b8df0f1aa611115931c9053de3ee9a5db135c0db0311988c704
      17.9 MB
      last week
    • hugo_0.154.1_freebsd-amd64.tar.gz
      sha256:ff424832e129fd9acfeb59d656fdb01caba2ba63b27f991d6db4fba6c68f3a0a
      17.9 MB
      last week
    • hugo_0.154.1_Linux-64bit.tar.gz
      sha256:8c9de3eb8ee8bfb32d9c79c82ed71b98b8702539748cd919b866bc1e6a281c9f
      18 MB
      last week
    • hugo_0.154.1_linux-amd64.deb
      sha256:05c3d7fdc1e863f0b8085f73952696a35a08aea85f751e7e13f4918e0271590d
      18.8 MB
      last week
    • hugo_0.154.1_linux-amd64.tar.gz
      sha256:8c9de3eb8ee8bfb32d9c79c82ed71b98b8702539748cd919b866bc1e6a281c9f
      18 MB
      last week
    • hugo_0.154.1_linux-arm.tar.gz
      sha256:0844cf6a8b3a7a3518b16cb6f4134f4ef15338c11eb2657df5371d935774701c
      16.3 MB
      last week
    • hugo_0.154.1_linux-arm64.deb
      sha256:5629dd9a4be55af3a52811ce1974f615a6744949dea87a149febdfeb9d8f2a24
      17.1 MB
      last week
    • hugo_0.154.1_linux-arm64.tar.gz
      sha256:9d1913c80cf7664811ed2769bc2262d77f8ce34a10dfbcefde7f8d7f5f9293ad
      16.4 MB
      last week
    • hugo_0.154.1_netbsd-amd64.tar.gz
      sha256:787f01fff168dcf2bf677bfa3874b7bbd35e482510381e562d0f32264336e8e1
      17.9 MB
      last week
    • hugo_0.154.1_openbsd-amd64.tar.gz
      sha256:6d1368ce34d02c84a9e67783cf09c0af90353e78bf695df9eb3c7f52e940e9ba
      17.9 MB
      last week
    • hugo_0.154.1_solaris-amd64.tar.gz
      sha256:6ea51592d54237f129a7d3e955a784bd6e5df9efa35fb0417e2ed8475bc42821
      17.9 MB
      last week
    • hugo_0.154.1_windows-amd64.zip
      sha256:707b0ffc724976930cabfe6e4168570aad4ca364f3360dcf11d1e60035ee1f55
      18.6 MB
      last week
    • hugo_0.154.1_windows-arm64.zip
      sha256:930a28b17d1261df1f5ec7a79537c1a234d754f07901d8b7494609937c447c79
      16.8 MB
      last week
    • hugo_extended_0.154.1_darwin-universal.pkg
      sha256:c7488b5c066a87278d854566be9c8f8b4a8f43fcc5a7f344238f0eb1b0e989f4
      36.5 MB
      last week
    • hugo_extended_0.154.1_Linux-64bit.tar.gz
      sha256:cf33081327a48daad725d7a54697fb6d938788731f6af9e64eca7908ac40184f
      18.7 MB
      last week
    • hugo_extended_0.154.1_linux-amd64.deb
      sha256:3b9c8a1b147a0e0a885a3ef48506566379b4b58bb76677ba736008127cc75a97
      19.6 MB
      last week
    • hugo_extended_0.154.1_linux-amd64.tar.gz
      sha256:cf33081327a48daad725d7a54697fb6d938788731f6af9e64eca7908ac40184f
      18.7 MB
      last week
    • hugo_extended_0.154.1_linux-arm64.deb
      sha256:70a194e92920d306615daa4011e1fd355cde17977f750816865c14fb47082486
      17.8 MB
      last week
    • hugo_extended_0.154.1_linux-arm64.tar.gz
      sha256:23d9025a63a6ebc7fc873bcce84d7eb5c8f3fcc0eb9245e76d60a030db2d546f
      17.1 MB
      last week
    • hugo_extended_0.154.1_windows-amd64.zip
      sha256:82eacf787b07b0e1ff608e6353d0fcf1301402609e20ee01c71e5a991a2b66f6
      19.7 MB
      last week
    • hugo_extended_withdeploy_0.154.1_darwin-universal.pkg
      sha256:eed36b4e891eb68e11463424271eab972a251c07a552c69aa1cd83f49bfc52fa
      52.7 MB
      last week
    • hugo_extended_withdeploy_0.154.1_Linux-64bit.tar.gz
      sha256:803a62b1652f2b108de9dab700856e6e88f50ea640d98381ed597ad3c75afe9e
      27 MB
      last week
    • hugo_extended_withdeploy_0.154.1_linux-amd64.deb
      sha256:e08f564e3f6dba40b08751ff781ae3bdaaab2bb2277bf44af88042a40fc9f0f4
      28.3 MB
      last week
    • hugo_extended_withdeploy_0.154.1_linux-amd64.tar.gz
      sha256:803a62b1652f2b108de9dab700856e6e88f50ea640d98381ed597ad3c75afe9e
      27 MB
      last week
    • hugo_extended_withdeploy_0.154.1_linux-arm64.deb
      sha256:f7e5457249e0ef9e19246dda8658e2aab94644ef1e5c02f933731eb9c5b1521e
      25.6 MB
      last week
    • hugo_extended_withdeploy_0.154.1_linux-arm64.tar.gz
      sha256:4c25951d9a2258b26560a52c9c37ba27cfd0bdf0f734c3d5c5021b23019f6a20
      24.6 MB
      last week
    • hugo_extended_withdeploy_0.154.1_windows-amd64.zip
      sha256:6da32553af4082d2731a775f9b2e13f32c2364e2060107403a8f048d0879d990
      28.3 MB
      last week
    • Source code (zip)
      last week
    • Source code (tar.gz)
      last week

    11 people reacted
    šŸ‘ 8
    šŸŽ‰ 3

    Original source

Related products