Skip to content

Move to Hugo v0.169.0 and the latest site-commons - #562

Merged
alexander-yevsyukov merged 7 commits into
masterfrom
hugo-0.169
Oct 30, 2026
Merged

alexander-yevsyukov merged 7 commits into
masterfrom
hugo-0.169

Conversation

@alexander-yevsyukov

@alexander-yevsyukov alexander-yevsyukov commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

This PR moves the site to Hugo v0.169.0 and the latest site-commons. It is the spine.io part of SpineEventEngine/documentation#89.

Changes

  • Allow HTML content files (Build fails on Hugo v0.162.0+: the full-screen architecture diagram is an HTML content file documentation#92). Since v0.162.0, Hugo denies text/html content files by default. The full-screen architecture diagram that documentation/docs brings in is one, so the build fails with access denied: "text/html" is not whitelisted in policy "security.allowContent". Hugo ignores the security settings of an imported module, so site/config/_default/hugo.toml now sets allowContent = ['! ^text/org$'] itself: HTML is allowed, Org mode stays denied.
  • Update site-commons to b79100d8a139. The theme now bundles the code-highlighting palettes into main.css (Bundle the code-highlighting palettes into the SCSS (option B of #35) site-commons#37) and requires Hugo v0.169.0 and Go 1.27.3. go mod raised the go directive of site/go.mod to 1.27.3.
  • Hugo v0.169.0 in CI: HUGO_VERSION in gh-pages.yml and check-links.yml.
  • Prerequisites: Go and Hugo versions in README.md and docs/project.md.
  • Update documentation/docs to 3045fa4, the documentation master with Move to Hugo v0.169.0 and the latest site-commons documentation#94 merged. That PR changes only docs/_preview, a separate Go module, so the imported files are the same and so is the built site. Only the pinned version changes.
  • Task doc: .agents/tasks/hugo-0-169-upgrade.md.

Note

check-links.yml comes from config, which still pins HUGO_VERSION: 0.161.1. SpineEventEngine/config#823 makes the same bump there. Until it merges, the next ./config/pull would revert this line.

Build evidence

Local Hugo v0.169.0 extended, Go 1.27.3, from site/:

Command Result
hugo --minify 155 pages, no errors
hugo -e development 155 pages, no errors

The only warning in both builds is the theme's LibSass deprecation (css.Sass: libsass was deprecated in Hugo v0.153.0), which was there before this change.

/docs/introduction/diagrams/spine-architecture-diagram-full-screen/ renders in both builds:

  • its script: js/docs/architecture-diagram.min.<hash>.js in production, js/docs/architecture-diagram.js in development. The production file is byte-identical to the one live on spine.io (same fingerprint 8009f824…);
  • the PDF: /docs/introduction/diagrams/Spine-Architecture-Diagram.pdf is published and served as application/pdf.

In the browser, the diagram page and its script work. The page logs one error, Cannot read properties of null (reading '__k'), which also shows on live spine.io, so it is not from this PR.

What changes in the output

I built this branch twice on v0.169.0, once with the old theme and once with the new one, then diffed the output. Apart from whitespace that the new theme trims, the pages change only as site-commons#37 intends:

  • no <link id="code-theme-css"> and no /code-theme/{dark,light}.css; the palettes are in main.css (127 .chroma rules, 4 before);
  • the theme preload script falls back to the system color scheme, then to the dark code theme.

On /docs/quick-start/, the code-theme toggle switches data-theme and the token colors between the two palettes.

CI and Go 1.27.3

gh-pages.yml has no setup-go step, so Hugo runs the runner's preinstalled Go. I simulated that with Go 1.26.4 on PATH and an empty Hugo module cache. Hugo passes no GOTOOLCHAIN, so go runs with the default auto: it printed go: downloading go1.27.3, fetched the modules, and hugo --minify passed.

Pre-PR checklist

  • Version gate: not applicable (no version.gradle.kts).
  • Gradle build: not applicable (no JVM sources or build files changed); the Hugo builds above cover the site.
  • review-docs: approved. I applied its nit on the allowContent comment: Hugo denies Org mode files by default too.
  • check-links: the Lychee run that CI does passes, but it only sees <head> URLs. The inline jQuery block in every page's <head> stops Lychee from extracting body links, and CI has the same blind spot (also on master). Serve jQuery as a file so Lychee checks body links site-commons#39 fixes it. With that block stripped, 10 URLs are broken. A master build has the same ones: 9 in the validation/docs module and the Gitter link in the 1.0 blog post, which now redirects. None comes from this PR.

See SpineEventEngine/documentation#89, SpineEventEngine/documentation#92.

🤖 Generated with Claude Code

alexander-yevsyukov and others added 5 commits October 30, 2026 16:25
See SpineEventEngine/documentation#89.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Since v0.162.0, Hugo denies `text/html` content files by default. The
full-screen architecture diagram that `documentation/docs` brings in is
one, so the build fails on newer Hugo. Hugo ignores the `security`
settings of an imported module, so the site config allows HTML itself.

See SpineEventEngine/documentation#92.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The theme now bundles the code-highlighting palettes into `main.css`
and requires Hugo v0.169.0 and Go 1.27.3. `go mod` raised the `go`
directive of `site/go.mod` to match.

`check-links.yml` comes from `config`, which needs the same bump.

See SpineEventEngine/documentation#89.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Hugo denies Org mode content files by default too, which is why the
comment says Org mode stays denied.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 30, 2026 16:49
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-30T16:50:54.076133Z a5902ff PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approved

No active review issues are identified for the Hugo and dependency upgrade.

No open issues 🎉

What changed in this PR

Updates the spine.io site to Hugo v0.169.0 and the latest site-commons, aligning dependencies, CI, and contributor prerequisites.

Changes:

  • Updates site-commons and raises the Go requirement to 1.27.3.
  • Allows imported HTML content, including the full-screen architecture diagram, while keeping Org mode denied.
  • Updates CI Hugo versions and documents prerequisites and upgrade verification.
File Description
site/​go.sum Adds checksums for the updated theme module.
site/​go.mod Updates site-commons and the Go requirement.
site/​config/​_default/​hugo.toml Allows HTML content while denying Org mode.
README.md Updates Go and Hugo prerequisites.
docs/​project.md Updates the required Hugo Extended version.
.github/​workflows/​gh-pages.yml Pins deployment to Hugo v0.169.0.
.github/​workflows/​check-links.yml Pins link-check builds to Hugo v0.169.0.
.agents/​tasks/​hugo-0-169-upgrade.md Records the upgrade plan and verification results.

Review effort: Balanced

alexander-yevsyukov and others added 2 commits October 30, 2026 17:15
Move `documentation/docs` to the `documentation` master, which has
SpineEventEngine/documentation#94 merged. That PR changes only
`docs/_preview`, a separate Go module, so the imported content and the
built site stay the same; only the pinned version changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@alexander-yevsyukov
alexander-yevsyukov merged commit c7b360c into master Oct 30, 2026
4 checks passed
@alexander-yevsyukov
alexander-yevsyukov deleted the hugo-0.169 branch October 30, 2026 17:20
@github-project-automation github-project-automation Bot moved this from In Review to ✅ Done in v2.0 Oct 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants