Skip to content

Upgrade Hugo and the theme module (HugoBlox -> kit) #380

Description

@shunk031

背景

  • mise.toml で hugo-extended = "0.136.5" に固定されている。2026-07 時点の Hugo 最新版は 0.164 系であり、約 1 年半分のギャップがある。
  • .github/dependabot.yml は github-actions と gomod の 2 エコシステムのみを監視対象にしており、mise.toml に書かれた Hugo バージョンは Dependabot の自動更新対象外になっている。
  • 加えて、本サイトが利用している Hugo Modules 上のテーマ (hugo-blox-builder 系列) は、upstream で HugoBlox/kit への移行が進んでいる。
  • ローカルの layouts/ 配下にあるテーマ override は blox-core v0.3.1 時点の実装のコピーであり、モジュール更新時に壊れるリスクが高い。このリスクは PR fix(layouts): repair gravatar URL, a11y issues, and remove dead templates #376 のレビューで実コードを確認済みで、特に以下の2ファイルはテーマの authors/list.html から静的に参照されているため影響範囲が広い:
    • layouts/partials/blocks/about.biography.html
    • layouts/partials/blocks/v1/about.html

提案

以下の段階的なアップグレード計画を検討する。

  1. Hugo 本体の段階的な更新: 0.136.5 → 直近の LTS/安定版 → 最新版、という形で一度に大きくジャンプせず、ビルド・レイアウトの崩れがないか各段階で確認しながら進める。
  2. override の対応確認: Hugo / テーマのバージョンを上げるたびに、layouts/partials/blocks/about.biography.html と layouts/partials/blocks/v1/about.html を含む override 一式が新しいテーマの構造と整合しているかを確認する。
  3. 将来的な HugoBlox/kit への移行の検討: upstream の移行が完了・安定した段階で、hugo-blox-builder から kit への切り替えを別タスクとして評価する (override 全体の書き直しが必要になる可能性が高いため、影響範囲の大きい作業として切り出す)。

mise.toml のバージョン追従の仕組み化

mise.toml 内の Hugo バージョンは現状 Dependabot の監視対象外なので、以下のような自動更新の仕組みを検討する。

  • Renovate の mise マネージャ を導入し、mise.toml の hugo-extended バージョンを自動検知・PR 作成させる。
  • Renovate 導入までの間の暫定対応として、Dependabot の設定ファイルに手動更新のリマインダー的な仕組み (定期的な issue 起票など) を検討してもよい。

未確定事項

  • Hugo / テーマのどのバージョンを最終ターゲットにするか (最新追従 or LTS 追従) はメンテナンスコストとのバランスで要判断。
  • kit への移行タイミングは upstream の安定度合いを見て判断する。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions