diff --git a/content/en/content-management/front-matter.md b/content/en/content-management/front-matter.md index 0e3baf437..b6276a439 100644 --- a/content/en/content-management/front-matter.md +++ b/content/en/content-management/front-matter.md @@ -160,12 +160,14 @@ show_comments: false Any node or section can pass down to descendents a set of Front Matter values as long as defined underneath the reserved `cascade` Front Matter key. ### Example -```yaml -# content/blog/_index.md + +In `content/blog/_index.md` + +{{< code-toggle copy="false" >}} title: Blog cascade: banner: images/typewriter.jpg -``` +{{}} With the above example the Blog section page and its descendents will return `images/typewriter.jpg` when `.Params.banner` is invoked unless: diff --git a/content/en/content-management/multilingual.md b/content/en/content-management/multilingual.md index d3f71676a..575393d47 100644 --- a/content/en/content-management/multilingual.md +++ b/content/en/content-management/multilingual.md @@ -47,6 +47,11 @@ weight = 2 linkedin = "https://linkedin.com/fr/whoever" [languages.fr.params.navigation] help = "Aide" + +[languages.ar] +title = "مدونتي" +weight = 2 +languagedirection = "rtl" {{< /code-toggle >}} Anything not defined in a `languages` block will fall back to the global value for that key (e.g., `copyright` for the English `en` language). This also works for `params`, as demonstrated with `help` above: You will get the value `Aide` in French and `Help` in all the languages without this parameter set. diff --git a/content/en/content-management/shortcodes.md b/content/en/content-management/shortcodes.md index 1c19726af..0244c4a88 100644 --- a/content/en/content-management/shortcodes.md +++ b/content/en/content-management/shortcodes.md @@ -333,7 +333,7 @@ Using the preceding `tweet` example, the following simulates the displayed exper ### `vimeo` -Adding a video from [Vimeo][] is equivalent to the YouTube shortcode above. +Adding a video from [Vimeo][] is equivalent to the [YouTube Input shortcode][]. ``` https://vimeo.com/channels/staffpicks/146022717 @@ -431,3 +431,4 @@ To learn more about creating custom shortcodes, see the [shortcode template docu [templatessection]: /templates/ [Vimeo]: https://vimeo.com/ [YouTube Videos]: https://www.youtube.com/ +[YouTube Input shortcode]: #youtube diff --git a/content/en/getting-started/configuration.md b/content/en/getting-started/configuration.md index 33445a63c..e4a788e29 100644 --- a/content/en/getting-started/configuration.md +++ b/content/en/getting-started/configuration.md @@ -306,6 +306,44 @@ useResourceCacheWhen="fallback" useResourceCacheWhen : When to use the cached resources in `/resources/_gen` for PostCSS and ToCSS. Valid values are `never`, `always` and `fallback`. The last value means that the cache will be tried if PostCSS/extended version is not available. +## Configure Server + +{{< new-in "0.67.0" >}} + +This is only relevant when running `hugo server`, and it allows to set HTTP headers during development, wihch allows you to test out your Content Security Policy and similar. The configuration format matches [Netlify's](https://docs.netlify.com/routing/headers/#syntax-for-the-netlify-configuration-file) with slighly more powerful [Glob matching](https://github.com/gobwas/glob): + + +{{< code-toggle file="config">}} +[server] +[[server.headers]] +for = "/**.html" + +[server.headers.values] +X-Frame-Options = "DENY" +X-XSS-Protection = "1; mode=block" +X-Content-Type-Options = "nosniff" +Referrer-Policy = "strict-origin-when-cross-origin" +Content-Security-Policy = "script-src localhost:1313" +{{< /code-toggle >}} + +Since this is is "devlopment only", it may make sense to put it below the `development` environment: + + +{{< code-toggle file="config/development/server">}} +[[headers]] +for = "/**.html" + +[headers.values] +X-Frame-Options = "DENY" +X-XSS-Protection = "1; mode=block" +X-Content-Type-Options = "nosniff" +Referrer-Policy = "strict-origin-when-cross-origin" +Content-Security-Policy = "script-src localhost:1313" +{{< /code-toggle >}} + + + + ## Configure Title Case Set `titleCaseStyle` to specify the title style used by the [title](/functions/title/) template function and the automatic section titles in Hugo. It defaults to [AP Stylebook](https://www.apstylebook.com/) for title casing, but you can also set it to `Chicago` or `Go` (every word starts with a capital letter). diff --git a/content/en/getting-started/installing.md b/content/en/getting-started/installing.md index ad70c18a1..23f25f477 100644 --- a/content/en/getting-started/installing.md +++ b/content/en/getting-started/installing.md @@ -305,9 +305,6 @@ Make the directory containing the source your working directory and then fetch H mkdir -p src/github.com/gohugoio ln -sf $(pwd) src/github.com/gohugoio/hugo -# set the build path for Go -export GOPATH=$(pwd) - go get ``` diff --git a/content/en/hosting-and-deployment/hugo-deploy.md b/content/en/hosting-and-deployment/hugo-deploy.md index a571d366d..1156b2fee 100644 --- a/content/en/hosting-and-deployment/hugo-deploy.md +++ b/content/en/hosting-and-deployment/hugo-deploy.md @@ -54,7 +54,7 @@ In the configuration file for your site, add a `[deployment]` section with one or more `[[deployment.targets]]` section, one for each deployment target. Here's a detailed example: -``` +```toml [deployment] # By default, files are uploaded in an arbitrary order. # Files that match the regular expressions in the "Order" list @@ -85,8 +85,11 @@ cloudFrontDistributionID = # Optionally, you can include or exclude specific files. # See https://godoc.org/github.com/gobwas/glob#Glob for the glob pattern syntax. # If non-empty, the pattern is matched against the local path. -# If exclude is non-empty, and a file's path matches it, that file is dropped. -# If include is non-empty, and a file's path does not match it, that file is dropped. +# All paths are matched against in their filepath.ToSlash form. +# If exclude is non-empty, and a local or remote file's path matches it, that file is not synced. +# If include is non-empty, and a local or remote file's path does not match it, that file is not synced. +# As a result, local files that don't pass the include/exclude filters are not uploaded to remote, +# and remote files that don't pass the include/exclude filters are not deleted. # include = "**.html" # would only include files with ".html" suffix # exclude = "**.{jpg, png}" # would exclude files with ".jpg" or ".png" suffix @@ -113,7 +116,8 @@ gzip = true ## Deploy To deploy to a target: -``` + +```bash hugo deploy [--target=, defaults to first target] ``` diff --git a/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.png b/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.png new file mode 100644 index 000000000..059d8c07a Binary files /dev/null and b/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.png differ diff --git a/content/en/news/0.67.0-relnotes/index.md b/content/en/news/0.67.0-relnotes/index.md new file mode 100644 index 000000000..a970ab777 --- /dev/null +++ b/content/en/news/0.67.0-relnotes/index.md @@ -0,0 +1,64 @@ + +--- +date: 2020-03-09 +title: "Hugo 0.67.0: Custom HTTP headers" +description: "This version brings Custom HTTP headers to the development server and exclude/include filters in Hugo Deploy." +categories: ["Releases"] +--- + +The two main items in Hugo 0.67.0 is custom HTTP header support in `hugo server` and include/exclude filters for [Hugo Deploy](https://gohugo.io/hosting-and-deployment/hugo-deploy/#readout). + +Being able to [configure HTTP headers](https://gohugo.io/getting-started/configuration/#configure-server) in your development server means that you can now verify how your site behaves with the intended Content Security Policy settings etc., e.g.: + +```toml +[server] +[[server.headers]] +for = "/**.html" + +[server.headers.values] +X-Frame-Options = "DENY" +X-XSS-Protection = "1; mode=block" +X-Content-Type-Options = "nosniff" +Referrer-Policy = "strict-origin-when-cross-origin" +Content-Security-Policy = "script-src localhost:1313" +``` + +**Note:** This release also changes how raw HTML files inside /content is processed to be in line with the documentation. See [#7030](https://github.com/gohugoio/hugo/issues/7030). + +This release represents **7 contributions by 4 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@satotake](https://github.com/satotake), [@sams96](https://github.com/sams96), and [@davidejones](https://github.com/davidejones) for their ongoing contributions. +And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site. + +Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs), +which has received **5 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@psliwka](https://github.com/psliwka), [@digitalcraftsman](https://github.com/digitalcraftsman), and [@jasikpark](https://github.com/jasikpark) for their work on the documentation site. + + +Hugo now has: + +* 42176+ [stars](https://github.com/gohugoio/hugo/stargazers) +* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors) +* 301+ [themes](http://themes.gohugo.io/) + +## Enhancements + +### Other + +* Doument the server config [63393230](https://github.com/gohugoio/hugo/commit/63393230c9d3ba19ad182064787e3bfd7ecf82d8) [@bep](https://github.com/bep) +* Support unComparable args of uniq/complement/in [8279d2e2](https://github.com/gohugoio/hugo/commit/8279d2e2271ee64725133d36a12d1d7e2158bffd) [@satotake](https://github.com/satotake) [#6105](https://github.com/gohugoio/hugo/issues/6105) +* Add HTTP header support for the dev server [10831444](https://github.com/gohugoio/hugo/commit/108314444b510bfc330ccac745dce7beccd52c91) [@bep](https://github.com/bep) [#7031](https://github.com/gohugoio/hugo/issues/7031) +* Add include and exclude support for remote [51e178a6](https://github.com/gohugoio/hugo/commit/51e178a6a28a3f305d89ebb489675743f80862ee) [@davidejones](https://github.com/davidejones) + +## Fixes + +### Templates + +* Fix error with unicode in file paths [c4fa2f07](https://github.com/gohugoio/hugo/commit/c4fa2f07996c7f1f4e257089a3c3c5b4c1339722) [@sams96](https://github.com/sams96) [#6996](https://github.com/gohugoio/hugo/issues/6996) + +### Other + +* Fix ambigous error on site.GetPage [6cceef65](https://github.com/gohugoio/hugo/commit/6cceef65c2f4b7c262bf67a249867658112b6de4) [@bep](https://github.com/bep) [#7016](https://github.com/gohugoio/hugo/issues/7016) +* Fix handling of HTML files without front matter [ffcb4aeb](https://github.com/gohugoio/hugo/commit/ffcb4aeb8e392a80da7cad0f1e03a4102efb24ec) [@bep](https://github.com/bep) [#7030](https://github.com/gohugoio/hugo/issues/7030)[#7028](https://github.com/gohugoio/hugo/issues/7028)[#6789](https://github.com/gohugoio/hugo/issues/6789) + + + + + diff --git a/content/en/news/0.67.1-relnotes/index.md b/content/en/news/0.67.1-relnotes/index.md new file mode 100644 index 000000000..7962ccca3 --- /dev/null +++ b/content/en/news/0.67.1-relnotes/index.md @@ -0,0 +1,24 @@ + +--- +date: 2020-03-15 +title: "Hugo 0.67.1: A couple of Bug Fixes" +description: "This version comes with some useful bug fixes." +categories: ["Releases"] +images: +- images/blog/hugo-bug-poster.png + +--- + + + +Some minor fixes: + +* metrics: Fix --templateMetricsHints [5eadc4c0](https://github.com/gohugoio/hugo/commit/5eadc4c0a8e5c51e72670591c4b7877e79c15e3c) [@bep](https://github.com/bep) [#7048](https://github.com/gohugoio/hugo/issues/7048) +* resources: Add data context to the key in ExecuteAsTemplate [18cb21ff](https://github.com/gohugoio/hugo/commit/18cb21ff2e4a60e7094908e4d6113a9d5a086316) [@bep](https://github.com/bep) [#7046](https://github.com/gohugoio/hugo/issues/7046) +* Improve Tailwind/PostCSS error messages [df298558](https://github.com/gohugoio/hugo/commit/df298558a5a5b747288d9656402af85e0ac75a43) [@bep](https://github.com/bep) [#7041](https://github.com/gohugoio/hugo/issues/7041)[#7042](https://github.com/gohugoio/hugo/issues/7042) +* deps: Update Blackfriday [b1106f87](https://github.com/gohugoio/hugo/commit/b1106f8715cac3544b8ea662b969336fe56fa047) [@bep](https://github.com/bep) [#7039](https://github.com/gohugoio/hugo/issues/7039) +* resources: Try to fix a Go 1.15 go vet error [c0177fe2](https://github.com/gohugoio/hugo/commit/c0177fe2b28eb09d1534e62370849c3f1d70b40f) [@bep](https://github.com/bep) +* Add languageDirection to language configuration [5914f91b](https://github.com/gohugoio/hugo/commit/5914f91b6c980e42693661d5fd5640e237691df6) [@le0tan](https://github.com/le0tan) [#6550](https://github.com/gohugoio/hugo/issues/6550) + + + diff --git a/content/en/tools/search.md b/content/en/tools/search.md index 4c6695976..f81083710 100644 --- a/content/en/tools/search.md +++ b/content/en/tools/search.md @@ -31,3 +31,4 @@ A static website with a dynamic search function? Yes, Hugo provides an alternati * [Algolia](https://www.algolia.com/)'s Search API makes it easy to deliver a great search experience in your apps and websites. Algolia Search provides hosted full-text, numerical, faceted, and geolocalized search. * [Bonsai](https://www.bonsai.io) is a fully-managed hosted Elasticsearch service that is fast, reliable, and simple to set up. Easily ingest your docs from Hugo into Elasticsearch following [this guide from the docs](https://docs.bonsai.io/docs/hugo). +* [ExpertRec](https://www.expertrec.com/) is a hosted search-as-a-service solution that is fast and scalable. Set-up and integration is extremely easy and takes only a few minutes. The search settings can be modified without coding using a dashboard. diff --git a/netlify.toml b/netlify.toml index 89e95c3c5..e6e5eca81 100644 --- a/netlify.toml +++ b/netlify.toml @@ -3,7 +3,7 @@ publish = "public" command = "hugo --gc --minify" [context.production.environment] -HUGO_VERSION = "0.66.0" +HUGO_VERSION = "0.67.1" HUGO_ENV = "production" HUGO_ENABLEGITINFO = "true" @@ -11,20 +11,20 @@ HUGO_ENABLEGITINFO = "true" command = "hugo --gc --minify --enableGitInfo" [context.split1.environment] -HUGO_VERSION = "0.66.0" +HUGO_VERSION = "0.67.1" HUGO_ENV = "production" [context.deploy-preview] command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL" [context.deploy-preview.environment] -HUGO_VERSION = "0.66.0" +HUGO_VERSION = "0.67.1" [context.branch-deploy] command = "hugo --gc --minify -b $DEPLOY_PRIME_URL" [context.branch-deploy.environment] -HUGO_VERSION = "0.66.0" +HUGO_VERSION = "0.67.1" [context.next.environment] HUGO_ENABLEGITINFO = "true" diff --git a/resources/_gen/images/news/0.67.0-relnotes/hugo-67-poster-featured_hub9adb3c2f94f651d39a760315e4e42f9_79436_480x0_resize_catmullrom_2.png b/resources/_gen/images/news/0.67.0-relnotes/hugo-67-poster-featured_hub9adb3c2f94f651d39a760315e4e42f9_79436_480x0_resize_catmullrom_2.png new file mode 100644 index 000000000..f4ae0d2a7 Binary files /dev/null and b/resources/_gen/images/news/0.67.0-relnotes/hugo-67-poster-featured_hub9adb3c2f94f651d39a760315e4e42f9_79436_480x0_resize_catmullrom_2.png differ diff --git a/resources/_gen/images/news/0.67.0-relnotes/hugo-67-poster-featured_hub9adb3c2f94f651d39a760315e4e42f9_79436_640x0_resize_catmullrom_2.png b/resources/_gen/images/news/0.67.0-relnotes/hugo-67-poster-featured_hub9adb3c2f94f651d39a760315e4e42f9_79436_640x0_resize_catmullrom_2.png new file mode 100644 index 000000000..c9d33fd0a Binary files /dev/null and b/resources/_gen/images/news/0.67.0-relnotes/hugo-67-poster-featured_hub9adb3c2f94f651d39a760315e4e42f9_79436_640x0_resize_catmullrom_2.png differ