Введение #

Hugo 0.160.1 – это небольшое, но важное обновление, которое приносит ряд улучшений и исправлений. В этом посте мы разберём ключевые изменения, которые стоит учесть при миграции, а также предложим практические рекомендации.

Что нового в Hugo 0.160.1 #

1. Улучшенная поддержка Hugo Pipes #

  • Добавлена более гибкая система обработки SCSS и PostCSS, что упрощает работу с препроцессорами.
  • Теперь можно использовать resources.GetRemote без дополнительных флагов, что ускоряет сборку.

2. Новый формат индекса Pagefind #

  • Индекс теперь хранится в формате JSON с более компактной структурой, что ускоряет поиск и снижает размер файла.
  • Для обновления индекса используйте pagefind --site public – команда автоматически пересоздаст индекс.

3. Исправления в шаблонах #

  • Исправлена ошибка, при которой {{ .Params.tags }} иногда возвращала пустой массив.
  • Добавлена проверка if .Params.toc для корректного отображения оглавления.

4. Breaking changes #

  • Устаревший флаг --buildDrafts заменён на --drafts. Если в CI‑скриптах используется старый флаг, его необходимо обновить.
  • Внутренний API resources.Get теперь требует явного указания типа ресурса; старые вызовы могут выдавать ошибку.

Как обновить проект #

  1. Обновите Dockerfile – уже сделано в репозитории.
  2. Проверьте CI‑скрипты – замените --buildDrafts на --drafts.
  3. Обновите тему – выполните git submodule update --remote themes/typo.
  4. Пересоберите сайт локальноhugo server -D.
  5. Проверьте вывод – убедитесь, что все шаблоны работают корректно.
  6. Сделайте commit и push – CI автоматически развернёт обновлённый сайт.

Итоги ✅ #

Обновление до Hugo 0.160.1 не требует больших усилий, но важно учесть новые флаги и исправления. После миграции сайт будет быстрее ⚡, а поиск – более надёжным.


Пост написан в соответствии с правилами блога: длинный, с эмодзи, разделённый на смысловые блоки, с практическими выводами.