1
0
mirror of https://github.com/docker/docs.git synced 2026-10-25 06:09:46 +03:00
Commit Graph

7 Commits

Author SHA1 Message Date
David Karlsson
50eeca7b4d build: bump Hugo to 0.162.1 and fix deferred CSS template (#25264)
## Summary

The site fails to build on Hugo 0.162, which no longer allows
`templates.Defer` inside a `partialCached` partial. `head.html` called
`utils/css.html` (which defers with a global key) via `partialCached`.
This switches that call to `partial` — the global Defer key already
dedupes the work, so caching was redundant — and bumps the pinned Hugo
version in the `Dockerfile` and `netlify.toml` to 0.162.1.

Verified with a full local build on Hugo 0.162.1 extended (Node 24):
clean build, 3332 pages, no template errors.

## Learnings

- Hugo 0.162 enforces that `templates.Defer` cannot live inside a
`partialCached` partial; the build error points at the deferred
template, not the `partialCached` caller, so trace upward to the caching
call site.

Generated by Claude Code

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 13:04:49 +02:00
David Karlsson
4595cae8ac build: bump Hugo to 0.162.1 and fix deferred CSS template
Hugo 0.162 disallows templates.Defer inside a partialCached partial.
The CSS partial uses templates.Defer with a global key, so switch its
caller in head.html from partialCached to partial (the global Defer key
already dedupes the work). Bump the pinned Hugo version in the Dockerfile
and netlify.toml.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 11:05:31 +02:00
David Karlsson
28ca826bf1 analytics: fix Marlin endpoint URL double-encoding in head.html
Hugo's html/template JS-escapes string values inside <script> blocks.
Calling jsonify per-field produced quoted strings like "https://..."
which were then re-escaped, embedding literal quote characters in the
endpoint value passed to the SDK.

Fix by jsonifying the whole config dict at once and marking it safeJS
so html/template does not apply a second round of escaping.

Also extract the environment ternary out of the Marlin constructor call
for readability.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22 15:42:49 +02:00
David Karlsson
a6c2209c7f analytics: add Marlin SDK and migrate dropdown Heap markers
Introduces @docker/marlin-sdk-web-public for first-party pageview and
click analytics, bundled into scripts.js via Hugo's existing js.Build
pipeline. Config is emitted to window.__marlinConfig from head.html and
gated to prod/staging only.

Renames data-heap-id attributes on the markdown-dropdown buttons to
marlin-action so they are picked up by the SDK's auto-click tracking.

TODO: replace the REPLACE-ME endpoint placeholders in hugo.yaml with
the canonical Marlin ingestion URLs from the data-platform team.

TODO: heap.track() calls in youtube-script.html are left in place —
the public SDK exposes no equivalent track() method, so video
play/pause events cannot be migrated yet.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2026-05-22 13:40:16 +02:00
David Karlsson
ee06a88f41 chore: implement agent-readiness improvements from audit
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2026-04-24 13:19:28 +02:00
David Karlsson
c3d814812f hugo: use partialCached for static templates
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
2026-03-17 08:49:01 +01:00
David Karlsson
90e2cb52fa chore: migrate to Hugo v0.146.0 new template lookup system
- layouts/partials/ → layouts/_partials/
- layouts/shortcodes/ → layouts/_shortcodes/
- layouts/_default/_markup/ → layouts/_markup/
- layouts/_default/*.html → layouts/*.html (flatten _default/)
- layouts/index.html → layouts/home.html
- layouts/index.*.json/txt → layouts/home.*.json/txt
- layouts/_default/index.llms.txt → layouts/home.llms.txt
- layouts/tag/ → layouts/tags/ (match /tags/ URL path)
2026-02-19 16:09:15 +01:00