From 41506c8cee81d44e011df3fc7620c9a404618a97 Mon Sep 17 00:00:00 2001 From: hunshenshi <289517357@qq.com> Date: Wed, 19 Jun 2024 14:07:22 +0800 Subject: [PATCH] feat(wasm): update go.mod and add gasLimit --- cmd/wasm/Makefile | 5 ++--- cmd/wasm/go.mod | 4 ++-- cmd/wasm/go.sum | 4 ++-- cmd/wasm/main.go | 7 ++----- cmd/wasm/pebble.wasm | Bin 371769 -> 372148 bytes 5 files changed, 8 insertions(+), 12 deletions(-) diff --git a/cmd/wasm/Makefile b/cmd/wasm/Makefile index 403f864..db89089 100644 --- a/cmd/wasm/Makefile +++ b/cmd/wasm/Makefile @@ -1,9 +1,8 @@ pebble_wasm: @tinygo build -o pebble.wasm -scheduler=none --no-debug -target=wasi main.go - @mkdir -pv wasms && mv pebble.wasm wasms - @echo built to wasms/pebble.wasm + @echo built to pebble.wasm build: pebble_wasm clean: - @rm -rf wasms/pebble.wasm \ No newline at end of file + @rm -rf pebble.wasm \ No newline at end of file diff --git a/cmd/wasm/go.mod b/cmd/wasm/go.mod index 947c25e..f8d29e4 100644 --- a/cmd/wasm/go.mod +++ b/cmd/wasm/go.mod @@ -1,12 +1,12 @@ module github.com/machinefi/sprout-pebble-sequencer/cmd/wasm -go 1.22.0 +go 1.19 require ( github.com/dustinxie/ecc v0.0.0-20210511000915-959544187564 github.com/machinefi/w3bstream-wasm-golang-sdk v1.1.0 github.com/tidwall/gjson v1.17.1 - golang.org/x/crypto v0.24.0 + golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa ) require ( diff --git a/cmd/wasm/go.sum b/cmd/wasm/go.sum index d948772..314fc95 100644 --- a/cmd/wasm/go.sum +++ b/cmd/wasm/go.sum @@ -8,7 +8,7 @@ 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= -golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= -golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= +golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa h1:zuSxTR4o9y82ebqCUJYNGJbGPo6sKVl54f/TVDObg1c= +golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= diff --git a/cmd/wasm/main.go b/cmd/wasm/main.go index a88ab4a..45f881b 100644 --- a/cmd/wasm/main.go +++ b/cmd/wasm/main.go @@ -28,13 +28,10 @@ func onStart(rid uint32) int32 { log.Log("wasm get datas from json: " + gjson.Get(string(res), "datas").String()) datas := gjson.Get(string(res), "datas").Array() imei := gjson.Get(datas[0].String(), "imei").String() - // owner := []byte(datas[0].Get("owner").String()) owner := []byte(gjson.Get(datas[0].String(), "owner").String()) - // timestamp := uint32(datas[0].Get("timestamp").Uint()) timestamp := uint32(gjson.Get(datas[0].String(), "timestamp").Uint()) - // signature := []byte(datas[0].Get("signature").String()) signature := []byte(gjson.Get(datas[0].String(), "signature").String()) - // dataChannel := uint32(datas[0].Get("dataChannel").Uint()) + gasLimit := big.NewInt(gjson.Get(datas[0].String(), "gasLimit").Int()) dataChannel := uint32(gjson.Get(datas[0].String(), "dataChannel").Uint()) /*https://github.com/iotexproject/pebble-contracts/blob/1a1c91a287317d8c068edb571149aedb10c0b754/contracts/PebbleImpl.sol @@ -52,7 +49,7 @@ func onStart(rid uint32) int32 { log.Log(fmt.Sprintf("abi.NewMethod error: %s", err.Error())) return -1 } - data, err := method.Pack(imei, address.BytesToAddress(owner), timestamp, signature, big.NewInt(200000), dataChannel) + data, err := method.Pack(imei, address.BytesToAddress(owner), timestamp, signature, gasLimit, dataChannel) if err != nil { log.Log(fmt.Sprintf("pack error: %s", err.Error())) return -1 diff --git a/cmd/wasm/pebble.wasm b/cmd/wasm/pebble.wasm index 82540e0d48f8c16826a5bf796a000620792ff5da..c159f4b94c961d6296f0204a63f0c1ded12f5d63 100755 GIT binary patch delta 24489 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

|!fy)2FAuW|Vx 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