aboutsummaryrefslogtreecommitdiffhomepage
path: root/deps
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <[email protected]>2024-08-07 10:40:54 +0200
committerBjørn Erik Pedersen <[email protected]>2024-08-09 17:18:37 +0200
commit33c0938cd50dd3409f8e94878b97d789cc328f23 (patch)
treefc4cc45265b86746aa37bc3ab4445724d22a98f2 /deps
parent0c3a1c7288032401327a9c4d7044e297bf3f7da6 (diff)
downloadhugo-33c0938cd50dd3409f8e94878b97d789cc328f23.tar.gz
hugo-33c0938cd50dd3409f8e94878b97d789cc328f23.zip
Add build time math rendering
While very useful on its own (and combined with the passthrough render hooks), this also serves as a proof of concept of using WASI (WebAssembly System Interface) modules in Hugo. This will be marked _experimental_ in the documentation. Not because it will be removed or changed in a dramatic way, but we need to think a little more how to best set up/configure similar services, define where these WASM files gets stored, maybe we can allow user provided WASM files plugins via Hugo Modules mounts etc. See these issues for more context: * https://github.com/gohugoio/hugo/issues/12736 * https://github.com/gohugoio/hugo/issues/12737 See #11927
Diffstat (limited to 'deps')
-rw-r--r--deps/deps.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/deps/deps.go b/deps/deps.go
index 0d0f283c2..e137aed7b 100644
--- a/deps/deps.go
+++ b/deps/deps.go
@@ -23,6 +23,7 @@ import (
"github.com/gohugoio/hugo/helpers"
"github.com/gohugoio/hugo/hugofs"
"github.com/gohugoio/hugo/identity"
+ "github.com/gohugoio/hugo/internal/warpc"
"github.com/gohugoio/hugo/media"
"github.com/gohugoio/hugo/resources/page"
"github.com/gohugoio/hugo/resources/postpub"
@@ -93,6 +94,10 @@ type Deps struct {
// This is common/global for all sites.
BuildState *BuildState
+ // Holds RPC dispatchers for Katex etc.
+ // TODO(bep) rethink this re. a plugin setup, but this will have to do for now.
+ WasmDispatchers *warpc.Dispatchers
+
*globalErrHandler
}
@@ -343,6 +348,9 @@ func (d *Deps) Close() error {
if d.MemCache != nil {
d.MemCache.Stop()
}
+ if d.WasmDispatchers != nil {
+ d.WasmDispatchers.Close()
+ }
return d.BuildClosers.Close()
}