Введение #
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теперь требует явного указания типа ресурса; старые вызовы могут выдавать ошибку.
Как обновить проект #
- Обновите Dockerfile – уже сделано в репозитории.
- Проверьте CI‑скрипты – замените
--buildDraftsна--drafts. - Обновите тему – выполните
git submodule update --remote themes/typo. - Пересоберите сайт локально –
hugo server -D. - Проверьте вывод – убедитесь, что все шаблоны работают корректно.
- Сделайте commit и push – CI автоматически развернёт обновлённый сайт.
Итоги ✅ #
Обновление до Hugo 0.160.1 не требует больших усилий, но важно учесть новые флаги и исправления. После миграции сайт будет быстрее ⚡, а поиск – более надёжным.
Пост написан в соответствии с правилами блога: длинный, с эмодзи, разделённый на смысловые блоки, с практическими выводами.