diff --git a/go.mod b/go.mod index b106164..8edc6c2 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.23.6 require ( github.com/agnivade/levenshtein v1.2.1 github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 - github.com/bytecodealliance/wasmtime-go/v3 v3.0.2 + github.com/bytecodealliance/wasmtime-go/v28 v28.0.0 github.com/cespare/xxhash/v2 v2.3.0 github.com/containerd/containerd v1.7.26 github.com/containerd/errdefs v1.0.0 diff --git a/go.sum b/go.sum index 0f67017..9782d0b 100644 --- a/go.sum +++ b/go.sum @@ -14,8 +14,8 @@ github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0 h1:jfIu9sQUG6Ig github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0/go.mod h1:t2tdKJDJF9BV14lnkjHmOQgcvEKgtqs5a1N3LNdJhGE= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/bytecodealliance/wasmtime-go/v3 v3.0.2 h1:3uZCA/BLTIu+DqCfguByNMJa2HVHpXvjfy0Dy7g6fuA= -github.com/bytecodealliance/wasmtime-go/v3 v3.0.2/go.mod h1:RnUjnIXxEJcL6BgCvNyzCCRzZcxCgsZCi+RNlvYor5Q= +github.com/bytecodealliance/wasmtime-go/v28 v28.0.0 h1:aBU8cexP2rPZ0Qz488kvn2NXvWZHL2aG1/+n7Iv+xGc= +github.com/bytecodealliance/wasmtime-go/v28 v28.0.0/go.mod h1:4OCU0xAW9ycwtX4nMF4zxwgJBJ5/0eMfJiHB0wAmkV4= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= diff --git a/internal/wasm/sdk/internal/wasm/bindings.go b/internal/wasm/sdk/internal/wasm/bindings.go index 33ee7e4..867e4c1 100644 --- a/internal/wasm/sdk/internal/wasm/bindings.go +++ b/internal/wasm/sdk/internal/wasm/bindings.go @@ -16,7 +16,7 @@ import ( "strconv" "time" - wasmtime "github.com/bytecodealliance/wasmtime-go/v3" + wasmtime "github.com/bytecodealliance/wasmtime-go/v28" "github.com/open-policy-agent/opa/v1/ast" "github.com/open-policy-agent/opa/v1/metrics" diff --git a/internal/wasm/sdk/internal/wasm/pool.go b/internal/wasm/sdk/internal/wasm/pool.go index 7cbbc0b..c16e07a 100644 --- a/internal/wasm/sdk/internal/wasm/pool.go +++ b/internal/wasm/sdk/internal/wasm/pool.go @@ -9,7 +9,7 @@ import ( "context" "sync" - wasmtime "github.com/bytecodealliance/wasmtime-go/v3" + wasmtime "github.com/bytecodealliance/wasmtime-go/v28" "github.com/open-policy-agent/opa/internal/wasm/sdk/opa/errors" "github.com/open-policy-agent/opa/internal/wasm/util" diff --git a/internal/wasm/sdk/internal/wasm/vm.go b/internal/wasm/sdk/internal/wasm/vm.go index c0a4510..356a664 100644 --- a/internal/wasm/sdk/internal/wasm/vm.go +++ b/internal/wasm/sdk/internal/wasm/vm.go @@ -14,7 +14,7 @@ import ( "strings" "time" - wasmtime "github.com/bytecodealliance/wasmtime-go/v3" + wasmtime "github.com/bytecodealliance/wasmtime-go/v28" sdk_errors "github.com/open-policy-agent/opa/internal/wasm/sdk/opa/errors" "github.com/open-policy-agent/opa/internal/wasm/util" @@ -79,7 +79,7 @@ func newVM(opts vmOpts, engine *wasmtime.Engine) (*VM, error) { v := &VM{engine: engine} store := wasmtime.NewStore(engine) store.SetEpochDeadline(1) - memorytype := wasmtime.NewMemoryType(opts.memoryMin, true, opts.memoryMax) + memorytype := wasmtime.NewMemoryType(opts.memoryMin, true, opts.memoryMax, false) memory, err := wasmtime.NewMemory(store, memorytype) if err != nil { return nil, err @@ -94,11 +94,11 @@ func newVM(opts vmOpts, engine *wasmtime.Engine) (*VM, error) { v.dispatcher = newBuiltinDispatcher() externs := opaFunctions(v.dispatcher, store) for name, extern := range externs { - if err := linker.Define("env", name, extern); err != nil { + if err := linker.Define(store, "env", name, extern); err != nil { return nil, fmt.Errorf("linker: env.%s: %w", name, err) } } - if err := linker.Define("env", "memory", memory); err != nil { + if err := linker.Define(store, "env", "memory", memory); err != nil { return nil, fmt.Errorf("linker: env.memory: %w", err) }