Skip to content

chore: align and pin Hugo 0.165.0 - #579

Draft
yada wants to merge 1 commit into
masterfrom
chore/pin-hugo-0.165.0
Draft

yada wants to merge 1 commit into
masterfrom
chore/pin-hugo-0.165.0

Conversation

@yada

@yada yada commented Sep 16, 2026

Copy link
Copy Markdown
Member

Closes #578.

Summary

  • pin Hugo 0.165.0 Extended in .hugo-version, GitHub Actions, Netlify, and the Hugo module requirements;
  • run the Hugo workflow for pull requests targeting master so the pinned version is validated before merge;
  • add a deployment preflight that rejects missing, mismatched, or non-Extended Hugo installations;
  • add ./deploy.sh --check for an isolated production build that does not modify or publish the public submodule;
  • stop publication early when the public submodule is not initialized;
  • document the required version and local publication check.

This PR intentionally does not change the deprecated language configuration or template methods. That migration remains a follow-up after the publication environments are aligned.

Validation

  • ./deploy.sh --check completed successfully with Hugo 0.165.0 Extended and generated 214 pages.
  • The check build used isolated destination and resource directories and did not modify public.
  • Hugo 0.123.0 Extended was correctly rejected as a version mismatch.
  • A simulated Hugo 0.165.0 non-Extended installation was correctly rejected.
  • ./deploy.sh stopped before building when public was not initialized.
  • ./deploy.sh --check unexpected returned the documented usage error.
  • sh -n deploy.sh passed.
  • git diff --check passed.
  • The pull-request Hugo workflow passed with the pinned version.
  • The Netlify deploy preview passed, returns HTTP 200 over valid TLS, and reports Hugo 0.165.0 in its generator metadata.

Hugo 0.154.5 to 0.165.0 output comparison

Both versions built the exact current master source at commit c155502ebb69569465c611d917c938494a96faab in isolated directories. The official Hugo 0.154.5 package was verified against its published SHA-256 checksum before use.

  • Both builds succeeded and generated 214 pages, 20 paginator pages, 12 non-page files, 94 static files, 1,802 processed images, and 4 aliases.
  • Both output trees contained 2,018 files.
  • The logical output path sets were identical after normalizing Hugo-generated resource hashes.
  • Hugo 0.165.0 changed the fingerprints of 1,326 generated resources, producing 2,652 corresponding remove/add entries.
  • 196 HTML files, 17 XML files, and the web manifest differed because of generator metadata, generated-resource references, and processing/minification output.
  • Total generated size increased by 3,628,302 bytes, approximately 0.647%.
  • After normalizing generator versions and resource hashes and excluding embedded style/script content, the homepage markup was identical.

The next publication to microcks.github.io after the upgrade should therefore be expected to contain a large generated-resource diff even though the source content and logical site structure are unchanged.

Laurent validation required

Before this PR is marked ready, please run these commands in the environment normally used to publish microcks.github.io:

hugo version
./deploy.sh --check

The version must include v0.165.0+extended, and the production check must complete successfully without changing public.

AI disclosure

This contribution was prepared with assistance from OpenAI Codex. The contributor remains responsible for reviewing and validating the changes.

Signed-off-by: Yacine Kheddache <yacine@microcks.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Align and pin Hugo across local deployment, CI, and Netlify

1 participant