]> git.maquefel.me Git - brevno-suite/hugo/commit
Fix upstream Go templates bug with reversed key/value assignment
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 15 Jun 2023 14:34:16 +0000 (16:34 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 15 Jun 2023 21:04:33 +0000 (23:04 +0200)
commitee359df172ece11989e9b1bf35c2d376f2608ac6
tree98513578d0ad8c2ced1c6aacf2ca5ba40a703b6a
parent0f989d5e21b200d848b45a4e305958636fd00779
Fix upstream Go templates bug with reversed key/value assignment

The template packages are based on go1.20.5 with the patch in befec5ddbbfbd81ec84e74e15a38044d67f8785b  added.

This also includes a security fix that now disallows Go template actions in JS literals (inside backticks).

This will throw an error saying "... appears in a JS template literal".

If you're really sure this isn't a security risk in your case, you can revert to the old behaviour:

```toml
[security]
[security.gotemplates]
allowActionJSTmpl = true
```

See https://github.com/golang/go/issues/59234

Fixes #11112
24 files changed:
config/allconfig/load.go
config/security/securityConfig.go
config/security/securityConfig_test.go
tpl/internal/go_templates/htmltemplate/context.go
tpl/internal/go_templates/htmltemplate/css.go
tpl/internal/go_templates/htmltemplate/css_test.go
tpl/internal/go_templates/htmltemplate/doc.go
tpl/internal/go_templates/htmltemplate/error.go
tpl/internal/go_templates/htmltemplate/escape.go
tpl/internal/go_templates/htmltemplate/escape_test.go
tpl/internal/go_templates/htmltemplate/html.go
tpl/internal/go_templates/htmltemplate/hugo_template.go
tpl/internal/go_templates/htmltemplate/js.go
tpl/internal/go_templates/htmltemplate/js_test.go
tpl/internal/go_templates/htmltemplate/jsctx_string.go
tpl/internal/go_templates/htmltemplate/state_string.go
tpl/internal/go_templates/htmltemplate/transition.go
tpl/internal/go_templates/testenv/exec.go
tpl/internal/go_templates/testenv/testenv.go
tpl/internal/go_templates/testenv/testenv_test.go
tpl/internal/go_templates/texttemplate/exec.go
tpl/internal/go_templates/texttemplate/exec_test.go
tpl/template.go
tpl/tplimpl/integration_test.go