hugo/content/en/news/0.56.0-relnotes/index.md
Bjørn Erik Pedersen b9bd35d72e Squashed 'docs/' content from commit fdea5430f
git-subtree-dir: docs
git-subtree-split: fdea5430f89dfd849d39212abdf5ace0a4763e5a
2019-10-21 10:22:28 +02:00

24 KiB


date: 2019-07-25 title: "Hugo 0.56.0: Hugo Modules and Deployment" description: "This release adds powerful module support with dependency management for all component types, including content. And we now have built-in deployment support to GCS, S3, or Azure." categories: ["Releases"]

Hugo 0.56.0 is filled with improvements, but there are two main headliners: Hugo Modules and Hugo Deploy.

Hugo Deploy is implemented by @vangent and brings built-in deployment support for GCS, S3, or Azure using the Hugo CLI. See the Hugo Deploy Documentation for more information.

Hugo Modules is very much a community effort on the design and specification side, but @bep has driven the implementation. Some notes about what all of this is about:

  • A new module configuration section where you can import almost anything. You can configure both your own file mounts and the file mounts of the modules you import. This is the new recommended way of configuring what you earlier put in configDir, staticDir etc. And it also allows you to mount folders in non-Hugo-projects, e.g. the SCSS folder in the Bootstrap GitHub project.
  • A module consists of a set of mounts to the standard 7 component types in Hugo: static, content, layouts, data, assets, i18n, and archetypes. Yes, Theme Components can now include content, which should be very useful, especially in bigger multilingual projects.
  • Modules not in your local file cache will be downloaded automatically and even "hot replaced" while the server is running.
  • Hugo Modules supports and encourages semver versioned modules, and uses the minimal version selection algorithm to resolve versions.
  • A new set of CLI commands are provided to manage all of this: hugo mod init, hugo mod get, hugo mod graph, hugo mod tidy, and hugo mod vendor.

Hugo Modules is powered by Go Modules.

This is all very much brand new and there are only a few example projects around:

See the Hugo Modules Documentation for more information.

This release represents 104 contributions by 19 contributors to the main Hugo code base. @bep leads the Hugo development with a significant amount of contributions, but also a big shoutout to @vangent, @niklasfasching, and @coliff for their ongoing contributions. And a big thanks to @digitalcraftsman and @onedrawingperday for their relentless work on keeping the themes site in pristine condition and to @kaushalmodi for his great work on the documentation site.

Many have also been busy writing and fixing the documentation in hugoDocs, which has received 48 contributions by 37 contributors. A special thanks to @davidsneighbour, @bep, @BCNelson, and @coliff for their work on the documentation site.

Hugo now has:

Notes

  • We have removed the "auto theme namespacing" of params from theme configuration. This was an undocumented and hidden feature that wasn't useful in practice.

  • We have revised and improved the symlinks support in Hugo: In earlier versions, symlinks were only fully supported for the content folders. With the introduction of the new very flexible file mounts, with content support even for what we have traditionally named "themes", we needed a more precise definition of symlink support in Hugo:

    • Symlinks are not supported outside of the main project ((the project you run hugo or hugo server from).
    • In the main project static mounts, only symlinks to files are supported.
    • In all other mounts in the main project, both file and directory symlinks are allowed.

Enhancements

Templates

Output

Core

Other

Fixes

Templates

Output

Core

Other