hugo v0.165.0 版本更新介绍
发布日期: 2026-08-12
版本号: v0.165.0
本次更新主要引入了新的
css.ChromaStyles模板函数以及importContext选项。importContext选项适用于css.Build、js.Build、css.Sass和css.PostCSS,允许在 CSS@import语句中解析通过resources.FromString等方式生成的资源。同时,从默认安全列表中移除了 tailwindcss。更新还修复了资源转换链、服务器静态文件检测、MacOS 上编辑保存崩溃等多个错误,并改进了资源处理、构建选项(如为css.Build和js.Build添加了Data.Artifacts、为css.ChromaStyles添加了classDark和classLight选项)以及多项依赖升级,文档方面则移除了 README 中的 Star History 并更新了 README。
更新内容 (中文)
两个主要新增功能是新的css.ChromaStyles模板函数以及下文演示的importContext选项。
{{ $light := css.ChromaStyles (dict \"targetPath\" \"css/components/chroma-light.css\" \"style\" \"github\" \"mode\" \"light\") }}
{{ $dark := css.ChromaStyles (dict \"targetPath\" \"css/components/chroma-dark.css\" \"style\" \"github\" \"mode\" \"dark\") }}
{{ $opts := dict \"minify\" true \"importContext\" (slice $light $dark) }}
{{ $css := resources.Get \"css/main.css\" | css.Build $opts }}
importContext选项适用于css.Build、js.Build、css.Sass和css.PostCSS,它允许您在CSS @import语句中解析资源(例如通过resources.FromString构建的资源)。
注意事项
- 从默认的security.exec.allow列表中移除tailwindcss(注意)8a55df7a @bep #15178 #15171
错误修复
- 修复内容访问后的资源转换链问题 f772998f @bep #15189
- 修复静态同步器中删除文件/目录时的服务器静态文件检测问题 2ffaf1fc @bep
- 修复删除静态文件或目录时的服务器错误 a808f6e4 @bep #15174
- 修复MacOS上服务器原子保存编辑时的崩溃问题 6bf15241 @bep #15130
- markup/asciidocext:修复asciidoctor-html5s的目录解析问题 f961093e @jmooring #15121
- snap:修复snap home环境问题 984358f0 @jmooring #15114
改进
- resources:恢复链式资源转换 995a2159 @bep #15189 #15189
- resources/jsconfig:移除当前源根目录的源根映射 f88f0a9f @bep #15169
- circleci:升级至Go 1.26.5 52c9bd79 @bep
- 为css.Build和js.Build添加Data.Artifacts 44da0860 @bep #15173
- css:为css.ChromaStyles添加classDark和classLight选项并生成chromastyles 33d1f2c8 @bep #15167
- markup/highlight:重新输出被Chroma压缩器丢弃的令牌颜色 64da6d7c @bep #15161
- 为css.Build、js.Build、css.Sass和css.TailwindCSS添加importContext选项 70db201e @bep #15103
- 移除一些旧的弃用项 8a468df0 @bep
- 添加css.ChromaStyles 615e45d6 @bep #15112
- check.sh:处理未安装/staticcheck未在PATH中的情况 a243a615 @Soundcreates
- warpc:改进内存分配失败时的AVIF错误消息 7d90277a @bep
- cache/filecache:不剪枝使用混合大小写目录名的缓存条目 861ede6d @bep #15101
- 移除父目录中的符号链接 f228c87d @bep
- 删除.gemini 7df45f61 @bep
- common/hugo:在go env输出中包含非go依赖项 89b8c322 @jmooring #15116
依赖项更新
- build(deps):将github.com/bep/imagemeta从0.17.3升级至1.0.0 0bb337b2 @dependabot[bot]
- build(deps):将github.com/evanw/esbuild从0.28.1升级至0.28.2 03dc9170 @dependabot[bot]
- build(deps):将github.com/tdewolff/minify/v2从2.24.14升级至2.24.16 c829b736 @dependabot[bot]
- build(deps):将github.com/getkin/kin-openapi从0.145.0升级至0.146.0 94f3908e @dependabot[bot]
- build(deps):将github.com/rogpeppe/go-internal从1.15.0升级至1.16.0 75fcc752 @dependabot[bot]
- build(deps):将github.com/mattn/go-isatty从0.0.22升级至0.0.24 b5fa03d3 @dependabot[bot]
- build(deps):将github.com/yuin/goldmark从1.8.4升级至1.8.5 9da472dd @dependabot[bot]
- build(deps):将golang.org/x/tools从0.47.0升级至0.48.0 635532a2 @dependabot[bot]
- build(deps):将github.com/kyokomi/emoji/v2从2.2.13升级至2.2.14 9c71f600 @dependabot[bot]
- build(deps):将github.com/getkin/kin-openapi从0.144.0升级至0.145.0 420527fc @dependabot[bot]
- build(deps):将golang.org/x/image从0.43.0升级至0.44.0 7fe786e3 @dependabot[bot]
- build(deps):将github.com/bep/imagemeta从0.17.2升级至0.17.3 03b244fc @dependabot[bot]
- build(deps):将github.com/tdewolff/minify/v2从2.24.13升级至2.24.14 96118133 @dependabot[bot]
- build(deps):将github.com/yuin/goldmark从1.8.2升级至1.8.4 e35b7f04 @dependabot[bot]
- build(deps):将golang.org/x/net从0.56.0升级至0.57.0 0796fa7a @dependabot[bot]
- build(deps):将golang.org/x/text从0.38.0升级至0.40.0 1b701b72 @dependabot[bot]
- build(deps):将github.com/getkin/kin-openapi从0.140.0升级至0.144.0 a32d70b7 @dependabot[bot]
- build(deps):将google.golang.org/grpc从1.80.0升级至1.82.1 948cfb98 @dependabot[bot]
- build(deps):将golang.org/x/mod从0.37.0升级至0.38.0 8930802e @dependabot[bot]
文档
- 从README中移除Star History dd3f2731 @bep #15190
- 更新README.md d1f191c5 @jmooring
更新内容 (原始)
The two main new things is the new css.ChromaStyles template func and the new importContext option demonstrated below.
{{ $light := css.ChromaStyles (dict "targetPath" "css/components/chroma-light.css" "style" "github" "mode" "light") }}
{{ $dark := css.ChromaStyles (dict "targetPath" "css/components/chroma-dark.css" "style" "github" "mode" "dark") }}
{{ $opts := dict "minify" true "importContext" (slice $light $dark) }}
{{ $css := resources.Get "css/main.css" | css.Build $opts }}
The importContext is relevant for css.Build, js.Build, css.Sass, and css.PostCSS. and it allows you to make resources (e.g. built from resources.FromString) resolvable in e.g. CSS @import statements.
Note
- Remove tailwindcss from the default security.exec.allow list (note) 8a55df7a @bep #15178 #15171
Bug fixes
- Fix resource transformation chaining after content access f772998f @bep #15189
- Fix server static file detection for deleted files/directories in the static syncer 2ffaf1fc @bep
- Fix server errors when deleting static files or directories a808f6e4 @bep #15174
- Fix panic on server atomic save edits on MacOS 6bf15241 @bep #15130
- markup/asciidocext: Fix TOC parsing for asciidoctor-html5s f961093e @jmooring #15121
- snap: Fix snap home environment 984358f0 @jmooring #15114
Improvements
- resources: Resume chained resource transformations 995a2159 @bep #15189 #15189
- resources/jsconfig: Drop source root mapping for the current source root f88f0a9f @bep #15169
- circleci: Upgrade to Go 1.26.5 52c9bd79 @bep
- Add Data.Artifacts to css.Build and js.Build 44da0860 @bep #15173
- css: Add classDark and classLight options to css.ChromaStyles and gen chromastyles 33d1f2c8 @bep #15167
- markup/highlight: Re-emit token colors dropped by Chroma’s minifier 64da6d7c @bep #15161
- Add importContext option to css.Build, js.Build, css.Sass and css.TailwindCSS 70db201e @bep #15103
- Remove some old deprecations 8a468df0 @bep
- Add css.ChromaStyles 615e45d6 @bep #15112
- check.sh: Handle staticcheck not installed/in PATH a243a615 @Soundcreates
- warpc: Improve AVIF error message on memory allocation failure 7d90277a @bep
- cache/filecache: Don’t prune used cache entries with mixed-case dir names 861ede6d @bep #15101
- Drop symlinks in parent directories f228c87d @bep
- Delete .gemini 7df45f61 @bep
- common/hugo: Include non-go dependencies in go env output 89b8c322 @jmooring #15116
Dependency Updates
- build(deps): bump github.com/bep/imagemeta from 0.17.3 to 1.0.0 0bb337b2 @dependabot[bot]
- build(deps): bump github.com/evanw/esbuild from 0.28.1 to 0.28.2 03dc9170 @dependabot[bot]
- build(deps): bump github.com/tdewolff/minify/v2 from 2.24.14 to 2.24.16 c829b736 @dependabot[bot]
- build(deps): bump github.com/getkin/kin-openapi from 0.145.0 to 0.146.0 94f3908e @dependabot[bot]
- build(deps): bump github.com/rogpeppe/go-internal from 1.15.0 to 1.16.0 75fcc752 @dependabot[bot]
- build(deps): bump github.com/mattn/go-isatty from 0.0.22 to 0.0.24 b5fa03d3 @dependabot[bot]
- build(deps): bump github.com/yuin/goldmark from 1.8.4 to 1.8.5 9da472dd @dependabot[bot]
- build(deps): bump golang.org/x/tools from 0.47.0 to 0.48.0 635532a2 @dependabot[bot]
- build(deps): bump github.com/kyokomi/emoji/v2 from 2.2.13 to 2.2.14 9c71f600 @dependabot[bot]
- build(deps): bump github.com/getkin/kin-openapi from 0.144.0 to 0.145.0 420527fc @dependabot[bot]
- build(deps): bump golang.org/x/image from 0.43.0 to 0.44.0 7fe786e3 @dependabot[bot]
- build(deps): bump github.com/bep/imagemeta from 0.17.2 to 0.17.3 03b244fc @dependabot[bot]
- build(deps): bump github.com/tdewolff/minify/v2 from 2.24.13 to 2.24.14 96118133 @dependabot[bot]
- build(deps): bump github.com/yuin/goldmark from 1.8.2 to 1.8.4 e35b7f04 @dependabot[bot]
- build(deps): bump golang.org/x/net from 0.56.0 to 0.57.0 0796fa7a @dependabot[bot]
- build(deps): bump golang.org/x/text from 0.38.0 to 0.40.0 1b701b72 @dependabot[bot]
- build(deps): bump github.com/getkin/kin-openapi from 0.140.0 to 0.144.0 a32d70b7 @dependabot[bot]
- build(deps): bump google.golang.org/grpc from 1.80.0 to 1.82.1 948cfb98 @dependabot[bot]
- build(deps): bump golang.org/x/mod from 0.37.0 to 0.38.0 8930802e @dependabot[bot]
Documentation
- Remove Star History from README dd3f2731 @bep #15190
- Update README.md d1f191c5 @jmooring
下载链接
- hugo_0.165.0_checksums.txt
- hugo_0.165.0_darwin-universal.pkg
- hugo_0.165.0_dragonfly-amd64.tar.gz
- hugo_0.165.0_freebsd-amd64.tar.gz
- hugo_0.165.0_Linux-64bit.tar.gz
- hugo_0.165.0_linux-amd64.deb
- hugo_0.165.0_linux-amd64.tar.gz
- hugo_0.165.0_linux-arm.tar.gz
- hugo_0.165.0_linux-arm64.deb
- hugo_0.165.0_linux-arm64.tar.gz
- hugo_0.165.0_netbsd-amd64.tar.gz
- hugo_0.165.0_openbsd-amd64.tar.gz
- hugo_0.165.0_solaris-amd64.tar.gz
- hugo_0.165.0_windows-amd64.zip
- hugo_0.165.0_windows-arm64.zip
- hugo_extended_0.165.0_darwin-universal.pkg
- hugo_extended_0.165.0_Linux-64bit.tar.gz
- hugo_extended_0.165.0_linux-amd64.deb
- hugo_extended_0.165.0_linux-amd64.tar.gz
- hugo_extended_0.165.0_linux-arm64.deb
- hugo_extended_0.165.0_linux-arm64.tar.gz
- hugo_extended_0.165.0_windows-amd64.zip
- hugo_extended_withdeploy_0.165.0_darwin-universal.pkg
- hugo_extended_withdeploy_0.165.0_Linux-64bit.tar.gz
- hugo_extended_withdeploy_0.165.0_linux-amd64.deb
- hugo_extended_withdeploy_0.165.0_linux-amd64.tar.gz
- hugo_extended_withdeploy_0.165.0_linux-arm64.deb
- hugo_extended_withdeploy_0.165.0_linux-arm64.tar.gz
- hugo_extended_withdeploy_0.165.0_windows-amd64.zip
- hugo_withdeploy_0.165.0_darwin-universal.pkg
- hugo_withdeploy_0.165.0_Linux-64bit.tar.gz
- hugo_withdeploy_0.165.0_linux-amd64.deb
- hugo_withdeploy_0.165.0_linux-amd64.tar.gz
- hugo_withdeploy_0.165.0_linux-arm64.deb
- hugo_withdeploy_0.165.0_linux-arm64.tar.gz
- hugo_withdeploy_0.165.0_windows-amd64.zip