From 4de808ae7caa30bef86d25eb77f53205fcb78e07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Mon, 19 Dec 2016 14:42:01 +0100 Subject: [PATCH] docs: Add 0.18 release notes --- docs/content/meta/release-notes.md | 85 ++++++++++++++++++++++++++++-- 1 file changed, 81 insertions(+), 4 deletions(-) diff --git a/docs/content/meta/release-notes.md b/docs/content/meta/release-notes.md index 80c199a55..0ac2e4232 100644 --- a/docs/content/meta/release-notes.md +++ b/docs/content/meta/release-notes.md @@ -2,7 +2,6 @@ aliases: - /doc/release-notes/ - /meta/release-notes/ -lastmod: 2016-03-12 date: 2013-07-01 menu: main: @@ -11,11 +10,32 @@ title: Release Notes weight: 10 --- -## **0.18.0** ??? +## **0.18.0** December 19th 2016 -In Hugo 0.18 every piece of content is a `Page` ({{}}) and this means that every page, including the home page, can have a content file with frontmatter. +Today, we're exited to release the much-anticipated Hugo 0.18! -Not only is this a much simpler model to understand, it is also faster and it fixes several important issues: +We're heading towards the end of the year 2016, and we can look back on three releases and a steady growing community around the project. +This release includes **over 220 contributions by nearly 50 contributors** to the main codebase. +Since the last release, Hugo has **gained 1750 stars and 27 additional themes**. + +Hugo now has: + +- 13750+ stars +- 408+ contributors +- 137+ themes + +{{< gh "@bep" >}} once again took the lead of Hugo and contributed a significant amount of additions. +Also a big shoutout to {{< gh "@digitalcraftsman" >}} for his relentless work on keeping the documentation and the themes site in pristine condition, +and also a big thanks to {{< gh "@moorereason" >}} and {{< gh "@bogem" >}} for their contributions. + +We wish you all a Merry Christmas and a Happy New Year.
+*The Hugo team* + +## Highlights + +The primary new feature in Hugo 0.18 is that every piece of content is now a `Page` ({{}}). +This means that every page, including the home page, can have a content file with frontmatter. +Not only is this a much simpler model to understand, it is also faster and paved the way for several important new features: * Enable proper titles for Nodes {{}} * Sitemap.xml should include nodes, as well as pages {{}} @@ -23,10 +43,67 @@ Not only is this a much simpler model to understand, it is also faster and it fi * Allow home page to be easily authored in markdown {{}} * Minimalist website with homepage as content {{}} +Hugo again continues its trend of each release being faster than the last. It's quite a challenge to consistently add significant new functionality and simultaneously dramatically improve performance. Running [this benchmark]( https://github.com/bep/hugo-benchmark) with [these sites](https://github.com/bep/hugo-benchmark/tree/master/sites) (renders to memory) shows about 60% reduction in time spent and 30% reduction in memory usage compared to Hugo 0.17. + +## Other New Features + +* Every `Page` now has a `Kind` property. Since everything is a `Page` now, the `Kind` is used to differentiate different kinds of pages. + Possible values are `page`, `home`, `section`, `taxonomy`, and `taxonomyTerm`. + (Internally, we also define `RSS`, `sitemap`, `robotsTXT`, and `404`, but those have no practical use for end users at the moment since they are not included in any collections.) +* Add a `GitInfo` object to `Page` if `enableGitInfo` is set. It then also sets `Lastmod` for the given `Page` to the author date provided by Git. {{}} +* New template functions: + * Add `imageConfig` function {{}} + * Add `sha256` function {{}} + * Add `partialCached` template function {{}} +* Add shortcode to display Instagram images {{}} +* Add `noChmod` option to disable perm sync {{}} +* Add `quiet` build mode {{}} +## Notices +* `.Site.Pages` will now contain *several kinds of pages*, including regular pages, sections, taxonomies, and the home page. + If you want a specific kind of page, you can filter it with `where` and `Kind`. + `.Site.RegularPages` is a shortcut to the page collection you have been used to getting. +* `RSSlink` is now deprecated. Use `RSSLink` instead. + Note that in Hugo 0.17 both of them existed, so there is a fifty-fifty chance you will not have to do anything + (if you use a theme, the chance is close to 0), and `RSSlink` will still work for two Hugo versions. +## Fixes + +* Revise the `base` template lookup logic so it now better matches the behavior of regular templates, making it easier to override the master templates from the theme {{}} +* Add workaround for `block` template crash. + Block templates are very useful, but there is a bug in Go 1.6 and 1.7 which makes the template rendering crash if you use the block template in more complex scenarios. + This is fixed in the upcoming Go 1.8, but Hugo adds a temporary workaround in Hugo 0.18. {{}} +* All the `Params` configurations are now case insensitive {{}} {{}} {{}} +* Make RawContent raw again {{}} +* Fix archetype title and date handling {{}} +* Fix TOML archetype parsing in `hugo new` {{}} +* Fix page sorting when weight is zero {{}} +* Fix page names that contain dot {{}} +* Fix RSS Title regression {{}} +* Handle ToC before handling shortcodes {{}} +* Only watch relevant themes dir {{}} +* Hugo new content creates TOML slices with closing bracket on new line {{}} + +## Improvements + +* Add page information to error logging in rendering {{}} +* Deprecate `RSSlink` in favor of `RSSLink` +* Make benchmark command more useful {{}} +* Consolidate the `Param` methods {{}} +* Allow to set cache dir in config file +* Performance improvements: + * Avoid repeated Viper loads of `sectionPagesMenu` {{}} + * Avoid reading from Viper for path and URL funcs {{}} + * Add `partialCached` template function. This can be a significant performance boost if you have complex partials that does not need to be rerendered for every page. {{}} + +## Documentation Updates + +* Update roadmap {{}} +* Update multilingual example {{}} +* Add a "Deployment with rsync" tutorial page {{}} +* Refactor `/docs` to use the `block` keyword {{}} ## **0.17.0** October 7th 2016