summaryrefslogtreecommitdiffstats
path: root/hugolib
AgeCommit message (Collapse)Author
2022-07-09parser/pageparser: Don't store the byte slicesBjørn Erik Pedersen
On its own this change doesn't do any magic, but this is part of a bigger picture about making Hugo leaner in the memory usage department.
2022-06-30Make the baseline benchmark's test files stableBjørn Erik Pedersen
And add some assertions.
2022-06-26Extract the baseline benchmark to a testBjørn Erik Pedersen
2022-06-25Add a baseline benchmarkBjørn Erik Pedersen
2022-06-14deps: Udpate to github.com/alecthomas/chroma/v2Bjørn Erik Pedersen
Fixes #9932 Fixes #9931
2022-06-13Fix relURL with leading slash when baseURL includes a subdirectoryBjørn Erik Pedersen
Fixes #9994
2022-06-07Fix raw TOML dates in where/eqBjørn Erik Pedersen
Note that this has only been a problem with "raw dates" in TOML files in /data and similar. The predefined front matter dates `.Date` etc. are converted to a Go Time and has worked fine even after upgrading to v2 of the go-toml lib. Fixes #9979
2022-06-04helpers: Fix panic with invalid defaultMarkdownHandlerBjørn Erik Pedersen
Fixes #9968
2022-06-01Fix panic with markdownify/RenderString with shortcode on Page with no ↵Bjørn Erik Pedersen
content file Fixes #9959
2022-05-31Fix indentation in highlight shortcodeBjørn Erik Pedersen
This commit adds a new `.InnerDeindent` method to the shortcode context, which is `.Inner` with any indendation removed. This is then used in the built-in `highlight` shortcode to prevent the extra whitespace getting hightlighted. Fixes #4717
2022-05-30Make .RenderString render shortcodesBjørn Erik Pedersen
Fixes #6703
2022-05-30Improve shortcode indentation handlingBjørn Erik Pedersen
* Record the leading whitespace (tabs, spaces) before the shortcode when parsing the page. * Apply that indentation to the rendered result of shortcodes without inner content (where the user will apply indentation). Fixes #9946
2022-05-30Add Markdown as an output formatBjørn Erik Pedersen
The motivation behind this is not to make it easier to publish Markdown files, as that sounds unusual. This is mainly meant for shortcodes that produces Markdown to be inlined. You would do this by creating shortcodes with `*.md` suffix (e.g. `layouts/shortcodes/myshortcode.md`). This output format is defined as plain text, and will use Go's much more lenient text template parser. Updates #9821
2022-05-29Add a shortcode benchmarkBjørn Erik Pedersen
2022-05-29Remove Blackfriday markdown engineBjørn Erik Pedersen
It has been deprecated for a long time, its v1 version is not maintained anymore, and there are many known issues. Goldmark should be a mature replacement by now. Closes #9934
2022-05-28Fix HasMenuCurrent and IsDescendant/IsAncestor when comparing to itselfBjørn Erik Pedersen
There may be sites in the wild that depends on the faulty behaviour of IsDescendant/IsAncestor when comparing to itself, but * The documentation and common sense says that a thing cannot be descendant or ancestor to itself. * The bug introduced in `HasMenuCurrent` comes directly from that confusion. Fixes #9846
2022-05-27Don't use the baseURL /path as part of the resource cache keyBjørn Erik Pedersen
As that prevents Hugo projects with sub paths in their `baseURL` to use themes with cached resources. Fixes #9787
2022-05-25Fix Plainify edge casesBjørn Erik Pedersen
This commit replaces the main part of `helpers.StripHTML` with Go's implementation in its html/template package. It's a little slower, but correctness is more important: ```bash BenchmarkStripHTMLOld-10 680316 1764 ns/op 728 B/op 4 allocs/op BenchmarkStripHTMLNew-10 384520 3099 ns/op 2089 B/op 10 allocs/op ``` Fixes #9199 Fixes #9909 Closes #9410
2022-05-24basefs: add `noBuildLock` flagsatotake
If the flag is enabled, `.hugo_build.lock` will not be created. This ensures safe running on read-only filesystem etc. Close #9780
2022-05-15server: Fix SIGINT handling after loading bad configurationBjørn Erik Pedersen
Also fix the config error messages. Fixes #9664
2022-05-15Improve SASS errorsBjørn Erik Pedersen
Fixes #9897
2022-05-15postcss: Fix import error handlingBjørn Erik Pedersen
Note that we will now fail if `inlineImports` is enabled and we cannot resolve an import. You can work around this by either: * Use url imports or imports with media queries. * Set `skipInlineImportsNotFound=true` in the options Also get the argument order in the different NewFileError* funcs in line. Fixes #9895
2022-05-14errors: Misc improvementsBjørn Erik Pedersen
* Redo the server error template * Always add the content file context if relevant * Remove some now superflous error string matching * Move the server error template to _server/error.html * Add file context (with position) to codeblock render blocks * Improve JS build errors Fixes #9892 Fixes #9891 Fixes #9893
2022-05-09hugolib: Check for nil in shouldRenderBjørn Erik Pedersen
2022-05-08Use configured timeZone for the clockBjørn Erik Pedersen
And some other related adjustments. Updates #8787
2022-05-08Add `clock` cli flagsatotake
Close #8787
2022-05-06Improve error messages, esp. when the server is runningBjørn Erik Pedersen
* Add file context to minifier errors when publishing * Misc fixes (see issues) * Allow custom server error template in layouts/server/error.html To get to this, this commit also cleans up and simplifies the code surrounding errors and files. This also removes the usage of `github.com/pkg/errors`, mostly because of https://github.com/pkg/errors/issues/223 -- but also because most of this is now built-in to Go. Fixes #9852 Fixes #9857 Fixes #9863
2022-04-27Some godoc adjustments and image struct renamesBjørn Erik Pedersen
2022-04-27deps: Update github.com/yuin/goldmark v1.4.11 => v1.4.12Joe Mooring
Fixes #9054 Fixes #9756 Fixes #9757
2022-04-23tpl/lang: Handle nil values in lang.MergeBjørn Erik Pedersen
2022-04-23Deprecate page.Author and page.AuthorsBjørn Erik Pedersen
These are not documented, and they don't belong on Page. We should consider having author a first class citizen of Hugo, but as it is not it's better modelled as a taxonomy.
2022-04-16Fix MediaType when reading images from cacheBjørn Erik Pedersen
Fixes #8931
2022-04-12Make string sorting (e.g. ByTitle, ByLinkTitle and ByParam) language awareBjørn Erik Pedersen
Fixes #2180
2022-04-10Replace all usage of CopyOnWriteFs with OverlayFsBjørn Erik Pedersen
Fixes #9761
2022-04-08Rework the Destination filesystem to make --renderStaticToDisk workBjørn Erik Pedersen
See #9626
2022-04-08Revert "Revert "Allow rendering static files to disk and dynamic to memory ↵Bjørn Erik Pedersen
in server mode"" This reverts commit 64b7b7a89753a39661219b2fcb92d7f185a03f63.
2022-04-05resources: Create a common ResourceFinder interfaceBjørn Erik Pedersen
And make both .Resources and resources implement it. This gets us 2 new methods/functions, so you can now also do: * .Resources.Get * resources.ByType Note that GetRemote is not covered by this interface, as that is only available as a global template function. Fixes #8653
2022-04-05Localize all the GroupBy*Date methodsBjørn Erik Pedersen
Fixes #9745
2022-04-05Add environment as a new filter to _cascade.targetCathrine Paulsen
Fixes #9612
2022-03-26Deprecate .File.ExtensionSara Op den Orth
Fixes #9352
2022-03-25resources: Add more details to .ErrBjørn Erik Pedersen
This commit adds a .Data object (a map with `Body`, `StatusCode` etc.) to the .Err returned from `resources.GetRemote`, which means you can now do: ``` {{ with .Err }} {{ range $k, $v := .Data }} {{ end }} {{ end }} ``` Fixes #9708
2022-03-22Fix some typoscuishuang
Signed-off-by: cuishuang <imcusg@gmail.com> [foka@debian.org: Resolve merge conflict and squash 2 commits] Signed-off-by: Anthony Fok <foka@debian.org>
2022-03-20Make sure file mounts higher up winsBjørn Erik Pedersen
Fixes #9693
2022-03-17all: gofmt -w -r 'interface{} -> any' .Bjørn Erik Pedersen
Updates #9687
2022-03-17dartsass: Enable deprecation, @warn and @debug loggingBjørn Erik Pedersen
* @warn and Sass deprecations are printed as WARN * @debug is currently logged as INFO (needs the `--verbose` flag). We may adjust this if it gets too chatty. Fixes #9683
2022-03-14Fix and refactor typosCathrine Paulsen
2022-03-11deps: Fix Goldmark regression with HTML commentsBjørn Erik Pedersen
Fixes #9650
2022-03-11Revert "Allow rendering static files to disk and dynamic to memory in server ↵Bjørn Erik Pedersen
mode" This reverts commit 7d8011ed63d587b87a7c182748914fe146590093. Updates #9647
2022-03-10Fail with error when double-rendering text in markdownify/RenderStringBjørn Erik Pedersen
This commit prevents the most commons case of infinite recursion in link render hooks when the `linkify` option is enabled (see below). This is always a user error, but getting a `stack overflow` (the current stack limit in Go is 1 GB on 64-bit, 250 MB on 32-bit) error isn't very helpful. This fix will not prevent all such errors, though, but we may do better once #9570 is in place. So, these will fail: ``` <a href="{{ .Destination | safeURL }}" >{{ .Text | markdownify }}</a> <a href="{{ .Destination | safeURL }}" >{{ .Text | .Page.RenderString }}</a> ``` `.Text` is already rendered to `HTML`. The above needs to be rewritten to: ``` <a href="{{ .Destination | safeURL }}" >{{ .Text | safeHTML }}</a> <a href="{{ .Destination | safeURL }}" >{{ .Text | safeHTML }}</a> ``` Fixes #8959
2022-03-09Add lang attribute to internal alias templateJoe Mooring
Closes #9586