From 43187141e455b8f652a7e107c2c565e3e4b208f7 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Mon, 26 Feb 2024 15:33:30 +0800 Subject: [PATCH 01/25] replace proxy-wasm-go-sdk --- plugins/wasm-go/extensions/basic-auth/go.mod | 4 ++-- plugins/wasm-go/extensions/basic-auth/go.sum | 8 +++++--- plugins/wasm-go/extensions/basic-auth/main.go | 4 ++-- plugins/wasm-go/extensions/bot-detect/go.mod | 2 +- plugins/wasm-go/extensions/bot-detect/go.sum | 9 ++------- plugins/wasm-go/extensions/chatgpt-proxy/go.mod | 4 ++-- plugins/wasm-go/extensions/chatgpt-proxy/go.sum | 8 +++++--- plugins/wasm-go/extensions/chatgpt-proxy/main.go | 4 ++-- plugins/wasm-go/extensions/cors/go.mod | 6 +++--- plugins/wasm-go/extensions/cors/go.sum | 10 ++++++---- plugins/wasm-go/extensions/cors/main.go | 4 ++-- plugins/wasm-go/extensions/custom-response/go.mod | 4 ++-- plugins/wasm-go/extensions/custom-response/go.sum | 11 ++++++++--- .../wasm-go/extensions/custom-response/main.go | 4 ++-- plugins/wasm-go/extensions/de-graphql/go.mod | 6 +++--- plugins/wasm-go/extensions/de-graphql/go.sum | 15 ++++++--------- plugins/wasm-go/extensions/de-graphql/main.go | 5 +++-- plugins/wasm-go/extensions/gc-test/go.mod | 5 +++-- plugins/wasm-go/extensions/gc-test/go.sum | 8 +++++--- plugins/wasm-go/extensions/gc-test/main.go | 4 ++-- plugins/wasm-go/extensions/gw-error-format/go.mod | 4 ++-- plugins/wasm-go/extensions/gw-error-format/go.sum | 8 +++++--- .../wasm-go/extensions/gw-error-format/main.go | 4 ++-- plugins/wasm-go/extensions/hello-world/go.mod | 4 ++-- plugins/wasm-go/extensions/hello-world/go.sum | 8 +++++--- plugins/wasm-go/extensions/hello-world/main.go | 4 ++-- plugins/wasm-go/extensions/http-call/go.mod | 4 ++-- plugins/wasm-go/extensions/http-call/go.sum | 8 +++++--- plugins/wasm-go/extensions/http-call/main.go | 4 ++-- plugins/wasm-go/extensions/key-auth/go.mod | 4 ++-- plugins/wasm-go/extensions/key-auth/go.sum | 8 +++++--- plugins/wasm-go/extensions/key-auth/main.go | 4 ++-- plugins/wasm-go/extensions/oidc/go.mod | 7 ++++--- plugins/wasm-go/extensions/oidc/go.sum | 14 +++++++------- plugins/wasm-go/extensions/oidc/main.go | 4 ++-- plugins/wasm-go/extensions/oidc/oc/provider.go | 11 ++++++----- plugins/wasm-go/extensions/oidc/oc/util.go | 2 +- plugins/wasm-go/extensions/opa/go.mod | 3 ++- plugins/wasm-go/extensions/opa/go.sum | 6 ++++-- plugins/wasm-go/extensions/opa/main.go | 4 ++-- plugins/wasm-go/extensions/request-block/go.mod | 8 +++----- plugins/wasm-go/extensions/request-block/go.sum | 8 +++++--- plugins/wasm-go/extensions/request-block/main.go | 4 ++-- .../wasm-go/extensions/request-validation/main.go | 4 ++-- plugins/wasm-go/extensions/simple-jwt-auth/go.mod | 10 ++++------ plugins/wasm-go/extensions/simple-jwt-auth/go.sum | 14 +++++++------- .../wasm-go/extensions/simple-jwt-auth/main.go | 4 ++-- plugins/wasm-go/extensions/sni-misdirect/go.mod | 11 ++++++----- plugins/wasm-go/extensions/sni-misdirect/go.sum | 10 +++++----- plugins/wasm-go/extensions/sni-misdirect/main.go | 4 ++-- plugins/wasm-go/extensions/transformer/go.mod | 10 ++++------ plugins/wasm-go/extensions/transformer/go.sum | 15 ++++++--------- plugins/wasm-go/extensions/transformer/main.go | 6 +++--- plugins/wasm-go/extensions/waf/go.mod | 5 +++-- plugins/wasm-go/extensions/waf/go.sum | 12 +++++++----- .../wasm-go/extensions/waf/wasmplugin/logger.go | 2 +- .../wasm-go/extensions/waf/wasmplugin/plugin.go | 4 ++-- .../wasm-go/extensions/waf/wasmplugin/utils.go | 9 +++++---- plugins/wasm-go/go.mod | 4 +--- plugins/wasm-go/go.sum | 4 ++-- plugins/wasm-go/pkg/matcher/rule_matcher.go | 4 ++-- plugins/wasm-go/pkg/wrapper/cluster_wrapper.go | 2 +- plugins/wasm-go/pkg/wrapper/http_wrapper.go | 2 +- plugins/wasm-go/pkg/wrapper/log_wrapper.go | 2 +- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 4 ++-- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 2 +- plugins/wasm-go/pkg/wrapper/request_wrapper.go | 2 +- 67 files changed, 211 insertions(+), 195 deletions(-) diff --git a/plugins/wasm-go/extensions/basic-auth/go.mod b/plugins/wasm-go/extensions/basic-auth/go.mod index c5f127363..7901b5b03 100644 --- a/plugins/wasm-go/extensions/basic-auth/go.mod +++ b/plugins/wasm-go/extensions/basic-auth/go.mod @@ -3,12 +3,11 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/basic-auth go 1.19 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/pkg/errors v0.9.1 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 github.com/tidwall/gjson v1.14.3 ) @@ -18,4 +17,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/basic-auth/go.sum b/plugins/wasm-go/extensions/basic-auth/go.sum index be93a802d..d53311bb3 100644 --- a/plugins/wasm-go/extensions/basic-auth/go.sum +++ b/plugins/wasm-go/extensions/basic-auth/go.sum @@ -3,18 +3,20 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/basic-auth/main.go b/plugins/wasm-go/extensions/basic-auth/main.go index 5c8ef45ef..557442674 100644 --- a/plugins/wasm-go/extensions/basic-auth/main.go +++ b/plugins/wasm-go/extensions/basic-auth/main.go @@ -24,9 +24,9 @@ import ( "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/pkg/errors" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/bot-detect/go.mod b/plugins/wasm-go/extensions/bot-detect/go.mod index b83dc5be5..957b6ea25 100644 --- a/plugins/wasm-go/extensions/bot-detect/go.mod +++ b/plugins/wasm-go/extensions/bot-detect/go.mod @@ -4,7 +4,7 @@ go 1.19 require ( github.com/alibaba/higress/plugins/wasm-go v1.3.2 - github.com/stretchr/testify v1.8.0 + github.com/stretchr/testify v1.8.4 github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c github.com/tidwall/gjson v1.14.3 github.com/wasilibs/go-re2 v1.4.1 diff --git a/plugins/wasm-go/extensions/bot-detect/go.sum b/plugins/wasm-go/extensions/bot-detect/go.sum index d6701c2ba..e4f7a5c8f 100644 --- a/plugins/wasm-go/extensions/bot-detect/go.sum +++ b/plugins/wasm-go/extensions/bot-detect/go.sum @@ -1,6 +1,5 @@ github.com/alibaba/higress/plugins/wasm-go v1.3.2 h1:OKFo9zK7PFxvtSq9TmT8TwI6xqmNq5LZXfDBqPLOgkw= github.com/alibaba/higress/plugins/wasm-go v1.3.2/go.mod h1:WZ/68vwe8qWhusa6C4/gMwUqas0jvHWSOa1bp8iK8F4= -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= @@ -11,11 +10,8 @@ github.com/magefile/mage v1.15.0 h1:BvGheCMAsG3bWUDbZ8AyXXpCNwU9u5CB6sM+HNb9HYg= github.com/magefile/mage v1.15.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c h1:OCUFXVGixHLfNjg6/QYEhv+jHJ5mRGhpEUVFv9eWPJE= github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c/go.mod h1:5t/pWFNJ9eMyu/K/Z+OeGhDJ9sN9eCo8fc2pyM/Qjg4= github.com/tetratelabs/wazero v1.6.0 h1:z0H1iikCdP8t+q341xqepY4EWvHEw8Es7tlqiVzlP3g= @@ -31,6 +27,5 @@ github.com/wasilibs/go-re2 v1.4.1/go.mod h1:ynB8eCwd9JsqUnsk8WlPDk6cEeme8BguZmnq github.com/wasilibs/nottinygc v0.4.0 h1:h1TJMihMC4neN6Zq+WKpLxgd9xCFMw7O9ETLwY2exJQ= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/plugins/wasm-go/extensions/chatgpt-proxy/go.mod b/plugins/wasm-go/extensions/chatgpt-proxy/go.mod index 6e53be18d..d997ec09d 100644 --- a/plugins/wasm-go/extensions/chatgpt-proxy/go.mod +++ b/plugins/wasm-go/extensions/chatgpt-proxy/go.mod @@ -3,11 +3,10 @@ module chatgpt-proxy go 1.19 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230629030002-81e467b6242d - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.4 ) @@ -17,4 +16,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/chatgpt-proxy/go.sum b/plugins/wasm-go/extensions/chatgpt-proxy/go.sum index bd324dc64..26c8de124 100644 --- a/plugins/wasm-go/extensions/chatgpt-proxy/go.sum +++ b/plugins/wasm-go/extensions/chatgpt-proxy/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM= github.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/chatgpt-proxy/main.go b/plugins/wasm-go/extensions/chatgpt-proxy/main.go index 8750e35b9..29654557f 100644 --- a/plugins/wasm-go/extensions/chatgpt-proxy/main.go +++ b/plugins/wasm-go/extensions/chatgpt-proxy/main.go @@ -8,8 +8,8 @@ import ( "strings" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/cors/go.mod b/plugins/wasm-go/extensions/cors/go.mod index b304762c1..446893c9a 100644 --- a/plugins/wasm-go/extensions/cors/go.mod +++ b/plugins/wasm-go/extensions/cors/go.mod @@ -3,12 +3,11 @@ module cors go 1.19 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230519024024-625c06e58f91 - github.com/stretchr/testify v1.8.3 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a + github.com/stretchr/testify v1.8.4 github.com/tidwall/gjson v1.14.4 ) @@ -20,5 +19,6 @@ require ( github.com/pmezard/go-difflib v1.0.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/plugins/wasm-go/extensions/cors/go.sum b/plugins/wasm-go/extensions/cors/go.sum index a346843d9..ac03e1c1a 100644 --- a/plugins/wasm-go/extensions/cors/go.sum +++ b/plugins/wasm-go/extensions/cors/go.sum @@ -4,20 +4,22 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/testify v1.8.3 h1:RP3t2pwF7cMEbC1dqtB6poj3niw/9gnV4Cjg5oW5gtY= -github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM= github.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/cors/main.go b/plugins/wasm-go/extensions/cors/main.go index a4f3f2237..a4abeda1e 100644 --- a/plugins/wasm-go/extensions/cors/main.go +++ b/plugins/wasm-go/extensions/cors/main.go @@ -20,8 +20,8 @@ import ( "net/http" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/custom-response/go.mod b/plugins/wasm-go/extensions/custom-response/go.mod index 7ccd8a332..d1430aec2 100644 --- a/plugins/wasm-go/extensions/custom-response/go.mod +++ b/plugins/wasm-go/extensions/custom-response/go.mod @@ -6,8 +6,7 @@ replace github.com/alibaba/higress/plugins/wasm-go => ../.. require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 - github.com/pkg/errors v0.9.1 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.3 ) @@ -17,4 +16,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/custom-response/go.sum b/plugins/wasm-go/extensions/custom-response/go.sum index 06846f3b3..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/custom-response/go.sum +++ b/plugins/wasm-go/extensions/custom-response/go.sum @@ -1,15 +1,20 @@ +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/custom-response/main.go b/plugins/wasm-go/extensions/custom-response/main.go index 825efcc7c..67af2738a 100644 --- a/plugins/wasm-go/extensions/custom-response/main.go +++ b/plugins/wasm-go/extensions/custom-response/main.go @@ -21,8 +21,8 @@ import ( "strings" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/de-graphql/go.mod b/plugins/wasm-go/extensions/de-graphql/go.mod index c3e391d83..d682b905a 100644 --- a/plugins/wasm-go/extensions/de-graphql/go.mod +++ b/plugins/wasm-go/extensions/de-graphql/go.mod @@ -3,12 +3,11 @@ module de-graphql go 1.19 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230410091208-df60dd43079c - github.com/stretchr/testify v1.8.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a + github.com/stretchr/testify v1.8.4 github.com/tidwall/gjson v1.14.4 ) @@ -20,5 +19,6 @@ require ( github.com/pmezard/go-difflib v1.0.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/plugins/wasm-go/extensions/de-graphql/go.sum b/plugins/wasm-go/extensions/de-graphql/go.sum index f92420e10..ac03e1c1a 100644 --- a/plugins/wasm-go/extensions/de-graphql/go.sum +++ b/plugins/wasm-go/extensions/de-graphql/go.sum @@ -1,29 +1,26 @@ -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM= github.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/plugins/wasm-go/extensions/de-graphql/main.go b/plugins/wasm-go/extensions/de-graphql/main.go index 641164e42..a4e5bf39e 100644 --- a/plugins/wasm-go/extensions/de-graphql/main.go +++ b/plugins/wasm-go/extensions/de-graphql/main.go @@ -19,9 +19,10 @@ import ( "net/http" "de-graphql/config" + "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/gc-test/go.mod b/plugins/wasm-go/extensions/gc-test/go.mod index 1e00f67b3..0609a7b9d 100644 --- a/plugins/wasm-go/extensions/gc-test/go.mod +++ b/plugins/wasm-go/extensions/gc-test/go.mod @@ -3,12 +3,12 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/gc-test go 1.19 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd + replace github.com/wasilibs/nottinygc v0.5.1 => github.com/higress-group/nottinygc v0.0.0-20231019105920-c4d985d443e1 require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.3 ) @@ -18,4 +18,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/gc-test/go.sum b/plugins/wasm-go/extensions/gc-test/go.sum index bc69e3f02..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/gc-test/go.sum +++ b/plugins/wasm-go/extensions/gc-test/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/gc-test/main.go b/plugins/wasm-go/extensions/gc-test/main.go index 8931ed51d..3416179f4 100644 --- a/plugins/wasm-go/extensions/gc-test/main.go +++ b/plugins/wasm-go/extensions/gc-test/main.go @@ -6,8 +6,8 @@ import ( "runtime" . "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/gw-error-format/go.mod b/plugins/wasm-go/extensions/gw-error-format/go.mod index 44432b4fd..0d4d86760 100644 --- a/plugins/wasm-go/extensions/gw-error-format/go.mod +++ b/plugins/wasm-go/extensions/gw-error-format/go.mod @@ -3,16 +3,16 @@ module wasm-demo go 1.18 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.3 ) require ( github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 // indirect github.com/magefile/mage v1.14.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) require ( diff --git a/plugins/wasm-go/extensions/gw-error-format/go.sum b/plugins/wasm-go/extensions/gw-error-format/go.sum index bc69e3f02..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/gw-error-format/go.sum +++ b/plugins/wasm-go/extensions/gw-error-format/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/gw-error-format/main.go b/plugins/wasm-go/extensions/gw-error-format/main.go index 89fbf22b9..24a2f5094 100644 --- a/plugins/wasm-go/extensions/gw-error-format/main.go +++ b/plugins/wasm-go/extensions/gw-error-format/main.go @@ -4,8 +4,8 @@ import ( "errors" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/hello-world/go.mod b/plugins/wasm-go/extensions/hello-world/go.mod index 44115fc42..b84c9bf9f 100644 --- a/plugins/wasm-go/extensions/hello-world/go.mod +++ b/plugins/wasm-go/extensions/hello-world/go.mod @@ -3,11 +3,10 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/hello-world go 1.18 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a ) require ( @@ -17,4 +16,5 @@ require ( github.com/tidwall/gjson v1.14.3 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/hello-world/go.sum b/plugins/wasm-go/extensions/hello-world/go.sum index bc69e3f02..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/hello-world/go.sum +++ b/plugins/wasm-go/extensions/hello-world/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/hello-world/main.go b/plugins/wasm-go/extensions/hello-world/main.go index 53c15fc00..2961ba7d1 100644 --- a/plugins/wasm-go/extensions/hello-world/main.go +++ b/plugins/wasm-go/extensions/hello-world/main.go @@ -17,8 +17,8 @@ package main import ( "net/http" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" ) diff --git a/plugins/wasm-go/extensions/http-call/go.mod b/plugins/wasm-go/extensions/http-call/go.mod index 540cae23f..4954205b9 100644 --- a/plugins/wasm-go/extensions/http-call/go.mod +++ b/plugins/wasm-go/extensions/http-call/go.mod @@ -3,11 +3,10 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/http-call go 1.18 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.3 ) @@ -17,4 +16,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/http-call/go.sum b/plugins/wasm-go/extensions/http-call/go.sum index bc69e3f02..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/http-call/go.sum +++ b/plugins/wasm-go/extensions/http-call/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/http-call/main.go b/plugins/wasm-go/extensions/http-call/main.go index bfc607cde..056e62e33 100644 --- a/plugins/wasm-go/extensions/http-call/main.go +++ b/plugins/wasm-go/extensions/http-call/main.go @@ -19,8 +19,8 @@ import ( "net/http" "strings" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" diff --git a/plugins/wasm-go/extensions/key-auth/go.mod b/plugins/wasm-go/extensions/key-auth/go.mod index 187b280a9..7ea2b24c6 100644 --- a/plugins/wasm-go/extensions/key-auth/go.mod +++ b/plugins/wasm-go/extensions/key-auth/go.mod @@ -3,11 +3,10 @@ module key-auth go 1.19 replace github.com/alibaba/higress/plugins/wasm-go => ../.. -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20231017105619-a18879bf867c - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.4 ) @@ -17,4 +16,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/key-auth/go.sum b/plugins/wasm-go/extensions/key-auth/go.sum index bd324dc64..26c8de124 100644 --- a/plugins/wasm-go/extensions/key-auth/go.sum +++ b/plugins/wasm-go/extensions/key-auth/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM= github.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/key-auth/main.go b/plugins/wasm-go/extensions/key-auth/main.go index 4d837ffbd..c413aa370 100644 --- a/plugins/wasm-go/extensions/key-auth/main.go +++ b/plugins/wasm-go/extensions/key-auth/main.go @@ -21,8 +21,8 @@ import ( "net/url" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/oidc/go.mod b/plugins/wasm-go/extensions/oidc/go.mod index 55a016527..10ae2e6bd 100644 --- a/plugins/wasm-go/extensions/oidc/go.mod +++ b/plugins/wasm-go/extensions/oidc/go.mod @@ -2,12 +2,12 @@ module oidc go 1.19 -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd +replace github.com/alibaba/higress/plugins/wasm-go => ../.. require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230807053545-d307d0e755f1 github.com/go-jose/go-jose/v3 v3.0.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.3 golang.org/x/oauth2 v0.11.0 ) @@ -15,10 +15,11 @@ require ( require ( github.com/golang/protobuf v1.5.3 // indirect github.com/google/uuid v1.3.0 // indirect + github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 // indirect github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect - github.com/wasilibs/nottinygc v0.4.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect golang.org/x/crypto v0.12.0 // indirect golang.org/x/net v0.14.0 // indirect google.golang.org/appengine v1.6.7 // indirect diff --git a/plugins/wasm-go/extensions/oidc/go.sum b/plugins/wasm-go/extensions/oidc/go.sum index 01c89a6c5..f900d9b6c 100644 --- a/plugins/wasm-go/extensions/oidc/go.sum +++ b/plugins/wasm-go/extensions/oidc/go.sum @@ -1,5 +1,3 @@ -github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230807053545-d307d0e755f1 h1:uPrb7pQ+hG3RQLU7iN8LvwgXYwePRwG6ZwJllg1WRWY= -github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230807053545-d307d0e755f1/go.mod h1:KtgFT8mWxKNOWu0Oi+3gyKueq4Cj/fx+YsVh1kJLNRU= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/go-jose/go-jose/v3 v3.0.0 h1:s6rrhirfEP/CGIoc6p+PZAeogN2SxKav6Wp7+dyMWVo= @@ -13,23 +11,25 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= +github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= -github.com/wasilibs/nottinygc v0.4.0 h1:h1TJMihMC4neN6Zq+WKpLxgd9xCFMw7O9ETLwY2exJQ= -github.com/wasilibs/nottinygc v0.4.0/go.mod h1:oDcIotskuYNMpqMF23l7Z8uzD4TC0WXHK8jetlB3HIo= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.12.0 h1:tFM/ta59kqch6LlvYnPa0yx5a83cL2nHflFhYKvv9Yk= diff --git a/plugins/wasm-go/extensions/oidc/main.go b/plugins/wasm-go/extensions/oidc/main.go index 705f40dad..0ae701391 100644 --- a/plugins/wasm-go/extensions/oidc/main.go +++ b/plugins/wasm-go/extensions/oidc/main.go @@ -24,8 +24,8 @@ import ( "time" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" "golang.org/x/oauth2" ) diff --git a/plugins/wasm-go/extensions/oidc/oc/provider.go b/plugins/wasm-go/extensions/oidc/oc/provider.go index 506bc8fae..c4f492ae1 100644 --- a/plugins/wasm-go/extensions/oidc/oc/provider.go +++ b/plugins/wasm-go/extensions/oidc/oc/provider.go @@ -17,15 +17,16 @@ package oc import ( "errors" "fmt" - "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/go-jose/go-jose/v3" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tidwall/gjson" - "golang.org/x/oauth2" "net/http" "net/url" "regexp" "strings" + + "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" + "github.com/go-jose/go-jose/v3" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/tidwall/gjson" + "golang.org/x/oauth2" ) var re = regexp.MustCompile("<[^>]*>") diff --git a/plugins/wasm-go/extensions/oidc/oc/util.go b/plugins/wasm-go/extensions/oidc/oc/util.go index ed8695b87..5fc618482 100644 --- a/plugins/wasm-go/extensions/oidc/oc/util.go +++ b/plugins/wasm-go/extensions/oidc/oc/util.go @@ -24,7 +24,7 @@ import ( "time" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/opa/go.mod b/plugins/wasm-go/extensions/opa/go.mod index 1fec9b2d1..cdc44beb8 100644 --- a/plugins/wasm-go/extensions/opa/go.mod +++ b/plugins/wasm-go/extensions/opa/go.mod @@ -4,8 +4,8 @@ go 1.19 require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/stretchr/testify v1.8.4 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 github.com/tidwall/gjson v1.14.4 ) @@ -17,6 +17,7 @@ require ( github.com/pmezard/go-difflib v1.0.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/plugins/wasm-go/extensions/opa/go.sum b/plugins/wasm-go/extensions/opa/go.sum index e35b8a38a..a50cf063a 100644 --- a/plugins/wasm-go/extensions/opa/go.sum +++ b/plugins/wasm-go/extensions/opa/go.sum @@ -4,20 +4,22 @@ github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= github.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM= github.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/opa/main.go b/plugins/wasm-go/extensions/opa/main.go index a87a430d2..8af5744bd 100644 --- a/plugins/wasm-go/extensions/opa/main.go +++ b/plugins/wasm-go/extensions/opa/main.go @@ -24,8 +24,8 @@ import ( "time" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/request-block/go.mod b/plugins/wasm-go/extensions/request-block/go.mod index 33355661d..b31dd483d 100644 --- a/plugins/wasm-go/extensions/request-block/go.mod +++ b/plugins/wasm-go/extensions/request-block/go.mod @@ -2,14 +2,11 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/request-block go 1.18 -replace ( - github.com/alibaba/higress/plugins/wasm-go => ../.. - github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd -) +replace github.com/alibaba/higress/plugins/wasm-go => ../.. require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.14.3 ) @@ -19,4 +16,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/request-block/go.sum b/plugins/wasm-go/extensions/request-block/go.sum index bc69e3f02..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/request-block/go.sum +++ b/plugins/wasm-go/extensions/request-block/go.sum @@ -3,16 +3,18 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/request-block/main.go b/plugins/wasm-go/extensions/request-block/main.go index 6a2e0a9df..e33ccf69d 100644 --- a/plugins/wasm-go/extensions/request-block/main.go +++ b/plugins/wasm-go/extensions/request-block/main.go @@ -20,8 +20,8 @@ import ( "regexp" "strings" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" diff --git a/plugins/wasm-go/extensions/request-validation/main.go b/plugins/wasm-go/extensions/request-validation/main.go index 975861753..0b93b35a1 100644 --- a/plugins/wasm-go/extensions/request-validation/main.go +++ b/plugins/wasm-go/extensions/request-validation/main.go @@ -20,9 +20,9 @@ import ( "strings" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/santhosh-tekuri/jsonschema" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/simple-jwt-auth/go.mod b/plugins/wasm-go/extensions/simple-jwt-auth/go.mod index 6576eaea1..27dd48f1a 100644 --- a/plugins/wasm-go/extensions/simple-jwt-auth/go.mod +++ b/plugins/wasm-go/extensions/simple-jwt-auth/go.mod @@ -2,22 +2,20 @@ module jwt-auth go 1.19 -replace ( - github.com/alibaba/higress/plugins/wasm-go => ../.. - github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd -) +replace github.com/alibaba/higress/plugins/wasm-go => ../.. require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230811015533-49269b43032f github.com/dgrijalva/jwt-go v3.2.0+incompatible - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/tidwall/gjson v1.16.0 ) require ( github.com/google/uuid v1.3.0 // indirect + github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 // indirect github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect - github.com/wasilibs/nottinygc v0.3.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/simple-jwt-auth/go.sum b/plugins/wasm-go/extensions/simple-jwt-auth/go.sum index 9e65d2de2..8ead0eba0 100644 --- a/plugins/wasm-go/extensions/simple-jwt-auth/go.sum +++ b/plugins/wasm-go/extensions/simple-jwt-auth/go.sum @@ -1,22 +1,22 @@ -github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230811015533-49269b43032f h1:H+2fEuroddobcGs2Vom+osc8CE3SBHLz+JbM036Lo9w= -github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230811015533-49269b43032f/go.mod h1:shD9qvrDS6xklAVjKYho8kHIVdW4A1vhNEOAL2miEEE= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/dgrijalva/jwt-go v3.2.0+incompatible h1:7qlOGliEKZXTDg6OTjfoBKDXWrumCAMpl/TFQ4/5kLM= github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= +github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.16.0 h1:SyXa+dsSPpUlcwEDuKuEBJEz5vzTvOea+9rjyYodQFg= github.com/tidwall/gjson v1.16.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= -github.com/wasilibs/nottinygc v0.3.0 h1:0L1jsJ1MsyN5tdinmFbLfuEA0TnHRcqaBM9pDTJVJmU= -github.com/wasilibs/nottinygc v0.3.0/go.mod h1:oDcIotskuYNMpqMF23l7Z8uzD4TC0WXHK8jetlB3HIo= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/simple-jwt-auth/main.go b/plugins/wasm-go/extensions/simple-jwt-auth/main.go index 0cc71d439..27c2e9785 100644 --- a/plugins/wasm-go/extensions/simple-jwt-auth/main.go +++ b/plugins/wasm-go/extensions/simple-jwt-auth/main.go @@ -6,8 +6,8 @@ import ( "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" jwt "github.com/dgrijalva/jwt-go" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/sni-misdirect/go.mod b/plugins/wasm-go/extensions/sni-misdirect/go.mod index a87d0e3fe..b46603c7a 100644 --- a/plugins/wasm-go/extensions/sni-misdirect/go.mod +++ b/plugins/wasm-go/extensions/sni-misdirect/go.mod @@ -2,18 +2,19 @@ module wasm_go/higress/plugins/wasm-go/extensions/sni_misdirect go 1.19 -replace ( - github.com/alibaba/higress/plugins/wasm-go => ../.. - github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd -) +replace github.com/alibaba/higress/plugins/wasm-go => ../.. require ( github.com/alibaba/higress/plugins/wasm-go v1.3.1 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a +) + +require ( github.com/google/uuid v1.3.0 // indirect github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 // indirect github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/gjson v1.14.3 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/sni-misdirect/go.sum b/plugins/wasm-go/extensions/sni-misdirect/go.sum index 4d2d73db9..aa7ab982a 100644 --- a/plugins/wasm-go/extensions/sni-misdirect/go.sum +++ b/plugins/wasm-go/extensions/sni-misdirect/go.sum @@ -1,20 +1,20 @@ -github.com/alibaba/higress/plugins/wasm-go v1.3.1 h1:d+t4W2NyqmqUz6DPZENflODfkLgdVlTfyso+nq0fSkg= -github.com/alibaba/higress/plugins/wasm-go v1.3.1/go.mod h1:WZ/68vwe8qWhusa6C4/gMwUqas0jvHWSOa1bp8iK8F4= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/plugins/wasm-go/extensions/sni-misdirect/main.go b/plugins/wasm-go/extensions/sni-misdirect/main.go index c811d3cce..7f8981eaa 100644 --- a/plugins/wasm-go/extensions/sni-misdirect/main.go +++ b/plugins/wasm-go/extensions/sni-misdirect/main.go @@ -5,8 +5,8 @@ import ( "strings" "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" ) func main() { diff --git a/plugins/wasm-go/extensions/transformer/go.mod b/plugins/wasm-go/extensions/transformer/go.mod index e2f0e958a..afb70d6b3 100644 --- a/plugins/wasm-go/extensions/transformer/go.mod +++ b/plugins/wasm-go/extensions/transformer/go.mod @@ -2,16 +2,13 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/transformer go 1.19 -replace ( - github.com/alibaba/higress/plugins/wasm-go => ../.. - github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd -) +replace github.com/alibaba/higress/plugins/wasm-go => ../.. require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0-20230829022308-8747e1ddadf0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/pkg/errors v0.9.1 - github.com/stretchr/testify v1.8.0 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/stretchr/testify v1.8.4 github.com/tidwall/gjson v1.17.0 github.com/tidwall/pretty v1.2.1 github.com/tidwall/sjson v1.2.5 @@ -24,5 +21,6 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/tidwall/match v1.1.1 // indirect + github.com/tidwall/resp v0.1.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/plugins/wasm-go/extensions/transformer/go.sum b/plugins/wasm-go/extensions/transformer/go.sum index 55ae4954b..b02ed30f5 100644 --- a/plugins/wasm-go/extensions/transformer/go.sum +++ b/plugins/wasm-go/extensions/transformer/go.sum @@ -1,23 +1,19 @@ -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/gjson v1.17.0 h1:/Jocvlh98kcTfpN2+JzGQWQcqrPQwDrVEMApx/M5ZwM= github.com/tidwall/gjson v1.17.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= @@ -26,10 +22,11 @@ github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JT github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4= github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= github.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY= github.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/plugins/wasm-go/extensions/transformer/main.go b/plugins/wasm-go/extensions/transformer/main.go index ab7f00299..5d6e86b36 100644 --- a/plugins/wasm-go/extensions/transformer/main.go +++ b/plugins/wasm-go/extensions/transformer/main.go @@ -20,9 +20,9 @@ import ( "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/pkg/errors" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" "github.com/tidwall/sjson" ) @@ -251,7 +251,7 @@ func constructParam(item *gjson.Result, op, valueType string) Param { p := Param{ valueType: valueType, } - + switch op { case "remove": p.removeParam.key = item.Get("key").String() diff --git a/plugins/wasm-go/extensions/waf/go.mod b/plugins/wasm-go/extensions/waf/go.mod index 7123326da..ee994fc46 100644 --- a/plugins/wasm-go/extensions/waf/go.mod +++ b/plugins/wasm-go/extensions/waf/go.mod @@ -6,7 +6,7 @@ require ( github.com/alibaba/higress/plugins/wasm-go v0.0.0 github.com/corazawaf/coraza-wasilibs v0.0.0-20230408002644-e2e3af21f503 github.com/corazawaf/coraza/v3 v3.0.0-rc.1.0.20230407165813-a18681b1ec28 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226065437-8f7a0b3c9071 github.com/tidwall/gjson v1.14.4 ) @@ -16,9 +16,10 @@ require ( github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 // indirect github.com/magefile/mage v1.14.0 // indirect github.com/petar-dambovaliev/aho-corasick v0.0.0-20211021192214-5ab2d9280aa9 // indirect - github.com/tetratelabs/wazero v1.0.1 // indirect + github.com/tetratelabs/wazero v1.6.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.1 // indirect + github.com/tidwall/resp v0.1.1 // indirect github.com/wasilibs/go-aho-corasick v0.3.0 // indirect github.com/wasilibs/go-libinjection v0.2.1 // indirect github.com/wasilibs/go-re2 v1.0.0 // indirect diff --git a/plugins/wasm-go/extensions/waf/go.sum b/plugins/wasm-go/extensions/waf/go.sum index 7c1a422e2..67a86f5a0 100644 --- a/plugins/wasm-go/extensions/waf/go.sum +++ b/plugins/wasm-go/extensions/waf/go.sum @@ -10,17 +10,17 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226065437-8f7a0b3c9071 h1:STb5rOHRZOzoiAa+gTz2LFqO1nYj7U/1eIVUJJadU4A= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226065437-8f7a0b3c9071/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/miekg/dns v1.1.50 h1:DQUfb9uc6smULcREF09Uc+/Gd46YWqJd5DbpPE9xkcA= github.com/petar-dambovaliev/aho-corasick v0.0.0-20211021192214-5ab2d9280aa9 h1:lL+y4Xv20pVlCGyLzNHRC0I0rIHhIL1lTvHizoS/dU8= github.com/petar-dambovaliev/aho-corasick v0.0.0-20211021192214-5ab2d9280aa9/go.mod h1:EHPiTAKtiFmrMldLUNswFwfZ2eJIYBHktdaUTZxYWRw= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= -github.com/tetratelabs/wazero v1.0.1 h1:xyWBoGyMjYekG3mEQ/W7xm9E05S89kJ/at696d/9yuc= -github.com/tetratelabs/wazero v1.0.1/go.mod h1:wYx2gNRg8/WihJfSDxA1TIL8H+GkfLYm+bIfbblu9VQ= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/tetratelabs/wazero v1.6.0 h1:z0H1iikCdP8t+q341xqepY4EWvHEw8Es7tlqiVzlP3g= +github.com/tetratelabs/wazero v1.6.0/go.mod h1:0U0G41+ochRKoPKCJlh0jMg1CHkyfK8kDqiirMmKY8A= github.com/tidwall/gjson v1.14.4 h1:uo0p8EbA09J7RQaflQ1aBRffTR7xedD2bcIVSYxLnkM= github.com/tidwall/gjson v1.14.4/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= @@ -28,6 +28,8 @@ github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JT github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4= github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= github.com/wasilibs/go-aho-corasick v0.3.0 h1:ScfPQhAwop/ELIkwY0dfMTFb/bwOdYI/MB3mkX2WOZI= github.com/wasilibs/go-aho-corasick v0.3.0/go.mod h1:LKW6EW9NWuWYE8PII+sFpRbbY3UcrMUgfUTkGaoWyMY= github.com/wasilibs/go-libinjection v0.2.1 h1:1aSwyE4oNpPGpFw3i3hoM15sF3qn1s4P0jC2jgFM2Qk= diff --git a/plugins/wasm-go/extensions/waf/wasmplugin/logger.go b/plugins/wasm-go/extensions/waf/wasmplugin/logger.go index 6347abd70..c1c9ea682 100644 --- a/plugins/wasm-go/extensions/waf/wasmplugin/logger.go +++ b/plugins/wasm-go/extensions/waf/wasmplugin/logger.go @@ -4,7 +4,7 @@ import ( "io" "github.com/corazawaf/coraza/v3/debuglog" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" ) type logger struct { diff --git a/plugins/wasm-go/extensions/waf/wasmplugin/plugin.go b/plugins/wasm-go/extensions/waf/wasmplugin/plugin.go index 20632fb38..b74dbf0e8 100644 --- a/plugins/wasm-go/extensions/waf/wasmplugin/plugin.go +++ b/plugins/wasm-go/extensions/waf/wasmplugin/plugin.go @@ -9,8 +9,8 @@ import ( "github.com/corazawaf/coraza/v3" "github.com/corazawaf/coraza/v3/debuglog" ctypes "github.com/corazawaf/coraza/v3/types" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/extensions/waf/wasmplugin/utils.go b/plugins/wasm-go/extensions/waf/wasmplugin/utils.go index 2d9c065ae..d8066def5 100644 --- a/plugins/wasm-go/extensions/waf/wasmplugin/utils.go +++ b/plugins/wasm-go/extensions/waf/wasmplugin/utils.go @@ -5,13 +5,14 @@ import ( "encoding/binary" "errors" "fmt" - "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - ctypes "github.com/corazawaf/coraza/v3/types" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" "math" "net" "strconv" + + "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" + ctypes "github.com/corazawaf/coraza/v3/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" ) const noGRPCStream int32 = -1 diff --git a/plugins/wasm-go/go.mod b/plugins/wasm-go/go.mod index 87bc50e05..ac802b846 100644 --- a/plugins/wasm-go/go.mod +++ b/plugins/wasm-go/go.mod @@ -5,8 +5,8 @@ go 1.19 require ( github.com/google/uuid v1.3.0 github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/stretchr/testify v1.8.4 - github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c github.com/tidwall/gjson v1.14.3 github.com/tidwall/resp v0.1.1 ) @@ -19,5 +19,3 @@ require ( github.com/tidwall/pretty v1.2.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) - -replace github.com/tetratelabs/proxy-wasm-go-sdk => github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd diff --git a/plugins/wasm-go/go.sum b/plugins/wasm-go/go.sum index d3223262f..5b7140b33 100644 --- a/plugins/wasm-go/go.sum +++ b/plugins/wasm-go/go.sum @@ -4,8 +4,8 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= -github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd h1:Oo20PYxsXsUCFR0y1CWkAgiLuxf8uc85RAzntjmlfJA= -github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240105034322-9a6ac242c3dd/go.mod h1:YqR8JZaY3Ev9ihXgjzAQAMkXEzPKKmy4Q5rsVWt4XGk= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= diff --git a/plugins/wasm-go/pkg/matcher/rule_matcher.go b/plugins/wasm-go/pkg/matcher/rule_matcher.go index ad6d93744..9386dab0d 100644 --- a/plugins/wasm-go/pkg/matcher/rule_matcher.go +++ b/plugins/wasm-go/pkg/matcher/rule_matcher.go @@ -19,8 +19,8 @@ import ( "fmt" "strings" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" ) diff --git a/plugins/wasm-go/pkg/wrapper/cluster_wrapper.go b/plugins/wasm-go/pkg/wrapper/cluster_wrapper.go index cb7f55e9d..101bfbfe9 100644 --- a/plugins/wasm-go/pkg/wrapper/cluster_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/cluster_wrapper.go @@ -18,7 +18,7 @@ import ( "fmt" "strings" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" ) type Cluster interface { diff --git a/plugins/wasm-go/pkg/wrapper/http_wrapper.go b/plugins/wasm-go/pkg/wrapper/http_wrapper.go index 027a516b2..32e8f626c 100644 --- a/plugins/wasm-go/pkg/wrapper/http_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/http_wrapper.go @@ -19,7 +19,7 @@ import ( "strconv" "github.com/google/uuid" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" ) type ResponseCallback func(statusCode int, responseHeaders http.Header, responseBody []byte) diff --git a/plugins/wasm-go/pkg/wrapper/log_wrapper.go b/plugins/wasm-go/pkg/wrapper/log_wrapper.go index 0a0b7139c..6c6312f31 100644 --- a/plugins/wasm-go/pkg/wrapper/log_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/log_wrapper.go @@ -17,7 +17,7 @@ package wrapper import ( "fmt" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" ) type LogLevel uint32 diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index ee311eaa4..aa690c60e 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -17,8 +17,8 @@ package wrapper import ( "unsafe" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" "github.com/alibaba/higress/plugins/wasm-go/pkg/matcher" diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 235a7ab09..5d79033d7 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -19,7 +19,7 @@ import ( "fmt" "io" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" "github.com/tidwall/resp" ) diff --git a/plugins/wasm-go/pkg/wrapper/request_wrapper.go b/plugins/wasm-go/pkg/wrapper/request_wrapper.go index 7dc36ddd4..0a7886946 100644 --- a/plugins/wasm-go/pkg/wrapper/request_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/request_wrapper.go @@ -17,7 +17,7 @@ package wrapper import ( "strings" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" ) func GetRequestScheme() string { From ca4989a941971e86e188b53e99ff3be72166b059 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Mon, 26 Feb 2024 16:07:33 +0800 Subject: [PATCH 02/25] replace proxy-wasm-go-sdk --- plugins/wasm-go/extensions/bot-detect/go.mod | 5 ++++- plugins/wasm-go/extensions/bot-detect/go.sum | 8 ++++---- plugins/wasm-go/extensions/bot-detect/main.go | 5 +++-- plugins/wasm-go/extensions/request-validation/go.mod | 5 ++++- plugins/wasm-go/extensions/request-validation/go.sum | 10 +++++----- 5 files changed, 20 insertions(+), 13 deletions(-) diff --git a/plugins/wasm-go/extensions/bot-detect/go.mod b/plugins/wasm-go/extensions/bot-detect/go.mod index 957b6ea25..6412df25c 100644 --- a/plugins/wasm-go/extensions/bot-detect/go.mod +++ b/plugins/wasm-go/extensions/bot-detect/go.mod @@ -2,10 +2,12 @@ module bot-detect go 1.19 +replace github.com/alibaba/higress/plugins/wasm-go => ../.. + require ( github.com/alibaba/higress/plugins/wasm-go v1.3.2 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a github.com/stretchr/testify v1.8.4 - github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c github.com/tidwall/gjson v1.14.3 github.com/wasilibs/go-re2 v1.4.1 ) @@ -19,5 +21,6 @@ require ( github.com/tetratelabs/wazero v1.6.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/plugins/wasm-go/extensions/bot-detect/go.sum b/plugins/wasm-go/extensions/bot-detect/go.sum index e4f7a5c8f..4f152d2a8 100644 --- a/plugins/wasm-go/extensions/bot-detect/go.sum +++ b/plugins/wasm-go/extensions/bot-detect/go.sum @@ -1,19 +1,17 @@ -github.com/alibaba/higress/plugins/wasm-go v1.3.2 h1:OKFo9zK7PFxvtSq9TmT8TwI6xqmNq5LZXfDBqPLOgkw= -github.com/alibaba/higress/plugins/wasm-go v1.3.2/go.mod h1:WZ/68vwe8qWhusa6C4/gMwUqas0jvHWSOa1bp8iK8F4= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.15.0 h1:BvGheCMAsG3bWUDbZ8AyXXpCNwU9u5CB6sM+HNb9HYg= github.com/magefile/mage v1.15.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c h1:OCUFXVGixHLfNjg6/QYEhv+jHJ5mRGhpEUVFv9eWPJE= -github.com/tetratelabs/proxy-wasm-go-sdk v0.19.1-0.20220822060051-f9d179a57f8c/go.mod h1:5t/pWFNJ9eMyu/K/Z+OeGhDJ9sN9eCo8fc2pyM/Qjg4= github.com/tetratelabs/wazero v1.6.0 h1:z0H1iikCdP8t+q341xqepY4EWvHEw8Es7tlqiVzlP3g= github.com/tetratelabs/wazero v1.6.0/go.mod h1:0U0G41+ochRKoPKCJlh0jMg1CHkyfK8kDqiirMmKY8A= github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= @@ -22,6 +20,8 @@ github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= github.com/wasilibs/go-re2 v1.4.1 h1:E5+9O1M8UoGeqLB2A9omeoaWImqpuYDs9cKwvTJq/Oo= github.com/wasilibs/go-re2 v1.4.1/go.mod h1:ynB8eCwd9JsqUnsk8WlPDk6cEeme8BguZmnqOSURE4Y= github.com/wasilibs/nottinygc v0.4.0 h1:h1TJMihMC4neN6Zq+WKpLxgd9xCFMw7O9ETLwY2exJQ= diff --git a/plugins/wasm-go/extensions/bot-detect/main.go b/plugins/wasm-go/extensions/bot-detect/main.go index 59dbcbe05..c512da4ac 100644 --- a/plugins/wasm-go/extensions/bot-detect/main.go +++ b/plugins/wasm-go/extensions/bot-detect/main.go @@ -18,9 +18,10 @@ package main import ( "bot-detect/config" + "github.com/alibaba/higress/plugins/wasm-go/pkg/wrapper" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm" - "github.com/tetratelabs/proxy-wasm-go-sdk/proxywasm/types" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" + "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" regexp "github.com/wasilibs/go-re2" ) diff --git a/plugins/wasm-go/extensions/request-validation/go.mod b/plugins/wasm-go/extensions/request-validation/go.mod index c72d3250f..a80c76256 100644 --- a/plugins/wasm-go/extensions/request-validation/go.mod +++ b/plugins/wasm-go/extensions/request-validation/go.mod @@ -2,10 +2,12 @@ module github.com/alibaba/higress/plugins/wasm-go/extensions/request-validation go 1.19 +replace github.com/alibaba/higress/plugins/wasm-go => ../.. + require ( github.com/alibaba/higress/plugins/wasm-go v1.3.1 + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226065437-8f7a0b3c9071 github.com/santhosh-tekuri/jsonschema v1.2.4 - github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 github.com/tidwall/gjson v1.17.0 ) @@ -15,4 +17,5 @@ require ( github.com/magefile/mage v1.14.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/resp v0.1.1 // indirect ) diff --git a/plugins/wasm-go/extensions/request-validation/go.sum b/plugins/wasm-go/extensions/request-validation/go.sum index f7eeb4daa..4a1d20fee 100644 --- a/plugins/wasm-go/extensions/request-validation/go.sum +++ b/plugins/wasm-go/extensions/request-validation/go.sum @@ -1,22 +1,22 @@ -github.com/alibaba/higress/plugins/wasm-go v1.3.1 h1:d+t4W2NyqmqUz6DPZENflODfkLgdVlTfyso+nq0fSkg= -github.com/alibaba/higress/plugins/wasm-go v1.3.1/go.mod h1:WZ/68vwe8qWhusa6C4/gMwUqas0jvHWSOa1bp8iK8F4= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbGQ2DTIXHBHxWfqCYQW1fKjyJ/I7W1pMyUDeEA= github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226065437-8f7a0b3c9071 h1:STb5rOHRZOzoiAa+gTz2LFqO1nYj7U/1eIVUJJadU4A= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226065437-8f7a0b3c9071/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/santhosh-tekuri/jsonschema v1.2.4 h1:hNhW8e7t+H1vgY+1QeEQpveR6D4+OwKPXCfD2aieJis= github.com/santhosh-tekuri/jsonschema v1.2.4/go.mod h1:TEAUOeZSmIxTTuHatJzrvARHiuO9LYd+cIxzgEHCQI4= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0 h1:kS7BvMKN+FiptV4pfwiNX8e3q14evxAWkhYbxt8EI1M= -github.com/tetratelabs/proxy-wasm-go-sdk v0.22.0/go.mod h1:qkW5MBz2jch2u8bS59wws65WC+Gtx3x0aPUX5JL7CXI= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/tidwall/gjson v1.17.0 h1:/Jocvlh98kcTfpN2+JzGQWQcqrPQwDrVEMApx/M5ZwM= github.com/tidwall/gjson v1.17.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/resp v0.1.1 h1:Ly20wkhqKTmDUPlyM1S7pWo5kk0tDu8OoC/vFArXmwE= +github.com/tidwall/resp v0.1.1/go.mod h1:3/FrruOBAxPTPtundW0VXgmsQ4ZBA0Aw714lVYgwFa0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= From 654f85fc54fd3662d4eeb9f0f3803af9cf6d8866 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 15:26:02 +0800 Subject: [PATCH 03/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 41 +++++++++----------- 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 5d79033d7..3a44deac8 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -27,9 +27,9 @@ type RedisResponseCallback func(status int, response resp.Value) type RedisClient interface { Init(username, password string, timeout int64) error + // with this function, you can call redis as if you are using redis-cli Command(cmds []interface{}, callback RedisResponseCallback) error - // BatchCommands(cmds [][]interface{}, callback func(status int, response []resp.Value)) error - Eval(script string, params []interface{}, callback RedisResponseCallback) error + Eval(script string, numkeys int, keys, params []interface{}, callback RedisResponseCallback) error // Key Del(key string, callback RedisResponseCallback) error @@ -117,19 +117,20 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback cluster.ClusterName(), respQuery, func(status, responseSize int) { - // proxywasm.LogCriticalf("[rinfx log] responseSize is: %d", responseSize) response, err := proxywasm.GetRedisCallResponse(0, responseSize) if err != nil { proxywasm.LogCriticalf("failed to get redis response body: %v", err) + callback(status, resp.ErrorValue(err)) + } else { + rd := resp.NewReader(bytes.NewReader(response)) + v, _, err := rd.ReadValue() + if err != nil && err != io.EOF { + proxywasm.LogCriticalf("failed to read redis response body: %v", err) + callback(status, resp.ErrorValue(err)) + } else { + callback(status, v) + } } - rd := resp.NewReader(bytes.NewReader(response)) - v, _, err := rd.ReadValue() - if err != nil && err != io.EOF { - proxywasm.LogCriticalf("failed to read redis response body: %v", err) - } - // log.Infof("value: %s", v.String()) - // callback(status, v.String()) - callback(status, v) }) if err != nil { proxywasm.LogCriticalf("redis call failed: %v", err) @@ -142,11 +143,9 @@ func respString(args []interface{}) string { wr := resp.NewWriter(&buf) arr := make([]resp.Value, 0) for _, arg := range args { - // arr = append(arr, resp.AnyValue(arg)) arr = append(arr, resp.StringValue(fmt.Sprint(arg))) } wr.WriteArray(arr) - // proxywasm.LogCriticalf("respString:\n%s", buf.String()) return buf.String() } @@ -159,14 +158,15 @@ func (c RedisClusterClient[C]) Init(username, password string, timeout int64) er } func (c RedisClusterClient[C]) Command(cmds []interface{}, callback RedisResponseCallback) error { - RedisCall(c.cluster, respString(cmds), callback) - return nil + return RedisCall(c.cluster, respString(cmds), callback) } -func (c RedisClusterClient[C]) Eval(script string, params []interface{}, callback RedisResponseCallback) error { +func (c RedisClusterClient[C]) Eval(script string, numkeys int, keys, params []interface{}, callback RedisResponseCallback) error { args := make([]interface{}, 0) args = append(args, "eval") args = append(args, script) + args = append(args, numkeys) + args = append(args, keys...) args = append(args, params...) return RedisCall(c.cluster, respString(args), callback) } @@ -214,8 +214,7 @@ func (c RedisClusterClient[C]) Set(key string, value interface{}, callback Redis args = append(args, "set") args = append(args, key) args = append(args, value) - RedisCall(c.cluster, respString(args), callback) - return nil + return RedisCall(c.cluster, respString(args), callback) } func (c RedisClusterClient[C]) SetEx(key string, value interface{}, ttl int, callback RedisResponseCallback) error { @@ -224,8 +223,7 @@ func (c RedisClusterClient[C]) SetEx(key string, value interface{}, ttl int, cal args = append(args, key) args = append(args, ttl) args = append(args, value) - RedisCall(c.cluster, respString(args), callback) - return nil + return RedisCall(c.cluster, respString(args), callback) } func (c RedisClusterClient[C]) MGet(keys []string, callback RedisResponseCallback) error { @@ -234,8 +232,7 @@ func (c RedisClusterClient[C]) MGet(keys []string, callback RedisResponseCallbac for _, k := range keys { args = append(args, k) } - RedisCall(c.cluster, respString(args), callback) - return nil + return RedisCall(c.cluster, respString(args), callback) } func (c RedisClusterClient[C]) MSet(kvMap map[string]interface{}, callback RedisResponseCallback) error { From b5b7e9b4bf3fb50b1146fc4e321b461e5747a0ca Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 15:51:46 +0800 Subject: [PATCH 04/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 3a44deac8..e746d060d 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -16,9 +16,11 @@ package wrapper import ( "bytes" + "encoding/base64" "fmt" "io" + "github.com/google/uuid" "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" "github.com/tidwall/resp" ) @@ -113,27 +115,31 @@ func RedisInit(cluster Cluster, username, password string, timeout uint32) error } func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback) error { + requestID := uuid.New().String() _, err := proxywasm.DispatchRedisCall( cluster.ClusterName(), respQuery, func(status, responseSize int) { response, err := proxywasm.GetRedisCallResponse(0, responseSize) if err != nil { - proxywasm.LogCriticalf("failed to get redis response body: %v", err) + proxywasm.LogCriticalf("failed to get redis response body, id: %s, error: %v", requestID, err) callback(status, resp.ErrorValue(err)) } else { rd := resp.NewReader(bytes.NewReader(response)) v, _, err := rd.ReadValue() if err != nil && err != io.EOF { - proxywasm.LogCriticalf("failed to read redis response body: %v", err) + proxywasm.LogCriticalf("failed to read redis response body, id: %s, error: %v", requestID, err) callback(status, resp.ErrorValue(err)) } else { + proxywasm.LogDebugf("redis call end, id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) callback(status, v) } } }) if err != nil { - proxywasm.LogCriticalf("redis call failed: %v", err) + proxywasm.LogCriticalf("redis call failed, id: %s, error: %v", requestID, err) + } else { + proxywasm.LogDebugf("redis call start, id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) } return err } From f74e0eeef08b1a0564073b827825d3360e7acdc6 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 16:22:58 +0800 Subject: [PATCH 05/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 24 ++++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index e746d060d..5d3d181c1 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -25,7 +25,14 @@ import ( "github.com/tidwall/resp" ) -type RedisResponseCallback func(status int, response resp.Value) +type RedisCallStatus int + +const ( + OK RedisCallStatus = 0 + ERROR RedisCallStatus = 1 +) + +type RedisResponseCallback func(status RedisCallStatus, response resp.Value) type RedisClient interface { Init(username, password string, timeout int64) error @@ -119,27 +126,30 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback _, err := proxywasm.DispatchRedisCall( cluster.ClusterName(), respQuery, - func(status, responseSize int) { + func(status RedisCallStatus, responseSize int) { response, err := proxywasm.GetRedisCallResponse(0, responseSize) + if status != OK { + proxywasm.LogCriticalf("Error occured while calling redis, it seems cannot connect to the redis cluster. request-id: %s", requestID) + } if err != nil { - proxywasm.LogCriticalf("failed to get redis response body, id: %s, error: %v", requestID, err) + proxywasm.LogCriticalf("failed to get redis response body, request-id: %s, error: %v", requestID, err) callback(status, resp.ErrorValue(err)) } else { rd := resp.NewReader(bytes.NewReader(response)) v, _, err := rd.ReadValue() if err != nil && err != io.EOF { - proxywasm.LogCriticalf("failed to read redis response body, id: %s, error: %v", requestID, err) + proxywasm.LogCriticalf("failed to read redis response body, request-id: %s, error: %v", requestID, err) callback(status, resp.ErrorValue(err)) } else { - proxywasm.LogDebugf("redis call end, id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) + proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) callback(status, v) } } }) if err != nil { - proxywasm.LogCriticalf("redis call failed, id: %s, error: %v", requestID, err) + proxywasm.LogCriticalf("redis call failed, request-id: %s, error: %v", requestID, err) } else { - proxywasm.LogDebugf("redis call start, id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) + proxywasm.LogDebugf("redis call start, request-id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) } return err } From 6e53a397ab056b1faa06fae983b20a2052c751be Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 16:37:21 +0800 Subject: [PATCH 06/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 5d3d181c1..c8e3960c6 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -126,23 +126,23 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback _, err := proxywasm.DispatchRedisCall( cluster.ClusterName(), respQuery, - func(status RedisCallStatus, responseSize int) { + func(status int, responseSize int) { response, err := proxywasm.GetRedisCallResponse(0, responseSize) - if status != OK { + if RedisCallStatus(status) != OK { proxywasm.LogCriticalf("Error occured while calling redis, it seems cannot connect to the redis cluster. request-id: %s", requestID) } if err != nil { proxywasm.LogCriticalf("failed to get redis response body, request-id: %s, error: %v", requestID, err) - callback(status, resp.ErrorValue(err)) + callback(RedisCallStatus(status), resp.ErrorValue(err)) } else { rd := resp.NewReader(bytes.NewReader(response)) v, _, err := rd.ReadValue() if err != nil && err != io.EOF { proxywasm.LogCriticalf("failed to read redis response body, request-id: %s, error: %v", requestID, err) - callback(status, resp.ErrorValue(err)) + callback(RedisCallStatus(status), resp.ErrorValue(err)) } else { proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) - callback(status, v) + callback(RedisCallStatus(status), v) } } }) From cd1d0fcef4a6bf14520cab549ffce25e81827af1 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 16:47:31 +0800 Subject: [PATCH 07/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 26 +++++++++++--------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index c8e3960c6..c4a0a3cfc 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -128,23 +128,27 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback respQuery, func(status int, responseSize int) { response, err := proxywasm.GetRedisCallResponse(0, responseSize) + var responseValue resp.Value if RedisCallStatus(status) != OK { proxywasm.LogCriticalf("Error occured while calling redis, it seems cannot connect to the redis cluster. request-id: %s", requestID) - } - if err != nil { - proxywasm.LogCriticalf("failed to get redis response body, request-id: %s, error: %v", requestID, err) - callback(RedisCallStatus(status), resp.ErrorValue(err)) + responseValue = resp.ErrorValue(fmt.Errorf("cannot connect to redis cluster")) } else { - rd := resp.NewReader(bytes.NewReader(response)) - v, _, err := rd.ReadValue() - if err != nil && err != io.EOF { - proxywasm.LogCriticalf("failed to read redis response body, request-id: %s, error: %v", requestID, err) - callback(RedisCallStatus(status), resp.ErrorValue(err)) + if err != nil { + proxywasm.LogCriticalf("failed to get redis response body, request-id: %s, error: %v", requestID, err) + responseValue = resp.ErrorValue(fmt.Errorf("cannot get redis response")) } else { - proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) - callback(RedisCallStatus(status), v) + rd := resp.NewReader(bytes.NewReader(response)) + value, _, err := rd.ReadValue() + if err != nil && err != io.EOF { + proxywasm.LogCriticalf("failed to read redis response body, request-id: %s, error: %v", requestID, err) + responseValue = resp.ErrorValue(fmt.Errorf("cannot read redis response")) + } else { + proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) + responseValue = value + } } } + callback(RedisCallStatus(status), responseValue) }) if err != nil { proxywasm.LogCriticalf("redis call failed, request-id: %s, error: %v", requestID, err) From cd3cc7ee20cb4e56d8817c2fa371b72f69003cf3 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 16:49:20 +0800 Subject: [PATCH 08/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index c4a0a3cfc..8f674f0e6 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -32,7 +32,7 @@ const ( ERROR RedisCallStatus = 1 ) -type RedisResponseCallback func(status RedisCallStatus, response resp.Value) +type RedisResponseCallback func(response resp.Value) type RedisClient interface { Init(username, password string, timeout int64) error @@ -148,7 +148,7 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback } } } - callback(RedisCallStatus(status), responseValue) + callback(responseValue) }) if err != nil { proxywasm.LogCriticalf("redis call failed, request-id: %s, error: %v", requestID, err) From 57f8331f14af5a7ec76be9d301580fbabd354130 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 17:01:38 +0800 Subject: [PATCH 09/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 8f674f0e6..8a8ab9e04 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -25,13 +25,6 @@ import ( "github.com/tidwall/resp" ) -type RedisCallStatus int - -const ( - OK RedisCallStatus = 0 - ERROR RedisCallStatus = 1 -) - type RedisResponseCallback func(response resp.Value) type RedisClient interface { @@ -129,7 +122,7 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback func(status int, responseSize int) { response, err := proxywasm.GetRedisCallResponse(0, responseSize) var responseValue resp.Value - if RedisCallStatus(status) != OK { + if status != 0 { proxywasm.LogCriticalf("Error occured while calling redis, it seems cannot connect to the redis cluster. request-id: %s", requestID) responseValue = resp.ErrorValue(fmt.Errorf("cannot connect to redis cluster")) } else { From a3e93955a8a0755c83c3794ec4a74a8410779f88 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 17:03:54 +0800 Subject: [PATCH 10/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 8a8ab9e04..945a60d71 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -31,7 +31,7 @@ type RedisClient interface { Init(username, password string, timeout int64) error // with this function, you can call redis as if you are using redis-cli Command(cmds []interface{}, callback RedisResponseCallback) error - Eval(script string, numkeys int, keys, params []interface{}, callback RedisResponseCallback) error + Eval(script string, numkeys int, keys, args []interface{}, callback RedisResponseCallback) error // Key Del(key string, callback RedisResponseCallback) error @@ -174,7 +174,7 @@ func (c RedisClusterClient[C]) Command(cmds []interface{}, callback RedisRespons return RedisCall(c.cluster, respString(cmds), callback) } -func (c RedisClusterClient[C]) Eval(script string, numkeys int, keys, params []interface{}, callback RedisResponseCallback) error { +func (c RedisClusterClient[C]) Eval(script string, numkeys int, keys, args []interface{}, callback RedisResponseCallback) error { args := make([]interface{}, 0) args = append(args, "eval") args = append(args, script) From 4774121ae8618c21cddba5bae83d430808ab594c Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 17:11:31 +0800 Subject: [PATCH 11/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 945a60d71..4025e19d4 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -175,13 +175,13 @@ func (c RedisClusterClient[C]) Command(cmds []interface{}, callback RedisRespons } func (c RedisClusterClient[C]) Eval(script string, numkeys int, keys, args []interface{}, callback RedisResponseCallback) error { - args := make([]interface{}, 0) - args = append(args, "eval") - args = append(args, script) - args = append(args, numkeys) - args = append(args, keys...) - args = append(args, params...) - return RedisCall(c.cluster, respString(args), callback) + params := make([]interface{}, 0) + params = append(params, "eval") + params = append(params, script) + params = append(params, numkeys) + params = append(params, keys...) + params = append(params, args...) + return RedisCall(c.cluster, respString(params), callback) } // Key From c64f14f66220bed86c26de087bb4feffe7cdf79c Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 17:20:42 +0800 Subject: [PATCH 12/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 4025e19d4..8e7760bad 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -136,8 +136,9 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback proxywasm.LogCriticalf("failed to read redis response body, request-id: %s, error: %v", requestID, err) responseValue = resp.ErrorValue(fmt.Errorf("cannot read redis response")) } else { - proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s", requestID, base64.StdEncoding.EncodeToString([]byte(respQuery))) responseValue = value + proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s, respValue: %s", + requestID, base64.StdEncoding.EncodeToString([]byte(respQuery)), base64.StdEncoding.EncodeToString([]byte(responseValue.String()))) } } } From 60305589359da0a5f52ce70d82e61f393d019dc7 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 6 Mar 2024 20:00:45 +0800 Subject: [PATCH 13/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 8e7760bad..699130488 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -138,7 +138,7 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback } else { responseValue = value proxywasm.LogDebugf("redis call end, request-id: %s, respQuery: %s, respValue: %s", - requestID, base64.StdEncoding.EncodeToString([]byte(respQuery)), base64.StdEncoding.EncodeToString([]byte(responseValue.String()))) + requestID, base64.StdEncoding.EncodeToString([]byte(respQuery)), base64.StdEncoding.EncodeToString(response)) } } } From 2905581d6c118dda4757536616c63aee7a6e688b Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Tue, 12 Mar 2024 11:05:10 +0800 Subject: [PATCH 14/25] optimize redis pkg --- plugins/wasm-go/pkg/wrapper/redis_wrapper.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go index 699130488..77321bedf 100644 --- a/plugins/wasm-go/pkg/wrapper/redis_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/redis_wrapper.go @@ -114,7 +114,7 @@ func RedisInit(cluster Cluster, username, password string, timeout uint32) error return proxywasm.RedisInit(cluster.ClusterName(), username, password, timeout) } -func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback) error { +func RedisCall(cluster Cluster, respQuery []byte, callback RedisResponseCallback) error { requestID := uuid.New().String() _, err := proxywasm.DispatchRedisCall( cluster.ClusterName(), @@ -152,7 +152,7 @@ func RedisCall(cluster Cluster, respQuery string, callback RedisResponseCallback return err } -func respString(args []interface{}) string { +func respString(args []interface{}) []byte { var buf bytes.Buffer wr := resp.NewWriter(&buf) arr := make([]resp.Value, 0) @@ -160,7 +160,7 @@ func respString(args []interface{}) string { arr = append(arr, resp.StringValue(fmt.Sprint(arg))) } wr.WriteArray(arr) - return buf.String() + return buf.Bytes() } func (c RedisClusterClient[C]) Init(username, password string, timeout int64) error { From 4cad2af47bafb543e474992f0f9f095edecb156e Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Mon, 18 Mar 2024 13:41:15 +0800 Subject: [PATCH 15/25] update deps --- plugins/wasm-go/go.mod | 2 +- plugins/wasm-go/go.sum | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/wasm-go/go.mod b/plugins/wasm-go/go.mod index ac802b846..3e4cca90e 100644 --- a/plugins/wasm-go/go.mod +++ b/plugins/wasm-go/go.mod @@ -5,7 +5,7 @@ go 1.19 require ( github.com/google/uuid v1.3.0 github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 - github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a + github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240318034951-d5306e367c43 github.com/stretchr/testify v1.8.4 github.com/tidwall/gjson v1.14.3 github.com/tidwall/resp v0.1.1 diff --git a/plugins/wasm-go/go.sum b/plugins/wasm-go/go.sum index 5b7140b33..cdf88dfc6 100644 --- a/plugins/wasm-go/go.sum +++ b/plugins/wasm-go/go.sum @@ -6,6 +6,8 @@ github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520 h1:IHDghbG github.com/higress-group/nottinygc v0.0.0-20231101025119-e93c4c2f8520/go.mod h1:Nz8ORLaFiLWotg6GeKlJMhv8cci8mM43uEnLA5t8iew= github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a h1:luYRvxLTE1xYxrXYj7nmjd1U0HHh8pUPiKfdZ0MhCGE= github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240226064518-b3dc4646a35a/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240318034951-d5306e367c43 h1:dCw7F/9ciw4NZN7w68wQRaygZ2zGOWMTIEoRvP1tlWs= +github.com/higress-group/proxy-wasm-go-sdk v0.0.0-20240318034951-d5306e367c43/go.mod h1:hNFjhrLUIq+kJ9bOcs8QtiplSQ61GZXtd2xHKx4BYRo= github.com/magefile/mage v1.14.0 h1:6QDX3g6z1YvJ4olPhT1wksUcSa/V0a1B+pJb73fBjyo= github.com/magefile/mage v1.14.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= From 778bf7da6184480b383c4d65ed55f0b1673c6d44 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 17 Apr 2024 09:53:53 +0800 Subject: [PATCH 16/25] onTick v1 --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index aa690c60e..9778bc895 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -48,6 +48,7 @@ type ParseRuleConfigFunc[PluginConfig any] func(json gjson.Result, global Plugin type onHttpHeadersFunc[PluginConfig any] func(context HttpContext, config PluginConfig, log Log) types.Action type onHttpBodyFunc[PluginConfig any] func(context HttpContext, config PluginConfig, body []byte, log Log) types.Action type onHttpStreamDoneFunc[PluginConfig any] func(context HttpContext, config PluginConfig, log Log) +type onTick[PluginConfig any] func() type CommonVmCtx[PluginConfig any] struct { types.DefaultVMContext @@ -61,6 +62,7 @@ type CommonVmCtx[PluginConfig any] struct { onHttpResponseHeaders onHttpHeadersFunc[PluginConfig] onHttpResponseBody onHttpBodyFunc[PluginConfig] onHttpStreamDone onHttpStreamDoneFunc[PluginConfig] + onTick onTick[PluginConfig] } func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) { @@ -69,6 +71,12 @@ func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[Plugi type SetPluginFunc[PluginConfig any] func(*CommonVmCtx[PluginConfig]) +func ParseOnTickBy[PluginConfig any](f onTick[PluginConfig]) SetPluginFunc[PluginConfig] { + return func(ctx *CommonVmCtx[PluginConfig]) { + ctx.onTick = f + } +} + func ParseConfigBy[PluginConfig any](f ParseConfigFunc[PluginConfig]) SetPluginFunc[PluginConfig] { return func(ctx *CommonVmCtx[PluginConfig]) { ctx.parseConfig = f @@ -151,6 +159,7 @@ type CommonPluginCtx[PluginConfig any] struct { } func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStartStatus { + _ = proxywasm.SetTickPeriodMilliSeconds(1000) data, err := proxywasm.GetPluginConfiguration() if err != nil && err != types.ErrorStatusNotFound { ctx.vm.log.Criticalf("error reading plugin configuration: %v", err) @@ -189,6 +198,13 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart return types.OnPluginStartStatusOK } +func (ctx *CommonPluginCtx[PluginConfig]) OnTick() { + proxywasm.LogInfo("wrapper onTick") + if ctx.vm.onTick != nil { + ctx.vm.onTick() + } +} + func (ctx *CommonPluginCtx[PluginConfig]) NewHttpContext(contextID uint32) types.HttpContext { httpCtx := &CommonHttpCtx[PluginConfig]{ plugin: ctx, From d80533371eca169193d50cdc3825b0987d70beae Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Wed, 17 Apr 2024 11:04:40 +0800 Subject: [PATCH 17/25] onTick v2 --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 9778bc895..8bfa1e8bb 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -48,7 +48,7 @@ type ParseRuleConfigFunc[PluginConfig any] func(json gjson.Result, global Plugin type onHttpHeadersFunc[PluginConfig any] func(context HttpContext, config PluginConfig, log Log) types.Action type onHttpBodyFunc[PluginConfig any] func(context HttpContext, config PluginConfig, body []byte, log Log) types.Action type onHttpStreamDoneFunc[PluginConfig any] func(context HttpContext, config PluginConfig, log Log) -type onTick[PluginConfig any] func() +type onTick func() type CommonVmCtx[PluginConfig any] struct { types.DefaultVMContext @@ -62,21 +62,15 @@ type CommonVmCtx[PluginConfig any] struct { onHttpResponseHeaders onHttpHeadersFunc[PluginConfig] onHttpResponseBody onHttpBodyFunc[PluginConfig] onHttpStreamDone onHttpStreamDoneFunc[PluginConfig] - onTick onTick[PluginConfig] + onTick onTick } -func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) { - proxywasm.SetVMContext(NewCommonVmCtx(pluginName, setFuncs...)) +func SetCtx[PluginConfig any](pluginName string, onTick onTick, setFuncs ...SetPluginFunc[PluginConfig]) { + proxywasm.SetVMContext(NewCommonVmCtx(pluginName, onTick, setFuncs...)) } type SetPluginFunc[PluginConfig any] func(*CommonVmCtx[PluginConfig]) -func ParseOnTickBy[PluginConfig any](f onTick[PluginConfig]) SetPluginFunc[PluginConfig] { - return func(ctx *CommonVmCtx[PluginConfig]) { - ctx.onTick = f - } -} - func ParseConfigBy[PluginConfig any](f ParseConfigFunc[PluginConfig]) SetPluginFunc[PluginConfig] { return func(ctx *CommonVmCtx[PluginConfig]) { ctx.parseConfig = f @@ -124,12 +118,13 @@ func parseEmptyPluginConfig[PluginConfig any](gjson.Result, *PluginConfig, Log) return nil } -func NewCommonVmCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { +func NewCommonVmCtx[PluginConfig any](pluginName string, onTick onTick, setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { ctx := &CommonVmCtx[PluginConfig]{ pluginName: pluginName, log: Log{pluginName}, hasCustomConfig: true, } + ctx.onTick = onTick for _, set := range setFuncs { set(ctx) } From 210a061763f21b8665b101a7b515479a7de98606 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Thu, 9 May 2024 15:37:25 +0800 Subject: [PATCH 18/25] support registe ontick functions --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 39 ++++++++++++++----- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 8bfa1e8bb..d6543af09 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -48,7 +48,6 @@ type ParseRuleConfigFunc[PluginConfig any] func(json gjson.Result, global Plugin type onHttpHeadersFunc[PluginConfig any] func(context HttpContext, config PluginConfig, log Log) types.Action type onHttpBodyFunc[PluginConfig any] func(context HttpContext, config PluginConfig, body []byte, log Log) types.Action type onHttpStreamDoneFunc[PluginConfig any] func(context HttpContext, config PluginConfig, log Log) -type onTick func() type CommonVmCtx[PluginConfig any] struct { types.DefaultVMContext @@ -62,11 +61,27 @@ type CommonVmCtx[PluginConfig any] struct { onHttpResponseHeaders onHttpHeadersFunc[PluginConfig] onHttpResponseBody onHttpBodyFunc[PluginConfig] onHttpStreamDone onHttpStreamDoneFunc[PluginConfig] - onTick onTick + onTickFuncs map[uint32]func() } -func SetCtx[PluginConfig any](pluginName string, onTick onTick, setFuncs ...SetPluginFunc[PluginConfig]) { - proxywasm.SetVMContext(NewCommonVmCtx(pluginName, onTick, setFuncs...)) +var globalOnTickFuncs map[uint32]func() = map[uint32]func(){} +var globalTickPeriod uint32 = 1000 +var globalTickPeriodCounter uint32 = 0 + +func SetTickPeriod(tickPeriod uint32) { + if tickPeriod < 100 { + proxywasm.LogError("TickPeriod update failed because its value must be greater than 100ms, the value of TickPeriod is still 1000ms.") + } else { + globalTickPeriod = tickPeriod + } +} + +func RegisteTickFunc(tickNum uint32, tickFunc func()) { + globalOnTickFuncs[tickNum] = tickFunc +} + +func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) { + proxywasm.SetVMContext(NewCommonVmCtx(pluginName, globalOnTickFuncs, setFuncs...)) } type SetPluginFunc[PluginConfig any] func(*CommonVmCtx[PluginConfig]) @@ -118,13 +133,13 @@ func parseEmptyPluginConfig[PluginConfig any](gjson.Result, *PluginConfig, Log) return nil } -func NewCommonVmCtx[PluginConfig any](pluginName string, onTick onTick, setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { +func NewCommonVmCtx[PluginConfig any](pluginName string, onTickFuncs map[uint32]func(), setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { ctx := &CommonVmCtx[PluginConfig]{ pluginName: pluginName, log: Log{pluginName}, hasCustomConfig: true, } - ctx.onTick = onTick + ctx.onTickFuncs = onTickFuncs for _, set := range setFuncs { set(ctx) } @@ -154,7 +169,6 @@ type CommonPluginCtx[PluginConfig any] struct { } func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStartStatus { - _ = proxywasm.SetTickPeriodMilliSeconds(1000) data, err := proxywasm.GetPluginConfiguration() if err != nil && err != types.ErrorStatusNotFound { ctx.vm.log.Criticalf("error reading plugin configuration: %v", err) @@ -190,13 +204,18 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart ctx.vm.log.Warnf("parse rule config failed: %v", err) return types.OnPluginStartStatusFailed } + if err := proxywasm.SetTickPeriodMilliSeconds(globalTickPeriod); err != nil { + proxywasm.LogError("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") + } return types.OnPluginStartStatusOK } func (ctx *CommonPluginCtx[PluginConfig]) OnTick() { - proxywasm.LogInfo("wrapper onTick") - if ctx.vm.onTick != nil { - ctx.vm.onTick() + globalTickPeriodCounter = (globalTickPeriodCounter + 1) % 1000 + for tickNum, tickFunc := range ctx.vm.onTickFuncs { + if globalTickPeriodCounter%tickNum == 0 { + tickFunc() + } } } From ac420e871dba9e3ca21c2e462b96c159e7951d80 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Thu, 9 May 2024 16:01:15 +0800 Subject: [PATCH 19/25] compute lcm for multiple tick functions --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index d6543af09..0cc4ae0fc 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -66,7 +66,21 @@ type CommonVmCtx[PluginConfig any] struct { var globalOnTickFuncs map[uint32]func() = map[uint32]func(){} var globalTickPeriod uint32 = 1000 -var globalTickPeriodCounter uint32 = 0 +var globalTickCounter uint32 = 0 +var globalTickLCM uint32 = 1 + +// 计算最大公约数 +func gcd(a, b uint32) uint32 { + for b != 0 { + a, b = b, a%b + } + return a +} + +// 计算最小公倍数 +func lcm(a, b uint32) uint32 { + return a * b / gcd(a, b) +} func SetTickPeriod(tickPeriod uint32) { if tickPeriod < 100 { @@ -78,6 +92,7 @@ func SetTickPeriod(tickPeriod uint32) { func RegisteTickFunc(tickNum uint32, tickFunc func()) { globalOnTickFuncs[tickNum] = tickFunc + globalTickLCM = lcm(tickNum, globalTickLCM) } func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) { @@ -211,9 +226,9 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart } func (ctx *CommonPluginCtx[PluginConfig]) OnTick() { - globalTickPeriodCounter = (globalTickPeriodCounter + 1) % 1000 + globalTickCounter = (globalTickCounter + 1) % globalTickLCM for tickNum, tickFunc := range ctx.vm.onTickFuncs { - if globalTickPeriodCounter%tickNum == 0 { + if globalTickCounter%tickNum == 0 { tickFunc() } } From 20cc0276a5873760a20e6e55b9fc8af4d3c49879 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Thu, 9 May 2024 16:02:01 +0800 Subject: [PATCH 20/25] update --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 0cc4ae0fc..eb7878cab 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -69,7 +69,6 @@ var globalTickPeriod uint32 = 1000 var globalTickCounter uint32 = 0 var globalTickLCM uint32 = 1 -// 计算最大公约数 func gcd(a, b uint32) uint32 { for b != 0 { a, b = b, a%b @@ -77,7 +76,6 @@ func gcd(a, b uint32) uint32 { return a } -// 计算最小公倍数 func lcm(a, b uint32) uint32 { return a * b / gcd(a, b) } From 3ef48b0dc11e6827010f81d95a44aba21329fb99 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Thu, 9 May 2024 17:05:29 +0800 Subject: [PATCH 21/25] update --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index eb7878cab..8a297776f 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -218,7 +218,8 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart return types.OnPluginStartStatusFailed } if err := proxywasm.SetTickPeriodMilliSeconds(globalTickPeriod); err != nil { - proxywasm.LogError("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") + ctx.vm.log.Error("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") + return types.OnPluginStartStatusFailed } return types.OnPluginStartStatusOK } From 79e6c9037fe2d0d9fb0faaa72fe3d7e4b6c6f4a0 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Thu, 9 May 2024 19:02:25 +0800 Subject: [PATCH 22/25] update --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 47 +++++++------------ 1 file changed, 16 insertions(+), 31 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 8a297776f..174aba2e4 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -15,6 +15,7 @@ package wrapper import ( + "time" "unsafe" "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" @@ -61,36 +62,19 @@ type CommonVmCtx[PluginConfig any] struct { onHttpResponseHeaders onHttpHeadersFunc[PluginConfig] onHttpResponseBody onHttpBodyFunc[PluginConfig] onHttpStreamDone onHttpStreamDoneFunc[PluginConfig] - onTickFuncs map[uint32]func() + onTickFuncs []TickFuncEntry } -var globalOnTickFuncs map[uint32]func() = map[uint32]func(){} -var globalTickPeriod uint32 = 1000 -var globalTickCounter uint32 = 0 -var globalTickLCM uint32 = 1 - -func gcd(a, b uint32) uint32 { - for b != 0 { - a, b = b, a%b - } - return a -} - -func lcm(a, b uint32) uint32 { - return a * b / gcd(a, b) +type TickFuncEntry struct { + lastExecuted int64 + tickPeriod int64 + tickFunc func() } -func SetTickPeriod(tickPeriod uint32) { - if tickPeriod < 100 { - proxywasm.LogError("TickPeriod update failed because its value must be greater than 100ms, the value of TickPeriod is still 1000ms.") - } else { - globalTickPeriod = tickPeriod - } -} +var globalOnTickFuncs []TickFuncEntry = []TickFuncEntry{} -func RegisteTickFunc(tickNum uint32, tickFunc func()) { - globalOnTickFuncs[tickNum] = tickFunc - globalTickLCM = lcm(tickNum, globalTickLCM) +func RegisteTickFunc(tickPeriod int64, tickFunc func()) { + globalOnTickFuncs = append(globalOnTickFuncs, TickFuncEntry{0, tickPeriod, tickFunc}) } func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) { @@ -146,7 +130,7 @@ func parseEmptyPluginConfig[PluginConfig any](gjson.Result, *PluginConfig, Log) return nil } -func NewCommonVmCtx[PluginConfig any](pluginName string, onTickFuncs map[uint32]func(), setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { +func NewCommonVmCtx[PluginConfig any](pluginName string, onTickFuncs []TickFuncEntry, setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { ctx := &CommonVmCtx[PluginConfig]{ pluginName: pluginName, log: Log{pluginName}, @@ -217,7 +201,7 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart ctx.vm.log.Warnf("parse rule config failed: %v", err) return types.OnPluginStartStatusFailed } - if err := proxywasm.SetTickPeriodMilliSeconds(globalTickPeriod); err != nil { + if err := proxywasm.SetTickPeriodMilliSeconds(100); err != nil { ctx.vm.log.Error("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") return types.OnPluginStartStatusFailed } @@ -225,10 +209,11 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart } func (ctx *CommonPluginCtx[PluginConfig]) OnTick() { - globalTickCounter = (globalTickCounter + 1) % globalTickLCM - for tickNum, tickFunc := range ctx.vm.onTickFuncs { - if globalTickCounter%tickNum == 0 { - tickFunc() + for i := range ctx.vm.onTickFuncs { + currentTimeStamp := time.Now().UnixMilli() + if currentTimeStamp-ctx.vm.onTickFuncs[i].lastExecuted >= ctx.vm.onTickFuncs[i].tickPeriod { + ctx.vm.onTickFuncs[i].tickFunc() + ctx.vm.onTickFuncs[i].lastExecuted = currentTimeStamp } } } From e135e50fc2e0f863e632aa3dee09e362fc56bf50 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Thu, 9 May 2024 19:49:36 +0800 Subject: [PATCH 23/25] move RegisteTickFunc to parseConfig phase --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 26 ++++++++++++++----- 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 174aba2e4..ce3a6cd7b 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -73,12 +73,22 @@ type TickFuncEntry struct { var globalOnTickFuncs []TickFuncEntry = []TickFuncEntry{} +// Registe multiple onTick functions. Parameters include: +// 1) tickPeriod: the execution period of tickFunc; +// 2) tickFunc: the function to be executed +// You should call this function in parseConfig phase, for example: +// +// func parseConfig(json gjson.Result, config *HelloWorldConfig, log wrapper.Log) error { +// wrapper.RegisteTickFunc(1000, func() { proxywasm.LogInfo("onTick 1s") }) +// wrapper.RegisteTickFunc(3000, func() { proxywasm.LogInfo("onTick 3s") }) +// return nil +// } func RegisteTickFunc(tickPeriod int64, tickFunc func()) { globalOnTickFuncs = append(globalOnTickFuncs, TickFuncEntry{0, tickPeriod, tickFunc}) } func SetCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) { - proxywasm.SetVMContext(NewCommonVmCtx(pluginName, globalOnTickFuncs, setFuncs...)) + proxywasm.SetVMContext(NewCommonVmCtx(pluginName, setFuncs...)) } type SetPluginFunc[PluginConfig any] func(*CommonVmCtx[PluginConfig]) @@ -130,13 +140,12 @@ func parseEmptyPluginConfig[PluginConfig any](gjson.Result, *PluginConfig, Log) return nil } -func NewCommonVmCtx[PluginConfig any](pluginName string, onTickFuncs []TickFuncEntry, setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { +func NewCommonVmCtx[PluginConfig any](pluginName string, setFuncs ...SetPluginFunc[PluginConfig]) *CommonVmCtx[PluginConfig] { ctx := &CommonVmCtx[PluginConfig]{ pluginName: pluginName, log: Log{pluginName}, hasCustomConfig: true, } - ctx.onTickFuncs = onTickFuncs for _, set := range setFuncs { set(ctx) } @@ -167,6 +176,8 @@ type CommonPluginCtx[PluginConfig any] struct { func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStartStatus { data, err := proxywasm.GetPluginConfiguration() + globalOnTickFuncs = nil + ctx.vm.onTickFuncs = nil if err != nil && err != types.ErrorStatusNotFound { ctx.vm.log.Criticalf("error reading plugin configuration: %v", err) return types.OnPluginStartStatusFailed @@ -201,9 +212,12 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart ctx.vm.log.Warnf("parse rule config failed: %v", err) return types.OnPluginStartStatusFailed } - if err := proxywasm.SetTickPeriodMilliSeconds(100); err != nil { - ctx.vm.log.Error("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") - return types.OnPluginStartStatusFailed + if globalOnTickFuncs != nil { + ctx.vm.onTickFuncs = globalOnTickFuncs + if err := proxywasm.SetTickPeriodMilliSeconds(100); err != nil { + ctx.vm.log.Error("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") + return types.OnPluginStartStatusFailed + } } return types.OnPluginStartStatusOK } From c70df7a4adfd98424875b73a7802b1172de3e36a Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Fri, 10 May 2024 17:18:25 +0800 Subject: [PATCH 24/25] update --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index ce3a6cd7b..0e6abcaf3 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -62,7 +62,6 @@ type CommonVmCtx[PluginConfig any] struct { onHttpResponseHeaders onHttpHeadersFunc[PluginConfig] onHttpResponseBody onHttpBodyFunc[PluginConfig] onHttpStreamDone onHttpStreamDoneFunc[PluginConfig] - onTickFuncs []TickFuncEntry } type TickFuncEntry struct { @@ -171,13 +170,13 @@ func (ctx *CommonVmCtx[PluginConfig]) NewPluginContext(uint32) types.PluginConte type CommonPluginCtx[PluginConfig any] struct { types.DefaultPluginContext matcher.RuleMatcher[PluginConfig] - vm *CommonVmCtx[PluginConfig] + vm *CommonVmCtx[PluginConfig] + onTickFuncs []TickFuncEntry } func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStartStatus { data, err := proxywasm.GetPluginConfiguration() globalOnTickFuncs = nil - ctx.vm.onTickFuncs = nil if err != nil && err != types.ErrorStatusNotFound { ctx.vm.log.Criticalf("error reading plugin configuration: %v", err) return types.OnPluginStartStatusFailed @@ -213,7 +212,7 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart return types.OnPluginStartStatusFailed } if globalOnTickFuncs != nil { - ctx.vm.onTickFuncs = globalOnTickFuncs + ctx.onTickFuncs = globalOnTickFuncs if err := proxywasm.SetTickPeriodMilliSeconds(100); err != nil { ctx.vm.log.Error("SetTickPeriodMilliSeconds failed, onTick functions will not take effect.") return types.OnPluginStartStatusFailed @@ -223,11 +222,11 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart } func (ctx *CommonPluginCtx[PluginConfig]) OnTick() { - for i := range ctx.vm.onTickFuncs { + for i := range ctx.onTickFuncs { currentTimeStamp := time.Now().UnixMilli() - if currentTimeStamp-ctx.vm.onTickFuncs[i].lastExecuted >= ctx.vm.onTickFuncs[i].tickPeriod { - ctx.vm.onTickFuncs[i].tickFunc() - ctx.vm.onTickFuncs[i].lastExecuted = currentTimeStamp + if currentTimeStamp-ctx.onTickFuncs[i].lastExecuted >= ctx.onTickFuncs[i].tickPeriod { + ctx.onTickFuncs[i].tickFunc() + ctx.onTickFuncs[i].lastExecuted = currentTimeStamp } } } From c555b7f050875d8608dbfd1a405532d92d33ae85 Mon Sep 17 00:00:00 2001 From: rinfx <893383980@qq.com> Date: Mon, 13 May 2024 09:41:42 +0800 Subject: [PATCH 25/25] update comments --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 0e6abcaf3..7a0961dfb 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -73,14 +73,15 @@ type TickFuncEntry struct { var globalOnTickFuncs []TickFuncEntry = []TickFuncEntry{} // Registe multiple onTick functions. Parameters include: -// 1) tickPeriod: the execution period of tickFunc; +// 1) tickPeriod: the execution period of tickFunc, this value should be a multiple of 100 // 2) tickFunc: the function to be executed +// // You should call this function in parseConfig phase, for example: // // func parseConfig(json gjson.Result, config *HelloWorldConfig, log wrapper.Log) error { -// wrapper.RegisteTickFunc(1000, func() { proxywasm.LogInfo("onTick 1s") }) -// wrapper.RegisteTickFunc(3000, func() { proxywasm.LogInfo("onTick 3s") }) -// return nil +// wrapper.RegisteTickFunc(1000, func() { proxywasm.LogInfo("onTick 1s") }) +// wrapper.RegisteTickFunc(3000, func() { proxywasm.LogInfo("onTick 3s") }) +// return nil // } func RegisteTickFunc(tickPeriod int64, tickFunc func()) { globalOnTickFuncs = append(globalOnTickFuncs, TickFuncEntry{0, tickPeriod, tickFunc})