Bjørn Erik Pedersen
efa5760db5
Add timezone support for front matter dates without one
...
Fixes #8810
2021-07-27 19:02:48 +02:00
Bjørn Erik Pedersen
a57dda854b
Localize time.Format
...
Fixes #8797
2021-07-27 19:02:48 +02:00
Bjørn Erik Pedersen
022c479551
hugofs: Make FileMeta a struct
...
This commit started out investigating a `concurrent map read write` issue, ending by replacing the map with a struct.
This is easier to reason about, and it's more effective:
```
name old time/op new time/op delta
SiteNew/Regular_Deep_content_tree-16 71.5ms ± 3% 69.4ms ± 5% ~ (p=0.200 n=4+4)
name old alloc/op new alloc/op delta
SiteNew/Regular_Deep_content_tree-16 29.7MB ± 0% 27.9MB ± 0% -5.82% (p=0.029 n=4+4)
name old allocs/op new allocs/op delta
SiteNew/Regular_Deep_content_tree-16 313k ± 0% 303k ± 0% -3.35% (p=0.029 n=4+4)
```
See #8749
2021-07-15 17:14:26 +02:00
Raoul
f75f90079a
Fix tab selection of disabled items in internal pagination template
2021-07-05 10:30:59 +02:00
Joe Mooring
34e4742f0c
Fix date format in schema and opengraph templates
...
Fixes #8671
2021-06-29 20:20:38 +02:00
Bjørn Erik Pedersen
9096842b04
tpl: Rename err-missing-instagram-accesstoken => error-missing-instagram-accesstoken
...
To get it in line with the other.
2021-06-18 12:27:37 +02:00
Bjørn Erik Pedersen
d392893cd7
Misc config loading fixes
...
The main motivation behind this is simplicity and correctnes, but the new small config library is also faster:
```
BenchmarkDefaultConfigProvider/Viper-16 252418 4546 ns/op 2720 B/op 30 allocs/op
BenchmarkDefaultConfigProvider/Custom-16 450756 2651 ns/op 1008 B/op 6 allocs/op
```
Fixes #8633
Fixes #8618
Fixes #8630
Updates #8591
Closes #6680
Closes #5192
2021-06-14 17:00:32 +02:00
Bjørn Erik Pedersen
a91cd7652f
docs: Regenerate docs helper
2021-06-08 18:52:38 +02:00
Joe Mooring
73483d0f9e
tpl: Add a terse pagination template variant to improve performance
...
These calls are equivalent:
{{ template "_internal/pagination.html" . }}
{{ template "_internal/pagination.html" (dict "page" .) }}
{{ template "_internal/pagination.html" (dict "page" . "format" "default") }}
To use an alternate format:
{{ template "_internal/pagination.html" (dict "page" . "format" "terse") }}
Fixes #8599
2021-06-08 10:41:21 +02:00
Bjørn Erik Pedersen
9b5debe4b8
Upgrade Instagram shortcode
...
Fixes #7879
2021-06-08 10:30:45 +02:00
Bjørn Erik Pedersen
f55d2f4376
tpl/fmt: Add erroridf template func
...
Fixes #8613
2021-06-07 19:11:03 +02:00
Bjørn Erik Pedersen
282f1aa3db
tpl/data: Print response body on HTTP errors
...
Which makes it easier to debug.
2021-06-07 12:06:27 +02:00
Bjørn Erik Pedersen
fcd63de3a5
tpl/data: Misc header improvements, tests, allow multiple headers of same key
...
Closes #5617
2021-06-06 13:32:12 +02:00
Paul Chamberlain
150d75738b
tpl/data: Allows user-defined HTTP headers with getJSON and getCSV
...
Updates #5617
2021-06-06 13:32:12 +02:00
Joe Mooring
01758f99b9
Add math.Max and math.Min
...
Closes #8583
2021-05-28 20:38:45 +02:00
Ujjwal Goyal
c46fc838a9
tpl: Allow 'Querify' to take lone slice/interface argument
...
Querify can now take a lone string/interface slice (with string
keys) as a parameter, or multiple string parameters, to build
URL queries.
Querify earlier used 'Dictionary' to add key/value pairs to a
map to build URL queries. Changed to dynamically generate ordered
key/value pairs. Cannot take string slice as key (earlier
possible due to Dictionary).
Added tests and benchmarks for querify.
Closes #6735
2021-05-09 13:14:14 +02:00
Julien Midedji
7a2c10ae60
tpl: Fix countwords to handle special chars
...
Fixes #8479
2021-05-03 09:10:06 +02:00
Bjørn Erik Pedersen
3cc4fdd6f3
deps: Update getkin/kin-openapi v0.60.0 => v0.61.
2021-04-30 14:27:21 +02:00
Joe Mooring
f6745ad358
Remove .Site.Authors from embedded templates
...
Closes #4458
2021-04-29 17:07:05 +02:00
Bjørn Erik Pedersen
e4dc9a82b5
tpl/collections: Fix where on type mismatches
...
Fixes #8353
2021-04-23 18:06:49 +02:00
Bjørn Erik Pedersen
0d86a32d8f
Make the shortcode template lookup for output formats stable
...
Fixes #7774
2021-04-23 15:04:35 +02:00
Bjørn Erik Pedersen
bca40cf0c9
Fix Params case handling in where with slices of structs (e.g. Pages)
...
Fixes #7009
2021-04-21 19:28:18 +02:00
Joe Mooring
9b34d42bb2
Remove extraneous space from figure shortcode
...
Fixes #8401
2021-04-15 14:43:32 +02:00
Bjørn Erik Pedersen
5656a908d8
tpl: Remove the FuzzMarkdownify func for now
...
It has gotten us nothing but "build fails" mail and work we don't have time to follow up on.
2021-03-30 20:57:31 +02:00
Bjørn Erik Pedersen
5e2f128911
Try to fix the fuzz build
2021-03-28 21:42:44 +02:00
Bjørn Erik Pedersen
ba1d0051b4
media: Make Type comparable
...
So we can use it and output.Format as map key etc.
This commit also fixes the media.Type implementation so it does not need to mutate itself to handle different suffixes for the same MIME type, e.g. jpg vs. jpeg.
This means that there are no Suffix or FullSuffix on media.Type anymore.
Fixes #8317
Fixes #8324
2021-03-14 15:21:54 +01:00
Daniel Atwood
ba16a14c6e
Add support for Google Analytics v4
2021-03-03 13:30:06 +01:00
Bjørn Erik Pedersen
7f8530039a
tpl: Add method mappings for strings.Contains, strings.ContainsAny
...
Just to confirm/document the function signature.
2021-02-23 09:36:43 +01:00
Bjørn Erik Pedersen
fe77f7434b
tpl: Make the build green again
2021-02-18 18:17:43 +01:00
Bjørn Erik Pedersen
c60806550a
tpl: Regenerate internal templates
2021-02-18 17:52:32 +01:00
Daniel Atwood
ffd9dac421
tpl: Update date logic of opengraph and schema internal templates
...
* Fix: updated date logic in opengraph template
* Updated date logic in schema template
* Reformatted opengraph and schema
* Wrapped PublishDate and Lastmod in with
2021-02-18 17:51:32 +01:00
Bjørn Erik Pedersen
9650e56841
tpl: Add temporary patch to fix template data race
...
Keep this as a separate commit so we can reapply it if needed.
Fixes #7293
2021-02-18 14:11:48 +01:00
Bjørn Erik Pedersen
b5485aeae7
Add breaking tests for "map read and map write in templates"
...
The fix upstream in Go was reverted, so we apply a temporary patch for this in Hugo.
Updates #7293
2021-02-18 14:11:48 +01:00
Bjørn Erik Pedersen
ccb822eb5a
Pull in latest Go template source
2021-02-18 14:11:48 +01:00
Bjørn Erik Pedersen
cf3e077da3
tpl/internal: Synch Go templates fork with Go 1.16dev
2021-02-18 14:11:48 +01:00
susiwen8
bf55afd71f
Fix some humanize issues
...
Fixes #7912
2021-02-14 18:30:59 +01:00
Jeremy Epstein
4867cd1dea
tpl/embedded: Exclude pages without Permalink from sitemap
2021-02-06 18:30:09 +01:00
Baris Ceviz
35def0ae45
tpl/data: Add default user-agent header for getJSON requests
2021-02-01 09:31:02 +01:00
Aleksandr Demakin
ee9c136763
tpl/os: remove 1mb limit for readFile.
2021-01-23 00:39:14 +01:00
Cameron Moore
241b7483ea
tpl: Fix race condition in text template baseof
...
Copy most of the htmltemplate cloning to the textemplate implementation
in the same function.
2021-01-22 19:25:45 +01:00
Cameron Moore
0004a733c8
tpl: Fix metrics hint tracking
...
When tracking for cache hints, track the same template name as the call
to MeasureSince in Execute. When referencing a partial "foo", the value
of `n` does not match `templ.Name()` (`partials/foo` versus
`partials/foo.html`). This was causing hints to go untracked since
there was no existing metric to append the hint to.
Fixes #8125
2021-01-08 20:01:11 +01:00
Cameron Moore
8a26ab0bc5
tpl: Do not return errors in substr for out-of-bounds cases
...
Most other substr implementations don't error out in out-of-bounds cases
but simply return an empty string (or a value that's printed as an empty
string). We'll follow their lead and not exit template execution. Allow
the user decide what to do with the empty result.
Fixes #8113
2021-01-08 10:13:10 +01:00
Cameron Moore
788e50ad3a
tpl: Add missing test scenario for strings.Substr
2021-01-08 10:13:10 +01:00
Bjørn Erik Pedersen
cea1574023
Add Dart Sass support
...
But note that the Dart Sass Embedded Protocol is still in beta (beta 5), a main release scheduled for Q1 2021.
Fixes #7380
Fixes #8102
2020-12-30 17:32:25 +01:00
Bjørn Erik Pedersen
10ae7c3210
Improve LookPath
2020-12-19 17:03:07 +01:00
Bjørn Erik Pedersen
a2d146ec32
tpl: Regenerate templates
2020-12-16 12:20:02 +01:00
Maciej Sawicki
d2d493ab5d
tpl: Fix series detection in opengraph
...
When inside front matter you specified series with spaces,
then the opengraph template wouldn't detect other articles,
because in `.Site.Taxonomies.series` they are stored by
urlized key.
Example:
```yaml
# in front matter
series:
- My Series
```
```gohtml
{{/* in a template */}}
{{- $series := index .Site.Taxonomies.series$name }}
{{/* was resolved to */}}
{{- $series := index {'my-series': ...} "MySeries" }}
```
2020-12-16 12:13:30 +01:00
Phil Davis
04b89857e1
all: Fix minor typos
2020-12-16 12:11:32 +01:00
Bjørn Erik Pedersen
718e09ed4b
tpl/internal/go_templates: Revert formatting
...
Should make future fork synch easier.
2020-12-03 13:47:43 +01:00
Bjørn Erik Pedersen
d90e37e0c6
all: Format code with gofumpt
...
See https://github.com/mvdan/gofumpt
2020-12-03 13:12:58 +01:00
Andrew Zenk
4fc918e02c
tpl: Add title parameter to YouTube shortcode
2020-12-02 12:53:53 +01:00
Cameron Moore
5862fd2a60
tpl: Fix substr when length parameter is zero
...
When length parameter is zero, always return an empty string.
Updates #7993
2020-12-01 23:20:04 +01:00
Cameron Moore
64789fb5dc
tpl: Refactor and fix substr logic
...
Fix miscalculations when start is negative. Results should now match
PHP substr.
Fixes #7993
2020-11-28 11:53:46 +01:00
Bjørn Erik Pedersen
b298c06e05
deps: Update to Chroma v0.8.2
...
Closes #7970
2020-11-20 09:30:05 +01:00
AdamKorcz
4f20bf29eb
Updated year in header
2020-11-06 13:19:18 +01:00
AdamKorcz
4c613d5d5d
Added first fuzzer
2020-11-06 13:19:18 +01:00
Cameron Moore
6d95dc9d74
tpl: Fix reflection bug in merge
...
Value.Type().Key() must only be called on map values.
Fixes #7899
2020-10-29 19:19:41 +01:00
Bjørn Erik Pedersen
fdfa4a5fe6
Allow getJSON errors to be ignored
...
This change is mostly motivated to get a more stable CI build (we're building the Hugo site there, with Instagram and Twitter shortcodes sometimes failing).
Fixes #7866
2020-10-22 09:09:29 +02:00
Cameron Moore
807db97af8
tpl: Refactor time.AsTime location implementation
2020-10-21 09:49:25 +02:00
Mark Johnson
26eeb29147
tpl: Update Hugo time to support optional [LOCATION] parameter
2020-10-21 09:49:25 +02:00
Cameron Moore
08e4f9ff9c
embedded: Always show page number when 5 pages or less
...
Fixes #7523
2020-10-16 16:16:49 +02:00
Josh Gerdes
edc5c4741c
tpl: Add Do Not Track (dnt) option to Vimeo shortcode
...
Added a Vimeo EnableDNT privacy option to the Hugo config. This will enable the Vimeo 'Do Not Track' flag when either Vimeo shortcode tempalte options are used. When enabled, it will force the Vimeo player to be blocked from tracking any session data, including all cookies and stats.
Fixes #7700
2020-10-02 23:02:38 +02:00
Bjørn Erik Pedersen
97987e5c02
langs/i18n: Upgrade to go-i18n v2
...
Fixes #5242
2020-09-29 17:48:07 +02:00
Evgeny Kuznetsov
cd830bb027
tpl: Fix grammar in the new 'requires non-zero' error message
2020-09-14 19:54:48 +02:00
Bjørn Erik Pedersen
4055c12184
Fix some change detection issues on server reloads
...
* Fix change detection when .GetPage/site.GetPage is used from shortcode
* Fix stale content for GetPage results with short name lookups on server reloads
Fixes #7623
Fixes #7624
Fixes #7625
2020-09-07 21:06:44 +02:00
Cameron Moore
cdfd1c99ba
tpl: Add limit support to replaceRE
...
Go stdlib doesn't contain a limited replace in the regexp package, but
we can accomplish the same thing with ReplaceAllStringFunc.
Fixes #7586
2020-08-28 18:57:56 +02:00
Cameron Moore
047af7cfe5
tpl: Extend merge to accept multiple parameters
...
Fixes #7595
2020-08-28 09:54:51 +02:00
Cameron Moore
f9ebaaed1b
tpl: Add limit option to replace template function
...
Updates #7586
2020-08-28 08:55:58 +02:00
Bjørn Erik Pedersen
ae63c2b5c9
Fail on partials with return when given none or a zero argument
...
We need to make a proper fix for this, but it is better with an error than just silently continue.
Fixes #7572
Updates #7528
2020-08-19 10:01:16 +02:00
Kyle Anderson
5f42590144
Remove trailing whitespace and tabs from RSS templates
...
The rss templates had some tab characters mixed in with the spaces.
Additionally there would end up being trailing whitespace in output
rss feeds, which looks red in git diff.
2020-08-12 09:25:16 +02:00
Joe Mooring
bffc4e12fe
Revert "Fix ellipsis display logic in pagination template"
...
This reverts commit 2fa851e650
.
2020-08-06 13:42:08 +02:00
Joe Mooring
2fa851e650
Fix ellipsis display logic in pagination template
...
Closes #7523
2020-07-31 16:08:23 +02:00
Joe Mooring
a06c06a5c2
Fix date format in internal schema template
...
Prior to this change, the offset indicator for dates with positive
offsets was rendered as + instead of +.
Fixes #7495
2020-07-23 15:57:20 +02:00
Bjørn Erik Pedersen
eded9ac2a0
resources/js: Simplify options handling
...
Mostly to minify cache hash breakage.
Updates #7499
2020-07-22 10:13:30 +02:00
Bjørn Erik Pedersen
c91dbe4ce9
Fix baseof block regression
...
From Hugo 0.74.0.
Fixes #7478
2020-07-13 20:45:09 +02:00
Bjørn Erik Pedersen
25e3da3343
docs: Regenerate docs helper
2020-07-13 11:01:38 +02:00
Bjørn Erik Pedersen
9df98ec49c
Add proper Media Type handling in js.Build
...
See #732
2020-07-13 10:56:23 +02:00
Remko Tronçon
2fc3380707
Add js.Build asset bundling
...
Fixes #7321
2020-07-13 10:56:23 +02:00
Bjørn Erik Pedersen
12a65e76df
Add openapi3.Unmarshal
...
Fixes #7442
Fixes #7443
2020-07-06 20:03:36 +02:00
Bjørn Erik Pedersen
42e150fbfa
Fix server reload when non-HTML shortcode changes
...
Fixes #7448
2020-07-03 23:31:51 +02:00
Bjørn Erik Pedersen
028b356787
tpl/strings: Add strings.Count
...
Fixes #7453
2020-07-03 10:35:46 +02:00
Bjørn Erik Pedersen
defd7106bf
tpl: Add debug.Dump
...
Fixes #3957
2020-07-02 09:04:46 +02:00
Bjørn Erik Pedersen
4a3efea7ef
Add support for inline partials
...
Fixes #7444
2020-07-01 23:10:21 +02:00
Bjørn Erik Pedersen
01e249e97c
Regenerate templates
2020-06-12 11:29:04 +02:00
Joe Mooring
4b560cc119
Beautify HTML generated by pagination template
...
Fixes #7199 .
2020-06-12 11:27:20 +02:00
Edouard
7eeebe1e5a
tpl/crypto: Add hmac
2020-06-05 20:04:11 +02:00
Sam Smith
3d9235e8fc
tpl: Fix bad rounding in NumFmt
...
strconv.FormatFloat doesn't round properly sometimes, this adds a
different method of rounding, fixes #7116
2020-06-02 17:20:36 +02:00
Bjørn Erik Pedersen
6c3c6686f5
Fix Go template script escaping
...
Fixes #6695
2020-05-23 22:00:34 +02:00
Joe Mooring
991934497e
Add math.Pow
...
Closes #7266
2020-05-14 10:00:31 +02:00
Daniel Tipping
6205d56b85
Use .Lastmod for og:updated_time
...
.Lastmod is the time at which the website was most recently updated,
rather than .Date which is the time at which the website content file
was created.
2020-05-07 18:42:20 +02:00
Tom
04b1a6d997
Add support for sort by boolean
2020-05-02 11:57:34 +02:00
Bjørn Erik Pedersen
6add6d77b4
Rename transpileJS to babel
...
And add a test.
Updates #5764
2020-04-29 10:51:33 +02:00
Niek de Wit
2a171ff1c5
resources: Add JavaScript transpiling solution
...
Add a new pipe called TranspileJS which uses the Babel cli. This makes it possible for users to write ES6 JavaScript code and transpile it to ES5 during website generation so that the code still works with older browser versions.
Fixes #5764
2020-04-29 10:51:33 +02:00
BurtonQin
5146dc614f
tpl/tmplimpl/template: Change defer RLock to RUnlock
2020-04-21 13:23:31 +02:00
Elliott Sales de Andrade
7791a804e2
deps: Update to latest emoji package
2020-04-08 12:56:14 +02:00
Bjørn Erik Pedersen
2f721f8ec6
Add basic "post resource publish support"
...
Fixes #7146
2020-04-07 21:59:20 +02:00
Cameron Moore
8568928aa8
tpl: Extend Jsonify to support options map
...
Add support for prefix and indent options used by json.MarshalIndent
from the Go stdlib.
2020-04-07 20:01:57 +02:00
Cameron Moore
1bc93021e3
tpl: Extend Jsonify to support optional indent parameter
...
Fixes #5040
2020-04-07 20:01:57 +02:00
Bjørn Erik Pedersen
7204b354a9
Some minify configuration adjustments
2020-03-20 20:35:57 +01:00
SatowTakeshi
574c2959b8
Add minify config
...
Fixes #6750
Updates #6892
2020-03-20 20:35:57 +01:00