Bjørn Erik Pedersen
ea05c0e845
hugolib: Add a benchmark with lots of templates
2020-01-07 10:48:17 +01:00
Bjørn Erik Pedersen
196a9df585
hugolib: Fix relative .Page.GetPage from bundle
...
Fixes #6705
2020-01-05 19:41:53 +01:00
Bjørn Erik Pedersen
ff6253bc7c
Support files in content mounts
...
This commit is a general improvement of handling if single file mounts.
Fixes #6684
Fixes #6696
2020-01-01 18:19:49 +01:00
Bjørn Erik Pedersen
5509954c7e
hugolib: Fix inline shortcode regression
...
Fixes #6677
2019-12-28 14:31:51 +01:00
Bjørn Erik Pedersen
1fb17be9a0
deps: Update Goldmark to v1.1.18
...
Fixes #6649
2019-12-22 18:14:04 +01:00
Bjørn Erik Pedersen
8a58ebb311
hugolib: Improve error and reload handling of hook templates in server mode
...
Fixes #6635
2019-12-20 11:38:44 +01:00
Bjørn Erik Pedersen
a67d95fe1a
Preserve HTML Text for image render hooks
...
Fixes #6639
2019-12-19 19:02:03 +01:00
Bjørn Erik Pedersen
ad6504e6b5
Fix abs path handling in module mounts
...
Fixes #6622
2019-12-19 18:51:59 +01:00
John Zaitseff
158e7ec204
Fix incorrect MIME type from image/jpg to image/jpeg
...
According to multiple sources, both official ([IANA] and [RFC2046]) and
otherwise (eg, [Mozilla] and [Wikipedia]), the official MIME type for
JPEG images is `image/jpeg`, not `image/jpg`. Change Hugo to match.
[IANA]: https://www.iana.org/assignments/media-types/media-types.xhtml#image
[RFC2046]: https://tools.ietf.org/html/rfc2046
[Mozilla]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types
[Wikipedia]: https://en.wikipedia.org/wiki/JPEG
2019-12-19 18:02:11 +01:00
Bjørn Erik Pedersen
00954c5d1f
Preserve HTML Text for link render hooks
...
The context now have two text methods:
* Text - rendered
* PlainText
Fixes #6629
2019-12-18 22:55:19 +01:00
Bjørn Erik Pedersen
d20ca37005
tpl: Get rid of the custom template truth logic
...
Fixes #6615
2019-12-18 20:05:22 +01:00
Bjørn Erik Pedersen
e625088ef5
Add render template hooks for links and images
...
This commit also
* revises the change detection for templates used by content files in server mode.
* Adds a Page.RenderString method
Fixes #6545
Fixes #4663
Closes #6043
2019-12-18 11:44:40 +01:00
Bjørn Erik Pedersen
3c24ae030f
hugolib: Fix test
2019-12-12 14:48:59 +01:00
Bjørn Erik Pedersen
a03c631c42
Rework template handling for function and map lookups
...
This is a big commit, but it deletes lots of code and simplifies a lot.
* Resolving the template funcs at execution time means we don't have to create template clones per site
* Having a custom map resolver means that we can remove the AST lower case transformation for the special lower case Params map
Not only is the above easier to reason about, it's also faster, especially if you have more than one language, as in the benchmark below:
```
name old time/op new time/op delta
SiteNew/Deep_content_tree-16 53.7ms ± 0% 48.1ms ± 2% -10.38% (p=0.029 n=4+4)
name old alloc/op new alloc/op delta
SiteNew/Deep_content_tree-16 41.0MB ± 0% 36.8MB ± 0% -10.26% (p=0.029 n=4+4)
name old allocs/op new allocs/op delta
SiteNew/Deep_content_tree-16 481k ± 0% 410k ± 0% -14.66% (p=0.029 n=4+4)
```
This should be even better if you also have lots of templates.
Closes #6594
2019-12-12 10:04:35 +01:00
Bjørn Erik Pedersen
167c01530b
Create lightweight forks of text/template and html/template
...
This commit also removes support for Ace and Amber templates.
Updates #6594
2019-12-12 09:59:34 +01:00
Gavin D. Howard
4c804319f6
markup/tableofcontents: Add config option for ordered list
2019-12-12 07:48:40 +01:00
Bjørn Erik Pedersen
3cc217a650
deps: Update Goldmark
2019-12-11 08:41:57 +01:00
Bjørn Erik Pedersen
0efb00c2a8
tpl/partials: Allow any key type in partialCached
...
Fixes #6572
2019-12-03 00:13:47 +01:00
Bjørn Erik Pedersen
40a092b068
markup: Reimplement pygmentsCodefencesGuessSyntax
...
Fixes #6565
2019-12-02 14:12:23 +01:00
Bjørn Erik Pedersen
bb80fff69a
Fix headless regression
...
Fixes #6552
2019-11-29 13:46:29 +01:00
Bjørn Erik Pedersen
347cfb0c17
deps: Update Goldmark
...
Fixes #6549
Fixes #6551
2019-11-29 13:44:29 +01:00
Bjørn Erik Pedersen
b60ae35b97
hugolib: Fix timeout number parsing for YAML/JSON config
...
Where numbers are all floats.
Fixes #6555
2019-11-29 10:50:36 +01:00
Bjørn Erik Pedersen
dcde8af8c6
Add some internal template image tests
...
Closes #6542
2019-11-27 09:24:08 +01:00
Bjørn Erik Pedersen
dd1e5fc0b4
hugolib: Disable test assertion on Windows
2019-11-26 23:51:31 +01:00
Bjørn Erik Pedersen
0176643924
hugolib: Fix cascade in server mode
...
Fixes #6538
2019-11-26 17:04:39 +01:00
Bjørn Erik Pedersen
da53523599
hugolib: Fix .Sections vs siblings
...
Fixes #6365
2019-11-26 13:12:44 +01:00
Bjørn Erik Pedersen
96f09659ce
Fix language handling in ExecuteAsTemplate
...
Fixes #6331
2019-11-26 12:55:00 +01:00
Bjørn Erik Pedersen
03b369e672
hugolib: Adjust .Site.Permalinks deprecation level
2019-11-25 20:19:41 +01:00
Bjørn Erik Pedersen
69fd1c60d8
hugolib: Remove .Site.Ref/RelRef
2019-11-25 20:17:59 +01:00
Bjørn Erik Pedersen
33d733300a
Deprecate mmark
...
Fixes #6486
2019-11-25 20:14:20 +01:00
Bjørn Erik Pedersen
e3451371bd
hugolib: Fix recently broken timeout config
2019-11-25 20:13:29 +01:00
Bjørn Erik Pedersen
d6f7a9e28d
resources/images: Make the image cache more robust
...
Also allow timeout to be set as a duration string, e.g. `30s`.
Fixes #6501
2019-11-25 18:59:06 +01:00
Bjørn Erik Pedersen
a8e9f8389a
hugolib: Increase default timeout value to 30s
...
Fixes #6502
2019-11-25 18:59:06 +01:00
Bjørn Erik Pedersen
03e2d7462d
hubolig: Fix potential data race
...
Fixes #6478
2019-11-25 18:59:06 +01:00
Bjørn Erik Pedersen
bfb9613a14
Add Goldmark as the new default markdown handler
...
This commit adds the fast and CommonMark compliant Goldmark as the new default markdown handler in Hugo.
If you want to continue using BlackFriday as the default for md/markdown extensions, you can use this configuration:
```toml
[markup]
defaultMarkdownHandler="blackfriday"
```
Fixes #5963
Fixes #1778
Fixes #6355
2019-11-23 14:12:24 +01:00
Bjørn Erik Pedersen
a3fe5e5e35
Fix Params case handling in the index, sort and where func
...
This means that you can now do:
```
{{ range where .Site.Pages "Params.MYPARAM" "foo" }}
```
2019-11-22 18:41:50 +01:00
Bjørn Erik Pedersen
cd07e6d57b
Fix GetPage Params case issue
...
Fixes #5946
2019-11-22 18:41:40 +01:00
Bjørn Erik Pedersen
0cf85c071a
hugolib: Add a benchmark
2019-11-17 17:22:32 +01:00
Bjørn Erik Pedersen
812688fc2f
hugolib: Fix emoji handling inside shortcodes
...
Fixes #6504
2019-11-14 10:00:06 +01:00
Bjørn Erik Pedersen
d1d1f240a2
hubolib: Headless bundles should not be listed in .Pages
...
Fixes #6492
2019-11-10 18:57:31 +01:00
Bjørn Erik Pedersen
5f6b6ec689
Prepare for Goldmark
...
This commmit prepares for the addition of Goldmark as the new Markdown renderer in Hugo.
This introduces a new `markup` package with some common interfaces and each implementation in its own package.
See #5963
2019-11-06 19:09:08 +01:00
Bjørn Erik Pedersen
c26d00db64
hugolib: Fix ref/relref anhcor handling
...
Fixes #6481
2019-11-06 09:29:38 +01:00
Bjørn Erik Pedersen
33c474b9b3
hugofs: Fix crash in multilingual content fs
...
Fixes #6463
2019-10-31 16:11:53 +01:00
Bjørn Erik Pedersen
c5e1e8241a
Adjust benchmark templates
2019-10-28 10:56:07 +01:00
Bjørn Erik Pedersen
4b286b9d27
resources/images: Allow to set background fill colour
...
Closes #6298
2019-10-20 22:06:58 +02:00
Bjørn Erik Pedersen
653e6856ea
resources/page: Use binary search in Pages.Prev/Next if possible
...
This is obviously much faster for lager data sets:
```bash
name old time/op new time/op delta
SearchPage/ByWeight-100-4 267ns ± 4% 272ns ± 5% ~ (p=0.457 n=4+4)
SearchPage/ByWeight-5000-4 10.8µs ± 3% 1.2µs ± 2% -88.99% (p=0.029 n=4+4)
SearchPage/ByWeight-10000-4 21.1µs ± 1% 1.4µs ±11% -93.28% (p=0.029 n=4+4)
```
See #4500
2019-10-13 12:36:17 +02:00
Bjørn Erik Pedersen
f4f566edf4
Make Pages.Prev/Next work like the other Prev/Next methods
...
Fixes #4500
2019-10-13 12:36:17 +02:00
Zach Bayoff
7b3edc2931
tpl: Add optional "title" attribute to iframe in Vimeo shortcode
...
Add an optional "title" attribute to the iframe in the vimeo shortcode. If one is not given, the title attribute will default to "vimeo video". It is imperative for iframes to have a non-empty "title" attribute in order to meet WCAG2.0 accessibility guidelines https://www.w3.org/TR/WCAG20-TECHS/H64 .
2019-10-12 18:10:14 +02:00
Bjørn Erik Pedersen
0d7b05be4c
tpl: Make getJSON/getCVS accept non-string args
...
This broke for the Twitter simple shortcode now that Shortcodes accepts typed arguments.
Fixes #6382
2019-10-10 13:30:39 +02:00
Bjørn Erik Pedersen
339ee37143
Simplify test output to simplify diffing
2019-10-09 10:49:52 +02:00